diff --git a/dashboard-frontend/src/components/NodeDetail.tsx b/dashboard-frontend/src/components/NodeDetail.tsx index 54570f9..31016d0 100644 --- a/dashboard-frontend/src/components/NodeDetail.tsx +++ b/dashboard-frontend/src/components/NodeDetail.tsx @@ -97,7 +97,13 @@ export default function NodeDetail({ } }) - // Sort by SNR descending + // SNR quality bands (also the legend behind the colored quality dots): + // >12 excellent — reliable mesh hop + // 8-12 good + // 5-8 fair — works in clear conditions + // 3-5 marginal — will drop under load + // <3 poor — intermittent + // Sort by SNR descending return neighborData.sort((a, b) => b.snr - a.snr) }, [node, edges, nodes]) diff --git a/dashboard-frontend/src/components/NodeTable.tsx b/dashboard-frontend/src/components/NodeTable.tsx index aed0930..b3e234a 100644 --- a/dashboard-frontend/src/components/NodeTable.tsx +++ b/dashboard-frontend/src/components/NodeTable.tsx @@ -210,13 +210,13 @@ export default function NodeTable({ className="px-3 py-2 text-left cursor-pointer hover:text-slate-200" onClick={() => handleSort('battery_level')} > - Battery + Battery handleSort('last_heard')} > - Last Heard + Last Heard )} - for these changes to take effect. Until then the runtime keeps its boot-time configuration. + for these changes to take effect. Until then the runtime keeps its boot-time configuration. Restart-required keys include anything under Config → environmental (feed_source, central URL), the LLM backend swap, and the dispatcher cold-start grace window. Other keys take effect on the next handler call. {error &&
{error}
} diff --git a/dashboard-frontend/src/pages/AdapterConfig.tsx b/dashboard-frontend/src/pages/AdapterConfig.tsx index a0b1d61..31cb1ec 100644 --- a/dashboard-frontend/src/pages/AdapterConfig.tsx +++ b/dashboard-frontend/src/pages/AdapterConfig.tsx @@ -189,7 +189,7 @@ export default function AdapterConfig() {

Per-adapter tunables (thresholds, freshness windows, toggles, curation lists). Changes take effect on the next handler call -- no container restart needed. - Sentence templates, emoji, and translation maps live in code by design. + Sentence templates, emoji, and translation maps live in code by design — see the CODE rule under Adapter Config & the CODE Rule in Reference. The LLM context toggle on each card gates whether that adapter's data lands in the system prompt when you DM the bot; broadcasts are unaffected.

{allAdapters.map((adapter) => { diff --git a/dashboard-frontend/src/pages/Alerts.tsx b/dashboard-frontend/src/pages/Alerts.tsx index e6faa5c..dd4ec28 100644 --- a/dashboard-frontend/src/pages/Alerts.tsx +++ b/dashboard-frontend/src/pages/Alerts.tsx @@ -553,7 +553,7 @@ export default function Alerts() {

No active subscriptions.

- Manage subscriptions via !subscribe on mesh + Manage subscriptions via !subscribe on mesh. Broadcasts arrive with one of three prefixes — New: (first sight), Update: (material change), or Active: (clock-driven reminder while the event is still live). See Broadcast Types and Reminder System in Reference.

)} diff --git a/dashboard-frontend/src/pages/Config.tsx b/dashboard-frontend/src/pages/Config.tsx index 1fbcd3a..cf3235c 100644 --- a/dashboard-frontend/src/pages/Config.tsx +++ b/dashboard-frontend/src/pages/Config.tsx @@ -252,7 +252,7 @@ const SECTION_DESCRIPTIONS: Record = { knowledge: 'Knowledge base for answering questions from stored documents. Connects to Qdrant vector database or local SQLite.', mesh_sources: 'Data sources for mesh network information. MeshAI can pull data from multiple sources simultaneously and merge them into a unified view.', mesh_intelligence: 'Advanced mesh analysis: health scoring, region management, and automated alerting. The intelligence engine monitors your mesh and detects problems automatically.', - environmental: 'Live environmental data feeds for situational awareness. Each feed polls a public or authenticated API for real-time conditions affecting your area.', + environmental: 'Where MeshAI gets live environmental data (weather, fires, quakes, gauges, traffic, space weather). Per-adapter knobs (API keys, regions, thresholds) live on the Environment page; the OR-not-AND architecture decision (Central vs native) is documented under Reference → OR-not-AND.', dashboard: "Web dashboard settings. You're looking at it right now.", } diff --git a/dashboard-frontend/src/pages/Dashboard.tsx b/dashboard-frontend/src/pages/Dashboard.tsx index 71b71e0..1b3af7b 100644 --- a/dashboard-frontend/src/pages/Dashboard.tsx +++ b/dashboard-frontend/src/pages/Dashboard.tsx @@ -371,7 +371,7 @@ function RFPropagationCard({ swpc, ducting }: { swpc: ExtendedSWPCStatus | null;

- RF Propagation + RF Propagation

{/* Top row: SFI and Kp big values */} @@ -509,7 +509,7 @@ function EventFeedItem({ event, isLocal }: { event: EnvEvent; isLocal?: boolean {event.severity || 'info'} {isLocal && ( - + LOCAL )} diff --git a/dashboard-frontend/src/pages/Environment.tsx b/dashboard-frontend/src/pages/Environment.tsx index 5a124de..c96835e 100644 --- a/dashboard-frontend/src/pages/Environment.tsx +++ b/dashboard-frontend/src/pages/Environment.tsx @@ -296,7 +296,7 @@ export default function Environment() { up({ avalanche: { ...env.avalanche, season_months: v } })} helper="e.g., 12, 1, 2, 3, 4" /> ) case 'usgs': return (<> - up({ usgs: { ...env.usgs, tick_seconds: v } })} min={900} helper="Minimum 15 min (900s)" /> + up({ usgs: { ...env.usgs, tick_seconds: v } })} min={900} helper="Minimum 15 min (900s). tick_seconds is the native-mode poll interval; ignored when this adapter is set to feed_source=central." /> up({ usgs: { ...env.usgs, sites: v } })} helper="USGS gauge site numbers" infoLink="https://waterdata.usgs.gov/nwis" /> ) case 'usgs_quake': return (<> @@ -409,7 +409,7 @@ export default function Environment() { up({ central: { ...env.central!, region: v } })} placeholder="us.id" - helper="Central v0.9.20 region token (dotted, e.g. 'us.id'). Empty = bare wildcards (all-US firehose)." /> + helper="Central v0.9.20 region token (dotted, e.g. 'us.id'). Empty = bare wildcards (all-US firehose). Each adapter is either Central or native, never both — see Reference → OR-not-AND Architecture for why." />
)} diff --git a/dashboard-frontend/src/pages/GaugeSites.tsx b/dashboard-frontend/src/pages/GaugeSites.tsx index ff364fb..738baae 100644 --- a/dashboard-frontend/src/pages/GaugeSites.tsx +++ b/dashboard-frontend/src/pages/GaugeSites.tsx @@ -101,8 +101,7 @@ export default function GaugeSites() {

- NWS-AHPS stream gauge thresholds curated for the nwis_handler. Disabled rows are - ignored at envelope time. Changes propagate to the handler on the next event. + NWS-AHPS stream gauge thresholds for the USGS NWIS handler. Each row pairs a USGS site_id with a human gauge name, lat/lon, and four flood thresholds (Action / Minor / Moderate / Major, all in feet). Disabled rows still ingest into gauge_readings -- they don't broadcast. The USGS lookup button auto-populates name + coords + thresholds from USGS Site Service + NWS NWPS when this adapter is on native feed_source; Central-feed mode disables it (see Reference → OR-not-AND for why). Changes take effect on the next event.

{adding && } diff --git a/dashboard-frontend/src/pages/Mesh.tsx b/dashboard-frontend/src/pages/Mesh.tsx index 69b0aae..291dc72 100644 --- a/dashboard-frontend/src/pages/Mesh.tsx +++ b/dashboard-frontend/src/pages/Mesh.tsx @@ -86,7 +86,7 @@ export default function Mesh() { }`} > - Topology + Topology diff --git a/dashboard-frontend/src/pages/Notifications.tsx b/dashboard-frontend/src/pages/Notifications.tsx index b4f6d5c..7b0db16 100644 --- a/dashboard-frontend/src/pages/Notifications.tsx +++ b/dashboard-frontend/src/pages/Notifications.tsx @@ -2080,7 +2080,7 @@ export default function Notifications() { label="Enable scheduled band-conditions broadcasts" checked={config.band_conditions_enabled ?? true} onChange={(v) => setConfig({ ...config, band_conditions_enabled: v })} - helper="3x/day HF propagation summary (Day/Night ratings per band group)" + helper="3x/day HF propagation summary (Day/Night ratings per band group). The daily fire digest (twice-daily LLM summary of active fires + the last 24h of growth/spotting) is configured separately under Adapter Config -> fires.digest_*. See Reference -> Fire Tracker (Fusion) and Reference -> Broadcast Types for the New/Update/Active prefix system." info="Source priority: (1) recent SWPC readings persisted locally; (2) HamQSL.com fallback; (3) silent skip if both fail. Persistence rows are written either way for an audit trail." /> {(config.band_conditions_enabled ?? true) && ( diff --git a/dashboard-frontend/src/pages/Reference.tsx b/dashboard-frontend/src/pages/Reference.tsx index c23410f..accb9a5 100644 --- a/dashboard-frontend/src/pages/Reference.tsx +++ b/dashboard-frontend/src/pages/Reference.tsx @@ -3,7 +3,9 @@ import { useLocation } from 'react-router-dom' import { Search, Droplets, Flame, Satellite, CloudLightning, Sun, Radio, Mountain, Car, Construction, Activity, Bell, Terminal, - Code, ExternalLink + Code, ExternalLink, + Crosshair, Send, Clock, MessageSquare, Network, Sliders, + Database, History } from 'lucide-react' // Topic definitions @@ -11,6 +13,7 @@ const TOPICS = [ { id: 'stream-gauges', label: 'Stream Gauges', icon: Droplets }, { id: 'wildfire', label: 'Wildfire', icon: Flame }, { id: 'firms', label: 'Satellite Fire Detection (FIRMS)', icon: Satellite }, + { id: 'fire-tracker', label: 'Fire Tracker (Fusion)', icon: Crosshair }, { id: 'weather-alerts', label: 'Weather Alerts', icon: CloudLightning }, { id: 'solar', label: 'Solar & Geomagnetic', icon: Sun }, { id: 'ducting', label: 'Tropospheric Ducting', icon: Radio }, @@ -18,8 +21,15 @@ const TOPICS = [ { id: 'traffic', label: 'Traffic Flow', icon: Car }, { id: 'roads-511', label: 'Road Conditions (511)', icon: Construction }, { id: 'mesh-health', label: 'Mesh Health', icon: Activity }, + { id: 'broadcast-types', label: 'Broadcast Types', icon: Send }, + { id: 'reminders', label: 'Reminder System', icon: Clock }, { id: 'notifications', label: 'Notifications', icon: Bell }, { id: 'commands', label: 'Commands', icon: Terminal }, + { id: 'llm-dm', label: 'LLM DM Queries', icon: MessageSquare }, + { id: 'or-not-and', label: 'OR-not-AND Architecture', icon: Network }, + { id: 'adapter-config', label: 'Adapter Config & CODE Rule', icon: Sliders }, + { id: 'curation', label: 'Curation: Gauges & Towns', icon: Database }, + { id: 'schema', label: 'Schema Migrations', icon: History }, { id: 'api', label: 'API Reference', icon: Code }, ] @@ -357,6 +367,112 @@ export default function Reference() { + {/* Fire Tracker (v0.7 fusion: FIRMS + WFIGS + LLM digest) */} + +

+ FIRMS hotspots are fast but noisy; WFIGS incidents are accurate but slow. + The Fire Tracker fuses both feeds and a per-pixel attribution graph so a + single fire's name, declared acreage, real-time perimeter movement, and + spotting events all land as separate broadcasts on the mesh. +

+ + What you'll see on the mesh +

Six fire-family alert categories, in order of when they fire during an incident's lifecycle:

+ unattributed_hotspot_cluster, "Priority", + "3+ FIRMS pixels within 1 mi over 60 min, no WFIGS match — possible new ignition before NIFC declares it", + 🔥 Possible new fire: 3 hotspots within 1 mi @ 42.93,-114.45 (combined 78 MW)], + [wildfire_declared, "Priority", + "WFIGS first-sight of a new IRWIN incident — the official 'this is a fire and here is its name' record", + 🔥 New: Cache Peak Fire (WF), 3 mi N of Almo: 250 ac, 0% contained], + [wildfire_growth, "Priority", + "Per-pass centroid drift >= 0.5 mi (configurable) between consecutive satellite passes — the fire's footprint moved", + 🔥 Cache Peak Fire moving NE 1.2 mi/h, ~3 mi from Almo], + [wildfire_spotting, "Immediate", + "FIRMS pixel attributed to a tracked fire but >= 1.5 mi (configurable) outside its prior-pass convex-hull perimeter — ember spread", + 🔥 Possible spotting 2.1 mi NE of Cache Peak Fire perimeter], + [wildfire_incident, "Priority", + "WFIGS acreage or containment increased on a fire already broadcast once (the Update path; the New path uses wildfire_declared)", + 🔥 Update: Cache Peak Fire: 1,847 ac, 23% contained], + [wildfire_halted, "Routine", + "No FIRMS pixels attributed for 12+ hours (configurable) — fire stalled or out", + 🔥 Cache Peak Fire no growth in 14h], + ]} + /> + + Daily LLM digest +

+ Twice a day (default 06:00 and 18:00 Mountain Time) the bot runs an LLM + summary across every active fire and the last 24 h of growth + spotting + events, then broadcasts one terse line to the mesh. Shape:{' '} + "Fires today: Cache Peak 1,847 ac +200 NE; Twin Peaks 320 ac stable; possible new fire 15 mi from Cache Peak."{' '} + Configure the schedule and timezone under fires.digest_*{' '} + keys on the Adapter Config page. +

+ + How attribution works +

+ When a FIRMS hotspot lands, the bot walks every active fire (those not + yet tombstoned) and matches by Haversine distance to that fire's running + centroid. If the pixel is within the fire's spread_radius_mi{' '} + (default 5 mi, per-fire override available) the pixel is attributed and + appended to that fire's growth history. The centroid then re-computes + as the median of the last 24 h of attributed pixels, so single-pixel + outliers don't drag the perimeter around. +

+

+ Pixels that match no fire feed the cluster detector instead: if at least{' '} + cluster_min_pixels (default 3) lie within{' '} + cluster_max_radius_mi (default 1.0) over{' '} + cluster_time_window_minutes (default 60), the bot fires a + single unattributed_hotspot_cluster broadcast and marks + the member pixels so a fourth arrival doesn't re-fire the same cluster. +

+ + How movement is computed +

+ Each VIIRS pass groups pixels into a pass_id (satellite + + 90-min bucket). When a pixel from a different bucket arrives, the prior + pass closes: its convex hull becomes the perimeter, its median centroid + becomes the comparison anchor, and the bot computes drift (Haversine to + the previous pass's centroid), an 8-way compass bearing, and a wall-clock + mi/h speed. If drift ≥ growth_drift_threshold_mi the{' '} + wildfire_growth broadcast fires. +

+ + How spotting is detected +

+ Once a pass closes its perimeter (a GeoJSON polygon stored on the + fire), every subsequent attributed pixel runs a point-in-polygon test. + Pixels outside the polygon with a vertex distance ≥{' '} + spotting_distance_threshold_mi (default 1.5) fire the{' '} + wildfire_spotting broadcast at immediate severity + — spread beyond the existing perimeter is the most actionable fire + signal we emit. A per-fire cooldown + (spotting_cooldown_seconds, default 1 h) prevents an ember + burst in the same area from spamming the mesh. +

+ + Tunable knobs (Adapter Config → fires) + spread_radius_mi_default, '5.0 mi', 'Attribution radius for FIRMS → fire matching. Per-fire override in the fires.spread_radius_mi column.'], + [growth_drift_threshold_mi, '0.5 mi', 'Per-pass centroid drift at or above this fires wildfire_growth.'], + [halt_passes_threshold, '2', 'Consecutive empty satellite passes before wildfire_halted (documented; the time gate below is the operational rule).'], + [halt_minimum_seconds, '43,200 (12 h)', 'Minimum elapsed seconds since the most recent attributed pixel before wildfire_halted can fire.'], + [spotting_distance_threshold_mi, '1.5 mi', 'Distance from prior-pass perimeter that fires wildfire_spotting.'], + [spotting_cooldown_seconds, '3,600 (1 h)', 'Minimum seconds between consecutive spotting broadcasts per fire.'], + [digest_enabled, 'true', 'Master toggle for the twice-daily digest.'], + [digest_schedule, '["06:00","18:00"]', 'Local-time slots for the digest.'], + [digest_timezone, 'America/Boise', 'IANA tz for digest_schedule.'], + [digest_max_chars, '200', 'Hard cap on the digest wire (the LLM is told to fit; the chunker enforces).'], + ]} + /> +
+ {/* Weather Alerts */} What You're Looking At @@ -914,6 +1030,78 @@ export default function Reference() {

+ {/* Broadcast Types (v0.6 schema split: New / Update / Active) */} + +

+ Every broadcast the bot sends to the mesh carries a one-word prefix that + tells you what kind of update it is. Three types: +

+ New:, "The first time the bot has ever broadcast about this event", + "Cache Peak Fire's WFIGS first-sight; FIRMS cluster's first 3-pixel detection; first NWS warning for a CAP id"], + [Update:, "A material change on something the bot already announced", + "Cache Peak Fire's acreage grew; ITD 511 work zone's lane status changed; quake event's magnitude was revised"], + [Active:, "A clock-driven reminder that an already-announced event is still live", + "Cache Peak Fire is still burning 8 hours later; an SWPC G3 storm is still in progress"], + ]} + /> +

+ The bot tracks first-broadcast time and last-broadcast time separately + on every event row, so a New: prefix is only emitted once even after a + container restart. Update: respects per-adapter cooldowns (WFIGS is 8 h + by default; ITD 511 is per-incident). Active: is the reminder system, + covered in the next section. +

+
+ + {/* Reminder System (v0.6-phase3, clock-driven Active: re-broadcasts) */} + +

+ Some events stay live for days. A wildfire doesn't go out because + WFIGS stopped publishing updates; a geomagnetic storm doesn't end + because SWPC went quiet on the wire. The reminder system fires a + clock-driven{' '} + Active:-prefixed re-broadcast on a human-scale cadence so + an operator who came on shift after the original announcement still + sees the event. +

+ + Cadences + wfigs (wildfires), 'Every 8 h while the fire is still active', + 'WFIGS publishes a tombstone (incident closed) → fires.tombstoned_at is stamped → reminder loop stops'], + [<>swpc (space weather), 'Every 8 h while a Kp >= floor / X-class flare / proton-storm event is ongoing', + 'The next SWPC envelope shows the storm has subsided'], + [itd_511_work_zone, 'Per-zone, configurable in the rule UI', + 'WZDx publishes the zone with end_date in the past'], + ]} + /> + + The tombstone +

+ When a WFIGS update declares an incident closed, the bot stamps{' '} + fires.tombstoned_at with the close time. The reminder + scheduler treats tombstoned_at IS NOT NULL as "stop + broadcasting Active: for this fire," and the LLM context layer treats + it as "this fire is in the closed-out archive." A subsequent FIRMS + pixel inside that fire's spread radius does not re-open it — closure + is authoritative from NIFC. +

+ + Turning reminders off +

+ Per-adapter on/off lives in adapter_meta.reminder_enabled{' '} + and is exposed on the Adapter Config page. The reminders themselves + flow through the same dispatcher gates as everything else, so they + still respect cooldowns, the cold-start grace window, and your + notification rules. +

+
+ {/* Notifications */} How It Works @@ -1012,7 +1200,295 @@ export default function Reference() { Conversational

- MeshAI isn't just commands — you can ask it questions in plain English. "How's the mesh doing?" "Is there any ducting?" "What's the fire situation?" "How's traffic on I-84?" It uses the live environmental data and mesh health data to answer. + Bang commands are the short, predictable interface. For anything that + doesn't map cleanly to a single command — "how's the mesh doing?", + "is there any ducting?", "why didn\'t I hear about anything today?" + — you can DM the bot in plain English. The LLM DM path covers the + same data the commands cover, plus the dispatcher drop audit, with + honest "no data" answers when a feed is quiet. Full catalog under{' '} + LLM DM + Queries. +

+
+ + {/* LLM DM (Natural-Language Queries) — v0.7-fire-tracker-4 7-path */} + +

+ Bang commands like !fire are short and predictable — the + right tool on a mesh-constrained interface. For anything else, you can + DM the bot in plain English and it will answer from the same live + environmental data the broadcast pipeline uses. Both paths work; pick + whichever fits the question. +

+ + What it can answer +

+ When you DM the bot a question, the env_reporter layer assembles up to + seven data blocks and injects them into the LLM's system prompt. Each + block maps to one adapter: +

+ build_fires_detail, + '"are there any fires near me?"', + "Active WFIGS-declared fires, acreage, containment, declared_at, county/state"], + [build_alerts_detail, + '"any weather alerts?"', + "Active NWS CAP alerts: type, severity, area, expiry"], + [build_quakes_detail, + '"any earthquakes nearby?"', + "USGS quakes in the last 24h: magnitude, depth, place"], + [build_traffic_detail, + '"how is traffic on I-84?" / "any road closures?"', + "TomTom + ITD 511 active incidents"], + [build_gauges_detail, + '"what is the snake river level?"', + "USGS NWIS latest readings + flood stages"], + [build_swpc_detail, + '"what are the band conditions?" / "any space weather?"', + "Recent SWPC events + band-conditions ratings"], + [build_drop_audit, + `"why didn't I hear about anything today?"`, + "Event log: what envelopes the dispatcher filtered, by adapter + category"], + ]} + /> + + The grounding rule +

+ The bot is told to answer only from the blocks in the system + prompt. If a block is empty (no recent quakes, no active NWS alerts), + the response is honest about it: "No active weather alerts right now," + not a fabricated "144 earthquakes worldwide in the past 24 hours." + That clamp closes the failure mode where the LLM defaulted to its + training data when local tables were quiet. +

+ + Excluding an adapter from LLM context +

+ The include_in_llm_context toggle on each adapter's row + in Adapter Config decides whether that adapter's build_*{' '} + block lands in the system prompt. Turn an adapter off here if you + don't want the bot's natural-language answers to draw on it (e.g. + you ingest TomTom for situational awareness but don't want it cited + in DM answers). Broadcasts are unaffected — this toggle gates LLM + context only. +

+ + What it can't answer +

+ The bot has no general internet access. Questions that need data the + env_reporter doesn't carry ("what's the weather forecast tomorrow", + "who's the current president") fall back to whatever the configured + LLM backend knows from training. The grounding clamp keeps the bot + from inventing local data, but it can't keep the LLM from speculating + about non-local topics. +

+
+ + {/* OR-not-AND Architecture (Central vs native, mutually exclusive) */} + +

+ Every environmental adapter pulls its data from one of two places: +

+
    +
  • + Central (canonical) — Central polls the upstream + feed once on behalf of the whole fleet and re-publishes normalized + envelopes over NATS JetStream. MeshAI subscribes. One Central poll, + one canonical normalization, many subscribers. +
  • +
  • + Native — MeshAI polls the upstream feed directly. + Stays around for adapters Central doesn't carry yet (currently + Tropospheric Ducting and Avalanche Center advisories) and for + operators who don't run Central. +
  • +
+ + Why mutually exclusive +

+ An adapter is set to either Central or{' '} + native, never both. Running both at the same time is what the + codebase calls the AND-mode anti-pattern: two independent + poll loops on the same upstream feed, duplicate broadcasts, duplicate + cursor state, no shared dedup. The Spokane-class leak (cross-state + broadcasts that escaped the bbox filter in May 2026) was caused by + an inadvertent AND-mode on the traffic adapter; the fix made the + gate enforce mutual exclusion at boot and on every config save. +

+ + The per-adapter source toggle +

+ Set feed_source on each adapter's row in Environment: +

+
    +
  • central — disable the native poll loop, subscribe to the matching Central subject pattern.
  • +
  • native — disable the Central subscription for this adapter, run the native poller.
  • +
+

+ On the GUI, adapters with no Central counterpart yet show + their Central button disabled with a "native only" tooltip. That's + not an AND state; the adapter is still single-source, just locked to + native by upstream availability. +

+ + Where this surfaces in tooltips +

+ You'll see "AND-model anti-pattern" referenced in two places: the + USGS-lookup button on Gauge Sites (disabled when the USGS adapter is + on Central, because doing a one-off direct USGS poll from the GUI + while the runtime is on Central is precisely the AND-mode this rule + forbids) and the env_routes 404 response on{' '} + /api/env/usgs/lookup/{'{site_id}'} in central-feed mode. + Both surfaces refuse to fall back to a direct upstream call; the + right answer is to enter values manually or source them from Central. +

+
+ + {/* Adapter Config + CONFIG-vs-CODE Rule (the GUI knob hub) */} + +

+ The Adapter Config page is the single hub for ~50 GUI-editable knobs + across the 13 adapters that touch the broadcast pipeline. Changes + take effect on the next handler call — no container restart needed + for most keys. +

+ + The CONFIG-vs-CODE rule +

+ Not everything tunable becomes a GUI row. The codebase splits along + one rule: +

+
    +
  • CONFIG (lives on this page) — where you send (channels), how often (cadences, schedules), thresholds (magnitude floors, severity gates, distance radii, cooldown durations, freshness windows), curation data (which sites, states, codes), toggles (enabled, include_in_llm_context).
  • +
  • CODE (stays in the handlers, not on the GUI) — sentence templates, emoji choices, mapping / translation functions (TomTom icon_map, ITD sub_type_map, Central adapter_map and category_map), rendering logic (anchor priority order, expires-buckets formatting, threshold-state labels), heuristic logic (band_conditions Kp/SFI → Good/Fair/Poor function).
  • +
+

+ If you find yourself wanting to add a wire-string template or an + emoji to the GUI, stop — that's CODE. If you want to change a + threshold or a curation list, the GUI is the right place. +

+ + Restart-required vs live +

+ Most keys take effect on the next handler call (the env_store re-reads + from the database). A short list requires a container restart, because + they govern startup-only wiring: +

+
    +
  • Anything under the environmental section on the Config page (feed_source, central URL, etc.). The Spokane-fix gate runs at env_store boot and at CentralConsumer subscribe — both happen only at startup.
  • +
  • The LLM backend swap (Google → Anthropic → OpenAI).
  • +
  • The dispatcher cold-start grace window.
  • +
+

+ When you save one of those keys via the GUI, a yellow Restart-Required + banner surfaces at the top of the page with a "Restart now" button. + Until you click it, the on-disk config and the running config + intentionally disagree — that's the OR-not-AND gate refusing to + transition mid-flight. +

+ + The include_in_llm_context toggle +

+ Each adapter's card on Adapter Config carries a per-adapter + "LLM context" switch. When off, that adapter's build_*{' '} + env_reporter block is skipped during system-prompt assembly. Broadcasts + are unaffected; this toggle is purely about what the LLM sees when + you DM it. See the LLM DM section above for the seven adapter blocks + this gates. +

+
+ + {/* Curation Tables: Gauge Sites + Town Anchors */} + +

+ Two curation tables drive the broadcast text the bot puts on the mesh. + Both are CRUD UIs with per-row enable/disable; both fall through to + fallback chains when a row is missing or disabled. +

+ + Gauge Sites +

+ Stream gauge thresholds for the USGS NWIS handler. Each row pairs a + USGS site_id with a human gauge name, lat/lon, and four NWS-AHPS + flood thresholds in feet: Action, Minor, Moderate, Major. The + handler compares an incoming gauge reading to those thresholds and + emits the right broadcast severity. +

+

+ USGS lookup button — when you add a new row in + native-feed mode, the lookup queries the USGS Site Service plus NWS + NWPS to auto-populate name, coordinates, and flood stages. In + central-feed mode the button is disabled with a tooltip: a one-off + direct USGS poll from the GUI while the runtime is on Central is the + AND-mode anti-pattern the architecture forbids. Enter values + manually or pull them from Central. +

+

+ Disabled rows are ignored at dispatch time. The + corresponding gauge still ingests into gauge_readings{' '} + (so historical queries still work), it just doesn't broadcast. +

+ + Town Anchors +

+ Lookup table for the "X mi {'<'}bearing{'>'} of {'<'}town{'>'}" suffix + in broadcast text. When a fire or NWS alert renders, the bot walks an + anchor chain to figure out where to say it is: +

+
    +
  1. Photon nearest-town lookup (the WFIGS path uses this — produces "near Long Creek Summit Home" style anchors)
  2. +
  3. Town Anchors table (your curated list)
  4. +
  5. Landclass label (county / federal-land identifier)
  6. +
  7. County + state fallback
  8. +
  9. Bare lat/lon coords
  10. +
+

+ Each row carries a name (lowercased on save), state, lat/lon, and an + enable flag. The "lowercased on save" rule keeps "Almo" / "ALMO" / + "almo" from being three distinct rows. Disabled rows fall through to + the next anchor in the chain — the broadcast text still goes out, it + just uses a different anchor. +

+

+ Example broadcast text rendered from a Town Anchors row:{' '} + "🔥 New: Cache Peak Fire (WF), 3 mi N of Almo: 250 ac, 0% contained, @ 42.118,-113.643" +

+
+ + {/* Schema Migrations (light touch — for ops + debugging) */} + +

+ MeshAI persists state in a single SQLite database + (/data/meshai.sqlite) with WAL journaling. Schema + migrations live in meshai/persistence/migrations/v*.sql{' '} + and apply automatically on container start. The runner reads the + migrations directory, sorts by version, and applies anything past + the current schema_meta.version in order. Idempotent + re-runs are no-ops. +

+ + v0.6 + v0.7 additions + v11, 'first_broadcast_at + last_broadcast_at split + reminder_enabled per adapter (the schema basis for New / Update / Active)'], + [v12, 'fires.tombstoned_at (WFIGS closure stamp; terminates the reminder loop)'], + [v13, 'Fire Tracker Phase 1 — fire_pixels table + spread_radius_mi + current_centroid_lat/lon + last_hotspot_at; firms_pixels attributed_at + cluster_broadcast_at'], + [v14, 'Fire Tracker Phase 2 — fire_passes table (per-satellite-pass centroid + drift) + last_pass_id + halt_broadcast_at on fires'], + [v15, 'Fire Tracker Phase 3 — fire_passes.perimeter_geojson (convex hull) + fires.last_spotting_broadcast_at'], + [v16, 'Fire Tracker Phase 4 — fire_digest_broadcasts table (idempotent twice-daily LLM digest)'], + ]} + /> + + When migrations fail +

+ A migration failure leaves the database at the prior version and + raises in the runner. Container logs surface the SQL error;{' '} + schema_meta.version tells you where the last + successful migration stopped. Re-running the container after + the underlying issue is fixed picks up from there.

diff --git a/dashboard-frontend/src/pages/TownAnchors.tsx b/dashboard-frontend/src/pages/TownAnchors.tsx index c18718e..33dd9bc 100644 --- a/dashboard-frontend/src/pages/TownAnchors.tsx +++ b/dashboard-frontend/src/pages/TownAnchors.tsx @@ -73,8 +73,11 @@ export default function TownAnchors() {

- Lookup table for the "X mi <bearing> of <town>" anchor in wire-string rendering. - Disabled rows fall through to the generic anchor chain. + Lookup table for the "X mi <bearing> of <town>" suffix in the bot's broadcast text. + When a fire or NWS alert renders, the bot walks: Photon nearest-town → this table → landclass → + county/state → bare coords. Disabled rows fall through to the next anchor in the chain; the + broadcast still goes out, it just uses a different anchor. Example: "3 mi N of Almo". + See Reference → Curation: Gauges & Towns for the full chain.

{adding && } diff --git a/meshai/dashboard/static/assets/index-BNx9Ej8o.css b/meshai/dashboard/static/assets/index-BRdqCgJe.css similarity index 88% rename from meshai/dashboard/static/assets/index-BNx9Ej8o.css rename to meshai/dashboard/static/assets/index-BRdqCgJe.css index 8b0f333..01f34f1 100644 --- a/meshai/dashboard/static/assets/index-BNx9Ej8o.css +++ b/meshai/dashboard/static/assets/index-BRdqCgJe.css @@ -1 +1 @@ -.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::-moz-selection{background:transparent}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-0\.5{left:.125rem}.left-1{left:.25rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-6{top:1.5rem}.top-full{top:100%}.z-0{z-index:0}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2 / span 2}.-m-6{margin:-1.5rem}.-my-4{margin-top:-1rem;margin-bottom:-1rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-mb-px{margin-bottom:-1px}.-ml-2{margin-left:-.5rem}.-ml-4{margin-left:-1rem}.-mr-1{margin-right:-.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-\[40vh\]{height:40vh}.h-\[540px\]{height:540px}.h-\[calc\(100vh-8rem\)\]{height:calc(100vh - 8rem)}.h-full{height:100%}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[85vh\]{max-height:85vh}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[220px\]{width:220px}.w-\[250px\]{width:250px}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-\[200px\]{min-width:200px}.min-w-\[280px\]{min-width:280px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-4{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.scroll-mt-6{scroll-margin-top:1.5rem}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(30 42 58 / var(--tw-divide-opacity, 1))}.divide-slate-700\/60>:not([hidden])~:not([hidden]){border-color:#33415599}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[\#1e2a3a\]{--tw-border-opacity: 1;border-color:rgb(30 42 58 / var(--tw-border-opacity, 1))}.border-\[\#2a3a4a\]{--tw-border-opacity: 1;border-color:rgb(42 58 74 / var(--tw-border-opacity, 1))}.border-accent{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-amber-500{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-amber-500\/20{border-color:#f59e0b33}.border-amber-500\/30{border-color:#f59e0b4d}.border-amber-500\/50{border-color:#f59e0b80}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-500\/50{border-color:#3b82f680}.border-border{--tw-border-opacity: 1;border-color:rgb(30 42 58 / var(--tw-border-opacity, 1))}.border-border\/50{border-color:#1e2a3a80}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/30{border-color:#22c55e4d}.border-green-500\/50{border-color:#22c55e80}.border-red-400\/30{border-color:#f871714d}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/20{border-color:#ef444433}.border-red-500\/30{border-color:#ef44444d}.border-red-500\/50{border-color:#ef444480}.border-red-600\/30{border-color:#dc26264d}.border-red-700\/30{border-color:#b91c1c4d}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-600{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-yellow-500\/30{border-color:#eab3084d}.border-yellow-700{--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity, 1))}.border-l-blue-500{--tw-border-opacity: 1;border-left-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.bg-\[\#0a0e17\]{--tw-bg-opacity: 1;background-color:rgb(10 14 23 / var(--tw-bg-opacity, 1))}.bg-\[\#0d1219\]{--tw-bg-opacity: 1;background-color:rgb(13 18 25 / var(--tw-bg-opacity, 1))}.bg-\[\#0d1420\]{--tw-bg-opacity: 1;background-color:rgb(13 20 32 / var(--tw-bg-opacity, 1))}.bg-\[\#1a2332\]{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.bg-\[\#1e2a3a\]{--tw-bg-opacity: 1;background-color:rgb(30 42 58 / var(--tw-bg-opacity, 1))}.bg-\[\#1e2a3a\]\/50{background-color:#1e2a3a80}.bg-accent{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-accent\/10{background-color:#3b82f61a}.bg-accent\/20{background-color:#3b82f633}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-amber-500\/20{background-color:#f59e0b33}.bg-bg{--tw-bg-opacity: 1;background-color:rgb(10 14 23 / var(--tw-bg-opacity, 1))}.bg-bg-card{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-bg-card\/90{background-color:#111827e6}.bg-bg-hover{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/20{background-color:#3b82f633}.bg-border{--tw-bg-opacity: 1;background-color:rgb(30 42 58 / var(--tw-bg-opacity, 1))}.bg-cyan-500\/20{background-color:#06b6d433}.bg-cyan-700{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity, 1))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-500\/20{background-color:#22c55e33}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/20{background-color:#ef444433}.bg-red-600\/20{background-color:#dc262633}.bg-red-700\/20{background-color:#b91c1c33}.bg-slate-500{--tw-bg-opacity: 1;background-color:rgb(100 116 139 / var(--tw-bg-opacity, 1))}.bg-slate-500\/20{background-color:#64748b33}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-slate-800\/50{background-color:#1e293b80}.bg-slate-800\/60{background-color:#1e293b99}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-slate-900\/40{background-color:#0f172a66}.bg-slate-900\/50{background-color:#0f172a80}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/10{background-color:#eab3081a}.bg-yellow-500\/20{background-color:#eab30833}.bg-yellow-700{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/40{background-color:#713f1266}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-blue-700{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.fill-slate-100{fill:#f1f5f9}.fill-slate-400{fill:#94a3b8}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-6{padding-left:1.5rem}.pl-9{padding-left:2.25rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.tracking-wide{letter-spacing:.025em}.text-accent{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-amber-300{--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-100{--tw-text-opacity: 1;color:rgb(254 249 195 / var(--tw-text-opacity, 1))}.text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.text-yellow-200\/80{color:#fef08acc}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-300\/80{color:#fde047cc}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(100 116 139 / var(--tw-placeholder-opacity, 1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(100 116 139 / var(--tw-placeholder-opacity, 1))}.placeholder-slate-600::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(71 85 105 / var(--tw-placeholder-opacity, 1))}.placeholder-slate-600::placeholder{--tw-placeholder-opacity: 1;color:rgb(71 85 105 / var(--tw-placeholder-opacity, 1))}.accent-cyan-500{accent-color:#06b6d4}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}body{background:#0a0e17;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0a0e17}::-webkit-scrollbar-thumb{background:#2d3a4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#3b4a5d}.font-mono{font-family:JetBrains Mono,monospace}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse-slow{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in{animation:slide-in .3s ease-out}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.last\:border-0:last-child{border-width:0px}.hover\:border-\[\#2a3a4a\]:hover{--tw-border-opacity: 1;border-color:rgb(42 58 74 / var(--tw-border-opacity, 1))}.hover\:border-accent:hover{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#0a0e17\]:hover{--tw-bg-opacity: 1;background-color:rgb(10 14 23 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#1e2a3a\]:hover{--tw-bg-opacity: 1;background-color:rgb(30 42 58 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#1e2a3a\]\/50:hover{background-color:#1e2a3a80}.hover\:bg-\[\#2a3a4a\]:hover{--tw-bg-opacity: 1;background-color:rgb(42 58 74 / var(--tw-bg-opacity, 1))}.hover\:bg-accent\/10:hover{background-color:#3b82f61a}.hover\:bg-accent\/80:hover{background-color:#3b82f6cc}.hover\:bg-amber-500\/30:hover{background-color:#f59e0b4d}.hover\:bg-amber-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-bg-hover:hover{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-500\/10:hover{background-color:#3b82f61a}.hover\:bg-cyan-600:hover{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500\/10:hover{background-color:#ef44441a}.hover\:bg-slate-500\/10:hover{background-color:#64748b1a}.hover\:bg-slate-600:hover{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-800\/50:hover{background-color:#1e293b80}.hover\:bg-yellow-600:hover{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.hover\:text-accent:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-blue-300:hover{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-cyan-300:hover{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.hover\:text-red-300:hover{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.hover\:text-red-400:hover{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.hover\:text-slate-200:hover{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.hover\:text-slate-300:hover{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-accent:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-slate-700:disabled{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.group[open] .group-open\:rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width: 640px){.sm\:block{display:block}.sm\:inline-flex{display:inline-flex}}@media (min-width: 768px){.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}} +.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::-moz-selection{background:transparent}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-0\.5{left:.125rem}.left-1{left:.25rem}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1{top:.25rem}.top-1\/2{top:50%}.top-4{top:1rem}.top-6{top:1.5rem}.top-full{top:100%}.z-0{z-index:0}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2 / span 2}.-m-6{margin:-1.5rem}.-my-4{margin-top:-1rem;margin-bottom:-1rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-mb-px{margin-bottom:-1px}.-ml-2{margin-left:-.5rem}.-ml-4{margin-left:-1rem}.-mr-1{margin-right:-.25rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-1\.5{margin-left:.375rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-\[40vh\]{height:40vh}.h-\[540px\]{height:540px}.h-\[calc\(100vh-8rem\)\]{height:calc(100vh - 8rem)}.h-full{height:100%}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.max-h-96{max-height:24rem}.max-h-\[85vh\]{max-height:85vh}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[220px\]{width:220px}.w-\[250px\]{width:250px}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-\[200px\]{min-width:200px}.min-w-\[280px\]{min-width:280px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-4{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.scroll-mt-6{scroll-margin-top:1.5rem}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:rgb(30 42 58 / var(--tw-divide-opacity, 1))}.divide-slate-700\/60>:not([hidden])~:not([hidden]){border-color:#33415599}.self-stretch{align-self:stretch}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[\#1e2a3a\]{--tw-border-opacity: 1;border-color:rgb(30 42 58 / var(--tw-border-opacity, 1))}.border-\[\#2a3a4a\]{--tw-border-opacity: 1;border-color:rgb(42 58 74 / var(--tw-border-opacity, 1))}.border-accent{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-amber-500{--tw-border-opacity: 1;border-color:rgb(245 158 11 / var(--tw-border-opacity, 1))}.border-amber-500\/20{border-color:#f59e0b33}.border-amber-500\/30{border-color:#f59e0b4d}.border-amber-500\/50{border-color:#f59e0b80}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-500\/50{border-color:#3b82f680}.border-border{--tw-border-opacity: 1;border-color:rgb(30 42 58 / var(--tw-border-opacity, 1))}.border-border\/50{border-color:#1e2a3a80}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/30{border-color:#22c55e4d}.border-green-500\/50{border-color:#22c55e80}.border-red-400\/30{border-color:#f871714d}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/20{border-color:#ef444433}.border-red-500\/30{border-color:#ef44444d}.border-red-500\/50{border-color:#ef444480}.border-red-600\/30{border-color:#dc26264d}.border-red-700\/30{border-color:#b91c1c4d}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-600{--tw-border-opacity: 1;border-color:rgb(71 85 105 / var(--tw-border-opacity, 1))}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-yellow-500\/30{border-color:#eab3084d}.border-yellow-700{--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity, 1))}.border-l-blue-500{--tw-border-opacity: 1;border-left-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.bg-\[\#0a0e17\]{--tw-bg-opacity: 1;background-color:rgb(10 14 23 / var(--tw-bg-opacity, 1))}.bg-\[\#0d1219\]{--tw-bg-opacity: 1;background-color:rgb(13 18 25 / var(--tw-bg-opacity, 1))}.bg-\[\#0d1420\]{--tw-bg-opacity: 1;background-color:rgb(13 20 32 / var(--tw-bg-opacity, 1))}.bg-\[\#1a2332\]{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.bg-\[\#1e2a3a\]{--tw-bg-opacity: 1;background-color:rgb(30 42 58 / var(--tw-bg-opacity, 1))}.bg-\[\#1e2a3a\]\/50{background-color:#1e2a3a80}.bg-accent{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-accent\/10{background-color:#3b82f61a}.bg-accent\/20{background-color:#3b82f633}.bg-amber-400{--tw-bg-opacity: 1;background-color:rgb(251 191 36 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-500\/10{background-color:#f59e0b1a}.bg-amber-500\/20{background-color:#f59e0b33}.bg-bg{--tw-bg-opacity: 1;background-color:rgb(10 14 23 / var(--tw-bg-opacity, 1))}.bg-bg-card{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-bg-card\/90{background-color:#111827e6}.bg-bg-hover{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.bg-black\/50{background-color:#00000080}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/20{background-color:#3b82f633}.bg-border{--tw-bg-opacity: 1;background-color:rgb(30 42 58 / var(--tw-bg-opacity, 1))}.bg-cyan-500\/20{background-color:#06b6d433}.bg-cyan-700{--tw-bg-opacity: 1;background-color:rgb(14 116 144 / var(--tw-bg-opacity, 1))}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-500\/20{background-color:#22c55e33}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/20{background-color:#ef444433}.bg-red-600\/20{background-color:#dc262633}.bg-red-700\/20{background-color:#b91c1c33}.bg-slate-500{--tw-bg-opacity: 1;background-color:rgb(100 116 139 / var(--tw-bg-opacity, 1))}.bg-slate-500\/20{background-color:#64748b33}.bg-slate-700{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-slate-800\/50{background-color:#1e293b80}.bg-slate-800\/60{background-color:#1e293b99}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-slate-900\/40{background-color:#0f172a66}.bg-slate-900\/50{background-color:#0f172a80}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/10{background-color:#eab3081a}.bg-yellow-500\/20{background-color:#eab30833}.bg-yellow-700{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/40{background-color:#713f1266}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-blue-500{--tw-gradient-from: #3b82f6 var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-blue-700{--tw-gradient-to: #1d4ed8 var(--tw-gradient-to-position)}.fill-slate-100{fill:#f1f5f9}.fill-slate-400{fill:#94a3b8}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pl-6{padding-left:1.5rem}.pl-9{padding-left:2.25rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.tracking-wide{letter-spacing:.025em}.text-accent{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-amber-300{--tw-text-opacity: 1;color:rgb(252 211 77 / var(--tw-text-opacity, 1))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-slate-100{--tw-text-opacity: 1;color:rgb(241 245 249 / var(--tw-text-opacity, 1))}.text-slate-200{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-700{--tw-text-opacity: 1;color:rgb(51 65 85 / var(--tw-text-opacity, 1))}.text-slate-800{--tw-text-opacity: 1;color:rgb(30 41 59 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-100{--tw-text-opacity: 1;color:rgb(254 249 195 / var(--tw-text-opacity, 1))}.text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.text-yellow-200\/80{color:#fef08acc}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-300\/80{color:#fde047cc}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.placeholder-slate-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(100 116 139 / var(--tw-placeholder-opacity, 1))}.placeholder-slate-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(100 116 139 / var(--tw-placeholder-opacity, 1))}.placeholder-slate-600::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(71 85 105 / var(--tw-placeholder-opacity, 1))}.placeholder-slate-600::placeholder{--tw-placeholder-opacity: 1;color:rgb(71 85 105 / var(--tw-placeholder-opacity, 1))}.accent-cyan-500{accent-color:#06b6d4}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}body{background:#0a0e17;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0a0e17}::-webkit-scrollbar-thumb{background:#2d3a4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#3b4a5d}.font-mono{font-family:JetBrains Mono,monospace}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse-slow{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in{animation:slide-in .3s ease-out}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.last\:border-0:last-child{border-width:0px}.hover\:border-\[\#2a3a4a\]:hover{--tw-border-opacity: 1;border-color:rgb(42 58 74 / var(--tw-border-opacity, 1))}.hover\:border-accent:hover{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.hover\:bg-\[\#0a0e17\]:hover{--tw-bg-opacity: 1;background-color:rgb(10 14 23 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#1e2a3a\]:hover{--tw-bg-opacity: 1;background-color:rgb(30 42 58 / var(--tw-bg-opacity, 1))}.hover\:bg-\[\#1e2a3a\]\/50:hover{background-color:#1e2a3a80}.hover\:bg-\[\#2a3a4a\]:hover{--tw-bg-opacity: 1;background-color:rgb(42 58 74 / var(--tw-bg-opacity, 1))}.hover\:bg-accent\/10:hover{background-color:#3b82f61a}.hover\:bg-accent\/80:hover{background-color:#3b82f6cc}.hover\:bg-amber-500\/30:hover{background-color:#f59e0b4d}.hover\:bg-amber-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-bg-hover:hover{--tw-bg-opacity: 1;background-color:rgb(26 35 50 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-500\/10:hover{background-color:#3b82f61a}.hover\:bg-cyan-600:hover{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500\/10:hover{background-color:#ef44441a}.hover\:bg-slate-500\/10:hover{background-color:#64748b1a}.hover\:bg-slate-600:hover{--tw-bg-opacity: 1;background-color:rgb(71 85 105 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-700:hover{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-800\/50:hover{background-color:#1e293b80}.hover\:bg-yellow-600:hover{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.hover\:text-accent:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-blue-300:hover{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-cyan-300:hover{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.hover\:text-red-300:hover{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.hover\:text-red-400:hover{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.hover\:text-slate-200:hover{--tw-text-opacity: 1;color:rgb(226 232 240 / var(--tw-text-opacity, 1))}.hover\:text-slate-300:hover{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-accent:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-slate-700:disabled{--tw-bg-opacity: 1;background-color:rgb(51 65 85 / var(--tw-bg-opacity, 1))}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.group[open] .group-open\:rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width: 640px){.sm\:block{display:block}.sm\:inline-flex{display:inline-flex}}@media (min-width: 768px){.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}} diff --git a/meshai/dashboard/static/assets/index-D0oznGRE.js b/meshai/dashboard/static/assets/index-BYRqIq--.js similarity index 54% rename from meshai/dashboard/static/assets/index-D0oznGRE.js rename to meshai/dashboard/static/assets/index-BYRqIq--.js index 8abfd0c..07f4e75 100644 --- a/meshai/dashboard/static/assets/index-D0oznGRE.js +++ b/meshai/dashboard/static/assets/index-BYRqIq--.js @@ -1,4 +1,4 @@ -function Poe(e,t){for(var r=0;rn[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function r(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(i){if(i.ep)return;i.ep=!0;const a=r(i);fetch(i.href,a)}})();var fg=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function $t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var l7={exports:{}},hS={},u7={exports:{}},yt={};/** +function Loe(e,t){for(var r=0;rn[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function r(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(i){if(i.ep)return;i.ep=!0;const a=r(i);fetch(i.href,a)}})();var fg=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function $t(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var c7={exports:{}},hS={},f7={exports:{}},yt={};/** * @license React * react.production.min.js * @@ -6,7 +6,7 @@ function Poe(e,t){for(var r=0;r>>1,Y=B[G];if(0>>1;Gi(le,W))fei(De,le)?(B[G]=De,B[fe]=W,G=fe):(B[G]=le,B[ee]=W,G=ee);else if(fei(De,W))B[G]=De,B[fe]=W,G=fe;else break e}}return Z}function i(B,Z){var W=B.sortIndex-Z.sortIndex;return W!==0?W:B.id-Z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var l=[],u=[],c=1,f=null,h=3,d=!1,v=!1,g=!1,m=typeof setTimeout=="function"?setTimeout:null,x=typeof clearTimeout=="function"?clearTimeout:null,_=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function b(B){for(var Z=r(u);Z!==null;){if(Z.callback===null)n(u);else if(Z.startTime<=B)n(u),Z.sortIndex=Z.expirationTime,t(l,Z);else break;Z=r(u)}}function S(B){if(g=!1,b(B),!v)if(r(l)!==null)v=!0,F(T);else{var Z=r(u);Z!==null&&$(S,Z.startTime-B)}}function T(B,Z){v=!1,g&&(g=!1,x(P),P=-1),d=!0;var W=h;try{for(b(Z),f=r(l);f!==null&&(!(f.expirationTime>Z)||B&&!E());){var G=f.callback;if(typeof G=="function"){f.callback=null,h=f.priorityLevel;var Y=G(f.expirationTime<=Z);Z=e.unstable_now(),typeof Y=="function"?f.callback=Y:f===r(l)&&n(l),b(Z)}else n(l);f=r(l)}if(f!==null)var K=!0;else{var ee=r(u);ee!==null&&$(S,ee.startTime-Z),K=!1}return K}finally{f=null,h=W,d=!1}}var C=!1,A=null,P=-1,I=5,k=-1;function E(){return!(e.unstable_now()-kB||125G?(B.sortIndex=W,t(u,B),r(l)===null&&B===r(u)&&(g?(x(P),P=-1):g=!0,$(S,W-G))):(B.sortIndex=Y,t(l,B),v||d||(v=!0,F(T))),B},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(B){var Z=h;return function(){var W=h;h=Z;try{return B.apply(this,arguments)}finally{h=W}}}})(b7);_7.exports=b7;var Koe=_7.exports;/** + */(function(e){function t(B,Z){var W=B.length;B.push(Z);e:for(;0>>1,Y=B[G];if(0>>1;Gi(le,W))hei(Ne,le)?(B[G]=Ne,B[he]=W,G=he):(B[G]=le,B[ee]=W,G=ee);else if(hei(Ne,W))B[G]=Ne,B[he]=W,G=he;else break e}}return Z}function i(B,Z){var W=B.sortIndex-Z.sortIndex;return W!==0?W:B.id-Z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var l=[],u=[],c=1,f=null,h=3,d=!1,v=!1,m=!1,y=typeof setTimeout=="function"?setTimeout:null,x=typeof clearTimeout=="function"?clearTimeout:null,_=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function b(B){for(var Z=r(u);Z!==null;){if(Z.callback===null)n(u);else if(Z.startTime<=B)n(u),Z.sortIndex=Z.expirationTime,t(l,Z);else break;Z=r(u)}}function S(B){if(m=!1,b(B),!v)if(r(l)!==null)v=!0,F(T);else{var Z=r(u);Z!==null&&$(S,Z.startTime-B)}}function T(B,Z){v=!1,m&&(m=!1,x(P),P=-1),d=!0;var W=h;try{for(b(Z),f=r(l);f!==null&&(!(f.expirationTime>Z)||B&&!O());){var G=f.callback;if(typeof G=="function"){f.callback=null,h=f.priorityLevel;var Y=G(f.expirationTime<=Z);Z=e.unstable_now(),typeof Y=="function"?f.callback=Y:f===r(l)&&n(l),b(Z)}else n(l);f=r(l)}if(f!==null)var K=!0;else{var ee=r(u);ee!==null&&$(S,ee.startTime-Z),K=!1}return K}finally{f=null,h=W,d=!1}}var C=!1,A=null,P=-1,I=5,k=-1;function O(){return!(e.unstable_now()-kB||125G?(B.sortIndex=W,t(u,B),r(l)===null&&B===r(u)&&(m?(x(P),P=-1):m=!0,$(S,W-G))):(B.sortIndex=Y,t(l,B),v||d||(v=!0,F(T))),B},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(B){var Z=h;return function(){var W=h;h=Z;try{return B.apply(this,arguments)}finally{h=W}}}})(S7);w7.exports=S7;var Qoe=w7.exports;/** * @license React * react-dom.production.min.js * @@ -30,14 +30,14 @@ function Poe(e,t){for(var r=0;r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),MP=Object.prototype.hasOwnProperty,Qoe=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,s3={},l3={};function ese(e){return MP.call(l3,e)?!0:MP.call(s3,e)?!1:Qoe.test(e)?l3[e]=!0:(s3[e]=!0,!1)}function tse(e,t,r,n){if(r!==null&&r.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return n?!1:r!==null?!r.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function rse(e,t,r,n){if(t===null||typeof t>"u"||tse(e,t,r,n))return!0;if(n)return!1;if(r!==null)switch(r.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Xn(e,t,r,n,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=n,this.attributeNamespace=i,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var mn={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){mn[e]=new Xn(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];mn[t]=new Xn(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){mn[e]=new Xn(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){mn[e]=new Xn(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){mn[e]=new Xn(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){mn[e]=new Xn(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){mn[e]=new Xn(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){mn[e]=new Xn(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){mn[e]=new Xn(e,5,!1,e.toLowerCase(),null,!1,!1)});var hE=/[\-:]([a-z])/g;function dE(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(hE,dE);mn[t]=new Xn(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(hE,dE);mn[t]=new Xn(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(hE,dE);mn[t]=new Xn(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){mn[e]=new Xn(e,1,!1,e.toLowerCase(),null,!1,!1)});mn.xlinkHref=new Xn("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){mn[e]=new Xn(e,1,!1,e.toLowerCase(),null,!0,!0)});function vE(e,t,r,n){var i=mn.hasOwnProperty(t)?mn[t]:null;(i!==null?i.type!==0:n||!(2"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),MP=Object.prototype.hasOwnProperty,tse=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,c5={},f5={};function rse(e){return MP.call(f5,e)?!0:MP.call(c5,e)?!1:tse.test(e)?f5[e]=!0:(c5[e]=!0,!1)}function nse(e,t,r,n){if(r!==null&&r.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return n?!1:r!==null?!r.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function ise(e,t,r,n){if(t===null||typeof t>"u"||nse(e,t,r,n))return!0;if(n)return!1;if(r!==null)switch(r.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function qn(e,t,r,n,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=n,this.attributeNamespace=i,this.mustUseProperty=r,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var yn={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){yn[e]=new qn(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];yn[t]=new qn(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){yn[e]=new qn(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){yn[e]=new qn(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){yn[e]=new qn(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){yn[e]=new qn(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){yn[e]=new qn(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){yn[e]=new qn(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){yn[e]=new qn(e,5,!1,e.toLowerCase(),null,!1,!1)});var dO=/[\-:]([a-z])/g;function vO(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(dO,vO);yn[t]=new qn(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(dO,vO);yn[t]=new qn(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(dO,vO);yn[t]=new qn(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){yn[e]=new qn(e,1,!1,e.toLowerCase(),null,!1,!1)});yn.xlinkHref=new qn("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){yn[e]=new qn(e,1,!1,e.toLowerCase(),null,!0,!0)});function pO(e,t,r,n){var i=yn.hasOwnProperty(t)?yn[t]:null;(i!==null?i.type!==0:n||!(2s||i[o]!==a[s]){var l=` -`+i[o].replace(" at new "," at ");return e.displayName&&l.includes("")&&(l=l.replace("",e.displayName)),l}while(1<=o&&0<=s);break}}}finally{ZC=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?hg(e):""}function nse(e){switch(e.tag){case 5:return hg(e.type);case 16:return hg("Lazy");case 13:return hg("Suspense");case 19:return hg("SuspenseList");case 0:case 2:case 15:return e=YC(e.type,!1),e;case 11:return e=YC(e.type.render,!1),e;case 1:return e=YC(e.type,!0),e;default:return""}}function IP(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Lh:return"Fragment";case kh:return"Portal";case PP:return"Profiler";case pE:return"StrictMode";case kP:return"Suspense";case LP:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case T7:return(e.displayName||"Context")+".Consumer";case S7:return(e._context.displayName||"Context")+".Provider";case gE:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case mE:return t=e.displayName||null,t!==null?t:IP(e.type)||"Memo";case xl:t=e._payload,e=e._init;try{return IP(e(t))}catch{}}return null}function ise(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return IP(t);case 8:return t===pE?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function iu(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function A7(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function ase(e){var t=A7(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&typeof r<"u"&&typeof r.get=="function"&&typeof r.set=="function"){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(o){n=""+o,a.call(this,o)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(o){n=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function K0(e){e._valueTracker||(e._valueTracker=ase(e))}function M7(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=A7(e)?e.checked?"true":"false":e.value),e=n,e!==r?(t.setValue(e),!0):!1}function Mb(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function OP(e,t){var r=t.checked;return ur({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function c3(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=iu(t.value!=null?t.value:r),e._wrapperState={initialChecked:n,initialValue:r,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function P7(e,t){t=t.checked,t!=null&&vE(e,"checked",t,!1)}function EP(e,t){P7(e,t);var r=iu(t.value),n=t.type;if(r!=null)n==="number"?(r===0&&e.value===""||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if(n==="submit"||n==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?DP(e,t.type,r):t.hasOwnProperty("defaultValue")&&DP(e,t.type,iu(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function f3(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!(n!=="submit"&&n!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}r=e.name,r!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,r!==""&&(e.name=r)}function DP(e,t,r){(t!=="number"||Mb(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var dg=Array.isArray;function Jh(e,t,r,n){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=J0.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function um(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Lg={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},ose=["Webkit","ms","Moz","O"];Object.keys(Lg).forEach(function(e){ose.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Lg[t]=Lg[e]})});function O7(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Lg.hasOwnProperty(e)&&Lg[e]?(""+t).trim():t+"px"}function E7(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var n=r.indexOf("--")===0,i=O7(r,t[r],n);r==="float"&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}var sse=ur({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function RP(e,t){if(t){if(sse[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(ye(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(ye(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(ye(61))}if(t.style!=null&&typeof t.style!="object")throw Error(ye(62))}}function BP(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var zP=null;function yE(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var $P=null,Qh=null,ed=null;function v3(e){if(e=Yy(e)){if(typeof $P!="function")throw Error(ye(280));var t=e.stateNode;t&&(t=mS(t),$P(e.stateNode,e.type,t))}}function D7(e){Qh?ed?ed.push(e):ed=[e]:Qh=e}function N7(){if(Qh){var e=Qh,t=ed;if(ed=Qh=null,v3(e),t)for(e=0;e>>=0,e===0?32:31-(yse(e)/xse|0)|0}var Q0=64,ex=4194304;function vg(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ib(e,t){var r=e.pendingLanes;if(r===0)return 0;var n=0,i=e.suspendedLanes,a=e.pingedLanes,o=r&268435455;if(o!==0){var s=o&~i;s!==0?n=vg(s):(a&=o,a!==0&&(n=vg(a)))}else o=r&~i,o!==0?n=vg(o):a!==0&&(n=vg(a));if(n===0)return 0;if(t!==0&&t!==n&&!(t&i)&&(i=n&-n,a=t&-t,i>=a||i===16&&(a&4194240)!==0))return t;if(n&4&&(n|=r&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function Uy(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Fa(t),e[t]=r}function Sse(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0=Og),S3=" ",T3=!1;function t9(e,t){switch(e){case"keyup":return Kse.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function r9(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ih=!1;function Qse(e,t){switch(e){case"compositionend":return r9(t);case"keypress":return t.which!==32?null:(T3=!0,S3);case"textInput":return e=t.data,e===S3&&T3?null:e;default:return null}}function ele(e,t){if(Ih)return e==="compositionend"||!AE&&t9(e,t)?(e=Q7(),Y_=SE=Ml=null,Ih=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=P3(r)}}function o9(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?o9(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function s9(){for(var e=window,t=Mb();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch{r=!1}if(r)e=t.contentWindow;else break;t=Mb(e.document)}return t}function ME(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function ule(e){var t=s9(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&o9(r.ownerDocument.documentElement,r)){if(n!==null&&ME(r)){if(t=n.start,e=n.end,e===void 0&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if(e=(t=r.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=r.textContent.length,a=Math.min(n.start,i);n=n.end===void 0?a:Math.min(n.end,i),!e.extend&&a>n&&(i=n,n=a,a=i),i=k3(r,a);var o=k3(r,n);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>n?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=r;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r=document.documentMode,Oh=null,UP=null,Dg=null,ZP=!1;function L3(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;ZP||Oh==null||Oh!==Mb(n)||(n=Oh,"selectionStart"in n&&ME(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),Dg&&pm(Dg,n)||(Dg=n,n=Db(UP,"onSelect"),0Nh||(e.current=QP[Nh],QP[Nh]=null,Nh--)}function Zt(e,t){Nh++,QP[Nh]=e.current,e.current=t}var au={},Dn=gu(au),ai=gu(!1),Kc=au;function gd(e,t){var r=e.type.contextTypes;if(!r)return au;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in r)i[a]=t[a];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function oi(e){return e=e.childContextTypes,e!=null}function jb(){Jt(ai),Jt(Dn)}function R3(e,t,r){if(Dn.current!==au)throw Error(ye(168));Zt(Dn,t),Zt(ai,r)}function g9(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,typeof n.getChildContext!="function")return r;n=n.getChildContext();for(var i in n)if(!(i in t))throw Error(ye(108,ise(e)||"Unknown",i));return ur({},r,n)}function Rb(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||au,Kc=Dn.current,Zt(Dn,e),Zt(ai,ai.current),!0}function B3(e,t,r){var n=e.stateNode;if(!n)throw Error(ye(169));r?(e=g9(e,t,Kc),n.__reactInternalMemoizedMergedChildContext=e,Jt(ai),Jt(Dn),Zt(Dn,e)):Jt(ai),Zt(ai,r)}var ds=null,yS=!1,lA=!1;function m9(e){ds===null?ds=[e]:ds.push(e)}function ble(e){yS=!0,m9(e)}function mu(){if(!lA&&ds!==null){lA=!0;var e=0,t=Et;try{var r=ds;for(Et=1;e>=o,i-=o,ps=1<<32-Fa(t)+i|r<P?(I=A,A=null):I=A.sibling;var k=h(x,A,b[P],S);if(k===null){A===null&&(A=I);break}e&&A&&k.alternate===null&&t(x,A),_=a(k,_,P),C===null?T=k:C.sibling=k,C=k,A=I}if(P===b.length)return r(x,A),Qt&&lc(x,P),T;if(A===null){for(;PP?(I=A,A=null):I=A.sibling;var E=h(x,A,k.value,S);if(E===null){A===null&&(A=I);break}e&&A&&E.alternate===null&&t(x,A),_=a(E,_,P),C===null?T=E:C.sibling=E,C=E,A=I}if(k.done)return r(x,A),Qt&&lc(x,P),T;if(A===null){for(;!k.done;P++,k=b.next())k=f(x,k.value,S),k!==null&&(_=a(k,_,P),C===null?T=k:C.sibling=k,C=k);return Qt&&lc(x,P),T}for(A=n(x,A);!k.done;P++,k=b.next())k=d(A,x,P,k.value,S),k!==null&&(e&&k.alternate!==null&&A.delete(k.key===null?P:k.key),_=a(k,_,P),C===null?T=k:C.sibling=k,C=k);return e&&A.forEach(function(D){return t(x,D)}),Qt&&lc(x,P),T}function m(x,_,b,S){if(typeof b=="object"&&b!==null&&b.type===Lh&&b.key===null&&(b=b.props.children),typeof b=="object"&&b!==null){switch(b.$$typeof){case q0:e:{for(var T=b.key,C=_;C!==null;){if(C.key===T){if(T=b.type,T===Lh){if(C.tag===7){r(x,C.sibling),_=i(C,b.props.children),_.return=x,x=_;break e}}else if(C.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===xl&&F3(T)===C.type){r(x,C.sibling),_=i(C,b.props),_.ref=_p(x,C,b),_.return=x,x=_;break e}r(x,C);break}else t(x,C);C=C.sibling}b.type===Lh?(_=zc(b.props.children,x.mode,S,b.key),_.return=x,x=_):(S=rb(b.type,b.key,b.props,null,x.mode,S),S.ref=_p(x,_,b),S.return=x,x=S)}return o(x);case kh:e:{for(C=b.key;_!==null;){if(_.key===C)if(_.tag===4&&_.stateNode.containerInfo===b.containerInfo&&_.stateNode.implementation===b.implementation){r(x,_.sibling),_=i(_,b.children||[]),_.return=x,x=_;break e}else{r(x,_);break}else t(x,_);_=_.sibling}_=gA(b,x.mode,S),_.return=x,x=_}return o(x);case xl:return C=b._init,m(x,_,C(b._payload),S)}if(dg(b))return v(x,_,b,S);if(pp(b))return g(x,_,b,S);sx(x,b)}return typeof b=="string"&&b!==""||typeof b=="number"?(b=""+b,_!==null&&_.tag===6?(r(x,_.sibling),_=i(_,b),_.return=x,x=_):(r(x,_),_=pA(b,x.mode,S),_.return=x,x=_),o(x)):r(x,_)}return m}var yd=b9(!0),w9=b9(!1),$b=gu(null),Fb=null,Bh=null,IE=null;function OE(){IE=Bh=Fb=null}function EE(e){var t=$b.current;Jt($b),e._currentValue=t}function rk(e,t,r){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===r)break;e=e.return}}function rd(e,t){Fb=e,IE=Bh=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(ni=!0),e.firstContext=null)}function ca(e){var t=e._currentValue;if(IE!==e)if(e={context:e,memoizedValue:t,next:null},Bh===null){if(Fb===null)throw Error(ye(308));Bh=e,Fb.dependencies={lanes:0,firstContext:e}}else Bh=Bh.next=e;return t}var Tc=null;function DE(e){Tc===null?Tc=[e]:Tc.push(e)}function S9(e,t,r,n){var i=t.interleaved;return i===null?(r.next=r,DE(t)):(r.next=i.next,i.next=r),t.interleaved=r,js(e,n)}function js(e,t){e.lanes|=t;var r=e.alternate;for(r!==null&&(r.lanes|=t),r=e,e=e.return;e!==null;)e.childLanes|=t,r=e.alternate,r!==null&&(r.childLanes|=t),r=e,e=e.return;return r.tag===3?r.stateNode:null}var _l=!1;function NE(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function T9(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ts(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Gl(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,St&2){var i=n.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),n.pending=t,js(e,r)}return i=n.interleaved,i===null?(t.next=t,DE(n)):(t.next=i.next,i.next=t),n.interleaved=t,js(e,r)}function q_(e,t,r){if(t=t.updateQueue,t!==null&&(t=t.shared,(r&4194240)!==0)){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,_E(e,r)}}function V3(e,t){var r=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,r===n)){var i=null,a=null;if(r=r.firstBaseUpdate,r!==null){do{var o={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};a===null?i=a=o:a=a.next=o,r=r.next}while(r!==null);a===null?i=a=t:a=a.next=t}else i=a=t;r={baseState:n.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:n.shared,effects:n.effects},e.updateQueue=r;return}e=r.lastBaseUpdate,e===null?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Vb(e,t,r,n){var i=e.updateQueue;_l=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var l=s,u=l.next;l.next=null,o===null?a=u:o.next=u,o=l;var c=e.alternate;c!==null&&(c=c.updateQueue,s=c.lastBaseUpdate,s!==o&&(s===null?c.firstBaseUpdate=u:s.next=u,c.lastBaseUpdate=l))}if(a!==null){var f=i.baseState;o=0,c=u=l=null,s=a;do{var h=s.lane,d=s.eventTime;if((n&h)===h){c!==null&&(c=c.next={eventTime:d,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var v=e,g=s;switch(h=t,d=r,g.tag){case 1:if(v=g.payload,typeof v=="function"){f=v.call(d,f,h);break e}f=v;break e;case 3:v.flags=v.flags&-65537|128;case 0:if(v=g.payload,h=typeof v=="function"?v.call(d,f,h):v,h==null)break e;f=ur({},f,h);break e;case 2:_l=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,h=i.effects,h===null?i.effects=[s]:h.push(s))}else d={eventTime:d,lane:h,tag:s.tag,payload:s.payload,callback:s.callback,next:null},c===null?(u=c=d,l=f):c=c.next=d,o|=h;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;h=s,s=h.next,h.next=null,i.lastBaseUpdate=h,i.shared.pending=null}}while(!0);if(c===null&&(l=f),i.baseState=l,i.firstBaseUpdate=u,i.lastBaseUpdate=c,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);ef|=o,e.lanes=o,e.memoizedState=f}}function G3(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var n=cA.transition;cA.transition={};try{e(!1),t()}finally{Et=r,cA.transition=n}}function F9(){return fa().memoizedState}function Cle(e,t,r){var n=Hl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},V9(e))G9(t,r);else if(r=S9(e,t,r,n),r!==null){var i=Gn();Va(r,e,n,i),W9(r,t,n)}}function Ale(e,t,r){var n=Hl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(V9(e))G9(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,r);if(i.hasEagerState=!0,i.eagerState=s,Za(s,o)){var l=t.interleaved;l===null?(i.next=i,DE(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}r=S9(e,t,i,n),r!==null&&(i=Gn(),Va(r,e,n,i),W9(r,t,n))}}function V9(e){var t=e.alternate;return e===or||t!==null&&t===or}function G9(e,t){Ng=Wb=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function W9(e,t,r){if(r&4194240){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,_E(e,r)}}var Hb={readContext:ca,useCallback:wn,useContext:wn,useEffect:wn,useImperativeHandle:wn,useInsertionEffect:wn,useLayoutEffect:wn,useMemo:wn,useReducer:wn,useRef:wn,useState:wn,useDebugValue:wn,useDeferredValue:wn,useTransition:wn,useMutableSource:wn,useSyncExternalStore:wn,useId:wn,unstable_isNewReconciler:!1},Mle={readContext:ca,useCallback:function(e,t){return mo().memoizedState=[e,t===void 0?null:t],e},useContext:ca,useEffect:H3,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,J_(4194308,4,j9.bind(null,t,e),r)},useLayoutEffect:function(e,t){return J_(4194308,4,e,t)},useInsertionEffect:function(e,t){return J_(4,2,e,t)},useMemo:function(e,t){var r=mo();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=mo();return t=r!==void 0?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=Cle.bind(null,or,e),[n.memoizedState,e]},useRef:function(e){var t=mo();return e={current:e},t.memoizedState=e},useState:W3,useDebugValue:GE,useDeferredValue:function(e){return mo().memoizedState=e},useTransition:function(){var e=W3(!1),t=e[0];return e=Tle.bind(null,e[1]),mo().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=or,i=mo();if(Qt){if(r===void 0)throw Error(ye(407));r=r()}else{if(r=t(),nn===null)throw Error(ye(349));Qc&30||P9(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,H3(L9.bind(null,n,a,e),[e]),n.flags|=2048,Sm(9,k9.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=mo(),t=nn.identifierPrefix;if(Qt){var r=gs,n=ps;r=(n&~(1<<32-Fa(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=bm++,0")&&(l=l.replace("",e.displayName)),l}while(1<=o&&0<=s);break}}}finally{ZC=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?hg(e):""}function ase(e){switch(e.tag){case 5:return hg(e.type);case 16:return hg("Lazy");case 13:return hg("Suspense");case 19:return hg("SuspenseList");case 0:case 2:case 15:return e=YC(e.type,!1),e;case 11:return e=YC(e.type.render,!1),e;case 1:return e=YC(e.type,!0),e;default:return""}}function IP(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Ih:return"Fragment";case Lh:return"Portal";case PP:return"Profiler";case gO:return"StrictMode";case kP:return"Suspense";case LP:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case A7:return(e.displayName||"Context")+".Consumer";case C7:return(e._context.displayName||"Context")+".Provider";case mO:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case yO:return t=e.displayName||null,t!==null?t:IP(e.type)||"Memo";case xl:t=e._payload,e=e._init;try{return IP(e(t))}catch{}}return null}function ose(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return IP(t);case 8:return t===gO?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function iu(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function P7(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function sse(e){var t=P7(e)?"checked":"value",r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),n=""+e[t];if(!e.hasOwnProperty(t)&&typeof r<"u"&&typeof r.get=="function"&&typeof r.set=="function"){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(o){n=""+o,a.call(this,o)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(o){n=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function K0(e){e._valueTracker||(e._valueTracker=sse(e))}function k7(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=P7(e)?e.checked?"true":"false":e.value),e=n,e!==r?(t.setValue(e),!0):!1}function Mb(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function EP(e,t){var r=t.checked;return ur({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function d5(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=iu(t.value!=null?t.value:r),e._wrapperState={initialChecked:n,initialValue:r,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function L7(e,t){t=t.checked,t!=null&&pO(e,"checked",t,!1)}function OP(e,t){L7(e,t);var r=iu(t.value),n=t.type;if(r!=null)n==="number"?(r===0&&e.value===""||e.value!=r)&&(e.value=""+r):e.value!==""+r&&(e.value=""+r);else if(n==="submit"||n==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?DP(e,t.type,r):t.hasOwnProperty("defaultValue")&&DP(e,t.type,iu(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function v5(e,t,r){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var n=t.type;if(!(n!=="submit"&&n!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,r||t===e.value||(e.value=t),e.defaultValue=t}r=e.name,r!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,r!==""&&(e.name=r)}function DP(e,t,r){(t!=="number"||Mb(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var dg=Array.isArray;function Qh(e,t,r,n){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=J0.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function um(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Lg={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},lse=["Webkit","ms","Moz","O"];Object.keys(Lg).forEach(function(e){lse.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Lg[t]=Lg[e]})});function D7(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Lg.hasOwnProperty(e)&&Lg[e]?(""+t).trim():t+"px"}function N7(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var n=r.indexOf("--")===0,i=D7(r,t[r],n);r==="float"&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}var use=ur({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function RP(e,t){if(t){if(use[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(_e(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(_e(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(_e(61))}if(t.style!=null&&typeof t.style!="object")throw Error(_e(62))}}function BP(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var zP=null;function xO(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var $P=null,ed=null,td=null;function m5(e){if(e=Yy(e)){if(typeof $P!="function")throw Error(_e(280));var t=e.stateNode;t&&(t=mS(t),$P(e.stateNode,e.type,t))}}function j7(e){ed?td?td.push(e):td=[e]:ed=e}function R7(){if(ed){var e=ed,t=td;if(td=ed=null,m5(e),t)for(e=0;e>>=0,e===0?32:31-(_se(e)/bse|0)|0}var Q0=64,ex=4194304;function vg(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ib(e,t){var r=e.pendingLanes;if(r===0)return 0;var n=0,i=e.suspendedLanes,a=e.pingedLanes,o=r&268435455;if(o!==0){var s=o&~i;s!==0?n=vg(s):(a&=o,a!==0&&(n=vg(a)))}else o=r&~i,o!==0?n=vg(o):a!==0&&(n=vg(a));if(n===0)return 0;if(t!==0&&t!==n&&!(t&i)&&(i=n&-n,a=t&-t,i>=a||i===16&&(a&4194240)!==0))return t;if(n&4&&(n|=r&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function Uy(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Fa(t),e[t]=r}function Cse(e,t){var r=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var n=e.eventTimes;for(e=e.expirationTimes;0=Eg),A5=" ",M5=!1;function n9(e,t){switch(e){case"keyup":return Qse.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function i9(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Eh=!1;function tle(e,t){switch(e){case"compositionend":return i9(t);case"keypress":return t.which!==32?null:(M5=!0,A5);case"textInput":return e=t.data,e===A5&&M5?null:e;default:return null}}function rle(e,t){if(Eh)return e==="compositionend"||!MO&&n9(e,t)?(e=t9(),Y_=TO=Ml=null,Eh=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=I5(r)}}function l9(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?l9(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function u9(){for(var e=window,t=Mb();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch{r=!1}if(r)e=t.contentWindow;else break;t=Mb(e.document)}return t}function PO(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function fle(e){var t=u9(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&l9(r.ownerDocument.documentElement,r)){if(n!==null&&PO(r)){if(t=n.start,e=n.end,e===void 0&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if(e=(t=r.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=r.textContent.length,a=Math.min(n.start,i);n=n.end===void 0?a:Math.min(n.end,i),!e.extend&&a>n&&(i=n,n=a,a=i),i=E5(r,a);var o=E5(r,n);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>n?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=r;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r=document.documentMode,Oh=null,UP=null,Dg=null,ZP=!1;function O5(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;ZP||Oh==null||Oh!==Mb(n)||(n=Oh,"selectionStart"in n&&PO(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),Dg&&pm(Dg,n)||(Dg=n,n=Db(UP,"onSelect"),0jh||(e.current=QP[jh],QP[jh]=null,jh--)}function Zt(e,t){jh++,QP[jh]=e.current,e.current=t}var au={},Nn=gu(au),oi=gu(!1),Kc=au;function md(e,t){var r=e.type.contextTypes;if(!r)return au;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in r)i[a]=t[a];return n&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function si(e){return e=e.childContextTypes,e!=null}function jb(){Jt(oi),Jt(Nn)}function $5(e,t,r){if(Nn.current!==au)throw Error(_e(168));Zt(Nn,t),Zt(oi,r)}function y9(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,typeof n.getChildContext!="function")return r;n=n.getChildContext();for(var i in n)if(!(i in t))throw Error(_e(108,ose(e)||"Unknown",i));return ur({},r,n)}function Rb(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||au,Kc=Nn.current,Zt(Nn,e),Zt(oi,oi.current),!0}function F5(e,t,r){var n=e.stateNode;if(!n)throw Error(_e(169));r?(e=y9(e,t,Kc),n.__reactInternalMemoizedMergedChildContext=e,Jt(oi),Jt(Nn),Zt(Nn,e)):Jt(oi),Zt(oi,r)}var ds=null,yS=!1,lA=!1;function x9(e){ds===null?ds=[e]:ds.push(e)}function Sle(e){yS=!0,x9(e)}function mu(){if(!lA&&ds!==null){lA=!0;var e=0,t=Dt;try{var r=ds;for(Dt=1;e>=o,i-=o,ps=1<<32-Fa(t)+i|r<P?(I=A,A=null):I=A.sibling;var k=h(x,A,b[P],S);if(k===null){A===null&&(A=I);break}e&&A&&k.alternate===null&&t(x,A),_=a(k,_,P),C===null?T=k:C.sibling=k,C=k,A=I}if(P===b.length)return r(x,A),Qt&&lc(x,P),T;if(A===null){for(;PP?(I=A,A=null):I=A.sibling;var O=h(x,A,k.value,S);if(O===null){A===null&&(A=I);break}e&&A&&O.alternate===null&&t(x,A),_=a(O,_,P),C===null?T=O:C.sibling=O,C=O,A=I}if(k.done)return r(x,A),Qt&&lc(x,P),T;if(A===null){for(;!k.done;P++,k=b.next())k=f(x,k.value,S),k!==null&&(_=a(k,_,P),C===null?T=k:C.sibling=k,C=k);return Qt&&lc(x,P),T}for(A=n(x,A);!k.done;P++,k=b.next())k=d(A,x,P,k.value,S),k!==null&&(e&&k.alternate!==null&&A.delete(k.key===null?P:k.key),_=a(k,_,P),C===null?T=k:C.sibling=k,C=k);return e&&A.forEach(function(D){return t(x,D)}),Qt&&lc(x,P),T}function y(x,_,b,S){if(typeof b=="object"&&b!==null&&b.type===Ih&&b.key===null&&(b=b.props.children),typeof b=="object"&&b!==null){switch(b.$$typeof){case q0:e:{for(var T=b.key,C=_;C!==null;){if(C.key===T){if(T=b.type,T===Ih){if(C.tag===7){r(x,C.sibling),_=i(C,b.props.children),_.return=x,x=_;break e}}else if(C.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===xl&&W5(T)===C.type){r(x,C.sibling),_=i(C,b.props),_.ref=_p(x,C,b),_.return=x,x=_;break e}r(x,C);break}else t(x,C);C=C.sibling}b.type===Ih?(_=zc(b.props.children,x.mode,S,b.key),_.return=x,x=_):(S=rb(b.type,b.key,b.props,null,x.mode,S),S.ref=_p(x,_,b),S.return=x,x=S)}return o(x);case Lh:e:{for(C=b.key;_!==null;){if(_.key===C)if(_.tag===4&&_.stateNode.containerInfo===b.containerInfo&&_.stateNode.implementation===b.implementation){r(x,_.sibling),_=i(_,b.children||[]),_.return=x,x=_;break e}else{r(x,_);break}else t(x,_);_=_.sibling}_=gA(b,x.mode,S),_.return=x,x=_}return o(x);case xl:return C=b._init,y(x,_,C(b._payload),S)}if(dg(b))return v(x,_,b,S);if(pp(b))return m(x,_,b,S);sx(x,b)}return typeof b=="string"&&b!==""||typeof b=="number"?(b=""+b,_!==null&&_.tag===6?(r(x,_.sibling),_=i(_,b),_.return=x,x=_):(r(x,_),_=pA(b,x.mode,S),_.return=x,x=_),o(x)):r(x,_)}return y}var xd=S9(!0),T9=S9(!1),$b=gu(null),Fb=null,zh=null,EO=null;function OO(){EO=zh=Fb=null}function DO(e){var t=$b.current;Jt($b),e._currentValue=t}function rk(e,t,r){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===r)break;e=e.return}}function nd(e,t){Fb=e,EO=zh=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(ii=!0),e.firstContext=null)}function ca(e){var t=e._currentValue;if(EO!==e)if(e={context:e,memoizedValue:t,next:null},zh===null){if(Fb===null)throw Error(_e(308));zh=e,Fb.dependencies={lanes:0,firstContext:e}}else zh=zh.next=e;return t}var Tc=null;function NO(e){Tc===null?Tc=[e]:Tc.push(e)}function C9(e,t,r,n){var i=t.interleaved;return i===null?(r.next=r,NO(t)):(r.next=i.next,i.next=r),t.interleaved=r,js(e,n)}function js(e,t){e.lanes|=t;var r=e.alternate;for(r!==null&&(r.lanes|=t),r=e,e=e.return;e!==null;)e.childLanes|=t,r=e.alternate,r!==null&&(r.childLanes|=t),r=e,e=e.return;return r.tag===3?r.stateNode:null}var _l=!1;function jO(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function A9(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ts(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Gl(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,Tt&2){var i=n.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),n.pending=t,js(e,r)}return i=n.interleaved,i===null?(t.next=t,NO(n)):(t.next=i.next,i.next=t),n.interleaved=t,js(e,r)}function q_(e,t,r){if(t=t.updateQueue,t!==null&&(t=t.shared,(r&4194240)!==0)){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,bO(e,r)}}function H5(e,t){var r=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,r===n)){var i=null,a=null;if(r=r.firstBaseUpdate,r!==null){do{var o={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};a===null?i=a=o:a=a.next=o,r=r.next}while(r!==null);a===null?i=a=t:a=a.next=t}else i=a=t;r={baseState:n.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:n.shared,effects:n.effects},e.updateQueue=r;return}e=r.lastBaseUpdate,e===null?r.firstBaseUpdate=t:e.next=t,r.lastBaseUpdate=t}function Vb(e,t,r,n){var i=e.updateQueue;_l=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var l=s,u=l.next;l.next=null,o===null?a=u:o.next=u,o=l;var c=e.alternate;c!==null&&(c=c.updateQueue,s=c.lastBaseUpdate,s!==o&&(s===null?c.firstBaseUpdate=u:s.next=u,c.lastBaseUpdate=l))}if(a!==null){var f=i.baseState;o=0,c=u=l=null,s=a;do{var h=s.lane,d=s.eventTime;if((n&h)===h){c!==null&&(c=c.next={eventTime:d,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var v=e,m=s;switch(h=t,d=r,m.tag){case 1:if(v=m.payload,typeof v=="function"){f=v.call(d,f,h);break e}f=v;break e;case 3:v.flags=v.flags&-65537|128;case 0:if(v=m.payload,h=typeof v=="function"?v.call(d,f,h):v,h==null)break e;f=ur({},f,h);break e;case 2:_l=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,h=i.effects,h===null?i.effects=[s]:h.push(s))}else d={eventTime:d,lane:h,tag:s.tag,payload:s.payload,callback:s.callback,next:null},c===null?(u=c=d,l=f):c=c.next=d,o|=h;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;h=s,s=h.next,h.next=null,i.lastBaseUpdate=h,i.shared.pending=null}}while(!0);if(c===null&&(l=f),i.baseState=l,i.firstBaseUpdate=u,i.lastBaseUpdate=c,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);ef|=o,e.lanes=o,e.memoizedState=f}}function U5(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var n=cA.transition;cA.transition={};try{e(!1),t()}finally{Dt=r,cA.transition=n}}function G9(){return fa().memoizedState}function Mle(e,t,r){var n=Hl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},W9(e))H9(t,r);else if(r=C9(e,t,r,n),r!==null){var i=Wn();Va(r,e,n,i),U9(r,t,n)}}function Ple(e,t,r){var n=Hl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(W9(e))H9(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,r);if(i.hasEagerState=!0,i.eagerState=s,Za(s,o)){var l=t.interleaved;l===null?(i.next=i,NO(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}r=C9(e,t,i,n),r!==null&&(i=Wn(),Va(r,e,n,i),U9(r,t,n))}}function W9(e){var t=e.alternate;return e===or||t!==null&&t===or}function H9(e,t){Ng=Wb=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function U9(e,t,r){if(r&4194240){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,bO(e,r)}}var Hb={readContext:ca,useCallback:Sn,useContext:Sn,useEffect:Sn,useImperativeHandle:Sn,useInsertionEffect:Sn,useLayoutEffect:Sn,useMemo:Sn,useReducer:Sn,useRef:Sn,useState:Sn,useDebugValue:Sn,useDeferredValue:Sn,useTransition:Sn,useMutableSource:Sn,useSyncExternalStore:Sn,useId:Sn,unstable_isNewReconciler:!1},kle={readContext:ca,useCallback:function(e,t){return mo().memoizedState=[e,t===void 0?null:t],e},useContext:ca,useEffect:Y5,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,J_(4194308,4,B9.bind(null,t,e),r)},useLayoutEffect:function(e,t){return J_(4194308,4,e,t)},useInsertionEffect:function(e,t){return J_(4,2,e,t)},useMemo:function(e,t){var r=mo();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=mo();return t=r!==void 0?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=Mle.bind(null,or,e),[n.memoizedState,e]},useRef:function(e){var t=mo();return e={current:e},t.memoizedState=e},useState:Z5,useDebugValue:WO,useDeferredValue:function(e){return mo().memoizedState=e},useTransition:function(){var e=Z5(!1),t=e[0];return e=Ale.bind(null,e[1]),mo().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=or,i=mo();if(Qt){if(r===void 0)throw Error(_e(407));r=r()}else{if(r=t(),an===null)throw Error(_e(349));Qc&30||L9(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,Y5(E9.bind(null,n,a,e),[e]),n.flags|=2048,Sm(9,I9.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=mo(),t=an.identifierPrefix;if(Qt){var r=gs,n=ps;r=(n&~(1<<32-Fa(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=bm++,0<\/script>",e=e.removeChild(e.firstChild)):typeof n.is=="string"?e=o.createElement(r,{is:n.is}):(e=o.createElement(r),r==="select"&&(o=e,n.multiple?o.multiple=!0:n.size&&(o.size=n.size))):e=o.createElementNS(e,r),e[xo]=t,e[ym]=n,eZ(e,t,!1,!1),t.stateNode=e;e:{switch(o=BP(r,n),r){case"dialog":Xt("cancel",e),Xt("close",e),i=n;break;case"iframe":case"object":case"embed":Xt("load",e),i=n;break;case"video":case"audio":for(i=0;ibd&&(t.flags|=128,n=!0,bp(a,!1),t.lanes=4194304)}else{if(!n)if(e=Gb(o),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),bp(a,!0),a.tail===null&&a.tailMode==="hidden"&&!o.alternate&&!Qt)return Sn(t),null}else 2*wr()-a.renderingStartTime>bd&&r!==1073741824&&(t.flags|=128,n=!0,bp(a,!1),t.lanes=4194304);a.isBackwards?(o.sibling=t.child,t.child=o):(r=a.last,r!==null?r.sibling=o:t.child=o,a.last=o)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=wr(),t.sibling=null,r=ar.current,Zt(ar,n?r&1|2:r&1),t):(Sn(t),null);case 22:case 23:return XE(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?mi&1073741824&&(Sn(t),t.subtreeFlags&6&&(t.flags|=8192)):Sn(t),null;case 24:return null;case 25:return null}throw Error(ye(156,t.tag))}function Nle(e,t){switch(kE(t),t.tag){case 1:return oi(t.type)&&jb(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return xd(),Jt(ai),Jt(Dn),BE(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return RE(t),null;case 13:if(Jt(ar),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(ye(340));md()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Jt(ar),null;case 4:return xd(),null;case 10:return EE(t.type._context),null;case 22:case 23:return XE(),null;case 24:return null;default:return null}}var ux=!1,kn=!1,jle=typeof WeakSet=="function"?WeakSet:Set,je=null;function zh(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){hr(e,t,n)}else r.current=null}function fk(e,t,r){try{r()}catch(n){hr(e,t,n)}}var rB=!1;function Rle(e,t){if(YP=Ob,e=s9(),ME(e)){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{r=(r=e.ownerDocument)&&r.defaultView||window;var n=r.getSelection&&r.getSelection();if(n&&n.rangeCount!==0){r=n.anchorNode;var i=n.anchorOffset,a=n.focusNode;n=n.focusOffset;try{r.nodeType,a.nodeType}catch{r=null;break e}var o=0,s=-1,l=-1,u=0,c=0,f=e,h=null;t:for(;;){for(var d;f!==r||i!==0&&f.nodeType!==3||(s=o+i),f!==a||n!==0&&f.nodeType!==3||(l=o+n),f.nodeType===3&&(o+=f.nodeValue.length),(d=f.firstChild)!==null;)h=f,f=d;for(;;){if(f===e)break t;if(h===r&&++u===i&&(s=o),h===a&&++c===n&&(l=o),(d=f.nextSibling)!==null)break;f=h,h=f.parentNode}f=d}r=s===-1||l===-1?null:{start:s,end:l}}else r=null}r=r||{start:0,end:0}}else r=null;for(XP={focusedElem:e,selectionRange:r},Ob=!1,je=t;je!==null;)if(t=je,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,je=e;else for(;je!==null;){t=je;try{var v=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(v!==null){var g=v.memoizedProps,m=v.memoizedState,x=t.stateNode,_=x.getSnapshotBeforeUpdate(t.elementType===t.type?g:Ia(t.type,g),m);x.__reactInternalSnapshotBeforeUpdate=_}break;case 3:var b=t.stateNode.containerInfo;b.nodeType===1?b.textContent="":b.nodeType===9&&b.documentElement&&b.removeChild(b.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(ye(163))}}catch(S){hr(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,je=e;break}je=t.return}return v=rB,rB=!1,v}function jg(e,t,r){var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var i=n=n.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&fk(t,r,a)}i=i.next}while(i!==n)}}function bS(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function hk(e){var t=e.ref;if(t!==null){var r=e.stateNode;switch(e.tag){case 5:e=r;break;default:e=r}typeof t=="function"?t(e):t.current=e}}function nZ(e){var t=e.alternate;t!==null&&(e.alternate=null,nZ(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[xo],delete t[ym],delete t[JP],delete t[xle],delete t[_le])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function iZ(e){return e.tag===5||e.tag===3||e.tag===4}function nB(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||iZ(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function dk(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.nodeType===8?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(r.nodeType===8?(t=r.parentNode,t.insertBefore(e,r)):(t=r,t.appendChild(e)),r=r._reactRootContainer,r!=null||t.onclick!==null||(t.onclick=Nb));else if(n!==4&&(e=e.child,e!==null))for(dk(e,t,r),e=e.sibling;e!==null;)dk(e,t,r),e=e.sibling}function vk(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(n!==4&&(e=e.child,e!==null))for(vk(e,t,r),e=e.sibling;e!==null;)vk(e,t,r),e=e.sibling}var cn=null,Ea=!1;function al(e,t,r){for(r=r.child;r!==null;)aZ(e,t,r),r=r.sibling}function aZ(e,t,r){if(Io&&typeof Io.onCommitFiberUnmount=="function")try{Io.onCommitFiberUnmount(dS,r)}catch{}switch(r.tag){case 5:kn||zh(r,t);case 6:var n=cn,i=Ea;cn=null,al(e,t,r),cn=n,Ea=i,cn!==null&&(Ea?(e=cn,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):cn.removeChild(r.stateNode));break;case 18:cn!==null&&(Ea?(e=cn,r=r.stateNode,e.nodeType===8?sA(e.parentNode,r):e.nodeType===1&&sA(e,r),dm(e)):sA(cn,r.stateNode));break;case 4:n=cn,i=Ea,cn=r.stateNode.containerInfo,Ea=!0,al(e,t,r),cn=n,Ea=i;break;case 0:case 11:case 14:case 15:if(!kn&&(n=r.updateQueue,n!==null&&(n=n.lastEffect,n!==null))){i=n=n.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&fk(r,t,o),i=i.next}while(i!==n)}al(e,t,r);break;case 1:if(!kn&&(zh(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){hr(r,t,s)}al(e,t,r);break;case 21:al(e,t,r);break;case 22:r.mode&1?(kn=(n=kn)||r.memoizedState!==null,al(e,t,r),kn=n):al(e,t,r);break;default:al(e,t,r)}}function iB(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new jle),t.forEach(function(n){var i=Ule.bind(null,e,n);r.has(n)||(r.add(n),n.then(i,i))})}}function Ta(e,t){var r=t.deletions;if(r!==null)for(var n=0;ni&&(i=o),n&=~a}if(n=i,n=wr()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*zle(n/1960))-n,10e?16:e,Pl===null)var n=!1;else{if(e=Pl,Pl=null,Yb=0,St&6)throw Error(ye(331));var i=St;for(St|=4,je=e.current;je!==null;){var a=je,o=a.child;if(je.flags&16){var s=a.deletions;if(s!==null){for(var l=0;lwr()-ZE?Bc(e,0):UE|=r),si(e,t)}function dZ(e,t){t===0&&(e.mode&1?(t=ex,ex<<=1,!(ex&130023424)&&(ex=4194304)):t=1);var r=Gn();e=js(e,t),e!==null&&(Uy(e,t,r),si(e,r))}function Hle(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),dZ(e,r)}function Ule(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,i=e.memoizedState;i!==null&&(r=i.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(ye(314))}n!==null&&n.delete(t),dZ(e,r)}var vZ;vZ=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||ai.current)ni=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return ni=!1,Ele(e,t,r);ni=!!(e.flags&131072)}else ni=!1,Qt&&t.flags&1048576&&y9(t,zb,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;Q_(e,t),e=t.pendingProps;var i=gd(t,Dn.current);rd(t,r),i=$E(null,t,n,e,i,r);var a=FE();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,oi(n)?(a=!0,Rb(t)):a=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,NE(t),i.updater=_S,t.stateNode=i,i._reactInternals=t,ik(t,n,e,r),t=sk(null,t,n,!0,a,r)):(t.tag=0,Qt&&a&&PE(t),Bn(null,t,i,r),t=t.child),t;case 16:n=t.elementType;e:{switch(Q_(e,t),e=t.pendingProps,i=n._init,n=i(n._payload),t.type=n,i=t.tag=Yle(n),e=Ia(n,e),i){case 0:t=ok(null,t,n,e,r);break e;case 1:t=Q3(null,t,n,e,r);break e;case 11:t=K3(null,t,n,e,r);break e;case 14:t=J3(null,t,n,Ia(n.type,e),r);break e}throw Error(ye(306,n,""))}return t;case 0:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),ok(e,t,n,i,r);case 1:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),Q3(e,t,n,i,r);case 3:e:{if(K9(t),e===null)throw Error(ye(387));n=t.pendingProps,a=t.memoizedState,i=a.element,T9(e,t),Vb(t,n,null,r);var o=t.memoizedState;if(n=o.element,a.isDehydrated)if(a={element:n,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){i=_d(Error(ye(423)),t),t=eB(e,t,n,r,i);break e}else if(n!==i){i=_d(Error(ye(424)),t),t=eB(e,t,n,r,i);break e}else for(Ti=Vl(t.stateNode.containerInfo.firstChild),ki=t,Qt=!0,ja=null,r=w9(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(md(),n===i){t=Rs(e,t,r);break e}Bn(e,t,n,r)}t=t.child}return t;case 5:return C9(t),e===null&&tk(t),n=t.type,i=t.pendingProps,a=e!==null?e.memoizedProps:null,o=i.children,qP(n,i)?o=null:a!==null&&qP(n,a)&&(t.flags|=32),q9(e,t),Bn(e,t,o,r),t.child;case 6:return e===null&&tk(t),null;case 13:return J9(e,t,r);case 4:return jE(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=yd(t,null,n,r):Bn(e,t,n,r),t.child;case 11:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),K3(e,t,n,i,r);case 7:return Bn(e,t,t.pendingProps,r),t.child;case 8:return Bn(e,t,t.pendingProps.children,r),t.child;case 12:return Bn(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(n=t.type._context,i=t.pendingProps,a=t.memoizedProps,o=i.value,Zt($b,n._currentValue),n._currentValue=o,a!==null)if(Za(a.value,o)){if(a.children===i.children&&!ai.current){t=Rs(e,t,r);break e}}else for(a=t.child,a!==null&&(a.return=t);a!==null;){var s=a.dependencies;if(s!==null){o=a.child;for(var l=s.firstContext;l!==null;){if(l.context===n){if(a.tag===1){l=Ts(-1,r&-r),l.tag=2;var u=a.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?l.next=l:(l.next=c.next,c.next=l),u.pending=l}}a.lanes|=r,l=a.alternate,l!==null&&(l.lanes|=r),rk(a.return,r,t),s.lanes|=r;break}l=l.next}}else if(a.tag===10)o=a.type===t.type?null:a.child;else if(a.tag===18){if(o=a.return,o===null)throw Error(ye(341));o.lanes|=r,s=o.alternate,s!==null&&(s.lanes|=r),rk(o,r,t),o=a.sibling}else o=a.child;if(o!==null)o.return=a;else for(o=a;o!==null;){if(o===t){o=null;break}if(a=o.sibling,a!==null){a.return=o.return,o=a;break}o=o.return}a=o}Bn(e,t,i.children,r),t=t.child}return t;case 9:return i=t.type,n=t.pendingProps.children,rd(t,r),i=ca(i),n=n(i),t.flags|=1,Bn(e,t,n,r),t.child;case 14:return n=t.type,i=Ia(n,t.pendingProps),i=Ia(n.type,i),J3(e,t,n,i,r);case 15:return Y9(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),Q_(e,t),t.tag=1,oi(n)?(e=!0,Rb(t)):e=!1,rd(t,r),H9(t,n,i),ik(t,n,i,r),sk(null,t,n,!0,e,r);case 19:return Q9(e,t,r);case 22:return X9(e,t,r)}throw Error(ye(156,t.tag))};function pZ(e,t){return V7(e,t)}function Zle(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ra(e,t,r,n){return new Zle(e,t,r,n)}function KE(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Yle(e){if(typeof e=="function")return KE(e)?1:0;if(e!=null){if(e=e.$$typeof,e===gE)return 11;if(e===mE)return 14}return 2}function Ul(e,t){var r=e.alternate;return r===null?(r=ra(e.tag,t,e.key,e.mode),r.elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=e.flags&14680064,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function rb(e,t,r,n,i,a){var o=2;if(n=e,typeof e=="function")KE(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Lh:return zc(r.children,i,a,t);case pE:o=8,i|=8;break;case PP:return e=ra(12,r,t,i|2),e.elementType=PP,e.lanes=a,e;case kP:return e=ra(13,r,t,i),e.elementType=kP,e.lanes=a,e;case LP:return e=ra(19,r,t,i),e.elementType=LP,e.lanes=a,e;case C7:return SS(r,i,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case S7:o=10;break e;case T7:o=9;break e;case gE:o=11;break e;case mE:o=14;break e;case xl:o=16,n=null;break e}throw Error(ye(130,e==null?e:typeof e,""))}return t=ra(o,r,t,i),t.elementType=e,t.type=n,t.lanes=a,t}function zc(e,t,r,n){return e=ra(7,e,n,t),e.lanes=r,e}function SS(e,t,r,n){return e=ra(22,e,n,t),e.elementType=C7,e.lanes=r,e.stateNode={isHidden:!1},e}function pA(e,t,r){return e=ra(6,e,null,t),e.lanes=r,e}function gA(e,t,r){return t=ra(4,e.children!==null?e.children:[],e.key,t),t.lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Xle(e,t,r,n,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=qC(0),this.expirationTimes=qC(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=qC(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function JE(e,t,r,n,i,a,o,s,l){return e=new Xle(e,t,r,s,l),t===1?(t=1,a===!0&&(t|=8)):t=0,a=ra(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},NE(a),e}function qle(e,t,r){var n=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(xZ)}catch(e){console.error(e)}}xZ(),x7.exports=Oi;var _Z=x7.exports,hB=_Z;AP.createRoot=hB.createRoot,AP.hydrateRoot=hB.hydrateRoot;/** +`+a.stack}return{value:e,source:t,stack:i,digest:null}}function dA(e,t,r){return{value:e,source:null,stack:r??null,digest:t??null}}function ak(e,t){try{console.error(t.value)}catch(r){setTimeout(function(){throw r})}}var Ele=typeof WeakMap=="function"?WeakMap:Map;function Y9(e,t,r){r=Ts(-1,r),r.tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){Zb||(Zb=!0,pk=n),ak(e,t)},r}function X9(e,t,r){r=Ts(-1,r),r.tag=3;var n=e.type.getDerivedStateFromError;if(typeof n=="function"){var i=t.value;r.payload=function(){return n(i)},r.callback=function(){ak(e,t)}}var a=e.stateNode;return a!==null&&typeof a.componentDidCatch=="function"&&(r.callback=function(){ak(e,t),typeof n!="function"&&(Wl===null?Wl=new Set([this]):Wl.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),r}function K5(e,t,r){var n=e.pingCache;if(n===null){n=e.pingCache=new Ele;var i=new Set;n.set(t,i)}else i=n.get(t),i===void 0&&(i=new Set,n.set(t,i));i.has(r)||(i.add(r),e=Ule.bind(null,e,t,r),t.then(e,e))}function J5(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Q5(e,t,r,n,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,r.tag===1&&(r.alternate===null?r.tag=17:(t=Ts(-1,1),t.tag=2,Gl(r,t,1))),r.lanes|=1),e)}var Ole=qs.ReactCurrentOwner,ii=!1;function zn(e,t,r,n){t.child=e===null?T9(t,null,r,n):xd(t,e.child,r,n)}function eB(e,t,r,n,i){r=r.render;var a=t.ref;return nd(t,i),n=FO(e,t,r,n,a,i),r=VO(),e!==null&&!ii?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Rs(e,t,i)):(Qt&&r&&kO(t),t.flags|=1,zn(e,t,n,i),t.child)}function tB(e,t,r,n,i){if(e===null){var a=r.type;return typeof a=="function"&&!JO(a)&&a.defaultProps===void 0&&r.compare===null&&r.defaultProps===void 0?(t.tag=15,t.type=a,q9(e,t,a,n,i)):(e=rb(r.type,null,n,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!(e.lanes&i)){var o=a.memoizedProps;if(r=r.compare,r=r!==null?r:pm,r(o,n)&&e.ref===t.ref)return Rs(e,t,i)}return t.flags|=1,e=Ul(a,n),e.ref=t.ref,e.return=t,t.child=e}function q9(e,t,r,n,i){if(e!==null){var a=e.memoizedProps;if(pm(a,n)&&e.ref===t.ref)if(ii=!1,t.pendingProps=n=a,(e.lanes&i)!==0)e.flags&131072&&(ii=!0);else return t.lanes=e.lanes,Rs(e,t,i)}return ok(e,t,r,n,i)}function K9(e,t,r){var n=t.pendingProps,i=n.children,a=e!==null?e.memoizedState:null;if(n.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Zt(Fh,mi),mi|=r;else{if(!(r&1073741824))return e=a!==null?a.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Zt(Fh,mi),mi|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=a!==null?a.baseLanes:r,Zt(Fh,mi),mi|=n}else a!==null?(n=a.baseLanes|r,t.memoizedState=null):n=r,Zt(Fh,mi),mi|=n;return zn(e,t,i,r),t.child}function J9(e,t){var r=t.ref;(e===null&&r!==null||e!==null&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function ok(e,t,r,n,i){var a=si(r)?Kc:Nn.current;return a=md(t,a),nd(t,i),r=FO(e,t,r,n,a,i),n=VO(),e!==null&&!ii?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Rs(e,t,i)):(Qt&&n&&kO(t),t.flags|=1,zn(e,t,r,i),t.child)}function rB(e,t,r,n,i){if(si(r)){var a=!0;Rb(t)}else a=!1;if(nd(t,i),t.stateNode===null)Q_(e,t),Z9(t,r,n),ik(t,r,n,i),n=!0;else if(e===null){var o=t.stateNode,s=t.memoizedProps;o.props=s;var l=o.context,u=r.contextType;typeof u=="object"&&u!==null?u=ca(u):(u=si(r)?Kc:Nn.current,u=md(t,u));var c=r.getDerivedStateFromProps,f=typeof c=="function"||typeof o.getSnapshotBeforeUpdate=="function";f||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(s!==n||l!==u)&&q5(t,o,n,u),_l=!1;var h=t.memoizedState;o.state=h,Vb(t,n,o,i),l=t.memoizedState,s!==n||h!==l||oi.current||_l?(typeof c=="function"&&(nk(t,r,c,n),l=t.memoizedState),(s=_l||X5(t,r,s,n,h,l,u))?(f||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=l),o.props=n,o.state=l,o.context=u,n=s):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{o=t.stateNode,A9(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:Ia(t.type,s),o.props=u,f=t.pendingProps,h=o.context,l=r.contextType,typeof l=="object"&&l!==null?l=ca(l):(l=si(r)?Kc:Nn.current,l=md(t,l));var d=r.getDerivedStateFromProps;(c=typeof d=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(s!==f||h!==l)&&q5(t,o,n,l),_l=!1,h=t.memoizedState,o.state=h,Vb(t,n,o,i);var v=t.memoizedState;s!==f||h!==v||oi.current||_l?(typeof d=="function"&&(nk(t,r,d,n),v=t.memoizedState),(u=_l||X5(t,r,u,n,h,v,l)||!1)?(c||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(n,v,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(n,v,l)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=v),o.props=n,o.state=v,o.context=l,n=u):(typeof o.componentDidUpdate!="function"||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),n=!1)}return sk(e,t,r,n,a,i)}function sk(e,t,r,n,i,a){J9(e,t);var o=(t.flags&128)!==0;if(!n&&!o)return i&&F5(t,r,!1),Rs(e,t,a);n=t.stateNode,Ole.current=t;var s=o&&typeof r.getDerivedStateFromError!="function"?null:n.render();return t.flags|=1,e!==null&&o?(t.child=xd(t,e.child,null,a),t.child=xd(t,null,s,a)):zn(e,t,s,a),t.memoizedState=n.state,i&&F5(t,r,!0),t.child}function Q9(e){var t=e.stateNode;t.pendingContext?$5(e,t.pendingContext,t.pendingContext!==t.context):t.context&&$5(e,t.context,!1),RO(e,t.containerInfo)}function nB(e,t,r,n,i){return yd(),IO(i),t.flags|=256,zn(e,t,r,n),t.child}var lk={dehydrated:null,treeContext:null,retryLane:0};function uk(e){return{baseLanes:e,cachePool:null,transitions:null}}function eZ(e,t,r){var n=t.pendingProps,i=ar.current,a=!1,o=(t.flags&128)!==0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:(i&2)!==0),s?(a=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),Zt(ar,i&1),e===null)return tk(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=n.children,e=n.fallback,a?(n=t.mode,a=t.child,o={mode:"hidden",children:o},!(n&1)&&a!==null?(a.childLanes=0,a.pendingProps=o):a=SS(o,n,0,null),e=zc(e,n,r,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=uk(r),t.memoizedState=lk,e):HO(t,o));if(i=e.memoizedState,i!==null&&(s=i.dehydrated,s!==null))return Dle(e,t,o,n,s,i,r);if(a){a=n.fallback,o=t.mode,i=e.child,s=i.sibling;var l={mode:"hidden",children:n.children};return!(o&1)&&t.child!==i?(n=t.child,n.childLanes=0,n.pendingProps=l,t.deletions=null):(n=Ul(i,l),n.subtreeFlags=i.subtreeFlags&14680064),s!==null?a=Ul(s,a):(a=zc(a,o,r,null),a.flags|=2),a.return=t,n.return=t,n.sibling=a,t.child=n,n=a,a=t.child,o=e.child.memoizedState,o=o===null?uk(r):{baseLanes:o.baseLanes|r,cachePool:null,transitions:o.transitions},a.memoizedState=o,a.childLanes=e.childLanes&~r,t.memoizedState=lk,n}return a=e.child,e=a.sibling,n=Ul(a,{mode:"visible",children:n.children}),!(t.mode&1)&&(n.lanes=r),n.return=t,n.sibling=null,e!==null&&(r=t.deletions,r===null?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=n,t.memoizedState=null,n}function HO(e,t){return t=SS({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function lx(e,t,r,n){return n!==null&&IO(n),xd(t,e.child,null,r),e=HO(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Dle(e,t,r,n,i,a,o){if(r)return t.flags&256?(t.flags&=-257,n=dA(Error(_e(422))),lx(e,t,o,n)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(a=n.fallback,i=t.mode,n=SS({mode:"visible",children:n.children},i,0,null),a=zc(a,i,o,null),a.flags|=2,n.return=t,a.return=t,n.sibling=a,t.child=n,t.mode&1&&xd(t,e.child,null,o),t.child.memoizedState=uk(o),t.memoizedState=lk,a);if(!(t.mode&1))return lx(e,t,o,null);if(i.data==="$!"){if(n=i.nextSibling&&i.nextSibling.dataset,n)var s=n.dgst;return n=s,a=Error(_e(419)),n=dA(a,n,void 0),lx(e,t,o,n)}if(s=(o&e.childLanes)!==0,ii||s){if(n=an,n!==null){switch(o&-o){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}i=i&(n.suspendedLanes|o)?0:i,i!==0&&i!==a.retryLane&&(a.retryLane=i,js(e,i),Va(n,e,i,-1))}return KO(),n=dA(Error(_e(421))),lx(e,t,o,n)}return i.data==="$?"?(t.flags|=128,t.child=e.child,t=Zle.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,Ti=Vl(i.nextSibling),ki=t,Qt=!0,ja=null,e!==null&&(Ki[Ji++]=ps,Ki[Ji++]=gs,Ki[Ji++]=Jc,ps=e.id,gs=e.overflow,Jc=t),t=HO(t,n.children),t.flags|=4096,t)}function iB(e,t,r){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),rk(e.return,t,r)}function vA(e,t,r,n,i){var a=e.memoizedState;a===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:i}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=n,a.tail=r,a.tailMode=i)}function tZ(e,t,r){var n=t.pendingProps,i=n.revealOrder,a=n.tail;if(zn(e,t,n.children,r),n=ar.current,n&2)n=n&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&iB(e,r,t);else if(e.tag===19)iB(e,r,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(Zt(ar,n),!(t.mode&1))t.memoizedState=null;else switch(i){case"forwards":for(r=t.child,i=null;r!==null;)e=r.alternate,e!==null&&Gb(e)===null&&(i=r),r=r.sibling;r=i,r===null?(i=t.child,t.child=null):(i=r.sibling,r.sibling=null),vA(t,!1,i,r,a);break;case"backwards":for(r=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Gb(e)===null){t.child=i;break}e=i.sibling,i.sibling=r,r=i,i=e}vA(t,!0,r,null,a);break;case"together":vA(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Q_(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Rs(e,t,r){if(e!==null&&(t.dependencies=e.dependencies),ef|=t.lanes,!(r&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(_e(153));if(t.child!==null){for(e=t.child,r=Ul(e,e.pendingProps),t.child=r,r.return=t;e.sibling!==null;)e=e.sibling,r=r.sibling=Ul(e,e.pendingProps),r.return=t;r.sibling=null}return t.child}function Nle(e,t,r){switch(t.tag){case 3:Q9(t),yd();break;case 5:M9(t);break;case 1:si(t.type)&&Rb(t);break;case 4:RO(t,t.stateNode.containerInfo);break;case 10:var n=t.type._context,i=t.memoizedProps.value;Zt($b,n._currentValue),n._currentValue=i;break;case 13:if(n=t.memoizedState,n!==null)return n.dehydrated!==null?(Zt(ar,ar.current&1),t.flags|=128,null):r&t.child.childLanes?eZ(e,t,r):(Zt(ar,ar.current&1),e=Rs(e,t,r),e!==null?e.sibling:null);Zt(ar,ar.current&1);break;case 19:if(n=(r&t.childLanes)!==0,e.flags&128){if(n)return tZ(e,t,r);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Zt(ar,ar.current),n)break;return null;case 22:case 23:return t.lanes=0,K9(e,t,r)}return Rs(e,t,r)}var rZ,ck,nZ,iZ;rZ=function(e,t){for(var r=t.child;r!==null;){if(r.tag===5||r.tag===6)e.appendChild(r.stateNode);else if(r.tag!==4&&r.child!==null){r.child.return=r,r=r.child;continue}if(r===t)break;for(;r.sibling===null;){if(r.return===null||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}};ck=function(){};nZ=function(e,t,r,n){var i=e.memoizedProps;if(i!==n){e=t.stateNode,Cc(Eo.current);var a=null;switch(r){case"input":i=EP(e,i),n=EP(e,n),a=[];break;case"select":i=ur({},i,{value:void 0}),n=ur({},n,{value:void 0}),a=[];break;case"textarea":i=NP(e,i),n=NP(e,n),a=[];break;default:typeof i.onClick!="function"&&typeof n.onClick=="function"&&(e.onclick=Nb)}RP(r,n);var o;r=null;for(u in i)if(!n.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u==="style"){var s=i[u];for(o in s)s.hasOwnProperty(o)&&(r||(r={}),r[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(lm.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in n){var l=n[u];if(s=i!=null?i[u]:void 0,n.hasOwnProperty(u)&&l!==s&&(l!=null||s!=null))if(u==="style")if(s){for(o in s)!s.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(r||(r={}),r[o]="");for(o in l)l.hasOwnProperty(o)&&s[o]!==l[o]&&(r||(r={}),r[o]=l[o])}else r||(a||(a=[]),a.push(u,r)),r=l;else u==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,s=s?s.__html:void 0,l!=null&&s!==l&&(a=a||[]).push(u,l)):u==="children"?typeof l!="string"&&typeof l!="number"||(a=a||[]).push(u,""+l):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(lm.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&Xt("scroll",e),a||s===l||(a=[])):(a=a||[]).push(u,l))}r&&(a=a||[]).push("style",r);var u=a;(t.updateQueue=u)&&(t.flags|=4)}};iZ=function(e,t,r,n){r!==n&&(t.flags|=4)};function bp(e,t){if(!Qt)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;t!==null;)t.alternate!==null&&(r=t),t=t.sibling;r===null?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;r!==null;)r.alternate!==null&&(n=r),r=r.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Tn(e){var t=e.alternate!==null&&e.alternate.child===e.child,r=0,n=0;if(t)for(var i=e.child;i!==null;)r|=i.lanes|i.childLanes,n|=i.subtreeFlags&14680064,n|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)r|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function jle(e,t,r){var n=t.pendingProps;switch(LO(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Tn(t),null;case 1:return si(t.type)&&jb(),Tn(t),null;case 3:return n=t.stateNode,_d(),Jt(oi),Jt(Nn),zO(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(ox(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ja!==null&&(yk(ja),ja=null))),ck(e,t),Tn(t),null;case 5:BO(t);var i=Cc(_m.current);if(r=t.type,e!==null&&t.stateNode!=null)nZ(e,t,r,n,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(t.stateNode===null)throw Error(_e(166));return Tn(t),null}if(e=Cc(Eo.current),ox(t)){n=t.stateNode,r=t.type;var a=t.memoizedProps;switch(n[xo]=t,n[ym]=a,e=(t.mode&1)!==0,r){case"dialog":Xt("cancel",n),Xt("close",n);break;case"iframe":case"object":case"embed":Xt("load",n);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):typeof n.is=="string"?e=o.createElement(r,{is:n.is}):(e=o.createElement(r),r==="select"&&(o=e,n.multiple?o.multiple=!0:n.size&&(o.size=n.size))):e=o.createElementNS(e,r),e[xo]=t,e[ym]=n,rZ(e,t,!1,!1),t.stateNode=e;e:{switch(o=BP(r,n),r){case"dialog":Xt("cancel",e),Xt("close",e),i=n;break;case"iframe":case"object":case"embed":Xt("load",e),i=n;break;case"video":case"audio":for(i=0;iwd&&(t.flags|=128,n=!0,bp(a,!1),t.lanes=4194304)}else{if(!n)if(e=Gb(o),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),bp(a,!0),a.tail===null&&a.tailMode==="hidden"&&!o.alternate&&!Qt)return Tn(t),null}else 2*Sr()-a.renderingStartTime>wd&&r!==1073741824&&(t.flags|=128,n=!0,bp(a,!1),t.lanes=4194304);a.isBackwards?(o.sibling=t.child,t.child=o):(r=a.last,r!==null?r.sibling=o:t.child=o,a.last=o)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Sr(),t.sibling=null,r=ar.current,Zt(ar,n?r&1|2:r&1),t):(Tn(t),null);case 22:case 23:return qO(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?mi&1073741824&&(Tn(t),t.subtreeFlags&6&&(t.flags|=8192)):Tn(t),null;case 24:return null;case 25:return null}throw Error(_e(156,t.tag))}function Rle(e,t){switch(LO(t),t.tag){case 1:return si(t.type)&&jb(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return _d(),Jt(oi),Jt(Nn),zO(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return BO(t),null;case 13:if(Jt(ar),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(_e(340));yd()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Jt(ar),null;case 4:return _d(),null;case 10:return DO(t.type._context),null;case 22:case 23:return qO(),null;case 24:return null;default:return null}}var ux=!1,Ln=!1,Ble=typeof WeakSet=="function"?WeakSet:Set,Re=null;function $h(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){hr(e,t,n)}else r.current=null}function fk(e,t,r){try{r()}catch(n){hr(e,t,n)}}var aB=!1;function zle(e,t){if(YP=Eb,e=u9(),PO(e)){if("selectionStart"in e)var r={start:e.selectionStart,end:e.selectionEnd};else e:{r=(r=e.ownerDocument)&&r.defaultView||window;var n=r.getSelection&&r.getSelection();if(n&&n.rangeCount!==0){r=n.anchorNode;var i=n.anchorOffset,a=n.focusNode;n=n.focusOffset;try{r.nodeType,a.nodeType}catch{r=null;break e}var o=0,s=-1,l=-1,u=0,c=0,f=e,h=null;t:for(;;){for(var d;f!==r||i!==0&&f.nodeType!==3||(s=o+i),f!==a||n!==0&&f.nodeType!==3||(l=o+n),f.nodeType===3&&(o+=f.nodeValue.length),(d=f.firstChild)!==null;)h=f,f=d;for(;;){if(f===e)break t;if(h===r&&++u===i&&(s=o),h===a&&++c===n&&(l=o),(d=f.nextSibling)!==null)break;f=h,h=f.parentNode}f=d}r=s===-1||l===-1?null:{start:s,end:l}}else r=null}r=r||{start:0,end:0}}else r=null;for(XP={focusedElem:e,selectionRange:r},Eb=!1,Re=t;Re!==null;)if(t=Re,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Re=e;else for(;Re!==null;){t=Re;try{var v=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(v!==null){var m=v.memoizedProps,y=v.memoizedState,x=t.stateNode,_=x.getSnapshotBeforeUpdate(t.elementType===t.type?m:Ia(t.type,m),y);x.__reactInternalSnapshotBeforeUpdate=_}break;case 3:var b=t.stateNode.containerInfo;b.nodeType===1?b.textContent="":b.nodeType===9&&b.documentElement&&b.removeChild(b.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(_e(163))}}catch(S){hr(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,Re=e;break}Re=t.return}return v=aB,aB=!1,v}function jg(e,t,r){var n=t.updateQueue;if(n=n!==null?n.lastEffect:null,n!==null){var i=n=n.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&fk(t,r,a)}i=i.next}while(i!==n)}}function bS(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function hk(e){var t=e.ref;if(t!==null){var r=e.stateNode;switch(e.tag){case 5:e=r;break;default:e=r}typeof t=="function"?t(e):t.current=e}}function aZ(e){var t=e.alternate;t!==null&&(e.alternate=null,aZ(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[xo],delete t[ym],delete t[JP],delete t[ble],delete t[wle])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function oZ(e){return e.tag===5||e.tag===3||e.tag===4}function oB(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||oZ(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function dk(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.nodeType===8?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(r.nodeType===8?(t=r.parentNode,t.insertBefore(e,r)):(t=r,t.appendChild(e)),r=r._reactRootContainer,r!=null||t.onclick!==null||(t.onclick=Nb));else if(n!==4&&(e=e.child,e!==null))for(dk(e,t,r),e=e.sibling;e!==null;)dk(e,t,r),e=e.sibling}function vk(e,t,r){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(n!==4&&(e=e.child,e!==null))for(vk(e,t,r),e=e.sibling;e!==null;)vk(e,t,r),e=e.sibling}var fn=null,Oa=!1;function al(e,t,r){for(r=r.child;r!==null;)sZ(e,t,r),r=r.sibling}function sZ(e,t,r){if(Io&&typeof Io.onCommitFiberUnmount=="function")try{Io.onCommitFiberUnmount(dS,r)}catch{}switch(r.tag){case 5:Ln||$h(r,t);case 6:var n=fn,i=Oa;fn=null,al(e,t,r),fn=n,Oa=i,fn!==null&&(Oa?(e=fn,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):fn.removeChild(r.stateNode));break;case 18:fn!==null&&(Oa?(e=fn,r=r.stateNode,e.nodeType===8?sA(e.parentNode,r):e.nodeType===1&&sA(e,r),dm(e)):sA(fn,r.stateNode));break;case 4:n=fn,i=Oa,fn=r.stateNode.containerInfo,Oa=!0,al(e,t,r),fn=n,Oa=i;break;case 0:case 11:case 14:case 15:if(!Ln&&(n=r.updateQueue,n!==null&&(n=n.lastEffect,n!==null))){i=n=n.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&fk(r,t,o),i=i.next}while(i!==n)}al(e,t,r);break;case 1:if(!Ln&&($h(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){hr(r,t,s)}al(e,t,r);break;case 21:al(e,t,r);break;case 22:r.mode&1?(Ln=(n=Ln)||r.memoizedState!==null,al(e,t,r),Ln=n):al(e,t,r);break;default:al(e,t,r)}}function sB(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new Ble),t.forEach(function(n){var i=Yle.bind(null,e,n);r.has(n)||(r.add(n),n.then(i,i))})}}function Ta(e,t){var r=t.deletions;if(r!==null)for(var n=0;ni&&(i=o),n&=~a}if(n=i,n=Sr()-n,n=(120>n?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Fle(n/1960))-n,10e?16:e,Pl===null)var n=!1;else{if(e=Pl,Pl=null,Yb=0,Tt&6)throw Error(_e(331));var i=Tt;for(Tt|=4,Re=e.current;Re!==null;){var a=Re,o=a.child;if(Re.flags&16){var s=a.deletions;if(s!==null){for(var l=0;lSr()-YO?Bc(e,0):ZO|=r),li(e,t)}function pZ(e,t){t===0&&(e.mode&1?(t=ex,ex<<=1,!(ex&130023424)&&(ex=4194304)):t=1);var r=Wn();e=js(e,t),e!==null&&(Uy(e,t,r),li(e,r))}function Zle(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),pZ(e,r)}function Yle(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,i=e.memoizedState;i!==null&&(r=i.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(_e(314))}n!==null&&n.delete(t),pZ(e,r)}var gZ;gZ=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||oi.current)ii=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return ii=!1,Nle(e,t,r);ii=!!(e.flags&131072)}else ii=!1,Qt&&t.flags&1048576&&_9(t,zb,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;Q_(e,t),e=t.pendingProps;var i=md(t,Nn.current);nd(t,r),i=FO(null,t,n,e,i,r);var a=VO();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,si(n)?(a=!0,Rb(t)):a=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,jO(t),i.updater=_S,t.stateNode=i,i._reactInternals=t,ik(t,n,e,r),t=sk(null,t,n,!0,a,r)):(t.tag=0,Qt&&a&&kO(t),zn(null,t,i,r),t=t.child),t;case 16:n=t.elementType;e:{switch(Q_(e,t),e=t.pendingProps,i=n._init,n=i(n._payload),t.type=n,i=t.tag=qle(n),e=Ia(n,e),i){case 0:t=ok(null,t,n,e,r);break e;case 1:t=rB(null,t,n,e,r);break e;case 11:t=eB(null,t,n,e,r);break e;case 14:t=tB(null,t,n,Ia(n.type,e),r);break e}throw Error(_e(306,n,""))}return t;case 0:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),ok(e,t,n,i,r);case 1:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),rB(e,t,n,i,r);case 3:e:{if(Q9(t),e===null)throw Error(_e(387));n=t.pendingProps,a=t.memoizedState,i=a.element,A9(e,t),Vb(t,n,null,r);var o=t.memoizedState;if(n=o.element,a.isDehydrated)if(a={element:n,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){i=bd(Error(_e(423)),t),t=nB(e,t,n,r,i);break e}else if(n!==i){i=bd(Error(_e(424)),t),t=nB(e,t,n,r,i);break e}else for(Ti=Vl(t.stateNode.containerInfo.firstChild),ki=t,Qt=!0,ja=null,r=T9(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(yd(),n===i){t=Rs(e,t,r);break e}zn(e,t,n,r)}t=t.child}return t;case 5:return M9(t),e===null&&tk(t),n=t.type,i=t.pendingProps,a=e!==null?e.memoizedProps:null,o=i.children,qP(n,i)?o=null:a!==null&&qP(n,a)&&(t.flags|=32),J9(e,t),zn(e,t,o,r),t.child;case 6:return e===null&&tk(t),null;case 13:return eZ(e,t,r);case 4:return RO(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=xd(t,null,n,r):zn(e,t,n,r),t.child;case 11:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),eB(e,t,n,i,r);case 7:return zn(e,t,t.pendingProps,r),t.child;case 8:return zn(e,t,t.pendingProps.children,r),t.child;case 12:return zn(e,t,t.pendingProps.children,r),t.child;case 10:e:{if(n=t.type._context,i=t.pendingProps,a=t.memoizedProps,o=i.value,Zt($b,n._currentValue),n._currentValue=o,a!==null)if(Za(a.value,o)){if(a.children===i.children&&!oi.current){t=Rs(e,t,r);break e}}else for(a=t.child,a!==null&&(a.return=t);a!==null;){var s=a.dependencies;if(s!==null){o=a.child;for(var l=s.firstContext;l!==null;){if(l.context===n){if(a.tag===1){l=Ts(-1,r&-r),l.tag=2;var u=a.updateQueue;if(u!==null){u=u.shared;var c=u.pending;c===null?l.next=l:(l.next=c.next,c.next=l),u.pending=l}}a.lanes|=r,l=a.alternate,l!==null&&(l.lanes|=r),rk(a.return,r,t),s.lanes|=r;break}l=l.next}}else if(a.tag===10)o=a.type===t.type?null:a.child;else if(a.tag===18){if(o=a.return,o===null)throw Error(_e(341));o.lanes|=r,s=o.alternate,s!==null&&(s.lanes|=r),rk(o,r,t),o=a.sibling}else o=a.child;if(o!==null)o.return=a;else for(o=a;o!==null;){if(o===t){o=null;break}if(a=o.sibling,a!==null){a.return=o.return,o=a;break}o=o.return}a=o}zn(e,t,i.children,r),t=t.child}return t;case 9:return i=t.type,n=t.pendingProps.children,nd(t,r),i=ca(i),n=n(i),t.flags|=1,zn(e,t,n,r),t.child;case 14:return n=t.type,i=Ia(n,t.pendingProps),i=Ia(n.type,i),tB(e,t,n,i,r);case 15:return q9(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:Ia(n,i),Q_(e,t),t.tag=1,si(n)?(e=!0,Rb(t)):e=!1,nd(t,r),Z9(t,n,i),ik(t,n,i,r),sk(null,t,n,!0,e,r);case 19:return tZ(e,t,r);case 22:return K9(e,t,r)}throw Error(_e(156,t.tag))};function mZ(e,t){return W7(e,t)}function Xle(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ra(e,t,r,n){return new Xle(e,t,r,n)}function JO(e){return e=e.prototype,!(!e||!e.isReactComponent)}function qle(e){if(typeof e=="function")return JO(e)?1:0;if(e!=null){if(e=e.$$typeof,e===mO)return 11;if(e===yO)return 14}return 2}function Ul(e,t){var r=e.alternate;return r===null?(r=ra(e.tag,t,e.key,e.mode),r.elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=e.flags&14680064,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function rb(e,t,r,n,i,a){var o=2;if(n=e,typeof e=="function")JO(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Ih:return zc(r.children,i,a,t);case gO:o=8,i|=8;break;case PP:return e=ra(12,r,t,i|2),e.elementType=PP,e.lanes=a,e;case kP:return e=ra(13,r,t,i),e.elementType=kP,e.lanes=a,e;case LP:return e=ra(19,r,t,i),e.elementType=LP,e.lanes=a,e;case M7:return SS(r,i,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case C7:o=10;break e;case A7:o=9;break e;case mO:o=11;break e;case yO:o=14;break e;case xl:o=16,n=null;break e}throw Error(_e(130,e==null?e:typeof e,""))}return t=ra(o,r,t,i),t.elementType=e,t.type=n,t.lanes=a,t}function zc(e,t,r,n){return e=ra(7,e,n,t),e.lanes=r,e}function SS(e,t,r,n){return e=ra(22,e,n,t),e.elementType=M7,e.lanes=r,e.stateNode={isHidden:!1},e}function pA(e,t,r){return e=ra(6,e,null,t),e.lanes=r,e}function gA(e,t,r){return t=ra(4,e.children!==null?e.children:[],e.key,t),t.lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Kle(e,t,r,n,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=qC(0),this.expirationTimes=qC(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=qC(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function QO(e,t,r,n,i,a,o,s,l){return e=new Kle(e,t,r,s,l),t===1?(t=1,a===!0&&(t|=8)):t=0,a=ra(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},jO(a),e}function Jle(e,t,r){var n=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(bZ)}catch(e){console.error(e)}}bZ(),b7.exports=Ei;var wZ=b7.exports,pB=wZ;AP.createRoot=pB.createRoot,AP.hydrateRoot=pB.hydrateRoot;/** * @remix-run/router v1.23.2 * * Copyright (c) Remix Software Inc. @@ -46,7 +46,7 @@ Error generating stack: `+a.message+` * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function Cm(){return Cm=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function rD(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function rue(){return Math.random().toString(36).substr(2,8)}function vB(e,t){return{usr:e.state,key:e.key,idx:t}}function xk(e,t,r,n){return r===void 0&&(r=null),Cm({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?vv(t):t,{state:r,key:t&&t.key||n||rue()})}function Kb(e){let{pathname:t="/",search:r="",hash:n=""}=e;return r&&r!=="?"&&(t+=r.charAt(0)==="?"?r:"?"+r),n&&n!=="#"&&(t+=n.charAt(0)==="#"?n:"#"+n),t}function vv(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function nue(e,t,r,n){n===void 0&&(n={});let{window:i=document.defaultView,v5Compat:a=!1}=n,o=i.history,s=kl.Pop,l=null,u=c();u==null&&(u=0,o.replaceState(Cm({},o.state,{idx:u}),""));function c(){return(o.state||{idx:null}).idx}function f(){s=kl.Pop;let m=c(),x=m==null?null:m-u;u=m,l&&l({action:s,location:g.location,delta:x})}function h(m,x){s=kl.Push;let _=xk(g.location,m,x);u=c()+1;let b=vB(_,u),S=g.createHref(_);try{o.pushState(b,"",S)}catch(T){if(T instanceof DOMException&&T.name==="DataCloneError")throw T;i.location.assign(S)}a&&l&&l({action:s,location:g.location,delta:1})}function d(m,x){s=kl.Replace;let _=xk(g.location,m,x);u=c();let b=vB(_,u),S=g.createHref(_);o.replaceState(b,"",S),a&&l&&l({action:s,location:g.location,delta:0})}function v(m){let x=i.location.origin!=="null"?i.location.origin:i.location.href,_=typeof m=="string"?m:Kb(m);return _=_.replace(/ $/,"%20"),Or(x,"No window.location.(origin|href) available to create URL for href: "+_),new URL(_,x)}let g={get action(){return s},get location(){return e(i,o)},listen(m){if(l)throw new Error("A history only accepts one active listener");return i.addEventListener(dB,f),l=m,()=>{i.removeEventListener(dB,f),l=null}},createHref(m){return t(i,m)},createURL:v,encodeLocation(m){let x=v(m);return{pathname:x.pathname,search:x.search,hash:x.hash}},push:h,replace:d,go(m){return o.go(m)}};return g}var pB;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(pB||(pB={}));function iue(e,t,r){return r===void 0&&(r="/"),aue(e,t,r)}function aue(e,t,r,n){let i=typeof t=="string"?vv(t):t,a=nD(i.pathname||"/",r);if(a==null)return null;let o=bZ(e);oue(o);let s=null;for(let l=0;s==null&&l{let l={relativePath:s===void 0?a.path||"":s,caseSensitive:a.caseSensitive===!0,childrenIndex:o,route:a};l.relativePath.startsWith("/")&&(Or(l.relativePath.startsWith(n),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+n+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(n.length));let u=Zl([n,l.relativePath]),c=r.concat(l);a.children&&a.children.length>0&&(Or(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),bZ(a.children,t,c,u)),!(a.path==null&&!a.index)&&t.push({path:u,score:due(u,a.index),routesMeta:c})};return e.forEach((a,o)=>{var s;if(a.path===""||!((s=a.path)!=null&&s.includes("?")))i(a,o);else for(let l of wZ(a.path))i(a,o,l)}),t}function wZ(e){let t=e.split("/");if(t.length===0)return[];let[r,...n]=t,i=r.endsWith("?"),a=r.replace(/\?$/,"");if(n.length===0)return i?[a,""]:[a];let o=wZ(n.join("/")),s=[];return s.push(...o.map(l=>l===""?a:[a,l].join("/"))),i&&s.push(...o),s.map(l=>e.startsWith("/")&&l===""?"/":l)}function oue(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:vue(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const sue=/^:[\w-]+$/,lue=3,uue=2,cue=1,fue=10,hue=-2,gB=e=>e==="*";function due(e,t){let r=e.split("/"),n=r.length;return r.some(gB)&&(n+=hue),t&&(n+=uue),r.filter(i=>!gB(i)).reduce((i,a)=>i+(sue.test(a)?lue:a===""?cue:fue),n)}function vue(e,t){return e.length===t.length&&e.slice(0,-1).every((n,i)=>n===t[i])?e[e.length-1]-t[t.length-1]:0}function pue(e,t,r){let{routesMeta:n}=e,i={},a="/",o=[];for(let s=0;s{let{paramName:h,isOptional:d}=c;if(h==="*"){let g=s[f]||"";o=a.slice(0,a.length-g.length).replace(/(.)\/+$/,"$1")}const v=s[f];return d&&!v?u[h]=void 0:u[h]=(v||"").replace(/%2F/g,"/"),u},{}),pathname:a,pathnameBase:o,pattern:e}}function mue(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!0),rD(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let n=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,s,l)=>(n.push({paramName:s,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(n.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),n]}function yue(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return rD(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function nD(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&n!=="/"?null:e.slice(r)||"/"}const xue=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,_ue=e=>xue.test(e);function bue(e,t){t===void 0&&(t="/");let{pathname:r,search:n="",hash:i=""}=typeof e=="string"?vv(e):e,a;if(r)if(_ue(r))a=r;else{if(r.includes("//")){let o=r;r=r.replace(/\/\/+/g,"/"),rD(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+r))}r.startsWith("/")?a=mB(r.substring(1),"/"):a=mB(r,t)}else a=t;return{pathname:a,search:Tue(n),hash:Cue(i)}}function mB(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?r.length>1&&r.pop():i!=="."&&r.push(i)}),r.length>1?r.join("/"):"/"}function mA(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the ")+("`to."+r+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function wue(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function SZ(e,t){let r=wue(e);return t?r.map((n,i)=>i===r.length-1?n.pathname:n.pathnameBase):r.map(n=>n.pathnameBase)}function TZ(e,t,r,n){n===void 0&&(n=!1);let i;typeof e=="string"?i=vv(e):(i=Cm({},e),Or(!i.pathname||!i.pathname.includes("?"),mA("?","pathname","search",i)),Or(!i.pathname||!i.pathname.includes("#"),mA("#","pathname","hash",i)),Or(!i.search||!i.search.includes("#"),mA("#","search","hash",i)));let a=e===""||i.pathname==="",o=a?"/":i.pathname,s;if(o==null)s=r;else{let f=t.length-1;if(!n&&o.startsWith("..")){let h=o.split("/");for(;h[0]==="..";)h.shift(),f-=1;i.pathname=h.join("/")}s=f>=0?t[f]:"/"}let l=bue(i,s),u=o&&o!=="/"&&o.endsWith("/"),c=(a||o===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(u||c)&&(l.pathname+="/"),l}const Zl=e=>e.join("/").replace(/\/\/+/g,"/"),Sue=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Tue=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Cue=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Aue(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const CZ=["post","put","patch","delete"];new Set(CZ);const Mue=["get",...CZ];new Set(Mue);/** + */function Cm(){return Cm=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function nD(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function iue(){return Math.random().toString(36).substr(2,8)}function mB(e,t){return{usr:e.state,key:e.key,idx:t}}function xk(e,t,r,n){return r===void 0&&(r=null),Cm({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?vv(t):t,{state:r,key:t&&t.key||n||iue()})}function Kb(e){let{pathname:t="/",search:r="",hash:n=""}=e;return r&&r!=="?"&&(t+=r.charAt(0)==="?"?r:"?"+r),n&&n!=="#"&&(t+=n.charAt(0)==="#"?n:"#"+n),t}function vv(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function aue(e,t,r,n){n===void 0&&(n={});let{window:i=document.defaultView,v5Compat:a=!1}=n,o=i.history,s=kl.Pop,l=null,u=c();u==null&&(u=0,o.replaceState(Cm({},o.state,{idx:u}),""));function c(){return(o.state||{idx:null}).idx}function f(){s=kl.Pop;let y=c(),x=y==null?null:y-u;u=y,l&&l({action:s,location:m.location,delta:x})}function h(y,x){s=kl.Push;let _=xk(m.location,y,x);u=c()+1;let b=mB(_,u),S=m.createHref(_);try{o.pushState(b,"",S)}catch(T){if(T instanceof DOMException&&T.name==="DataCloneError")throw T;i.location.assign(S)}a&&l&&l({action:s,location:m.location,delta:1})}function d(y,x){s=kl.Replace;let _=xk(m.location,y,x);u=c();let b=mB(_,u),S=m.createHref(_);o.replaceState(b,"",S),a&&l&&l({action:s,location:m.location,delta:0})}function v(y){let x=i.location.origin!=="null"?i.location.origin:i.location.href,_=typeof y=="string"?y:Kb(y);return _=_.replace(/ $/,"%20"),Or(x,"No window.location.(origin|href) available to create URL for href: "+_),new URL(_,x)}let m={get action(){return s},get location(){return e(i,o)},listen(y){if(l)throw new Error("A history only accepts one active listener");return i.addEventListener(gB,f),l=y,()=>{i.removeEventListener(gB,f),l=null}},createHref(y){return t(i,y)},createURL:v,encodeLocation(y){let x=v(y);return{pathname:x.pathname,search:x.search,hash:x.hash}},push:h,replace:d,go(y){return o.go(y)}};return m}var yB;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(yB||(yB={}));function oue(e,t,r){return r===void 0&&(r="/"),sue(e,t,r)}function sue(e,t,r,n){let i=typeof t=="string"?vv(t):t,a=iD(i.pathname||"/",r);if(a==null)return null;let o=SZ(e);lue(o);let s=null;for(let l=0;s==null&&l{let l={relativePath:s===void 0?a.path||"":s,caseSensitive:a.caseSensitive===!0,childrenIndex:o,route:a};l.relativePath.startsWith("/")&&(Or(l.relativePath.startsWith(n),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+n+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(n.length));let u=Zl([n,l.relativePath]),c=r.concat(l);a.children&&a.children.length>0&&(Or(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),SZ(a.children,t,c,u)),!(a.path==null&&!a.index)&&t.push({path:u,score:pue(u,a.index),routesMeta:c})};return e.forEach((a,o)=>{var s;if(a.path===""||!((s=a.path)!=null&&s.includes("?")))i(a,o);else for(let l of TZ(a.path))i(a,o,l)}),t}function TZ(e){let t=e.split("/");if(t.length===0)return[];let[r,...n]=t,i=r.endsWith("?"),a=r.replace(/\?$/,"");if(n.length===0)return i?[a,""]:[a];let o=TZ(n.join("/")),s=[];return s.push(...o.map(l=>l===""?a:[a,l].join("/"))),i&&s.push(...o),s.map(l=>e.startsWith("/")&&l===""?"/":l)}function lue(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:gue(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const uue=/^:[\w-]+$/,cue=3,fue=2,hue=1,due=10,vue=-2,xB=e=>e==="*";function pue(e,t){let r=e.split("/"),n=r.length;return r.some(xB)&&(n+=vue),t&&(n+=fue),r.filter(i=>!xB(i)).reduce((i,a)=>i+(uue.test(a)?cue:a===""?hue:due),n)}function gue(e,t){return e.length===t.length&&e.slice(0,-1).every((n,i)=>n===t[i])?e[e.length-1]-t[t.length-1]:0}function mue(e,t,r){let{routesMeta:n}=e,i={},a="/",o=[];for(let s=0;s{let{paramName:h,isOptional:d}=c;if(h==="*"){let m=s[f]||"";o=a.slice(0,a.length-m.length).replace(/(.)\/+$/,"$1")}const v=s[f];return d&&!v?u[h]=void 0:u[h]=(v||"").replace(/%2F/g,"/"),u},{}),pathname:a,pathnameBase:o,pattern:e}}function xue(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!0),nD(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let n=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,s,l)=>(n.push({paramName:s,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(n.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),n]}function _ue(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return nD(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function iD(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&n!=="/"?null:e.slice(r)||"/"}const bue=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,wue=e=>bue.test(e);function Sue(e,t){t===void 0&&(t="/");let{pathname:r,search:n="",hash:i=""}=typeof e=="string"?vv(e):e,a;if(r)if(wue(r))a=r;else{if(r.includes("//")){let o=r;r=r.replace(/\/\/+/g,"/"),nD(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+r))}r.startsWith("/")?a=_B(r.substring(1),"/"):a=_B(r,t)}else a=t;return{pathname:a,search:Aue(n),hash:Mue(i)}}function _B(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?r.length>1&&r.pop():i!=="."&&r.push(i)}),r.length>1?r.join("/"):"/"}function mA(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the ")+("`to."+r+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function Tue(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function CZ(e,t){let r=Tue(e);return t?r.map((n,i)=>i===r.length-1?n.pathname:n.pathnameBase):r.map(n=>n.pathnameBase)}function AZ(e,t,r,n){n===void 0&&(n=!1);let i;typeof e=="string"?i=vv(e):(i=Cm({},e),Or(!i.pathname||!i.pathname.includes("?"),mA("?","pathname","search",i)),Or(!i.pathname||!i.pathname.includes("#"),mA("#","pathname","hash",i)),Or(!i.search||!i.search.includes("#"),mA("#","search","hash",i)));let a=e===""||i.pathname==="",o=a?"/":i.pathname,s;if(o==null)s=r;else{let f=t.length-1;if(!n&&o.startsWith("..")){let h=o.split("/");for(;h[0]==="..";)h.shift(),f-=1;i.pathname=h.join("/")}s=f>=0?t[f]:"/"}let l=Sue(i,s),u=o&&o!=="/"&&o.endsWith("/"),c=(a||o===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(u||c)&&(l.pathname+="/"),l}const Zl=e=>e.join("/").replace(/\/\/+/g,"/"),Cue=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Aue=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Mue=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Pue(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const MZ=["post","put","patch","delete"];new Set(MZ);const kue=["get",...MZ];new Set(kue);/** * React Router v6.30.3 * * Copyright (c) Remix Software Inc. @@ -55,7 +55,7 @@ Error generating stack: `+a.message+` * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function Am(){return Am=Object.assign?Object.assign.bind():function(e){for(var t=1;t{s.current=!0}),H.useCallback(function(u,c){if(c===void 0&&(c={}),!s.current)return;if(typeof u=="number"){n.go(u);return}let f=TZ(u,JSON.parse(o),a,c.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Zl([t,f.pathname])),(c.replace?n.replace:n.push)(f,c.state,c)},[t,n,o,a,e])}function kZ(e,t){let{relative:r}=t===void 0?{}:t,{future:n}=H.useContext(_f),{matches:i}=H.useContext(bf),{pathname:a}=pv(),o=JSON.stringify(SZ(i,n.v7_relativeSplatPath));return H.useMemo(()=>TZ(e,JSON.parse(o),a,r==="path"),[e,o,a,r])}function Iue(e,t){return Oue(e,t)}function Oue(e,t,r,n){qy()||Or(!1);let{navigator:i}=H.useContext(_f),{matches:a}=H.useContext(bf),o=a[a.length-1],s=o?o.params:{};o&&o.pathname;let l=o?o.pathnameBase:"/";o&&o.route;let u=pv(),c;if(t){var f;let m=typeof t=="string"?vv(t):t;l==="/"||(f=m.pathname)!=null&&f.startsWith(l)||Or(!1),c=m}else c=u;let h=c.pathname||"/",d=h;if(l!=="/"){let m=l.replace(/^\//,"").split("/");d="/"+h.replace(/^\//,"").split("/").slice(m.length).join("/")}let v=iue(e,{pathname:d}),g=Rue(v&&v.map(m=>Object.assign({},m,{params:Object.assign({},s,m.params),pathname:Zl([l,i.encodeLocation?i.encodeLocation(m.pathname).pathname:m.pathname]),pathnameBase:m.pathnameBase==="/"?l:Zl([l,i.encodeLocation?i.encodeLocation(m.pathnameBase).pathname:m.pathnameBase])})),a,r,n);return t&&g?H.createElement(PS.Provider,{value:{location:Am({pathname:"/",search:"",hash:"",state:null,key:"default"},c),navigationType:kl.Pop}},g):g}function Eue(){let e=Fue(),t=Aue(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return H.createElement(H.Fragment,null,H.createElement("h2",null,"Unexpected Application Error!"),H.createElement("h3",{style:{fontStyle:"italic"}},t),r?H.createElement("pre",{style:i},r):null,null)}const Due=H.createElement(Eue,null);class Nue extends H.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,r){return r.location!==t.location||r.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:r.error,location:r.location,revalidation:t.revalidation||r.revalidation}}componentDidCatch(t,r){console.error("React Router caught the following error during render",t,r)}render(){return this.state.error!==void 0?H.createElement(bf.Provider,{value:this.props.routeContext},H.createElement(AZ.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function jue(e){let{routeContext:t,match:r,children:n}=e,i=H.useContext(iD);return i&&i.static&&i.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=r.route.id),H.createElement(bf.Provider,{value:t},n)}function Rue(e,t,r,n){var i;if(t===void 0&&(t=[]),r===void 0&&(r=null),n===void 0&&(n=null),e==null){var a;if(!r)return null;if(r.errors)e=r.matches;else if((a=n)!=null&&a.v7_partialHydration&&t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let o=e,s=(i=r)==null?void 0:i.errors;if(s!=null){let c=o.findIndex(f=>f.route.id&&(s==null?void 0:s[f.route.id])!==void 0);c>=0||Or(!1),o=o.slice(0,Math.min(o.length,c+1))}let l=!1,u=-1;if(r&&n&&n.v7_partialHydration)for(let c=0;c=0?o=o.slice(0,u+1):o=[o[0]];break}}}return o.reduceRight((c,f,h)=>{let d,v=!1,g=null,m=null;r&&(d=s&&f.route.id?s[f.route.id]:void 0,g=f.route.errorElement||Due,l&&(u<0&&h===0?(Gue("route-fallback"),v=!0,m=null):u===h&&(v=!0,m=f.route.hydrateFallbackElement||null)));let x=t.concat(o.slice(0,h+1)),_=()=>{let b;return d?b=g:v?b=m:f.route.Component?b=H.createElement(f.route.Component,null):f.route.element?b=f.route.element:b=c,H.createElement(jue,{match:f,routeContext:{outlet:c,matches:x,isDataRoute:r!=null},children:b})};return r&&(f.route.ErrorBoundary||f.route.errorElement||h===0)?H.createElement(Nue,{location:r.location,revalidation:r.revalidation,component:g,error:d,children:_(),routeContext:{outlet:null,matches:x,isDataRoute:!0}}):_()},null)}var LZ=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(LZ||{}),IZ=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(IZ||{});function Bue(e){let t=H.useContext(iD);return t||Or(!1),t}function zue(e){let t=H.useContext(Pue);return t||Or(!1),t}function $ue(e){let t=H.useContext(bf);return t||Or(!1),t}function OZ(e){let t=$ue(),r=t.matches[t.matches.length-1];return r.route.id||Or(!1),r.route.id}function Fue(){var e;let t=H.useContext(AZ),r=zue(),n=OZ();return t!==void 0?t:(e=r.errors)==null?void 0:e[n]}function Vue(){let{router:e}=Bue(LZ.UseNavigateStable),t=OZ(IZ.UseNavigateStable),r=H.useRef(!1);return MZ(()=>{r.current=!0}),H.useCallback(function(i,a){a===void 0&&(a={}),r.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,Am({fromRouteId:t},a)))},[e,t])}const yB={};function Gue(e,t,r){yB[e]||(yB[e]=!0)}function Wue(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function Ma(e){Or(!1)}function Hue(e){let{basename:t="/",children:r=null,location:n,navigationType:i=kl.Pop,navigator:a,static:o=!1,future:s}=e;qy()&&Or(!1);let l=t.replace(/^\/*/,"/"),u=H.useMemo(()=>({basename:l,navigator:a,static:o,future:Am({v7_relativeSplatPath:!1},s)}),[l,s,a,o]);typeof n=="string"&&(n=vv(n));let{pathname:c="/",search:f="",hash:h="",state:d=null,key:v="default"}=n,g=H.useMemo(()=>{let m=nD(c,l);return m==null?null:{location:{pathname:m,search:f,hash:h,state:d,key:v},navigationType:i}},[l,c,f,h,d,v,i]);return g==null?null:H.createElement(_f.Provider,{value:u},H.createElement(PS.Provider,{children:r,value:g}))}function Uue(e){let{children:t,location:r}=e;return Iue(_k(t),r)}new Promise(()=>{});function _k(e,t){t===void 0&&(t=[]);let r=[];return H.Children.forEach(e,(n,i)=>{if(!H.isValidElement(n))return;let a=[...t,i];if(n.type===H.Fragment){r.push.apply(r,_k(n.props.children,a));return}n.type!==Ma&&Or(!1),!n.props.index||!n.props.children||Or(!1);let o={id:n.props.id||a.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,loader:n.props.loader,action:n.props.action,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(o.children=_k(n.props.children,a)),r.push(o)}),r}/** + */function Am(){return Am=Object.assign?Object.assign.bind():function(e){for(var t=1;t{s.current=!0}),H.useCallback(function(u,c){if(c===void 0&&(c={}),!s.current)return;if(typeof u=="number"){n.go(u);return}let f=AZ(u,JSON.parse(o),a,c.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Zl([t,f.pathname])),(c.replace?n.replace:n.push)(f,c.state,c)},[t,n,o,a,e])}function IZ(e,t){let{relative:r}=t===void 0?{}:t,{future:n}=H.useContext(bf),{matches:i}=H.useContext(wf),{pathname:a}=pv(),o=JSON.stringify(CZ(i,n.v7_relativeSplatPath));return H.useMemo(()=>AZ(e,JSON.parse(o),a,r==="path"),[e,o,a,r])}function Oue(e,t){return Due(e,t)}function Due(e,t,r,n){qy()||Or(!1);let{navigator:i}=H.useContext(bf),{matches:a}=H.useContext(wf),o=a[a.length-1],s=o?o.params:{};o&&o.pathname;let l=o?o.pathnameBase:"/";o&&o.route;let u=pv(),c;if(t){var f;let y=typeof t=="string"?vv(t):t;l==="/"||(f=y.pathname)!=null&&f.startsWith(l)||Or(!1),c=y}else c=u;let h=c.pathname||"/",d=h;if(l!=="/"){let y=l.replace(/^\//,"").split("/");d="/"+h.replace(/^\//,"").split("/").slice(y.length).join("/")}let v=oue(e,{pathname:d}),m=zue(v&&v.map(y=>Object.assign({},y,{params:Object.assign({},s,y.params),pathname:Zl([l,i.encodeLocation?i.encodeLocation(y.pathname).pathname:y.pathname]),pathnameBase:y.pathnameBase==="/"?l:Zl([l,i.encodeLocation?i.encodeLocation(y.pathnameBase).pathname:y.pathnameBase])})),a,r,n);return t&&m?H.createElement(PS.Provider,{value:{location:Am({pathname:"/",search:"",hash:"",state:null,key:"default"},c),navigationType:kl.Pop}},m):m}function Nue(){let e=Gue(),t=Pue(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return H.createElement(H.Fragment,null,H.createElement("h2",null,"Unexpected Application Error!"),H.createElement("h3",{style:{fontStyle:"italic"}},t),r?H.createElement("pre",{style:i},r):null,null)}const jue=H.createElement(Nue,null);class Rue extends H.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,r){return r.location!==t.location||r.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:r.error,location:r.location,revalidation:t.revalidation||r.revalidation}}componentDidCatch(t,r){console.error("React Router caught the following error during render",t,r)}render(){return this.state.error!==void 0?H.createElement(wf.Provider,{value:this.props.routeContext},H.createElement(PZ.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Bue(e){let{routeContext:t,match:r,children:n}=e,i=H.useContext(aD);return i&&i.static&&i.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=r.route.id),H.createElement(wf.Provider,{value:t},n)}function zue(e,t,r,n){var i;if(t===void 0&&(t=[]),r===void 0&&(r=null),n===void 0&&(n=null),e==null){var a;if(!r)return null;if(r.errors)e=r.matches;else if((a=n)!=null&&a.v7_partialHydration&&t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let o=e,s=(i=r)==null?void 0:i.errors;if(s!=null){let c=o.findIndex(f=>f.route.id&&(s==null?void 0:s[f.route.id])!==void 0);c>=0||Or(!1),o=o.slice(0,Math.min(o.length,c+1))}let l=!1,u=-1;if(r&&n&&n.v7_partialHydration)for(let c=0;c=0?o=o.slice(0,u+1):o=[o[0]];break}}}return o.reduceRight((c,f,h)=>{let d,v=!1,m=null,y=null;r&&(d=s&&f.route.id?s[f.route.id]:void 0,m=f.route.errorElement||jue,l&&(u<0&&h===0?(Hue("route-fallback"),v=!0,y=null):u===h&&(v=!0,y=f.route.hydrateFallbackElement||null)));let x=t.concat(o.slice(0,h+1)),_=()=>{let b;return d?b=m:v?b=y:f.route.Component?b=H.createElement(f.route.Component,null):f.route.element?b=f.route.element:b=c,H.createElement(Bue,{match:f,routeContext:{outlet:c,matches:x,isDataRoute:r!=null},children:b})};return r&&(f.route.ErrorBoundary||f.route.errorElement||h===0)?H.createElement(Rue,{location:r.location,revalidation:r.revalidation,component:m,error:d,children:_(),routeContext:{outlet:null,matches:x,isDataRoute:!0}}):_()},null)}var EZ=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(EZ||{}),OZ=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(OZ||{});function $ue(e){let t=H.useContext(aD);return t||Or(!1),t}function Fue(e){let t=H.useContext(Lue);return t||Or(!1),t}function Vue(e){let t=H.useContext(wf);return t||Or(!1),t}function DZ(e){let t=Vue(),r=t.matches[t.matches.length-1];return r.route.id||Or(!1),r.route.id}function Gue(){var e;let t=H.useContext(PZ),r=Fue(),n=DZ();return t!==void 0?t:(e=r.errors)==null?void 0:e[n]}function Wue(){let{router:e}=$ue(EZ.UseNavigateStable),t=DZ(OZ.UseNavigateStable),r=H.useRef(!1);return kZ(()=>{r.current=!0}),H.useCallback(function(i,a){a===void 0&&(a={}),r.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,Am({fromRouteId:t},a)))},[e,t])}const bB={};function Hue(e,t,r){bB[e]||(bB[e]=!0)}function Uue(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function Ma(e){Or(!1)}function Zue(e){let{basename:t="/",children:r=null,location:n,navigationType:i=kl.Pop,navigator:a,static:o=!1,future:s}=e;qy()&&Or(!1);let l=t.replace(/^\/*/,"/"),u=H.useMemo(()=>({basename:l,navigator:a,static:o,future:Am({v7_relativeSplatPath:!1},s)}),[l,s,a,o]);typeof n=="string"&&(n=vv(n));let{pathname:c="/",search:f="",hash:h="",state:d=null,key:v="default"}=n,m=H.useMemo(()=>{let y=iD(c,l);return y==null?null:{location:{pathname:y,search:f,hash:h,state:d,key:v},navigationType:i}},[l,c,f,h,d,v,i]);return m==null?null:H.createElement(bf.Provider,{value:u},H.createElement(PS.Provider,{children:r,value:m}))}function Yue(e){let{children:t,location:r}=e;return Oue(_k(t),r)}new Promise(()=>{});function _k(e,t){t===void 0&&(t=[]);let r=[];return H.Children.forEach(e,(n,i)=>{if(!H.isValidElement(n))return;let a=[...t,i];if(n.type===H.Fragment){r.push.apply(r,_k(n.props.children,a));return}n.type!==Ma&&Or(!1),!n.props.index||!n.props.children||Or(!1);let o={id:n.props.id||a.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,loader:n.props.loader,action:n.props.action,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(o.children=_k(n.props.children,a)),r.push(o)}),r}/** * React Router DOM v6.30.3 * * Copyright (c) Remix Software Inc. @@ -64,27 +64,27 @@ Error generating stack: `+a.message+` * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function bk(){return bk=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(r[i]=e[i]);return r}function Yue(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Xue(e,t){return e.button===0&&(!t||t==="_self")&&!Yue(e)}const que=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],Kue="6";try{window.__reactRouterVersion=Kue}catch{}const Jue="startTransition",xB=Woe[Jue];function Que(e){let{basename:t,children:r,future:n,window:i}=e,a=H.useRef();a.current==null&&(a.current=tue({window:i,v5Compat:!0}));let o=a.current,[s,l]=H.useState({action:o.action,location:o.location}),{v7_startTransition:u}=n||{},c=H.useCallback(f=>{u&&xB?xB(()=>l(f)):l(f)},[l,u]);return H.useLayoutEffect(()=>o.listen(c),[o,c]),H.useEffect(()=>Wue(n),[n]),H.createElement(Hue,{basename:t,children:r,location:s.location,navigationType:s.action,navigator:o,future:n})}const ece=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",tce=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,rce=H.forwardRef(function(t,r){let{onClick:n,relative:i,reloadDocument:a,replace:o,state:s,target:l,to:u,preventScrollReset:c,viewTransition:f}=t,h=Zue(t,que),{basename:d}=H.useContext(_f),v,g=!1;if(typeof u=="string"&&tce.test(u)&&(v=u,ece))try{let b=new URL(window.location.href),S=u.startsWith("//")?new URL(b.protocol+u):new URL(u),T=nD(S.pathname,d);S.origin===b.origin&&T!=null?u=T+S.search+S.hash:g=!0}catch{}let m=kue(u,{relative:i}),x=nce(u,{replace:o,state:s,target:l,preventScrollReset:c,relative:i,viewTransition:f});function _(b){n&&n(b),b.defaultPrevented||x(b)}return H.createElement("a",bk({},h,{href:v||m,onClick:g||a?n:_,ref:r,target:l}))});var _B;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(_B||(_B={}));var bB;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(bB||(bB={}));function nce(e,t){let{target:r,replace:n,state:i,preventScrollReset:a,relative:o,viewTransition:s}=t===void 0?{}:t,l=PZ(),u=pv(),c=kZ(e,{relative:o});return H.useCallback(f=>{if(Xue(f,r)){f.preventDefault();let h=n!==void 0?n:Kb(u)===Kb(c);l(e,{replace:h,state:i,preventScrollReset:a,relative:o,viewTransition:s})}},[u,l,c,n,i,r,e,a,o,s])}/** + */function bk(){return bk=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(r[i]=e[i]);return r}function que(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Kue(e,t){return e.button===0&&(!t||t==="_self")&&!que(e)}const Jue=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],Que="6";try{window.__reactRouterVersion=Que}catch{}const ece="startTransition",wB=Uoe[ece];function tce(e){let{basename:t,children:r,future:n,window:i}=e,a=H.useRef();a.current==null&&(a.current=nue({window:i,v5Compat:!0}));let o=a.current,[s,l]=H.useState({action:o.action,location:o.location}),{v7_startTransition:u}=n||{},c=H.useCallback(f=>{u&&wB?wB(()=>l(f)):l(f)},[l,u]);return H.useLayoutEffect(()=>o.listen(c),[o,c]),H.useEffect(()=>Uue(n),[n]),H.createElement(Zue,{basename:t,children:r,location:s.location,navigationType:s.action,navigator:o,future:n})}const rce=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",nce=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ice=H.forwardRef(function(t,r){let{onClick:n,relative:i,reloadDocument:a,replace:o,state:s,target:l,to:u,preventScrollReset:c,viewTransition:f}=t,h=Xue(t,Jue),{basename:d}=H.useContext(bf),v,m=!1;if(typeof u=="string"&&nce.test(u)&&(v=u,rce))try{let b=new URL(window.location.href),S=u.startsWith("//")?new URL(b.protocol+u):new URL(u),T=iD(S.pathname,d);S.origin===b.origin&&T!=null?u=T+S.search+S.hash:m=!0}catch{}let y=Iue(u,{relative:i}),x=ace(u,{replace:o,state:s,target:l,preventScrollReset:c,relative:i,viewTransition:f});function _(b){n&&n(b),b.defaultPrevented||x(b)}return H.createElement("a",bk({},h,{href:v||y,onClick:m||a?n:_,ref:r,target:l}))});var SB;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(SB||(SB={}));var TB;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(TB||(TB={}));function ace(e,t){let{target:r,replace:n,state:i,preventScrollReset:a,relative:o,viewTransition:s}=t===void 0?{}:t,l=LZ(),u=pv(),c=IZ(e,{relative:o});return H.useCallback(f=>{if(Kue(f,r)){f.preventDefault();let h=n!==void 0?n:Kb(u)===Kb(c);l(e,{replace:h,state:i,preventScrollReset:a,relative:o,viewTransition:s})}},[u,l,c,n,i,r,e,a,o,s])}/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const ice=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),EZ=(...e)=>e.filter((t,r,n)=>!!t&&n.indexOf(t)===r).join(" ");/** + */const oce=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),NZ=(...e)=>e.filter((t,r,n)=>!!t&&n.indexOf(t)===r).join(" ");/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */var ace={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** + */var sce={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const oce=H.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:n,className:i="",children:a,iconNode:o,...s},l)=>H.createElement("svg",{ref:l,...ace,width:t,height:t,stroke:e,strokeWidth:n?Number(r)*24/Number(t):r,className:EZ("lucide",i),...s},[...o.map(([u,c])=>H.createElement(u,c)),...Array.isArray(a)?a:[a]]));/** + */const lce=H.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:r=2,absoluteStrokeWidth:n,className:i="",children:a,iconNode:o,...s},l)=>H.createElement("svg",{ref:l,...sce,width:t,height:t,stroke:e,strokeWidth:n?Number(r)*24/Number(t):r,className:NZ("lucide",i),...s},[...o.map(([u,c])=>H.createElement(u,c)),...Array.isArray(a)?a:[a]]));/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const ze=(e,t)=>{const r=H.forwardRef(({className:n,...i},a)=>H.createElement(oce,{ref:a,iconNode:t,className:EZ(`lucide-${ice(e)}`,n),...i}));return r.displayName=`${e}`,r};/** + */const ze=(e,t)=>{const r=H.forwardRef(({className:n,...i},a)=>H.createElement(lce,{ref:a,iconNode:t,className:NZ(`lucide-${oce(e)}`,n),...i}));return r.displayName=`${e}`,r};/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -99,7 +99,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const sce=ze("BellRing",[["path",{d:"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9",key:"1qo2s2"}],["path",{d:"M10.3 21a1.94 1.94 0 0 0 3.4 0",key:"qgo35s"}],["path",{d:"M4 2C2.8 3.7 2 5.7 2 8",key:"tap9e0"}],["path",{d:"M22 8c0-2.3-.8-4.3-2-6",key:"5bb3ad"}]]);/** + */const uce=ze("BellRing",[["path",{d:"M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9",key:"1qo2s2"}],["path",{d:"M10.3 21a1.94 1.94 0 0 0 3.4 0",key:"qgo35s"}],["path",{d:"M4 2C2.8 3.7 2 5.7 2 8",key:"tap9e0"}],["path",{d:"M22 8c0-2.3-.8-4.3-2-6",key:"5bb3ad"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -109,22 +109,22 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const DZ=ze("BookOpen",[["path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z",key:"vv98re"}],["path",{d:"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z",key:"1cyq3y"}]]);/** + */const jZ=ze("BookOpen",[["path",{d:"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z",key:"vv98re"}],["path",{d:"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z",key:"1cyq3y"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const lce=ze("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);/** + */const cce=ze("Bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const uce=ze("Brain",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z",key:"ep3f8r"}],["path",{d:"M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4",key:"1p4c4q"}],["path",{d:"M17.599 6.5a3 3 0 0 0 .399-1.375",key:"tmeiqw"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M19.938 10.5a4 4 0 0 1 .585.396",key:"1qfode"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M19.967 17.484A4 4 0 0 1 18 18",key:"159ez6"}]]);/** + */const fce=ze("Brain",[["path",{d:"M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z",key:"l5xja"}],["path",{d:"M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z",key:"ep3f8r"}],["path",{d:"M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4",key:"1p4c4q"}],["path",{d:"M17.599 6.5a3 3 0 0 0 .399-1.375",key:"tmeiqw"}],["path",{d:"M6.003 5.125A3 3 0 0 0 6.401 6.5",key:"105sqy"}],["path",{d:"M3.477 10.896a4 4 0 0 1 .585-.396",key:"ql3yin"}],["path",{d:"M19.938 10.5a4 4 0 0 1 .585.396",key:"1qfode"}],["path",{d:"M6 18a4 4 0 0 1-1.967-.516",key:"2e4loj"}],["path",{d:"M19.967 17.484A4 4 0 0 1 18 18",key:"159ez6"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const cce=ze("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** + */const hce=ze("Calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -144,7 +144,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const fce=ze("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** + */const dce=ze("ChevronLeft",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -154,7 +154,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const hce=ze("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/** + */const vce=ze("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -164,17 +164,17 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const aD=ze("CircleCheckBig",[["path",{d:"M22 11.08V12a10 10 0 1 1-5.93-9.14",key:"g774vq"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/** + */const oD=ze("CircleCheckBig",[["path",{d:"M22 11.08V12a10 10 0 1 1-5.93-9.14",key:"g774vq"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const wd=ze("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** + */const rf=ze("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const dce=ze("CloudLightning",[["path",{d:"M6 16.326A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 .5 8.973",key:"1cez44"}],["path",{d:"m13 12-3 5h4l-3 5",key:"1t22er"}]]);/** + */const pce=ze("CloudLightning",[["path",{d:"M6 16.326A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 .5 8.973",key:"1cez44"}],["path",{d:"m13 12-3 5h4l-3 5",key:"1t22er"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -184,27 +184,32 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const vce=ze("Code",[["polyline",{points:"16 18 22 12 16 6",key:"z7tu5w"}],["polyline",{points:"8 6 2 12 8 18",key:"1eg1df"}]]);/** + */const gce=ze("Code",[["polyline",{points:"16 18 22 12 16 6",key:"z7tu5w"}],["polyline",{points:"8 6 2 12 8 18",key:"1eg1df"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const NZ=ze("Construction",[["rect",{x:"2",y:"6",width:"20",height:"8",rx:"1",key:"1estib"}],["path",{d:"M17 14v7",key:"7m2elx"}],["path",{d:"M7 14v7",key:"1cm7wv"}],["path",{d:"M17 3v3",key:"1v4jwn"}],["path",{d:"M7 3v3",key:"7o6guu"}],["path",{d:"M10 14 2.3 6.3",key:"1023jk"}],["path",{d:"m14 6 7.7 7.7",key:"1s8pl2"}],["path",{d:"m8 6 8 8",key:"hl96qh"}]]);/** + */const RZ=ze("Construction",[["rect",{x:"2",y:"6",width:"20",height:"8",rx:"1",key:"1estib"}],["path",{d:"M17 14v7",key:"7m2elx"}],["path",{d:"M7 14v7",key:"1cm7wv"}],["path",{d:"M17 3v3",key:"1v4jwn"}],["path",{d:"M7 3v3",key:"7o6guu"}],["path",{d:"M10 14 2.3 6.3",key:"1023jk"}],["path",{d:"m14 6 7.7 7.7",key:"1s8pl2"}],["path",{d:"m8 6 8 8",key:"hl96qh"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const pce=ze("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** + */const mce=ze("Copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const jZ=ze("Cpu",[["rect",{width:"16",height:"16",x:"4",y:"4",rx:"2",key:"14l7u7"}],["rect",{width:"6",height:"6",x:"9",y:"9",rx:"1",key:"5aljv4"}],["path",{d:"M15 2v2",key:"13l42r"}],["path",{d:"M15 20v2",key:"15mkzm"}],["path",{d:"M2 15h2",key:"1gxd5l"}],["path",{d:"M2 9h2",key:"1bbxkp"}],["path",{d:"M20 15h2",key:"19e6y8"}],["path",{d:"M20 9h2",key:"19tzq7"}],["path",{d:"M9 2v2",key:"165o2o"}],["path",{d:"M9 20v2",key:"i2bqo8"}]]);/** + */const BZ=ze("Cpu",[["rect",{width:"16",height:"16",x:"4",y:"4",rx:"2",key:"14l7u7"}],["rect",{width:"6",height:"6",x:"9",y:"9",rx:"1",key:"5aljv4"}],["path",{d:"M15 2v2",key:"13l42r"}],["path",{d:"M15 20v2",key:"15mkzm"}],["path",{d:"M2 15h2",key:"1gxd5l"}],["path",{d:"M2 9h2",key:"1bbxkp"}],["path",{d:"M20 15h2",key:"19e6y8"}],["path",{d:"M20 9h2",key:"19tzq7"}],["path",{d:"M9 2v2",key:"165o2o"}],["path",{d:"M9 20v2",key:"i2bqo8"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const gce=ze("Database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);/** + */const yce=ze("Crosshair",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"22",x2:"18",y1:"12",y2:"12",key:"l9bcsi"}],["line",{x1:"6",x2:"2",y1:"12",y2:"12",key:"13hhkx"}],["line",{x1:"12",x2:"12",y1:"6",y2:"2",key:"10w3f3"}],["line",{x1:"12",x2:"12",y1:"22",y2:"18",key:"15g9kq"}]]);/** + * @license lucide-react v0.383.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const zZ=ze("Database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -219,17 +224,17 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const RZ=ze("EyeOff",[["path",{d:"M9.88 9.88a3 3 0 1 0 4.24 4.24",key:"1jxqfv"}],["path",{d:"M10.73 5.08A10.43 10.43 0 0 1 12 5c7 0 10 7 10 7a13.16 13.16 0 0 1-1.67 2.68",key:"9wicm4"}],["path",{d:"M6.61 6.61A13.526 13.526 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61",key:"1jreej"}],["line",{x1:"2",x2:"22",y1:"2",y2:"22",key:"a6p6uj"}]]);/** + */const $Z=ze("EyeOff",[["path",{d:"M9.88 9.88a3 3 0 1 0 4.24 4.24",key:"1jxqfv"}],["path",{d:"M10.73 5.08A10.43 10.43 0 0 1 12 5c7 0 10 7 10 7a13.16 13.16 0 0 1-1.67 2.68",key:"9wicm4"}],["path",{d:"M6.61 6.61A13.526 13.526 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61",key:"1jreej"}],["line",{x1:"2",x2:"22",y1:"2",y2:"22",key:"a6p6uj"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const oD=ze("Eye",[["path",{d:"M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z",key:"rwhkz3"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** + */const sD=ze("Eye",[["path",{d:"M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z",key:"rwhkz3"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const sD=ze("Filter",[["polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3",key:"1yg77f"}]]);/** + */const lD=ze("Filter",[["polygon",{points:"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3",key:"1yg77f"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -239,22 +244,27 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const mce=ze("Globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]);/** + */const xce=ze("Globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const OS=ze("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/** + */const _ce=ze("History",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const BZ=ze("Layers",[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);/** + */const ES=ze("Info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const zZ=ze("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/** + */const FZ=ze("Layers",[["path",{d:"m12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83Z",key:"8b97xw"}],["path",{d:"m22 17.65-9.17 4.16a2 2 0 0 1-1.66 0L2 17.65",key:"dd6zsq"}],["path",{d:"m22 12.65-9.17 4.16a2 2 0 0 1-1.66 0L2 12.65",key:"ep9fru"}]]);/** + * @license lucide-react v0.383.0 - ISC + * + * This source code is licensed under the ISC license. + * See the LICENSE file in the root directory of this source tree. + */const VZ=ze("LayoutDashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -264,7 +274,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const yce=ze("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);/** + */const bce=ze("Mail",[["rect",{width:"20",height:"16",x:"2",y:"4",rx:"2",key:"18n3k1"}],["path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7",key:"1ocrg3"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -274,22 +284,22 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const xce=ze("Map",[["path",{d:"M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z",key:"169xi5"}],["path",{d:"M15 5.764v15",key:"1pn4in"}],["path",{d:"M9 3.236v15",key:"1uimfh"}]]);/** + */const wce=ze("Map",[["path",{d:"M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z",key:"169xi5"}],["path",{d:"M15 5.764v15",key:"1pn4in"}],["path",{d:"M9 3.236v15",key:"1uimfh"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const $Z=ze("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);/** + */const uD=ze("MessageSquare",[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const ES=ze("Mountain",[["path",{d:"m8 3 4 8 5-5 5 15H2L8 3z",key:"otkl63"}]]);/** + */const OS=ze("Mountain",[["path",{d:"m8 3 4 8 5-5 5 15H2L8 3z",key:"otkl63"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const _ce=ze("Network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);/** + */const GZ=ze("Network",[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -314,7 +324,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const bce=ze("RotateCw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]]);/** + */const Sce=ze("RotateCw",[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8",key:"1p45f6"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -324,7 +334,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const lD=ze("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);/** + */const cD=ze("Save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -334,32 +344,32 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const wB=ze("Send",[["path",{d:"m22 2-7 20-4-9-9-4Z",key:"1q3vgg"}],["path",{d:"M22 2 11 13",key:"nzbqef"}]]);/** + */const wk=ze("Send",[["path",{d:"m22 2-7 20-4-9-9-4Z",key:"1q3vgg"}],["path",{d:"M22 2 11 13",key:"nzbqef"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const FZ=ze("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** + */const WZ=ze("Settings",[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const VZ=ze("SlidersVertical",[["line",{x1:"4",x2:"4",y1:"21",y2:"14",key:"1p332r"}],["line",{x1:"4",x2:"4",y1:"10",y2:"3",key:"gb41h5"}],["line",{x1:"12",x2:"12",y1:"21",y2:"12",key:"hf2csr"}],["line",{x1:"12",x2:"12",y1:"8",y2:"3",key:"1kfi7u"}],["line",{x1:"20",x2:"20",y1:"21",y2:"16",key:"1lhrwl"}],["line",{x1:"20",x2:"20",y1:"12",y2:"3",key:"16vvfq"}],["line",{x1:"2",x2:"6",y1:"14",y2:"14",key:"1uebub"}],["line",{x1:"10",x2:"14",y1:"8",y2:"8",key:"1yglbp"}],["line",{x1:"18",x2:"22",y1:"16",y2:"16",key:"1jxqpz"}]]);/** + */const fD=ze("SlidersVertical",[["line",{x1:"4",x2:"4",y1:"21",y2:"14",key:"1p332r"}],["line",{x1:"4",x2:"4",y1:"10",y2:"3",key:"gb41h5"}],["line",{x1:"12",x2:"12",y1:"21",y2:"12",key:"hf2csr"}],["line",{x1:"12",x2:"12",y1:"8",y2:"3",key:"1kfi7u"}],["line",{x1:"20",x2:"20",y1:"21",y2:"16",key:"1lhrwl"}],["line",{x1:"20",x2:"20",y1:"12",y2:"3",key:"16vvfq"}],["line",{x1:"2",x2:"6",y1:"14",y2:"14",key:"1uebub"}],["line",{x1:"10",x2:"14",y1:"8",y2:"8",key:"1yglbp"}],["line",{x1:"18",x2:"22",y1:"16",y2:"16",key:"1jxqpz"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const wce=ze("Snowflake",[["line",{x1:"2",x2:"22",y1:"12",y2:"12",key:"1dnqot"}],["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"m20 16-4-4 4-4",key:"rquw4f"}],["path",{d:"m4 8 4 4-4 4",key:"12s3z9"}],["path",{d:"m16 4-4 4-4-4",key:"1tumq1"}],["path",{d:"m8 20 4-4 4 4",key:"9p200w"}]]);/** + */const Tce=ze("Snowflake",[["line",{x1:"2",x2:"22",y1:"12",y2:"12",key:"1dnqot"}],["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"m20 16-4-4 4-4",key:"rquw4f"}],["path",{d:"m4 8 4 4-4 4",key:"12s3z9"}],["path",{d:"m16 4-4 4-4-4",key:"1tumq1"}],["path",{d:"m8 20 4-4 4 4",key:"9p200w"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const GZ=ze("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/** + */const HZ=ze("Sun",[["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"m4.93 4.93 1.41 1.41",key:"149t6j"}],["path",{d:"m17.66 17.66 1.41 1.41",key:"ptbguv"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"m6.34 17.66-1.41 1.41",key:"1m8zz5"}],["path",{d:"m19.07 4.93-1.41 1.41",key:"1shlcs"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const WZ=ze("Terminal",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/** + */const UZ=ze("Terminal",[["polyline",{points:"4 17 10 11 4 5",key:"akl6gq"}],["line",{x1:"12",x2:"20",y1:"19",y2:"19",key:"q2wloq"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -374,12 +384,12 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Sce=ze("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/** + */const Cce=ze("Users",[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["path",{d:"M16 3.13a4 4 0 0 1 0 7.75",key:"1da9ce"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const HZ=ze("WifiOff",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);/** + */const ZZ=ze("WifiOff",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}],["path",{d:"M5 12.859a10 10 0 0 1 5.17-2.69",key:"1dl1wf"}],["path",{d:"M19 12.859a10 10 0 0 0-2.007-1.523",key:"4k23kn"}],["path",{d:"M2 8.82a15 15 0 0 1 4.177-2.643",key:"1grhjp"}],["path",{d:"M22 8.82a15 15 0 0 0-11.288-3.764",key:"z3jwby"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);/** * @license lucide-react v0.383.0 - ISC * * This source code is licensed under the ISC license. @@ -394,7 +404,7 @@ Error generating stack: `+a.message+` * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const km=ze("Zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);async function Di(e){const t=await fetch(e);if(!t.ok)throw new Error(`API error: ${t.status} ${t.statusText}`);return t.json()}async function SB(){return Di("/api/status")}async function Tce(){return Di("/api/health")}async function Cce(){return Di("/api/nodes")}async function Ace(){return Di("/api/edges")}async function Mce(){return Di("/api/sources")}async function UZ(){return Di("/api/alerts/active")}async function TB(e=50,t=0,r,n){const i=new URLSearchParams;return i.set("limit",e.toString()),i.set("offset",t.toString()),r&&r!=="all"&&i.set("type",r),n&&n!=="all"&&i.set("severity",n),Di(`/api/alerts/history?${i.toString()}`)}async function Pce(){return Di("/api/subscriptions")}async function ZZ(){return Di("/api/env/status")}async function YZ(){return Di("/api/env/active")}async function kce(){return Di("/api/env/swpc")}async function Lce(){return Di("/api/env/ducting")}async function Ice(){return Di("/api/regions")}function uD(){const[e,t]=H.useState(!1),[r,n]=H.useState(null),[i,a]=H.useState(null),[o,s]=H.useState(null),l=H.useRef(null),u=H.useRef(null),c=H.useRef(1e3),f=H.useCallback(()=>{var v;if(((v=l.current)==null?void 0:v.readyState)===WebSocket.OPEN)return;const d=`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/ws/live`;try{const g=new WebSocket(d);l.current=g,g.onopen=()=>{t(!0),c.current=1e3},g.onmessage=x=>{try{const _=JSON.parse(x.data);switch(s(_),_.type){case"health_update":n(_.data);break;case"alert_fired":a(_.data);break}}catch(_){console.error("Failed to parse WebSocket message:",_)}},g.onclose=()=>{t(!1),l.current=null;const x=Math.min(c.current,3e4);u.current=window.setTimeout(()=>{c.current=Math.min(x*2,3e4),f()},x)},g.onerror=()=>{g.close()};const m=setInterval(()=>{g.readyState===WebSocket.OPEN&&g.send("ping")},3e4);g.addEventListener("close",()=>{clearInterval(m)})}catch(g){console.error("Failed to create WebSocket:",g)}},[]);return H.useEffect(()=>(f(),()=>{u.current&&clearTimeout(u.current),l.current&&l.current.close()}),[f]),{connected:e,lastHealth:r,lastAlert:i,lastMessage:o}}const XZ=H.createContext(null);function Oce(){const e=H.useContext(XZ);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}function Ece(e){switch(e==null?void 0:e.toLowerCase()){case"critical":case"emergency":return{bg:"bg-red-500/10",border:"border-red-500",icon:su,iconColor:"text-red-500"};case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Bs,iconColor:"text-amber-500"};default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:OS,iconColor:"text-blue-500"}}}function Dce({toast:e,onDismiss:t,onNavigate:r}){const n=Ece(e.alert.severity),i=n.icon;return H.useEffect(()=>{const a=setTimeout(t,8e3);return()=>clearTimeout(a)},[t]),y.jsx("div",{className:`${n.bg} border ${n.border} rounded-lg shadow-lg overflow-hidden animate-slide-in cursor-pointer`,onClick:r,role:"alert",children:y.jsxs("div",{className:"flex items-start gap-3 p-4",children:[y.jsx("div",{className:`w-1 self-stretch -ml-4 -my-4 ${n.border.replace("border","bg")}`}),y.jsx(i,{size:18,className:n.iconColor}),y.jsxs("div",{className:"flex-1 min-w-0 pr-2",children:[y.jsx("div",{className:"text-sm font-medium text-slate-200 mb-0.5",children:e.alert.type.replace(/_/g," ").replace(/\b\w/g,a=>a.toUpperCase())}),y.jsx("div",{className:"text-sm text-slate-300 line-clamp-2",children:e.alert.message})]}),y.jsx("button",{onClick:a=>{a.stopPropagation(),t()},className:"text-slate-400 hover:text-slate-200 transition-colors",children:y.jsx(Xa,{size:16})})]})})}function Nce({children:e}){const[t,r]=H.useState([]),n=PZ(),i=H.useCallback(s=>{const l=`${Date.now()}-${Math.random().toString(36).substr(2,9)}`;r(u=>[...u,{id:l,alert:s}])},[]),a=H.useCallback(s=>{r(l=>l.filter(u=>u.id!==s))},[]),o=H.useCallback(()=>{n("/alerts")},[n]);return y.jsxs(XZ.Provider,{value:{addToast:i},children:[e,y.jsx("div",{className:"fixed bottom-4 right-4 z-50 flex flex-col gap-2 max-w-sm w-full pointer-events-none",children:t.map(s=>y.jsx("div",{className:"pointer-events-auto",children:y.jsx(Dce,{toast:s,onDismiss:()=>a(s.id),onNavigate:o})},s.id))})]})}const BS="meshai.restartRequired.v1";function CB(){try{const e=localStorage.getItem(BS);if(!e)return{required:!1,changedKeys:[],ts:0};const t=JSON.parse(e);return{required:!!t.required,changedKeys:Array.isArray(t.changedKeys)?t.changedKeys:[],ts:Number(t.ts)||0}}catch{return{required:!1,changedKeys:[],ts:0}}}function jce(e){const t={required:!0,changedKeys:[...new Set(e)],ts:Date.now()};localStorage.setItem(BS,JSON.stringify(t)),window.dispatchEvent(new CustomEvent("meshai:restart-required",{detail:t}))}function AB(){localStorage.removeItem(BS),window.dispatchEvent(new CustomEvent("meshai:restart-required",{detail:{required:!1,changedKeys:[],ts:0}}))}function Rce(){const[e,t]=H.useState(()=>CB()),[r,n]=H.useState(!1),[i,a]=H.useState(null);H.useEffect(()=>{const l=c=>{const f=c.detail;t(f)},u=c=>{c.key===BS&&t(CB())};return window.addEventListener("meshai:restart-required",l),window.addEventListener("storage",u),()=>{window.removeEventListener("meshai:restart-required",l),window.removeEventListener("storage",u)}},[]);const o=H.useCallback(async()=>{n(!0),a(null);try{const l=await fetch("/api/system/restart",{method:"POST"});if(!l.ok&&l.status!==202){const u=await l.json().catch(()=>({}));throw new Error(u.detail||`HTTP ${l.status}`)}AB()}catch(l){a(String(l)),n(!1)}},[]),s=H.useCallback(()=>{AB()},[]);return e.required?y.jsxs("div",{className:"bg-yellow-900/40 border-b border-yellow-700 text-yellow-100 px-4 py-2 text-sm flex items-center gap-3",children:[y.jsx(Bs,{className:"w-4 h-4 flex-shrink-0 text-yellow-300"}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsx("strong",{children:"Container restart required"}),e.changedKeys.length>0&&y.jsxs("span",{className:"text-yellow-300 ml-2",children:["(",e.changedKeys.length," key",e.changedKeys.length===1?"":"s",":"," ",y.jsxs("span",{className:"font-mono text-xs",children:[e.changedKeys.slice(0,3).join(", "),e.changedKeys.length>3?", …":""]}),")"]}),y.jsx("span",{className:"ml-2 text-yellow-300/80",children:"for these changes to take effect. Until then the runtime keeps its boot-time configuration."}),i&&y.jsx("div",{className:"text-red-400 text-xs mt-1",children:i})]}),y.jsxs("button",{onClick:o,disabled:r,className:"flex items-center gap-1 px-3 py-1 bg-yellow-700 hover:bg-yellow-600 disabled:opacity-50 rounded text-white text-xs",children:[y.jsx(bce,{className:`w-3 h-3 ${r?"animate-spin":""}`}),r?"Restarting…":"Restart now"]}),y.jsx("button",{onClick:s,className:"text-yellow-300 hover:text-white px-1",title:"Dismiss (you can still restart later)",children:y.jsx(Xa,{className:"w-4 h-4"})})]}):null}const qZ=[{path:"/",label:"Dashboard",icon:zZ},{path:"/mesh",label:"Mesh",icon:Ya},{path:"/environment",label:"Environment",icon:lu},{path:"/config",label:"Config",icon:FZ},{path:"/alerts",label:"Alerts",icon:Mm},{path:"/notifications",label:"Notifications",icon:sce},{path:"/reference",label:"Reference",icon:DZ},{path:"/adapter-config",label:"Adapter Config",icon:VZ},{path:"/gauge-sites",label:"Gauge Sites",icon:LS},{path:"/town-anchors",label:"Town Anchors",icon:mv}];function Bce(e){const t=Math.floor(e/86400),r=Math.floor(e%86400/3600),n=Math.floor(e%3600/60);return t>0?`${t}d ${r}h`:r>0?`${r}h ${n}m`:`${n}m`}function zce(e){const t=qZ.find(r=>r.path===e);return(t==null?void 0:t.label)||"Dashboard"}function $ce({children:e}){var h;const t=pv(),{connected:r,lastAlert:n}=uD(),{addToast:i}=Oce(),[a,o]=H.useState(null),[s,l]=H.useState(null);H.useEffect(()=>{if(n){const d=`${n.type}-${n.message}-${n.timestamp}`;d!==s&&(l(d),i(n))}},[n,s,i]);const[u,c]=H.useState(new Date);H.useEffect(()=>{SB().then(o).catch(console.error);const d=setInterval(()=>{SB().then(o).catch(console.error)},3e4);return()=>clearInterval(d)},[]),H.useEffect(()=>{const d=setInterval(()=>c(new Date),1e3);return()=>clearInterval(d)},[]);const f=u.toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"});return y.jsxs("div",{className:"flex h-screen overflow-hidden bg-bg text-slate-200",children:[y.jsxs("aside",{className:"w-[220px] flex-shrink-0 bg-bg-card border-r border-border flex flex-col overflow-y-auto",children:[y.jsx("div",{className:"p-5 border-b border-border",children:y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx("div",{className:"w-10 h-10 rounded-lg bg-gradient-to-br from-blue-500 to-blue-700 flex items-center justify-center text-white font-bold text-xl",children:"M"}),y.jsxs("div",{children:[y.jsx("div",{className:"font-semibold text-lg",children:"MeshAI"}),y.jsxs("div",{className:"text-xs text-slate-500 font-mono",children:["v",(a==null?void 0:a.version)||"..."]})]})]})}),y.jsx("nav",{className:"flex-1 py-4",children:qZ.map(d=>{const v=t.pathname===d.path,g=d.icon;return y.jsxs(rce,{to:d.path,className:`flex items-center gap-3 px-5 py-3 text-sm transition-colors relative ${v?"text-blue-400 bg-blue-500/10":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover"}`,children:[v&&y.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-0.5 bg-blue-500"}),y.jsx(g,{size:18}),d.label]},d.path)})}),y.jsxs("div",{className:"p-5 border-t border-border",children:[y.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[y.jsx("div",{className:`w-2 h-2 rounded-full ${a!=null&&a.connected?"bg-green-500":"bg-red-500"}`}),y.jsx("span",{className:"text-xs text-slate-400",children:a!=null&&a.connected?"Connected":"Disconnected"})]}),y.jsxs("div",{className:"text-xs text-slate-500 font-mono truncate",children:[(h=a==null?void 0:a.connection_type)==null?void 0:h.toUpperCase(),": ",a==null?void 0:a.connection_target]}),y.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:["Uptime: ",a?Bce(a.uptime_seconds):"..."]})]})]}),y.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[y.jsxs("header",{className:"h-14 flex-shrink-0 border-b border-border bg-bg-card flex items-center justify-between px-6",children:[y.jsx("h1",{className:"text-lg font-semibold",children:zce(t.pathname)}),y.jsxs("div",{className:"flex items-center gap-6",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("div",{className:`w-2 h-2 rounded-full ${r?"bg-green-500 animate-pulse-slow":"bg-slate-500"}`}),y.jsx("span",{className:"text-xs text-slate-400",children:r?"Live":"Offline"})]}),y.jsxs("div",{className:"text-sm font-mono text-slate-400",children:[f," MT"]})]})]}),y.jsxs("main",{className:"flex-1 overflow-y-auto p-6",children:[y.jsx(Rce,{}),e]})]})]})}function KZ(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t-1}var zhe=Bhe,$he=$S;function Fhe(e,t){var r=this.__data__,n=$he(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var Vhe=Fhe,Ghe=Che,Whe=Ehe,Hhe=jhe,Uhe=zhe,Zhe=Vhe;function wv(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t{var v;if(((v=l.current)==null?void 0:v.readyState)===WebSocket.OPEN)return;const d=`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/ws/live`;try{const m=new WebSocket(d);l.current=m,m.onopen=()=>{t(!0),c.current=1e3},m.onmessage=x=>{try{const _=JSON.parse(x.data);switch(s(_),_.type){case"health_update":n(_.data);break;case"alert_fired":a(_.data);break}}catch(_){console.error("Failed to parse WebSocket message:",_)}},m.onclose=()=>{t(!1),l.current=null;const x=Math.min(c.current,3e4);u.current=window.setTimeout(()=>{c.current=Math.min(x*2,3e4),f()},x)},m.onerror=()=>{m.close()};const y=setInterval(()=>{m.readyState===WebSocket.OPEN&&m.send("ping")},3e4);m.addEventListener("close",()=>{clearInterval(y)})}catch(m){console.error("Failed to create WebSocket:",m)}},[]);return H.useEffect(()=>(f(),()=>{u.current&&clearTimeout(u.current),l.current&&l.current.close()}),[f]),{connected:e,lastHealth:r,lastAlert:i,lastMessage:o}}const KZ=H.createContext(null);function Dce(){const e=H.useContext(KZ);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}function Nce(e){switch(e==null?void 0:e.toLowerCase()){case"critical":case"emergency":return{bg:"bg-red-500/10",border:"border-red-500",icon:su,iconColor:"text-red-500"};case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Bs,iconColor:"text-amber-500"};default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:ES,iconColor:"text-blue-500"}}}function jce({toast:e,onDismiss:t,onNavigate:r}){const n=Nce(e.alert.severity),i=n.icon;return H.useEffect(()=>{const a=setTimeout(t,8e3);return()=>clearTimeout(a)},[t]),g.jsx("div",{className:`${n.bg} border ${n.border} rounded-lg shadow-lg overflow-hidden animate-slide-in cursor-pointer`,onClick:r,role:"alert",children:g.jsxs("div",{className:"flex items-start gap-3 p-4",children:[g.jsx("div",{className:`w-1 self-stretch -ml-4 -my-4 ${n.border.replace("border","bg")}`}),g.jsx(i,{size:18,className:n.iconColor}),g.jsxs("div",{className:"flex-1 min-w-0 pr-2",children:[g.jsx("div",{className:"text-sm font-medium text-slate-200 mb-0.5",children:e.alert.type.replace(/_/g," ").replace(/\b\w/g,a=>a.toUpperCase())}),g.jsx("div",{className:"text-sm text-slate-300 line-clamp-2",children:e.alert.message})]}),g.jsx("button",{onClick:a=>{a.stopPropagation(),t()},className:"text-slate-400 hover:text-slate-200 transition-colors",children:g.jsx(Xa,{size:16})})]})})}function Rce({children:e}){const[t,r]=H.useState([]),n=LZ(),i=H.useCallback(s=>{const l=`${Date.now()}-${Math.random().toString(36).substr(2,9)}`;r(u=>[...u,{id:l,alert:s}])},[]),a=H.useCallback(s=>{r(l=>l.filter(u=>u.id!==s))},[]),o=H.useCallback(()=>{n("/alerts")},[n]);return g.jsxs(KZ.Provider,{value:{addToast:i},children:[e,g.jsx("div",{className:"fixed bottom-4 right-4 z-50 flex flex-col gap-2 max-w-sm w-full pointer-events-none",children:t.map(s=>g.jsx("div",{className:"pointer-events-auto",children:g.jsx(jce,{toast:s,onDismiss:()=>a(s.id),onNavigate:o})},s.id))})]})}const BS="meshai.restartRequired.v1";function MB(){try{const e=localStorage.getItem(BS);if(!e)return{required:!1,changedKeys:[],ts:0};const t=JSON.parse(e);return{required:!!t.required,changedKeys:Array.isArray(t.changedKeys)?t.changedKeys:[],ts:Number(t.ts)||0}}catch{return{required:!1,changedKeys:[],ts:0}}}function Bce(e){const t={required:!0,changedKeys:[...new Set(e)],ts:Date.now()};localStorage.setItem(BS,JSON.stringify(t)),window.dispatchEvent(new CustomEvent("meshai:restart-required",{detail:t}))}function PB(){localStorage.removeItem(BS),window.dispatchEvent(new CustomEvent("meshai:restart-required",{detail:{required:!1,changedKeys:[],ts:0}}))}function zce(){const[e,t]=H.useState(()=>MB()),[r,n]=H.useState(!1),[i,a]=H.useState(null);H.useEffect(()=>{const l=c=>{const f=c.detail;t(f)},u=c=>{c.key===BS&&t(MB())};return window.addEventListener("meshai:restart-required",l),window.addEventListener("storage",u),()=>{window.removeEventListener("meshai:restart-required",l),window.removeEventListener("storage",u)}},[]);const o=H.useCallback(async()=>{n(!0),a(null);try{const l=await fetch("/api/system/restart",{method:"POST"});if(!l.ok&&l.status!==202){const u=await l.json().catch(()=>({}));throw new Error(u.detail||`HTTP ${l.status}`)}PB()}catch(l){a(String(l)),n(!1)}},[]),s=H.useCallback(()=>{PB()},[]);return e.required?g.jsxs("div",{className:"bg-yellow-900/40 border-b border-yellow-700 text-yellow-100 px-4 py-2 text-sm flex items-center gap-3",children:[g.jsx(Bs,{className:"w-4 h-4 flex-shrink-0 text-yellow-300"}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsx("strong",{children:"Container restart required"}),e.changedKeys.length>0&&g.jsxs("span",{className:"text-yellow-300 ml-2",children:["(",e.changedKeys.length," key",e.changedKeys.length===1?"":"s",":"," ",g.jsxs("span",{className:"font-mono text-xs",children:[e.changedKeys.slice(0,3).join(", "),e.changedKeys.length>3?", …":""]}),")"]}),g.jsx("span",{className:"ml-2 text-yellow-300/80",children:"for these changes to take effect. Until then the runtime keeps its boot-time configuration. Restart-required keys include anything under Config → environmental (feed_source, central URL), the LLM backend swap, and the dispatcher cold-start grace window. Other keys take effect on the next handler call."}),i&&g.jsx("div",{className:"text-red-400 text-xs mt-1",children:i})]}),g.jsxs("button",{onClick:o,disabled:r,className:"flex items-center gap-1 px-3 py-1 bg-yellow-700 hover:bg-yellow-600 disabled:opacity-50 rounded text-white text-xs",children:[g.jsx(Sce,{className:`w-3 h-3 ${r?"animate-spin":""}`}),r?"Restarting…":"Restart now"]}),g.jsx("button",{onClick:s,className:"text-yellow-300 hover:text-white px-1",title:"Dismiss (you can still restart later)",children:g.jsx(Xa,{className:"w-4 h-4"})})]}):null}const JZ=[{path:"/",label:"Dashboard",icon:VZ},{path:"/mesh",label:"Mesh",icon:Ya},{path:"/environment",label:"Environment",icon:lu},{path:"/config",label:"Config",icon:WZ},{path:"/alerts",label:"Alerts",icon:Mm},{path:"/notifications",label:"Notifications",icon:uce},{path:"/reference",label:"Reference",icon:jZ},{path:"/adapter-config",label:"Adapter Config",icon:fD},{path:"/gauge-sites",label:"Gauge Sites",icon:LS},{path:"/town-anchors",label:"Town Anchors",icon:mv}];function $ce(e){const t=Math.floor(e/86400),r=Math.floor(e%86400/3600),n=Math.floor(e%3600/60);return t>0?`${t}d ${r}h`:r>0?`${r}h ${n}m`:`${n}m`}function Fce(e){const t=JZ.find(r=>r.path===e);return(t==null?void 0:t.label)||"Dashboard"}function Vce({children:e}){var h;const t=pv(),{connected:r,lastAlert:n}=hD(),{addToast:i}=Dce(),[a,o]=H.useState(null),[s,l]=H.useState(null);H.useEffect(()=>{if(n){const d=`${n.type}-${n.message}-${n.timestamp}`;d!==s&&(l(d),i(n))}},[n,s,i]);const[u,c]=H.useState(new Date);H.useEffect(()=>{CB().then(o).catch(console.error);const d=setInterval(()=>{CB().then(o).catch(console.error)},3e4);return()=>clearInterval(d)},[]),H.useEffect(()=>{const d=setInterval(()=>c(new Date),1e3);return()=>clearInterval(d)},[]);const f=u.toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"});return g.jsxs("div",{className:"flex h-screen overflow-hidden bg-bg text-slate-200",children:[g.jsxs("aside",{className:"w-[220px] flex-shrink-0 bg-bg-card border-r border-border flex flex-col overflow-y-auto",children:[g.jsx("div",{className:"p-5 border-b border-border",children:g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsx("div",{className:"w-10 h-10 rounded-lg bg-gradient-to-br from-blue-500 to-blue-700 flex items-center justify-center text-white font-bold text-xl",children:"M"}),g.jsxs("div",{children:[g.jsx("div",{className:"font-semibold text-lg",children:"MeshAI"}),g.jsxs("div",{className:"text-xs text-slate-500 font-mono",children:["v",(a==null?void 0:a.version)||"..."]})]})]})}),g.jsx("nav",{className:"flex-1 py-4",children:JZ.map(d=>{const v=t.pathname===d.path,m=d.icon;return g.jsxs(ice,{to:d.path,className:`flex items-center gap-3 px-5 py-3 text-sm transition-colors relative ${v?"text-blue-400 bg-blue-500/10":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover"}`,children:[v&&g.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-0.5 bg-blue-500"}),g.jsx(m,{size:18}),d.label]},d.path)})}),g.jsxs("div",{className:"p-5 border-t border-border",children:[g.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[g.jsx("div",{className:`w-2 h-2 rounded-full ${a!=null&&a.connected?"bg-green-500":"bg-red-500"}`}),g.jsx("span",{className:"text-xs text-slate-400",children:a!=null&&a.connected?"Connected":"Disconnected"})]}),g.jsxs("div",{className:"text-xs text-slate-500 font-mono truncate",children:[(h=a==null?void 0:a.connection_type)==null?void 0:h.toUpperCase(),": ",a==null?void 0:a.connection_target]}),g.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:["Uptime: ",a?$ce(a.uptime_seconds):"..."]})]})]}),g.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[g.jsxs("header",{className:"h-14 flex-shrink-0 border-b border-border bg-bg-card flex items-center justify-between px-6",children:[g.jsx("h1",{className:"text-lg font-semibold",children:Fce(t.pathname)}),g.jsxs("div",{className:"flex items-center gap-6",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("div",{className:`w-2 h-2 rounded-full ${r?"bg-green-500 animate-pulse-slow":"bg-slate-500"}`}),g.jsx("span",{className:"text-xs text-slate-400",children:r?"Live":"Offline"})]}),g.jsxs("div",{className:"text-sm font-mono text-slate-400",children:[f," MT"]})]})]}),g.jsxs("main",{className:"flex-1 overflow-y-auto p-6",children:[g.jsx(zce,{}),e]})]})]})}function QZ(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t-1}var Fhe=$he,Vhe=$S;function Ghe(e,t){var r=this.__data__,n=Vhe(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var Whe=Ghe,Hhe=Mhe,Uhe=Nhe,Zhe=Bhe,Yhe=Fhe,Xhe=Whe;function wv(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0?1:-1},Ac=function(t){return rf(t)&&t.indexOf("%")===t.length-1},we=function(t){return dve(t)&&!Tv(t)},mve=function(t){return dt(t)},Vr=function(t){return we(t)||rf(t)},yve=0,Cv=function(t){var r=++yve;return"".concat(t||"").concat(r)},nf=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!we(t)&&!rf(t))return n;var a;if(Ac(t)){var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return Tv(a)&&(a=n),i&&a>r&&(a=r),a},Th=function(t){if(!t)return null;var r=Object.keys(t);return r&&r.length?t[r[0]]:null},xve=function(t){if(!Array.isArray(t))return!1;for(var r=t.length,n={},i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Ave(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Sk(e){"@babel/helpers - typeof";return Sk=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Sk(e)}var BB={click:"onClick",mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",mouseout:"onMouseOut",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",touchcancel:"onTouchCancel",touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart",contextmenu:"onContextMenu",dblclick:"onDoubleClick"},Cs=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},zB=null,bA=null,bD=function e(t){if(t===zB&&Array.isArray(bA))return bA;var r=[];return H.Children.forEach(t,function(n){dt(n)||(lve.isFragment(n)?r=r.concat(e(n.props.children)):r.push(n))}),bA=r,zB=t,r};function sa(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(function(i){return Cs(i)}):n=[Cs(t)],bD(e).forEach(function(i){var a=oa(i,"type.displayName")||oa(i,"type.name");n.indexOf(a)!==-1&&r.push(i)}),r}function yi(e,t){var r=sa(e,t);return r&&r[0]}var $B=function(t){if(!t||!t.props)return!1;var r=t.props,n=r.width,i=r.height;return!(!we(n)||n<=0||!we(i)||i<=0)},Mve=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColormatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-url","foreignObject","g","glyph","glyphRef","hkern","image","line","lineGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],Pve=function(t){return t&&t.type&&rf(t.type)&&Mve.indexOf(t.type)>=0},cY=function(t){return t&&Sk(t)==="object"&&"clipDot"in t},kve=function(t,r,n,i){var a,o=(a=_A==null?void 0:_A[i])!==null&&a!==void 0?a:[];return r.startsWith("data-")||!ft(t)&&(i&&o.includes(r)||wve.includes(r))||n&&_D.includes(r)},ct=function(t,r,n){if(!t||typeof t=="function"||typeof t=="boolean")return null;var i=t;if(H.isValidElement(t)&&(i=t.props),!_v(i))return null;var a={};return Object.keys(i).forEach(function(o){var s;kve((s=i)===null||s===void 0?void 0:s[o],o,r,n)&&(a[o]=i[o])}),a},Tk=function e(t,r){if(t===r)return!0;var n=H.Children.count(t);if(n!==H.Children.count(r))return!1;if(n===0)return!0;if(n===1)return FB(Array.isArray(t)?t[0]:t,Array.isArray(r)?r[0]:r);for(var i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Dve(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Ak(e){var t=e.children,r=e.width,n=e.height,i=e.viewBox,a=e.className,o=e.style,s=e.title,l=e.desc,u=Eve(e,Ove),c=i||{width:r,height:n,x:0,y:0},f=_t("recharts-surface",a);return Q.createElement("svg",Ck({},ct(u,!0,"svg"),{className:f,width:r,height:n,style:o,viewBox:"".concat(c.x," ").concat(c.y," ").concat(c.width," ").concat(c.height)}),Q.createElement("title",null,s),Q.createElement("desc",null,l),t)}var Nve=["children","className"];function Mk(){return Mk=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Rve(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var Yt=Q.forwardRef(function(e,t){var r=e.children,n=e.className,i=jve(e,Nve),a=_t("recharts-layer",n);return Q.createElement("g",Mk({className:a},ct(i,!0),{ref:t}),r)}),$c=function(t,r){for(var n=arguments.length,i=new Array(n>2?n-2:0),a=2;ai?0:i+t),r=r>i?i:r,r<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(i);++n=n?e:$ve(e,t,r)}var Vve=Fve,Gve="\\ud800-\\udfff",Wve="\\u0300-\\u036f",Hve="\\ufe20-\\ufe2f",Uve="\\u20d0-\\u20ff",Zve=Wve+Hve+Uve,Yve="\\ufe0e\\ufe0f",Xve="\\u200d",qve=RegExp("["+Xve+Gve+Zve+Yve+"]");function Kve(e){return qve.test(e)}var fY=Kve;function Jve(e){return e.split("")}var Qve=Jve,hY="\\ud800-\\udfff",epe="\\u0300-\\u036f",tpe="\\ufe20-\\ufe2f",rpe="\\u20d0-\\u20ff",npe=epe+tpe+rpe,ipe="\\ufe0e\\ufe0f",ape="["+hY+"]",Pk="["+npe+"]",kk="\\ud83c[\\udffb-\\udfff]",ope="(?:"+Pk+"|"+kk+")",dY="[^"+hY+"]",vY="(?:\\ud83c[\\udde6-\\uddff]){2}",pY="[\\ud800-\\udbff][\\udc00-\\udfff]",spe="\\u200d",gY=ope+"?",mY="["+ipe+"]?",lpe="(?:"+spe+"(?:"+[dY,vY,pY].join("|")+")"+mY+gY+")*",upe=mY+gY+lpe,cpe="(?:"+[dY+Pk+"?",Pk,vY,pY,ape].join("|")+")",fpe=RegExp(kk+"(?="+kk+")|"+cpe+upe,"g");function hpe(e){return e.match(fpe)||[]}var dpe=hpe,vpe=Qve,ppe=fY,gpe=dpe;function mpe(e){return ppe(e)?gpe(e):vpe(e)}var ype=mpe,xpe=Vve,_pe=fY,bpe=ype,wpe=iY;function Spe(e){return function(t){t=wpe(t);var r=_pe(t)?bpe(t):void 0,n=r?r[0]:t.charAt(0),i=r?xpe(r,1).join(""):t.slice(1);return n[e]()+i}}var Tpe=Spe,Cpe=Tpe,Ape=Cpe("toUpperCase"),Mpe=Ape;const eT=$t(Mpe);function Ut(e){return function(){return e}}const yY=Math.cos,t1=Math.sin,Qa=Math.sqrt,r1=Math.PI,tT=2*r1,Lk=Math.PI,Ik=2*Lk,cc=1e-6,Ppe=Ik-cc;function xY(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return xY;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;icc)if(!(Math.abs(f*l-u*c)>cc)||!a)this._append`L${this._x1=t},${this._y1=r}`;else{let d=n-o,v=i-s,g=l*l+u*u,m=d*d+v*v,x=Math.sqrt(g),_=Math.sqrt(h),b=a*Math.tan((Lk-Math.acos((g+h-m)/(2*x*_)))/2),S=b/_,T=b/x;Math.abs(S-1)>cc&&this._append`L${t+S*c},${r+S*f}`,this._append`A${a},${a},0,0,${+(f*d>c*v)},${this._x1=t+T*l},${this._y1=r+T*u}`}}arc(t,r,n,i,a,o){if(t=+t,r=+r,n=+n,o=!!o,n<0)throw new Error(`negative radius: ${n}`);let s=n*Math.cos(i),l=n*Math.sin(i),u=t+s,c=r+l,f=1^o,h=o?i-a:a-i;this._x1===null?this._append`M${u},${c}`:(Math.abs(this._x1-u)>cc||Math.abs(this._y1-c)>cc)&&this._append`L${u},${c}`,n&&(h<0&&(h=h%Ik+Ik),h>Ppe?this._append`A${n},${n},0,1,${f},${t-s},${r-l}A${n},${n},0,1,${f},${this._x1=u},${this._y1=c}`:h>cc&&this._append`A${n},${n},0,${+(h>=Lk)},${f},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};function wD(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new Lpe(t)}function SD(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function _Y(e){this._context=e}_Y.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function rT(e){return new _Y(e)}function bY(e){return e[0]}function wY(e){return e[1]}function SY(e,t){var r=Ut(!0),n=null,i=rT,a=null,o=wD(s);e=typeof e=="function"?e:e===void 0?bY:Ut(e),t=typeof t=="function"?t:t===void 0?wY:Ut(t);function s(l){var u,c=(l=SD(l)).length,f,h=!1,d;for(n==null&&(a=i(d=o())),u=0;u<=c;++u)!(u=d;--v)s.point(b[v],S[v]);s.lineEnd(),s.areaEnd()}x&&(b[h]=+e(m,h,f),S[h]=+t(m,h,f),s.point(n?+n(m,h,f):b[h],r?+r(m,h,f):S[h]))}if(_)return s=null,_+""||null}function c(){return SY().defined(i).curve(o).context(a)}return u.x=function(f){return arguments.length?(e=typeof f=="function"?f:Ut(+f),n=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:Ut(+f),u):e},u.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:Ut(+f),u):n},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:Ut(+f),r=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:Ut(+f),u):t},u.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:Ut(+f),u):r},u.lineX0=u.lineY0=function(){return c().x(e).y(t)},u.lineY1=function(){return c().x(e).y(r)},u.lineX1=function(){return c().x(n).y(t)},u.defined=function(f){return arguments.length?(i=typeof f=="function"?f:Ut(!!f),u):i},u.curve=function(f){return arguments.length?(o=f,a!=null&&(s=o(a)),u):o},u.context=function(f){return arguments.length?(f==null?a=s=null:s=o(a=f),u):a},u}class TY{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function Ipe(e){return new TY(e,!0)}function Ope(e){return new TY(e,!1)}const TD={draw(e,t){const r=Qa(t/r1);e.moveTo(r,0),e.arc(0,0,r,0,tT)}},Epe={draw(e,t){const r=Qa(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}},CY=Qa(1/3),Dpe=CY*2,Npe={draw(e,t){const r=Qa(t/Dpe),n=r*CY;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},jpe={draw(e,t){const r=Qa(t),n=-r/2;e.rect(n,n,r,r)}},Rpe=.8908130915292852,AY=t1(r1/10)/t1(7*r1/10),Bpe=t1(tT/10)*AY,zpe=-yY(tT/10)*AY,$pe={draw(e,t){const r=Qa(t*Rpe),n=Bpe*r,i=zpe*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=tT*a/5,s=yY(o),l=t1(o);e.lineTo(l*r,-s*r),e.lineTo(s*n-l*i,l*n+s*i)}e.closePath()}},wA=Qa(3),Fpe={draw(e,t){const r=-Qa(t/(wA*3));e.moveTo(0,r*2),e.lineTo(-wA*r,-r),e.lineTo(wA*r,-r),e.closePath()}},$i=-.5,Fi=Qa(3)/2,Ok=1/Qa(12),Vpe=(Ok/2+1)*3,Gpe={draw(e,t){const r=Qa(t/Vpe),n=r/2,i=r*Ok,a=n,o=r*Ok+r,s=-a,l=o;e.moveTo(n,i),e.lineTo(a,o),e.lineTo(s,l),e.lineTo($i*n-Fi*i,Fi*n+$i*i),e.lineTo($i*a-Fi*o,Fi*a+$i*o),e.lineTo($i*s-Fi*l,Fi*s+$i*l),e.lineTo($i*n+Fi*i,$i*i-Fi*n),e.lineTo($i*a+Fi*o,$i*o-Fi*a),e.lineTo($i*s+Fi*l,$i*l-Fi*s),e.closePath()}};function Wpe(e,t){let r=null,n=wD(i);e=typeof e=="function"?e:Ut(e||TD),t=typeof t=="function"?t:Ut(t===void 0?64:+t);function i(){let a;if(r||(r=a=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),a)return r=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Ut(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Ut(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function n1(){}function i1(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function MY(e){this._context=e}MY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:i1(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:i1(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Hpe(e){return new MY(e)}function PY(e){this._context=e}PY.prototype={areaStart:n1,areaEnd:n1,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:i1(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Upe(e){return new PY(e)}function kY(e){this._context=e}kY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:i1(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Zpe(e){return new kY(e)}function LY(e){this._context=e}LY.prototype={areaStart:n1,areaEnd:n1,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function Ype(e){return new LY(e)}function GB(e){return e<0?-1:1}function WB(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),o=(r-e._y1)/(i||n<0&&-0),s=(a*i+o*n)/(n+i);return(GB(a)+GB(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function HB(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function SA(e,t,r){var n=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-n)/3;e._context.bezierCurveTo(n+s,i+s*t,a-s,o-s*r,a,o)}function a1(e){this._context=e}a1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:SA(this,this._t0,HB(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,SA(this,HB(this,r=WB(this,e,t)),r);break;default:SA(this,this._t0,r=WB(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function IY(e){this._context=new OY(e)}(IY.prototype=Object.create(a1.prototype)).point=function(e,t){a1.prototype.point.call(this,t,e)};function OY(e){this._context=e}OY.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)}};function Xpe(e){return new a1(e)}function qpe(e){return new IY(e)}function EY(e){this._context=e}EY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=UB(e),i=UB(t),a=0,o=1;o=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function Jpe(e){return new nT(e,.5)}function Qpe(e){return new nT(e,0)}function ege(e){return new nT(e,1)}function Td(e,t){if((o=e.length)>1)for(var r=1,n,i,a=e[t[0]],o,s=a.length;r=0;)r[t]=t;return r}function tge(e,t){return e[t]}function rge(e){const t=[];return t.key=e,t}function nge(){var e=Ut([]),t=Ek,r=Td,n=tge;function i(a){var o=Array.from(e.apply(this,arguments),rge),s,l=o.length,u=-1,c;for(const f of a)for(s=0,++u;s0){for(var r,n,i=0,a=e[0].length,o;i0){for(var r=0,n=e[t[0]],i,a=n.length;r0)||!((a=(i=e[t[0]]).length)>0))){for(var r=0,n=1,i,a,o;n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function hge(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var DY={symbolCircle:TD,symbolCross:Epe,symbolDiamond:Npe,symbolSquare:jpe,symbolStar:$pe,symbolTriangle:Fpe,symbolWye:Gpe},dge=Math.PI/180,vge=function(t){var r="symbol".concat(eT(t));return DY[r]||TD},pge=function(t,r,n){if(r==="area")return t;switch(n){case"cross":return 5*t*t/9;case"diamond":return .5*t*t/Math.sqrt(3);case"square":return t*t;case"star":{var i=18*dge;return 1.25*t*t*(Math.tan(i)-Math.tan(i*2)*Math.pow(Math.tan(i),2))}case"triangle":return Math.sqrt(3)*t*t/4;case"wye":return(21-10*Math.sqrt(3))*t*t/8;default:return Math.PI*t*t/4}},gge=function(t,r){DY["symbol".concat(eT(t))]=r},CD=function(t){var r=t.type,n=r===void 0?"circle":r,i=t.size,a=i===void 0?64:i,o=t.sizeType,s=o===void 0?"area":o,l=fge(t,sge),u=YB(YB({},l),{},{type:n,size:a,sizeType:s}),c=function(){var m=vge(n),x=Wpe().type(m).size(pge(a,s,n));return x()},f=u.className,h=u.cx,d=u.cy,v=ct(u,!0);return h===+h&&d===+d&&a===+a?Q.createElement("path",Dk({},v,{className:_t("recharts-symbols",f),transform:"translate(".concat(h,", ").concat(d,")"),d:c()})):null};CD.registerSymbol=gge;function Cd(e){"@babel/helpers - typeof";return Cd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cd(e)}function Nk(){return Nk=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?1:-1},Ac=function(t){return nf(t)&&t.indexOf("%")===t.length-1},Te=function(t){return pve(t)&&!Tv(t)},xve=function(t){return dt(t)},Gr=function(t){return Te(t)||nf(t)},_ve=0,Cv=function(t){var r=++_ve;return"".concat(t||"").concat(r)},af=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Te(t)&&!nf(t))return n;var a;if(Ac(t)){var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return Tv(a)&&(a=n),i&&a>r&&(a=r),a},Ch=function(t){if(!t)return null;var r=Object.keys(t);return r&&r.length?t[r[0]]:null},bve=function(t){if(!Array.isArray(t))return!1;for(var r=t.length,n={},i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Pve(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Tk(e){"@babel/helpers - typeof";return Tk=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Tk(e)}var $B={click:"onClick",mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",mouseout:"onMouseOut",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",touchcancel:"onTouchCancel",touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart",contextmenu:"onContextMenu",dblclick:"onDoubleClick"},Cs=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},FB=null,bA=null,TD=function e(t){if(t===FB&&Array.isArray(bA))return bA;var r=[];return H.Children.forEach(t,function(n){dt(n)||(cve.isFragment(n)?r=r.concat(e(n.props.children)):r.push(n))}),bA=r,FB=t,r};function sa(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(function(i){return Cs(i)}):n=[Cs(t)],TD(e).forEach(function(i){var a=oa(i,"type.displayName")||oa(i,"type.name");n.indexOf(a)!==-1&&r.push(i)}),r}function yi(e,t){var r=sa(e,t);return r&&r[0]}var VB=function(t){if(!t||!t.props)return!1;var r=t.props,n=r.width,i=r.height;return!(!Te(n)||n<=0||!Te(i)||i<=0)},kve=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColormatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-url","foreignObject","g","glyph","glyphRef","hkern","image","line","lineGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],Lve=function(t){return t&&t.type&&nf(t.type)&&kve.indexOf(t.type)>=0},hY=function(t){return t&&Tk(t)==="object"&&"clipDot"in t},Ive=function(t,r,n,i){var a,o=(a=_A==null?void 0:_A[i])!==null&&a!==void 0?a:[];return r.startsWith("data-")||!ft(t)&&(i&&o.includes(r)||Tve.includes(r))||n&&SD.includes(r)},ct=function(t,r,n){if(!t||typeof t=="function"||typeof t=="boolean")return null;var i=t;if(H.isValidElement(t)&&(i=t.props),!_v(i))return null;var a={};return Object.keys(i).forEach(function(o){var s;Ive((s=i)===null||s===void 0?void 0:s[o],o,r,n)&&(a[o]=i[o])}),a},Ck=function e(t,r){if(t===r)return!0;var n=H.Children.count(t);if(n!==H.Children.count(r))return!1;if(n===0)return!0;if(n===1)return GB(Array.isArray(t)?t[0]:t,Array.isArray(r)?r[0]:r);for(var i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function jve(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Mk(e){var t=e.children,r=e.width,n=e.height,i=e.viewBox,a=e.className,o=e.style,s=e.title,l=e.desc,u=Nve(e,Dve),c=i||{width:r,height:n,x:0,y:0},f=_t("recharts-surface",a);return Q.createElement("svg",Ak({},ct(u,!0,"svg"),{className:f,width:r,height:n,style:o,viewBox:"".concat(c.x," ").concat(c.y," ").concat(c.width," ").concat(c.height)}),Q.createElement("title",null,s),Q.createElement("desc",null,l),t)}var Rve=["children","className"];function Pk(){return Pk=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function zve(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var Yt=Q.forwardRef(function(e,t){var r=e.children,n=e.className,i=Bve(e,Rve),a=_t("recharts-layer",n);return Q.createElement("g",Pk({className:a},ct(i,!0),{ref:t}),r)}),$c=function(t,r){for(var n=arguments.length,i=new Array(n>2?n-2:0),a=2;ai?0:i+t),r=r>i?i:r,r<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var a=Array(i);++n=n?e:Vve(e,t,r)}var Wve=Gve,Hve="\\ud800-\\udfff",Uve="\\u0300-\\u036f",Zve="\\ufe20-\\ufe2f",Yve="\\u20d0-\\u20ff",Xve=Uve+Zve+Yve,qve="\\ufe0e\\ufe0f",Kve="\\u200d",Jve=RegExp("["+Kve+Hve+Xve+qve+"]");function Qve(e){return Jve.test(e)}var dY=Qve;function epe(e){return e.split("")}var tpe=epe,vY="\\ud800-\\udfff",rpe="\\u0300-\\u036f",npe="\\ufe20-\\ufe2f",ipe="\\u20d0-\\u20ff",ape=rpe+npe+ipe,ope="\\ufe0e\\ufe0f",spe="["+vY+"]",kk="["+ape+"]",Lk="\\ud83c[\\udffb-\\udfff]",lpe="(?:"+kk+"|"+Lk+")",pY="[^"+vY+"]",gY="(?:\\ud83c[\\udde6-\\uddff]){2}",mY="[\\ud800-\\udbff][\\udc00-\\udfff]",upe="\\u200d",yY=lpe+"?",xY="["+ope+"]?",cpe="(?:"+upe+"(?:"+[pY,gY,mY].join("|")+")"+xY+yY+")*",fpe=xY+yY+cpe,hpe="(?:"+[pY+kk+"?",kk,gY,mY,spe].join("|")+")",dpe=RegExp(Lk+"(?="+Lk+")|"+hpe+fpe,"g");function vpe(e){return e.match(dpe)||[]}var ppe=vpe,gpe=tpe,mpe=dY,ype=ppe;function xpe(e){return mpe(e)?ype(e):gpe(e)}var _pe=xpe,bpe=Wve,wpe=dY,Spe=_pe,Tpe=oY;function Cpe(e){return function(t){t=Tpe(t);var r=wpe(t)?Spe(t):void 0,n=r?r[0]:t.charAt(0),i=r?bpe(r,1).join(""):t.slice(1);return n[e]()+i}}var Ape=Cpe,Mpe=Ape,Ppe=Mpe("toUpperCase"),kpe=Ppe;const eT=$t(kpe);function Ut(e){return function(){return e}}const _Y=Math.cos,t1=Math.sin,Qa=Math.sqrt,r1=Math.PI,tT=2*r1,Ik=Math.PI,Ek=2*Ik,cc=1e-6,Lpe=Ek-cc;function bY(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return bY;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;icc)if(!(Math.abs(f*l-u*c)>cc)||!a)this._append`L${this._x1=t},${this._y1=r}`;else{let d=n-o,v=i-s,m=l*l+u*u,y=d*d+v*v,x=Math.sqrt(m),_=Math.sqrt(h),b=a*Math.tan((Ik-Math.acos((m+h-y)/(2*x*_)))/2),S=b/_,T=b/x;Math.abs(S-1)>cc&&this._append`L${t+S*c},${r+S*f}`,this._append`A${a},${a},0,0,${+(f*d>c*v)},${this._x1=t+T*l},${this._y1=r+T*u}`}}arc(t,r,n,i,a,o){if(t=+t,r=+r,n=+n,o=!!o,n<0)throw new Error(`negative radius: ${n}`);let s=n*Math.cos(i),l=n*Math.sin(i),u=t+s,c=r+l,f=1^o,h=o?i-a:a-i;this._x1===null?this._append`M${u},${c}`:(Math.abs(this._x1-u)>cc||Math.abs(this._y1-c)>cc)&&this._append`L${u},${c}`,n&&(h<0&&(h=h%Ek+Ek),h>Lpe?this._append`A${n},${n},0,1,${f},${t-s},${r-l}A${n},${n},0,1,${f},${this._x1=u},${this._y1=c}`:h>cc&&this._append`A${n},${n},0,${+(h>=Ik)},${f},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}};function CD(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new Epe(t)}function AD(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function wY(e){this._context=e}wY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function rT(e){return new wY(e)}function SY(e){return e[0]}function TY(e){return e[1]}function CY(e,t){var r=Ut(!0),n=null,i=rT,a=null,o=CD(s);e=typeof e=="function"?e:e===void 0?SY:Ut(e),t=typeof t=="function"?t:t===void 0?TY:Ut(t);function s(l){var u,c=(l=AD(l)).length,f,h=!1,d;for(n==null&&(a=i(d=o())),u=0;u<=c;++u)!(u=d;--v)s.point(b[v],S[v]);s.lineEnd(),s.areaEnd()}x&&(b[h]=+e(y,h,f),S[h]=+t(y,h,f),s.point(n?+n(y,h,f):b[h],r?+r(y,h,f):S[h]))}if(_)return s=null,_+""||null}function c(){return CY().defined(i).curve(o).context(a)}return u.x=function(f){return arguments.length?(e=typeof f=="function"?f:Ut(+f),n=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:Ut(+f),u):e},u.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:Ut(+f),u):n},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:Ut(+f),r=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:Ut(+f),u):t},u.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:Ut(+f),u):r},u.lineX0=u.lineY0=function(){return c().x(e).y(t)},u.lineY1=function(){return c().x(e).y(r)},u.lineX1=function(){return c().x(n).y(t)},u.defined=function(f){return arguments.length?(i=typeof f=="function"?f:Ut(!!f),u):i},u.curve=function(f){return arguments.length?(o=f,a!=null&&(s=o(a)),u):o},u.context=function(f){return arguments.length?(f==null?a=s=null:s=o(a=f),u):a},u}class AY{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function Ope(e){return new AY(e,!0)}function Dpe(e){return new AY(e,!1)}const MD={draw(e,t){const r=Qa(t/r1);e.moveTo(r,0),e.arc(0,0,r,0,tT)}},Npe={draw(e,t){const r=Qa(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}},MY=Qa(1/3),jpe=MY*2,Rpe={draw(e,t){const r=Qa(t/jpe),n=r*MY;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},Bpe={draw(e,t){const r=Qa(t),n=-r/2;e.rect(n,n,r,r)}},zpe=.8908130915292852,PY=t1(r1/10)/t1(7*r1/10),$pe=t1(tT/10)*PY,Fpe=-_Y(tT/10)*PY,Vpe={draw(e,t){const r=Qa(t*zpe),n=$pe*r,i=Fpe*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=tT*a/5,s=_Y(o),l=t1(o);e.lineTo(l*r,-s*r),e.lineTo(s*n-l*i,l*n+s*i)}e.closePath()}},wA=Qa(3),Gpe={draw(e,t){const r=-Qa(t/(wA*3));e.moveTo(0,r*2),e.lineTo(-wA*r,-r),e.lineTo(wA*r,-r),e.closePath()}},$i=-.5,Fi=Qa(3)/2,Ok=1/Qa(12),Wpe=(Ok/2+1)*3,Hpe={draw(e,t){const r=Qa(t/Wpe),n=r/2,i=r*Ok,a=n,o=r*Ok+r,s=-a,l=o;e.moveTo(n,i),e.lineTo(a,o),e.lineTo(s,l),e.lineTo($i*n-Fi*i,Fi*n+$i*i),e.lineTo($i*a-Fi*o,Fi*a+$i*o),e.lineTo($i*s-Fi*l,Fi*s+$i*l),e.lineTo($i*n+Fi*i,$i*i-Fi*n),e.lineTo($i*a+Fi*o,$i*o-Fi*a),e.lineTo($i*s+Fi*l,$i*l-Fi*s),e.closePath()}};function Upe(e,t){let r=null,n=CD(i);e=typeof e=="function"?e:Ut(e||MD),t=typeof t=="function"?t:Ut(t===void 0?64:+t);function i(){let a;if(r||(r=a=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),a)return r=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:Ut(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Ut(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function n1(){}function i1(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function kY(e){this._context=e}kY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:i1(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:i1(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Zpe(e){return new kY(e)}function LY(e){this._context=e}LY.prototype={areaStart:n1,areaEnd:n1,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:i1(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Ype(e){return new LY(e)}function IY(e){this._context=e}IY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:i1(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Xpe(e){return new IY(e)}function EY(e){this._context=e}EY.prototype={areaStart:n1,areaEnd:n1,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function qpe(e){return new EY(e)}function HB(e){return e<0?-1:1}function UB(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),o=(r-e._y1)/(i||n<0&&-0),s=(a*i+o*n)/(n+i);return(HB(a)+HB(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function ZB(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function SA(e,t,r){var n=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-n)/3;e._context.bezierCurveTo(n+s,i+s*t,a-s,o-s*r,a,o)}function a1(e){this._context=e}a1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:SA(this,this._t0,ZB(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,SA(this,ZB(this,r=UB(this,e,t)),r);break;default:SA(this,this._t0,r=UB(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function OY(e){this._context=new DY(e)}(OY.prototype=Object.create(a1.prototype)).point=function(e,t){a1.prototype.point.call(this,t,e)};function DY(e){this._context=e}DY.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)}};function Kpe(e){return new a1(e)}function Jpe(e){return new OY(e)}function NY(e){this._context=e}NY.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=YB(e),i=YB(t),a=0,o=1;o=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function ege(e){return new nT(e,.5)}function tge(e){return new nT(e,0)}function rge(e){return new nT(e,1)}function Td(e,t){if((o=e.length)>1)for(var r=1,n,i,a=e[t[0]],o,s=a.length;r=0;)r[t]=t;return r}function nge(e,t){return e[t]}function ige(e){const t=[];return t.key=e,t}function age(){var e=Ut([]),t=Dk,r=Td,n=nge;function i(a){var o=Array.from(e.apply(this,arguments),ige),s,l=o.length,u=-1,c;for(const f of a)for(s=0,++u;s0){for(var r,n,i=0,a=e[0].length,o;i0){for(var r=0,n=e[t[0]],i,a=n.length;r0)||!((a=(i=e[t[0]]).length)>0))){for(var r=0,n=1,i,a,o;n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function vge(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var jY={symbolCircle:MD,symbolCross:Npe,symbolDiamond:Rpe,symbolSquare:Bpe,symbolStar:Vpe,symbolTriangle:Gpe,symbolWye:Hpe},pge=Math.PI/180,gge=function(t){var r="symbol".concat(eT(t));return jY[r]||MD},mge=function(t,r,n){if(r==="area")return t;switch(n){case"cross":return 5*t*t/9;case"diamond":return .5*t*t/Math.sqrt(3);case"square":return t*t;case"star":{var i=18*pge;return 1.25*t*t*(Math.tan(i)-Math.tan(i*2)*Math.pow(Math.tan(i),2))}case"triangle":return Math.sqrt(3)*t*t/4;case"wye":return(21-10*Math.sqrt(3))*t*t/8;default:return Math.PI*t*t/4}},yge=function(t,r){jY["symbol".concat(eT(t))]=r},PD=function(t){var r=t.type,n=r===void 0?"circle":r,i=t.size,a=i===void 0?64:i,o=t.sizeType,s=o===void 0?"area":o,l=dge(t,uge),u=qB(qB({},l),{},{type:n,size:a,sizeType:s}),c=function(){var y=gge(n),x=Upe().type(y).size(mge(a,s,n));return x()},f=u.className,h=u.cx,d=u.cy,v=ct(u,!0);return h===+h&&d===+d&&a===+a?Q.createElement("path",Nk({},v,{className:_t("recharts-symbols",f),transform:"translate(".concat(h,", ").concat(d,")"),d:c()})):null};PD.registerSymbol=yge;function Cd(e){"@babel/helpers - typeof";return Cd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cd(e)}function jk(){return jk=Object.assign?Object.assign.bind():function(e){for(var t=1;t`);var _=d.inactive?u:d.color;return Q.createElement("li",Nk({className:m,style:f,key:"legend-item-".concat(v)},e1(n.props,d,v)),Q.createElement(Ak,{width:o,height:o,viewBox:c,style:h},n.renderIcon(d)),Q.createElement("span",{className:"recharts-legend-item-text",style:{color:_}},g?g(x,d,v):x))})}},{key:"render",value:function(){var n=this.props,i=n.payload,a=n.layout,o=n.align;if(!i||!i.length)return null;var s={padding:0,margin:0,textAlign:a==="horizontal"?o:"left"};return Q.createElement("ul",{className:"recharts-default-legend",style:s},this.renderItems())}}])}(H.PureComponent);Im(AD,"displayName","Legend");Im(AD,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var Age=FS;function Mge(){this.__data__=new Age,this.size=0}var Pge=Mge;function kge(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var Lge=kge;function Ige(e){return this.__data__.get(e)}var Oge=Ige;function Ege(e){return this.__data__.has(e)}var Dge=Ege,Nge=FS,jge=dD,Rge=vD,Bge=200;function zge(e,t){var r=this.__data__;if(r instanceof Nge){var n=r.__data__;if(!jge||n.lengths))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var f=-1,h=!0,d=r&sme?new nme:void 0;for(a.set(e,t),a.set(t,e);++f-1&&e%1==0&&e-1&&e%1==0&&e<=fye}var LD=hye,dye=Ks,vye=LD,pye=Js,gye="[object Arguments]",mye="[object Array]",yye="[object Boolean]",xye="[object Date]",_ye="[object Error]",bye="[object Function]",wye="[object Map]",Sye="[object Number]",Tye="[object Object]",Cye="[object RegExp]",Aye="[object Set]",Mye="[object String]",Pye="[object WeakMap]",kye="[object ArrayBuffer]",Lye="[object DataView]",Iye="[object Float32Array]",Oye="[object Float64Array]",Eye="[object Int8Array]",Dye="[object Int16Array]",Nye="[object Int32Array]",jye="[object Uint8Array]",Rye="[object Uint8ClampedArray]",Bye="[object Uint16Array]",zye="[object Uint32Array]",qt={};qt[Iye]=qt[Oye]=qt[Eye]=qt[Dye]=qt[Nye]=qt[jye]=qt[Rye]=qt[Bye]=qt[zye]=!0;qt[gye]=qt[mye]=qt[kye]=qt[yye]=qt[Lye]=qt[xye]=qt[_ye]=qt[bye]=qt[wye]=qt[Sye]=qt[Tye]=qt[Cye]=qt[Aye]=qt[Mye]=qt[Pye]=!1;function $ye(e){return pye(e)&&vye(e.length)&&!!qt[dye(e)]}var Fye=$ye;function Vye(e){return function(t){return e(t)}}var HY=Vye,u1={exports:{}};u1.exports;(function(e,t){var r=JZ,n=t&&!t.nodeType&&t,i=n&&!0&&e&&!e.nodeType&&e,a=i&&i.exports===n,o=a&&r.process,s=function(){try{var l=i&&i.require&&i.require("util").types;return l||o&&o.binding&&o.binding("util")}catch{}}();e.exports=s})(u1,u1.exports);var Gye=u1.exports,Wye=Fye,Hye=HY,tz=Gye,rz=tz&&tz.isTypedArray,Uye=rz?Hye(rz):Wye,UY=Uye,Zye=qme,Yye=PD,Xye=ci,qye=WY,Kye=kD,Jye=UY,Qye=Object.prototype,e0e=Qye.hasOwnProperty;function t0e(e,t){var r=Xye(e),n=!r&&Yye(e),i=!r&&!n&&qye(e),a=!r&&!n&&!i&&Jye(e),o=r||n||i||a,s=o?Zye(e.length,String):[],l=s.length;for(var u in e)(t||e0e.call(e,u))&&!(o&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Kye(u,l)))&&s.push(u);return s}var r0e=t0e,n0e=Object.prototype;function i0e(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||n0e;return e===r}var a0e=i0e;function o0e(e,t){return function(r){return e(t(r))}}var ZY=o0e,s0e=ZY,l0e=s0e(Object.keys,Object),u0e=l0e,c0e=a0e,f0e=u0e,h0e=Object.prototype,d0e=h0e.hasOwnProperty;function v0e(e){if(!c0e(e))return f0e(e);var t=[];for(var r in Object(e))d0e.call(e,r)&&r!="constructor"&&t.push(r);return t}var p0e=v0e,g0e=fD,m0e=LD;function y0e(e){return e!=null&&m0e(e.length)&&!g0e(e)}var iT=y0e,x0e=r0e,_0e=p0e,b0e=iT;function w0e(e){return b0e(e)?x0e(e):_0e(e)}var ID=w0e,S0e=Bme,T0e=Yme,C0e=ID;function A0e(e){return S0e(e,C0e,T0e)}var M0e=A0e,nz=M0e,P0e=1,k0e=Object.prototype,L0e=k0e.hasOwnProperty;function I0e(e,t,r,n,i,a){var o=r&P0e,s=nz(e),l=s.length,u=nz(t),c=u.length;if(l!=c&&!o)return!1;for(var f=l;f--;){var h=s[f];if(!(o?h in t:L0e.call(t,h)))return!1}var d=a.get(e),v=a.get(t);if(d&&v)return d==t&&v==e;var g=!0;a.set(e,t),a.set(t,e);for(var m=o;++f-1}var L_e=k_e;function I_e(e,t,r){for(var n=-1,i=e==null?0:e.length;++n=U_e){var u=t?null:W_e(e);if(u)return H_e(u);o=!1,i=G_e,l=new $_e}else l=t?[]:s;e:for(;++n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function lbe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function ube(e){return e.value}function cbe(e,t){if(Q.isValidElement(e))return Q.cloneElement(e,t);if(typeof e=="function")return Q.createElement(e,t);t.ref;var r=sbe(t,Q_e);return Q.createElement(AD,r)}var xz=1,ad=function(e){function t(){var r;ebe(this,t);for(var n=arguments.length,i=new Array(n),a=0;axz||Math.abs(i.height-this.lastBoundingBox.height)>xz)&&(this.lastBoundingBox.width=i.width,this.lastBoundingBox.height=i.height,n&&n(i)):(this.lastBoundingBox.width!==-1||this.lastBoundingBox.height!==-1)&&(this.lastBoundingBox.width=-1,this.lastBoundingBox.height=-1,n&&n(null))}},{key:"getBBoxSnapshot",value:function(){return this.lastBoundingBox.width>=0&&this.lastBoundingBox.height>=0?ns({},this.lastBoundingBox):{width:0,height:0}}},{key:"getDefaultPosition",value:function(n){var i=this.props,a=i.layout,o=i.align,s=i.verticalAlign,l=i.margin,u=i.chartWidth,c=i.chartHeight,f,h;if(!n||(n.left===void 0||n.left===null)&&(n.right===void 0||n.right===null))if(o==="center"&&a==="vertical"){var d=this.getBBoxSnapshot();f={left:((u||0)-d.width)/2}}else f=o==="right"?{right:l&&l.right||0}:{left:l&&l.left||0};if(!n||(n.top===void 0||n.top===null)&&(n.bottom===void 0||n.bottom===null))if(s==="middle"){var v=this.getBBoxSnapshot();h={top:((c||0)-v.height)/2}}else h=s==="bottom"?{bottom:l&&l.bottom||0}:{top:l&&l.top||0};return ns(ns({},f),h)}},{key:"render",value:function(){var n=this,i=this.props,a=i.content,o=i.width,s=i.height,l=i.wrapperStyle,u=i.payloadUniqBy,c=i.payload,f=ns(ns({position:"absolute",width:o||"auto",height:s||"auto"},this.getDefaultPosition(l)),l);return Q.createElement("div",{className:"recharts-legend-wrapper",style:f,ref:function(d){n.wrapperNode=d}},cbe(a,ns(ns({},this.props),{},{payload:QY(c,u,ube)})))}}],[{key:"getWithHeight",value:function(n,i){var a=ns(ns({},this.defaultProps),n.props),o=a.layout;return o==="vertical"&&we(n.props.height)?{height:n.props.height}:o==="horizontal"?{width:n.props.width||i}:null}}])}(H.PureComponent);aT(ad,"displayName","Legend");aT(ad,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var _z=Qy,fbe=PD,hbe=ci,bz=_z?_z.isConcatSpreadable:void 0;function dbe(e){return hbe(e)||fbe(e)||!!(bz&&e&&e[bz])}var vbe=dbe,pbe=VY,gbe=vbe;function rX(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=gbe),i||(i=[]);++a0&&r(s)?t>1?rX(s,t-1,r,n,i):pbe(i,s):n||(i[i.length]=s)}return i}var nX=rX;function mbe(e){return function(t,r,n){for(var i=-1,a=Object(t),o=n(t),s=o.length;s--;){var l=o[e?s:++i];if(r(a[l],l,a)===!1)break}return t}}var ybe=mbe,xbe=ybe,_be=xbe(),bbe=_be,wbe=bbe,Sbe=ID;function Tbe(e,t){return e&&wbe(e,t,Sbe)}var iX=Tbe,Cbe=iT;function Abe(e,t){return function(r,n){if(r==null)return r;if(!Cbe(r))return e(r,n);for(var i=r.length,a=t?i:-1,o=Object(r);(t?a--:++at||a&&o&&l&&!s&&!u||n&&o&&l||!r&&l||!i)return 1;if(!n&&!a&&!u&&e=s)return l;var u=r[n];return l*(u=="desc"?-1:1)}}return e.index-t.index}var $be=zbe,MA=gD,Fbe=mD,Vbe=kv,Gbe=aX,Wbe=Nbe,Hbe=HY,Ube=$be,Zbe=Pv,Ybe=ci;function Xbe(e,t,r){t.length?t=MA(t,function(a){return Ybe(a)?function(o){return Fbe(o,a.length===1?a[0]:a)}:a}):t=[Zbe];var n=-1;t=MA(t,Hbe(Vbe));var i=Gbe(e,function(a,o,s){var l=MA(t,function(u){return u(a)});return{criteria:l,index:++n,value:a}});return Wbe(i,function(a,o){return Ube(a,o,r)})}var qbe=Xbe;function Kbe(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var Jbe=Kbe,Qbe=Jbe,Sz=Math.max;function e1e(e,t,r){return t=Sz(t===void 0?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=Sz(n.length-t,0),o=Array(a);++i0){if(++t>=c1e)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var v1e=d1e,p1e=u1e,g1e=v1e,m1e=g1e(p1e),y1e=m1e,x1e=Pv,_1e=t1e,b1e=y1e;function w1e(e,t){return b1e(_1e(e,t,x1e),e+"")}var S1e=w1e,T1e=hD,C1e=iT,A1e=kD,M1e=xu;function P1e(e,t,r){if(!M1e(r))return!1;var n=typeof t;return(n=="number"?C1e(r)&&A1e(t,r.length):n=="string"&&t in r)?T1e(r[t],e):!1}var oT=P1e,k1e=nX,L1e=qbe,I1e=S1e,Cz=oT,O1e=I1e(function(e,t){if(e==null)return[];var r=t.length;return r>1&&Cz(e,t[0],t[1])?t=[]:r>2&&Cz(t[0],t[1],t[2])&&(t=[t[0]]),L1e(e,k1e(t,1),[])}),E1e=O1e;const DD=$t(E1e);function Om(e){"@babel/helpers - typeof";return Om=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Om(e)}function Gk(){return Gk=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=t.x),"".concat(Tp,"-left"),we(r)&&t&&we(t.x)&&r=t.y),"".concat(Tp,"-top"),we(n)&&t&&we(t.y)&&ng?Math.max(c,l[n]):Math.max(f,l[n])}function Y1e(e){var t=e.translateX,r=e.translateY,n=e.useTranslate3d;return{transform:n?"translate3d(".concat(t,"px, ").concat(r,"px, 0)"):"translate(".concat(t,"px, ").concat(r,"px)")}}function X1e(e){var t=e.allowEscapeViewBox,r=e.coordinate,n=e.offsetTopLeft,i=e.position,a=e.reverseDirection,o=e.tooltipBox,s=e.useTranslate3d,l=e.viewBox,u,c,f;return o.height>0&&o.width>0&&r?(c=Pz({allowEscapeViewBox:t,coordinate:r,key:"x",offsetTopLeft:n,position:i,reverseDirection:a,tooltipDimension:o.width,viewBox:l,viewBoxDimension:l.width}),f=Pz({allowEscapeViewBox:t,coordinate:r,key:"y",offsetTopLeft:n,position:i,reverseDirection:a,tooltipDimension:o.height,viewBox:l,viewBoxDimension:l.height}),u=Y1e({translateX:c,translateY:f,useTranslate3d:s})):u=U1e,{cssProperties:u,cssClasses:Z1e({translateX:c,translateY:f,coordinate:r})}}function Md(e){"@babel/helpers - typeof";return Md=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Md(e)}function kz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Lz(e){for(var t=1;tIz||Math.abs(n.height-this.state.lastBoundingBox.height)>Iz)&&this.setState({lastBoundingBox:{width:n.width,height:n.height}})}else(this.state.lastBoundingBox.width!==-1||this.state.lastBoundingBox.height!==-1)&&this.setState({lastBoundingBox:{width:-1,height:-1}})}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown),this.updateBBox()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown)}},{key:"componentDidUpdate",value:function(){var n,i;this.props.active&&this.updateBBox(),this.state.dismissed&&(((n=this.props.coordinate)===null||n===void 0?void 0:n.x)!==this.state.dismissedAtCoordinate.x||((i=this.props.coordinate)===null||i===void 0?void 0:i.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}},{key:"render",value:function(){var n=this,i=this.props,a=i.active,o=i.allowEscapeViewBox,s=i.animationDuration,l=i.animationEasing,u=i.children,c=i.coordinate,f=i.hasPayload,h=i.isAnimationActive,d=i.offset,v=i.position,g=i.reverseDirection,m=i.useTranslate3d,x=i.viewBox,_=i.wrapperStyle,b=X1e({allowEscapeViewBox:o,coordinate:c,offsetTopLeft:d,position:v,reverseDirection:g,tooltipBox:this.state.lastBoundingBox,useTranslate3d:m,viewBox:x}),S=b.cssClasses,T=b.cssProperties,C=Lz(Lz({transition:h&&a?"transform ".concat(s,"ms ").concat(l):void 0},T),{},{pointerEvents:"none",visibility:!this.state.dismissed&&a&&f?"visible":"hidden",position:"absolute",top:0,left:0},_);return Q.createElement("div",{tabIndex:-1,className:S,style:C,ref:function(P){n.wrapperNode=P}},u)}}])}(H.PureComponent),awe=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},Sf={isSsr:awe()};function Pd(e){"@babel/helpers - typeof";return Pd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Pd(e)}function Oz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Ez(e){for(var t=1;t0;return Q.createElement(iwe,{allowEscapeViewBox:o,animationDuration:s,animationEasing:l,isAnimationActive:h,active:a,coordinate:c,hasPayload:C,offset:d,position:m,reverseDirection:x,useTranslate3d:_,viewBox:b,wrapperStyle:S},pwe(u,Ez(Ez({},this.props),{},{payload:T})))}}])}(H.PureComponent);ND(cs,"displayName","Tooltip");ND(cs,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!Sf.isSsr,itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,viewBox:{x:0,y:0,height:0,width:0},wrapperStyle:{}});var gwe=Xo,mwe=function(){return gwe.Date.now()},ywe=mwe,xwe=/\s/;function _we(e){for(var t=e.length;t--&&xwe.test(e.charAt(t)););return t}var bwe=_we,wwe=bwe,Swe=/^\s+/;function Twe(e){return e&&e.slice(0,wwe(e)+1).replace(Swe,"")}var Cwe=Twe,Awe=Cwe,Dz=xu,Mwe=xv,Nz=NaN,Pwe=/^[-+]0x[0-9a-f]+$/i,kwe=/^0b[01]+$/i,Lwe=/^0o[0-7]+$/i,Iwe=parseInt;function Owe(e){if(typeof e=="number")return e;if(Mwe(e))return Nz;if(Dz(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=Dz(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=Awe(e);var r=kwe.test(e);return r||Lwe.test(e)?Iwe(e.slice(2),r?2:8):Pwe.test(e)?Nz:+e}var fX=Owe,Ewe=xu,kA=ywe,jz=fX,Dwe="Expected a function",Nwe=Math.max,jwe=Math.min;function Rwe(e,t,r){var n,i,a,o,s,l,u=0,c=!1,f=!1,h=!0;if(typeof e!="function")throw new TypeError(Dwe);t=jz(t)||0,Ewe(r)&&(c=!!r.leading,f="maxWait"in r,a=f?Nwe(jz(r.maxWait)||0,t):a,h="trailing"in r?!!r.trailing:h);function d(C){var A=n,P=i;return n=i=void 0,u=C,o=e.apply(P,A),o}function v(C){return u=C,s=setTimeout(x,t),c?d(C):o}function g(C){var A=C-l,P=C-u,I=t-A;return f?jwe(I,a-P):I}function m(C){var A=C-l,P=C-u;return l===void 0||A>=t||A<0||f&&P>=a}function x(){var C=kA();if(m(C))return _(C);s=setTimeout(x,g(C))}function _(C){return s=void 0,h&&n?d(C):(n=i=void 0,o)}function b(){s!==void 0&&clearTimeout(s),u=0,n=l=i=s=void 0}function S(){return s===void 0?o:_(kA())}function T(){var C=kA(),A=m(C);if(n=arguments,i=this,l=C,A){if(s===void 0)return v(l);if(f)return clearTimeout(s),s=setTimeout(x,t),d(l)}return s===void 0&&(s=setTimeout(x,t)),o}return T.cancel=b,T.flush=S,T}var Bwe=Rwe,zwe=Bwe,$we=xu,Fwe="Expected a function";function Vwe(e,t,r){var n=!0,i=!0;if(typeof e!="function")throw new TypeError(Fwe);return $we(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),zwe(e,t,{leading:n,maxWait:t,trailing:i})}var Gwe=Vwe;const hX=$t(Gwe);function Dm(e){"@babel/helpers - typeof";return Dm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dm(e)}function Rz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function px(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&(N=hX(N,g,{trailing:!0,leading:!1}));var z=new ResizeObserver(N),V=T.current.getBoundingClientRect(),F=V.width,$=V.height;return E(F,$),z.observe(T.current),function(){z.disconnect()}},[E,g]);var D=H.useMemo(function(){var N=I.containerWidth,z=I.containerHeight;if(N<0||z<0)return null;$c(Ac(o)||Ac(l),`The width(%s) and height(%s) are both fixed numbers, + A`).concat(o,",").concat(o,",0,1,1,").concat(s,",").concat(a),className:"recharts-legend-icon"});if(n.type==="rect")return Q.createElement("path",{stroke:"none",fill:l,d:"M0,".concat(Vi/8,"h").concat(Vi,"v").concat(Vi*3/4,"h").concat(-Vi,"z"),className:"recharts-legend-icon"});if(Q.isValidElement(n.legendIcon)){var u=xge({},n);return delete u.legendIcon,Q.cloneElement(n.legendIcon,u)}return Q.createElement(PD,{fill:l,cx:a,cy:a,size:Vi,sizeType:"diameter",type:n.type})}},{key:"renderItems",value:function(){var n=this,i=this.props,a=i.payload,o=i.iconSize,s=i.layout,l=i.formatter,u=i.inactiveColor,c={x:0,y:0,width:Vi,height:Vi},f={display:s==="horizontal"?"inline-block":"block",marginRight:10},h={display:"inline-block",verticalAlign:"middle",marginRight:4};return a.map(function(d,v){var m=d.formatter||l,y=_t(Im(Im({"recharts-legend-item":!0},"legend-item-".concat(v),!0),"inactive",d.inactive));if(d.type==="none")return null;var x=ft(d.value)?null:d.value;$c(!ft(d.value),`The name property is also required when using a function for the dataKey of a chart's cartesian components. Ex: `);var _=d.inactive?u:d.color;return Q.createElement("li",jk({className:y,style:f,key:"legend-item-".concat(v)},e1(n.props,d,v)),Q.createElement(Mk,{width:o,height:o,viewBox:c,style:h},n.renderIcon(d)),Q.createElement("span",{className:"recharts-legend-item-text",style:{color:_}},m?m(x,d,v):x))})}},{key:"render",value:function(){var n=this.props,i=n.payload,a=n.layout,o=n.align;if(!i||!i.length)return null;var s={padding:0,margin:0,textAlign:a==="horizontal"?o:"left"};return Q.createElement("ul",{className:"recharts-default-legend",style:s},this.renderItems())}}])}(H.PureComponent);Im(kD,"displayName","Legend");Im(kD,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var Pge=FS;function kge(){this.__data__=new Pge,this.size=0}var Lge=kge;function Ige(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var Ege=Ige;function Oge(e){return this.__data__.get(e)}var Dge=Oge;function Nge(e){return this.__data__.has(e)}var jge=Nge,Rge=FS,Bge=gD,zge=mD,$ge=200;function Fge(e,t){var r=this.__data__;if(r instanceof Rge){var n=r.__data__;if(!Bge||n.length<$ge-1)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new zge(n)}return r.set(e,t),this.size=r.size,this}var Vge=Fge,Gge=FS,Wge=Lge,Hge=Ege,Uge=Dge,Zge=jge,Yge=Vge;function Av(e){var t=this.__data__=new Gge(e);this.size=t.size}Av.prototype.clear=Wge;Av.prototype.delete=Hge;Av.prototype.get=Uge;Av.prototype.has=Zge;Av.prototype.set=Yge;var zY=Av,Xge="__lodash_hash_undefined__";function qge(e){return this.__data__.set(e,Xge),this}var Kge=qge;function Jge(e){return this.__data__.has(e)}var Qge=Jge,eme=mD,tme=Kge,rme=Qge;function s1(e){var t=-1,r=e==null?0:e.length;for(this.__data__=new eme;++ts))return!1;var u=a.get(e),c=a.get(t);if(u&&c)return u==t&&c==e;var f=-1,h=!0,d=r&ume?new ame:void 0;for(a.set(e,t),a.set(t,e);++f-1&&e%1==0&&e-1&&e%1==0&&e<=dye}var OD=vye,pye=Ks,gye=OD,mye=Js,yye="[object Arguments]",xye="[object Array]",_ye="[object Boolean]",bye="[object Date]",wye="[object Error]",Sye="[object Function]",Tye="[object Map]",Cye="[object Number]",Aye="[object Object]",Mye="[object RegExp]",Pye="[object Set]",kye="[object String]",Lye="[object WeakMap]",Iye="[object ArrayBuffer]",Eye="[object DataView]",Oye="[object Float32Array]",Dye="[object Float64Array]",Nye="[object Int8Array]",jye="[object Int16Array]",Rye="[object Int32Array]",Bye="[object Uint8Array]",zye="[object Uint8ClampedArray]",$ye="[object Uint16Array]",Fye="[object Uint32Array]",qt={};qt[Oye]=qt[Dye]=qt[Nye]=qt[jye]=qt[Rye]=qt[Bye]=qt[zye]=qt[$ye]=qt[Fye]=!0;qt[yye]=qt[xye]=qt[Iye]=qt[_ye]=qt[Eye]=qt[bye]=qt[wye]=qt[Sye]=qt[Tye]=qt[Cye]=qt[Aye]=qt[Mye]=qt[Pye]=qt[kye]=qt[Lye]=!1;function Vye(e){return mye(e)&&gye(e.length)&&!!qt[pye(e)]}var Gye=Vye;function Wye(e){return function(t){return e(t)}}var ZY=Wye,u1={exports:{}};u1.exports;(function(e,t){var r=eY,n=t&&!t.nodeType&&t,i=n&&!0&&e&&!e.nodeType&&e,a=i&&i.exports===n,o=a&&r.process,s=function(){try{var l=i&&i.require&&i.require("util").types;return l||o&&o.binding&&o.binding("util")}catch{}}();e.exports=s})(u1,u1.exports);var Hye=u1.exports,Uye=Gye,Zye=ZY,nz=Hye,iz=nz&&nz.isTypedArray,Yye=iz?Zye(iz):Uye,YY=Yye,Xye=Jme,qye=ID,Kye=fi,Jye=UY,Qye=ED,e0e=YY,t0e=Object.prototype,r0e=t0e.hasOwnProperty;function n0e(e,t){var r=Kye(e),n=!r&&qye(e),i=!r&&!n&&Jye(e),a=!r&&!n&&!i&&e0e(e),o=r||n||i||a,s=o?Xye(e.length,String):[],l=s.length;for(var u in e)(t||r0e.call(e,u))&&!(o&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Qye(u,l)))&&s.push(u);return s}var i0e=n0e,a0e=Object.prototype;function o0e(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||a0e;return e===r}var s0e=o0e;function l0e(e,t){return function(r){return e(t(r))}}var XY=l0e,u0e=XY,c0e=u0e(Object.keys,Object),f0e=c0e,h0e=s0e,d0e=f0e,v0e=Object.prototype,p0e=v0e.hasOwnProperty;function g0e(e){if(!h0e(e))return d0e(e);var t=[];for(var r in Object(e))p0e.call(e,r)&&r!="constructor"&&t.push(r);return t}var m0e=g0e,y0e=vD,x0e=OD;function _0e(e){return e!=null&&x0e(e.length)&&!y0e(e)}var iT=_0e,b0e=i0e,w0e=m0e,S0e=iT;function T0e(e){return S0e(e)?b0e(e):w0e(e)}var DD=T0e,C0e=$me,A0e=qme,M0e=DD;function P0e(e){return C0e(e,M0e,A0e)}var k0e=P0e,az=k0e,L0e=1,I0e=Object.prototype,E0e=I0e.hasOwnProperty;function O0e(e,t,r,n,i,a){var o=r&L0e,s=az(e),l=s.length,u=az(t),c=u.length;if(l!=c&&!o)return!1;for(var f=l;f--;){var h=s[f];if(!(o?h in t:E0e.call(t,h)))return!1}var d=a.get(e),v=a.get(t);if(d&&v)return d==t&&v==e;var m=!0;a.set(e,t),a.set(t,e);for(var y=o;++f-1}var E_e=I_e;function O_e(e,t,r){for(var n=-1,i=e==null?0:e.length;++n=Y_e){var u=t?null:U_e(e);if(u)return Z_e(u);o=!1,i=H_e,l=new V_e}else l=t?[]:s;e:for(;++n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function cbe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function fbe(e){return e.value}function hbe(e,t){if(Q.isValidElement(e))return Q.cloneElement(e,t);if(typeof e=="function")return Q.createElement(e,t);t.ref;var r=ube(t,tbe);return Q.createElement(kD,r)}var bz=1,od=function(e){function t(){var r;rbe(this,t);for(var n=arguments.length,i=new Array(n),a=0;abz||Math.abs(i.height-this.lastBoundingBox.height)>bz)&&(this.lastBoundingBox.width=i.width,this.lastBoundingBox.height=i.height,n&&n(i)):(this.lastBoundingBox.width!==-1||this.lastBoundingBox.height!==-1)&&(this.lastBoundingBox.width=-1,this.lastBoundingBox.height=-1,n&&n(null))}},{key:"getBBoxSnapshot",value:function(){return this.lastBoundingBox.width>=0&&this.lastBoundingBox.height>=0?ns({},this.lastBoundingBox):{width:0,height:0}}},{key:"getDefaultPosition",value:function(n){var i=this.props,a=i.layout,o=i.align,s=i.verticalAlign,l=i.margin,u=i.chartWidth,c=i.chartHeight,f,h;if(!n||(n.left===void 0||n.left===null)&&(n.right===void 0||n.right===null))if(o==="center"&&a==="vertical"){var d=this.getBBoxSnapshot();f={left:((u||0)-d.width)/2}}else f=o==="right"?{right:l&&l.right||0}:{left:l&&l.left||0};if(!n||(n.top===void 0||n.top===null)&&(n.bottom===void 0||n.bottom===null))if(s==="middle"){var v=this.getBBoxSnapshot();h={top:((c||0)-v.height)/2}}else h=s==="bottom"?{bottom:l&&l.bottom||0}:{top:l&&l.top||0};return ns(ns({},f),h)}},{key:"render",value:function(){var n=this,i=this.props,a=i.content,o=i.width,s=i.height,l=i.wrapperStyle,u=i.payloadUniqBy,c=i.payload,f=ns(ns({position:"absolute",width:o||"auto",height:s||"auto"},this.getDefaultPosition(l)),l);return Q.createElement("div",{className:"recharts-legend-wrapper",style:f,ref:function(d){n.wrapperNode=d}},hbe(a,ns(ns({},this.props),{},{payload:tX(c,u,fbe)})))}}],[{key:"getWithHeight",value:function(n,i){var a=ns(ns({},this.defaultProps),n.props),o=a.layout;return o==="vertical"&&Te(n.props.height)?{height:n.props.height}:o==="horizontal"?{width:n.props.width||i}:null}}])}(H.PureComponent);aT(od,"displayName","Legend");aT(od,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var wz=Qy,dbe=ID,vbe=fi,Sz=wz?wz.isConcatSpreadable:void 0;function pbe(e){return vbe(e)||dbe(e)||!!(Sz&&e&&e[Sz])}var gbe=pbe,mbe=WY,ybe=gbe;function iX(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=ybe),i||(i=[]);++a0&&r(s)?t>1?iX(s,t-1,r,n,i):mbe(i,s):n||(i[i.length]=s)}return i}var aX=iX;function xbe(e){return function(t,r,n){for(var i=-1,a=Object(t),o=n(t),s=o.length;s--;){var l=o[e?s:++i];if(r(a[l],l,a)===!1)break}return t}}var _be=xbe,bbe=_be,wbe=bbe(),Sbe=wbe,Tbe=Sbe,Cbe=DD;function Abe(e,t){return e&&Tbe(e,t,Cbe)}var oX=Abe,Mbe=iT;function Pbe(e,t){return function(r,n){if(r==null)return r;if(!Mbe(r))return e(r,n);for(var i=r.length,a=t?i:-1,o=Object(r);(t?a--:++at||a&&o&&l&&!s&&!u||n&&o&&l||!r&&l||!i)return 1;if(!n&&!a&&!u&&e=s)return l;var u=r[n];return l*(u=="desc"?-1:1)}}return e.index-t.index}var Vbe=Fbe,MA=xD,Gbe=_D,Wbe=kv,Hbe=sX,Ube=Rbe,Zbe=ZY,Ybe=Vbe,Xbe=Pv,qbe=fi;function Kbe(e,t,r){t.length?t=MA(t,function(a){return qbe(a)?function(o){return Gbe(o,a.length===1?a[0]:a)}:a}):t=[Xbe];var n=-1;t=MA(t,Zbe(Wbe));var i=Hbe(e,function(a,o,s){var l=MA(t,function(u){return u(a)});return{criteria:l,index:++n,value:a}});return Ube(i,function(a,o){return Ybe(a,o,r)})}var Jbe=Kbe;function Qbe(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}var e1e=Qbe,t1e=e1e,Cz=Math.max;function r1e(e,t,r){return t=Cz(t===void 0?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=Cz(n.length-t,0),o=Array(a);++i0){if(++t>=h1e)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var g1e=p1e,m1e=f1e,y1e=g1e,x1e=y1e(m1e),_1e=x1e,b1e=Pv,w1e=n1e,S1e=_1e;function T1e(e,t){return S1e(w1e(e,t,b1e),e+"")}var C1e=T1e,A1e=pD,M1e=iT,P1e=ED,k1e=xu;function L1e(e,t,r){if(!k1e(r))return!1;var n=typeof t;return(n=="number"?M1e(r)&&P1e(t,r.length):n=="string"&&t in r)?A1e(r[t],e):!1}var oT=L1e,I1e=aX,E1e=Jbe,O1e=C1e,Mz=oT,D1e=O1e(function(e,t){if(e==null)return[];var r=t.length;return r>1&&Mz(e,t[0],t[1])?t=[]:r>2&&Mz(t[0],t[1],t[2])&&(t=[t[0]]),E1e(e,I1e(t,1),[])}),N1e=D1e;const RD=$t(N1e);function Em(e){"@babel/helpers - typeof";return Em=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Em(e)}function Wk(){return Wk=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=t.x),"".concat(Tp,"-left"),Te(r)&&t&&Te(t.x)&&r=t.y),"".concat(Tp,"-top"),Te(n)&&t&&Te(t.y)&&nm?Math.max(c,l[n]):Math.max(f,l[n])}function q1e(e){var t=e.translateX,r=e.translateY,n=e.useTranslate3d;return{transform:n?"translate3d(".concat(t,"px, ").concat(r,"px, 0)"):"translate(".concat(t,"px, ").concat(r,"px)")}}function K1e(e){var t=e.allowEscapeViewBox,r=e.coordinate,n=e.offsetTopLeft,i=e.position,a=e.reverseDirection,o=e.tooltipBox,s=e.useTranslate3d,l=e.viewBox,u,c,f;return o.height>0&&o.width>0&&r?(c=Lz({allowEscapeViewBox:t,coordinate:r,key:"x",offsetTopLeft:n,position:i,reverseDirection:a,tooltipDimension:o.width,viewBox:l,viewBoxDimension:l.width}),f=Lz({allowEscapeViewBox:t,coordinate:r,key:"y",offsetTopLeft:n,position:i,reverseDirection:a,tooltipDimension:o.height,viewBox:l,viewBoxDimension:l.height}),u=q1e({translateX:c,translateY:f,useTranslate3d:s})):u=Y1e,{cssProperties:u,cssClasses:X1e({translateX:c,translateY:f,coordinate:r})}}function Md(e){"@babel/helpers - typeof";return Md=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Md(e)}function Iz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Ez(e){for(var t=1;tOz||Math.abs(n.height-this.state.lastBoundingBox.height)>Oz)&&this.setState({lastBoundingBox:{width:n.width,height:n.height}})}else(this.state.lastBoundingBox.width!==-1||this.state.lastBoundingBox.height!==-1)&&this.setState({lastBoundingBox:{width:-1,height:-1}})}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown),this.updateBBox()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown)}},{key:"componentDidUpdate",value:function(){var n,i;this.props.active&&this.updateBBox(),this.state.dismissed&&(((n=this.props.coordinate)===null||n===void 0?void 0:n.x)!==this.state.dismissedAtCoordinate.x||((i=this.props.coordinate)===null||i===void 0?void 0:i.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}},{key:"render",value:function(){var n=this,i=this.props,a=i.active,o=i.allowEscapeViewBox,s=i.animationDuration,l=i.animationEasing,u=i.children,c=i.coordinate,f=i.hasPayload,h=i.isAnimationActive,d=i.offset,v=i.position,m=i.reverseDirection,y=i.useTranslate3d,x=i.viewBox,_=i.wrapperStyle,b=K1e({allowEscapeViewBox:o,coordinate:c,offsetTopLeft:d,position:v,reverseDirection:m,tooltipBox:this.state.lastBoundingBox,useTranslate3d:y,viewBox:x}),S=b.cssClasses,T=b.cssProperties,C=Ez(Ez({transition:h&&a?"transform ".concat(s,"ms ").concat(l):void 0},T),{},{pointerEvents:"none",visibility:!this.state.dismissed&&a&&f?"visible":"hidden",position:"absolute",top:0,left:0},_);return Q.createElement("div",{tabIndex:-1,className:S,style:C,ref:function(P){n.wrapperNode=P}},u)}}])}(H.PureComponent),swe=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},Tf={isSsr:swe()};function Pd(e){"@babel/helpers - typeof";return Pd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Pd(e)}function Dz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Nz(e){for(var t=1;t0;return Q.createElement(owe,{allowEscapeViewBox:o,animationDuration:s,animationEasing:l,isAnimationActive:h,active:a,coordinate:c,hasPayload:C,offset:d,position:y,reverseDirection:x,useTranslate3d:_,viewBox:b,wrapperStyle:S},mwe(u,Nz(Nz({},this.props),{},{payload:T})))}}])}(H.PureComponent);BD(cs,"displayName","Tooltip");BD(cs,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!Tf.isSsr,itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,viewBox:{x:0,y:0,height:0,width:0},wrapperStyle:{}});var ywe=Xo,xwe=function(){return ywe.Date.now()},_we=xwe,bwe=/\s/;function wwe(e){for(var t=e.length;t--&&bwe.test(e.charAt(t)););return t}var Swe=wwe,Twe=Swe,Cwe=/^\s+/;function Awe(e){return e&&e.slice(0,Twe(e)+1).replace(Cwe,"")}var Mwe=Awe,Pwe=Mwe,jz=xu,kwe=xv,Rz=NaN,Lwe=/^[-+]0x[0-9a-f]+$/i,Iwe=/^0b[01]+$/i,Ewe=/^0o[0-7]+$/i,Owe=parseInt;function Dwe(e){if(typeof e=="number")return e;if(kwe(e))return Rz;if(jz(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=jz(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=Pwe(e);var r=Iwe.test(e);return r||Ewe.test(e)?Owe(e.slice(2),r?2:8):Lwe.test(e)?Rz:+e}var dX=Dwe,Nwe=xu,kA=_we,Bz=dX,jwe="Expected a function",Rwe=Math.max,Bwe=Math.min;function zwe(e,t,r){var n,i,a,o,s,l,u=0,c=!1,f=!1,h=!0;if(typeof e!="function")throw new TypeError(jwe);t=Bz(t)||0,Nwe(r)&&(c=!!r.leading,f="maxWait"in r,a=f?Rwe(Bz(r.maxWait)||0,t):a,h="trailing"in r?!!r.trailing:h);function d(C){var A=n,P=i;return n=i=void 0,u=C,o=e.apply(P,A),o}function v(C){return u=C,s=setTimeout(x,t),c?d(C):o}function m(C){var A=C-l,P=C-u,I=t-A;return f?Bwe(I,a-P):I}function y(C){var A=C-l,P=C-u;return l===void 0||A>=t||A<0||f&&P>=a}function x(){var C=kA();if(y(C))return _(C);s=setTimeout(x,m(C))}function _(C){return s=void 0,h&&n?d(C):(n=i=void 0,o)}function b(){s!==void 0&&clearTimeout(s),u=0,n=l=i=s=void 0}function S(){return s===void 0?o:_(kA())}function T(){var C=kA(),A=y(C);if(n=arguments,i=this,l=C,A){if(s===void 0)return v(l);if(f)return clearTimeout(s),s=setTimeout(x,t),d(l)}return s===void 0&&(s=setTimeout(x,t)),o}return T.cancel=b,T.flush=S,T}var $we=zwe,Fwe=$we,Vwe=xu,Gwe="Expected a function";function Wwe(e,t,r){var n=!0,i=!0;if(typeof e!="function")throw new TypeError(Gwe);return Vwe(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),Fwe(e,t,{leading:n,maxWait:t,trailing:i})}var Hwe=Wwe;const vX=$t(Hwe);function Dm(e){"@babel/helpers - typeof";return Dm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dm(e)}function zz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function px(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&(N=vX(N,m,{trailing:!0,leading:!1}));var z=new ResizeObserver(N),V=T.current.getBoundingClientRect(),F=V.width,$=V.height;return O(F,$),z.observe(T.current),function(){z.disconnect()}},[O,m]);var D=H.useMemo(function(){var N=I.containerWidth,z=I.containerHeight;if(N<0||z<0)return null;$c(Ac(o)||Ac(l),`The width(%s) and height(%s) are both fixed numbers, maybe you don't need to use a ResponsiveContainer.`,o,l),$c(!r||r>0,"The aspect(%s) must be greater than zero.",r);var V=Ac(o)?N:o,F=Ac(l)?z:l;r&&r>0&&(V?F=V/r:F&&(V=F*r),h&&F>h&&(F=h)),$c(V>0||F>0,`The width(%s) and height(%s) of chart should be greater than 0, please check the style of container, or the props width(%s) and height(%s), or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the - height and width.`,V,F,o,l,c,f,r);var $=!Array.isArray(d)&&Cs(d.type).endsWith("Chart");return Q.Children.map(d,function(B){return Q.isValidElement(B)?H.cloneElement(B,px({width:V,height:F},$?{style:px({height:"100%",width:"100%",maxHeight:F,maxWidth:V},B.props.style)}:{})):B})},[r,d,l,h,f,c,I,o]);return Q.createElement("div",{id:m?"".concat(m):void 0,className:_t("recharts-responsive-container",x),style:px(px({},S),{},{width:o,height:l,minWidth:c,minHeight:f,maxHeight:h}),ref:T},D)}),vX=function(t){return null};vX.displayName="Cell";function Nm(e){"@babel/helpers - typeof";return Nm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Nm(e)}function zz(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Zk(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Sf.isSsr)return{width:0,height:0};var n=nSe(r),i=JSON.stringify({text:t,copyStyle:n});if(Yf.widthCache[i])return Yf.widthCache[i];try{var a=document.getElementById($z);a||(a=document.createElement("span"),a.setAttribute("id",$z),a.setAttribute("aria-hidden","true"),document.body.appendChild(a));var o=Zk(Zk({},rSe),n);Object.assign(a.style,o),a.textContent="".concat(t);var s=a.getBoundingClientRect(),l={width:s.width,height:s.height};return Yf.widthCache[i]=l,++Yf.cacheCount>tSe&&(Yf.cacheCount=0,Yf.widthCache={}),l}catch{return{width:0,height:0}}},iSe=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};function jm(e){"@babel/helpers - typeof";return jm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jm(e)}function d1(e,t){return lSe(e)||sSe(e,t)||oSe(e,t)||aSe()}function aSe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function oSe(e,t){if(e){if(typeof e=="string")return Fz(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Fz(e,t)}}function Fz(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function wSe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Zz(e,t){return ASe(e)||CSe(e,t)||TSe(e,t)||SSe()}function SSe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function TSe(e,t){if(e){if(typeof e=="string")return Yz(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Yz(e,t)}}function Yz(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&arguments[0]!==void 0?arguments[0]:[];return V.reduce(function(F,$){var B=$.word,Z=$.width,W=F[F.length-1];if(W&&(i==null||a||W.width+Z+n$.width?F:$})};if(!c)return d;for(var g="…",m=function(V){var F=f.slice(0,V),$=yX({breakAll:u,style:l,children:F+g}).wordsWithComputedWidth,B=h($),Z=B.length>o||v(B).width>Number(i);return[Z,B]},x=0,_=f.length-1,b=0,S;x<=_&&b<=f.length-1;){var T=Math.floor((x+_)/2),C=T-1,A=m(C),P=Zz(A,2),I=P[0],k=P[1],E=m(T),D=Zz(E,1),N=D[0];if(!I&&!N&&(x=T+1),I&&N&&(_=T-1),!I&&N){S=k;break}b++}return S||d},Xz=function(t){var r=dt(t)?[]:t.toString().split(mX);return[{words:r}]},PSe=function(t){var r=t.width,n=t.scaleToFit,i=t.children,a=t.style,o=t.breakAll,s=t.maxLines;if((r||n)&&!Sf.isSsr){var l,u,c=yX({breakAll:o,children:i,style:a});if(c){var f=c.wordsWithComputedWidth,h=c.spaceWidth;l=f,u=h}else return Xz(i);return MSe({breakAll:o,children:i,maxLines:s,style:a},l,u,r,n)}return Xz(i)},qz="#808080",v1=function(t){var r=t.x,n=r===void 0?0:r,i=t.y,a=i===void 0?0:i,o=t.lineHeight,s=o===void 0?"1em":o,l=t.capHeight,u=l===void 0?"0.71em":l,c=t.scaleToFit,f=c===void 0?!1:c,h=t.textAnchor,d=h===void 0?"start":h,v=t.verticalAnchor,g=v===void 0?"end":v,m=t.fill,x=m===void 0?qz:m,_=Uz(t,_Se),b=H.useMemo(function(){return PSe({breakAll:_.breakAll,children:_.children,maxLines:_.maxLines,scaleToFit:f,style:_.style,width:_.width})},[_.breakAll,_.children,_.maxLines,f,_.style,_.width]),S=_.dx,T=_.dy,C=_.angle,A=_.className,P=_.breakAll,I=Uz(_,bSe);if(!Vr(n)||!Vr(a))return null;var k=n+(we(S)?S:0),E=a+(we(T)?T:0),D;switch(g){case"start":D=LA("calc(".concat(u,")"));break;case"middle":D=LA("calc(".concat((b.length-1)/2," * -").concat(s," + (").concat(u," / 2))"));break;default:D=LA("calc(".concat(b.length-1," * -").concat(s,")"));break}var N=[];if(f){var z=b[0].width,V=_.width;N.push("scale(".concat((we(V)?V/z:1)/z,")"))}return C&&N.push("rotate(".concat(C,", ").concat(k,", ").concat(E,")")),N.length&&(I.transform=N.join(" ")),Q.createElement("text",Yk({},ct(I,!0),{x:k,y:E,className:_t("recharts-text",A),textAnchor:d,fill:x.includes("url")?qz:x}),b.map(function(F,$){var B=F.words.join(P?"":" ");return Q.createElement("tspan",{x:k,dy:$===0?D:s,key:"".concat(B,"-").concat($)},B)}))};function Yl(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function kSe(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function jD(e){let t,r,n;e.length!==2?(t=Yl,r=(s,l)=>Yl(e(s),l),n=(s,l)=>e(s)-l):(t=e===Yl||e===kSe?e:LSe,r=e,n=e);function i(s,l,u=0,c=s.length){if(u>>1;r(s[f],l)<0?u=f+1:c=f}while(u>>1;r(s[f],l)<=0?u=f+1:c=f}while(uu&&n(s[f-1],l)>-n(s[f],l)?f-1:f}return{left:i,center:o,right:a}}function LSe(){return 0}function xX(e){return e===null?NaN:+e}function*ISe(e,t){for(let r of e)r!=null&&(r=+r)>=r&&(yield r)}const OSe=jD(Yl),e0=OSe.right;jD(xX).center;class Kz extends Map{constructor(t,r=NSe){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),t!=null)for(const[n,i]of t)this.set(n,i)}get(t){return super.get(Jz(this,t))}has(t){return super.has(Jz(this,t))}set(t,r){return super.set(ESe(this,t),r)}delete(t){return super.delete(DSe(this,t))}}function Jz({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):r}function ESe({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function DSe({_intern:e,_key:t},r){const n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function NSe(e){return e!==null&&typeof e=="object"?e.valueOf():e}function jSe(e=Yl){if(e===Yl)return _X;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,r)=>{const n=e(t,r);return n||n===0?n:(e(r,r)===0)-(e(t,t)===0)}}function _X(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const RSe=Math.sqrt(50),BSe=Math.sqrt(10),zSe=Math.sqrt(2);function p1(e,t,r){const n=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),o=a>=RSe?10:a>=BSe?5:a>=zSe?2:1;let s,l,u;return i<0?(u=Math.pow(10,-i)/o,s=Math.round(e*u),l=Math.round(t*u),s/ut&&--l,u=-u):(u=Math.pow(10,i)*o,s=Math.round(e/u),l=Math.round(t/u),s*ut&&--l),l0))return[];if(e===t)return[e];const n=t=i))return[];const s=a-i+1,l=new Array(s);if(n)if(o<0)for(let u=0;u=n)&&(r=n);return r}function e4(e,t){let r;for(const n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);return r}function bX(e,t,r=0,n=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),n=Math.floor(Math.min(e.length-1,n)),!(r<=t&&t<=n))return e;for(i=i===void 0?_X:jSe(i);n>r;){if(n-r>600){const l=n-r+1,u=t-r+1,c=Math.log(l),f=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*f*(l-f)/l)*(u-l/2<0?-1:1),d=Math.max(r,Math.floor(t-u*f/l+h)),v=Math.min(n,Math.floor(t+(l-u)*f/l+h));bX(e,t,d,v,i)}const a=e[t];let o=r,s=n;for(Cp(e,r,t),i(e[n],a)>0&&Cp(e,r,n);o0;)--s}i(e[r],a)===0?Cp(e,r,s):(++s,Cp(e,s,n)),s<=t&&(r=s+1),t<=s&&(n=s-1)}return e}function Cp(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function $Se(e,t,r){if(e=Float64Array.from(ISe(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return e4(e);if(t>=1)return Qz(e);var n,i=(n-1)*t,a=Math.floor(i),o=Qz(bX(e,a).subarray(0,a+1)),s=e4(e.subarray(a+1));return o+(s-o)*(i-a)}}function FSe(e,t,r=xX){if(!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return+r(e[0],0,e);if(t>=1)return+r(e[n-1],n-1,e);var n,i=(n-1)*t,a=Math.floor(i),o=+r(e[a],a,e),s=+r(e[a+1],a+1,e);return o+(s-o)*(i-a)}}function VSe(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((t-e)/r))|0,a=new Array(i);++n>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?mx(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?mx(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=WSe.exec(e))?new ii(t[1],t[2],t[3],1):(t=HSe.exec(e))?new ii(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=USe.exec(e))?mx(t[1],t[2],t[3],t[4]):(t=ZSe.exec(e))?mx(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=YSe.exec(e))?s4(t[1],t[2]/100,t[3]/100,1):(t=XSe.exec(e))?s4(t[1],t[2]/100,t[3]/100,t[4]):t4.hasOwnProperty(e)?i4(t4[e]):e==="transparent"?new ii(NaN,NaN,NaN,0):null}function i4(e){return new ii(e>>16&255,e>>8&255,e&255,1)}function mx(e,t,r,n){return n<=0&&(e=t=r=NaN),new ii(e,t,r,n)}function JSe(e){return e instanceof t0||(e=$m(e)),e?(e=e.rgb(),new ii(e.r,e.g,e.b,e.opacity)):new ii}function Qk(e,t,r,n){return arguments.length===1?JSe(e):new ii(e,t,r,n??1)}function ii(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}BD(ii,Qk,SX(t0,{brighter(e){return e=e==null?g1:Math.pow(g1,e),new ii(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Bm:Math.pow(Bm,e),new ii(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ii(Fc(this.r),Fc(this.g),Fc(this.b),m1(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:a4,formatHex:a4,formatHex8:QSe,formatRgb:o4,toString:o4}));function a4(){return`#${Mc(this.r)}${Mc(this.g)}${Mc(this.b)}`}function QSe(){return`#${Mc(this.r)}${Mc(this.g)}${Mc(this.b)}${Mc((isNaN(this.opacity)?1:this.opacity)*255)}`}function o4(){const e=m1(this.opacity);return`${e===1?"rgb(":"rgba("}${Fc(this.r)}, ${Fc(this.g)}, ${Fc(this.b)}${e===1?")":`, ${e})`}`}function m1(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Fc(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Mc(e){return e=Fc(e),(e<16?"0":"")+e.toString(16)}function s4(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Ra(e,t,r,n)}function TX(e){if(e instanceof Ra)return new Ra(e.h,e.s,e.l,e.opacity);if(e instanceof t0||(e=$m(e)),!e)return new Ra;if(e instanceof Ra)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&l<1?0:o,new Ra(o,s,l,e.opacity)}function eTe(e,t,r,n){return arguments.length===1?TX(e):new Ra(e,t,r,n??1)}function Ra(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}BD(Ra,eTe,SX(t0,{brighter(e){return e=e==null?g1:Math.pow(g1,e),new Ra(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Bm:Math.pow(Bm,e),new Ra(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new ii(IA(e>=240?e-240:e+120,i,n),IA(e,i,n),IA(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Ra(l4(this.h),yx(this.s),yx(this.l),m1(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=m1(this.opacity);return`${e===1?"hsl(":"hsla("}${l4(this.h)}, ${yx(this.s)*100}%, ${yx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function l4(e){return e=(e||0)%360,e<0?e+360:e}function yx(e){return Math.max(0,Math.min(1,e||0))}function IA(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}const zD=e=>()=>e;function tTe(e,t){return function(r){return e+r*t}}function rTe(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function nTe(e){return(e=+e)==1?CX:function(t,r){return r-t?rTe(t,r,e):zD(isNaN(t)?r:t)}}function CX(e,t){var r=t-e;return r?tTe(e,r):zD(isNaN(e)?t:e)}const u4=function e(t){var r=nTe(t);function n(i,a){var o=r((i=Qk(i)).r,(a=Qk(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=CX(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);function iTe(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;ir&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:y1(n,i)})),r=OA.lastIndex;return rt&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function pTe(e,t,r){var n=e[0],i=e[1],a=t[0],o=t[1];return i2?gTe:pTe,l=u=null,f}function f(h){return h==null||isNaN(h=+h)?a:(l||(l=s(e.map(n),t,r)))(n(o(h)))}return f.invert=function(h){return o(i((u||(u=s(t,e.map(n),y1)))(h)))},f.domain=function(h){return arguments.length?(e=Array.from(h,x1),c()):e.slice()},f.range=function(h){return arguments.length?(t=Array.from(h),c()):t.slice()},f.rangeRound=function(h){return t=Array.from(h),r=$D,c()},f.clamp=function(h){return arguments.length?(o=h?!0:Vn,c()):o!==Vn},f.interpolate=function(h){return arguments.length?(r=h,c()):r},f.unknown=function(h){return arguments.length?(a=h,f):a},function(h,d){return n=h,i=d,c()}}function FD(){return sT()(Vn,Vn)}function mTe(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function _1(e,t){if(!isFinite(e)||e===0)return null;var r=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),n=e.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+e.slice(r+1)]}function kd(e){return e=_1(Math.abs(e)),e?e[1]:NaN}function yTe(e,t){return function(r,n){for(var i=r.length,a=[],o=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(r.substring(i-=s,i+s)),!((l+=s+1)>n));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function xTe(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var _Te=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Fm(e){if(!(t=_Te.exec(e)))throw new Error("invalid format: "+e);var t;return new VD({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Fm.prototype=VD.prototype;function VD(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}VD.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function bTe(e){e:for(var t=e.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?e.slice(0,n)+e.slice(i+1):e}var b1;function wTe(e,t){var r=_1(e,t);if(!r)return b1=void 0,e.toPrecision(t);var n=r[0],i=r[1],a=i-(b1=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=n.length;return a===o?n:a>o?n+new Array(a-o+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+_1(e,Math.max(0,t+a-1))[0]}function f4(e,t){var r=_1(e,t);if(!r)return e+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}const h4={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:mTe,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>f4(e*100,t),r:f4,s:wTe,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function d4(e){return e}var v4=Array.prototype.map,p4=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function STe(e){var t=e.grouping===void 0||e.thousands===void 0?d4:yTe(v4.call(e.grouping,Number),e.thousands+""),r=e.currency===void 0?"":e.currency[0]+"",n=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?d4:xTe(v4.call(e.numerals,String)),o=e.percent===void 0?"%":e.percent+"",s=e.minus===void 0?"−":e.minus+"",l=e.nan===void 0?"NaN":e.nan+"";function u(f,h){f=Fm(f);var d=f.fill,v=f.align,g=f.sign,m=f.symbol,x=f.zero,_=f.width,b=f.comma,S=f.precision,T=f.trim,C=f.type;C==="n"?(b=!0,C="g"):h4[C]||(S===void 0&&(S=12),T=!0,C="g"),(x||d==="0"&&v==="=")&&(x=!0,d="0",v="=");var A=(h&&h.prefix!==void 0?h.prefix:"")+(m==="$"?r:m==="#"&&/[boxX]/.test(C)?"0"+C.toLowerCase():""),P=(m==="$"?n:/[%p]/.test(C)?o:"")+(h&&h.suffix!==void 0?h.suffix:""),I=h4[C],k=/[defgprs%]/.test(C);S=S===void 0?6:/[gprs]/.test(C)?Math.max(1,Math.min(21,S)):Math.max(0,Math.min(20,S));function E(D){var N=A,z=P,V,F,$;if(C==="c")z=I(D)+z,D="";else{D=+D;var B=D<0||1/D<0;if(D=isNaN(D)?l:I(Math.abs(D),S),T&&(D=bTe(D)),B&&+D==0&&g!=="+"&&(B=!1),N=(B?g==="("?g:s:g==="-"||g==="("?"":g)+N,z=(C==="s"&&!isNaN(D)&&b1!==void 0?p4[8+b1/3]:"")+z+(B&&g==="("?")":""),k){for(V=-1,F=D.length;++V$||$>57){z=($===46?i+D.slice(V+1):D.slice(V))+z,D=D.slice(0,V);break}}}b&&!x&&(D=t(D,1/0));var Z=N.length+D.length+z.length,W=Z<_?new Array(_-Z+1).join(d):"";switch(b&&x&&(D=t(W+D,W.length?_-z.length:1/0),W=""),v){case"<":D=N+D+z+W;break;case"=":D=N+W+D+z;break;case"^":D=W.slice(0,Z=W.length>>1)+N+D+z+W.slice(Z);break;default:D=W+N+D+z;break}return a(D)}return E.toString=function(){return f+""},E}function c(f,h){var d=Math.max(-8,Math.min(8,Math.floor(kd(h)/3)))*3,v=Math.pow(10,-d),g=u((f=Fm(f),f.type="f",f),{suffix:p4[8+d/3]});return function(m){return g(v*m)}}return{format:u,formatPrefix:c}}var xx,GD,AX;TTe({thousands:",",grouping:[3],currency:["$",""]});function TTe(e){return xx=STe(e),GD=xx.format,AX=xx.formatPrefix,xx}function CTe(e){return Math.max(0,-kd(Math.abs(e)))}function ATe(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(kd(t)/3)))*3-kd(Math.abs(e)))}function MTe(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,kd(t)-kd(e))+1}function MX(e,t,r,n){var i=Kk(e,t,r),a;switch(n=Fm(n??",f"),n.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=ATe(i,o))&&(n.precision=a),AX(n,o)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=MTe(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=CTe(i))&&(n.precision=a-(n.type==="%")*2);break}}return GD(n)}function _u(e){var t=e.domain;return e.ticks=function(r){var n=t();return Xk(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return MX(i[0],i[i.length-1],r??10,n)},e.nice=function(r){r==null&&(r=10);var n=t(),i=0,a=n.length-1,o=n[i],s=n[a],l,u,c=10;for(s0;){if(u=qk(o,s,r),u===l)return n[i]=o,n[a]=s,t(n);if(u>0)o=Math.floor(o/u)*u,s=Math.ceil(s/u)*u;else if(u<0)o=Math.ceil(o*u)/u,s=Math.floor(s*u)/u;else break;l=u}return e},e}function w1(){var e=FD();return e.copy=function(){return r0(e,w1())},ya.apply(e,arguments),_u(e)}function PX(e){var t;function r(n){return n==null||isNaN(n=+n)?t:n}return r.invert=r,r.domain=r.range=function(n){return arguments.length?(e=Array.from(n,x1),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return PX(e).unknown(t)},e=arguments.length?Array.from(e,x1):[0,1],_u(r)}function kX(e,t){e=e.slice();var r=0,n=e.length-1,i=e[r],a=e[n],o;return aMath.pow(e,t)}function OTe(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function y4(e){return(t,r)=>-e(-t,r)}function WD(e){const t=e(g4,m4),r=t.domain;let n=10,i,a;function o(){return i=OTe(n),a=ITe(n),r()[0]<0?(i=y4(i),a=y4(a),e(PTe,kTe)):e(g4,m4),t}return t.base=function(s){return arguments.length?(n=+s,o()):n},t.domain=function(s){return arguments.length?(r(s),o()):r()},t.ticks=s=>{const l=r();let u=l[0],c=l[l.length-1];const f=c0){for(;h<=d;++h)for(v=1;vc)break;x.push(g)}}else for(;h<=d;++h)for(v=n-1;v>=1;--v)if(g=h>0?v/a(-h):v*a(h),!(gc)break;x.push(g)}x.length*2{if(s==null&&(s=10),l==null&&(l=n===10?"s":","),typeof l!="function"&&(!(n%1)&&(l=Fm(l)).precision==null&&(l.trim=!0),l=GD(l)),s===1/0)return l;const u=Math.max(1,n*s/t.ticks().length);return c=>{let f=c/a(Math.round(i(c)));return f*nr(kX(r(),{floor:s=>a(Math.floor(i(s))),ceil:s=>a(Math.ceil(i(s)))})),t}function LX(){const e=WD(sT()).domain([1,10]);return e.copy=()=>r0(e,LX()).base(e.base()),ya.apply(e,arguments),e}function x4(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function _4(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function HD(e){var t=1,r=e(x4(t),_4(t));return r.constant=function(n){return arguments.length?e(x4(t=+n),_4(t)):t},_u(r)}function IX(){var e=HD(sT());return e.copy=function(){return r0(e,IX()).constant(e.constant())},ya.apply(e,arguments)}function b4(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function ETe(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function DTe(e){return e<0?-e*e:e*e}function UD(e){var t=e(Vn,Vn),r=1;function n(){return r===1?e(Vn,Vn):r===.5?e(ETe,DTe):e(b4(r),b4(1/r))}return t.exponent=function(i){return arguments.length?(r=+i,n()):r},_u(t)}function ZD(){var e=UD(sT());return e.copy=function(){return r0(e,ZD()).exponent(e.exponent())},ya.apply(e,arguments),e}function NTe(){return ZD.apply(null,arguments).exponent(.5)}function w4(e){return Math.sign(e)*e*e}function jTe(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function OX(){var e=FD(),t=[0,1],r=!1,n;function i(a){var o=jTe(e(a));return isNaN(o)?n:r?Math.round(o):o}return i.invert=function(a){return e.invert(w4(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,x1)).map(w4)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(r=!!a,i):r},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return OX(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},ya.apply(i,arguments),_u(i)}function EX(){var e=[],t=[],r=[],n;function i(){var o=0,s=Math.max(1,t.length);for(r=new Array(s-1);++o0?r[s-1]:e[0],s=r?[n[r-1],t]:[n[u-1],n[u]]},o.unknown=function(l){return arguments.length&&(a=l),o},o.thresholds=function(){return n.slice()},o.copy=function(){return DX().domain([e,t]).range(i).unknown(a)},ya.apply(_u(o),arguments)}function NX(){var e=[.5],t=[0,1],r,n=1;function i(a){return a!=null&&a<=a?t[e0(e,a,0,n)]:r}return i.domain=function(a){return arguments.length?(e=Array.from(a),n=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),n=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var o=t.indexOf(a);return[e[o-1],e[o]]},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return NX().domain(e).range(t).unknown(r)},ya.apply(i,arguments)}const EA=new Date,DA=new Date;function Zr(e,t,r,n){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const o=i(a),s=i.ceil(a);return a-o(t(a=new Date(+a),o==null?1:Math.floor(o)),a),i.range=(a,o,s)=>{const l=[];if(a=i.ceil(a),s=s==null?1:Math.floor(s),!(a0))return l;let u;do l.push(u=new Date(+a)),t(a,s),e(a);while(uZr(o=>{if(o>=o)for(;e(o),!a(o);)o.setTime(o-1)},(o,s)=>{if(o>=o)if(s<0)for(;++s<=0;)for(;t(o,-1),!a(o););else for(;--s>=0;)for(;t(o,1),!a(o););}),r&&(i.count=(a,o)=>(EA.setTime(+a),DA.setTime(+o),e(EA),e(DA),Math.floor(r(EA,DA))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?o=>n(o)%a===0:o=>i.count(0,o)%a===0):i)),i}const S1=Zr(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);S1.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Zr(t=>{t.setTime(Math.floor(t/e)*e)},(t,r)=>{t.setTime(+t+r*e)},(t,r)=>(r-t)/e):S1);S1.range;const ms=1e3,na=ms*60,ys=na*60,zs=ys*24,YD=zs*7,S4=zs*30,NA=zs*365,Pc=Zr(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ms)},(e,t)=>(t-e)/ms,e=>e.getUTCSeconds());Pc.range;const XD=Zr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ms)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getMinutes());XD.range;const qD=Zr(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getUTCMinutes());qD.range;const KD=Zr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ms-e.getMinutes()*na)},(e,t)=>{e.setTime(+e+t*ys)},(e,t)=>(t-e)/ys,e=>e.getHours());KD.range;const JD=Zr(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ys)},(e,t)=>(t-e)/ys,e=>e.getUTCHours());JD.range;const n0=Zr(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*na)/zs,e=>e.getDate()-1);n0.range;const lT=Zr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/zs,e=>e.getUTCDate()-1);lT.range;const jX=Zr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/zs,e=>Math.floor(e/zs));jX.range;function Tf(e){return Zr(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,r)=>{t.setDate(t.getDate()+r*7)},(t,r)=>(r-t-(r.getTimezoneOffset()-t.getTimezoneOffset())*na)/YD)}const uT=Tf(0),T1=Tf(1),RTe=Tf(2),BTe=Tf(3),Ld=Tf(4),zTe=Tf(5),$Te=Tf(6);uT.range;T1.range;RTe.range;BTe.range;Ld.range;zTe.range;$Te.range;function Cf(e){return Zr(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCDate(t.getUTCDate()+r*7)},(t,r)=>(r-t)/YD)}const cT=Cf(0),C1=Cf(1),FTe=Cf(2),VTe=Cf(3),Id=Cf(4),GTe=Cf(5),WTe=Cf(6);cT.range;C1.range;FTe.range;VTe.range;Id.range;GTe.range;WTe.range;const QD=Zr(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());QD.range;const eN=Zr(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());eN.range;const $s=Zr(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());$s.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Zr(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,r)=>{t.setFullYear(t.getFullYear()+r*e)});$s.range;const Fs=Zr(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Fs.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Zr(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)});Fs.range;function RX(e,t,r,n,i,a){const o=[[Pc,1,ms],[Pc,5,5*ms],[Pc,15,15*ms],[Pc,30,30*ms],[a,1,na],[a,5,5*na],[a,15,15*na],[a,30,30*na],[i,1,ys],[i,3,3*ys],[i,6,6*ys],[i,12,12*ys],[n,1,zs],[n,2,2*zs],[r,1,YD],[t,1,S4],[t,3,3*S4],[e,1,NA]];function s(u,c,f){const h=cm).right(o,h);if(d===o.length)return e.every(Kk(u/NA,c/NA,f));if(d===0)return S1.every(Math.max(Kk(u,c,f),1));const[v,g]=o[h/o[d-1][2]53)return null;"w"in te||(te.w=1),"Z"in te?(Se=RA(Ap(te.y,0,1)),Ge=Se.getUTCDay(),Se=Ge>4||Ge===0?C1.ceil(Se):C1(Se),Se=lT.offset(Se,(te.V-1)*7),te.y=Se.getUTCFullYear(),te.m=Se.getUTCMonth(),te.d=Se.getUTCDate()+(te.w+6)%7):(Se=jA(Ap(te.y,0,1)),Ge=Se.getDay(),Se=Ge>4||Ge===0?T1.ceil(Se):T1(Se),Se=n0.offset(Se,(te.V-1)*7),te.y=Se.getFullYear(),te.m=Se.getMonth(),te.d=Se.getDate()+(te.w+6)%7)}else("W"in te||"U"in te)&&("w"in te||(te.w="u"in te?te.u%7:"W"in te?1:0),Ge="Z"in te?RA(Ap(te.y,0,1)).getUTCDay():jA(Ap(te.y,0,1)).getDay(),te.m=0,te.d="W"in te?(te.w+6)%7+te.W*7-(Ge+5)%7:te.w+te.U*7-(Ge+6)%7);return"Z"in te?(te.H+=te.Z/100|0,te.M+=te.Z%100,RA(te)):jA(te)}}function P(ie,he,ue,te){for(var Ve=0,Se=he.length,Ge=ue.length,Ye,vt;Ve=Ge)return-1;if(Ye=he.charCodeAt(Ve++),Ye===37){if(Ye=he.charAt(Ve++),vt=T[Ye in T4?he.charAt(Ve++):Ye],!vt||(te=vt(ie,ue,te))<0)return-1}else if(Ye!=ue.charCodeAt(te++))return-1}return te}function I(ie,he,ue){var te=u.exec(he.slice(ue));return te?(ie.p=c.get(te[0].toLowerCase()),ue+te[0].length):-1}function k(ie,he,ue){var te=d.exec(he.slice(ue));return te?(ie.w=v.get(te[0].toLowerCase()),ue+te[0].length):-1}function E(ie,he,ue){var te=f.exec(he.slice(ue));return te?(ie.w=h.get(te[0].toLowerCase()),ue+te[0].length):-1}function D(ie,he,ue){var te=x.exec(he.slice(ue));return te?(ie.m=_.get(te[0].toLowerCase()),ue+te[0].length):-1}function N(ie,he,ue){var te=g.exec(he.slice(ue));return te?(ie.m=m.get(te[0].toLowerCase()),ue+te[0].length):-1}function z(ie,he,ue){return P(ie,t,he,ue)}function V(ie,he,ue){return P(ie,r,he,ue)}function F(ie,he,ue){return P(ie,n,he,ue)}function $(ie){return o[ie.getDay()]}function B(ie){return a[ie.getDay()]}function Z(ie){return l[ie.getMonth()]}function W(ie){return s[ie.getMonth()]}function G(ie){return i[+(ie.getHours()>=12)]}function Y(ie){return 1+~~(ie.getMonth()/3)}function K(ie){return o[ie.getUTCDay()]}function ee(ie){return a[ie.getUTCDay()]}function le(ie){return l[ie.getUTCMonth()]}function fe(ie){return s[ie.getUTCMonth()]}function De(ie){return i[+(ie.getUTCHours()>=12)]}function me(ie){return 1+~~(ie.getUTCMonth()/3)}return{format:function(ie){var he=C(ie+="",b);return he.toString=function(){return ie},he},parse:function(ie){var he=A(ie+="",!1);return he.toString=function(){return ie},he},utcFormat:function(ie){var he=C(ie+="",S);return he.toString=function(){return ie},he},utcParse:function(ie){var he=A(ie+="",!0);return he.toString=function(){return ie},he}}}var T4={"-":"",_:" ",0:"0"},sn=/^\s*\d+/,qTe=/^%/,KTe=/[\\^$*+?|[\]().{}]/g;function At(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function QTe(e,t,r){var n=sn.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function eCe(e,t,r){var n=sn.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function tCe(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function rCe(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function nCe(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function C4(e,t,r){var n=sn.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function A4(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function iCe(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function aCe(e,t,r){var n=sn.exec(t.slice(r,r+1));return n?(e.q=n[0]*3-3,r+n[0].length):-1}function oCe(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function M4(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function sCe(e,t,r){var n=sn.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function P4(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function lCe(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function uCe(e,t,r){var n=sn.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function cCe(e,t,r){var n=sn.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function fCe(e,t,r){var n=sn.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function hCe(e,t,r){var n=qTe.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function dCe(e,t,r){var n=sn.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function vCe(e,t,r){var n=sn.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function k4(e,t){return At(e.getDate(),t,2)}function pCe(e,t){return At(e.getHours(),t,2)}function gCe(e,t){return At(e.getHours()%12||12,t,2)}function mCe(e,t){return At(1+n0.count($s(e),e),t,3)}function BX(e,t){return At(e.getMilliseconds(),t,3)}function yCe(e,t){return BX(e,t)+"000"}function xCe(e,t){return At(e.getMonth()+1,t,2)}function _Ce(e,t){return At(e.getMinutes(),t,2)}function bCe(e,t){return At(e.getSeconds(),t,2)}function wCe(e){var t=e.getDay();return t===0?7:t}function SCe(e,t){return At(uT.count($s(e)-1,e),t,2)}function zX(e){var t=e.getDay();return t>=4||t===0?Ld(e):Ld.ceil(e)}function TCe(e,t){return e=zX(e),At(Ld.count($s(e),e)+($s(e).getDay()===4),t,2)}function CCe(e){return e.getDay()}function ACe(e,t){return At(T1.count($s(e)-1,e),t,2)}function MCe(e,t){return At(e.getFullYear()%100,t,2)}function PCe(e,t){return e=zX(e),At(e.getFullYear()%100,t,2)}function kCe(e,t){return At(e.getFullYear()%1e4,t,4)}function LCe(e,t){var r=e.getDay();return e=r>=4||r===0?Ld(e):Ld.ceil(e),At(e.getFullYear()%1e4,t,4)}function ICe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+At(t/60|0,"0",2)+At(t%60,"0",2)}function L4(e,t){return At(e.getUTCDate(),t,2)}function OCe(e,t){return At(e.getUTCHours(),t,2)}function ECe(e,t){return At(e.getUTCHours()%12||12,t,2)}function DCe(e,t){return At(1+lT.count(Fs(e),e),t,3)}function $X(e,t){return At(e.getUTCMilliseconds(),t,3)}function NCe(e,t){return $X(e,t)+"000"}function jCe(e,t){return At(e.getUTCMonth()+1,t,2)}function RCe(e,t){return At(e.getUTCMinutes(),t,2)}function BCe(e,t){return At(e.getUTCSeconds(),t,2)}function zCe(e){var t=e.getUTCDay();return t===0?7:t}function $Ce(e,t){return At(cT.count(Fs(e)-1,e),t,2)}function FX(e){var t=e.getUTCDay();return t>=4||t===0?Id(e):Id.ceil(e)}function FCe(e,t){return e=FX(e),At(Id.count(Fs(e),e)+(Fs(e).getUTCDay()===4),t,2)}function VCe(e){return e.getUTCDay()}function GCe(e,t){return At(C1.count(Fs(e)-1,e),t,2)}function WCe(e,t){return At(e.getUTCFullYear()%100,t,2)}function HCe(e,t){return e=FX(e),At(e.getUTCFullYear()%100,t,2)}function UCe(e,t){return At(e.getUTCFullYear()%1e4,t,4)}function ZCe(e,t){var r=e.getUTCDay();return e=r>=4||r===0?Id(e):Id.ceil(e),At(e.getUTCFullYear()%1e4,t,4)}function YCe(){return"+0000"}function I4(){return"%"}function O4(e){return+e}function E4(e){return Math.floor(+e/1e3)}var Xf,VX,GX;XCe({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function XCe(e){return Xf=XTe(e),VX=Xf.format,Xf.parse,GX=Xf.utcFormat,Xf.utcParse,Xf}function qCe(e){return new Date(e)}function KCe(e){return e instanceof Date?+e:+new Date(+e)}function tN(e,t,r,n,i,a,o,s,l,u){var c=FD(),f=c.invert,h=c.domain,d=u(".%L"),v=u(":%S"),g=u("%I:%M"),m=u("%I %p"),x=u("%a %d"),_=u("%b %d"),b=u("%B"),S=u("%Y");function T(C){return(l(C)t(i/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(i,a)=>$Se(e,a/n))},r.copy=function(){return ZX(t).domain(e)},Qs.apply(r,arguments)}function hT(){var e=0,t=.5,r=1,n=1,i,a,o,s,l,u=Vn,c,f=!1,h;function d(g){return isNaN(g=+g)?h:(g=.5+((g=+c(g))-a)*(n*gt}var aAe=iAe,oAe=KX,sAe=aAe,lAe=Pv;function uAe(e){return e&&e.length?oAe(e,lAe,sAe):void 0}var cAe=uAe;const Ll=$t(cAe);function fAe(e,t){return ee.e^a.s<0?1:-1;for(n=a.d.length,i=e.d.length,t=0,r=ne.d[t]^a.s<0?1:-1;return n===i?0:n>i^a.s<0?1:-1};Re.decimalPlaces=Re.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*Kt;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};Re.dividedBy=Re.div=function(e){return As(this,new this.constructor(e))};Re.dividedToIntegerBy=Re.idiv=function(e){var t=this,r=t.constructor;return Vt(As(t,new r(e),0,1),r.precision)};Re.equals=Re.eq=function(e){return!this.cmp(e)};Re.exponent=function(){return Er(this)};Re.greaterThan=Re.gt=function(e){return this.cmp(e)>0};Re.greaterThanOrEqualTo=Re.gte=function(e){return this.cmp(e)>=0};Re.isInteger=Re.isint=function(){return this.e>this.d.length-2};Re.isNegative=Re.isneg=function(){return this.s<0};Re.isPositive=Re.ispos=function(){return this.s>0};Re.isZero=function(){return this.s===0};Re.lessThan=Re.lt=function(e){return this.cmp(e)<0};Re.lessThanOrEqualTo=Re.lte=function(e){return this.cmp(e)<1};Re.logarithm=Re.log=function(e){var t,r=this,n=r.constructor,i=n.precision,a=i+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(bi))throw Error(ha+"NaN");if(r.s<1)throw Error(ha+(r.s?"NaN":"-Infinity"));return r.eq(bi)?new n(0):(tr=!1,t=As(Vm(r,a),Vm(e,a),a),tr=!0,Vt(t,i))};Re.minus=Re.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?tq(t,e):QX(t,(e.s=-e.s,e))};Re.modulo=Re.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(ha+"NaN");return r.s?(tr=!1,t=As(r,e,0,1).times(e),tr=!0,r.minus(t)):Vt(new n(r),i)};Re.naturalExponential=Re.exp=function(){return eq(this)};Re.naturalLogarithm=Re.ln=function(){return Vm(this)};Re.negated=Re.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};Re.plus=Re.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?QX(t,e):tq(t,(e.s=-e.s,e))};Re.precision=Re.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Vc+e);if(t=Er(i)+1,n=i.d.length-1,r=n*Kt+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};Re.squareRoot=Re.sqrt=function(){var e,t,r,n,i,a,o,s=this,l=s.constructor;if(s.s<1){if(!s.s)return new l(0);throw Error(ha+"NaN")}for(e=Er(s),tr=!1,i=Math.sqrt(+s),i==0||i==1/0?(t=So(s.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Ov((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new l(t)):n=new l(i.toString()),r=l.precision,i=o=r+3;;)if(a=n,n=a.plus(As(s,a,o+2)).times(.5),So(a.d).slice(0,o)===(t=So(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t=="4999"){if(Vt(a,r+1,0),a.times(a).eq(s)){n=a;break}}else if(t!="9999")break;o+=4}return tr=!0,Vt(n,r)};Re.times=Re.mul=function(e){var t,r,n,i,a,o,s,l,u,c=this,f=c.constructor,h=c.d,d=(e=new f(e)).d;if(!c.s||!e.s)return new f(0);for(e.s*=c.s,r=c.e+e.e,l=h.length,u=d.length,l=0;){for(t=0,i=l+n;i>n;)s=a[i]+d[n]*h[i-n-1]+t,a[i--]=s%Qr|0,t=s/Qr|0;a[i]=(a[i]+t)%Qr|0}for(;!a[--o];)a.pop();return t?++r:a.shift(),e.d=a,e.e=r,tr?Vt(e,f.precision):e};Re.toDecimalPlaces=Re.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:($o(e,0,Iv),t===void 0?t=n.rounding:$o(t,0,8),Vt(r,e+Er(r)+1,t))};Re.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=af(n,!0):($o(e,0,Iv),t===void 0?t=i.rounding:$o(t,0,8),n=Vt(new i(n),e+1,t),r=af(n,!0,e+1)),r};Re.toFixed=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?af(i):($o(e,0,Iv),t===void 0?t=a.rounding:$o(t,0,8),n=Vt(new a(i),e+Er(i)+1,t),r=af(n.abs(),!1,e+Er(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};Re.toInteger=Re.toint=function(){var e=this,t=e.constructor;return Vt(new t(e),Er(e)+1,t.rounding)};Re.toNumber=function(){return+this};Re.toPower=Re.pow=function(e){var t,r,n,i,a,o,s=this,l=s.constructor,u=12,c=+(e=new l(e));if(!e.s)return new l(bi);if(s=new l(s),!s.s){if(e.s<1)throw Error(ha+"Infinity");return s}if(s.eq(bi))return s;if(n=l.precision,e.eq(bi))return Vt(s,n);if(t=e.e,r=e.d.length-1,o=t>=r,a=s.s,o){if((r=c<0?-c:c)<=JX){for(i=new l(bi),t=Math.ceil(n/Kt+4),tr=!1;r%2&&(i=i.times(s),j4(i.d,t)),r=Ov(r/2),r!==0;)s=s.times(s),j4(s.d,t);return tr=!0,e.s<0?new l(bi).div(i):Vt(i,n)}}else if(a<0)throw Error(ha+"NaN");return a=a<0&&e.d[Math.max(t,r)]&1?-1:1,s.s=1,tr=!1,i=e.times(Vm(s,n+u)),tr=!0,i=eq(i),i.s=a,i};Re.toPrecision=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?(r=Er(i),n=af(i,r<=a.toExpNeg||r>=a.toExpPos)):($o(e,1,Iv),t===void 0?t=a.rounding:$o(t,0,8),i=Vt(new a(i),e,t),r=Er(i),n=af(i,e<=r||r<=a.toExpNeg,e)),n};Re.toSignificantDigits=Re.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):($o(e,1,Iv),t===void 0?t=n.rounding:$o(t,0,8)),Vt(new n(r),e,t)};Re.toString=Re.valueOf=Re.val=Re.toJSON=Re[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Er(e),r=e.constructor;return af(e,t<=r.toExpNeg||t>=r.toExpPos)};function QX(e,t){var r,n,i,a,o,s,l,u,c=e.constructor,f=c.precision;if(!e.s||!t.s)return t.s||(t=new c(e)),tr?Vt(t,f):t;if(l=e.d,u=t.d,o=e.e,i=t.e,l=l.slice(),a=o-i,a){for(a<0?(n=l,a=-a,s=u.length):(n=u,i=o,s=l.length),o=Math.ceil(f/Kt),s=o>s?o+1:s+1,a>s&&(a=s,n.length=1),n.reverse();a--;)n.push(0);n.reverse()}for(s=l.length,a=u.length,s-a<0&&(a=s,n=u,u=l,l=n),r=0;a;)r=(l[--a]=l[a]+u[a]+r)/Qr|0,l[a]%=Qr;for(r&&(l.unshift(r),++i),s=l.length;l[--s]==0;)l.pop();return t.d=l,t.e=i,tr?Vt(t,f):t}function $o(e,t,r){if(e!==~~e||er)throw Error(Vc+e)}function So(e){var t,r,n,i=e.length-1,a="",o=e[0];if(i>0){for(a+=o,t=1;to?1:-1;else for(s=l=0;si[s]?1:-1;break}return l}function r(n,i,a){for(var o=0;a--;)n[a]-=o,o=n[a]1;)n.shift()}return function(n,i,a,o){var s,l,u,c,f,h,d,v,g,m,x,_,b,S,T,C,A,P,I=n.constructor,k=n.s==i.s?1:-1,E=n.d,D=i.d;if(!n.s)return new I(n);if(!i.s)throw Error(ha+"Division by zero");for(l=n.e-i.e,A=D.length,T=E.length,d=new I(k),v=d.d=[],u=0;D[u]==(E[u]||0);)++u;if(D[u]>(E[u]||0)&&--l,a==null?_=a=I.precision:o?_=a+(Er(n)-Er(i))+1:_=a,_<0)return new I(0);if(_=_/Kt+2|0,u=0,A==1)for(c=0,D=D[0],_++;(u1&&(D=e(D,c),E=e(E,c),A=D.length,T=E.length),S=A,g=E.slice(0,A),m=g.length;m=Qr/2&&++C;do c=0,s=t(D,g,A,m),s<0?(x=g[0],A!=m&&(x=x*Qr+(g[1]||0)),c=x/C|0,c>1?(c>=Qr&&(c=Qr-1),f=e(D,c),h=f.length,m=g.length,s=t(f,g,h,m),s==1&&(c--,r(f,A16)throw Error(iN+Er(e));if(!e.s)return new c(bi);for(tr=!1,s=f,o=new c(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(n=Math.log(hc(2,u))/Math.LN10*2+5|0,s+=n,r=i=a=new c(bi),c.precision=s;;){if(i=Vt(i.times(e),s),r=r.times(++l),o=a.plus(As(i,r,s)),So(o.d).slice(0,s)===So(a.d).slice(0,s)){for(;u--;)a=Vt(a.times(a),s);return c.precision=f,t==null?(tr=!0,Vt(a,f)):a}a=o}}function Er(e){for(var t=e.e*Kt,r=e.d[0];r>=10;r/=10)t++;return t}function BA(e,t,r){if(t>e.LN10.sd())throw tr=!0,r&&(e.precision=r),Error(ha+"LN10 precision limit exceeded");return Vt(new e(e.LN10),t)}function bl(e){for(var t="";e--;)t+="0";return t}function Vm(e,t){var r,n,i,a,o,s,l,u,c,f=1,h=10,d=e,v=d.d,g=d.constructor,m=g.precision;if(d.s<1)throw Error(ha+(d.s?"NaN":"-Infinity"));if(d.eq(bi))return new g(0);if(t==null?(tr=!1,u=m):u=t,d.eq(10))return t==null&&(tr=!0),BA(g,u);if(u+=h,g.precision=u,r=So(v),n=r.charAt(0),a=Er(d),Math.abs(a)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)d=d.times(e),r=So(d.d),n=r.charAt(0),f++;a=Er(d),n>1?(d=new g("0."+r),a++):d=new g(n+"."+r.slice(1))}else return l=BA(g,u+2,m).times(a+""),d=Vm(new g(n+"."+r.slice(1)),u-h).plus(l),g.precision=m,t==null?(tr=!0,Vt(d,m)):d;for(s=o=d=As(d.minus(bi),d.plus(bi),u),c=Vt(d.times(d),u),i=3;;){if(o=Vt(o.times(c),u),l=s.plus(As(o,new g(i),u)),So(l.d).slice(0,u)===So(s.d).slice(0,u))return s=s.times(2),a!==0&&(s=s.plus(BA(g,u+2,m).times(a+""))),s=As(s,new g(f),u),g.precision=m,t==null?(tr=!0,Vt(s,m)):s;s=l,i+=2}}function N4(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(n,i),t){if(i-=n,r=r-n-1,e.e=Ov(r/Kt),e.d=[],n=(r+1)%Kt,r<0&&(n+=Kt),nA1||e.e<-A1))throw Error(iN+r)}else e.s=0,e.e=0,e.d=[0];return e}function Vt(e,t,r){var n,i,a,o,s,l,u,c,f=e.d;for(o=1,a=f[0];a>=10;a/=10)o++;if(n=t-o,n<0)n+=Kt,i=t,u=f[c=0];else{if(c=Math.ceil((n+1)/Kt),a=f.length,c>=a)return e;for(u=a=f[c],o=1;a>=10;a/=10)o++;n%=Kt,i=n-Kt+o}if(r!==void 0&&(a=hc(10,o-i-1),s=u/a%10|0,l=t<0||f[c+1]!==void 0||u%a,l=r<4?(s||l)&&(r==0||r==(e.s<0?3:2)):s>5||s==5&&(r==4||l||r==6&&(n>0?i>0?u/hc(10,o-i):0:f[c-1])%10&1||r==(e.s<0?8:7))),t<1||!f[0])return l?(a=Er(e),f.length=1,t=t-a-1,f[0]=hc(10,(Kt-t%Kt)%Kt),e.e=Ov(-t/Kt)||0):(f.length=1,f[0]=e.e=e.s=0),e;if(n==0?(f.length=c,a=1,c--):(f.length=c+1,a=hc(10,Kt-n),f[c]=i>0?(u/hc(10,o-i)%hc(10,i)|0)*a:0),l)for(;;)if(c==0){(f[0]+=a)==Qr&&(f[0]=1,++e.e);break}else{if(f[c]+=a,f[c]!=Qr)break;f[c--]=0,a=1}for(n=f.length;f[--n]===0;)f.pop();if(tr&&(e.e>A1||e.e<-A1))throw Error(iN+Er(e));return e}function tq(e,t){var r,n,i,a,o,s,l,u,c,f,h=e.constructor,d=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),tr?Vt(t,d):t;if(l=e.d,f=t.d,n=t.e,u=e.e,l=l.slice(),o=u-n,o){for(c=o<0,c?(r=l,o=-o,s=f.length):(r=f,n=u,s=l.length),i=Math.max(Math.ceil(d/Kt),s)+2,o>i&&(o=i,r.length=1),r.reverse(),i=o;i--;)r.push(0);r.reverse()}else{for(i=l.length,s=f.length,c=i0;--i)l[s++]=0;for(i=f.length;i>o;){if(l[--i]0?a=a.charAt(0)+"."+a.slice(1)+bl(n):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+bl(-i-1)+a,r&&(n=r-o)>0&&(a+=bl(n))):i>=o?(a+=bl(i+1-o),r&&(n=r-i-1)>0&&(a=a+"."+bl(n))):((n=i+1)0&&(i+1===o&&(a+="."),a+=bl(n))),e.s<0?"-"+a:a}function j4(e,t){if(e.length>t)return e.length=t,!0}function rq(e){var t,r,n;function i(a){var o=this;if(!(o instanceof i))return new i(a);if(o.constructor=i,a instanceof i){o.s=a.s,o.e=a.e,o.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Vc+a);if(a>0)o.s=1;else if(a<0)a=-a,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(a===~~a&&a<1e7){o.e=0,o.d=[a];return}return N4(o,a.toString())}else if(typeof a!="string")throw Error(Vc+a);if(a.charCodeAt(0)===45?(a=a.slice(1),o.s=-1):o.s=1,EAe.test(a))N4(o,a);else throw Error(Vc+a)}if(i.prototype=Re,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=rq,i.config=i.set=DAe,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&n<=i[t+2])this[r]=n;else throw Error(Vc+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Vc+r+": "+n);return this}var aN=rq(OAe);bi=new aN(1);const Bt=aN;function NAe(e){return zAe(e)||BAe(e)||RAe(e)||jAe()}function jAe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function RAe(e,t){if(e){if(typeof e=="string")return rL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return rL(e,t)}}function BAe(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function zAe(e){if(Array.isArray(e))return rL(e)}function rL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=t?r.apply(void 0,i):e(t-o,R4(function(){for(var s=arguments.length,l=new Array(s),u=0;ue.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"||!(Symbol.iterator in Object(e)))){var r=[],n=!0,i=!1,a=void 0;try{for(var o=e[Symbol.iterator](),s;!(n=(s=o.next()).done)&&(r.push(s.value),!(t&&r.length===t));n=!0);}catch(l){i=!0,a=l}finally{try{!n&&o.return!=null&&o.return()}finally{if(i)throw a}}return r}}function e2e(e){if(Array.isArray(e))return e}function sq(e){var t=Gm(e,2),r=t[0],n=t[1],i=r,a=n;return r>n&&(i=n,a=r),[i,a]}function lq(e,t,r){if(e.lte(0))return new Bt(0);var n=pT.getDigitCount(e.toNumber()),i=new Bt(10).pow(n),a=e.div(i),o=n!==1?.05:.1,s=new Bt(Math.ceil(a.div(o).toNumber())).add(r).mul(o),l=s.mul(i);return t?l:new Bt(Math.ceil(l))}function t2e(e,t,r){var n=1,i=new Bt(e);if(!i.isint()&&r){var a=Math.abs(e);a<1?(n=new Bt(10).pow(pT.getDigitCount(e)-1),i=new Bt(Math.floor(i.div(n).toNumber())).mul(n)):a>1&&(i=new Bt(Math.floor(e)))}else e===0?i=new Bt(Math.floor((t-1)/2)):r||(i=new Bt(Math.floor(e)));var o=Math.floor((t-1)/2),s=GAe(VAe(function(l){return i.add(new Bt(l-o).mul(n)).toNumber()}),nL);return s(0,t)}function uq(e,t,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((t-e)/(r-1)))return{step:new Bt(0),tickMin:new Bt(0),tickMax:new Bt(0)};var a=lq(new Bt(t).sub(e).div(r-1),n,i),o;e<=0&&t>=0?o=new Bt(0):(o=new Bt(e).add(t).div(2),o=o.sub(new Bt(o).mod(a)));var s=Math.ceil(o.sub(e).div(a).toNumber()),l=Math.ceil(new Bt(t).sub(o).div(a).toNumber()),u=s+l+1;return u>r?uq(e,t,r,n,i+1):(u0?l+(r-u):l,s=t>0?s:s+(r-u)),{step:a,tickMin:o.sub(new Bt(s).mul(a)),tickMax:o.add(new Bt(l).mul(a))})}function r2e(e){var t=Gm(e,2),r=t[0],n=t[1],i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Math.max(i,2),s=sq([r,n]),l=Gm(s,2),u=l[0],c=l[1];if(u===-1/0||c===1/0){var f=c===1/0?[u].concat(aL(nL(0,i-1).map(function(){return 1/0}))):[].concat(aL(nL(0,i-1).map(function(){return-1/0})),[c]);return r>n?iL(f):f}if(u===c)return t2e(u,i,a);var h=uq(u,c,o,a),d=h.step,v=h.tickMin,g=h.tickMax,m=pT.rangeStep(v,g.add(new Bt(.1).mul(d)),d);return r>n?iL(m):m}function n2e(e,t){var r=Gm(e,2),n=r[0],i=r[1],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=sq([n,i]),s=Gm(o,2),l=s[0],u=s[1];if(l===-1/0||u===1/0)return[n,i];if(l===u)return[l];var c=Math.max(t,2),f=lq(new Bt(u).sub(l).div(c-1),a,0),h=[].concat(aL(pT.rangeStep(new Bt(l),new Bt(u).sub(new Bt(.99).mul(f)),f)),[u]);return n>i?iL(h):h}var i2e=aq(r2e),a2e=aq(n2e),o2e="Invariant failed";function of(e,t){throw new Error(o2e)}var s2e=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function Ed(e){"@babel/helpers - typeof";return Ed=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ed(e)}function M1(){return M1=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function v2e(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function p2e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function g2e(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,o=-1,s=(r=n==null?void 0:n.length)!==null&&r!==void 0?r:0;if(s<=1)return 0;if(a&&a.axisType==="angleAxis"&&Math.abs(Math.abs(a.range[1]-a.range[0])-360)<=1e-6)for(var l=a.range,u=0;u0?i[u-1].coordinate:i[s-1].coordinate,f=i[u].coordinate,h=u>=s-1?i[0].coordinate:i[u+1].coordinate,d=void 0;if(Ba(f-c)!==Ba(h-f)){var v=[];if(Ba(h-f)===Ba(l[1]-l[0])){d=h;var g=f+l[1]-l[0];v[0]=Math.min(g,(g+c)/2),v[1]=Math.max(g,(g+c)/2)}else{d=c;var m=h+l[1]-l[0];v[0]=Math.min(f,(m+f)/2),v[1]=Math.max(f,(m+f)/2)}var x=[Math.min(f,(d+f)/2),Math.max(f,(d+f)/2)];if(t>x[0]&&t<=x[1]||t>=v[0]&&t<=v[1]){o=i[u].index;break}}else{var _=Math.min(c,h),b=Math.max(c,h);if(t>(_+f)/2&&t<=(b+f)/2){o=i[u].index;break}}}else for(var S=0;S0&&S(n[S].coordinate+n[S-1].coordinate)/2&&t<=(n[S].coordinate+n[S+1].coordinate)/2||S===s-1&&t>(n[S].coordinate+n[S-1].coordinate)/2){o=n[S].index;break}return o},oN=function(t){var r,n=t,i=n.type.displayName,a=(r=t.type)!==null&&r!==void 0&&r.defaultProps?vr(vr({},t.type.defaultProps),t.props):t.props,o=a.stroke,s=a.fill,l;switch(i){case"Line":l=o;break;case"Area":case"Radar":l=o&&o!=="none"?o:s;break;default:l=s;break}return l},E2e=function(t){var r=t.barSize,n=t.totalSize,i=t.stackGroups,a=i===void 0?{}:i;if(!a)return{};for(var o={},s=Object.keys(a),l=0,u=s.length;l=0});if(x&&x.length){var _=x[0].type.defaultProps,b=_!==void 0?vr(vr({},_),x[0].props):x[0].props,S=b.barSize,T=b[m];o[T]||(o[T]=[]);var C=dt(S)?r:S;o[T].push({item:x[0],stackList:x.slice(1),barSize:dt(C)?void 0:nf(C,n,0)})}}return o},D2e=function(t){var r=t.barGap,n=t.barCategoryGap,i=t.bandSize,a=t.sizeList,o=a===void 0?[]:a,s=t.maxBarSize,l=o.length;if(l<1)return null;var u=nf(r,i,0,!0),c,f=[];if(o[0].barSize===+o[0].barSize){var h=!1,d=i/l,v=o.reduce(function(S,T){return S+T.barSize||0},0);v+=(l-1)*u,v>=i&&(v-=(l-1)*u,u=0),v>=i&&d>0&&(h=!0,d*=.9,v=l*d);var g=(i-v)/2>>0,m={offset:g-u,size:0};c=o.reduce(function(S,T){var C={item:T.item,position:{offset:m.offset+m.size+u,size:h?d:T.barSize}},A=[].concat($4(S),[C]);return m=A[A.length-1].position,T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){A.push({item:P,position:m})}),A},f)}else{var x=nf(n,i,0,!0);i-2*x-(l-1)*u<=0&&(u=0);var _=(i-2*x-(l-1)*u)/l;_>1&&(_>>=0);var b=s===+s?Math.min(_,s):_;c=o.reduce(function(S,T,C){var A=[].concat($4(S),[{item:T.item,position:{offset:x+(_+u)*C+(_-b)/2,size:b}}]);return T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){A.push({item:P,position:A[A.length-1].position})}),A},f)}return c},N2e=function(t,r,n,i){var a=n.children,o=n.width,s=n.margin,l=o-(s.left||0)-(s.right||0),u=dq({children:a,legendWidth:l});if(u){var c=i||{},f=c.width,h=c.height,d=u.align,v=u.verticalAlign,g=u.layout;if((g==="vertical"||g==="horizontal"&&v==="middle")&&d!=="center"&&we(t[d]))return vr(vr({},t),{},sd({},d,t[d]+(f||0)));if((g==="horizontal"||g==="vertical"&&d==="center")&&v!=="middle"&&we(t[v]))return vr(vr({},t),{},sd({},v,t[v]+(h||0)))}return t},j2e=function(t,r,n){return dt(r)?!0:t==="horizontal"?r==="yAxis":t==="vertical"||n==="x"?r==="xAxis":n==="y"?r==="yAxis":!0},vq=function(t,r,n,i,a){var o=r.props.children,s=sa(o,i0).filter(function(u){return j2e(i,a,u.props.direction)});if(s&&s.length){var l=s.map(function(u){return u.props.dataKey});return t.reduce(function(u,c){var f=Hn(c,n);if(dt(f))return u;var h=Array.isArray(f)?[dT(f),Ll(f)]:[f,f],d=l.reduce(function(v,g){var m=Hn(c,g,0),x=h[0]-Math.abs(Array.isArray(m)?m[0]:m),_=h[1]+Math.abs(Array.isArray(m)?m[1]:m);return[Math.min(x,v[0]),Math.max(_,v[1])]},[1/0,-1/0]);return[Math.min(d[0],u[0]),Math.max(d[1],u[1])]},[1/0,-1/0])}return null},R2e=function(t,r,n,i,a){var o=r.map(function(s){return vq(t,s,n,a,i)}).filter(function(s){return!dt(s)});return o&&o.length?o.reduce(function(s,l){return[Math.min(s[0],l[0]),Math.max(s[1],l[1])]},[1/0,-1/0]):null},pq=function(t,r,n,i,a){var o=r.map(function(l){var u=l.props.dataKey;return n==="number"&&u&&vq(t,l,u,i)||Fg(t,u,n,a)});if(n==="number")return o.reduce(function(l,u){return[Math.min(l[0],u[0]),Math.max(l[1],u[1])]},[1/0,-1/0]);var s={};return o.reduce(function(l,u){for(var c=0,f=u.length;c=2?Ba(s[0]-s[1])*2*u:u,r&&(t.ticks||t.niceTicks)){var c=(t.ticks||t.niceTicks).map(function(f){var h=a?a.indexOf(f):f;return{coordinate:i(h)+u,value:f,offset:u}});return c.filter(function(f){return!Tv(f.coordinate)})}return t.isCategorical&&t.categoricalDomain?t.categoricalDomain.map(function(f,h){return{coordinate:i(f)+u,value:f,index:h,offset:u}}):i.ticks&&!n?i.ticks(t.tickCount).map(function(f){return{coordinate:i(f)+u,value:f,offset:u}}):i.domain().map(function(f,h){return{coordinate:i(f)+u,value:a?a[f]:f,index:h,offset:u}})},zA=new WeakMap,_x=function(t,r){if(typeof r!="function")return t;zA.has(t)||zA.set(t,new WeakMap);var n=zA.get(t);if(n.has(r))return n.get(r);var i=function(){t.apply(void 0,arguments),r.apply(void 0,arguments)};return n.set(r,i),i},B2e=function(t,r,n){var i=t.scale,a=t.type,o=t.layout,s=t.axisType;if(i==="auto")return o==="radial"&&s==="radiusAxis"?{scale:Rm(),realScaleType:"band"}:o==="radial"&&s==="angleAxis"?{scale:w1(),realScaleType:"linear"}:a==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!n)?{scale:$g(),realScaleType:"point"}:a==="category"?{scale:Rm(),realScaleType:"band"}:{scale:w1(),realScaleType:"linear"};if(rf(i)){var l="scale".concat(eT(i));return{scale:(D4[l]||$g)(),realScaleType:D4[l]?l:"point"}}return ft(i)?{scale:i}:{scale:$g(),realScaleType:"point"}},V4=1e-4,z2e=function(t){var r=t.domain();if(!(!r||r.length<=2)){var n=r.length,i=t.range(),a=Math.min(i[0],i[1])-V4,o=Math.max(i[0],i[1])+V4,s=t(r[0]),l=t(r[n-1]);(so||lo)&&t.domain([r[0],r[n-1]])}},$2e=function(t,r){if(!t)return null;for(var n=0,i=t.length;ni)&&(a[1]=i),a[0]>i&&(a[0]=i),a[1]=0?(t[s][n][0]=a,t[s][n][1]=a+l,a=t[s][n][1]):(t[s][n][0]=o,t[s][n][1]=o+l,o=t[s][n][1])}},G2e=function(t){var r=t.length;if(!(r<=0))for(var n=0,i=t[0].length;n=0?(t[o][n][0]=a,t[o][n][1]=a+s,a=t[o][n][1]):(t[o][n][0]=0,t[o][n][1]=0)}},W2e={sign:V2e,expand:ige,none:Td,silhouette:age,wiggle:oge,positive:G2e},H2e=function(t,r,n){var i=r.map(function(s){return s.props.dataKey}),a=W2e[n],o=nge().keys(i).value(function(s,l){return+Hn(s,l,0)}).order(Ek).offset(a);return o(t)},U2e=function(t,r,n,i,a,o){if(!t)return null;var s=o?r.reverse():r,l={},u=s.reduce(function(f,h){var d,v=(d=h.type)!==null&&d!==void 0&&d.defaultProps?vr(vr({},h.type.defaultProps),h.props):h.props,g=v.stackId,m=v.hide;if(m)return f;var x=v[n],_=f[x]||{hasStack:!1,stackGroups:{}};if(Vr(g)){var b=_.stackGroups[g]||{numericAxisId:n,cateAxisId:i,items:[]};b.items.push(h),_.hasStack=!0,_.stackGroups[g]=b}else _.stackGroups[Cv("_stackId_")]={numericAxisId:n,cateAxisId:i,items:[h]};return vr(vr({},f),{},sd({},x,_))},l),c={};return Object.keys(u).reduce(function(f,h){var d=u[h];if(d.hasStack){var v={};d.stackGroups=Object.keys(d.stackGroups).reduce(function(g,m){var x=d.stackGroups[m];return vr(vr({},g),{},sd({},m,{numericAxisId:n,cateAxisId:i,items:x.items,stackedData:H2e(t,x.items,a)}))},v)}return vr(vr({},f),{},sd({},h,d))},c)},Z2e=function(t,r){var n=r.realScaleType,i=r.type,a=r.tickCount,o=r.originalDomain,s=r.allowDecimals,l=n||r.scale;if(l!=="auto"&&l!=="linear")return null;if(a&&i==="number"&&o&&(o[0]==="auto"||o[1]==="auto")){var u=t.domain();if(!u.length)return null;var c=i2e(u,a,s);return t.domain([dT(c),Ll(c)]),{niceTicks:c}}if(a&&i==="number"){var f=t.domain(),h=a2e(f,a,s);return{niceTicks:h}}return null};function k1(e){var t=e.axis,r=e.ticks,n=e.bandSize,i=e.entry,a=e.index,o=e.dataKey;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!dt(i[t.dataKey])){var s=Jb(r,"value",i[t.dataKey]);if(s)return s.coordinate+n/2}return r[a]?r[a].coordinate+n/2:null}var l=Hn(i,dt(o)?t.dataKey:o);return dt(l)?null:t.scale(l)}var G4=function(t){var r=t.axis,n=t.ticks,i=t.offset,a=t.bandSize,o=t.entry,s=t.index;if(r.type==="category")return n[s]?n[s].coordinate+i:null;var l=Hn(o,r.dataKey,r.domain[s]);return dt(l)?null:r.scale(l)-a/2+i},Y2e=function(t){var r=t.numericAxis,n=r.scale.domain();if(r.type==="number"){var i=Math.min(n[0],n[1]),a=Math.max(n[0],n[1]);return i<=0&&a>=0?0:a<0?a:i}return n[0]},X2e=function(t,r){var n,i=(n=t.type)!==null&&n!==void 0&&n.defaultProps?vr(vr({},t.type.defaultProps),t.props):t.props,a=i.stackId;if(Vr(a)){var o=r[a];if(o){var s=o.items.indexOf(t);return s>=0?o.stackedData[s]:null}}return null},q2e=function(t){return t.reduce(function(r,n){return[dT(n.concat([r[0]]).filter(we)),Ll(n.concat([r[1]]).filter(we))]},[1/0,-1/0])},mq=function(t,r,n){return Object.keys(t).reduce(function(i,a){var o=t[a],s=o.stackedData,l=s.reduce(function(u,c){var f=q2e(c.slice(r,n+1));return[Math.min(u[0],f[0]),Math.max(u[1],f[1])]},[1/0,-1/0]);return[Math.min(l[0],i[0]),Math.max(l[1],i[1])]},[1/0,-1/0]).map(function(i){return i===1/0||i===-1/0?0:i})},W4=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,H4=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,uL=function(t,r,n){if(ft(t))return t(r,n);if(!Array.isArray(t))return r;var i=[];if(we(t[0]))i[0]=n?t[0]:Math.min(t[0],r[0]);else if(W4.test(t[0])){var a=+W4.exec(t[0])[1];i[0]=r[0]-a}else ft(t[0])?i[0]=t[0](r[0]):i[0]=r[0];if(we(t[1]))i[1]=n?t[1]:Math.max(t[1],r[1]);else if(H4.test(t[1])){var o=+H4.exec(t[1])[1];i[1]=r[1]+o}else ft(t[1])?i[1]=t[1](r[1]):i[1]=r[1];return i},L1=function(t,r,n){if(t&&t.scale&&t.scale.bandwidth){var i=t.scale.bandwidth();if(!n||i>0)return i}if(t&&r&&r.length>=2){for(var a=DD(r,function(f){return f.coordinate}),o=1/0,s=1,l=a.length;so&&(u=2*Math.PI-u),{radius:s,angle:eMe(u),angleInRadian:u}},nMe=function(t){var r=t.startAngle,n=t.endAngle,i=Math.floor(r/360),a=Math.floor(n/360),o=Math.min(i,a);return{startAngle:r-o*360,endAngle:n-o*360}},iMe=function(t,r){var n=r.startAngle,i=r.endAngle,a=Math.floor(n/360),o=Math.floor(i/360),s=Math.min(a,o);return t+s*360},X4=function(t,r){var n=t.x,i=t.y,a=rMe({x:n,y:i},r),o=a.radius,s=a.angle,l=r.innerRadius,u=r.outerRadius;if(ou)return!1;if(o===0)return!0;var c=nMe(r),f=c.startAngle,h=c.endAngle,d=s,v;if(f<=h){for(;d>h;)d-=360;for(;d=f&&d<=h}else{for(;d>f;)d-=360;for(;d=h&&d<=f}return v?Y4(Y4({},r),{},{radius:o,angle:iMe(d,r)}):null};function Zm(e){"@babel/helpers - typeof";return Zm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zm(e)}var aMe=["offset"];function oMe(e){return cMe(e)||uMe(e)||lMe(e)||sMe()}function sMe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lMe(e,t){if(e){if(typeof e=="string")return cL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return cL(e,t)}}function uMe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function cMe(e){if(Array.isArray(e))return cL(e)}function cL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function hMe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function q4(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Br(e){for(var t=1;t=0?1:-1,b,S;i==="insideStart"?(b=d+_*o,S=g):i==="insideEnd"?(b=v-_*o,S=!g):i==="end"&&(b=v+_*o,S=g),S=x<=0?S:!S;var T=vn(u,c,m,b),C=vn(u,c,m,b+(S?1:-1)*359),A="M".concat(T.x,",").concat(T.y,` - A`).concat(m,",").concat(m,",0,1,").concat(S?0:1,`, - `).concat(C.x,",").concat(C.y),P=dt(t.id)?Cv("recharts-radial-line-"):t.id;return Q.createElement("text",Ym({},n,{dominantBaseline:"central",className:_t("recharts-radial-bar-label",s)}),Q.createElement("defs",null,Q.createElement("path",{id:P,d:A})),Q.createElement("textPath",{xlinkHref:"#".concat(P)},r))},xMe=function(t){var r=t.viewBox,n=t.offset,i=t.position,a=r,o=a.cx,s=a.cy,l=a.innerRadius,u=a.outerRadius,c=a.startAngle,f=a.endAngle,h=(c+f)/2;if(i==="outside"){var d=vn(o,s,u+n,h),v=d.x,g=d.y;return{x:v,y:g,textAnchor:v>=o?"start":"end",verticalAnchor:"middle"}}if(i==="center")return{x:o,y:s,textAnchor:"middle",verticalAnchor:"middle"};if(i==="centerTop")return{x:o,y:s,textAnchor:"middle",verticalAnchor:"start"};if(i==="centerBottom")return{x:o,y:s,textAnchor:"middle",verticalAnchor:"end"};var m=(l+u)/2,x=vn(o,s,m,h),_=x.x,b=x.y;return{x:_,y:b,textAnchor:"middle",verticalAnchor:"middle"}},_Me=function(t){var r=t.viewBox,n=t.parentViewBox,i=t.offset,a=t.position,o=r,s=o.x,l=o.y,u=o.width,c=o.height,f=c>=0?1:-1,h=f*i,d=f>0?"end":"start",v=f>0?"start":"end",g=u>=0?1:-1,m=g*i,x=g>0?"end":"start",_=g>0?"start":"end";if(a==="top"){var b={x:s+u/2,y:l-f*i,textAnchor:"middle",verticalAnchor:d};return Br(Br({},b),n?{height:Math.max(l-n.y,0),width:u}:{})}if(a==="bottom"){var S={x:s+u/2,y:l+c+h,textAnchor:"middle",verticalAnchor:v};return Br(Br({},S),n?{height:Math.max(n.y+n.height-(l+c),0),width:u}:{})}if(a==="left"){var T={x:s-m,y:l+c/2,textAnchor:x,verticalAnchor:"middle"};return Br(Br({},T),n?{width:Math.max(T.x-n.x,0),height:c}:{})}if(a==="right"){var C={x:s+u+m,y:l+c/2,textAnchor:_,verticalAnchor:"middle"};return Br(Br({},C),n?{width:Math.max(n.x+n.width-C.x,0),height:c}:{})}var A=n?{width:u,height:c}:{};return a==="insideLeft"?Br({x:s+m,y:l+c/2,textAnchor:_,verticalAnchor:"middle"},A):a==="insideRight"?Br({x:s+u-m,y:l+c/2,textAnchor:x,verticalAnchor:"middle"},A):a==="insideTop"?Br({x:s+u/2,y:l+h,textAnchor:"middle",verticalAnchor:v},A):a==="insideBottom"?Br({x:s+u/2,y:l+c-h,textAnchor:"middle",verticalAnchor:d},A):a==="insideTopLeft"?Br({x:s+m,y:l+h,textAnchor:_,verticalAnchor:v},A):a==="insideTopRight"?Br({x:s+u-m,y:l+h,textAnchor:x,verticalAnchor:v},A):a==="insideBottomLeft"?Br({x:s+m,y:l+c-h,textAnchor:_,verticalAnchor:d},A):a==="insideBottomRight"?Br({x:s+u-m,y:l+c-h,textAnchor:x,verticalAnchor:d},A):_v(a)&&(we(a.x)||Ac(a.x))&&(we(a.y)||Ac(a.y))?Br({x:s+nf(a.x,u),y:l+nf(a.y,c),textAnchor:"end",verticalAnchor:"end"},A):Br({x:s+u/2,y:l+c/2,textAnchor:"middle",verticalAnchor:"middle"},A)},bMe=function(t){return"cx"in t&&we(t.cx)};function Ln(e){var t=e.offset,r=t===void 0?5:t,n=fMe(e,aMe),i=Br({offset:r},n),a=i.viewBox,o=i.position,s=i.value,l=i.children,u=i.content,c=i.className,f=c===void 0?"":c,h=i.textBreakAll;if(!a||dt(s)&&dt(l)&&!H.isValidElement(u)&&!ft(u))return null;if(H.isValidElement(u))return H.cloneElement(u,i);var d;if(ft(u)){if(d=H.createElement(u,i),H.isValidElement(d))return d}else d=gMe(i);var v=bMe(a),g=ct(i,!0);if(v&&(o==="insideStart"||o==="insideEnd"||o==="end"))return yMe(i,d,g);var m=v?xMe(i):_Me(i);return Q.createElement(v1,Ym({className:_t("recharts-label",f)},g,m,{breakAll:h}),d)}Ln.displayName="Label";var xq=function(t){var r=t.cx,n=t.cy,i=t.angle,a=t.startAngle,o=t.endAngle,s=t.r,l=t.radius,u=t.innerRadius,c=t.outerRadius,f=t.x,h=t.y,d=t.top,v=t.left,g=t.width,m=t.height,x=t.clockWise,_=t.labelViewBox;if(_)return _;if(we(g)&&we(m)){if(we(f)&&we(h))return{x:f,y:h,width:g,height:m};if(we(d)&&we(v))return{x:d,y:v,width:g,height:m}}return we(f)&&we(h)?{x:f,y:h,width:0,height:0}:we(r)&&we(n)?{cx:r,cy:n,startAngle:a||i||0,endAngle:o||i||0,innerRadius:u||0,outerRadius:c||l||s||0,clockWise:x}:t.viewBox?t.viewBox:{}},wMe=function(t,r){return t?t===!0?Q.createElement(Ln,{key:"label-implicit",viewBox:r}):Vr(t)?Q.createElement(Ln,{key:"label-implicit",viewBox:r,value:t}):H.isValidElement(t)?t.type===Ln?H.cloneElement(t,{key:"label-implicit",viewBox:r}):Q.createElement(Ln,{key:"label-implicit",content:t,viewBox:r}):ft(t)?Q.createElement(Ln,{key:"label-implicit",content:t,viewBox:r}):_v(t)?Q.createElement(Ln,Ym({viewBox:r},t,{key:"label-implicit"})):null:null},SMe=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!t||!t.children&&n&&!t.label)return null;var i=t.children,a=xq(t),o=sa(i,Ln).map(function(l,u){return H.cloneElement(l,{viewBox:r||a,key:"label-".concat(u)})});if(!n)return o;var s=wMe(t.label,r||a);return[s].concat(oMe(o))};Ln.parseViewBox=xq;Ln.renderCallByParent=SMe;function TMe(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var CMe=TMe;const AMe=$t(CMe);function Xm(e){"@babel/helpers - typeof";return Xm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xm(e)}var MMe=["valueAccessor"],PMe=["data","dataKey","clockWise","id","textBreakAll"];function kMe(e){return EMe(e)||OMe(e)||IMe(e)||LMe()}function LMe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function IMe(e,t){if(e){if(typeof e=="string")return fL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fL(e,t)}}function OMe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function EMe(e){if(Array.isArray(e))return fL(e)}function fL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function RMe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var BMe=function(t){return Array.isArray(t.value)?AMe(t.value):t.value};function Ms(e){var t=e.valueAccessor,r=t===void 0?BMe:t,n=Q4(e,MMe),i=n.data,a=n.dataKey,o=n.clockWise,s=n.id,l=n.textBreakAll,u=Q4(n,PMe);return!i||!i.length?null:Q.createElement(Yt,{className:"recharts-label-list"},i.map(function(c,f){var h=dt(a)?r(c,f):Hn(c&&c.payload,a),d=dt(s)?{}:{id:"".concat(s,"-").concat(f)};return Q.createElement(Ln,O1({},ct(c,!0),u,d,{parentViewBox:c.parentViewBox,value:h,textBreakAll:l,viewBox:Ln.parseViewBox(dt(o)?c:J4(J4({},c),{},{clockWise:o})),key:"label-".concat(f),index:f}))}))}Ms.displayName="LabelList";function zMe(e,t){return e?e===!0?Q.createElement(Ms,{key:"labelList-implicit",data:t}):Q.isValidElement(e)||ft(e)?Q.createElement(Ms,{key:"labelList-implicit",data:t,content:e}):_v(e)?Q.createElement(Ms,O1({data:t},e,{key:"labelList-implicit"})):null:null}function $Me(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!e||!e.children&&r&&!e.label)return null;var n=e.children,i=sa(n,Ms).map(function(o,s){return H.cloneElement(o,{data:t,key:"labelList-".concat(s)})});if(!r)return i;var a=zMe(e.label,t);return[a].concat(kMe(i))}Ms.renderCallByParent=$Me;function qm(e){"@babel/helpers - typeof";return qm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},qm(e)}function hL(){return hL=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Tf.isSsr)return{width:0,height:0};var n=aSe(r),i=JSON.stringify({text:t,copyStyle:n});if(Xf.widthCache[i])return Xf.widthCache[i];try{var a=document.getElementById(Vz);a||(a=document.createElement("span"),a.setAttribute("id",Vz),a.setAttribute("aria-hidden","true"),document.body.appendChild(a));var o=Yk(Yk({},iSe),n);Object.assign(a.style,o),a.textContent="".concat(t);var s=a.getBoundingClientRect(),l={width:s.width,height:s.height};return Xf.widthCache[i]=l,++Xf.cacheCount>nSe&&(Xf.cacheCount=0,Xf.widthCache={}),l}catch{return{width:0,height:0}}},oSe=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};function jm(e){"@babel/helpers - typeof";return jm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jm(e)}function d1(e,t){return cSe(e)||uSe(e,t)||lSe(e,t)||sSe()}function sSe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lSe(e,t){if(e){if(typeof e=="string")return Gz(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Gz(e,t)}}function Gz(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function TSe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Xz(e,t){return PSe(e)||MSe(e,t)||ASe(e,t)||CSe()}function CSe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ASe(e,t){if(e){if(typeof e=="string")return qz(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return qz(e,t)}}function qz(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&arguments[0]!==void 0?arguments[0]:[];return V.reduce(function(F,$){var B=$.word,Z=$.width,W=F[F.length-1];if(W&&(i==null||a||W.width+Z+n$.width?F:$})};if(!c)return d;for(var m="…",y=function(V){var F=f.slice(0,V),$=_X({breakAll:u,style:l,children:F+m}).wordsWithComputedWidth,B=h($),Z=B.length>o||v(B).width>Number(i);return[Z,B]},x=0,_=f.length-1,b=0,S;x<=_&&b<=f.length-1;){var T=Math.floor((x+_)/2),C=T-1,A=y(C),P=Xz(A,2),I=P[0],k=P[1],O=y(T),D=Xz(O,1),N=D[0];if(!I&&!N&&(x=T+1),I&&N&&(_=T-1),!I&&N){S=k;break}b++}return S||d},Kz=function(t){var r=dt(t)?[]:t.toString().split(xX);return[{words:r}]},LSe=function(t){var r=t.width,n=t.scaleToFit,i=t.children,a=t.style,o=t.breakAll,s=t.maxLines;if((r||n)&&!Tf.isSsr){var l,u,c=_X({breakAll:o,children:i,style:a});if(c){var f=c.wordsWithComputedWidth,h=c.spaceWidth;l=f,u=h}else return Kz(i);return kSe({breakAll:o,children:i,maxLines:s,style:a},l,u,r,n)}return Kz(i)},Jz="#808080",v1=function(t){var r=t.x,n=r===void 0?0:r,i=t.y,a=i===void 0?0:i,o=t.lineHeight,s=o===void 0?"1em":o,l=t.capHeight,u=l===void 0?"0.71em":l,c=t.scaleToFit,f=c===void 0?!1:c,h=t.textAnchor,d=h===void 0?"start":h,v=t.verticalAnchor,m=v===void 0?"end":v,y=t.fill,x=y===void 0?Jz:y,_=Yz(t,wSe),b=H.useMemo(function(){return LSe({breakAll:_.breakAll,children:_.children,maxLines:_.maxLines,scaleToFit:f,style:_.style,width:_.width})},[_.breakAll,_.children,_.maxLines,f,_.style,_.width]),S=_.dx,T=_.dy,C=_.angle,A=_.className,P=_.breakAll,I=Yz(_,SSe);if(!Gr(n)||!Gr(a))return null;var k=n+(Te(S)?S:0),O=a+(Te(T)?T:0),D;switch(m){case"start":D=LA("calc(".concat(u,")"));break;case"middle":D=LA("calc(".concat((b.length-1)/2," * -").concat(s," + (").concat(u," / 2))"));break;default:D=LA("calc(".concat(b.length-1," * -").concat(s,")"));break}var N=[];if(f){var z=b[0].width,V=_.width;N.push("scale(".concat((Te(V)?V/z:1)/z,")"))}return C&&N.push("rotate(".concat(C,", ").concat(k,", ").concat(O,")")),N.length&&(I.transform=N.join(" ")),Q.createElement("text",Xk({},ct(I,!0),{x:k,y:O,className:_t("recharts-text",A),textAnchor:d,fill:x.includes("url")?Jz:x}),b.map(function(F,$){var B=F.words.join(P?"":" ");return Q.createElement("tspan",{x:k,dy:$===0?D:s,key:"".concat(B,"-").concat($)},B)}))};function Yl(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function ISe(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function zD(e){let t,r,n;e.length!==2?(t=Yl,r=(s,l)=>Yl(e(s),l),n=(s,l)=>e(s)-l):(t=e===Yl||e===ISe?e:ESe,r=e,n=e);function i(s,l,u=0,c=s.length){if(u>>1;r(s[f],l)<0?u=f+1:c=f}while(u>>1;r(s[f],l)<=0?u=f+1:c=f}while(uu&&n(s[f-1],l)>-n(s[f],l)?f-1:f}return{left:i,center:o,right:a}}function ESe(){return 0}function bX(e){return e===null?NaN:+e}function*OSe(e,t){for(let r of e)r!=null&&(r=+r)>=r&&(yield r)}const DSe=zD(Yl),e0=DSe.right;zD(bX).center;class Qz extends Map{constructor(t,r=RSe){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),t!=null)for(const[n,i]of t)this.set(n,i)}get(t){return super.get(e4(this,t))}has(t){return super.has(e4(this,t))}set(t,r){return super.set(NSe(this,t),r)}delete(t){return super.delete(jSe(this,t))}}function e4({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):r}function NSe({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function jSe({_intern:e,_key:t},r){const n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function RSe(e){return e!==null&&typeof e=="object"?e.valueOf():e}function BSe(e=Yl){if(e===Yl)return wX;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,r)=>{const n=e(t,r);return n||n===0?n:(e(r,r)===0)-(e(t,t)===0)}}function wX(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const zSe=Math.sqrt(50),$Se=Math.sqrt(10),FSe=Math.sqrt(2);function p1(e,t,r){const n=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),o=a>=zSe?10:a>=$Se?5:a>=FSe?2:1;let s,l,u;return i<0?(u=Math.pow(10,-i)/o,s=Math.round(e*u),l=Math.round(t*u),s/ut&&--l,u=-u):(u=Math.pow(10,i)*o,s=Math.round(e/u),l=Math.round(t/u),s*ut&&--l),l0))return[];if(e===t)return[e];const n=t=i))return[];const s=a-i+1,l=new Array(s);if(n)if(o<0)for(let u=0;u=n)&&(r=n);return r}function r4(e,t){let r;for(const n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);return r}function SX(e,t,r=0,n=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),n=Math.floor(Math.min(e.length-1,n)),!(r<=t&&t<=n))return e;for(i=i===void 0?wX:BSe(i);n>r;){if(n-r>600){const l=n-r+1,u=t-r+1,c=Math.log(l),f=.5*Math.exp(2*c/3),h=.5*Math.sqrt(c*f*(l-f)/l)*(u-l/2<0?-1:1),d=Math.max(r,Math.floor(t-u*f/l+h)),v=Math.min(n,Math.floor(t+(l-u)*f/l+h));SX(e,t,d,v,i)}const a=e[t];let o=r,s=n;for(Cp(e,r,t),i(e[n],a)>0&&Cp(e,r,n);o0;)--s}i(e[r],a)===0?Cp(e,r,s):(++s,Cp(e,s,n)),s<=t&&(r=s+1),t<=s&&(n=s-1)}return e}function Cp(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function VSe(e,t,r){if(e=Float64Array.from(OSe(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return r4(e);if(t>=1)return t4(e);var n,i=(n-1)*t,a=Math.floor(i),o=t4(SX(e,a).subarray(0,a+1)),s=r4(e.subarray(a+1));return o+(s-o)*(i-a)}}function GSe(e,t,r=bX){if(!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return+r(e[0],0,e);if(t>=1)return+r(e[n-1],n-1,e);var n,i=(n-1)*t,a=Math.floor(i),o=+r(e[a],a,e),s=+r(e[a+1],a+1,e);return o+(s-o)*(i-a)}}function WSe(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((t-e)/r))|0,a=new Array(i);++n>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?mx(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?mx(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=USe.exec(e))?new ai(t[1],t[2],t[3],1):(t=ZSe.exec(e))?new ai(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=YSe.exec(e))?mx(t[1],t[2],t[3],t[4]):(t=XSe.exec(e))?mx(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=qSe.exec(e))?u4(t[1],t[2]/100,t[3]/100,1):(t=KSe.exec(e))?u4(t[1],t[2]/100,t[3]/100,t[4]):n4.hasOwnProperty(e)?o4(n4[e]):e==="transparent"?new ai(NaN,NaN,NaN,0):null}function o4(e){return new ai(e>>16&255,e>>8&255,e&255,1)}function mx(e,t,r,n){return n<=0&&(e=t=r=NaN),new ai(e,t,r,n)}function eTe(e){return e instanceof t0||(e=$m(e)),e?(e=e.rgb(),new ai(e.r,e.g,e.b,e.opacity)):new ai}function eL(e,t,r,n){return arguments.length===1?eTe(e):new ai(e,t,r,n??1)}function ai(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}FD(ai,eL,CX(t0,{brighter(e){return e=e==null?g1:Math.pow(g1,e),new ai(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Bm:Math.pow(Bm,e),new ai(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ai(Fc(this.r),Fc(this.g),Fc(this.b),m1(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:s4,formatHex:s4,formatHex8:tTe,formatRgb:l4,toString:l4}));function s4(){return`#${Mc(this.r)}${Mc(this.g)}${Mc(this.b)}`}function tTe(){return`#${Mc(this.r)}${Mc(this.g)}${Mc(this.b)}${Mc((isNaN(this.opacity)?1:this.opacity)*255)}`}function l4(){const e=m1(this.opacity);return`${e===1?"rgb(":"rgba("}${Fc(this.r)}, ${Fc(this.g)}, ${Fc(this.b)}${e===1?")":`, ${e})`}`}function m1(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Fc(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Mc(e){return e=Fc(e),(e<16?"0":"")+e.toString(16)}function u4(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Ra(e,t,r,n)}function AX(e){if(e instanceof Ra)return new Ra(e.h,e.s,e.l,e.opacity);if(e instanceof t0||(e=$m(e)),!e)return new Ra;if(e instanceof Ra)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r0&&l<1?0:o,new Ra(o,s,l,e.opacity)}function rTe(e,t,r,n){return arguments.length===1?AX(e):new Ra(e,t,r,n??1)}function Ra(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}FD(Ra,rTe,CX(t0,{brighter(e){return e=e==null?g1:Math.pow(g1,e),new Ra(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Bm:Math.pow(Bm,e),new Ra(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new ai(IA(e>=240?e-240:e+120,i,n),IA(e,i,n),IA(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Ra(c4(this.h),yx(this.s),yx(this.l),m1(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=m1(this.opacity);return`${e===1?"hsl(":"hsla("}${c4(this.h)}, ${yx(this.s)*100}%, ${yx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function c4(e){return e=(e||0)%360,e<0?e+360:e}function yx(e){return Math.max(0,Math.min(1,e||0))}function IA(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}const VD=e=>()=>e;function nTe(e,t){return function(r){return e+r*t}}function iTe(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function aTe(e){return(e=+e)==1?MX:function(t,r){return r-t?iTe(t,r,e):VD(isNaN(t)?r:t)}}function MX(e,t){var r=t-e;return r?nTe(e,r):VD(isNaN(e)?t:e)}const f4=function e(t){var r=aTe(t);function n(i,a){var o=r((i=eL(i)).r,(a=eL(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=MX(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);function oTe(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;ir&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:y1(n,i)})),r=EA.lastIndex;return rt&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function mTe(e,t,r){var n=e[0],i=e[1],a=t[0],o=t[1];return i2?yTe:mTe,l=u=null,f}function f(h){return h==null||isNaN(h=+h)?a:(l||(l=s(e.map(n),t,r)))(n(o(h)))}return f.invert=function(h){return o(i((u||(u=s(t,e.map(n),y1)))(h)))},f.domain=function(h){return arguments.length?(e=Array.from(h,x1),c()):e.slice()},f.range=function(h){return arguments.length?(t=Array.from(h),c()):t.slice()},f.rangeRound=function(h){return t=Array.from(h),r=GD,c()},f.clamp=function(h){return arguments.length?(o=h?!0:Gn,c()):o!==Gn},f.interpolate=function(h){return arguments.length?(r=h,c()):r},f.unknown=function(h){return arguments.length?(a=h,f):a},function(h,d){return n=h,i=d,c()}}function WD(){return sT()(Gn,Gn)}function xTe(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function _1(e,t){if(!isFinite(e)||e===0)return null;var r=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),n=e.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+e.slice(r+1)]}function kd(e){return e=_1(Math.abs(e)),e?e[1]:NaN}function _Te(e,t){return function(r,n){for(var i=r.length,a=[],o=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>n&&(s=Math.max(1,n-l)),a.push(r.substring(i-=s,i+s)),!((l+=s+1)>n));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function bTe(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var wTe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Fm(e){if(!(t=wTe.exec(e)))throw new Error("invalid format: "+e);var t;return new HD({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Fm.prototype=HD.prototype;function HD(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}HD.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function STe(e){e:for(var t=e.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?e.slice(0,n)+e.slice(i+1):e}var b1;function TTe(e,t){var r=_1(e,t);if(!r)return b1=void 0,e.toPrecision(t);var n=r[0],i=r[1],a=i-(b1=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=n.length;return a===o?n:a>o?n+new Array(a-o+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+_1(e,Math.max(0,t+a-1))[0]}function d4(e,t){var r=_1(e,t);if(!r)return e+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}const v4={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:xTe,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>d4(e*100,t),r:d4,s:TTe,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function p4(e){return e}var g4=Array.prototype.map,m4=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function CTe(e){var t=e.grouping===void 0||e.thousands===void 0?p4:_Te(g4.call(e.grouping,Number),e.thousands+""),r=e.currency===void 0?"":e.currency[0]+"",n=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?p4:bTe(g4.call(e.numerals,String)),o=e.percent===void 0?"%":e.percent+"",s=e.minus===void 0?"−":e.minus+"",l=e.nan===void 0?"NaN":e.nan+"";function u(f,h){f=Fm(f);var d=f.fill,v=f.align,m=f.sign,y=f.symbol,x=f.zero,_=f.width,b=f.comma,S=f.precision,T=f.trim,C=f.type;C==="n"?(b=!0,C="g"):v4[C]||(S===void 0&&(S=12),T=!0,C="g"),(x||d==="0"&&v==="=")&&(x=!0,d="0",v="=");var A=(h&&h.prefix!==void 0?h.prefix:"")+(y==="$"?r:y==="#"&&/[boxX]/.test(C)?"0"+C.toLowerCase():""),P=(y==="$"?n:/[%p]/.test(C)?o:"")+(h&&h.suffix!==void 0?h.suffix:""),I=v4[C],k=/[defgprs%]/.test(C);S=S===void 0?6:/[gprs]/.test(C)?Math.max(1,Math.min(21,S)):Math.max(0,Math.min(20,S));function O(D){var N=A,z=P,V,F,$;if(C==="c")z=I(D)+z,D="";else{D=+D;var B=D<0||1/D<0;if(D=isNaN(D)?l:I(Math.abs(D),S),T&&(D=STe(D)),B&&+D==0&&m!=="+"&&(B=!1),N=(B?m==="("?m:s:m==="-"||m==="("?"":m)+N,z=(C==="s"&&!isNaN(D)&&b1!==void 0?m4[8+b1/3]:"")+z+(B&&m==="("?")":""),k){for(V=-1,F=D.length;++V$||$>57){z=($===46?i+D.slice(V+1):D.slice(V))+z,D=D.slice(0,V);break}}}b&&!x&&(D=t(D,1/0));var Z=N.length+D.length+z.length,W=Z<_?new Array(_-Z+1).join(d):"";switch(b&&x&&(D=t(W+D,W.length?_-z.length:1/0),W=""),v){case"<":D=N+D+z+W;break;case"=":D=N+W+D+z;break;case"^":D=W.slice(0,Z=W.length>>1)+N+D+z+W.slice(Z);break;default:D=W+N+D+z;break}return a(D)}return O.toString=function(){return f+""},O}function c(f,h){var d=Math.max(-8,Math.min(8,Math.floor(kd(h)/3)))*3,v=Math.pow(10,-d),m=u((f=Fm(f),f.type="f",f),{suffix:m4[8+d/3]});return function(y){return m(v*y)}}return{format:u,formatPrefix:c}}var xx,UD,PX;ATe({thousands:",",grouping:[3],currency:["$",""]});function ATe(e){return xx=CTe(e),UD=xx.format,PX=xx.formatPrefix,xx}function MTe(e){return Math.max(0,-kd(Math.abs(e)))}function PTe(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(kd(t)/3)))*3-kd(Math.abs(e)))}function kTe(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,kd(t)-kd(e))+1}function kX(e,t,r,n){var i=Jk(e,t,r),a;switch(n=Fm(n??",f"),n.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=PTe(i,o))&&(n.precision=a),PX(n,o)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=kTe(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=MTe(i))&&(n.precision=a-(n.type==="%")*2);break}}return UD(n)}function _u(e){var t=e.domain;return e.ticks=function(r){var n=t();return qk(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return kX(i[0],i[i.length-1],r??10,n)},e.nice=function(r){r==null&&(r=10);var n=t(),i=0,a=n.length-1,o=n[i],s=n[a],l,u,c=10;for(s0;){if(u=Kk(o,s,r),u===l)return n[i]=o,n[a]=s,t(n);if(u>0)o=Math.floor(o/u)*u,s=Math.ceil(s/u)*u;else if(u<0)o=Math.ceil(o*u)/u,s=Math.floor(s*u)/u;else break;l=u}return e},e}function w1(){var e=WD();return e.copy=function(){return r0(e,w1())},ya.apply(e,arguments),_u(e)}function LX(e){var t;function r(n){return n==null||isNaN(n=+n)?t:n}return r.invert=r,r.domain=r.range=function(n){return arguments.length?(e=Array.from(n,x1),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return LX(e).unknown(t)},e=arguments.length?Array.from(e,x1):[0,1],_u(r)}function IX(e,t){e=e.slice();var r=0,n=e.length-1,i=e[r],a=e[n],o;return aMath.pow(e,t)}function DTe(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function _4(e){return(t,r)=>-e(-t,r)}function ZD(e){const t=e(y4,x4),r=t.domain;let n=10,i,a;function o(){return i=DTe(n),a=OTe(n),r()[0]<0?(i=_4(i),a=_4(a),e(LTe,ITe)):e(y4,x4),t}return t.base=function(s){return arguments.length?(n=+s,o()):n},t.domain=function(s){return arguments.length?(r(s),o()):r()},t.ticks=s=>{const l=r();let u=l[0],c=l[l.length-1];const f=c0){for(;h<=d;++h)for(v=1;vc)break;x.push(m)}}else for(;h<=d;++h)for(v=n-1;v>=1;--v)if(m=h>0?v/a(-h):v*a(h),!(mc)break;x.push(m)}x.length*2{if(s==null&&(s=10),l==null&&(l=n===10?"s":","),typeof l!="function"&&(!(n%1)&&(l=Fm(l)).precision==null&&(l.trim=!0),l=UD(l)),s===1/0)return l;const u=Math.max(1,n*s/t.ticks().length);return c=>{let f=c/a(Math.round(i(c)));return f*nr(IX(r(),{floor:s=>a(Math.floor(i(s))),ceil:s=>a(Math.ceil(i(s)))})),t}function EX(){const e=ZD(sT()).domain([1,10]);return e.copy=()=>r0(e,EX()).base(e.base()),ya.apply(e,arguments),e}function b4(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function w4(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function YD(e){var t=1,r=e(b4(t),w4(t));return r.constant=function(n){return arguments.length?e(b4(t=+n),w4(t)):t},_u(r)}function OX(){var e=YD(sT());return e.copy=function(){return r0(e,OX()).constant(e.constant())},ya.apply(e,arguments)}function S4(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function NTe(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function jTe(e){return e<0?-e*e:e*e}function XD(e){var t=e(Gn,Gn),r=1;function n(){return r===1?e(Gn,Gn):r===.5?e(NTe,jTe):e(S4(r),S4(1/r))}return t.exponent=function(i){return arguments.length?(r=+i,n()):r},_u(t)}function qD(){var e=XD(sT());return e.copy=function(){return r0(e,qD()).exponent(e.exponent())},ya.apply(e,arguments),e}function RTe(){return qD.apply(null,arguments).exponent(.5)}function T4(e){return Math.sign(e)*e*e}function BTe(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function DX(){var e=WD(),t=[0,1],r=!1,n;function i(a){var o=BTe(e(a));return isNaN(o)?n:r?Math.round(o):o}return i.invert=function(a){return e.invert(T4(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,x1)).map(T4)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(r=!!a,i):r},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return DX(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},ya.apply(i,arguments),_u(i)}function NX(){var e=[],t=[],r=[],n;function i(){var o=0,s=Math.max(1,t.length);for(r=new Array(s-1);++o0?r[s-1]:e[0],s=r?[n[r-1],t]:[n[u-1],n[u]]},o.unknown=function(l){return arguments.length&&(a=l),o},o.thresholds=function(){return n.slice()},o.copy=function(){return jX().domain([e,t]).range(i).unknown(a)},ya.apply(_u(o),arguments)}function RX(){var e=[.5],t=[0,1],r,n=1;function i(a){return a!=null&&a<=a?t[e0(e,a,0,n)]:r}return i.domain=function(a){return arguments.length?(e=Array.from(a),n=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),n=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var o=t.indexOf(a);return[e[o-1],e[o]]},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return RX().domain(e).range(t).unknown(r)},ya.apply(i,arguments)}const OA=new Date,DA=new Date;function Yr(e,t,r,n){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const o=i(a),s=i.ceil(a);return a-o(t(a=new Date(+a),o==null?1:Math.floor(o)),a),i.range=(a,o,s)=>{const l=[];if(a=i.ceil(a),s=s==null?1:Math.floor(s),!(a0))return l;let u;do l.push(u=new Date(+a)),t(a,s),e(a);while(uYr(o=>{if(o>=o)for(;e(o),!a(o);)o.setTime(o-1)},(o,s)=>{if(o>=o)if(s<0)for(;++s<=0;)for(;t(o,-1),!a(o););else for(;--s>=0;)for(;t(o,1),!a(o););}),r&&(i.count=(a,o)=>(OA.setTime(+a),DA.setTime(+o),e(OA),e(DA),Math.floor(r(OA,DA))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?o=>n(o)%a===0:o=>i.count(0,o)%a===0):i)),i}const S1=Yr(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);S1.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Yr(t=>{t.setTime(Math.floor(t/e)*e)},(t,r)=>{t.setTime(+t+r*e)},(t,r)=>(r-t)/e):S1);S1.range;const ms=1e3,na=ms*60,ys=na*60,zs=ys*24,KD=zs*7,C4=zs*30,NA=zs*365,Pc=Yr(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ms)},(e,t)=>(t-e)/ms,e=>e.getUTCSeconds());Pc.range;const JD=Yr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ms)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getMinutes());JD.range;const QD=Yr(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getUTCMinutes());QD.range;const eN=Yr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ms-e.getMinutes()*na)},(e,t)=>{e.setTime(+e+t*ys)},(e,t)=>(t-e)/ys,e=>e.getHours());eN.range;const tN=Yr(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ys)},(e,t)=>(t-e)/ys,e=>e.getUTCHours());tN.range;const n0=Yr(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*na)/zs,e=>e.getDate()-1);n0.range;const lT=Yr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/zs,e=>e.getUTCDate()-1);lT.range;const BX=Yr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/zs,e=>Math.floor(e/zs));BX.range;function Cf(e){return Yr(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,r)=>{t.setDate(t.getDate()+r*7)},(t,r)=>(r-t-(r.getTimezoneOffset()-t.getTimezoneOffset())*na)/KD)}const uT=Cf(0),T1=Cf(1),zTe=Cf(2),$Te=Cf(3),Ld=Cf(4),FTe=Cf(5),VTe=Cf(6);uT.range;T1.range;zTe.range;$Te.range;Ld.range;FTe.range;VTe.range;function Af(e){return Yr(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCDate(t.getUTCDate()+r*7)},(t,r)=>(r-t)/KD)}const cT=Af(0),C1=Af(1),GTe=Af(2),WTe=Af(3),Id=Af(4),HTe=Af(5),UTe=Af(6);cT.range;C1.range;GTe.range;WTe.range;Id.range;HTe.range;UTe.range;const rN=Yr(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());rN.range;const nN=Yr(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());nN.range;const $s=Yr(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());$s.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Yr(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,r)=>{t.setFullYear(t.getFullYear()+r*e)});$s.range;const Fs=Yr(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Fs.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Yr(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)});Fs.range;function zX(e,t,r,n,i,a){const o=[[Pc,1,ms],[Pc,5,5*ms],[Pc,15,15*ms],[Pc,30,30*ms],[a,1,na],[a,5,5*na],[a,15,15*na],[a,30,30*na],[i,1,ys],[i,3,3*ys],[i,6,6*ys],[i,12,12*ys],[n,1,zs],[n,2,2*zs],[r,1,KD],[t,1,C4],[t,3,3*C4],[e,1,NA]];function s(u,c,f){const h=cy).right(o,h);if(d===o.length)return e.every(Jk(u/NA,c/NA,f));if(d===0)return S1.every(Math.max(Jk(u,c,f),1));const[v,m]=o[h/o[d-1][2]53)return null;"w"in te||(te.w=1),"Z"in te?(Ce=RA(Ap(te.y,0,1)),Ge=Ce.getUTCDay(),Ce=Ge>4||Ge===0?C1.ceil(Ce):C1(Ce),Ce=lT.offset(Ce,(te.V-1)*7),te.y=Ce.getUTCFullYear(),te.m=Ce.getUTCMonth(),te.d=Ce.getUTCDate()+(te.w+6)%7):(Ce=jA(Ap(te.y,0,1)),Ge=Ce.getDay(),Ce=Ge>4||Ge===0?T1.ceil(Ce):T1(Ce),Ce=n0.offset(Ce,(te.V-1)*7),te.y=Ce.getFullYear(),te.m=Ce.getMonth(),te.d=Ce.getDate()+(te.w+6)%7)}else("W"in te||"U"in te)&&("w"in te||(te.w="u"in te?te.u%7:"W"in te?1:0),Ge="Z"in te?RA(Ap(te.y,0,1)).getUTCDay():jA(Ap(te.y,0,1)).getDay(),te.m=0,te.d="W"in te?(te.w+6)%7+te.W*7-(Ge+5)%7:te.w+te.U*7-(Ge+6)%7);return"Z"in te?(te.H+=te.Z/100|0,te.M+=te.Z%100,RA(te)):jA(te)}}function P(ie,de,ue,te){for(var Ve=0,Ce=de.length,Ge=ue.length,Ye,vt;Ve=Ge)return-1;if(Ye=de.charCodeAt(Ve++),Ye===37){if(Ye=de.charAt(Ve++),vt=T[Ye in A4?de.charAt(Ve++):Ye],!vt||(te=vt(ie,ue,te))<0)return-1}else if(Ye!=ue.charCodeAt(te++))return-1}return te}function I(ie,de,ue){var te=u.exec(de.slice(ue));return te?(ie.p=c.get(te[0].toLowerCase()),ue+te[0].length):-1}function k(ie,de,ue){var te=d.exec(de.slice(ue));return te?(ie.w=v.get(te[0].toLowerCase()),ue+te[0].length):-1}function O(ie,de,ue){var te=f.exec(de.slice(ue));return te?(ie.w=h.get(te[0].toLowerCase()),ue+te[0].length):-1}function D(ie,de,ue){var te=x.exec(de.slice(ue));return te?(ie.m=_.get(te[0].toLowerCase()),ue+te[0].length):-1}function N(ie,de,ue){var te=m.exec(de.slice(ue));return te?(ie.m=y.get(te[0].toLowerCase()),ue+te[0].length):-1}function z(ie,de,ue){return P(ie,t,de,ue)}function V(ie,de,ue){return P(ie,r,de,ue)}function F(ie,de,ue){return P(ie,n,de,ue)}function $(ie){return o[ie.getDay()]}function B(ie){return a[ie.getDay()]}function Z(ie){return l[ie.getMonth()]}function W(ie){return s[ie.getMonth()]}function G(ie){return i[+(ie.getHours()>=12)]}function Y(ie){return 1+~~(ie.getMonth()/3)}function K(ie){return o[ie.getUTCDay()]}function ee(ie){return a[ie.getUTCDay()]}function le(ie){return l[ie.getUTCMonth()]}function he(ie){return s[ie.getUTCMonth()]}function Ne(ie){return i[+(ie.getUTCHours()>=12)]}function xe(ie){return 1+~~(ie.getUTCMonth()/3)}return{format:function(ie){var de=C(ie+="",b);return de.toString=function(){return ie},de},parse:function(ie){var de=A(ie+="",!1);return de.toString=function(){return ie},de},utcFormat:function(ie){var de=C(ie+="",S);return de.toString=function(){return ie},de},utcParse:function(ie){var de=A(ie+="",!0);return de.toString=function(){return ie},de}}}var A4={"-":"",_:" ",0:"0"},ln=/^\s*\d+/,JTe=/^%/,QTe=/[\\^$*+?|[\]().{}]/g;function Mt(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function tCe(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function rCe(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function nCe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function iCe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function aCe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function M4(e,t,r){var n=ln.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function P4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function oCe(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function sCe(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.q=n[0]*3-3,r+n[0].length):-1}function lCe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function k4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function uCe(e,t,r){var n=ln.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function L4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function cCe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function fCe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function hCe(e,t,r){var n=ln.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function dCe(e,t,r){var n=ln.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function vCe(e,t,r){var n=JTe.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function pCe(e,t,r){var n=ln.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function gCe(e,t,r){var n=ln.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function I4(e,t){return Mt(e.getDate(),t,2)}function mCe(e,t){return Mt(e.getHours(),t,2)}function yCe(e,t){return Mt(e.getHours()%12||12,t,2)}function xCe(e,t){return Mt(1+n0.count($s(e),e),t,3)}function $X(e,t){return Mt(e.getMilliseconds(),t,3)}function _Ce(e,t){return $X(e,t)+"000"}function bCe(e,t){return Mt(e.getMonth()+1,t,2)}function wCe(e,t){return Mt(e.getMinutes(),t,2)}function SCe(e,t){return Mt(e.getSeconds(),t,2)}function TCe(e){var t=e.getDay();return t===0?7:t}function CCe(e,t){return Mt(uT.count($s(e)-1,e),t,2)}function FX(e){var t=e.getDay();return t>=4||t===0?Ld(e):Ld.ceil(e)}function ACe(e,t){return e=FX(e),Mt(Ld.count($s(e),e)+($s(e).getDay()===4),t,2)}function MCe(e){return e.getDay()}function PCe(e,t){return Mt(T1.count($s(e)-1,e),t,2)}function kCe(e,t){return Mt(e.getFullYear()%100,t,2)}function LCe(e,t){return e=FX(e),Mt(e.getFullYear()%100,t,2)}function ICe(e,t){return Mt(e.getFullYear()%1e4,t,4)}function ECe(e,t){var r=e.getDay();return e=r>=4||r===0?Ld(e):Ld.ceil(e),Mt(e.getFullYear()%1e4,t,4)}function OCe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Mt(t/60|0,"0",2)+Mt(t%60,"0",2)}function E4(e,t){return Mt(e.getUTCDate(),t,2)}function DCe(e,t){return Mt(e.getUTCHours(),t,2)}function NCe(e,t){return Mt(e.getUTCHours()%12||12,t,2)}function jCe(e,t){return Mt(1+lT.count(Fs(e),e),t,3)}function VX(e,t){return Mt(e.getUTCMilliseconds(),t,3)}function RCe(e,t){return VX(e,t)+"000"}function BCe(e,t){return Mt(e.getUTCMonth()+1,t,2)}function zCe(e,t){return Mt(e.getUTCMinutes(),t,2)}function $Ce(e,t){return Mt(e.getUTCSeconds(),t,2)}function FCe(e){var t=e.getUTCDay();return t===0?7:t}function VCe(e,t){return Mt(cT.count(Fs(e)-1,e),t,2)}function GX(e){var t=e.getUTCDay();return t>=4||t===0?Id(e):Id.ceil(e)}function GCe(e,t){return e=GX(e),Mt(Id.count(Fs(e),e)+(Fs(e).getUTCDay()===4),t,2)}function WCe(e){return e.getUTCDay()}function HCe(e,t){return Mt(C1.count(Fs(e)-1,e),t,2)}function UCe(e,t){return Mt(e.getUTCFullYear()%100,t,2)}function ZCe(e,t){return e=GX(e),Mt(e.getUTCFullYear()%100,t,2)}function YCe(e,t){return Mt(e.getUTCFullYear()%1e4,t,4)}function XCe(e,t){var r=e.getUTCDay();return e=r>=4||r===0?Id(e):Id.ceil(e),Mt(e.getUTCFullYear()%1e4,t,4)}function qCe(){return"+0000"}function O4(){return"%"}function D4(e){return+e}function N4(e){return Math.floor(+e/1e3)}var qf,WX,HX;KCe({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function KCe(e){return qf=KTe(e),WX=qf.format,qf.parse,HX=qf.utcFormat,qf.utcParse,qf}function JCe(e){return new Date(e)}function QCe(e){return e instanceof Date?+e:+new Date(+e)}function iN(e,t,r,n,i,a,o,s,l,u){var c=WD(),f=c.invert,h=c.domain,d=u(".%L"),v=u(":%S"),m=u("%I:%M"),y=u("%I %p"),x=u("%a %d"),_=u("%b %d"),b=u("%B"),S=u("%Y");function T(C){return(l(C)t(i/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(i,a)=>VSe(e,a/n))},r.copy=function(){return XX(t).domain(e)},Qs.apply(r,arguments)}function hT(){var e=0,t=.5,r=1,n=1,i,a,o,s,l,u=Gn,c,f=!1,h;function d(m){return isNaN(m=+m)?h:(m=.5+((m=+c(m))-a)*(n*mt}var sAe=oAe,lAe=QX,uAe=sAe,cAe=Pv;function fAe(e){return e&&e.length?lAe(e,cAe,uAe):void 0}var hAe=fAe;const Ll=$t(hAe);function dAe(e,t){return ee.e^a.s<0?1:-1;for(n=a.d.length,i=e.d.length,t=0,r=ne.d[t]^a.s<0?1:-1;return n===i?0:n>i^a.s<0?1:-1};Be.decimalPlaces=Be.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*Kt;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};Be.dividedBy=Be.div=function(e){return As(this,new this.constructor(e))};Be.dividedToIntegerBy=Be.idiv=function(e){var t=this,r=t.constructor;return Vt(As(t,new r(e),0,1),r.precision)};Be.equals=Be.eq=function(e){return!this.cmp(e)};Be.exponent=function(){return Dr(this)};Be.greaterThan=Be.gt=function(e){return this.cmp(e)>0};Be.greaterThanOrEqualTo=Be.gte=function(e){return this.cmp(e)>=0};Be.isInteger=Be.isint=function(){return this.e>this.d.length-2};Be.isNegative=Be.isneg=function(){return this.s<0};Be.isPositive=Be.ispos=function(){return this.s>0};Be.isZero=function(){return this.s===0};Be.lessThan=Be.lt=function(e){return this.cmp(e)<0};Be.lessThanOrEqualTo=Be.lte=function(e){return this.cmp(e)<1};Be.logarithm=Be.log=function(e){var t,r=this,n=r.constructor,i=n.precision,a=i+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(bi))throw Error(ha+"NaN");if(r.s<1)throw Error(ha+(r.s?"NaN":"-Infinity"));return r.eq(bi)?new n(0):(tr=!1,t=As(Vm(r,a),Vm(e,a),a),tr=!0,Vt(t,i))};Be.minus=Be.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?nq(t,e):tq(t,(e.s=-e.s,e))};Be.modulo=Be.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(ha+"NaN");return r.s?(tr=!1,t=As(r,e,0,1).times(e),tr=!0,r.minus(t)):Vt(new n(r),i)};Be.naturalExponential=Be.exp=function(){return rq(this)};Be.naturalLogarithm=Be.ln=function(){return Vm(this)};Be.negated=Be.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};Be.plus=Be.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?tq(t,e):nq(t,(e.s=-e.s,e))};Be.precision=Be.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Vc+e);if(t=Dr(i)+1,n=i.d.length-1,r=n*Kt+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};Be.squareRoot=Be.sqrt=function(){var e,t,r,n,i,a,o,s=this,l=s.constructor;if(s.s<1){if(!s.s)return new l(0);throw Error(ha+"NaN")}for(e=Dr(s),tr=!1,i=Math.sqrt(+s),i==0||i==1/0?(t=So(s.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Ev((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new l(t)):n=new l(i.toString()),r=l.precision,i=o=r+3;;)if(a=n,n=a.plus(As(s,a,o+2)).times(.5),So(a.d).slice(0,o)===(t=So(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t=="4999"){if(Vt(a,r+1,0),a.times(a).eq(s)){n=a;break}}else if(t!="9999")break;o+=4}return tr=!0,Vt(n,r)};Be.times=Be.mul=function(e){var t,r,n,i,a,o,s,l,u,c=this,f=c.constructor,h=c.d,d=(e=new f(e)).d;if(!c.s||!e.s)return new f(0);for(e.s*=c.s,r=c.e+e.e,l=h.length,u=d.length,l=0;){for(t=0,i=l+n;i>n;)s=a[i]+d[n]*h[i-n-1]+t,a[i--]=s%en|0,t=s/en|0;a[i]=(a[i]+t)%en|0}for(;!a[--o];)a.pop();return t?++r:a.shift(),e.d=a,e.e=r,tr?Vt(e,f.precision):e};Be.toDecimalPlaces=Be.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:($o(e,0,Iv),t===void 0?t=n.rounding:$o(t,0,8),Vt(r,e+Dr(r)+1,t))};Be.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=of(n,!0):($o(e,0,Iv),t===void 0?t=i.rounding:$o(t,0,8),n=Vt(new i(n),e+1,t),r=of(n,!0,e+1)),r};Be.toFixed=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?of(i):($o(e,0,Iv),t===void 0?t=a.rounding:$o(t,0,8),n=Vt(new a(i),e+Dr(i)+1,t),r=of(n.abs(),!1,e+Dr(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};Be.toInteger=Be.toint=function(){var e=this,t=e.constructor;return Vt(new t(e),Dr(e)+1,t.rounding)};Be.toNumber=function(){return+this};Be.toPower=Be.pow=function(e){var t,r,n,i,a,o,s=this,l=s.constructor,u=12,c=+(e=new l(e));if(!e.s)return new l(bi);if(s=new l(s),!s.s){if(e.s<1)throw Error(ha+"Infinity");return s}if(s.eq(bi))return s;if(n=l.precision,e.eq(bi))return Vt(s,n);if(t=e.e,r=e.d.length-1,o=t>=r,a=s.s,o){if((r=c<0?-c:c)<=eq){for(i=new l(bi),t=Math.ceil(n/Kt+4),tr=!1;r%2&&(i=i.times(s),B4(i.d,t)),r=Ev(r/2),r!==0;)s=s.times(s),B4(s.d,t);return tr=!0,e.s<0?new l(bi).div(i):Vt(i,n)}}else if(a<0)throw Error(ha+"NaN");return a=a<0&&e.d[Math.max(t,r)]&1?-1:1,s.s=1,tr=!1,i=e.times(Vm(s,n+u)),tr=!0,i=rq(i),i.s=a,i};Be.toPrecision=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?(r=Dr(i),n=of(i,r<=a.toExpNeg||r>=a.toExpPos)):($o(e,1,Iv),t===void 0?t=a.rounding:$o(t,0,8),i=Vt(new a(i),e,t),r=Dr(i),n=of(i,e<=r||r<=a.toExpNeg,e)),n};Be.toSignificantDigits=Be.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):($o(e,1,Iv),t===void 0?t=n.rounding:$o(t,0,8)),Vt(new n(r),e,t)};Be.toString=Be.valueOf=Be.val=Be.toJSON=Be[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Dr(e),r=e.constructor;return of(e,t<=r.toExpNeg||t>=r.toExpPos)};function tq(e,t){var r,n,i,a,o,s,l,u,c=e.constructor,f=c.precision;if(!e.s||!t.s)return t.s||(t=new c(e)),tr?Vt(t,f):t;if(l=e.d,u=t.d,o=e.e,i=t.e,l=l.slice(),a=o-i,a){for(a<0?(n=l,a=-a,s=u.length):(n=u,i=o,s=l.length),o=Math.ceil(f/Kt),s=o>s?o+1:s+1,a>s&&(a=s,n.length=1),n.reverse();a--;)n.push(0);n.reverse()}for(s=l.length,a=u.length,s-a<0&&(a=s,n=u,u=l,l=n),r=0;a;)r=(l[--a]=l[a]+u[a]+r)/en|0,l[a]%=en;for(r&&(l.unshift(r),++i),s=l.length;l[--s]==0;)l.pop();return t.d=l,t.e=i,tr?Vt(t,f):t}function $o(e,t,r){if(e!==~~e||er)throw Error(Vc+e)}function So(e){var t,r,n,i=e.length-1,a="",o=e[0];if(i>0){for(a+=o,t=1;to?1:-1;else for(s=l=0;si[s]?1:-1;break}return l}function r(n,i,a){for(var o=0;a--;)n[a]-=o,o=n[a]1;)n.shift()}return function(n,i,a,o){var s,l,u,c,f,h,d,v,m,y,x,_,b,S,T,C,A,P,I=n.constructor,k=n.s==i.s?1:-1,O=n.d,D=i.d;if(!n.s)return new I(n);if(!i.s)throw Error(ha+"Division by zero");for(l=n.e-i.e,A=D.length,T=O.length,d=new I(k),v=d.d=[],u=0;D[u]==(O[u]||0);)++u;if(D[u]>(O[u]||0)&&--l,a==null?_=a=I.precision:o?_=a+(Dr(n)-Dr(i))+1:_=a,_<0)return new I(0);if(_=_/Kt+2|0,u=0,A==1)for(c=0,D=D[0],_++;(u1&&(D=e(D,c),O=e(O,c),A=D.length,T=O.length),S=A,m=O.slice(0,A),y=m.length;y=en/2&&++C;do c=0,s=t(D,m,A,y),s<0?(x=m[0],A!=y&&(x=x*en+(m[1]||0)),c=x/C|0,c>1?(c>=en&&(c=en-1),f=e(D,c),h=f.length,y=m.length,s=t(f,m,h,y),s==1&&(c--,r(f,A16)throw Error(sN+Dr(e));if(!e.s)return new c(bi);for(tr=!1,s=f,o=new c(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(n=Math.log(hc(2,u))/Math.LN10*2+5|0,s+=n,r=i=a=new c(bi),c.precision=s;;){if(i=Vt(i.times(e),s),r=r.times(++l),o=a.plus(As(i,r,s)),So(o.d).slice(0,s)===So(a.d).slice(0,s)){for(;u--;)a=Vt(a.times(a),s);return c.precision=f,t==null?(tr=!0,Vt(a,f)):a}a=o}}function Dr(e){for(var t=e.e*Kt,r=e.d[0];r>=10;r/=10)t++;return t}function BA(e,t,r){if(t>e.LN10.sd())throw tr=!0,r&&(e.precision=r),Error(ha+"LN10 precision limit exceeded");return Vt(new e(e.LN10),t)}function bl(e){for(var t="";e--;)t+="0";return t}function Vm(e,t){var r,n,i,a,o,s,l,u,c,f=1,h=10,d=e,v=d.d,m=d.constructor,y=m.precision;if(d.s<1)throw Error(ha+(d.s?"NaN":"-Infinity"));if(d.eq(bi))return new m(0);if(t==null?(tr=!1,u=y):u=t,d.eq(10))return t==null&&(tr=!0),BA(m,u);if(u+=h,m.precision=u,r=So(v),n=r.charAt(0),a=Dr(d),Math.abs(a)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)d=d.times(e),r=So(d.d),n=r.charAt(0),f++;a=Dr(d),n>1?(d=new m("0."+r),a++):d=new m(n+"."+r.slice(1))}else return l=BA(m,u+2,y).times(a+""),d=Vm(new m(n+"."+r.slice(1)),u-h).plus(l),m.precision=y,t==null?(tr=!0,Vt(d,y)):d;for(s=o=d=As(d.minus(bi),d.plus(bi),u),c=Vt(d.times(d),u),i=3;;){if(o=Vt(o.times(c),u),l=s.plus(As(o,new m(i),u)),So(l.d).slice(0,u)===So(s.d).slice(0,u))return s=s.times(2),a!==0&&(s=s.plus(BA(m,u+2,y).times(a+""))),s=As(s,new m(f),u),m.precision=y,t==null?(tr=!0,Vt(s,y)):s;s=l,i+=2}}function R4(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(n,i),t){if(i-=n,r=r-n-1,e.e=Ev(r/Kt),e.d=[],n=(r+1)%Kt,r<0&&(n+=Kt),nA1||e.e<-A1))throw Error(sN+r)}else e.s=0,e.e=0,e.d=[0];return e}function Vt(e,t,r){var n,i,a,o,s,l,u,c,f=e.d;for(o=1,a=f[0];a>=10;a/=10)o++;if(n=t-o,n<0)n+=Kt,i=t,u=f[c=0];else{if(c=Math.ceil((n+1)/Kt),a=f.length,c>=a)return e;for(u=a=f[c],o=1;a>=10;a/=10)o++;n%=Kt,i=n-Kt+o}if(r!==void 0&&(a=hc(10,o-i-1),s=u/a%10|0,l=t<0||f[c+1]!==void 0||u%a,l=r<4?(s||l)&&(r==0||r==(e.s<0?3:2)):s>5||s==5&&(r==4||l||r==6&&(n>0?i>0?u/hc(10,o-i):0:f[c-1])%10&1||r==(e.s<0?8:7))),t<1||!f[0])return l?(a=Dr(e),f.length=1,t=t-a-1,f[0]=hc(10,(Kt-t%Kt)%Kt),e.e=Ev(-t/Kt)||0):(f.length=1,f[0]=e.e=e.s=0),e;if(n==0?(f.length=c,a=1,c--):(f.length=c+1,a=hc(10,Kt-n),f[c]=i>0?(u/hc(10,o-i)%hc(10,i)|0)*a:0),l)for(;;)if(c==0){(f[0]+=a)==en&&(f[0]=1,++e.e);break}else{if(f[c]+=a,f[c]!=en)break;f[c--]=0,a=1}for(n=f.length;f[--n]===0;)f.pop();if(tr&&(e.e>A1||e.e<-A1))throw Error(sN+Dr(e));return e}function nq(e,t){var r,n,i,a,o,s,l,u,c,f,h=e.constructor,d=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),tr?Vt(t,d):t;if(l=e.d,f=t.d,n=t.e,u=e.e,l=l.slice(),o=u-n,o){for(c=o<0,c?(r=l,o=-o,s=f.length):(r=f,n=u,s=l.length),i=Math.max(Math.ceil(d/Kt),s)+2,o>i&&(o=i,r.length=1),r.reverse(),i=o;i--;)r.push(0);r.reverse()}else{for(i=l.length,s=f.length,c=i0;--i)l[s++]=0;for(i=f.length;i>o;){if(l[--i]0?a=a.charAt(0)+"."+a.slice(1)+bl(n):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+bl(-i-1)+a,r&&(n=r-o)>0&&(a+=bl(n))):i>=o?(a+=bl(i+1-o),r&&(n=r-i-1)>0&&(a=a+"."+bl(n))):((n=i+1)0&&(i+1===o&&(a+="."),a+=bl(n))),e.s<0?"-"+a:a}function B4(e,t){if(e.length>t)return e.length=t,!0}function iq(e){var t,r,n;function i(a){var o=this;if(!(o instanceof i))return new i(a);if(o.constructor=i,a instanceof i){o.s=a.s,o.e=a.e,o.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Vc+a);if(a>0)o.s=1;else if(a<0)a=-a,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(a===~~a&&a<1e7){o.e=0,o.d=[a];return}return R4(o,a.toString())}else if(typeof a!="string")throw Error(Vc+a);if(a.charCodeAt(0)===45?(a=a.slice(1),o.s=-1):o.s=1,NAe.test(a))R4(o,a);else throw Error(Vc+a)}if(i.prototype=Be,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=iq,i.config=i.set=jAe,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&n<=i[t+2])this[r]=n;else throw Error(Vc+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Vc+r+": "+n);return this}var lN=iq(DAe);bi=new lN(1);const Bt=lN;function RAe(e){return FAe(e)||$Ae(e)||zAe(e)||BAe()}function BAe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function zAe(e,t){if(e){if(typeof e=="string")return nL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return nL(e,t)}}function $Ae(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function FAe(e){if(Array.isArray(e))return nL(e)}function nL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=t?r.apply(void 0,i):e(t-o,z4(function(){for(var s=arguments.length,l=new Array(s),u=0;ue.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"||!(Symbol.iterator in Object(e)))){var r=[],n=!0,i=!1,a=void 0;try{for(var o=e[Symbol.iterator](),s;!(n=(s=o.next()).done)&&(r.push(s.value),!(t&&r.length===t));n=!0);}catch(l){i=!0,a=l}finally{try{!n&&o.return!=null&&o.return()}finally{if(i)throw a}}return r}}function r2e(e){if(Array.isArray(e))return e}function uq(e){var t=Gm(e,2),r=t[0],n=t[1],i=r,a=n;return r>n&&(i=n,a=r),[i,a]}function cq(e,t,r){if(e.lte(0))return new Bt(0);var n=pT.getDigitCount(e.toNumber()),i=new Bt(10).pow(n),a=e.div(i),o=n!==1?.05:.1,s=new Bt(Math.ceil(a.div(o).toNumber())).add(r).mul(o),l=s.mul(i);return t?l:new Bt(Math.ceil(l))}function n2e(e,t,r){var n=1,i=new Bt(e);if(!i.isint()&&r){var a=Math.abs(e);a<1?(n=new Bt(10).pow(pT.getDigitCount(e)-1),i=new Bt(Math.floor(i.div(n).toNumber())).mul(n)):a>1&&(i=new Bt(Math.floor(e)))}else e===0?i=new Bt(Math.floor((t-1)/2)):r||(i=new Bt(Math.floor(e)));var o=Math.floor((t-1)/2),s=HAe(WAe(function(l){return i.add(new Bt(l-o).mul(n)).toNumber()}),iL);return s(0,t)}function fq(e,t,r,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((t-e)/(r-1)))return{step:new Bt(0),tickMin:new Bt(0),tickMax:new Bt(0)};var a=cq(new Bt(t).sub(e).div(r-1),n,i),o;e<=0&&t>=0?o=new Bt(0):(o=new Bt(e).add(t).div(2),o=o.sub(new Bt(o).mod(a)));var s=Math.ceil(o.sub(e).div(a).toNumber()),l=Math.ceil(new Bt(t).sub(o).div(a).toNumber()),u=s+l+1;return u>r?fq(e,t,r,n,i+1):(u0?l+(r-u):l,s=t>0?s:s+(r-u)),{step:a,tickMin:o.sub(new Bt(s).mul(a)),tickMax:o.add(new Bt(l).mul(a))})}function i2e(e){var t=Gm(e,2),r=t[0],n=t[1],i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Math.max(i,2),s=uq([r,n]),l=Gm(s,2),u=l[0],c=l[1];if(u===-1/0||c===1/0){var f=c===1/0?[u].concat(oL(iL(0,i-1).map(function(){return 1/0}))):[].concat(oL(iL(0,i-1).map(function(){return-1/0})),[c]);return r>n?aL(f):f}if(u===c)return n2e(u,i,a);var h=fq(u,c,o,a),d=h.step,v=h.tickMin,m=h.tickMax,y=pT.rangeStep(v,m.add(new Bt(.1).mul(d)),d);return r>n?aL(y):y}function a2e(e,t){var r=Gm(e,2),n=r[0],i=r[1],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=uq([n,i]),s=Gm(o,2),l=s[0],u=s[1];if(l===-1/0||u===1/0)return[n,i];if(l===u)return[l];var c=Math.max(t,2),f=cq(new Bt(u).sub(l).div(c-1),a,0),h=[].concat(oL(pT.rangeStep(new Bt(l),new Bt(u).sub(new Bt(.99).mul(f)),f)),[u]);return n>i?aL(h):h}var o2e=sq(i2e),s2e=sq(a2e),l2e="Invariant failed";function sf(e,t){throw new Error(l2e)}var u2e=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function Od(e){"@babel/helpers - typeof";return Od=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Od(e)}function M1(){return M1=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function g2e(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function m2e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function y2e(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,o=-1,s=(r=n==null?void 0:n.length)!==null&&r!==void 0?r:0;if(s<=1)return 0;if(a&&a.axisType==="angleAxis"&&Math.abs(Math.abs(a.range[1]-a.range[0])-360)<=1e-6)for(var l=a.range,u=0;u0?i[u-1].coordinate:i[s-1].coordinate,f=i[u].coordinate,h=u>=s-1?i[0].coordinate:i[u+1].coordinate,d=void 0;if(Ba(f-c)!==Ba(h-f)){var v=[];if(Ba(h-f)===Ba(l[1]-l[0])){d=h;var m=f+l[1]-l[0];v[0]=Math.min(m,(m+c)/2),v[1]=Math.max(m,(m+c)/2)}else{d=c;var y=h+l[1]-l[0];v[0]=Math.min(f,(y+f)/2),v[1]=Math.max(f,(y+f)/2)}var x=[Math.min(f,(d+f)/2),Math.max(f,(d+f)/2)];if(t>x[0]&&t<=x[1]||t>=v[0]&&t<=v[1]){o=i[u].index;break}}else{var _=Math.min(c,h),b=Math.max(c,h);if(t>(_+f)/2&&t<=(b+f)/2){o=i[u].index;break}}}else for(var S=0;S0&&S(n[S].coordinate+n[S-1].coordinate)/2&&t<=(n[S].coordinate+n[S+1].coordinate)/2||S===s-1&&t>(n[S].coordinate+n[S-1].coordinate)/2){o=n[S].index;break}return o},uN=function(t){var r,n=t,i=n.type.displayName,a=(r=t.type)!==null&&r!==void 0&&r.defaultProps?vr(vr({},t.type.defaultProps),t.props):t.props,o=a.stroke,s=a.fill,l;switch(i){case"Line":l=o;break;case"Area":case"Radar":l=o&&o!=="none"?o:s;break;default:l=s;break}return l},N2e=function(t){var r=t.barSize,n=t.totalSize,i=t.stackGroups,a=i===void 0?{}:i;if(!a)return{};for(var o={},s=Object.keys(a),l=0,u=s.length;l=0});if(x&&x.length){var _=x[0].type.defaultProps,b=_!==void 0?vr(vr({},_),x[0].props):x[0].props,S=b.barSize,T=b[y];o[T]||(o[T]=[]);var C=dt(S)?r:S;o[T].push({item:x[0],stackList:x.slice(1),barSize:dt(C)?void 0:af(C,n,0)})}}return o},j2e=function(t){var r=t.barGap,n=t.barCategoryGap,i=t.bandSize,a=t.sizeList,o=a===void 0?[]:a,s=t.maxBarSize,l=o.length;if(l<1)return null;var u=af(r,i,0,!0),c,f=[];if(o[0].barSize===+o[0].barSize){var h=!1,d=i/l,v=o.reduce(function(S,T){return S+T.barSize||0},0);v+=(l-1)*u,v>=i&&(v-=(l-1)*u,u=0),v>=i&&d>0&&(h=!0,d*=.9,v=l*d);var m=(i-v)/2>>0,y={offset:m-u,size:0};c=o.reduce(function(S,T){var C={item:T.item,position:{offset:y.offset+y.size+u,size:h?d:T.barSize}},A=[].concat(V4(S),[C]);return y=A[A.length-1].position,T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){A.push({item:P,position:y})}),A},f)}else{var x=af(n,i,0,!0);i-2*x-(l-1)*u<=0&&(u=0);var _=(i-2*x-(l-1)*u)/l;_>1&&(_>>=0);var b=s===+s?Math.min(_,s):_;c=o.reduce(function(S,T,C){var A=[].concat(V4(S),[{item:T.item,position:{offset:x+(_+u)*C+(_-b)/2,size:b}}]);return T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){A.push({item:P,position:A[A.length-1].position})}),A},f)}return c},R2e=function(t,r,n,i){var a=n.children,o=n.width,s=n.margin,l=o-(s.left||0)-(s.right||0),u=pq({children:a,legendWidth:l});if(u){var c=i||{},f=c.width,h=c.height,d=u.align,v=u.verticalAlign,m=u.layout;if((m==="vertical"||m==="horizontal"&&v==="middle")&&d!=="center"&&Te(t[d]))return vr(vr({},t),{},ld({},d,t[d]+(f||0)));if((m==="horizontal"||m==="vertical"&&d==="center")&&v!=="middle"&&Te(t[v]))return vr(vr({},t),{},ld({},v,t[v]+(h||0)))}return t},B2e=function(t,r,n){return dt(r)?!0:t==="horizontal"?r==="yAxis":t==="vertical"||n==="x"?r==="xAxis":n==="y"?r==="yAxis":!0},gq=function(t,r,n,i,a){var o=r.props.children,s=sa(o,i0).filter(function(u){return B2e(i,a,u.props.direction)});if(s&&s.length){var l=s.map(function(u){return u.props.dataKey});return t.reduce(function(u,c){var f=Un(c,n);if(dt(f))return u;var h=Array.isArray(f)?[dT(f),Ll(f)]:[f,f],d=l.reduce(function(v,m){var y=Un(c,m,0),x=h[0]-Math.abs(Array.isArray(y)?y[0]:y),_=h[1]+Math.abs(Array.isArray(y)?y[1]:y);return[Math.min(x,v[0]),Math.max(_,v[1])]},[1/0,-1/0]);return[Math.min(d[0],u[0]),Math.max(d[1],u[1])]},[1/0,-1/0])}return null},z2e=function(t,r,n,i,a){var o=r.map(function(s){return gq(t,s,n,a,i)}).filter(function(s){return!dt(s)});return o&&o.length?o.reduce(function(s,l){return[Math.min(s[0],l[0]),Math.max(s[1],l[1])]},[1/0,-1/0]):null},mq=function(t,r,n,i,a){var o=r.map(function(l){var u=l.props.dataKey;return n==="number"&&u&&gq(t,l,u,i)||Fg(t,u,n,a)});if(n==="number")return o.reduce(function(l,u){return[Math.min(l[0],u[0]),Math.max(l[1],u[1])]},[1/0,-1/0]);var s={};return o.reduce(function(l,u){for(var c=0,f=u.length;c=2?Ba(s[0]-s[1])*2*u:u,r&&(t.ticks||t.niceTicks)){var c=(t.ticks||t.niceTicks).map(function(f){var h=a?a.indexOf(f):f;return{coordinate:i(h)+u,value:f,offset:u}});return c.filter(function(f){return!Tv(f.coordinate)})}return t.isCategorical&&t.categoricalDomain?t.categoricalDomain.map(function(f,h){return{coordinate:i(f)+u,value:f,index:h,offset:u}}):i.ticks&&!n?i.ticks(t.tickCount).map(function(f){return{coordinate:i(f)+u,value:f,offset:u}}):i.domain().map(function(f,h){return{coordinate:i(f)+u,value:a?a[f]:f,index:h,offset:u}})},zA=new WeakMap,_x=function(t,r){if(typeof r!="function")return t;zA.has(t)||zA.set(t,new WeakMap);var n=zA.get(t);if(n.has(r))return n.get(r);var i=function(){t.apply(void 0,arguments),r.apply(void 0,arguments)};return n.set(r,i),i},$2e=function(t,r,n){var i=t.scale,a=t.type,o=t.layout,s=t.axisType;if(i==="auto")return o==="radial"&&s==="radiusAxis"?{scale:Rm(),realScaleType:"band"}:o==="radial"&&s==="angleAxis"?{scale:w1(),realScaleType:"linear"}:a==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!n)?{scale:$g(),realScaleType:"point"}:a==="category"?{scale:Rm(),realScaleType:"band"}:{scale:w1(),realScaleType:"linear"};if(nf(i)){var l="scale".concat(eT(i));return{scale:(j4[l]||$g)(),realScaleType:j4[l]?l:"point"}}return ft(i)?{scale:i}:{scale:$g(),realScaleType:"point"}},W4=1e-4,F2e=function(t){var r=t.domain();if(!(!r||r.length<=2)){var n=r.length,i=t.range(),a=Math.min(i[0],i[1])-W4,o=Math.max(i[0],i[1])+W4,s=t(r[0]),l=t(r[n-1]);(so||lo)&&t.domain([r[0],r[n-1]])}},V2e=function(t,r){if(!t)return null;for(var n=0,i=t.length;ni)&&(a[1]=i),a[0]>i&&(a[0]=i),a[1]=0?(t[s][n][0]=a,t[s][n][1]=a+l,a=t[s][n][1]):(t[s][n][0]=o,t[s][n][1]=o+l,o=t[s][n][1])}},H2e=function(t){var r=t.length;if(!(r<=0))for(var n=0,i=t[0].length;n=0?(t[o][n][0]=a,t[o][n][1]=a+s,a=t[o][n][1]):(t[o][n][0]=0,t[o][n][1]=0)}},U2e={sign:W2e,expand:oge,none:Td,silhouette:sge,wiggle:lge,positive:H2e},Z2e=function(t,r,n){var i=r.map(function(s){return s.props.dataKey}),a=U2e[n],o=age().keys(i).value(function(s,l){return+Un(s,l,0)}).order(Dk).offset(a);return o(t)},Y2e=function(t,r,n,i,a,o){if(!t)return null;var s=o?r.reverse():r,l={},u=s.reduce(function(f,h){var d,v=(d=h.type)!==null&&d!==void 0&&d.defaultProps?vr(vr({},h.type.defaultProps),h.props):h.props,m=v.stackId,y=v.hide;if(y)return f;var x=v[n],_=f[x]||{hasStack:!1,stackGroups:{}};if(Gr(m)){var b=_.stackGroups[m]||{numericAxisId:n,cateAxisId:i,items:[]};b.items.push(h),_.hasStack=!0,_.stackGroups[m]=b}else _.stackGroups[Cv("_stackId_")]={numericAxisId:n,cateAxisId:i,items:[h]};return vr(vr({},f),{},ld({},x,_))},l),c={};return Object.keys(u).reduce(function(f,h){var d=u[h];if(d.hasStack){var v={};d.stackGroups=Object.keys(d.stackGroups).reduce(function(m,y){var x=d.stackGroups[y];return vr(vr({},m),{},ld({},y,{numericAxisId:n,cateAxisId:i,items:x.items,stackedData:Z2e(t,x.items,a)}))},v)}return vr(vr({},f),{},ld({},h,d))},c)},X2e=function(t,r){var n=r.realScaleType,i=r.type,a=r.tickCount,o=r.originalDomain,s=r.allowDecimals,l=n||r.scale;if(l!=="auto"&&l!=="linear")return null;if(a&&i==="number"&&o&&(o[0]==="auto"||o[1]==="auto")){var u=t.domain();if(!u.length)return null;var c=o2e(u,a,s);return t.domain([dT(c),Ll(c)]),{niceTicks:c}}if(a&&i==="number"){var f=t.domain(),h=s2e(f,a,s);return{niceTicks:h}}return null};function k1(e){var t=e.axis,r=e.ticks,n=e.bandSize,i=e.entry,a=e.index,o=e.dataKey;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!dt(i[t.dataKey])){var s=Jb(r,"value",i[t.dataKey]);if(s)return s.coordinate+n/2}return r[a]?r[a].coordinate+n/2:null}var l=Un(i,dt(o)?t.dataKey:o);return dt(l)?null:t.scale(l)}var H4=function(t){var r=t.axis,n=t.ticks,i=t.offset,a=t.bandSize,o=t.entry,s=t.index;if(r.type==="category")return n[s]?n[s].coordinate+i:null;var l=Un(o,r.dataKey,r.domain[s]);return dt(l)?null:r.scale(l)-a/2+i},q2e=function(t){var r=t.numericAxis,n=r.scale.domain();if(r.type==="number"){var i=Math.min(n[0],n[1]),a=Math.max(n[0],n[1]);return i<=0&&a>=0?0:a<0?a:i}return n[0]},K2e=function(t,r){var n,i=(n=t.type)!==null&&n!==void 0&&n.defaultProps?vr(vr({},t.type.defaultProps),t.props):t.props,a=i.stackId;if(Gr(a)){var o=r[a];if(o){var s=o.items.indexOf(t);return s>=0?o.stackedData[s]:null}}return null},J2e=function(t){return t.reduce(function(r,n){return[dT(n.concat([r[0]]).filter(Te)),Ll(n.concat([r[1]]).filter(Te))]},[1/0,-1/0])},xq=function(t,r,n){return Object.keys(t).reduce(function(i,a){var o=t[a],s=o.stackedData,l=s.reduce(function(u,c){var f=J2e(c.slice(r,n+1));return[Math.min(u[0],f[0]),Math.max(u[1],f[1])]},[1/0,-1/0]);return[Math.min(l[0],i[0]),Math.max(l[1],i[1])]},[1/0,-1/0]).map(function(i){return i===1/0||i===-1/0?0:i})},U4=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Z4=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,cL=function(t,r,n){if(ft(t))return t(r,n);if(!Array.isArray(t))return r;var i=[];if(Te(t[0]))i[0]=n?t[0]:Math.min(t[0],r[0]);else if(U4.test(t[0])){var a=+U4.exec(t[0])[1];i[0]=r[0]-a}else ft(t[0])?i[0]=t[0](r[0]):i[0]=r[0];if(Te(t[1]))i[1]=n?t[1]:Math.max(t[1],r[1]);else if(Z4.test(t[1])){var o=+Z4.exec(t[1])[1];i[1]=r[1]+o}else ft(t[1])?i[1]=t[1](r[1]):i[1]=r[1];return i},L1=function(t,r,n){if(t&&t.scale&&t.scale.bandwidth){var i=t.scale.bandwidth();if(!n||i>0)return i}if(t&&r&&r.length>=2){for(var a=RD(r,function(f){return f.coordinate}),o=1/0,s=1,l=a.length;so&&(u=2*Math.PI-u),{radius:s,angle:rMe(u),angleInRadian:u}},aMe=function(t){var r=t.startAngle,n=t.endAngle,i=Math.floor(r/360),a=Math.floor(n/360),o=Math.min(i,a);return{startAngle:r-o*360,endAngle:n-o*360}},oMe=function(t,r){var n=r.startAngle,i=r.endAngle,a=Math.floor(n/360),o=Math.floor(i/360),s=Math.min(a,o);return t+s*360},K4=function(t,r){var n=t.x,i=t.y,a=iMe({x:n,y:i},r),o=a.radius,s=a.angle,l=r.innerRadius,u=r.outerRadius;if(ou)return!1;if(o===0)return!0;var c=aMe(r),f=c.startAngle,h=c.endAngle,d=s,v;if(f<=h){for(;d>h;)d-=360;for(;d=f&&d<=h}else{for(;d>f;)d-=360;for(;d=h&&d<=f}return v?q4(q4({},r),{},{radius:o,angle:oMe(d,r)}):null};function Zm(e){"@babel/helpers - typeof";return Zm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zm(e)}var sMe=["offset"];function lMe(e){return hMe(e)||fMe(e)||cMe(e)||uMe()}function uMe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function cMe(e,t){if(e){if(typeof e=="string")return fL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fL(e,t)}}function fMe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function hMe(e){if(Array.isArray(e))return fL(e)}function fL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function vMe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function J4(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function zr(e){for(var t=1;t=0?1:-1,b,S;i==="insideStart"?(b=d+_*o,S=m):i==="insideEnd"?(b=v-_*o,S=!m):i==="end"&&(b=v+_*o,S=m),S=x<=0?S:!S;var T=pn(u,c,y,b),C=pn(u,c,y,b+(S?1:-1)*359),A="M".concat(T.x,",").concat(T.y,` + A`).concat(y,",").concat(y,",0,1,").concat(S?0:1,`, + `).concat(C.x,",").concat(C.y),P=dt(t.id)?Cv("recharts-radial-line-"):t.id;return Q.createElement("text",Ym({},n,{dominantBaseline:"central",className:_t("recharts-radial-bar-label",s)}),Q.createElement("defs",null,Q.createElement("path",{id:P,d:A})),Q.createElement("textPath",{xlinkHref:"#".concat(P)},r))},bMe=function(t){var r=t.viewBox,n=t.offset,i=t.position,a=r,o=a.cx,s=a.cy,l=a.innerRadius,u=a.outerRadius,c=a.startAngle,f=a.endAngle,h=(c+f)/2;if(i==="outside"){var d=pn(o,s,u+n,h),v=d.x,m=d.y;return{x:v,y:m,textAnchor:v>=o?"start":"end",verticalAnchor:"middle"}}if(i==="center")return{x:o,y:s,textAnchor:"middle",verticalAnchor:"middle"};if(i==="centerTop")return{x:o,y:s,textAnchor:"middle",verticalAnchor:"start"};if(i==="centerBottom")return{x:o,y:s,textAnchor:"middle",verticalAnchor:"end"};var y=(l+u)/2,x=pn(o,s,y,h),_=x.x,b=x.y;return{x:_,y:b,textAnchor:"middle",verticalAnchor:"middle"}},wMe=function(t){var r=t.viewBox,n=t.parentViewBox,i=t.offset,a=t.position,o=r,s=o.x,l=o.y,u=o.width,c=o.height,f=c>=0?1:-1,h=f*i,d=f>0?"end":"start",v=f>0?"start":"end",m=u>=0?1:-1,y=m*i,x=m>0?"end":"start",_=m>0?"start":"end";if(a==="top"){var b={x:s+u/2,y:l-f*i,textAnchor:"middle",verticalAnchor:d};return zr(zr({},b),n?{height:Math.max(l-n.y,0),width:u}:{})}if(a==="bottom"){var S={x:s+u/2,y:l+c+h,textAnchor:"middle",verticalAnchor:v};return zr(zr({},S),n?{height:Math.max(n.y+n.height-(l+c),0),width:u}:{})}if(a==="left"){var T={x:s-y,y:l+c/2,textAnchor:x,verticalAnchor:"middle"};return zr(zr({},T),n?{width:Math.max(T.x-n.x,0),height:c}:{})}if(a==="right"){var C={x:s+u+y,y:l+c/2,textAnchor:_,verticalAnchor:"middle"};return zr(zr({},C),n?{width:Math.max(n.x+n.width-C.x,0),height:c}:{})}var A=n?{width:u,height:c}:{};return a==="insideLeft"?zr({x:s+y,y:l+c/2,textAnchor:_,verticalAnchor:"middle"},A):a==="insideRight"?zr({x:s+u-y,y:l+c/2,textAnchor:x,verticalAnchor:"middle"},A):a==="insideTop"?zr({x:s+u/2,y:l+h,textAnchor:"middle",verticalAnchor:v},A):a==="insideBottom"?zr({x:s+u/2,y:l+c-h,textAnchor:"middle",verticalAnchor:d},A):a==="insideTopLeft"?zr({x:s+y,y:l+h,textAnchor:_,verticalAnchor:v},A):a==="insideTopRight"?zr({x:s+u-y,y:l+h,textAnchor:x,verticalAnchor:v},A):a==="insideBottomLeft"?zr({x:s+y,y:l+c-h,textAnchor:_,verticalAnchor:d},A):a==="insideBottomRight"?zr({x:s+u-y,y:l+c-h,textAnchor:x,verticalAnchor:d},A):_v(a)&&(Te(a.x)||Ac(a.x))&&(Te(a.y)||Ac(a.y))?zr({x:s+af(a.x,u),y:l+af(a.y,c),textAnchor:"end",verticalAnchor:"end"},A):zr({x:s+u/2,y:l+c/2,textAnchor:"middle",verticalAnchor:"middle"},A)},SMe=function(t){return"cx"in t&&Te(t.cx)};function In(e){var t=e.offset,r=t===void 0?5:t,n=dMe(e,sMe),i=zr({offset:r},n),a=i.viewBox,o=i.position,s=i.value,l=i.children,u=i.content,c=i.className,f=c===void 0?"":c,h=i.textBreakAll;if(!a||dt(s)&&dt(l)&&!H.isValidElement(u)&&!ft(u))return null;if(H.isValidElement(u))return H.cloneElement(u,i);var d;if(ft(u)){if(d=H.createElement(u,i),H.isValidElement(d))return d}else d=yMe(i);var v=SMe(a),m=ct(i,!0);if(v&&(o==="insideStart"||o==="insideEnd"||o==="end"))return _Me(i,d,m);var y=v?bMe(i):wMe(i);return Q.createElement(v1,Ym({className:_t("recharts-label",f)},m,y,{breakAll:h}),d)}In.displayName="Label";var bq=function(t){var r=t.cx,n=t.cy,i=t.angle,a=t.startAngle,o=t.endAngle,s=t.r,l=t.radius,u=t.innerRadius,c=t.outerRadius,f=t.x,h=t.y,d=t.top,v=t.left,m=t.width,y=t.height,x=t.clockWise,_=t.labelViewBox;if(_)return _;if(Te(m)&&Te(y)){if(Te(f)&&Te(h))return{x:f,y:h,width:m,height:y};if(Te(d)&&Te(v))return{x:d,y:v,width:m,height:y}}return Te(f)&&Te(h)?{x:f,y:h,width:0,height:0}:Te(r)&&Te(n)?{cx:r,cy:n,startAngle:a||i||0,endAngle:o||i||0,innerRadius:u||0,outerRadius:c||l||s||0,clockWise:x}:t.viewBox?t.viewBox:{}},TMe=function(t,r){return t?t===!0?Q.createElement(In,{key:"label-implicit",viewBox:r}):Gr(t)?Q.createElement(In,{key:"label-implicit",viewBox:r,value:t}):H.isValidElement(t)?t.type===In?H.cloneElement(t,{key:"label-implicit",viewBox:r}):Q.createElement(In,{key:"label-implicit",content:t,viewBox:r}):ft(t)?Q.createElement(In,{key:"label-implicit",content:t,viewBox:r}):_v(t)?Q.createElement(In,Ym({viewBox:r},t,{key:"label-implicit"})):null:null},CMe=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!t||!t.children&&n&&!t.label)return null;var i=t.children,a=bq(t),o=sa(i,In).map(function(l,u){return H.cloneElement(l,{viewBox:r||a,key:"label-".concat(u)})});if(!n)return o;var s=TMe(t.label,r||a);return[s].concat(lMe(o))};In.parseViewBox=bq;In.renderCallByParent=CMe;function AMe(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var MMe=AMe;const PMe=$t(MMe);function Xm(e){"@babel/helpers - typeof";return Xm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xm(e)}var kMe=["valueAccessor"],LMe=["data","dataKey","clockWise","id","textBreakAll"];function IMe(e){return NMe(e)||DMe(e)||OMe(e)||EMe()}function EMe(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function OMe(e,t){if(e){if(typeof e=="string")return hL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return hL(e,t)}}function DMe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function NMe(e){if(Array.isArray(e))return hL(e)}function hL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function zMe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var $Me=function(t){return Array.isArray(t.value)?PMe(t.value):t.value};function Ms(e){var t=e.valueAccessor,r=t===void 0?$Me:t,n=t$(e,kMe),i=n.data,a=n.dataKey,o=n.clockWise,s=n.id,l=n.textBreakAll,u=t$(n,LMe);return!i||!i.length?null:Q.createElement(Yt,{className:"recharts-label-list"},i.map(function(c,f){var h=dt(a)?r(c,f):Un(c&&c.payload,a),d=dt(s)?{}:{id:"".concat(s,"-").concat(f)};return Q.createElement(In,E1({},ct(c,!0),u,d,{parentViewBox:c.parentViewBox,value:h,textBreakAll:l,viewBox:In.parseViewBox(dt(o)?c:e$(e$({},c),{},{clockWise:o})),key:"label-".concat(f),index:f}))}))}Ms.displayName="LabelList";function FMe(e,t){return e?e===!0?Q.createElement(Ms,{key:"labelList-implicit",data:t}):Q.isValidElement(e)||ft(e)?Q.createElement(Ms,{key:"labelList-implicit",data:t,content:e}):_v(e)?Q.createElement(Ms,E1({data:t},e,{key:"labelList-implicit"})):null:null}function VMe(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!e||!e.children&&r&&!e.label)return null;var n=e.children,i=sa(n,Ms).map(function(o,s){return H.cloneElement(o,{data:t,key:"labelList-".concat(s)})});if(!r)return i;var a=FMe(e.label,t);return[a].concat(IMe(i))}Ms.renderCallByParent=VMe;function qm(e){"@babel/helpers - typeof";return qm=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},qm(e)}function dL(){return dL=Object.assign?Object.assign.bind():function(e){for(var t=1;t180),",").concat(+(o>u),`, `).concat(f.x,",").concat(f.y,` - `);if(i>0){var d=vn(r,n,i,o),v=vn(r,n,i,u);h+="L ".concat(v.x,",").concat(v.y,` + `);if(i>0){var d=pn(r,n,i,o),v=pn(r,n,i,u);h+="L ".concat(v.x,",").concat(v.y,` A `).concat(i,",").concat(i,`,0, `).concat(+(Math.abs(l)>180),",").concat(+(o<=u),`, - `).concat(d.x,",").concat(d.y," Z")}else h+="L ".concat(r,",").concat(n," Z");return h},HMe=function(t){var r=t.cx,n=t.cy,i=t.innerRadius,a=t.outerRadius,o=t.cornerRadius,s=t.forceCornerRadius,l=t.cornerIsExternal,u=t.startAngle,c=t.endAngle,f=Ba(c-u),h=bx({cx:r,cy:n,radius:a,angle:u,sign:f,cornerRadius:o,cornerIsExternal:l}),d=h.circleTangency,v=h.lineTangency,g=h.theta,m=bx({cx:r,cy:n,radius:a,angle:c,sign:-f,cornerRadius:o,cornerIsExternal:l}),x=m.circleTangency,_=m.lineTangency,b=m.theta,S=l?Math.abs(u-c):Math.abs(u-c)-g-b;if(S<0)return s?"M ".concat(v.x,",").concat(v.y,` + `).concat(d.x,",").concat(d.y," Z")}else h+="L ".concat(r,",").concat(n," Z");return h},ZMe=function(t){var r=t.cx,n=t.cy,i=t.innerRadius,a=t.outerRadius,o=t.cornerRadius,s=t.forceCornerRadius,l=t.cornerIsExternal,u=t.startAngle,c=t.endAngle,f=Ba(c-u),h=bx({cx:r,cy:n,radius:a,angle:u,sign:f,cornerRadius:o,cornerIsExternal:l}),d=h.circleTangency,v=h.lineTangency,m=h.theta,y=bx({cx:r,cy:n,radius:a,angle:c,sign:-f,cornerRadius:o,cornerIsExternal:l}),x=y.circleTangency,_=y.lineTangency,b=y.theta,S=l?Math.abs(u-c):Math.abs(u-c)-m-b;if(S<0)return s?"M ".concat(v.x,",").concat(v.y,` a`).concat(o,",").concat(o,",0,0,1,").concat(o*2,`,0 a`).concat(o,",").concat(o,",0,0,1,").concat(-o*2,`,0 - `):_q({cx:r,cy:n,innerRadius:i,outerRadius:a,startAngle:u,endAngle:c});var T="M ".concat(v.x,",").concat(v.y,` + `):wq({cx:r,cy:n,innerRadius:i,outerRadius:a,startAngle:u,endAngle:c});var T="M ".concat(v.x,",").concat(v.y,` A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(d.x,",").concat(d.y,` A`).concat(a,",").concat(a,",0,").concat(+(S>180),",").concat(+(f<0),",").concat(x.x,",").concat(x.y,` A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(_.x,",").concat(_.y,` - `);if(i>0){var C=bx({cx:r,cy:n,radius:i,angle:u,sign:f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),A=C.circleTangency,P=C.lineTangency,I=C.theta,k=bx({cx:r,cy:n,radius:i,angle:c,sign:-f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),E=k.circleTangency,D=k.lineTangency,N=k.theta,z=l?Math.abs(u-c):Math.abs(u-c)-I-N;if(z<0&&o===0)return"".concat(T,"L").concat(r,",").concat(n,"Z");T+="L".concat(D.x,",").concat(D.y,` - A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(E.x,",").concat(E.y,` + `);if(i>0){var C=bx({cx:r,cy:n,radius:i,angle:u,sign:f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),A=C.circleTangency,P=C.lineTangency,I=C.theta,k=bx({cx:r,cy:n,radius:i,angle:c,sign:-f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),O=k.circleTangency,D=k.lineTangency,N=k.theta,z=l?Math.abs(u-c):Math.abs(u-c)-I-N;if(z<0&&o===0)return"".concat(T,"L").concat(r,",").concat(n,"Z");T+="L".concat(D.x,",").concat(D.y,` + A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(O.x,",").concat(O.y,` A`).concat(i,",").concat(i,",0,").concat(+(z>180),",").concat(+(f>0),",").concat(A.x,",").concat(A.y,` - A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(P.x,",").concat(P.y,"Z")}else T+="L".concat(r,",").concat(n,"Z");return T},UMe={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},bq=function(t){var r=t$(t$({},UMe),t),n=r.cx,i=r.cy,a=r.innerRadius,o=r.outerRadius,s=r.cornerRadius,l=r.forceCornerRadius,u=r.cornerIsExternal,c=r.startAngle,f=r.endAngle,h=r.className;if(o0&&Math.abs(c-f)<360?m=HMe({cx:n,cy:i,innerRadius:a,outerRadius:o,cornerRadius:Math.min(g,v/2),forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}):m=_q({cx:n,cy:i,innerRadius:a,outerRadius:o,startAngle:c,endAngle:f}),Q.createElement("path",hL({},ct(r,!0),{className:d,d:m,role:"img"}))};function Km(e){"@babel/helpers - typeof";return Km=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Km(e)}function dL(){return dL=Object.assign?Object.assign.bind():function(e){for(var t=1;taPe.call(e,t));function Af(e,t){return e===t||!e&&!t&&e!==e&&t!==t}const lPe="__v",uPe="__o",cPe="_owner",{getOwnPropertyDescriptor:o$,keys:s$}=Object;function fPe(e,t){return e.byteLength===t.byteLength&&E1(new Uint8Array(e),new Uint8Array(t))}function hPe(e,t,r){let n=e.length;if(t.length!==n)return!1;for(;n-- >0;)if(!r.equals(e[n],t[n],n,n,e,t,r))return!1;return!0}function dPe(e,t){return e.byteLength===t.byteLength&&E1(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))}function vPe(e,t){return Af(e.getTime(),t.getTime())}function pPe(e,t){return e.name===t.name&&e.message===t.message&&e.cause===t.cause&&e.stack===t.stack}function gPe(e,t){return e===t}function l$(e,t,r){const n=e.size;if(n!==t.size)return!1;if(!n)return!0;const i=new Array(n),a=e.entries();let o,s,l=0;for(;(o=a.next())&&!o.done;){const u=t.entries();let c=!1,f=0;for(;(s=u.next())&&!s.done;){if(i[f]){f++;continue}const h=o.value,d=s.value;if(r.equals(h[0],d[0],l,f,e,t,r)&&r.equals(h[1],d[1],h[0],d[0],e,t,r)){c=i[f]=!0;break}f++}if(!c)return!1;l++}return!0}const mPe=Af;function yPe(e,t,r){const n=s$(e);let i=n.length;if(s$(t).length!==i)return!1;for(;i-- >0;)if(!Cq(e,t,r,n[i]))return!1;return!0}function Ip(e,t,r){const n=a$(e);let i=n.length;if(a$(t).length!==i)return!1;let a,o,s;for(;i-- >0;)if(a=n[i],!Cq(e,t,r,a)||(o=o$(e,a),s=o$(t,a),(o||s)&&(!o||!s||o.configurable!==s.configurable||o.enumerable!==s.enumerable||o.writable!==s.writable)))return!1;return!0}function xPe(e,t){return Af(e.valueOf(),t.valueOf())}function _Pe(e,t){return e.source===t.source&&e.flags===t.flags}function u$(e,t,r){const n=e.size;if(n!==t.size)return!1;if(!n)return!0;const i=new Array(n),a=e.values();let o,s;for(;(o=a.next())&&!o.done;){const l=t.values();let u=!1,c=0;for(;(s=l.next())&&!s.done;){if(!i[c]&&r.equals(o.value,s.value,o.value,s.value,e,t,r)){u=i[c]=!0;break}c++}if(!u)return!1}return!0}function E1(e,t){let r=e.byteLength;if(t.byteLength!==r||e.byteOffset!==t.byteOffset)return!1;for(;r-- >0;)if(e[r]!==t[r])return!1;return!0}function bPe(e,t){return e.hostname===t.hostname&&e.pathname===t.pathname&&e.protocol===t.protocol&&e.port===t.port&&e.hash===t.hash&&e.username===t.username&&e.password===t.password}function Cq(e,t,r,n){return(n===cPe||n===uPe||n===lPe)&&(e.$$typeof||t.$$typeof)?!0:sPe(t,n)&&r.equals(e[n],t[n],n,n,e,t,r)}const wPe="[object ArrayBuffer]",SPe="[object Arguments]",TPe="[object Boolean]",CPe="[object DataView]",APe="[object Date]",MPe="[object Error]",PPe="[object Map]",kPe="[object Number]",LPe="[object Object]",IPe="[object RegExp]",OPe="[object Set]",EPe="[object String]",DPe={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},NPe="[object URL]",jPe=Object.prototype.toString;function RPe({areArrayBuffersEqual:e,areArraysEqual:t,areDataViewsEqual:r,areDatesEqual:n,areErrorsEqual:i,areFunctionsEqual:a,areMapsEqual:o,areNumbersEqual:s,areObjectsEqual:l,arePrimitiveWrappersEqual:u,areRegExpsEqual:c,areSetsEqual:f,areTypedArraysEqual:h,areUrlsEqual:d,unknownTagComparators:v}){return function(m,x,_){if(m===x)return!0;if(m==null||x==null)return!1;const b=typeof m;if(b!==typeof x)return!1;if(b!=="object")return b==="number"?s(m,x,_):b==="function"?a(m,x,_):!1;const S=m.constructor;if(S!==x.constructor)return!1;if(S===Object)return l(m,x,_);if(Array.isArray(m))return t(m,x,_);if(S===Date)return n(m,x,_);if(S===RegExp)return c(m,x,_);if(S===Map)return o(m,x,_);if(S===Set)return f(m,x,_);const T=jPe.call(m);if(T===APe)return n(m,x,_);if(T===IPe)return c(m,x,_);if(T===PPe)return o(m,x,_);if(T===OPe)return f(m,x,_);if(T===LPe)return typeof m.then!="function"&&typeof x.then!="function"&&l(m,x,_);if(T===NPe)return d(m,x,_);if(T===MPe)return i(m,x,_);if(T===SPe)return l(m,x,_);if(DPe[T])return h(m,x,_);if(T===wPe)return e(m,x,_);if(T===CPe)return r(m,x,_);if(T===TPe||T===kPe||T===EPe)return u(m,x,_);if(v){let C=v[T];if(!C){const A=oPe(m);A&&(C=v[A])}if(C)return C(m,x,_)}return!1}}function BPe({circular:e,createCustomConfig:t,strict:r}){let n={areArrayBuffersEqual:fPe,areArraysEqual:r?Ip:hPe,areDataViewsEqual:dPe,areDatesEqual:vPe,areErrorsEqual:pPe,areFunctionsEqual:gPe,areMapsEqual:r?$A(l$,Ip):l$,areNumbersEqual:mPe,areObjectsEqual:r?Ip:yPe,arePrimitiveWrappersEqual:xPe,areRegExpsEqual:_Pe,areSetsEqual:r?$A(u$,Ip):u$,areTypedArraysEqual:r?$A(E1,Ip):E1,areUrlsEqual:bPe,unknownTagComparators:void 0};if(t&&(n=Object.assign({},n,t(n))),e){const i=Tx(n.areArraysEqual),a=Tx(n.areMapsEqual),o=Tx(n.areObjectsEqual),s=Tx(n.areSetsEqual);n=Object.assign({},n,{areArraysEqual:i,areMapsEqual:a,areObjectsEqual:o,areSetsEqual:s})}return n}function zPe(e){return function(t,r,n,i,a,o,s){return e(t,r,s)}}function $Pe({circular:e,comparator:t,createState:r,equals:n,strict:i}){if(r)return function(s,l){const{cache:u=e?new WeakMap:void 0,meta:c}=r();return t(s,l,{cache:u,equals:n,meta:c,strict:i})};if(e)return function(s,l){return t(s,l,{cache:new WeakMap,equals:n,meta:void 0,strict:i})};const a={cache:void 0,equals:n,meta:void 0,strict:i};return function(s,l){return t(s,l,a)}}const FPe=wu();wu({strict:!0});wu({circular:!0});wu({circular:!0,strict:!0});wu({createInternalComparator:()=>Af});wu({strict:!0,createInternalComparator:()=>Af});wu({circular:!0,createInternalComparator:()=>Af});wu({circular:!0,createInternalComparator:()=>Af,strict:!0});function wu(e={}){const{circular:t=!1,createInternalComparator:r,createState:n,strict:i=!1}=e,a=BPe(e),o=RPe(a),s=r?r(o):zPe(o);return $Pe({circular:t,comparator:o,createState:n,equals:s,strict:i})}function VPe(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function c$(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=-1,n=function i(a){r<0&&(r=a),a-r>t?(e(a),r=-1):VPe(i)};requestAnimationFrame(n)}function vL(e){"@babel/helpers - typeof";return vL=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},vL(e)}function GPe(e){return ZPe(e)||UPe(e)||HPe(e)||WPe()}function WPe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function HPe(e,t){if(e){if(typeof e=="string")return f$(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return f$(e,t)}}function f$(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);r1?1:x<0?0:x},g=function(x){for(var _=x>1?1:x,b=_,S=0;S<8;++S){var T=f(b)-_,C=d(b);if(Math.abs(T-_)0&&arguments[0]!==void 0?arguments[0]:{},r=t.stiff,n=r===void 0?100:r,i=t.damping,a=i===void 0?8:i,o=t.dt,s=o===void 0?17:o,l=function(c,f,h){var d=-(c-f)*n,v=h*a,g=h+(d-v)*s/1e3,m=h*s/1e3+c;return Math.abs(m-f)e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Tke(e,t){if(e==null)return{};var r={},n=Object.keys(e),i,a;for(a=0;a=0)&&(r[i]=e[i]);return r}function FA(e){return Pke(e)||Mke(e)||Ake(e)||Cke()}function Cke(){throw new TypeError(`Invalid attempt to spread non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ake(e,t){if(e){if(typeof e=="string")return xL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return xL(e,t)}}function Mke(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Pke(e){if(Array.isArray(e))return xL(e)}function xL(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function j1(e){return j1=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},j1(e)}var Fo=function(e){Eke(r,e);var t=Dke(r);function r(n,i){var a;kke(this,r),a=t.call(this,n,i);var o=a.props,s=o.isActive,l=o.attributeName,u=o.from,c=o.to,f=o.steps,h=o.children,d=o.duration;if(a.handleStyleChange=a.handleStyleChange.bind(wL(a)),a.changeStyle=a.changeStyle.bind(wL(a)),!s||d<=0)return a.state={style:{}},typeof h=="function"&&(a.state={style:c}),bL(a);if(f&&f.length)a.state={style:f[0].style};else if(u){if(typeof h=="function")return a.state={style:u},bL(a);a.state={style:l?gg({},l,u):u}}else a.state={style:{}};return a}return Ike(r,[{key:"componentDidMount",value:function(){var i=this.props,a=i.isActive,o=i.canBegin;this.mounted=!0,!(!a||!o)&&this.runAnimation(this.props)}},{key:"componentDidUpdate",value:function(i){var a=this.props,o=a.isActive,s=a.canBegin,l=a.attributeName,u=a.shouldReAnimate,c=a.to,f=a.from,h=this.state.style;if(s){if(!o){var d={style:l?gg({},l,c):c};this.state&&h&&(l&&h[l]!==c||!l&&h!==c)&&this.setState(d);return}if(!(FPe(i.to,c)&&i.canBegin&&i.isActive)){var v=!i.canBegin||!i.isActive;this.manager&&this.manager.stop(),this.stopJSAnimation&&this.stopJSAnimation();var g=v||u?f:i.to;if(this.state&&h){var m={style:l?gg({},l,g):g};(l&&h[l]!==g||!l&&h!==g)&&this.setState(m)}this.runAnimation(Ca(Ca({},this.props),{},{from:g,begin:0}))}}}},{key:"componentWillUnmount",value:function(){this.mounted=!1;var i=this.props.onAnimationEnd;this.unSubscribe&&this.unSubscribe(),this.manager&&(this.manager.stop(),this.manager=null),this.stopJSAnimation&&this.stopJSAnimation(),i&&i()}},{key:"handleStyleChange",value:function(i){this.changeStyle(i)}},{key:"changeStyle",value:function(i){this.mounted&&this.setState({style:i})}},{key:"runJSAnimation",value:function(i){var a=this,o=i.from,s=i.to,l=i.duration,u=i.easing,c=i.begin,f=i.onAnimationEnd,h=i.onAnimationStart,d=bke(o,s,cke(u),l,this.changeStyle),v=function(){a.stopJSAnimation=d()};this.manager.start([h,c,v,l,f])}},{key:"runStepAnimation",value:function(i){var a=this,o=i.steps,s=i.begin,l=i.onAnimationStart,u=o[0],c=u.style,f=u.duration,h=f===void 0?0:f,d=function(g,m,x){if(x===0)return g;var _=m.duration,b=m.easing,S=b===void 0?"ease":b,T=m.style,C=m.properties,A=m.onAnimationEnd,P=x>0?o[x-1]:m,I=C||Object.keys(T);if(typeof S=="function"||S==="spring")return[].concat(FA(g),[a.runJSAnimation.bind(a,{from:P.style,to:T,duration:_,easing:S}),_]);var k=v$(I,_,S),E=Ca(Ca(Ca({},P.style),T),{},{transition:k});return[].concat(FA(g),[E,_,A]).filter(JPe)};return this.manager.start([l].concat(FA(o.reduce(d,[c,Math.max(h,s)])),[i.onAnimationEnd]))}},{key:"runAnimation",value:function(i){this.manager||(this.manager=YPe());var a=i.begin,o=i.duration,s=i.attributeName,l=i.to,u=i.easing,c=i.onAnimationStart,f=i.onAnimationEnd,h=i.steps,d=i.children,v=this.manager;if(this.unSubscribe=v.subscribe(this.handleStyleChange),typeof u=="function"||typeof d=="function"||u==="spring"){this.runJSAnimation(i);return}if(h.length>1){this.runStepAnimation(i);return}var g=s?gg({},s,l):l,m=v$(Object.keys(g),o,u);v.start([c,a,Ca(Ca({},g),{},{transition:m}),o,f])}},{key:"render",value:function(){var i=this.props,a=i.children;i.begin;var o=i.duration;i.attributeName,i.easing;var s=i.isActive;i.steps,i.from,i.to,i.canBegin,i.onAnimationEnd,i.shouldReAnimate,i.onAnimationReStart;var l=Ske(i,wke),u=H.Children.count(a),c=this.state.style;if(typeof a=="function")return a(c);if(!s||u===0||o<=0)return a;var f=function(d){var v=d.props,g=v.style,m=g===void 0?{}:g,x=v.className,_=H.cloneElement(d,Ca(Ca({},l),{},{style:Ca(Ca({},m),c),className:x}));return _};return u===1?f(H.Children.only(a)):Q.createElement("div",null,H.Children.map(a,function(h){return f(h)}))}}]),r}(H.PureComponent);Fo.displayName="Animate";Fo.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Fo.propTypes={from:Lt.oneOfType([Lt.object,Lt.string]),to:Lt.oneOfType([Lt.object,Lt.string]),attributeName:Lt.string,duration:Lt.number,begin:Lt.number,easing:Lt.oneOfType([Lt.string,Lt.func]),steps:Lt.arrayOf(Lt.shape({duration:Lt.number.isRequired,style:Lt.object.isRequired,easing:Lt.oneOfType([Lt.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),Lt.func]),properties:Lt.arrayOf("string"),onAnimationEnd:Lt.func})),children:Lt.oneOfType([Lt.node,Lt.func]),isActive:Lt.bool,canBegin:Lt.bool,onAnimationEnd:Lt.func,shouldReAnimate:Lt.bool,onAnimationStart:Lt.func,onAnimationReStart:Lt.func};function ey(e){"@babel/helpers - typeof";return ey=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ey(e)}function R1(){return R1=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0?1:-1,l=n>=0?1:-1,u=i>=0&&n>=0||i<0&&n<0?1:0,c;if(o>0&&a instanceof Array){for(var f=[0,0,0,0],h=0,d=4;ho?o:a[h];c="M".concat(t,",").concat(r+s*f[0]),f[0]>0&&(c+="A ".concat(f[0],",").concat(f[0],",0,0,").concat(u,",").concat(t+l*f[0],",").concat(r)),c+="L ".concat(t+n-l*f[1],",").concat(r),f[1]>0&&(c+="A ".concat(f[1],",").concat(f[1],",0,0,").concat(u,`, + A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(P.x,",").concat(P.y,"Z")}else T+="L".concat(r,",").concat(n,"Z");return T},YMe={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},Sq=function(t){var r=n$(n$({},YMe),t),n=r.cx,i=r.cy,a=r.innerRadius,o=r.outerRadius,s=r.cornerRadius,l=r.forceCornerRadius,u=r.cornerIsExternal,c=r.startAngle,f=r.endAngle,h=r.className;if(o0&&Math.abs(c-f)<360?y=ZMe({cx:n,cy:i,innerRadius:a,outerRadius:o,cornerRadius:Math.min(m,v/2),forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}):y=wq({cx:n,cy:i,innerRadius:a,outerRadius:o,startAngle:c,endAngle:f}),Q.createElement("path",dL({},ct(r,!0),{className:d,d:y,role:"img"}))};function Km(e){"@babel/helpers - typeof";return Km=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Km(e)}function vL(){return vL=Object.assign?Object.assign.bind():function(e){for(var t=1;tsPe.call(e,t));function Mf(e,t){return e===t||!e&&!t&&e!==e&&t!==t}const cPe="__v",fPe="__o",hPe="_owner",{getOwnPropertyDescriptor:l$,keys:u$}=Object;function dPe(e,t){return e.byteLength===t.byteLength&&O1(new Uint8Array(e),new Uint8Array(t))}function vPe(e,t,r){let n=e.length;if(t.length!==n)return!1;for(;n-- >0;)if(!r.equals(e[n],t[n],n,n,e,t,r))return!1;return!0}function pPe(e,t){return e.byteLength===t.byteLength&&O1(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))}function gPe(e,t){return Mf(e.getTime(),t.getTime())}function mPe(e,t){return e.name===t.name&&e.message===t.message&&e.cause===t.cause&&e.stack===t.stack}function yPe(e,t){return e===t}function c$(e,t,r){const n=e.size;if(n!==t.size)return!1;if(!n)return!0;const i=new Array(n),a=e.entries();let o,s,l=0;for(;(o=a.next())&&!o.done;){const u=t.entries();let c=!1,f=0;for(;(s=u.next())&&!s.done;){if(i[f]){f++;continue}const h=o.value,d=s.value;if(r.equals(h[0],d[0],l,f,e,t,r)&&r.equals(h[1],d[1],h[0],d[0],e,t,r)){c=i[f]=!0;break}f++}if(!c)return!1;l++}return!0}const xPe=Mf;function _Pe(e,t,r){const n=u$(e);let i=n.length;if(u$(t).length!==i)return!1;for(;i-- >0;)if(!Mq(e,t,r,n[i]))return!1;return!0}function Ip(e,t,r){const n=s$(e);let i=n.length;if(s$(t).length!==i)return!1;let a,o,s;for(;i-- >0;)if(a=n[i],!Mq(e,t,r,a)||(o=l$(e,a),s=l$(t,a),(o||s)&&(!o||!s||o.configurable!==s.configurable||o.enumerable!==s.enumerable||o.writable!==s.writable)))return!1;return!0}function bPe(e,t){return Mf(e.valueOf(),t.valueOf())}function wPe(e,t){return e.source===t.source&&e.flags===t.flags}function f$(e,t,r){const n=e.size;if(n!==t.size)return!1;if(!n)return!0;const i=new Array(n),a=e.values();let o,s;for(;(o=a.next())&&!o.done;){const l=t.values();let u=!1,c=0;for(;(s=l.next())&&!s.done;){if(!i[c]&&r.equals(o.value,s.value,o.value,s.value,e,t,r)){u=i[c]=!0;break}c++}if(!u)return!1}return!0}function O1(e,t){let r=e.byteLength;if(t.byteLength!==r||e.byteOffset!==t.byteOffset)return!1;for(;r-- >0;)if(e[r]!==t[r])return!1;return!0}function SPe(e,t){return e.hostname===t.hostname&&e.pathname===t.pathname&&e.protocol===t.protocol&&e.port===t.port&&e.hash===t.hash&&e.username===t.username&&e.password===t.password}function Mq(e,t,r,n){return(n===hPe||n===fPe||n===cPe)&&(e.$$typeof||t.$$typeof)?!0:uPe(t,n)&&r.equals(e[n],t[n],n,n,e,t,r)}const TPe="[object ArrayBuffer]",CPe="[object Arguments]",APe="[object Boolean]",MPe="[object DataView]",PPe="[object Date]",kPe="[object Error]",LPe="[object Map]",IPe="[object Number]",EPe="[object Object]",OPe="[object RegExp]",DPe="[object Set]",NPe="[object String]",jPe={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},RPe="[object URL]",BPe=Object.prototype.toString;function zPe({areArrayBuffersEqual:e,areArraysEqual:t,areDataViewsEqual:r,areDatesEqual:n,areErrorsEqual:i,areFunctionsEqual:a,areMapsEqual:o,areNumbersEqual:s,areObjectsEqual:l,arePrimitiveWrappersEqual:u,areRegExpsEqual:c,areSetsEqual:f,areTypedArraysEqual:h,areUrlsEqual:d,unknownTagComparators:v}){return function(y,x,_){if(y===x)return!0;if(y==null||x==null)return!1;const b=typeof y;if(b!==typeof x)return!1;if(b!=="object")return b==="number"?s(y,x,_):b==="function"?a(y,x,_):!1;const S=y.constructor;if(S!==x.constructor)return!1;if(S===Object)return l(y,x,_);if(Array.isArray(y))return t(y,x,_);if(S===Date)return n(y,x,_);if(S===RegExp)return c(y,x,_);if(S===Map)return o(y,x,_);if(S===Set)return f(y,x,_);const T=BPe.call(y);if(T===PPe)return n(y,x,_);if(T===OPe)return c(y,x,_);if(T===LPe)return o(y,x,_);if(T===DPe)return f(y,x,_);if(T===EPe)return typeof y.then!="function"&&typeof x.then!="function"&&l(y,x,_);if(T===RPe)return d(y,x,_);if(T===kPe)return i(y,x,_);if(T===CPe)return l(y,x,_);if(jPe[T])return h(y,x,_);if(T===TPe)return e(y,x,_);if(T===MPe)return r(y,x,_);if(T===APe||T===IPe||T===NPe)return u(y,x,_);if(v){let C=v[T];if(!C){const A=lPe(y);A&&(C=v[A])}if(C)return C(y,x,_)}return!1}}function $Pe({circular:e,createCustomConfig:t,strict:r}){let n={areArrayBuffersEqual:dPe,areArraysEqual:r?Ip:vPe,areDataViewsEqual:pPe,areDatesEqual:gPe,areErrorsEqual:mPe,areFunctionsEqual:yPe,areMapsEqual:r?$A(c$,Ip):c$,areNumbersEqual:xPe,areObjectsEqual:r?Ip:_Pe,arePrimitiveWrappersEqual:bPe,areRegExpsEqual:wPe,areSetsEqual:r?$A(f$,Ip):f$,areTypedArraysEqual:r?$A(O1,Ip):O1,areUrlsEqual:SPe,unknownTagComparators:void 0};if(t&&(n=Object.assign({},n,t(n))),e){const i=Tx(n.areArraysEqual),a=Tx(n.areMapsEqual),o=Tx(n.areObjectsEqual),s=Tx(n.areSetsEqual);n=Object.assign({},n,{areArraysEqual:i,areMapsEqual:a,areObjectsEqual:o,areSetsEqual:s})}return n}function FPe(e){return function(t,r,n,i,a,o,s){return e(t,r,s)}}function VPe({circular:e,comparator:t,createState:r,equals:n,strict:i}){if(r)return function(s,l){const{cache:u=e?new WeakMap:void 0,meta:c}=r();return t(s,l,{cache:u,equals:n,meta:c,strict:i})};if(e)return function(s,l){return t(s,l,{cache:new WeakMap,equals:n,meta:void 0,strict:i})};const a={cache:void 0,equals:n,meta:void 0,strict:i};return function(s,l){return t(s,l,a)}}const GPe=wu();wu({strict:!0});wu({circular:!0});wu({circular:!0,strict:!0});wu({createInternalComparator:()=>Mf});wu({strict:!0,createInternalComparator:()=>Mf});wu({circular:!0,createInternalComparator:()=>Mf});wu({circular:!0,createInternalComparator:()=>Mf,strict:!0});function wu(e={}){const{circular:t=!1,createInternalComparator:r,createState:n,strict:i=!1}=e,a=$Pe(e),o=zPe(a),s=r?r(o):FPe(o);return VPe({circular:t,comparator:o,createState:n,equals:s,strict:i})}function WPe(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function h$(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=-1,n=function i(a){r<0&&(r=a),a-r>t?(e(a),r=-1):WPe(i)};requestAnimationFrame(n)}function pL(e){"@babel/helpers - typeof";return pL=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pL(e)}function HPe(e){return XPe(e)||YPe(e)||ZPe(e)||UPe()}function UPe(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ZPe(e,t){if(e){if(typeof e=="string")return d$(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return d$(e,t)}}function d$(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);r1?1:x<0?0:x},m=function(x){for(var _=x>1?1:x,b=_,S=0;S<8;++S){var T=f(b)-_,C=d(b);if(Math.abs(T-_)0&&arguments[0]!==void 0?arguments[0]:{},r=t.stiff,n=r===void 0?100:r,i=t.damping,a=i===void 0?8:i,o=t.dt,s=o===void 0?17:o,l=function(c,f,h){var d=-(c-f)*n,v=h*a,m=h+(d-v)*s/1e3,y=h*s/1e3+c;return Math.abs(y-f)e.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Ake(e,t){if(e==null)return{};var r={},n=Object.keys(e),i,a;for(a=0;a=0)&&(r[i]=e[i]);return r}function FA(e){return Lke(e)||kke(e)||Pke(e)||Mke()}function Mke(){throw new TypeError(`Invalid attempt to spread non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Pke(e,t){if(e){if(typeof e=="string")return _L(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return _L(e,t)}}function kke(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Lke(e){if(Array.isArray(e))return _L(e)}function _L(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function j1(e){return j1=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},j1(e)}var Fo=function(e){Nke(r,e);var t=jke(r);function r(n,i){var a;Ike(this,r),a=t.call(this,n,i);var o=a.props,s=o.isActive,l=o.attributeName,u=o.from,c=o.to,f=o.steps,h=o.children,d=o.duration;if(a.handleStyleChange=a.handleStyleChange.bind(SL(a)),a.changeStyle=a.changeStyle.bind(SL(a)),!s||d<=0)return a.state={style:{}},typeof h=="function"&&(a.state={style:c}),wL(a);if(f&&f.length)a.state={style:f[0].style};else if(u){if(typeof h=="function")return a.state={style:u},wL(a);a.state={style:l?gg({},l,u):u}}else a.state={style:{}};return a}return Oke(r,[{key:"componentDidMount",value:function(){var i=this.props,a=i.isActive,o=i.canBegin;this.mounted=!0,!(!a||!o)&&this.runAnimation(this.props)}},{key:"componentDidUpdate",value:function(i){var a=this.props,o=a.isActive,s=a.canBegin,l=a.attributeName,u=a.shouldReAnimate,c=a.to,f=a.from,h=this.state.style;if(s){if(!o){var d={style:l?gg({},l,c):c};this.state&&h&&(l&&h[l]!==c||!l&&h!==c)&&this.setState(d);return}if(!(GPe(i.to,c)&&i.canBegin&&i.isActive)){var v=!i.canBegin||!i.isActive;this.manager&&this.manager.stop(),this.stopJSAnimation&&this.stopJSAnimation();var m=v||u?f:i.to;if(this.state&&h){var y={style:l?gg({},l,m):m};(l&&h[l]!==m||!l&&h!==m)&&this.setState(y)}this.runAnimation(Ca(Ca({},this.props),{},{from:m,begin:0}))}}}},{key:"componentWillUnmount",value:function(){this.mounted=!1;var i=this.props.onAnimationEnd;this.unSubscribe&&this.unSubscribe(),this.manager&&(this.manager.stop(),this.manager=null),this.stopJSAnimation&&this.stopJSAnimation(),i&&i()}},{key:"handleStyleChange",value:function(i){this.changeStyle(i)}},{key:"changeStyle",value:function(i){this.mounted&&this.setState({style:i})}},{key:"runJSAnimation",value:function(i){var a=this,o=i.from,s=i.to,l=i.duration,u=i.easing,c=i.begin,f=i.onAnimationEnd,h=i.onAnimationStart,d=Ske(o,s,hke(u),l,this.changeStyle),v=function(){a.stopJSAnimation=d()};this.manager.start([h,c,v,l,f])}},{key:"runStepAnimation",value:function(i){var a=this,o=i.steps,s=i.begin,l=i.onAnimationStart,u=o[0],c=u.style,f=u.duration,h=f===void 0?0:f,d=function(m,y,x){if(x===0)return m;var _=y.duration,b=y.easing,S=b===void 0?"ease":b,T=y.style,C=y.properties,A=y.onAnimationEnd,P=x>0?o[x-1]:y,I=C||Object.keys(T);if(typeof S=="function"||S==="spring")return[].concat(FA(m),[a.runJSAnimation.bind(a,{from:P.style,to:T,duration:_,easing:S}),_]);var k=g$(I,_,S),O=Ca(Ca(Ca({},P.style),T),{},{transition:k});return[].concat(FA(m),[O,_,A]).filter(eke)};return this.manager.start([l].concat(FA(o.reduce(d,[c,Math.max(h,s)])),[i.onAnimationEnd]))}},{key:"runAnimation",value:function(i){this.manager||(this.manager=qPe());var a=i.begin,o=i.duration,s=i.attributeName,l=i.to,u=i.easing,c=i.onAnimationStart,f=i.onAnimationEnd,h=i.steps,d=i.children,v=this.manager;if(this.unSubscribe=v.subscribe(this.handleStyleChange),typeof u=="function"||typeof d=="function"||u==="spring"){this.runJSAnimation(i);return}if(h.length>1){this.runStepAnimation(i);return}var m=s?gg({},s,l):l,y=g$(Object.keys(m),o,u);v.start([c,a,Ca(Ca({},m),{},{transition:y}),o,f])}},{key:"render",value:function(){var i=this.props,a=i.children;i.begin;var o=i.duration;i.attributeName,i.easing;var s=i.isActive;i.steps,i.from,i.to,i.canBegin,i.onAnimationEnd,i.shouldReAnimate,i.onAnimationReStart;var l=Cke(i,Tke),u=H.Children.count(a),c=this.state.style;if(typeof a=="function")return a(c);if(!s||u===0||o<=0)return a;var f=function(d){var v=d.props,m=v.style,y=m===void 0?{}:m,x=v.className,_=H.cloneElement(d,Ca(Ca({},l),{},{style:Ca(Ca({},y),c),className:x}));return _};return u===1?f(H.Children.only(a)):Q.createElement("div",null,H.Children.map(a,function(h){return f(h)}))}}]),r}(H.PureComponent);Fo.displayName="Animate";Fo.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Fo.propTypes={from:It.oneOfType([It.object,It.string]),to:It.oneOfType([It.object,It.string]),attributeName:It.string,duration:It.number,begin:It.number,easing:It.oneOfType([It.string,It.func]),steps:It.arrayOf(It.shape({duration:It.number.isRequired,style:It.object.isRequired,easing:It.oneOfType([It.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),It.func]),properties:It.arrayOf("string"),onAnimationEnd:It.func})),children:It.oneOfType([It.node,It.func]),isActive:It.bool,canBegin:It.bool,onAnimationEnd:It.func,shouldReAnimate:It.bool,onAnimationStart:It.func,onAnimationReStart:It.func};function ey(e){"@babel/helpers - typeof";return ey=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ey(e)}function R1(){return R1=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0?1:-1,l=n>=0?1:-1,u=i>=0&&n>=0||i<0&&n<0?1:0,c;if(o>0&&a instanceof Array){for(var f=[0,0,0,0],h=0,d=4;ho?o:a[h];c="M".concat(t,",").concat(r+s*f[0]),f[0]>0&&(c+="A ".concat(f[0],",").concat(f[0],",0,0,").concat(u,",").concat(t+l*f[0],",").concat(r)),c+="L ".concat(t+n-l*f[1],",").concat(r),f[1]>0&&(c+="A ".concat(f[1],",").concat(f[1],",0,0,").concat(u,`, `).concat(t+n,",").concat(r+s*f[1])),c+="L ".concat(t+n,",").concat(r+i-s*f[2]),f[2]>0&&(c+="A ".concat(f[2],",").concat(f[2],",0,0,").concat(u,`, `).concat(t+n-l*f[2],",").concat(r+i)),c+="L ".concat(t+l*f[3],",").concat(r+i),f[3]>0&&(c+="A ".concat(f[3],",").concat(f[3],",0,0,").concat(u,`, `).concat(t,",").concat(r+i-s*f[3])),c+="Z"}else if(o>0&&a===+a&&a>0){var v=Math.min(o,a);c="M ".concat(t,",").concat(r+s*v,` @@ -456,13 +466,13 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho L `).concat(t+n,",").concat(r+i-s*v,` A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t+n-l*v,",").concat(r+i,` L `).concat(t+l*v,",").concat(r+i,` - A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t,",").concat(r+i-s*v," Z")}else c="M ".concat(t,",").concat(r," h ").concat(n," v ").concat(i," h ").concat(-n," Z");return c},Wke=function(t,r){if(!t||!r)return!1;var n=t.x,i=t.y,a=r.x,o=r.y,s=r.width,l=r.height;if(Math.abs(s)>0&&Math.abs(l)>0){var u=Math.min(a,a+s),c=Math.max(a,a+s),f=Math.min(o,o+l),h=Math.max(o,o+l);return n>=u&&n<=c&&i>=f&&i<=h}return!1},Hke={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},sN=function(t){var r=w$(w$({},Hke),t),n=H.useRef(),i=H.useState(-1),a=jke(i,2),o=a[0],s=a[1];H.useEffect(function(){if(n.current&&n.current.getTotalLength)try{var S=n.current.getTotalLength();S&&s(S)}catch{}},[]);var l=r.x,u=r.y,c=r.width,f=r.height,h=r.radius,d=r.className,v=r.animationEasing,g=r.animationDuration,m=r.animationBegin,x=r.isAnimationActive,_=r.isUpdateAnimationActive;if(l!==+l||u!==+u||c!==+c||f!==+f||c===0||f===0)return null;var b=_t("recharts-rectangle",d);return _?Q.createElement(Fo,{canBegin:o>0,from:{width:c,height:f,x:l,y:u},to:{width:c,height:f,x:l,y:u},duration:g,animationEasing:v,isActive:_},function(S){var T=S.width,C=S.height,A=S.x,P=S.y;return Q.createElement(Fo,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:m,duration:g,isActive:x,easing:v},Q.createElement("path",R1({},ct(r,!0),{className:b,d:S$(A,P,T,C,h),ref:n})))}):Q.createElement("path",R1({},ct(r,!0),{className:b,d:S$(l,u,c,f,h)}))};function SL(){return SL=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function Jke(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var Qke=function(t,r,n,i,a,o){return"M".concat(t,",").concat(a,"v").concat(i,"M").concat(o,",").concat(r,"h").concat(n)},eLe=function(t){var r=t.x,n=r===void 0?0:r,i=t.y,a=i===void 0?0:i,o=t.top,s=o===void 0?0:o,l=t.left,u=l===void 0?0:l,c=t.width,f=c===void 0?0:c,h=t.height,d=h===void 0?0:h,v=t.className,g=Kke(t,Uke),m=Zke({x:n,y:a,top:s,left:u,width:f,height:d},g);return!we(n)||!we(a)||!we(f)||!we(d)||!we(s)||!we(u)?null:Q.createElement("path",TL({},ct(m,!0),{className:_t("recharts-cross",v),d:Qke(n,a,f,d,s,u)}))},tLe=ZY,rLe=tLe(Object.getPrototypeOf,Object),nLe=rLe,iLe=Ks,aLe=nLe,oLe=Js,sLe="[object Object]",lLe=Function.prototype,uLe=Object.prototype,Oq=lLe.toString,cLe=uLe.hasOwnProperty,fLe=Oq.call(Object);function hLe(e){if(!oLe(e)||iLe(e)!=sLe)return!1;var t=aLe(e);if(t===null)return!0;var r=cLe.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Oq.call(r)==fLe}var dLe=hLe;const vLe=$t(dLe);var pLe=Ks,gLe=Js,mLe="[object Boolean]";function yLe(e){return e===!0||e===!1||gLe(e)&&pLe(e)==mLe}var xLe=yLe;const _Le=$t(xLe);function ry(e){"@babel/helpers - typeof";return ry=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ry(e)}function B1(){return B1=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0,from:{upperWidth:0,lowerWidth:0,height:h,x:l,y:u},to:{upperWidth:c,lowerWidth:f,height:h,x:l,y:u},duration:g,animationEasing:v,isActive:x},function(b){var S=b.upperWidth,T=b.lowerWidth,C=b.height,A=b.x,P=b.y;return Q.createElement(Fo,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:m,duration:g,easing:v},Q.createElement("path",B1({},ct(r,!0),{className:_,d:P$(A,P,S,T,C),ref:n})))}):Q.createElement("g",null,Q.createElement("path",B1({},ct(r,!0),{className:_,d:P$(l,u,c,f,h)})))},ILe=["option","shapeType","propTransformer","activeClassName","isActive"];function ny(e){"@babel/helpers - typeof";return ny=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ny(e)}function OLe(e,t){if(e==null)return{};var r=ELe(e,t),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function ELe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function k$(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function z1(e){for(var t=1;t0&&n.handleDrag(i.changedTouches[0])}),gi(n,"handleDragEnd",function(){n.setState({isTravellerMoving:!1,isSlideMoving:!1},function(){var i=n.props,a=i.endIndex,o=i.onDragEnd,s=i.startIndex;o==null||o({endIndex:a,startIndex:s})}),n.detachDragEndListener()}),gi(n,"handleLeaveWrapper",function(){(n.state.isTravellerMoving||n.state.isSlideMoving)&&(n.leaveTimer=window.setTimeout(n.handleDragEnd,n.props.leaveTimeOut))}),gi(n,"handleEnterSlideOrTraveller",function(){n.setState({isTextActive:!0})}),gi(n,"handleLeaveSlideOrTraveller",function(){n.setState({isTextActive:!1})}),gi(n,"handleSlideDragStart",function(i){var a=j$(i)?i.changedTouches[0]:i;n.setState({isTravellerMoving:!1,isSlideMoving:!0,slideMoveStartX:a.pageX}),n.attachDragEndListener()}),n.travellerDragStartHandlers={startX:n.handleTravellerDragStart.bind(n,"startX"),endX:n.handleTravellerDragStart.bind(n,"endX")},n.state={},n}return yIe(t,e),vIe(t,[{key:"componentWillUnmount",value:function(){this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.detachDragEndListener()}},{key:"getIndex",value:function(n){var i=n.startX,a=n.endX,o=this.state.scaleValues,s=this.props,l=s.gap,u=s.data,c=u.length-1,f=Math.min(i,a),h=Math.max(i,a),d=t.getIndexInRange(o,f),v=t.getIndexInRange(o,h);return{startIndex:d-d%l,endIndex:v===c?c:v-v%l}}},{key:"getTextOfTick",value:function(n){var i=this.props,a=i.data,o=i.tickFormatter,s=i.dataKey,l=Hn(a[n],s,n);return ft(o)?o(l,n):l}},{key:"attachDragEndListener",value:function(){window.addEventListener("mouseup",this.handleDragEnd,!0),window.addEventListener("touchend",this.handleDragEnd,!0),window.addEventListener("mousemove",this.handleDrag,!0)}},{key:"detachDragEndListener",value:function(){window.removeEventListener("mouseup",this.handleDragEnd,!0),window.removeEventListener("touchend",this.handleDragEnd,!0),window.removeEventListener("mousemove",this.handleDrag,!0)}},{key:"handleSlideDrag",value:function(n){var i=this.state,a=i.slideMoveStartX,o=i.startX,s=i.endX,l=this.props,u=l.x,c=l.width,f=l.travellerWidth,h=l.startIndex,d=l.endIndex,v=l.onChange,g=n.pageX-a;g>0?g=Math.min(g,u+c-f-s,u+c-f-o):g<0&&(g=Math.max(g,u-o,u-s));var m=this.getIndex({startX:o+g,endX:s+g});(m.startIndex!==h||m.endIndex!==d)&&v&&v(m),this.setState({startX:o+g,endX:s+g,slideMoveStartX:n.pageX})}},{key:"handleTravellerDragStart",value:function(n,i){var a=j$(i)?i.changedTouches[0]:i;this.setState({isSlideMoving:!1,isTravellerMoving:!0,movingTravellerId:n,brushMoveStartX:a.pageX}),this.attachDragEndListener()}},{key:"handleTravellerMove",value:function(n){var i=this.state,a=i.brushMoveStartX,o=i.movingTravellerId,s=i.endX,l=i.startX,u=this.state[o],c=this.props,f=c.x,h=c.width,d=c.travellerWidth,v=c.onChange,g=c.gap,m=c.data,x={startX:this.state.startX,endX:this.state.endX},_=n.pageX-a;_>0?_=Math.min(_,f+h-d-u):_<0&&(_=Math.max(_,f-u)),x[o]=u+_;var b=this.getIndex(x),S=b.startIndex,T=b.endIndex,C=function(){var P=m.length-1;return o==="startX"&&(s>l?S%g===0:T%g===0)||sl?T%g===0:S%g===0)||s>l&&T===P};this.setState(gi(gi({},o,u+_),"brushMoveStartX",n.pageX),function(){v&&C()&&v(b)})}},{key:"handleTravellerMoveKeyboard",value:function(n,i){var a=this,o=this.state,s=o.scaleValues,l=o.startX,u=o.endX,c=this.state[i],f=s.indexOf(c);if(f!==-1){var h=f+n;if(!(h===-1||h>=s.length)){var d=s[h];i==="startX"&&d>=u||i==="endX"&&d<=l||this.setState(gi({},i,d),function(){a.props.onChange(a.getIndex({startX:a.state.startX,endX:a.state.endX}))})}}}},{key:"renderBackground",value:function(){var n=this.props,i=n.x,a=n.y,o=n.width,s=n.height,l=n.fill,u=n.stroke;return Q.createElement("rect",{stroke:u,fill:l,x:i,y:a,width:o,height:s})}},{key:"renderPanorama",value:function(){var n=this.props,i=n.x,a=n.y,o=n.width,s=n.height,l=n.data,u=n.children,c=n.padding,f=H.Children.only(u);return f?Q.cloneElement(f,{x:i,y:a,width:o,height:s,margin:c,compact:!0,data:l}):null}},{key:"renderTravellerLayer",value:function(n,i){var a,o,s=this,l=this.props,u=l.y,c=l.travellerWidth,f=l.height,h=l.traveller,d=l.ariaLabel,v=l.data,g=l.startIndex,m=l.endIndex,x=Math.max(n,this.props.x),_=GA(GA({},ct(this.props,!1)),{},{x,y:u,width:c,height:f}),b=d||"Min value: ".concat((a=v[g])===null||a===void 0?void 0:a.name,", Max value: ").concat((o=v[m])===null||o===void 0?void 0:o.name);return Q.createElement(Yt,{tabIndex:0,role:"slider","aria-label":b,"aria-valuenow":n,className:"recharts-brush-traveller",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers[i],onTouchStart:this.travellerDragStartHandlers[i],onKeyDown:function(T){["ArrowLeft","ArrowRight"].includes(T.key)&&(T.preventDefault(),T.stopPropagation(),s.handleTravellerMoveKeyboard(T.key==="ArrowRight"?1:-1,i))},onFocus:function(){s.setState({isTravellerFocused:!0})},onBlur:function(){s.setState({isTravellerFocused:!1})},style:{cursor:"col-resize"}},t.renderTraveller(h,_))}},{key:"renderSlide",value:function(n,i){var a=this.props,o=a.y,s=a.height,l=a.stroke,u=a.travellerWidth,c=Math.min(n,i)+u,f=Math.max(Math.abs(i-n)-u,0);return Q.createElement("rect",{className:"recharts-brush-slide",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.handleSlideDragStart,onTouchStart:this.handleSlideDragStart,style:{cursor:"move"},stroke:"none",fill:l,fillOpacity:.2,x:c,y:o,width:f,height:s})}},{key:"renderText",value:function(){var n=this.props,i=n.startIndex,a=n.endIndex,o=n.y,s=n.height,l=n.travellerWidth,u=n.stroke,c=this.state,f=c.startX,h=c.endX,d=5,v={pointerEvents:"none",fill:u};return Q.createElement(Yt,{className:"recharts-brush-texts"},Q.createElement(v1,F1({textAnchor:"end",verticalAnchor:"middle",x:Math.min(f,h)-d,y:o+s/2},v),this.getTextOfTick(i)),Q.createElement(v1,F1({textAnchor:"start",verticalAnchor:"middle",x:Math.max(f,h)+l+d,y:o+s/2},v),this.getTextOfTick(a)))}},{key:"render",value:function(){var n=this.props,i=n.data,a=n.className,o=n.children,s=n.x,l=n.y,u=n.width,c=n.height,f=n.alwaysShowText,h=this.state,d=h.startX,v=h.endX,g=h.isTextActive,m=h.isSlideMoving,x=h.isTravellerMoving,_=h.isTravellerFocused;if(!i||!i.length||!we(s)||!we(l)||!we(u)||!we(c)||u<=0||c<=0)return null;var b=_t("recharts-brush",a),S=Q.Children.count(o)===1,T=hIe("userSelect","none");return Q.createElement(Yt,{className:b,onMouseLeave:this.handleLeaveWrapper,onTouchMove:this.handleTouchMove,style:T},this.renderBackground(),S&&this.renderPanorama(),this.renderSlide(d,v),this.renderTravellerLayer(d,"startX"),this.renderTravellerLayer(v,"endX"),(g||m||x||_||f)&&this.renderText())}}],[{key:"renderDefaultTraveller",value:function(n){var i=n.x,a=n.y,o=n.width,s=n.height,l=n.stroke,u=Math.floor(a+s/2)-1;return Q.createElement(Q.Fragment,null,Q.createElement("rect",{x:i,y:a,width:o,height:s,fill:l,stroke:"none"}),Q.createElement("line",{x1:i+1,y1:u,x2:i+o-1,y2:u,fill:"none",stroke:"#fff"}),Q.createElement("line",{x1:i+1,y1:u+2,x2:i+o-1,y2:u+2,fill:"none",stroke:"#fff"}))}},{key:"renderTraveller",value:function(n,i){var a;return Q.isValidElement(n)?a=Q.cloneElement(n,i):ft(n)?a=n(i):a=t.renderDefaultTraveller(i),a}},{key:"getDerivedStateFromProps",value:function(n,i){var a=n.data,o=n.width,s=n.x,l=n.travellerWidth,u=n.updateId,c=n.startIndex,f=n.endIndex;if(a!==i.prevData||u!==i.prevUpdateId)return GA({prevData:a,prevTravellerWidth:l,prevUpdateId:u,prevX:s,prevWidth:o},a&&a.length?_Ie({data:a,width:o,x:s,travellerWidth:l,startIndex:c,endIndex:f}):{scale:null,scaleValues:null});if(i.scale&&(o!==i.prevWidth||s!==i.prevX||l!==i.prevTravellerWidth)){i.scale.range([s,s+o-l]);var h=i.scale.domain().map(function(d){return i.scale(d)});return{prevData:a,prevTravellerWidth:l,prevUpdateId:u,prevX:s,prevWidth:o,startX:i.scale(n.startIndex),endX:i.scale(n.endIndex),scaleValues:h}}return null}},{key:"getIndexInRange",value:function(n,i){for(var a=n.length,o=0,s=a-1;s-o>1;){var l=Math.floor((o+s)/2);n[l]>i?s=l:o=l}return i>=n[s]?s:o}}])}(H.PureComponent);gi(jd,"displayName","Brush");gi(jd,"defaultProps",{height:40,travellerWidth:5,gap:1,fill:"#fff",stroke:"#666",padding:{top:1,right:1,bottom:1,left:1},leaveTimeOut:1e3,alwaysShowText:!1});var bIe=ED;function wIe(e,t){var r;return bIe(e,function(n,i,a){return r=t(n,i,a),!r}),!!r}var SIe=wIe,TIe=zY,CIe=kv,AIe=SIe,MIe=ci,PIe=oT;function kIe(e,t,r){var n=MIe(e)?TIe:AIe;return r&&PIe(e,t,r)&&(t=void 0),n(e,CIe(t))}var LIe=kIe;const IIe=$t(LIe);var Do=function(t,r){var n=t.alwaysShow,i=t.ifOverflow;return n&&(i="extendDomain"),i===r},R$=oX;function OIe(e,t,r){t=="__proto__"&&R$?R$(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var EIe=OIe,DIe=EIe,NIe=iX,jIe=kv;function RIe(e,t){var r={};return t=jIe(t),NIe(e,function(n,i,a){DIe(r,i,t(n,i,a))}),r}var BIe=RIe;const zIe=$t(BIe);function $Ie(e,t){for(var r=-1,n=e==null?0:e.length;++r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function iOe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function aOe(e,t){var r=e.x,n=e.y,i=nOe(e,QIe),a="".concat(r),o=parseInt(a,10),s="".concat(n),l=parseInt(s,10),u="".concat(t.height||i.height),c=parseInt(u,10),f="".concat(t.width||i.width),h=parseInt(f,10);return Op(Op(Op(Op(Op({},t),i),o?{x:o}:{}),l?{y:l}:{}),{},{height:c,width:h,name:t.name,radius:t.radius})}function z$(e){return Q.createElement($Le,AL({shapeType:"rectangle",propTransformer:aOe,activeClassName:"recharts-active-bar"},e))}var oOe=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return function(n,i){if(typeof t=="number")return t;var a=we(n)||mve(n);return a?t(n,i):(a||of(),r)}},sOe=["value","background"],jq;function Rd(e){"@babel/helpers - typeof";return Rd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rd(e)}function lOe(e,t){if(e==null)return{};var r=uOe(e,t),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function uOe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function G1(){return G1=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&Math.abs(V)0&&Math.abs(z)0&&(N=Math.min((ee||0)-(z[le-1]||0),N))}),Number.isFinite(N)){var V=N/D,F=g.layout==="vertical"?n.height:n.width;if(g.padding==="gap"&&(A=V*F/2),g.padding==="no-gap"){var $=nf(t.barCategoryGap,V*F),B=V*F/2;A=B-$-(B-$)/F*$}}}i==="xAxis"?P=[n.left+(b.left||0)+(A||0),n.left+n.width-(b.right||0)-(A||0)]:i==="yAxis"?P=l==="horizontal"?[n.top+n.height-(b.bottom||0),n.top+(b.top||0)]:[n.top+(b.top||0)+(A||0),n.top+n.height-(b.bottom||0)-(A||0)]:P=g.range,T&&(P=[P[1],P[0]]);var Z=B2e(g,a,h),W=Z.scale,G=Z.realScaleType;W.domain(x).range(P),z2e(W);var Y=Z2e(W,Da(Da({},g),{},{realScaleType:G}));i==="xAxis"?(E=m==="top"&&!S||m==="bottom"&&S,I=n.left,k=f[C]-E*g.height):i==="yAxis"&&(E=m==="left"&&!S||m==="right"&&S,I=f[C]-E*g.width,k=n.top);var K=Da(Da(Da({},g),Y),{},{realScaleType:G,x:I,y:k,scale:W,width:i==="xAxis"?n.width:g.width,height:i==="yAxis"?n.height:g.height});return K.bandSize=L1(K,Y),!g.hide&&i==="xAxis"?f[C]+=(E?-1:1)*K.height:g.hide||(f[C]+=(E?-1:1)*K.width),Da(Da({},d),{},xT({},v,K))},{})},Fq=function(t,r){var n=t.x,i=t.y,a=r.x,o=r.y;return{x:Math.min(n,a),y:Math.min(i,o),width:Math.abs(a-n),height:Math.abs(o-i)}},_Oe=function(t){var r=t.x1,n=t.y1,i=t.x2,a=t.y2;return Fq({x:r,y:n},{x:i,y:a})},Vq=function(){function e(t){mOe(this,e),this.scale=t}return yOe(e,[{key:"domain",get:function(){return this.scale.domain}},{key:"range",get:function(){return this.scale.range}},{key:"rangeMin",get:function(){return this.range()[0]}},{key:"rangeMax",get:function(){return this.range()[1]}},{key:"bandwidth",get:function(){return this.scale.bandwidth}},{key:"apply",value:function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.bandAware,a=n.position;if(r!==void 0){if(a)switch(a){case"start":return this.scale(r);case"middle":{var o=this.bandwidth?this.bandwidth()/2:0;return this.scale(r)+o}case"end":{var s=this.bandwidth?this.bandwidth():0;return this.scale(r)+s}default:return this.scale(r)}if(i){var l=this.bandwidth?this.bandwidth()/2:0;return this.scale(r)+l}return this.scale(r)}}},{key:"isInRange",value:function(r){var n=this.range(),i=n[0],a=n[n.length-1];return i<=a?r>=i&&r<=a:r>=a&&r<=i}}],[{key:"create",value:function(r){return new e(r)}}])}();xT(Vq,"EPS",1e-4);var lN=function(t){var r=Object.keys(t).reduce(function(n,i){return Da(Da({},n),{},xT({},i,Vq.create(t[i])))},{});return Da(Da({},r),{},{apply:function(i){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.bandAware,s=a.position;return zIe(i,function(l,u){return r[u].apply(l,{bandAware:o,position:s})})},isInRange:function(i){return JIe(i,function(a,o){return r[o].isInRange(a)})}})};function bOe(e){return(e%180+180)%180}var wOe=function(t){var r=t.width,n=t.height,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=bOe(i),o=a*Math.PI/180,s=Math.atan(n/r),l=o>s&&oe.length)&&(t=e.length);for(var r=0,n=new Array(t);re*i)return!1;var a=r();return e*(t-e*a/2-n)>=0&&e*(t+e*a/2-i)<=0}function uEe(e,t){return aK(e,t+1)}function cEe(e,t,r,n,i){for(var a=(n||[]).slice(),o=t.start,s=t.end,l=0,u=1,c=o,f=function(){var v=n==null?void 0:n[l];if(v===void 0)return{v:aK(n,u)};var g=l,m,x=function(){return m===void 0&&(m=r(v,g)),m},_=v.coordinate,b=l===0||Y1(e,_,x,c,s);b||(l=0,c=o,u+=1),b&&(c=_+e*(x()/2+i),l+=u)},h;u<=a.length;)if(h=f(),h)return h.v;return[]}function uy(e){"@babel/helpers - typeof";return uy=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},uy(e)}function J$(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function An(e){for(var t=1;t0?d.coordinate-m*e:d.coordinate})}else a[h]=d=An(An({},d),{},{tickCoord:d.coordinate});var x=Y1(e,d.tickCoord,g,s,l);x&&(l=d.tickCoord-e*(g()/2+i),a[h]=An(An({},d),{},{isShow:!0}))},c=o-1;c>=0;c--)u(c);return a}function pEe(e,t,r,n,i,a){var o=(n||[]).slice(),s=o.length,l=t.start,u=t.end;if(a){var c=n[s-1],f=r(c,s-1),h=e*(c.coordinate+e*f/2-u);o[s-1]=c=An(An({},c),{},{tickCoord:h>0?c.coordinate-h*e:c.coordinate});var d=Y1(e,c.tickCoord,function(){return f},l,u);d&&(u=c.tickCoord-e*(f/2+i),o[s-1]=An(An({},c),{},{isShow:!0}))}for(var v=a?s-1:s,g=function(_){var b=o[_],S,T=function(){return S===void 0&&(S=r(b,_)),S};if(_===0){var C=e*(b.coordinate-e*T()/2-l);o[_]=b=An(An({},b),{},{tickCoord:C<0?b.coordinate-C*e:b.coordinate})}else o[_]=b=An(An({},b),{},{tickCoord:b.coordinate});var A=Y1(e,b.tickCoord,T,l,u);A&&(l=b.tickCoord+e*(T()/2+i),o[_]=An(An({},b),{},{isShow:!0}))},m=0;m=2?Ba(i[1].coordinate-i[0].coordinate):1,x=lEe(a,m,d);return l==="equidistantPreserveStart"?cEe(m,x,g,i,o):(l==="preserveStart"||l==="preserveStartEnd"?h=pEe(m,x,g,i,o,l==="preserveStartEnd"):h=vEe(m,x,g,i,o),h.filter(function(_){return _.isShow}))}var mEe=["viewBox"],yEe=["viewBox"],xEe=["ticks"];function Fd(e){"@babel/helpers - typeof";return Fd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Fd(e)}function Vh(){return Vh=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function _Ee(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function bEe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function eF(e,t){for(var r=0;r0?l(this.props):l(d)),o<=0||s<=0||!v||!v.length?null:Q.createElement(Yt,{className:_t("recharts-cartesian-axis",u),ref:function(m){n.layerReference=m}},a&&this.renderAxisLine(),this.renderTicks(v,this.state.fontSize,this.state.letterSpacing),Ln.renderCallByParent(this.props))}}],[{key:"renderTickItem",value:function(n,i,a){var o,s=_t(i.className,"recharts-cartesian-axis-tick-value");return Q.isValidElement(n)?o=Q.cloneElement(n,Rr(Rr({},i),{},{className:s})):ft(n)?o=n(Rr(Rr({},i),{},{className:s})):o=Q.createElement(v1,Vh({},i,{className:"recharts-cartesian-axis-tick-value"}),a),o}}])}(H.Component);cN(TT,"displayName","CartesianAxis");cN(TT,"defaultProps",{x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd"});var PEe=["type","layout","connectNulls","ref"],kEe=["key"];function Vd(e){"@babel/helpers - typeof";return Vd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Vd(e)}function tF(e,t){if(e==null)return{};var r=LEe(e,t),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function LEe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Gg(){return Gg=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);rf){d=[].concat(qf(l.slice(0,v)),[f-g]);break}var m=d.length%2===0?[0,h]:[h];return[].concat(qf(t.repeat(l,c)),qf(d),m).map(function(x){return"".concat(x,"px")}).join(", ")}),Na(r,"id",Cv("recharts-line-")),Na(r,"pathRef",function(o){r.mainCurve=o}),Na(r,"handleAnimationEnd",function(){r.setState({isAnimationFinished:!0}),r.props.onAnimationEnd&&r.props.onAnimationEnd()}),Na(r,"handleAnimationStart",function(){r.setState({isAnimationFinished:!1}),r.props.onAnimationStart&&r.props.onAnimationStart()}),r}return $Ee(t,e),jEe(t,[{key:"componentDidMount",value:function(){if(this.props.isAnimationActive){var n=this.getTotalLength();this.setState({totalLength:n})}}},{key:"componentDidUpdate",value:function(){if(this.props.isAnimationActive){var n=this.getTotalLength();n!==this.state.totalLength&&this.setState({totalLength:n})}}},{key:"getTotalLength",value:function(){var n=this.mainCurve;try{return n&&n.getTotalLength&&n.getTotalLength()||0}catch{return 0}}},{key:"renderErrorBar",value:function(n,i){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var a=this.props,o=a.points,s=a.xAxis,l=a.yAxis,u=a.layout,c=a.children,f=sa(c,i0);if(!f)return null;var h=function(g,m){return{x:g.x,y:g.y,value:g.value,errorVal:Hn(g.payload,m)}},d={clipPath:n?"url(#clipPath-".concat(i,")"):null};return Q.createElement(Yt,d,f.map(function(v){return Q.cloneElement(v,{key:"bar-".concat(v.props.dataKey),data:o,xAxis:s,yAxis:l,layout:u,dataPointFormatter:h})}))}},{key:"renderDots",value:function(n,i,a){var o=this.props.isAnimationActive;if(o&&!this.state.isAnimationFinished)return null;var s=this.props,l=s.dot,u=s.points,c=s.dataKey,f=ct(this.props,!1),h=ct(l,!0),d=u.map(function(g,m){var x=pi(pi(pi({key:"dot-".concat(m),r:3},f),h),{},{index:m,cx:g.x,cy:g.y,value:g.value,dataKey:c,payload:g.payload,points:u});return t.renderDotItem(l,x)}),v={clipPath:n?"url(#clipPath-".concat(i?"":"dots-").concat(a,")"):null};return Q.createElement(Yt,Gg({className:"recharts-line-dots",key:"dots"},v),d)}},{key:"renderCurveStatically",value:function(n,i,a,o){var s=this.props,l=s.type,u=s.layout,c=s.connectNulls;s.ref;var f=tF(s,PEe),h=pi(pi(pi({},ct(f,!0)),{},{fill:"none",className:"recharts-line-curve",clipPath:i?"url(#clipPath-".concat(a,")"):null,points:n},o),{},{type:l,layout:u,connectNulls:c});return Q.createElement(ld,Gg({},h,{pathRef:this.pathRef}))}},{key:"renderCurveWithAnimation",value:function(n,i){var a=this,o=this.props,s=o.points,l=o.strokeDasharray,u=o.isAnimationActive,c=o.animationBegin,f=o.animationDuration,h=o.animationEasing,d=o.animationId,v=o.animateNewValues,g=o.width,m=o.height,x=this.state,_=x.prevPoints,b=x.totalLength;return Q.createElement(Fo,{begin:c,duration:f,isActive:u,easing:h,from:{t:0},to:{t:1},key:"line-".concat(d),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(S){var T=S.t;if(_){var C=_.length/s.length,A=s.map(function(D,N){var z=Math.floor(N*C);if(_[z]){var V=_[z],F=dn(V.x,D.x),$=dn(V.y,D.y);return pi(pi({},D),{},{x:F(T),y:$(T)})}if(v){var B=dn(g*2,D.x),Z=dn(m/2,D.y);return pi(pi({},D),{},{x:B(T),y:Z(T)})}return pi(pi({},D),{},{x:D.x,y:D.y})});return a.renderCurveStatically(A,n,i)}var P=dn(0,b),I=P(T),k;if(l){var E="".concat(l).split(/[,\s]+/gim).map(function(D){return parseFloat(D)});k=a.getStrokeDasharray(I,b,E)}else k=a.generateSimpleStrokeDasharray(b,I);return a.renderCurveStatically(s,n,i,{strokeDasharray:k})})}},{key:"renderCurve",value:function(n,i){var a=this.props,o=a.points,s=a.isAnimationActive,l=this.state,u=l.prevPoints,c=l.totalLength;return s&&o&&o.length&&(!u&&c>0||!Od(u,o))?this.renderCurveWithAnimation(n,i):this.renderCurveStatically(o,n,i)}},{key:"render",value:function(){var n,i=this.props,a=i.hide,o=i.dot,s=i.points,l=i.className,u=i.xAxis,c=i.yAxis,f=i.top,h=i.left,d=i.width,v=i.height,g=i.isAnimationActive,m=i.id;if(a||!s||!s.length)return null;var x=this.state.isAnimationFinished,_=s.length===1,b=_t("recharts-line",l),S=u&&u.allowDataOverflow,T=c&&c.allowDataOverflow,C=S||T,A=dt(m)?this.id:m,P=(n=ct(o,!1))!==null&&n!==void 0?n:{r:3,strokeWidth:2},I=P.r,k=I===void 0?3:I,E=P.strokeWidth,D=E===void 0?2:E,N=cY(o)?o:{},z=N.clipDot,V=z===void 0?!0:z,F=k*2+D;return Q.createElement(Yt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(A)},Q.createElement("rect",{x:S?h:h-d/2,y:T?f:f-v/2,width:S?d:d*2,height:T?v:v*2})),!V&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(A)},Q.createElement("rect",{x:h-F/2,y:f-F/2,width:d+F,height:v+F}))):null,!_&&this.renderCurve(C,A),this.renderErrorBar(C,A),(_||o)&&this.renderDots(C,V,A),(!g||x)&&Ms.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(n,i){return n.animationId!==i.prevAnimationId?{prevAnimationId:n.animationId,curPoints:n.points,prevPoints:i.curPoints}:n.points!==i.curPoints?{curPoints:n.points}:null}},{key:"repeat",value:function(n,i){for(var a=n.length%2!==0?[].concat(qf(n),[0]):n,o=[],s=0;s=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function WEe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Lc(){return Lc=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||!Od(c,o)||!Od(f,s))?this.renderAreaWithAnimation(n,i):this.renderAreaStatically(o,s,n,i)}},{key:"render",value:function(){var n,i=this.props,a=i.hide,o=i.dot,s=i.points,l=i.className,u=i.top,c=i.left,f=i.xAxis,h=i.yAxis,d=i.width,v=i.height,g=i.isAnimationActive,m=i.id;if(a||!s||!s.length)return null;var x=this.state.isAnimationFinished,_=s.length===1,b=_t("recharts-area",l),S=f&&f.allowDataOverflow,T=h&&h.allowDataOverflow,C=S||T,A=dt(m)?this.id:m,P=(n=ct(o,!1))!==null&&n!==void 0?n:{r:3,strokeWidth:2},I=P.r,k=I===void 0?3:I,E=P.strokeWidth,D=E===void 0?2:E,N=cY(o)?o:{},z=N.clipDot,V=z===void 0?!0:z,F=k*2+D;return Q.createElement(Yt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(A)},Q.createElement("rect",{x:S?c:c-d/2,y:T?u:u-v/2,width:S?d:d*2,height:T?v:v*2})),!V&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(A)},Q.createElement("rect",{x:c-F/2,y:u-F/2,width:d+F,height:v+F}))):null,_?null:this.renderArea(C,A),(o||_)&&this.renderDots(C,V,A),(!g||x)&&Ms.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(n,i){return n.animationId!==i.prevAnimationId?{prevAnimationId:n.animationId,curPoints:n.points,curBaseLine:n.baseLine,prevPoints:i.curPoints,prevBaseLine:i.curBaseLine}:n.points!==i.curPoints||n.baseLine!==i.curBaseLine?{curPoints:n.points,curBaseLine:n.baseLine}:null}}])}(H.PureComponent);cK=Su;To(Su,"displayName","Area");To(Su,"defaultProps",{stroke:"#3182bd",fill:"#3182bd",fillOpacity:.6,xAxisId:0,yAxisId:0,legendType:"line",connectNulls:!1,points:[],dot:!1,activeDot:!0,hide:!1,isAnimationActive:!Sf.isSsr,animationBegin:0,animationDuration:1500,animationEasing:"ease"});To(Su,"getBaseValue",function(e,t,r,n){var i=e.layout,a=e.baseValue,o=t.props.baseValue,s=o??a;if(we(s)&&typeof s=="number")return s;var l=i==="horizontal"?n:r,u=l.scale.domain();if(l.type==="number"){var c=Math.max(u[0],u[1]),f=Math.min(u[0],u[1]);return s==="dataMin"?f:s==="dataMax"||c<0?c:Math.max(Math.min(u[0],u[1]),0)}return s==="dataMin"?u[0]:s==="dataMax"?u[1]:u[0]});To(Su,"getComposedData",function(e){var t=e.props,r=e.item,n=e.xAxis,i=e.yAxis,a=e.xAxisTicks,o=e.yAxisTicks,s=e.bandSize,l=e.dataKey,u=e.stackedData,c=e.dataStartIndex,f=e.displayedData,h=e.offset,d=t.layout,v=u&&u.length,g=cK.getBaseValue(t,r,n,i),m=d==="horizontal",x=!1,_=f.map(function(S,T){var C;v?C=u[c+T]:(C=Hn(S,l),Array.isArray(C)?x=!0:C=[g,C]);var A=C[1]==null||v&&Hn(S,l)==null;return m?{x:k1({axis:n,ticks:a,bandSize:s,entry:S,index:T}),y:A?null:i.scale(C[1]),value:C,payload:S}:{x:A?null:n.scale(C[1]),y:k1({axis:i,ticks:o,bandSize:s,entry:S,index:T}),value:C,payload:S}}),b;return v||x?b=_.map(function(S){var T=Array.isArray(S.value)?S.value[0]:null;return m?{x:S.x,y:T!=null&&S.y!=null?i.scale(T):null}:{x:T!=null?n.scale(T):null,y:S.y}}):b=m?i.scale(g):n.scale(g),gl({points:_,baseLine:b,layout:d,isRange:x},h)});To(Su,"renderDotItem",function(e,t){var r;if(Q.isValidElement(e))r=Q.cloneElement(e,t);else if(ft(e))r=e(t);else{var n=_t("recharts-area-dot",typeof e!="boolean"?e.className:""),i=t.key,a=fK(t,GEe);r=Q.createElement(gT,Lc({},a,{key:i,className:n}))}return r});function Wd(e){"@babel/helpers - typeof";return Wd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wd(e)}function JEe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function QEe(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function zDe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function $De(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function FDe(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r0?o:t&&t.length&&we(i)&&we(a)?t.slice(i,a+1):[]};function MK(e){return e==="number"?[0,"auto"]:void 0}var UL=function(t,r,n,i){var a=t.graphicalItems,o=t.tooltipAxis,s=CT(r,t);return n<0||!a||!a.length||n>=s.length?null:a.reduce(function(l,u){var c,f=(c=u.props.data)!==null&&c!==void 0?c:r;f&&t.dataStartIndex+t.dataEndIndex!==0&&t.dataEndIndex-t.dataStartIndex>=n&&(f=f.slice(t.dataStartIndex,t.dataEndIndex+1));var h;if(o.dataKey&&!o.allowDuplicatedCategory){var d=f===void 0?s:f;h=Jb(d,o.dataKey,i)}else h=f&&f[n]||s[n];return h?[].concat(Zd(l),[yq(u,h)]):l},[])},fF=function(t,r,n,i){var a=i||{x:t.chartX,y:t.chartY},o=QDe(a,n),s=t.orderedTooltipTicks,l=t.tooltipAxis,u=t.tooltipTicks,c=O2e(o,s,u,l);if(c>=0&&u){var f=u[c]&&u[c].value,h=UL(t,r,c,f),d=eNe(n,s,c,a);return{activeTooltipIndex:c,activeLabel:f,activePayload:h,activeCoordinate:d}}return null},tNe=function(t,r){var n=r.axes,i=r.graphicalItems,a=r.axisType,o=r.axisIdKey,s=r.stackGroups,l=r.dataStartIndex,u=r.dataEndIndex,c=t.layout,f=t.children,h=t.stackOffset,d=gq(c,a);return n.reduce(function(v,g){var m,x=g.type.defaultProps!==void 0?ce(ce({},g.type.defaultProps),g.props):g.props,_=x.type,b=x.dataKey,S=x.allowDataOverflow,T=x.allowDuplicatedCategory,C=x.scale,A=x.ticks,P=x.includeHidden,I=x[o];if(v[I])return v;var k=CT(t.data,{graphicalItems:i.filter(function(Y){var K,ee=o in Y.props?Y.props[o]:(K=Y.type.defaultProps)===null||K===void 0?void 0:K[o];return ee===I}),dataStartIndex:l,dataEndIndex:u}),E=k.length,D,N,z;MDe(x.domain,S,_)&&(D=uL(x.domain,null,S),d&&(_==="number"||C!=="auto")&&(z=Fg(k,b,"category")));var V=MK(_);if(!D||D.length===0){var F,$=(F=x.domain)!==null&&F!==void 0?F:V;if(b){if(D=Fg(k,b,_),_==="category"&&d){var B=xve(D);T&&B?(N=D,D=$1(0,E)):T||(D=U4($,D,g).reduce(function(Y,K){return Y.indexOf(K)>=0?Y:[].concat(Zd(Y),[K])},[]))}else if(_==="category")T?D=D.filter(function(Y){return Y!==""&&!dt(Y)}):D=U4($,D,g).reduce(function(Y,K){return Y.indexOf(K)>=0||K===""||dt(K)?Y:[].concat(Zd(Y),[K])},[]);else if(_==="number"){var Z=R2e(k,i.filter(function(Y){var K,ee,le=o in Y.props?Y.props[o]:(K=Y.type.defaultProps)===null||K===void 0?void 0:K[o],fe="hide"in Y.props?Y.props.hide:(ee=Y.type.defaultProps)===null||ee===void 0?void 0:ee.hide;return le===I&&(P||!fe)}),b,a,c);Z&&(D=Z)}d&&(_==="number"||C!=="auto")&&(z=Fg(k,b,"category"))}else d?D=$1(0,E):s&&s[I]&&s[I].hasStack&&_==="number"?D=h==="expand"?[0,1]:mq(s[I].stackGroups,l,u):D=pq(k,i.filter(function(Y){var K=o in Y.props?Y.props[o]:Y.type.defaultProps[o],ee="hide"in Y.props?Y.props.hide:Y.type.defaultProps.hide;return K===I&&(P||!ee)}),_,c,!0);if(_==="number")D=GL(f,D,I,a,A),$&&(D=uL($,D,S));else if(_==="category"&&$){var W=$,G=D.every(function(Y){return W.indexOf(Y)>=0});G&&(D=W)}}return ce(ce({},v),{},qe({},I,ce(ce({},x),{},{axisType:a,domain:D,categoricalDomain:z,duplicateDomain:N,originalDomain:(m=x.domain)!==null&&m!==void 0?m:V,isCategorical:d,layout:c})))},{})},rNe=function(t,r){var n=r.graphicalItems,i=r.Axis,a=r.axisType,o=r.axisIdKey,s=r.stackGroups,l=r.dataStartIndex,u=r.dataEndIndex,c=t.layout,f=t.children,h=CT(t.data,{graphicalItems:n,dataStartIndex:l,dataEndIndex:u}),d=h.length,v=gq(c,a),g=-1;return n.reduce(function(m,x){var _=x.type.defaultProps!==void 0?ce(ce({},x.type.defaultProps),x.props):x.props,b=_[o],S=MK("number");if(!m[b]){g++;var T;return v?T=$1(0,d):s&&s[b]&&s[b].hasStack?(T=mq(s[b].stackGroups,l,u),T=GL(f,T,b,a)):(T=uL(S,pq(h,n.filter(function(C){var A,P,I=o in C.props?C.props[o]:(A=C.type.defaultProps)===null||A===void 0?void 0:A[o],k="hide"in C.props?C.props.hide:(P=C.type.defaultProps)===null||P===void 0?void 0:P.hide;return I===b&&!k}),"number",c),i.defaultProps.allowDataOverflow),T=GL(f,T,b,a)),ce(ce({},m),{},qe({},b,ce(ce({axisType:a},i.defaultProps),{},{hide:!0,orientation:oa(KDe,"".concat(a,".").concat(g%2),null),domain:T,originalDomain:S,isCategorical:v,layout:c})))}return m},{})},nNe=function(t,r){var n=r.axisType,i=n===void 0?"xAxis":n,a=r.AxisComp,o=r.graphicalItems,s=r.stackGroups,l=r.dataStartIndex,u=r.dataEndIndex,c=t.children,f="".concat(i,"Id"),h=sa(c,a),d={};return h&&h.length?d=tNe(t,{axes:h,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u}):o&&o.length&&(d=rNe(t,{Axis:a,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u})),d},iNe=function(t){var r=Th(t),n=kc(r,!1,!0);return{tooltipTicks:n,orderedTooltipTicks:DD(n,function(i){return i.coordinate}),tooltipAxis:r,tooltipAxisBandSize:L1(r,n)}},hF=function(t){var r=t.children,n=t.defaultShowTooltip,i=yi(r,jd),a=0,o=0;return t.data&&t.data.length!==0&&(o=t.data.length-1),i&&i.props&&(i.props.startIndex>=0&&(a=i.props.startIndex),i.props.endIndex>=0&&(o=i.props.endIndex)),{chartX:0,chartY:0,dataStartIndex:a,dataEndIndex:o,activeTooltipIndex:-1,isTooltipActive:!!n}},aNe=function(t){return!t||!t.length?!1:t.some(function(r){var n=Cs(r&&r.type);return n&&n.indexOf("Bar")>=0})},dF=function(t){return t==="horizontal"?{numericAxisName:"yAxis",cateAxisName:"xAxis"}:t==="vertical"?{numericAxisName:"xAxis",cateAxisName:"yAxis"}:t==="centric"?{numericAxisName:"radiusAxis",cateAxisName:"angleAxis"}:{numericAxisName:"angleAxis",cateAxisName:"radiusAxis"}},oNe=function(t,r){var n=t.props,i=t.graphicalItems,a=t.xAxisMap,o=a===void 0?{}:a,s=t.yAxisMap,l=s===void 0?{}:s,u=n.width,c=n.height,f=n.children,h=n.margin||{},d=yi(f,jd),v=yi(f,ad),g=Object.keys(l).reduce(function(T,C){var A=l[C],P=A.orientation;return!A.mirror&&!A.hide?ce(ce({},T),{},qe({},P,T[P]+A.width)):T},{left:h.left||0,right:h.right||0}),m=Object.keys(o).reduce(function(T,C){var A=o[C],P=A.orientation;return!A.mirror&&!A.hide?ce(ce({},T),{},qe({},P,oa(T,"".concat(P))+A.height)):T},{top:h.top||0,bottom:h.bottom||0}),x=ce(ce({},m),g),_=x.bottom;d&&(x.bottom+=d.props.height||jd.defaultProps.height),v&&r&&(x=N2e(x,i,n,r));var b=u-x.left-x.right,S=c-x.top-x.bottom;return ce(ce({brushBottom:_},x),{},{width:Math.max(b,0),height:Math.max(S,0)})},sNe=function(t,r){if(r==="xAxis")return t[r].width;if(r==="yAxis")return t[r].height},PK=function(t){var r=t.chartName,n=t.GraphicalChild,i=t.defaultTooltipEventType,a=i===void 0?"axis":i,o=t.validateTooltipEventTypes,s=o===void 0?["axis"]:o,l=t.axisComponents,u=t.legendContent,c=t.formatAxisMap,f=t.defaultProps,h=function(x,_){var b=_.graphicalItems,S=_.stackGroups,T=_.offset,C=_.updateId,A=_.dataStartIndex,P=_.dataEndIndex,I=x.barSize,k=x.layout,E=x.barGap,D=x.barCategoryGap,N=x.maxBarSize,z=dF(k),V=z.numericAxisName,F=z.cateAxisName,$=aNe(b),B=[];return b.forEach(function(Z,W){var G=CT(x.data,{graphicalItems:[Z],dataStartIndex:A,dataEndIndex:P}),Y=Z.type.defaultProps!==void 0?ce(ce({},Z.type.defaultProps),Z.props):Z.props,K=Y.dataKey,ee=Y.maxBarSize,le=Y["".concat(V,"Id")],fe=Y["".concat(F,"Id")],De={},me=l.reduce(function(Xr,qn){var Rf=_["".concat(qn.axisType,"Map")],k0=Y["".concat(qn.axisType,"Id")];Rf&&Rf[k0]||qn.axisType==="zAxis"||of();var L0=Rf[k0];return ce(ce({},Xr),{},qe(qe({},qn.axisType,L0),"".concat(qn.axisType,"Ticks"),kc(L0)))},De),ie=me[F],he=me["".concat(F,"Ticks")],ue=S&&S[le]&&S[le].hasStack&&X2e(Z,S[le].stackGroups),te=Cs(Z.type).indexOf("Bar")>=0,Ve=L1(ie,he),Se=[],Ge=$&&E2e({barSize:I,stackGroups:S,totalSize:sNe(me,F)});if(te){var Ye,vt,Ft=dt(ee)?N:ee,rr=(Ye=(vt=L1(ie,he,!0))!==null&&vt!==void 0?vt:Ft)!==null&&Ye!==void 0?Ye:0;Se=D2e({barGap:E,barCategoryGap:D,bandSize:rr!==Ve?rr:Ve,sizeList:Ge[fe],maxBarSize:Ft}),rr!==Ve&&(Se=Se.map(function(Xr){return ce(ce({},Xr),{},{position:ce(ce({},Xr.position),{},{offset:Xr.position.offset-rr/2})})}))}var Nn=Z&&Z.type&&Z.type.getComposedData;Nn&&B.push({props:ce(ce({},Nn(ce(ce({},me),{},{displayedData:G,props:x,dataKey:K,item:Z,bandSize:Ve,barPosition:Se,offset:T,stackedData:ue,layout:k,dataStartIndex:A,dataEndIndex:P}))),{},qe(qe(qe({key:Z.key||"item-".concat(W)},V,me[V]),F,me[F]),"animationId",C)),childIndex:Ive(Z,x.children),item:Z})}),B},d=function(x,_){var b=x.props,S=x.dataStartIndex,T=x.dataEndIndex,C=x.updateId;if(!$B({props:b}))return null;var A=b.children,P=b.layout,I=b.stackOffset,k=b.data,E=b.reverseStackOrder,D=dF(P),N=D.numericAxisName,z=D.cateAxisName,V=sa(A,n),F=U2e(k,V,"".concat(N,"Id"),"".concat(z,"Id"),I,E),$=l.reduce(function(Y,K){var ee="".concat(K.axisType,"Map");return ce(ce({},Y),{},qe({},ee,nNe(b,ce(ce({},K),{},{graphicalItems:V,stackGroups:K.axisType===N&&F,dataStartIndex:S,dataEndIndex:T}))))},{}),B=oNe(ce(ce({},$),{},{props:b,graphicalItems:V}),_==null?void 0:_.legendBBox);Object.keys($).forEach(function(Y){$[Y]=c(b,$[Y],B,Y.replace("Map",""),r)});var Z=$["".concat(z,"Map")],W=iNe(Z),G=h(b,ce(ce({},$),{},{dataStartIndex:S,dataEndIndex:T,updateId:C,graphicalItems:V,stackGroups:F,offset:B}));return ce(ce({formattedGraphicalItems:G,graphicalItems:V,offset:B,stackGroups:F},W),$)},v=function(m){function x(_){var b,S,T;return $De(this,x),T=GDe(this,x,[_]),qe(T,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),qe(T,"accessibilityManager",new ADe),qe(T,"handleLegendBBoxUpdate",function(C){if(C){var A=T.state,P=A.dataStartIndex,I=A.dataEndIndex,k=A.updateId;T.setState(ce({legendBBox:C},d({props:T.props,dataStartIndex:P,dataEndIndex:I,updateId:k},ce(ce({},T.state),{},{legendBBox:C}))))}}),qe(T,"handleReceiveSyncEvent",function(C,A,P){if(T.props.syncId===C){if(P===T.eventEmitterSymbol&&typeof T.props.syncMethod!="function")return;T.applySyncEvent(A)}}),qe(T,"handleBrushChange",function(C){var A=C.startIndex,P=C.endIndex;if(A!==T.state.dataStartIndex||P!==T.state.dataEndIndex){var I=T.state.updateId;T.setState(function(){return ce({dataStartIndex:A,dataEndIndex:P},d({props:T.props,dataStartIndex:A,dataEndIndex:P,updateId:I},T.state))}),T.triggerSyncEvent({dataStartIndex:A,dataEndIndex:P})}}),qe(T,"handleMouseEnter",function(C){var A=T.getMouseInfo(C);if(A){var P=ce(ce({},A),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var I=T.props.onMouseEnter;ft(I)&&I(P,C)}}),qe(T,"triggeredAfterMouseMove",function(C){var A=T.getMouseInfo(C),P=A?ce(ce({},A),{},{isTooltipActive:!0}):{isTooltipActive:!1};T.setState(P),T.triggerSyncEvent(P);var I=T.props.onMouseMove;ft(I)&&I(P,C)}),qe(T,"handleItemMouseEnter",function(C){T.setState(function(){return{isTooltipActive:!0,activeItem:C,activePayload:C.tooltipPayload,activeCoordinate:C.tooltipPosition||{x:C.cx,y:C.cy}}})}),qe(T,"handleItemMouseLeave",function(){T.setState(function(){return{isTooltipActive:!1}})}),qe(T,"handleMouseMove",function(C){C.persist(),T.throttleTriggeredAfterMouseMove(C)}),qe(T,"handleMouseLeave",function(C){T.throttleTriggeredAfterMouseMove.cancel();var A={isTooltipActive:!1};T.setState(A),T.triggerSyncEvent(A);var P=T.props.onMouseLeave;ft(P)&&P(A,C)}),qe(T,"handleOuterEvent",function(C){var A=Lve(C),P=oa(T.props,"".concat(A));if(A&&ft(P)){var I,k;/.*touch.*/i.test(A)?k=T.getMouseInfo(C.changedTouches[0]):k=T.getMouseInfo(C),P((I=k)!==null&&I!==void 0?I:{},C)}}),qe(T,"handleClick",function(C){var A=T.getMouseInfo(C);if(A){var P=ce(ce({},A),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var I=T.props.onClick;ft(I)&&I(P,C)}}),qe(T,"handleMouseDown",function(C){var A=T.props.onMouseDown;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"handleMouseUp",function(C){var A=T.props.onMouseUp;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"handleTouchMove",function(C){C.changedTouches!=null&&C.changedTouches.length>0&&T.throttleTriggeredAfterMouseMove(C.changedTouches[0])}),qe(T,"handleTouchStart",function(C){C.changedTouches!=null&&C.changedTouches.length>0&&T.handleMouseDown(C.changedTouches[0])}),qe(T,"handleTouchEnd",function(C){C.changedTouches!=null&&C.changedTouches.length>0&&T.handleMouseUp(C.changedTouches[0])}),qe(T,"handleDoubleClick",function(C){var A=T.props.onDoubleClick;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"handleContextMenu",function(C){var A=T.props.onContextMenu;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"triggerSyncEvent",function(C){T.props.syncId!==void 0&&HA.emit(UA,T.props.syncId,C,T.eventEmitterSymbol)}),qe(T,"applySyncEvent",function(C){var A=T.props,P=A.layout,I=A.syncMethod,k=T.state.updateId,E=C.dataStartIndex,D=C.dataEndIndex;if(C.dataStartIndex!==void 0||C.dataEndIndex!==void 0)T.setState(ce({dataStartIndex:E,dataEndIndex:D},d({props:T.props,dataStartIndex:E,dataEndIndex:D,updateId:k},T.state)));else if(C.activeTooltipIndex!==void 0){var N=C.chartX,z=C.chartY,V=C.activeTooltipIndex,F=T.state,$=F.offset,B=F.tooltipTicks;if(!$)return;if(typeof I=="function")V=I(B,C);else if(I==="value"){V=-1;for(var Z=0;Z=0){var ue,te;if(N.dataKey&&!N.allowDuplicatedCategory){var Ve=typeof N.dataKey=="function"?he:"payload.".concat(N.dataKey.toString());ue=Jb(Z,Ve,V),te=W&&G&&Jb(G,Ve,V)}else ue=Z==null?void 0:Z[z],te=W&&G&&G[z];if(fe||le){var Se=C.props.activeIndex!==void 0?C.props.activeIndex:z;return[H.cloneElement(C,ce(ce(ce({},I.props),me),{},{activeIndex:Se})),null,null]}if(!dt(ue))return[ie].concat(Zd(T.renderActivePoints({item:I,activePoint:ue,basePoint:te,childIndex:z,isRange:W})))}else{var Ge,Ye=(Ge=T.getItemByXY(T.state.activeCoordinate))!==null&&Ge!==void 0?Ge:{graphicalItem:ie},vt=Ye.graphicalItem,Ft=vt.item,rr=Ft===void 0?C:Ft,Nn=vt.childIndex,Xr=ce(ce(ce({},I.props),me),{},{activeIndex:Nn});return[H.cloneElement(rr,Xr),null,null]}return W?[ie,null,null]:[ie,null]}),qe(T,"renderCustomized",function(C,A,P){return H.cloneElement(C,ce(ce({key:"recharts-customized-".concat(P)},T.props),T.state))}),qe(T,"renderMap",{CartesianGrid:{handler:Ax,once:!0},ReferenceArea:{handler:T.renderReferenceElement},ReferenceLine:{handler:Ax},ReferenceDot:{handler:T.renderReferenceElement},XAxis:{handler:Ax},YAxis:{handler:Ax},Brush:{handler:T.renderBrush,once:!0},Bar:{handler:T.renderGraphicChild},Line:{handler:T.renderGraphicChild},Area:{handler:T.renderGraphicChild},Radar:{handler:T.renderGraphicChild},RadialBar:{handler:T.renderGraphicChild},Scatter:{handler:T.renderGraphicChild},Pie:{handler:T.renderGraphicChild},Funnel:{handler:T.renderGraphicChild},Tooltip:{handler:T.renderCursor,once:!0},PolarGrid:{handler:T.renderPolarGrid,once:!0},PolarAngleAxis:{handler:T.renderPolarAxis},PolarRadiusAxis:{handler:T.renderPolarAxis},Customized:{handler:T.renderCustomized}}),T.clipPathId="".concat((b=_.id)!==null&&b!==void 0?b:Cv("recharts"),"-clip"),T.throttleTriggeredAfterMouseMove=hX(T.triggeredAfterMouseMove,(S=_.throttleDelay)!==null&&S!==void 0?S:1e3/60),T.state={},T}return UDe(x,m),VDe(x,[{key:"componentDidMount",value:function(){var b,S;this.addListener(),this.accessibilityManager.setDetails({container:this.container,offset:{left:(b=this.props.margin.left)!==null&&b!==void 0?b:0,top:(S=this.props.margin.top)!==null&&S!==void 0?S:0},coordinateList:this.state.tooltipTicks,mouseHandlerCallback:this.triggeredAfterMouseMove,layout:this.props.layout}),this.displayDefaultTooltip()}},{key:"displayDefaultTooltip",value:function(){var b=this.props,S=b.children,T=b.data,C=b.height,A=b.layout,P=yi(S,cs);if(P){var I=P.props.defaultIndex;if(!(typeof I!="number"||I<0||I>this.state.tooltipTicks.length-1)){var k=this.state.tooltipTicks[I]&&this.state.tooltipTicks[I].value,E=UL(this.state,T,I,k),D=this.state.tooltipTicks[I].coordinate,N=(this.state.offset.top+C)/2,z=A==="horizontal",V=z?{x:D,y:N}:{y:D,x:N},F=this.state.formattedGraphicalItems.find(function(B){var Z=B.item;return Z.type.name==="Scatter"});F&&(V=ce(ce({},V),F.props.points[I].tooltipPosition),E=F.props.points[I].tooltipPayload);var $={activeTooltipIndex:I,isTooltipActive:!0,activeLabel:k,activePayload:E,activeCoordinate:V};this.setState($),this.renderCursor(P),this.accessibilityManager.setIndex(I)}}}},{key:"getSnapshotBeforeUpdate",value:function(b,S){if(!this.props.accessibilityLayer)return null;if(this.state.tooltipTicks!==S.tooltipTicks&&this.accessibilityManager.setDetails({coordinateList:this.state.tooltipTicks}),this.props.layout!==b.layout&&this.accessibilityManager.setDetails({layout:this.props.layout}),this.props.margin!==b.margin){var T,C;this.accessibilityManager.setDetails({offset:{left:(T=this.props.margin.left)!==null&&T!==void 0?T:0,top:(C=this.props.margin.top)!==null&&C!==void 0?C:0}})}return null}},{key:"componentDidUpdate",value:function(b){Tk([yi(b.children,cs)],[yi(this.props.children,cs)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var b=yi(this.props.children,cs);if(b&&typeof b.props.shared=="boolean"){var S=b.props.shared?"axis":"item";return s.indexOf(S)>=0?S:a}return a}},{key:"getMouseInfo",value:function(b){if(!this.container)return null;var S=this.container,T=S.getBoundingClientRect(),C=iSe(T),A={chartX:Math.round(b.pageX-C.left),chartY:Math.round(b.pageY-C.top)},P=T.width/S.offsetWidth||1,I=this.inRange(A.chartX,A.chartY,P);if(!I)return null;var k=this.state,E=k.xAxisMap,D=k.yAxisMap,N=this.getTooltipEventType(),z=fF(this.state,this.props.data,this.props.layout,I);if(N!=="axis"&&E&&D){var V=Th(E).scale,F=Th(D).scale,$=V&&V.invert?V.invert(A.chartX):null,B=F&&F.invert?F.invert(A.chartY):null;return ce(ce({},A),{},{xValue:$,yValue:B},z)}return z?ce(ce({},A),z):null}},{key:"inRange",value:function(b,S){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,C=this.props.layout,A=b/T,P=S/T;if(C==="horizontal"||C==="vertical"){var I=this.state.offset,k=A>=I.left&&A<=I.left+I.width&&P>=I.top&&P<=I.top+I.height;return k?{x:A,y:P}:null}var E=this.state,D=E.angleAxisMap,N=E.radiusAxisMap;if(D&&N){var z=Th(D);return X4({x:A,y:P},z)}return null}},{key:"parseEventsOfWrapper",value:function(){var b=this.props.children,S=this.getTooltipEventType(),T=yi(b,cs),C={};T&&S==="axis"&&(T.props.trigger==="click"?C={onClick:this.handleClick}:C={onMouseEnter:this.handleMouseEnter,onDoubleClick:this.handleDoubleClick,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,onTouchMove:this.handleTouchMove,onTouchStart:this.handleTouchStart,onTouchEnd:this.handleTouchEnd,onContextMenu:this.handleContextMenu});var A=Qb(this.props,this.handleOuterEvent);return ce(ce({},A),C)}},{key:"addListener",value:function(){HA.on(UA,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){HA.removeListener(UA,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(b,S,T){for(var C=this.state.formattedGraphicalItems,A=0,P=C.length;As>=80?"#22c55e":s>=60?"#f59e0b":"#ef4444")(t),a=2*Math.PI*45,o=t/100*a;return y.jsx("div",{className:"flex flex-col items-center",children:y.jsxs("svg",{width:"140",height:"140",viewBox:"0 0 100 100",children:[y.jsx("circle",{cx:"50",cy:"50",r:"45",fill:"none",stroke:"#1e2a3a",strokeWidth:"8"}),y.jsx("circle",{cx:"50",cy:"50",r:"45",fill:"none",stroke:i,strokeWidth:"8",strokeLinecap:"round",strokeDasharray:a,strokeDashoffset:a-o,transform:"rotate(-90 50 50)",className:"transition-all duration-500"}),y.jsx("text",{x:"50",y:"46",textAnchor:"middle",className:"fill-slate-100 font-mono text-2xl font-bold",style:{fontSize:"24px"},children:t.toFixed(1)}),y.jsx("text",{x:"50",y:"62",textAnchor:"middle",className:"fill-slate-400 text-xs",style:{fontSize:"10px"},children:r})]})})}function Mx({label:e,value:t}){const r=n=>n>=80?"bg-green-500":n>=60?"bg-amber-500":"bg-red-500";return y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx("div",{className:"w-24 text-xs text-slate-400 truncate",children:e}),y.jsx("div",{className:"flex-1 h-2 bg-border rounded-full overflow-hidden",children:y.jsx("div",{className:`h-full ${r(t)} transition-all duration-300`,style:{width:`${t}%`}})}),y.jsx("div",{className:"w-12 text-right text-xs font-mono text-slate-300",children:t.toFixed(1)})]})}function fNe({alert:e}){const r=(i=>{switch(i.toLowerCase()){case"critical":case"emergency":case"immediate":return{bg:"bg-red-500/10",border:"border-red-500",icon:su,iconColor:"text-red-500"};case"warning":case"priority":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Bs,iconColor:"text-amber-500"};case"routine":default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:OS,iconColor:"text-blue-500"}}})(e.severity),n=r.icon;return y.jsxs("div",{className:`p-3 rounded-lg ${r.bg} border-l-2 ${r.border} flex items-start gap-3`,children:[y.jsx(n,{size:16,className:r.iconColor}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsx("div",{className:"text-sm text-slate-200",children:e.message}),y.jsx("div",{className:"text-xs text-slate-500 mt-1",children:e.timestamp||"Just now"})]})]})}function hNe({source:e}){const t=()=>e.is_loaded?e.last_error?"bg-amber-500":"bg-green-500":"bg-red-500";return y.jsxs("div",{className:"flex items-center gap-3 p-3 rounded-lg bg-bg-hover",children:[y.jsx("div",{className:`w-2 h-2 rounded-full ${t()}`}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsx("div",{className:"text-sm text-slate-200 truncate",children:e.name}),y.jsxs("div",{className:"text-xs text-slate-500",children:[e.node_count," nodes · ",e.type]})]})]})}function Px({icon:e,label:t,value:r,subvalue:n}){return y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4",children:[y.jsxs("div",{className:"flex items-center gap-2 text-slate-400 mb-2",children:[y.jsx(e,{size:14}),y.jsx("span",{className:"text-xs",children:t})]}),y.jsx("div",{className:"font-mono text-xl text-slate-100",children:r}),n&&y.jsx("div",{className:"text-xs text-slate-500 mt-1",children:n})]})}function YA({label:e,value:t}){const r=()=>t===0?"bg-green-500/20 text-green-400 border-green-500/50":t<=2?"bg-amber-500/20 text-amber-400 border-amber-500/50":"bg-red-500/20 text-red-400 border-red-500/50";return y.jsxs("span",{className:`px-2 py-1 rounded text-xs font-mono font-medium border ${r()}`,children:[e,t]})}function vF({label:e,value:t,unit:r,getColor:n}){const i=t!==void 0?n(t):"text-slate-400";return y.jsxs("div",{className:"text-center",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:e}),y.jsx("div",{className:`font-mono text-3xl font-bold ${i}`,children:(t==null?void 0:t.toFixed(0))??"—"}),r&&y.jsx("div",{className:"text-xs text-slate-500",children:r})]})}function dNe({history:e}){var a;const t=H.useMemo(()=>!e||e.length===0?[]:e.slice(-16).map((o,s)=>({idx:s,value:o.value,time:o.time})),[e]);if(t.length===0)return null;const r=Math.max(...t.map(o=>o.value),5),n=((a=t[t.length-1])==null?void 0:a.value)??0,i=()=>r>5?"kpGradientRed":r>3?"kpGradientAmber":"kpGradientGreen";return y.jsxs("div",{className:"h-20 w-full",children:[y.jsx(dX,{width:"100%",height:"100%",children:y.jsxs(uNe,{data:t,margin:{top:5,right:5,bottom:5,left:5},children:[y.jsxs("defs",{children:[y.jsxs("linearGradient",{id:"kpGradientGreen",x1:"0",y1:"0",x2:"0",y2:"1",children:[y.jsx("stop",{offset:"0%",stopColor:"#22c55e",stopOpacity:.4}),y.jsx("stop",{offset:"100%",stopColor:"#22c55e",stopOpacity:.05})]}),y.jsxs("linearGradient",{id:"kpGradientAmber",x1:"0",y1:"0",x2:"0",y2:"1",children:[y.jsx("stop",{offset:"0%",stopColor:"#f59e0b",stopOpacity:.4}),y.jsx("stop",{offset:"100%",stopColor:"#f59e0b",stopOpacity:.05})]}),y.jsxs("linearGradient",{id:"kpGradientRed",x1:"0",y1:"0",x2:"0",y2:"1",children:[y.jsx("stop",{offset:"0%",stopColor:"#ef4444",stopOpacity:.4}),y.jsx("stop",{offset:"100%",stopColor:"#ef4444",stopOpacity:.05})]})]}),y.jsx(Dv,{domain:[0,Math.ceil(r)],hide:!0}),y.jsx(Ev,{dataKey:"idx",hide:!0}),y.jsx(ly,{y:3,stroke:"#f59e0b",strokeDasharray:"3 3",strokeOpacity:.5}),y.jsx(ly,{y:5,stroke:"#ef4444",strokeDasharray:"3 3",strokeOpacity:.5}),y.jsx(Su,{type:"monotone",dataKey:"value",stroke:n>5?"#ef4444":n>3?"#f59e0b":"#22c55e",fill:`url(#${i()})`,strokeWidth:2})]})}),y.jsxs("div",{className:"flex justify-between text-xs text-slate-600 px-1",children:[y.jsx("span",{children:"48h ago"}),y.jsx("span",{children:"now"})]})]})}function vNe({profile:e}){const t=H.useMemo(()=>!e||e.length===0?[]:[...e].sort((r,n)=>r.height_m-n.height_m).map(r=>({height:r.height_m,M:r.M})),[e]);return t.length===0?null:y.jsxs("div",{className:"h-24 w-full",children:[y.jsx(dX,{width:"100%",height:"100%",children:y.jsxs(lNe,{data:t,margin:{top:5,right:10,bottom:5,left:5},children:[y.jsx(Ev,{dataKey:"M",type:"number",domain:["dataMin - 20","dataMax + 20"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"}}),y.jsx(Dv,{dataKey:"height",type:"number",domain:[0,"dataMax"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"},tickFormatter:r=>`${(r/1e3).toFixed(1)}k`}),y.jsx(o0,{type:"monotone",dataKey:"M",stroke:"#3b82f6",strokeWidth:2,dot:{r:3,fill:"#3b82f6"}})]})}),y.jsx("div",{className:"text-center text-xs text-slate-600",children:"M-units vs Height (km)"})]})}function pNe({swpc:e,ducting:t}){const r=a=>a>=120?"text-green-400":a>=80?"text-amber-400":"text-red-400",n=a=>a<=3?"text-green-400":a<=5?"text-amber-400":"text-red-400",i=a=>{if(!a)return null;const o={normal:"bg-green-500/20 text-green-400 border-green-500/50",super_refraction:"bg-amber-500/20 text-amber-400 border-amber-500/50",surface_duct:"bg-blue-500/20 text-blue-400 border-blue-500/50",elevated_duct:"bg-blue-500/20 text-blue-400 border-blue-500/50"},s={normal:"Normal",super_refraction:"Super Refraction",surface_duct:"Surface Duct",elevated_duct:"Elevated Duct"};return y.jsx("span",{className:`px-2 py-1 rounded text-xs font-medium border ${o[a]||o.normal}`,children:s[a]||a})};return y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4 flex flex-col h-full",children:[y.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[y.jsx(km,{size:14}),"RF Propagation"]}),y.jsxs("div",{className:"flex justify-around mb-4",children:[y.jsx(vF,{label:"SFI",value:e==null?void 0:e.sfi,getColor:r}),y.jsx("div",{className:"w-px bg-border"}),y.jsx(vF,{label:"Kp",value:e==null?void 0:e.kp_current,getColor:n})]}),y.jsxs("div",{className:"flex justify-center gap-2 mb-4",children:[y.jsx(YA,{label:"R",value:(e==null?void 0:e.r_scale)??0}),y.jsx(YA,{label:"S",value:(e==null?void 0:e.s_scale)??0}),y.jsx(YA,{label:"G",value:(e==null?void 0:e.g_scale)??0})]}),(e==null?void 0:e.kp_history)&&e.kp_history.length>0&&y.jsxs("div",{className:"mb-4",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Kp Trend (48h)"}),y.jsx(dNe,{history:e.kp_history})]}),y.jsx("div",{className:"border-t border-border my-3"}),y.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[y.jsx(lu,{size:14,className:"text-slate-400"}),y.jsx("span",{className:"text-xs text-slate-500",children:"Tropospheric"}),i(t==null?void 0:t.condition)]}),(t==null?void 0:t.min_gradient)!==void 0&&y.jsxs("div",{className:"text-xs text-slate-400 font-mono mb-2",children:["dM/dz: ",t.min_gradient.toFixed(1)," M-units/km"]}),(t==null?void 0:t.profile)&&t.profile.length>0&&y.jsx(vNe,{profile:t.profile}),(e==null?void 0:e.active_warnings)&&e.active_warnings.length>0&&y.jsxs("div",{className:"mt-auto pt-3 border-t border-border",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"SWPC Alerts"}),y.jsx("div",{className:"flex flex-wrap gap-1",children:e.active_warnings.slice(0,3).map((a,o)=>y.jsx("span",{className:"px-2 py-0.5 rounded text-xs bg-amber-500/20 text-amber-400 border border-amber-500/30 truncate max-w-full",children:a.replace("Space Weather Message Code: ","")},o))})]})]})}const gNe={nws:{icon:lu,color:"text-blue-400",label:"NWS"},swpc:{icon:GZ,color:"text-yellow-400",label:"SWPC"},ducting:{icon:Ya,color:"text-cyan-400",label:"Tropo"},nifc:{icon:IS,color:"text-orange-400",label:"NIFC"},firms:{icon:NS,color:"text-red-400",label:"FIRMS"},avalanche:{icon:ES,color:"text-slate-300",label:"Avy"},usgs:{icon:LS,color:"text-blue-300",label:"USGS"},traffic:{icon:kS,color:"text-purple-400",label:"Traffic"},roads:{icon:NZ,color:"text-amber-400",label:"511"}},pF={routine:"bg-blue-500/20 text-blue-400 border-blue-500/30",priority:"bg-amber-500/20 text-amber-400 border-amber-500/30",immediate:"bg-red-600/20 text-red-300 border-red-600/30",info:"bg-blue-500/20 text-blue-400 border-blue-500/30",advisory:"bg-blue-500/20 text-blue-400 border-blue-500/30",moderate:"bg-amber-500/20 text-amber-400 border-amber-500/30",watch:"bg-amber-500/20 text-amber-400 border-amber-500/30",warning:"bg-amber-500/20 text-amber-400 border-amber-500/30",severe:"bg-red-500/20 text-red-400 border-red-500/30",extreme:"bg-red-600/20 text-red-300 border-red-600/30",critical:"bg-red-600/20 text-red-300 border-red-600/30",emergency:"bg-red-700/20 text-red-200 border-red-700/30"};function mNe({event:e,isLocal:t}){var f;const r=gNe[e.source]||{icon:OS,color:"text-slate-400",label:e.source},n=r.icon,i=pF[(f=e.severity)==null?void 0:f.toLowerCase()]||pF.info,a=h=>{const d=new Date(h*1e3),g=new Date().getTime()-d.getTime(),m=Math.floor(g/6e4);return m<1?"just now":m<60?`${m}m ago`:m<1440?`${Math.floor(m/60)}h ago`:d.toLocaleDateString(void 0,{month:"short",day:"numeric"})},o=e.event_type,s=e.area_desc,l=e.description;let u=e.headline;if(o&&s){const h=s.replace(/ County/g,"").split(";")[0];u=`${o} — ${h}`}else o&&(u=o);const c=l?l.split(". ")[0]:null;return y.jsxs("div",{className:`flex items-start gap-2 py-2 border-b border-border/50 last:border-0 ${t?"border-l-2 border-l-blue-500 pl-2 -ml-2":""}`,children:[y.jsx(n,{size:14,className:`mt-0.5 flex-shrink-0 ${r.color}`}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[y.jsx("span",{className:`px-1.5 py-0.5 rounded text-xs border ${i}`,children:e.severity||"info"}),t&&y.jsx("span",{className:"px-1.5 py-0.5 rounded text-xs bg-blue-500/20 text-blue-400 border border-blue-500/30",children:"LOCAL"}),y.jsx("span",{className:"text-xs text-slate-500",children:r.label}),y.jsx("span",{className:"text-xs text-slate-600 ml-auto",children:a(e.fetched_at)})]}),y.jsx("div",{className:`text-sm truncate ${t?"text-slate-100":"text-slate-300"}`,children:u}),c&&y.jsx("div",{className:"text-xs text-slate-500 truncate mt-0.5",children:c})]})]})}function yNe({events:e,envStatus:t}){const r={immediate:0,priority:1,routine:2},n=H.useMemo(()=>{const a=new Set;return e.filter(s=>s.event_id?a.has(s.event_id)?!1:(a.add(s.event_id),!0):!0).sort((s,l)=>{var d,v;const u=s.is_local?1:0,c=l.is_local?1:0;if(u!==c)return c-u;const f=r[((d=s.severity)==null?void 0:d.toLowerCase())||"routine"]??2,h=r[((v=l.severity)==null?void 0:v.toLowerCase())||"routine"]??2;return f!==h?f-h:(l.fetched_at||0)-(s.fetched_at||0)})},[e]),i=H.useMemo(()=>{if(!(t!=null&&t.feeds))return null;const a=t.feeds.length,o=t.feeds.filter(c=>c.is_loaded&&!c.last_error).length,s=t.feeds.filter(c=>c.last_error).map(c=>c.source),l=Math.max(...t.feeds.map(c=>c.last_fetch||0)),u=l?Math.floor(Date.now()/1e3-l):null;return{total:a,active:o,errors:s,secAgo:u}},[t]);return y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4 flex flex-col h-full",children:[y.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-3 flex items-center gap-2",children:[y.jsx(gv,{size:14}),"Live Event Feed"]}),n.length>0?y.jsx("div",{className:"flex-1 overflow-y-auto max-h-80 pr-1 -mr-1",children:n.map((a,o)=>y.jsx(mNe,{event:a,isLocal:a.is_local},a.event_id||o))}):y.jsx("div",{className:"flex-1 flex items-center justify-center",children:y.jsxs("div",{className:"text-center py-8",children:[y.jsx(aD,{size:24,className:"text-green-500 mx-auto mb-2"}),y.jsx("div",{className:"text-slate-400",children:"No active events"}),y.jsx("div",{className:"text-xs text-slate-500",children:"All clear"})]})}),i&&y.jsxs("div",{className:`text-xs mt-3 pt-3 border-t border-border ${i.errors.length>0?"text-amber-400":"text-slate-500"}`,children:[i.active," of ",i.total," feeds active",i.secAgo!==null&&` · Last update ${i.secAgo}s ago`,i.errors.length>0&&y.jsxs("span",{className:"text-amber-400",children:[" · ",i.errors.join(", "),": error"]})]})]})}function xNe(){var S,T,C,A,P;const[e,t]=H.useState(null),[r,n]=H.useState([]),[i,a]=H.useState([]),[o,s]=H.useState(null),[l,u]=H.useState([]),[c,f]=H.useState(null),[h,d]=H.useState(null),[v,g]=H.useState(!0),[m,x]=H.useState(null),{lastHealth:_,lastMessage:b}=uD();return H.useEffect(()=>{Promise.all([Tce(),Mce(),UZ(),ZZ(),YZ().catch(()=>[]),kce().catch(()=>null),Lce().catch(()=>null)]).then(([I,k,E,D,N,z,V])=>{t(I),n(k),a(E),s(D),u(N),f(z),d(V),g(!1),document.title="Dashboard — MeshAI"}).catch(I=>{x(I.message),g(!1),document.title="Dashboard — MeshAI"})},[]),H.useEffect(()=>{_&&t(_)},[_]),H.useEffect(()=>{(b==null?void 0:b.type)==="env_update"&&b.event&&u(I=>{const k=b.event,E=I.filter(D=>D.event_id!==k.event_id);return[k,...E].slice(0,100)})},[b]),v?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-slate-400",children:"Loading..."})}):m?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsxs("div",{className:"text-red-400",children:["Error: ",m]})}):y.jsxs("div",{className:"space-y-6",children:[y.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[y.jsx("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:"Mesh Health"}),e&&y.jsxs(y.Fragment,{children:[y.jsx(cNe,{health:e}),y.jsxs("div",{className:"mt-6 space-y-3",children:[y.jsx(Mx,{label:"Infrastructure",value:((S=e.pillars)==null?void 0:S.infrastructure)??0}),y.jsx(Mx,{label:"Utilization",value:((T=e.pillars)==null?void 0:T.utilization)??0}),y.jsx(Mx,{label:"Behavior",value:((C=e.pillars)==null?void 0:C.behavior)??0}),y.jsx(Mx,{label:"Power",value:((A=e.pillars)==null?void 0:A.power)??0})]})]})]}),y.jsxs("div",{className:"lg:col-span-2 space-y-6",children:[y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[y.jsx("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:"Active Alerts"}),i.length>0?y.jsx("div",{className:"space-y-3 max-h-48 overflow-y-auto",children:i.map((I,k)=>y.jsx(fNe,{alert:I},k))}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[y.jsx(aD,{size:16,className:"text-green-500"}),y.jsx("span",{children:"No active alerts"})]})]}),y.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4",children:[y.jsx(Px,{icon:Ya,label:"Nodes Online",value:(e==null?void 0:e.total_nodes)||0,subvalue:`${(e==null?void 0:e.unlocated_count)||0} unlocated`}),y.jsx(Px,{icon:jZ,label:"Infrastructure",value:`${(e==null?void 0:e.infra_online)||0}/${(e==null?void 0:e.infra_total)||0}`,subvalue:(e==null?void 0:e.infra_online)===(e==null?void 0:e.infra_total)?"All online":"Some offline"}),y.jsx(Px,{icon:gv,label:"Utilization",value:`${((P=e==null?void 0:e.util_percent)==null?void 0:P.toFixed(1))||0}%`,subvalue:`${(e==null?void 0:e.flagged_nodes)||0} flagged`}),y.jsx(Px,{icon:mv,label:"Regions",value:(e==null?void 0:e.total_regions)||0,subvalue:`${(e==null?void 0:e.battery_warnings)||0} battery warnings`})]})]})]}),y.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[y.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:["Mesh Sources (",r.length,")"]}),r.length>0?y.jsx("div",{className:"space-y-2",children:r.map((I,k)=>y.jsx(hNe,{source:I},k))}):y.jsx("div",{className:"text-slate-500 py-4",children:"No sources configured"})]}),y.jsx(pNe,{swpc:c,ducting:h}),y.jsx(yNe,{events:l,envStatus:o})]})]})}/*! ***************************************************************************** + A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t,",").concat(r+i-s*v," Z")}else c="M ".concat(t,",").concat(r," h ").concat(n," v ").concat(i," h ").concat(-n," Z");return c},Uke=function(t,r){if(!t||!r)return!1;var n=t.x,i=t.y,a=r.x,o=r.y,s=r.width,l=r.height;if(Math.abs(s)>0&&Math.abs(l)>0){var u=Math.min(a,a+s),c=Math.max(a,a+s),f=Math.min(o,o+l),h=Math.max(o,o+l);return n>=u&&n<=c&&i>=f&&i<=h}return!1},Zke={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},cN=function(t){var r=T$(T$({},Zke),t),n=H.useRef(),i=H.useState(-1),a=Bke(i,2),o=a[0],s=a[1];H.useEffect(function(){if(n.current&&n.current.getTotalLength)try{var S=n.current.getTotalLength();S&&s(S)}catch{}},[]);var l=r.x,u=r.y,c=r.width,f=r.height,h=r.radius,d=r.className,v=r.animationEasing,m=r.animationDuration,y=r.animationBegin,x=r.isAnimationActive,_=r.isUpdateAnimationActive;if(l!==+l||u!==+u||c!==+c||f!==+f||c===0||f===0)return null;var b=_t("recharts-rectangle",d);return _?Q.createElement(Fo,{canBegin:o>0,from:{width:c,height:f,x:l,y:u},to:{width:c,height:f,x:l,y:u},duration:m,animationEasing:v,isActive:_},function(S){var T=S.width,C=S.height,A=S.x,P=S.y;return Q.createElement(Fo,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:y,duration:m,isActive:x,easing:v},Q.createElement("path",R1({},ct(r,!0),{className:b,d:C$(A,P,T,C,h),ref:n})))}):Q.createElement("path",R1({},ct(r,!0),{className:b,d:C$(l,u,c,f,h)}))};function TL(){return TL=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function eLe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}var tLe=function(t,r,n,i,a,o){return"M".concat(t,",").concat(a,"v").concat(i,"M").concat(o,",").concat(r,"h").concat(n)},rLe=function(t){var r=t.x,n=r===void 0?0:r,i=t.y,a=i===void 0?0:i,o=t.top,s=o===void 0?0:o,l=t.left,u=l===void 0?0:l,c=t.width,f=c===void 0?0:c,h=t.height,d=h===void 0?0:h,v=t.className,m=Qke(t,Yke),y=Xke({x:n,y:a,top:s,left:u,width:f,height:d},m);return!Te(n)||!Te(a)||!Te(f)||!Te(d)||!Te(s)||!Te(u)?null:Q.createElement("path",CL({},ct(y,!0),{className:_t("recharts-cross",v),d:tLe(n,a,f,d,s,u)}))},nLe=XY,iLe=nLe(Object.getPrototypeOf,Object),aLe=iLe,oLe=Ks,sLe=aLe,lLe=Js,uLe="[object Object]",cLe=Function.prototype,fLe=Object.prototype,Dq=cLe.toString,hLe=fLe.hasOwnProperty,dLe=Dq.call(Object);function vLe(e){if(!lLe(e)||oLe(e)!=uLe)return!1;var t=sLe(e);if(t===null)return!0;var r=hLe.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&Dq.call(r)==dLe}var pLe=vLe;const gLe=$t(pLe);var mLe=Ks,yLe=Js,xLe="[object Boolean]";function _Le(e){return e===!0||e===!1||yLe(e)&&mLe(e)==xLe}var bLe=_Le;const wLe=$t(bLe);function ry(e){"@babel/helpers - typeof";return ry=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ry(e)}function B1(){return B1=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0,from:{upperWidth:0,lowerWidth:0,height:h,x:l,y:u},to:{upperWidth:c,lowerWidth:f,height:h,x:l,y:u},duration:m,animationEasing:v,isActive:x},function(b){var S=b.upperWidth,T=b.lowerWidth,C=b.height,A=b.x,P=b.y;return Q.createElement(Fo,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:y,duration:m,easing:v},Q.createElement("path",B1({},ct(r,!0),{className:_,d:L$(A,P,S,T,C),ref:n})))}):Q.createElement("g",null,Q.createElement("path",B1({},ct(r,!0),{className:_,d:L$(l,u,c,f,h)})))},OLe=["option","shapeType","propTransformer","activeClassName","isActive"];function ny(e){"@babel/helpers - typeof";return ny=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ny(e)}function DLe(e,t){if(e==null)return{};var r=NLe(e,t),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function NLe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function I$(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function z1(e){for(var t=1;t0&&n.handleDrag(i.changedTouches[0])}),gi(n,"handleDragEnd",function(){n.setState({isTravellerMoving:!1,isSlideMoving:!1},function(){var i=n.props,a=i.endIndex,o=i.onDragEnd,s=i.startIndex;o==null||o({endIndex:a,startIndex:s})}),n.detachDragEndListener()}),gi(n,"handleLeaveWrapper",function(){(n.state.isTravellerMoving||n.state.isSlideMoving)&&(n.leaveTimer=window.setTimeout(n.handleDragEnd,n.props.leaveTimeOut))}),gi(n,"handleEnterSlideOrTraveller",function(){n.setState({isTextActive:!0})}),gi(n,"handleLeaveSlideOrTraveller",function(){n.setState({isTextActive:!1})}),gi(n,"handleSlideDragStart",function(i){var a=B$(i)?i.changedTouches[0]:i;n.setState({isTravellerMoving:!1,isSlideMoving:!0,slideMoveStartX:a.pageX}),n.attachDragEndListener()}),n.travellerDragStartHandlers={startX:n.handleTravellerDragStart.bind(n,"startX"),endX:n.handleTravellerDragStart.bind(n,"endX")},n.state={},n}return _Ie(t,e),gIe(t,[{key:"componentWillUnmount",value:function(){this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.detachDragEndListener()}},{key:"getIndex",value:function(n){var i=n.startX,a=n.endX,o=this.state.scaleValues,s=this.props,l=s.gap,u=s.data,c=u.length-1,f=Math.min(i,a),h=Math.max(i,a),d=t.getIndexInRange(o,f),v=t.getIndexInRange(o,h);return{startIndex:d-d%l,endIndex:v===c?c:v-v%l}}},{key:"getTextOfTick",value:function(n){var i=this.props,a=i.data,o=i.tickFormatter,s=i.dataKey,l=Un(a[n],s,n);return ft(o)?o(l,n):l}},{key:"attachDragEndListener",value:function(){window.addEventListener("mouseup",this.handleDragEnd,!0),window.addEventListener("touchend",this.handleDragEnd,!0),window.addEventListener("mousemove",this.handleDrag,!0)}},{key:"detachDragEndListener",value:function(){window.removeEventListener("mouseup",this.handleDragEnd,!0),window.removeEventListener("touchend",this.handleDragEnd,!0),window.removeEventListener("mousemove",this.handleDrag,!0)}},{key:"handleSlideDrag",value:function(n){var i=this.state,a=i.slideMoveStartX,o=i.startX,s=i.endX,l=this.props,u=l.x,c=l.width,f=l.travellerWidth,h=l.startIndex,d=l.endIndex,v=l.onChange,m=n.pageX-a;m>0?m=Math.min(m,u+c-f-s,u+c-f-o):m<0&&(m=Math.max(m,u-o,u-s));var y=this.getIndex({startX:o+m,endX:s+m});(y.startIndex!==h||y.endIndex!==d)&&v&&v(y),this.setState({startX:o+m,endX:s+m,slideMoveStartX:n.pageX})}},{key:"handleTravellerDragStart",value:function(n,i){var a=B$(i)?i.changedTouches[0]:i;this.setState({isSlideMoving:!1,isTravellerMoving:!0,movingTravellerId:n,brushMoveStartX:a.pageX}),this.attachDragEndListener()}},{key:"handleTravellerMove",value:function(n){var i=this.state,a=i.brushMoveStartX,o=i.movingTravellerId,s=i.endX,l=i.startX,u=this.state[o],c=this.props,f=c.x,h=c.width,d=c.travellerWidth,v=c.onChange,m=c.gap,y=c.data,x={startX:this.state.startX,endX:this.state.endX},_=n.pageX-a;_>0?_=Math.min(_,f+h-d-u):_<0&&(_=Math.max(_,f-u)),x[o]=u+_;var b=this.getIndex(x),S=b.startIndex,T=b.endIndex,C=function(){var P=y.length-1;return o==="startX"&&(s>l?S%m===0:T%m===0)||sl?T%m===0:S%m===0)||s>l&&T===P};this.setState(gi(gi({},o,u+_),"brushMoveStartX",n.pageX),function(){v&&C()&&v(b)})}},{key:"handleTravellerMoveKeyboard",value:function(n,i){var a=this,o=this.state,s=o.scaleValues,l=o.startX,u=o.endX,c=this.state[i],f=s.indexOf(c);if(f!==-1){var h=f+n;if(!(h===-1||h>=s.length)){var d=s[h];i==="startX"&&d>=u||i==="endX"&&d<=l||this.setState(gi({},i,d),function(){a.props.onChange(a.getIndex({startX:a.state.startX,endX:a.state.endX}))})}}}},{key:"renderBackground",value:function(){var n=this.props,i=n.x,a=n.y,o=n.width,s=n.height,l=n.fill,u=n.stroke;return Q.createElement("rect",{stroke:u,fill:l,x:i,y:a,width:o,height:s})}},{key:"renderPanorama",value:function(){var n=this.props,i=n.x,a=n.y,o=n.width,s=n.height,l=n.data,u=n.children,c=n.padding,f=H.Children.only(u);return f?Q.cloneElement(f,{x:i,y:a,width:o,height:s,margin:c,compact:!0,data:l}):null}},{key:"renderTravellerLayer",value:function(n,i){var a,o,s=this,l=this.props,u=l.y,c=l.travellerWidth,f=l.height,h=l.traveller,d=l.ariaLabel,v=l.data,m=l.startIndex,y=l.endIndex,x=Math.max(n,this.props.x),_=GA(GA({},ct(this.props,!1)),{},{x,y:u,width:c,height:f}),b=d||"Min value: ".concat((a=v[m])===null||a===void 0?void 0:a.name,", Max value: ").concat((o=v[y])===null||o===void 0?void 0:o.name);return Q.createElement(Yt,{tabIndex:0,role:"slider","aria-label":b,"aria-valuenow":n,className:"recharts-brush-traveller",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers[i],onTouchStart:this.travellerDragStartHandlers[i],onKeyDown:function(T){["ArrowLeft","ArrowRight"].includes(T.key)&&(T.preventDefault(),T.stopPropagation(),s.handleTravellerMoveKeyboard(T.key==="ArrowRight"?1:-1,i))},onFocus:function(){s.setState({isTravellerFocused:!0})},onBlur:function(){s.setState({isTravellerFocused:!1})},style:{cursor:"col-resize"}},t.renderTraveller(h,_))}},{key:"renderSlide",value:function(n,i){var a=this.props,o=a.y,s=a.height,l=a.stroke,u=a.travellerWidth,c=Math.min(n,i)+u,f=Math.max(Math.abs(i-n)-u,0);return Q.createElement("rect",{className:"recharts-brush-slide",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.handleSlideDragStart,onTouchStart:this.handleSlideDragStart,style:{cursor:"move"},stroke:"none",fill:l,fillOpacity:.2,x:c,y:o,width:f,height:s})}},{key:"renderText",value:function(){var n=this.props,i=n.startIndex,a=n.endIndex,o=n.y,s=n.height,l=n.travellerWidth,u=n.stroke,c=this.state,f=c.startX,h=c.endX,d=5,v={pointerEvents:"none",fill:u};return Q.createElement(Yt,{className:"recharts-brush-texts"},Q.createElement(v1,F1({textAnchor:"end",verticalAnchor:"middle",x:Math.min(f,h)-d,y:o+s/2},v),this.getTextOfTick(i)),Q.createElement(v1,F1({textAnchor:"start",verticalAnchor:"middle",x:Math.max(f,h)+l+d,y:o+s/2},v),this.getTextOfTick(a)))}},{key:"render",value:function(){var n=this.props,i=n.data,a=n.className,o=n.children,s=n.x,l=n.y,u=n.width,c=n.height,f=n.alwaysShowText,h=this.state,d=h.startX,v=h.endX,m=h.isTextActive,y=h.isSlideMoving,x=h.isTravellerMoving,_=h.isTravellerFocused;if(!i||!i.length||!Te(s)||!Te(l)||!Te(u)||!Te(c)||u<=0||c<=0)return null;var b=_t("recharts-brush",a),S=Q.Children.count(o)===1,T=vIe("userSelect","none");return Q.createElement(Yt,{className:b,onMouseLeave:this.handleLeaveWrapper,onTouchMove:this.handleTouchMove,style:T},this.renderBackground(),S&&this.renderPanorama(),this.renderSlide(d,v),this.renderTravellerLayer(d,"startX"),this.renderTravellerLayer(v,"endX"),(m||y||x||_||f)&&this.renderText())}}],[{key:"renderDefaultTraveller",value:function(n){var i=n.x,a=n.y,o=n.width,s=n.height,l=n.stroke,u=Math.floor(a+s/2)-1;return Q.createElement(Q.Fragment,null,Q.createElement("rect",{x:i,y:a,width:o,height:s,fill:l,stroke:"none"}),Q.createElement("line",{x1:i+1,y1:u,x2:i+o-1,y2:u,fill:"none",stroke:"#fff"}),Q.createElement("line",{x1:i+1,y1:u+2,x2:i+o-1,y2:u+2,fill:"none",stroke:"#fff"}))}},{key:"renderTraveller",value:function(n,i){var a;return Q.isValidElement(n)?a=Q.cloneElement(n,i):ft(n)?a=n(i):a=t.renderDefaultTraveller(i),a}},{key:"getDerivedStateFromProps",value:function(n,i){var a=n.data,o=n.width,s=n.x,l=n.travellerWidth,u=n.updateId,c=n.startIndex,f=n.endIndex;if(a!==i.prevData||u!==i.prevUpdateId)return GA({prevData:a,prevTravellerWidth:l,prevUpdateId:u,prevX:s,prevWidth:o},a&&a.length?wIe({data:a,width:o,x:s,travellerWidth:l,startIndex:c,endIndex:f}):{scale:null,scaleValues:null});if(i.scale&&(o!==i.prevWidth||s!==i.prevX||l!==i.prevTravellerWidth)){i.scale.range([s,s+o-l]);var h=i.scale.domain().map(function(d){return i.scale(d)});return{prevData:a,prevTravellerWidth:l,prevUpdateId:u,prevX:s,prevWidth:o,startX:i.scale(n.startIndex),endX:i.scale(n.endIndex),scaleValues:h}}return null}},{key:"getIndexInRange",value:function(n,i){for(var a=n.length,o=0,s=a-1;s-o>1;){var l=Math.floor((o+s)/2);n[l]>i?s=l:o=l}return i>=n[s]?s:o}}])}(H.PureComponent);gi(jd,"displayName","Brush");gi(jd,"defaultProps",{height:40,travellerWidth:5,gap:1,fill:"#fff",stroke:"#666",padding:{top:1,right:1,bottom:1,left:1},leaveTimeOut:1e3,alwaysShowText:!1});var SIe=jD;function TIe(e,t){var r;return SIe(e,function(n,i,a){return r=t(n,i,a),!r}),!!r}var CIe=TIe,AIe=FY,MIe=kv,PIe=CIe,kIe=fi,LIe=oT;function IIe(e,t,r){var n=kIe(e)?AIe:PIe;return r&&LIe(e,t,r)&&(t=void 0),n(e,MIe(t))}var EIe=IIe;const OIe=$t(EIe);var Do=function(t,r){var n=t.alwaysShow,i=t.ifOverflow;return n&&(i="extendDomain"),i===r},z$=lX;function DIe(e,t,r){t=="__proto__"&&z$?z$(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var NIe=DIe,jIe=NIe,RIe=oX,BIe=kv;function zIe(e,t){var r={};return t=BIe(t),RIe(e,function(n,i,a){jIe(r,i,t(n,i,a))}),r}var $Ie=zIe;const FIe=$t($Ie);function VIe(e,t){for(var r=-1,n=e==null?0:e.length;++r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function oEe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function sEe(e,t){var r=e.x,n=e.y,i=aEe(e,tEe),a="".concat(r),o=parseInt(a,10),s="".concat(n),l=parseInt(s,10),u="".concat(t.height||i.height),c=parseInt(u,10),f="".concat(t.width||i.width),h=parseInt(f,10);return Ep(Ep(Ep(Ep(Ep({},t),i),o?{x:o}:{}),l?{y:l}:{}),{},{height:c,width:h,name:t.name,radius:t.radius})}function F$(e){return Q.createElement(VLe,ML({shapeType:"rectangle",propTransformer:sEe,activeClassName:"recharts-active-bar"},e))}var lEe=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return function(n,i){if(typeof t=="number")return t;var a=Te(n)||xve(n);return a?t(n,i):(a||sf(),r)}},uEe=["value","background"],Bq;function Rd(e){"@babel/helpers - typeof";return Rd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rd(e)}function cEe(e,t){if(e==null)return{};var r=fEe(e,t),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function fEe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function G1(){return G1=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&Math.abs(V)0&&Math.abs(z)0&&(N=Math.min((ee||0)-(z[le-1]||0),N))}),Number.isFinite(N)){var V=N/D,F=m.layout==="vertical"?n.height:n.width;if(m.padding==="gap"&&(A=V*F/2),m.padding==="no-gap"){var $=af(t.barCategoryGap,V*F),B=V*F/2;A=B-$-(B-$)/F*$}}}i==="xAxis"?P=[n.left+(b.left||0)+(A||0),n.left+n.width-(b.right||0)-(A||0)]:i==="yAxis"?P=l==="horizontal"?[n.top+n.height-(b.bottom||0),n.top+(b.top||0)]:[n.top+(b.top||0)+(A||0),n.top+n.height-(b.bottom||0)-(A||0)]:P=m.range,T&&(P=[P[1],P[0]]);var Z=$2e(m,a,h),W=Z.scale,G=Z.realScaleType;W.domain(x).range(P),F2e(W);var Y=X2e(W,Da(Da({},m),{},{realScaleType:G}));i==="xAxis"?(O=y==="top"&&!S||y==="bottom"&&S,I=n.left,k=f[C]-O*m.height):i==="yAxis"&&(O=y==="left"&&!S||y==="right"&&S,I=f[C]-O*m.width,k=n.top);var K=Da(Da(Da({},m),Y),{},{realScaleType:G,x:I,y:k,scale:W,width:i==="xAxis"?n.width:m.width,height:i==="yAxis"?n.height:m.height});return K.bandSize=L1(K,Y),!m.hide&&i==="xAxis"?f[C]+=(O?-1:1)*K.height:m.hide||(f[C]+=(O?-1:1)*K.width),Da(Da({},d),{},xT({},v,K))},{})},Gq=function(t,r){var n=t.x,i=t.y,a=r.x,o=r.y;return{x:Math.min(n,a),y:Math.min(i,o),width:Math.abs(a-n),height:Math.abs(o-i)}},wEe=function(t){var r=t.x1,n=t.y1,i=t.x2,a=t.y2;return Gq({x:r,y:n},{x:i,y:a})},Wq=function(){function e(t){xEe(this,e),this.scale=t}return _Ee(e,[{key:"domain",get:function(){return this.scale.domain}},{key:"range",get:function(){return this.scale.range}},{key:"rangeMin",get:function(){return this.range()[0]}},{key:"rangeMax",get:function(){return this.range()[1]}},{key:"bandwidth",get:function(){return this.scale.bandwidth}},{key:"apply",value:function(r){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=n.bandAware,a=n.position;if(r!==void 0){if(a)switch(a){case"start":return this.scale(r);case"middle":{var o=this.bandwidth?this.bandwidth()/2:0;return this.scale(r)+o}case"end":{var s=this.bandwidth?this.bandwidth():0;return this.scale(r)+s}default:return this.scale(r)}if(i){var l=this.bandwidth?this.bandwidth()/2:0;return this.scale(r)+l}return this.scale(r)}}},{key:"isInRange",value:function(r){var n=this.range(),i=n[0],a=n[n.length-1];return i<=a?r>=i&&r<=a:r>=a&&r<=i}}],[{key:"create",value:function(r){return new e(r)}}])}();xT(Wq,"EPS",1e-4);var fN=function(t){var r=Object.keys(t).reduce(function(n,i){return Da(Da({},n),{},xT({},i,Wq.create(t[i])))},{});return Da(Da({},r),{},{apply:function(i){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.bandAware,s=a.position;return FIe(i,function(l,u){return r[u].apply(l,{bandAware:o,position:s})})},isInRange:function(i){return eEe(i,function(a,o){return r[o].isInRange(a)})}})};function SEe(e){return(e%180+180)%180}var TEe=function(t){var r=t.width,n=t.height,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=SEe(i),o=a*Math.PI/180,s=Math.atan(n/r),l=o>s&&oe.length)&&(t=e.length);for(var r=0,n=new Array(t);re*i)return!1;var a=r();return e*(t-e*a/2-n)>=0&&e*(t+e*a/2-i)<=0}function fOe(e,t){return sK(e,t+1)}function hOe(e,t,r,n,i){for(var a=(n||[]).slice(),o=t.start,s=t.end,l=0,u=1,c=o,f=function(){var v=n==null?void 0:n[l];if(v===void 0)return{v:sK(n,u)};var m=l,y,x=function(){return y===void 0&&(y=r(v,m)),y},_=v.coordinate,b=l===0||Y1(e,_,x,c,s);b||(l=0,c=o,u+=1),b&&(c=_+e*(x()/2+i),l+=u)},h;u<=a.length;)if(h=f(),h)return h.v;return[]}function uy(e){"@babel/helpers - typeof";return uy=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},uy(e)}function eF(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Mn(e){for(var t=1;t0?d.coordinate-y*e:d.coordinate})}else a[h]=d=Mn(Mn({},d),{},{tickCoord:d.coordinate});var x=Y1(e,d.tickCoord,m,s,l);x&&(l=d.tickCoord-e*(m()/2+i),a[h]=Mn(Mn({},d),{},{isShow:!0}))},c=o-1;c>=0;c--)u(c);return a}function mOe(e,t,r,n,i,a){var o=(n||[]).slice(),s=o.length,l=t.start,u=t.end;if(a){var c=n[s-1],f=r(c,s-1),h=e*(c.coordinate+e*f/2-u);o[s-1]=c=Mn(Mn({},c),{},{tickCoord:h>0?c.coordinate-h*e:c.coordinate});var d=Y1(e,c.tickCoord,function(){return f},l,u);d&&(u=c.tickCoord-e*(f/2+i),o[s-1]=Mn(Mn({},c),{},{isShow:!0}))}for(var v=a?s-1:s,m=function(_){var b=o[_],S,T=function(){return S===void 0&&(S=r(b,_)),S};if(_===0){var C=e*(b.coordinate-e*T()/2-l);o[_]=b=Mn(Mn({},b),{},{tickCoord:C<0?b.coordinate-C*e:b.coordinate})}else o[_]=b=Mn(Mn({},b),{},{tickCoord:b.coordinate});var A=Y1(e,b.tickCoord,T,l,u);A&&(l=b.tickCoord+e*(T()/2+i),o[_]=Mn(Mn({},b),{},{isShow:!0}))},y=0;y=2?Ba(i[1].coordinate-i[0].coordinate):1,x=cOe(a,y,d);return l==="equidistantPreserveStart"?hOe(y,x,m,i,o):(l==="preserveStart"||l==="preserveStartEnd"?h=mOe(y,x,m,i,o,l==="preserveStartEnd"):h=gOe(y,x,m,i,o),h.filter(function(_){return _.isShow}))}var xOe=["viewBox"],_Oe=["viewBox"],bOe=["ticks"];function Fd(e){"@babel/helpers - typeof";return Fd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Fd(e)}function Gh(){return Gh=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function wOe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function SOe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function rF(e,t){for(var r=0;r0?l(this.props):l(d)),o<=0||s<=0||!v||!v.length?null:Q.createElement(Yt,{className:_t("recharts-cartesian-axis",u),ref:function(y){n.layerReference=y}},a&&this.renderAxisLine(),this.renderTicks(v,this.state.fontSize,this.state.letterSpacing),In.renderCallByParent(this.props))}}],[{key:"renderTickItem",value:function(n,i,a){var o,s=_t(i.className,"recharts-cartesian-axis-tick-value");return Q.isValidElement(n)?o=Q.cloneElement(n,Br(Br({},i),{},{className:s})):ft(n)?o=n(Br(Br({},i),{},{className:s})):o=Q.createElement(v1,Gh({},i,{className:"recharts-cartesian-axis-tick-value"}),a),o}}])}(H.Component);dN(TT,"displayName","CartesianAxis");dN(TT,"defaultProps",{x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd"});var LOe=["type","layout","connectNulls","ref"],IOe=["key"];function Vd(e){"@babel/helpers - typeof";return Vd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Vd(e)}function nF(e,t){if(e==null)return{};var r=EOe(e,t),n,i;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(i=0;i=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function EOe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Gg(){return Gg=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);rf){d=[].concat(Kf(l.slice(0,v)),[f-m]);break}var y=d.length%2===0?[0,h]:[h];return[].concat(Kf(t.repeat(l,c)),Kf(d),y).map(function(x){return"".concat(x,"px")}).join(", ")}),Na(r,"id",Cv("recharts-line-")),Na(r,"pathRef",function(o){r.mainCurve=o}),Na(r,"handleAnimationEnd",function(){r.setState({isAnimationFinished:!0}),r.props.onAnimationEnd&&r.props.onAnimationEnd()}),Na(r,"handleAnimationStart",function(){r.setState({isAnimationFinished:!1}),r.props.onAnimationStart&&r.props.onAnimationStart()}),r}return VOe(t,e),BOe(t,[{key:"componentDidMount",value:function(){if(this.props.isAnimationActive){var n=this.getTotalLength();this.setState({totalLength:n})}}},{key:"componentDidUpdate",value:function(){if(this.props.isAnimationActive){var n=this.getTotalLength();n!==this.state.totalLength&&this.setState({totalLength:n})}}},{key:"getTotalLength",value:function(){var n=this.mainCurve;try{return n&&n.getTotalLength&&n.getTotalLength()||0}catch{return 0}}},{key:"renderErrorBar",value:function(n,i){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var a=this.props,o=a.points,s=a.xAxis,l=a.yAxis,u=a.layout,c=a.children,f=sa(c,i0);if(!f)return null;var h=function(m,y){return{x:m.x,y:m.y,value:m.value,errorVal:Un(m.payload,y)}},d={clipPath:n?"url(#clipPath-".concat(i,")"):null};return Q.createElement(Yt,d,f.map(function(v){return Q.cloneElement(v,{key:"bar-".concat(v.props.dataKey),data:o,xAxis:s,yAxis:l,layout:u,dataPointFormatter:h})}))}},{key:"renderDots",value:function(n,i,a){var o=this.props.isAnimationActive;if(o&&!this.state.isAnimationFinished)return null;var s=this.props,l=s.dot,u=s.points,c=s.dataKey,f=ct(this.props,!1),h=ct(l,!0),d=u.map(function(m,y){var x=pi(pi(pi({key:"dot-".concat(y),r:3},f),h),{},{index:y,cx:m.x,cy:m.y,value:m.value,dataKey:c,payload:m.payload,points:u});return t.renderDotItem(l,x)}),v={clipPath:n?"url(#clipPath-".concat(i?"":"dots-").concat(a,")"):null};return Q.createElement(Yt,Gg({className:"recharts-line-dots",key:"dots"},v),d)}},{key:"renderCurveStatically",value:function(n,i,a,o){var s=this.props,l=s.type,u=s.layout,c=s.connectNulls;s.ref;var f=nF(s,LOe),h=pi(pi(pi({},ct(f,!0)),{},{fill:"none",className:"recharts-line-curve",clipPath:i?"url(#clipPath-".concat(a,")"):null,points:n},o),{},{type:l,layout:u,connectNulls:c});return Q.createElement(ud,Gg({},h,{pathRef:this.pathRef}))}},{key:"renderCurveWithAnimation",value:function(n,i){var a=this,o=this.props,s=o.points,l=o.strokeDasharray,u=o.isAnimationActive,c=o.animationBegin,f=o.animationDuration,h=o.animationEasing,d=o.animationId,v=o.animateNewValues,m=o.width,y=o.height,x=this.state,_=x.prevPoints,b=x.totalLength;return Q.createElement(Fo,{begin:c,duration:f,isActive:u,easing:h,from:{t:0},to:{t:1},key:"line-".concat(d),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(S){var T=S.t;if(_){var C=_.length/s.length,A=s.map(function(D,N){var z=Math.floor(N*C);if(_[z]){var V=_[z],F=vn(V.x,D.x),$=vn(V.y,D.y);return pi(pi({},D),{},{x:F(T),y:$(T)})}if(v){var B=vn(m*2,D.x),Z=vn(y/2,D.y);return pi(pi({},D),{},{x:B(T),y:Z(T)})}return pi(pi({},D),{},{x:D.x,y:D.y})});return a.renderCurveStatically(A,n,i)}var P=vn(0,b),I=P(T),k;if(l){var O="".concat(l).split(/[,\s]+/gim).map(function(D){return parseFloat(D)});k=a.getStrokeDasharray(I,b,O)}else k=a.generateSimpleStrokeDasharray(b,I);return a.renderCurveStatically(s,n,i,{strokeDasharray:k})})}},{key:"renderCurve",value:function(n,i){var a=this.props,o=a.points,s=a.isAnimationActive,l=this.state,u=l.prevPoints,c=l.totalLength;return s&&o&&o.length&&(!u&&c>0||!Ed(u,o))?this.renderCurveWithAnimation(n,i):this.renderCurveStatically(o,n,i)}},{key:"render",value:function(){var n,i=this.props,a=i.hide,o=i.dot,s=i.points,l=i.className,u=i.xAxis,c=i.yAxis,f=i.top,h=i.left,d=i.width,v=i.height,m=i.isAnimationActive,y=i.id;if(a||!s||!s.length)return null;var x=this.state.isAnimationFinished,_=s.length===1,b=_t("recharts-line",l),S=u&&u.allowDataOverflow,T=c&&c.allowDataOverflow,C=S||T,A=dt(y)?this.id:y,P=(n=ct(o,!1))!==null&&n!==void 0?n:{r:3,strokeWidth:2},I=P.r,k=I===void 0?3:I,O=P.strokeWidth,D=O===void 0?2:O,N=hY(o)?o:{},z=N.clipDot,V=z===void 0?!0:z,F=k*2+D;return Q.createElement(Yt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(A)},Q.createElement("rect",{x:S?h:h-d/2,y:T?f:f-v/2,width:S?d:d*2,height:T?v:v*2})),!V&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(A)},Q.createElement("rect",{x:h-F/2,y:f-F/2,width:d+F,height:v+F}))):null,!_&&this.renderCurve(C,A),this.renderErrorBar(C,A),(_||o)&&this.renderDots(C,V,A),(!m||x)&&Ms.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(n,i){return n.animationId!==i.prevAnimationId?{prevAnimationId:n.animationId,curPoints:n.points,prevPoints:i.curPoints}:n.points!==i.curPoints?{curPoints:n.points}:null}},{key:"repeat",value:function(n,i){for(var a=n.length%2!==0?[].concat(Kf(n),[0]):n,o=[],s=0;s=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function UOe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function Lc(){return Lc=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||!Ed(c,o)||!Ed(f,s))?this.renderAreaWithAnimation(n,i):this.renderAreaStatically(o,s,n,i)}},{key:"render",value:function(){var n,i=this.props,a=i.hide,o=i.dot,s=i.points,l=i.className,u=i.top,c=i.left,f=i.xAxis,h=i.yAxis,d=i.width,v=i.height,m=i.isAnimationActive,y=i.id;if(a||!s||!s.length)return null;var x=this.state.isAnimationFinished,_=s.length===1,b=_t("recharts-area",l),S=f&&f.allowDataOverflow,T=h&&h.allowDataOverflow,C=S||T,A=dt(y)?this.id:y,P=(n=ct(o,!1))!==null&&n!==void 0?n:{r:3,strokeWidth:2},I=P.r,k=I===void 0?3:I,O=P.strokeWidth,D=O===void 0?2:O,N=hY(o)?o:{},z=N.clipDot,V=z===void 0?!0:z,F=k*2+D;return Q.createElement(Yt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(A)},Q.createElement("rect",{x:S?c:c-d/2,y:T?u:u-v/2,width:S?d:d*2,height:T?v:v*2})),!V&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(A)},Q.createElement("rect",{x:c-F/2,y:u-F/2,width:d+F,height:v+F}))):null,_?null:this.renderArea(C,A),(o||_)&&this.renderDots(C,V,A),(!m||x)&&Ms.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(n,i){return n.animationId!==i.prevAnimationId?{prevAnimationId:n.animationId,curPoints:n.points,curBaseLine:n.baseLine,prevPoints:i.curPoints,prevBaseLine:i.curBaseLine}:n.points!==i.curPoints||n.baseLine!==i.curBaseLine?{curPoints:n.points,curBaseLine:n.baseLine}:null}}])}(H.PureComponent);hK=Su;To(Su,"displayName","Area");To(Su,"defaultProps",{stroke:"#3182bd",fill:"#3182bd",fillOpacity:.6,xAxisId:0,yAxisId:0,legendType:"line",connectNulls:!1,points:[],dot:!1,activeDot:!0,hide:!1,isAnimationActive:!Tf.isSsr,animationBegin:0,animationDuration:1500,animationEasing:"ease"});To(Su,"getBaseValue",function(e,t,r,n){var i=e.layout,a=e.baseValue,o=t.props.baseValue,s=o??a;if(Te(s)&&typeof s=="number")return s;var l=i==="horizontal"?n:r,u=l.scale.domain();if(l.type==="number"){var c=Math.max(u[0],u[1]),f=Math.min(u[0],u[1]);return s==="dataMin"?f:s==="dataMax"||c<0?c:Math.max(Math.min(u[0],u[1]),0)}return s==="dataMin"?u[0]:s==="dataMax"?u[1]:u[0]});To(Su,"getComposedData",function(e){var t=e.props,r=e.item,n=e.xAxis,i=e.yAxis,a=e.xAxisTicks,o=e.yAxisTicks,s=e.bandSize,l=e.dataKey,u=e.stackedData,c=e.dataStartIndex,f=e.displayedData,h=e.offset,d=t.layout,v=u&&u.length,m=hK.getBaseValue(t,r,n,i),y=d==="horizontal",x=!1,_=f.map(function(S,T){var C;v?C=u[c+T]:(C=Un(S,l),Array.isArray(C)?x=!0:C=[m,C]);var A=C[1]==null||v&&Un(S,l)==null;return y?{x:k1({axis:n,ticks:a,bandSize:s,entry:S,index:T}),y:A?null:i.scale(C[1]),value:C,payload:S}:{x:A?null:n.scale(C[1]),y:k1({axis:i,ticks:o,bandSize:s,entry:S,index:T}),value:C,payload:S}}),b;return v||x?b=_.map(function(S){var T=Array.isArray(S.value)?S.value[0]:null;return y?{x:S.x,y:T!=null&&S.y!=null?i.scale(T):null}:{x:T!=null?n.scale(T):null,y:S.y}}):b=y?i.scale(m):n.scale(m),gl({points:_,baseLine:b,layout:d,isRange:x},h)});To(Su,"renderDotItem",function(e,t){var r;if(Q.isValidElement(e))r=Q.cloneElement(e,t);else if(ft(e))r=e(t);else{var n=_t("recharts-area-dot",typeof e!="boolean"?e.className:""),i=t.key,a=dK(t,HOe);r=Q.createElement(gT,Lc({},a,{key:i,className:n}))}return r});function Wd(e){"@babel/helpers - typeof";return Wd=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wd(e)}function eDe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function tDe(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function FDe(e,t){if(e==null)return{};var r={};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function VDe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function GDe(e,t){for(var r=0;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r0?o:t&&t.length&&Te(i)&&Te(a)?t.slice(i,a+1):[]};function kK(e){return e==="number"?[0,"auto"]:void 0}var ZL=function(t,r,n,i){var a=t.graphicalItems,o=t.tooltipAxis,s=CT(r,t);return n<0||!a||!a.length||n>=s.length?null:a.reduce(function(l,u){var c,f=(c=u.props.data)!==null&&c!==void 0?c:r;f&&t.dataStartIndex+t.dataEndIndex!==0&&t.dataEndIndex-t.dataStartIndex>=n&&(f=f.slice(t.dataStartIndex,t.dataEndIndex+1));var h;if(o.dataKey&&!o.allowDuplicatedCategory){var d=f===void 0?s:f;h=Jb(d,o.dataKey,i)}else h=f&&f[n]||s[n];return h?[].concat(Zd(l),[_q(u,h)]):l},[])},dF=function(t,r,n,i){var a=i||{x:t.chartX,y:t.chartY},o=tNe(a,n),s=t.orderedTooltipTicks,l=t.tooltipAxis,u=t.tooltipTicks,c=D2e(o,s,u,l);if(c>=0&&u){var f=u[c]&&u[c].value,h=ZL(t,r,c,f),d=rNe(n,s,c,a);return{activeTooltipIndex:c,activeLabel:f,activePayload:h,activeCoordinate:d}}return null},nNe=function(t,r){var n=r.axes,i=r.graphicalItems,a=r.axisType,o=r.axisIdKey,s=r.stackGroups,l=r.dataStartIndex,u=r.dataEndIndex,c=t.layout,f=t.children,h=t.stackOffset,d=yq(c,a);return n.reduce(function(v,m){var y,x=m.type.defaultProps!==void 0?fe(fe({},m.type.defaultProps),m.props):m.props,_=x.type,b=x.dataKey,S=x.allowDataOverflow,T=x.allowDuplicatedCategory,C=x.scale,A=x.ticks,P=x.includeHidden,I=x[o];if(v[I])return v;var k=CT(t.data,{graphicalItems:i.filter(function(Y){var K,ee=o in Y.props?Y.props[o]:(K=Y.type.defaultProps)===null||K===void 0?void 0:K[o];return ee===I}),dataStartIndex:l,dataEndIndex:u}),O=k.length,D,N,z;kDe(x.domain,S,_)&&(D=cL(x.domain,null,S),d&&(_==="number"||C!=="auto")&&(z=Fg(k,b,"category")));var V=kK(_);if(!D||D.length===0){var F,$=(F=x.domain)!==null&&F!==void 0?F:V;if(b){if(D=Fg(k,b,_),_==="category"&&d){var B=bve(D);T&&B?(N=D,D=$1(0,O)):T||(D=Y4($,D,m).reduce(function(Y,K){return Y.indexOf(K)>=0?Y:[].concat(Zd(Y),[K])},[]))}else if(_==="category")T?D=D.filter(function(Y){return Y!==""&&!dt(Y)}):D=Y4($,D,m).reduce(function(Y,K){return Y.indexOf(K)>=0||K===""||dt(K)?Y:[].concat(Zd(Y),[K])},[]);else if(_==="number"){var Z=z2e(k,i.filter(function(Y){var K,ee,le=o in Y.props?Y.props[o]:(K=Y.type.defaultProps)===null||K===void 0?void 0:K[o],he="hide"in Y.props?Y.props.hide:(ee=Y.type.defaultProps)===null||ee===void 0?void 0:ee.hide;return le===I&&(P||!he)}),b,a,c);Z&&(D=Z)}d&&(_==="number"||C!=="auto")&&(z=Fg(k,b,"category"))}else d?D=$1(0,O):s&&s[I]&&s[I].hasStack&&_==="number"?D=h==="expand"?[0,1]:xq(s[I].stackGroups,l,u):D=mq(k,i.filter(function(Y){var K=o in Y.props?Y.props[o]:Y.type.defaultProps[o],ee="hide"in Y.props?Y.props.hide:Y.type.defaultProps.hide;return K===I&&(P||!ee)}),_,c,!0);if(_==="number")D=WL(f,D,I,a,A),$&&(D=cL($,D,S));else if(_==="category"&&$){var W=$,G=D.every(function(Y){return W.indexOf(Y)>=0});G&&(D=W)}}return fe(fe({},v),{},qe({},I,fe(fe({},x),{},{axisType:a,domain:D,categoricalDomain:z,duplicateDomain:N,originalDomain:(y=x.domain)!==null&&y!==void 0?y:V,isCategorical:d,layout:c})))},{})},iNe=function(t,r){var n=r.graphicalItems,i=r.Axis,a=r.axisType,o=r.axisIdKey,s=r.stackGroups,l=r.dataStartIndex,u=r.dataEndIndex,c=t.layout,f=t.children,h=CT(t.data,{graphicalItems:n,dataStartIndex:l,dataEndIndex:u}),d=h.length,v=yq(c,a),m=-1;return n.reduce(function(y,x){var _=x.type.defaultProps!==void 0?fe(fe({},x.type.defaultProps),x.props):x.props,b=_[o],S=kK("number");if(!y[b]){m++;var T;return v?T=$1(0,d):s&&s[b]&&s[b].hasStack?(T=xq(s[b].stackGroups,l,u),T=WL(f,T,b,a)):(T=cL(S,mq(h,n.filter(function(C){var A,P,I=o in C.props?C.props[o]:(A=C.type.defaultProps)===null||A===void 0?void 0:A[o],k="hide"in C.props?C.props.hide:(P=C.type.defaultProps)===null||P===void 0?void 0:P.hide;return I===b&&!k}),"number",c),i.defaultProps.allowDataOverflow),T=WL(f,T,b,a)),fe(fe({},y),{},qe({},b,fe(fe({axisType:a},i.defaultProps),{},{hide:!0,orientation:oa(QDe,"".concat(a,".").concat(m%2),null),domain:T,originalDomain:S,isCategorical:v,layout:c})))}return y},{})},aNe=function(t,r){var n=r.axisType,i=n===void 0?"xAxis":n,a=r.AxisComp,o=r.graphicalItems,s=r.stackGroups,l=r.dataStartIndex,u=r.dataEndIndex,c=t.children,f="".concat(i,"Id"),h=sa(c,a),d={};return h&&h.length?d=nNe(t,{axes:h,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u}):o&&o.length&&(d=iNe(t,{Axis:a,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u})),d},oNe=function(t){var r=Ch(t),n=kc(r,!1,!0);return{tooltipTicks:n,orderedTooltipTicks:RD(n,function(i){return i.coordinate}),tooltipAxis:r,tooltipAxisBandSize:L1(r,n)}},vF=function(t){var r=t.children,n=t.defaultShowTooltip,i=yi(r,jd),a=0,o=0;return t.data&&t.data.length!==0&&(o=t.data.length-1),i&&i.props&&(i.props.startIndex>=0&&(a=i.props.startIndex),i.props.endIndex>=0&&(o=i.props.endIndex)),{chartX:0,chartY:0,dataStartIndex:a,dataEndIndex:o,activeTooltipIndex:-1,isTooltipActive:!!n}},sNe=function(t){return!t||!t.length?!1:t.some(function(r){var n=Cs(r&&r.type);return n&&n.indexOf("Bar")>=0})},pF=function(t){return t==="horizontal"?{numericAxisName:"yAxis",cateAxisName:"xAxis"}:t==="vertical"?{numericAxisName:"xAxis",cateAxisName:"yAxis"}:t==="centric"?{numericAxisName:"radiusAxis",cateAxisName:"angleAxis"}:{numericAxisName:"angleAxis",cateAxisName:"radiusAxis"}},lNe=function(t,r){var n=t.props,i=t.graphicalItems,a=t.xAxisMap,o=a===void 0?{}:a,s=t.yAxisMap,l=s===void 0?{}:s,u=n.width,c=n.height,f=n.children,h=n.margin||{},d=yi(f,jd),v=yi(f,od),m=Object.keys(l).reduce(function(T,C){var A=l[C],P=A.orientation;return!A.mirror&&!A.hide?fe(fe({},T),{},qe({},P,T[P]+A.width)):T},{left:h.left||0,right:h.right||0}),y=Object.keys(o).reduce(function(T,C){var A=o[C],P=A.orientation;return!A.mirror&&!A.hide?fe(fe({},T),{},qe({},P,oa(T,"".concat(P))+A.height)):T},{top:h.top||0,bottom:h.bottom||0}),x=fe(fe({},y),m),_=x.bottom;d&&(x.bottom+=d.props.height||jd.defaultProps.height),v&&r&&(x=R2e(x,i,n,r));var b=u-x.left-x.right,S=c-x.top-x.bottom;return fe(fe({brushBottom:_},x),{},{width:Math.max(b,0),height:Math.max(S,0)})},uNe=function(t,r){if(r==="xAxis")return t[r].width;if(r==="yAxis")return t[r].height},LK=function(t){var r=t.chartName,n=t.GraphicalChild,i=t.defaultTooltipEventType,a=i===void 0?"axis":i,o=t.validateTooltipEventTypes,s=o===void 0?["axis"]:o,l=t.axisComponents,u=t.legendContent,c=t.formatAxisMap,f=t.defaultProps,h=function(x,_){var b=_.graphicalItems,S=_.stackGroups,T=_.offset,C=_.updateId,A=_.dataStartIndex,P=_.dataEndIndex,I=x.barSize,k=x.layout,O=x.barGap,D=x.barCategoryGap,N=x.maxBarSize,z=pF(k),V=z.numericAxisName,F=z.cateAxisName,$=sNe(b),B=[];return b.forEach(function(Z,W){var G=CT(x.data,{graphicalItems:[Z],dataStartIndex:A,dataEndIndex:P}),Y=Z.type.defaultProps!==void 0?fe(fe({},Z.type.defaultProps),Z.props):Z.props,K=Y.dataKey,ee=Y.maxBarSize,le=Y["".concat(V,"Id")],he=Y["".concat(F,"Id")],Ne={},xe=l.reduce(function(qr,Kn){var Bf=_["".concat(Kn.axisType,"Map")],k0=Y["".concat(Kn.axisType,"Id")];Bf&&Bf[k0]||Kn.axisType==="zAxis"||sf();var L0=Bf[k0];return fe(fe({},qr),{},qe(qe({},Kn.axisType,L0),"".concat(Kn.axisType,"Ticks"),kc(L0)))},Ne),ie=xe[F],de=xe["".concat(F,"Ticks")],ue=S&&S[le]&&S[le].hasStack&&K2e(Z,S[le].stackGroups),te=Cs(Z.type).indexOf("Bar")>=0,Ve=L1(ie,de),Ce=[],Ge=$&&N2e({barSize:I,stackGroups:S,totalSize:uNe(xe,F)});if(te){var Ye,vt,Ft=dt(ee)?N:ee,rr=(Ye=(vt=L1(ie,de,!0))!==null&&vt!==void 0?vt:Ft)!==null&&Ye!==void 0?Ye:0;Ce=j2e({barGap:O,barCategoryGap:D,bandSize:rr!==Ve?rr:Ve,sizeList:Ge[he],maxBarSize:Ft}),rr!==Ve&&(Ce=Ce.map(function(qr){return fe(fe({},qr),{},{position:fe(fe({},qr.position),{},{offset:qr.position.offset-rr/2})})}))}var jn=Z&&Z.type&&Z.type.getComposedData;jn&&B.push({props:fe(fe({},jn(fe(fe({},xe),{},{displayedData:G,props:x,dataKey:K,item:Z,bandSize:Ve,barPosition:Ce,offset:T,stackedData:ue,layout:k,dataStartIndex:A,dataEndIndex:P}))),{},qe(qe(qe({key:Z.key||"item-".concat(W)},V,xe[V]),F,xe[F]),"animationId",C)),childIndex:Ove(Z,x.children),item:Z})}),B},d=function(x,_){var b=x.props,S=x.dataStartIndex,T=x.dataEndIndex,C=x.updateId;if(!VB({props:b}))return null;var A=b.children,P=b.layout,I=b.stackOffset,k=b.data,O=b.reverseStackOrder,D=pF(P),N=D.numericAxisName,z=D.cateAxisName,V=sa(A,n),F=Y2e(k,V,"".concat(N,"Id"),"".concat(z,"Id"),I,O),$=l.reduce(function(Y,K){var ee="".concat(K.axisType,"Map");return fe(fe({},Y),{},qe({},ee,aNe(b,fe(fe({},K),{},{graphicalItems:V,stackGroups:K.axisType===N&&F,dataStartIndex:S,dataEndIndex:T}))))},{}),B=lNe(fe(fe({},$),{},{props:b,graphicalItems:V}),_==null?void 0:_.legendBBox);Object.keys($).forEach(function(Y){$[Y]=c(b,$[Y],B,Y.replace("Map",""),r)});var Z=$["".concat(z,"Map")],W=oNe(Z),G=h(b,fe(fe({},$),{},{dataStartIndex:S,dataEndIndex:T,updateId:C,graphicalItems:V,stackGroups:F,offset:B}));return fe(fe({formattedGraphicalItems:G,graphicalItems:V,offset:B,stackGroups:F},W),$)},v=function(y){function x(_){var b,S,T;return VDe(this,x),T=HDe(this,x,[_]),qe(T,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),qe(T,"accessibilityManager",new PDe),qe(T,"handleLegendBBoxUpdate",function(C){if(C){var A=T.state,P=A.dataStartIndex,I=A.dataEndIndex,k=A.updateId;T.setState(fe({legendBBox:C},d({props:T.props,dataStartIndex:P,dataEndIndex:I,updateId:k},fe(fe({},T.state),{},{legendBBox:C}))))}}),qe(T,"handleReceiveSyncEvent",function(C,A,P){if(T.props.syncId===C){if(P===T.eventEmitterSymbol&&typeof T.props.syncMethod!="function")return;T.applySyncEvent(A)}}),qe(T,"handleBrushChange",function(C){var A=C.startIndex,P=C.endIndex;if(A!==T.state.dataStartIndex||P!==T.state.dataEndIndex){var I=T.state.updateId;T.setState(function(){return fe({dataStartIndex:A,dataEndIndex:P},d({props:T.props,dataStartIndex:A,dataEndIndex:P,updateId:I},T.state))}),T.triggerSyncEvent({dataStartIndex:A,dataEndIndex:P})}}),qe(T,"handleMouseEnter",function(C){var A=T.getMouseInfo(C);if(A){var P=fe(fe({},A),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var I=T.props.onMouseEnter;ft(I)&&I(P,C)}}),qe(T,"triggeredAfterMouseMove",function(C){var A=T.getMouseInfo(C),P=A?fe(fe({},A),{},{isTooltipActive:!0}):{isTooltipActive:!1};T.setState(P),T.triggerSyncEvent(P);var I=T.props.onMouseMove;ft(I)&&I(P,C)}),qe(T,"handleItemMouseEnter",function(C){T.setState(function(){return{isTooltipActive:!0,activeItem:C,activePayload:C.tooltipPayload,activeCoordinate:C.tooltipPosition||{x:C.cx,y:C.cy}}})}),qe(T,"handleItemMouseLeave",function(){T.setState(function(){return{isTooltipActive:!1}})}),qe(T,"handleMouseMove",function(C){C.persist(),T.throttleTriggeredAfterMouseMove(C)}),qe(T,"handleMouseLeave",function(C){T.throttleTriggeredAfterMouseMove.cancel();var A={isTooltipActive:!1};T.setState(A),T.triggerSyncEvent(A);var P=T.props.onMouseLeave;ft(P)&&P(A,C)}),qe(T,"handleOuterEvent",function(C){var A=Eve(C),P=oa(T.props,"".concat(A));if(A&&ft(P)){var I,k;/.*touch.*/i.test(A)?k=T.getMouseInfo(C.changedTouches[0]):k=T.getMouseInfo(C),P((I=k)!==null&&I!==void 0?I:{},C)}}),qe(T,"handleClick",function(C){var A=T.getMouseInfo(C);if(A){var P=fe(fe({},A),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var I=T.props.onClick;ft(I)&&I(P,C)}}),qe(T,"handleMouseDown",function(C){var A=T.props.onMouseDown;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"handleMouseUp",function(C){var A=T.props.onMouseUp;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"handleTouchMove",function(C){C.changedTouches!=null&&C.changedTouches.length>0&&T.throttleTriggeredAfterMouseMove(C.changedTouches[0])}),qe(T,"handleTouchStart",function(C){C.changedTouches!=null&&C.changedTouches.length>0&&T.handleMouseDown(C.changedTouches[0])}),qe(T,"handleTouchEnd",function(C){C.changedTouches!=null&&C.changedTouches.length>0&&T.handleMouseUp(C.changedTouches[0])}),qe(T,"handleDoubleClick",function(C){var A=T.props.onDoubleClick;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"handleContextMenu",function(C){var A=T.props.onContextMenu;if(ft(A)){var P=T.getMouseInfo(C);A(P,C)}}),qe(T,"triggerSyncEvent",function(C){T.props.syncId!==void 0&&HA.emit(UA,T.props.syncId,C,T.eventEmitterSymbol)}),qe(T,"applySyncEvent",function(C){var A=T.props,P=A.layout,I=A.syncMethod,k=T.state.updateId,O=C.dataStartIndex,D=C.dataEndIndex;if(C.dataStartIndex!==void 0||C.dataEndIndex!==void 0)T.setState(fe({dataStartIndex:O,dataEndIndex:D},d({props:T.props,dataStartIndex:O,dataEndIndex:D,updateId:k},T.state)));else if(C.activeTooltipIndex!==void 0){var N=C.chartX,z=C.chartY,V=C.activeTooltipIndex,F=T.state,$=F.offset,B=F.tooltipTicks;if(!$)return;if(typeof I=="function")V=I(B,C);else if(I==="value"){V=-1;for(var Z=0;Z=0){var ue,te;if(N.dataKey&&!N.allowDuplicatedCategory){var Ve=typeof N.dataKey=="function"?de:"payload.".concat(N.dataKey.toString());ue=Jb(Z,Ve,V),te=W&&G&&Jb(G,Ve,V)}else ue=Z==null?void 0:Z[z],te=W&&G&&G[z];if(he||le){var Ce=C.props.activeIndex!==void 0?C.props.activeIndex:z;return[H.cloneElement(C,fe(fe(fe({},I.props),xe),{},{activeIndex:Ce})),null,null]}if(!dt(ue))return[ie].concat(Zd(T.renderActivePoints({item:I,activePoint:ue,basePoint:te,childIndex:z,isRange:W})))}else{var Ge,Ye=(Ge=T.getItemByXY(T.state.activeCoordinate))!==null&&Ge!==void 0?Ge:{graphicalItem:ie},vt=Ye.graphicalItem,Ft=vt.item,rr=Ft===void 0?C:Ft,jn=vt.childIndex,qr=fe(fe(fe({},I.props),xe),{},{activeIndex:jn});return[H.cloneElement(rr,qr),null,null]}return W?[ie,null,null]:[ie,null]}),qe(T,"renderCustomized",function(C,A,P){return H.cloneElement(C,fe(fe({key:"recharts-customized-".concat(P)},T.props),T.state))}),qe(T,"renderMap",{CartesianGrid:{handler:Ax,once:!0},ReferenceArea:{handler:T.renderReferenceElement},ReferenceLine:{handler:Ax},ReferenceDot:{handler:T.renderReferenceElement},XAxis:{handler:Ax},YAxis:{handler:Ax},Brush:{handler:T.renderBrush,once:!0},Bar:{handler:T.renderGraphicChild},Line:{handler:T.renderGraphicChild},Area:{handler:T.renderGraphicChild},Radar:{handler:T.renderGraphicChild},RadialBar:{handler:T.renderGraphicChild},Scatter:{handler:T.renderGraphicChild},Pie:{handler:T.renderGraphicChild},Funnel:{handler:T.renderGraphicChild},Tooltip:{handler:T.renderCursor,once:!0},PolarGrid:{handler:T.renderPolarGrid,once:!0},PolarAngleAxis:{handler:T.renderPolarAxis},PolarRadiusAxis:{handler:T.renderPolarAxis},Customized:{handler:T.renderCustomized}}),T.clipPathId="".concat((b=_.id)!==null&&b!==void 0?b:Cv("recharts"),"-clip"),T.throttleTriggeredAfterMouseMove=vX(T.triggeredAfterMouseMove,(S=_.throttleDelay)!==null&&S!==void 0?S:1e3/60),T.state={},T}return YDe(x,y),WDe(x,[{key:"componentDidMount",value:function(){var b,S;this.addListener(),this.accessibilityManager.setDetails({container:this.container,offset:{left:(b=this.props.margin.left)!==null&&b!==void 0?b:0,top:(S=this.props.margin.top)!==null&&S!==void 0?S:0},coordinateList:this.state.tooltipTicks,mouseHandlerCallback:this.triggeredAfterMouseMove,layout:this.props.layout}),this.displayDefaultTooltip()}},{key:"displayDefaultTooltip",value:function(){var b=this.props,S=b.children,T=b.data,C=b.height,A=b.layout,P=yi(S,cs);if(P){var I=P.props.defaultIndex;if(!(typeof I!="number"||I<0||I>this.state.tooltipTicks.length-1)){var k=this.state.tooltipTicks[I]&&this.state.tooltipTicks[I].value,O=ZL(this.state,T,I,k),D=this.state.tooltipTicks[I].coordinate,N=(this.state.offset.top+C)/2,z=A==="horizontal",V=z?{x:D,y:N}:{y:D,x:N},F=this.state.formattedGraphicalItems.find(function(B){var Z=B.item;return Z.type.name==="Scatter"});F&&(V=fe(fe({},V),F.props.points[I].tooltipPosition),O=F.props.points[I].tooltipPayload);var $={activeTooltipIndex:I,isTooltipActive:!0,activeLabel:k,activePayload:O,activeCoordinate:V};this.setState($),this.renderCursor(P),this.accessibilityManager.setIndex(I)}}}},{key:"getSnapshotBeforeUpdate",value:function(b,S){if(!this.props.accessibilityLayer)return null;if(this.state.tooltipTicks!==S.tooltipTicks&&this.accessibilityManager.setDetails({coordinateList:this.state.tooltipTicks}),this.props.layout!==b.layout&&this.accessibilityManager.setDetails({layout:this.props.layout}),this.props.margin!==b.margin){var T,C;this.accessibilityManager.setDetails({offset:{left:(T=this.props.margin.left)!==null&&T!==void 0?T:0,top:(C=this.props.margin.top)!==null&&C!==void 0?C:0}})}return null}},{key:"componentDidUpdate",value:function(b){Ck([yi(b.children,cs)],[yi(this.props.children,cs)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var b=yi(this.props.children,cs);if(b&&typeof b.props.shared=="boolean"){var S=b.props.shared?"axis":"item";return s.indexOf(S)>=0?S:a}return a}},{key:"getMouseInfo",value:function(b){if(!this.container)return null;var S=this.container,T=S.getBoundingClientRect(),C=oSe(T),A={chartX:Math.round(b.pageX-C.left),chartY:Math.round(b.pageY-C.top)},P=T.width/S.offsetWidth||1,I=this.inRange(A.chartX,A.chartY,P);if(!I)return null;var k=this.state,O=k.xAxisMap,D=k.yAxisMap,N=this.getTooltipEventType(),z=dF(this.state,this.props.data,this.props.layout,I);if(N!=="axis"&&O&&D){var V=Ch(O).scale,F=Ch(D).scale,$=V&&V.invert?V.invert(A.chartX):null,B=F&&F.invert?F.invert(A.chartY):null;return fe(fe({},A),{},{xValue:$,yValue:B},z)}return z?fe(fe({},A),z):null}},{key:"inRange",value:function(b,S){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,C=this.props.layout,A=b/T,P=S/T;if(C==="horizontal"||C==="vertical"){var I=this.state.offset,k=A>=I.left&&A<=I.left+I.width&&P>=I.top&&P<=I.top+I.height;return k?{x:A,y:P}:null}var O=this.state,D=O.angleAxisMap,N=O.radiusAxisMap;if(D&&N){var z=Ch(D);return K4({x:A,y:P},z)}return null}},{key:"parseEventsOfWrapper",value:function(){var b=this.props.children,S=this.getTooltipEventType(),T=yi(b,cs),C={};T&&S==="axis"&&(T.props.trigger==="click"?C={onClick:this.handleClick}:C={onMouseEnter:this.handleMouseEnter,onDoubleClick:this.handleDoubleClick,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,onTouchMove:this.handleTouchMove,onTouchStart:this.handleTouchStart,onTouchEnd:this.handleTouchEnd,onContextMenu:this.handleContextMenu});var A=Qb(this.props,this.handleOuterEvent);return fe(fe({},A),C)}},{key:"addListener",value:function(){HA.on(UA,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){HA.removeListener(UA,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(b,S,T){for(var C=this.state.formattedGraphicalItems,A=0,P=C.length;As>=80?"#22c55e":s>=60?"#f59e0b":"#ef4444")(t),a=2*Math.PI*45,o=t/100*a;return g.jsx("div",{className:"flex flex-col items-center",children:g.jsxs("svg",{width:"140",height:"140",viewBox:"0 0 100 100",children:[g.jsx("circle",{cx:"50",cy:"50",r:"45",fill:"none",stroke:"#1e2a3a",strokeWidth:"8"}),g.jsx("circle",{cx:"50",cy:"50",r:"45",fill:"none",stroke:i,strokeWidth:"8",strokeLinecap:"round",strokeDasharray:a,strokeDashoffset:a-o,transform:"rotate(-90 50 50)",className:"transition-all duration-500"}),g.jsx("text",{x:"50",y:"46",textAnchor:"middle",className:"fill-slate-100 font-mono text-2xl font-bold",style:{fontSize:"24px"},children:t.toFixed(1)}),g.jsx("text",{x:"50",y:"62",textAnchor:"middle",className:"fill-slate-400 text-xs",style:{fontSize:"10px"},children:r})]})})}function Mx({label:e,value:t}){const r=n=>n>=80?"bg-green-500":n>=60?"bg-amber-500":"bg-red-500";return g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsx("div",{className:"w-24 text-xs text-slate-400 truncate",children:e}),g.jsx("div",{className:"flex-1 h-2 bg-border rounded-full overflow-hidden",children:g.jsx("div",{className:`h-full ${r(t)} transition-all duration-300`,style:{width:`${t}%`}})}),g.jsx("div",{className:"w-12 text-right text-xs font-mono text-slate-300",children:t.toFixed(1)})]})}function dNe({alert:e}){const r=(i=>{switch(i.toLowerCase()){case"critical":case"emergency":case"immediate":return{bg:"bg-red-500/10",border:"border-red-500",icon:su,iconColor:"text-red-500"};case"warning":case"priority":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Bs,iconColor:"text-amber-500"};case"routine":default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:ES,iconColor:"text-blue-500"}}})(e.severity),n=r.icon;return g.jsxs("div",{className:`p-3 rounded-lg ${r.bg} border-l-2 ${r.border} flex items-start gap-3`,children:[g.jsx(n,{size:16,className:r.iconColor}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsx("div",{className:"text-sm text-slate-200",children:e.message}),g.jsx("div",{className:"text-xs text-slate-500 mt-1",children:e.timestamp||"Just now"})]})]})}function vNe({source:e}){const t=()=>e.is_loaded?e.last_error?"bg-amber-500":"bg-green-500":"bg-red-500";return g.jsxs("div",{className:"flex items-center gap-3 p-3 rounded-lg bg-bg-hover",children:[g.jsx("div",{className:`w-2 h-2 rounded-full ${t()}`}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsx("div",{className:"text-sm text-slate-200 truncate",children:e.name}),g.jsxs("div",{className:"text-xs text-slate-500",children:[e.node_count," nodes · ",e.type]})]})]})}function Px({icon:e,label:t,value:r,subvalue:n}){return g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4",children:[g.jsxs("div",{className:"flex items-center gap-2 text-slate-400 mb-2",children:[g.jsx(e,{size:14}),g.jsx("span",{className:"text-xs",children:t})]}),g.jsx("div",{className:"font-mono text-xl text-slate-100",children:r}),n&&g.jsx("div",{className:"text-xs text-slate-500 mt-1",children:n})]})}function YA({label:e,value:t}){const r=()=>t===0?"bg-green-500/20 text-green-400 border-green-500/50":t<=2?"bg-amber-500/20 text-amber-400 border-amber-500/50":"bg-red-500/20 text-red-400 border-red-500/50";return g.jsxs("span",{className:`px-2 py-1 rounded text-xs font-mono font-medium border ${r()}`,children:[e,t]})}function gF({label:e,value:t,unit:r,getColor:n}){const i=t!==void 0?n(t):"text-slate-400";return g.jsxs("div",{className:"text-center",children:[g.jsx("div",{className:"text-xs text-slate-500 mb-1",children:e}),g.jsx("div",{className:`font-mono text-3xl font-bold ${i}`,children:(t==null?void 0:t.toFixed(0))??"—"}),r&&g.jsx("div",{className:"text-xs text-slate-500",children:r})]})}function pNe({history:e}){var a;const t=H.useMemo(()=>!e||e.length===0?[]:e.slice(-16).map((o,s)=>({idx:s,value:o.value,time:o.time})),[e]);if(t.length===0)return null;const r=Math.max(...t.map(o=>o.value),5),n=((a=t[t.length-1])==null?void 0:a.value)??0,i=()=>r>5?"kpGradientRed":r>3?"kpGradientAmber":"kpGradientGreen";return g.jsxs("div",{className:"h-20 w-full",children:[g.jsx(pX,{width:"100%",height:"100%",children:g.jsxs(fNe,{data:t,margin:{top:5,right:5,bottom:5,left:5},children:[g.jsxs("defs",{children:[g.jsxs("linearGradient",{id:"kpGradientGreen",x1:"0",y1:"0",x2:"0",y2:"1",children:[g.jsx("stop",{offset:"0%",stopColor:"#22c55e",stopOpacity:.4}),g.jsx("stop",{offset:"100%",stopColor:"#22c55e",stopOpacity:.05})]}),g.jsxs("linearGradient",{id:"kpGradientAmber",x1:"0",y1:"0",x2:"0",y2:"1",children:[g.jsx("stop",{offset:"0%",stopColor:"#f59e0b",stopOpacity:.4}),g.jsx("stop",{offset:"100%",stopColor:"#f59e0b",stopOpacity:.05})]}),g.jsxs("linearGradient",{id:"kpGradientRed",x1:"0",y1:"0",x2:"0",y2:"1",children:[g.jsx("stop",{offset:"0%",stopColor:"#ef4444",stopOpacity:.4}),g.jsx("stop",{offset:"100%",stopColor:"#ef4444",stopOpacity:.05})]})]}),g.jsx(Dv,{domain:[0,Math.ceil(r)],hide:!0}),g.jsx(Ov,{dataKey:"idx",hide:!0}),g.jsx(ly,{y:3,stroke:"#f59e0b",strokeDasharray:"3 3",strokeOpacity:.5}),g.jsx(ly,{y:5,stroke:"#ef4444",strokeDasharray:"3 3",strokeOpacity:.5}),g.jsx(Su,{type:"monotone",dataKey:"value",stroke:n>5?"#ef4444":n>3?"#f59e0b":"#22c55e",fill:`url(#${i()})`,strokeWidth:2})]})}),g.jsxs("div",{className:"flex justify-between text-xs text-slate-600 px-1",children:[g.jsx("span",{children:"48h ago"}),g.jsx("span",{children:"now"})]})]})}function gNe({profile:e}){const t=H.useMemo(()=>!e||e.length===0?[]:[...e].sort((r,n)=>r.height_m-n.height_m).map(r=>({height:r.height_m,M:r.M})),[e]);return t.length===0?null:g.jsxs("div",{className:"h-24 w-full",children:[g.jsx(pX,{width:"100%",height:"100%",children:g.jsxs(cNe,{data:t,margin:{top:5,right:10,bottom:5,left:5},children:[g.jsx(Ov,{dataKey:"M",type:"number",domain:["dataMin - 20","dataMax + 20"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"}}),g.jsx(Dv,{dataKey:"height",type:"number",domain:[0,"dataMax"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"},tickFormatter:r=>`${(r/1e3).toFixed(1)}k`}),g.jsx(o0,{type:"monotone",dataKey:"M",stroke:"#3b82f6",strokeWidth:2,dot:{r:3,fill:"#3b82f6"}})]})}),g.jsx("div",{className:"text-center text-xs text-slate-600",children:"M-units vs Height (km)"})]})}function mNe({swpc:e,ducting:t}){const r=a=>a>=120?"text-green-400":a>=80?"text-amber-400":"text-red-400",n=a=>a<=3?"text-green-400":a<=5?"text-amber-400":"text-red-400",i=a=>{if(!a)return null;const o={normal:"bg-green-500/20 text-green-400 border-green-500/50",super_refraction:"bg-amber-500/20 text-amber-400 border-amber-500/50",surface_duct:"bg-blue-500/20 text-blue-400 border-blue-500/50",elevated_duct:"bg-blue-500/20 text-blue-400 border-blue-500/50"},s={normal:"Normal",super_refraction:"Super Refraction",surface_duct:"Surface Duct",elevated_duct:"Elevated Duct"};return g.jsx("span",{className:`px-2 py-1 rounded text-xs font-medium border ${o[a]||o.normal}`,children:s[a]||a})};return g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4 flex flex-col h-full",children:[g.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[g.jsx(km,{size:14}),g.jsx("span",{title:"R (Radio Blackouts), S (Solar Radiation Storms), G (Geomagnetic Storms) — NOAA SWPC scales. Kp 3 = quiet baseline, Kp >= 5 = aurora visible at mid-latitudes and HF degraded. See Reference → Solar & Geomagnetic.",children:"RF Propagation"})]}),g.jsxs("div",{className:"flex justify-around mb-4",children:[g.jsx(gF,{label:"SFI",value:e==null?void 0:e.sfi,getColor:r}),g.jsx("div",{className:"w-px bg-border"}),g.jsx(gF,{label:"Kp",value:e==null?void 0:e.kp_current,getColor:n})]}),g.jsxs("div",{className:"flex justify-center gap-2 mb-4",children:[g.jsx(YA,{label:"R",value:(e==null?void 0:e.r_scale)??0}),g.jsx(YA,{label:"S",value:(e==null?void 0:e.s_scale)??0}),g.jsx(YA,{label:"G",value:(e==null?void 0:e.g_scale)??0})]}),(e==null?void 0:e.kp_history)&&e.kp_history.length>0&&g.jsxs("div",{className:"mb-4",children:[g.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Kp Trend (48h)"}),g.jsx(pNe,{history:e.kp_history})]}),g.jsx("div",{className:"border-t border-border my-3"}),g.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[g.jsx(lu,{size:14,className:"text-slate-400"}),g.jsx("span",{className:"text-xs text-slate-500",children:"Tropospheric"}),i(t==null?void 0:t.condition)]}),(t==null?void 0:t.min_gradient)!==void 0&&g.jsxs("div",{className:"text-xs text-slate-400 font-mono mb-2",children:["dM/dz: ",t.min_gradient.toFixed(1)," M-units/km"]}),(t==null?void 0:t.profile)&&t.profile.length>0&&g.jsx(gNe,{profile:t.profile}),(e==null?void 0:e.active_warnings)&&e.active_warnings.length>0&&g.jsxs("div",{className:"mt-auto pt-3 border-t border-border",children:[g.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"SWPC Alerts"}),g.jsx("div",{className:"flex flex-wrap gap-1",children:e.active_warnings.slice(0,3).map((a,o)=>g.jsx("span",{className:"px-2 py-0.5 rounded text-xs bg-amber-500/20 text-amber-400 border border-amber-500/30 truncate max-w-full",children:a.replace("Space Weather Message Code: ","")},o))})]})]})}const yNe={nws:{icon:lu,color:"text-blue-400",label:"NWS"},swpc:{icon:HZ,color:"text-yellow-400",label:"SWPC"},ducting:{icon:Ya,color:"text-cyan-400",label:"Tropo"},nifc:{icon:IS,color:"text-orange-400",label:"NIFC"},firms:{icon:NS,color:"text-red-400",label:"FIRMS"},avalanche:{icon:OS,color:"text-slate-300",label:"Avy"},usgs:{icon:LS,color:"text-blue-300",label:"USGS"},traffic:{icon:kS,color:"text-purple-400",label:"Traffic"},roads:{icon:RZ,color:"text-amber-400",label:"511"}},mF={routine:"bg-blue-500/20 text-blue-400 border-blue-500/30",priority:"bg-amber-500/20 text-amber-400 border-amber-500/30",immediate:"bg-red-600/20 text-red-300 border-red-600/30",info:"bg-blue-500/20 text-blue-400 border-blue-500/30",advisory:"bg-blue-500/20 text-blue-400 border-blue-500/30",moderate:"bg-amber-500/20 text-amber-400 border-amber-500/30",watch:"bg-amber-500/20 text-amber-400 border-amber-500/30",warning:"bg-amber-500/20 text-amber-400 border-amber-500/30",severe:"bg-red-500/20 text-red-400 border-red-500/30",extreme:"bg-red-600/20 text-red-300 border-red-600/30",critical:"bg-red-600/20 text-red-300 border-red-600/30",emergency:"bg-red-700/20 text-red-200 border-red-700/30"};function xNe({event:e,isLocal:t}){var f;const r=yNe[e.source]||{icon:ES,color:"text-slate-400",label:e.source},n=r.icon,i=mF[(f=e.severity)==null?void 0:f.toLowerCase()]||mF.info,a=h=>{const d=new Date(h*1e3),m=new Date().getTime()-d.getTime(),y=Math.floor(m/6e4);return y<1?"just now":y<60?`${y}m ago`:y<1440?`${Math.floor(y/60)}h ago`:d.toLocaleDateString(void 0,{month:"short",day:"numeric"})},o=e.event_type,s=e.area_desc,l=e.description;let u=e.headline;if(o&&s){const h=s.replace(/ County/g,"").split(";")[0];u=`${o} — ${h}`}else o&&(u=o);const c=l?l.split(". ")[0]:null;return g.jsxs("div",{className:`flex items-start gap-2 py-2 border-b border-border/50 last:border-0 ${t?"border-l-2 border-l-blue-500 pl-2 -ml-2":""}`,children:[g.jsx(n,{size:14,className:`mt-0.5 flex-shrink-0 ${r.color}`}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[g.jsx("span",{className:`px-1.5 py-0.5 rounded text-xs border ${i}`,children:e.severity||"info"}),t&&g.jsx("span",{className:"px-1.5 py-0.5 rounded text-xs bg-blue-500/20 text-blue-400 border border-blue-500/30",title:"LOCAL: event coordinates fall inside the mesh's monitoring area (per the adapter's bbox config on Environment) — operators in this region are directly affected.",children:"LOCAL"}),g.jsx("span",{className:"text-xs text-slate-500",children:r.label}),g.jsx("span",{className:"text-xs text-slate-600 ml-auto",children:a(e.fetched_at)})]}),g.jsx("div",{className:`text-sm truncate ${t?"text-slate-100":"text-slate-300"}`,children:u}),c&&g.jsx("div",{className:"text-xs text-slate-500 truncate mt-0.5",children:c})]})]})}function _Ne({events:e,envStatus:t}){const r={immediate:0,priority:1,routine:2},n=H.useMemo(()=>{const a=new Set;return e.filter(s=>s.event_id?a.has(s.event_id)?!1:(a.add(s.event_id),!0):!0).sort((s,l)=>{var d,v;const u=s.is_local?1:0,c=l.is_local?1:0;if(u!==c)return c-u;const f=r[((d=s.severity)==null?void 0:d.toLowerCase())||"routine"]??2,h=r[((v=l.severity)==null?void 0:v.toLowerCase())||"routine"]??2;return f!==h?f-h:(l.fetched_at||0)-(s.fetched_at||0)})},[e]),i=H.useMemo(()=>{if(!(t!=null&&t.feeds))return null;const a=t.feeds.length,o=t.feeds.filter(c=>c.is_loaded&&!c.last_error).length,s=t.feeds.filter(c=>c.last_error).map(c=>c.source),l=Math.max(...t.feeds.map(c=>c.last_fetch||0)),u=l?Math.floor(Date.now()/1e3-l):null;return{total:a,active:o,errors:s,secAgo:u}},[t]);return g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4 flex flex-col h-full",children:[g.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-3 flex items-center gap-2",children:[g.jsx(gv,{size:14}),"Live Event Feed"]}),n.length>0?g.jsx("div",{className:"flex-1 overflow-y-auto max-h-80 pr-1 -mr-1",children:n.map((a,o)=>g.jsx(xNe,{event:a,isLocal:a.is_local},a.event_id||o))}):g.jsx("div",{className:"flex-1 flex items-center justify-center",children:g.jsxs("div",{className:"text-center py-8",children:[g.jsx(oD,{size:24,className:"text-green-500 mx-auto mb-2"}),g.jsx("div",{className:"text-slate-400",children:"No active events"}),g.jsx("div",{className:"text-xs text-slate-500",children:"All clear"})]})}),i&&g.jsxs("div",{className:`text-xs mt-3 pt-3 border-t border-border ${i.errors.length>0?"text-amber-400":"text-slate-500"}`,children:[i.active," of ",i.total," feeds active",i.secAgo!==null&&` · Last update ${i.secAgo}s ago`,i.errors.length>0&&g.jsxs("span",{className:"text-amber-400",children:[" · ",i.errors.join(", "),": error"]})]})]})}function bNe(){var S,T,C,A,P;const[e,t]=H.useState(null),[r,n]=H.useState([]),[i,a]=H.useState([]),[o,s]=H.useState(null),[l,u]=H.useState([]),[c,f]=H.useState(null),[h,d]=H.useState(null),[v,m]=H.useState(!0),[y,x]=H.useState(null),{lastHealth:_,lastMessage:b}=hD();return H.useEffect(()=>{Promise.all([Ace(),kce(),YZ(),XZ(),qZ().catch(()=>[]),Ice().catch(()=>null),Ece().catch(()=>null)]).then(([I,k,O,D,N,z,V])=>{t(I),n(k),a(O),s(D),u(N),f(z),d(V),m(!1),document.title="Dashboard — MeshAI"}).catch(I=>{x(I.message),m(!1),document.title="Dashboard — MeshAI"})},[]),H.useEffect(()=>{_&&t(_)},[_]),H.useEffect(()=>{(b==null?void 0:b.type)==="env_update"&&b.event&&u(I=>{const k=b.event,O=I.filter(D=>D.event_id!==k.event_id);return[k,...O].slice(0,100)})},[b]),v?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-slate-400",children:"Loading..."})}):y?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsxs("div",{className:"text-red-400",children:["Error: ",y]})}):g.jsxs("div",{className:"space-y-6",children:[g.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[g.jsx("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:"Mesh Health"}),e&&g.jsxs(g.Fragment,{children:[g.jsx(hNe,{health:e}),g.jsxs("div",{className:"mt-6 space-y-3",children:[g.jsx(Mx,{label:"Infrastructure",value:((S=e.pillars)==null?void 0:S.infrastructure)??0}),g.jsx(Mx,{label:"Utilization",value:((T=e.pillars)==null?void 0:T.utilization)??0}),g.jsx(Mx,{label:"Behavior",value:((C=e.pillars)==null?void 0:C.behavior)??0}),g.jsx(Mx,{label:"Power",value:((A=e.pillars)==null?void 0:A.power)??0})]})]})]}),g.jsxs("div",{className:"lg:col-span-2 space-y-6",children:[g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[g.jsx("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:"Active Alerts"}),i.length>0?g.jsx("div",{className:"space-y-3 max-h-48 overflow-y-auto",children:i.map((I,k)=>g.jsx(dNe,{alert:I},k))}):g.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[g.jsx(oD,{size:16,className:"text-green-500"}),g.jsx("span",{children:"No active alerts"})]})]}),g.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4",children:[g.jsx(Px,{icon:Ya,label:"Nodes Online",value:(e==null?void 0:e.total_nodes)||0,subvalue:`${(e==null?void 0:e.unlocated_count)||0} unlocated`}),g.jsx(Px,{icon:BZ,label:"Infrastructure",value:`${(e==null?void 0:e.infra_online)||0}/${(e==null?void 0:e.infra_total)||0}`,subvalue:(e==null?void 0:e.infra_online)===(e==null?void 0:e.infra_total)?"All online":"Some offline"}),g.jsx(Px,{icon:gv,label:"Utilization",value:`${((P=e==null?void 0:e.util_percent)==null?void 0:P.toFixed(1))||0}%`,subvalue:`${(e==null?void 0:e.flagged_nodes)||0} flagged`}),g.jsx(Px,{icon:mv,label:"Regions",value:(e==null?void 0:e.total_regions)||0,subvalue:`${(e==null?void 0:e.battery_warnings)||0} battery warnings`})]})]})]}),g.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[g.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:["Mesh Sources (",r.length,")"]}),r.length>0?g.jsx("div",{className:"space-y-2",children:r.map((I,k)=>g.jsx(vNe,{source:I},k))}):g.jsx("div",{className:"text-slate-500 py-4",children:"No sources configured"})]}),g.jsx(mNe,{swpc:c,ducting:h}),g.jsx(_Ne,{events:l,envStatus:o})]})]})}/*! ***************************************************************************** Copyright (c) Microsoft Corporation. Permission to use, copy, modify, and/or distribute this software for any @@ -475,8 +485,8 @@ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */var ZL=function(e,t){return ZL=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])},ZL(e,t)};function q(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");ZL(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var Wg=function(){return Wg=Object.assign||function(t){for(var r,n=1,i=arguments.length;n0&&a[a.length-1])&&(u[0]===6||u[0]===2)){r=0;continue}if(u[0]===3&&(!a||u[1]>a[0]&&u[1]"u"&&typeof self<"u"?nt.worker=!0:!nt.hasGlobalWindow||"Deno"in window||typeof navigator<"u"&&typeof navigator.userAgent=="string"&&navigator.userAgent.indexOf("Node.js")>-1?(nt.node=!0,nt.svgSupported=!0):SNe(navigator.userAgent,nt);function SNe(e,t){var r=t.browser,n=e.match(/Firefox\/([\d.]+)/),i=e.match(/MSIE\s([\d.]+)/)||e.match(/Trident\/.+?rv:(([\d.]+))/),a=e.match(/Edge?\/([\d.]+)/),o=/micromessenger/i.test(e);n&&(r.firefox=!0,r.version=n[1]),i&&(r.ie=!0,r.version=i[1]),a&&(r.edge=!0,r.version=a[1],r.newEdge=+a[1].split(".")[0]>18),o&&(r.weChat=!0),t.svgSupported=typeof SVGRect<"u",t.touchEventsSupported="ontouchstart"in window&&!r.ie&&!r.edge,t.pointerEventsSupported="onpointerdown"in window&&(r.edge||r.ie&&+r.version>=11);var s=t.domSupported=typeof document<"u";if(s){var l=document.documentElement.style;t.transform3dSupported=(r.ie&&"transition"in l||r.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in l)&&!("OTransition"in l),t.transformSupported=t.transform3dSupported||r.ie&&+r.version>=9}}var fN=12,kK="sans-serif",Vs=fN+"px "+kK,TNe=20,CNe=100,ANe="007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";function MNe(e){var t={};if(typeof JSON>"u")return t;for(var r=0;r=0)s=o*r.length;else for(var l=0;l>1)%2;s.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",n[l]+":0",i[u]+":0",n[1-l]+":auto",i[1-u]+":auto",""].join("!important;"),e.appendChild(o),r.push(o)}return t.clearMarkers=function(){R(r,function(c){c.parentNode&&c.parentNode.removeChild(c)})},r}function KNe(e,t,r){for(var n=r?"invTrans":"trans",i=t[n],a=t.srcCoords,o=[],s=[],l=!0,u=0;u<4;u++){var c=e[u].getBoundingClientRect(),f=2*u,h=c.left,d=c.top;o.push(h,d),l=l&&a&&h===a[f]&&d===a[f+1],s.push(e[u].offsetLeft,e[u].offsetTop)}return l&&i?i:(t.srcCoords=o,t[n]=r?xF(s,o):xF(o,s))}function zK(e){return e.nodeName.toUpperCase()==="CANVAS"}var JNe=/([&<>"'])/g,QNe={"&":"&","<":"<",">":">",'"':""","'":"'"};function In(e){return e==null?"":(e+"").replace(JNe,function(t,r){return QNe[r]})}var eje=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,qA=[],tje=nt.browser.firefox&&+nt.browser.version.split(".")[0]<39;function JL(e,t,r,n){return r=r||{},n?_F(e,t,r):tje&&t.layerX!=null&&t.layerX!==t.offsetX?(r.zrX=t.layerX,r.zrY=t.layerY):t.offsetX!=null?(r.zrX=t.offsetX,r.zrY=t.offsetY):_F(e,t,r),r}function _F(e,t,r){if(nt.domSupported&&e.getBoundingClientRect){var n=t.clientX,i=t.clientY;if(zK(e)){var a=e.getBoundingClientRect();r.zrX=n-a.left,r.zrY=i-a.top;return}else if(KL(qA,e,n,i)){r.zrX=qA[0],r.zrY=qA[1];return}}r.zrX=r.zrY=0}function yN(e){return e||window.event}function Zi(e,t,r){if(t=yN(t),t.zrX!=null)return t;var n=t.type,i=n&&n.indexOf("touch")>=0;if(i){var o=n!=="touchend"?t.targetTouches[0]:t.changedTouches[0];o&&JL(e,o,t,r)}else{JL(e,t,t,r);var a=rje(t);t.zrDelta=a?a/120:-(t.detail||0)/3}var s=t.button;return t.which==null&&s!==void 0&&eje.test(t.type)&&(t.which=s&1?1:s&2?3:s&4?2:0),t}function rje(e){var t=e.wheelDelta;if(t)return t;var r=e.deltaX,n=e.deltaY;if(r==null||n==null)return t;var i=Math.abs(n!==0?n:r),a=n>0?-1:n<0?1:r>0?-1:1;return 3*i*a}function QL(e,t,r,n){e.addEventListener(t,r,n)}function nje(e,t,r,n){e.removeEventListener(t,r,n)}var Gs=function(e){e.preventDefault(),e.stopPropagation(),e.cancelBubble=!0};function bF(e){return e.which===2||e.which===3}var ije=function(){function e(){this._track=[]}return e.prototype.recognize=function(t,r,n){return this._doTrack(t,r,n),this._recognize(t)},e.prototype.clear=function(){return this._track.length=0,this},e.prototype._doTrack=function(t,r,n){var i=t.touches;if(i){for(var a={points:[],touches:[],target:r,event:t},o=0,s=i.length;o1&&n&&n.length>1){var a=wF(n)/wF(i);!isFinite(a)&&(a=1),t.pinchScale=a;var o=aje(n);return t.pinchX=o[0],t.pinchY=o[1],{type:"pinch",target:e[0].target,event:t}}}}};function Wr(){return[1,0,0,1,0,0]}function c0(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e}function f0(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function Ga(e,t,r){var n=t[0]*r[0]+t[2]*r[1],i=t[1]*r[0]+t[3]*r[1],a=t[0]*r[2]+t[2]*r[3],o=t[1]*r[2]+t[3]*r[3],s=t[0]*r[4]+t[2]*r[5]+t[4],l=t[1]*r[4]+t[3]*r[5]+t[5];return e[0]=n,e[1]=i,e[2]=a,e[3]=o,e[4]=s,e[5]=l,e}function qa(e,t,r){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4]+r[0],e[5]=t[5]+r[1],e}function el(e,t,r,n){n===void 0&&(n=[0,0]);var i=t[0],a=t[2],o=t[4],s=t[1],l=t[3],u=t[5],c=Math.sin(r),f=Math.cos(r);return e[0]=i*f+s*c,e[1]=-i*c+s*f,e[2]=a*f+l*c,e[3]=-a*c+f*l,e[4]=f*(o-n[0])+c*(u-n[1])+n[0],e[5]=f*(u-n[1])-c*(o-n[0])+n[1],e}function IT(e,t,r){var n=r[0],i=r[1];return e[0]=t[0]*n,e[1]=t[1]*i,e[2]=t[2]*n,e[3]=t[3]*i,e[4]=t[4]*n,e[5]=t[5]*i,e}function va(e,t){var r=t[0],n=t[2],i=t[4],a=t[1],o=t[3],s=t[5],l=r*o-a*n;return l?(l=1/l,e[0]=o*l,e[1]=-a*l,e[2]=-n*l,e[3]=r*l,e[4]=(n*s-o*i)*l,e[5]=(a*i-r*s)*l,e):null}function $K(e){var t=Wr();return f0(t,e),t}const oje=Object.freeze(Object.defineProperty({__proto__:null,clone:$K,copy:f0,create:Wr,identity:c0,invert:va,mul:Ga,rotate:el,scale:IT,translate:qa},Symbol.toStringTag,{value:"Module"}));var Ie=function(){function e(t,r){this.x=t||0,this.y=r||0}return e.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this},e.prototype.clone=function(){return new e(this.x,this.y)},e.prototype.set=function(t,r){return this.x=t,this.y=r,this},e.prototype.equal=function(t){return t.x===this.x&&t.y===this.y},e.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this},e.prototype.scale=function(t){this.x*=t,this.y*=t},e.prototype.scaleAndAdd=function(t,r){this.x+=t.x*r,this.y+=t.y*r},e.prototype.sub=function(t){return this.x-=t.x,this.y-=t.y,this},e.prototype.dot=function(t){return this.x*t.x+this.y*t.y},e.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},e.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},e.prototype.normalize=function(){var t=this.len();return this.x/=t,this.y/=t,this},e.prototype.distance=function(t){var r=this.x-t.x,n=this.y-t.y;return Math.sqrt(r*r+n*n)},e.prototype.distanceSquare=function(t){var r=this.x-t.x,n=this.y-t.y;return r*r+n*n},e.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},e.prototype.transform=function(t){if(t){var r=this.x,n=this.y;return this.x=t[0]*r+t[2]*n+t[4],this.y=t[1]*r+t[3]*n+t[5],this}},e.prototype.toArray=function(t){return t[0]=this.x,t[1]=this.y,t},e.prototype.fromArray=function(t){this.x=t[0],this.y=t[1]},e.set=function(t,r,n){t.x=r,t.y=n},e.copy=function(t,r){t.x=r.x,t.y=r.y},e.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y)},e.lenSquare=function(t){return t.x*t.x+t.y*t.y},e.dot=function(t,r){return t.x*r.x+t.y*r.y},e.add=function(t,r,n){t.x=r.x+n.x,t.y=r.y+n.y},e.sub=function(t,r,n){t.x=r.x-n.x,t.y=r.y-n.y},e.scale=function(t,r,n){t.x=r.x*n,t.y=r.y*n},e.scaleAndAdd=function(t,r,n,i){t.x=r.x+n.x*i,t.y=r.y+n.y*i},e.lerp=function(t,r,n,i){var a=1-i;t.x=a*r.x+i*n.x,t.y=a*r.y+i*n.y},e}(),Ic=Math.min,Wh=Math.max,eI=Math.abs,SF=["x","y"],sje=["width","height"],ju=new Ie,Ru=new Ie,Bu=new Ie,zu=new Ie,_i=FK(),mg=_i.minTv,tI=_i.maxTv,Yg=[0,0],Oe=function(){function e(t,r,n,i){e.set(this,t,r,n,i)}return e.set=function(t,r,n,i,a){return i<0&&(r=r+i,i=-i),a<0&&(n=n+a,a=-a),t.x=r,t.y=n,t.width=i,t.height=a,t},e.prototype.union=function(t){var r=Ic(t.x,this.x),n=Ic(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=Wh(t.x+t.width,this.x+this.width)-r:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=Wh(t.y+t.height,this.y+this.height)-n:this.height=t.height,this.x=r,this.y=n},e.prototype.applyTransform=function(t){e.applyTransform(this,this,t)},e.prototype.calculateTransform=function(t){var r=this,n=t.width/r.width,i=t.height/r.height,a=Wr();return qa(a,a,[-r.x,-r.y]),IT(a,a,[n,i]),qa(a,a,[t.x,t.y]),a},e.prototype.intersect=function(t,r,n){return e.intersect(this,t,r,n)},e.intersect=function(t,r,n,i){n&&Ie.set(n,0,0);var a=i&&i.outIntersectRect||null,o=i&&i.clamp;if(a&&(a.x=a.y=a.width=a.height=NaN),!t||!r)return!1;t instanceof e||(t=e.set(lje,t.x,t.y,t.width,t.height)),r instanceof e||(r=e.set(uje,r.x,r.y,r.width,r.height));var s=!!n;_i.reset(i,s);var l=_i.touchThreshold,u=t.x+l,c=t.x+t.width-l,f=t.y+l,h=t.y+t.height-l,d=r.x+l,v=r.x+r.width-l,g=r.y+l,m=r.y+r.height-l;if(u>c||f>h||d>v||g>m)return!1;var x=!(c=t.x&&r<=t.x+t.width&&n>=t.y&&n<=t.y+t.height},e.prototype.contain=function(t,r){return e.contain(this,t,r)},e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height)},e.prototype.copy=function(t){e.copy(this,t)},e.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},e.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},e.prototype.isZero=function(){return this.width===0||this.height===0},e.create=function(t){return new e(t.x,t.y,t.width,t.height)},e.copy=function(t,r){return t.x=r.x,t.y=r.y,t.width=r.width,t.height=r.height,t},e.applyTransform=function(t,r,n){if(!n){t!==r&&e.copy(t,r);return}if(n[1]<1e-5&&n[1]>-1e-5&&n[2]<1e-5&&n[2]>-1e-5){var i=n[0],a=n[3],o=n[4],s=n[5];t.x=r.x*i+o,t.y=r.y*a+s,t.width=r.width*i,t.height=r.height*a,t.width<0&&(t.x+=t.width,t.width=-t.width),t.height<0&&(t.y+=t.height,t.height=-t.height);return}ju.x=Bu.x=r.x,ju.y=zu.y=r.y,Ru.x=zu.x=r.x+r.width,Ru.y=Bu.y=r.y+r.height,ju.transform(n),zu.transform(n),Ru.transform(n),Bu.transform(n),t.x=Ic(ju.x,Ru.x,Bu.x,zu.x),t.y=Ic(ju.y,Ru.y,Bu.y,zu.y);var l=Wh(ju.x,Ru.x,Bu.x,zu.x),u=Wh(ju.y,Ru.y,Bu.y,zu.y);t.width=l-t.x,t.height=u-t.y},e}(),lje=new Oe(0,0,0,0),uje=new Oe(0,0,0,0);function TF(e,t,r,n,i,a,o,s){var l=eI(t-r),u=eI(n-e),c=Ic(l,u),f=SF[i],h=SF[1-i],d=sje[i];t=u||!_i.bidirectional)&&(mg[f]=-u,mg[h]=0,_i.useDir&&_i.calcDirMTV())))}function FK(){var e=0,t=new Ie,r=new Ie,n={minTv:new Ie,maxTv:new Ie,useDir:!1,dirMinTv:new Ie,touchThreshold:0,bidirectional:!0,negativeSize:!1,reset:function(a,o){n.touchThreshold=0,a&&a.touchThreshold!=null&&(n.touchThreshold=Wh(0,a.touchThreshold)),n.negativeSize=!1,o&&(n.minTv.set(1/0,1/0),n.maxTv.set(0,0),n.useDir=!1,a&&a.direction!=null&&(n.useDir=!0,n.dirMinTv.copy(n.minTv),r.copy(n.minTv),e=a.direction,n.bidirectional=a.bidirectional==null||!!a.bidirectional,n.bidirectional||t.set(Math.cos(e),Math.sin(e))))},calcDirMTV:function(){var a=n.minTv,o=n.dirMinTv,s=a.y*a.y+a.x*a.x,l=Math.sin(e),u=Math.cos(e),c=l*a.y+u*a.x;if(i(c)){i(a.x)&&i(a.y)&&o.set(0,0);return}if(r.x=s*u/c,r.y=s*l/c,i(r.x)&&i(r.y)){o.set(0,0);return}(n.bidirectional||t.dot(r)>0)&&r.len()=0;f--){var h=a[f];h!==i&&!h.ignore&&!h.ignoreCoarsePointer&&(!h.parent||!h.parent.ignoreCoarsePointer)&&(JA.copy(h.getBoundingRect()),h.transform&&JA.applyTransform(h.transform),JA.intersect(c)&&s.push(h))}if(s.length)for(var d=4,v=Math.PI/12,g=Math.PI*2,m=0;m4)return;this._downPoint=null}this.dispatchToElement(a,e,t)}});function vje(e,t,r){if(e[e.rectHover?"rectContain":"contain"](t,r)){for(var n=e,i=void 0,a=!1;n;){if(n.ignoreClip&&(a=!0),!a){var o=n.getClipPath();if(o&&!o.contain(t,r))return!1}n.silent&&(i=!0);var s=n.__hostTarget;n=s?n.ignoreHostSilent?null:s:n.parent}return i?VK:!0}return!1}function CF(e,t,r,n,i){for(var a=e.length-1;a>=0;a--){var o=e[a],s=void 0;if(o!==i&&!o.ignore&&(s=vje(o,r,n))&&(!t.topTarget&&(t.topTarget=o),s!==VK)){t.target=o;break}}}function WK(e,t,r){var n=e.painter;return t<0||t>n.getWidth()||r<0||r>n.getHeight()}var HK=32,Dp=7;function pje(e){for(var t=0;e>=HK;)t|=e&1,e>>=1;return e+t}function AF(e,t,r,n){var i=t+1;if(i===r)return 1;if(n(e[i++],e[t])<0){for(;i=0;)i++;return i-t}function gje(e,t,r){for(r--;t>>1,i(a,e[l])<0?s=l:o=l+1;var u=n-o;switch(u){case 3:e[o+3]=e[o+2];case 2:e[o+2]=e[o+1];case 1:e[o+1]=e[o];break;default:for(;u>0;)e[o+u]=e[o+u-1],u--}e[o]=a}}function QA(e,t,r,n,i,a){var o=0,s=0,l=1;if(a(e,t[r+i])>0){for(s=n-i;l0;)o=l,l=(l<<1)+1,l<=0&&(l=s);l>s&&(l=s),o+=i,l+=i}else{for(s=i+1;ls&&(l=s);var u=o;o=i-l,l=i-u}for(o++;o>>1);a(e,t[r+c])>0?o=c+1:l=c}return l}function e2(e,t,r,n,i,a){var o=0,s=0,l=1;if(a(e,t[r+i])<0){for(s=i+1;ls&&(l=s);var u=o;o=i-l,l=i-u}else{for(s=n-i;l=0;)o=l,l=(l<<1)+1,l<=0&&(l=s);l>s&&(l=s),o+=i,l+=i}for(o++;o>>1);a(e,t[r+c])<0?l=c:o=c+1}return l}function mje(e,t){var r=Dp,n,i,a=0,o=[];n=[],i=[];function s(d,v){n[a]=d,i[a]=v,a+=1}function l(){for(;a>1;){var d=a-2;if(d>=1&&i[d-1]<=i[d]+i[d+1]||d>=2&&i[d-2]<=i[d]+i[d-1])i[d-1]i[d+1])break;c(d)}}function u(){for(;a>1;){var d=a-2;d>0&&i[d-1]=Dp||A>=Dp);if(P)break;T<0&&(T=0),T+=2}if(r=T,r<1&&(r=1),v===1){for(x=0;x=0;x--)e[C+x]=e[T+x];e[S]=o[b];return}for(var A=r;;){var P=0,I=0,k=!1;do if(t(o[b],e[_])<0){if(e[S--]=e[_--],P++,I=0,--v===0){k=!0;break}}else if(e[S--]=o[b--],I++,P=0,--m===1){k=!0;break}while((P|I)=0;x--)e[C+x]=e[T+x];if(v===0){k=!0;break}}if(e[S--]=o[b--],--m===1){k=!0;break}if(I=m-QA(e[_],o,0,m,m-1,t),I!==0){for(S-=I,b-=I,m-=I,C=S+1,T=b+1,x=0;x=Dp||I>=Dp);if(k)break;A<0&&(A=0),A+=2}if(r=A,r<1&&(r=1),m===1){for(S-=v,_-=v,C=S+1,T=_+1,x=v-1;x>=0;x--)e[C+x]=e[T+x];e[S]=o[b]}else{if(m===0)throw new Error;for(T=S-(m-1),x=0;xs&&(l=s),MF(e,r,r+l,r+a,t),a=l}o.pushRun(r,a),o.mergeRuns(),i-=a,r+=a}while(i!==0);o.forceMergeRuns()}}var wi=1,yg=2,Ch=4,PF=!1;function t2(){PF||(PF=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function kF(e,t){return e.zlevel===t.zlevel?e.z===t.z?e.z2-t.z2:e.z-t.z:e.zlevel-t.zlevel}var yje=function(){function e(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=kF}return e.prototype.traverse=function(t,r){for(var n=0;n=0&&this._roots.splice(i,1)},e.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},e.prototype.getRoots=function(){return this._roots},e.prototype.dispose=function(){this._displayList=null,this._roots=null},e}(),aw;aw=nt.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(e){return setTimeout(e,16)};var Xg={linear:function(e){return e},quadraticIn:function(e){return e*e},quadraticOut:function(e){return e*(2-e)},quadraticInOut:function(e){return(e*=2)<1?.5*e*e:-.5*(--e*(e-2)-1)},cubicIn:function(e){return e*e*e},cubicOut:function(e){return--e*e*e+1},cubicInOut:function(e){return(e*=2)<1?.5*e*e*e:.5*((e-=2)*e*e+2)},quarticIn:function(e){return e*e*e*e},quarticOut:function(e){return 1- --e*e*e*e},quarticInOut:function(e){return(e*=2)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2)},quinticIn:function(e){return e*e*e*e*e},quinticOut:function(e){return--e*e*e*e*e+1},quinticInOut:function(e){return(e*=2)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2)},sinusoidalIn:function(e){return 1-Math.cos(e*Math.PI/2)},sinusoidalOut:function(e){return Math.sin(e*Math.PI/2)},sinusoidalInOut:function(e){return .5*(1-Math.cos(Math.PI*e))},exponentialIn:function(e){return e===0?0:Math.pow(1024,e-1)},exponentialOut:function(e){return e===1?1:1-Math.pow(2,-10*e)},exponentialInOut:function(e){return e===0?0:e===1?1:(e*=2)<1?.5*Math.pow(1024,e-1):.5*(-Math.pow(2,-10*(e-1))+2)},circularIn:function(e){return 1-Math.sqrt(1-e*e)},circularOut:function(e){return Math.sqrt(1- --e*e)},circularInOut:function(e){return(e*=2)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1)},elasticIn:function(e){var t,r=.1,n=.4;return e===0?0:e===1?1:(!r||r<1?(r=1,t=n/4):t=n*Math.asin(1/r)/(2*Math.PI),-(r*Math.pow(2,10*(e-=1))*Math.sin((e-t)*(2*Math.PI)/n)))},elasticOut:function(e){var t,r=.1,n=.4;return e===0?0:e===1?1:(!r||r<1?(r=1,t=n/4):t=n*Math.asin(1/r)/(2*Math.PI),r*Math.pow(2,-10*e)*Math.sin((e-t)*(2*Math.PI)/n)+1)},elasticInOut:function(e){var t,r=.1,n=.4;return e===0?0:e===1?1:(!r||r<1?(r=1,t=n/4):t=n*Math.asin(1/r)/(2*Math.PI),(e*=2)<1?-.5*(r*Math.pow(2,10*(e-=1))*Math.sin((e-t)*(2*Math.PI)/n)):r*Math.pow(2,-10*(e-=1))*Math.sin((e-t)*(2*Math.PI)/n)*.5+1)},backIn:function(e){var t=1.70158;return e*e*((t+1)*e-t)},backOut:function(e){var t=1.70158;return--e*e*((t+1)*e+t)+1},backInOut:function(e){var t=2.5949095;return(e*=2)<1?.5*(e*e*((t+1)*e-t)):.5*((e-=2)*e*((t+1)*e+t)+2)},bounceIn:function(e){return 1-Xg.bounceOut(1-e)},bounceOut:function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375},bounceInOut:function(e){return e<.5?Xg.bounceIn(e*2)*.5:Xg.bounceOut(e*2-1)*.5+.5}},Lx=Math.pow,ql=Math.sqrt,ow=1e-8,UK=1e-4,LF=ql(3),Ix=1/3,_o=Cu(),Qi=Cu(),cd=Cu();function El(e){return e>-ow&&eow||e<-ow}function $r(e,t,r,n,i){var a=1-i;return a*a*(a*e+3*i*t)+i*i*(i*n+3*a*r)}function IF(e,t,r,n,i){var a=1-i;return 3*(((t-e)*a+2*(r-t)*i)*a+(n-r)*i*i)}function sw(e,t,r,n,i,a){var o=n+3*(t-r)-e,s=3*(r-t*2+e),l=3*(t-e),u=e-i,c=s*s-3*o*l,f=s*l-9*o*u,h=l*l-3*s*u,d=0;if(El(c)&&El(f))if(El(s))a[0]=0;else{var v=-l/s;v>=0&&v<=1&&(a[d++]=v)}else{var g=f*f-4*c*h;if(El(g)){var m=f/c,v=-s/o+m,x=-m/2;v>=0&&v<=1&&(a[d++]=v),x>=0&&x<=1&&(a[d++]=x)}else if(g>0){var _=ql(g),b=c*s+1.5*o*(-f+_),S=c*s+1.5*o*(-f-_);b<0?b=-Lx(-b,Ix):b=Lx(b,Ix),S<0?S=-Lx(-S,Ix):S=Lx(S,Ix);var v=(-s-(b+S))/(3*o);v>=0&&v<=1&&(a[d++]=v)}else{var T=(2*c*s-3*o*f)/(2*ql(c*c*c)),C=Math.acos(T)/3,A=ql(c),P=Math.cos(C),v=(-s-2*A*P)/(3*o),x=(-s+A*(P+LF*Math.sin(C)))/(3*o),I=(-s+A*(P-LF*Math.sin(C)))/(3*o);v>=0&&v<=1&&(a[d++]=v),x>=0&&x<=1&&(a[d++]=x),I>=0&&I<=1&&(a[d++]=I)}}return d}function YK(e,t,r,n,i){var a=6*r-12*t+6*e,o=9*t+3*n-3*e-9*r,s=3*t-3*e,l=0;if(El(o)){if(ZK(a)){var u=-s/a;u>=0&&u<=1&&(i[l++]=u)}}else{var c=a*a-4*o*s;if(El(c))i[0]=-a/(2*o);else if(c>0){var f=ql(c),u=(-a+f)/(2*o),h=(-a-f)/(2*o);u>=0&&u<=1&&(i[l++]=u),h>=0&&h<=1&&(i[l++]=h)}}return l}function uu(e,t,r,n,i,a){var o=(t-e)*i+e,s=(r-t)*i+t,l=(n-r)*i+r,u=(s-o)*i+o,c=(l-s)*i+s,f=(c-u)*i+u;a[0]=e,a[1]=o,a[2]=u,a[3]=f,a[4]=f,a[5]=c,a[6]=l,a[7]=n}function XK(e,t,r,n,i,a,o,s,l,u,c){var f,h=.005,d=1/0,v,g,m,x;_o[0]=l,_o[1]=u;for(var _=0;_<1;_+=.05)Qi[0]=$r(e,r,i,o,_),Qi[1]=$r(t,n,a,s,_),m=Xl(_o,Qi),m=0&&m=0&&u<=1&&(i[l++]=u)}}else{var c=o*o-4*a*s;if(El(c)){var u=-o/(2*a);u>=0&&u<=1&&(i[l++]=u)}else if(c>0){var f=ql(c),u=(-o+f)/(2*a),h=(-o-f)/(2*a);u>=0&&u<=1&&(i[l++]=u),h>=0&&h<=1&&(i[l++]=h)}}return l}function qK(e,t,r){var n=e+r-2*t;return n===0?.5:(e-t)/n}function vy(e,t,r,n,i){var a=(t-e)*n+e,o=(r-t)*n+t,s=(o-a)*n+a;i[0]=e,i[1]=a,i[2]=s,i[3]=s,i[4]=o,i[5]=r}function KK(e,t,r,n,i,a,o,s,l){var u,c=.005,f=1/0;_o[0]=o,_o[1]=s;for(var h=0;h<1;h+=.05){Qi[0]=tn(e,r,i,h),Qi[1]=tn(t,n,a,h);var d=Xl(_o,Qi);d=0&&d=1?1:sw(0,n,a,1,l,s)&&$r(0,i,o,1,s[0])}}}var Sje=function(){function e(t){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=t.life||1e3,this._delay=t.delay||0,this.loop=t.loop||!1,this.onframe=t.onframe||sr,this.ondestroy=t.ondestroy||sr,this.onrestart=t.onrestart||sr,t.easing&&this.setEasing(t.easing)}return e.prototype.step=function(t,r){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),this._paused){this._pausedTime+=r;return}var n=this._life,i=t-this._startTime-this._pausedTime,a=i/n;a<0&&(a=0),a=Math.min(a,1);var o=this.easingFunc,s=o?o(a):a;if(this.onframe(s),a===1)if(this.loop){var l=i%n;this._startTime=t-l,this._pausedTime=0,this.onrestart()}else return!0;return!1},e.prototype.pause=function(){this._paused=!0},e.prototype.resume=function(){this._paused=!1},e.prototype.setEasing=function(t){this.easing=t,this.easingFunc=Ce(t)?t:Xg[t]||xN(t)},e}(),JK=function(){function e(t){this.value=t}return e}(),Tje=function(){function e(){this._len=0}return e.prototype.insert=function(t){var r=new JK(t);return this.insertEntry(r),r},e.prototype.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},e.prototype.remove=function(t){var r=t.prev,n=t.next;r?r.next=n:this.head=n,n?n.prev=r:this.tail=r,t.next=t.prev=null,this._len--},e.prototype.len=function(){return this._len},e.prototype.clear=function(){this.head=this.tail=null,this._len=0},e}(),Xd=function(){function e(t){this._list=new Tje,this._maxSize=10,this._map={},this._maxSize=t}return e.prototype.put=function(t,r){var n=this._list,i=this._map,a=null;if(i[t]==null){var o=n.len(),s=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var l=n.head;n.remove(l),delete i[l.key],a=l.value,this._lastRemovedEntry=l}s?s.value=r:s=new JK(r),s.key=t,n.insertEntry(s),i[t]=s}return a},e.prototype.get=function(t){var r=this._map[t],n=this._list;if(r!=null)return r!==n.tail&&(n.remove(r),n.insertEntry(r)),r.value},e.prototype.clear=function(){this._list.clear(),this._map={}},e.prototype.len=function(){return this._list.len()},e}(),OF={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function Wa(e){return e=Math.round(e),e<0?0:e>255?255:e}function Cje(e){return e=Math.round(e),e<0?0:e>360?360:e}function py(e){return e<0?0:e>1?1:e}function ib(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?Wa(parseFloat(t)/100*255):Wa(parseInt(t,10))}function Ps(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?py(parseFloat(t)/100):py(parseFloat(t))}function r2(e,t,r){return r<0?r+=1:r>1&&(r-=1),r*6<1?e+(t-e)*r*6:r*2<1?t:r*3<2?e+(t-e)*(2/3-r)*6:e}function Dl(e,t,r){return e+(t-e)*r}function Ui(e,t,r,n,i){return e[0]=t,e[1]=r,e[2]=n,e[3]=i,e}function nI(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}var QK=new Xd(20),Ox=null;function Jf(e,t){Ox&&nI(Ox,t),Ox=QK.put(e,Ox||t.slice())}function On(e,t){if(e){t=t||[];var r=QK.get(e);if(r)return nI(t,r);e=e+"";var n=e.replace(/ /g,"").toLowerCase();if(n in OF)return nI(t,OF[n]),Jf(e,t),t;var i=n.length;if(n.charAt(0)==="#"){if(i===4||i===5){var a=parseInt(n.slice(1,4),16);if(!(a>=0&&a<=4095)){Ui(t,0,0,0,1);return}return Ui(t,(a&3840)>>4|(a&3840)>>8,a&240|(a&240)>>4,a&15|(a&15)<<4,i===5?parseInt(n.slice(4),16)/15:1),Jf(e,t),t}else if(i===7||i===9){var a=parseInt(n.slice(1,7),16);if(!(a>=0&&a<=16777215)){Ui(t,0,0,0,1);return}return Ui(t,(a&16711680)>>16,(a&65280)>>8,a&255,i===9?parseInt(n.slice(7),16)/255:1),Jf(e,t),t}return}var o=n.indexOf("("),s=n.indexOf(")");if(o!==-1&&s+1===i){var l=n.substr(0,o),u=n.substr(o+1,s-(o+1)).split(","),c=1;switch(l){case"rgba":if(u.length!==4)return u.length===3?Ui(t,+u[0],+u[1],+u[2],1):Ui(t,0,0,0,1);c=Ps(u.pop());case"rgb":if(u.length>=3)return Ui(t,ib(u[0]),ib(u[1]),ib(u[2]),u.length===3?c:Ps(u[3])),Jf(e,t),t;Ui(t,0,0,0,1);return;case"hsla":if(u.length!==4){Ui(t,0,0,0,1);return}return u[3]=Ps(u[3]),iI(u,t),Jf(e,t),t;case"hsl":if(u.length!==3){Ui(t,0,0,0,1);return}return iI(u,t),Jf(e,t),t;default:return}}Ui(t,0,0,0,1)}}function iI(e,t){var r=(parseFloat(e[0])%360+360)%360/360,n=Ps(e[1]),i=Ps(e[2]),a=i<=.5?i*(n+1):i+n-i*n,o=i*2-a;return t=t||[],Ui(t,Wa(r2(o,a,r+1/3)*255),Wa(r2(o,a,r)*255),Wa(r2(o,a,r-1/3)*255),1),e.length===4&&(t[3]=e[3]),t}function Aje(e){if(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s=(a+i)/2,l,u;if(o===0)l=0,u=0;else{s<.5?u=o/(a+i):u=o/(2-a-i);var c=((a-t)/6+o/2)/o,f=((a-r)/6+o/2)/o,h=((a-n)/6+o/2)/o;t===a?l=h-f:r===a?l=1/3+c-h:n===a&&(l=2/3+f-c),l<0&&(l+=1),l>1&&(l-=1)}var d=[l*360,u,s];return e[3]!=null&&d.push(e[3]),d}}function lw(e,t){var r=On(e);if(r){for(var n=0;n<3;n++)t<0?r[n]=r[n]*(1-t)|0:r[n]=(255-r[n])*t+r[n]|0,r[n]>255?r[n]=255:r[n]<0&&(r[n]=0);return la(r,r.length===4?"rgba":"rgb")}}function Mje(e){var t=On(e);if(t)return((1<<24)+(t[0]<<16)+(t[1]<<8)+ +t[2]).toString(16).slice(1)}function qg(e,t,r){if(!(!(t&&t.length)||!(e>=0&&e<=1))){r=r||[];var n=e*(t.length-1),i=Math.floor(n),a=Math.ceil(n),o=t[i],s=t[a],l=n-i;return r[0]=Wa(Dl(o[0],s[0],l)),r[1]=Wa(Dl(o[1],s[1],l)),r[2]=Wa(Dl(o[2],s[2],l)),r[3]=py(Dl(o[3],s[3],l)),r}}var Pje=qg;function _N(e,t,r){if(!(!(t&&t.length)||!(e>=0&&e<=1))){var n=e*(t.length-1),i=Math.floor(n),a=Math.ceil(n),o=On(t[i]),s=On(t[a]),l=n-i,u=la([Wa(Dl(o[0],s[0],l)),Wa(Dl(o[1],s[1],l)),Wa(Dl(o[2],s[2],l)),py(Dl(o[3],s[3],l))],"rgba");return r?{color:u,leftIndex:i,rightIndex:a,value:n}:u}}var kje=_N;function ks(e,t,r,n){var i=On(e);if(e)return i=Aje(i),t!=null&&(i[0]=Cje(Ce(t)?t(i[0]):t)),r!=null&&(i[1]=Ps(Ce(r)?r(i[1]):r)),n!=null&&(i[2]=Ps(Ce(n)?n(i[2]):n)),la(iI(i),"rgba")}function gy(e,t){var r=On(e);if(r&&t!=null)return r[3]=py(t),la(r,"rgba")}function la(e,t){if(!(!e||!e.length)){var r=e[0]+","+e[1]+","+e[2];return(t==="rgba"||t==="hsva"||t==="hsla")&&(r+=","+e[3]),t+"("+r+")"}}function my(e,t){var r=On(e);return r?(.299*r[0]+.587*r[1]+.114*r[2])*r[3]/255+(1-r[3])*t:0}function Lje(){return la([Math.round(Math.random()*255),Math.round(Math.random()*255),Math.round(Math.random()*255)],"rgb")}var EF=new Xd(100);function uw(e){if(pe(e)){var t=EF.get(e);return t||(t=lw(e,-.1),EF.put(e,t)),t}else if(s0(e)){var r=ne({},e);return r.colorStops=se(e.colorStops,function(n){return{offset:n.offset,color:lw(n.color,-.1)}}),r}return e}const Ije=Object.freeze(Object.defineProperty({__proto__:null,fastLerp:qg,fastMapToColor:Pje,lerp:_N,lift:lw,liftColor:uw,lum:my,mapToColor:kje,modifyAlpha:gy,modifyHSL:ks,parse:On,parseCssFloat:Ps,parseCssInt:ib,random:Lje,stringify:la,toHex:Mje},Symbol.toStringTag,{value:"Module"}));var cw=Math.round;function yy(e){var t;if(!e||e==="transparent")e="none";else if(typeof e=="string"&&e.indexOf("rgba")>-1){var r=On(e);r&&(e="rgb("+r[0]+","+r[1]+","+r[2]+")",t=r[3])}return{color:e,opacity:t??1}}var DF=1e-4;function Nl(e){return e-DF}function Ex(e){return cw(e*1e3)/1e3}function aI(e){return cw(e*1e4)/1e4}function Oje(e){return"matrix("+Ex(e[0])+","+Ex(e[1])+","+Ex(e[2])+","+Ex(e[3])+","+aI(e[4])+","+aI(e[5])+")"}var Eje={left:"start",right:"end",center:"middle",middle:"middle"};function Dje(e,t,r){return r==="top"?e+=t/2:r==="bottom"&&(e-=t/2),e}function Nje(e){return e&&(e.shadowBlur||e.shadowOffsetX||e.shadowOffsetY)}function jje(e){var t=e.style,r=e.getGlobalScale();return[t.shadowColor,(t.shadowBlur||0).toFixed(2),(t.shadowOffsetX||0).toFixed(2),(t.shadowOffsetY||0).toFixed(2),r[0],r[1]].join(",")}function eJ(e){return e&&!!e.image}function Rje(e){return e&&!!e.svgElement}function bN(e){return eJ(e)||Rje(e)}function tJ(e){return e.type==="linear"}function rJ(e){return e.type==="radial"}function nJ(e){return e&&(e.type==="linear"||e.type==="radial")}function OT(e){return"url(#"+e+")"}function iJ(e){var t=e.getGlobalScale(),r=Math.max(t[0],t[1]);return Math.max(Math.ceil(Math.log(r)/Math.log(10)),1)}function aJ(e){var t=e.x||0,r=e.y||0,n=(e.rotation||0)*Hg,i=be(e.scaleX,1),a=be(e.scaleY,1),o=e.skewX||0,s=e.skewY||0,l=[];return(t||r)&&l.push("translate("+t+"px,"+r+"px)"),n&&l.push("rotate("+n+")"),(i!==1||a!==1)&&l.push("scale("+i+","+a+")"),(o||s)&&l.push("skew("+cw(o*Hg)+"deg, "+cw(s*Hg)+"deg)"),l.join(" ")}var Bje=function(){return nt.hasGlobalWindow&&Ce(window.btoa)?function(e){return window.btoa(unescape(encodeURIComponent(e)))}:typeof Buffer<"u"?function(e){return Buffer.from(e).toString("base64")}:function(e){return null}}(),oI=Array.prototype.slice;function fs(e,t,r){return(t-e)*r+e}function n2(e,t,r,n){for(var i=t.length,a=0;an?t:e,a=Math.min(r,n),o=i[a-1]||{color:[0,0,0,0],offset:0},s=a;so;if(s)n.length=o;else for(var l=a;l=1},e.prototype.getAdditiveTrack=function(){return this._additiveTrack},e.prototype.addKeyframe=function(t,r,n){this._needsSort=!0;var i=this.keyframes,a=i.length,o=!1,s=jF,l=r;if(yn(r)){var u=Vje(r);s=u,(u===1&&!ot(r[0])||u===2&&!ot(r[0][0]))&&(o=!0)}else if(ot(r)&&!gn(r))s=Nx;else if(pe(r))if(!isNaN(+r))s=Nx;else{var c=On(r);c&&(l=c,s=xg)}else if(s0(r)){var f=ne({},l);f.colorStops=se(r.colorStops,function(d){return{offset:d.offset,color:On(d.color)}}),tJ(r)?s=sI:rJ(r)&&(s=lI),l=f}a===0?this.valType=s:(s!==this.valType||s===jF)&&(o=!0),this.discrete=this.discrete||o;var h={time:t,value:l,rawValue:r,percent:0};return n&&(h.easing=n,h.easingFunc=Ce(n)?n:Xg[n]||xN(n)),i.push(h),h},e.prototype.prepare=function(t,r){var n=this.keyframes;this._needsSort&&n.sort(function(g,m){return g.time-m.time});for(var i=this.valType,a=n.length,o=n[a-1],s=this.discrete,l=jx(i),u=RF(i),c=0;c=0&&!(o[c].percent<=r);c--);c=h(c,s-2)}else{for(c=f;cr);c++);c=h(c-1,s-2)}v=o[c+1],d=o[c]}if(d&&v){this._lastFr=c,this._lastFrP=r;var m=v.percent-d.percent,x=m===0?1:h((r-d.percent)/m,1);v.easingFunc&&(x=v.easingFunc(x));var _=n?this._additiveValue:u?Np:t[l];if((jx(a)||u)&&!_&&(_=this._additiveValue=[]),this.discrete)t[l]=x<1?d.rawValue:v.rawValue;else if(jx(a))a===ob?n2(_,d[i],v[i],x):zje(_,d[i],v[i],x);else if(RF(a)){var b=d[i],S=v[i],T=a===sI;t[l]={type:T?"linear":"radial",x:fs(b.x,S.x,x),y:fs(b.y,S.y,x),colorStops:se(b.colorStops,function(A,P){var I=S.colorStops[P];return{offset:fs(A.offset,I.offset,x),color:ab(n2([],A.color,I.color,x))}}),global:S.global},T?(t[l].x2=fs(b.x2,S.x2,x),t[l].y2=fs(b.y2,S.y2,x)):t[l].r=fs(b.r,S.r,x)}else if(u)n2(_,d[i],v[i],x),n||(t[l]=ab(_));else{var C=fs(d[i],v[i],x);n?this._additiveValue=C:t[l]=C}n&&this._addToTarget(t)}}},e.prototype._addToTarget=function(t){var r=this.valType,n=this.propName,i=this._additiveValue;r===Nx?t[n]=t[n]+i:r===xg?(On(t[n],Np),Dx(Np,Np,i,1),t[n]=ab(Np)):r===ob?Dx(t[n],t[n],i,1):r===oJ&&NF(t[n],t[n],i,1)},e}(),wN=function(){function e(t,r,n,i){if(this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=t,this._loop=r,r&&i){MT("Can' use additive animation on looped animation.");return}this._additiveAnimators=i,this._allowDiscrete=n}return e.prototype.getMaxTime=function(){return this._maxTime},e.prototype.getDelay=function(){return this._delay},e.prototype.getLoop=function(){return this._loop},e.prototype.getTarget=function(){return this._target},e.prototype.changeTarget=function(t){this._target=t},e.prototype.when=function(t,r,n){return this.whenWithKeys(t,r,it(r),n)},e.prototype.whenWithKeys=function(t,r,n,i){for(var a=this._tracks,o=0;o0&&l.addKeyframe(0,Kg(u),i),this._trackKeys.push(s)}l.addKeyframe(t,Kg(r[s]),i)}return this._maxTime=Math.max(this._maxTime,t),this},e.prototype.pause=function(){this._clip.pause(),this._paused=!0},e.prototype.resume=function(){this._clip.resume(),this._paused=!1},e.prototype.isPaused=function(){return!!this._paused},e.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},e.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var t=this._doneCbs;if(t)for(var r=t.length,n=0;n0)){this._started=1;for(var r=this,n=[],i=this._maxTime||0,a=0;a1){var s=o.pop();a.addKeyframe(s.time,t[i]),a.prepare(this._maxTime,a.getAdditiveTrack())}}}},e}();function Hh(){return new Date().getTime()}var Wje=function(e){q(t,e);function t(r){var n=e.call(this)||this;return n._running=!1,n._time=0,n._pausedTime=0,n._pauseStart=0,n._paused=!1,r=r||{},n.stage=r.stage||{},n}return t.prototype.addClip=function(r){r.animation&&this.removeClip(r),this._head?(this._tail.next=r,r.prev=this._tail,r.next=null,this._tail=r):this._head=this._tail=r,r.animation=this},t.prototype.addAnimator=function(r){r.animation=this;var n=r.getClip();n&&this.addClip(n)},t.prototype.removeClip=function(r){if(r.animation){var n=r.prev,i=r.next;n?n.next=i:this._head=i,i?i.prev=n:this._tail=n,r.next=r.prev=r.animation=null}},t.prototype.removeAnimator=function(r){var n=r.getClip();n&&this.removeClip(n),r.animation=null},t.prototype.update=function(r){for(var n=Hh()-this._pausedTime,i=n-this._time,a=this._head;a;){var o=a.next,s=a.step(n,i);s&&(a.ondestroy(),this.removeClip(a)),a=o}this._time=n,r||(this.trigger("frame",i),this.stage.update&&this.stage.update())},t.prototype._startLoop=function(){var r=this;this._running=!0;function n(){r._running&&(aw(n),!r._paused&&r.update())}aw(n)},t.prototype.start=function(){this._running||(this._time=Hh(),this._pausedTime=0,this._startLoop())},t.prototype.stop=function(){this._running=!1},t.prototype.pause=function(){this._paused||(this._pauseStart=Hh(),this._paused=!0)},t.prototype.resume=function(){this._paused&&(this._pausedTime+=Hh()-this._pauseStart,this._paused=!1)},t.prototype.clear=function(){for(var r=this._head;r;){var n=r.next;r.prev=r.next=r.animation=null,r=n}this._head=this._tail=null},t.prototype.isFinished=function(){return this._head==null},t.prototype.animate=function(r,n){n=n||{},this.start();var i=new wN(r,n.loop);return this.addAnimator(i),i},t}(xa),Hje=300,i2=nt.domSupported,a2=function(){var e=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],t=["touchstart","touchend","touchmove"],r={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},n=se(e,function(i){var a=i.replace("mouse","pointer");return r.hasOwnProperty(a)?a:i});return{mouse:e,touch:t,pointer:n}}(),BF={mouse:["mousemove","mouseup"],pointer:["pointermove","pointerup"]},zF=!1;function uI(e){var t=e.pointerType;return t==="pen"||t==="touch"}function Uje(e){e.touching=!0,e.touchTimer!=null&&(clearTimeout(e.touchTimer),e.touchTimer=null),e.touchTimer=setTimeout(function(){e.touching=!1,e.touchTimer=null},700)}function o2(e){e&&(e.zrByTouch=!0)}function Zje(e,t){return Zi(e.dom,new Yje(e,t),!0)}function sJ(e,t){for(var r=t,n=!1;r&&r.nodeType!==9&&!(n=r.domBelongToZr||r!==t&&r===e.painterRoot);)r=r.parentNode;return n}var Yje=function(){function e(t,r){this.stopPropagation=sr,this.stopImmediatePropagation=sr,this.preventDefault=sr,this.type=r.type,this.target=this.currentTarget=t.dom,this.pointerType=r.pointerType,this.clientX=r.clientX,this.clientY=r.clientY}return e}(),ka={mousedown:function(e){e=Zi(this.dom,e),this.__mayPointerCapture=[e.zrX,e.zrY],this.trigger("mousedown",e)},mousemove:function(e){e=Zi(this.dom,e);var t=this.__mayPointerCapture;t&&(e.zrX!==t[0]||e.zrY!==t[1])&&this.__togglePointerCapture(!0),this.trigger("mousemove",e)},mouseup:function(e){e=Zi(this.dom,e),this.__togglePointerCapture(!1),this.trigger("mouseup",e)},mouseout:function(e){e=Zi(this.dom,e);var t=e.toElement||e.relatedTarget;sJ(this,t)||(this.__pointerCapturing&&(e.zrEventControl="no_globalout"),this.trigger("mouseout",e))},wheel:function(e){zF=!0,e=Zi(this.dom,e),this.trigger("mousewheel",e)},mousewheel:function(e){zF||(e=Zi(this.dom,e),this.trigger("mousewheel",e))},touchstart:function(e){e=Zi(this.dom,e),o2(e),this.__lastTouchMoment=new Date,this.handler.processGesture(e,"start"),ka.mousemove.call(this,e),ka.mousedown.call(this,e)},touchmove:function(e){e=Zi(this.dom,e),o2(e),this.handler.processGesture(e,"change"),ka.mousemove.call(this,e)},touchend:function(e){e=Zi(this.dom,e),o2(e),this.handler.processGesture(e,"end"),ka.mouseup.call(this,e),+new Date-+this.__lastTouchMomentVF||e<-VF}var Fu=[],Qf=[],l2=Wr(),u2=Math.abs,ws=function(){function e(){}return e.prototype.getLocalTransform=function(t){return e.getLocalTransform(this,t)},e.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},e.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},e.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},e.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},e.prototype.needLocalTransform=function(){return $u(this.rotation)||$u(this.x)||$u(this.y)||$u(this.scaleX-1)||$u(this.scaleY-1)||$u(this.skewX)||$u(this.skewY)},e.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,r=this.needLocalTransform(),n=this.transform;if(!(r||t)){n&&(FF(n),this.invTransform=null);return}n=n||Wr(),r?this.getLocalTransform(n):FF(n),t&&(r?Ga(n,t,n):f0(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)},e.prototype._resolveGlobalScaleRatio=function(t){var r=this.globalScaleRatio;if(r!=null&&r!==1){this.getGlobalScale(Fu);var n=Fu[0]<0?-1:1,i=Fu[1]<0?-1:1,a=((Fu[0]-n)*r+n)/Fu[0]||0,o=((Fu[1]-i)*r+i)/Fu[1]||0;t[0]*=a,t[1]*=a,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||Wr(),va(this.invTransform,t)},e.prototype.getComputedTransform=function(){for(var t=this,r=[];t;)r.push(t),t=t.parent;for(;t=r.pop();)t.updateTransform();return this.transform},e.prototype.setLocalTransform=function(t){if(t){var r=t[0]*t[0]+t[1]*t[1],n=t[2]*t[2]+t[3]*t[3],i=Math.atan2(t[1],t[0]),a=Math.PI/2+i-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(a),r=Math.sqrt(r),this.skewX=a,this.skewY=0,this.rotation=-i,this.x=+t[4],this.y=+t[5],this.scaleX=r,this.scaleY=n,this.originX=0,this.originY=0}},e.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,r=this.transform;t&&t.transform&&(t.invTransform=t.invTransform||Wr(),Ga(Qf,t.invTransform,r),r=Qf);var n=this.originX,i=this.originY;(n||i)&&(l2[4]=n,l2[5]=i,Ga(Qf,r,l2),Qf[4]-=n,Qf[5]-=i,r=Qf),this.setLocalTransform(r)}},e.prototype.getGlobalScale=function(t){var r=this.transform;return t=t||[],r?(t[0]=Math.sqrt(r[0]*r[0]+r[1]*r[1]),t[1]=Math.sqrt(r[2]*r[2]+r[3]*r[3]),r[0]<0&&(t[0]=-t[0]),r[3]<0&&(t[1]=-t[1]),t):(t[0]=1,t[1]=1,t)},e.prototype.transformCoordToLocal=function(t,r){var n=[t,r],i=this.invTransform;return i&&lr(n,n,i),n},e.prototype.transformCoordToGlobal=function(t,r){var n=[t,r],i=this.transform;return i&&lr(n,n,i),n},e.prototype.getLineScale=function(){var t=this.transform;return t&&u2(t[0]-1)>1e-10&&u2(t[3]-1)>1e-10?Math.sqrt(u2(t[0]*t[3]-t[2]*t[1])):1},e.prototype.copyTransform=function(t){hw(this,t)},e.getLocalTransform=function(t,r){r=r||[];var n=t.originX||0,i=t.originY||0,a=t.scaleX,o=t.scaleY,s=t.anchorX,l=t.anchorY,u=t.rotation||0,c=t.x,f=t.y,h=t.skewX?Math.tan(t.skewX):0,d=t.skewY?Math.tan(-t.skewY):0;if(n||i||s||l){var v=n+s,g=i+l;r[4]=-v*a-h*g*o,r[5]=-g*o-d*v*a}else r[4]=r[5]=0;return r[0]=a,r[3]=o,r[1]=d*a,r[2]=h*o,u&&el(r,r,u),r[4]+=n+c,r[5]+=i+f,r},e.initDefaultProps=function(){var t=e.prototype;t.scaleX=t.scaleY=t.globalScaleRatio=1,t.x=t.y=t.originX=t.originY=t.skewX=t.skewY=t.rotation=t.anchorX=t.anchorY=0}(),e}(),Vo=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function hw(e,t){for(var r=0;r=GF)){e=e||Vs;for(var t=[],r=+new Date,n=0;n<=127;n++)t[n]=ui.measureText(String.fromCharCode(n),e).width;var i=+new Date-r;return i>16?c2=GF:i>2&&c2++,t}}var c2=0,GF=5;function uJ(e,t){return e.asciiWidthMapTried||(e.asciiWidthMap=Qje(e.font),e.asciiWidthMapTried=!0),0<=t&&t<=127?e.asciiWidthMap!=null?e.asciiWidthMap[t]:e.asciiCharWidth:e.stWideCharWidth}function Ro(e,t){var r=e.strWidthCache,n=r.get(t);return n==null&&(n=ui.measureText(t,e.font).width,r.put(t,n)),n}function WF(e,t,r,n){var i=Ro(jo(t),e),a=h0(t),o=qd(0,i,r),s=Gc(0,a,n),l=new Oe(o,s,i,a);return l}function ET(e,t,r,n){var i=((e||"")+"").split(` -`),a=i.length;if(a===1)return WF(i[0],t,r,n);for(var o=new Oe(0,0,0,0),s=0;s=0?parseFloat(e)/100*t:parseFloat(e):e}function dw(e,t,r){var n=t.position||"inside",i=t.distance!=null?t.distance:5,a=r.height,o=r.width,s=a/2,l=r.x,u=r.y,c="left",f="top";if(n instanceof Array)l+=Ka(n[0],r.width),u+=Ka(n[1],r.height),c=null,f=null;else switch(n){case"left":l-=i,u+=s,c="right",f="middle";break;case"right":l+=i+o,u+=s,f="middle";break;case"top":l+=o/2,u-=i,c="center",f="bottom";break;case"bottom":l+=o/2,u+=a+i,c="center";break;case"inside":l+=o/2,u+=s,c="center",f="middle";break;case"insideLeft":l+=i,u+=s,f="middle";break;case"insideRight":l+=o-i,u+=s,c="right",f="middle";break;case"insideTop":l+=o/2,u+=i,c="center";break;case"insideBottom":l+=o/2,u+=a-i,c="center",f="bottom";break;case"insideTopLeft":l+=i,u+=i;break;case"insideTopRight":l+=o-i,u+=i,c="right";break;case"insideBottomLeft":l+=i,u+=a-i,f="bottom";break;case"insideBottomRight":l+=o-i,u+=a-i,c="right",f="bottom";break}return e=e||{},e.x=l,e.y=u,e.align=c,e.verticalAlign=f,e}var f2="__zr_normal__",h2=Vo.concat(["ignore"]),eRe=da(Vo,function(e,t){return e[t]=!0,e},{ignore:!1}),eh={},tRe=new Oe(0,0,0,0),Bx=[],DT=function(){function e(t){this.id=vN(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return e.prototype._init=function(t){this.attr(t)},e.prototype.drift=function(t,r,n){switch(this.draggable){case"horizontal":r=0;break;case"vertical":t=0;break}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=r,this.decomposeTransform(),this.markRedraw()},e.prototype.beforeUpdate=function(){},e.prototype.afterUpdate=function(){},e.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},e.prototype.updateInnerText=function(t){var r=this._textContent;if(r&&(!r.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,i=n.local,a=r.innerTransformable,o=void 0,s=void 0,l=!1;a.parent=i?this:null;var u=!1;a.copyTransform(r);var c=n.position!=null,f=n.autoOverflowArea,h=void 0;if((f||c)&&(h=tRe,n.layoutRect?h.copy(n.layoutRect):h.copy(this.getBoundingRect()),i||h.applyTransform(this.transform)),c){this.calculateTextPosition?this.calculateTextPosition(eh,n,h):dw(eh,n,h),a.x=eh.x,a.y=eh.y,o=eh.align,s=eh.verticalAlign;var d=n.origin;if(d&&n.rotation!=null){var v=void 0,g=void 0;d==="center"?(v=h.width*.5,g=h.height*.5):(v=Ka(d[0],h.width),g=Ka(d[1],h.height)),u=!0,a.originX=-a.x+v+(i?0:h.x),a.originY=-a.y+g+(i?0:h.y)}}n.rotation!=null&&(a.rotation=n.rotation);var m=n.offset;m&&(a.x+=m[0],a.y+=m[1],u||(a.originX=-m[0],a.originY=-m[1]));var x=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={});if(f){var _=x.overflowRect=x.overflowRect||new Oe(0,0,0,0);a.getLocalTransform(Bx),va(Bx,Bx),Oe.copy(_,h),_.applyTransform(Bx)}else x.overflowRect=null;var b=n.inside==null?typeof n.position=="string"&&n.position.indexOf("inside")>=0:n.inside,S=void 0,T=void 0,C=void 0;b&&this.canBeInsideText()?(S=n.insideFill,T=n.insideStroke,(S==null||S==="auto")&&(S=this.getInsideTextFill()),(T==null||T==="auto")&&(T=this.getInsideTextStroke(S),C=!0)):(S=n.outsideFill,T=n.outsideStroke,(S==null||S==="auto")&&(S=this.getOutsideFill()),(T==null||T==="auto")&&(T=this.getOutsideStroke(S),C=!0)),S=S||"#000",(S!==x.fill||T!==x.stroke||C!==x.autoStroke||o!==x.align||s!==x.verticalAlign)&&(l=!0,x.fill=S,x.stroke=T,x.autoStroke=C,x.align=o,x.verticalAlign=s,r.setDefaultTextStyle(x)),r.__dirty|=wi,l&&r.dirtyStyle(!0)}},e.prototype.canBeInsideText=function(){return!0},e.prototype.getInsideTextFill=function(){return"#fff"},e.prototype.getInsideTextStroke=function(t){return"#000"},e.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?dI:hI},e.prototype.getOutsideStroke=function(t){var r=this.__zr&&this.__zr.getBackgroundColor(),n=typeof r=="string"&&On(r);n||(n=[255,255,255,1]);for(var i=n[3],a=this.__zr.isDarkMode(),o=0;o<3;o++)n[o]=n[o]*i+(a?0:255)*(1-i);return n[3]=1,la(n,"rgba")},e.prototype.traverse=function(t,r){},e.prototype.attrKV=function(t,r){t==="textConfig"?this.setTextConfig(r):t==="textContent"?this.setTextContent(r):t==="clipPath"?this.setClipPath(r):t==="extra"?(this.extra=this.extra||{},ne(this.extra,r)):this[t]=r},e.prototype.hide=function(){this.ignore=!0,this.markRedraw()},e.prototype.show=function(){this.ignore=!1,this.markRedraw()},e.prototype.attr=function(t,r){if(typeof t=="string")this.attrKV(t,r);else if(ke(t))for(var n=t,i=it(n),a=0;a0},e.prototype.getState=function(t){return this.states[t]},e.prototype.ensureState=function(t){var r=this.states;return r[t]||(r[t]={}),r[t]},e.prototype.clearStates=function(t){this.useState(f2,!1,t)},e.prototype.useState=function(t,r,n,i){var a=t===f2,o=this.hasState();if(!(!o&&a)){var s=this.currentStates,l=this.stateTransition;if(!(We(s,t)>=0&&(r||s.length===1))){var u;if(this.stateProxy&&!a&&(u=this.stateProxy(t)),u||(u=this.states&&this.states[t]),!u&&!a){MT("State "+t+" not exists.");return}a||this.saveCurrentToNormalState(u);var c=!!(u&&u.hoverLayer||i);c&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,u,this._normalState,r,!n&&!this.__inHover&&l&&l.duration>0,l);var f=this._textContent,h=this._textGuide;return f&&f.useState(t,r,n,c),h&&h.useState(t,r,n,c),a?(this.currentStates=[],this._normalState={}):r?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!c&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~wi),u}}},e.prototype.useStates=function(t,r,n){if(!t.length)this.clearStates();else{var i=[],a=this.currentStates,o=t.length,s=o===a.length;if(s){for(var l=0;l0,v);var g=this._textContent,m=this._textGuide;g&&g.useStates(t,r,h),m&&m.useStates(t,r,h),this._updateAnimationTargets(),this.currentStates=t.slice(),this.markRedraw(),!h&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~wi)}},e.prototype.isSilent=function(){for(var t=this;t;){if(t.silent)return!0;var r=t.__hostTarget;t=r?t.ignoreHostSilent?null:r:t.parent}return!1},e.prototype._updateAnimationTargets=function(){for(var t=0;t=0){var n=this.currentStates.slice();n.splice(r,1),this.useStates(n)}},e.prototype.replaceState=function(t,r,n){var i=this.currentStates.slice(),a=We(i,t),o=We(i,r)>=0;a>=0?o?i.splice(a,1):i[a]=r:n&&!o&&i.push(r),this.useStates(i)},e.prototype.toggleState=function(t,r){r?this.useState(t,!0):this.removeState(t)},e.prototype._mergeStates=function(t){for(var r={},n,i=0;i=0&&a.splice(o,1)}),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},e.prototype.updateDuringAnimation=function(t){this.markRedraw()},e.prototype.stopAnimation=function(t,r){for(var n=this.animators,i=n.length,a=[],o=0;o0&&r.during&&a[0].during(function(v,g){r.during(g)});for(var h=0;h0||i.force&&!o.length){var P=void 0,I=void 0,k=void 0;if(s){I={},h&&(P={});for(var S=0;S=0&&(i.splice(a,0,r),this._doAdd(r))}return this},t.prototype.replace=function(r,n){var i=We(this._children,r);return i>=0&&this.replaceAt(n,i),this},t.prototype.replaceAt=function(r,n){var i=this._children,a=i[n];if(r&&r!==this&&r.parent!==this&&r!==a){i[n]=r,a.parent=null;var o=this.__zr;o&&a.removeSelfFromZr(o),this._doAdd(r)}return this},t.prototype._doAdd=function(r){r.parent&&r.parent.remove(r),r.parent=this;var n=this.__zr;n&&n!==r.__zr&&r.addSelfToZr(n),n&&n.refresh()},t.prototype.remove=function(r){var n=this.__zr,i=this._children,a=We(i,r);return a<0?this:(i.splice(a,1),r.parent=null,n&&r.removeSelfFromZr(n),n&&n.refresh(),this)},t.prototype.removeAll=function(){for(var r=this._children,n=this.__zr,i=0;i0&&a[a.length-1])&&(u[0]===6||u[0]===2)){r=0;continue}if(u[0]===3&&(!a||u[1]>a[0]&&u[1]"u"&&typeof self<"u"?nt.worker=!0:!nt.hasGlobalWindow||"Deno"in window||typeof navigator<"u"&&typeof navigator.userAgent=="string"&&navigator.userAgent.indexOf("Node.js")>-1?(nt.node=!0,nt.svgSupported=!0):CNe(navigator.userAgent,nt);function CNe(e,t){var r=t.browser,n=e.match(/Firefox\/([\d.]+)/),i=e.match(/MSIE\s([\d.]+)/)||e.match(/Trident\/.+?rv:(([\d.]+))/),a=e.match(/Edge?\/([\d.]+)/),o=/micromessenger/i.test(e);n&&(r.firefox=!0,r.version=n[1]),i&&(r.ie=!0,r.version=i[1]),a&&(r.edge=!0,r.version=a[1],r.newEdge=+a[1].split(".")[0]>18),o&&(r.weChat=!0),t.svgSupported=typeof SVGRect<"u",t.touchEventsSupported="ontouchstart"in window&&!r.ie&&!r.edge,t.pointerEventsSupported="onpointerdown"in window&&(r.edge||r.ie&&+r.version>=11);var s=t.domSupported=typeof document<"u";if(s){var l=document.documentElement.style;t.transform3dSupported=(r.ie&&"transition"in l||r.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in l)&&!("OTransition"in l),t.transformSupported=t.transform3dSupported||r.ie&&+r.version>=9}}var vN=12,IK="sans-serif",Vs=vN+"px "+IK,ANe=20,MNe=100,PNe="007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";function kNe(e){var t={};if(typeof JSON>"u")return t;for(var r=0;r=0)s=o*r.length;else for(var l=0;l>1)%2;s.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",n[l]+":0",i[u]+":0",n[1-l]+":auto",i[1-u]+":auto",""].join("!important;"),e.appendChild(o),r.push(o)}return t.clearMarkers=function(){R(r,function(c){c.parentNode&&c.parentNode.removeChild(c)})},r}function QNe(e,t,r){for(var n=r?"invTrans":"trans",i=t[n],a=t.srcCoords,o=[],s=[],l=!0,u=0;u<4;u++){var c=e[u].getBoundingClientRect(),f=2*u,h=c.left,d=c.top;o.push(h,d),l=l&&a&&h===a[f]&&d===a[f+1],s.push(e[u].offsetLeft,e[u].offsetTop)}return l&&i?i:(t.srcCoords=o,t[n]=r?bF(s,o):bF(o,s))}function FK(e){return e.nodeName.toUpperCase()==="CANVAS"}var eje=/([&<>"'])/g,tje={"&":"&","<":"<",">":">",'"':""","'":"'"};function En(e){return e==null?"":(e+"").replace(eje,function(t,r){return tje[r]})}var rje=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,qA=[],nje=nt.browser.firefox&&+nt.browser.version.split(".")[0]<39;function QL(e,t,r,n){return r=r||{},n?wF(e,t,r):nje&&t.layerX!=null&&t.layerX!==t.offsetX?(r.zrX=t.layerX,r.zrY=t.layerY):t.offsetX!=null?(r.zrX=t.offsetX,r.zrY=t.offsetY):wF(e,t,r),r}function wF(e,t,r){if(nt.domSupported&&e.getBoundingClientRect){var n=t.clientX,i=t.clientY;if(FK(e)){var a=e.getBoundingClientRect();r.zrX=n-a.left,r.zrY=i-a.top;return}else if(JL(qA,e,n,i)){r.zrX=qA[0],r.zrY=qA[1];return}}r.zrX=r.zrY=0}function bN(e){return e||window.event}function Zi(e,t,r){if(t=bN(t),t.zrX!=null)return t;var n=t.type,i=n&&n.indexOf("touch")>=0;if(i){var o=n!=="touchend"?t.targetTouches[0]:t.changedTouches[0];o&&QL(e,o,t,r)}else{QL(e,t,t,r);var a=ije(t);t.zrDelta=a?a/120:-(t.detail||0)/3}var s=t.button;return t.which==null&&s!==void 0&&rje.test(t.type)&&(t.which=s&1?1:s&2?3:s&4?2:0),t}function ije(e){var t=e.wheelDelta;if(t)return t;var r=e.deltaX,n=e.deltaY;if(r==null||n==null)return t;var i=Math.abs(n!==0?n:r),a=n>0?-1:n<0?1:r>0?-1:1;return 3*i*a}function eI(e,t,r,n){e.addEventListener(t,r,n)}function aje(e,t,r,n){e.removeEventListener(t,r,n)}var Gs=function(e){e.preventDefault(),e.stopPropagation(),e.cancelBubble=!0};function SF(e){return e.which===2||e.which===3}var oje=function(){function e(){this._track=[]}return e.prototype.recognize=function(t,r,n){return this._doTrack(t,r,n),this._recognize(t)},e.prototype.clear=function(){return this._track.length=0,this},e.prototype._doTrack=function(t,r,n){var i=t.touches;if(i){for(var a={points:[],touches:[],target:r,event:t},o=0,s=i.length;o1&&n&&n.length>1){var a=TF(n)/TF(i);!isFinite(a)&&(a=1),t.pinchScale=a;var o=sje(n);return t.pinchX=o[0],t.pinchY=o[1],{type:"pinch",target:e[0].target,event:t}}}}};function Hr(){return[1,0,0,1,0,0]}function c0(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e}function f0(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function Ga(e,t,r){var n=t[0]*r[0]+t[2]*r[1],i=t[1]*r[0]+t[3]*r[1],a=t[0]*r[2]+t[2]*r[3],o=t[1]*r[2]+t[3]*r[3],s=t[0]*r[4]+t[2]*r[5]+t[4],l=t[1]*r[4]+t[3]*r[5]+t[5];return e[0]=n,e[1]=i,e[2]=a,e[3]=o,e[4]=s,e[5]=l,e}function qa(e,t,r){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4]+r[0],e[5]=t[5]+r[1],e}function el(e,t,r,n){n===void 0&&(n=[0,0]);var i=t[0],a=t[2],o=t[4],s=t[1],l=t[3],u=t[5],c=Math.sin(r),f=Math.cos(r);return e[0]=i*f+s*c,e[1]=-i*c+s*f,e[2]=a*f+l*c,e[3]=-a*c+f*l,e[4]=f*(o-n[0])+c*(u-n[1])+n[0],e[5]=f*(u-n[1])-c*(o-n[0])+n[1],e}function IT(e,t,r){var n=r[0],i=r[1];return e[0]=t[0]*n,e[1]=t[1]*i,e[2]=t[2]*n,e[3]=t[3]*i,e[4]=t[4]*n,e[5]=t[5]*i,e}function va(e,t){var r=t[0],n=t[2],i=t[4],a=t[1],o=t[3],s=t[5],l=r*o-a*n;return l?(l=1/l,e[0]=o*l,e[1]=-a*l,e[2]=-n*l,e[3]=r*l,e[4]=(n*s-o*i)*l,e[5]=(a*i-r*s)*l,e):null}function VK(e){var t=Hr();return f0(t,e),t}const lje=Object.freeze(Object.defineProperty({__proto__:null,clone:VK,copy:f0,create:Hr,identity:c0,invert:va,mul:Ga,rotate:el,scale:IT,translate:qa},Symbol.toStringTag,{value:"Module"}));var Ee=function(){function e(t,r){this.x=t||0,this.y=r||0}return e.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this},e.prototype.clone=function(){return new e(this.x,this.y)},e.prototype.set=function(t,r){return this.x=t,this.y=r,this},e.prototype.equal=function(t){return t.x===this.x&&t.y===this.y},e.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this},e.prototype.scale=function(t){this.x*=t,this.y*=t},e.prototype.scaleAndAdd=function(t,r){this.x+=t.x*r,this.y+=t.y*r},e.prototype.sub=function(t){return this.x-=t.x,this.y-=t.y,this},e.prototype.dot=function(t){return this.x*t.x+this.y*t.y},e.prototype.len=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},e.prototype.lenSquare=function(){return this.x*this.x+this.y*this.y},e.prototype.normalize=function(){var t=this.len();return this.x/=t,this.y/=t,this},e.prototype.distance=function(t){var r=this.x-t.x,n=this.y-t.y;return Math.sqrt(r*r+n*n)},e.prototype.distanceSquare=function(t){var r=this.x-t.x,n=this.y-t.y;return r*r+n*n},e.prototype.negate=function(){return this.x=-this.x,this.y=-this.y,this},e.prototype.transform=function(t){if(t){var r=this.x,n=this.y;return this.x=t[0]*r+t[2]*n+t[4],this.y=t[1]*r+t[3]*n+t[5],this}},e.prototype.toArray=function(t){return t[0]=this.x,t[1]=this.y,t},e.prototype.fromArray=function(t){this.x=t[0],this.y=t[1]},e.set=function(t,r,n){t.x=r,t.y=n},e.copy=function(t,r){t.x=r.x,t.y=r.y},e.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y)},e.lenSquare=function(t){return t.x*t.x+t.y*t.y},e.dot=function(t,r){return t.x*r.x+t.y*r.y},e.add=function(t,r,n){t.x=r.x+n.x,t.y=r.y+n.y},e.sub=function(t,r,n){t.x=r.x-n.x,t.y=r.y-n.y},e.scale=function(t,r,n){t.x=r.x*n,t.y=r.y*n},e.scaleAndAdd=function(t,r,n,i){t.x=r.x+n.x*i,t.y=r.y+n.y*i},e.lerp=function(t,r,n,i){var a=1-i;t.x=a*r.x+i*n.x,t.y=a*r.y+i*n.y},e}(),Ic=Math.min,Hh=Math.max,tI=Math.abs,CF=["x","y"],uje=["width","height"],ju=new Ee,Ru=new Ee,Bu=new Ee,zu=new Ee,_i=GK(),mg=_i.minTv,rI=_i.maxTv,Yg=[0,0],Oe=function(){function e(t,r,n,i){e.set(this,t,r,n,i)}return e.set=function(t,r,n,i,a){return i<0&&(r=r+i,i=-i),a<0&&(n=n+a,a=-a),t.x=r,t.y=n,t.width=i,t.height=a,t},e.prototype.union=function(t){var r=Ic(t.x,this.x),n=Ic(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=Hh(t.x+t.width,this.x+this.width)-r:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=Hh(t.y+t.height,this.y+this.height)-n:this.height=t.height,this.x=r,this.y=n},e.prototype.applyTransform=function(t){e.applyTransform(this,this,t)},e.prototype.calculateTransform=function(t){var r=this,n=t.width/r.width,i=t.height/r.height,a=Hr();return qa(a,a,[-r.x,-r.y]),IT(a,a,[n,i]),qa(a,a,[t.x,t.y]),a},e.prototype.intersect=function(t,r,n){return e.intersect(this,t,r,n)},e.intersect=function(t,r,n,i){n&&Ee.set(n,0,0);var a=i&&i.outIntersectRect||null,o=i&&i.clamp;if(a&&(a.x=a.y=a.width=a.height=NaN),!t||!r)return!1;t instanceof e||(t=e.set(cje,t.x,t.y,t.width,t.height)),r instanceof e||(r=e.set(fje,r.x,r.y,r.width,r.height));var s=!!n;_i.reset(i,s);var l=_i.touchThreshold,u=t.x+l,c=t.x+t.width-l,f=t.y+l,h=t.y+t.height-l,d=r.x+l,v=r.x+r.width-l,m=r.y+l,y=r.y+r.height-l;if(u>c||f>h||d>v||m>y)return!1;var x=!(c=t.x&&r<=t.x+t.width&&n>=t.y&&n<=t.y+t.height},e.prototype.contain=function(t,r){return e.contain(this,t,r)},e.prototype.clone=function(){return new e(this.x,this.y,this.width,this.height)},e.prototype.copy=function(t){e.copy(this,t)},e.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},e.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},e.prototype.isZero=function(){return this.width===0||this.height===0},e.create=function(t){return new e(t.x,t.y,t.width,t.height)},e.copy=function(t,r){return t.x=r.x,t.y=r.y,t.width=r.width,t.height=r.height,t},e.applyTransform=function(t,r,n){if(!n){t!==r&&e.copy(t,r);return}if(n[1]<1e-5&&n[1]>-1e-5&&n[2]<1e-5&&n[2]>-1e-5){var i=n[0],a=n[3],o=n[4],s=n[5];t.x=r.x*i+o,t.y=r.y*a+s,t.width=r.width*i,t.height=r.height*a,t.width<0&&(t.x+=t.width,t.width=-t.width),t.height<0&&(t.y+=t.height,t.height=-t.height);return}ju.x=Bu.x=r.x,ju.y=zu.y=r.y,Ru.x=zu.x=r.x+r.width,Ru.y=Bu.y=r.y+r.height,ju.transform(n),zu.transform(n),Ru.transform(n),Bu.transform(n),t.x=Ic(ju.x,Ru.x,Bu.x,zu.x),t.y=Ic(ju.y,Ru.y,Bu.y,zu.y);var l=Hh(ju.x,Ru.x,Bu.x,zu.x),u=Hh(ju.y,Ru.y,Bu.y,zu.y);t.width=l-t.x,t.height=u-t.y},e}(),cje=new Oe(0,0,0,0),fje=new Oe(0,0,0,0);function AF(e,t,r,n,i,a,o,s){var l=tI(t-r),u=tI(n-e),c=Ic(l,u),f=CF[i],h=CF[1-i],d=uje[i];t=u||!_i.bidirectional)&&(mg[f]=-u,mg[h]=0,_i.useDir&&_i.calcDirMTV())))}function GK(){var e=0,t=new Ee,r=new Ee,n={minTv:new Ee,maxTv:new Ee,useDir:!1,dirMinTv:new Ee,touchThreshold:0,bidirectional:!0,negativeSize:!1,reset:function(a,o){n.touchThreshold=0,a&&a.touchThreshold!=null&&(n.touchThreshold=Hh(0,a.touchThreshold)),n.negativeSize=!1,o&&(n.minTv.set(1/0,1/0),n.maxTv.set(0,0),n.useDir=!1,a&&a.direction!=null&&(n.useDir=!0,n.dirMinTv.copy(n.minTv),r.copy(n.minTv),e=a.direction,n.bidirectional=a.bidirectional==null||!!a.bidirectional,n.bidirectional||t.set(Math.cos(e),Math.sin(e))))},calcDirMTV:function(){var a=n.minTv,o=n.dirMinTv,s=a.y*a.y+a.x*a.x,l=Math.sin(e),u=Math.cos(e),c=l*a.y+u*a.x;if(i(c)){i(a.x)&&i(a.y)&&o.set(0,0);return}if(r.x=s*u/c,r.y=s*l/c,i(r.x)&&i(r.y)){o.set(0,0);return}(n.bidirectional||t.dot(r)>0)&&r.len()=0;f--){var h=a[f];h!==i&&!h.ignore&&!h.ignoreCoarsePointer&&(!h.parent||!h.parent.ignoreCoarsePointer)&&(JA.copy(h.getBoundingRect()),h.transform&&JA.applyTransform(h.transform),JA.intersect(c)&&s.push(h))}if(s.length)for(var d=4,v=Math.PI/12,m=Math.PI*2,y=0;y4)return;this._downPoint=null}this.dispatchToElement(a,e,t)}});function gje(e,t,r){if(e[e.rectHover?"rectContain":"contain"](t,r)){for(var n=e,i=void 0,a=!1;n;){if(n.ignoreClip&&(a=!0),!a){var o=n.getClipPath();if(o&&!o.contain(t,r))return!1}n.silent&&(i=!0);var s=n.__hostTarget;n=s?n.ignoreHostSilent?null:s:n.parent}return i?WK:!0}return!1}function MF(e,t,r,n,i){for(var a=e.length-1;a>=0;a--){var o=e[a],s=void 0;if(o!==i&&!o.ignore&&(s=gje(o,r,n))&&(!t.topTarget&&(t.topTarget=o),s!==WK)){t.target=o;break}}}function UK(e,t,r){var n=e.painter;return t<0||t>n.getWidth()||r<0||r>n.getHeight()}var ZK=32,Dp=7;function mje(e){for(var t=0;e>=ZK;)t|=e&1,e>>=1;return e+t}function PF(e,t,r,n){var i=t+1;if(i===r)return 1;if(n(e[i++],e[t])<0){for(;i=0;)i++;return i-t}function yje(e,t,r){for(r--;t>>1,i(a,e[l])<0?s=l:o=l+1;var u=n-o;switch(u){case 3:e[o+3]=e[o+2];case 2:e[o+2]=e[o+1];case 1:e[o+1]=e[o];break;default:for(;u>0;)e[o+u]=e[o+u-1],u--}e[o]=a}}function QA(e,t,r,n,i,a){var o=0,s=0,l=1;if(a(e,t[r+i])>0){for(s=n-i;l0;)o=l,l=(l<<1)+1,l<=0&&(l=s);l>s&&(l=s),o+=i,l+=i}else{for(s=i+1;ls&&(l=s);var u=o;o=i-l,l=i-u}for(o++;o>>1);a(e,t[r+c])>0?o=c+1:l=c}return l}function e2(e,t,r,n,i,a){var o=0,s=0,l=1;if(a(e,t[r+i])<0){for(s=i+1;ls&&(l=s);var u=o;o=i-l,l=i-u}else{for(s=n-i;l=0;)o=l,l=(l<<1)+1,l<=0&&(l=s);l>s&&(l=s),o+=i,l+=i}for(o++;o>>1);a(e,t[r+c])<0?l=c:o=c+1}return l}function xje(e,t){var r=Dp,n,i,a=0,o=[];n=[],i=[];function s(d,v){n[a]=d,i[a]=v,a+=1}function l(){for(;a>1;){var d=a-2;if(d>=1&&i[d-1]<=i[d]+i[d+1]||d>=2&&i[d-2]<=i[d]+i[d-1])i[d-1]i[d+1])break;c(d)}}function u(){for(;a>1;){var d=a-2;d>0&&i[d-1]=Dp||A>=Dp);if(P)break;T<0&&(T=0),T+=2}if(r=T,r<1&&(r=1),v===1){for(x=0;x=0;x--)e[C+x]=e[T+x];e[S]=o[b];return}for(var A=r;;){var P=0,I=0,k=!1;do if(t(o[b],e[_])<0){if(e[S--]=e[_--],P++,I=0,--v===0){k=!0;break}}else if(e[S--]=o[b--],I++,P=0,--y===1){k=!0;break}while((P|I)=0;x--)e[C+x]=e[T+x];if(v===0){k=!0;break}}if(e[S--]=o[b--],--y===1){k=!0;break}if(I=y-QA(e[_],o,0,y,y-1,t),I!==0){for(S-=I,b-=I,y-=I,C=S+1,T=b+1,x=0;x=Dp||I>=Dp);if(k)break;A<0&&(A=0),A+=2}if(r=A,r<1&&(r=1),y===1){for(S-=v,_-=v,C=S+1,T=_+1,x=v-1;x>=0;x--)e[C+x]=e[T+x];e[S]=o[b]}else{if(y===0)throw new Error;for(T=S-(y-1),x=0;xs&&(l=s),kF(e,r,r+l,r+a,t),a=l}o.pushRun(r,a),o.mergeRuns(),i-=a,r+=a}while(i!==0);o.forceMergeRuns()}}var wi=1,yg=2,Ah=4,LF=!1;function t2(){LF||(LF=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function IF(e,t){return e.zlevel===t.zlevel?e.z===t.z?e.z2-t.z2:e.z-t.z:e.zlevel-t.zlevel}var _je=function(){function e(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=IF}return e.prototype.traverse=function(t,r){for(var n=0;n=0&&this._roots.splice(i,1)},e.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},e.prototype.getRoots=function(){return this._roots},e.prototype.dispose=function(){this._displayList=null,this._roots=null},e}(),aw;aw=nt.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(e){return setTimeout(e,16)};var Xg={linear:function(e){return e},quadraticIn:function(e){return e*e},quadraticOut:function(e){return e*(2-e)},quadraticInOut:function(e){return(e*=2)<1?.5*e*e:-.5*(--e*(e-2)-1)},cubicIn:function(e){return e*e*e},cubicOut:function(e){return--e*e*e+1},cubicInOut:function(e){return(e*=2)<1?.5*e*e*e:.5*((e-=2)*e*e+2)},quarticIn:function(e){return e*e*e*e},quarticOut:function(e){return 1- --e*e*e*e},quarticInOut:function(e){return(e*=2)<1?.5*e*e*e*e:-.5*((e-=2)*e*e*e-2)},quinticIn:function(e){return e*e*e*e*e},quinticOut:function(e){return--e*e*e*e*e+1},quinticInOut:function(e){return(e*=2)<1?.5*e*e*e*e*e:.5*((e-=2)*e*e*e*e+2)},sinusoidalIn:function(e){return 1-Math.cos(e*Math.PI/2)},sinusoidalOut:function(e){return Math.sin(e*Math.PI/2)},sinusoidalInOut:function(e){return .5*(1-Math.cos(Math.PI*e))},exponentialIn:function(e){return e===0?0:Math.pow(1024,e-1)},exponentialOut:function(e){return e===1?1:1-Math.pow(2,-10*e)},exponentialInOut:function(e){return e===0?0:e===1?1:(e*=2)<1?.5*Math.pow(1024,e-1):.5*(-Math.pow(2,-10*(e-1))+2)},circularIn:function(e){return 1-Math.sqrt(1-e*e)},circularOut:function(e){return Math.sqrt(1- --e*e)},circularInOut:function(e){return(e*=2)<1?-.5*(Math.sqrt(1-e*e)-1):.5*(Math.sqrt(1-(e-=2)*e)+1)},elasticIn:function(e){var t,r=.1,n=.4;return e===0?0:e===1?1:(!r||r<1?(r=1,t=n/4):t=n*Math.asin(1/r)/(2*Math.PI),-(r*Math.pow(2,10*(e-=1))*Math.sin((e-t)*(2*Math.PI)/n)))},elasticOut:function(e){var t,r=.1,n=.4;return e===0?0:e===1?1:(!r||r<1?(r=1,t=n/4):t=n*Math.asin(1/r)/(2*Math.PI),r*Math.pow(2,-10*e)*Math.sin((e-t)*(2*Math.PI)/n)+1)},elasticInOut:function(e){var t,r=.1,n=.4;return e===0?0:e===1?1:(!r||r<1?(r=1,t=n/4):t=n*Math.asin(1/r)/(2*Math.PI),(e*=2)<1?-.5*(r*Math.pow(2,10*(e-=1))*Math.sin((e-t)*(2*Math.PI)/n)):r*Math.pow(2,-10*(e-=1))*Math.sin((e-t)*(2*Math.PI)/n)*.5+1)},backIn:function(e){var t=1.70158;return e*e*((t+1)*e-t)},backOut:function(e){var t=1.70158;return--e*e*((t+1)*e+t)+1},backInOut:function(e){var t=2.5949095;return(e*=2)<1?.5*(e*e*((t+1)*e-t)):.5*((e-=2)*e*((t+1)*e+t)+2)},bounceIn:function(e){return 1-Xg.bounceOut(1-e)},bounceOut:function(e){return e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375},bounceInOut:function(e){return e<.5?Xg.bounceIn(e*2)*.5:Xg.bounceOut(e*2-1)*.5+.5}},Lx=Math.pow,ql=Math.sqrt,ow=1e-8,YK=1e-4,EF=ql(3),Ix=1/3,_o=Cu(),Qi=Cu(),fd=Cu();function Ol(e){return e>-ow&&eow||e<-ow}function Fr(e,t,r,n,i){var a=1-i;return a*a*(a*e+3*i*t)+i*i*(i*n+3*a*r)}function OF(e,t,r,n,i){var a=1-i;return 3*(((t-e)*a+2*(r-t)*i)*a+(n-r)*i*i)}function sw(e,t,r,n,i,a){var o=n+3*(t-r)-e,s=3*(r-t*2+e),l=3*(t-e),u=e-i,c=s*s-3*o*l,f=s*l-9*o*u,h=l*l-3*s*u,d=0;if(Ol(c)&&Ol(f))if(Ol(s))a[0]=0;else{var v=-l/s;v>=0&&v<=1&&(a[d++]=v)}else{var m=f*f-4*c*h;if(Ol(m)){var y=f/c,v=-s/o+y,x=-y/2;v>=0&&v<=1&&(a[d++]=v),x>=0&&x<=1&&(a[d++]=x)}else if(m>0){var _=ql(m),b=c*s+1.5*o*(-f+_),S=c*s+1.5*o*(-f-_);b<0?b=-Lx(-b,Ix):b=Lx(b,Ix),S<0?S=-Lx(-S,Ix):S=Lx(S,Ix);var v=(-s-(b+S))/(3*o);v>=0&&v<=1&&(a[d++]=v)}else{var T=(2*c*s-3*o*f)/(2*ql(c*c*c)),C=Math.acos(T)/3,A=ql(c),P=Math.cos(C),v=(-s-2*A*P)/(3*o),x=(-s+A*(P+EF*Math.sin(C)))/(3*o),I=(-s+A*(P-EF*Math.sin(C)))/(3*o);v>=0&&v<=1&&(a[d++]=v),x>=0&&x<=1&&(a[d++]=x),I>=0&&I<=1&&(a[d++]=I)}}return d}function qK(e,t,r,n,i){var a=6*r-12*t+6*e,o=9*t+3*n-3*e-9*r,s=3*t-3*e,l=0;if(Ol(o)){if(XK(a)){var u=-s/a;u>=0&&u<=1&&(i[l++]=u)}}else{var c=a*a-4*o*s;if(Ol(c))i[0]=-a/(2*o);else if(c>0){var f=ql(c),u=(-a+f)/(2*o),h=(-a-f)/(2*o);u>=0&&u<=1&&(i[l++]=u),h>=0&&h<=1&&(i[l++]=h)}}return l}function uu(e,t,r,n,i,a){var o=(t-e)*i+e,s=(r-t)*i+t,l=(n-r)*i+r,u=(s-o)*i+o,c=(l-s)*i+s,f=(c-u)*i+u;a[0]=e,a[1]=o,a[2]=u,a[3]=f,a[4]=f,a[5]=c,a[6]=l,a[7]=n}function KK(e,t,r,n,i,a,o,s,l,u,c){var f,h=.005,d=1/0,v,m,y,x;_o[0]=l,_o[1]=u;for(var _=0;_<1;_+=.05)Qi[0]=Fr(e,r,i,o,_),Qi[1]=Fr(t,n,a,s,_),y=Xl(_o,Qi),y=0&&y=0&&u<=1&&(i[l++]=u)}}else{var c=o*o-4*a*s;if(Ol(c)){var u=-o/(2*a);u>=0&&u<=1&&(i[l++]=u)}else if(c>0){var f=ql(c),u=(-o+f)/(2*a),h=(-o-f)/(2*a);u>=0&&u<=1&&(i[l++]=u),h>=0&&h<=1&&(i[l++]=h)}}return l}function JK(e,t,r){var n=e+r-2*t;return n===0?.5:(e-t)/n}function vy(e,t,r,n,i){var a=(t-e)*n+e,o=(r-t)*n+t,s=(o-a)*n+a;i[0]=e,i[1]=a,i[2]=s,i[3]=s,i[4]=o,i[5]=r}function QK(e,t,r,n,i,a,o,s,l){var u,c=.005,f=1/0;_o[0]=o,_o[1]=s;for(var h=0;h<1;h+=.05){Qi[0]=rn(e,r,i,h),Qi[1]=rn(t,n,a,h);var d=Xl(_o,Qi);d=0&&d=1?1:sw(0,n,a,1,l,s)&&Fr(0,i,o,1,s[0])}}}var Cje=function(){function e(t){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=t.life||1e3,this._delay=t.delay||0,this.loop=t.loop||!1,this.onframe=t.onframe||sr,this.ondestroy=t.ondestroy||sr,this.onrestart=t.onrestart||sr,t.easing&&this.setEasing(t.easing)}return e.prototype.step=function(t,r){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),this._paused){this._pausedTime+=r;return}var n=this._life,i=t-this._startTime-this._pausedTime,a=i/n;a<0&&(a=0),a=Math.min(a,1);var o=this.easingFunc,s=o?o(a):a;if(this.onframe(s),a===1)if(this.loop){var l=i%n;this._startTime=t-l,this._pausedTime=0,this.onrestart()}else return!0;return!1},e.prototype.pause=function(){this._paused=!0},e.prototype.resume=function(){this._paused=!1},e.prototype.setEasing=function(t){this.easing=t,this.easingFunc=Ae(t)?t:Xg[t]||wN(t)},e}(),eJ=function(){function e(t){this.value=t}return e}(),Aje=function(){function e(){this._len=0}return e.prototype.insert=function(t){var r=new eJ(t);return this.insertEntry(r),r},e.prototype.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},e.prototype.remove=function(t){var r=t.prev,n=t.next;r?r.next=n:this.head=n,n?n.prev=r:this.tail=r,t.next=t.prev=null,this._len--},e.prototype.len=function(){return this._len},e.prototype.clear=function(){this.head=this.tail=null,this._len=0},e}(),Xd=function(){function e(t){this._list=new Aje,this._maxSize=10,this._map={},this._maxSize=t}return e.prototype.put=function(t,r){var n=this._list,i=this._map,a=null;if(i[t]==null){var o=n.len(),s=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var l=n.head;n.remove(l),delete i[l.key],a=l.value,this._lastRemovedEntry=l}s?s.value=r:s=new eJ(r),s.key=t,n.insertEntry(s),i[t]=s}return a},e.prototype.get=function(t){var r=this._map[t],n=this._list;if(r!=null)return r!==n.tail&&(n.remove(r),n.insertEntry(r)),r.value},e.prototype.clear=function(){this._list.clear(),this._map={}},e.prototype.len=function(){return this._list.len()},e}(),DF={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function Wa(e){return e=Math.round(e),e<0?0:e>255?255:e}function Mje(e){return e=Math.round(e),e<0?0:e>360?360:e}function py(e){return e<0?0:e>1?1:e}function ib(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?Wa(parseFloat(t)/100*255):Wa(parseInt(t,10))}function Ps(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?py(parseFloat(t)/100):py(parseFloat(t))}function r2(e,t,r){return r<0?r+=1:r>1&&(r-=1),r*6<1?e+(t-e)*r*6:r*2<1?t:r*3<2?e+(t-e)*(2/3-r)*6:e}function Dl(e,t,r){return e+(t-e)*r}function Ui(e,t,r,n,i){return e[0]=t,e[1]=r,e[2]=n,e[3]=i,e}function iI(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}var tJ=new Xd(20),Ex=null;function Qf(e,t){Ex&&iI(Ex,t),Ex=tJ.put(e,Ex||t.slice())}function On(e,t){if(e){t=t||[];var r=tJ.get(e);if(r)return iI(t,r);e=e+"";var n=e.replace(/ /g,"").toLowerCase();if(n in DF)return iI(t,DF[n]),Qf(e,t),t;var i=n.length;if(n.charAt(0)==="#"){if(i===4||i===5){var a=parseInt(n.slice(1,4),16);if(!(a>=0&&a<=4095)){Ui(t,0,0,0,1);return}return Ui(t,(a&3840)>>4|(a&3840)>>8,a&240|(a&240)>>4,a&15|(a&15)<<4,i===5?parseInt(n.slice(4),16)/15:1),Qf(e,t),t}else if(i===7||i===9){var a=parseInt(n.slice(1,7),16);if(!(a>=0&&a<=16777215)){Ui(t,0,0,0,1);return}return Ui(t,(a&16711680)>>16,(a&65280)>>8,a&255,i===9?parseInt(n.slice(7),16)/255:1),Qf(e,t),t}return}var o=n.indexOf("("),s=n.indexOf(")");if(o!==-1&&s+1===i){var l=n.substr(0,o),u=n.substr(o+1,s-(o+1)).split(","),c=1;switch(l){case"rgba":if(u.length!==4)return u.length===3?Ui(t,+u[0],+u[1],+u[2],1):Ui(t,0,0,0,1);c=Ps(u.pop());case"rgb":if(u.length>=3)return Ui(t,ib(u[0]),ib(u[1]),ib(u[2]),u.length===3?c:Ps(u[3])),Qf(e,t),t;Ui(t,0,0,0,1);return;case"hsla":if(u.length!==4){Ui(t,0,0,0,1);return}return u[3]=Ps(u[3]),aI(u,t),Qf(e,t),t;case"hsl":if(u.length!==3){Ui(t,0,0,0,1);return}return aI(u,t),Qf(e,t),t;default:return}}Ui(t,0,0,0,1)}}function aI(e,t){var r=(parseFloat(e[0])%360+360)%360/360,n=Ps(e[1]),i=Ps(e[2]),a=i<=.5?i*(n+1):i+n-i*n,o=i*2-a;return t=t||[],Ui(t,Wa(r2(o,a,r+1/3)*255),Wa(r2(o,a,r)*255),Wa(r2(o,a,r-1/3)*255),1),e.length===4&&(t[3]=e[3]),t}function Pje(e){if(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s=(a+i)/2,l,u;if(o===0)l=0,u=0;else{s<.5?u=o/(a+i):u=o/(2-a-i);var c=((a-t)/6+o/2)/o,f=((a-r)/6+o/2)/o,h=((a-n)/6+o/2)/o;t===a?l=h-f:r===a?l=1/3+c-h:n===a&&(l=2/3+f-c),l<0&&(l+=1),l>1&&(l-=1)}var d=[l*360,u,s];return e[3]!=null&&d.push(e[3]),d}}function lw(e,t){var r=On(e);if(r){for(var n=0;n<3;n++)t<0?r[n]=r[n]*(1-t)|0:r[n]=(255-r[n])*t+r[n]|0,r[n]>255?r[n]=255:r[n]<0&&(r[n]=0);return la(r,r.length===4?"rgba":"rgb")}}function kje(e){var t=On(e);if(t)return((1<<24)+(t[0]<<16)+(t[1]<<8)+ +t[2]).toString(16).slice(1)}function qg(e,t,r){if(!(!(t&&t.length)||!(e>=0&&e<=1))){r=r||[];var n=e*(t.length-1),i=Math.floor(n),a=Math.ceil(n),o=t[i],s=t[a],l=n-i;return r[0]=Wa(Dl(o[0],s[0],l)),r[1]=Wa(Dl(o[1],s[1],l)),r[2]=Wa(Dl(o[2],s[2],l)),r[3]=py(Dl(o[3],s[3],l)),r}}var Lje=qg;function SN(e,t,r){if(!(!(t&&t.length)||!(e>=0&&e<=1))){var n=e*(t.length-1),i=Math.floor(n),a=Math.ceil(n),o=On(t[i]),s=On(t[a]),l=n-i,u=la([Wa(Dl(o[0],s[0],l)),Wa(Dl(o[1],s[1],l)),Wa(Dl(o[2],s[2],l)),py(Dl(o[3],s[3],l))],"rgba");return r?{color:u,leftIndex:i,rightIndex:a,value:n}:u}}var Ije=SN;function ks(e,t,r,n){var i=On(e);if(e)return i=Pje(i),t!=null&&(i[0]=Mje(Ae(t)?t(i[0]):t)),r!=null&&(i[1]=Ps(Ae(r)?r(i[1]):r)),n!=null&&(i[2]=Ps(Ae(n)?n(i[2]):n)),la(aI(i),"rgba")}function gy(e,t){var r=On(e);if(r&&t!=null)return r[3]=py(t),la(r,"rgba")}function la(e,t){if(!(!e||!e.length)){var r=e[0]+","+e[1]+","+e[2];return(t==="rgba"||t==="hsva"||t==="hsla")&&(r+=","+e[3]),t+"("+r+")"}}function my(e,t){var r=On(e);return r?(.299*r[0]+.587*r[1]+.114*r[2])*r[3]/255+(1-r[3])*t:0}function Eje(){return la([Math.round(Math.random()*255),Math.round(Math.random()*255),Math.round(Math.random()*255)],"rgb")}var NF=new Xd(100);function uw(e){if(ge(e)){var t=NF.get(e);return t||(t=lw(e,-.1),NF.put(e,t)),t}else if(s0(e)){var r=ne({},e);return r.colorStops=se(e.colorStops,function(n){return{offset:n.offset,color:lw(n.color,-.1)}}),r}return e}const Oje=Object.freeze(Object.defineProperty({__proto__:null,fastLerp:qg,fastMapToColor:Lje,lerp:SN,lift:lw,liftColor:uw,lum:my,mapToColor:Ije,modifyAlpha:gy,modifyHSL:ks,parse:On,parseCssFloat:Ps,parseCssInt:ib,random:Eje,stringify:la,toHex:kje},Symbol.toStringTag,{value:"Module"}));var cw=Math.round;function yy(e){var t;if(!e||e==="transparent")e="none";else if(typeof e=="string"&&e.indexOf("rgba")>-1){var r=On(e);r&&(e="rgb("+r[0]+","+r[1]+","+r[2]+")",t=r[3])}return{color:e,opacity:t??1}}var jF=1e-4;function Nl(e){return e-jF}function Ox(e){return cw(e*1e3)/1e3}function oI(e){return cw(e*1e4)/1e4}function Dje(e){return"matrix("+Ox(e[0])+","+Ox(e[1])+","+Ox(e[2])+","+Ox(e[3])+","+oI(e[4])+","+oI(e[5])+")"}var Nje={left:"start",right:"end",center:"middle",middle:"middle"};function jje(e,t,r){return r==="top"?e+=t/2:r==="bottom"&&(e-=t/2),e}function Rje(e){return e&&(e.shadowBlur||e.shadowOffsetX||e.shadowOffsetY)}function Bje(e){var t=e.style,r=e.getGlobalScale();return[t.shadowColor,(t.shadowBlur||0).toFixed(2),(t.shadowOffsetX||0).toFixed(2),(t.shadowOffsetY||0).toFixed(2),r[0],r[1]].join(",")}function rJ(e){return e&&!!e.image}function zje(e){return e&&!!e.svgElement}function TN(e){return rJ(e)||zje(e)}function nJ(e){return e.type==="linear"}function iJ(e){return e.type==="radial"}function aJ(e){return e&&(e.type==="linear"||e.type==="radial")}function ET(e){return"url(#"+e+")"}function oJ(e){var t=e.getGlobalScale(),r=Math.max(t[0],t[1]);return Math.max(Math.ceil(Math.log(r)/Math.log(10)),1)}function sJ(e){var t=e.x||0,r=e.y||0,n=(e.rotation||0)*Hg,i=Se(e.scaleX,1),a=Se(e.scaleY,1),o=e.skewX||0,s=e.skewY||0,l=[];return(t||r)&&l.push("translate("+t+"px,"+r+"px)"),n&&l.push("rotate("+n+")"),(i!==1||a!==1)&&l.push("scale("+i+","+a+")"),(o||s)&&l.push("skew("+cw(o*Hg)+"deg, "+cw(s*Hg)+"deg)"),l.join(" ")}var $je=function(){return nt.hasGlobalWindow&&Ae(window.btoa)?function(e){return window.btoa(unescape(encodeURIComponent(e)))}:typeof Buffer<"u"?function(e){return Buffer.from(e).toString("base64")}:function(e){return null}}(),sI=Array.prototype.slice;function fs(e,t,r){return(t-e)*r+e}function n2(e,t,r,n){for(var i=t.length,a=0;an?t:e,a=Math.min(r,n),o=i[a-1]||{color:[0,0,0,0],offset:0},s=a;so;if(s)n.length=o;else for(var l=a;l=1},e.prototype.getAdditiveTrack=function(){return this._additiveTrack},e.prototype.addKeyframe=function(t,r,n){this._needsSort=!0;var i=this.keyframes,a=i.length,o=!1,s=BF,l=r;if(xn(r)){var u=Wje(r);s=u,(u===1&&!ot(r[0])||u===2&&!ot(r[0][0]))&&(o=!0)}else if(ot(r)&&!mn(r))s=Nx;else if(ge(r))if(!isNaN(+r))s=Nx;else{var c=On(r);c&&(l=c,s=xg)}else if(s0(r)){var f=ne({},l);f.colorStops=se(r.colorStops,function(d){return{offset:d.offset,color:On(d.color)}}),nJ(r)?s=lI:iJ(r)&&(s=uI),l=f}a===0?this.valType=s:(s!==this.valType||s===BF)&&(o=!0),this.discrete=this.discrete||o;var h={time:t,value:l,rawValue:r,percent:0};return n&&(h.easing=n,h.easingFunc=Ae(n)?n:Xg[n]||wN(n)),i.push(h),h},e.prototype.prepare=function(t,r){var n=this.keyframes;this._needsSort&&n.sort(function(m,y){return m.time-y.time});for(var i=this.valType,a=n.length,o=n[a-1],s=this.discrete,l=jx(i),u=zF(i),c=0;c=0&&!(o[c].percent<=r);c--);c=h(c,s-2)}else{for(c=f;cr);c++);c=h(c-1,s-2)}v=o[c+1],d=o[c]}if(d&&v){this._lastFr=c,this._lastFrP=r;var y=v.percent-d.percent,x=y===0?1:h((r-d.percent)/y,1);v.easingFunc&&(x=v.easingFunc(x));var _=n?this._additiveValue:u?Np:t[l];if((jx(a)||u)&&!_&&(_=this._additiveValue=[]),this.discrete)t[l]=x<1?d.rawValue:v.rawValue;else if(jx(a))a===ob?n2(_,d[i],v[i],x):Fje(_,d[i],v[i],x);else if(zF(a)){var b=d[i],S=v[i],T=a===lI;t[l]={type:T?"linear":"radial",x:fs(b.x,S.x,x),y:fs(b.y,S.y,x),colorStops:se(b.colorStops,function(A,P){var I=S.colorStops[P];return{offset:fs(A.offset,I.offset,x),color:ab(n2([],A.color,I.color,x))}}),global:S.global},T?(t[l].x2=fs(b.x2,S.x2,x),t[l].y2=fs(b.y2,S.y2,x)):t[l].r=fs(b.r,S.r,x)}else if(u)n2(_,d[i],v[i],x),n||(t[l]=ab(_));else{var C=fs(d[i],v[i],x);n?this._additiveValue=C:t[l]=C}n&&this._addToTarget(t)}}},e.prototype._addToTarget=function(t){var r=this.valType,n=this.propName,i=this._additiveValue;r===Nx?t[n]=t[n]+i:r===xg?(On(t[n],Np),Dx(Np,Np,i,1),t[n]=ab(Np)):r===ob?Dx(t[n],t[n],i,1):r===lJ&&RF(t[n],t[n],i,1)},e}(),CN=function(){function e(t,r,n,i){if(this._tracks={},this._trackKeys=[],this._maxTime=0,this._started=0,this._clip=null,this._target=t,this._loop=r,r&&i){MT("Can' use additive animation on looped animation.");return}this._additiveAnimators=i,this._allowDiscrete=n}return e.prototype.getMaxTime=function(){return this._maxTime},e.prototype.getDelay=function(){return this._delay},e.prototype.getLoop=function(){return this._loop},e.prototype.getTarget=function(){return this._target},e.prototype.changeTarget=function(t){this._target=t},e.prototype.when=function(t,r,n){return this.whenWithKeys(t,r,it(r),n)},e.prototype.whenWithKeys=function(t,r,n,i){for(var a=this._tracks,o=0;o0&&l.addKeyframe(0,Kg(u),i),this._trackKeys.push(s)}l.addKeyframe(t,Kg(r[s]),i)}return this._maxTime=Math.max(this._maxTime,t),this},e.prototype.pause=function(){this._clip.pause(),this._paused=!0},e.prototype.resume=function(){this._clip.resume(),this._paused=!1},e.prototype.isPaused=function(){return!!this._paused},e.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},e.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var t=this._doneCbs;if(t)for(var r=t.length,n=0;n0)){this._started=1;for(var r=this,n=[],i=this._maxTime||0,a=0;a1){var s=o.pop();a.addKeyframe(s.time,t[i]),a.prepare(this._maxTime,a.getAdditiveTrack())}}}},e}();function Uh(){return new Date().getTime()}var Uje=function(e){q(t,e);function t(r){var n=e.call(this)||this;return n._running=!1,n._time=0,n._pausedTime=0,n._pauseStart=0,n._paused=!1,r=r||{},n.stage=r.stage||{},n}return t.prototype.addClip=function(r){r.animation&&this.removeClip(r),this._head?(this._tail.next=r,r.prev=this._tail,r.next=null,this._tail=r):this._head=this._tail=r,r.animation=this},t.prototype.addAnimator=function(r){r.animation=this;var n=r.getClip();n&&this.addClip(n)},t.prototype.removeClip=function(r){if(r.animation){var n=r.prev,i=r.next;n?n.next=i:this._head=i,i?i.prev=n:this._tail=n,r.next=r.prev=r.animation=null}},t.prototype.removeAnimator=function(r){var n=r.getClip();n&&this.removeClip(n),r.animation=null},t.prototype.update=function(r){for(var n=Uh()-this._pausedTime,i=n-this._time,a=this._head;a;){var o=a.next,s=a.step(n,i);s&&(a.ondestroy(),this.removeClip(a)),a=o}this._time=n,r||(this.trigger("frame",i),this.stage.update&&this.stage.update())},t.prototype._startLoop=function(){var r=this;this._running=!0;function n(){r._running&&(aw(n),!r._paused&&r.update())}aw(n)},t.prototype.start=function(){this._running||(this._time=Uh(),this._pausedTime=0,this._startLoop())},t.prototype.stop=function(){this._running=!1},t.prototype.pause=function(){this._paused||(this._pauseStart=Uh(),this._paused=!0)},t.prototype.resume=function(){this._paused&&(this._pausedTime+=Uh()-this._pauseStart,this._paused=!1)},t.prototype.clear=function(){for(var r=this._head;r;){var n=r.next;r.prev=r.next=r.animation=null,r=n}this._head=this._tail=null},t.prototype.isFinished=function(){return this._head==null},t.prototype.animate=function(r,n){n=n||{},this.start();var i=new CN(r,n.loop);return this.addAnimator(i),i},t}(xa),Zje=300,i2=nt.domSupported,a2=function(){var e=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],t=["touchstart","touchend","touchmove"],r={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},n=se(e,function(i){var a=i.replace("mouse","pointer");return r.hasOwnProperty(a)?a:i});return{mouse:e,touch:t,pointer:n}}(),$F={mouse:["mousemove","mouseup"],pointer:["pointermove","pointerup"]},FF=!1;function cI(e){var t=e.pointerType;return t==="pen"||t==="touch"}function Yje(e){e.touching=!0,e.touchTimer!=null&&(clearTimeout(e.touchTimer),e.touchTimer=null),e.touchTimer=setTimeout(function(){e.touching=!1,e.touchTimer=null},700)}function o2(e){e&&(e.zrByTouch=!0)}function Xje(e,t){return Zi(e.dom,new qje(e,t),!0)}function uJ(e,t){for(var r=t,n=!1;r&&r.nodeType!==9&&!(n=r.domBelongToZr||r!==t&&r===e.painterRoot);)r=r.parentNode;return n}var qje=function(){function e(t,r){this.stopPropagation=sr,this.stopImmediatePropagation=sr,this.preventDefault=sr,this.type=r.type,this.target=this.currentTarget=t.dom,this.pointerType=r.pointerType,this.clientX=r.clientX,this.clientY=r.clientY}return e}(),ka={mousedown:function(e){e=Zi(this.dom,e),this.__mayPointerCapture=[e.zrX,e.zrY],this.trigger("mousedown",e)},mousemove:function(e){e=Zi(this.dom,e);var t=this.__mayPointerCapture;t&&(e.zrX!==t[0]||e.zrY!==t[1])&&this.__togglePointerCapture(!0),this.trigger("mousemove",e)},mouseup:function(e){e=Zi(this.dom,e),this.__togglePointerCapture(!1),this.trigger("mouseup",e)},mouseout:function(e){e=Zi(this.dom,e);var t=e.toElement||e.relatedTarget;uJ(this,t)||(this.__pointerCapturing&&(e.zrEventControl="no_globalout"),this.trigger("mouseout",e))},wheel:function(e){FF=!0,e=Zi(this.dom,e),this.trigger("mousewheel",e)},mousewheel:function(e){FF||(e=Zi(this.dom,e),this.trigger("mousewheel",e))},touchstart:function(e){e=Zi(this.dom,e),o2(e),this.__lastTouchMoment=new Date,this.handler.processGesture(e,"start"),ka.mousemove.call(this,e),ka.mousedown.call(this,e)},touchmove:function(e){e=Zi(this.dom,e),o2(e),this.handler.processGesture(e,"change"),ka.mousemove.call(this,e)},touchend:function(e){e=Zi(this.dom,e),o2(e),this.handler.processGesture(e,"end"),ka.mouseup.call(this,e),+new Date-+this.__lastTouchMomentWF||e<-WF}var Fu=[],eh=[],l2=Hr(),u2=Math.abs,ws=function(){function e(){}return e.prototype.getLocalTransform=function(t){return e.getLocalTransform(this,t)},e.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},e.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},e.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},e.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},e.prototype.needLocalTransform=function(){return $u(this.rotation)||$u(this.x)||$u(this.y)||$u(this.scaleX-1)||$u(this.scaleY-1)||$u(this.skewX)||$u(this.skewY)},e.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,r=this.needLocalTransform(),n=this.transform;if(!(r||t)){n&&(GF(n),this.invTransform=null);return}n=n||Hr(),r?this.getLocalTransform(n):GF(n),t&&(r?Ga(n,t,n):f0(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)},e.prototype._resolveGlobalScaleRatio=function(t){var r=this.globalScaleRatio;if(r!=null&&r!==1){this.getGlobalScale(Fu);var n=Fu[0]<0?-1:1,i=Fu[1]<0?-1:1,a=((Fu[0]-n)*r+n)/Fu[0]||0,o=((Fu[1]-i)*r+i)/Fu[1]||0;t[0]*=a,t[1]*=a,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||Hr(),va(this.invTransform,t)},e.prototype.getComputedTransform=function(){for(var t=this,r=[];t;)r.push(t),t=t.parent;for(;t=r.pop();)t.updateTransform();return this.transform},e.prototype.setLocalTransform=function(t){if(t){var r=t[0]*t[0]+t[1]*t[1],n=t[2]*t[2]+t[3]*t[3],i=Math.atan2(t[1],t[0]),a=Math.PI/2+i-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(a),r=Math.sqrt(r),this.skewX=a,this.skewY=0,this.rotation=-i,this.x=+t[4],this.y=+t[5],this.scaleX=r,this.scaleY=n,this.originX=0,this.originY=0}},e.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,r=this.transform;t&&t.transform&&(t.invTransform=t.invTransform||Hr(),Ga(eh,t.invTransform,r),r=eh);var n=this.originX,i=this.originY;(n||i)&&(l2[4]=n,l2[5]=i,Ga(eh,r,l2),eh[4]-=n,eh[5]-=i,r=eh),this.setLocalTransform(r)}},e.prototype.getGlobalScale=function(t){var r=this.transform;return t=t||[],r?(t[0]=Math.sqrt(r[0]*r[0]+r[1]*r[1]),t[1]=Math.sqrt(r[2]*r[2]+r[3]*r[3]),r[0]<0&&(t[0]=-t[0]),r[3]<0&&(t[1]=-t[1]),t):(t[0]=1,t[1]=1,t)},e.prototype.transformCoordToLocal=function(t,r){var n=[t,r],i=this.invTransform;return i&&lr(n,n,i),n},e.prototype.transformCoordToGlobal=function(t,r){var n=[t,r],i=this.transform;return i&&lr(n,n,i),n},e.prototype.getLineScale=function(){var t=this.transform;return t&&u2(t[0]-1)>1e-10&&u2(t[3]-1)>1e-10?Math.sqrt(u2(t[0]*t[3]-t[2]*t[1])):1},e.prototype.copyTransform=function(t){hw(this,t)},e.getLocalTransform=function(t,r){r=r||[];var n=t.originX||0,i=t.originY||0,a=t.scaleX,o=t.scaleY,s=t.anchorX,l=t.anchorY,u=t.rotation||0,c=t.x,f=t.y,h=t.skewX?Math.tan(t.skewX):0,d=t.skewY?Math.tan(-t.skewY):0;if(n||i||s||l){var v=n+s,m=i+l;r[4]=-v*a-h*m*o,r[5]=-m*o-d*v*a}else r[4]=r[5]=0;return r[0]=a,r[3]=o,r[1]=d*a,r[2]=h*o,u&&el(r,r,u),r[4]+=n+c,r[5]+=i+f,r},e.initDefaultProps=function(){var t=e.prototype;t.scaleX=t.scaleY=t.globalScaleRatio=1,t.x=t.y=t.originX=t.originY=t.skewX=t.skewY=t.rotation=t.anchorX=t.anchorY=0}(),e}(),Vo=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function hw(e,t){for(var r=0;r=HF)){e=e||Vs;for(var t=[],r=+new Date,n=0;n<=127;n++)t[n]=ci.measureText(String.fromCharCode(n),e).width;var i=+new Date-r;return i>16?c2=HF:i>2&&c2++,t}}var c2=0,HF=5;function fJ(e,t){return e.asciiWidthMapTried||(e.asciiWidthMap=tRe(e.font),e.asciiWidthMapTried=!0),0<=t&&t<=127?e.asciiWidthMap!=null?e.asciiWidthMap[t]:e.asciiCharWidth:e.stWideCharWidth}function Ro(e,t){var r=e.strWidthCache,n=r.get(t);return n==null&&(n=ci.measureText(t,e.font).width,r.put(t,n)),n}function UF(e,t,r,n){var i=Ro(jo(t),e),a=h0(t),o=qd(0,i,r),s=Gc(0,a,n),l=new Oe(o,s,i,a);return l}function OT(e,t,r,n){var i=((e||"")+"").split(` +`),a=i.length;if(a===1)return UF(i[0],t,r,n);for(var o=new Oe(0,0,0,0),s=0;s=0?parseFloat(e)/100*t:parseFloat(e):e}function dw(e,t,r){var n=t.position||"inside",i=t.distance!=null?t.distance:5,a=r.height,o=r.width,s=a/2,l=r.x,u=r.y,c="left",f="top";if(n instanceof Array)l+=Ka(n[0],r.width),u+=Ka(n[1],r.height),c=null,f=null;else switch(n){case"left":l-=i,u+=s,c="right",f="middle";break;case"right":l+=i+o,u+=s,f="middle";break;case"top":l+=o/2,u-=i,c="center",f="bottom";break;case"bottom":l+=o/2,u+=a+i,c="center";break;case"inside":l+=o/2,u+=s,c="center",f="middle";break;case"insideLeft":l+=i,u+=s,f="middle";break;case"insideRight":l+=o-i,u+=s,c="right",f="middle";break;case"insideTop":l+=o/2,u+=i,c="center";break;case"insideBottom":l+=o/2,u+=a-i,c="center",f="bottom";break;case"insideTopLeft":l+=i,u+=i;break;case"insideTopRight":l+=o-i,u+=i,c="right";break;case"insideBottomLeft":l+=i,u+=a-i,f="bottom";break;case"insideBottomRight":l+=o-i,u+=a-i,c="right",f="bottom";break}return e=e||{},e.x=l,e.y=u,e.align=c,e.verticalAlign=f,e}var f2="__zr_normal__",h2=Vo.concat(["ignore"]),rRe=da(Vo,function(e,t){return e[t]=!0,e},{ignore:!1}),th={},nRe=new Oe(0,0,0,0),Bx=[],DT=function(){function e(t){this.id=mN(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return e.prototype._init=function(t){this.attr(t)},e.prototype.drift=function(t,r,n){switch(this.draggable){case"horizontal":r=0;break;case"vertical":t=0;break}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=r,this.decomposeTransform(),this.markRedraw()},e.prototype.beforeUpdate=function(){},e.prototype.afterUpdate=function(){},e.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},e.prototype.updateInnerText=function(t){var r=this._textContent;if(r&&(!r.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,i=n.local,a=r.innerTransformable,o=void 0,s=void 0,l=!1;a.parent=i?this:null;var u=!1;a.copyTransform(r);var c=n.position!=null,f=n.autoOverflowArea,h=void 0;if((f||c)&&(h=nRe,n.layoutRect?h.copy(n.layoutRect):h.copy(this.getBoundingRect()),i||h.applyTransform(this.transform)),c){this.calculateTextPosition?this.calculateTextPosition(th,n,h):dw(th,n,h),a.x=th.x,a.y=th.y,o=th.align,s=th.verticalAlign;var d=n.origin;if(d&&n.rotation!=null){var v=void 0,m=void 0;d==="center"?(v=h.width*.5,m=h.height*.5):(v=Ka(d[0],h.width),m=Ka(d[1],h.height)),u=!0,a.originX=-a.x+v+(i?0:h.x),a.originY=-a.y+m+(i?0:h.y)}}n.rotation!=null&&(a.rotation=n.rotation);var y=n.offset;y&&(a.x+=y[0],a.y+=y[1],u||(a.originX=-y[0],a.originY=-y[1]));var x=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={});if(f){var _=x.overflowRect=x.overflowRect||new Oe(0,0,0,0);a.getLocalTransform(Bx),va(Bx,Bx),Oe.copy(_,h),_.applyTransform(Bx)}else x.overflowRect=null;var b=n.inside==null?typeof n.position=="string"&&n.position.indexOf("inside")>=0:n.inside,S=void 0,T=void 0,C=void 0;b&&this.canBeInsideText()?(S=n.insideFill,T=n.insideStroke,(S==null||S==="auto")&&(S=this.getInsideTextFill()),(T==null||T==="auto")&&(T=this.getInsideTextStroke(S),C=!0)):(S=n.outsideFill,T=n.outsideStroke,(S==null||S==="auto")&&(S=this.getOutsideFill()),(T==null||T==="auto")&&(T=this.getOutsideStroke(S),C=!0)),S=S||"#000",(S!==x.fill||T!==x.stroke||C!==x.autoStroke||o!==x.align||s!==x.verticalAlign)&&(l=!0,x.fill=S,x.stroke=T,x.autoStroke=C,x.align=o,x.verticalAlign=s,r.setDefaultTextStyle(x)),r.__dirty|=wi,l&&r.dirtyStyle(!0)}},e.prototype.canBeInsideText=function(){return!0},e.prototype.getInsideTextFill=function(){return"#fff"},e.prototype.getInsideTextStroke=function(t){return"#000"},e.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?vI:dI},e.prototype.getOutsideStroke=function(t){var r=this.__zr&&this.__zr.getBackgroundColor(),n=typeof r=="string"&&On(r);n||(n=[255,255,255,1]);for(var i=n[3],a=this.__zr.isDarkMode(),o=0;o<3;o++)n[o]=n[o]*i+(a?0:255)*(1-i);return n[3]=1,la(n,"rgba")},e.prototype.traverse=function(t,r){},e.prototype.attrKV=function(t,r){t==="textConfig"?this.setTextConfig(r):t==="textContent"?this.setTextContent(r):t==="clipPath"?this.setClipPath(r):t==="extra"?(this.extra=this.extra||{},ne(this.extra,r)):this[t]=r},e.prototype.hide=function(){this.ignore=!0,this.markRedraw()},e.prototype.show=function(){this.ignore=!1,this.markRedraw()},e.prototype.attr=function(t,r){if(typeof t=="string")this.attrKV(t,r);else if(Le(t))for(var n=t,i=it(n),a=0;a0},e.prototype.getState=function(t){return this.states[t]},e.prototype.ensureState=function(t){var r=this.states;return r[t]||(r[t]={}),r[t]},e.prototype.clearStates=function(t){this.useState(f2,!1,t)},e.prototype.useState=function(t,r,n,i){var a=t===f2,o=this.hasState();if(!(!o&&a)){var s=this.currentStates,l=this.stateTransition;if(!(We(s,t)>=0&&(r||s.length===1))){var u;if(this.stateProxy&&!a&&(u=this.stateProxy(t)),u||(u=this.states&&this.states[t]),!u&&!a){MT("State "+t+" not exists.");return}a||this.saveCurrentToNormalState(u);var c=!!(u&&u.hoverLayer||i);c&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,u,this._normalState,r,!n&&!this.__inHover&&l&&l.duration>0,l);var f=this._textContent,h=this._textGuide;return f&&f.useState(t,r,n,c),h&&h.useState(t,r,n,c),a?(this.currentStates=[],this._normalState={}):r?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!c&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~wi),u}}},e.prototype.useStates=function(t,r,n){if(!t.length)this.clearStates();else{var i=[],a=this.currentStates,o=t.length,s=o===a.length;if(s){for(var l=0;l0,v);var m=this._textContent,y=this._textGuide;m&&m.useStates(t,r,h),y&&y.useStates(t,r,h),this._updateAnimationTargets(),this.currentStates=t.slice(),this.markRedraw(),!h&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=~wi)}},e.prototype.isSilent=function(){for(var t=this;t;){if(t.silent)return!0;var r=t.__hostTarget;t=r?t.ignoreHostSilent?null:r:t.parent}return!1},e.prototype._updateAnimationTargets=function(){for(var t=0;t=0){var n=this.currentStates.slice();n.splice(r,1),this.useStates(n)}},e.prototype.replaceState=function(t,r,n){var i=this.currentStates.slice(),a=We(i,t),o=We(i,r)>=0;a>=0?o?i.splice(a,1):i[a]=r:n&&!o&&i.push(r),this.useStates(i)},e.prototype.toggleState=function(t,r){r?this.useState(t,!0):this.removeState(t)},e.prototype._mergeStates=function(t){for(var r={},n,i=0;i=0&&a.splice(o,1)}),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},e.prototype.updateDuringAnimation=function(t){this.markRedraw()},e.prototype.stopAnimation=function(t,r){for(var n=this.animators,i=n.length,a=[],o=0;o0&&r.during&&a[0].during(function(v,m){r.during(m)});for(var h=0;h0||i.force&&!o.length){var P=void 0,I=void 0,k=void 0;if(s){I={},h&&(P={});for(var S=0;S=0&&(i.splice(a,0,r),this._doAdd(r))}return this},t.prototype.replace=function(r,n){var i=We(this._children,r);return i>=0&&this.replaceAt(n,i),this},t.prototype.replaceAt=function(r,n){var i=this._children,a=i[n];if(r&&r!==this&&r.parent!==this&&r!==a){i[n]=r,a.parent=null;var o=this.__zr;o&&a.removeSelfFromZr(o),this._doAdd(r)}return this},t.prototype._doAdd=function(r){r.parent&&r.parent.remove(r),r.parent=this;var n=this.__zr;n&&n!==r.__zr&&r.addSelfToZr(n),n&&n.refresh()},t.prototype.remove=function(r){var n=this.__zr,i=this._children,a=We(i,r);return a<0?this:(i.splice(a,1),r.parent=null,n&&r.removeSelfFromZr(n),n&&n.refresh(),this)},t.prototype.removeAll=function(){for(var r=this._children,n=this.__zr,i=0;i0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},e.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},e.prototype.wakeUp=function(){this._disposed||(this.animation.start(),this._stillFrameAccum=0)},e.prototype.refreshHover=function(){this._needsRefreshHover=!0},e.prototype.refreshHoverImmediately=function(){this._disposed||(this._needsRefreshHover=!1,this.painter.refreshHover&&this.painter.getType()==="canvas"&&this.painter.refreshHover())},e.prototype.resize=function(t){this._disposed||(t=t||{},this.painter.resize(t.width,t.height),this.handler.resize())},e.prototype.clearAnimation=function(){this._disposed||this.animation.clear()},e.prototype.getWidth=function(){if(!this._disposed)return this.painter.getWidth()},e.prototype.getHeight=function(){if(!this._disposed)return this.painter.getHeight()},e.prototype.setCursorStyle=function(t){this._disposed||this.handler.setCursorStyle(t)},e.prototype.findHover=function(t,r){if(!this._disposed)return this.handler.findHover(t,r)},e.prototype.on=function(t,r,n){return this._disposed||this.handler.on(t,r,n),this},e.prototype.off=function(t,r){this._disposed||this.handler.off(t,r)},e.prototype.trigger=function(t,r){this._disposed||this.handler.trigger(t,r)},e.prototype.clear=function(){if(!this._disposed){for(var t=this.storage.getRoots(),r=0;r0){if(e<=i)return o;if(e>=a)return s}else{if(e>=i)return o;if(e<=a)return s}else{if(e===i)return o;if(e===a)return s}return(e-i)/l*u+o}var ve=pRe;function pRe(e,t,r){switch(e){case"center":case"middle":e="50%";break;case"left":case"top":e="0%";break;case"right":case"bottom":e="100%";break}return vw(e,t,r)}function vw(e,t,r){return pe(e)?vRe(e).match(/%$/)?parseFloat(e)/100*t+(r||0):parseFloat(e):e==null?NaN:+e}function gr(e,t,r){return t==null&&(t=10),t=Math.min(Math.max(0,t),vJ),e=(+e).toFixed(t),r?e:+e}function Ai(e){return e.sort(function(t,r){return t-r}),e}function za(e){if(e=+e,isNaN(e))return 0;if(e>1e-14){for(var t=1,r=0;r<15;r++,t*=10)if(Math.round(e*t)/t===e)return r}return pJ(e)}function pJ(e){var t=e.toString().toLowerCase(),r=t.indexOf("e"),n=r>0?+t.slice(r+1):0,i=r>0?r:t.length,a=t.indexOf("."),o=a<0?0:i-1-a;return Math.max(0,o-n)}function SN(e,t){var r=Math.log,n=Math.LN10,i=Math.floor(r(e[1]-e[0])/n),a=Math.round(r(Co(t[1]-t[0]))/n),o=Math.min(Math.max(-i+a,0),20);return isFinite(o)?o:20}function gRe(e,t,r){if(!e[t])return 0;var n=gJ(e,r);return n[t]||0}function gJ(e,t){var r=da(e,function(d,v){return d+(isNaN(v)?0:v)},0);if(r===0)return[];for(var n=Math.pow(10,t),i=se(e,function(d){return(isNaN(d)?0:d)/r*n*100}),a=n*100,o=se(i,function(d){return Math.floor(d)}),s=da(o,function(d,v){return d+v},0),l=se(i,function(d,v){return d-o[v]});su&&(u=l[f],c=f);++o[c],l[c]=0,++s}return se(o,function(d){return d/n})}function mRe(e,t){var r=Math.max(za(e),za(t)),n=e+t;return r>vJ?n:gr(n,r)}var gI=9007199254740991;function TN(e){var t=Math.PI*2;return(e%t+t)%t}function Kd(e){return e>-HF&&e=10&&t++,t}function CN(e,t){var r=NT(e),n=Math.pow(10,r),i=e/n,a;return t?i<1.5?a=1:i<2.5?a=2:i<4?a=3:i<7?a=5:a=10:i<1?a=1:i<2?a=2:i<3?a=3:i<5?a=5:a=10,e=a*n,r>=-20?+e.toFixed(r<0?-r:0):e}function ub(e,t){var r=(e.length-1)*t+1,n=Math.floor(r),i=+e[n-1],a=r-n;return a?i+a*(e[n]-i):i}function mI(e){e.sort(function(l,u){return s(l,u,0)?-1:1});for(var t=-1/0,r=1,n=0;n0?t.length:0),this.item=null,this.key=NaN,this},e.prototype.next=function(){return(this._step>0?this._idx=this._end)?(this.item=this._list[this._idx],this.key=this._idx=this._idx+this._step,!0):!1},e}();function p2(e){e.option=e.parentModel=e.ecModel=null}var RRe=".",Vu="___EC__COMPONENT__CONTAINER___",MJ="___EC__EXTENDED_CLASS___";function Ao(e){var t={main:"",sub:""};if(e){var r=e.split(RRe);t.main=r[0]||"",t.sub=r[1]||""}return t}function BRe(e){xn(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(e),'componentType "'+e+'" illegal')}function zRe(e){return!!(e&&e[MJ])}function kN(e,t){e.$constructor=e,e.extend=function(r){var n=this,i;return $Re(n)?i=function(a){q(o,a);function o(){return a.apply(this,arguments)||this}return o}(n):(i=function(){(r.$constructor||n).apply(this,arguments)},pN(i,this)),ne(i.prototype,r),i[MJ]=!0,i.extend=this.extend,i.superCall=GRe,i.superApply=WRe,i.superClass=n,i}}function $Re(e){return Ce(e)&&/^class\s/.test(Function.prototype.toString.call(e))}function PJ(e,t){e.extend=t.extend}var FRe=Math.round(Math.random()*10);function VRe(e){var t=["__\0is_clz",FRe++].join("_");e.prototype[t]=!0,e.isInstance=function(r){return!!(r&&r[t])}}function GRe(e,t){for(var r=[],n=2;n=0||a&&We(a,l)<0)){var u=n.getShallow(l,t);u!=null&&(o[e[s][0]]=u)}}return o}}var HRe=[["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]],URe=cf(HRe),ZRe=function(){function e(){}return e.prototype.getAreaStyle=function(t,r){return URe(this,t,r)},e}(),xI=new Xd(50);function YRe(e){if(typeof e=="string"){var t=xI.get(e);return t&&t.image}else return e}function LN(e,t,r,n,i){if(e)if(typeof e=="string"){if(t&&t.__zrImageSrc===e||!r)return t;var a=xI.get(e),o={hostEl:r,cb:n,cbPayload:i};return a?(t=a.image,!RT(t)&&a.pending.push(o)):(t=ui.loadImage(e,XF,XF),t.__zrImageSrc=e,xI.put(e,t.__cachedImgObj={image:t,pending:[o]})),t}else return e;else return t}function XF(){var e=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var t=0;t=s;u++)l-=s;var c=Ro(o,r);return c>l&&(r="",c=0),l=e-c,i.ellipsis=r,i.ellipsisWidth=c,i.contentWidth=l,i.containerWidth=e,i}function IJ(e,t,r){var n=r.containerWidth,i=r.contentWidth,a=r.fontMeasureInfo;if(!n){e.textLine="",e.isTruncated=!1;return}var o=Ro(a,t);if(o<=n){e.textLine=t,e.isTruncated=!1;return}for(var s=0;;s++){if(o<=i||s>=r.maxIterations){t+=r.ellipsis;break}var l=s===0?qRe(t,i,a):o>0?Math.floor(t.length*i/o):0;t=t.substr(0,l),o=Ro(a,t)}t===""&&(t=r.placeholder),e.textLine=t,e.isTruncated=!0}function qRe(e,t,r){for(var n=0,i=0,a=e.length;im&&d){var b=Math.floor(m/h);v=v||x.length>b,x=x.slice(0,b),_=x.length*h}if(i&&c&&g!=null)for(var S=LJ(g,u,t.ellipsis,{minChar:t.truncateMinChar,placeholder:t.placeholder}),T={},C=0;Cv&&m2(a,o.substring(v,m),t,d),m2(a,g[2],t,d,g[1]),v=g2.lastIndex}vf){var Z=a.lines.length;D>0?(I.tokens=I.tokens.slice(0,D),A(I,E,k),a.lines=a.lines.slice(0,P+1)):a.lines=a.lines.slice(0,P),a.isTruncated=a.isTruncated||a.lines.length0&&v+n.accumWidth>n.width&&(c=t.split(` -`),u=!0),n.accumWidth=v}else{var g=OJ(t,l,n.width,n.breakAll,n.accumWidth);n.accumWidth=g.accumWidth+d,f=g.linesWidths,c=g.lines}}c||(c=t.split(` -`));for(var m=jo(l),x=0;x=32&&t<=591||t>=880&&t<=4351||t>=4608&&t<=5119||t>=7680&&t<=8303}var r5e=da(",&?/;] ".split(""),function(e,t){return e[t]=!0,e},{});function n5e(e){return t5e(e)?!!r5e[e]:!0}function OJ(e,t,r,n,i){for(var a=[],o=[],s="",l="",u=0,c=0,f=jo(t),h=0;hr:i+c+v>r){c?(s||l)&&(g?(s||(s=l,l="",u=0,c=u),a.push(s),o.push(c-u),l+=d,u+=v,s="",c=u):(l&&(s+=l,l="",u=0),a.push(s),o.push(c),s=d,c=v)):g?(a.push(l),o.push(u),l=d,u=v):(a.push(d),o.push(v));continue}c+=v,g?(l+=d,u+=v):(l&&(s+=l,l="",u=0),s+=d)}return l&&(s+=l),s&&(a.push(s),o.push(c)),a.length===1&&(c+=i),{accumWidth:c,lines:a,linesWidths:o}}function KF(e,t,r,n,i,a){if(e.baseX=r,e.baseY=n,e.outerWidth=e.outerHeight=null,!!t){var o=t.width*2,s=t.height*2;Oe.set(JF,qd(r,o,i),Gc(n,s,a),o,s),Oe.intersect(t,JF,null,QF);var l=QF.outIntersectRect;e.outerWidth=l.width,e.outerHeight=l.height,e.baseX=qd(l.x,l.width,i,!0),e.baseY=Gc(l.y,l.height,a,!0)}}var JF=new Oe(0,0,0,0),QF={outIntersectRect:{},clamp:!0};function IN(e){return e!=null?e+="":e=""}function i5e(e){var t=IN(e.text),r=e.font,n=Ro(jo(r),t),i=h0(r);return _I(e,n,i,null)}function _I(e,t,r,n){var i=new Oe(qd(e.x||0,t,e.textAlign),Gc(e.y||0,r,e.textBaseline),t,r),a=n??(EJ(e)?e.lineWidth:0);return a>0&&(i.x-=a/2,i.y-=a/2,i.width+=a,i.height+=a),i}function EJ(e){var t=e.stroke;return t!=null&&t!=="none"&&e.lineWidth>0}var bI="__zr_style_"+Math.round(Math.random()*10),Wc={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},BT={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};Wc[bI]=!0;var eV=["z","z2","invisible"],a5e=["invisible"],pa=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype._init=function(r){for(var n=it(r),i=0;i1e-4){s[0]=e-r,s[1]=t-n,l[0]=e+r,l[1]=t+n;return}if(zx[0]=b2(i)*r+e,zx[1]=_2(i)*n+t,$x[0]=b2(a)*r+e,$x[1]=_2(a)*n+t,u(s,zx,$x),c(l,zx,$x),i=i%Gu,i<0&&(i=i+Gu),a=a%Gu,a<0&&(a=a+Gu),i>a&&!o?a+=Gu:ii&&(Fx[0]=b2(d)*r+e,Fx[1]=_2(d)*n+t,u(s,Fx,s),c(l,Fx,l))}var It={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Wu=[],Hu=[],so=[],ol=[],lo=[],uo=[],w2=Math.min,S2=Math.max,Uu=Math.cos,Zu=Math.sin,is=Math.abs,wI=Math.PI,ml=wI*2,T2=typeof Float32Array<"u",jp=[];function C2(e){var t=Math.round(e/wI*1e8)/1e8;return t%2*wI}function $T(e,t){var r=C2(e[0]);r<0&&(r+=ml);var n=r-e[0],i=e[1];i+=n,!t&&i-r>=ml?i=r+ml:t&&r-i>=ml?i=r-ml:!t&&r>i?i=r+(ml-C2(r-i)):t&&r0&&(this._ux=is(n/fw/t)||0,this._uy=is(n/fw/r)||0)},e.prototype.setDPR=function(t){this.dpr=t},e.prototype.setContext=function(t){this._ctx=t},e.prototype.getContext=function(){return this._ctx},e.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},e.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},e.prototype.moveTo=function(t,r){return this._drawPendingPt(),this.addData(It.M,t,r),this._ctx&&this._ctx.moveTo(t,r),this._x0=t,this._y0=r,this._xi=t,this._yi=r,this},e.prototype.lineTo=function(t,r){var n=is(t-this._xi),i=is(r-this._yi),a=n>this._ux||i>this._uy;if(this.addData(It.L,t,r),this._ctx&&a&&this._ctx.lineTo(t,r),a)this._xi=t,this._yi=r,this._pendingPtDist=0;else{var o=n*n+i*i;o>this._pendingPtDist&&(this._pendingPtX=t,this._pendingPtY=r,this._pendingPtDist=o)}return this},e.prototype.bezierCurveTo=function(t,r,n,i,a,o){return this._drawPendingPt(),this.addData(It.C,t,r,n,i,a,o),this._ctx&&this._ctx.bezierCurveTo(t,r,n,i,a,o),this._xi=a,this._yi=o,this},e.prototype.quadraticCurveTo=function(t,r,n,i){return this._drawPendingPt(),this.addData(It.Q,t,r,n,i),this._ctx&&this._ctx.quadraticCurveTo(t,r,n,i),this._xi=n,this._yi=i,this},e.prototype.arc=function(t,r,n,i,a,o){this._drawPendingPt(),jp[0]=i,jp[1]=a,$T(jp,o),i=jp[0],a=jp[1];var s=a-i;return this.addData(It.A,t,r,n,n,i,s,0,o?0:1),this._ctx&&this._ctx.arc(t,r,n,i,a,o),this._xi=Uu(a)*n+t,this._yi=Zu(a)*n+r,this},e.prototype.arcTo=function(t,r,n,i,a){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,r,n,i,a),this},e.prototype.rect=function(t,r,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,r,n,i),this.addData(It.R,t,r,n,i),this},e.prototype.closePath=function(){this._drawPendingPt(),this.addData(It.Z);var t=this._ctx,r=this._x0,n=this._y0;return t&&t.closePath(),this._xi=r,this._yi=n,this},e.prototype.fill=function(t){t&&t.fill(),this.toStatic()},e.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},e.prototype.len=function(){return this._len},e.prototype.setData=function(t){if(this._saveData){var r=t.length;!(this.data&&this.data.length===r)&&T2&&(this.data=new Float32Array(r));for(var n=0;n0&&o))for(var s=0;sc.length&&(this._expandData(),c=this.data);for(var f=0;f0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},e.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var t=[],r=0;r11&&(this.data=new Float32Array(t)))}},e.prototype.getBoundingRect=function(){so[0]=so[1]=lo[0]=lo[1]=Number.MAX_VALUE,ol[0]=ol[1]=uo[0]=uo[1]=-Number.MAX_VALUE;var t=this.data,r=0,n=0,i=0,a=0,o;for(o=0;on||is(b)>i||h===r-1)&&(g=Math.sqrt(_*_+b*b),a=m,o=x);break}case It.C:{var S=t[h++],T=t[h++],m=t[h++],x=t[h++],C=t[h++],A=t[h++];g=xje(a,o,S,T,m,x,C,A,10),a=C,o=A;break}case It.Q:{var S=t[h++],T=t[h++],m=t[h++],x=t[h++];g=bje(a,o,S,T,m,x,10),a=m,o=x;break}case It.A:var P=t[h++],I=t[h++],k=t[h++],E=t[h++],D=t[h++],N=t[h++],z=N+D;h+=1,v&&(s=Uu(D)*k+P,l=Zu(D)*E+I),g=S2(k,E)*w2(ml,Math.abs(N)),a=Uu(z)*k+P,o=Zu(z)*E+I;break;case It.R:{s=a=t[h++],l=o=t[h++];var V=t[h++],F=t[h++];g=V*2+F*2;break}case It.Z:{var _=s-a,b=l-o;g=Math.sqrt(_*_+b*b),a=s,o=l;break}}g>=0&&(u[f++]=g,c+=g)}return this._pathLen=c,c},e.prototype.rebuildPath=function(t,r){var n=this.data,i=this._ux,a=this._uy,o=this._len,s,l,u,c,f,h,d=r<1,v,g,m=0,x=0,_,b=0,S,T;if(!(d&&(this._pathSegLen||this._calculateLength(),v=this._pathSegLen,g=this._pathLen,_=r*g,!_)))e:for(var C=0;C0&&(t.lineTo(S,T),b=0),A){case It.M:s=u=n[C++],l=c=n[C++],t.moveTo(u,c);break;case It.L:{f=n[C++],h=n[C++];var I=is(f-u),k=is(h-c);if(I>i||k>a){if(d){var E=v[x++];if(m+E>_){var D=(_-m)/E;t.lineTo(u*(1-D)+f*D,c*(1-D)+h*D);break e}m+=E}t.lineTo(f,h),u=f,c=h,b=0}else{var N=I*I+k*k;N>b&&(S=f,T=h,b=N)}break}case It.C:{var z=n[C++],V=n[C++],F=n[C++],$=n[C++],B=n[C++],Z=n[C++];if(d){var E=v[x++];if(m+E>_){var D=(_-m)/E;uu(u,z,F,B,D,Wu),uu(c,V,$,Z,D,Hu),t.bezierCurveTo(Wu[1],Hu[1],Wu[2],Hu[2],Wu[3],Hu[3]);break e}m+=E}t.bezierCurveTo(z,V,F,$,B,Z),u=B,c=Z;break}case It.Q:{var z=n[C++],V=n[C++],F=n[C++],$=n[C++];if(d){var E=v[x++];if(m+E>_){var D=(_-m)/E;vy(u,z,F,D,Wu),vy(c,V,$,D,Hu),t.quadraticCurveTo(Wu[1],Hu[1],Wu[2],Hu[2]);break e}m+=E}t.quadraticCurveTo(z,V,F,$),u=F,c=$;break}case It.A:var W=n[C++],G=n[C++],Y=n[C++],K=n[C++],ee=n[C++],le=n[C++],fe=n[C++],De=!n[C++],me=Y>K?Y:K,ie=is(Y-K)>.001,he=ee+le,ue=!1;if(d){var E=v[x++];m+E>_&&(he=ee+le*(_-m)/E,ue=!0),m+=E}if(ie&&t.ellipse?t.ellipse(W,G,Y,K,fe,ee,he,De):t.arc(W,G,me,ee,he,De),ue)break e;P&&(s=Uu(ee)*Y+W,l=Zu(ee)*K+G),u=Uu(he)*Y+W,c=Zu(he)*K+G;break;case It.R:s=u=n[C],l=c=n[C+1],f=n[C++],h=n[C++];var te=n[C++],Ve=n[C++];if(d){var E=v[x++];if(m+E>_){var Se=_-m;t.moveTo(f,h),t.lineTo(f+w2(Se,te),h),Se-=te,Se>0&&t.lineTo(f+te,h+w2(Se,Ve)),Se-=Ve,Se>0&&t.lineTo(f+S2(te-Se,0),h+Ve),Se-=te,Se>0&&t.lineTo(f,h+S2(Ve-Se,0));break e}m+=E}t.rect(f,h,te,Ve);break;case It.Z:if(d){var E=v[x++];if(m+E>_){var D=(_-m)/E;t.lineTo(u*(1-D)+s*D,c*(1-D)+l*D);break e}m+=E}t.closePath(),u=s,c=l}}},e.prototype.clone=function(){var t=new e,r=this.data;return t.data=r.slice?r.slice():Array.prototype.slice.call(r),t._len=this._len,t},e.prototype.canSave=function(){return!!this._saveData},e.CMD=It,e.initDefaultProps=function(){var t=e.prototype;t._saveData=!0,t._ux=0,t._uy=0,t._pendingPtDist=0,t._version=0}(),e}();function wl(e,t,r,n,i,a,o){if(i===0)return!1;var s=i,l=0,u=e;if(o>t+s&&o>n+s||oe+s&&a>r+s||at+f&&c>n+f&&c>a+f&&c>s+f||ce+f&&u>r+f&&u>i+f&&u>o+f||ut+u&&l>n+u&&l>a+u||le+u&&s>r+u&&s>i+u||sr||c+ui&&(i+=Rp);var h=Math.atan2(l,s);return h<0&&(h+=Rp),h>=n&&h<=i||h+Rp>=n&&h+Rp<=i}function hs(e,t,r,n,i,a){if(a>t&&a>n||ai?s:0}var sl=Wo.CMD,Yu=Math.PI*2,h5e=1e-4;function d5e(e,t){return Math.abs(e-t)t&&u>n&&u>a&&u>s||u1&&v5e(),d=$r(t,n,a,s,Xi[0]),h>1&&(v=$r(t,n,a,s,Xi[1]))),h===2?mt&&s>n&&s>a||s=0&&u<=1){for(var c=0,f=tn(t,n,a,u),h=0;hr||s<-r)return 0;var l=Math.sqrt(r*r-s*s);zn[0]=-l,zn[1]=l;var u=Math.abs(n-i);if(u<1e-4)return 0;if(u>=Yu-1e-4){n=0,i=Yu;var c=a?1:-1;return o>=zn[0]+e&&o<=zn[1]+e?c:0}if(n>i){var f=n;n=i,i=f}n<0&&(n+=Yu,i+=Yu);for(var h=0,d=0;d<2;d++){var v=zn[d];if(v+e>o){var g=Math.atan2(s,v),c=a?1:-1;g<0&&(g=Yu+g),(g>=n&&g<=i||g+Yu>=n&&g+Yu<=i)&&(g>Math.PI/2&&g1&&(r||(s+=hs(l,u,c,f,n,i))),m&&(l=a[v],u=a[v+1],c=l,f=u),g){case sl.M:c=a[v++],f=a[v++],l=c,u=f;break;case sl.L:if(r){if(wl(l,u,a[v],a[v+1],t,n,i))return!0}else s+=hs(l,u,a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case sl.C:if(r){if(c5e(l,u,a[v++],a[v++],a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=p5e(l,u,a[v++],a[v++],a[v++],a[v++],a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case sl.Q:if(r){if(DJ(l,u,a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=g5e(l,u,a[v++],a[v++],a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case sl.A:var x=a[v++],_=a[v++],b=a[v++],S=a[v++],T=a[v++],C=a[v++];v+=1;var A=!!(1-a[v++]);h=Math.cos(T)*b+x,d=Math.sin(T)*S+_,m?(c=h,f=d):s+=hs(l,u,h,d,n,i);var P=(n-x)*S/b+x;if(r){if(f5e(x,_,S,T,T+C,A,t,P,i))return!0}else s+=m5e(x,_,S,T,T+C,A,P,i);l=Math.cos(T+C)*b+x,u=Math.sin(T+C)*S+_;break;case sl.R:c=l=a[v++],f=u=a[v++];var I=a[v++],k=a[v++];if(h=c+I,d=f+k,r){if(wl(c,f,h,f,t,n,i)||wl(h,f,h,d,t,n,i)||wl(h,d,c,d,t,n,i)||wl(c,d,c,f,t,n,i))return!0}else s+=hs(h,f,h,d,n,i),s+=hs(c,d,c,f,n,i);break;case sl.Z:if(r){if(wl(l,u,c,f,t,n,i))return!0}else s+=hs(l,u,c,f,n,i);l=c,u=f;break}}return!r&&!d5e(u,f)&&(s+=hs(l,u,c,f,n,i)||0),s!==0}function y5e(e,t,r){return NJ(e,0,!1,t,r)}function x5e(e,t,r,n){return NJ(e,t,!0,r,n)}var pw=Pe({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},Wc),_5e={style:Pe({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},BT.style)},A2=Vo.concat(["invisible","culling","z","z2","zlevel","parent"]),tt=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.update=function(){var r=this;e.prototype.update.call(this);var n=this.style;if(n.decal){var i=this._decalEl=this._decalEl||new t;i.buildPath===t.prototype.buildPath&&(i.buildPath=function(l){r.buildPath(l,r.shape)}),i.silent=!0;var a=i.style;for(var o in n)a[o]!==n[o]&&(a[o]=n[o]);a.fill=n.fill?n.decal:null,a.decal=null,a.shadowColor=null,n.strokeFirst&&(a.stroke=null);for(var s=0;s.5?hI:n>.2?Jje:dI}else if(r)return dI}return hI},t.prototype.getInsideTextStroke=function(r){var n=this.style.fill;if(pe(n)){var i=this.__zr,a=!!(i&&i.isDarkMode()),o=my(r,0)0))},t.prototype.hasFill=function(){var r=this.style,n=r.fill;return n!=null&&n!=="none"},t.prototype.getBoundingRect=function(){var r=this._rect,n=this.style,i=!r;if(i){var a=!1;this.path||(a=!0,this.createPathProxy());var o=this.path;(a||this.__dirty&Ch)&&(o.beginPath(),this.buildPath(o,this.shape,!1),this.pathUpdated()),r=o.getBoundingRect()}if(this._rect=r,this.hasStroke()&&this.path&&this.path.len()>0){var s=this._rectStroke||(this._rectStroke=r.clone());if(this.__dirty||i){s.copy(r);var l=n.strokeNoScale?this.getLineScale():1,u=n.lineWidth;if(!this.hasFill()){var c=this.strokeContainThreshold;u=Math.max(u,c??4)}l>1e-10&&(s.width+=u/l,s.height+=u/l,s.x-=u/l/2,s.y-=u/l/2)}return s}return r},t.prototype.contain=function(r,n){var i=this.transformCoordToLocal(r,n),a=this.getBoundingRect(),o=this.style;if(r=i[0],n=i[1],a.contain(r,n)){var s=this.path;if(this.hasStroke()){var l=o.lineWidth,u=o.strokeNoScale?this.getLineScale():1;if(u>1e-10&&(this.hasFill()||(l=Math.max(l,this.strokeContainThreshold)),x5e(s,l/u,r,n)))return!0}if(this.hasFill())return y5e(s,r,n)}return!1},t.prototype.dirtyShape=function(){this.__dirty|=Ch,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},t.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},t.prototype.animateShape=function(r){return this.animate("shape",r)},t.prototype.updateDuringAnimation=function(r){r==="style"?this.dirtyStyle():r==="shape"?this.dirtyShape():this.markRedraw()},t.prototype.attrKV=function(r,n){r==="shape"?this.setShape(n):e.prototype.attrKV.call(this,r,n)},t.prototype.setShape=function(r,n){var i=this.shape;return i||(i=this.shape={}),typeof r=="string"?i[r]=n:ne(i,r),this.dirtyShape(),this},t.prototype.shapeChanged=function(){return!!(this.__dirty&Ch)},t.prototype.createStyle=function(r){return u0(pw,r)},t.prototype._innerSaveToNormal=function(r){e.prototype._innerSaveToNormal.call(this,r);var n=this._normalState;r.shape&&!n.shape&&(n.shape=ne({},this.shape))},t.prototype._applyStateObj=function(r,n,i,a,o,s){e.prototype._applyStateObj.call(this,r,n,i,a,o,s);var l=!(n&&a),u;if(n&&n.shape?o?a?u=n.shape:(u=ne({},i.shape),ne(u,n.shape)):(u=ne({},a?this.shape:i.shape),ne(u,n.shape)):l&&(u=i.shape),u)if(o){this.shape=ne({},this.shape);for(var c={},f=it(u),h=0;hi&&(f=s+l,s*=i/f,l*=i/f),u+c>i&&(f=u+c,u*=i/f,c*=i/f),l+u>a&&(f=l+u,l*=a/f,u*=a/f),s+c>a&&(f=s+c,s*=a/f,c*=a/f),e.moveTo(r+s,n),e.lineTo(r+i-l,n),l!==0&&e.arc(r+i-l,n+l,l,-Math.PI/2,0),e.lineTo(r+i,n+a-u),u!==0&&e.arc(r+i-u,n+a-u,u,0,Math.PI/2),e.lineTo(r+c,n+a),c!==0&&e.arc(r+c,n+a-c,c,Math.PI/2,Math.PI),e.lineTo(r,n+s),s!==0&&e.arc(r+s,n+s,s,Math.PI,Math.PI*1.5)}var Uh=Math.round;function FT(e,t,r){if(t){var n=t.x1,i=t.x2,a=t.y1,o=t.y2;e.x1=n,e.x2=i,e.y1=a,e.y2=o;var s=r&&r.lineWidth;return s&&(Uh(n*2)===Uh(i*2)&&(e.x1=e.x2=Pi(n,s,!0)),Uh(a*2)===Uh(o*2)&&(e.y1=e.y2=Pi(a,s,!0))),e}}function jJ(e,t,r){if(t){var n=t.x,i=t.y,a=t.width,o=t.height;e.x=n,e.y=i,e.width=a,e.height=o;var s=r&&r.lineWidth;return s&&(e.x=Pi(n,s,!0),e.y=Pi(i,s,!0),e.width=Math.max(Pi(n+a,s,!1)-e.x,a===0?0:1),e.height=Math.max(Pi(i+o,s,!1)-e.y,o===0?0:1)),e}}function Pi(e,t,r){if(!t)return e;var n=Uh(e*2);return(n+Uh(t))%2===0?n/2:(n+(r?1:-1))/2}var A5e=function(){function e(){this.x=0,this.y=0,this.width=0,this.height=0}return e}(),M5e={},Xe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new A5e},t.prototype.buildPath=function(r,n){var i,a,o,s;if(this.subPixelOptimize){var l=jJ(M5e,n,this.style);i=l.x,a=l.y,o=l.width,s=l.height,l.r=n.r,n=l}else i=n.x,a=n.y,o=n.width,s=n.height;n.r?C5e(r,n):r.rect(i,a,o,s)},t.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},t}(tt);Xe.prototype.type="rect";var aV={fill:"#000"},oV=2,co={},P5e={style:Pe({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},BT.style)},at=function(e){q(t,e);function t(r){var n=e.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=aV,n.attr(r),n}return t.prototype.childrenRef=function(){return this._children},t.prototype.update=function(){e.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var r=0;r0,D=0;D=0&&(z=C[N],z.align==="right");)this._placeToken(z,r,P,x,D,"right",b),I-=z.width,D-=z.width,N--;for(E+=(c-(E-m)-(_-D)-I)/2;k<=N;)z=C[k],this._placeToken(z,r,P,x,E+z.width/2,"center",b),E+=z.width,k++;x+=P}},t.prototype._placeToken=function(r,n,i,a,o,s,l){var u=n.rich[r.styleName]||{};u.text=r.text;var c=r.verticalAlign,f=a+i/2;c==="top"?f=a+r.height/2:c==="bottom"&&(f=a+i-r.height/2);var h=!r.isLineHolder&&M2(u);h&&this._renderBackground(u,n,s==="right"?o-r.width:s==="center"?o-r.width/2:o,f-r.height/2,r.width,r.height);var d=!!u.backgroundColor,v=r.textPadding;v&&(o=hV(o,s,v),f-=r.height/2-v[0]-r.innerHeight/2);var g=this._getOrCreateChild(Jd),m=g.createStyle();g.useStyle(m);var x=this._defaultStyle,_=!1,b=0,S=!1,T=fV("fill"in u?u.fill:"fill"in n?n.fill:(_=!0,x.fill)),C=cV("stroke"in u?u.stroke:"stroke"in n?n.stroke:!d&&!l&&(!x.autoStroke||_)?(b=oV,S=!0,x.stroke):null),A=u.textShadowBlur>0||n.textShadowBlur>0;m.text=r.text,m.x=o,m.y=f,A&&(m.shadowBlur=u.textShadowBlur||n.textShadowBlur||0,m.shadowColor=u.textShadowColor||n.textShadowColor||"transparent",m.shadowOffsetX=u.textShadowOffsetX||n.textShadowOffsetX||0,m.shadowOffsetY=u.textShadowOffsetY||n.textShadowOffsetY||0),m.textAlign=s,m.textBaseline="middle",m.font=r.font||Vs,m.opacity=li(u.opacity,n.opacity,1),lV(m,u),C&&(m.lineWidth=li(u.lineWidth,n.lineWidth,b),m.lineDash=be(u.lineDash,n.lineDash),m.lineDashOffset=n.lineDashOffset||0,m.stroke=C),T&&(m.fill=T),g.setBoundingRect(_I(m,r.contentWidth,r.contentHeight,S?0:null))},t.prototype._renderBackground=function(r,n,i,a,o,s){var l=r.backgroundColor,u=r.borderWidth,c=r.borderColor,f=l&&l.image,h=l&&!f,d=r.borderRadius,v=this,g,m;if(h||r.lineHeight||u&&c){g=this._getOrCreateChild(Xe),g.useStyle(g.createStyle()),g.style.fill=null;var x=g.shape;x.x=i,x.y=a,x.width=o,x.height=s,x.r=d,g.dirtyShape()}if(h){var _=g.style;_.fill=l||null,_.fillOpacity=be(r.fillOpacity,1)}else if(f){m=this._getOrCreateChild(Yr),m.onload=function(){v.dirtyStyle()};var b=m.style;b.image=l.image,b.x=i,b.y=a,b.width=o,b.height=s}if(u&&c){var _=g.style;_.lineWidth=u,_.stroke=c,_.strokeOpacity=be(r.strokeOpacity,1),_.lineDash=r.borderDash,_.lineDashOffset=r.borderDashOffset||0,g.strokeContainThreshold=0,g.hasFill()&&g.hasStroke()&&(_.strokeFirst=!0,_.lineWidth*=2)}var S=(g||m).style;S.shadowBlur=r.shadowBlur||0,S.shadowColor=r.shadowColor||"transparent",S.shadowOffsetX=r.shadowOffsetX||0,S.shadowOffsetY=r.shadowOffsetY||0,S.opacity=li(r.opacity,n.opacity,1)},t.makeFont=function(r){var n="";return BJ(r)&&(n=[r.fontStyle,r.fontWeight,RJ(r.fontSize),r.fontFamily||"sans-serif"].join(" ")),n&&Ci(n)||r.textFont||r.font},t}(pa),k5e={left:!0,right:1,center:1},L5e={top:1,bottom:1,middle:1},sV=["fontStyle","fontWeight","fontSize","fontFamily"];function RJ(e){return typeof e=="string"&&(e.indexOf("px")!==-1||e.indexOf("rem")!==-1||e.indexOf("em")!==-1)?e:isNaN(+e)?fN+"px":e+"px"}function lV(e,t){for(var r=0;r=0,a=!1;if(e instanceof tt){var o=zJ(e),s=i&&o.selectFill||o.normalFill,l=i&&o.selectStroke||o.normalStroke;if(th(s)||th(l)){n=n||{};var u=n.style||{};u.fill==="inherit"?(a=!0,n=ne({},n),u=ne({},u),u.fill=s):!th(u.fill)&&th(s)?(a=!0,n=ne({},n),u=ne({},u),u.fill=uw(s)):!th(u.stroke)&&th(l)&&(a||(n=ne({},n),u=ne({},u)),u.stroke=uw(l)),n.style=u}}if(n&&n.z2==null){a||(n=ne({},n));var c=e.z2EmphasisLift;n.z2=e.z2+(c??Bv)}return n}function R5e(e,t,r){if(r&&r.z2==null){r=ne({},r);var n=e.z2SelectLift;r.z2=e.z2+(n??O5e)}return r}function B5e(e,t,r){var n=We(e.currentStates,t)>=0,i=e.style.opacity,a=n?null:N5e(e,["opacity"],t,{opacity:1});r=r||{};var o=r.style||{};return o.opacity==null&&(r=ne({},r),o=ne({opacity:n?i:a.opacity*.1},o),r.style=o),r}function P2(e,t){var r=this.states[e];if(this.style){if(e==="emphasis")return j5e(this,e,t,r);if(e==="blur")return B5e(this,e,r);if(e==="select")return R5e(this,e,r)}return r}function ff(e){e.stateProxy=P2;var t=e.getTextContent(),r=e.getTextGuideLine();t&&(t.stateProxy=P2),r&&(r.stateProxy=P2)}function mV(e,t){!UJ(e,t)&&!e.__highByOuter&&tl(e,$J)}function yV(e,t){!UJ(e,t)&&!e.__highByOuter&&tl(e,FJ)}function Ws(e,t){e.__highByOuter|=1<<(t||0),tl(e,$J)}function Hs(e,t){!(e.__highByOuter&=~(1<<(t||0)))&&tl(e,FJ)}function GJ(e){tl(e,NN)}function jN(e){tl(e,VJ)}function WJ(e){tl(e,E5e)}function HJ(e){tl(e,D5e)}function UJ(e,t){return e.__highDownSilentOnTouch&&t.zrByTouch}function ZJ(e){var t=e.getModel(),r=[],n=[];t.eachComponent(function(i,a){var o=ON(a),s=i==="series",l=s?e.getViewOfSeriesModel(a):e.getViewOfComponentModel(a);!s&&n.push(l),o.isBlured&&(l.group.traverse(function(u){VJ(u)}),s&&r.push(a)),o.isBlured=!1}),R(n,function(i){i&&i.toggleBlurSeries&&i.toggleBlurSeries(r,!1,t)})}function CI(e,t,r,n){var i=n.getModel();r=r||"coordinateSystem";function a(u,c){for(var f=0;f0){var s={dataIndex:o,seriesIndex:r.seriesIndex};a!=null&&(s.dataType=a),t.push(s)}})}),t}function Jl(e,t,r){Ec(e,!0),tl(e,ff),MI(e,t,r)}function W5e(e){Ec(e,!1)}function Gt(e,t,r,n){n?W5e(e):Jl(e,t,r)}function MI(e,t,r){var n=Ne(e);t!=null?(n.focus=t,n.blurScope=r):n.focus&&(n.focus=null)}var _V=["emphasis","blur","select"],H5e={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function Dr(e,t,r,n){r=r||"itemStyle";for(var i=0;i<_V.length;i++){var a=_V[i],o=t.getModel([a,r]),s=e.ensureState(a);s.style=n?n(o):o[H5e[r]]()}}function Ec(e,t){var r=t===!1,n=e;e.highDownSilentOnTouch&&(n.__highDownSilentOnTouch=e.highDownSilentOnTouch),(!r||n.__highDownDispatcher)&&(n.__highByOuter=n.__highByOuter||0,n.__highDownDispatcher=!r)}function by(e){return!!(e&&e.__highDownDispatcher)}function U5e(e,t,r){var n=Ne(e);n.componentMainType=t.mainType,n.componentIndex=t.componentIndex,n.componentHighDownName=r}function Z5e(e){var t=pV[e];return t==null&&vV<=32&&(t=pV[e]=vV++),t}function PI(e){var t=e.type;return t===gw||t===TI||t===mw}function bV(e){var t=e.type;return t===Hc||t===cb}function Y5e(e){var t=zJ(e);t.normalFill=e.style.fill,t.normalStroke=e.style.stroke;var r=e.states.select||{};t.selectFill=r.style&&r.style.fill||null,t.selectStroke=r.style&&r.style.stroke||null}var rh=Wo.CMD,X5e=[[],[],[]],wV=Math.sqrt,q5e=Math.atan2;function YJ(e,t){if(t){var r=e.data,n=e.len(),i,a,o,s,l,u,c=rh.M,f=rh.C,h=rh.L,d=rh.R,v=rh.A,g=rh.Q;for(o=0,s=0;o1&&(o*=k2(v),s*=k2(v));var g=(i===a?-1:1)*k2((o*o*(s*s)-o*o*(d*d)-s*s*(h*h))/(o*o*(d*d)+s*s*(h*h)))||0,m=g*o*d/s,x=g*-s*h/o,_=(e+r)/2+Gx(f)*m-Vx(f)*x,b=(t+n)/2+Vx(f)*m+Gx(f)*x,S=TV([1,0],[(h-m)/o,(d-x)/s]),T=[(h-m)/o,(d-x)/s],C=[(-1*h-m)/o,(-1*d-x)/s],A=TV(T,C);if(kI(T,C)<=-1&&(A=Bp),kI(T,C)>=1&&(A=0),A<0){var P=Math.round(A/Bp*1e6)/1e6;A=Bp*2+P%2*Bp}c.addData(u,_,b,o,s,S,A,f,a)}var K5e=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig,J5e=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function Q5e(e){var t=new Wo;if(!e)return t;var r=0,n=0,i=r,a=n,o,s=Wo.CMD,l=e.match(K5e);if(!l)return t;for(var u=0;uz*z+V*V&&(P=k,I=E),{cx:P,cy:I,x0:-c,y0:-f,x1:P*(i/T-1),y1:I*(i/T-1)}}function o3e(e){var t;if(ae(e)){var r=e.length;if(!r)return e;r===1?t=[e[0],e[0],0,0]:r===2?t=[e[0],e[0],e[1],e[1]]:r===3?t=e.concat(e[2]):t=e}else t=[e,e,e,e];return t}function s3e(e,t){var r,n=_g(t.r,0),i=_g(t.r0||0,0),a=n>0,o=i>0;if(!(!a&&!o)){if(a||(n=i,i=0),i>n){var s=n;n=i,i=s}var l=t.startAngle,u=t.endAngle;if(!(isNaN(l)||isNaN(u))){var c=t.cx,f=t.cy,h=!!t.clockwise,d=AV(u-l),v=d>L2&&d%L2;if(v>Pa&&(d=v),!(n>Pa))e.moveTo(c,f);else if(d>L2-Pa)e.moveTo(c+n*nh(l),f+n*Xu(l)),e.arc(c,f,n,l,u,!h),i>Pa&&(e.moveTo(c+i*nh(u),f+i*Xu(u)),e.arc(c,f,i,u,l,h));else{var g=void 0,m=void 0,x=void 0,_=void 0,b=void 0,S=void 0,T=void 0,C=void 0,A=void 0,P=void 0,I=void 0,k=void 0,E=void 0,D=void 0,N=void 0,z=void 0,V=n*nh(l),F=n*Xu(l),$=i*nh(u),B=i*Xu(u),Z=d>Pa;if(Z){var W=t.cornerRadius;W&&(r=o3e(W),g=r[0],m=r[1],x=r[2],_=r[3]);var G=AV(n-i)/2;if(b=fo(G,x),S=fo(G,_),T=fo(G,g),C=fo(G,m),I=A=_g(b,S),k=P=_g(T,C),(A>Pa||P>Pa)&&(E=n*nh(u),D=n*Xu(u),N=i*nh(l),z=i*Xu(l),dPa){var ie=fo(x,I),he=fo(_,I),ue=Wx(N,z,V,F,n,ie,h),te=Wx(E,D,$,B,n,he,h);e.moveTo(c+ue.cx+ue.x0,f+ue.cy+ue.y0),I0&&e.arc(c+ue.cx,f+ue.cy,ie,Tn(ue.y0,ue.x0),Tn(ue.y1,ue.x1),!h),e.arc(c,f,n,Tn(ue.cy+ue.y1,ue.cx+ue.x1),Tn(te.cy+te.y1,te.cx+te.x1),!h),he>0&&e.arc(c+te.cx,f+te.cy,he,Tn(te.y1,te.x1),Tn(te.y0,te.x0),!h))}else e.moveTo(c+V,f+F),e.arc(c,f,n,l,u,!h);if(!(i>Pa)||!Z)e.lineTo(c+$,f+B);else if(k>Pa){var ie=fo(g,k),he=fo(m,k),ue=Wx($,B,E,D,i,-he,h),te=Wx(V,F,N,z,i,-ie,h);e.lineTo(c+ue.cx+ue.x0,f+ue.cy+ue.y0),k0&&e.arc(c+ue.cx,f+ue.cy,he,Tn(ue.y0,ue.x0),Tn(ue.y1,ue.x1),!h),e.arc(c,f,i,Tn(ue.cy+ue.y1,ue.cx+ue.x1),Tn(te.cy+te.y1,te.cx+te.x1),h),ie>0&&e.arc(c+te.cx,f+te.cy,ie,Tn(te.y1,te.x1),Tn(te.y0,te.x0),!h))}else e.lineTo(c+$,f+B),e.arc(c,f,i,u,l,h)}e.closePath()}}}var l3e=function(){function e(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0,this.cornerRadius=0}return e}(),_n=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new l3e},t.prototype.buildPath=function(r,n){s3e(r,n)},t.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},t}(tt);_n.prototype.type="sector";var u3e=function(){function e(){this.cx=0,this.cy=0,this.r=0,this.r0=0}return e}(),zv=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new u3e},t.prototype.buildPath=function(r,n){var i=n.cx,a=n.cy,o=Math.PI*2;r.moveTo(i+n.r,a),r.arc(i,a,n.r,0,o,!1),r.moveTo(i+n.r0,a),r.arc(i,a,n.r0,0,o,!0)},t}(tt);zv.prototype.type="ring";function c3e(e,t,r,n){var i=[],a=[],o=[],s=[],l,u,c,f;if(n){c=[1/0,1/0],f=[-1/0,-1/0];for(var h=0,d=e.length;h=2){if(n){var a=c3e(i,n,r,t.smoothConstraint);e.moveTo(i[0][0],i[0][1]);for(var o=i.length,s=0;s<(r?o:o-1);s++){var l=a[s*2],u=a[s*2+1],c=i[(s+1)%o];e.bezierCurveTo(l[0],l[1],u[0],u[1],c[0],c[1])}}else{e.moveTo(i[0][0],i[0][1]);for(var s=1,f=i.length;sKu[1]){if(a=!1,Jr.negativeSize||n)return a;var l=Hx(Ku[0]-qu[1]),u=Hx(qu[0]-Ku[1]);I2(l,u)>Zx.len()&&(l=u||!Jr.bidirectional)&&(Ie.scale(Ux,s,-u*i),Jr.useDir&&Jr.calcDirMTV()))}}return a},e.prototype._getProjMinMaxOnAxis=function(t,r,n){for(var i=this._axes[t],a=this._origin,o=r[0].dot(i)+a[t],s=o,l=o,u=1;u0){var f=c.duration,h=c.delay,d=c.easing,v={duration:f,delay:h||0,easing:d,done:a,force:!!a||!!o,setToFinal:!u,scope:e,during:o};s?t.animateFrom(r,v):t.animateTo(r,v)}else t.stopAnimation(),!s&&t.attr(r),o&&o(1),a&&a()}function lt(e,t,r,n,i,a){$N("update",e,t,r,n,i,a)}function Dt(e,t,r,n,i,a){$N("enter",e,t,r,n,i,a)}function hd(e){if(!e.__zr)return!0;for(var t=0;tCo(a[1])?a[0]>0?"right":"left":a[1]>0?"bottom":"top"}function kV(e){return!e.isGroup}function w3e(e){return e.shape!=null}function m0(e,t,r){if(!e||!t)return;function n(o){var s={};return o.traverse(function(l){kV(l)&&l.anid&&(s[l.anid]=l)}),s}function i(o){var s={x:o.x,y:o.y,rotation:o.rotation};return w3e(o)&&(s.shape=Ae(o.shape)),s}var a=n(e);t.traverse(function(o){if(kV(o)&&o.anid){var s=a[o.anid];if(s){var l=i(o);o.attr(i(s)),lt(o,l,r,Ne(o).dataIndex)}}})}function GN(e,t){return se(e,function(r){var n=r[0];n=pr(n,t.x),n=Li(n,t.x+t.width);var i=r[1];return i=pr(i,t.y),i=Li(i,t.y+t.height),[n,i]})}function lQ(e,t){var r=pr(e.x,t.x),n=Li(e.x+e.width,t.x+t.width),i=pr(e.y,t.y),a=Li(e.y+e.height,t.y+t.height);if(n>=r&&a>=i)return{x:r,y:i,width:n-r,height:a-i}}function Vv(e,t,r){var n=ne({rectHover:!0},t),i=n.style={strokeNoScale:!0};if(r=r||{x:-1,y:-1,width:2,height:2},e)return e.indexOf("image://")===0?(i.image=e.slice(8),Pe(i,r),new Yr(n)):Qd(e.replace("path://",""),n,r,"center")}function bg(e,t,r,n,i){for(var a=0,o=i[i.length-1];a1)return!1;var m=O2(d,v,c,f)/h;return!(m<0||m>1)}function O2(e,t,r,n){return e*n-r*t}function S3e(e){return e<=1e-6&&e>=-1e-6}function hf(e,t,r,n,i){return t==null||(ot(t)?Ht[0]=Ht[1]=Ht[2]=Ht[3]=t:(Ht[0]=t[0],Ht[1]=t[1],Ht[2]=t[2],Ht[3]=t[3]),n&&(Ht[0]=pr(0,Ht[0]),Ht[1]=pr(0,Ht[1]),Ht[2]=pr(0,Ht[2]),Ht[3]=pr(0,Ht[3])),r&&(Ht[0]=-Ht[0],Ht[1]=-Ht[1],Ht[2]=-Ht[2],Ht[3]=-Ht[3]),LV(e,Ht,"x","width",3,1,i&&i[0]||0),LV(e,Ht,"y","height",0,2,i&&i[1]||0)),e}var Ht=[0,0,0,0];function LV(e,t,r,n,i,a,o){var s=t[a]+t[i],l=e[n];e[n]+=s,o=pr(0,Li(o,l)),e[n]=0?-t[i]:t[a]>=0?l+t[a]:Co(s)>1e-8?(l-o)*t[i]/s:0):e[r]-=t[i]}function rl(e){var t=e.itemTooltipOption,r=e.componentModel,n=e.itemName,i=pe(t)?{formatter:t}:t,a=r.mainType,o=r.componentIndex,s={componentType:a,name:n,$vars:["name"]};s[a+"Index"]=o;var l=e.formatterParamsExtra;l&&R(it(l),function(c){xe(s,c)||(s[c]=l[c],s.$vars.push(c))});var u=Ne(e.el);u.componentMainType=a,u.componentIndex=o,u.tooltipConfig={name:n,option:Pe({content:n,encodeHTMLContent:!0,formatterParams:s},i)}}function II(e,t){var r;e.isGroup&&(r=t(e)),r||e.traverse(t)}function Au(e,t){if(e)if(ae(e))for(var r=0;rt&&(t=o),ot&&(r=t=0),{min:r,max:t}}function HT(e,t,r){fQ(e,t,r,-1/0)}function fQ(e,t,r,n){if(e.ignoreModelZ)return n;var i=e.getTextContent(),a=e.getTextGuideLine(),o=e.isGroup;if(o)for(var s=e.childrenRef(),l=0;l=0&&s.push(l)}),s}}function Mu(e,t){return He(He({},e,!0),t,!0)}const N3e={time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst",custom:"Custom chart",chart:"Chart"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}},j3e={time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图",custom:"自定义图表",chart:"图表"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}};var _w="ZH",ZN="EN",dd=ZN,hb={},YN={},mQ=nt.domSupported?function(){var e=(document.documentElement.lang||navigator.language||navigator.browserLanguage||dd).toUpperCase();return e.indexOf(_w)>-1?_w:dd}():dd;function XN(e,t){e=e.toUpperCase(),YN[e]=new et(t),hb[e]=t}function R3e(e){if(pe(e)){var t=hb[e.toUpperCase()]||{};return e===_w||e===ZN?Ae(t):He(Ae(t),Ae(hb[dd]),!1)}else return He(Ae(e),Ae(hb[dd]),!1)}function EI(e){return YN[e]}function B3e(){return YN[dd]}XN(ZN,N3e);XN(_w,j3e);var DI=null;function z3e(e){DI||(DI=e)}function Sr(){return DI}var qN=1e3,KN=qN*60,em=KN*60,ta=em*24,NV=ta*365,$3e={year:/({yyyy}|{yy})/,month:/({MMMM}|{MMM}|{MM}|{M})/,day:/({dd}|{d})/,hour:/({HH}|{H}|{hh}|{h})/,minute:/({mm}|{m})/,second:/({ss}|{s})/,millisecond:/({SSS}|{S})/},db={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}"},F3e="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}",Xx="{yyyy}-{MM}-{dd}",jV={year:"{yyyy}",month:"{yyyy}-{MM}",day:Xx,hour:Xx+" "+db.hour,minute:Xx+" "+db.minute,second:Xx+" "+db.second,millisecond:F3e},xi=["year","month","day","hour","minute","second","millisecond"],V3e=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function G3e(e){return!pe(e)&&!Ce(e)?W3e(e):e}function W3e(e){e=e||{};var t={},r=!0;return R(xi,function(n){r&&(r=e[n]==null)}),R(xi,function(n,i){var a=e[n];t[n]={};for(var o=null,s=i;s>=0;s--){var l=xi[s],u=ke(a)&&!ae(a)?a[l]:a,c=void 0;ae(u)?(c=u.slice(),o=c[0]||""):pe(u)?(o=u,c=[o]):(o==null?o=db[n]:$3e[l].test(o)||(o=t[l][l][0]+" "+o),c=[o],r&&(c[1]="{primary|"+o+"}")),t[n][l]=c}}),t}function $n(e,t){return e+="","0000".substr(0,t-e.length)+e}function tm(e){switch(e){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return e}}function H3e(e){return e===tm(e)}function U3e(e){switch(e){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}function y0(e,t,r,n){var i=qo(e),a=i[yQ(r)](),o=i[JN(r)]()+1,s=Math.floor((o-1)/3)+1,l=i[QN(r)](),u=i["get"+(r?"UTC":"")+"Day"](),c=i[ej(r)](),f=(c-1)%12+1,h=i[tj(r)](),d=i[rj(r)](),v=i[nj(r)](),g=c>=12?"pm":"am",m=g.toUpperCase(),x=n instanceof et?n:EI(n||mQ)||B3e(),_=x.getModel("time"),b=_.get("month"),S=_.get("monthAbbr"),T=_.get("dayOfWeek"),C=_.get("dayOfWeekAbbr");return(t||"").replace(/{a}/g,g+"").replace(/{A}/g,m+"").replace(/{yyyy}/g,a+"").replace(/{yy}/g,$n(a%100+"",2)).replace(/{Q}/g,s+"").replace(/{MMMM}/g,b[o-1]).replace(/{MMM}/g,S[o-1]).replace(/{MM}/g,$n(o,2)).replace(/{M}/g,o+"").replace(/{dd}/g,$n(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,T[u]).replace(/{ee}/g,C[u]).replace(/{e}/g,u+"").replace(/{HH}/g,$n(c,2)).replace(/{H}/g,c+"").replace(/{hh}/g,$n(f+"",2)).replace(/{h}/g,f+"").replace(/{mm}/g,$n(h,2)).replace(/{m}/g,h+"").replace(/{ss}/g,$n(d,2)).replace(/{s}/g,d+"").replace(/{SSS}/g,$n(v,3)).replace(/{S}/g,v+"")}function Z3e(e,t,r,n,i){var a=null;if(pe(r))a=r;else if(Ce(r)){var o={time:e.time,level:e.time.level},s=Sr();s&&s.makeAxisLabelFormatterParamBreak(o,e.break),a=r(e.value,t,o)}else{var l=e.time;if(l){var u=r[l.lowerTimeUnit][l.upperTimeUnit];a=u[Math.min(l.level,u.length-1)]||""}else{var c=Yh(e.value,i);a=r[c][c][0]}}return y0(new Date(e.value),a,i,n)}function Yh(e,t){var r=qo(e),n=r[JN(t)]()+1,i=r[QN(t)](),a=r[ej(t)](),o=r[tj(t)](),s=r[rj(t)](),l=r[nj(t)](),u=l===0,c=u&&s===0,f=c&&o===0,h=f&&a===0,d=h&&i===1,v=d&&n===1;return v?"year":d?"month":h?"day":f?"hour":c?"minute":u?"second":"millisecond"}function bw(e,t,r){switch(t){case"year":e[xQ(r)](0);case"month":e[_Q(r)](1);case"day":e[bQ(r)](0);case"hour":e[wQ(r)](0);case"minute":e[SQ(r)](0);case"second":e[TQ(r)](0)}return e}function yQ(e){return e?"getUTCFullYear":"getFullYear"}function JN(e){return e?"getUTCMonth":"getMonth"}function QN(e){return e?"getUTCDate":"getDate"}function ej(e){return e?"getUTCHours":"getHours"}function tj(e){return e?"getUTCMinutes":"getMinutes"}function rj(e){return e?"getUTCSeconds":"getSeconds"}function nj(e){return e?"getUTCMilliseconds":"getMilliseconds"}function Y3e(e){return e?"setUTCFullYear":"setFullYear"}function xQ(e){return e?"setUTCMonth":"setMonth"}function _Q(e){return e?"setUTCDate":"setDate"}function bQ(e){return e?"setUTCHours":"setHours"}function wQ(e){return e?"setUTCMinutes":"setMinutes"}function SQ(e){return e?"setUTCSeconds":"setSeconds"}function TQ(e){return e?"setUTCMilliseconds":"setMilliseconds"}function X3e(e,t,r,n,i,a,o,s){var l=new at({style:{text:e,font:t,align:r,verticalAlign:n,padding:i,rich:a,overflow:o?"truncate":null,lineHeight:s}});return l.getBoundingRect()}function ij(e){if(!AN(e))return pe(e)?e:"-";var t=(e+"").split(".");return t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:"")}function aj(e,t){return e=(e||"").toLowerCase().replace(/-(.)/g,function(r,n){return n.toUpperCase()}),t&&e&&(e=e.charAt(0).toUpperCase()+e.slice(1)),e}var Hv=l0;function NI(e,t,r){var n="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}";function i(c){return c&&Ci(c)?c:"-"}function a(c){return!!(c!=null&&!isNaN(c)&&isFinite(c))}var o=t==="time",s=e instanceof Date;if(o||s){var l=o?qo(e):e;if(isNaN(+l)){if(s)return"-"}else return y0(l,n,r)}if(t==="ordinal")return tw(e)?i(e):ot(e)&&a(e)?e+"":"-";var u=Go(e);return a(u)?ij(u):tw(e)?i(e):typeof e=="boolean"?e+"":"-"}var RV=["a","b","c","d","e","f","g"],N2=function(e,t){return"{"+e+(t??"")+"}"};function oj(e,t,r){ae(t)||(t=[t]);var n=t.length;if(!n)return"";for(var i=t[0].$vars||[],a=0;a':'';var o=r.markerId||"markerX";return{renderMode:a,content:"{"+o+"|} ",style:i==="subItem"?{width:4,height:4,borderRadius:2,backgroundColor:n}:{width:10,height:10,borderRadius:5,backgroundColor:n}}}function K3e(e,t,r){(e==="week"||e==="month"||e==="quarter"||e==="half-year"||e==="year")&&(e=`MM-dd -yyyy`);var n=qo(t),i=r?"getUTC":"get",a=n[i+"FullYear"](),o=n[i+"Month"]()+1,s=n[i+"Date"](),l=n[i+"Hours"](),u=n[i+"Minutes"](),c=n[i+"Seconds"](),f=n[i+"Milliseconds"]();return e=e.replace("MM",$n(o,2)).replace("M",o).replace("yyyy",a).replace("yy",$n(a%100+"",2)).replace("dd",$n(s,2)).replace("d",s).replace("hh",$n(l,2)).replace("h",l).replace("mm",$n(u,2)).replace("m",u).replace("ss",$n(c,2)).replace("s",c).replace("SSS",$n(f,3)),e}function J3e(e){return e&&e.charAt(0).toUpperCase()+e.substr(1)}function vf(e,t){return t=t||"transparent",pe(e)?e:ke(e)&&e.colorStops&&(e.colorStops[0]||{}).color||t}function ww(e,t){if(t==="_blank"||t==="blank"){var r=window.open();r.opener=null,r.location.href=e}else window.open(e,t)}var vb={},j2={},Uv=function(){function e(){this._normalMasterList=[],this._nonSeriesBoxMasterList=[]}return e.prototype.create=function(t,r){this._nonSeriesBoxMasterList=n(vb),this._normalMasterList=n(j2);function n(i,a){var o=[];return R(i,function(s,l){var u=s.create(t,r);o=o.concat(u||[])}),o}},e.prototype.update=function(t,r){R(this._normalMasterList,function(n){n.update&&n.update(t,r)})},e.prototype.getCoordinateSystems=function(){return this._normalMasterList.concat(this._nonSeriesBoxMasterList)},e.register=function(t,r){if(t==="matrix"||t==="calendar"){vb[t]=r;return}j2[t]=r},e.get=function(t){return j2[t]||vb[t]},e}();function Q3e(e){return!!vb[e]}var jI={coord:1,coord2:2};function eBe(e){AQ.set(e.fullType,{getCoord2:void 0}).getCoord2=e.getCoord2}var AQ=_e();function tBe(e){var t=e.getShallow("coord",!0),r=jI.coord;if(t==null){var n=AQ.get(e.type);n&&n.getCoord2&&(r=jI.coord2,t=n.getCoord2(e))}return{coord:t,from:r}}var bo={none:0,dataCoordSys:1,boxCoordSys:2};function MQ(e,t){var r=e.getShallow("coordinateSystem"),n=e.getShallow("coordinateSystemUsage",!0),i=bo.none;if(r){var a=e.mainType==="series";n==null&&(n=a?"data":"box"),n==="data"?(i=bo.dataCoordSys,a||(i=bo.none)):n==="box"&&(i=bo.boxCoordSys,!a&&!Q3e(r)&&(i=bo.none))}return{coordSysType:r,kind:i}}function x0(e){var t=e.targetModel,r=e.coordSysType,n=e.coordSysProvider,i=e.isDefaultDataCoordSys;e.allowNotFound;var a=MQ(t),o=a.kind,s=a.coordSysType;if(i&&o!==bo.dataCoordSys&&(o=bo.dataCoordSys,s=r),o===bo.none||s!==r)return!1;var l=n(r,t);return l?(o===bo.dataCoordSys?t.coordinateSystem=l:t.boxCoordinateSystem=l,!0):!1}var PQ=function(e,t){var r=t.getReferringComponents(e,er).models[0];return r&&r.coordinateSystem},pb=R,kQ=["left","right","top","bottom","width","height"],Dc=[["width","left","right"],["height","top","bottom"]];function sj(e,t,r,n,i){var a=0,o=0;n==null&&(n=1/0),i==null&&(i=1/0);var s=0;t.eachChild(function(l,u){var c=l.getBoundingRect(),f=t.childAt(u+1),h=f&&f.getBoundingRect(),d,v;if(e==="horizontal"){var g=c.width+(h?-h.x+c.x:0);d=a+g,d>n||l.newline?(a=0,d=g,o+=s+r,s=c.height):s=Math.max(s,c.height)}else{var m=c.height+(h?-h.y+c.y:0);v=o+m,v>i||l.newline?(a+=s+r,o=0,v=m,s=c.width):s=Math.max(s,c.width)}l.newline||(l.x=a,l.y=o,l.markRedraw(),e==="horizontal"?a=d+r:o=v+r)})}var Uc=sj;Fe(sj,"vertical");Fe(sj,"horizontal");function LQ(e,t){return{left:e.getShallow("left",t),top:e.getShallow("top",t),right:e.getShallow("right",t),bottom:e.getShallow("bottom",t),width:e.getShallow("width",t),height:e.getShallow("height",t)}}function rBe(e,t){var r=jr(e,t,{enableLayoutOnlyByCenter:!0}),n=e.getBoxLayoutParams(),i,a;if(r.type===wg.point)a=r.refPoint,i=zt(n,{width:t.getWidth(),height:t.getHeight()});else{var o=e.get("center"),s=ae(o)?o:[o,o];i=zt(n,r.refContainer),a=r.boxCoordFrom===jI.coord2?r.refPoint:[ve(s[0],i.width)+i.x,ve(s[1],i.height)+i.y]}return{viewRect:i,center:a}}function IQ(e,t){var r=rBe(e,t),n=r.viewRect,i=r.center,a=e.get("radius");ae(a)||(a=[0,a]);var o=ve(n.width,t.getWidth()),s=ve(n.height,t.getHeight()),l=Math.min(o,s),u=ve(a[0],l/2),c=ve(a[1],l/2);return{cx:i[0],cy:i[1],r0:u,r:c,viewRect:n}}function zt(e,t,r){r=Hv(r||0);var n=t.width,i=t.height,a=ve(e.left,n),o=ve(e.top,i),s=ve(e.right,n),l=ve(e.bottom,i),u=ve(e.width,n),c=ve(e.height,i),f=r[2]+r[0],h=r[1]+r[3],d=e.aspect;switch(isNaN(u)&&(u=n-s-h-a),isNaN(c)&&(c=i-l-f-o),d!=null&&(isNaN(u)&&isNaN(c)&&(d>n/i?u=n*.8:c=i*.8),isNaN(u)&&(u=d*c),isNaN(c)&&(c=u/d)),isNaN(a)&&(a=n-s-u-h),isNaN(o)&&(o=i-l-c-f),e.left||e.right){case"center":a=n/2-u/2-r[3];break;case"right":a=n-u-h;break}switch(e.top||e.bottom){case"middle":case"center":o=i/2-c/2-r[0];break;case"bottom":o=i-c-f;break}a=a||0,o=o||0,isNaN(u)&&(u=n-h-a-(s||0)),isNaN(c)&&(c=i-f-o-(l||0));var v=new Oe((t.x||0)+a+r[3],(t.y||0)+o+r[0],u,c);return v.margin=r,v}function OQ(e,t,r){var n=e.getShallow("preserveAspect",!0);if(!n)return t;var i=t.width/t.height;if(Math.abs(Math.atan(r)-Math.atan(i))<1e-9)return t;var a=e.getShallow("preserveAspectAlign",!0),o=e.getShallow("preserveAspectVerticalAlign",!0),s={width:t.width,height:t.height},l=n==="cover";return i>r&&!l||i=g)return f;for(var m=0;m=0;l--)s=He(s,i[l],!0);n.defaultOption=s}return n.defaultOption},t.prototype.getReferringComponents=function(r,n){var i=r+"Index",a=r+"Id";return Rv(this.ecModel,r,{index:this.get(i,!0),id:this.get(a,!0)},n)},t.prototype.getBoxLayoutParams=function(){return LQ(this,!1)},t.prototype.getZLevelKey=function(){return""},t.prototype.setZLevel=function(r){this.option.zlevel=r},t.protoInitialize=function(){var r=t.prototype;r.type="component",r.id="",r.name="",r.mainType="",r.subType="",r.componentIndex=0}(),t}(et);PJ(Ke,et);jT(Ke);E3e(Ke);D3e(Ke,aBe);function aBe(e){var t=[];return R(Ke.getClassesByMainType(e),function(r){t=t.concat(r.dependencies||r.prototype.dependencies||[])}),t=se(t,function(r){return Ao(r).main}),e!=="dataset"&&We(t,"dataset")<=0&&t.unshift("dataset"),t}var J={color:{},darkColor:{},size:{}},fr=J.color={theme:["#5070dd","#b6d634","#505372","#ff994d","#0ca8df","#ffd10a","#fb628b","#785db0","#3fbe95"],neutral00:"#fff",neutral05:"#f4f7fd",neutral10:"#e8ebf0",neutral15:"#dbdee4",neutral20:"#cfd2d7",neutral25:"#c3c5cb",neutral30:"#b7b9be",neutral35:"#aaacb2",neutral40:"#9ea0a5",neutral45:"#929399",neutral50:"#86878c",neutral55:"#797b7f",neutral60:"#6d6e73",neutral65:"#616266",neutral70:"#54555a",neutral75:"#48494d",neutral80:"#3c3c41",neutral85:"#303034",neutral90:"#232328",neutral95:"#17171b",neutral99:"#000",accent05:"#eff1f9",accent10:"#e0e4f2",accent15:"#d0d6ec",accent20:"#c0c9e6",accent25:"#b1bbdf",accent30:"#a1aed9",accent35:"#91a0d3",accent40:"#8292cc",accent45:"#7285c6",accent50:"#6578ba",accent55:"#5c6da9",accent60:"#536298",accent65:"#4a5787",accent70:"#404c76",accent75:"#374165",accent80:"#2e3654",accent85:"#252b43",accent90:"#1b2032",accent95:"#121521",transparent:"rgba(0,0,0,0)",highlight:"rgba(255,231,130,0.8)"};ne(fr,{primary:fr.neutral80,secondary:fr.neutral70,tertiary:fr.neutral60,quaternary:fr.neutral50,disabled:fr.neutral20,border:fr.neutral30,borderTint:fr.neutral20,borderShade:fr.neutral40,background:fr.neutral05,backgroundTint:"rgba(234,237,245,0.5)",backgroundTransparent:"rgba(255,255,255,0)",backgroundShade:fr.neutral10,shadow:"rgba(0,0,0,0.2)",shadowTint:"rgba(129,130,136,0.2)",axisLine:fr.neutral70,axisLineTint:fr.neutral40,axisTick:fr.neutral70,axisTickMinor:fr.neutral60,axisLabel:fr.neutral70,axisSplitLine:fr.neutral15,axisMinorSplitLine:fr.neutral05});for(var Ju in fr)if(fr.hasOwnProperty(Ju)){var BV=fr[Ju];Ju==="theme"?J.darkColor.theme=fr.theme.slice():Ju==="highlight"?J.darkColor.highlight="rgba(255,231,130,0.4)":Ju.indexOf("accent")===0?J.darkColor[Ju]=ks(BV,null,function(e){return e*.5},function(e){return Math.min(1,1.3-e)}):J.darkColor[Ju]=ks(BV,null,function(e){return e*.9},function(e){return 1-Math.pow(e,1.5)})}J.size={xxs:2,xs:5,s:10,m:15,l:20,xl:30,xxl:40,xxxl:50};var DQ="";typeof navigator<"u"&&(DQ=navigator.platform||"");var ih="rgba(0, 0, 0, 0.2)",NQ=J.color.theme[0],oBe=ks(NQ,null,null,.9);const sBe={darkMode:"auto",colorBy:"series",color:J.color.theme,gradientColor:[oBe,NQ],aria:{decal:{decals:[{color:ih,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:ih,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:ih,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:ih,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:ih,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:ih,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:DQ.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1};var jQ=_e(["tooltip","label","itemName","itemId","itemGroupId","itemChildGroupId","seriesName"]),Ni="original",on="arrayRows",ji="objectRows",eo="keyedColumns",eu="typedArray",RQ="unknown",Ua="column",If="row",fn={Must:1,Might:2,Not:3},BQ=Je();function lBe(e){BQ(e).datasetMap=_e()}function zQ(e,t,r){var n={},i=uj(t);if(!i||!e)return n;var a=[],o=[],s=t.ecModel,l=BQ(s).datasetMap,u=i.uid+"_"+r.seriesLayoutBy,c,f;e=e.slice(),R(e,function(g,m){var x=ke(g)?g:e[m]={name:g};x.type==="ordinal"&&c==null&&(c=m,f=v(x)),n[x.name]=[]});var h=l.get(u)||l.set(u,{categoryWayDim:f,valueWayDim:0});R(e,function(g,m){var x=g.name,_=v(g);if(c==null){var b=h.valueWayDim;d(n[x],b,_),d(o,b,_),h.valueWayDim+=_}else if(c===m)d(n[x],0,_),d(a,0,_);else{var b=h.categoryWayDim;d(n[x],b,_),d(o,b,_),h.categoryWayDim+=_}});function d(g,m,x){for(var _=0;_t)return e[n];return e[r-1]}function VQ(e,t,r,n,i,a,o){a=a||e;var s=t(a),l=s.paletteIdx||0,u=s.paletteNameMap=s.paletteNameMap||{};if(u.hasOwnProperty(i))return u[i];var c=o==null||!n?r:dBe(n,o);if(c=c||r,!(!c||!c.length)){var f=c[l];return i&&(u[i]=f),s.paletteIdx=(l+1)%c.length,f}}function vBe(e,t){t(e).paletteIdx=0,t(e).paletteNameMap={}}var qx,zp,$V,FV="\0_ec_inner",pBe=1,fj=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.init=function(r,n,i,a,o,s){a=a||{},this.option=null,this._theme=new et(a),this._locale=new et(o),this._optionManager=s},t.prototype.setOption=function(r,n,i){var a=WV(n);this._optionManager.setOption(r,i,a),this._resetOption(null,a)},t.prototype.resetOption=function(r,n){return this._resetOption(r,WV(n))},t.prototype._resetOption=function(r,n){var i=!1,a=this._optionManager;if(!r||r==="recreate"){var o=a.mountOption(r==="recreate");!this.option||r==="recreate"?$V(this,o):(this.restoreData(),this._mergeOption(o,n)),i=!0}if((r==="timeline"||r==="media")&&this.restoreData(),!r||r==="recreate"||r==="timeline"){var s=a.getTimelineOption(this);s&&(i=!0,this._mergeOption(s,n))}if(!r||r==="recreate"||r==="media"){var l=a.getMediaOption(this);l.length&&R(l,function(u){i=!0,this._mergeOption(u,n)},this)}return i},t.prototype.mergeOption=function(r){this._mergeOption(r,null)},t.prototype._mergeOption=function(r,n){var i=this.option,a=this._componentsMap,o=this._componentsCount,s=[],l=_e(),u=n&&n.replaceMergeMainTypeMap;lBe(this),R(r,function(f,h){f!=null&&(Ke.hasClass(h)?h&&(s.push(h),l.set(h,!0)):i[h]=i[h]==null?Ae(f):He(i[h],f,!0))}),u&&u.each(function(f,h){Ke.hasClass(h)&&!l.get(h)&&(s.push(h),l.set(h,!0))}),Ke.topologicalTravel(s,Ke.getAllClassMainTypes(),c,this);function c(f){var h=fBe(this,f,Pt(r[f])),d=a.get(f),v=d?u&&u.get(f)?"replaceMerge":"normalMerge":"replaceAll",g=SJ(d,h,v);LRe(g,f,Ke),i[f]=null,a.set(f,null),o.set(f,0);var m=[],x=[],_=0,b;R(g,function(S,T){var C=S.existing,A=S.newOption;if(!A)C&&(C.mergeOption({},this),C.optionUpdated({},!1));else{var P=f==="series",I=Ke.getClass(f,S.keyInfo.subType,!P);if(!I)return;if(f==="tooltip"){if(b)return;b=!0}if(C&&C.constructor===I)C.name=S.keyInfo.name,C.mergeOption(A,this),C.optionUpdated(A,!1);else{var k=ne({componentIndex:T},S.keyInfo);C=new I(A,this,this,k),ne(C,k),S.brandNew&&(C.__requireNewView=!0),C.init(A,this,this),C.optionUpdated(null,!0)}}C?(m.push(C.option),x.push(C),_++):(m.push(void 0),x.push(void 0))},this),i[f]=m,a.set(f,x),o.set(f,_),f==="series"&&qx(this)}this._seriesIndices||qx(this)},t.prototype.getOption=function(){var r=Ae(this.option);return R(r,function(n,i){if(Ke.hasClass(i)){for(var a=Pt(n),o=a.length,s=!1,l=o-1;l>=0;l--)a[l]&&!xy(a[l])?s=!0:(a[l]=null,!s&&o--);a.length=o,r[i]=a}}),delete r[FV],r},t.prototype.setTheme=function(r){this._theme=new et(r),this._resetOption("recreate",null)},t.prototype.getTheme=function(){return this._theme},t.prototype.getLocaleModel=function(){return this._locale},t.prototype.setUpdatePayload=function(r){this._payload=r},t.prototype.getUpdatePayload=function(){return this._payload},t.prototype.getComponent=function(r,n){var i=this._componentsMap.get(r);if(i){var a=i[n||0];if(a)return a;if(n==null){for(var o=0;o=t:r==="max"?e<=t:e===t}function TBe(e,t){return e.join(",")===t.join(",")}var Aa=R,Cy=ke,HV=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function R2(e){var t=e&&e.itemStyle;if(t)for(var r=0,n=HV.length;r0?r[o-1].seriesModel:null)}),EBe(r)}})}function EBe(e){R(e,function(t,r){var n=[],i=[NaN,NaN],a=[t.stackResultDimension,t.stackedOverDimension],o=t.data,s=t.isStackedByIndex,l=t.seriesModel.get("stackStrategy")||"samesign";o.modify(a,function(u,c,f){var h=o.get(t.stackedDimension,f);if(isNaN(h))return i;var d,v;s?v=o.getRawIndex(f):d=o.get(t.stackedByDimension,f);for(var g=NaN,m=r-1;m>=0;m--){var x=e[m];if(s||(v=x.data.rawIndexOf(x.stackedByDimension,d)),v>=0){var _=x.data.getByRawIndex(x.stackResultDimension,v);if(l==="all"||l==="positive"&&_>0||l==="negative"&&_<0||l==="samesign"&&h>=0&&_>0||l==="samesign"&&h<=0&&_<0){h=mRe(h,_),g=_;break}}}return n[0]=h,n[1]=g,n})})}var YT=function(){function e(t){this.data=t.data||(t.sourceFormat===eo?{}:[]),this.sourceFormat=t.sourceFormat||RQ,this.seriesLayoutBy=t.seriesLayoutBy||Ua,this.startIndex=t.startIndex||0,this.dimensionsDetectedCount=t.dimensionsDetectedCount,this.metaRawOption=t.metaRawOption;var r=this.dimensionsDefine=t.dimensionsDefine;if(r)for(var n=0;ng&&(g=b)}d[0]=v,d[1]=g}},i=function(){return this._data?this._data.length/this._dimSize:0};JV=(t={},t[on+"_"+Ua]={pure:!0,appendData:a},t[on+"_"+If]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t[ji]={pure:!0,appendData:a},t[eo]={pure:!0,appendData:function(o){var s=this._data;R(o,function(l,u){for(var c=s[u]||(s[u]=[]),f=0;f<(l||[]).length;f++)c.push(l[f])})}},t[Ni]={appendData:a},t[eu]={persistent:!1,pure:!0,appendData:function(o){this._data=o},clean:function(){this._offset+=this.count(),this._data=null}},t);function a(o){for(var s=0;s=0&&(g=o.interpolatedValue[m])}return g!=null?g+"":""})}},e.prototype.getRawValue=function(t,r){return tv(this.getData(r),t)},e.prototype.formatTooltip=function(t,r,n){},e}();function r6(e){var t,r;return ke(e)?e.type&&(r=e):t=e,{text:t,frag:r}}function rm(e){return new FBe(e)}var FBe=function(){function e(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return e.prototype.perform=function(t){var r=this._upstream,n=t&&t.skip;if(this._dirty&&r){var i=this.context;i.data=i.outputData=r.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this);var a;this._plan&&!n&&(a=this._plan(this.context));var o=c(this._modBy),s=this._modDataCount||0,l=c(t&&t.modBy),u=t&&t.modDataCount||0;(o!==l||s!==u)&&(a="reset");function c(_){return!(_>=1)&&(_=1),_}var f;(this._dirty||a==="reset")&&(this._dirty=!1,f=this._doReset(n)),this._modBy=l,this._modDataCount=u;var h=t&&t.step;if(r?this._dueEnd=r._outputDueEnd:this._dueEnd=this._count?this._count(this.context):1/0,this._progress){var d=this._dueIndex,v=Math.min(h!=null?this._dueIndex+h:1/0,this._dueEnd);if(!n&&(f||d1&&n>0?s:o}};return a;function o(){return t=e?null:lt},gte:function(e,t){return e>=t}},GBe=function(){function e(t,r){if(!ot(r)){var n="";mt(n)}this._opFn=QQ[t],this._rvalFloat=Go(r)}return e.prototype.evaluate=function(t){return ot(t)?this._opFn(t,this._rvalFloat):this._opFn(Go(t),this._rvalFloat)},e}(),eee=function(){function e(t,r){var n=t==="desc";this._resultLT=n?1:-1,r==null&&(r=n?"min":"max"),this._incomparable=r==="min"?-1/0:1/0}return e.prototype.evaluate=function(t,r){var n=ot(t)?t:Go(t),i=ot(r)?r:Go(r),a=isNaN(n),o=isNaN(i);if(a&&(n=this._incomparable),o&&(i=this._incomparable),a&&o){var s=pe(t),l=pe(r);s&&(n=l?t:0),l&&(i=s?r:0)}return ni?-this._resultLT:0},e}(),WBe=function(){function e(t,r){this._rval=r,this._isEQ=t,this._rvalTypeof=typeof r,this._rvalFloat=Go(r)}return e.prototype.evaluate=function(t){var r=t===this._rval;if(!r){var n=typeof t;n!==this._rvalTypeof&&(n==="number"||this._rvalTypeof==="number")&&(r=Go(t)===this._rvalFloat)}return this._isEQ?r:!r},e}();function HBe(e,t){return e==="eq"||e==="ne"?new WBe(e==="eq",t):xe(QQ,e)?new GBe(e,t):null}var UBe=function(){function e(){}return e.prototype.getRawData=function(){throw new Error("not supported")},e.prototype.getRawDataItem=function(t){throw new Error("not supported")},e.prototype.cloneRawData=function(){},e.prototype.getDimensionInfo=function(t){},e.prototype.cloneAllDimensionInfo=function(){},e.prototype.count=function(){},e.prototype.retrieveValue=function(t,r){},e.prototype.retrieveValueFromItem=function(t,r){},e.prototype.convertValue=function(t,r){return tu(t,r)},e}();function ZBe(e,t){var r=new UBe,n=e.data,i=r.sourceFormat=e.sourceFormat,a=e.startIndex,o="";e.seriesLayoutBy!==Ua&&mt(o);var s=[],l={},u=e.dimensionsDefine;if(u)R(u,function(g,m){var x=g.name,_={index:m,name:x,displayName:g.displayName};if(s.push(_),x!=null){var b="";xe(l,x)&&mt(b),l[x]=_}});else for(var c=0;c65535?tze:rze}function oh(){return[1/0,-1/0]}function nze(e){var t=e.constructor;return t===Array?e.slice():new t(e)}function a6(e,t,r,n,i){var a=nee[r||"float"];if(i){var o=e[t],s=o&&o.length;if(s!==n){for(var l=new a(n),u=0;um[1]&&(m[1]=g)}return this._rawCount=this._count=l,{start:s,end:l}},e.prototype._initDataFromProvider=function(t,r,n){for(var i=this._provider,a=this._chunks,o=this._dimensions,s=o.length,l=this._rawExtent,u=se(o,function(_){return _.property}),c=0;cx[1]&&(x[1]=m)}}!i.persistent&&i.clean&&i.clean(),this._rawCount=this._count=r,this._extent=[]},e.prototype.count=function(){return this._count},e.prototype.get=function(t,r){if(!(r>=0&&r=0&&r=this._rawCount||t<0)return-1;if(!this._indices)return t;var r=this._indices,n=r[t];if(n!=null&&nt)a=o-1;else return o}return-1},e.prototype.getIndices=function(){var t,r=this._indices;if(r){var n=r.constructor,i=this._count;if(n===Array){t=new n(i);for(var a=0;a=f&&_<=h||isNaN(_))&&(l[u++]=g),g++}v=!0}else if(a===2){for(var m=d[i[0]],b=d[i[1]],S=t[i[1]][0],T=t[i[1]][1],x=0;x=f&&_<=h||isNaN(_))&&(C>=S&&C<=T||isNaN(C))&&(l[u++]=g),g++}v=!0}}if(!v)if(a===1)for(var x=0;x=f&&_<=h||isNaN(_))&&(l[u++]=A)}else for(var x=0;xt[k][1])&&(P=!1)}P&&(l[u++]=r.getRawIndex(x))}return ux[1]&&(x[1]=m)}}}},e.prototype.lttbDownSample=function(t,r){var n=this.clone([t],!0),i=n._chunks,a=i[t],o=this.count(),s=0,l=Math.floor(1/r),u=this.getRawIndex(0),c,f,h,d=new(ah(this._rawCount))(Math.min((Math.ceil(o/l)+2)*2,o));d[s++]=u;for(var v=1;vc&&(c=f,h=S)}E>0&&Es&&(g=s-c);for(var m=0;mv&&(v=_,d=c+m)}var b=this.getRawIndex(f),S=this.getRawIndex(d);fc-v&&(l=c-v,s.length=l);for(var g=0;gf[1]&&(f[1]=x),h[d++]=_}return a._count=d,a._indices=h,a._updateGetRawIdx(),a},e.prototype.each=function(t,r){if(this._count)for(var n=t.length,i=this._chunks,a=0,o=this.count();al&&(l=f)}return o=[s,l],this._extent[t]=o,o},e.prototype.getRawDataItem=function(t){var r=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(r);for(var n=[],i=this._chunks,a=0;a=0?this._indices[t]:-1},e.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},e.internalField=function(){function t(r,n,i,a){return tu(r[a],this._dimensions[a])}$2={arrayRows:t,objectRows:function(r,n,i,a){return tu(r[n],this._dimensions[a])},keyedColumns:t,original:function(r,n,i,a){var o=r&&(r.value==null?r:r.value);return tu(o instanceof Array?o[a]:o,this._dimensions[a])},typedArray:function(r,n,i,a){return r[a]}}}(),e}(),iee=function(){function e(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return e.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},e.prototype._setLocalSource=function(t,r){this._sourceList=t,this._upstreamSignList=r,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},e.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},e.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},e.prototype._createSource=function(){this._setLocalSource([],[]);var t=this._sourceHost,r=this._getUpstreamSourceManagers(),n=!!r.length,i,a;if(Jx(t)){var o=t,s=void 0,l=void 0,u=void 0;if(n){var c=r[0];c.prepareSource(),u=c.getSource(),s=u.data,l=u.sourceFormat,a=[c._getVersionSign()]}else s=o.get("data",!0),l=Un(s)?eu:Ni,a=[];var f=this._getSourceMetaRawOption()||{},h=u&&u.metaRawOption||{},d=be(f.seriesLayoutBy,h.seriesLayoutBy)||null,v=be(f.sourceHeader,h.sourceHeader),g=be(f.dimensions,h.dimensions),m=d!==h.seriesLayoutBy||!!v!=!!h.sourceHeader||g;i=m?[zI(s,{seriesLayoutBy:d,sourceHeader:v,dimensions:g},l)]:[]}else{var x=t;if(n){var _=this._applyTransform(r);i=_.sourceList,a=_.upstreamSignList}else{var b=x.get("source",!0);i=[zI(b,this._getSourceMetaRawOption(),null)],a=[]}}this._setLocalSource(i,a)},e.prototype._applyTransform=function(t){var r=this._sourceHost,n=r.get("transform",!0),i=r.get("fromTransformResult",!0);if(i!=null){var a="";t.length!==1&&s6(a)}var o,s=[],l=[];return R(t,function(u){u.prepareSource();var c=u.getSource(i||0),f="";i!=null&&!c&&s6(f),s.push(c),l.push(u._getVersionSign())}),n?o=QBe(n,s,{datasetIndex:r.componentIndex}):i!=null&&(o=[DBe(s[0])]),{sourceList:o,upstreamSignList:l}},e.prototype._isDirty=function(){if(this._dirty)return!0;for(var t=this._getUpstreamSourceManagers(),r=0;r0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},e.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},e.prototype.wakeUp=function(){this._disposed||(this.animation.start(),this._stillFrameAccum=0)},e.prototype.refreshHover=function(){this._needsRefreshHover=!0},e.prototype.refreshHoverImmediately=function(){this._disposed||(this._needsRefreshHover=!1,this.painter.refreshHover&&this.painter.getType()==="canvas"&&this.painter.refreshHover())},e.prototype.resize=function(t){this._disposed||(t=t||{},this.painter.resize(t.width,t.height),this.handler.resize())},e.prototype.clearAnimation=function(){this._disposed||this.animation.clear()},e.prototype.getWidth=function(){if(!this._disposed)return this.painter.getWidth()},e.prototype.getHeight=function(){if(!this._disposed)return this.painter.getHeight()},e.prototype.setCursorStyle=function(t){this._disposed||this.handler.setCursorStyle(t)},e.prototype.findHover=function(t,r){if(!this._disposed)return this.handler.findHover(t,r)},e.prototype.on=function(t,r,n){return this._disposed||this.handler.on(t,r,n),this},e.prototype.off=function(t,r){this._disposed||this.handler.off(t,r)},e.prototype.trigger=function(t,r){this._disposed||this.handler.trigger(t,r)},e.prototype.clear=function(){if(!this._disposed){for(var t=this.storage.getRoots(),r=0;r0){if(e<=i)return o;if(e>=a)return s}else{if(e>=i)return o;if(e<=a)return s}else{if(e===i)return o;if(e===a)return s}return(e-i)/l*u+o}var pe=mRe;function mRe(e,t,r){switch(e){case"center":case"middle":e="50%";break;case"left":case"top":e="0%";break;case"right":case"bottom":e="100%";break}return vw(e,t,r)}function vw(e,t,r){return ge(e)?gRe(e).match(/%$/)?parseFloat(e)/100*t+(r||0):parseFloat(e):e==null?NaN:+e}function gr(e,t,r){return t==null&&(t=10),t=Math.min(Math.max(0,t),gJ),e=(+e).toFixed(t),r?e:+e}function Ai(e){return e.sort(function(t,r){return t-r}),e}function za(e){if(e=+e,isNaN(e))return 0;if(e>1e-14){for(var t=1,r=0;r<15;r++,t*=10)if(Math.round(e*t)/t===e)return r}return mJ(e)}function mJ(e){var t=e.toString().toLowerCase(),r=t.indexOf("e"),n=r>0?+t.slice(r+1):0,i=r>0?r:t.length,a=t.indexOf("."),o=a<0?0:i-1-a;return Math.max(0,o-n)}function AN(e,t){var r=Math.log,n=Math.LN10,i=Math.floor(r(e[1]-e[0])/n),a=Math.round(r(Co(t[1]-t[0]))/n),o=Math.min(Math.max(-i+a,0),20);return isFinite(o)?o:20}function yRe(e,t,r){if(!e[t])return 0;var n=yJ(e,r);return n[t]||0}function yJ(e,t){var r=da(e,function(d,v){return d+(isNaN(v)?0:v)},0);if(r===0)return[];for(var n=Math.pow(10,t),i=se(e,function(d){return(isNaN(d)?0:d)/r*n*100}),a=n*100,o=se(i,function(d){return Math.floor(d)}),s=da(o,function(d,v){return d+v},0),l=se(i,function(d,v){return d-o[v]});su&&(u=l[f],c=f);++o[c],l[c]=0,++s}return se(o,function(d){return d/n})}function xRe(e,t){var r=Math.max(za(e),za(t)),n=e+t;return r>gJ?n:gr(n,r)}var mI=9007199254740991;function MN(e){var t=Math.PI*2;return(e%t+t)%t}function Kd(e){return e>-ZF&&e=10&&t++,t}function PN(e,t){var r=NT(e),n=Math.pow(10,r),i=e/n,a;return t?i<1.5?a=1:i<2.5?a=2:i<4?a=3:i<7?a=5:a=10:i<1?a=1:i<2?a=2:i<3?a=3:i<5?a=5:a=10,e=a*n,r>=-20?+e.toFixed(r<0?-r:0):e}function ub(e,t){var r=(e.length-1)*t+1,n=Math.floor(r),i=+e[n-1],a=r-n;return a?i+a*(e[n]-i):i}function yI(e){e.sort(function(l,u){return s(l,u,0)?-1:1});for(var t=-1/0,r=1,n=0;n0?t.length:0),this.item=null,this.key=NaN,this},e.prototype.next=function(){return(this._step>0?this._idx=this._end)?(this.item=this._list[this._idx],this.key=this._idx=this._idx+this._step,!0):!1},e}();function p2(e){e.option=e.parentModel=e.ecModel=null}var zRe=".",Vu="___EC__COMPONENT__CONTAINER___",kJ="___EC__EXTENDED_CLASS___";function Ao(e){var t={main:"",sub:""};if(e){var r=e.split(zRe);t.main=r[0]||"",t.sub=r[1]||""}return t}function $Re(e){_n(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(e),'componentType "'+e+'" illegal')}function FRe(e){return!!(e&&e[kJ])}function EN(e,t){e.$constructor=e,e.extend=function(r){var n=this,i;return VRe(n)?i=function(a){q(o,a);function o(){return a.apply(this,arguments)||this}return o}(n):(i=function(){(r.$constructor||n).apply(this,arguments)},yN(i,this)),ne(i.prototype,r),i[kJ]=!0,i.extend=this.extend,i.superCall=HRe,i.superApply=URe,i.superClass=n,i}}function VRe(e){return Ae(e)&&/^class\s/.test(Function.prototype.toString.call(e))}function LJ(e,t){e.extend=t.extend}var GRe=Math.round(Math.random()*10);function WRe(e){var t=["__\0is_clz",GRe++].join("_");e.prototype[t]=!0,e.isInstance=function(r){return!!(r&&r[t])}}function HRe(e,t){for(var r=[],n=2;n=0||a&&We(a,l)<0)){var u=n.getShallow(l,t);u!=null&&(o[e[s][0]]=u)}}return o}}var ZRe=[["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]],YRe=ff(ZRe),XRe=function(){function e(){}return e.prototype.getAreaStyle=function(t,r){return YRe(this,t,r)},e}(),_I=new Xd(50);function qRe(e){if(typeof e=="string"){var t=_I.get(e);return t&&t.image}else return e}function ON(e,t,r,n,i){if(e)if(typeof e=="string"){if(t&&t.__zrImageSrc===e||!r)return t;var a=_I.get(e),o={hostEl:r,cb:n,cbPayload:i};return a?(t=a.image,!RT(t)&&a.pending.push(o)):(t=ci.loadImage(e,KF,KF),t.__zrImageSrc=e,_I.put(e,t.__cachedImgObj={image:t,pending:[o]})),t}else return e;else return t}function KF(){var e=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var t=0;t=s;u++)l-=s;var c=Ro(o,r);return c>l&&(r="",c=0),l=e-c,i.ellipsis=r,i.ellipsisWidth=c,i.contentWidth=l,i.containerWidth=e,i}function OJ(e,t,r){var n=r.containerWidth,i=r.contentWidth,a=r.fontMeasureInfo;if(!n){e.textLine="",e.isTruncated=!1;return}var o=Ro(a,t);if(o<=n){e.textLine=t,e.isTruncated=!1;return}for(var s=0;;s++){if(o<=i||s>=r.maxIterations){t+=r.ellipsis;break}var l=s===0?JRe(t,i,a):o>0?Math.floor(t.length*i/o):0;t=t.substr(0,l),o=Ro(a,t)}t===""&&(t=r.placeholder),e.textLine=t,e.isTruncated=!0}function JRe(e,t,r){for(var n=0,i=0,a=e.length;iy&&d){var b=Math.floor(y/h);v=v||x.length>b,x=x.slice(0,b),_=x.length*h}if(i&&c&&m!=null)for(var S=EJ(m,u,t.ellipsis,{minChar:t.truncateMinChar,placeholder:t.placeholder}),T={},C=0;Cv&&m2(a,o.substring(v,y),t,d),m2(a,m[2],t,d,m[1]),v=g2.lastIndex}vf){var Z=a.lines.length;D>0?(I.tokens=I.tokens.slice(0,D),A(I,O,k),a.lines=a.lines.slice(0,P+1)):a.lines=a.lines.slice(0,P),a.isTruncated=a.isTruncated||a.lines.length0&&v+n.accumWidth>n.width&&(c=t.split(` +`),u=!0),n.accumWidth=v}else{var m=DJ(t,l,n.width,n.breakAll,n.accumWidth);n.accumWidth=m.accumWidth+d,f=m.linesWidths,c=m.lines}}c||(c=t.split(` +`));for(var y=jo(l),x=0;x=32&&t<=591||t>=880&&t<=4351||t>=4608&&t<=5119||t>=7680&&t<=8303}var i3e=da(",&?/;] ".split(""),function(e,t){return e[t]=!0,e},{});function a3e(e){return n3e(e)?!!i3e[e]:!0}function DJ(e,t,r,n,i){for(var a=[],o=[],s="",l="",u=0,c=0,f=jo(t),h=0;hr:i+c+v>r){c?(s||l)&&(m?(s||(s=l,l="",u=0,c=u),a.push(s),o.push(c-u),l+=d,u+=v,s="",c=u):(l&&(s+=l,l="",u=0),a.push(s),o.push(c),s=d,c=v)):m?(a.push(l),o.push(u),l=d,u=v):(a.push(d),o.push(v));continue}c+=v,m?(l+=d,u+=v):(l&&(s+=l,l="",u=0),s+=d)}return l&&(s+=l),s&&(a.push(s),o.push(c)),a.length===1&&(c+=i),{accumWidth:c,lines:a,linesWidths:o}}function QF(e,t,r,n,i,a){if(e.baseX=r,e.baseY=n,e.outerWidth=e.outerHeight=null,!!t){var o=t.width*2,s=t.height*2;Oe.set(eV,qd(r,o,i),Gc(n,s,a),o,s),Oe.intersect(t,eV,null,tV);var l=tV.outIntersectRect;e.outerWidth=l.width,e.outerHeight=l.height,e.baseX=qd(l.x,l.width,i,!0),e.baseY=Gc(l.y,l.height,a,!0)}}var eV=new Oe(0,0,0,0),tV={outIntersectRect:{},clamp:!0};function DN(e){return e!=null?e+="":e=""}function o3e(e){var t=DN(e.text),r=e.font,n=Ro(jo(r),t),i=h0(r);return bI(e,n,i,null)}function bI(e,t,r,n){var i=new Oe(qd(e.x||0,t,e.textAlign),Gc(e.y||0,r,e.textBaseline),t,r),a=n??(NJ(e)?e.lineWidth:0);return a>0&&(i.x-=a/2,i.y-=a/2,i.width+=a,i.height+=a),i}function NJ(e){var t=e.stroke;return t!=null&&t!=="none"&&e.lineWidth>0}var wI="__zr_style_"+Math.round(Math.random()*10),Wc={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},BT={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};Wc[wI]=!0;var rV=["z","z2","invisible"],s3e=["invisible"],pa=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype._init=function(r){for(var n=it(r),i=0;i1e-4){s[0]=e-r,s[1]=t-n,l[0]=e+r,l[1]=t+n;return}if(zx[0]=b2(i)*r+e,zx[1]=_2(i)*n+t,$x[0]=b2(a)*r+e,$x[1]=_2(a)*n+t,u(s,zx,$x),c(l,zx,$x),i=i%Gu,i<0&&(i=i+Gu),a=a%Gu,a<0&&(a=a+Gu),i>a&&!o?a+=Gu:ii&&(Fx[0]=b2(d)*r+e,Fx[1]=_2(d)*n+t,u(s,Fx,s),c(l,Fx,l))}var Et={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Wu=[],Hu=[],so=[],ol=[],lo=[],uo=[],w2=Math.min,S2=Math.max,Uu=Math.cos,Zu=Math.sin,is=Math.abs,SI=Math.PI,ml=SI*2,T2=typeof Float32Array<"u",jp=[];function C2(e){var t=Math.round(e/SI*1e8)/1e8;return t%2*SI}function $T(e,t){var r=C2(e[0]);r<0&&(r+=ml);var n=r-e[0],i=e[1];i+=n,!t&&i-r>=ml?i=r+ml:t&&r-i>=ml?i=r-ml:!t&&r>i?i=r+(ml-C2(r-i)):t&&r0&&(this._ux=is(n/fw/t)||0,this._uy=is(n/fw/r)||0)},e.prototype.setDPR=function(t){this.dpr=t},e.prototype.setContext=function(t){this._ctx=t},e.prototype.getContext=function(){return this._ctx},e.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},e.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},e.prototype.moveTo=function(t,r){return this._drawPendingPt(),this.addData(Et.M,t,r),this._ctx&&this._ctx.moveTo(t,r),this._x0=t,this._y0=r,this._xi=t,this._yi=r,this},e.prototype.lineTo=function(t,r){var n=is(t-this._xi),i=is(r-this._yi),a=n>this._ux||i>this._uy;if(this.addData(Et.L,t,r),this._ctx&&a&&this._ctx.lineTo(t,r),a)this._xi=t,this._yi=r,this._pendingPtDist=0;else{var o=n*n+i*i;o>this._pendingPtDist&&(this._pendingPtX=t,this._pendingPtY=r,this._pendingPtDist=o)}return this},e.prototype.bezierCurveTo=function(t,r,n,i,a,o){return this._drawPendingPt(),this.addData(Et.C,t,r,n,i,a,o),this._ctx&&this._ctx.bezierCurveTo(t,r,n,i,a,o),this._xi=a,this._yi=o,this},e.prototype.quadraticCurveTo=function(t,r,n,i){return this._drawPendingPt(),this.addData(Et.Q,t,r,n,i),this._ctx&&this._ctx.quadraticCurveTo(t,r,n,i),this._xi=n,this._yi=i,this},e.prototype.arc=function(t,r,n,i,a,o){this._drawPendingPt(),jp[0]=i,jp[1]=a,$T(jp,o),i=jp[0],a=jp[1];var s=a-i;return this.addData(Et.A,t,r,n,n,i,s,0,o?0:1),this._ctx&&this._ctx.arc(t,r,n,i,a,o),this._xi=Uu(a)*n+t,this._yi=Zu(a)*n+r,this},e.prototype.arcTo=function(t,r,n,i,a){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,r,n,i,a),this},e.prototype.rect=function(t,r,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,r,n,i),this.addData(Et.R,t,r,n,i),this},e.prototype.closePath=function(){this._drawPendingPt(),this.addData(Et.Z);var t=this._ctx,r=this._x0,n=this._y0;return t&&t.closePath(),this._xi=r,this._yi=n,this},e.prototype.fill=function(t){t&&t.fill(),this.toStatic()},e.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},e.prototype.len=function(){return this._len},e.prototype.setData=function(t){if(this._saveData){var r=t.length;!(this.data&&this.data.length===r)&&T2&&(this.data=new Float32Array(r));for(var n=0;n0&&o))for(var s=0;sc.length&&(this._expandData(),c=this.data);for(var f=0;f0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},e.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var t=[],r=0;r11&&(this.data=new Float32Array(t)))}},e.prototype.getBoundingRect=function(){so[0]=so[1]=lo[0]=lo[1]=Number.MAX_VALUE,ol[0]=ol[1]=uo[0]=uo[1]=-Number.MAX_VALUE;var t=this.data,r=0,n=0,i=0,a=0,o;for(o=0;on||is(b)>i||h===r-1)&&(m=Math.sqrt(_*_+b*b),a=y,o=x);break}case Et.C:{var S=t[h++],T=t[h++],y=t[h++],x=t[h++],C=t[h++],A=t[h++];m=bje(a,o,S,T,y,x,C,A,10),a=C,o=A;break}case Et.Q:{var S=t[h++],T=t[h++],y=t[h++],x=t[h++];m=Sje(a,o,S,T,y,x,10),a=y,o=x;break}case Et.A:var P=t[h++],I=t[h++],k=t[h++],O=t[h++],D=t[h++],N=t[h++],z=N+D;h+=1,v&&(s=Uu(D)*k+P,l=Zu(D)*O+I),m=S2(k,O)*w2(ml,Math.abs(N)),a=Uu(z)*k+P,o=Zu(z)*O+I;break;case Et.R:{s=a=t[h++],l=o=t[h++];var V=t[h++],F=t[h++];m=V*2+F*2;break}case Et.Z:{var _=s-a,b=l-o;m=Math.sqrt(_*_+b*b),a=s,o=l;break}}m>=0&&(u[f++]=m,c+=m)}return this._pathLen=c,c},e.prototype.rebuildPath=function(t,r){var n=this.data,i=this._ux,a=this._uy,o=this._len,s,l,u,c,f,h,d=r<1,v,m,y=0,x=0,_,b=0,S,T;if(!(d&&(this._pathSegLen||this._calculateLength(),v=this._pathSegLen,m=this._pathLen,_=r*m,!_)))e:for(var C=0;C0&&(t.lineTo(S,T),b=0),A){case Et.M:s=u=n[C++],l=c=n[C++],t.moveTo(u,c);break;case Et.L:{f=n[C++],h=n[C++];var I=is(f-u),k=is(h-c);if(I>i||k>a){if(d){var O=v[x++];if(y+O>_){var D=(_-y)/O;t.lineTo(u*(1-D)+f*D,c*(1-D)+h*D);break e}y+=O}t.lineTo(f,h),u=f,c=h,b=0}else{var N=I*I+k*k;N>b&&(S=f,T=h,b=N)}break}case Et.C:{var z=n[C++],V=n[C++],F=n[C++],$=n[C++],B=n[C++],Z=n[C++];if(d){var O=v[x++];if(y+O>_){var D=(_-y)/O;uu(u,z,F,B,D,Wu),uu(c,V,$,Z,D,Hu),t.bezierCurveTo(Wu[1],Hu[1],Wu[2],Hu[2],Wu[3],Hu[3]);break e}y+=O}t.bezierCurveTo(z,V,F,$,B,Z),u=B,c=Z;break}case Et.Q:{var z=n[C++],V=n[C++],F=n[C++],$=n[C++];if(d){var O=v[x++];if(y+O>_){var D=(_-y)/O;vy(u,z,F,D,Wu),vy(c,V,$,D,Hu),t.quadraticCurveTo(Wu[1],Hu[1],Wu[2],Hu[2]);break e}y+=O}t.quadraticCurveTo(z,V,F,$),u=F,c=$;break}case Et.A:var W=n[C++],G=n[C++],Y=n[C++],K=n[C++],ee=n[C++],le=n[C++],he=n[C++],Ne=!n[C++],xe=Y>K?Y:K,ie=is(Y-K)>.001,de=ee+le,ue=!1;if(d){var O=v[x++];y+O>_&&(de=ee+le*(_-y)/O,ue=!0),y+=O}if(ie&&t.ellipse?t.ellipse(W,G,Y,K,he,ee,de,Ne):t.arc(W,G,xe,ee,de,Ne),ue)break e;P&&(s=Uu(ee)*Y+W,l=Zu(ee)*K+G),u=Uu(de)*Y+W,c=Zu(de)*K+G;break;case Et.R:s=u=n[C],l=c=n[C+1],f=n[C++],h=n[C++];var te=n[C++],Ve=n[C++];if(d){var O=v[x++];if(y+O>_){var Ce=_-y;t.moveTo(f,h),t.lineTo(f+w2(Ce,te),h),Ce-=te,Ce>0&&t.lineTo(f+te,h+w2(Ce,Ve)),Ce-=Ve,Ce>0&&t.lineTo(f+S2(te-Ce,0),h+Ve),Ce-=te,Ce>0&&t.lineTo(f,h+S2(Ve-Ce,0));break e}y+=O}t.rect(f,h,te,Ve);break;case Et.Z:if(d){var O=v[x++];if(y+O>_){var D=(_-y)/O;t.lineTo(u*(1-D)+s*D,c*(1-D)+l*D);break e}y+=O}t.closePath(),u=s,c=l}}},e.prototype.clone=function(){var t=new e,r=this.data;return t.data=r.slice?r.slice():Array.prototype.slice.call(r),t._len=this._len,t},e.prototype.canSave=function(){return!!this._saveData},e.CMD=Et,e.initDefaultProps=function(){var t=e.prototype;t._saveData=!0,t._ux=0,t._uy=0,t._pendingPtDist=0,t._version=0}(),e}();function wl(e,t,r,n,i,a,o){if(i===0)return!1;var s=i,l=0,u=e;if(o>t+s&&o>n+s||oe+s&&a>r+s||at+f&&c>n+f&&c>a+f&&c>s+f||ce+f&&u>r+f&&u>i+f&&u>o+f||ut+u&&l>n+u&&l>a+u||le+u&&s>r+u&&s>i+u||sr||c+ui&&(i+=Rp);var h=Math.atan2(l,s);return h<0&&(h+=Rp),h>=n&&h<=i||h+Rp>=n&&h+Rp<=i}function hs(e,t,r,n,i,a){if(a>t&&a>n||ai?s:0}var sl=Wo.CMD,Yu=Math.PI*2,v3e=1e-4;function p3e(e,t){return Math.abs(e-t)t&&u>n&&u>a&&u>s||u1&&g3e(),d=Fr(t,n,a,s,Xi[0]),h>1&&(v=Fr(t,n,a,s,Xi[1]))),h===2?yt&&s>n&&s>a||s=0&&u<=1){for(var c=0,f=rn(t,n,a,u),h=0;hr||s<-r)return 0;var l=Math.sqrt(r*r-s*s);$n[0]=-l,$n[1]=l;var u=Math.abs(n-i);if(u<1e-4)return 0;if(u>=Yu-1e-4){n=0,i=Yu;var c=a?1:-1;return o>=$n[0]+e&&o<=$n[1]+e?c:0}if(n>i){var f=n;n=i,i=f}n<0&&(n+=Yu,i+=Yu);for(var h=0,d=0;d<2;d++){var v=$n[d];if(v+e>o){var m=Math.atan2(s,v),c=a?1:-1;m<0&&(m=Yu+m),(m>=n&&m<=i||m+Yu>=n&&m+Yu<=i)&&(m>Math.PI/2&&m1&&(r||(s+=hs(l,u,c,f,n,i))),y&&(l=a[v],u=a[v+1],c=l,f=u),m){case sl.M:c=a[v++],f=a[v++],l=c,u=f;break;case sl.L:if(r){if(wl(l,u,a[v],a[v+1],t,n,i))return!0}else s+=hs(l,u,a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case sl.C:if(r){if(h3e(l,u,a[v++],a[v++],a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=m3e(l,u,a[v++],a[v++],a[v++],a[v++],a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case sl.Q:if(r){if(jJ(l,u,a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=y3e(l,u,a[v++],a[v++],a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case sl.A:var x=a[v++],_=a[v++],b=a[v++],S=a[v++],T=a[v++],C=a[v++];v+=1;var A=!!(1-a[v++]);h=Math.cos(T)*b+x,d=Math.sin(T)*S+_,y?(c=h,f=d):s+=hs(l,u,h,d,n,i);var P=(n-x)*S/b+x;if(r){if(d3e(x,_,S,T,T+C,A,t,P,i))return!0}else s+=x3e(x,_,S,T,T+C,A,P,i);l=Math.cos(T+C)*b+x,u=Math.sin(T+C)*S+_;break;case sl.R:c=l=a[v++],f=u=a[v++];var I=a[v++],k=a[v++];if(h=c+I,d=f+k,r){if(wl(c,f,h,f,t,n,i)||wl(h,f,h,d,t,n,i)||wl(h,d,c,d,t,n,i)||wl(c,d,c,f,t,n,i))return!0}else s+=hs(h,f,h,d,n,i),s+=hs(c,d,c,f,n,i);break;case sl.Z:if(r){if(wl(l,u,c,f,t,n,i))return!0}else s+=hs(l,u,c,f,n,i);l=c,u=f;break}}return!r&&!p3e(u,f)&&(s+=hs(l,u,c,f,n,i)||0),s!==0}function _3e(e,t,r){return RJ(e,0,!1,t,r)}function b3e(e,t,r,n){return RJ(e,t,!0,r,n)}var pw=ke({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},Wc),w3e={style:ke({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},BT.style)},A2=Vo.concat(["invisible","culling","z","z2","zlevel","parent"]),tt=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.update=function(){var r=this;e.prototype.update.call(this);var n=this.style;if(n.decal){var i=this._decalEl=this._decalEl||new t;i.buildPath===t.prototype.buildPath&&(i.buildPath=function(l){r.buildPath(l,r.shape)}),i.silent=!0;var a=i.style;for(var o in n)a[o]!==n[o]&&(a[o]=n[o]);a.fill=n.fill?n.decal:null,a.decal=null,a.shadowColor=null,n.strokeFirst&&(a.stroke=null);for(var s=0;s.5?dI:n>.2?eRe:vI}else if(r)return vI}return dI},t.prototype.getInsideTextStroke=function(r){var n=this.style.fill;if(ge(n)){var i=this.__zr,a=!!(i&&i.isDarkMode()),o=my(r,0)0))},t.prototype.hasFill=function(){var r=this.style,n=r.fill;return n!=null&&n!=="none"},t.prototype.getBoundingRect=function(){var r=this._rect,n=this.style,i=!r;if(i){var a=!1;this.path||(a=!0,this.createPathProxy());var o=this.path;(a||this.__dirty&Ah)&&(o.beginPath(),this.buildPath(o,this.shape,!1),this.pathUpdated()),r=o.getBoundingRect()}if(this._rect=r,this.hasStroke()&&this.path&&this.path.len()>0){var s=this._rectStroke||(this._rectStroke=r.clone());if(this.__dirty||i){s.copy(r);var l=n.strokeNoScale?this.getLineScale():1,u=n.lineWidth;if(!this.hasFill()){var c=this.strokeContainThreshold;u=Math.max(u,c??4)}l>1e-10&&(s.width+=u/l,s.height+=u/l,s.x-=u/l/2,s.y-=u/l/2)}return s}return r},t.prototype.contain=function(r,n){var i=this.transformCoordToLocal(r,n),a=this.getBoundingRect(),o=this.style;if(r=i[0],n=i[1],a.contain(r,n)){var s=this.path;if(this.hasStroke()){var l=o.lineWidth,u=o.strokeNoScale?this.getLineScale():1;if(u>1e-10&&(this.hasFill()||(l=Math.max(l,this.strokeContainThreshold)),b3e(s,l/u,r,n)))return!0}if(this.hasFill())return _3e(s,r,n)}return!1},t.prototype.dirtyShape=function(){this.__dirty|=Ah,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},t.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},t.prototype.animateShape=function(r){return this.animate("shape",r)},t.prototype.updateDuringAnimation=function(r){r==="style"?this.dirtyStyle():r==="shape"?this.dirtyShape():this.markRedraw()},t.prototype.attrKV=function(r,n){r==="shape"?this.setShape(n):e.prototype.attrKV.call(this,r,n)},t.prototype.setShape=function(r,n){var i=this.shape;return i||(i=this.shape={}),typeof r=="string"?i[r]=n:ne(i,r),this.dirtyShape(),this},t.prototype.shapeChanged=function(){return!!(this.__dirty&Ah)},t.prototype.createStyle=function(r){return u0(pw,r)},t.prototype._innerSaveToNormal=function(r){e.prototype._innerSaveToNormal.call(this,r);var n=this._normalState;r.shape&&!n.shape&&(n.shape=ne({},this.shape))},t.prototype._applyStateObj=function(r,n,i,a,o,s){e.prototype._applyStateObj.call(this,r,n,i,a,o,s);var l=!(n&&a),u;if(n&&n.shape?o?a?u=n.shape:(u=ne({},i.shape),ne(u,n.shape)):(u=ne({},a?this.shape:i.shape),ne(u,n.shape)):l&&(u=i.shape),u)if(o){this.shape=ne({},this.shape);for(var c={},f=it(u),h=0;hi&&(f=s+l,s*=i/f,l*=i/f),u+c>i&&(f=u+c,u*=i/f,c*=i/f),l+u>a&&(f=l+u,l*=a/f,u*=a/f),s+c>a&&(f=s+c,s*=a/f,c*=a/f),e.moveTo(r+s,n),e.lineTo(r+i-l,n),l!==0&&e.arc(r+i-l,n+l,l,-Math.PI/2,0),e.lineTo(r+i,n+a-u),u!==0&&e.arc(r+i-u,n+a-u,u,0,Math.PI/2),e.lineTo(r+c,n+a),c!==0&&e.arc(r+c,n+a-c,c,Math.PI/2,Math.PI),e.lineTo(r,n+s),s!==0&&e.arc(r+s,n+s,s,Math.PI,Math.PI*1.5)}var Zh=Math.round;function FT(e,t,r){if(t){var n=t.x1,i=t.x2,a=t.y1,o=t.y2;e.x1=n,e.x2=i,e.y1=a,e.y2=o;var s=r&&r.lineWidth;return s&&(Zh(n*2)===Zh(i*2)&&(e.x1=e.x2=Pi(n,s,!0)),Zh(a*2)===Zh(o*2)&&(e.y1=e.y2=Pi(a,s,!0))),e}}function BJ(e,t,r){if(t){var n=t.x,i=t.y,a=t.width,o=t.height;e.x=n,e.y=i,e.width=a,e.height=o;var s=r&&r.lineWidth;return s&&(e.x=Pi(n,s,!0),e.y=Pi(i,s,!0),e.width=Math.max(Pi(n+a,s,!1)-e.x,a===0?0:1),e.height=Math.max(Pi(i+o,s,!1)-e.y,o===0?0:1)),e}}function Pi(e,t,r){if(!t)return e;var n=Zh(e*2);return(n+Zh(t))%2===0?n/2:(n+(r?1:-1))/2}var P3e=function(){function e(){this.x=0,this.y=0,this.width=0,this.height=0}return e}(),k3e={},Xe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new P3e},t.prototype.buildPath=function(r,n){var i,a,o,s;if(this.subPixelOptimize){var l=BJ(k3e,n,this.style);i=l.x,a=l.y,o=l.width,s=l.height,l.r=n.r,n=l}else i=n.x,a=n.y,o=n.width,s=n.height;n.r?M3e(r,n):r.rect(i,a,o,s)},t.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},t}(tt);Xe.prototype.type="rect";var sV={fill:"#000"},lV=2,co={},L3e={style:ke({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},BT.style)},at=function(e){q(t,e);function t(r){var n=e.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=sV,n.attr(r),n}return t.prototype.childrenRef=function(){return this._children},t.prototype.update=function(){e.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var r=0;r0,D=0;D=0&&(z=C[N],z.align==="right");)this._placeToken(z,r,P,x,D,"right",b),I-=z.width,D-=z.width,N--;for(O+=(c-(O-y)-(_-D)-I)/2;k<=N;)z=C[k],this._placeToken(z,r,P,x,O+z.width/2,"center",b),O+=z.width,k++;x+=P}},t.prototype._placeToken=function(r,n,i,a,o,s,l){var u=n.rich[r.styleName]||{};u.text=r.text;var c=r.verticalAlign,f=a+i/2;c==="top"?f=a+r.height/2:c==="bottom"&&(f=a+i-r.height/2);var h=!r.isLineHolder&&M2(u);h&&this._renderBackground(u,n,s==="right"?o-r.width:s==="center"?o-r.width/2:o,f-r.height/2,r.width,r.height);var d=!!u.backgroundColor,v=r.textPadding;v&&(o=vV(o,s,v),f-=r.height/2-v[0]-r.innerHeight/2);var m=this._getOrCreateChild(Jd),y=m.createStyle();m.useStyle(y);var x=this._defaultStyle,_=!1,b=0,S=!1,T=dV("fill"in u?u.fill:"fill"in n?n.fill:(_=!0,x.fill)),C=hV("stroke"in u?u.stroke:"stroke"in n?n.stroke:!d&&!l&&(!x.autoStroke||_)?(b=lV,S=!0,x.stroke):null),A=u.textShadowBlur>0||n.textShadowBlur>0;y.text=r.text,y.x=o,y.y=f,A&&(y.shadowBlur=u.textShadowBlur||n.textShadowBlur||0,y.shadowColor=u.textShadowColor||n.textShadowColor||"transparent",y.shadowOffsetX=u.textShadowOffsetX||n.textShadowOffsetX||0,y.shadowOffsetY=u.textShadowOffsetY||n.textShadowOffsetY||0),y.textAlign=s,y.textBaseline="middle",y.font=r.font||Vs,y.opacity=ui(u.opacity,n.opacity,1),cV(y,u),C&&(y.lineWidth=ui(u.lineWidth,n.lineWidth,b),y.lineDash=Se(u.lineDash,n.lineDash),y.lineDashOffset=n.lineDashOffset||0,y.stroke=C),T&&(y.fill=T),m.setBoundingRect(bI(y,r.contentWidth,r.contentHeight,S?0:null))},t.prototype._renderBackground=function(r,n,i,a,o,s){var l=r.backgroundColor,u=r.borderWidth,c=r.borderColor,f=l&&l.image,h=l&&!f,d=r.borderRadius,v=this,m,y;if(h||r.lineHeight||u&&c){m=this._getOrCreateChild(Xe),m.useStyle(m.createStyle()),m.style.fill=null;var x=m.shape;x.x=i,x.y=a,x.width=o,x.height=s,x.r=d,m.dirtyShape()}if(h){var _=m.style;_.fill=l||null,_.fillOpacity=Se(r.fillOpacity,1)}else if(f){y=this._getOrCreateChild(Xr),y.onload=function(){v.dirtyStyle()};var b=y.style;b.image=l.image,b.x=i,b.y=a,b.width=o,b.height=s}if(u&&c){var _=m.style;_.lineWidth=u,_.stroke=c,_.strokeOpacity=Se(r.strokeOpacity,1),_.lineDash=r.borderDash,_.lineDashOffset=r.borderDashOffset||0,m.strokeContainThreshold=0,m.hasFill()&&m.hasStroke()&&(_.strokeFirst=!0,_.lineWidth*=2)}var S=(m||y).style;S.shadowBlur=r.shadowBlur||0,S.shadowColor=r.shadowColor||"transparent",S.shadowOffsetX=r.shadowOffsetX||0,S.shadowOffsetY=r.shadowOffsetY||0,S.opacity=ui(r.opacity,n.opacity,1)},t.makeFont=function(r){var n="";return $J(r)&&(n=[r.fontStyle,r.fontWeight,zJ(r.fontSize),r.fontFamily||"sans-serif"].join(" ")),n&&Ci(n)||r.textFont||r.font},t}(pa),I3e={left:!0,right:1,center:1},E3e={top:1,bottom:1,middle:1},uV=["fontStyle","fontWeight","fontSize","fontFamily"];function zJ(e){return typeof e=="string"&&(e.indexOf("px")!==-1||e.indexOf("rem")!==-1||e.indexOf("em")!==-1)?e:isNaN(+e)?vN+"px":e+"px"}function cV(e,t){for(var r=0;r=0,a=!1;if(e instanceof tt){var o=FJ(e),s=i&&o.selectFill||o.normalFill,l=i&&o.selectStroke||o.normalStroke;if(rh(s)||rh(l)){n=n||{};var u=n.style||{};u.fill==="inherit"?(a=!0,n=ne({},n),u=ne({},u),u.fill=s):!rh(u.fill)&&rh(s)?(a=!0,n=ne({},n),u=ne({},u),u.fill=uw(s)):!rh(u.stroke)&&rh(l)&&(a||(n=ne({},n),u=ne({},u)),u.stroke=uw(l)),n.style=u}}if(n&&n.z2==null){a||(n=ne({},n));var c=e.z2EmphasisLift;n.z2=e.z2+(c??Bv)}return n}function z3e(e,t,r){if(r&&r.z2==null){r=ne({},r);var n=e.z2SelectLift;r.z2=e.z2+(n??D3e)}return r}function $3e(e,t,r){var n=We(e.currentStates,t)>=0,i=e.style.opacity,a=n?null:R3e(e,["opacity"],t,{opacity:1});r=r||{};var o=r.style||{};return o.opacity==null&&(r=ne({},r),o=ne({opacity:n?i:a.opacity*.1},o),r.style=o),r}function P2(e,t){var r=this.states[e];if(this.style){if(e==="emphasis")return B3e(this,e,t,r);if(e==="blur")return $3e(this,e,r);if(e==="select")return z3e(this,e,r)}return r}function hf(e){e.stateProxy=P2;var t=e.getTextContent(),r=e.getTextGuideLine();t&&(t.stateProxy=P2),r&&(r.stateProxy=P2)}function xV(e,t){!YJ(e,t)&&!e.__highByOuter&&tl(e,VJ)}function _V(e,t){!YJ(e,t)&&!e.__highByOuter&&tl(e,GJ)}function Ws(e,t){e.__highByOuter|=1<<(t||0),tl(e,VJ)}function Hs(e,t){!(e.__highByOuter&=~(1<<(t||0)))&&tl(e,GJ)}function HJ(e){tl(e,BN)}function zN(e){tl(e,WJ)}function UJ(e){tl(e,N3e)}function ZJ(e){tl(e,j3e)}function YJ(e,t){return e.__highDownSilentOnTouch&&t.zrByTouch}function XJ(e){var t=e.getModel(),r=[],n=[];t.eachComponent(function(i,a){var o=NN(a),s=i==="series",l=s?e.getViewOfSeriesModel(a):e.getViewOfComponentModel(a);!s&&n.push(l),o.isBlured&&(l.group.traverse(function(u){WJ(u)}),s&&r.push(a)),o.isBlured=!1}),R(n,function(i){i&&i.toggleBlurSeries&&i.toggleBlurSeries(r,!1,t)})}function AI(e,t,r,n){var i=n.getModel();r=r||"coordinateSystem";function a(u,c){for(var f=0;f0){var s={dataIndex:o,seriesIndex:r.seriesIndex};a!=null&&(s.dataType=a),t.push(s)}})}),t}function Jl(e,t,r){Oc(e,!0),tl(e,hf),PI(e,t,r)}function U3e(e){Oc(e,!1)}function Gt(e,t,r,n){n?U3e(e):Jl(e,t,r)}function PI(e,t,r){var n=je(e);t!=null?(n.focus=t,n.blurScope=r):n.focus&&(n.focus=null)}var wV=["emphasis","blur","select"],Z3e={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function Nr(e,t,r,n){r=r||"itemStyle";for(var i=0;i1&&(o*=k2(v),s*=k2(v));var m=(i===a?-1:1)*k2((o*o*(s*s)-o*o*(d*d)-s*s*(h*h))/(o*o*(d*d)+s*s*(h*h)))||0,y=m*o*d/s,x=m*-s*h/o,_=(e+r)/2+Gx(f)*y-Vx(f)*x,b=(t+n)/2+Vx(f)*y+Gx(f)*x,S=AV([1,0],[(h-y)/o,(d-x)/s]),T=[(h-y)/o,(d-x)/s],C=[(-1*h-y)/o,(-1*d-x)/s],A=AV(T,C);if(LI(T,C)<=-1&&(A=Bp),LI(T,C)>=1&&(A=0),A<0){var P=Math.round(A/Bp*1e6)/1e6;A=Bp*2+P%2*Bp}c.addData(u,_,b,o,s,S,A,f,a)}var Q3e=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig,e5e=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function t5e(e){var t=new Wo;if(!e)return t;var r=0,n=0,i=r,a=n,o,s=Wo.CMD,l=e.match(Q3e);if(!l)return t;for(var u=0;uz*z+V*V&&(P=k,I=O),{cx:P,cy:I,x0:-c,y0:-f,x1:P*(i/T-1),y1:I*(i/T-1)}}function l5e(e){var t;if(ae(e)){var r=e.length;if(!r)return e;r===1?t=[e[0],e[0],0,0]:r===2?t=[e[0],e[0],e[1],e[1]]:r===3?t=e.concat(e[2]):t=e}else t=[e,e,e,e];return t}function u5e(e,t){var r,n=_g(t.r,0),i=_g(t.r0||0,0),a=n>0,o=i>0;if(!(!a&&!o)){if(a||(n=i,i=0),i>n){var s=n;n=i,i=s}var l=t.startAngle,u=t.endAngle;if(!(isNaN(l)||isNaN(u))){var c=t.cx,f=t.cy,h=!!t.clockwise,d=PV(u-l),v=d>L2&&d%L2;if(v>Pa&&(d=v),!(n>Pa))e.moveTo(c,f);else if(d>L2-Pa)e.moveTo(c+n*ih(l),f+n*Xu(l)),e.arc(c,f,n,l,u,!h),i>Pa&&(e.moveTo(c+i*ih(u),f+i*Xu(u)),e.arc(c,f,i,u,l,h));else{var m=void 0,y=void 0,x=void 0,_=void 0,b=void 0,S=void 0,T=void 0,C=void 0,A=void 0,P=void 0,I=void 0,k=void 0,O=void 0,D=void 0,N=void 0,z=void 0,V=n*ih(l),F=n*Xu(l),$=i*ih(u),B=i*Xu(u),Z=d>Pa;if(Z){var W=t.cornerRadius;W&&(r=l5e(W),m=r[0],y=r[1],x=r[2],_=r[3]);var G=PV(n-i)/2;if(b=fo(G,x),S=fo(G,_),T=fo(G,m),C=fo(G,y),I=A=_g(b,S),k=P=_g(T,C),(A>Pa||P>Pa)&&(O=n*ih(u),D=n*Xu(u),N=i*ih(l),z=i*Xu(l),dPa){var ie=fo(x,I),de=fo(_,I),ue=Wx(N,z,V,F,n,ie,h),te=Wx(O,D,$,B,n,de,h);e.moveTo(c+ue.cx+ue.x0,f+ue.cy+ue.y0),I0&&e.arc(c+ue.cx,f+ue.cy,ie,Cn(ue.y0,ue.x0),Cn(ue.y1,ue.x1),!h),e.arc(c,f,n,Cn(ue.cy+ue.y1,ue.cx+ue.x1),Cn(te.cy+te.y1,te.cx+te.x1),!h),de>0&&e.arc(c+te.cx,f+te.cy,de,Cn(te.y1,te.x1),Cn(te.y0,te.x0),!h))}else e.moveTo(c+V,f+F),e.arc(c,f,n,l,u,!h);if(!(i>Pa)||!Z)e.lineTo(c+$,f+B);else if(k>Pa){var ie=fo(m,k),de=fo(y,k),ue=Wx($,B,O,D,i,-de,h),te=Wx(V,F,N,z,i,-ie,h);e.lineTo(c+ue.cx+ue.x0,f+ue.cy+ue.y0),k0&&e.arc(c+ue.cx,f+ue.cy,de,Cn(ue.y0,ue.x0),Cn(ue.y1,ue.x1),!h),e.arc(c,f,i,Cn(ue.cy+ue.y1,ue.cx+ue.x1),Cn(te.cy+te.y1,te.cx+te.x1),h),ie>0&&e.arc(c+te.cx,f+te.cy,ie,Cn(te.y1,te.x1),Cn(te.y0,te.x0),!h))}else e.lineTo(c+$,f+B),e.arc(c,f,i,u,l,h)}e.closePath()}}}var c5e=function(){function e(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0,this.cornerRadius=0}return e}(),bn=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new c5e},t.prototype.buildPath=function(r,n){u5e(r,n)},t.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},t}(tt);bn.prototype.type="sector";var f5e=function(){function e(){this.cx=0,this.cy=0,this.r=0,this.r0=0}return e}(),zv=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new f5e},t.prototype.buildPath=function(r,n){var i=n.cx,a=n.cy,o=Math.PI*2;r.moveTo(i+n.r,a),r.arc(i,a,n.r,0,o,!1),r.moveTo(i+n.r0,a),r.arc(i,a,n.r0,0,o,!0)},t}(tt);zv.prototype.type="ring";function h5e(e,t,r,n){var i=[],a=[],o=[],s=[],l,u,c,f;if(n){c=[1/0,1/0],f=[-1/0,-1/0];for(var h=0,d=e.length;h=2){if(n){var a=h5e(i,n,r,t.smoothConstraint);e.moveTo(i[0][0],i[0][1]);for(var o=i.length,s=0;s<(r?o:o-1);s++){var l=a[s*2],u=a[s*2+1],c=i[(s+1)%o];e.bezierCurveTo(l[0],l[1],u[0],u[1],c[0],c[1])}}else{e.moveTo(i[0][0],i[0][1]);for(var s=1,f=i.length;sKu[1]){if(a=!1,Qr.negativeSize||n)return a;var l=Hx(Ku[0]-qu[1]),u=Hx(qu[0]-Ku[1]);I2(l,u)>Zx.len()&&(l=u||!Qr.bidirectional)&&(Ee.scale(Ux,s,-u*i),Qr.useDir&&Qr.calcDirMTV()))}}return a},e.prototype._getProjMinMaxOnAxis=function(t,r,n){for(var i=this._axes[t],a=this._origin,o=r[0].dot(i)+a[t],s=o,l=o,u=1;u0){var f=c.duration,h=c.delay,d=c.easing,v={duration:f,delay:h||0,easing:d,done:a,force:!!a||!!o,setToFinal:!u,scope:e,during:o};s?t.animateFrom(r,v):t.animateTo(r,v)}else t.stopAnimation(),!s&&t.attr(r),o&&o(1),a&&a()}function lt(e,t,r,n,i,a){GN("update",e,t,r,n,i,a)}function Nt(e,t,r,n,i,a){GN("enter",e,t,r,n,i,a)}function dd(e){if(!e.__zr)return!0;for(var t=0;tCo(a[1])?a[0]>0?"right":"left":a[1]>0?"bottom":"top"}function IV(e){return!e.isGroup}function T5e(e){return e.shape!=null}function m0(e,t,r){if(!e||!t)return;function n(o){var s={};return o.traverse(function(l){IV(l)&&l.anid&&(s[l.anid]=l)}),s}function i(o){var s={x:o.x,y:o.y,rotation:o.rotation};return T5e(o)&&(s.shape=Me(o.shape)),s}var a=n(e);t.traverse(function(o){if(IV(o)&&o.anid){var s=a[o.anid];if(s){var l=i(o);o.attr(i(s)),lt(o,l,r,je(o).dataIndex)}}})}function UN(e,t){return se(e,function(r){var n=r[0];n=pr(n,t.x),n=Li(n,t.x+t.width);var i=r[1];return i=pr(i,t.y),i=Li(i,t.y+t.height),[n,i]})}function cQ(e,t){var r=pr(e.x,t.x),n=Li(e.x+e.width,t.x+t.width),i=pr(e.y,t.y),a=Li(e.y+e.height,t.y+t.height);if(n>=r&&a>=i)return{x:r,y:i,width:n-r,height:a-i}}function Vv(e,t,r){var n=ne({rectHover:!0},t),i=n.style={strokeNoScale:!0};if(r=r||{x:-1,y:-1,width:2,height:2},e)return e.indexOf("image://")===0?(i.image=e.slice(8),ke(i,r),new Xr(n)):Qd(e.replace("path://",""),n,r,"center")}function bg(e,t,r,n,i){for(var a=0,o=i[i.length-1];a1)return!1;var y=E2(d,v,c,f)/h;return!(y<0||y>1)}function E2(e,t,r,n){return e*n-r*t}function C5e(e){return e<=1e-6&&e>=-1e-6}function df(e,t,r,n,i){return t==null||(ot(t)?Ht[0]=Ht[1]=Ht[2]=Ht[3]=t:(Ht[0]=t[0],Ht[1]=t[1],Ht[2]=t[2],Ht[3]=t[3]),n&&(Ht[0]=pr(0,Ht[0]),Ht[1]=pr(0,Ht[1]),Ht[2]=pr(0,Ht[2]),Ht[3]=pr(0,Ht[3])),r&&(Ht[0]=-Ht[0],Ht[1]=-Ht[1],Ht[2]=-Ht[2],Ht[3]=-Ht[3]),EV(e,Ht,"x","width",3,1,i&&i[0]||0),EV(e,Ht,"y","height",0,2,i&&i[1]||0)),e}var Ht=[0,0,0,0];function EV(e,t,r,n,i,a,o){var s=t[a]+t[i],l=e[n];e[n]+=s,o=pr(0,Li(o,l)),e[n]=0?-t[i]:t[a]>=0?l+t[a]:Co(s)>1e-8?(l-o)*t[i]/s:0):e[r]-=t[i]}function rl(e){var t=e.itemTooltipOption,r=e.componentModel,n=e.itemName,i=ge(t)?{formatter:t}:t,a=r.mainType,o=r.componentIndex,s={componentType:a,name:n,$vars:["name"]};s[a+"Index"]=o;var l=e.formatterParamsExtra;l&&R(it(l),function(c){be(s,c)||(s[c]=l[c],s.$vars.push(c))});var u=je(e.el);u.componentMainType=a,u.componentIndex=o,u.tooltipConfig={name:n,option:ke({content:n,encodeHTMLContent:!0,formatterParams:s},i)}}function EI(e,t){var r;e.isGroup&&(r=t(e)),r||e.traverse(t)}function Au(e,t){if(e)if(ae(e))for(var r=0;rt&&(t=o),ot&&(r=t=0),{min:r,max:t}}function HT(e,t,r){dQ(e,t,r,-1/0)}function dQ(e,t,r,n){if(e.ignoreModelZ)return n;var i=e.getTextContent(),a=e.getTextGuideLine(),o=e.isGroup;if(o)for(var s=e.childrenRef(),l=0;l=0&&s.push(l)}),s}}function Mu(e,t){return He(He({},e,!0),t,!0)}const R5e={time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst",custom:"Custom chart",chart:"Chart"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}},B5e={time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图",custom:"自定义图表",chart:"图表"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}};var _w="ZH",qN="EN",vd=qN,hb={},KN={},xQ=nt.domSupported?function(){var e=(document.documentElement.lang||navigator.language||navigator.browserLanguage||vd).toUpperCase();return e.indexOf(_w)>-1?_w:vd}():vd;function JN(e,t){e=e.toUpperCase(),KN[e]=new et(t),hb[e]=t}function z5e(e){if(ge(e)){var t=hb[e.toUpperCase()]||{};return e===_w||e===qN?Me(t):He(Me(t),Me(hb[vd]),!1)}else return He(Me(e),Me(hb[vd]),!1)}function DI(e){return KN[e]}function $5e(){return KN[vd]}JN(qN,R5e);JN(_w,B5e);var NI=null;function F5e(e){NI||(NI=e)}function Tr(){return NI}var QN=1e3,ej=QN*60,em=ej*60,ta=em*24,RV=ta*365,V5e={year:/({yyyy}|{yy})/,month:/({MMMM}|{MMM}|{MM}|{M})/,day:/({dd}|{d})/,hour:/({HH}|{H}|{hh}|{h})/,minute:/({mm}|{m})/,second:/({ss}|{s})/,millisecond:/({SSS}|{S})/},db={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}"},G5e="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}",Xx="{yyyy}-{MM}-{dd}",BV={year:"{yyyy}",month:"{yyyy}-{MM}",day:Xx,hour:Xx+" "+db.hour,minute:Xx+" "+db.minute,second:Xx+" "+db.second,millisecond:G5e},xi=["year","month","day","hour","minute","second","millisecond"],W5e=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function H5e(e){return!ge(e)&&!Ae(e)?U5e(e):e}function U5e(e){e=e||{};var t={},r=!0;return R(xi,function(n){r&&(r=e[n]==null)}),R(xi,function(n,i){var a=e[n];t[n]={};for(var o=null,s=i;s>=0;s--){var l=xi[s],u=Le(a)&&!ae(a)?a[l]:a,c=void 0;ae(u)?(c=u.slice(),o=c[0]||""):ge(u)?(o=u,c=[o]):(o==null?o=db[n]:V5e[l].test(o)||(o=t[l][l][0]+" "+o),c=[o],r&&(c[1]="{primary|"+o+"}")),t[n][l]=c}}),t}function Fn(e,t){return e+="","0000".substr(0,t-e.length)+e}function tm(e){switch(e){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return e}}function Z5e(e){return e===tm(e)}function Y5e(e){switch(e){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}function y0(e,t,r,n){var i=qo(e),a=i[_Q(r)](),o=i[tj(r)]()+1,s=Math.floor((o-1)/3)+1,l=i[rj(r)](),u=i["get"+(r?"UTC":"")+"Day"](),c=i[nj(r)](),f=(c-1)%12+1,h=i[ij(r)](),d=i[aj(r)](),v=i[oj(r)](),m=c>=12?"pm":"am",y=m.toUpperCase(),x=n instanceof et?n:DI(n||xQ)||$5e(),_=x.getModel("time"),b=_.get("month"),S=_.get("monthAbbr"),T=_.get("dayOfWeek"),C=_.get("dayOfWeekAbbr");return(t||"").replace(/{a}/g,m+"").replace(/{A}/g,y+"").replace(/{yyyy}/g,a+"").replace(/{yy}/g,Fn(a%100+"",2)).replace(/{Q}/g,s+"").replace(/{MMMM}/g,b[o-1]).replace(/{MMM}/g,S[o-1]).replace(/{MM}/g,Fn(o,2)).replace(/{M}/g,o+"").replace(/{dd}/g,Fn(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,T[u]).replace(/{ee}/g,C[u]).replace(/{e}/g,u+"").replace(/{HH}/g,Fn(c,2)).replace(/{H}/g,c+"").replace(/{hh}/g,Fn(f+"",2)).replace(/{h}/g,f+"").replace(/{mm}/g,Fn(h,2)).replace(/{m}/g,h+"").replace(/{ss}/g,Fn(d,2)).replace(/{s}/g,d+"").replace(/{SSS}/g,Fn(v,3)).replace(/{S}/g,v+"")}function X5e(e,t,r,n,i){var a=null;if(ge(r))a=r;else if(Ae(r)){var o={time:e.time,level:e.time.level},s=Tr();s&&s.makeAxisLabelFormatterParamBreak(o,e.break),a=r(e.value,t,o)}else{var l=e.time;if(l){var u=r[l.lowerTimeUnit][l.upperTimeUnit];a=u[Math.min(l.level,u.length-1)]||""}else{var c=Xh(e.value,i);a=r[c][c][0]}}return y0(new Date(e.value),a,i,n)}function Xh(e,t){var r=qo(e),n=r[tj(t)]()+1,i=r[rj(t)](),a=r[nj(t)](),o=r[ij(t)](),s=r[aj(t)](),l=r[oj(t)](),u=l===0,c=u&&s===0,f=c&&o===0,h=f&&a===0,d=h&&i===1,v=d&&n===1;return v?"year":d?"month":h?"day":f?"hour":c?"minute":u?"second":"millisecond"}function bw(e,t,r){switch(t){case"year":e[bQ(r)](0);case"month":e[wQ(r)](1);case"day":e[SQ(r)](0);case"hour":e[TQ(r)](0);case"minute":e[CQ(r)](0);case"second":e[AQ(r)](0)}return e}function _Q(e){return e?"getUTCFullYear":"getFullYear"}function tj(e){return e?"getUTCMonth":"getMonth"}function rj(e){return e?"getUTCDate":"getDate"}function nj(e){return e?"getUTCHours":"getHours"}function ij(e){return e?"getUTCMinutes":"getMinutes"}function aj(e){return e?"getUTCSeconds":"getSeconds"}function oj(e){return e?"getUTCMilliseconds":"getMilliseconds"}function q5e(e){return e?"setUTCFullYear":"setFullYear"}function bQ(e){return e?"setUTCMonth":"setMonth"}function wQ(e){return e?"setUTCDate":"setDate"}function SQ(e){return e?"setUTCHours":"setHours"}function TQ(e){return e?"setUTCMinutes":"setMinutes"}function CQ(e){return e?"setUTCSeconds":"setSeconds"}function AQ(e){return e?"setUTCMilliseconds":"setMilliseconds"}function K5e(e,t,r,n,i,a,o,s){var l=new at({style:{text:e,font:t,align:r,verticalAlign:n,padding:i,rich:a,overflow:o?"truncate":null,lineHeight:s}});return l.getBoundingRect()}function sj(e){if(!kN(e))return ge(e)?e:"-";var t=(e+"").split(".");return t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:"")}function lj(e,t){return e=(e||"").toLowerCase().replace(/-(.)/g,function(r,n){return n.toUpperCase()}),t&&e&&(e=e.charAt(0).toUpperCase()+e.slice(1)),e}var Hv=l0;function jI(e,t,r){var n="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}";function i(c){return c&&Ci(c)?c:"-"}function a(c){return!!(c!=null&&!isNaN(c)&&isFinite(c))}var o=t==="time",s=e instanceof Date;if(o||s){var l=o?qo(e):e;if(isNaN(+l)){if(s)return"-"}else return y0(l,n,r)}if(t==="ordinal")return tw(e)?i(e):ot(e)&&a(e)?e+"":"-";var u=Go(e);return a(u)?sj(u):tw(e)?i(e):typeof e=="boolean"?e+"":"-"}var zV=["a","b","c","d","e","f","g"],N2=function(e,t){return"{"+e+(t??"")+"}"};function uj(e,t,r){ae(t)||(t=[t]);var n=t.length;if(!n)return"";for(var i=t[0].$vars||[],a=0;a':'';var o=r.markerId||"markerX";return{renderMode:a,content:"{"+o+"|} ",style:i==="subItem"?{width:4,height:4,borderRadius:2,backgroundColor:n}:{width:10,height:10,borderRadius:5,backgroundColor:n}}}function Q5e(e,t,r){(e==="week"||e==="month"||e==="quarter"||e==="half-year"||e==="year")&&(e=`MM-dd +yyyy`);var n=qo(t),i=r?"getUTC":"get",a=n[i+"FullYear"](),o=n[i+"Month"]()+1,s=n[i+"Date"](),l=n[i+"Hours"](),u=n[i+"Minutes"](),c=n[i+"Seconds"](),f=n[i+"Milliseconds"]();return e=e.replace("MM",Fn(o,2)).replace("M",o).replace("yyyy",a).replace("yy",Fn(a%100+"",2)).replace("dd",Fn(s,2)).replace("d",s).replace("hh",Fn(l,2)).replace("h",l).replace("mm",Fn(u,2)).replace("m",u).replace("ss",Fn(c,2)).replace("s",c).replace("SSS",Fn(f,3)),e}function eBe(e){return e&&e.charAt(0).toUpperCase()+e.substr(1)}function pf(e,t){return t=t||"transparent",ge(e)?e:Le(e)&&e.colorStops&&(e.colorStops[0]||{}).color||t}function ww(e,t){if(t==="_blank"||t==="blank"){var r=window.open();r.opener=null,r.location.href=e}else window.open(e,t)}var vb={},j2={},Uv=function(){function e(){this._normalMasterList=[],this._nonSeriesBoxMasterList=[]}return e.prototype.create=function(t,r){this._nonSeriesBoxMasterList=n(vb),this._normalMasterList=n(j2);function n(i,a){var o=[];return R(i,function(s,l){var u=s.create(t,r);o=o.concat(u||[])}),o}},e.prototype.update=function(t,r){R(this._normalMasterList,function(n){n.update&&n.update(t,r)})},e.prototype.getCoordinateSystems=function(){return this._normalMasterList.concat(this._nonSeriesBoxMasterList)},e.register=function(t,r){if(t==="matrix"||t==="calendar"){vb[t]=r;return}j2[t]=r},e.get=function(t){return j2[t]||vb[t]},e}();function tBe(e){return!!vb[e]}var RI={coord:1,coord2:2};function rBe(e){PQ.set(e.fullType,{getCoord2:void 0}).getCoord2=e.getCoord2}var PQ=we();function nBe(e){var t=e.getShallow("coord",!0),r=RI.coord;if(t==null){var n=PQ.get(e.type);n&&n.getCoord2&&(r=RI.coord2,t=n.getCoord2(e))}return{coord:t,from:r}}var bo={none:0,dataCoordSys:1,boxCoordSys:2};function kQ(e,t){var r=e.getShallow("coordinateSystem"),n=e.getShallow("coordinateSystemUsage",!0),i=bo.none;if(r){var a=e.mainType==="series";n==null&&(n=a?"data":"box"),n==="data"?(i=bo.dataCoordSys,a||(i=bo.none)):n==="box"&&(i=bo.boxCoordSys,!a&&!tBe(r)&&(i=bo.none))}return{coordSysType:r,kind:i}}function x0(e){var t=e.targetModel,r=e.coordSysType,n=e.coordSysProvider,i=e.isDefaultDataCoordSys;e.allowNotFound;var a=kQ(t),o=a.kind,s=a.coordSysType;if(i&&o!==bo.dataCoordSys&&(o=bo.dataCoordSys,s=r),o===bo.none||s!==r)return!1;var l=n(r,t);return l?(o===bo.dataCoordSys?t.coordinateSystem=l:t.boxCoordinateSystem=l,!0):!1}var LQ=function(e,t){var r=t.getReferringComponents(e,er).models[0];return r&&r.coordinateSystem},pb=R,IQ=["left","right","top","bottom","width","height"],Dc=[["width","left","right"],["height","top","bottom"]];function cj(e,t,r,n,i){var a=0,o=0;n==null&&(n=1/0),i==null&&(i=1/0);var s=0;t.eachChild(function(l,u){var c=l.getBoundingRect(),f=t.childAt(u+1),h=f&&f.getBoundingRect(),d,v;if(e==="horizontal"){var m=c.width+(h?-h.x+c.x:0);d=a+m,d>n||l.newline?(a=0,d=m,o+=s+r,s=c.height):s=Math.max(s,c.height)}else{var y=c.height+(h?-h.y+c.y:0);v=o+y,v>i||l.newline?(a+=s+r,o=0,v=y,s=c.width):s=Math.max(s,c.width)}l.newline||(l.x=a,l.y=o,l.markRedraw(),e==="horizontal"?a=d+r:o=v+r)})}var Uc=cj;Fe(cj,"vertical");Fe(cj,"horizontal");function EQ(e,t){return{left:e.getShallow("left",t),top:e.getShallow("top",t),right:e.getShallow("right",t),bottom:e.getShallow("bottom",t),width:e.getShallow("width",t),height:e.getShallow("height",t)}}function iBe(e,t){var r=Rr(e,t,{enableLayoutOnlyByCenter:!0}),n=e.getBoxLayoutParams(),i,a;if(r.type===wg.point)a=r.refPoint,i=zt(n,{width:t.getWidth(),height:t.getHeight()});else{var o=e.get("center"),s=ae(o)?o:[o,o];i=zt(n,r.refContainer),a=r.boxCoordFrom===RI.coord2?r.refPoint:[pe(s[0],i.width)+i.x,pe(s[1],i.height)+i.y]}return{viewRect:i,center:a}}function OQ(e,t){var r=iBe(e,t),n=r.viewRect,i=r.center,a=e.get("radius");ae(a)||(a=[0,a]);var o=pe(n.width,t.getWidth()),s=pe(n.height,t.getHeight()),l=Math.min(o,s),u=pe(a[0],l/2),c=pe(a[1],l/2);return{cx:i[0],cy:i[1],r0:u,r:c,viewRect:n}}function zt(e,t,r){r=Hv(r||0);var n=t.width,i=t.height,a=pe(e.left,n),o=pe(e.top,i),s=pe(e.right,n),l=pe(e.bottom,i),u=pe(e.width,n),c=pe(e.height,i),f=r[2]+r[0],h=r[1]+r[3],d=e.aspect;switch(isNaN(u)&&(u=n-s-h-a),isNaN(c)&&(c=i-l-f-o),d!=null&&(isNaN(u)&&isNaN(c)&&(d>n/i?u=n*.8:c=i*.8),isNaN(u)&&(u=d*c),isNaN(c)&&(c=u/d)),isNaN(a)&&(a=n-s-u-h),isNaN(o)&&(o=i-l-c-f),e.left||e.right){case"center":a=n/2-u/2-r[3];break;case"right":a=n-u-h;break}switch(e.top||e.bottom){case"middle":case"center":o=i/2-c/2-r[0];break;case"bottom":o=i-c-f;break}a=a||0,o=o||0,isNaN(u)&&(u=n-h-a-(s||0)),isNaN(c)&&(c=i-f-o-(l||0));var v=new Oe((t.x||0)+a+r[3],(t.y||0)+o+r[0],u,c);return v.margin=r,v}function DQ(e,t,r){var n=e.getShallow("preserveAspect",!0);if(!n)return t;var i=t.width/t.height;if(Math.abs(Math.atan(r)-Math.atan(i))<1e-9)return t;var a=e.getShallow("preserveAspectAlign",!0),o=e.getShallow("preserveAspectVerticalAlign",!0),s={width:t.width,height:t.height},l=n==="cover";return i>r&&!l||i=m)return f;for(var y=0;y=0;l--)s=He(s,i[l],!0);n.defaultOption=s}return n.defaultOption},t.prototype.getReferringComponents=function(r,n){var i=r+"Index",a=r+"Id";return Rv(this.ecModel,r,{index:this.get(i,!0),id:this.get(a,!0)},n)},t.prototype.getBoxLayoutParams=function(){return EQ(this,!1)},t.prototype.getZLevelKey=function(){return""},t.prototype.setZLevel=function(r){this.option.zlevel=r},t.protoInitialize=function(){var r=t.prototype;r.type="component",r.id="",r.name="",r.mainType="",r.subType="",r.componentIndex=0}(),t}(et);LJ(Ke,et);jT(Ke);N5e(Ke);j5e(Ke,sBe);function sBe(e){var t=[];return R(Ke.getClassesByMainType(e),function(r){t=t.concat(r.dependencies||r.prototype.dependencies||[])}),t=se(t,function(r){return Ao(r).main}),e!=="dataset"&&We(t,"dataset")<=0&&t.unshift("dataset"),t}var J={color:{},darkColor:{},size:{}},fr=J.color={theme:["#5070dd","#b6d634","#505372","#ff994d","#0ca8df","#ffd10a","#fb628b","#785db0","#3fbe95"],neutral00:"#fff",neutral05:"#f4f7fd",neutral10:"#e8ebf0",neutral15:"#dbdee4",neutral20:"#cfd2d7",neutral25:"#c3c5cb",neutral30:"#b7b9be",neutral35:"#aaacb2",neutral40:"#9ea0a5",neutral45:"#929399",neutral50:"#86878c",neutral55:"#797b7f",neutral60:"#6d6e73",neutral65:"#616266",neutral70:"#54555a",neutral75:"#48494d",neutral80:"#3c3c41",neutral85:"#303034",neutral90:"#232328",neutral95:"#17171b",neutral99:"#000",accent05:"#eff1f9",accent10:"#e0e4f2",accent15:"#d0d6ec",accent20:"#c0c9e6",accent25:"#b1bbdf",accent30:"#a1aed9",accent35:"#91a0d3",accent40:"#8292cc",accent45:"#7285c6",accent50:"#6578ba",accent55:"#5c6da9",accent60:"#536298",accent65:"#4a5787",accent70:"#404c76",accent75:"#374165",accent80:"#2e3654",accent85:"#252b43",accent90:"#1b2032",accent95:"#121521",transparent:"rgba(0,0,0,0)",highlight:"rgba(255,231,130,0.8)"};ne(fr,{primary:fr.neutral80,secondary:fr.neutral70,tertiary:fr.neutral60,quaternary:fr.neutral50,disabled:fr.neutral20,border:fr.neutral30,borderTint:fr.neutral20,borderShade:fr.neutral40,background:fr.neutral05,backgroundTint:"rgba(234,237,245,0.5)",backgroundTransparent:"rgba(255,255,255,0)",backgroundShade:fr.neutral10,shadow:"rgba(0,0,0,0.2)",shadowTint:"rgba(129,130,136,0.2)",axisLine:fr.neutral70,axisLineTint:fr.neutral40,axisTick:fr.neutral70,axisTickMinor:fr.neutral60,axisLabel:fr.neutral70,axisSplitLine:fr.neutral15,axisMinorSplitLine:fr.neutral05});for(var Ju in fr)if(fr.hasOwnProperty(Ju)){var $V=fr[Ju];Ju==="theme"?J.darkColor.theme=fr.theme.slice():Ju==="highlight"?J.darkColor.highlight="rgba(255,231,130,0.4)":Ju.indexOf("accent")===0?J.darkColor[Ju]=ks($V,null,function(e){return e*.5},function(e){return Math.min(1,1.3-e)}):J.darkColor[Ju]=ks($V,null,function(e){return e*.9},function(e){return 1-Math.pow(e,1.5)})}J.size={xxs:2,xs:5,s:10,m:15,l:20,xl:30,xxl:40,xxxl:50};var jQ="";typeof navigator<"u"&&(jQ=navigator.platform||"");var ah="rgba(0, 0, 0, 0.2)",RQ=J.color.theme[0],lBe=ks(RQ,null,null,.9);const uBe={darkMode:"auto",colorBy:"series",color:J.color.theme,gradientColor:[lBe,RQ],aria:{decal:{decals:[{color:ah,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:ah,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:ah,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:ah,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:ah,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:ah,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:jQ.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1};var BQ=we(["tooltip","label","itemName","itemId","itemGroupId","itemChildGroupId","seriesName"]),Ni="original",sn="arrayRows",ji="objectRows",eo="keyedColumns",eu="typedArray",zQ="unknown",Ua="column",Ef="row",hn={Must:1,Might:2,Not:3},$Q=Je();function cBe(e){$Q(e).datasetMap=we()}function FQ(e,t,r){var n={},i=hj(t);if(!i||!e)return n;var a=[],o=[],s=t.ecModel,l=$Q(s).datasetMap,u=i.uid+"_"+r.seriesLayoutBy,c,f;e=e.slice(),R(e,function(m,y){var x=Le(m)?m:e[y]={name:m};x.type==="ordinal"&&c==null&&(c=y,f=v(x)),n[x.name]=[]});var h=l.get(u)||l.set(u,{categoryWayDim:f,valueWayDim:0});R(e,function(m,y){var x=m.name,_=v(m);if(c==null){var b=h.valueWayDim;d(n[x],b,_),d(o,b,_),h.valueWayDim+=_}else if(c===y)d(n[x],0,_),d(a,0,_);else{var b=h.categoryWayDim;d(n[x],b,_),d(o,b,_),h.categoryWayDim+=_}});function d(m,y,x){for(var _=0;_t)return e[n];return e[r-1]}function WQ(e,t,r,n,i,a,o){a=a||e;var s=t(a),l=s.paletteIdx||0,u=s.paletteNameMap=s.paletteNameMap||{};if(u.hasOwnProperty(i))return u[i];var c=o==null||!n?r:pBe(n,o);if(c=c||r,!(!c||!c.length)){var f=c[l];return i&&(u[i]=f),s.paletteIdx=(l+1)%c.length,f}}function gBe(e,t){t(e).paletteIdx=0,t(e).paletteNameMap={}}var qx,zp,VV,GV="\0_ec_inner",mBe=1,vj=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.init=function(r,n,i,a,o,s){a=a||{},this.option=null,this._theme=new et(a),this._locale=new et(o),this._optionManager=s},t.prototype.setOption=function(r,n,i){var a=UV(n);this._optionManager.setOption(r,i,a),this._resetOption(null,a)},t.prototype.resetOption=function(r,n){return this._resetOption(r,UV(n))},t.prototype._resetOption=function(r,n){var i=!1,a=this._optionManager;if(!r||r==="recreate"){var o=a.mountOption(r==="recreate");!this.option||r==="recreate"?VV(this,o):(this.restoreData(),this._mergeOption(o,n)),i=!0}if((r==="timeline"||r==="media")&&this.restoreData(),!r||r==="recreate"||r==="timeline"){var s=a.getTimelineOption(this);s&&(i=!0,this._mergeOption(s,n))}if(!r||r==="recreate"||r==="media"){var l=a.getMediaOption(this);l.length&&R(l,function(u){i=!0,this._mergeOption(u,n)},this)}return i},t.prototype.mergeOption=function(r){this._mergeOption(r,null)},t.prototype._mergeOption=function(r,n){var i=this.option,a=this._componentsMap,o=this._componentsCount,s=[],l=we(),u=n&&n.replaceMergeMainTypeMap;cBe(this),R(r,function(f,h){f!=null&&(Ke.hasClass(h)?h&&(s.push(h),l.set(h,!0)):i[h]=i[h]==null?Me(f):He(i[h],f,!0))}),u&&u.each(function(f,h){Ke.hasClass(h)&&!l.get(h)&&(s.push(h),l.set(h,!0))}),Ke.topologicalTravel(s,Ke.getAllClassMainTypes(),c,this);function c(f){var h=dBe(this,f,kt(r[f])),d=a.get(f),v=d?u&&u.get(f)?"replaceMerge":"normalMerge":"replaceAll",m=CJ(d,h,v);ERe(m,f,Ke),i[f]=null,a.set(f,null),o.set(f,0);var y=[],x=[],_=0,b;R(m,function(S,T){var C=S.existing,A=S.newOption;if(!A)C&&(C.mergeOption({},this),C.optionUpdated({},!1));else{var P=f==="series",I=Ke.getClass(f,S.keyInfo.subType,!P);if(!I)return;if(f==="tooltip"){if(b)return;b=!0}if(C&&C.constructor===I)C.name=S.keyInfo.name,C.mergeOption(A,this),C.optionUpdated(A,!1);else{var k=ne({componentIndex:T},S.keyInfo);C=new I(A,this,this,k),ne(C,k),S.brandNew&&(C.__requireNewView=!0),C.init(A,this,this),C.optionUpdated(null,!0)}}C?(y.push(C.option),x.push(C),_++):(y.push(void 0),x.push(void 0))},this),i[f]=y,a.set(f,x),o.set(f,_),f==="series"&&qx(this)}this._seriesIndices||qx(this)},t.prototype.getOption=function(){var r=Me(this.option);return R(r,function(n,i){if(Ke.hasClass(i)){for(var a=kt(n),o=a.length,s=!1,l=o-1;l>=0;l--)a[l]&&!xy(a[l])?s=!0:(a[l]=null,!s&&o--);a.length=o,r[i]=a}}),delete r[GV],r},t.prototype.setTheme=function(r){this._theme=new et(r),this._resetOption("recreate",null)},t.prototype.getTheme=function(){return this._theme},t.prototype.getLocaleModel=function(){return this._locale},t.prototype.setUpdatePayload=function(r){this._payload=r},t.prototype.getUpdatePayload=function(){return this._payload},t.prototype.getComponent=function(r,n){var i=this._componentsMap.get(r);if(i){var a=i[n||0];if(a)return a;if(n==null){for(var o=0;o=t:r==="max"?e<=t:e===t}function ABe(e,t){return e.join(",")===t.join(",")}var Aa=R,Cy=Le,ZV=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function R2(e){var t=e&&e.itemStyle;if(t)for(var r=0,n=ZV.length;r0?r[o-1].seriesModel:null)}),NBe(r)}})}function NBe(e){R(e,function(t,r){var n=[],i=[NaN,NaN],a=[t.stackResultDimension,t.stackedOverDimension],o=t.data,s=t.isStackedByIndex,l=t.seriesModel.get("stackStrategy")||"samesign";o.modify(a,function(u,c,f){var h=o.get(t.stackedDimension,f);if(isNaN(h))return i;var d,v;s?v=o.getRawIndex(f):d=o.get(t.stackedByDimension,f);for(var m=NaN,y=r-1;y>=0;y--){var x=e[y];if(s||(v=x.data.rawIndexOf(x.stackedByDimension,d)),v>=0){var _=x.data.getByRawIndex(x.stackResultDimension,v);if(l==="all"||l==="positive"&&_>0||l==="negative"&&_<0||l==="samesign"&&h>=0&&_>0||l==="samesign"&&h<=0&&_<0){h=xRe(h,_),m=_;break}}}return n[0]=h,n[1]=m,n})})}var YT=function(){function e(t){this.data=t.data||(t.sourceFormat===eo?{}:[]),this.sourceFormat=t.sourceFormat||zQ,this.seriesLayoutBy=t.seriesLayoutBy||Ua,this.startIndex=t.startIndex||0,this.dimensionsDetectedCount=t.dimensionsDetectedCount,this.metaRawOption=t.metaRawOption;var r=this.dimensionsDefine=t.dimensionsDefine;if(r)for(var n=0;nm&&(m=b)}d[0]=v,d[1]=m}},i=function(){return this._data?this._data.length/this._dimSize:0};eG=(t={},t[sn+"_"+Ua]={pure:!0,appendData:a},t[sn+"_"+Ef]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t[ji]={pure:!0,appendData:a},t[eo]={pure:!0,appendData:function(o){var s=this._data;R(o,function(l,u){for(var c=s[u]||(s[u]=[]),f=0;f<(l||[]).length;f++)c.push(l[f])})}},t[Ni]={appendData:a},t[eu]={persistent:!1,pure:!0,appendData:function(o){this._data=o},clean:function(){this._offset+=this.count(),this._data=null}},t);function a(o){for(var s=0;s=0&&(m=o.interpolatedValue[y])}return m!=null?m+"":""})}},e.prototype.getRawValue=function(t,r){return tv(this.getData(r),t)},e.prototype.formatTooltip=function(t,r,n){},e}();function iG(e){var t,r;return Le(e)?e.type&&(r=e):t=e,{text:t,frag:r}}function rm(e){return new GBe(e)}var GBe=function(){function e(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return e.prototype.perform=function(t){var r=this._upstream,n=t&&t.skip;if(this._dirty&&r){var i=this.context;i.data=i.outputData=r.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this);var a;this._plan&&!n&&(a=this._plan(this.context));var o=c(this._modBy),s=this._modDataCount||0,l=c(t&&t.modBy),u=t&&t.modDataCount||0;(o!==l||s!==u)&&(a="reset");function c(_){return!(_>=1)&&(_=1),_}var f;(this._dirty||a==="reset")&&(this._dirty=!1,f=this._doReset(n)),this._modBy=l,this._modDataCount=u;var h=t&&t.step;if(r?this._dueEnd=r._outputDueEnd:this._dueEnd=this._count?this._count(this.context):1/0,this._progress){var d=this._dueIndex,v=Math.min(h!=null?this._dueIndex+h:1/0,this._dueEnd);if(!n&&(f||d1&&n>0?s:o}};return a;function o(){return t=e?null:lt},gte:function(e,t){return e>=t}},HBe=function(){function e(t,r){if(!ot(r)){var n="";mt(n)}this._opFn=tee[t],this._rvalFloat=Go(r)}return e.prototype.evaluate=function(t){return ot(t)?this._opFn(t,this._rvalFloat):this._opFn(Go(t),this._rvalFloat)},e}(),ree=function(){function e(t,r){var n=t==="desc";this._resultLT=n?1:-1,r==null&&(r=n?"min":"max"),this._incomparable=r==="min"?-1/0:1/0}return e.prototype.evaluate=function(t,r){var n=ot(t)?t:Go(t),i=ot(r)?r:Go(r),a=isNaN(n),o=isNaN(i);if(a&&(n=this._incomparable),o&&(i=this._incomparable),a&&o){var s=ge(t),l=ge(r);s&&(n=l?t:0),l&&(i=s?r:0)}return ni?-this._resultLT:0},e}(),UBe=function(){function e(t,r){this._rval=r,this._isEQ=t,this._rvalTypeof=typeof r,this._rvalFloat=Go(r)}return e.prototype.evaluate=function(t){var r=t===this._rval;if(!r){var n=typeof t;n!==this._rvalTypeof&&(n==="number"||this._rvalTypeof==="number")&&(r=Go(t)===this._rvalFloat)}return this._isEQ?r:!r},e}();function ZBe(e,t){return e==="eq"||e==="ne"?new UBe(e==="eq",t):be(tee,e)?new HBe(e,t):null}var YBe=function(){function e(){}return e.prototype.getRawData=function(){throw new Error("not supported")},e.prototype.getRawDataItem=function(t){throw new Error("not supported")},e.prototype.cloneRawData=function(){},e.prototype.getDimensionInfo=function(t){},e.prototype.cloneAllDimensionInfo=function(){},e.prototype.count=function(){},e.prototype.retrieveValue=function(t,r){},e.prototype.retrieveValueFromItem=function(t,r){},e.prototype.convertValue=function(t,r){return tu(t,r)},e}();function XBe(e,t){var r=new YBe,n=e.data,i=r.sourceFormat=e.sourceFormat,a=e.startIndex,o="";e.seriesLayoutBy!==Ua&&mt(o);var s=[],l={},u=e.dimensionsDefine;if(u)R(u,function(m,y){var x=m.name,_={index:y,name:x,displayName:m.displayName};if(s.push(_),x!=null){var b="";be(l,x)&&mt(b),l[x]=_}});else for(var c=0;c65535?nze:ize}function sh(){return[1/0,-1/0]}function aze(e){var t=e.constructor;return t===Array?e.slice():new t(e)}function sG(e,t,r,n,i){var a=aee[r||"float"];if(i){var o=e[t],s=o&&o.length;if(s!==n){for(var l=new a(n),u=0;uy[1]&&(y[1]=m)}return this._rawCount=this._count=l,{start:s,end:l}},e.prototype._initDataFromProvider=function(t,r,n){for(var i=this._provider,a=this._chunks,o=this._dimensions,s=o.length,l=this._rawExtent,u=se(o,function(_){return _.property}),c=0;cx[1]&&(x[1]=y)}}!i.persistent&&i.clean&&i.clean(),this._rawCount=this._count=r,this._extent=[]},e.prototype.count=function(){return this._count},e.prototype.get=function(t,r){if(!(r>=0&&r=0&&r=this._rawCount||t<0)return-1;if(!this._indices)return t;var r=this._indices,n=r[t];if(n!=null&&nt)a=o-1;else return o}return-1},e.prototype.getIndices=function(){var t,r=this._indices;if(r){var n=r.constructor,i=this._count;if(n===Array){t=new n(i);for(var a=0;a=f&&_<=h||isNaN(_))&&(l[u++]=m),m++}v=!0}else if(a===2){for(var y=d[i[0]],b=d[i[1]],S=t[i[1]][0],T=t[i[1]][1],x=0;x=f&&_<=h||isNaN(_))&&(C>=S&&C<=T||isNaN(C))&&(l[u++]=m),m++}v=!0}}if(!v)if(a===1)for(var x=0;x=f&&_<=h||isNaN(_))&&(l[u++]=A)}else for(var x=0;xt[k][1])&&(P=!1)}P&&(l[u++]=r.getRawIndex(x))}return ux[1]&&(x[1]=y)}}}},e.prototype.lttbDownSample=function(t,r){var n=this.clone([t],!0),i=n._chunks,a=i[t],o=this.count(),s=0,l=Math.floor(1/r),u=this.getRawIndex(0),c,f,h,d=new(oh(this._rawCount))(Math.min((Math.ceil(o/l)+2)*2,o));d[s++]=u;for(var v=1;vc&&(c=f,h=S)}O>0&&Os&&(m=s-c);for(var y=0;yv&&(v=_,d=c+y)}var b=this.getRawIndex(f),S=this.getRawIndex(d);fc-v&&(l=c-v,s.length=l);for(var m=0;mf[1]&&(f[1]=x),h[d++]=_}return a._count=d,a._indices=h,a._updateGetRawIdx(),a},e.prototype.each=function(t,r){if(this._count)for(var n=t.length,i=this._chunks,a=0,o=this.count();al&&(l=f)}return o=[s,l],this._extent[t]=o,o},e.prototype.getRawDataItem=function(t){var r=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(r);for(var n=[],i=this._chunks,a=0;a=0?this._indices[t]:-1},e.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},e.internalField=function(){function t(r,n,i,a){return tu(r[a],this._dimensions[a])}$2={arrayRows:t,objectRows:function(r,n,i,a){return tu(r[n],this._dimensions[a])},keyedColumns:t,original:function(r,n,i,a){var o=r&&(r.value==null?r:r.value);return tu(o instanceof Array?o[a]:o,this._dimensions[a])},typedArray:function(r,n,i,a){return r[a]}}}(),e}(),oee=function(){function e(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return e.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},e.prototype._setLocalSource=function(t,r){this._sourceList=t,this._upstreamSignList=r,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},e.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},e.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},e.prototype._createSource=function(){this._setLocalSource([],[]);var t=this._sourceHost,r=this._getUpstreamSourceManagers(),n=!!r.length,i,a;if(Jx(t)){var o=t,s=void 0,l=void 0,u=void 0;if(n){var c=r[0];c.prepareSource(),u=c.getSource(),s=u.data,l=u.sourceFormat,a=[c._getVersionSign()]}else s=o.get("data",!0),l=Zn(s)?eu:Ni,a=[];var f=this._getSourceMetaRawOption()||{},h=u&&u.metaRawOption||{},d=Se(f.seriesLayoutBy,h.seriesLayoutBy)||null,v=Se(f.sourceHeader,h.sourceHeader),m=Se(f.dimensions,h.dimensions),y=d!==h.seriesLayoutBy||!!v!=!!h.sourceHeader||m;i=y?[$I(s,{seriesLayoutBy:d,sourceHeader:v,dimensions:m},l)]:[]}else{var x=t;if(n){var _=this._applyTransform(r);i=_.sourceList,a=_.upstreamSignList}else{var b=x.get("source",!0);i=[$I(b,this._getSourceMetaRawOption(),null)],a=[]}}this._setLocalSource(i,a)},e.prototype._applyTransform=function(t){var r=this._sourceHost,n=r.get("transform",!0),i=r.get("fromTransformResult",!0);if(i!=null){var a="";t.length!==1&&uG(a)}var o,s=[],l=[];return R(t,function(u){u.prepareSource();var c=u.getSource(i||0),f="";i!=null&&!c&&uG(f),s.push(c),l.push(u._getVersionSign())}),n?o=tze(n,s,{datasetIndex:r.componentIndex}):i!=null&&(o=[jBe(s[0])]),{sourceList:o,upstreamSignList:l}},e.prototype._isDirty=function(){if(this._dirty)return!0;for(var t=this._getUpstreamSourceManagers(),r=0;r1||r>0&&!e.noHeader;return R(e.blocks,function(i){var a=lee(i);a>=t&&(t=a+ +(n&&(!a||FI(i)&&!i.noHeader)))}),t}return 0}function sze(e,t,r,n){var i=t.noHeader,a=uze(lee(t)),o=[],s=t.blocks||[];xn(!s||ae(s)),s=s||[];var l=e.orderMode;if(t.sortBlocks&&l){s=s.slice();var u={valueAsc:"asc",valueDesc:"desc"};if(xe(u,l)){var c=new eee(u[l],null);s.sort(function(g,m){return c.evaluate(g.sortParam,m.sortParam)})}else l==="seriesDesc"&&s.reverse()}R(s,function(g,m){var x=t.valueFormatter,_=see(g)(x?ne(ne({},e),{valueFormatter:x}):e,g,m>0?a.html:0,n);_!=null&&o.push(_)});var f=e.renderMode==="richText"?o.join(a.richText):VI(n,o.join(""),i?r:a.html);if(i)return f;var h=NI(t.header,"ordinal",e.useUTC),d=oee(n,e.renderMode).nameStyle,v=aee(n);return e.renderMode==="richText"?uee(e,h,d)+a.richText+f:VI(n,'
'+In(h)+"
"+f,r)}function lze(e,t,r,n){var i=e.renderMode,a=t.noName,o=t.noValue,s=!t.markerType,l=t.name,u=e.useUTC,c=t.valueFormatter||e.valueFormatter||function(S){return S=ae(S)?S:[S],se(S,function(T,C){return NI(T,ae(d)?d[C]:d,u)})};if(!(a&&o)){var f=s?"":e.markupStyleCreator.makeTooltipMarker(t.markerType,t.markerColor||J.color.secondary,i),h=a?"":NI(l,"ordinal",u),d=t.valueType,v=o?[]:c(t.value,t.dataIndex),g=!s||!a,m=!s&&a,x=oee(n,i),_=x.nameStyle,b=x.valueStyle;return i==="richText"?(s?"":f)+(a?"":uee(e,h,_))+(o?"":hze(e,v,g,m,b)):VI(n,(s?"":f)+(a?"":cze(h,!s,_))+(o?"":fze(v,g,m,b)),r)}}function l6(e,t,r,n,i,a){if(e){var o=see(e),s={useUTC:i,renderMode:r,orderMode:n,markupStyleCreator:t,valueFormatter:e.valueFormatter};return o(s,e,0,a)}}function uze(e){return{html:aze[e],richText:oze[e]}}function VI(e,t,r){var n='
',i="margin: "+r+"px 0 0",a=aee(e);return'
'+t+n+"
"}function cze(e,t,r){var n=t?"margin-left:2px":"";return''+In(e)+""}function fze(e,t,r,n){var i=r?"10px":"20px",a=t?"float:right;margin-left:"+i:"";return e=ae(e)?e:[e],''+se(e,function(o){return In(o)}).join("  ")+""}function uee(e,t,r){return e.markupStyleCreator.wrapRichTextStyle(t,r)}function hze(e,t,r,n,i){var a=[i],o=n?10:20;return r&&a.push({padding:[0,0,0,o],align:"right"}),e.markupStyleCreator.wrapRichTextStyle(ae(t)?t.join(" "):t,a)}function cee(e,t){var r=e.getData().getItemVisual(t,"style"),n=r[e.visualDrawType];return vf(n)}function fee(e,t){var r=e.get("padding");return r??(t==="richText"?[8,10]:10)}var F2=function(){function e(){this.richTextStyles={},this._nextStyleNameId=yJ()}return e.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},e.prototype.makeTooltipMarker=function(t,r,n){var i=n==="richText"?this._generateStyleName():null,a=CQ({color:r,type:t,renderMode:n,markerId:i});return pe(a)?a:(this.richTextStyles[i]=a.style,a.content)},e.prototype.wrapRichTextStyle=function(t,r){var n={};ae(r)?R(r,function(a){return ne(n,a)}):ne(n,r);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},e}();function hee(e){var t=e.series,r=e.dataIndex,n=e.multipleSeries,i=t.getData(),a=i.mapDimensionsAll("defaultedTooltip"),o=a.length,s=t.getRawValue(r),l=ae(s),u=cee(t,r),c,f,h,d;if(o>1||l&&!o){var v=dze(s,t,r,a,u);c=v.inlineValues,f=v.inlineValueTypes,h=v.blocks,d=v.inlineValues[0]}else if(o){var g=i.getDimensionInfo(a[0]);d=c=tv(i,r,a[0]),f=g.type}else d=c=l?s[0]:s;var m=MN(t),x=m&&t.name||"",_=i.getName(r),b=n?x:_;return Cr("section",{header:x,noHeader:n||!m,sortParam:d,blocks:[Cr("nameValue",{markerType:"item",markerColor:u,name:b,noName:!Ci(b),value:c,valueType:f,dataIndex:r})].concat(h||[])})}function dze(e,t,r,n,i){var a=t.getData(),o=da(e,function(f,h,d){var v=a.getDimensionInfo(d);return f=f||v&&v.tooltip!==!1&&v.displayName!=null},!1),s=[],l=[],u=[];n.length?R(n,function(f){c(tv(a,r,f),f)}):R(e,c);function c(f,h){var d=a.getDimensionInfo(h);!d||d.otherDims.tooltip===!1||(o?u.push(Cr("nameValue",{markerType:"subItem",markerColor:i,name:d.displayName,value:f,valueType:d.type})):(s.push(f),l.push(d.type)))}return{inlineValues:s,inlineValueTypes:l,blocks:u}}var ll=Je();function Qx(e,t){return e.getName(t)||e.getId(t)}var gb="__universalTransitionEnabled",Tt=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._selectedDataIndicesMap={},r}return t.prototype.init=function(r,n,i){this.seriesIndex=this.componentIndex,this.dataTask=rm({count:pze,reset:gze}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(r,i);var a=ll(this).sourceManager=new iee(this);a.prepareSource();var o=this.getInitialData(r,i);c6(o,this),this.dataTask.context.data=o,ll(this).dataBeforeProcessed=o,u6(this),this._initSelectedMapFromData(o)},t.prototype.mergeDefaultAndTheme=function(r,n){var i=Ty(this),a=i?Lf(r):{},o=this.subType;Ke.hasClass(o)&&(o+="Series"),He(r,n.getTheme().get(this.subType)),He(r,this.getDefaultOption()),lf(r,"label",["show"]),this.fillDataTextStyle(r.data),i&&Ho(r,a,i)},t.prototype.mergeOption=function(r,n){r=He(this.option,r,!0),this.fillDataTextStyle(r.data);var i=Ty(this);i&&Ho(this.option,r,i);var a=ll(this).sourceManager;a.dirty(),a.prepareSource();var o=this.getInitialData(r,n);c6(o,this),this.dataTask.dirty(),this.dataTask.context.data=o,ll(this).dataBeforeProcessed=o,u6(this),this._initSelectedMapFromData(o)},t.prototype.fillDataTextStyle=function(r){if(r&&!Un(r))for(var n=["show"],i=0;i=0&&h<0)&&(f=_,h=x,d=0),x===h&&(c[d++]=g))}),c.length=d,c},t.prototype.formatTooltip=function(r,n,i){return hee({series:this,dataIndex:r,multipleSeries:n})},t.prototype.isAnimationEnabled=function(){var r=this.ecModel;if(nt.node&&!(r&&r.ssr))return!1;var n=this.getShallow("animation");return n&&this.getData().count()>this.getShallow("animationThreshold")&&(n=!1),!!n},t.prototype.restoreData=function(){this.dataTask.dirty()},t.prototype.getColorFromPalette=function(r,n,i){var a=this.ecModel,o=cj.prototype.getColorFromPalette.call(this,r,n,i);return o||(o=a.getColorFromPalette(r,n,i)),o},t.prototype.coordDimToDataDim=function(r){return this.getRawData().mapDimensionsAll(r)},t.prototype.getProgressive=function(){return this.get("progressive")},t.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},t.prototype.select=function(r,n){this._innerSelect(this.getData(n),r)},t.prototype.unselect=function(r,n){var i=this.option.selectedMap;if(i){var a=this.option.selectedMode,o=this.getData(n);if(a==="series"||i==="all"){this.option.selectedMap={},this._selectedDataIndicesMap={};return}for(var s=0;s=0&&i.push(o)}return i},t.prototype.isSelected=function(r,n){var i=this.option.selectedMap;if(!i)return!1;var a=this.getData(n);return(i==="all"||i[Qx(a,r)])&&!a.getItemModel(r).get(["select","disabled"])},t.prototype.isUniversalTransitionEnabled=function(){if(this[gb])return!0;var r=this.option.universalTransition;return r?r===!0?!0:r&&r.enabled:!1},t.prototype._innerSelect=function(r,n){var i,a,o=this.option,s=o.selectedMode,l=n.length;if(!(!s||!l)){if(s==="series")o.selectedMap="all";else if(s==="multiple"){ke(o.selectedMap)||(o.selectedMap={});for(var u=o.selectedMap,c=0;c0&&this._innerSelect(r,n)}},t.registerClass=function(r){return Ke.registerClass(r)},t.protoInitialize=function(){var r=t.prototype;r.type="series.__base__",r.seriesIndex=0,r.ignoreStyleOnData=!1,r.hasSymbolVisual=!1,r.defaultSymbol="circle",r.visualStyleAccessPath="itemStyle",r.visualDrawType="fill"}(),t}(Ke);cr(Tt,XT);cr(Tt,cj);PJ(Tt,Ke);function u6(e){var t=e.name;MN(e)||(e.name=vze(e)||t)}function vze(e){var t=e.getRawData(),r=t.mapDimensionsAll("seriesName"),n=[];return R(r,function(i){var a=t.getDimensionInfo(i);a.displayName&&n.push(a.displayName)}),n.join(" ")}function pze(e){return e.model.getRawData().count()}function gze(e){var t=e.model;return t.setData(t.getRawData().cloneShallow()),mze}function mze(e,t){t.outputData&&e.end>t.outputData.count()&&t.model.getRawData().cloneShallow(t.outputData)}function c6(e,t){R(Yd(e.CHANGABLE_METHODS,e.DOWNSAMPLE_METHODS),function(r){e.wrapMethod(r,Fe(yze,t))})}function yze(e,t){var r=GI(e);return r&&r.setOutputEnd((t||this).count()),t}function GI(e){var t=(e.ecModel||{}).scheduler,r=t&&t.getPipeline(e.uid);if(r){var n=r.currentTask;if(n){var i=n.agentStubMap;i&&(n=i.get(e.uid))}return n}}var kt=function(){function e(){this.group=new Me,this.uid=Wv("viewComponent")}return e.prototype.init=function(t,r){},e.prototype.render=function(t,r,n,i){},e.prototype.dispose=function(t,r){},e.prototype.updateView=function(t,r,n,i){},e.prototype.updateLayout=function(t,r,n,i){},e.prototype.updateVisual=function(t,r,n,i){},e.prototype.toggleBlurSeries=function(t,r,n){},e.prototype.eachRendered=function(t){var r=this.group;r&&r.traverse(t)},e}();kN(kt);jT(kt);function Zv(){var e=Je();return function(t){var r=e(t),n=t.pipelineContext,i=!!r.large,a=!!r.progressiveRender,o=r.large=!!(n&&n.large),s=r.progressiveRender=!!(n&&n.progressiveRender);return(i!==o||a!==s)&&"reset"}}var dee=Je(),xze=Zv(),bt=function(){function e(){this.group=new Me,this.uid=Wv("viewChart"),this.renderTask=rm({plan:_ze,reset:bze}),this.renderTask.context={view:this}}return e.prototype.init=function(t,r){},e.prototype.render=function(t,r,n,i){},e.prototype.highlight=function(t,r,n,i){var a=t.getData(i&&i.dataType);a&&h6(a,i,"emphasis")},e.prototype.downplay=function(t,r,n,i){var a=t.getData(i&&i.dataType);a&&h6(a,i,"normal")},e.prototype.remove=function(t,r){this.group.removeAll()},e.prototype.dispose=function(t,r){},e.prototype.updateView=function(t,r,n,i){this.render(t,r,n,i)},e.prototype.updateLayout=function(t,r,n,i){this.render(t,r,n,i)},e.prototype.updateVisual=function(t,r,n,i){this.render(t,r,n,i)},e.prototype.eachRendered=function(t){Au(this.group,t)},e.markUpdateMethod=function(t,r){dee(t).updateMethod=r},e.protoInitialize=function(){var t=e.prototype;t.type="chart"}(),e}();function f6(e,t,r){e&&by(e)&&(t==="emphasis"?Ws:Hs)(e,r)}function h6(e,t,r){var n=uf(e,t),i=t&&t.highlightKey!=null?Z5e(t.highlightKey):null;n!=null?R(Pt(n),function(a){f6(e.getItemGraphicEl(a),r,i)}):e.eachItemGraphicEl(function(a){f6(a,r,i)})}kN(bt);jT(bt);function _ze(e){return xze(e.model)}function bze(e){var t=e.model,r=e.ecModel,n=e.api,i=e.payload,a=t.pipelineContext.progressiveRender,o=e.view,s=i&&dee(i).updateMethod,l=a?"incrementalPrepareRender":s&&o[s]?s:"render";return l!=="render"&&o[l](t,r,n,i),wze[l]}var wze={incrementalPrepareRender:{progress:function(e,t){t.view.incrementalRender(e,t.model,t.ecModel,t.api,t.payload)}},render:{forceFirstProgress:!0,progress:function(e,t){t.view.render(t.model,t.ecModel,t.api,t.payload)}}},Sw="\0__throttleOriginMethod",d6="\0__throttleRate",v6="\0__throttleType";function KT(e,t,r){var n,i=0,a=0,o=null,s,l,u,c;t=t||0;function f(){a=new Date().getTime(),o=null,e.apply(l,u||[])}var h=function(){for(var d=[],v=0;v=0?f():o=setTimeout(f,-s),i=n};return h.clear=function(){o&&(clearTimeout(o),o=null)},h.debounceNextCall=function(d){c=d},h}function Yv(e,t,r,n){var i=e[t];if(i){var a=i[Sw]||i,o=i[v6],s=i[d6];if(s!==r||o!==n){if(r==null||!n)return e[t]=a;i=e[t]=KT(a,r,n==="debounce"),i[Sw]=a,i[v6]=n,i[d6]=r}return i}}function Ay(e,t){var r=e[t];r&&r[Sw]&&(r.clear&&r.clear(),e[t]=r[Sw])}var p6=Je(),g6={itemStyle:cf(gQ,!0),lineStyle:cf(pQ,!0)},Sze={lineStyle:"stroke",itemStyle:"fill"};function vee(e,t){var r=e.visualStyleMapper||g6[t];return r||(console.warn("Unknown style type '"+t+"'."),g6.itemStyle)}function pee(e,t){var r=e.visualDrawType||Sze[t];return r||(console.warn("Unknown style type '"+t+"'."),"fill")}var Tze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=e.getModel(n),a=vee(e,n),o=a(i),s=i.getShallow("decal");s&&(r.setVisual("decal",s),s.dirty=!0);var l=pee(e,n),u=o[l],c=Ce(u)?u:null,f=o.fill==="auto"||o.stroke==="auto";if(!o[l]||c||f){var h=e.getColorFromPalette(e.name,null,t.getSeriesCount());o[l]||(o[l]=h,r.setVisual("colorFromPalette",!0)),o.fill=o.fill==="auto"||Ce(o.fill)?h:o.fill,o.stroke=o.stroke==="auto"||Ce(o.stroke)?h:o.stroke}if(r.setVisual("style",o),r.setVisual("drawType",l),!t.isSeriesFiltered(e)&&c)return r.setVisual("colorFromPalette",!1),{dataEach:function(d,v){var g=e.getDataParams(v),m=ne({},o);m[l]=c(g),d.setItemVisual(v,"style",m)}}}},Fp=new et,Cze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){if(!(e.ignoreStyleOnData||t.isSeriesFiltered(e))){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=vee(e,n),a=r.getVisual("drawType");return{dataEach:r.hasItemOption?function(o,s){var l=o.getRawDataItem(s);if(l&&l[n]){Fp.option=l[n];var u=i(Fp),c=o.ensureUniqueItemVisual(s,"style");ne(c,u),Fp.option.decal&&(o.setItemVisual(s,"decal",Fp.option.decal),Fp.option.decal.dirty=!0),a in u&&o.setItemVisual(s,"colorFromPalette",!1)}}:null}}}},Aze={performRawSeries:!0,overallReset:function(e){var t=_e();e.eachSeries(function(r){var n=r.getColorBy();if(!r.isColorBySeries()){var i=r.type+"-"+n,a=t.get(i);a||(a={},t.set(i,a)),p6(r).scope=a}}),e.eachSeries(function(r){if(!(r.isColorBySeries()||e.isSeriesFiltered(r))){var n=r.getRawData(),i={},a=r.getData(),o=p6(r).scope,s=r.visualStyleAccessPath||"itemStyle",l=pee(r,s);a.each(function(u){var c=a.getRawIndex(u);i[c]=u}),n.each(function(u){var c=i[u],f=a.getItemVisual(c,"colorFromPalette");if(f){var h=a.ensureUniqueItemVisual(c,"style"),d=n.getName(u)||u+"",v=n.count();h[l]=r.getColorFromPalette(d,o,v)}})}})}},e_=Math.PI;function Mze(e,t){t=t||{},Pe(t,{text:"loading",textColor:J.color.primary,fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255,255,255,0.8)",showSpinner:!0,color:J.color.theme[0],spinnerRadius:10,lineWidth:5,zlevel:0});var r=new Me,n=new Xe({style:{fill:t.maskColor},zlevel:t.zlevel,z:1e4});r.add(n);var i=new at({style:{text:t.text,fill:t.textColor,fontSize:t.fontSize,fontWeight:t.fontWeight,fontStyle:t.fontStyle,fontFamily:t.fontFamily},zlevel:t.zlevel,z:10001}),a=new Xe({style:{fill:"none"},textContent:i,textConfig:{position:"right",distance:10},zlevel:t.zlevel,z:10001});r.add(a);var o;return t.showSpinner&&(o=new p0({shape:{startAngle:-e_/2,endAngle:-e_/2+.1,r:t.spinnerRadius},style:{stroke:t.color,lineCap:"round",lineWidth:t.lineWidth},zlevel:t.zlevel,z:10001}),o.animateShape(!0).when(1e3,{endAngle:e_*3/2}).start("circularInOut"),o.animateShape(!0).when(1e3,{startAngle:e_*3/2}).delay(300).start("circularInOut"),r.add(o)),r.resize=function(){var s=i.getBoundingRect().width,l=t.showSpinner?t.spinnerRadius:0,u=(e.getWidth()-l*2-(t.showSpinner&&s?10:0)-s)/2-(t.showSpinner&&s?0:5+s/2)+(t.showSpinner?0:s/2)+(s?0:l),c=e.getHeight()/2;t.showSpinner&&o.setShape({cx:u,cy:c}),a.setShape({x:u-l,y:c-l,width:l*2,height:l*2}),n.setShape({x:0,y:0,width:e.getWidth(),height:e.getHeight()})},r.resize(),r}var gee=function(){function e(t,r,n,i){this._stageTaskMap=_e(),this.ecInstance=t,this.api=r,n=this._dataProcessorHandlers=n.slice(),i=this._visualHandlers=i.slice(),this._allHandlers=n.concat(i)}return e.prototype.restoreData=function(t,r){t.restoreData(r),this._stageTaskMap.each(function(n){var i=n.overallTask;i&&i.dirty()})},e.prototype.getPerformArgs=function(t,r){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),i=n.context,a=!r&&n.progressiveEnabled&&(!i||i.progressiveRender)&&t.__idxInPipeline>n.blockIndex,o=a?n.step:null,s=i&&i.modDataCount,l=s!=null?Math.ceil(s/o):null;return{step:o,modBy:l,modDataCount:s}}},e.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},e.prototype.updateStreamModes=function(t,r){var n=this._pipelineMap.get(t.uid),i=t.getData(),a=i.count(),o=n.progressiveEnabled&&r.incrementalPrepareRender&&a>=n.threshold,s=t.get("large")&&a>=t.get("largeThreshold"),l=t.get("progressiveChunkMode")==="mod"?a:null;t.pipelineContext=n.context={progressiveRender:o,modDataCount:l,large:s}},e.prototype.restorePipelines=function(t){var r=this,n=r._pipelineMap=_e();t.eachSeries(function(i){var a=i.getProgressive(),o=i.uid;n.set(o,{id:o,head:null,tail:null,threshold:i.getProgressiveThreshold(),progressiveEnabled:a&&!(i.preventIncremental&&i.preventIncremental()),blockIndex:-1,step:Math.round(a||700),count:0}),r._pipe(i,i.dataTask)})},e.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,r=this.api.getModel(),n=this.api;R(this._allHandlers,function(i){var a=t.get(i.uid)||t.set(i.uid,{}),o="";xn(!(i.reset&&i.overallReset),o),i.reset&&this._createSeriesStageTask(i,a,r,n),i.overallReset&&this._createOverallStageTask(i,a,r,n)},this)},e.prototype.prepareView=function(t,r,n,i){var a=t.renderTask,o=a.context;o.model=r,o.ecModel=n,o.api=i,a.__block=!t.incrementalPrepareRender,this._pipe(r,a)},e.prototype.performDataProcessorTasks=function(t,r){this._performStageTasks(this._dataProcessorHandlers,t,r,{block:!0})},e.prototype.performVisualTasks=function(t,r,n){this._performStageTasks(this._visualHandlers,t,r,n)},e.prototype._performStageTasks=function(t,r,n,i){i=i||{};var a=!1,o=this;R(t,function(l,u){if(!(i.visualType&&i.visualType!==l.visualType)){var c=o._stageTaskMap.get(l.uid),f=c.seriesTaskMap,h=c.overallTask;if(h){var d,v=h.agentStubMap;v.each(function(m){s(i,m)&&(m.dirty(),d=!0)}),d&&h.dirty(),o.updatePayload(h,n);var g=o.getPerformArgs(h,i.block);v.each(function(m){m.perform(g)}),h.perform(g)&&(a=!0)}else f&&f.each(function(m,x){s(i,m)&&m.dirty();var _=o.getPerformArgs(m,i.block);_.skip=!l.performRawSeries&&r.isSeriesFiltered(m.context.model),o.updatePayload(m,n),m.perform(_)&&(a=!0)})}});function s(l,u){return l.setDirty&&(!l.dirtyMap||l.dirtyMap.get(u.__pipeline.id))}this.unfinished=a||this.unfinished},e.prototype.performSeriesTasks=function(t){var r;t.eachSeries(function(n){r=n.dataTask.perform()||r}),this.unfinished=r||this.unfinished},e.prototype.plan=function(){this._pipelineMap.each(function(t){var r=t.tail;do{if(r.__block){t.blockIndex=r.__idxInPipeline;break}r=r.getUpstream()}while(r)})},e.prototype.updatePayload=function(t,r){r!=="remain"&&(t.context.payload=r)},e.prototype._createSeriesStageTask=function(t,r,n,i){var a=this,o=r.seriesTaskMap,s=r.seriesTaskMap=_e(),l=t.seriesType,u=t.getTargetSeries;t.createOnAllSeries?n.eachRawSeries(c):l?n.eachRawSeriesByType(l,c):u&&u(n,i).each(c);function c(f){var h=f.uid,d=s.set(h,o&&o.get(h)||rm({plan:Oze,reset:Eze,count:Nze}));d.context={model:f,ecModel:n,api:i,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:a},a._pipe(f,d)}},e.prototype._createOverallStageTask=function(t,r,n,i){var a=this,o=r.overallTask=r.overallTask||rm({reset:Pze});o.context={ecModel:n,api:i,overallReset:t.overallReset,scheduler:a};var s=o.agentStubMap,l=o.agentStubMap=_e(),u=t.seriesType,c=t.getTargetSeries,f=!0,h=!1,d="";xn(!t.createOnAllSeries,d),u?n.eachRawSeriesByType(u,v):c?c(n,i).each(v):(f=!1,R(n.getSeries(),v));function v(g){var m=g.uid,x=l.set(m,s&&s.get(m)||(h=!0,rm({reset:kze,onDirty:Ize})));x.context={model:g,overallProgress:f},x.agent=o,x.__block=f,a._pipe(g,x)}h&&o.dirty()},e.prototype._pipe=function(t,r){var n=t.uid,i=this._pipelineMap.get(n);!i.head&&(i.head=r),i.tail&&i.tail.pipe(r),i.tail=r,r.__idxInPipeline=i.count++,r.__pipeline=i},e.wrapStageHandler=function(t,r){return Ce(t)&&(t={overallReset:t,seriesType:jze(t)}),t.uid=Wv("stageHandler"),r&&(t.visualType=r),t},e}();function Pze(e){e.overallReset(e.ecModel,e.api,e.payload)}function kze(e){return e.overallProgress&&Lze}function Lze(){this.agent.dirty(),this.getDownstream().dirty()}function Ize(){this.agent&&this.agent.dirty()}function Oze(e){return e.plan?e.plan(e.model,e.ecModel,e.api,e.payload):null}function Eze(e){e.useClearVisual&&e.data.clearAllVisual();var t=e.resetDefines=Pt(e.reset(e.model,e.ecModel,e.api,e.payload));return t.length>1?se(t,function(r,n){return mee(n)}):Dze}var Dze=mee(0);function mee(e){return function(t,r){var n=r.data,i=r.resetDefines[e];if(i&&i.dataEach)for(var a=t.start;a0&&d===u.length-h.length){var v=u.slice(0,d);v!=="data"&&(r.mainType=v,r[h.toLowerCase()]=l,c=!0)}}s.hasOwnProperty(u)&&(n[u]=l,c=!0),c||(i[u]=l)})}return{cptQuery:r,dataQuery:n,otherQuery:i}},e.prototype.filter=function(t,r){var n=this.eventInfo;if(!n)return!0;var i=n.targetEl,a=n.packedEvent,o=n.model,s=n.view;if(!o||!s)return!0;var l=r.cptQuery,u=r.dataQuery;return c(l,o,"mainType")&&c(l,o,"subType")&&c(l,o,"index","componentIndex")&&c(l,o,"name")&&c(l,o,"id")&&c(u,a,"name")&&c(u,a,"dataIndex")&&c(u,a,"dataType")&&(!s.filterForExposedEvent||s.filterForExposedEvent(t,r.otherQuery,i,a));function c(f,h,d,v){return f[d]==null||h[v||d]===f[d]}},e.prototype.afterTrigger=function(){this.eventInfo=null},e}(),WI=["symbol","symbolSize","symbolRotate","symbolOffset"],y6=WI.concat(["symbolKeepAspect"]),zze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){var r=e.getData();if(e.legendIcon&&r.setVisual("legendIcon",e.legendIcon),!e.hasSymbolVisual)return;for(var n={},i={},a=!1,o=0;o=0&&jc(l)?l:.5;var u=e.createRadialGradient(o,s,0,o,s,l);return u}function HI(e,t,r){for(var n=t.type==="radial"?e4e(e,t,r):Qze(e,t,r),i=t.colorStops,a=0;a0)?null:e==="dashed"?[4*t,2*t]:e==="dotted"?[t]:ot(e)?[e]:ae(e)?e:null}function mj(e){var t=e.style,r=t.lineDash&&t.lineWidth>0&&r4e(t.lineDash,t.lineWidth),n=t.lineDashOffset;if(r){var i=t.strokeNoScale&&e.getLineScale?e.getLineScale():1;i&&i!==1&&(r=se(r,function(a){return a/i}),n/=i)}return[r,n]}var n4e=new Wo(!0);function Aw(e){var t=e.stroke;return!(t==null||t==="none"||!(e.lineWidth>0))}function x6(e){return typeof e=="string"&&e!=="none"}function Mw(e){var t=e.fill;return t!=null&&t!=="none"}function _6(e,t){if(t.fillOpacity!=null&&t.fillOpacity!==1){var r=e.globalAlpha;e.globalAlpha=t.fillOpacity*t.opacity,e.fill(),e.globalAlpha=r}else e.fill()}function b6(e,t){if(t.strokeOpacity!=null&&t.strokeOpacity!==1){var r=e.globalAlpha;e.globalAlpha=t.strokeOpacity*t.opacity,e.stroke(),e.globalAlpha=r}else e.stroke()}function UI(e,t,r){var n=LN(t.image,t.__image,r);if(RT(n)){var i=e.createPattern(n,t.repeat||"repeat");if(typeof DOMMatrix=="function"&&i&&i.setTransform){var a=new DOMMatrix;a.translateSelf(t.x||0,t.y||0),a.rotateSelf(0,0,(t.rotation||0)*Hg),a.scaleSelf(t.scaleX||1,t.scaleY||1),i.setTransform(a)}return i}}function i4e(e,t,r,n){var i,a=Aw(r),o=Mw(r),s=r.strokePercent,l=s<1,u=!t.path;(!t.silent||l)&&u&&t.createPathProxy();var c=t.path||n4e,f=t.__dirty;if(!n){var h=r.fill,d=r.stroke,v=o&&!!h.colorStops,g=a&&!!d.colorStops,m=o&&!!h.image,x=a&&!!d.image,_=void 0,b=void 0,S=void 0,T=void 0,C=void 0;(v||g)&&(C=t.getBoundingRect()),v&&(_=f?HI(e,h,C):t.__canvasFillGradient,t.__canvasFillGradient=_),g&&(b=f?HI(e,d,C):t.__canvasStrokeGradient,t.__canvasStrokeGradient=b),m&&(S=f||!t.__canvasFillPattern?UI(e,h,t):t.__canvasFillPattern,t.__canvasFillPattern=S),x&&(T=f||!t.__canvasStrokePattern?UI(e,d,t):t.__canvasStrokePattern,t.__canvasStrokePattern=T),v?e.fillStyle=_:m&&(S?e.fillStyle=S:o=!1),g?e.strokeStyle=b:x&&(T?e.strokeStyle=T:a=!1)}var A=t.getGlobalScale();c.setScale(A[0],A[1],t.segmentIgnoreThreshold);var P,I;e.setLineDash&&r.lineDash&&(i=mj(t),P=i[0],I=i[1]);var k=!0;(u||f&Ch)&&(c.setDPR(e.dpr),l?c.setContext(null):(c.setContext(e),k=!1),c.reset(),t.buildPath(c,t.shape,n),c.toStatic(),t.pathUpdated()),k&&c.rebuildPath(e,l?s:1),P&&(e.setLineDash(P),e.lineDashOffset=I),n||(r.strokeFirst?(a&&b6(e,r),o&&_6(e,r)):(o&&_6(e,r),a&&b6(e,r))),P&&e.setLineDash([])}function a4e(e,t,r){var n=t.__image=LN(r.image,t.__image,t,t.onload);if(!(!n||!RT(n))){var i=r.x||0,a=r.y||0,o=t.getWidth(),s=t.getHeight(),l=n.width/n.height;if(o==null&&s!=null?o=s*l:s==null&&o!=null?s=o/l:o==null&&s==null&&(o=n.width,s=n.height),r.sWidth&&r.sHeight){var u=r.sx||0,c=r.sy||0;e.drawImage(n,u,c,r.sWidth,r.sHeight,i,a,o,s)}else if(r.sx&&r.sy){var u=r.sx,c=r.sy,f=o-u,h=s-c;e.drawImage(n,u,c,f,h,i,a,o,s)}else e.drawImage(n,i,a,o,s)}}function o4e(e,t,r){var n,i=r.text;if(i!=null&&(i+=""),i){e.font=r.font||Vs,e.textAlign=r.textAlign,e.textBaseline=r.textBaseline;var a=void 0,o=void 0;e.setLineDash&&r.lineDash&&(n=mj(t),a=n[0],o=n[1]),a&&(e.setLineDash(a),e.lineDashOffset=o),r.strokeFirst?(Aw(r)&&e.strokeText(i,r.x,r.y),Mw(r)&&e.fillText(i,r.x,r.y)):(Mw(r)&&e.fillText(i,r.x,r.y),Aw(r)&&e.strokeText(i,r.x,r.y)),a&&e.setLineDash([])}}var w6=["shadowBlur","shadowOffsetX","shadowOffsetY"],S6=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function See(e,t,r,n,i){var a=!1;if(!n&&(r=r||{},t===r))return!1;if(n||t.opacity!==r.opacity){ri(e,i),a=!0;var o=Math.max(Math.min(t.opacity,1),0);e.globalAlpha=isNaN(o)?Wc.opacity:o}(n||t.blend!==r.blend)&&(a||(ri(e,i),a=!0),e.globalCompositeOperation=t.blend||Wc.blend);for(var s=0;s0&&r.unfinished);r.unfinished||this._zr.flush()}}},t.prototype.getDom=function(){return this._dom},t.prototype.getId=function(){return this.id},t.prototype.getZr=function(){return this._zr},t.prototype.isSSR=function(){return this._ssr},t.prototype.setOption=function(r,n,i){if(!this[Pr]){if(this._disposed){this.id;return}var a,o,s;if(ke(n)&&(i=n.lazyUpdate,a=n.silent,o=n.replaceMerge,s=n.transition,n=n.notMerge),this[Pr]=!0,ch(this),!this._model||n){var l=new _Be(this._api),u=this._theme,c=this._model=new fj;c.scheduler=this._scheduler,c.ssr=this._ssr,c.init(null,null,null,u,this._locale,l)}this._model.setOption(r,{replaceMerge:o},qI);var f={seriesTransition:s,optionChanged:!0};if(i)this[Kr]={silent:a,updateParams:f},this[Pr]=!1,this.getZr().wakeUp();else{try{nc(this),os.update.call(this,null,f)}catch(h){throw this[Kr]=null,this[Pr]=!1,h}this._ssr||this._zr.flush(),this[Kr]=null,this[Pr]=!1,lh.call(this,a),uh.call(this,a)}}},t.prototype.setTheme=function(r,n){if(!this[Pr]){if(this._disposed){this.id;return}var i=this._model;if(i){var a=n&&n.silent,o=null;this[Kr]&&(a==null&&(a=this[Kr].silent),o=this[Kr].updateParams,this[Kr]=null),this[Pr]=!0,ch(this);try{this._updateTheme(r),i.setTheme(this._theme),nc(this),os.update.call(this,{type:"setTheme"},o)}catch(s){throw this[Pr]=!1,s}this[Pr]=!1,lh.call(this,a),uh.call(this,a)}}},t.prototype._updateTheme=function(r){pe(r)&&(r=Vee[r]),r&&(r=Ae(r),r&&HQ(r,!0),this._theme=r)},t.prototype.getModel=function(){return this._model},t.prototype.getOption=function(){return this._model&&this._model.getOption()},t.prototype.getWidth=function(){return this._zr.getWidth()},t.prototype.getHeight=function(){return this._zr.getHeight()},t.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||nt.hasGlobalWindow&&window.devicePixelRatio||1},t.prototype.getRenderedCanvas=function(r){return this.renderToCanvas(r)},t.prototype.renderToCanvas=function(r){r=r||{};var n=this._zr.painter;return n.getRenderedCanvas({backgroundColor:r.backgroundColor||this._model.get("backgroundColor"),pixelRatio:r.pixelRatio||this.getDevicePixelRatio()})},t.prototype.renderToSVGString=function(r){r=r||{};var n=this._zr.painter;return n.renderToString({useViewBox:r.useViewBox})},t.prototype.getSvgDataURL=function(){var r=this._zr,n=r.storage.getDisplayList();return R(n,function(i){i.stopAnimation(null,!0)}),r.painter.toDataURL()},t.prototype.getDataURL=function(r){if(this._disposed){this.id;return}r=r||{};var n=r.excludeComponents,i=this._model,a=[],o=this;R(n,function(l){i.eachComponent({mainType:l},function(u){var c=o._componentsMap[u.__viewId];c.group.ignore||(a.push(c),c.group.ignore=!0)})});var s=this._zr.painter.getType()==="svg"?this.getSvgDataURL():this.renderToCanvas(r).toDataURL("image/"+(r&&r.type||"png"));return R(a,function(l){l.group.ignore=!1}),s},t.prototype.getConnectedDataURL=function(r){if(this._disposed){this.id;return}var n=r.type==="svg",i=this.group,a=Math.min,o=Math.max,s=1/0;if(Iw[i]){var l=s,u=s,c=-s,f=-s,h=[],d=r&&r.pixelRatio||this.getDevicePixelRatio();R(Zc,function(b,S){if(b.group===i){var T=n?b.getZr().painter.getSvgDom().innerHTML:b.renderToCanvas(Ae(r)),C=b.getDom().getBoundingClientRect();l=a(C.left,l),u=a(C.top,u),c=o(C.right,c),f=o(C.bottom,f),h.push({dom:T,left:C.left,top:C.top})}}),l*=d,u*=d,c*=d,f*=d;var v=c-l,g=f-u,m=ui.createCanvas(),x=vI(m,{renderer:n?"svg":"canvas"});if(x.resize({width:v,height:g}),n){var _="";return R(h,function(b){var S=b.left-l,T=b.top-u;_+=''+b.dom+""}),x.painter.getSvgRoot().innerHTML=_,r.connectedBackgroundColor&&x.painter.setBackgroundColor(r.connectedBackgroundColor),x.refreshImmediately(),x.painter.toDataURL()}else return r.connectedBackgroundColor&&x.add(new Xe({shape:{x:0,y:0,width:v,height:g},style:{fill:r.connectedBackgroundColor}})),R(h,function(b){var S=new Yr({style:{x:b.left*d-l,y:b.top*d-u,image:b.dom}});x.add(S)}),x.refreshImmediately(),m.toDataURL("image/"+(r&&r.type||"png"))}else return this.getDataURL(r)},t.prototype.convertToPixel=function(r,n,i){return i_(this,"convertToPixel",r,n,i)},t.prototype.convertToLayout=function(r,n,i){return i_(this,"convertToLayout",r,n,i)},t.prototype.convertFromPixel=function(r,n,i){return i_(this,"convertFromPixel",r,n,i)},t.prototype.containPixel=function(r,n){if(this._disposed){this.id;return}var i=this._model,a,o=fd(i,r);return R(o,function(s,l){l.indexOf("Models")>=0&&R(s,function(u){var c=u.coordinateSystem;if(c&&c.containPoint)a=a||!!c.containPoint(n);else if(l==="seriesModels"){var f=this._chartsMap[u.__viewId];f&&f.containPoint&&(a=a||f.containPoint(n,u))}},this)},this),!!a},t.prototype.getVisual=function(r,n){var i=this._model,a=fd(i,r,{defaultMainType:"series"}),o=a.seriesModel,s=o.getData(),l=a.hasOwnProperty("dataIndexInside")?a.dataIndexInside:a.hasOwnProperty("dataIndex")?s.indexOfRawIndex(a.dataIndex):null;return l!=null?gj(s,l,n):_0(s,n)},t.prototype.getViewOfComponentModel=function(r){return this._componentsMap[r.__viewId]},t.prototype.getViewOfSeriesModel=function(r){return this._chartsMap[r.__viewId]},t.prototype._initEvents=function(){var r=this;R(O4e,function(i){var a=function(o){var s=r.getModel(),l=o.target,u,c=i==="globalout";if(c?u={}:l&&Nc(l,function(g){var m=Ne(g);if(m&&m.dataIndex!=null){var x=m.dataModel||s.getSeriesByIndex(m.seriesIndex);return u=x&&x.getDataParams(m.dataIndex,m.dataType,l)||{},!0}else if(m.eventData)return u=ne({},m.eventData),!0},!0),u){var f=u.componentType,h=u.componentIndex;(f==="markLine"||f==="markPoint"||f==="markArea")&&(f="series",h=u.seriesIndex);var d=f&&h!=null&&s.getComponent(f,h),v=d&&r[d.mainType==="series"?"_chartsMap":"_componentsMap"][d.__viewId];u.event=o,u.type=i,r._$eventProcessor.eventInfo={targetEl:l,packedEvent:u,model:d,view:v},r.trigger(i,u)}};a.zrEventfulCallAtLast=!0,r._zr.on(i,a,r)});var n=this._messageCenter;R(YI,function(i,a){n.on(a,function(o){r.trigger(a,o)})}),Fze(n,this,this._api)},t.prototype.isDisposed=function(){return this._disposed},t.prototype.clear=function(){if(this._disposed){this.id;return}this.setOption({series:[]},!0)},t.prototype.dispose=function(){if(this._disposed){this.id;return}this._disposed=!0;var r=this.getDom();r&&CJ(this.getDom(),bj,"");var n=this,i=n._api,a=n._model;R(n._componentsViews,function(o){o.dispose(a,i)}),R(n._chartsViews,function(o){o.dispose(a,i)}),n._zr.dispose(),n._dom=n._model=n._chartsMap=n._componentsMap=n._chartsViews=n._componentsViews=n._scheduler=n._api=n._zr=n._throttledZrFlush=n._theme=n._coordSysMgr=n._messageCenter=null,delete Zc[n.id]},t.prototype.resize=function(r){if(!this[Pr]){if(this._disposed){this.id;return}this._zr.resize(r);var n=this._model;if(this._loadingFX&&this._loadingFX.resize(),!!n){var i=n.resetOption("media"),a=r&&r.silent;this[Kr]&&(a==null&&(a=this[Kr].silent),i=!0,this[Kr]=null),this[Pr]=!0,ch(this);try{i&&nc(this),os.update.call(this,{type:"resize",animation:ne({duration:0},r&&r.animation)})}catch(o){throw this[Pr]=!1,o}this[Pr]=!1,lh.call(this,a),uh.call(this,a)}}},t.prototype.showLoading=function(r,n){if(this._disposed){this.id;return}if(ke(r)&&(n=r,r=""),r=r||"default",this.hideLoading(),!!KI[r]){var i=KI[r](this._api,n),a=this._zr;this._loadingFX=i,a.add(i)}},t.prototype.hideLoading=function(){if(this._disposed){this.id;return}this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null},t.prototype.makeActionFromEvent=function(r){var n=ne({},r);return n.type=ZI[r.type],n},t.prototype.dispatchAction=function(r,n){if(this._disposed){this.id;return}if(ke(n)||(n={silent:!!n}),!!kw[r.type]&&this._model){if(this[Pr]){this._pendingActions.push(r);return}var i=n.silent;Z2.call(this,r,i);var a=n.flush;a?this._zr.flush():a!==!1&&nt.browser.weChat&&this._throttledZrFlush(),lh.call(this,i),uh.call(this,i)}},t.prototype.updateLabelLayout=function(){La.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},t.prototype.appendData=function(r){if(this._disposed){this.id;return}var n=r.seriesIndex,i=this.getModel(),a=i.getSeriesByIndex(n);a.appendData(r),this._scheduler.unfinished=!0,this.getZr().wakeUp()},t.internalField=function(){nc=function(f){var h=f._scheduler;h.restorePipelines(f._model),h.prepareStageTasks(),H2(f,!0),H2(f,!1),h.plan()},H2=function(f,h){for(var d=f._model,v=f._scheduler,g=h?f._componentsViews:f._chartsViews,m=h?f._componentsMap:f._chartsMap,x=f._zr,_=f._api,b=0;bh.get("hoverLayerThreshold")&&!nt.node&&!nt.worker&&h.eachSeries(function(m){if(!m.preventUsingHoverLayer){var x=f._chartsMap[m.__viewId];x.__alive&&x.eachRendered(function(_){_.states.emphasis&&(_.states.emphasis.hoverLayer=!0)})}})}function s(f,h){var d=f.get("blendMode")||null;h.eachRendered(function(v){v.isGroup||(v.style.blend=d)})}function l(f,h){if(!f.preventAutoZ){var d=df(f);h.eachRendered(function(v){return HT(v,d.z,d.zlevel),!0})}}function u(f,h){h.eachRendered(function(d){if(!hd(d)){var v=d.getTextContent(),g=d.getTextGuideLine();d.stateTransition&&(d.stateTransition=null),v&&v.stateTransition&&(v.stateTransition=null),g&&g.stateTransition&&(g.stateTransition=null),d.hasState()?(d.prevStates=d.currentStates,d.clearStates()):d.prevStates&&(d.prevStates=null)}})}function c(f,h){var d=f.getModel("stateAnimation"),v=f.isAnimationEnabled(),g=d.get("duration"),m=g>0?{duration:g,delay:d.get("delay"),easing:d.get("easing")}:null;h.eachRendered(function(x){if(x.states&&x.states.emphasis){if(hd(x))return;if(x instanceof tt&&Y5e(x),x.__dirty){var _=x.prevStates;_&&x.useStates(_)}if(v){x.stateTransition=m;var b=x.getTextContent(),S=x.getTextGuideLine();b&&(b.stateTransition=m),S&&(S.stateTransition=m)}x.__dirty&&a(x)}})}j6=function(f){return new(function(h){q(d,h);function d(){return h!==null&&h.apply(this,arguments)||this}return d.prototype.getCoordinateSystems=function(){return f._coordSysMgr.getCoordinateSystems()},d.prototype.getComponentByElement=function(v){for(;v;){var g=v.__ecComponentInfo;if(g!=null)return f._model.getComponent(g.mainType,g.index);v=v.parent}},d.prototype.enterEmphasis=function(v,g){Ws(v,g),Gi(f)},d.prototype.leaveEmphasis=function(v,g){Hs(v,g),Gi(f)},d.prototype.enterBlur=function(v){GJ(v),Gi(f)},d.prototype.leaveBlur=function(v){jN(v),Gi(f)},d.prototype.enterSelect=function(v){WJ(v),Gi(f)},d.prototype.leaveSelect=function(v){HJ(v),Gi(f)},d.prototype.getModel=function(){return f.getModel()},d.prototype.getViewOfComponentModel=function(v){return f.getViewOfComponentModel(v)},d.prototype.getViewOfSeriesModel=function(v){return f.getViewOfSeriesModel(v)},d.prototype.getMainProcessVersion=function(){return f[r_]},d}(GQ))(f)},Fee=function(f){function h(d,v){for(var g=0;g=0)){B6.push(r);var a=gee.wrapStageHandler(r,i);a.__prio=t,a.__raw=r,e.push(a)}}function Mj(e,t){KI[e]=t}function V4e(e){LK({createCanvas:e})}function Yee(e,t,r){var n=kee("registerMap");n&&n(e,t,r)}function G4e(e){var t=kee("getMap");return t&&t(e)}var Xee=JBe;Pu(xj,Tze);Pu(JT,Cze);Pu(JT,Aze);Pu(xj,zze);Pu(JT,$ze);Pu(Dee,v4e);Tj(HQ);Cj(b4e,OBe);Mj("default",Mze);to({type:Hc,event:Hc,update:Hc},sr);to({type:cb,event:cb,update:cb},sr);to({type:gw,event:DN,update:gw,action:sr,refineEvent:Pj,publishNonRefinedEvent:!0});to({type:TI,event:DN,update:TI,action:sr,refineEvent:Pj,publishNonRefinedEvent:!0});to({type:mw,event:DN,update:mw,action:sr,refineEvent:Pj,publishNonRefinedEvent:!0});function Pj(e,t,r,n){return{eventContent:{selected:G5e(r),isFromClick:t.isFromClick||!1}}}Sj("default",{});Sj("dark",_ee);var W4e={},z6=[],H4e={registerPreprocessor:Tj,registerProcessor:Cj,registerPostInit:Wee,registerPostUpdate:Hee,registerUpdateLifecycle:QT,registerAction:to,registerCoordinateSystem:Uee,registerLayout:Zee,registerVisual:Pu,registerTransform:Xee,registerLoading:Mj,registerMap:Yee,registerImpl:p4e,PRIORITY:Nee,ComponentModel:Ke,ComponentView:kt,SeriesModel:Tt,ChartView:bt,registerComponentModel:function(e){Ke.registerClass(e)},registerComponentView:function(e){kt.registerClass(e)},registerSeriesModel:function(e){Tt.registerClass(e)},registerChartView:function(e){bt.registerClass(e)},registerCustomSeries:function(e,t){Iee(e,t)},registerSubTypeDefaulter:function(e,t){Ke.registerSubTypeDefaulter(e,t)},registerPainter:function(e,t){fJ(e,t)}};function Ze(e){if(ae(e)){R(e,function(t){Ze(t)});return}We(z6,e)>=0||(z6.push(e),Ce(e)&&(e={install:e}),e.install(H4e))}function Gp(e){return e==null?0:e.length||1}function $6(e){return e}var Us=function(){function e(t,r,n,i,a,o){this._old=t,this._new=r,this._oldKeyGetter=n||$6,this._newKeyGetter=i||$6,this.context=a,this._diffModeMultiple=o==="multiple"}return e.prototype.add=function(t){return this._add=t,this},e.prototype.update=function(t){return this._update=t,this},e.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},e.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},e.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},e.prototype.remove=function(t){return this._remove=t,this},e.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},e.prototype._executeOneToOne=function(){var t=this._old,r=this._new,n={},i=new Array(t.length),a=new Array(r.length);this._initIndexMap(t,null,i,"_oldKeyGetter"),this._initIndexMap(r,n,a,"_newKeyGetter");for(var o=0;o1){var c=l.shift();l.length===1&&(n[s]=l[0]),this._update&&this._update(c,o)}else u===1?(n[s]=null,this._update&&this._update(l,o)):this._remove&&this._remove(o)}this._performRestAdd(a,n)},e.prototype._executeMultiple=function(){var t=this._old,r=this._new,n={},i={},a=[],o=[];this._initIndexMap(t,n,a,"_oldKeyGetter"),this._initIndexMap(r,i,o,"_newKeyGetter");for(var s=0;s1&&h===1)this._updateManyToOne&&this._updateManyToOne(c,u),i[l]=null;else if(f===1&&h>1)this._updateOneToMany&&this._updateOneToMany(c,u),i[l]=null;else if(f===1&&h===1)this._update&&this._update(c,u),i[l]=null;else if(f>1&&h>1)this._updateManyToMany&&this._updateManyToMany(c,u),i[l]=null;else if(f>1)for(var d=0;d1)for(var s=0;s30}var Wp=ke,ul=se,K4e=typeof Int32Array>"u"?Array:Int32Array,J4e="e\0\0",F6=-1,Q4e=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],e$e=["_approximateExtent"],V6,o_,Hp,Up,q2,Zp,K2,En=function(){function e(t,r){this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","minmaxDownSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","minmaxDownSample","lttbDownSample"];var n,i=!1;Kee(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(i=!0,n=t),n=n||["x","y"];for(var a={},o=[],s={},l=!1,u={},c=0;c=r)){var n=this._store,i=n.getProvider();this._updateOrdinalMeta();var a=this._nameList,o=this._idList,s=i.getSource().sourceFormat,l=s===Ni;if(l&&!i.pure)for(var u=[],c=t;c0},e.prototype.ensureUniqueItemVisual=function(t,r){var n=this._itemVisuals,i=n[t];i||(i=n[t]={});var a=i[r];return a==null&&(a=this.getVisual(r),ae(a)?a=a.slice():Wp(a)&&(a=ne({},a)),i[r]=a),a},e.prototype.setItemVisual=function(t,r,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,Wp(r)?ne(i,r):i[r]=n},e.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},e.prototype.setLayout=function(t,r){Wp(t)?ne(this._layout,t):this._layout[t]=r},e.prototype.getLayout=function(t){return this._layout[t]},e.prototype.getItemLayout=function(t){return this._itemLayouts[t]},e.prototype.setItemLayout=function(t,r,n){this._itemLayouts[t]=n?ne(this._itemLayouts[t]||{},r):r},e.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},e.prototype.setItemGraphicEl=function(t,r){var n=this.hostModel&&this.hostModel.seriesIndex;SI(n,this.dataType,t,r),this._graphicEls[t]=r},e.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},e.prototype.eachItemGraphicEl=function(t,r){R(this._graphicEls,function(n,i){n&&t&&t.call(r,n,i)})},e.prototype.cloneShallow=function(t){return t||(t=new e(this._schema?this._schema:ul(this.dimensions,this._getDimInfo,this),this.hostModel)),q2(t,this),t._store=this._store,t},e.prototype.wrapMethod=function(t,r){var n=this[t];Ce(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var i=n.apply(this,arguments);return r.apply(this,[i].concat(kT(arguments)))})},e.internalField=function(){V6=function(t){var r=t._invertedIndicesMap;R(r,function(n,i){var a=t._dimInfos[i],o=a.ordinalMeta,s=t._store;if(o){n=r[i]=new K4e(o.categories.length);for(var l=0;l1&&(l+="__ec__"+c),i[r]=l}}}(),e}();function t$e(e,t){return qv(e,t).dimensions}function qv(e,t){hj(e)||(e=dj(e)),t=t||{};var r=t.coordDimensions||[],n=t.dimensionsDefine||e.dimensionsDefine||[],i=_e(),a=[],o=n$e(e,r,n,t.dimensionsCount),s=t.canOmitUnusedDimensions&&ete(o),l=n===e.dimensionsDefine,u=l?Qee(e):Jee(n),c=t.encodeDefine;!c&&t.encodeDefaulter&&(c=t.encodeDefaulter(e,o));for(var f=_e(c),h=new ree(o),d=0;d0&&(n.name=i+(a-1)),a++,t.set(i,a)}}function n$e(e,t,r,n){var i=Math.max(e.dimensionsDetectedCount||1,t.length,r.length,n||0);return R(t,function(a){var o;ke(a)&&(o=a.dimsDef)&&(i=Math.max(i,o.length))}),i}function i$e(e,t,r){if(r||t.hasKey(e)){for(var n=0;t.hasKey(e+n);)n++;e+=n}return t.set(e,!0),e}var a$e=function(){function e(t){this.coordSysDims=[],this.axisMap=_e(),this.categoryAxisMap=_e(),this.coordSysName=t}return e}();function o$e(e){var t=e.get("coordinateSystem"),r=new a$e(t),n=s$e[t];if(n)return n(e,r,r.axisMap,r.categoryAxisMap),r}var s$e={cartesian2d:function(e,t,r,n){var i=e.getReferringComponents("xAxis",er).models[0],a=e.getReferringComponents("yAxis",er).models[0];t.coordSysDims=["x","y"],r.set("x",i),r.set("y",a),fh(i)&&(n.set("x",i),t.firstCategoryDimIndex=0),fh(a)&&(n.set("y",a),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},singleAxis:function(e,t,r,n){var i=e.getReferringComponents("singleAxis",er).models[0];t.coordSysDims=["single"],r.set("single",i),fh(i)&&(n.set("single",i),t.firstCategoryDimIndex=0)},polar:function(e,t,r,n){var i=e.getReferringComponents("polar",er).models[0],a=i.findAxisModel("radiusAxis"),o=i.findAxisModel("angleAxis");t.coordSysDims=["radius","angle"],r.set("radius",a),r.set("angle",o),fh(a)&&(n.set("radius",a),t.firstCategoryDimIndex=0),fh(o)&&(n.set("angle",o),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},geo:function(e,t,r,n){t.coordSysDims=["lng","lat"]},parallel:function(e,t,r,n){var i=e.ecModel,a=i.getComponent("parallel",e.get("parallelIndex")),o=t.coordSysDims=a.dimensions.slice();R(a.parallelAxisIndex,function(s,l){var u=i.getComponent("parallelAxis",s),c=o[l];r.set(c,u),fh(u)&&(n.set(c,u),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=l))})},matrix:function(e,t,r,n){var i=e.getReferringComponents("matrix",er).models[0];t.coordSysDims=["x","y"];var a=i.getDimensionModel("x"),o=i.getDimensionModel("y");r.set("x",a),r.set("y",o),n.set("x",a),n.set("y",o)}};function fh(e){return e.get("type")==="category"}function tte(e,t,r){r=r||{};var n=r.byIndex,i=r.stackedCoordDimension,a,o,s;l$e(t)?a=t:(o=t.schema,a=o.dimensions,s=t.store);var l=!!(e&&e.get("stack")),u,c,f,h;if(R(a,function(_,b){pe(_)&&(a[b]=_={name:_}),l&&!_.isExtraCoord&&(!n&&!u&&_.ordinalMeta&&(u=_),!c&&_.type!=="ordinal"&&_.type!=="time"&&(!i||i===_.coordDim)&&(c=_))}),c&&!n&&!u&&(n=!0),c){f="__\0ecstackresult_"+e.id,h="__\0ecstackedover_"+e.id,u&&(u.createInvertedIndices=!0);var d=c.coordDim,v=c.type,g=0;R(a,function(_){_.coordDim===d&&g++});var m={name:f,coordDim:d,coordDimIndex:g,type:v,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:a.length},x={name:h,coordDim:h,coordDimIndex:g+1,type:v,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:a.length+1};o?(s&&(m.storeDimIndex=s.ensureCalculationDimension(h,v),x.storeDimIndex=s.ensureCalculationDimension(f,v)),o.appendCalculationDimension(m),o.appendCalculationDimension(x)):(a.push(m),a.push(x))}return{stackedDimension:c&&c.name,stackedByDimension:u&&u.name,isStackedByIndex:n,stackedOverDimension:h,stackResultDimension:f}}function l$e(e){return!Kee(e.schema)}function Zs(e,t){return!!t&&t===e.getCalculationInfo("stackedDimension")}function kj(e,t){return Zs(e,t)?e.getCalculationInfo("stackResultDimension"):t}function u$e(e,t){var r=e.get("coordinateSystem"),n=Uv.get(r),i;return t&&t.coordSysDims&&(i=se(t.coordSysDims,function(a){var o={name:a},s=t.axisMap.get(a);if(s){var l=s.get("type");o.type=Ow(l)}return o})),i||(i=n&&(n.getDimensionsInfo?n.getDimensionsInfo():n.dimensions.slice())||["x","y"]),i}function c$e(e,t,r){var n,i;return r&&R(e,function(a,o){var s=a.coordDim,l=r.categoryAxisMap.get(s);l&&(n==null&&(n=o),a.ordinalMeta=l.getOrdinalMeta(),t&&(a.createInvertedIndices=!0)),a.otherDims.itemName!=null&&(i=!0)}),!i&&n!=null&&(e[n].otherDims.itemName=0),n}function Jo(e,t,r){r=r||{};var n=t.getSourceManager(),i,a=!1;e?(a=!0,i=dj(e)):(i=n.getSource(),a=i.sourceFormat===Ni);var o=o$e(t),s=u$e(t,o),l=r.useEncodeDefaulter,u=Ce(l)?l:l?Fe(zQ,s,t):null,c={coordDimensions:s,generateCoord:r.generateCoord,encodeDefine:t.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!a},f=qv(i,c),h=c$e(f.dimensions,r.createInvertedIndices,o),d=a?null:n.getSharedDataStore(f),v=tte(t,{schema:f,store:d}),g=new En(f,t);g.setCalculationInfo(v);var m=h!=null&&f$e(i)?function(x,_,b,S){return S===h?b:this.defaultDimValueGetter(x,_,b,S)}:null;return g.hasItemOption=!1,g.initData(a?i:d,null,m),g}function f$e(e){if(e.sourceFormat===Ni){var t=h$e(e.data||[]);return!ae(jv(t))}}function h$e(e){for(var t=0;ti&&(o=a.interval=i);var s=a.intervalPrecision=ky(o),l=a.niceTickExtent=[gr(Math.ceil(e[0]/o)*o,s),gr(Math.floor(e[1]/o)*o,s)];return v$e(l,e),a}function J2(e){var t=Math.pow(10,NT(e)),r=e/t;return r?r===2?r=3:r===3?r=5:r*=2:r=1,gr(r*t)}function ky(e){return za(e)+2}function G6(e,t,r){e[t]=Math.max(Math.min(e[t],r[1]),r[0])}function v$e(e,t){!isFinite(e[0])&&(e[0]=t[0]),!isFinite(e[1])&&(e[1]=t[1]),G6(e,0,t),G6(e,1,t),e[0]>e[1]&&(e[0]=e[1])}function Lj(e,t){return e>=t[0]&&e<=t[1]}var p$e=function(){function e(){this.normalize=W6,this.scale=H6}return e.prototype.updateMethods=function(t){t.hasBreaks()?(this.normalize=ge(t.normalize,t),this.scale=ge(t.scale,t)):(this.normalize=W6,this.scale=H6)},e}();function W6(e,t){return t[1]===t[0]?.5:(e-t[0])/(t[1]-t[0])}function H6(e,t){return e*(t[1]-t[0])+t[0]}function QI(e,t,r){var n=Math.log(e);return[Math.log(r?t[0]:Math.max(0,t[0]))/n,Math.log(r?t[1]:Math.max(0,t[1]))/n]}var ku=function(){function e(t){this._calculator=new p$e,this._setting=t||{},this._extent=[1/0,-1/0];var r=Sr();r&&(this._brkCtx=r.createScaleBreakContext(),this._brkCtx.update(this._extent))}return e.prototype.getSetting=function(t){return this._setting[t]},e.prototype._innerUnionExtent=function(t){var r=this._extent;this._innerSetExtent(t[0]r[1]?t[1]:r[1])},e.prototype.unionExtentFromData=function(t,r){this._innerUnionExtent(t.getApproximateExtent(r))},e.prototype.getExtent=function(){return this._extent.slice()},e.prototype.setExtent=function(t,r){this._innerSetExtent(t,r)},e.prototype._innerSetExtent=function(t,r){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(r)||(n[1]=r),this._brkCtx&&this._brkCtx.update(n)},e.prototype.setBreaksFromOption=function(t){var r=Sr();r&&this._innerSetBreak(r.parseAxisBreakOption(t,ge(this.parse,this)))},e.prototype._innerSetBreak=function(t){this._brkCtx&&(this._brkCtx.setBreaks(t),this._calculator.updateMethods(this._brkCtx),this._brkCtx.update(this._extent))},e.prototype._innerGetBreaks=function(){return this._brkCtx?this._brkCtx.breaks:[]},e.prototype.hasBreaks=function(){return this._brkCtx?this._brkCtx.hasBreaks():!1},e.prototype._getExtentSpanWithBreaks=function(){return this._brkCtx&&this._brkCtx.hasBreaks()?this._brkCtx.getExtentSpan():this._extent[1]-this._extent[0]},e.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},e.prototype.isBlank=function(){return this._isBlank},e.prototype.setBlank=function(t){this._isBlank=t},e}();jT(ku);var g$e=0,Ly=function(){function e(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++g$e,this._onCollect=t.onCollect}return e.createByAxisModel=function(t){var r=t.option,n=r.data,i=n&&se(n,m$e);return new e({categories:i,needCollect:!i,deduplication:r.dedplication!==!1})},e.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},e.prototype.parseAndCollect=function(t){var r,n=this._needCollect;if(!pe(t)&&!n)return t;if(n&&!this._deduplication)return r=this.categories.length,this.categories[r]=t,this._onCollect&&this._onCollect(t,r),r;var i=this._getOrCreateMap();return r=i.get(t),r==null&&(n?(r=this.categories.length,this.categories[r]=t,i.set(t,r),this._onCollect&&this._onCollect(t,r)):r=NaN),r},e.prototype._getOrCreateMap=function(){return this._map||(this._map=_e(this.categories))},e}();function m$e(e){return ke(e)&&e.value!=null?e.value:e+""}var nv=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;n.type="ordinal";var i=n.getSetting("ordinalMeta");return i||(i=new Ly({})),ae(i)&&(i=new Ly({categories:se(i,function(a){return ke(a)?a.value:a})})),n._ordinalMeta=i,n._extent=n.getSetting("extent")||[0,i.categories.length-1],n}return t.prototype.parse=function(r){return r==null?NaN:pe(r)?this._ordinalMeta.getOrdinal(r):Math.round(r)},t.prototype.contain=function(r){return Lj(r,this._extent)&&r>=0&&r=0&&r=0&&r=r},t.prototype.getOrdinalMeta=function(){return this._ordinalMeta},t.prototype.calcNiceTicks=function(){},t.prototype.calcNiceExtent=function(){},t.type="ordinal",t}(ku);ku.registerClass(nv);var cl=gr,Ys=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="interval",r._interval=0,r._intervalPrecision=2,r}return t.prototype.parse=function(r){return r==null||r===""?NaN:Number(r)},t.prototype.contain=function(r){return Lj(r,this._extent)},t.prototype.normalize=function(r){return this._calculator.normalize(r,this._extent)},t.prototype.scale=function(r){return this._calculator.scale(r,this._extent)},t.prototype.getInterval=function(){return this._interval},t.prototype.setInterval=function(r){this._interval=r,this._niceExtent=this._extent.slice(),this._intervalPrecision=ky(r)},t.prototype.getTicks=function(r){r=r||{};var n=this._interval,i=this._extent,a=this._niceExtent,o=this._intervalPrecision,s=Sr(),l=[];if(!n)return l;if(r.breakTicks==="only_break"&&s)return s.addBreaksToTicks(l,this._brkCtx.breaks,this._extent),l;var u=1e4;i[0]=0&&(f=cl(f+h*n,o))}if(l.length>0&&f===l[l.length-1].value)break;if(l.length>u)return[]}var d=l.length?l[l.length-1].value:a[1];return i[1]>d&&(r.expandToNicedExtent?l.push({value:cl(d+n,o)}):l.push({value:i[1]})),s&&s.pruneTicksByBreak(r.pruneByBreak,l,this._brkCtx.breaks,function(v){return v.value},this._interval,this._extent),r.breakTicks!=="none"&&s&&s.addBreaksToTicks(l,this._brkCtx.breaks,this._extent),l},t.prototype.getMinorTicks=function(r){for(var n=this.getTicks({expandToNicedExtent:!0}),i=[],a=this.getExtent(),o=1;oa[0]&&v0&&(a=a===null?s:Math.min(a,s))}r[n]=a}}return r}function ate(e){var t=_$e(e),r=[];return R(e,function(n){var i=n.coordinateSystem,a=i.getBaseAxis(),o=a.getExtent(),s;if(a.type==="category")s=a.getBandWidth();else if(a.type==="value"||a.type==="time"){var l=a.dim+"_"+a.index,u=t[l],c=Math.abs(o[1]-o[0]),f=a.scale.getExtent(),h=Math.abs(f[1]-f[0]);s=u?c/h*u:c}else{var d=n.getData();s=Math.abs(o[1]-o[0])/d.count()}var v=ve(n.get("barWidth"),s),g=ve(n.get("barMaxWidth"),s),m=ve(n.get("barMinWidth")||(cte(n)?.5:1),s),x=n.get("barGap"),_=n.get("barCategoryGap"),b=n.get("defaultBarGap");r.push({bandWidth:s,barWidth:v,barMaxWidth:g,barMinWidth:m,barGap:x,barCategoryGap:_,defaultBarGap:b,axisKey:Ij(a),stackId:nte(n)})}),ote(r)}function ote(e){var t={};R(e,function(n,i){var a=n.axisKey,o=n.bandWidth,s=t[a]||{bandWidth:o,remainedWidth:o,autoWidthCount:0,categoryGap:null,gap:n.defaultBarGap||0,stacks:{}},l=s.stacks;t[a]=s;var u=n.stackId;l[u]||s.autoWidthCount++,l[u]=l[u]||{width:0,maxWidth:0};var c=n.barWidth;c&&!l[u].width&&(l[u].width=c,c=Math.min(s.remainedWidth,c),s.remainedWidth-=c);var f=n.barMaxWidth;f&&(l[u].maxWidth=f);var h=n.barMinWidth;h&&(l[u].minWidth=h);var d=n.barGap;d!=null&&(s.gap=d);var v=n.barCategoryGap;v!=null&&(s.categoryGap=v)});var r={};return R(t,function(n,i){r[i]={};var a=n.stacks,o=n.bandWidth,s=n.categoryGap;if(s==null){var l=it(a).length;s=Math.max(35-l*4,15)+"%"}var u=ve(s,o),c=ve(n.gap,1),f=n.remainedWidth,h=n.autoWidthCount,d=(f-u)/(h+(h-1)*c);d=Math.max(d,0),R(a,function(x){var _=x.maxWidth,b=x.minWidth;if(x.width){var S=x.width;_&&(S=Math.min(S,_)),b&&(S=Math.max(S,b)),x.width=S,f-=S+c*S,h--}else{var S=d;_&&_S&&(S=b),S!==d&&(x.width=S,f-=S+c*S,h--)}}),d=(f-u)/(h+(h-1)*c),d=Math.max(d,0);var v=0,g;R(a,function(x,_){x.width||(x.width=d),g=x,v+=x.width*(1+c)}),g&&(v-=g.width*c);var m=-v/2;R(a,function(x,_){r[i][_]=r[i][_]||{bandWidth:o,offset:m,width:x.width},m+=x.width*(1+c)})}),r}function b$e(e,t,r){if(e&&t){var n=e[Ij(t)];return n}}function ste(e,t){var r=ite(e,t),n=ate(r);R(r,function(i){var a=i.getData(),o=i.coordinateSystem,s=o.getBaseAxis(),l=nte(i),u=n[Ij(s)][l],c=u.offset,f=u.width;a.setLayout({bandWidth:u.bandWidth,offset:c,size:f})})}function lte(e){return{seriesType:e,plan:Zv(),reset:function(t){if(ute(t)){var r=t.getData(),n=t.coordinateSystem,i=n.getBaseAxis(),a=n.getOtherAxis(i),o=r.getDimensionIndex(r.mapDimension(a.dim)),s=r.getDimensionIndex(r.mapDimension(i.dim)),l=t.get("showBackground",!0),u=r.mapDimension(a.dim),c=r.getCalculationInfo("stackResultDimension"),f=Zs(r,u)&&!!r.getCalculationInfo("stackedOnSeries"),h=a.isHorizontal(),d=w$e(i,a),v=cte(t),g=t.get("barMinHeight")||0,m=c&&r.getDimensionIndex(c),x=r.getLayout("size"),_=r.getLayout("offset");return{progress:function(b,S){for(var T=b.count,C=v&&Mo(T*3),A=v&&l&&Mo(T*3),P=v&&Mo(T),I=n.master.getRect(),k=h?I.width:I.height,E,D=S.getStore(),N=0;(E=b.next())!=null;){var z=D.get(f?m:o,E),V=D.get(s,E),F=d,$=void 0;f&&($=+z-D.get(o,E));var B=void 0,Z=void 0,W=void 0,G=void 0;if(h){var Y=n.dataToPoint([z,V]);if(f){var K=n.dataToPoint([$,V]);F=K[0]}B=F,Z=Y[1]+_,W=Y[0]-F,G=x,Math.abs(W)0?r:1:r))}var S$e=function(e,t,r,n){for(;r>>1;e[i][1]i&&(this._approxInterval=i);var o=s_.length,s=Math.min(S$e(s_,this._approxInterval,0,o),o-1);this._interval=s_[s][1],this._intervalPrecision=ky(this._interval),this._minLevelUnit=s_[Math.max(s-1,0)][0]},t.prototype.parse=function(r){return ot(r)?r:+qo(r)},t.prototype.contain=function(r){return Lj(r,this._extent)},t.prototype.normalize=function(r){return this._calculator.normalize(r,this._extent)},t.prototype.scale=function(r){return this._calculator.scale(r,this._extent)},t.type="time",t}(Ys),s_=[["second",qN],["minute",KN],["hour",em],["quarter-day",em*6],["half-day",em*12],["day",ta*1.2],["half-week",ta*3.5],["week",ta*7],["month",ta*31],["quarter",ta*95],["half-year",NV/2],["year",NV]];function fte(e,t,r,n){return bw(new Date(t),e,n).getTime()===bw(new Date(r),e,n).getTime()}function T$e(e,t){return e/=ta,e>16?16:e>7.5?7:e>3.5?4:e>1.5?2:1}function C$e(e){var t=30*ta;return e/=t,e>6?6:e>3?3:e>2?2:1}function A$e(e){return e/=em,e>12?12:e>6?6:e>3.5?4:e>2?2:1}function U6(e,t){return e/=t?KN:qN,e>30?30:e>20?20:e>15?15:e>10?10:e>5?5:e>2?2:1}function M$e(e){return CN(e,!0)}function P$e(e,t,r){var n=Math.max(0,We(xi,t)-1);return bw(new Date(e),xi[n],r).getTime()}function k$e(e,t){var r=new Date(0);r[e](1);var n=r.getTime();r[e](1+t);var i=r.getTime()-n;return function(a,o){return Math.max(0,Math.round((o-a)/i))}}function L$e(e,t,r,n,i,a){var o=1e4,s=V3e,l=0;function u(N,z,V,F,$,B,Z){for(var W=k$e($,N),G=z,Y=new Date(G);Go));)if(Y[$](Y[F]()+N),G=Y.getTime(),a){var K=a.calcNiceTickMultiple(G,W);K>0&&(Y[$](Y[F]()+K*N),G=Y.getTime())}Z.push({value:G,notAdd:!0})}function c(N,z,V){var F=[],$=!z.length;if(!fte(tm(N),n[0],n[1],r)){$&&(z=[{value:P$e(n[0],N,r)},{value:n[1]}]);for(var B=0;B=n[0]&&Z<=n[1]&&u(G,Z,W,Y,K,ee,F),N==="year"&&V.length>1&&B===0&&V.unshift({value:V[0].value-G})}}for(var B=0;B=n[0]&&S<=n[1]&&d++)}var T=i/t;if(d>T*1.5&&v>T/1.5||(f.push(_),d>T||e===s[g]))break}h=[]}}}for(var C=ht(se(f,function(N){return ht(N,function(z){return z.value>=n[0]&&z.value<=n[1]&&!z.notAdd})}),function(N){return N.length>0}),A=[],P=C.length-1,g=0;g0;)a*=10;var s=[tO(O$e(n[0]/a)*a),tO(I$e(n[1]/a)*a)];this._interval=a,this._intervalPrecision=ky(a),this._niceExtent=s}},t.prototype.calcNiceExtent=function(r){e.prototype.calcNiceExtent.call(this,r),this._fixMin=r.fixMin,this._fixMax=r.fixMax},t.prototype.contain=function(r){return r=u_(r)/u_(this.base),e.prototype.contain.call(this,r)},t.prototype.normalize=function(r){return r=u_(r)/u_(this.base),e.prototype.normalize.call(this,r)},t.prototype.scale=function(r){return r=e.prototype.scale.call(this,r),l_(this.base,r)},t.prototype.setBreaksFromOption=function(r){var n=Sr();if(n){var i=n.logarithmicParseBreaksFromOption(r,this.base,ge(this.parse,this)),a=i.parsedOriginal,o=i.parsedLogged;this._originalScale._innerSetBreak(a),this._innerSetBreak(o)}},t.type="log",t}(Ys);function c_(e,t){return tO(e,za(t))}ku.registerClass(hte);var E$e=function(){function e(t,r,n){this._prepareParams(t,r,n)}return e.prototype._prepareParams=function(t,r,n){n[1]0&&l>0&&!u&&(s=0),s<0&&l<0&&!c&&(l=0));var h=this._determinedMin,d=this._determinedMax;return h!=null&&(s=h,u=!0),d!=null&&(l=d,c=!0),{min:s,max:l,minFixed:u,maxFixed:c,isBlank:f}},e.prototype.modifyDataMinMax=function(t,r){this[N$e[t]]=r},e.prototype.setDeterminedMinMax=function(t,r){var n=D$e[t];this[n]=r},e.prototype.freeze=function(){this.frozen=!0},e}(),D$e={min:"_determinedMin",max:"_determinedMax"},N$e={min:"_dataMin",max:"_dataMax"};function dte(e,t,r){var n=e.rawExtentInfo;return n||(n=new E$e(e,t,r),e.rawExtentInfo=n,n)}function f_(e,t){return t==null?null:gn(t)?NaN:e.parse(t)}function vte(e,t){var r=e.type,n=dte(e,t,e.getExtent()).calculate();e.setBlank(n.isBlank);var i=n.min,a=n.max,o=t.ecModel;if(o&&r==="time"){var s=ite("bar",o),l=!1;if(R(s,function(f){l=l||f.getBaseAxis()===t.axis}),l){var u=ate(s),c=j$e(i,a,t,u);i=c.min,a=c.max}}return{extent:[i,a],fixMin:n.minFixed,fixMax:n.maxFixed}}function j$e(e,t,r,n){var i=r.axis.getExtent(),a=Math.abs(i[1]-i[0]),o=b$e(n,r.axis);if(o===void 0)return{min:e,max:t};var s=1/0;R(o,function(d){s=Math.min(d.offset,s)});var l=-1/0;R(o,function(d){l=Math.max(d.offset+d.width,l)}),s=Math.abs(s),l=Math.abs(l);var u=s+l,c=t-e,f=1-(s+l)/a,h=c/f-c;return t+=h*(l/u),e-=h*(s/u),{min:e,max:t}}function pf(e,t){var r=t,n=vte(e,r),i=n.extent,a=r.get("splitNumber");e instanceof hte&&(e.base=r.get("logBase"));var o=e.type,s=r.get("interval"),l=o==="interval"||o==="time";e.setBreaksFromOption(gte(r)),e.setExtent(i[0],i[1]),e.calcNiceExtent({splitNumber:a,fixMin:n.fixMin,fixMax:n.fixMax,minInterval:l?r.get("minInterval"):null,maxInterval:l?r.get("maxInterval"):null}),s!=null&&e.setInterval&&e.setInterval(s)}function b0(e,t){if(t=t||e.get("type"),t)switch(t){case"category":return new nv({ordinalMeta:e.getOrdinalMeta?e.getOrdinalMeta():e.getCategories(),extent:[1/0,-1/0]});case"time":return new Oj({locale:e.ecModel.getLocaleModel(),useUTC:e.ecModel.get("useUTC")});default:return new(ku.getClass(t)||Ys)}}function R$e(e){var t=e.scale.getExtent(),r=t[0],n=t[1];return!(r>0&&n>0||r<0&&n<0)}function Kv(e){var t=e.getLabelModel().get("formatter");if(e.type==="time"){var r=G3e(t);return function(i,a){return e.scale.getFormattedLabel(i,a,r)}}else{if(pe(t))return function(i){var a=e.scale.getLabel(i),o=t.replace("{value}",a??"");return o};if(Ce(t)){if(e.type==="category")return function(i,a){return t(Ew(e,i),i.value-e.scale.getExtent()[0],null)};var n=Sr();return function(i,a){var o=null;return n&&(o=n.makeAxisLabelFormatterParamBreak(o,i.break)),t(Ew(e,i),a,o)}}else return function(i){return e.scale.getLabel(i)}}}function Ew(e,t){return e.type==="category"?e.scale.getLabel(t):t.value}function Ej(e){var t=e.get("interval");return t??"auto"}function pte(e){return e.type==="category"&&Ej(e.getLabelModel())===0}function Dw(e,t){var r={};return R(e.mapDimensionsAll(t),function(n){r[kj(e,n)]=!0}),it(r)}function B$e(e,t,r){t&&R(Dw(t,r),function(n){var i=t.getApproximateExtent(n);i[0]e[1]&&(e[1]=i[1])})}function iv(e){return e==="middle"||e==="center"}function Iy(e){return e.getShallow("show")}function gte(e){var t=e.get("breaks",!0);if(t!=null)return!Sr()||!z$e(e.axis)?void 0:t}function z$e(e){return(e.dim==="x"||e.dim==="y"||e.dim==="z"||e.dim==="single")&&e.type!=="category"}var Jv=function(){function e(){}return e.prototype.getNeedCrossZero=function(){var t=this.option;return!t.scale},e.prototype.getCoordSysModel=function(){},e}();function $$e(e){return Jo(null,e)}var F$e={isDimensionStacked:Zs,enableDataStack:tte,getStackedDimension:kj};function V$e(e,t){var r=t;t instanceof et||(r=new et(t));var n=b0(r);return n.setExtent(e[0],e[1]),pf(n,r),n}function G$e(e){cr(e,Jv)}function W$e(e,t){return t=t||{},Mt(e,null,null,t.state!=="normal")}const H$e=Object.freeze(Object.defineProperty({__proto__:null,createDimensions:t$e,createList:$$e,createScale:V$e,createSymbol:xr,createTextStyle:W$e,dataStack:F$e,enableHoverEmphasis:Jl,getECData:Ne,getLayoutRect:zt,mixinAxisModelCommonMethods:G$e},Symbol.toStringTag,{value:"Module"}));var U$e=1e-8;function Z6(e,t){return Math.abs(e-t)i&&(n=o,i=l)}if(n)return Y$e(n.exterior);var u=this.getBoundingRect();return[u.x+u.width/2,u.y+u.height/2]},t.prototype.getBoundingRect=function(r){var n=this._rect;if(n&&!r)return n;var i=[1/0,1/0],a=[-1/0,-1/0],o=this.geometries;return R(o,function(s){s.type==="polygon"?Y6(s.exterior,i,a,r):R(s.points,function(l){Y6(l,i,a,r)})}),isFinite(i[0])&&isFinite(i[1])&&isFinite(a[0])&&isFinite(a[1])||(i[0]=i[1]=a[0]=a[1]=0),n=new Oe(i[0],i[1],a[0]-i[0],a[1]-i[1]),r||(this._rect=n),n},t.prototype.contain=function(r){var n=this.getBoundingRect(),i=this.geometries;if(!n.contain(r[0],r[1]))return!1;e:for(var a=0,o=i.length;a>1^-(s&1),l=l>>1^-(l&1),s+=i,l+=a,i=s,a=l,n.push([s/r,l/r])}return n}function rO(e,t){return e=q$e(e),se(ht(e.features,function(r){return r.geometry&&r.properties&&r.geometry.coordinates.length>0}),function(r){var n=r.properties,i=r.geometry,a=[];switch(i.type){case"Polygon":var o=i.coordinates;a.push(new X6(o[0],o.slice(1)));break;case"MultiPolygon":R(i.coordinates,function(l){l[0]&&a.push(new X6(l[0],l.slice(1)))});break;case"LineString":a.push(new q6([i.coordinates]));break;case"MultiLineString":a.push(new q6(i.coordinates))}var s=new yte(n[t||"name"],a,n.cp);return s.properties=n,s})}const K$e=Object.freeze(Object.defineProperty({__proto__:null,MAX_SAFE_INTEGER:gI,asc:Ai,getPercentWithPrecision:gRe,getPixelPrecision:SN,getPrecision:za,getPrecisionSafe:pJ,isNumeric:AN,isRadianAroundZero:Kd,linearMap:gt,nice:CN,numericToNumber:Go,parseDate:qo,parsePercent:ve,quantile:ub,quantity:mJ,quantityExponent:NT,reformIntervals:mI,remRadian:TN,round:gr},Symbol.toStringTag,{value:"Module"})),J$e=Object.freeze(Object.defineProperty({__proto__:null,format:y0,parse:qo,roundTime:bw},Symbol.toStringTag,{value:"Module"})),Q$e=Object.freeze(Object.defineProperty({__proto__:null,Arc:p0,BezierCurve:$v,BoundingRect:Oe,Circle:Ko,CompoundPath:g0,Ellipse:v0,Group:Me,Image:Yr,IncrementalDisplayable:nQ,Line:mr,LinearGradient:Pf,Polygon:bn,Polyline:an,RadialGradient:zN,Rect:Xe,Ring:zv,Sector:_n,Text:at,clipPointsByRect:GN,clipRectByRect:lQ,createIcon:Vv,extendPath:oQ,extendShape:aQ,getShapeClass:wy,getTransform:Ql,initProps:Dt,makeImage:FN,makePath:Qd,mergePath:Si,registerShape:_a,resizePath:VN,updateProps:lt},Symbol.toStringTag,{value:"Module"})),eFe=Object.freeze(Object.defineProperty({__proto__:null,addCommas:ij,capitalFirst:J3e,encodeHTML:In,formatTime:K3e,formatTpl:oj,getTextRect:X3e,getTooltipMarker:CQ,normalizeCssArray:Hv,toCamelCase:aj,truncateText:XRe},Symbol.toStringTag,{value:"Module"})),tFe=Object.freeze(Object.defineProperty({__proto__:null,bind:ge,clone:Ae,curry:Fe,defaults:Pe,each:R,extend:ne,filter:ht,indexOf:We,inherits:pN,isArray:ae,isFunction:Ce,isObject:ke,isString:pe,map:se,merge:He,reduce:da},Symbol.toStringTag,{value:"Module"}));var rFe=Je(),nm=Je(),Ja={estimate:1,determine:2};function Nw(e){return{out:{noPxChangeTryDetermine:[]},kind:e}}function _te(e,t){var r=se(t,function(n){return e.scale.parse(n)});return e.type==="time"&&r.length>0&&(r.sort(),r.unshift(r[0]),r.push(r[r.length-1])),r}function nFe(e,t){var r=e.getLabelModel().get("customValues");if(r){var n=Kv(e),i=e.scale.getExtent(),a=_te(e,r),o=ht(a,function(s){return s>=i[0]&&s<=i[1]});return{labels:se(o,function(s){var l={value:s};return{formattedLabel:n(l),rawLabel:e.scale.getLabel(l),tickValue:s,time:void 0,break:void 0}})}}return e.type==="category"?aFe(e,t):sFe(e)}function iFe(e,t,r){var n=e.getTickModel().get("customValues");if(n){var i=e.scale.getExtent(),a=_te(e,n);return{ticks:ht(a,function(o){return o>=i[0]&&o<=i[1]})}}return e.type==="category"?oFe(e,t):{ticks:se(e.scale.getTicks(r),function(o){return o.value})}}function aFe(e,t){var r=e.getLabelModel(),n=bte(e,r,t);return!r.get("show")||e.scale.isBlank()?{labels:[]}:n}function bte(e,t,r){var n=uFe(e),i=Ej(t),a=r.kind===Ja.estimate;if(!a){var o=Ste(n,i);if(o)return o}var s,l;Ce(i)?s=Ate(e,i):(l=i==="auto"?cFe(e,r):i,s=Cte(e,l));var u={labels:s,labelCategoryInterval:l};return a?r.out.noPxChangeTryDetermine.push(function(){return nO(n,i,u),!0}):nO(n,i,u),u}function oFe(e,t){var r=lFe(e),n=Ej(t),i=Ste(r,n);if(i)return i;var a,o;if((!t.get("show")||e.scale.isBlank())&&(a=[]),Ce(n))a=Ate(e,n,!0);else if(n==="auto"){var s=bte(e,e.getLabelModel(),Nw(Ja.determine));o=s.labelCategoryInterval,a=se(s.labels,function(l){return l.tickValue})}else o=n,a=Cte(e,o,!0);return nO(r,n,{ticks:a,tickCategoryInterval:o})}function sFe(e){var t=e.scale.getTicks(),r=Kv(e);return{labels:se(t,function(n,i){return{formattedLabel:r(n,i),rawLabel:e.scale.getLabel(n),tickValue:n.value,time:n.time,break:n.break}})}}var lFe=wte("axisTick"),uFe=wte("axisLabel");function wte(e){return function(r){return nm(r)[e]||(nm(r)[e]={list:[]})}}function Ste(e,t){for(var r=0;rc&&(u=Math.max(1,Math.floor(l/c)));for(var f=s[0],h=e.dataToCoord(f+1)-e.dataToCoord(f),d=Math.abs(h*Math.cos(a)),v=Math.abs(h*Math.sin(a)),g=0,m=0;f<=s[1];f+=u){var x=0,_=0,b=ET(i({value:f}),n.font,"center","top");x=b.width*1.3,_=b.height*1.3,g=Math.max(g,x,7),m=Math.max(m,_,7)}var S=g/d,T=m/v;isNaN(S)&&(S=1/0),isNaN(T)&&(T=1/0);var C=Math.max(0,Math.floor(Math.min(S,T)));if(r===Ja.estimate)return t.out.noPxChangeTryDetermine.push(ge(hFe,null,e,C,l)),C;var A=Tte(e,C,l);return A??C}function hFe(e,t,r){return Tte(e,t,r)==null}function Tte(e,t,r){var n=rFe(e.model),i=e.getExtent(),a=n.lastAutoInterval,o=n.lastTickCount;if(a!=null&&o!=null&&Math.abs(a-t)<=1&&Math.abs(o-r)<=1&&a>t&&n.axisExtent0===i[0]&&n.axisExtent1===i[1])return a;n.lastTickCount=r,n.lastAutoInterval=t,n.axisExtent0=i[0],n.axisExtent1=i[1]}function dFe(e){var t=e.getLabelModel();return{axisRotate:e.getRotate?e.getRotate():e.isHorizontal&&!e.isHorizontal()?90:0,labelRotate:t.get("rotate")||0,font:t.getFont()}}function Cte(e,t,r){var n=Kv(e),i=e.scale,a=i.getExtent(),o=e.getLabelModel(),s=[],l=Math.max((t||0)+1,1),u=a[0],c=i.count();u!==0&&l>1&&c/l>2&&(u=Math.round(Math.ceil(u/l)*l));var f=pte(e),h=o.get("showMinLabel")||f,d=o.get("showMaxLabel")||f;h&&u!==a[0]&&g(a[0]);for(var v=u;v<=a[1];v+=l)g(v);d&&v-l!==a[1]&&g(a[1]);function g(m){var x={value:m};s.push(r?m:{formattedLabel:n(x),rawLabel:i.getLabel(x),tickValue:m,time:void 0,break:void 0})}return s}function Ate(e,t,r){var n=e.scale,i=Kv(e),a=[];return R(n.getTicks(),function(o){var s=n.getLabel(o),l=o.value;t(o.value,s)&&a.push(r?l:{formattedLabel:i(o),rawLabel:s,tickValue:l,time:void 0,break:void 0})}),a}var K6=[0,1],ba=function(){function e(t,r,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=r,this._extent=n||[0,0]}return e.prototype.contain=function(t){var r=this._extent,n=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]);return t>=n&&t<=i},e.prototype.containData=function(t){return this.scale.contain(this.scale.parse(t))},e.prototype.getExtent=function(){return this._extent.slice()},e.prototype.getPixelPrecision=function(t){return SN(t||this.scale.getExtent(),this._extent)},e.prototype.setExtent=function(t,r){var n=this._extent;n[0]=t,n[1]=r},e.prototype.dataToCoord=function(t,r){var n=this._extent,i=this.scale;return t=i.normalize(i.parse(t)),this.onBand&&i.type==="ordinal"&&(n=n.slice(),J6(n,i.count())),gt(t,K6,n,r)},e.prototype.coordToData=function(t,r){var n=this._extent,i=this.scale;this.onBand&&i.type==="ordinal"&&(n=n.slice(),J6(n,i.count()));var a=gt(t,n,K6,r);return this.scale.scale(a)},e.prototype.pointToData=function(t,r){},e.prototype.getTicksCoords=function(t){t=t||{};var r=t.tickModel||this.getTickModel(),n=iFe(this,r,{breakTicks:t.breakTicks,pruneByBreak:t.pruneByBreak}),i=n.ticks,a=se(i,function(s){return{coord:this.dataToCoord(this.scale.type==="ordinal"?this.scale.getRawOrdinalNumber(s):s),tickValue:s}},this),o=r.get("alignWithLabel");return vFe(this,a,o,t.clamp),a},e.prototype.getMinorTicksCoords=function(){if(this.scale.type==="ordinal")return[];var t=this.model.getModel("minorTick"),r=t.get("splitNumber");r>0&&r<100||(r=5);var n=this.scale.getMinorTicks(r),i=se(n,function(a){return se(a,function(o){return{coord:this.dataToCoord(o),tickValue:o}},this)},this);return i},e.prototype.getViewLabels=function(t){return t=t||Nw(Ja.determine),nFe(this,t).labels},e.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},e.prototype.getTickModel=function(){return this.model.getModel("axisTick")},e.prototype.getBandWidth=function(){var t=this._extent,r=this.scale.getExtent(),n=r[1]-r[0]+(this.onBand?1:0);n===0&&(n=1);var i=Math.abs(t[1]-t[0]);return Math.abs(i)/n},e.prototype.calculateCategoryInterval=function(t){return t=t||Nw(Ja.determine),fFe(this,t)},e}();function J6(e,t){var r=e[1]-e[0],n=t,i=r/n/2;e[0]+=i,e[1]-=i}function vFe(e,t,r,n){var i=t.length;if(!e.onBand||r||!i)return;var a=e.getExtent(),o,s;if(i===1)t[0].coord=a[0],t[0].onBand=!0,o=t[1]={coord:a[1],tickValue:t[0].tickValue,onBand:!0};else{var l=t[i-1].tickValue-t[0].tickValue,u=(t[i-1].coord-t[0].coord)/l;R(t,function(d){d.coord-=u/2,d.onBand=!0});var c=e.scale.getExtent();s=1+c[1]-t[i-1].tickValue,o={coord:t[i-1].coord+u*s,tickValue:c[1]+1,onBand:!0},t.push(o)}var f=a[0]>a[1];h(t[0].coord,a[0])&&(n?t[0].coord=a[0]:t.shift()),n&&h(a[0],t[0].coord)&&t.unshift({coord:a[0],onBand:!0}),h(a[1],o.coord)&&(n?o.coord=a[1]:t.pop()),n&&h(o.coord,a[1])&&t.push({coord:a[1],onBand:!0});function h(d,v){return d=gr(d),v=gr(v),f?d>v:di&&(i+=Yp);var d=Math.atan2(s,o);if(d<0&&(d+=Yp),d>=n&&d<=i||d+Yp>=n&&d+Yp<=i)return l[0]=c,l[1]=f,u-r;var v=r*Math.cos(n)+e,g=r*Math.sin(n)+t,m=r*Math.cos(i)+e,x=r*Math.sin(i)+t,_=(v-o)*(v-o)+(g-s)*(g-s),b=(m-o)*(m-o)+(x-s)*(x-s);return _0){t=t/180*Math.PI,$a.fromArray(e[0]),Ot.fromArray(e[1]),dr.fromArray(e[2]),Ie.sub(Po,$a,Ot),Ie.sub(wo,dr,Ot);var r=Po.len(),n=wo.len();if(!(r<.001||n<.001)){Po.scale(1/r),wo.scale(1/n);var i=Po.dot(wo),a=Math.cos(t);if(a1&&Ie.copy(Fn,dr),Fn.toArray(e[1])}}}}function TFe(e,t,r){if(r<=180&&r>0){r=r/180*Math.PI,$a.fromArray(e[0]),Ot.fromArray(e[1]),dr.fromArray(e[2]),Ie.sub(Po,Ot,$a),Ie.sub(wo,dr,Ot);var n=Po.len(),i=wo.len();if(!(n<.001||i<.001)){Po.scale(1/n),wo.scale(1/i);var a=Po.dot(t),o=Math.cos(r);if(a=l)Ie.copy(Fn,dr);else{Fn.scaleAndAdd(wo,s/Math.tan(Math.PI/2-c));var f=dr.x!==Ot.x?(Fn.x-Ot.x)/(dr.x-Ot.x):(Fn.y-Ot.y)/(dr.y-Ot.y);if(isNaN(f))return;f<0?Ie.copy(Fn,Ot):f>1&&Ie.copy(Fn,dr)}Fn.toArray(e[1])}}}}function tM(e,t,r,n){var i=r==="normal",a=i?e:e.ensureState(r);a.ignore=t;var o=n.get("smooth");o&&o===!0&&(o=.3),a.shape=a.shape||{},o>0&&(a.shape.smooth=o);var s=n.getModel("lineStyle").getLineStyle();i?e.useStyle(s):a.style=s}function CFe(e,t){var r=t.smooth,n=t.points;if(n)if(e.moveTo(n[0][0],n[0][1]),r>0&&n.length>=3){var i=xs(n[0],n[1]),a=xs(n[1],n[2]);if(!i||!a){e.lineTo(n[1][0],n[1][1]),e.lineTo(n[2][0],n[2][1]);return}var o=Math.min(i,a)*r,s=Zg([],n[1],n[0],o/i),l=Zg([],n[1],n[2],o/a),u=Zg([],s,l,.5);e.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),e.bezierCurveTo(l[0],l[1],l[0],l[1],n[2][0],n[2][1])}else for(var c=1;c0){S(k*I,0,a);var E=k+A;E<0&&T(-E*I,1)}else T(-A*I,1)}}function S(A,P,I){A!==0&&(c=!0);for(var k=P;k0)for(var E=0;E0;E--){var V=I[E-1]*z;S(-V,E,a)}}}function C(A){var P=A<0?-1:1;A=Math.abs(A);for(var I=Math.ceil(A/(a-1)),k=0;k0?S(I,0,k+1):S(-I,a-k-1,a),A-=I,A<=0)return}return c}function PFe(e){for(var t=0;t=0&&n.attr(a.oldLayoutSelect),We(h,"emphasis")>=0&&n.attr(a.oldLayoutEmphasis)),lt(n,u,r,l)}else if(n.attr(u),!Gv(n).valueAnimation){var f=be(n.style.opacity,1);n.style.opacity=0,Dt(n,{style:{opacity:f}},r,l)}if(a.oldLayout=u,n.states.select){var d=a.oldLayoutSelect={};h_(d,u,d_),h_(d,n.states.select,d_)}if(n.states.emphasis){var v=a.oldLayoutEmphasis={};h_(v,u,d_),h_(v,n.states.emphasis,d_)}vQ(n,l,c,r,r)}if(i&&!i.ignore&&!i.invisible){var a=IFe(i),o=a.oldLayout,g={points:i.shape.points};o?(i.attr({shape:o}),lt(i,{shape:g},r)):(i.setShape(g),i.style.strokePercent=0,Dt(i,{style:{strokePercent:1}},r)),a.oldLayout=g}},e}(),iM=Je();function EFe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){var i=iM(r).labelManager;i||(i=iM(r).labelManager=new OFe),i.clearLabels()}),e.registerUpdateLifecycle("series:layoutlabels",function(t,r,n){var i=iM(r).labelManager;n.updatedSeries.forEach(function(a){i.addLabelsOfSeries(r.getViewOfSeriesModel(a))}),i.updateLayoutConfig(r),i.layout(r),i.processLabelsOverall()})}var aM=Math.sin,oM=Math.cos,Ete=Math.PI,ac=Math.PI*2,DFe=180/Ete,Dte=function(){function e(){}return e.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},e.prototype.moveTo=function(t,r){this._add("M",t,r)},e.prototype.lineTo=function(t,r){this._add("L",t,r)},e.prototype.bezierCurveTo=function(t,r,n,i,a,o){this._add("C",t,r,n,i,a,o)},e.prototype.quadraticCurveTo=function(t,r,n,i){this._add("Q",t,r,n,i)},e.prototype.arc=function(t,r,n,i,a,o){this.ellipse(t,r,n,n,0,i,a,o)},e.prototype.ellipse=function(t,r,n,i,a,o,s,l){var u=s-o,c=!l,f=Math.abs(u),h=Nl(f-ac)||(c?u>=ac:-u>=ac),d=u>0?u%ac:u%ac+ac,v=!1;h?v=!0:Nl(f)?v=!1:v=d>=Ete==!!c;var g=t+n*oM(o),m=r+i*aM(o);this._start&&this._add("M",g,m);var x=Math.round(a*DFe);if(h){var _=1/this._p,b=(c?1:-1)*(ac-_);this._add("A",n,i,x,1,+c,t+n*oM(o+b),r+i*aM(o+b)),_>.01&&this._add("A",n,i,x,0,+c,g,m)}else{var S=t+n*oM(s),T=r+i*aM(s);this._add("A",n,i,x,+v,+c,S,T)}},e.prototype.rect=function(t,r,n,i){this._add("M",t,r),this._add("l",n,0),this._add("l",0,i),this._add("l",-n,0),this._add("Z")},e.prototype.closePath=function(){this._d.length>0&&this._add("Z")},e.prototype._add=function(t,r,n,i,a,o,s,l,u){for(var c=[],f=this._p,h=1;h"}function GFe(e){return""}function Rj(e,t){t=t||{};var r=t.newline?` -`:"";function n(i){var a=i.children,o=i.tag,s=i.attrs,l=i.text;return VFe(o,s)+(o!=="style"?In(l):l||"")+(a?""+r+se(a,function(u){return n(u)}).join(r)+r:"")+GFe(o)}return n(e)}function WFe(e,t,r){r=r||{};var n=r.newline?` -`:"",i=" {"+n,a=n+"}",o=se(it(e),function(l){return l+i+se(it(e[l]),function(u){return u+":"+e[l][u]+";"}).join(n)+a}).join(n),s=se(it(t),function(l){return"@keyframes "+l+i+se(it(t[l]),function(u){return u+i+se(it(t[l][u]),function(c){var f=t[l][u][c];return c==="d"&&(f='path("'+f+'")'),c+":"+f+";"}).join(n)+a}).join(n)+a}).join(n);return!o&&!s?"":[""].join(n)}function lO(e){return{zrId:e,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssStyleCache:{},cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function iG(e,t,r,n){return Gr("svg","root",{width:e,height:t,xmlns:Nte,"xmlns:xlink":jte,version:"1.1",baseProfile:"full",viewBox:n?"0 0 "+e+" "+t:!1},r)}var HFe=0;function Bte(){return HFe++}var aG={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},dc="transform-origin";function UFe(e,t,r){var n=ne({},e.shape);ne(n,t),e.buildPath(r,n);var i=new Dte;return i.reset(iJ(e)),r.rebuildPath(i,1),i.generateStr(),i.getStr()}function ZFe(e,t){var r=t.originX,n=t.originY;(r||n)&&(e[dc]=r+"px "+n+"px")}var YFe={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function zte(e,t){var r=t.zrId+"-ani-"+t.cssAnimIdx++;return t.cssAnims[r]=e,r}function XFe(e,t,r){var n=e.shape.paths,i={},a,o;if(R(n,function(l){var u=lO(r.zrId);u.animation=!0,tC(l,{},u,!0);var c=u.cssAnims,f=u.cssNodes,h=it(c),d=h.length;if(d){o=h[d-1];var v=c[o];for(var g in v){var m=v[g];i[g]=i[g]||{d:""},i[g].d+=m.d||""}for(var x in f){var _=f[x].animation;_.indexOf(o)>=0&&(a=_)}}}),!!a){t.d=!1;var s=zte(i,r);return a.replace(o,s)}}function oG(e){return pe(e)?aG[e]?"cubic-bezier("+aG[e]+")":xN(e)?e:"":""}function tC(e,t,r,n){var i=e.animators,a=i.length,o=[];if(e instanceof g0){var s=XFe(e,t,r);if(s)o.push(s);else if(!a)return}else if(!a)return;for(var l={},u=0;u0}).length){var De=zte(A,r);return De+" "+_[0]+" both"}}for(var m in l){var s=g(l[m]);s&&o.push(s)}if(o.length){var x=r.zrId+"-cls-"+Bte();r.cssNodes["."+x]={animation:o.join(",")},t.class=x}}function qFe(e,t,r){if(!e.ignore)if(e.isSilent()){var n={"pointer-events":"none"};sG(n,t,r)}else{var i=e.states.emphasis&&e.states.emphasis.style?e.states.emphasis.style:{},a=i.fill;if(!a){var o=e.style&&e.style.fill,s=e.states.select&&e.states.select.style&&e.states.select.style.fill,l=e.currentStates.indexOf("select")>=0&&s||o;l&&(a=uw(l))}var u=i.lineWidth;if(u){var c=!i.strokeNoScale&&e.transform?e.transform[0]:1;u=u/c}var n={cursor:"pointer"};a&&(n.fill=a),i.stroke&&(n.stroke=i.stroke),u&&(n["stroke-width"]=u),sG(n,t,r)}}function sG(e,t,r,n){var i=JSON.stringify(e),a=r.cssStyleCache[i];a||(a=r.zrId+"-cls-"+Bte(),r.cssStyleCache[i]=a,r.cssNodes["."+a+":hover"]=e),t.class=t.class?t.class+" "+a:a}var Oy=Math.round;function $te(e){return e&&pe(e.src)}function Fte(e){return e&&Ce(e.toDataURL)}function Bj(e,t,r,n){zFe(function(i,a){var o=i==="fill"||i==="stroke";o&&nJ(a)?Gte(t,e,i,n):o&&bN(a)?Wte(r,e,i,n):e[i]=a,o&&n.ssr&&a==="none"&&(e["pointer-events"]="visible")},t,r,!1),nVe(r,e,n)}function zj(e,t){var r=hJ(t);r&&(r.each(function(n,i){n!=null&&(e[(nG+i).toLowerCase()]=n+"")}),t.isSilent()&&(e[nG+"silent"]="true"))}function lG(e){return Nl(e[0]-1)&&Nl(e[1])&&Nl(e[2])&&Nl(e[3]-1)}function KFe(e){return Nl(e[4])&&Nl(e[5])}function $j(e,t,r){if(t&&!(KFe(t)&&lG(t))){var n=1e4;e.transform=lG(t)?"translate("+Oy(t[4]*n)/n+" "+Oy(t[5]*n)/n+")":Oje(t)}}function uG(e,t,r){for(var n=e.points,i=[],a=0;a"u"){var m="Image width/height must been given explictly in svg-ssr renderer.";xn(h,m),xn(d,m)}else if(h==null||d==null){var x=function(k,E){if(k){var D=k.elm,N=h||E.width,z=d||E.height;k.tag==="pattern"&&(u?(z=1,N/=a.width):c&&(N=1,z/=a.height)),k.attrs.width=N,k.attrs.height=z,D&&(D.setAttribute("width",N),D.setAttribute("height",z))}},_=LN(v,null,e,function(k){l||x(C,k),x(f,k)});_&&_.width&&_.height&&(h=h||_.width,d=d||_.height)}f=Gr("image","img",{href:v,width:h,height:d}),o.width=h,o.height=d}else i.svgElement&&(f=Ae(i.svgElement),o.width=i.svgWidth,o.height=i.svgHeight);if(f){var b,S;l?b=S=1:u?(S=1,b=o.width/a.width):c?(b=1,S=o.height/a.height):o.patternUnits="userSpaceOnUse",b!=null&&!isNaN(b)&&(o.width=b),S!=null&&!isNaN(S)&&(o.height=S);var T=aJ(i);T&&(o.patternTransform=T);var C=Gr("pattern","",o,[f]),A=Rj(C),P=n.patternCache,I=P[A];I||(I=n.zrId+"-p"+n.patternIdx++,P[A]=I,o.id=I,C=n.defs[I]=Gr("pattern",I,o,[f])),t[r]=OT(I)}}function iVe(e,t,r){var n=r.clipPathCache,i=r.defs,a=n[e.id];if(!a){a=r.zrId+"-c"+r.clipPathIdx++;var o={id:a};n[e.id]=a,i[a]=Gr("clipPath",a,o,[Vte(e,r)])}t["clip-path"]=OT(a)}function hG(e){return document.createTextNode(e)}function _c(e,t,r){e.insertBefore(t,r)}function dG(e,t){e.removeChild(t)}function vG(e,t){e.appendChild(t)}function Hte(e){return e.parentNode}function Ute(e){return e.nextSibling}function sM(e,t){e.textContent=t}var pG=58,aVe=120,oVe=Gr("","");function uO(e){return e===void 0}function yo(e){return e!==void 0}function sVe(e,t,r){for(var n={},i=t;i<=r;++i){var a=e[i].key;a!==void 0&&(n[a]=i)}return n}function Tg(e,t){var r=e.key===t.key,n=e.tag===t.tag;return n&&r}function Ey(e){var t,r=e.children,n=e.tag;if(yo(n)){var i=e.elm=Rte(n);if(Fj(oVe,e),ae(r))for(t=0;ta?(v=r[l+1]==null?null:r[l+1].elm,Zte(e,v,r,i,l)):$w(e,t,n,a))}function Ah(e,t){var r=t.elm=e.elm,n=e.children,i=t.children;e!==t&&(Fj(e,t),uO(t.text)?yo(n)&&yo(i)?n!==i&&lVe(r,n,i):yo(i)?(yo(e.text)&&sM(r,""),Zte(r,null,i,0,i.length-1)):yo(n)?$w(r,n,0,n.length-1):yo(e.text)&&sM(r,""):e.text!==t.text&&(yo(n)&&$w(r,n,0,n.length-1),sM(r,t.text)))}function uVe(e,t){if(Tg(e,t))Ah(e,t);else{var r=e.elm,n=Hte(r);Ey(t),n!==null&&(_c(n,t.elm,Ute(r)),$w(n,[e],0,0))}return t}var cVe=0,fVe=function(){function e(t,r,n){if(this.type="svg",this.refreshHover=gG(),this.configLayer=gG(),this.storage=r,this._opts=n=ne({},n),this.root=t,this._id="zr"+cVe++,this._oldVNode=iG(n.width,n.height),t&&!n.ssr){var i=this._viewport=document.createElement("div");i.style.cssText="position:relative;overflow:hidden";var a=this._svgDom=this._oldVNode.elm=Rte("svg");Fj(null,this._oldVNode),i.appendChild(a),t.appendChild(i)}this.resize(n.width,n.height)}return e.prototype.getType=function(){return this.type},e.prototype.getViewportRoot=function(){return this._viewport},e.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},e.prototype.getSvgDom=function(){return this._svgDom},e.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",uVe(this._oldVNode,t),this._oldVNode=t}},e.prototype.renderOneToVNode=function(t){return fG(t,lO(this._id))},e.prototype.renderToVNode=function(t){t=t||{};var r=this.storage.getDisplayList(!0),n=this._width,i=this._height,a=lO(this._id);a.animation=t.animation,a.willUpdate=t.willUpdate,a.compress=t.compress,a.emphasis=t.emphasis,a.ssr=this._opts.ssr;var o=[],s=this._bgVNode=hVe(n,i,this._backgroundColor,a);s&&o.push(s);var l=t.compress?null:this._mainVNode=Gr("g","main",{},[]);this._paintList(r,a,l?l.children:o),l&&o.push(l);var u=se(it(a.defs),function(h){return a.defs[h]});if(u.length&&o.push(Gr("defs","defs",{},u)),t.animation){var c=WFe(a.cssNodes,a.cssAnims,{newline:!0});if(c){var f=Gr("style","stl",{},[],c);o.push(f)}}return iG(n,i,o,t.useViewBox)},e.prototype.renderToString=function(t){return t=t||{},Rj(this.renderToVNode({animation:be(t.cssAnimation,!0),emphasis:be(t.cssEmphasis,!0),willUpdate:!1,compress:!0,useViewBox:be(t.useViewBox,!0)}),{newline:!0})},e.prototype.setBackgroundColor=function(t){this._backgroundColor=t},e.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},e.prototype._paintList=function(t,r,n){for(var i=t.length,a=[],o=0,s,l,u=0,c=0;c=0&&!(h&&l&&h[g]===l[g]);g--);for(var m=v-1;m>g;m--)o--,s=a[o-1];for(var x=g+1;x=s)}}for(var f=this.__startIndex;f15)break}}z.prevElClipPaths&&x.restore()};if(_)if(_.length===0)P=m.__endIndex;else for(var k=d.dpr,E=0;E<_.length;++E){var D=_[E];x.save(),x.beginPath(),x.rect(D.x*k,D.y*k,D.width*k,D.height*k),x.clip(),I(D),x.restore()}else x.save(),I(),x.restore();m.__drawIndex=P,m.__drawIndex0&&t>i[0]){for(l=0;lt);l++);s=n[i[l]]}if(i.splice(l+1,0,t),n[t]=r,!r.virtual)if(s){var u=s.dom;u.nextSibling?o.insertBefore(r.dom,u.nextSibling):o.appendChild(r.dom)}else o.firstChild?o.insertBefore(r.dom,o.firstChild):o.appendChild(r.dom);r.painter||(r.painter=this)}},e.prototype.eachLayer=function(t,r){for(var n=this._zlevelList,i=0;i0?v_:0),this._needsManuallyCompositing),c.__builtin__||MT("ZLevel "+u+" has been used by unkown layer "+c.id),c!==a&&(c.__used=!0,c.__startIndex!==l&&(c.__dirty=!0),c.__startIndex=l,c.incremental?c.__drawIndex=-1:c.__drawIndex=l,r(l),a=c),i.__dirty&wi&&!i.__inHover&&(c.__dirty=!0,c.incremental&&c.__drawIndex<0&&(c.__drawIndex=l))}r(l),this.eachBuiltinLayer(function(f,h){!f.__used&&f.getElementCount()>0&&(f.__dirty=!0,f.__startIndex=f.__endIndex=f.__drawIndex=0),f.__dirty&&f.__drawIndex<0&&(f.__drawIndex=f.__startIndex)})},e.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},e.prototype._clearLayer=function(t){t.clear()},e.prototype.setBackgroundColor=function(t){this._backgroundColor=t,R(this._layers,function(r){r.setUnpainted()})},e.prototype.configLayer=function(t,r){if(r){var n=this._layerConfig;n[t]?He(n[t],r,!0):n[t]=r;for(var i=0;i-1&&(u.style.stroke=u.style.fill,u.style.fill=J.color.neutral00,u.style.lineWidth=2),n},t.type="series.line",t.dependencies=["grid","polar"],t.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:6,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},t}(Tt);function av(e,t){var r=e.mapDimensionsAll("defaultedLabel"),n=r.length;if(n===1){var i=tv(e,t,r[0]);return i!=null?i+"":null}else if(n){for(var a=[],o=0;o=0&&n.push(t[a])}return n.join(" ")}var w0=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;return o.updateData(r,n,i,a),o}return t.prototype._createSymbol=function(r,n,i,a,o,s){this.removeAll();var l=xr(r,-1,-1,2,2,null,s);l.attr({z2:be(o,100),culling:!0,scaleX:a[0]/2,scaleY:a[1]/2}),l.drift=_Ve,this._symbolType=r,this.add(l)},t.prototype.stopSymbolAnimation=function(r){this.childAt(0).stopAnimation(null,r)},t.prototype.getSymbolType=function(){return this._symbolType},t.prototype.getSymbolPath=function(){return this.childAt(0)},t.prototype.highlight=function(){Ws(this.childAt(0))},t.prototype.downplay=function(){Hs(this.childAt(0))},t.prototype.setZ=function(r,n){var i=this.childAt(0);i.zlevel=r,i.z=n},t.prototype.setDraggable=function(r,n){var i=this.childAt(0);i.draggable=r,i.cursor=!n&&r?"move":i.cursor},t.prototype.updateData=function(r,n,i,a){this.silent=!1;var o=r.getItemVisual(n,"symbol")||"circle",s=r.hostModel,l=t.getSymbolSize(r,n),u=t.getSymbolZ2(r,n),c=o!==this._symbolType,f=a&&a.disableAnimation;if(c){var h=r.getItemVisual(n,"symbolKeepAspect");this._createSymbol(o,r,n,l,u,h)}else{var d=this.childAt(0);d.silent=!1;var v={scaleX:l[0]/2,scaleY:l[1]/2};f?d.attr(v):lt(d,v,s,n),ga(d)}if(this._updateCommon(r,n,l,i,a),c){var d=this.childAt(0);if(!f){var v={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:d.style.opacity}};d.scaleX=d.scaleY=0,d.style.opacity=0,Dt(d,v,s,n)}}f&&this.childAt(0).stopAnimation("leave")},t.prototype._updateCommon=function(r,n,i,a,o){var s=this.childAt(0),l=r.hostModel,u,c,f,h,d,v,g,m,x;if(a&&(u=a.emphasisItemStyle,c=a.blurItemStyle,f=a.selectItemStyle,h=a.focus,d=a.blurScope,g=a.labelStatesModels,m=a.hoverScale,x=a.cursorStyle,v=a.emphasisDisabled),!a||r.hasItemOption){var _=a&&a.itemModel?a.itemModel:r.getItemModel(n),b=_.getModel("emphasis");u=b.getModel("itemStyle").getItemStyle(),f=_.getModel(["select","itemStyle"]).getItemStyle(),c=_.getModel(["blur","itemStyle"]).getItemStyle(),h=b.get("focus"),d=b.get("blurScope"),v=b.get("disabled"),g=Nr(_),m=b.getShallow("scale"),x=_.getShallow("cursor")}var S=r.getItemVisual(n,"symbolRotate");s.attr("rotation",(S||0)*Math.PI/180||0);var T=Of(r.getItemVisual(n,"symbolOffset"),i);T&&(s.x=T[0],s.y=T[1]),x&&s.attr("cursor",x);var C=r.getItemVisual(n,"style"),A=C.fill;if(s instanceof Yr){var P=s.style;s.useStyle(ne({image:P.image,x:P.x,y:P.y,width:P.width,height:P.height},C))}else s.__isEmptyBrush?s.useStyle(ne({},C)):s.useStyle(C),s.style.decal=null,s.setColor(A,o&&o.symbolInnerColor),s.style.strokeNoScale=!0;var I=r.getItemVisual(n,"liftZ"),k=this._z2;I!=null?k==null&&(this._z2=s.z2,s.z2+=I):k!=null&&(s.z2=k,this._z2=null);var E=o&&o.useNameLabel;Ur(s,g,{labelFetcher:l,labelDataIndex:n,defaultText:D,inheritColor:A,defaultOpacity:C.opacity});function D(V){return E?r.getName(V):av(r,V)}this._sizeX=i[0]/2,this._sizeY=i[1]/2;var N=s.ensureState("emphasis");N.style=u,s.ensureState("select").style=f,s.ensureState("blur").style=c;var z=m==null||m===!0?Math.max(1.1,3/this._sizeY):isFinite(m)&&m>0?+m:1;N.scaleX=this._sizeX*z,N.scaleY=this._sizeY*z,this.setSymbolScale(1),Gt(this,h,d,v)},t.prototype.setSymbolScale=function(r){this.scaleX=this.scaleY=r},t.prototype.fadeOut=function(r,n,i){var a=this.childAt(0),o=Ne(this).dataIndex,s=i&&i.animation;if(this.silent=a.silent=!0,i&&i.fadeLabel){var l=a.getTextContent();l&&cu(l,{style:{opacity:0}},n,{dataIndex:o,removeOpt:s,cb:function(){a.removeTextContent()}})}else a.removeTextContent();cu(a,{style:{opacity:0},scaleX:0,scaleY:0},n,{dataIndex:o,cb:r,removeOpt:s})},t.getSymbolSize=function(r,n){return Xv(r.getItemVisual(n,"symbolSize"))},t.getSymbolZ2=function(r,n){return r.getItemVisual(n,"z2")},t}(Me);function _Ve(e,t){this.parent.drift(e,t)}function uM(e,t,r,n){return t&&!isNaN(t[0])&&!isNaN(t[1])&&!(n.isIgnore&&n.isIgnore(r))&&!(n.clipShape&&!n.clipShape.contain(t[0],t[1]))&&e.getItemVisual(r,"symbol")!=="none"}function xG(e){return e!=null&&!ke(e)&&(e={isIgnore:e}),e||{}}function _G(e){var t=e.hostModel,r=t.getModel("emphasis");return{emphasisItemStyle:r.getModel("itemStyle").getItemStyle(),blurItemStyle:t.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:t.getModel(["select","itemStyle"]).getItemStyle(),focus:r.get("focus"),blurScope:r.get("blurScope"),emphasisDisabled:r.get("disabled"),hoverScale:r.get("scale"),labelStatesModels:Nr(t),cursorStyle:t.get("cursor")}}var S0=function(){function e(t){this.group=new Me,this._SymbolCtor=t||w0}return e.prototype.updateData=function(t,r){this._progressiveEls=null,r=xG(r);var n=this.group,i=t.hostModel,a=this._data,o=this._SymbolCtor,s=r.disableAnimation,l=_G(t),u={disableAnimation:s},c=r.getSymbolPoint||function(f){return t.getItemLayout(f)};a||n.removeAll(),t.diff(a).add(function(f){var h=c(f);if(uM(t,h,f,r)){var d=new o(t,f,l,u);d.setPosition(h),t.setItemGraphicEl(f,d),n.add(d)}}).update(function(f,h){var d=a.getItemGraphicEl(h),v=c(f);if(!uM(t,v,f,r)){n.remove(d);return}var g=t.getItemVisual(f,"symbol")||"circle",m=d&&d.getSymbolType&&d.getSymbolType();if(!d||m&&m!==g)n.remove(d),d=new o(t,f,l,u),d.setPosition(v);else{d.updateData(t,f,l,u);var x={x:v[0],y:v[1]};s?d.attr(x):lt(d,x,i)}n.add(d),t.setItemGraphicEl(f,d)}).remove(function(f){var h=a.getItemGraphicEl(f);h&&h.fadeOut(function(){n.remove(h)},i)}).execute(),this._getSymbolPoint=c,this._data=t},e.prototype.updateLayout=function(){var t=this,r=this._data;r&&r.eachItemGraphicEl(function(n,i){var a=t._getSymbolPoint(i);n.setPosition(a),n.markRedraw()})},e.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=_G(t),this._data=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r,n){this._progressiveEls=[],n=xG(n);function i(l){l.isGroup||(l.incremental=!0,l.ensureState("emphasis").hoverLayer=!0)}for(var a=t.start;a0?r=n[0]:n[1]<0&&(r=n[1]),r}function qte(e,t,r,n){var i=NaN;e.stacked&&(i=r.get(r.getCalculationInfo("stackedOverDimension"),n)),isNaN(i)&&(i=e.valueStart);var a=e.baseDataOffset,o=[];return o[a]=r.get(e.baseDim,n),o[1-a]=i,t.dataToPoint(o)}function wVe(e,t){var r=[];return t.diff(e).add(function(n){r.push({cmd:"+",idx:n})}).update(function(n,i){r.push({cmd:"=",idx:i,idx1:n})}).remove(function(n){r.push({cmd:"-",idx:n})}).execute(),r}function SVe(e,t,r,n,i,a,o,s){for(var l=wVe(e,t),u=[],c=[],f=[],h=[],d=[],v=[],g=[],m=Xte(i,t,o),x=e.getLayout("points")||[],_=t.getLayout("points")||[],b=0;b=i||g<0)break;if(Yc(x,_)){if(l){g+=a;continue}break}if(g===r)e[a>0?"moveTo":"lineTo"](x,_),f=x,h=_;else{var b=x-u,S=_-c;if(b*b+S*S<.5){g+=a;continue}if(o>0){for(var T=g+a,C=t[T*2],A=t[T*2+1];C===x&&A===_&&m=n||Yc(C,A))d=x,v=_;else{k=C-u,E=A-c;var z=x-u,V=C-x,F=_-c,$=A-_,B=void 0,Z=void 0;if(s==="x"){B=Math.abs(z),Z=Math.abs(V);var W=k>0?1:-1;d=x-W*B*o,v=_,D=x+W*Z*o,N=_}else if(s==="y"){B=Math.abs(F),Z=Math.abs($);var G=E>0?1:-1;d=x,v=_-G*B*o,D=x,N=_+G*Z*o}else B=Math.sqrt(z*z+F*F),Z=Math.sqrt(V*V+$*$),I=Z/(Z+B),d=x-k*o*(1-I),v=_-E*o*(1-I),D=x+k*o*I,N=_+E*o*I,D=fl(D,hl(C,x)),N=fl(N,hl(A,_)),D=hl(D,fl(C,x)),N=hl(N,fl(A,_)),k=D-x,E=N-_,d=x-k*B/Z,v=_-E*B/Z,d=fl(d,hl(u,x)),v=fl(v,hl(c,_)),d=hl(d,fl(u,x)),v=hl(v,fl(c,_)),k=x-d,E=_-v,D=x+k*Z/B,N=_+E*Z/B}e.bezierCurveTo(f,h,d,v,x,_),f=D,h=N}else e.lineTo(x,_)}u=x,c=_,g+=a}return m}var Kte=function(){function e(){this.smooth=0,this.smoothConstraint=!0}return e}(),TVe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="ec-polyline",n}return t.prototype.getDefaultStyle=function(){return{stroke:J.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new Kte},t.prototype.buildPath=function(r,n){var i=n.points,a=0,o=i.length/2;if(n.connectNulls){for(;o>0&&Yc(i[o*2-2],i[o*2-1]);o--);for(;a=0){var S=u?(v-l)*b+l:(d-s)*b+s;return u?[r,S]:[S,r]}s=d,l=v;break;case o.C:d=a[f++],v=a[f++],g=a[f++],m=a[f++],x=a[f++],_=a[f++];var T=u?sw(s,d,g,x,r,c):sw(l,v,m,_,r,c);if(T>0)for(var C=0;C=0){var S=u?$r(l,v,m,_,A):$r(s,d,g,x,A);return u?[r,S]:[S,r]}}s=x,l=_;break}}},t}(tt),CVe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(Kte),Jte=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="ec-polygon",n}return t.prototype.getDefaultShape=function(){return new CVe},t.prototype.buildPath=function(r,n){var i=n.points,a=n.stackedOnPoints,o=0,s=i.length/2,l=n.smoothMonotone;if(n.connectNulls){for(;s>0&&Yc(i[s*2-2],i[s*2-1]);s--);for(;ot){a?r.push(o(a,l,t)):i&&r.push(o(i,l,0),o(i,l,t));break}else i&&(r.push(o(i,l,0)),i=null),r.push(l),a=l}return r}function PVe(e,t,r){var n=e.getVisual("visualMeta");if(!(!n||!n.length||!e.count())&&t.type==="cartesian2d"){for(var i,a,o=n.length-1;o>=0;o--){var s=e.getDimensionInfo(n[o].dimension);if(i=s&&s.coordDim,i==="x"||i==="y"){a=n[o];break}}if(a){var l=t.getAxis(i),u=se(a.stops,function(b){return{coord:l.toGlobalCoord(l.dataToCoord(b.value)),color:b.color}}),c=u.length,f=a.outerColors.slice();c&&u[0].coord>u[c-1].coord&&(u.reverse(),f.reverse());var h=MVe(u,i==="x"?r.getWidth():r.getHeight()),d=h.length;if(!d&&c)return u[0].coord<0?f[1]?f[1]:u[c-1].color:f[0]?f[0]:u[0].color;var v=10,g=h[0].coord-v,m=h[d-1].coord+v,x=m-g;if(x<.001)return"transparent";R(h,function(b){b.offset=(b.coord-g)/x}),h.push({offset:d?h[d-1].offset:.5,color:f[1]||"transparent"}),h.unshift({offset:d?h[0].offset:.5,color:f[0]||"transparent"});var _=new Pf(0,0,0,0,h,!0);return _[i]=g,_[i+"2"]=m,_}}}function kVe(e,t,r){var n=e.get("showAllSymbol"),i=n==="auto";if(!(n&&!i)){var a=r.getAxesByScale("ordinal")[0];if(a&&!(i&&LVe(a,t))){var o=t.mapDimension(a.dim),s={};return R(a.getViewLabels(),function(l){var u=a.scale.getRawOrdinalNumber(l.tickValue);s[u]=1}),function(l){return!s.hasOwnProperty(t.get(o,l))}}}}function LVe(e,t){var r=e.getExtent(),n=Math.abs(r[1]-r[0])/e.scale.count();isNaN(n)&&(n=0);for(var i=t.count(),a=Math.max(1,Math.round(i/5)),o=0;on)return!1;return!0}function IVe(e,t){return isNaN(e)||isNaN(t)}function OVe(e){for(var t=e.length/2;t>0&&IVe(e[t*2-2],e[t*2-1]);t--);return t-1}function CG(e,t){return[e[t*2],e[t*2+1]]}function EVe(e,t,r){for(var n=e.length/2,i=r==="x"?0:1,a,o,s=0,l=-1,u=0;u=t||a>=t&&o<=t){l=u;break}s=u,a=o}return{range:[s,l],t:(t-a)/(o-a)}}function tre(e){if(e.get(["endLabel","show"]))return!0;for(var t=0;t0&&r.get(["emphasis","lineStyle","width"])==="bolder"){var Z=v.getState("emphasis").style;Z.lineWidth=+v.style.lineWidth+1}Ne(v).seriesIndex=r.seriesIndex,Gt(v,F,$,B);var W=TG(r.get("smooth")),G=r.get("smoothMonotone");if(v.setShape({smooth:W,smoothMonotone:G,connectNulls:A}),g){var Y=s.getCalculationInfo("stackedOnSeries"),K=0;g.useStyle(Pe(u.getAreaStyle(),{fill:D,opacity:.7,lineJoin:"bevel",decal:s.getVisual("style").decal})),Y&&(K=TG(Y.get("smooth"))),g.setShape({smooth:W,stackedOnSmooth:K,smoothMonotone:G,connectNulls:A}),Dr(g,r,"areaStyle"),Ne(g).seriesIndex=r.seriesIndex,Gt(g,F,$,B)}var ee=this._changePolyState;s.eachItemGraphicEl(function(le){le&&(le.onHoverStateChange=ee)}),this._polyline.onHoverStateChange=ee,this._data=s,this._coordSys=a,this._stackedOnPoints=T,this._points=c,this._step=k,this._valueOrigin=b,r.get("triggerLineEvent")&&(this.packEventData(r,v),g&&this.packEventData(r,g))},t.prototype.packEventData=function(r,n){Ne(n).eventData={componentType:"series",componentSubType:"line",componentIndex:r.componentIndex,seriesIndex:r.seriesIndex,seriesName:r.name,seriesType:"line"}},t.prototype.highlight=function(r,n,i,a){var o=r.getData(),s=uf(o,a);if(this._changePolyState("emphasis"),!(s instanceof Array)&&s!=null&&s>=0){var l=o.getLayout("points"),u=o.getItemGraphicEl(s);if(!u){var c=l[s*2],f=l[s*2+1];if(isNaN(c)||isNaN(f)||this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(c,f))return;var h=r.get("zlevel")||0,d=r.get("z")||0;u=new w0(o,s),u.x=c,u.y=f,u.setZ(h,d);var v=u.getSymbolPath().getTextContent();v&&(v.zlevel=h,v.z=d,v.z2=this._polyline.z2+1),u.__temp=!0,o.setItemGraphicEl(s,u),u.stopSymbolAnimation(!0),this.group.add(u)}u.highlight()}else bt.prototype.highlight.call(this,r,n,i,a)},t.prototype.downplay=function(r,n,i,a){var o=r.getData(),s=uf(o,a);if(this._changePolyState("normal"),s!=null&&s>=0){var l=o.getItemGraphicEl(s);l&&(l.__temp?(o.setItemGraphicEl(s,null),this.group.remove(l)):l.downplay())}else bt.prototype.downplay.call(this,r,n,i,a)},t.prototype._changePolyState=function(r){var n=this._polygon;yw(this._polyline,r),n&&yw(n,r)},t.prototype._newPolyline=function(r){var n=this._polyline;return n&&this._lineGroup.remove(n),n=new TVe({shape:{points:r},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(n),this._polyline=n,n},t.prototype._newPolygon=function(r,n){var i=this._polygon;return i&&this._lineGroup.remove(i),i=new Jte({shape:{points:r,stackedOnPoints:n},segmentIgnoreThreshold:2}),this._lineGroup.add(i),this._polygon=i,i},t.prototype._initSymbolLabelAnimation=function(r,n,i){var a,o,s=n.getBaseAxis(),l=s.inverse;n.type==="cartesian2d"?(a=s.isHorizontal(),o=!1):n.type==="polar"&&(a=s.dim==="angle",o=!0);var u=r.hostModel,c=u.get("animationDuration");Ce(c)&&(c=c(null));var f=u.get("animationDelay")||0,h=Ce(f)?f(null):f;r.eachItemGraphicEl(function(d,v){var g=d;if(g){var m=[d.x,d.y],x=void 0,_=void 0,b=void 0;if(i)if(o){var S=i,T=n.pointToCoord(m);a?(x=S.startAngle,_=S.endAngle,b=-T[1]/180*Math.PI):(x=S.r0,_=S.r,b=T[0])}else{var C=i;a?(x=C.x,_=C.x+C.width,b=d.x):(x=C.y+C.height,_=C.y,b=d.y)}var A=_===x?0:(b-x)/(_-x);l&&(A=1-A);var P=Ce(f)?f(v):c*A+h,I=g.getSymbolPath(),k=I.getTextContent();g.attr({scaleX:0,scaleY:0}),g.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:P}),k&&k.animateFrom({style:{opacity:0}},{duration:300,delay:P}),I.disableLabelAnimation=!0}})},t.prototype._initOrUpdateEndLabel=function(r,n,i){var a=r.getModel("endLabel");if(tre(r)){var o=r.getData(),s=this._polyline,l=o.getLayout("points");if(!l){s.removeTextContent(),this._endLabel=null;return}var u=this._endLabel;u||(u=this._endLabel=new at({z2:200}),u.ignoreClip=!0,s.setTextContent(this._endLabel),s.disableLabelAnimation=!0);var c=OVe(l);c>=0&&(Ur(s,Nr(r,"endLabel"),{inheritColor:i,labelFetcher:r,labelDataIndex:c,defaultText:function(f,h,d){return d!=null?Yte(o,d):av(o,f)},enableTextSetter:!0},DVe(a,n)),s.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},t.prototype._endLabelOnDuring=function(r,n,i,a,o,s,l){var u=this._endLabel,c=this._polyline;if(u){r<1&&a.originalX==null&&(a.originalX=u.x,a.originalY=u.y);var f=i.getLayout("points"),h=i.hostModel,d=h.get("connectNulls"),v=s.get("precision"),g=s.get("distance")||0,m=l.getBaseAxis(),x=m.isHorizontal(),_=m.inverse,b=n.shape,S=_?x?b.x:b.y+b.height:x?b.x+b.width:b.y,T=(x?g:0)*(_?-1:1),C=(x?0:-g)*(_?-1:1),A=x?"x":"y",P=EVe(f,S,A),I=P.range,k=I[1]-I[0],E=void 0;if(k>=1){if(k>1&&!d){var D=CG(f,I[0]);u.attr({x:D[0]+T,y:D[1]+C}),o&&(E=h.getRawValue(I[0]))}else{var D=c.getPointOn(S,A);D&&u.attr({x:D[0]+T,y:D[1]+C});var N=h.getRawValue(I[0]),z=h.getRawValue(I[1]);o&&(E=AJ(i,v,N,z,P.t))}a.lastFrameIndex=I[0]}else{var V=r===1||a.lastFrameIndex>0?I[0]:0,D=CG(f,V);o&&(E=h.getRawValue(V)),u.attr({x:D[0]+T,y:D[1]+C})}if(o){var F=Gv(u);typeof F.setLabelText=="function"&&F.setLabelText(E)}}},t.prototype._doUpdateAnimation=function(r,n,i,a,o,s,l){var u=this._polyline,c=this._polygon,f=r.hostModel,h=SVe(this._data,r,this._stackedOnPoints,n,this._coordSys,i,this._valueOrigin),d=h.current,v=h.stackedOnCurrent,g=h.next,m=h.stackedOnNext;if(o&&(v=dl(h.stackedOnCurrent,h.current,i,o,l),d=dl(h.current,null,i,o,l),m=dl(h.stackedOnNext,h.next,i,o,l),g=dl(h.next,null,i,o,l)),SG(d,g)>3e3||c&&SG(v,m)>3e3){u.stopAnimation(),u.setShape({points:g}),c&&(c.stopAnimation(),c.setShape({points:g,stackedOnPoints:m}));return}u.shape.__points=h.current,u.shape.points=d;var x={shape:{points:g}};h.current!==d&&(x.shape.__points=h.next),u.stopAnimation(),lt(u,x,f),c&&(c.setShape({points:d,stackedOnPoints:v}),c.stopAnimation(),lt(c,{shape:{stackedOnPoints:m}},f),u.shape.points!==c.shape.points&&(c.shape.points=u.shape.points));for(var _=[],b=h.status,S=0;St&&(t=e[r]);return isFinite(t)?t:NaN},min:function(e){for(var t=1/0,r=0;r10&&o.type==="cartesian2d"&&a){var l=o.getBaseAxis(),u=o.getOtherAxis(l),c=l.getExtent(),f=n.getDevicePixelRatio(),h=Math.abs(c[1]-c[0])*(f||1),d=Math.round(s/h);if(isFinite(d)&&d>1){a==="lttb"?t.setData(i.lttbDownSample(i.mapDimension(u.dim),1/d)):a==="minmax"&&t.setData(i.minmaxDownSample(i.mapDimension(u.dim),1/d));var v=void 0;pe(a)?v=jVe[a]:Ce(a)&&(v=a),v&&t.setData(i.downSample(i.mapDimension(u.dim),1/d,v,RVe))}}}}}function BVe(e){e.registerChartView(NVe),e.registerSeriesModel(xVe),e.registerLayout(C0("line",!0)),e.registerVisual({seriesType:"line",reset:function(t){var r=t.getData(),n=t.getModel("lineStyle").getLineStyle();n&&!n.stroke&&(n.stroke=r.getVisual("style").fill),r.setVisual("legendLineStyle",n)}}),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,rre("line"))}var Dy=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(r,n){return Jo(null,this,{useEncodeDefaulter:!0})},t.prototype.getMarkerPosition=function(r,n,i){var a=this.coordinateSystem;if(a&&a.clampData){var o=a.clampData(r),s=a.dataToPoint(o);if(i)R(a.getAxes(),function(h,d){if(h.type==="category"&&n!=null){var v=h.getTicksCoords(),g=h.getTickModel().get("alignWithLabel"),m=o[d],x=n[d]==="x1"||n[d]==="y1";if(x&&!g&&(m+=1),v.length<2)return;if(v.length===2){s[d]=h.toGlobalCoord(h.getExtent()[x?1:0]);return}for(var _=void 0,b=void 0,S=1,T=0;Tm){b=(C+_)/2;break}T===1&&(S=A-v[0].tickValue)}b==null&&(_?_&&(b=v[v.length-1].coord):b=v[0].coord),s[d]=h.toGlobalCoord(b)}});else{var l=this.getData(),u=l.getLayout("offset"),c=l.getLayout("size"),f=a.getBaseAxis().isHorizontal()?0:1;s[f]+=u+c/2}return s}return[NaN,NaN]},t.type="series.__base_bar__",t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod",defaultBarGap:"10%"},t}(Tt);Tt.registerClass(Dy);var zVe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(){return Jo(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},t.prototype.getProgressive=function(){return this.get("large")?this.get("progressive"):!1},t.prototype.getProgressiveThreshold=function(){var r=this.get("progressiveThreshold"),n=this.get("largeThreshold");return n>r&&(r=n),r},t.prototype.brushSelector=function(r,n,i){return i.rect(n.getItemLayout(r))},t.type="series.bar",t.dependencies=["grid","polar"],t.defaultOption=Mu(Dy.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:J.color.primary,borderWidth:2}},realtimeSort:!1}),t}(Dy),$Ve=function(){function e(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return e}(),Fw=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="sausage",n}return t.prototype.getDefaultShape=function(){return new $Ve},t.prototype.buildPath=function(r,n){var i=n.cx,a=n.cy,o=Math.max(n.r0||0,0),s=Math.max(n.r,0),l=(s-o)*.5,u=o+l,c=n.startAngle,f=n.endAngle,h=n.clockwise,d=Math.PI*2,v=h?f-cMath.PI/2&&cs)return!0;s=f}return!1},t.prototype._isOrderDifferentInView=function(r,n){for(var i=n.scale,a=i.getExtent(),o=Math.max(0,a[0]),s=Math.min(a[1],i.getOrdinalMeta().categories.length-1);o<=s;++o)if(r.ordinalNumbers[o]!==i.getRawOrdinalNumber(o))return!0},t.prototype._updateSortWithinSameData=function(r,n,i,a){if(this._isOrderChangedWithinSameData(r,n,i)){var o=this._dataSort(r,i,n);this._isOrderDifferentInView(o,i)&&(this._removeOnRenderedListener(a),a.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",axisId:i.index,sortInfo:o}))}},t.prototype._dispatchInitSort=function(r,n,i){var a=n.baseAxis,o=this._dataSort(r,a,function(s){return r.get(r.mapDimension(n.otherAxis.dim),s)});i.dispatchAction({type:"changeAxisOrder",componentType:a.dim+"Axis",isInitSort:!0,axisId:a.index,sortInfo:o})},t.prototype.remove=function(r,n){this._clear(this._model),this._removeOnRenderedListener(n)},t.prototype.dispose=function(r,n){this._removeOnRenderedListener(n)},t.prototype._removeOnRenderedListener=function(r){this._onRendered&&(r.getZr().off("rendered",this._onRendered),this._onRendered=null)},t.prototype._clear=function(r){var n=this.group,i=this._data;r&&r.isAnimationEnabled()&&i&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],i.eachItemGraphicEl(function(a){Ls(a,r,Ne(a).dataIndex)})):n.removeAll(),this._data=null,this._isFirstFrame=!0},t.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},t.type="bar",t}(bt),AG={cartesian2d:function(e,t){var r=t.width<0?-1:1,n=t.height<0?-1:1;r<0&&(t.x+=t.width,t.width=-t.width),n<0&&(t.y+=t.height,t.height=-t.height);var i=e.x+e.width,a=e.y+e.height,o=fM(t.x,e.x),s=hM(t.x+t.width,i),l=fM(t.y,e.y),u=hM(t.y+t.height,a),c=si?s:o,t.y=f&&l>a?u:l,t.width=c?0:s-o,t.height=f?0:u-l,r<0&&(t.x+=t.width,t.width=-t.width),n<0&&(t.y+=t.height,t.height=-t.height),c||f},polar:function(e,t){var r=t.r0<=t.r?1:-1;if(r<0){var n=t.r;t.r=t.r0,t.r0=n}var i=hM(t.r,e.r),a=fM(t.r0,e.r0);t.r=i,t.r0=a;var o=i-a<0;if(r<0){var n=t.r;t.r=t.r0,t.r0=n}return o}},MG={cartesian2d:function(e,t,r,n,i,a,o,s,l){var u=new Xe({shape:ne({},n),z2:1});if(u.__dataIndex=r,u.name="item",a){var c=u.shape,f=i?"height":"width";c[f]=0}return u},polar:function(e,t,r,n,i,a,o,s,l){var u=!i&&l?Fw:_n,c=new u({shape:n,z2:1});c.name="item";var f=nre(i);if(c.calculateTextPosition=FVe(f,{isRoundCap:u===Fw}),a){var h=c.shape,d=i?"r":"endAngle",v={};h[d]=i?n.r0:n.startAngle,v[d]=n[d],(s?lt:Dt)(c,{shape:v},a)}return c}};function HVe(e,t){var r=e.get("realtimeSort",!0),n=t.getBaseAxis();if(r&&n.type==="category"&&t.type==="cartesian2d")return{baseAxis:n,otherAxis:t.getOtherAxis(n)}}function PG(e,t,r,n,i,a,o,s){var l,u;a?(u={x:n.x,width:n.width},l={y:n.y,height:n.height}):(u={y:n.y,height:n.height},l={x:n.x,width:n.width}),s||(o?lt:Dt)(r,{shape:l},t,i,null);var c=t?e.baseAxis.model:null;(o?lt:Dt)(r,{shape:u},c,i)}function kG(e,t){for(var r=0;r0?1:-1,o=n.height>0?1:-1;return{x:n.x+a*i/2,y:n.y+o*i/2,width:n.width-a*i,height:n.height-o*i}},polar:function(e,t,r){var n=e.getItemLayout(t);return{cx:n.cx,cy:n.cy,r0:n.r0,r:n.r,startAngle:n.startAngle,endAngle:n.endAngle,clockwise:n.clockwise}}};function YVe(e){return e.startAngle!=null&&e.endAngle!=null&&e.startAngle===e.endAngle}function nre(e){return function(t){var r=t?"Arc":"Angle";return function(n){switch(n){case"start":case"insideStart":case"end":case"insideEnd":return n+r;default:return n}}}(e)}function IG(e,t,r,n,i,a,o,s){var l=t.getItemVisual(r,"style");if(s){if(!a.get("roundCap")){var c=e.shape,f=ko(n.getModel("itemStyle"),c,!0);ne(c,f),e.setShape(c)}}else{var u=n.get(["itemStyle","borderRadius"])||0;e.setShape("r",u)}e.useStyle(l);var h=n.getShallow("cursor");h&&e.attr("cursor",h);var d=s?o?i.r>=i.r0?"endArc":"startArc":i.endAngle>=i.startAngle?"endAngle":"startAngle":o?i.height>=0?"bottom":"top":i.width>=0?"right":"left",v=Nr(n);Ur(e,v,{labelFetcher:a,labelDataIndex:r,defaultText:av(a.getData(),r),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:d});var g=e.getTextContent();if(s&&g){var m=n.get(["label","position"]);e.textConfig.inside=m==="middle"?!0:null,VVe(e,m==="outside"?d:m,nre(o),n.get(["label","rotate"]))}dQ(g,v,a.getRawValue(r),function(_){return Yte(t,_)});var x=n.getModel(["emphasis"]);Gt(e,x.get("focus"),x.get("blurScope"),x.get("disabled")),Dr(e,n),YVe(i)&&(e.style.fill="none",e.style.stroke="none",R(e.states,function(_){_.style&&(_.style.fill=_.style.stroke="none")}))}function XVe(e,t){var r=e.get(["itemStyle","borderColor"]);if(!r||r==="none")return 0;var n=e.get(["itemStyle","borderWidth"])||0,i=isNaN(t.width)?Number.MAX_VALUE:Math.abs(t.width),a=isNaN(t.height)?Number.MAX_VALUE:Math.abs(t.height);return Math.min(n,i,a)}var qVe=function(){function e(){}return e}(),OG=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="largeBar",n}return t.prototype.getDefaultShape=function(){return new qVe},t.prototype.buildPath=function(r,n){for(var i=n.points,a=this.baseDimIdx,o=1-this.baseDimIdx,s=[],l=[],u=this.barWidth,c=0;c=0?r:null},30,!1);function KVe(e,t,r){for(var n=e.baseDimIdx,i=1-n,a=e.shape.points,o=e.largeDataIndices,s=[],l=[],u=e.barWidth,c=0,f=a.length/3;c=s[0]&&t<=s[0]+l[0]&&r>=s[1]&&r<=s[1]+l[1])return o[c]}return-1}function ire(e,t,r){if(fu(r,"cartesian2d")){var n=t,i=r.getArea();return{x:e?n.x:i.x,y:e?i.y:n.y,width:e?n.width:i.width,height:e?i.height:n.height}}else{var i=r.getArea(),a=t;return{cx:i.cx,cy:i.cy,r0:e?i.r0:a.r0,r:e?i.r:a.r,startAngle:e?a.startAngle:0,endAngle:e?a.endAngle:Math.PI*2}}}function JVe(e,t,r){var n=e.type==="polar"?_n:Xe;return new n({shape:ire(t,r,e),silent:!0,z2:0})}function QVe(e){e.registerChartView(WVe),e.registerSeriesModel(zVe),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,Fe(ste,"bar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,lte("bar")),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,rre("bar")),e.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},function(t,r){var n=t.componentType||"series";r.eachComponent({mainType:n,query:t},function(i){t.sortInfo&&i.axis.setCategorySortInfo(t.sortInfo)})})}var NG=Math.PI*2,y_=Math.PI/180;function e6e(e,t,r){t.eachSeriesByType(e,function(n){var i=n.getData(),a=i.mapDimension("value"),o=IQ(n,r),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=o.viewRect,h=-n.get("startAngle")*y_,d=n.get("endAngle"),v=n.get("padAngle")*y_;d=d==="auto"?h-NG:-d*y_;var g=n.get("minAngle")*y_,m=g+v,x=0;i.each(a,function($){!isNaN($)&&x++});var _=i.getSum(a),b=Math.PI/(_||x)*2,S=n.get("clockwise"),T=n.get("roseType"),C=n.get("stillShowZeroSum"),A=i.getDataExtent(a);A[0]=0;var P=S?1:-1,I=[h,d],k=P*v/2;$T(I,!S),h=I[0],d=I[1];var E=are(n);E.startAngle=h,E.endAngle=d,E.clockwise=S,E.cx=s,E.cy=l,E.r=u,E.r0=c;var D=Math.abs(d-h),N=D,z=0,V=h;if(i.setLayout({viewRect:f,r:u}),i.each(a,function($,B){var Z;if(isNaN($)){i.setItemLayout(B,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:S,cx:s,cy:l,r0:c,r:T?NaN:u});return}T!=="area"?Z=_===0&&C?b:$*b:Z=D/x,ZZ?(G=V+P*Z/2,Y=G):(G=V+k,Y=W-k),i.setItemLayout(B,{angle:Z,startAngle:G,endAngle:Y,clockwise:S,cx:s,cy:l,r0:c,r:T?gt($,A,[c,u]):u}),V=W}),Nr?x:m,T=Math.abs(b.label.y-r);if(T>=S.maxY){var C=b.label.x-t-b.len2*i,A=n+b.len,P=Math.abs(C)e.unconstrainedWidth?null:h:null;n.setStyle("width",d)}sre(a,n)}}}function sre(e,t){RG.rect=e,Ite(RG,t,n6e)}var n6e={minMarginForce:[null,0,null,0],marginDefault:[1,0,1,0]},RG={};function dM(e){return e.position==="center"}function i6e(e){var t=e.getData(),r=[],n,i,a=!1,o=(e.get("minShowLabelAngle")||0)*t6e,s=t.getLayout("viewRect"),l=t.getLayout("r"),u=s.width,c=s.x,f=s.y,h=s.height;function d(C){C.ignore=!0}function v(C){if(!C.ignore)return!0;for(var A in C.states)if(C.states[A].ignore===!1)return!0;return!1}t.each(function(C){var A=t.getItemGraphicEl(C),P=A.shape,I=A.getTextContent(),k=A.getTextGuideLine(),E=t.getItemModel(C),D=E.getModel("label"),N=D.get("position")||E.get(["emphasis","label","position"]),z=D.get("distanceToLabelLine"),V=D.get("alignTo"),F=ve(D.get("edgeDistance"),u),$=D.get("bleedMargin");$==null&&($=Math.min(u,h)>200?10:2);var B=E.getModel("labelLine"),Z=B.get("length");Z=ve(Z,u);var W=B.get("length2");if(W=ve(W,u),Math.abs(P.endAngle-P.startAngle)0?"right":"left":Y>0?"left":"right"}var Ge=Math.PI,Ye=0,vt=D.get("rotate");if(ot(vt))Ye=vt*(Ge/180);else if(N==="center")Ye=0;else if(vt==="radial"||vt===!0){var Ft=Y<0?-G+Ge:-G;Ye=Ft}else if(vt==="tangential"&&N!=="outside"&&N!=="outer"){var rr=Math.atan2(Y,K);rr<0&&(rr=Ge*2+rr);var Nn=K>0;Nn&&(rr=Ge+rr),Ye=rr-Ge}if(a=!!Ye,I.x=ee,I.y=le,I.rotation=Ye,I.setStyle({verticalAlign:"middle"}),me){I.setStyle({align:De});var qn=I.states.select;qn&&(qn.x+=I.x,qn.y+=I.y)}else{var Xr=new Oe(0,0,0,0);sre(Xr,I),r.push({label:I,labelLine:k,position:N,len:Z,len2:W,minTurnAngle:B.get("minTurnAngle"),maxSurfaceAngle:B.get("maxSurfaceAngle"),surfaceNormal:new Ie(Y,K),linePoints:fe,textAlign:De,labelDistance:z,labelAlignTo:V,edgeDistance:F,bleedMargin:$,rect:Xr,unconstrainedWidth:Xr.width,labelStyleWidth:I.style.width})}A.setTextConfig({inside:me})}}),!a&&e.get("avoidLabelOverlap")&&r6e(r,n,i,l,u,h,c,f);for(var g=0;g0){for(var c=o.getItemLayout(0),f=1;isNaN(c&&c.startAngle)&&f=a.r0}},t.type="pie",t}(bt);function ep(e,t,r){t=ae(t)&&{coordDimensions:t}||ne({encodeDefine:e.getEncode()},t);var n=e.getSource(),i=qv(n,t).dimensions,a=new En(i,e);return a.initData(n,r),a}var tp=function(){function e(t,r){this._getDataWithEncodedVisual=t,this._getRawData=r}return e.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},e.prototype.containName=function(t){var r=this._getRawData();return r.indexOfName(t)>=0},e.prototype.indexOfName=function(t){var r=this._getDataWithEncodedVisual();return r.indexOfName(t)},e.prototype.getItemVisual=function(t,r){var n=this._getDataWithEncodedVisual();return n.getItemVisual(t,r)},e}(),s6e=Je(),lre=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments),this.legendVisualProvider=new tp(ge(this.getData,this),ge(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.mergeOption=function(){e.prototype.mergeOption.apply(this,arguments)},t.prototype.getInitialData=function(){return ep(this,{coordDimensions:["value"],encodeDefaulter:Fe(lj,this)})},t.prototype.getDataParams=function(r){var n=this.getData(),i=s6e(n),a=i.seats;if(!a){var o=[];n.each(n.mapDimension("value"),function(l){o.push(l)}),a=i.seats=gJ(o,n.hostModel.get("percentPrecision"))}var s=e.prototype.getDataParams.call(this,r);return s.percent=a[r]||0,s.$vars.push("percent"),s},t.prototype._defaultLabelLine=function(r){lf(r,"labelLine",["show"]);var n=r.labelLine,i=r.emphasis.labelLine;n.show=n.show&&r.label.show,i.show=i.show&&r.emphasis.label.show},t.type="series.pie",t.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"50%"],clockwise:!0,startAngle:90,endAngle:"auto",padAngle:0,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,coordinateSystemUsage:"box",left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:30,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},t}(Tt);eBe({fullType:lre.type,getCoord2:function(e){return e.getShallow("center")}});function l6e(e){return{seriesType:e,reset:function(t,r){var n=t.getData();n.filterSelf(function(i){var a=n.mapDimension("value"),o=n.get(a,i);return!(ot(o)&&!isNaN(o)&&o<0)})}}}function u6e(e){e.registerChartView(o6e),e.registerSeriesModel(lre),wee("pie",e.registerAction),e.registerLayout(Fe(e6e,"pie")),e.registerProcessor(Qv("pie")),e.registerProcessor(l6e("pie"))}var c6e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.hasSymbolVisual=!0,r}return t.prototype.getInitialData=function(r,n){return Jo(null,this,{useEncodeDefaulter:!0})},t.prototype.getProgressive=function(){var r=this.option.progressive;return r??(this.option.large?5e3:this.get("progressive"))},t.prototype.getProgressiveThreshold=function(){var r=this.option.progressiveThreshold;return r??(this.option.large?1e4:this.get("progressiveThreshold"))},t.prototype.brushSelector=function(r,n,i){return i.point(n.getItemLayout(r))},t.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},t.type="series.scatter",t.dependencies=["grid","polar","geo","singleAxis","calendar","matrix"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:J.color.primary}},universalTransition:{divideShape:"clone"}},t}(Tt),ure=4,f6e=function(){function e(){}return e}(),h6e=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n._off=0,n.hoverDataIdx=-1,n}return t.prototype.getDefaultShape=function(){return new f6e},t.prototype.reset=function(){this.notClear=!1,this._off=0},t.prototype.buildPath=function(r,n){var i=n.points,a=n.size,o=this.symbolProxy,s=o.shape,l=r.getContext?r.getContext():r,u=l&&a[0]=0;u--){var c=u*2,f=a[c]-s/2,h=a[c+1]-l/2;if(r>=f&&n>=h&&r<=f+s&&n<=h+l)return u}return-1},t.prototype.contain=function(r,n){var i=this.transformCoordToLocal(r,n),a=this.getBoundingRect();if(r=i[0],n=i[1],a.contain(r,n)){var o=this.hoverDataIdx=this.findDataIndex(r,n);return o>=0}return this.hoverDataIdx=-1,!1},t.prototype.getBoundingRect=function(){var r=this._rect;if(!r){for(var n=this.shape,i=n.points,a=n.size,o=a[0],s=a[1],l=1/0,u=1/0,c=-1/0,f=-1/0,h=0;h=0&&(u.dataIndex=f+(t.startIndex||0))})},e.prototype.remove=function(){this._clear()},e.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},e}(),v6e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this._updateSymbolDraw(a,r);o.updateData(a,{clipShape:this._getClipShape(r)}),this._finished=!0},t.prototype.incrementalPrepareRender=function(r,n,i){var a=r.getData(),o=this._updateSymbolDraw(a,r);o.incrementalPrepareUpdate(a),this._finished=!1},t.prototype.incrementalRender=function(r,n,i){this._symbolDraw.incrementalUpdate(r,n.getData(),{clipShape:this._getClipShape(n)}),this._finished=r.end===n.getData().count()},t.prototype.updateTransform=function(r,n,i){var a=r.getData();if(this.group.dirty(),!this._finished||a.count()>1e4)return{update:!0};var o=C0("").reset(r,n,i);o.progress&&o.progress({start:0,end:a.count(),count:a.count()},a),this._symbolDraw.updateLayout(a)},t.prototype.eachRendered=function(r){this._symbolDraw&&this._symbolDraw.eachRendered(r)},t.prototype._getClipShape=function(r){if(r.get("clip",!0)){var n=r.coordinateSystem;return n&&n.getArea&&n.getArea(.1)}},t.prototype._updateSymbolDraw=function(r,n){var i=this._symbolDraw,a=n.pipelineContext,o=a.large;return(!i||o!==this._isLargeDraw)&&(i&&i.remove(),i=this._symbolDraw=o?new d6e:new S0,this._isLargeDraw=o,this.group.removeAll()),this.group.add(i.group),i},t.prototype.remove=function(r,n){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},t.prototype.dispose=function(){},t.type="scatter",t}(bt),cre={left:0,right:0,top:0,bottom:0},Vw=["25%","25%"],p6e=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.mergeDefaultAndTheme=function(r,n){var i=Lf(r.outerBounds);e.prototype.mergeDefaultAndTheme.apply(this,arguments),i&&r.outerBounds&&Ho(r.outerBounds,i)},t.prototype.mergeOption=function(r,n){e.prototype.mergeOption.apply(this,arguments),this.option.outerBounds&&r.outerBounds&&Ho(this.option.outerBounds,r.outerBounds)},t.type="grid",t.dependencies=["xAxis","yAxis"],t.layoutMode="box",t.defaultOption={show:!1,z:0,left:"15%",top:65,right:"10%",bottom:80,containLabel:!1,outerBoundsMode:"auto",outerBounds:cre,outerBoundsContain:"all",outerBoundsClampWidth:Vw[0],outerBoundsClampHeight:Vw[1],backgroundColor:J.color.transparent,borderWidth:1,borderColor:J.color.neutral30},t}(Ke),fO=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",er).models[0]},t.type="cartesian2dAxis",t}(Ke);cr(fO,Jv);var fre={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:J.color.axisLine,width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15],breakLine:!0},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12,color:J.color.axisLabel,textMargin:[0,3]},splitLine:{show:!0,showMinLine:!0,showMaxLine:!0,lineStyle:{color:J.color.axisSplitLine,width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:[J.color.backgroundTint,J.color.backgroundTransparent]}},breakArea:{show:!0,itemStyle:{color:J.color.neutral00,borderColor:J.color.border,borderWidth:1,borderType:[3,3],opacity:.6},zigzagAmplitude:4,zigzagMinSpan:4,zigzagMaxSpan:20,zigzagZ:100,expandOnClick:!0},breakLabelLayout:{moveOverlap:"auto"}},g6e=He({boundaryGap:!0,deduplication:null,jitter:0,jitterOverlap:!0,jitterMargin:2,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto",show:"auto"},axisLabel:{interval:"auto"}},fre),Vj=He({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:J.color.axisMinorSplitLine,width:1}}},fre),m6e=He({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},Vj),y6e=Pe({logBase:10},Vj);const hre={category:g6e,value:Vj,time:m6e,log:y6e};var x6e={value:1,category:1,time:1,log:1},hO=null;function _6e(e){hO||(hO=e)}function A0(){return hO}function ov(e,t,r,n){R(x6e,function(i,a){var o=He(He({},hre[a],!0),n,!0),s=function(l){q(u,l);function u(){var c=l!==null&&l.apply(this,arguments)||this;return c.type=t+"Axis."+a,c}return u.prototype.mergeDefaultAndTheme=function(c,f){var h=Ty(this),d=h?Lf(c):{},v=f.getTheme();He(c,v.get(a+"Axis")),He(c,this.getDefaultOption()),c.type=BG(c),h&&Ho(c,d,h)},u.prototype.optionUpdated=function(){var c=this.option;c.type==="category"&&(this.__ordinalMeta=Ly.createByAxisModel(this))},u.prototype.getCategories=function(c){var f=this.option;if(f.type==="category")return c?f.data:this.__ordinalMeta.categories},u.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},u.prototype.updateAxisBreaks=function(c){var f=A0();return f?f.updateModelAxisBreak(this,c):{breaks:[]}},u.type=t+"Axis."+a,u.defaultOption=o,u}(r);e.registerComponentModel(s)}),e.registerSubTypeDefaulter(t+"Axis",BG)}function BG(e){return e.type||(e.data?"category":"value")}var b6e=function(){function e(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return e.prototype.getAxis=function(t){return this._axes[t]},e.prototype.getAxes=function(){return se(this._dimList,function(t){return this._axes[t]},this)},e.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),ht(this.getAxes(),function(r){return r.scale.type===t})},e.prototype.addAxis=function(t){var r=t.dim;this._axes[r]=t,this._dimList.push(r)},e}(),dO=["x","y"];function zG(e){return(e.type==="interval"||e.type==="time")&&!e.hasBreaks()}var w6e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="cartesian2d",r.dimensions=dO,r}return t.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var r=this.getAxis("x").scale,n=this.getAxis("y").scale;if(!(!zG(r)||!zG(n))){var i=r.getExtent(),a=n.getExtent(),o=this.dataToPoint([i[0],a[0]]),s=this.dataToPoint([i[1],a[1]]),l=i[1]-i[0],u=a[1]-a[0];if(!(!l||!u)){var c=(s[0]-o[0])/l,f=(s[1]-o[1])/u,h=o[0]-i[0]*c,d=o[1]-a[0]*f,v=this._transform=[c,0,0,f,h,d];this._invTransform=va([],v)}}},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},t.prototype.containPoint=function(r){var n=this.getAxis("x"),i=this.getAxis("y");return n.contain(n.toLocalCoord(r[0]))&&i.contain(i.toLocalCoord(r[1]))},t.prototype.containData=function(r){return this.getAxis("x").containData(r[0])&&this.getAxis("y").containData(r[1])},t.prototype.containZone=function(r,n){var i=this.dataToPoint(r),a=this.dataToPoint(n),o=this.getArea(),s=new Oe(i[0],i[1],a[0]-i[0],a[1]-i[1]);return o.intersect(s)},t.prototype.dataToPoint=function(r,n,i){i=i||[];var a=r[0],o=r[1];if(this._transform&&a!=null&&isFinite(a)&&o!=null&&isFinite(o))return lr(i,r,this._transform);var s=this.getAxis("x"),l=this.getAxis("y");return i[0]=s.toGlobalCoord(s.dataToCoord(a,n)),i[1]=l.toGlobalCoord(l.dataToCoord(o,n)),i},t.prototype.clampData=function(r,n){var i=this.getAxis("x").scale,a=this.getAxis("y").scale,o=i.getExtent(),s=a.getExtent(),l=i.parse(r[0]),u=a.parse(r[1]);return n=n||[],n[0]=Math.min(Math.max(Math.min(o[0],o[1]),l),Math.max(o[0],o[1])),n[1]=Math.min(Math.max(Math.min(s[0],s[1]),u),Math.max(s[0],s[1])),n},t.prototype.pointToData=function(r,n,i){if(i=i||[],this._invTransform)return lr(i,r,this._invTransform);var a=this.getAxis("x"),o=this.getAxis("y");return i[0]=a.coordToData(a.toLocalCoord(r[0]),n),i[1]=o.coordToData(o.toLocalCoord(r[1]),n),i},t.prototype.getOtherAxis=function(r){return this.getAxis(r.dim==="x"?"y":"x")},t.prototype.getArea=function(r){r=r||0;var n=this.getAxis("x").getGlobalExtent(),i=this.getAxis("y").getGlobalExtent(),a=Math.min(n[0],n[1])-r,o=Math.min(i[0],i[1])-r,s=Math.max(n[0],n[1])-a+r,l=Math.max(i[0],i[1])-o+r;return new Oe(a,o,s,l)},t}(b6e),dre=function(e){q(t,e);function t(r,n,i,a,o){var s=e.call(this,r,n,i)||this;return s.index=0,s.type=a||"value",s.position=o||"bottom",s}return t.prototype.isHorizontal=function(){var r=this.position;return r==="top"||r==="bottom"},t.prototype.getGlobalExtent=function(r){var n=this.getExtent();return n[0]=this.toGlobalCoord(n[0]),n[1]=this.toGlobalCoord(n[1]),r&&n[0]>n[1]&&n.reverse(),n},t.prototype.pointToData=function(r,n){return this.coordToData(this.toLocalCoord(r[this.dim==="x"?0:1]),n)},t.prototype.setCategorySortInfo=function(r){if(this.type!=="category")return!1;this.model.option.categorySortInfo=r,this.scale.setSortInfo(r)},t}(ba),rC="expandAxisBreak",vre="collapseAxisBreak",pre="toggleAxisBreak",Gj="axisbreakchanged",S6e={type:rC,event:Gj,update:"update",refineEvent:Wj},T6e={type:vre,event:Gj,update:"update",refineEvent:Wj},C6e={type:pre,event:Gj,update:"update",refineEvent:Wj};function Wj(e,t,r,n){var i=[];return R(e,function(a){i=i.concat(a.eventBreaks)}),{eventContent:{breaks:i}}}function A6e(e){e.registerAction(S6e,t),e.registerAction(T6e,t),e.registerAction(C6e,t);function t(r,n){var i=[],a=fd(n,r);function o(s,l){R(a[s],function(u){var c=u.updateAxisBreaks(r);R(c.breaks,function(f){var h;i.push(Pe((h={},h[l]=u.componentIndex,h),f))})})}return o("xAxisModels","xAxisIndex"),o("yAxisModels","yAxisIndex"),o("singleAxisModels","singleAxisIndex"),{eventBreaks:i}}}var jl=Math.PI,M6e=[[1,2,1,2],[5,3,5,3],[8,3,8,3]],P6e=[[0,1,0,1],[0,3,0,3],[0,3,0,3]],sv=Je(),gre=Je(),mre=function(){function e(t){this.recordMap={},this.resolveAxisNameOverlap=t}return e.prototype.ensureRecord=function(t){var r=t.axis.dim,n=t.componentIndex,i=this.recordMap,a=i[r]||(i[r]=[]);return a[n]||(a[n]={ready:{}})},e}();function k6e(e,t,r,n){var i=r.axis,a=t.ensureRecord(r),o=[],s,l=Hj(e.axisName)&&iv(e.nameLocation);R(n,function(v){var g=Uo(v);if(!(!g||g.label.ignore)){o.push(g);var m=a.transGroup;l&&(m.transform?va(Xp,m.transform):c0(Xp),g.transform&&Ga(Xp,Xp,g.transform),Oe.copy(x_,g.localRect),x_.applyTransform(Xp),s?s.union(x_):Oe.copy(s=new Oe(0,0,0,0),x_))}});var u=Math.abs(a.dirVec.x)>.1?"x":"y",c=a.transGroup[u];if(o.sort(function(v,g){return Math.abs(v.label[u]-c)-Math.abs(g.label[u]-c)}),l&&s){var f=i.getExtent(),h=Math.min(f[0],f[1]),d=Math.max(f[0],f[1])-h;s.union(new Oe(h,0,d,1))}a.stOccupiedRect=s,a.labelInfoList=o}var Xp=Wr(),x_=new Oe(0,0,0,0),yre=function(e,t,r,n,i,a){if(iv(e.nameLocation)){var o=a.stOccupiedRect;o&&xre(MFe({},o,a.transGroup.transform),n,i)}else _re(a.labelInfoList,a.dirVec,n,i)};function xre(e,t,r){var n=new Ie;eC(e,t,n,{direction:Math.atan2(r.y,r.x),bidirectional:!1,touchThreshold:.05})&&iO(t,n)}function _re(e,t,r,n){for(var i=Ie.dot(n,t)>=0,a=0,o=e.length;a0?"top":"bottom",a="center"):Kd(i-jl)?(o=n>0?"bottom":"top",a="center"):(o="middle",i>0&&i0?"right":"left":a=n>0?"left":"right"),{rotation:i,textAlign:a,textVerticalAlign:o}},e.makeAxisEventDataBase=function(t){var r={componentType:t.mainType,componentIndex:t.componentIndex};return r[t.mainType+"Index"]=t.componentIndex,r},e.isLabelSilent=function(t){var r=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||r&&r.show)},e}(),L6e=["axisLine","axisTickLabelEstimate","axisTickLabelDetermine","axisName"],I6e={axisLine:function(e,t,r,n,i,a,o){var s=n.get(["axisLine","show"]);if(s==="auto"&&(s=!0,e.raw.axisLineAutoShow!=null&&(s=!!e.raw.axisLineAutoShow)),!!s){var l=n.axis.getExtent(),u=a.transform,c=[l[0],0],f=[l[1],0],h=c[0]>f[0];u&&(lr(c,c,u),lr(f,f,u));var d=ne({lineCap:"round"},n.getModel(["axisLine","lineStyle"]).getLineStyle()),v={strokeContainThreshold:e.raw.strokeContainThreshold||5,silent:!0,z2:1,style:d};if(n.get(["axisLine","breakLine"])&&n.axis.scale.hasBreaks())A0().buildAxisBreakLine(n,i,a,v);else{var g=new mr(ne({shape:{x1:c[0],y1:c[1],x2:f[0],y2:f[1]}},v));ev(g.shape,g.style.lineWidth),g.anid="line",i.add(g)}var m=n.get(["axisLine","symbol"]);if(m!=null){var x=n.get(["axisLine","symbolSize"]);pe(m)&&(m=[m,m]),(pe(x)||ot(x))&&(x=[x,x]);var _=Of(n.get(["axisLine","symbolOffset"])||0,x),b=x[0],S=x[1];R([{rotate:e.rotation+Math.PI/2,offset:_[0],r:0},{rotate:e.rotation-Math.PI/2,offset:_[1],r:Math.sqrt((c[0]-f[0])*(c[0]-f[0])+(c[1]-f[1])*(c[1]-f[1]))}],function(T,C){if(m[C]!=="none"&&m[C]!=null){var A=xr(m[C],-b/2,-S/2,b,S,d.stroke,!0),P=T.r+T.offset,I=h?f:c;A.attr({rotation:T.rotate,x:I[0]+P*Math.cos(e.rotation),y:I[1]-P*Math.sin(e.rotation),silent:!0,z2:11}),i.add(A)}})}}},axisTickLabelEstimate:function(e,t,r,n,i,a,o,s){var l=FG(t,i,s);l&&$G(e,t,r,n,i,a,o,Ja.estimate)},axisTickLabelDetermine:function(e,t,r,n,i,a,o,s){var l=FG(t,i,s);l&&$G(e,t,r,n,i,a,o,Ja.determine);var u=N6e(e,i,a,n);D6e(e,t.labelLayoutList,u),j6e(e,i,a,n,e.tickDirection)},axisName:function(e,t,r,n,i,a,o,s){var l=r.ensureRecord(n);t.nameEl&&(i.remove(t.nameEl),t.nameEl=l.nameLayout=l.nameLocation=null);var u=e.axisName;if(Hj(u)){var c=e.nameLocation,f=e.nameDirection,h=n.getModel("nameTextStyle"),d=n.get("nameGap")||0,v=n.axis.getExtent(),g=n.axis.inverse?-1:1,m=new Ie(0,0),x=new Ie(0,0);c==="start"?(m.x=v[0]-g*d,x.x=-g):c==="end"?(m.x=v[1]+g*d,x.x=g):(m.x=(v[0]+v[1])/2,m.y=e.labelOffset+f*d,x.y=f);var _=Wr();x.transform(el(_,_,e.rotation));var b=n.get("nameRotate");b!=null&&(b=b*jl/180);var S,T;iv(c)?S=Wn.innerTextLayout(e.rotation,b??e.rotation,f):(S=O6e(e.rotation,c,b||0,v),T=e.raw.axisNameAvailableWidth,T!=null&&(T=Math.abs(T/Math.sin(S.rotation)),!isFinite(T)&&(T=null)));var C=h.getFont(),A=n.get("nameTruncate",!0)||{},P=A.ellipsis,I=rn(e.raw.nameTruncateMaxWidth,A.maxWidth,T),k=s.nameMarginLevel||0,E=new at({x:m.x,y:m.y,rotation:S.rotation,silent:Wn.isLabelSilent(n),style:Mt(h,{text:u,font:C,overflow:"truncate",width:I,ellipsis:P,fill:h.getTextColor()||n.get(["axisLine","lineStyle","color"]),align:h.get("align")||S.textAlign,verticalAlign:h.get("verticalAlign")||S.textVerticalAlign}),z2:1});if(rl({el:E,componentModel:n,itemName:u}),E.__fullText=u,E.anid="name",n.get("triggerEvent")){var D=Wn.makeAxisEventDataBase(n);D.targetType="axisName",D.name=u,Ne(E).eventData=D}a.add(E),E.updateTransform(),t.nameEl=E;var N=l.nameLayout=Uo({label:E,priority:E.z2,defaultAttr:{ignore:E.ignore},marginDefault:iv(c)?M6e[k]:P6e[k]});if(l.nameLocation=c,i.add(E),E.decomposeTransform(),e.shouldNameMoveOverlap&&N){var z=r.ensureRecord(n);r.resolveAxisNameOverlap(e,r,n,N,x,z)}}}};function $G(e,t,r,n,i,a,o,s){wre(t)||R6e(e,t,i,s,n,o);var l=t.labelLayoutList;B6e(e,n,l,a),F6e(n,e.rotation,l);var u=e.optionHideOverlap;E6e(n,l,u),u&&Ote(ht(l,function(c){return c&&!c.label.ignore})),k6e(e,r,n,l)}function O6e(e,t,r,n){var i=TN(r-e),a,o,s=n[0]>n[1],l=t==="start"&&!s||t!=="start"&&s;return Kd(i-jl/2)?(o=l?"bottom":"top",a="center"):Kd(i-jl*1.5)?(o=l?"top":"bottom",a="center"):(o="middle",ijl/2?a=l?"left":"right":a=l?"right":"left"),{rotation:i,textAlign:a,textVerticalAlign:o}}function E6e(e,t,r){if(pte(e.axis))return;function n(s,l,u){var c=Uo(t[l]),f=Uo(t[u]);if(!(!c||!f)){if(s===!1||c.suggestIgnore){Cg(c.label);return}if(f.suggestIgnore){Cg(f.label);return}var h=.1;if(!r){var d=[0,0,0,0];c=aO({marginForce:d},c),f=aO({marginForce:d},f)}eC(c,f,null,{touchThreshold:h})&&Cg(s?f.label:c.label)}}var i=e.get(["axisLabel","showMinLabel"]),a=e.get(["axisLabel","showMaxLabel"]),o=t.length;n(i,0,1),n(a,o-1,o-2)}function D6e(e,t,r){e.showMinorTicks||R(t,function(n){if(n&&n.label.ignore)for(var i=0;iu[0]&&isFinite(v)&&isFinite(u[0]);)d=J2(d),v=u[1]-d*o;else{var m=e.getTicks().length-1;m>o&&(d=J2(d));var x=d*o;g=Math.ceil(u[1]/d)*d,v=gr(g-x),v<0&&u[0]>=0?(v=0,g=gr(x)):g>0&&u[1]<=0&&(g=0,v=-gr(x))}var _=(i[0].value-a[0].value)/s,b=(i[o].value-a[o].value)/s;n.setExtent.call(e,v+d*_,g+d*b),n.setInterval.call(e,d),(_||b)&&n.setNiceExtent.call(e,v+d,g-d)}var GG=[[3,1],[0,2]],H6e=function(){function e(t,r,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=dO,this._initCartesian(t,r,n),this.model=t}return e.prototype.getRect=function(){return this._rect},e.prototype.update=function(t,r){var n=this._axesMap;this._updateScale(t,this.model);function i(o){var s,l=it(o),u=l.length;if(u){for(var c=[],f=u-1;f>=0;f--){var h=+l[f],d=o[h],v=d.model,g=d.scale;JI(g)&&v.get("alignTicks")&&v.get("interval")==null?c.push(d):(pf(g,v),JI(g)&&(s=d))}c.length&&(s||(s=c.pop(),pf(s.scale,s.model)),R(c,function(m){Sre(m.scale,m.model,s.scale)}))}}i(n.x),i(n.y);var a={};R(n.x,function(o){WG(n,"y",o,a)}),R(n.y,function(o){WG(n,"x",o,a)}),this.resize(this.model,r)},e.prototype.resize=function(t,r,n){var i=jr(t,r),a=this._rect=zt(t.getBoxLayoutParams(),i.refContainer),o=this._axesMap,s=this._coordsList,l=t.get("containLabel");if(pO(o,a),!n){var u=Y6e(a,s,o,l,r),c=void 0;if(l)gO?(gO(this._axesList,a),pO(o,a)):c=ZG(a.clone(),"axisLabel",null,a,o,u,i);else{var f=X6e(t,a,i),h=f.outerBoundsRect,d=f.parsedOuterBoundsContain,v=f.outerBoundsClamp;h&&(c=ZG(h,d,v,a,o,u,i))}Tre(a,o,Ja.determine,null,c,i)}R(this._coordsList,function(g){g.calcAffineTransform()})},e.prototype.getAxis=function(t,r){var n=this._axesMap[t];if(n!=null)return n[r||0]},e.prototype.getAxes=function(){return this._axesList.slice()},e.prototype.getCartesian=function(t,r){if(t!=null&&r!=null){var n="x"+t+"y"+r;return this._coordsMap[n]}ke(t)&&(r=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,a=this._coordsList;i0})==null;return hf(n,s,!0,!0,r),pO(i,n),l;function u(h){R(i[Be[h]],function(d){if(Iy(d.model)){var v=a.ensureRecord(d.model),g=v.labelInfoList;if(g)for(var m=0;m0&&!gn(d)&&d>1e-4&&(h/=d),h}}function Y6e(e,t,r,n,i){var a=new mre(q6e);return R(r,function(o){return R(o,function(s){if(Iy(s.model)){var l=!n;s.axisBuilder=G6e(e,t,s.model,i,a,l)}})}),a}function Tre(e,t,r,n,i,a){var o=r===Ja.determine;R(t,function(u){return R(u,function(c){Iy(c.model)&&(W6e(c.axisBuilder,e,c.model),c.axisBuilder.build(o?{axisTickLabelDetermine:!0}:{axisTickLabelEstimate:!0},{noPxChange:i}))})});var s={x:0,y:0};l(0),l(1);function l(u){s[Be[1-u]]=e[Tr[u]]<=a.refContainer[Tr[u]]*.5?0:1-u===1?2:1}R(t,function(u,c){return R(u,function(f){Iy(f.model)&&((n==="all"||o)&&f.axisBuilder.build({axisName:!0},{nameMarginLevel:s[c]}),o&&f.axisBuilder.build({axisLine:!0}))})})}function X6e(e,t,r){var n,i=e.get("outerBoundsMode",!0);i==="same"?n=t.clone():(i==null||i==="auto")&&(n=zt(e.get("outerBounds",!0)||cre,r.refContainer));var a=e.get("outerBoundsContain",!0),o;a==null||a==="auto"||We(["all","axisLabel"],a)<0?o="all":o=a;var s=[vw(be(e.get("outerBoundsClampWidth",!0),Vw[0]),t.width),vw(be(e.get("outerBoundsClampHeight",!0),Vw[1]),t.height)];return{outerBoundsRect:n,parsedOuterBoundsContain:o,outerBoundsClamp:s}}var q6e=function(e,t,r,n,i,a){var o=r.axis.dim==="x"?"y":"x";yre(e,t,r,n,i,a),iv(e.nameLocation)||R(t.recordMap[o],function(s){s&&s.labelInfoList&&s.dirVec&&_re(s.labelInfoList,s.dirVec,n,i)})};function K6e(e,t){var r={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return J6e(r,e,t),r.seriesInvolved&&eGe(r,e),r}function J6e(e,t,r){var n=t.getComponent("tooltip"),i=t.getComponent("axisPointer"),a=i.get("link",!0)||[],o=[];R(r.getCoordinateSystems(),function(s){if(!s.axisPointerEnabled)return;var l=Ny(s.model),u=e.coordSysAxesInfo[l]={};e.coordSysMap[l]=s;var c=s.model,f=c.getModel("tooltip",n);if(R(s.getAxes(),Fe(g,!1,null)),s.getTooltipAxes&&n&&f.get("show")){var h=f.get("trigger")==="axis",d=f.get(["axisPointer","type"])==="cross",v=s.getTooltipAxes(f.get(["axisPointer","axis"]));(h||d)&&R(v.baseAxes,Fe(g,d?"cross":!0,h)),d&&R(v.otherAxes,Fe(g,"cross",!1))}function g(m,x,_){var b=_.model.getModel("axisPointer",i),S=b.get("show");if(!(!S||S==="auto"&&!m&&!mO(b))){x==null&&(x=b.get("triggerTooltip")),b=m?Q6e(_,f,i,t,m,x):b;var T=b.get("snap"),C=b.get("triggerEmphasis"),A=Ny(_.model),P=x||T||_.type==="category",I=e.axesInfo[A]={key:A,axis:_,coordSys:s,axisPointerModel:b,triggerTooltip:x,triggerEmphasis:C,involveSeries:P,snap:T,useHandle:mO(b),seriesModels:[],linkGroup:null};u[A]=I,e.seriesInvolved=e.seriesInvolved||P;var k=tGe(a,_);if(k!=null){var E=o[k]||(o[k]={axesInfo:{}});E.axesInfo[A]=I,E.mapper=a[k].mapper,I.linkGroup=E}}}})}function Q6e(e,t,r,n,i,a){var o=t.getModel("axisPointer"),s=["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],l={};R(s,function(h){l[h]=Ae(o.get(h))}),l.snap=e.type!=="category"&&!!a,o.get("type")==="cross"&&(l.type="line");var u=l.label||(l.label={});if(u.show==null&&(u.show=!1),i==="cross"){var c=o.get(["label","show"]);if(u.show=c??!0,!a){var f=l.lineStyle=o.get("crossStyle");f&&Pe(u,f.textStyle)}}return e.model.getModel("axisPointer",new et(l,r,n))}function eGe(e,t){t.eachSeries(function(r){var n=r.coordinateSystem,i=r.get(["tooltip","trigger"],!0),a=r.get(["tooltip","show"],!0);!n||!n.model||i==="none"||i===!1||i==="item"||a===!1||r.get(["axisPointer","show"],!0)===!1||R(e.coordSysAxesInfo[Ny(n.model)],function(o){var s=o.axis;n.getAxis(s.dim)===s&&(o.seriesModels.push(r),o.seriesDataCount==null&&(o.seriesDataCount=0),o.seriesDataCount+=r.getData().count())})})}function tGe(e,t){for(var r=t.model,n=t.dim,i=0;i=0||e===t}function rGe(e){var t=Uj(e);if(t){var r=t.axisPointerModel,n=t.axis.scale,i=r.option,a=r.get("status"),o=r.get("value");o!=null&&(o=n.parse(o));var s=mO(r);a==null&&(i.status=s?"show":"hide");var l=n.getExtent().slice();l[0]>l[1]&&l.reverse(),(o==null||o>l[1])&&(o=l[1]),o0;return o&&s}var uGe=Je();function qG(e,t,r,n){if(e instanceof dre){var i=e.scale.type;if(i!=="category"&&i!=="ordinal")return r}var a=e.model,o=a.get("jitter"),s=a.get("jitterOverlap"),l=a.get("jitterMargin")||0,u=e.scale.type==="ordinal"?e.getBandWidth():null;return o>0?s?Lre(r,o,u,n):cGe(e,t,r,n,o,l):r}function Lre(e,t,r,n){if(r===null)return e+(Math.random()-.5)*t;var i=r-n*2,a=Math.min(Math.max(0,t),i);return e+(Math.random()-.5)*a}function cGe(e,t,r,n,i,a){var o=uGe(e);o.items||(o.items=[]);var s=o.items,l=KG(s,t,r,n,i,a,1),u=KG(s,t,r,n,i,a,-1),c=Math.abs(l-r)i/2||f&&h>f/2-n?Lre(r,i,f,n):(s.push({fixedCoord:t,floatCoord:c,r:n}),c)}function KG(e,t,r,n,i,a,o){for(var s=r,l=0;li/2)return Number.MAX_VALUE;if(o===1&&v>s||o===-1&&v0&&!v.min?v.min=0:v.min!=null&&v.min<0&&!v.max&&(v.max=0);var g=l;v.color!=null&&(g=Pe({color:v.color},l));var m=He(Ae(v),{boundaryGap:r,splitNumber:n,scale:i,axisLine:a,axisTick:o,axisLabel:s,name:v.text,showName:u,nameLocation:"end",nameGap:f,nameTextStyle:g,triggerEvent:h},!1);if(pe(c)){var x=m.name;m.name=c.replace("{value}",x??"")}else Ce(c)&&(m.name=c(m.name,m));var _=new et(m,null,this.ecModel);return cr(_,Jv.prototype),_.mainType="radar",_.componentIndex=this.componentIndex,_},this);this._indicatorModels=d},t.prototype.getIndicatorModels=function(){return this._indicatorModels},t.type="radar",t.defaultOption={z:0,center:["50%","50%"],radius:"50%",startAngle:90,axisName:{show:!0,color:J.color.axisLabel},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:He({lineStyle:{color:J.color.neutral20}},qp.axisLine),axisLabel:__(qp.axisLabel,!1),axisTick:__(qp.axisTick,!1),splitLine:__(qp.splitLine,!0),splitArea:__(qp.splitArea,!0),indicator:[]},t}(Ke),xGe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=this.group;a.removeAll(),this._buildAxes(r,i),this._buildSplitLineAndArea(r)},t.prototype._buildAxes=function(r,n){var i=r.coordinateSystem,a=i.getIndicatorAxes(),o=se(a,function(s){var l=s.model.get("showName")?s.name:"",u=new Wn(s.model,n,{axisName:l,position:[i.cx,i.cy],rotation:s.angle,labelDirection:-1,tickDirection:-1,nameDirection:1});return u});R(o,function(s){s.build(),this.group.add(s.group)},this)},t.prototype._buildSplitLineAndArea=function(r){var n=r.coordinateSystem,i=n.getIndicatorAxes();if(!i.length)return;var a=r.get("shape"),o=r.getModel("splitLine"),s=r.getModel("splitArea"),l=o.getModel("lineStyle"),u=s.getModel("areaStyle"),c=o.get("show"),f=s.get("show"),h=l.get("color"),d=u.get("color"),v=ae(h)?h:[h],g=ae(d)?d:[d],m=[],x=[];function _(V,F,$){var B=$%F.length;return V[B]=V[B]||[],B}if(a==="circle")for(var b=i[0].getTicksCoords(),S=n.cx,T=n.cy,C=0;C3?1.4:o>1?1.2:1.1,c=a>0?u:1/u;this._checkTriggerMoveZoom(this,"zoom","zoomOnMouseWheel",r,{scale:c,originX:s,originY:l,isAvailableBehavior:null})}if(i){var f=Math.abs(a),h=(a>0?1:-1)*(f>3?.4:f>1?.15:.05);this._checkTriggerMoveZoom(this,"scrollMove","moveOnMouseWheel",r,{scrollDelta:h,originX:s,originY:l,isAvailableBehavior:null})}}}},t.prototype._pinchHandler=function(r){if(!(eW(this._zr,"globalPan")||Kp(r))){var n=r.pinchScale>1?1.1:1/1.1;this._checkTriggerMoveZoom(this,"zoom",null,r,{scale:n,originX:r.pinchX,originY:r.pinchY,isAvailableBehavior:null})}},t.prototype._checkTriggerMoveZoom=function(r,n,i,a,o){r._checkPointer(a,o.originX,o.originY)&&(Gs(a.event),a.__ecRoamConsumed=!0,tW(r,n,i,a,o))},t}(xa);function Kp(e){return e.__ecRoamConsumed}var MGe=Je();function nC(e){var t=MGe(e);return t.roam=t.roam||{},t.uniform=t.uniform||{},t}function Jp(e,t,r,n){for(var i=nC(e),a=i.roam,o=a[t]=a[t]||[],s=0;s=4&&(c={x:parseFloat(h[0]||0),y:parseFloat(h[1]||0),width:parseFloat(h[2]),height:parseFloat(h[3])})}if(c&&s!=null&&l!=null&&(f=jre(c,{x:0,y:0,width:s,height:l}),!r.ignoreViewBox)){var d=i;i=new Me,i.add(d),d.scaleX=d.scaleY=f.scale,d.x=f.x,d.y=f.y}return!r.ignoreRootClip&&s!=null&&l!=null&&i.setClipPath(new Xe({shape:{x:0,y:0,width:s,height:l}})),{root:i,width:s,height:l,viewBoxRect:c,viewBoxTransform:f,named:a}},e.prototype._parseNode=function(t,r,n,i,a,o){var s=t.nodeName.toLowerCase(),l,u=i;if(s==="defs"&&(a=!0),s==="text"&&(o=!0),s==="defs"||s==="switch")l=r;else{if(!a){var c=gM[s];if(c&&xe(gM,s)){l=c.call(this,t,r);var f=t.getAttribute("name");if(f){var h={name:f,namedFrom:null,svgNodeTagLower:s,el:l};n.push(h),s==="g"&&(u=h)}else i&&n.push({name:i.name,namedFrom:i,svgNodeTagLower:s,el:l});r.add(l)}}var d=aW[s];if(d&&xe(aW,s)){var v=d.call(this,t),g=t.getAttribute("id");g&&(this._defs[g]=v)}}if(l&&l.isGroup)for(var m=t.firstChild;m;)m.nodeType===1?this._parseNode(m,l,n,u,a,o):m.nodeType===3&&o&&this._parseText(m,l),m=m.nextSibling},e.prototype._parseText=function(t,r){var n=new Jd({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});Wi(r,n),di(t,n,this._defsUsePending,!1,!1),IGe(n,r);var i=n.style,a=i.fontSize;a&&a<9&&(i.fontSize=9,n.scaleX*=a/9,n.scaleY*=a/9);var o=(i.fontSize||i.fontFamily)&&[i.fontStyle,i.fontWeight,(i.fontSize||12)+"px",i.fontFamily||"sans-serif"].join(" ");i.font=o;var s=n.getBoundingRect();return this._textX+=s.width,r.add(n),n},e.internalField=function(){gM={g:function(t,r){var n=new Me;return Wi(r,n),di(t,n,this._defsUsePending,!1,!1),n},rect:function(t,r){var n=new Xe;return Wi(r,n),di(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,r){var n=new Ko;return Wi(r,n),di(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,r){var n=new mr;return Wi(r,n),di(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,r){var n=new v0;return Wi(r,n),di(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,r){var n=t.getAttribute("points"),i;n&&(i=lW(n));var a=new bn({shape:{points:i||[]},silent:!0});return Wi(r,a),di(t,a,this._defsUsePending,!1,!1),a},polyline:function(t,r){var n=t.getAttribute("points"),i;n&&(i=lW(n));var a=new an({shape:{points:i||[]},silent:!0});return Wi(r,a),di(t,a,this._defsUsePending,!1,!1),a},image:function(t,r){var n=new Yr;return Wi(r,n),di(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,r){var n=t.getAttribute("x")||"0",i=t.getAttribute("y")||"0",a=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(a),this._textY=parseFloat(i)+parseFloat(o);var s=new Me;return Wi(r,s),di(t,s,this._defsUsePending,!1,!0),s},tspan:function(t,r){var n=t.getAttribute("x"),i=t.getAttribute("y");n!=null&&(this._textX=parseFloat(n)),i!=null&&(this._textY=parseFloat(i));var a=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0",s=new Me;return Wi(r,s),di(t,s,this._defsUsePending,!1,!0),this._textX+=parseFloat(a),this._textY+=parseFloat(o),s},path:function(t,r){var n=t.getAttribute("d")||"",i=JJ(n);return Wi(r,i),di(t,i,this._defsUsePending,!1,!1),i.silent=!0,i}}}(),e}(),aW={lineargradient:function(e){var t=parseInt(e.getAttribute("x1")||"0",10),r=parseInt(e.getAttribute("y1")||"0",10),n=parseInt(e.getAttribute("x2")||"10",10),i=parseInt(e.getAttribute("y2")||"0",10),a=new Pf(t,r,n,i);return oW(e,a),sW(e,a),a},radialgradient:function(e){var t=parseInt(e.getAttribute("cx")||"0",10),r=parseInt(e.getAttribute("cy")||"0",10),n=parseInt(e.getAttribute("r")||"0",10),i=new zN(t,r,n);return oW(e,i),sW(e,i),i}};function oW(e,t){var r=e.getAttribute("gradientUnits");r==="userSpaceOnUse"&&(t.global=!0)}function sW(e,t){for(var r=e.firstChild;r;){if(r.nodeType===1&&r.nodeName.toLocaleLowerCase()==="stop"){var n=r.getAttribute("offset"),i=void 0;n&&n.indexOf("%")>0?i=parseInt(n,10)/100:n?i=parseFloat(n):i=0;var a={};Nre(r,a,a);var o=a.stopColor||r.getAttribute("stop-color")||"#000000",s=a.stopOpacity||r.getAttribute("stop-opacity");if(s){var l=On(o),u=l&&l[3];u&&(l[3]*=Ps(s),o=la(l,"rgba"))}t.colorStops.push({offset:i,color:o})}r=r.nextSibling}}function Wi(e,t){e&&e.__inheritedStyle&&(t.__inheritedStyle||(t.__inheritedStyle={}),Pe(t.__inheritedStyle,e.__inheritedStyle))}function lW(e){for(var t=aC(e),r=[],n=0;n0;a-=2){var o=n[a],s=n[a-1],l=aC(o);switch(i=i||Wr(),s){case"translate":qa(i,i,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":IT(i,i,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":el(i,i,-parseFloat(l[0])*mM,[parseFloat(l[1]||"0"),parseFloat(l[2]||"0")]);break;case"skewX":var u=Math.tan(parseFloat(l[0])*mM);Ga(i,[1,0,u,1,0,0],i);break;case"skewY":var c=Math.tan(parseFloat(l[0])*mM);Ga(i,[1,c,0,1,0,0],i);break;case"matrix":i[0]=parseFloat(l[0]),i[1]=parseFloat(l[1]),i[2]=parseFloat(l[2]),i[3]=parseFloat(l[3]),i[4]=parseFloat(l[4]),i[5]=parseFloat(l[5]);break}}t.setLocalTransform(i)}}var cW=/([^\s:;]+)\s*:\s*([^:;]+)/g;function Nre(e,t,r){var n=e.getAttribute("style");if(n){cW.lastIndex=0;for(var i;(i=cW.exec(n))!=null;){var a=i[1],o=xe(Ww,a)?Ww[a]:null;o&&(t[o]=i[2]);var s=xe(Hw,a)?Hw[a]:null;s&&(r[s]=i[2])}}}function RGe(e,t,r){for(var n=0;n0,_={api:n,geo:l,mapOrGeoModel:t,data:s,isVisualEncodedByVisualMap:x,isGeo:o,transformInfoRaw:h};l.resourceType==="geoJSON"?this._buildGeoJSON(_):l.resourceType==="geoSVG"&&this._buildSVG(_),this._updateController(t,m,r,n),this._updateMapSelectHandler(t,u,n,i)},e.prototype._buildGeoJSON=function(t){var r=this._regionsGroupByName=_e(),n=_e(),i=this._regionsGroup,a=t.transformInfoRaw,o=t.mapOrGeoModel,s=t.data,l=t.geo.projection,u=l&&l.stream;function c(d,v){return v&&(d=v(d)),d&&[d[0]*a.scaleX+a.x,d[1]*a.scaleY+a.y]}function f(d){for(var v=[],g=!u&&l&&l.project,m=0;m=0)&&(h=i);var d=o?{normal:{align:"center",verticalAlign:"middle"}}:null;Ur(t,Nr(n),{labelFetcher:h,labelDataIndex:f,defaultText:r},d);var v=t.getTextContent();if(v&&(Rre(v).ignore=v.ignore,t.textConfig&&o)){var g=t.getBoundingRect().clone();t.textConfig.layoutRect=g,t.textConfig.position=[(o[0]-g.x)/g.width*100+"%",(o[1]-g.y)/g.height*100+"%"]}t.disableLabelAnimation=!0}else t.removeTextContent(),t.removeTextConfig(),t.disableLabelAnimation=null}function pW(e,t,r,n,i,a){e.data?e.data.setItemGraphicEl(a,t):Ne(t).eventData={componentType:"geo",componentIndex:i.componentIndex,geoIndex:i.componentIndex,name:r,region:n&&n.option||{}}}function gW(e,t,r,n,i){e.data||rl({el:t,componentModel:i,itemName:r,itemTooltipOption:n.get("tooltip")})}function mW(e,t,r,n,i){t.highDownSilentOnTouch=!!i.get("selectedMode");var a=n.getModel("emphasis"),o=a.get("focus");return Gt(t,o,a.get("blurScope"),a.get("disabled")),e.isGeo&&U5e(t,i,r),o}function yW(e,t,r){var n=[],i;function a(){i=[]}function o(){i.length&&(n.push(i),i=[])}var s=t({polygonStart:a,polygonEnd:o,lineStart:a,lineEnd:o,point:function(l,u){isFinite(l)&&isFinite(u)&&i.push([l,u])},sphere:function(){}});return!r&&s.polygonStart(),R(e,function(l){s.lineStart();for(var u=0;u-1&&(i.style.stroke=i.style.fill,i.style.fill=J.color.neutral00,i.style.lineWidth=2),i},t.type="series.map",t.dependencies=["geo"],t.layoutMode="box",t.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:J.color.tertiary},itemStyle:{borderWidth:.5,borderColor:J.color.border,areaColor:J.color.background},emphasis:{label:{show:!0,color:J.color.primary},itemStyle:{areaColor:J.color.highlight}},select:{label:{show:!0,color:J.color.primary},itemStyle:{color:J.color.highlight}},nameProperty:"name"},t}(Tt);function nWe(e,t){var r={};return R(e,function(n){n.each(n.mapDimension("value"),function(i,a){var o="ec-"+n.getName(a);r[o]=r[o]||[],isNaN(i)||r[o].push(i)})}),e[0].map(e[0].mapDimension("value"),function(n,i){for(var a="ec-"+e[0].getName(i),o=0,s=1/0,l=-1/0,u=r[a].length,c=0;c1?(b.width=_,b.height=_/g):(b.height=_,b.width=_*g),b.y=x[1]-b.height/2,b.x=x[0]-b.width/2;else{var S=e.getBoxLayoutParams();S.aspect=g,b=zt(S,v),b=OQ(e,b,g)}this.setViewRect(b.x,b.y,b.width,b.height),this.setCenter(e.get("center")),this.setZoom(e.get("zoom"))}function sWe(e,t){R(t.get("geoCoord"),function(r,n){e.addGeoCoord(n,r)})}var lWe=function(){function e(){this.dimensions=zre}return e.prototype.create=function(t,r){var n=[];function i(o){return{nameProperty:o.get("nameProperty"),aspectScale:o.get("aspectScale"),projection:o.get("projection")}}t.eachComponent("geo",function(o,s){var l=o.get("map"),u=new _O(l+s,l,ne({nameMap:o.get("nameMap"),api:r,ecModel:t},i(o)));u.zoomLimit=o.get("scaleLimit"),n.push(u),o.coordinateSystem=u,u.model=o,u.resize=wW,u.resize(o,r)}),t.eachSeries(function(o){x0({targetModel:o,coordSysType:"geo",coordSysProvider:function(){var s=o.subType==="map"?o.getHostGeoModel():o.getReferringComponents("geo",er).models[0];return s&&s.coordinateSystem},allowNotFound:!0})});var a={};return t.eachSeriesByType("map",function(o){if(!o.getHostGeoModel()){var s=o.getMapType();a[s]=a[s]||[],a[s].push(o)}}),R(a,function(o,s){var l=se(o,function(c){return c.get("nameMap")}),u=new _O(s,s,ne({nameMap:PT(l),api:r,ecModel:t},i(o[0])));u.zoomLimit=rn.apply(null,se(o,function(c){return c.get("scaleLimit")})),n.push(u),u.resize=wW,u.resize(o[0],r),R(o,function(c){c.coordinateSystem=u,sWe(u,c)})}),n},e.prototype.getFilledRegions=function(t,r,n,i){for(var a=(t||[]).slice(),o=_e(),s=0;s=0;o--){var s=i[o];s.hierNode={defaultAncestor:null,ancestor:s,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},r.push(s)}}function vWe(e,t){var r=e.isExpand?e.children:[],n=e.parentNode.children,i=e.hierNode.i?n[e.hierNode.i-1]:null;if(r.length){gWe(e);var a=(r[0].hierNode.prelim+r[r.length-1].hierNode.prelim)/2;i?(e.hierNode.prelim=i.hierNode.prelim+t(e,i),e.hierNode.modifier=e.hierNode.prelim-a):e.hierNode.prelim=a}else i&&(e.hierNode.prelim=i.hierNode.prelim+t(e,i));e.parentNode.hierNode.defaultAncestor=mWe(e,i,e.parentNode.hierNode.defaultAncestor||n[0],t)}function pWe(e){var t=e.hierNode.prelim+e.parentNode.hierNode.modifier;e.setLayout({x:t},!0),e.hierNode.modifier+=e.parentNode.hierNode.modifier}function SW(e){return arguments.length?e:_We}function Ag(e,t){return e-=Math.PI/2,{x:t*Math.cos(e),y:t*Math.sin(e)}}function gWe(e){for(var t=e.children,r=t.length,n=0,i=0;--r>=0;){var a=t[r];a.hierNode.prelim+=n,a.hierNode.modifier+=n,i+=a.hierNode.change,n+=a.hierNode.shift+i}}function mWe(e,t,r,n){if(t){for(var i=e,a=e,o=a.parentNode.children[0],s=t,l=i.hierNode.modifier,u=a.hierNode.modifier,c=o.hierNode.modifier,f=s.hierNode.modifier;s=yM(s),a=xM(a),s&&a;){i=yM(i),o=xM(o),i.hierNode.ancestor=e;var h=s.hierNode.prelim+f-a.hierNode.prelim-u+n(s,a);h>0&&(xWe(yWe(s,e,r),e,h),u+=h,l+=h),f+=s.hierNode.modifier,u+=a.hierNode.modifier,l+=i.hierNode.modifier,c+=o.hierNode.modifier}s&&!yM(i)&&(i.hierNode.thread=s,i.hierNode.modifier+=f-l),a&&!xM(o)&&(o.hierNode.thread=a,o.hierNode.modifier+=u-c,r=e)}return r}function yM(e){var t=e.children;return t.length&&e.isExpand?t[t.length-1]:e.hierNode.thread}function xM(e){var t=e.children;return t.length&&e.isExpand?t[0]:e.hierNode.thread}function yWe(e,t,r){return e.hierNode.ancestor.parentNode===t.parentNode?e.hierNode.ancestor:r}function xWe(e,t,r){var n=r/(t.hierNode.i-e.hierNode.i);t.hierNode.change-=n,t.hierNode.shift+=r,t.hierNode.modifier+=r,t.hierNode.prelim+=r,e.hierNode.change+=n}function _We(e,t){return e.parentNode===t.parentNode?1:2}var bWe=function(){function e(){this.parentPoint=[],this.childPoints=[]}return e}(),wWe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultStyle=function(){return{stroke:J.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new bWe},t.prototype.buildPath=function(r,n){var i=n.childPoints,a=i.length,o=n.parentPoint,s=i[0],l=i[a-1];if(a===1){r.moveTo(o[0],o[1]),r.lineTo(s[0],s[1]);return}var u=n.orient,c=u==="TB"||u==="BT"?0:1,f=1-c,h=ve(n.forkPosition,1),d=[];d[c]=o[c],d[f]=o[f]+(l[f]-o[f])*h,r.moveTo(o[0],o[1]),r.lineTo(d[0],d[1]),r.moveTo(s[0],s[1]),d[c]=s[c],r.lineTo(d[0],d[1]),d[c]=l[c],r.lineTo(d[0],d[1]),r.lineTo(l[0],l[1]);for(var v=1;v_.x,T||(S=S-Math.PI));var A=T?"left":"right",P=s.getModel("label"),I=P.get("rotate"),k=I*(Math.PI/180),E=m.getTextContent();E&&(m.setTextConfig({position:P.get("position")||A,rotation:I==null?-S:k,origin:"center"}),E.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),N=D==="relative"?Yd(o.getAncestorsIndices(),o.getDescendantIndices()):D==="ancestor"?o.getAncestorsIndices():D==="descendant"?o.getDescendantIndices():null;N&&(Ne(r).focus=N),TWe(i,o,c,r,v,d,g,n),r.__edge&&(r.onHoverStateChange=function(z){if(z!=="blur"){var V=o.parentNode&&e.getItemGraphicEl(o.parentNode.dataIndex);V&&V.hoverState===d0||yw(r.__edge,z)}})}function TWe(e,t,r,n,i,a,o,s){var l=t.getModel(),u=e.get("edgeShape"),c=e.get("layout"),f=e.getOrient(),h=e.get(["lineStyle","curveness"]),d=e.get("edgeForkPosition"),v=l.getModel("lineStyle").getLineStyle(),g=n.__edge;if(u==="curve")t.parentNode&&t.parentNode!==r&&(g||(g=n.__edge=new $v({shape:bO(c,f,h,i,i)})),lt(g,{shape:bO(c,f,h,a,o)},e));else if(u==="polyline"&&c==="orthogonal"&&t!==r&&t.children&&t.children.length!==0&&t.isExpand===!0){for(var m=t.children,x=[],_=0;_r&&(r=i.height)}this.height=r+1},e.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var r=0,n=this.children,i=n.length;r=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,r)},e.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},e.prototype.getModel=function(t){if(!(this.dataIndex<0)){var r=this.hostTree,n=r.data.getItemModel(this.dataIndex);return n.getModel(t)}},e.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},e.prototype.setVisual=function(t,r){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,r)},e.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},e.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},e.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},e.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,r=0;r=0){var n=r.getData().tree.root,i=e.targetNode;if(pe(i)&&(i=n.getNodeById(i)),i&&n.contains(i))return{node:i};var a=e.targetNodeId;if(a!=null&&(i=n.getNodeById(a)))return{node:i}}}function Hre(e){for(var t=[];e;)e=e.parentNode,e&&t.push(e);return t.reverse()}function eR(e,t){var r=Hre(e);return We(r,t)>=0}function oC(e,t){for(var r=[];e;){var n=e.dataIndex;r.push({name:e.name,dataIndex:n,value:t.getRawValue(n)}),e=e.parentNode}return r.reverse(),r}var EWe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.hasSymbolVisual=!0,r.ignoreStyleOnData=!0,r}return t.prototype.getInitialData=function(r){var n={name:r.name,children:r.data},i=r.leaves||{},a=new et(i,this,this.ecModel),o=Qj.createTree(n,this,s);function s(f){f.wrapMethod("getItemModel",function(h,d){var v=o.getNodeByDataIndex(d);return v&&v.children.length&&v.isExpand||(h.parentModel=a),h})}var l=0;o.eachNode("preorder",function(f){f.depth>l&&(l=f.depth)});var u=r.expandAndCollapse,c=u&&r.initialTreeDepth>=0?r.initialTreeDepth:l;return o.root.eachNode("preorder",function(f){var h=f.hostTree.data.getRawDataItem(f.dataIndex);f.isExpand=h&&h.collapsed!=null?!h.collapsed:f.depth<=c}),o.data},t.prototype.getOrient=function(){var r=this.get("orient");return r==="horizontal"?r="LR":r==="vertical"&&(r="TB"),r},t.prototype.setZoom=function(r){this.option.zoom=r},t.prototype.setCenter=function(r){this.option.center=r},t.prototype.formatTooltip=function(r,n,i){for(var a=this.getData().tree,o=a.root.children[0],s=a.getNodeByDataIndex(r),l=s.getValue(),u=s.name;s&&s!==o;)u=s.parentNode.name+"."+u,s=s.parentNode;return Cr("nameValue",{name:u,value:l,noValue:isNaN(l)||l==null})},t.prototype.getDataParams=function(r){var n=e.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(r);return n.treeAncestors=oC(i,this),n.collapsed=!i.isExpand,n},t.type="series.tree",t.layoutMode="box",t.defaultOption={z:2,coordinateSystemUsage:"box",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,roamTrigger:"global",nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:J.color.borderTint,width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t}(Tt);function DWe(e,t,r){for(var n=[e],i=[],a;a=n.pop();)if(i.push(a),a.isExpand){var o=a.children;if(o.length)for(var s=0;s=0;a--)r.push(i[a])}}function NWe(e,t){e.eachSeriesByType("tree",function(r){jWe(r,t)})}function jWe(e,t){var r=jr(e,t).refContainer,n=zt(e.getBoxLayoutParams(),r);e.layoutInfo=n;var i=e.get("layout"),a=0,o=0,s=null;i==="radial"?(a=2*Math.PI,o=Math.min(n.height,n.width)/2,s=SW(function(S,T){return(S.parentNode===T.parentNode?1:2)/S.depth})):(a=n.width,o=n.height,s=SW());var l=e.getData().tree.root,u=l.children[0];if(u){dWe(l),DWe(u,vWe,s),l.hierNode.modifier=-u.hierNode.prelim,tg(u,pWe);var c=u,f=u,h=u;tg(u,function(S){var T=S.getLayout().x;Tf.getLayout().x&&(f=S),S.depth>h.depth&&(h=S)});var d=c===f?1:s(c,f)/2,v=d-c.getLayout().x,g=0,m=0,x=0,_=0;if(i==="radial")g=a/(f.getLayout().x+d+v),m=o/(h.depth-1||1),tg(u,function(S){x=(S.getLayout().x+v)*g,_=(S.depth-1)*m;var T=Ag(x,_);S.setLayout({x:T.x,y:T.y,rawX:x,rawY:_},!0)});else{var b=e.getOrient();b==="RL"||b==="LR"?(m=o/(f.getLayout().x+d+v),g=a/(h.depth-1||1),tg(u,function(S){_=(S.getLayout().x+v)*m,x=b==="LR"?(S.depth-1)*g:a-(S.depth-1)*g,S.setLayout({x,y:_},!0)})):(b==="TB"||b==="BT")&&(g=a/(f.getLayout().x+d+v),m=o/(h.depth-1||1),tg(u,function(S){x=(S.getLayout().x+v)*g,_=b==="TB"?(S.depth-1)*m:o-(S.depth-1)*m,S.setLayout({x,y:_},!0)}))}}}function RWe(e){e.eachSeriesByType("tree",function(t){var r=t.getData(),n=r.tree;n.eachNode(function(i){var a=i.getModel(),o=a.getModel("itemStyle").getItemStyle(),s=r.ensureUniqueItemVisual(i.dataIndex,"style");ne(s,o)})})}function BWe(e){e.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(t,r){r.eachComponent({mainType:"series",subType:"tree",query:t},function(n){var i=t.dataIndex,a=n.getData().tree,o=a.getNodeByDataIndex(i);o.isExpand=!o.isExpand})}),e.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},function(t,r,n){r.eachComponent({mainType:"series",subType:"tree",query:t},function(i){var a=i.coordinateSystem,o=iC(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}function zWe(e){e.registerChartView(SWe),e.registerSeriesModel(EWe),e.registerLayout(NWe),e.registerVisual(RWe),BWe(e)}var PW=["treemapZoomToNode","treemapRender","treemapMove"];function $We(e){for(var t=0;t1;)a=a.parentNode;var o=BI(e.ecModel,a.name||a.dataIndex+"",n);i.setVisual("decal",o)})}var FWe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.preventUsingHoverLayer=!0,r}return t.prototype.getInitialData=function(r,n){var i={name:r.name,children:r.data};Zre(i);var a=r.levels||[],o=this.designatedVisualItemStyle={},s=new et({itemStyle:o},this,n);a=r.levels=VWe(a,n);var l=se(a||[],function(f){return new et(f,s,n)},this),u=Qj.createTree(i,this,c);function c(f){f.wrapMethod("getItemModel",function(h,d){var v=u.getNodeByDataIndex(d),g=v?l[v.depth]:null;return h.parentModel=g||s,h})}return u.data},t.prototype.optionUpdated=function(){this.resetViewRoot()},t.prototype.formatTooltip=function(r,n,i){var a=this.getData(),o=this.getRawValue(r),s=a.getName(r);return Cr("nameValue",{name:s,value:o})},t.prototype.getDataParams=function(r){var n=e.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(r);return n.treeAncestors=oC(i,this),n.treePathInfo=n.treeAncestors,n},t.prototype.setLayoutInfo=function(r){this.layoutInfo=this.layoutInfo||{},ne(this.layoutInfo,r)},t.prototype.mapIdToIndex=function(r){var n=this._idIndexMap;n||(n=this._idIndexMap=_e(),this._idIndexMapCount=0);var i=n.get(r);return i==null&&n.set(r,i=this._idIndexMapCount++),i},t.prototype.getViewRoot=function(){return this._viewRoot},t.prototype.resetViewRoot=function(r){r?this._viewRoot=r:r=this._viewRoot;var n=this.getRawData().tree.root;(!r||r!==n&&!n.contains(r))&&(this._viewRoot=n)},t.prototype.enableAriaDecal=function(){Ure(this)},t.type="series.treemap",t.layoutMode="box",t.defaultOption={progressive:0,coordinateSystemUsage:"box",left:J.size.l,top:J.size.xxxl,right:J.size.l,bottom:J.size.xxxl,sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.32*.32,scaleLimit:{max:5,min:.2},roam:!0,roamTrigger:"global",nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",bottom:J.size.m,emptyItemWidth:25,itemStyle:{color:J.color.backgroundShade,textStyle:{color:J.color.secondary}},emphasis:{itemStyle:{color:J.color.background}}},label:{show:!0,distance:0,padding:5,position:"inside",color:J.color.neutral00,overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:J.color.neutral00,borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},t}(Tt);function Zre(e){var t=0;R(e.children,function(n){Zre(n);var i=n.value;ae(i)&&(i=i[0]),t+=i});var r=e.value;ae(r)&&(r=r[0]),(r==null||isNaN(r))&&(r=t),r<0&&(r=0),ae(e.value)?e.value[0]=r:e.value=r}function VWe(e,t){var r=Pt(t.get("color")),n=Pt(t.get(["aria","decal","decals"]));if(r){e=e||[];var i,a;R(e,function(s){var l=new et(s),u=l.get("color"),c=l.get("decal");(l.get(["itemStyle","color"])||u&&u!=="none")&&(i=!0),(l.get(["itemStyle","decal"])||c&&c!=="none")&&(a=!0)});var o=e[0]||(e[0]={});return i||(o.color=r.slice()),!a&&n&&(o.decal=n.slice()),e}}var GWe=8,kW=8,_M=5,WWe=function(){function e(t){this.group=new Me,t.add(this.group)}return e.prototype.render=function(t,r,n,i){var a=t.getModel("breadcrumb"),o=this.group;if(o.removeAll(),!(!a.get("show")||!n)){var s=a.getModel("itemStyle"),l=a.getModel("emphasis"),u=s.getModel("textStyle"),c=l.getModel(["itemStyle","textStyle"]),f=jr(t,r).refContainer,h={left:a.get("left"),right:a.get("right"),top:a.get("top"),bottom:a.get("bottom")},d={emptyItemWidth:a.get("emptyItemWidth"),totalWidth:0,renderList:[]},v=zt(h,f);this._prepare(n,d,u),this._renderContent(t,d,v,s,l,u,c,i),ZT(o,h,f)}},e.prototype._prepare=function(t,r,n){for(var i=t;i;i=i.parentNode){var a=Ir(i.getModel().get("name"),""),o=n.getTextRect(a),s=Math.max(o.width+GWe*2,r.emptyItemWidth);r.totalWidth+=s+kW,r.renderList.push({node:i,text:a,width:s})}},e.prototype._renderContent=function(t,r,n,i,a,o,s,l){for(var u=0,c=r.emptyItemWidth,f=t.get(["breadcrumb","height"]),h=r.totalWidth,d=r.renderList,v=a.getModel("itemStyle").getItemStyle(),g=d.length-1;g>=0;g--){var m=d[g],x=m.node,_=m.width,b=m.text;h>n.width&&(h-=_-c,_=c,b=null);var S=new bn({shape:{points:HWe(u,0,_,f,g===d.length-1,g===0)},style:Pe(i.getItemStyle(),{lineJoin:"bevel"}),textContent:new at({style:Mt(o,{text:b})}),textConfig:{position:"inside"},z2:Bv*1e4,onclick:Fe(l,x)});S.disableLabelAnimation=!0,S.getTextContent().ensureState("emphasis").style=Mt(s,{text:b}),S.ensureState("emphasis").style=v,Gt(S,a.get("focus"),a.get("blurScope"),a.get("disabled")),this.group.add(S),UWe(S,t,x),u+=_+kW}},e.prototype.remove=function(){this.group.removeAll()},e}();function HWe(e,t,r,n,i,a){var o=[[i?e:e-_M,t],[e+r,t],[e+r,t+n],[i?e:e-_M,t+n]];return!a&&o.splice(2,0,[e+r+_M,t+n/2]),!i&&o.push([e,t+n/2]),o}function UWe(e,t,r){Ne(e).eventData={componentType:"series",componentSubType:"treemap",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:r&&r.dataIndex,name:r&&r.name},treePathInfo:r&&oC(r,t)}}var ZWe=function(){function e(){this._storage=[],this._elExistsMap={}}return e.prototype.add=function(t,r,n,i,a){return this._elExistsMap[t.id]?!1:(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:r,duration:n,delay:i,easing:a}),!0)},e.prototype.finished=function(t){return this._finishedCallback=t,this},e.prototype.start=function(){for(var t=this,r=this._storage.length,n=function(){r--,r<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},i=0,a=this._storage.length;iIW||Math.abs(r.dy)>IW)){var n=this.seriesModel.getData().tree.root;if(!n)return;var i=n.getLayout();if(!i)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:i.x+r.dx,y:i.y+r.dy,width:i.width,height:i.height}})}},t.prototype._onZoom=function(r){var n=r.originX,i=r.originY,a=r.scale;if(this._state!=="animating"){var o=this.seriesModel.getData().tree.root;if(!o)return;var s=o.getLayout();if(!s)return;var l=new Oe(s.x,s.y,s.width,s.height),u=null,c=this._controllerHost;u=c.zoomLimit;var f=c.zoom=c.zoom||1;if(f*=a,u){var h=u.min||0,d=u.max||1/0;f=Math.max(Math.min(d,f),h)}var v=f/c.zoom;c.zoom=f;var g=this.seriesModel.layoutInfo;n-=g.x,i-=g.y;var m=Wr();qa(m,m,[-n,-i]),IT(m,m,[v,v]),qa(m,m,[n,i]),l.applyTransform(m),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:l.x,y:l.y,width:l.width,height:l.height}})}},t.prototype._initEvents=function(r){var n=this;r.on("click",function(i){if(n._state==="ready"){var a=n.seriesModel.get("nodeClick",!0);if(a){var o=n.findTarget(i.offsetX,i.offsetY);if(o){var s=o.node;if(s.getLayout().isLeafRoot)n._rootToNode(o);else if(a==="zoomToNode")n._zoomToNode(o);else if(a==="link"){var l=s.hostTree.data.getItemModel(s.dataIndex),u=l.get("link",!0),c=l.get("target",!0)||"blank";u&&ww(u,c)}}}}},this)},t.prototype._renderBreadcrumb=function(r,n,i){var a=this;i||(i=r.get("leafDepth",!0)!=null?{node:r.getViewRoot()}:this.findTarget(n.getWidth()/2,n.getHeight()/2),i||(i={node:r.getData().tree.root})),(this._breadcrumb||(this._breadcrumb=new WWe(this.group))).render(r,n,i.node,function(o){a._state!=="animating"&&(eR(r.getViewRoot(),o)?a._rootToNode({node:o}):a._zoomToNode({node:o}))})},t.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage=rg(),this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},t.prototype.dispose=function(){this._clearController()},t.prototype._zoomToNode=function(r){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:r.node})},t.prototype._rootToNode=function(r){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:r.node})},t.prototype.findTarget=function(r,n){var i,a=this.seriesModel.getViewRoot();return a.eachNode({attr:"viewChildren",order:"preorder"},function(o){var s=this._storage.background[o.getRawIndex()];if(s){var l=s.transformCoordToLocal(r,n),u=s.shape;if(u.x<=l[0]&&l[0]<=u.x+u.width&&u.y<=l[1]&&l[1]<=u.y+u.height)i={node:o,offsetX:l[0],offsetY:l[1]};else return!1}},this),i},t.type="treemap",t}(bt);function rg(){return{nodeGroup:[],background:[],content:[]}}function QWe(e,t,r,n,i,a,o,s,l,u){if(!o)return;var c=o.getLayout(),f=e.getData(),h=o.getModel();if(f.setItemGraphicEl(o.dataIndex,null),!c||!c.isInView)return;var d=c.width,v=c.height,g=c.borderWidth,m=c.invisible,x=o.getRawIndex(),_=s&&s.getRawIndex(),b=o.viewChildren,S=c.upperHeight,T=b&&b.length,C=h.getModel("itemStyle"),A=h.getModel(["emphasis","itemStyle"]),P=h.getModel(["blur","itemStyle"]),I=h.getModel(["select","itemStyle"]),k=C.get("borderRadius")||0,E=le("nodeGroup",wO);if(!E)return;if(l.add(E),E.x=c.x||0,E.y=c.y||0,E.markRedraw(),Uw(E).nodeWidth=d,Uw(E).nodeHeight=v,c.isAboveViewRoot)return E;var D=le("background",LW,u,qWe);D&&W(E,D,T&&c.upperLabelHeight);var N=h.getModel("emphasis"),z=N.get("focus"),V=N.get("blurScope"),F=N.get("disabled"),$=z==="ancestor"?o.getAncestorsIndices():z==="descendant"?o.getDescendantIndices():z;if(T)by(E)&&Ec(E,!1),D&&(Ec(D,!F),f.setItemGraphicEl(o.dataIndex,D),MI(D,$,V));else{var B=le("content",LW,u,KWe);B&&G(E,B),D.disableMorphing=!0,D&&by(D)&&Ec(D,!1),Ec(E,!F),f.setItemGraphicEl(o.dataIndex,E);var Z=h.getShallow("cursor");Z&&B.attr("cursor",Z),MI(E,$,V)}return E;function W(me,ie,he){var ue=Ne(ie);if(ue.dataIndex=o.dataIndex,ue.seriesIndex=e.seriesIndex,ie.setShape({x:0,y:0,width:d,height:v,r:k}),m)Y(ie);else{ie.invisible=!1;var te=o.getVisual("style"),Ve=te.stroke,Se=DW(C);Se.fill=Ve;var Ge=pc(A);Ge.fill=A.get("borderColor");var Ye=pc(P);Ye.fill=P.get("borderColor");var vt=pc(I);if(vt.fill=I.get("borderColor"),he){var Ft=d-2*g;K(ie,Ve,te.opacity,{x:g,y:0,width:Ft,height:S})}else ie.removeTextContent();ie.setStyle(Se),ie.ensureState("emphasis").style=Ge,ie.ensureState("blur").style=Ye,ie.ensureState("select").style=vt,ff(ie)}me.add(ie)}function G(me,ie){var he=Ne(ie);he.dataIndex=o.dataIndex,he.seriesIndex=e.seriesIndex;var ue=Math.max(d-2*g,0),te=Math.max(v-2*g,0);if(ie.culling=!0,ie.setShape({x:g,y:g,width:ue,height:te,r:k}),m)Y(ie);else{ie.invisible=!1;var Ve=o.getVisual("style"),Se=Ve.fill,Ge=DW(C);Ge.fill=Se,Ge.decal=Ve.decal;var Ye=pc(A),vt=pc(P),Ft=pc(I);K(ie,Se,Ve.opacity,null),ie.setStyle(Ge),ie.ensureState("emphasis").style=Ye,ie.ensureState("blur").style=vt,ie.ensureState("select").style=Ft,ff(ie)}me.add(ie)}function Y(me){!me.invisible&&a.push(me)}function K(me,ie,he,ue){var te=h.getModel(ue?EW:OW),Ve=Ir(h.get("name"),null),Se=te.getShallow("show");Ur(me,Nr(h,ue?EW:OW),{defaultText:Se?Ve:null,inheritColor:ie,defaultOpacity:he,labelFetcher:e,labelDataIndex:o.dataIndex});var Ge=me.getTextContent();if(Ge){var Ye=Ge.style,vt=l0(Ye.padding||0);ue&&(me.setTextConfig({layoutRect:ue}),Ge.disableLabelLayout=!0),Ge.beforeUpdate=function(){var rr=Math.max((ue?ue.width:me.shape.width)-vt[1]-vt[3],0),Nn=Math.max((ue?ue.height:me.shape.height)-vt[0]-vt[2],0);(Ye.width!==rr||Ye.height!==Nn)&&Ge.setStyle({width:rr,height:Nn})},Ye.truncateMinChar=2,Ye.lineOverflow="truncate",ee(Ye,ue,c);var Ft=Ge.getState("emphasis");ee(Ft?Ft.style:null,ue,c)}}function ee(me,ie,he){var ue=me?me.text:null;if(!ie&&he.isLeafRoot&&ue!=null){var te=e.get("drillDownIcon",!0);me.text=te?te+" "+ue:ue}}function le(me,ie,he,ue){var te=_!=null&&r[me][_],Ve=i[me];return te?(r[me][_]=null,fe(Ve,te)):m||(te=new ie,te instanceof pa&&(te.z2=e8e(he,ue)),De(Ve,te)),t[me][x]=te}function fe(me,ie){var he=me[x]={};ie instanceof wO?(he.oldX=ie.x,he.oldY=ie.y):he.oldShape=ne({},ie.shape)}function De(me,ie){var he=me[x]={},ue=o.parentNode,te=ie instanceof Me;if(ue&&(!n||n.direction==="drillDown")){var Ve=0,Se=0,Ge=i.background[ue.getRawIndex()];!n&&Ge&&Ge.oldShape&&(Ve=Ge.oldShape.width,Se=Ge.oldShape.height),te?(he.oldX=0,he.oldY=Se):he.oldShape={x:Ve,y:Se,width:0,height:0}}he.fadein=!te}}function e8e(e,t){return e*XWe+t}var Ry=R,t8e=ke,Zw=-1,Hr=function(){function e(t){var r=t.mappingMethod,n=t.type,i=this.option=Ae(t);this.type=n,this.mappingMethod=r,this._normalizeData=i8e[r];var a=e.visualHandlers[n];this.applyVisual=a.applyVisual,this.getColorMapper=a.getColorMapper,this._normalizedToVisual=a._normalizedToVisual[r],r==="piecewise"?(bM(i),r8e(i)):r==="category"?i.categories?n8e(i):bM(i,!0):(xn(r!=="linear"||i.dataExtent),bM(i))}return e.prototype.mapValueToVisual=function(t){var r=this._normalizeData(t);return this._normalizedToVisual(r,t)},e.prototype.getNormalizer=function(){return ge(this._normalizeData,this)},e.listVisualTypes=function(){return it(e.visualHandlers)},e.isValidType=function(t){return e.visualHandlers.hasOwnProperty(t)},e.eachVisual=function(t,r,n){ke(t)?R(t,r,n):r.call(n,t)},e.mapVisual=function(t,r,n){var i,a=ae(t)?[]:ke(t)?{}:(i=!0,null);return e.eachVisual(t,function(o,s){var l=r.call(n,o,s);i?a=l:a[s]=l}),a},e.retrieveVisuals=function(t){var r={},n;return t&&Ry(e.visualHandlers,function(i,a){t.hasOwnProperty(a)&&(r[a]=t[a],n=!0)}),n?r:null},e.prepareVisualTypes=function(t){if(ae(t))t=t.slice();else if(t8e(t)){var r=[];Ry(t,function(n,i){r.push(i)}),t=r}else return[];return t.sort(function(n,i){return i==="color"&&n!=="color"&&n.indexOf("color")===0?1:-1}),t},e.dependsOn=function(t,r){return r==="color"?!!(t&&t.indexOf(r)===0):t===r},e.findPieceIndex=function(t,r,n){for(var i,a=1/0,o=0,s=r.length;o=0;a--)n[a]==null&&(delete r[t[a]],t.pop())}function bM(e,t){var r=e.visual,n=[];ke(r)?Ry(r,function(a){n.push(a)}):r!=null&&n.push(r);var i={color:1,symbol:1};!t&&n.length===1&&!i.hasOwnProperty(e.type)&&(n[1]=n[0]),Yre(e,n)}function w_(e){return{applyVisual:function(t,r,n){var i=this.mapValueToVisual(t);n("color",e(r("color"),i))},_normalizedToVisual:SO([0,1])}}function NW(e){var t=this.option.visual;return t[Math.round(gt(e,[0,1],[0,t.length-1],!0))]||{}}function ng(e){return function(t,r,n){n(e,this.mapValueToVisual(t))}}function Mg(e){var t=this.option.visual;return t[this.option.loop&&e!==Zw?e%t.length:e]}function gc(){return this.option.visual[0]}function SO(e){return{linear:function(t){return gt(t,e,this.option.visual,!0)},category:Mg,piecewise:function(t,r){var n=TO.call(this,r);return n==null&&(n=gt(t,e,this.option.visual,!0)),n},fixed:gc}}function TO(e){var t=this.option,r=t.pieceList;if(t.hasSpecialVisual){var n=Hr.findPieceIndex(e,r),i=r[n];if(i&&i.visual)return i.visual[this.type]}}function Yre(e,t){return e.visual=t,e.type==="color"&&(e.parsedVisual=se(t,function(r){var n=On(r);return n||[0,0,0,1]})),t}var i8e={linear:function(e){return gt(e,this.option.dataExtent,[0,1],!0)},piecewise:function(e){var t=this.option.pieceList,r=Hr.findPieceIndex(e,t,!0);if(r!=null)return gt(r,[0,t.length-1],[0,1],!0)},category:function(e){var t=this.option.categories?this.option.categoryMap[e]:e;return t??Zw},fixed:sr};function S_(e,t,r){return e?t<=r:t=r.length||g===r[g.depth]){var x=c8e(i,l,g,m,v,n);qre(g,x,r,n)}})}}}function s8e(e,t,r){var n=ne({},t),i=r.designatedVisualItemStyle;return R(["color","colorAlpha","colorSaturation"],function(a){i[a]=t[a];var o=e.get(a);i[a]=null,o!=null&&(n[a]=o)}),n}function jW(e){var t=wM(e,"color");if(t){var r=wM(e,"colorAlpha"),n=wM(e,"colorSaturation");return n&&(t=ks(t,null,null,n)),r&&(t=gy(t,r)),t}}function l8e(e,t){return t!=null?ks(t,null,null,e):null}function wM(e,t){var r=e[t];if(r!=null&&r!=="none")return r}function u8e(e,t,r,n,i,a){if(!(!a||!a.length)){var o=SM(t,"color")||i.color!=null&&i.color!=="none"&&(SM(t,"colorAlpha")||SM(t,"colorSaturation"));if(o){var s=t.get("visualMin"),l=t.get("visualMax"),u=r.dataExtent.slice();s!=null&&su[1]&&(u[1]=l);var c=t.get("colorMappingBy"),f={type:o.name,dataExtent:u,visual:o.range};f.type==="color"&&(c==="index"||c==="id")?(f.mappingMethod="category",f.loop=!0):f.mappingMethod="linear";var h=new Hr(f);return Xre(h).drColorMappingBy=c,h}}}function SM(e,t){var r=e.get(t);return ae(r)&&r.length?{name:t,range:r}:null}function c8e(e,t,r,n,i,a){var o=ne({},t);if(i){var s=i.type,l=s==="color"&&Xre(i).drColorMappingBy,u=l==="index"?n:l==="id"?a.mapIdToIndex(r.getId()):r.getValue(e.get("visualDimension"));o[s]=i.mapValueToVisual(u)}return o}var By=Math.max,Yw=Math.min,RW=rn,tR=R,Kre=["itemStyle","borderWidth"],f8e=["itemStyle","gapWidth"],h8e=["upperLabel","show"],d8e=["upperLabel","height"];const v8e={seriesType:"treemap",reset:function(e,t,r,n){var i=e.option,a=jr(e,r).refContainer,o=zt(e.getBoxLayoutParams(),a),s=i.size||[],l=ve(RW(o.width,s[0]),a.width),u=ve(RW(o.height,s[1]),a.height),c=n&&n.type,f=["treemapZoomToNode","treemapRootToNode"],h=jy(n,f,e),d=c==="treemapRender"||c==="treemapMove"?n.rootRect:null,v=e.getViewRoot(),g=Hre(v);if(c!=="treemapMove"){var m=c==="treemapZoomToNode"?_8e(e,h,v,l,u):d?[d.width,d.height]:[l,u],x=i.sort;x&&x!=="asc"&&x!=="desc"&&(x="desc");var _={squareRatio:i.squareRatio,sort:x,leafDepth:i.leafDepth};v.hostTree.clearLayouts();var b={x:0,y:0,width:m[0],height:m[1],area:m[0]*m[1]};v.setLayout(b),Jre(v,_,!1,0),b=v.getLayout(),tR(g,function(T,C){var A=(g[C+1]||v).getValue();T.setLayout(ne({dataExtent:[A,A],borderWidth:0,upperHeight:0},b))})}var S=e.getData().tree.root;S.setLayout(b8e(o,d,h),!0),e.setLayoutInfo(o),Qre(S,new Oe(-o.x,-o.y,r.getWidth(),r.getHeight()),g,v,0)}};function Jre(e,t,r,n){var i,a;if(!e.isRemoved()){var o=e.getLayout();i=o.width,a=o.height;var s=e.getModel(),l=s.get(Kre),u=s.get(f8e)/2,c=ene(s),f=Math.max(l,c),h=l-u,d=f-u;e.setLayout({borderWidth:l,upperHeight:f,upperLabelHeight:c},!0),i=By(i-2*h,0),a=By(a-h-d,0);var v=i*a,g=p8e(e,s,v,t,r,n);if(g.length){var m={x:h,y:d,width:i,height:a},x=Yw(i,a),_=1/0,b=[];b.area=0;for(var S=0,T=g.length;S=0;l--){var u=i[n==="asc"?o-l-1:l].getValue();u/r*ts[1]&&(s[1]=u)})),{sum:n,dataExtent:s}}function x8e(e,t,r){for(var n=0,i=1/0,a=0,o=void 0,s=e.length;an&&(n=o));var l=e.area*e.area,u=t*t*r;return l?By(u*n/l,l/(u*i)):1/0}function BW(e,t,r,n,i){var a=t===r.width?0:1,o=1-a,s=["x","y"],l=["width","height"],u=r[s[a]],c=t?e.area/t:0;(i||c>r[l[o]])&&(c=r[l[o]]);for(var f=0,h=e.length;fgI&&(u=gI),a=s}un&&(n=t);var a=n%2?n+2:n+3;i=[];for(var o=0;o0&&(T[0]=-T[0],T[1]=-T[1]);var A=S[0]<0?-1:1;if(a.__position!=="start"&&a.__position!=="end"){var P=-Math.atan2(S[1],S[0]);f[0].8?"left":h[0]<-.8?"right":"center",g=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";break;case"start":a.x=-h[0]*x+c[0],a.y=-h[1]*_+c[1],v=h[0]>.8?"right":h[0]<-.8?"left":"center",g=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":a.x=x*A+c[0],a.y=c[1]+I,v=S[0]<0?"right":"left",a.originX=-x*A,a.originY=-I;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":a.x=C[0],a.y=C[1]+I,v="center",a.originY=-I;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":a.x=-x*A+f[0],a.y=f[1]+I,v=S[0]>=0?"right":"left",a.originX=x*A,a.originY=-I;break}a.scaleX=a.scaleY=o,a.setStyle({verticalAlign:a.__verticalAlign||g,align:a.__align||v})}},t}(Me),oR=function(){function e(t){this.group=new Me,this._LineCtor=t||aR}return e.prototype.updateData=function(t){var r=this;this._progressiveEls=null;var n=this,i=n.group,a=n._lineData;n._lineData=t,a||i.removeAll();var o=WW(t);t.diff(a).add(function(s){r._doAdd(t,s,o)}).update(function(s,l){r._doUpdate(a,t,l,s,o)}).remove(function(s){i.remove(a.getItemGraphicEl(s))}).execute()},e.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl(function(r,n){r.updateLayout(t,n)},this)},e.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=WW(t),this._lineData=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r){this._progressiveEls=[];function n(s){!s.isGroup&&!B8e(s)&&(s.incremental=!0,s.ensureState("emphasis").hoverLayer=!0)}for(var i=t.start;i0}function WW(e){var t=e.hostModel,r=t.getModel("emphasis");return{lineStyle:t.getModel("lineStyle").getLineStyle(),emphasisLineStyle:r.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:t.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:t.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:r.get("disabled"),blurScope:r.get("blurScope"),focus:r.get("focus"),labelStatesModels:Nr(t)}}function HW(e){return isNaN(e[0])||isNaN(e[1])}function PM(e){return e&&!HW(e[0])&&!HW(e[1])}var kM=[],LM=[],IM=[],vh=tn,OM=Xl,UW=Math.abs;function ZW(e,t,r){for(var n=e[0],i=e[1],a=e[2],o=1/0,s,l=r*r,u=.1,c=.1;c<=.9;c+=.1){kM[0]=vh(n[0],i[0],a[0],c),kM[1]=vh(n[1],i[1],a[1],c);var f=UW(OM(kM,t)-l);f=0?s=s+u:s=s-u:v>=0?s=s-u:s=s+u}return s}function EM(e,t){var r=[],n=vy,i=[[],[],[]],a=[[],[]],o=[];t/=2,e.eachEdge(function(s,l){var u=s.getLayout(),c=s.getVisual("fromSymbol"),f=s.getVisual("toSymbol");u.__original||(u.__original=[No(u[0]),No(u[1])],u[2]&&u.__original.push(No(u[2])));var h=u.__original;if(u[2]!=null){if(Mn(i[0],h[0]),Mn(i[1],h[2]),Mn(i[2],h[1]),c&&c!=="none"){var d=kg(s.node1),v=ZW(i,h[0],d*t);n(i[0][0],i[1][0],i[2][0],v,r),i[0][0]=r[3],i[1][0]=r[4],n(i[0][1],i[1][1],i[2][1],v,r),i[0][1]=r[3],i[1][1]=r[4]}if(f&&f!=="none"){var d=kg(s.node2),v=ZW(i,h[1],d*t);n(i[0][0],i[1][0],i[2][0],v,r),i[1][0]=r[1],i[2][0]=r[2],n(i[0][1],i[1][1],i[2][1],v,r),i[1][1]=r[1],i[2][1]=r[2]}Mn(u[0],i[0]),Mn(u[1],i[2]),Mn(u[2],i[1])}else{if(Mn(a[0],h[0]),Mn(a[1],h[1]),Ol(o,a[1],a[0]),Mf(o,o),c&&c!=="none"){var d=kg(s.node1);rw(a[0],a[0],o,d*t)}if(f&&f!=="none"){var d=kg(s.node2);rw(a[1],a[1],o,-d*t)}Mn(u[0],a[0]),Mn(u[1],a[1])}})}var sne=Je();function z8e(e){if(e)return sne(e).bridge}function YW(e,t){e&&(sne(e).bridge=t)}function XW(e){return e.type==="view"}var $8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){var i=new S0,a=new oR,o=this.group,s=new Me;this._controller=new Df(n.getZr()),this._controllerHost={target:s},s.add(i.group),s.add(a.group),o.add(s),this._symbolDraw=i,this._lineDraw=a,this._mainGroup=s,this._firstRender=!0},t.prototype.render=function(r,n,i){var a=this,o=r.coordinateSystem,s=!1;this._model=r,this._api=i,this._active=!0;var l=this._getThumbnailInfo();l&&l.bridge.reset(i);var u=this._symbolDraw,c=this._lineDraw;if(XW(o)){var f={x:o.x,y:o.y,scaleX:o.scaleX,scaleY:o.scaleY};this._firstRender?this._mainGroup.attr(f):lt(this._mainGroup,f,r)}EM(r.getGraph(),Pg(r));var h=r.getData();u.updateData(h);var d=r.getEdgeData();c.updateData(d),this._updateNodeAndLinkScale(),this._updateController(null,r,i),clearTimeout(this._layoutTimeout);var v=r.forceLayout,g=r.get(["force","layoutAnimation"]);v&&(s=!0,this._startForceLayoutIteration(v,i,g));var m=r.get("layout");h.graph.eachNode(function(S){var T=S.dataIndex,C=S.getGraphicEl(),A=S.getModel();if(C){C.off("drag").off("dragend");var P=A.get("draggable");P&&C.on("drag",function(k){switch(m){case"force":v.warmUp(),!a._layouting&&a._startForceLayoutIteration(v,i,g),v.setFixed(T),h.setItemLayout(T,[C.x,C.y]);break;case"circular":h.setItemLayout(T,[C.x,C.y]),S.setLayout({fixed:!0},!0),iR(r,"symbolSize",S,[k.offsetX,k.offsetY]),a.updateLayout(r);break;case"none":default:h.setItemLayout(T,[C.x,C.y]),nR(r.getGraph(),r),a.updateLayout(r);break}}).on("dragend",function(){v&&v.setUnfixed(T)}),C.setDraggable(P,!!A.get("cursor"));var I=A.get(["emphasis","focus"]);I==="adjacency"&&(Ne(C).focus=S.getAdjacentDataIndices())}}),h.graph.eachEdge(function(S){var T=S.getGraphicEl(),C=S.getModel().get(["emphasis","focus"]);T&&C==="adjacency"&&(Ne(T).focus={edge:[S.dataIndex],node:[S.node1.dataIndex,S.node2.dataIndex]})});var x=r.get("layout")==="circular"&&r.get(["circular","rotateLabel"]),_=h.getLayout("cx"),b=h.getLayout("cy");h.graph.eachNode(function(S){ine(S,x,_,b)}),this._firstRender=!1,s||this._renderThumbnail(r,i,this._symbolDraw,this._lineDraw)},t.prototype.dispose=function(){this.remove(),this._controller&&this._controller.dispose(),this._controllerHost=null},t.prototype._startForceLayoutIteration=function(r,n,i){var a=this,o=!1;(function s(){r.step(function(l){a.updateLayout(a._model),(l||!o)&&(o=!0,a._renderThumbnail(a._model,n,a._symbolDraw,a._lineDraw)),(a._layouting=!l)&&(i?a._layoutTimeout=setTimeout(s,16):s())})})()},t.prototype._updateController=function(r,n,i){var a=this._controller,o=this._controllerHost,s=n.coordinateSystem;if(!XW(s)){a.disable();return}a.enable(n.get("roam"),{api:i,zInfo:{component:n},triggerInfo:{roamTrigger:n.get("roamTrigger"),isInSelf:function(l,u,c){return s.containPoint([u,c])},isInClip:function(l,u,c){return!r||r.contain(u,c)}}}),o.zoomLimit=n.get("scaleLimit"),o.zoom=s.getZoom(),a.off("pan").off("zoom").on("pan",function(l){i.dispatchAction({seriesId:n.id,type:"graphRoam",dx:l.dx,dy:l.dy})}).on("zoom",function(l){i.dispatchAction({seriesId:n.id,type:"graphRoam",zoom:l.scale,originX:l.originX,originY:l.originY})})},t.prototype.updateViewOnPan=function(r,n,i){this._active&&(Yj(this._controllerHost,i.dx,i.dy),this._updateThumbnailWindow())},t.prototype.updateViewOnZoom=function(r,n,i){this._active&&(Xj(this._controllerHost,i.zoom,i.originX,i.originY),this._updateNodeAndLinkScale(),EM(r.getGraph(),Pg(r)),this._lineDraw.updateLayout(),n.updateLabelLayout(),this._updateThumbnailWindow())},t.prototype._updateNodeAndLinkScale=function(){var r=this._model,n=r.getData(),i=Pg(r);n.eachItemGraphicEl(function(a,o){a&&a.setSymbolScale(i)})},t.prototype.updateLayout=function(r){this._active&&(EM(r.getGraph(),Pg(r)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout())},t.prototype.remove=function(){this._active=!1,clearTimeout(this._layoutTimeout),this._layouting=!1,this._layoutTimeout=null,this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove(),this._controller&&this._controller.disable()},t.prototype._getThumbnailInfo=function(){var r=this._model,n=r.coordinateSystem;if(n.type==="view"){var i=z8e(r);if(i)return{bridge:i,coordSys:n}}},t.prototype._updateThumbnailWindow=function(){var r=this._getThumbnailInfo();r&&r.bridge.updateWindow(r.coordSys.transform,this._api)},t.prototype._renderThumbnail=function(r,n,i,a){var o=this._getThumbnailInfo();if(o){var s=new Me,l=i.group.children(),u=a.group.children(),c=new Me,f=new Me;s.add(f),s.add(c);for(var h=0;h=0&&t.call(r,n[a],a)},e.prototype.eachEdge=function(t,r){for(var n=this.edges,i=n.length,a=0;a=0&&n[a].node1.dataIndex>=0&&n[a].node2.dataIndex>=0&&t.call(r,n[a],a)},e.prototype.breadthFirstTraverse=function(t,r,n,i){if(r instanceof mc||(r=this._nodesMap[ph(r)]),!!r){for(var a=n==="out"?"outEdges":n==="in"?"inEdges":"edges",o=0;o=0&&l.node2.dataIndex>=0});for(var a=0,o=i.length;a=0&&!t.hasKey(v)&&(t.set(v,!0),o.push(d.node1))}for(l=0;l=0&&!t.hasKey(b)&&(t.set(b,!0),s.push(_.node2))}}}return{edge:t.keys(),node:r.keys()}},e}(),lne=function(){function e(t,r,n){this.dataIndex=-1,this.node1=t,this.node2=r,this.dataIndex=n??-1}return e.prototype.getModel=function(t){if(!(this.dataIndex<0)){var r=this.hostGraph,n=r.edgeData.getItemModel(this.dataIndex);return n.getModel(t)}},e.prototype.getAdjacentDataIndices=function(){return{edge:[this.dataIndex],node:[this.node1.dataIndex,this.node2.dataIndex]}},e.prototype.getTrajectoryDataIndices=function(){var t=_e(),r=_e();t.set(this.dataIndex,!0);for(var n=[this.node1],i=[this.node2],a=0;a=0&&!t.hasKey(f)&&(t.set(f,!0),n.push(c.node1))}for(a=0;a=0&&!t.hasKey(g)&&(t.set(g,!0),i.push(v.node2))}return{edge:t.keys(),node:r.keys()}},e}();function une(e,t){return{getValue:function(r){var n=this[e][t];return n.getStore().get(n.getDimensionIndex(r||"value"),this.dataIndex)},setVisual:function(r,n){this.dataIndex>=0&&this[e][t].setItemVisual(this.dataIndex,r,n)},getVisual:function(r){return this[e][t].getItemVisual(this.dataIndex,r)},setLayout:function(r,n){this.dataIndex>=0&&this[e][t].setItemLayout(this.dataIndex,r,n)},getLayout:function(){return this[e][t].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[e][t].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[e][t].getRawIndex(this.dataIndex)}}}cr(mc,une("hostGraph","data"));cr(lne,une("hostGraph","edgeData"));function sR(e,t,r,n,i){for(var a=new F8e(n),o=0;o "+h)),u++)}var d=r.get("coordinateSystem"),v;if(d==="cartesian2d"||d==="polar"||d==="matrix")v=Jo(e,r);else{var g=Uv.get(d),m=g?g.dimensions||[]:[];We(m,"value")<0&&m.concat(["value"]);var x=qv(e,{coordDimensions:m,encodeDefine:r.getEncode()}).dimensions;v=new En(x,r),v.initData(e)}var _=new En(["value"],r);return _.initData(l,s),i&&i(v,_),Gre({mainData:v,struct:a,structAttr:"graph",datas:{node:v,edge:_},datasAttr:{node:"data",edge:"edgeData"}}),a.update(),a}var V8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.hasSymbolVisual=!0,r}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments);var n=this;function i(){return n._categoriesData}this.legendVisualProvider=new tp(i,i),this.fillDataTextStyle(r.edges||r.links),this._updateCategoriesData()},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(r.edges||r.links),this._updateCategoriesData()},t.prototype.mergeDefaultAndTheme=function(r){e.prototype.mergeDefaultAndTheme.apply(this,arguments),lf(r,"edgeLabel",["show"])},t.prototype.getInitialData=function(r,n){var i=r.edges||r.links||[],a=r.data||r.nodes||[],o=this;if(a&&i){P8e(this);var s=sR(a,i,this,!0,l);return R(s.edges,function(u){k8e(u.node1,u.node2,this,u.dataIndex)},this),s.data}function l(u,c){u.wrapMethod("getItemModel",function(v){var g=o._categoriesModels,m=v.getShallow("category"),x=g[m];return x&&(x.parentModel=v.parentModel,v.parentModel=x),v});var f=et.prototype.getModel;function h(v,g){var m=f.call(this,v,g);return m.resolveParentPath=d,m}c.wrapMethod("getItemModel",function(v){return v.resolveParentPath=d,v.getModel=h,v});function d(v){if(v&&(v[0]==="label"||v[1]==="label")){var g=v.slice();return v[0]==="label"?g[0]="edgeLabel":v[1]==="label"&&(g[1]="edgeLabel"),g}return v}}},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.getCategoriesData=function(){return this._categoriesData},t.prototype.formatTooltip=function(r,n,i){if(i==="edge"){var a=this.getData(),o=this.getDataParams(r,i),s=a.graph.getEdgeByIndex(r),l=a.getName(s.node1.dataIndex),u=a.getName(s.node2.dataIndex),c=[];return l!=null&&c.push(l),u!=null&&c.push(u),Cr("nameValue",{name:c.join(" > "),value:o.value,noValue:o.value==null})}var f=hee({series:this,dataIndex:r,multipleSeries:n});return f},t.prototype._updateCategoriesData=function(){var r=se(this.option.categories||[],function(i){return i.value!=null?i:ne({value:0},i)}),n=new En(["value"],this);n.initData(r),this._categoriesData=n,this._categoriesModels=n.mapArray(function(i){return n.getItemModel(i)})},t.prototype.setZoom=function(r){this.option.zoom=r},t.prototype.setCenter=function(r){this.option.center=r},t.prototype.isAnimationEnabled=function(){return e.prototype.isAnimationEnabled.call(this)&&!(this.get("layout")==="force"&&this.get(["force","layoutAnimation"]))},t.type="series.graph",t.dependencies=["grid","polar","geo","singleAxis","calendar"],t.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:J.color.neutral50,width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:J.color.primary}}},t}(Tt);function G8e(e){e.registerChartView($8e),e.registerSeriesModel(V8e),e.registerProcessor(S8e),e.registerVisual(T8e),e.registerVisual(C8e),e.registerLayout(L8e),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,O8e),e.registerLayout(D8e),e.registerCoordinateSystem("graphView",{dimensions:Nf.dimensions,create:j8e}),e.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},sr),e.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},sr),e.registerAction({type:"graphRoam",event:"graphRoam",update:"none"},function(t,r,n){r.eachComponent({mainType:"series",query:t},function(i){var a=n.getViewOfSeriesModel(i);a&&(t.dx!=null&&t.dy!=null&&a.updateViewOnPan(i,n,t),t.zoom!=null&&t.originX!=null&&t.originY!=null&&a.updateViewOnZoom(i,n,t));var o=i.coordinateSystem,s=iC(o,t,i.get("scaleLimit"));i.setCenter&&i.setCenter(s.center),i.setZoom&&i.setZoom(s.zoom)})})}var qW=function(e){q(t,e);function t(r,n,i){var a=e.call(this)||this;Ne(a).dataType="node",a.z2=2;var o=new at;return a.setTextContent(o),a.updateData(r,n,i,!0),a}return t.prototype.updateData=function(r,n,i,a){var o=this,s=r.graph.getNodeByIndex(n),l=r.hostModel,u=s.getModel(),c=u.getModel("emphasis"),f=r.getItemLayout(n),h=ne(ko(u.getModel("itemStyle"),f,!0),f),d=this;if(isNaN(h.startAngle)){d.setShape(h);return}a?d.setShape(h):lt(d,{shape:h},l,n);var v=ne(ko(u.getModel("itemStyle"),f,!0),f);o.setShape(v),o.useStyle(r.getItemVisual(n,"style")),Dr(o,u),this._updateLabel(l,u,s),r.setItemGraphicEl(n,d),Dr(d,u,"itemStyle");var g=c.get("focus");Gt(this,g==="adjacency"?s.getAdjacentDataIndices():g,c.get("blurScope"),c.get("disabled"))},t.prototype._updateLabel=function(r,n,i){var a=this.getTextContent(),o=i.getLayout(),s=(o.startAngle+o.endAngle)/2,l=Math.cos(s),u=Math.sin(s),c=n.getModel("label");a.ignore=!c.get("show");var f=Nr(n),h=i.getVisual("style");Ur(a,f,{labelFetcher:{getFormattedLabel:function(_,b,S,T,C,A){return r.getFormattedLabel(_,b,"node",T,li(C,f.normal&&f.normal.get("formatter"),n.get("name")),A)}},labelDataIndex:i.dataIndex,defaultText:i.dataIndex+"",inheritColor:h.fill,defaultOpacity:h.opacity,defaultOutsidePosition:"startArc"});var d=c.get("position")||"outside",v=c.get("distance")||0,g;d==="outside"?g=o.r+v:g=(o.r+o.r0)/2,this.textConfig={inside:d!=="outside"};var m=d!=="outside"?c.get("align")||"center":l>0?"left":"right",x=d!=="outside"?c.get("verticalAlign")||"middle":u>0?"top":"bottom";a.attr({x:l*g+o.cx,y:u*g+o.cy,rotation:0,style:{align:m,verticalAlign:x}})},t}(_n),W8e=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;return Ne(o).dataType="edge",o.updateData(r,n,i,a,!0),o}return t.prototype.buildPath=function(r,n){r.moveTo(n.s1[0],n.s1[1]);var i=.7,a=n.clockwise;r.arc(n.cx,n.cy,n.r,n.sStartAngle,n.sEndAngle,!a),r.bezierCurveTo((n.cx-n.s2[0])*i+n.s2[0],(n.cy-n.s2[1])*i+n.s2[1],(n.cx-n.t1[0])*i+n.t1[0],(n.cy-n.t1[1])*i+n.t1[1],n.t1[0],n.t1[1]),r.arc(n.cx,n.cy,n.r,n.tStartAngle,n.tEndAngle,!a),r.bezierCurveTo((n.cx-n.t2[0])*i+n.t2[0],(n.cy-n.t2[1])*i+n.t2[1],(n.cx-n.s1[0])*i+n.s1[0],(n.cy-n.s1[1])*i+n.s1[1],n.s1[0],n.s1[1]),r.closePath()},t.prototype.updateData=function(r,n,i,a,o){var s=r.hostModel,l=n.graph.getEdgeByIndex(i),u=l.getLayout(),c=l.node1.getModel(),f=n.getItemModel(l.dataIndex),h=f.getModel("lineStyle"),d=f.getModel("emphasis"),v=d.get("focus"),g=ne(ko(c.getModel("itemStyle"),u,!0),u),m=this;if(isNaN(g.sStartAngle)||isNaN(g.tStartAngle)){m.setShape(g);return}o?(m.setShape(g),KW(m,l,r,h)):(ga(m),KW(m,l,r,h),lt(m,{shape:g},s,i)),Gt(this,v==="adjacency"?l.getAdjacentDataIndices():v,d.get("blurScope"),d.get("disabled")),Dr(m,f,"lineStyle"),n.setItemGraphicEl(l.dataIndex,m)},t}(tt);function KW(e,t,r,n){var i=t.node1,a=t.node2,o=e.style;e.setStyle(n.getLineStyle());var s=n.get("color");switch(s){case"source":o.fill=r.getItemVisual(i.dataIndex,"style").fill,o.decal=i.getVisual("style").decal;break;case"target":o.fill=r.getItemVisual(a.dataIndex,"style").fill,o.decal=a.getVisual("style").decal;break;case"gradient":var l=r.getItemVisual(i.dataIndex,"style").fill,u=r.getItemVisual(a.dataIndex,"style").fill;if(pe(l)&&pe(u)){var c=e.shape,f=(c.s1[0]+c.s2[0])/2,h=(c.s1[1]+c.s2[1])/2,d=(c.t1[0]+c.t2[0])/2,v=(c.t1[1]+c.t2[1])/2;o.fill=new Pf(f,h,d,v,[{offset:0,color:l},{offset:1,color:u}],!0)}break}}var H8e=Math.PI/180,U8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){},t.prototype.render=function(r,n,i){var a=r.getData(),o=this._data,s=this.group,l=-r.get("startAngle")*H8e;if(a.diff(o).add(function(c){var f=a.getItemLayout(c);if(f){var h=new qW(a,c,l);Ne(h).dataIndex=c,s.add(h)}}).update(function(c,f){var h=o.getItemGraphicEl(f),d=a.getItemLayout(c);if(!d){h&&Ls(h,r,f);return}h?h.updateData(a,c,l):h=new qW(a,c,l),s.add(h)}).remove(function(c){var f=o.getItemGraphicEl(c);f&&Ls(f,r,c)}).execute(),!o){var u=r.get("center");this.group.scaleX=.01,this.group.scaleY=.01,this.group.originX=ve(u[0],i.getWidth()),this.group.originY=ve(u[1],i.getHeight()),Dt(this.group,{scaleX:1,scaleY:1},r)}this._data=a,this.renderEdges(r,l)},t.prototype.renderEdges=function(r,n){var i=r.getData(),a=r.getEdgeData(),o=this._edgeData,s=this.group;a.diff(o).add(function(l){var u=new W8e(i,a,l,n);Ne(u).dataIndex=l,s.add(u)}).update(function(l,u){var c=o.getItemGraphicEl(u);c.updateData(i,a,l,n),s.add(c)}).remove(function(l){var u=o.getItemGraphicEl(l);u&&Ls(u,r,l)}).execute(),this._edgeData=a},t.prototype.dispose=function(){},t.type="chord",t}(bt),Z8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments),this.fillDataTextStyle(r.edges||r.links),this.legendVisualProvider=new tp(ge(this.getData,this),ge(this.getRawData,this))},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(r.edges||r.links)},t.prototype.getInitialData=function(r,n){var i=r.edges||r.links||[],a=r.data||r.nodes||[];if(a&&i){var o=sR(a,i,this,!0,s);return o.data}function s(l,u){var c=et.prototype.getModel;function f(d,v){var g=c.call(this,d,v);return g.resolveParentPath=h,g}u.wrapMethod("getItemModel",function(d){return d.resolveParentPath=h,d.getModel=f,d});function h(d){if(d&&(d[0]==="label"||d[1]==="label")){var v=d.slice();return d[0]==="label"?v[0]="edgeLabel":d[1]==="label"&&(v[1]="edgeLabel"),v}return d}}},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.formatTooltip=function(r,n,i){var a=this.getDataParams(r,i);if(i==="edge"){var o=this.getData(),s=o.graph.getEdgeByIndex(r),l=o.getName(s.node1.dataIndex),u=o.getName(s.node2.dataIndex),c=[];return l!=null&&c.push(l),u!=null&&c.push(u),Cr("nameValue",{name:c.join(" > "),value:a.value,noValue:a.value==null})}return Cr("nameValue",{name:a.name,value:a.value,noValue:a.value==null})},t.prototype.getDataParams=function(r,n){var i=e.prototype.getDataParams.call(this,r,n);if(n==="node"){var a=this.getData(),o=this.getGraph().getNodeByIndex(r);if(i.name==null&&(i.name=a.getName(r)),i.value==null){var s=o.getLayout().value;i.value=s}}return i},t.type="series.chord",t.defaultOption={z:2,coordinateSystem:"none",legendHoverLink:!0,colorBy:"data",left:0,top:0,right:0,bottom:0,width:null,height:null,center:["50%","50%"],radius:["70%","80%"],clockwise:!0,startAngle:90,endAngle:"auto",minAngle:0,padAngle:3,itemStyle:{borderRadius:[0,0,5,5]},lineStyle:{width:0,color:"source",opacity:.2},label:{show:!0,position:"outside",distance:5},emphasis:{focus:"adjacency",lineStyle:{opacity:.5}}},t}(Tt),DM=Math.PI/180;function Y8e(e,t){e.eachSeriesByType("chord",function(r){X8e(r,t)})}function X8e(e,t){var r=e.getData(),n=r.graph,i=e.getEdgeData(),a=i.count();if(a){var o=IQ(e,t),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=Math.max((e.get("padAngle")||0)*DM,0),h=Math.max((e.get("minAngle")||0)*DM,0),d=-e.get("startAngle")*DM,v=d+Math.PI*2,g=e.get("clockwise"),m=g?1:-1,x=[d,v];$T(x,!g);var _=x[0],b=x[1],S=b-_,T=r.getSum("value")===0&&i.getSum("value")===0,C=[],A=0;n.eachEdge(function(B){var Z=T?1:B.getValue("value");T&&(Z>0||h)&&(A+=2);var W=B.node1.dataIndex,G=B.node2.dataIndex;C[W]=(C[W]||0)+Z,C[G]=(C[G]||0)+Z});var P=0;if(n.eachNode(function(B){var Z=B.getValue("value");isNaN(Z)||(C[B.dataIndex]=Math.max(Z,C[B.dataIndex]||0)),!T&&(C[B.dataIndex]>0||h)&&A++,P+=C[B.dataIndex]||0}),!(A===0||P===0)){f*A>=Math.abs(S)&&(f=Math.max(0,(Math.abs(S)-h*A)/A)),(f+h)*A>=Math.abs(S)&&(h=(Math.abs(S)-f*A)/A);var I=(S-f*A*m)/P,k=0,E=0,D=0;n.eachNode(function(B){var Z=C[B.dataIndex]||0,W=I*(P?Z:1)*m;Math.abs(W)E){var z=k/E;n.eachNode(function(B){var Z=B.getLayout().angle;Math.abs(Z)>=h?B.setLayout({angle:Z*z,ratio:z},!0):B.setLayout({angle:h,ratio:h===0?1:Z/h},!0)})}else n.eachNode(function(B){if(!N){var Z=B.getLayout().angle,W=Math.min(Z/D,1),G=W*k;Z-Gh&&h>0){var W=N?1:Math.min(Z/D,1),G=Z-h,Y=Math.min(G,Math.min(V,k*W));V-=Y,B.setLayout({angle:Z-Y,ratio:(Z-Y)/Z},!0)}else h>0&&B.setLayout({angle:h,ratio:Z===0?1:h/Z},!0)}});var F=_,$=[];n.eachNode(function(B){var Z=Math.max(B.getLayout().angle,h);B.setLayout({cx:s,cy:l,r0:c,r:u,startAngle:F,endAngle:F+Z*m,clockwise:g},!0),$[B.dataIndex]=F,F+=(Z+f)*m}),n.eachEdge(function(B){var Z=T?1:B.getValue("value"),W=I*(P?Z:1)*m,G=B.node1.dataIndex,Y=$[G]||0,K=Math.abs((B.node1.getLayout().ratio||1)*W),ee=Y+K*m,le=[s+c*Math.cos(Y),l+c*Math.sin(Y)],fe=[s+c*Math.cos(ee),l+c*Math.sin(ee)],De=B.node2.dataIndex,me=$[De]||0,ie=Math.abs((B.node2.getLayout().ratio||1)*W),he=me+ie*m,ue=[s+c*Math.cos(me),l+c*Math.sin(me)],te=[s+c*Math.cos(he),l+c*Math.sin(he)];B.setLayout({s1:le,s2:fe,sStartAngle:Y,sEndAngle:ee,t1:ue,t2:te,tStartAngle:me,tEndAngle:he,cx:s,cy:l,r:c,value:Z,clockwise:g}),$[G]=ee,$[De]=he})}}}function q8e(e){e.registerChartView(U8e),e.registerSeriesModel(Z8e),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,Y8e),e.registerProcessor(Qv("chord"))}var K8e=function(){function e(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0}return e}(),J8e=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="pointer",n}return t.prototype.getDefaultShape=function(){return new K8e},t.prototype.buildPath=function(r,n){var i=Math.cos,a=Math.sin,o=n.r,s=n.width,l=n.angle,u=n.x-i(l)*s*(s>=o/3?1:2),c=n.y-a(l)*s*(s>=o/3?1:2);l=n.angle-Math.PI/2,r.moveTo(u,c),r.lineTo(n.x+i(l)*s,n.y+a(l)*s),r.lineTo(n.x+i(n.angle)*o,n.y+a(n.angle)*o),r.lineTo(n.x-i(l)*s,n.y-a(l)*s),r.lineTo(u,c)},t}(tt);function Q8e(e,t){var r=e.get("center"),n=t.getWidth(),i=t.getHeight(),a=Math.min(n,i),o=ve(r[0],t.getWidth()),s=ve(r[1],t.getHeight()),l=ve(e.get("radius"),a/2);return{cx:o,cy:s,r:l}}function C_(e,t){var r=e==null?"":e+"";return t&&(pe(t)?r=t.replace("{value}",r):Ce(t)&&(r=t(e))),r}var eHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){this.group.removeAll();var a=r.get(["axisLine","lineStyle","color"]),o=Q8e(r,i);this._renderMain(r,n,i,a,o),this._data=r.getData()},t.prototype.dispose=function(){},t.prototype._renderMain=function(r,n,i,a,o){var s=this.group,l=r.get("clockwise"),u=-r.get("startAngle")/180*Math.PI,c=-r.get("endAngle")/180*Math.PI,f=r.getModel("axisLine"),h=f.get("roundCap"),d=h?Fw:_n,v=f.get("show"),g=f.getModel("lineStyle"),m=g.get("width"),x=[u,c];$T(x,!l),u=x[0],c=x[1];for(var _=c-u,b=u,S=[],T=0;v&&T=I&&(k===0?0:a[k-1][0])Math.PI/2&&(ee+=Math.PI)):K==="tangential"?ee=-P-Math.PI/2:ot(K)&&(ee=K*Math.PI/180),ee===0?f.add(new at({style:Mt(b,{text:Z,x:G,y:Y,verticalAlign:V<-.8?"top":V>.8?"bottom":"middle",align:z<-.4?"left":z>.4?"right":"center"},{inheritColor:W}),silent:!0})):f.add(new at({style:Mt(b,{text:Z,x:G,y:Y,verticalAlign:"middle",align:"center"},{inheritColor:W}),silent:!0,originX:G,originY:Y,rotation:ee}))}if(_.get("show")&&F!==S){var $=_.get("distance");$=$?$+c:c;for(var le=0;le<=T;le++){z=Math.cos(P),V=Math.sin(P);var fe=new mr({shape:{x1:z*(v-$)+h,y1:V*(v-$)+d,x2:z*(v-A-$)+h,y2:V*(v-A-$)+d},silent:!0,style:D});D.stroke==="auto"&&fe.setStyle({stroke:a((F+le/T)/S)}),f.add(fe),P+=k}P-=k}else P+=I}},t.prototype._renderPointer=function(r,n,i,a,o,s,l,u,c){var f=this.group,h=this._data,d=this._progressEls,v=[],g=r.get(["pointer","show"]),m=r.getModel("progress"),x=m.get("show"),_=r.getData(),b=_.mapDimension("value"),S=+r.get("min"),T=+r.get("max"),C=[S,T],A=[s,l];function P(k,E){var D=_.getItemModel(k),N=D.getModel("pointer"),z=ve(N.get("width"),o.r),V=ve(N.get("length"),o.r),F=r.get(["pointer","icon"]),$=N.get("offsetCenter"),B=ve($[0],o.r),Z=ve($[1],o.r),W=N.get("keepAspect"),G;return F?G=xr(F,B-z/2,Z-V,z,V,null,W):G=new J8e({shape:{angle:-Math.PI/2,width:z,r:V,x:B,y:Z}}),G.rotation=-(E+Math.PI/2),G.x=o.cx,G.y=o.cy,G}function I(k,E){var D=m.get("roundCap"),N=D?Fw:_n,z=m.get("overlap"),V=z?m.get("width"):c/_.count(),F=z?o.r-V:o.r-(k+1)*V,$=z?o.r:o.r-k*V,B=new N({shape:{startAngle:s,endAngle:E,cx:o.cx,cy:o.cy,clockwise:u,r0:F,r:$}});return z&&(B.z2=gt(_.get(b,k),[S,T],[100,0],!0)),B}(x||g)&&(_.diff(h).add(function(k){var E=_.get(b,k);if(g){var D=P(k,s);Dt(D,{rotation:-((isNaN(+E)?A[0]:gt(E,C,A,!0))+Math.PI/2)},r),f.add(D),_.setItemGraphicEl(k,D)}if(x){var N=I(k,s),z=m.get("clip");Dt(N,{shape:{endAngle:gt(E,C,A,z)}},r),f.add(N),SI(r.seriesIndex,_.dataType,k,N),v[k]=N}}).update(function(k,E){var D=_.get(b,k);if(g){var N=h.getItemGraphicEl(E),z=N?N.rotation:s,V=P(k,z);V.rotation=z,lt(V,{rotation:-((isNaN(+D)?A[0]:gt(D,C,A,!0))+Math.PI/2)},r),f.add(V),_.setItemGraphicEl(k,V)}if(x){var F=d[E],$=F?F.shape.endAngle:s,B=I(k,$),Z=m.get("clip");lt(B,{shape:{endAngle:gt(D,C,A,Z)}},r),f.add(B),SI(r.seriesIndex,_.dataType,k,B),v[k]=B}}).execute(),_.each(function(k){var E=_.getItemModel(k),D=E.getModel("emphasis"),N=D.get("focus"),z=D.get("blurScope"),V=D.get("disabled");if(g){var F=_.getItemGraphicEl(k),$=_.getItemVisual(k,"style"),B=$.fill;if(F instanceof Yr){var Z=F.style;F.useStyle(ne({image:Z.image,x:Z.x,y:Z.y,width:Z.width,height:Z.height},$))}else F.useStyle($),F.type!=="pointer"&&F.setColor(B);F.setStyle(E.getModel(["pointer","itemStyle"]).getItemStyle()),F.style.fill==="auto"&&F.setStyle("fill",a(gt(_.get(b,k),C,[0,1],!0))),F.z2EmphasisLift=0,Dr(F,E),Gt(F,N,z,V)}if(x){var W=v[k];W.useStyle(_.getItemVisual(k,"style")),W.setStyle(E.getModel(["progress","itemStyle"]).getItemStyle()),W.z2EmphasisLift=0,Dr(W,E),Gt(W,N,z,V)}}),this._progressEls=v)},t.prototype._renderAnchor=function(r,n){var i=r.getModel("anchor"),a=i.get("show");if(a){var o=i.get("size"),s=i.get("icon"),l=i.get("offsetCenter"),u=i.get("keepAspect"),c=xr(s,n.cx-o/2+ve(l[0],n.r),n.cy-o/2+ve(l[1],n.r),o,o,null,u);c.z2=i.get("showAbove")?1:0,c.setStyle(i.getModel("itemStyle").getItemStyle()),this.group.add(c)}},t.prototype._renderTitleAndDetail=function(r,n,i,a,o){var s=this,l=r.getData(),u=l.mapDimension("value"),c=+r.get("min"),f=+r.get("max"),h=new Me,d=[],v=[],g=r.isAnimationEnabled(),m=r.get(["pointer","showAbove"]);l.diff(this._data).add(function(x){d[x]=new at({silent:!0}),v[x]=new at({silent:!0})}).update(function(x,_){d[x]=s._titleEls[_],v[x]=s._detailEls[_]}).execute(),l.each(function(x){var _=l.getItemModel(x),b=l.get(u,x),S=new Me,T=a(gt(b,[c,f],[0,1],!0)),C=_.getModel("title");if(C.get("show")){var A=C.get("offsetCenter"),P=o.cx+ve(A[0],o.r),I=o.cy+ve(A[1],o.r),k=d[x];k.attr({z2:m?0:2,style:Mt(C,{x:P,y:I,text:l.getName(x),align:"center",verticalAlign:"middle"},{inheritColor:T})}),S.add(k)}var E=_.getModel("detail");if(E.get("show")){var D=E.get("offsetCenter"),N=o.cx+ve(D[0],o.r),z=o.cy+ve(D[1],o.r),V=ve(E.get("width"),o.r),F=ve(E.get("height"),o.r),$=r.get(["progress","show"])?l.getItemVisual(x,"style").fill:T,k=v[x],B=E.get("formatter");k.attr({z2:m?0:2,style:Mt(E,{x:N,y:z,text:C_(b,B),width:isNaN(V)?null:V,height:isNaN(F)?null:F,align:"center",verticalAlign:"middle"},{inheritColor:$})}),dQ(k,{normal:E},b,function(W){return C_(W,B)}),g&&vQ(k,x,l,r,{getFormattedLabel:function(W,G,Y,K,ee,le){return C_(le?le.interpolatedValue:b,B)}}),S.add(k)}h.add(S)}),this.group.add(h),this._titleEls=d,this._detailEls=v},t.type="gauge",t}(bt),tHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.visualStyleAccessPath="itemStyle",r}return t.prototype.getInitialData=function(r,n){return ep(this,["value"])},t.type="series.gauge",t.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,J.color.neutral10]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:J.color.axisTick,width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:J.color.axisTickMinor,width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:J.color.axisLabel,fontSize:12,rotate:0},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:J.color.neutral00,borderWidth:0,borderColor:J.color.theme[0]}},title:{show:!0,offsetCenter:[0,"20%"],color:J.color.secondary,fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:J.color.transparent,borderWidth:0,borderColor:J.color.neutral40,width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:J.color.primary,fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},t}(Tt);function rHe(e){e.registerChartView(eHe),e.registerSeriesModel(tHe)}var nHe=["itemStyle","opacity"],iHe=function(e){q(t,e);function t(r,n){var i=e.call(this)||this,a=i,o=new an,s=new at;return a.setTextContent(s),i.setTextGuideLine(o),i.updateData(r,n,!0),i}return t.prototype.updateData=function(r,n,i){var a=this,o=r.hostModel,s=r.getItemModel(n),l=r.getItemLayout(n),u=s.getModel("emphasis"),c=s.get(nHe);c=c??1,i||ga(a),a.useStyle(r.getItemVisual(n,"style")),a.style.lineJoin="round",i?(a.setShape({points:l.points}),a.style.opacity=0,Dt(a,{style:{opacity:c}},o,n)):lt(a,{style:{opacity:c},shape:{points:l.points}},o,n),Dr(a,s),this._updateLabel(r,n),Gt(this,u.get("focus"),u.get("blurScope"),u.get("disabled"))},t.prototype._updateLabel=function(r,n){var i=this,a=this.getTextGuideLine(),o=i.getTextContent(),s=r.hostModel,l=r.getItemModel(n),u=r.getItemLayout(n),c=u.label,f=r.getItemVisual(n,"style"),h=f.fill;Ur(o,Nr(l),{labelFetcher:r.hostModel,labelDataIndex:n,defaultOpacity:f.opacity,defaultText:r.getName(n)},{normal:{align:c.textAlign,verticalAlign:c.verticalAlign}});var d=l.getModel("label"),v=d.get("color"),g=v==="inherit"?h:null;i.setTextConfig({local:!0,inside:!!c.inside,insideStroke:g,outsideFill:g});var m=c.linePoints;a.setShape({points:m}),i.textGuideLineConfig={anchor:m?new Ie(m[0][0],m[0][1]):null},lt(o,{style:{x:c.x,y:c.y}},s,n),o.attr({rotation:c.rotation,originX:c.x,originY:c.y,z2:10}),Dj(i,Nj(l),{stroke:h})},t}(bn),aHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.ignoreLabelLineUpdate=!0,r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this._data,s=this.group;a.diff(o).add(function(l){var u=new iHe(a,l);a.setItemGraphicEl(l,u),s.add(u)}).update(function(l,u){var c=o.getItemGraphicEl(u);c.updateData(a,l),s.add(c),a.setItemGraphicEl(l,c)}).remove(function(l){var u=o.getItemGraphicEl(l);Ls(u,r,l)}).execute(),this._data=a},t.prototype.remove=function(){this.group.removeAll(),this._data=null},t.prototype.dispose=function(){},t.type="funnel",t}(bt),oHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments),this.legendVisualProvider=new tp(ge(this.getData,this),ge(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.getInitialData=function(r,n){return ep(this,{coordDimensions:["value"],encodeDefaulter:Fe(lj,this)})},t.prototype._defaultLabelLine=function(r){lf(r,"labelLine",["show"]);var n=r.labelLine,i=r.emphasis.labelLine;n.show=n.show&&r.label.show,i.show=i.show&&r.emphasis.label.show},t.prototype.getDataParams=function(r){var n=this.getData(),i=e.prototype.getDataParams.call(this,r),a=n.mapDimension("value"),o=n.getSum(a);return i.percent=o?+(n.get(a,r)/o*100).toFixed(2):0,i.$vars.push("percent"),i},t.type="series.funnel",t.defaultOption={coordinateSystemUsage:"box",z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:65,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:J.color.neutral00,borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:J.color.primary}}},t}(Tt);function sHe(e,t){for(var r=e.mapDimension("value"),n=e.mapArray(r,function(l){return l}),i=[],a=t==="ascending",o=0,s=e.count();oSHe)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]);i.behavior!=="none"&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(e){if(!(this._mouseDownPoint||!jM(this,"mousemove"))){var t=this._model,r=t.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]),n=r.behavior;n==="jump"&&this._throttledDispatchExpand.debounceNextCall(t.get("axisExpandDebounce")),this._throttledDispatchExpand(n==="none"?null:{axisExpandWindow:r.axisExpandWindow,animation:n==="jump"?null:{duration:0}})}}};function jM(e,t){var r=e._model;return r.get("axisExpandable")&&r.get("axisExpandTriggerOn")===t}var AHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(){e.prototype.init.apply(this,arguments),this.mergeOption({})},t.prototype.mergeOption=function(r){var n=this.option;r&&He(n,r,!0),this._initDimensions()},t.prototype.contains=function(r,n){var i=r.get("parallelIndex");return i!=null&&n.getComponent("parallel",i)===this},t.prototype.setAxisExpand=function(r){R(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],function(n){r.hasOwnProperty(n)&&(this.option[n]=r[n])},this)},t.prototype._initDimensions=function(){var r=this.dimensions=[],n=this.parallelAxisIndex=[],i=ht(this.ecModel.queryComponents({mainType:"parallelAxis"}),function(a){return(a.get("parallelIndex")||0)===this.componentIndex},this);R(i,function(a){r.push("dim"+a.get("dim")),n.push(a.componentIndex)})},t.type="parallel",t.dependencies=["parallelAxis"],t.layoutMode="box",t.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},t}(Ke),MHe=function(e){q(t,e);function t(r,n,i,a,o){var s=e.call(this,r,n,i)||this;return s.type=a||"value",s.axisIndex=o,s}return t.prototype.isHorizontal=function(){return this.coordinateSystem.getModel().get("layout")!=="horizontal"},t}(ba);function hu(e,t,r,n,i,a){e=e||0;var o=r[1]-r[0];if(i!=null&&(i=gh(i,[0,o])),a!=null&&(a=Math.max(a,i??0)),n==="all"){var s=Math.abs(t[1]-t[0]);s=gh(s,[0,o]),i=a=gh(s,[i,a]),n=0}t[0]=gh(t[0],r),t[1]=gh(t[1],r);var l=RM(t,n);t[n]+=e;var u=i||0,c=r.slice();l.sign<0?c[0]+=u:c[1]-=u,t[n]=gh(t[n],c);var f;return f=RM(t,n),i!=null&&(f.sign!==l.sign||f.spana&&(t[1-n]=t[n]+f.sign*a),t}function RM(e,t){var r=e[t]-e[1-t];return{span:Math.abs(r),sign:r>0?-1:r<0?1:t?-1:1}}function gh(e,t){return Math.min(t[1]!=null?t[1]:1/0,Math.max(t[0]!=null?t[0]:-1/0,e))}var BM=R,fne=Math.min,hne=Math.max,e8=Math.floor,PHe=Math.ceil,t8=gr,kHe=Math.PI,LHe=function(){function e(t,r,n){this.type="parallel",this._axesMap=_e(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,r,n)}return e.prototype._init=function(t,r,n){var i=t.dimensions,a=t.parallelAxisIndex;BM(i,function(o,s){var l=a[s],u=r.getComponent("parallelAxis",l),c=this._axesMap.set(o,new MHe(o,b0(u),[0,0],u.get("type"),l)),f=c.type==="category";c.onBand=f&&u.get("boundaryGap"),c.inverse=u.get("inverse"),u.axis=c,c.model=u,c.coordinateSystem=u.coordinateSystem=this},this)},e.prototype.update=function(t,r){this._updateAxesFromSeries(this._model,t)},e.prototype.containPoint=function(t){var r=this._makeLayoutInfo(),n=r.axisBase,i=r.layoutBase,a=r.pixelDimIndex,o=t[1-a],s=t[a];return o>=n&&o<=n+r.axisLength&&s>=i&&s<=i+r.layoutLength},e.prototype.getModel=function(){return this._model},e.prototype._updateAxesFromSeries=function(t,r){r.eachSeries(function(n){if(t.contains(n,r)){var i=n.getData();BM(this.dimensions,function(a){var o=this._axesMap.get(a);o.scale.unionExtentFromData(i,i.mapDimension(a)),pf(o.scale,o.model)},this)}},this)},e.prototype.resize=function(t,r){var n=jr(t,r).refContainer;this._rect=zt(t.getBoxLayoutParams(),n),this._layoutAxes()},e.prototype.getRect=function(){return this._rect},e.prototype._makeLayoutInfo=function(){var t=this._model,r=this._rect,n=["x","y"],i=["width","height"],a=t.get("layout"),o=a==="horizontal"?0:1,s=r[i[o]],l=[0,s],u=this.dimensions.length,c=A_(t.get("axisExpandWidth"),l),f=A_(t.get("axisExpandCount")||0,[0,u]),h=t.get("axisExpandable")&&u>3&&u>f&&f>1&&c>0&&s>0,d=t.get("axisExpandWindow"),v;if(d)v=A_(d[1]-d[0],l),d[1]=d[0]+v;else{v=A_(c*(f-1),l);var g=t.get("axisExpandCenter")||e8(u/2);d=[c*g-v/2],d[1]=d[0]+v}var m=(s-v)/(u-f);m<3&&(m=0);var x=[e8(t8(d[0]/c,1))+1,PHe(t8(d[1]/c,1))-1],_=m/c*d[0];return{layout:a,pixelDimIndex:o,layoutBase:r[n[o]],layoutLength:s,axisBase:r[n[1-o]],axisLength:r[i[1-o]],axisExpandable:h,axisExpandWidth:c,axisCollapseWidth:m,axisExpandWindow:d,axisCount:u,winInnerIndices:x,axisExpandWindow0Pos:_}},e.prototype._layoutAxes=function(){var t=this._rect,r=this._axesMap,n=this.dimensions,i=this._makeLayoutInfo(),a=i.layout;r.each(function(o){var s=[0,i.axisLength],l=o.inverse?1:0;o.setExtent(s[l],s[1-l])}),BM(n,function(o,s){var l=(i.axisExpandable?OHe:IHe)(s,i),u={horizontal:{x:l.position,y:i.axisLength},vertical:{x:0,y:l.position}},c={horizontal:kHe/2,vertical:0},f=[u[a].x+t.x,u[a].y+t.y],h=c[a],d=Wr();el(d,d,h),qa(d,d,f),this._axesLayout[o]={position:f,rotation:h,transform:d,axisNameAvailableWidth:l.axisNameAvailableWidth,axisLabelShow:l.axisLabelShow,nameTruncateMaxWidth:l.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}},this)},e.prototype.getAxis=function(t){return this._axesMap.get(t)},e.prototype.dataToPoint=function(t,r){return this.axisCoordToPoint(this._axesMap.get(r).dataToCoord(t),r)},e.prototype.eachActiveState=function(t,r,n,i){n==null&&(n=0),i==null&&(i=t.count());var a=this._axesMap,o=this.dimensions,s=[],l=[];R(o,function(m){s.push(t.mapDimension(m)),l.push(a.get(m).model)});for(var u=this.hasAxisBrushed(),c=n;ca*(1-f[0])?(u="jump",l=s-a*(1-f[2])):(l=s-a*f[1])>=0&&(l=s-a*(1-f[1]))<=0&&(l=0),l*=r.axisExpandWidth/c,l?hu(l,i,o,"all"):u="none";else{var d=i[1]-i[0],v=o[1]*s/d;i=[hne(0,v-d/2)],i[1]=fne(o[1],i[0]+d),i[0]=i[1]-d}return{axisExpandWindow:i,behavior:u}},e}();function A_(e,t){return fne(hne(e,t[0]),t[1])}function IHe(e,t){var r=t.layoutLength/(t.axisCount-1);return{position:r*e,axisNameAvailableWidth:r,axisLabelShow:!0}}function OHe(e,t){var r=t.layoutLength,n=t.axisExpandWidth,i=t.axisCount,a=t.axisCollapseWidth,o=t.winInnerIndices,s,l=a,u=!1,c;return e=0;i--)Ai(n[i])},t.prototype.getActiveState=function(r){var n=this.activeIntervals;if(!n.length)return"normal";if(r==null||isNaN(+r))return"inactive";if(n.length===1){var i=n[0];if(i[0]<=r&&r<=i[1])return"active"}else for(var a=0,o=n.length;aRHe}function yne(e){var t=e.length-1;return t<0&&(t=0),[e[0],e[t]]}function xne(e,t,r,n){var i=new Me;return i.add(new Xe({name:"main",style:hR(r),silent:!0,draggable:!0,cursor:"move",drift:Fe(i8,e,t,i,["n","s","w","e"]),ondragend:Fe(mf,t,{isEnd:!0})})),R(n,function(a){i.add(new Xe({name:a.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:Fe(i8,e,t,i,a),ondragend:Fe(mf,t,{isEnd:!0})}))}),i}function _ne(e,t,r,n){var i=n.brushStyle.lineWidth||0,a=lv(i,BHe),o=r[0][0],s=r[1][0],l=o-i/2,u=s-i/2,c=r[0][1],f=r[1][1],h=c-a+i/2,d=f-a+i/2,v=c-o,g=f-s,m=v+i,x=g+i;ls(e,t,"main",o,s,v,g),n.transformable&&(ls(e,t,"w",l,u,a,x),ls(e,t,"e",h,u,a,x),ls(e,t,"n",l,u,m,a),ls(e,t,"s",l,d,m,a),ls(e,t,"nw",l,u,a,a),ls(e,t,"ne",h,u,a,a),ls(e,t,"sw",l,d,a,a),ls(e,t,"se",h,d,a,a))}function LO(e,t){var r=t.__brushOption,n=r.transformable,i=t.childAt(0);i.useStyle(hR(r)),i.attr({silent:!n,cursor:n?"move":"default"}),R([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],function(a){var o=t.childOfName(a.join("")),s=a.length===1?IO(e,a[0]):WHe(e,a);o&&o.attr({silent:!n,invisible:!n,cursor:n?$He[s]+"-resize":null})})}function ls(e,t,r,n,i,a,o){var s=t.childOfName(r);s&&s.setShape(UHe(dR(e,t,[[n,i],[n+a,i+o]])))}function hR(e){return Pe({strokeNoScale:!0},e.brushStyle)}function bne(e,t,r,n){var i=[$y(e,r),$y(t,n)],a=[lv(e,r),lv(t,n)];return[[i[0],a[0]],[i[1],a[1]]]}function GHe(e){return Ql(e.group)}function IO(e,t){var r={w:"left",e:"right",n:"top",s:"bottom"},n={left:"w",right:"e",top:"n",bottom:"s"},i=WT(r[t],GHe(e));return n[i]}function WHe(e,t){var r=[IO(e,t[0]),IO(e,t[1])];return(r[0]==="e"||r[0]==="w")&&r.reverse(),r.join("")}function i8(e,t,r,n,i,a){var o=r.__brushOption,s=e.toRectRange(o.range),l=wne(t,i,a);R(n,function(u){var c=zHe[u];s[c[0]][c[1]]+=l[c[0]]}),o.range=e.fromRectRange(bne(s[0][0],s[1][0],s[0][1],s[1][1])),uR(t,r),mf(t,{isEnd:!1})}function HHe(e,t,r,n){var i=t.__brushOption.range,a=wne(e,r,n);R(i,function(o){o[0]+=a[0],o[1]+=a[1]}),uR(e,t),mf(e,{isEnd:!1})}function wne(e,t,r){var n=e.group,i=n.transformCoordToLocal(t,r),a=n.transformCoordToLocal(0,0);return[i[0]-a[0],i[1]-a[1]]}function dR(e,t,r){var n=mne(e,t);return n&&n!==gf?n.clipPath(r,e._transform):Ae(r)}function UHe(e){var t=$y(e[0][0],e[1][0]),r=$y(e[0][1],e[1][1]),n=lv(e[0][0],e[1][0]),i=lv(e[0][1],e[1][1]);return{x:t,y:r,width:n-t,height:i-r}}function ZHe(e,t,r){if(!(!e._brushType||XHe(e,t.offsetX,t.offsetY))){var n=e._zr,i=e._covers,a=fR(e,t,r);if(!e._dragging)for(var o=0;on.getWidth()||r<0||r>n.getHeight()}var lC={lineX:s8(0),lineY:s8(1),rect:{createCover:function(e,t){function r(n){return n}return xne({toRectRange:r,fromRectRange:r},e,t,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(e){var t=yne(e);return bne(t[1][0],t[1][1],t[0][0],t[0][1])},updateCoverShape:function(e,t,r,n){_ne(e,t,r,n)},updateCommon:LO,contain:EO},polygon:{createCover:function(e,t){var r=new Me;return r.add(new an({name:"main",style:hR(t),silent:!0})),r},getCreatingRange:function(e){return e},endCreating:function(e,t){t.remove(t.childAt(0)),t.add(new bn({name:"main",draggable:!0,drift:Fe(HHe,e,t),ondragend:Fe(mf,e,{isEnd:!0})}))},updateCoverShape:function(e,t,r,n){t.childAt(0).setShape({points:dR(e,t,r)})},updateCommon:LO,contain:EO}};function s8(e){return{createCover:function(t,r){return xne({toRectRange:function(n){var i=[n,[0,100]];return e&&i.reverse(),i},fromRectRange:function(n){return n[e]}},t,r,[[["w"],["e"]],[["n"],["s"]]][e])},getCreatingRange:function(t){var r=yne(t),n=$y(r[0][e],r[1][e]),i=lv(r[0][e],r[1][e]);return[n,i]},updateCoverShape:function(t,r,n,i){var a,o=mne(t,r);if(o!==gf&&o.getLinearBrushOtherExtent)a=o.getLinearBrushOtherExtent(e);else{var s=t._zr;a=[0,[s.getWidth(),s.getHeight()][1-e]]}var l=[n,a];e&&l.reverse(),_ne(t,r,l,i)},updateCommon:LO,contain:EO}}function Tne(e){return e=vR(e),function(t){return GN(t,e)}}function Cne(e,t){return e=vR(e),function(r){var n=t??r,i=n?e.width:e.height,a=n?e.x:e.y;return[a,a+(i||0)]}}function Ane(e,t,r){var n=vR(e);return function(i,a){return n.contain(a[0],a[1])&&!Ire(i,t,r)}}function vR(e){return Oe.create(e)}var qHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){e.prototype.init.apply(this,arguments),(this._brushController=new lR(n.getZr())).on("brush",ge(this._onBrush,this))},t.prototype.render=function(r,n,i,a){if(!KHe(r,n,a)){this.axisModel=r,this.api=i,this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new Me,this.group.add(this._axisGroup),!!r.get("show")){var s=QHe(r,n),l=s.coordinateSystem,u=r.getAreaSelectStyle(),c=u.width,f=r.axis.dim,h=l.getAxisLayout(f),d=ne({strokeContainThreshold:c},h),v=new Wn(r,i,d);v.build(),this._axisGroup.add(v.group),this._refreshBrushController(d,u,r,s,c,i),m0(o,this._axisGroup,r)}}},t.prototype._refreshBrushController=function(r,n,i,a,o,s){var l=i.axis.getExtent(),u=l[1]-l[0],c=Math.min(30,Math.abs(u)*.1),f=Oe.create({x:l[0],y:-o/2,width:u,height:o});f.x-=c,f.width+=2*c,this._brushController.mount({enableGlobalPan:!0,rotation:r.rotation,x:r.position[0],y:r.position[1]}).setPanels([{panelId:"pl",clipPath:Tne(f),isTargetByCursor:Ane(f,s,a),getLinearBrushOtherExtent:Cne(f,0)}]).enableBrush({brushType:"lineX",brushStyle:n,removeOnClick:!0}).updateCovers(JHe(i))},t.prototype._onBrush=function(r){var n=r.areas,i=this.axisModel,a=i.axis,o=se(n,function(s){return[a.coordToData(s.range[0],!0),a.coordToData(s.range[1],!0)]});(!i.option.realtime===r.isEnd||r.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:i.id,intervals:o})},t.prototype.dispose=function(){this._brushController.dispose()},t.type="parallelAxis",t}(kt);function KHe(e,t,r){return r&&r.type==="axisAreaSelect"&&t.findComponents({mainType:"parallelAxis",query:r})[0]===e}function JHe(e){var t=e.axis;return se(e.activeIntervals,function(r){return{brushType:"lineX",panelId:"pl",range:[t.dataToCoord(r[0],!0),t.dataToCoord(r[1],!0)]}})}function QHe(e,t){return t.getComponent("parallel",e.get("parallelIndex"))}var eUe={type:"axisAreaSelect",event:"axisAreaSelected"};function tUe(e){e.registerAction(eUe,function(t,r){r.eachComponent({mainType:"parallelAxis",query:t},function(n){n.axis.model.setActiveIntervals(t.intervals)})}),e.registerAction("parallelAxisExpand",function(t,r){r.eachComponent({mainType:"parallel",query:t},function(n){n.setAxisExpand(t)})})}var rUe={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function Mne(e){e.registerComponentView(THe),e.registerComponentModel(AHe),e.registerCoordinateSystem("parallel",DHe),e.registerPreprocessor(_He),e.registerComponentModel(PO),e.registerComponentView(qHe),ov(e,"parallel",PO,rUe),tUe(e)}function nUe(e){Ze(Mne),e.registerChartView(hHe),e.registerSeriesModel(pHe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,xHe)}var iUe=function(){function e(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0}return e}(),aUe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new iUe},t.prototype.buildPath=function(r,n){var i=n.extent;r.moveTo(n.x1,n.y1),r.bezierCurveTo(n.cpx1,n.cpy1,n.cpx2,n.cpy2,n.x2,n.y2),n.orient==="vertical"?(r.lineTo(n.x2+i,n.y2),r.bezierCurveTo(n.cpx2+i,n.cpy2,n.cpx1+i,n.cpy1,n.x1+i,n.y1)):(r.lineTo(n.x2,n.y2+i),r.bezierCurveTo(n.cpx2,n.cpy2+i,n.cpx1,n.cpy1+i,n.x1,n.y1+i)),r.closePath()},t.prototype.highlight=function(){Ws(this)},t.prototype.downplay=function(){Hs(this)},t}(tt),oUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._mainGroup=new Me,r._focusAdjacencyDisabled=!1,r}return t.prototype.init=function(r,n){this._controller=new Df(n.getZr()),this._controllerHost={target:this.group},this.group.add(this._mainGroup)},t.prototype.render=function(r,n,i){var a=this,o=r.getGraph(),s=this._mainGroup,l=r.layoutInfo,u=l.width,c=l.height,f=r.getData(),h=r.getData("edge"),d=r.get("orient");this._model=r,s.removeAll(),s.x=l.x,s.y=l.y,this._updateViewCoordSys(r,i),Ore(r,i,s,this._controller,this._controllerHost,null),o.eachEdge(function(v){var g=new aUe,m=Ne(g);m.dataIndex=v.dataIndex,m.seriesIndex=r.seriesIndex,m.dataType="edge";var x=v.getModel(),_=x.getModel("lineStyle"),b=_.get("curveness"),S=v.node1.getLayout(),T=v.node1.getModel(),C=T.get("localX"),A=T.get("localY"),P=v.node2.getLayout(),I=v.node2.getModel(),k=I.get("localX"),E=I.get("localY"),D=v.getLayout(),N,z,V,F,$,B,Z,W;g.shape.extent=Math.max(1,D.dy),g.shape.orient=d,d==="vertical"?(N=(C!=null?C*u:S.x)+D.sy,z=(A!=null?A*c:S.y)+S.dy,V=(k!=null?k*u:P.x)+D.ty,F=E!=null?E*c:P.y,$=N,B=z*(1-b)+F*b,Z=V,W=z*b+F*(1-b)):(N=(C!=null?C*u:S.x)+S.dx,z=(A!=null?A*c:S.y)+D.sy,V=k!=null?k*u:P.x,F=(E!=null?E*c:P.y)+D.ty,$=N*(1-b)+V*b,B=z,Z=N*b+V*(1-b),W=F),g.setShape({x1:N,y1:z,x2:V,y2:F,cpx1:$,cpy1:B,cpx2:Z,cpy2:W}),g.useStyle(_.getItemStyle()),l8(g.style,d,v);var G=""+x.get("value"),Y=Nr(x,"edgeLabel");Ur(g,Y,{labelFetcher:{getFormattedLabel:function(le,fe,De,me,ie,he){return r.getFormattedLabel(le,fe,"edge",me,li(ie,Y.normal&&Y.normal.get("formatter"),G),he)}},labelDataIndex:v.dataIndex,defaultText:G}),g.setTextConfig({position:"inside"});var K=x.getModel("emphasis");Dr(g,x,"lineStyle",function(le){var fe=le.getItemStyle();return l8(fe,d,v),fe}),s.add(g),h.setItemGraphicEl(v.dataIndex,g);var ee=K.get("focus");Gt(g,ee==="adjacency"?v.getAdjacentDataIndices():ee==="trajectory"?v.getTrajectoryDataIndices():ee,K.get("blurScope"),K.get("disabled"))}),o.eachNode(function(v){var g=v.getLayout(),m=v.getModel(),x=m.get("localX"),_=m.get("localY"),b=m.getModel("emphasis"),S=m.get(["itemStyle","borderRadius"])||0,T=new Xe({shape:{x:x!=null?x*u:g.x,y:_!=null?_*c:g.y,width:g.dx,height:g.dy,r:S},style:m.getModel("itemStyle").getItemStyle(),z2:10});Ur(T,Nr(m),{labelFetcher:{getFormattedLabel:function(A,P){return r.getFormattedLabel(A,P,"node")}},labelDataIndex:v.dataIndex,defaultText:v.id}),T.disableLabelAnimation=!0,T.setStyle("fill",v.getVisual("color")),T.setStyle("decal",v.getVisual("style").decal),Dr(T,m),s.add(T),f.setItemGraphicEl(v.dataIndex,T),Ne(T).dataType="node";var C=b.get("focus");Gt(T,C==="adjacency"?v.getAdjacentDataIndices():C==="trajectory"?v.getTrajectoryDataIndices():C,b.get("blurScope"),b.get("disabled"))}),f.eachItemGraphicEl(function(v,g){var m=f.getItemModel(g);m.get("draggable")&&(v.drift=function(x,_){a._focusAdjacencyDisabled=!0,this.shape.x+=x,this.shape.y+=_,this.dirty(),i.dispatchAction({type:"dragNode",seriesId:r.id,dataIndex:f.getRawIndex(g),localX:this.shape.x/u,localY:this.shape.y/c})},v.ondragend=function(){a._focusAdjacencyDisabled=!1},v.draggable=!0,v.cursor="move")}),!this._data&&r.isAnimationEnabled()&&s.setClipPath(sUe(s.getBoundingRect(),r,function(){s.removeClipPath()})),this._data=r.getData()},t.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},t.prototype._updateViewCoordSys=function(r,n){var i=r.layoutInfo,a=i.width,o=i.height,s=r.coordinateSystem=new Nf(null,{api:n,ecModel:r.ecModel});s.zoomLimit=r.get("scaleLimit"),s.setBoundingRect(0,0,a,o),s.setCenter(r.get("center")),s.setZoom(r.get("zoom")),this._controllerHost.target.attr({x:s.x,y:s.y,scaleX:s.scaleX,scaleY:s.scaleY})},t.type="sankey",t}(bt);function l8(e,t,r){switch(e.fill){case"source":e.fill=r.node1.getVisual("color"),e.decal=r.node1.getVisual("style").decal;break;case"target":e.fill=r.node2.getVisual("color"),e.decal=r.node2.getVisual("style").decal;break;case"gradient":var n=r.node1.getVisual("color"),i=r.node2.getVisual("color");pe(n)&&pe(i)&&(e.fill=new Pf(0,0,+(t==="horizontal"),+(t==="vertical"),[{color:n,offset:0},{color:i,offset:1}]))}}function sUe(e,t,r){var n=new Xe({shape:{x:e.x-10,y:e.y-10,width:0,height:e.height+20}});return Dt(n,{shape:{width:e.width+20}},t,r),n}var lUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(r,n){var i=r.edges||r.links||[],a=r.data||r.nodes||[],o=r.levels||[];this.levelModels=[];for(var s=this.levelModels,l=0;l=0&&(s[o[l].depth]=new et(o[l],this,n));var u=sR(a,i,this,!0,c);return u.data;function c(f,h){f.wrapMethod("getItemModel",function(d,v){var g=d.parentModel,m=g.getData().getItemLayout(v);if(m){var x=m.depth,_=g.levelModels[x];_&&(d.parentModel=_)}return d}),h.wrapMethod("getItemModel",function(d,v){var g=d.parentModel,m=g.getGraph().getEdgeByIndex(v),x=m.node1.getLayout();if(x){var _=x.depth,b=g.levelModels[_];b&&(d.parentModel=b)}return d})}},t.prototype.setNodePosition=function(r,n){var i=this.option.data||this.option.nodes,a=i[r];a.localX=n[0],a.localY=n[1]},t.prototype.setCenter=function(r){this.option.center=r},t.prototype.setZoom=function(r){this.option.zoom=r},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.formatTooltip=function(r,n,i){function a(d){return isNaN(d)||d==null}if(i==="edge"){var o=this.getDataParams(r,i),s=o.data,l=o.value,u=s.source+" -- "+s.target;return Cr("nameValue",{name:u,value:l,noValue:a(l)})}else{var c=this.getGraph().getNodeByIndex(r),f=c.getLayout().value,h=this.getDataParams(r,i).data.name;return Cr("nameValue",{name:h!=null?h+"":null,value:f,noValue:a(f)})}},t.prototype.optionUpdated=function(){},t.prototype.getDataParams=function(r,n){var i=e.prototype.getDataParams.call(this,r,n);if(i.value==null&&n==="node"){var a=this.getGraph().getNodeByIndex(r),o=a.getLayout().value;i.value=o}return i},t.type="series.sankey",t.layoutMode="box",t.defaultOption={z:2,coordinateSystemUsage:"box",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,roam:!1,roamTrigger:"global",center:null,zoom:1,label:{show:!0,position:"right",fontSize:12},edgeLabel:{show:!1,fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:J.color.neutral50,opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:J.color.primary}},animationEasing:"linear",animationDuration:1e3},t}(Tt);function uUe(e,t){e.eachSeriesByType("sankey",function(r){var n=r.get("nodeWidth"),i=r.get("nodeGap"),a=jr(r,t).refContainer,o=zt(r.getBoxLayoutParams(),a);r.layoutInfo=o;var s=o.width,l=o.height,u=r.getGraph(),c=u.nodes,f=u.edges;fUe(c);var h=ht(c,function(m){return m.getLayout().value===0}),d=h.length!==0?0:r.get("layoutIterations"),v=r.get("orient"),g=r.get("nodeAlign");cUe(c,f,n,i,s,l,d,v,g)})}function cUe(e,t,r,n,i,a,o,s,l){hUe(e,t,r,i,a,s,l),gUe(e,t,a,i,n,o,s),CUe(e,s)}function fUe(e){R(e,function(t){var r=ru(t.outEdges,Xw),n=ru(t.inEdges,Xw),i=t.getValue()||0,a=Math.max(r,n,i);t.setLayout({value:a},!0)})}function hUe(e,t,r,n,i,a,o){for(var s=[],l=[],u=[],c=[],f=0,h=0;h=0;x&&m.depth>d&&(d=m.depth),g.setLayout({depth:x?m.depth:f},!0),a==="vertical"?g.setLayout({dy:r},!0):g.setLayout({dx:r},!0);for(var _=0;_f-1?d:f-1;o&&o!=="left"&&dUe(e,o,a,A);var P=a==="vertical"?(i-r)/A:(n-r)/A;pUe(e,P,a)}function Pne(e){var t=e.hostGraph.data.getRawDataItem(e.dataIndex);return t.depth!=null&&t.depth>=0}function dUe(e,t,r,n){if(t==="right"){for(var i=[],a=e,o=0;a.length;){for(var s=0;s0;a--)l*=.99,xUe(s,l,o),zM(s,i,r,n,o),TUe(s,l,o),zM(s,i,r,n,o)}function mUe(e,t){var r=[],n=t==="vertical"?"y":"x",i=yI(e,function(a){return a.getLayout()[n]});return i.keys.sort(function(a,o){return a-o}),R(i.keys,function(a){r.push(i.buckets.get(a))}),r}function yUe(e,t,r,n,i,a){var o=1/0;R(e,function(s){var l=s.length,u=0;R(s,function(f){u+=f.getLayout().value});var c=a==="vertical"?(n-(l-1)*i)/u:(r-(l-1)*i)/u;c0&&(s=l.getLayout()[a]+u,i==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0)),c=l.getLayout()[a]+l.getLayout()[h]+t;var v=i==="vertical"?n:r;if(u=c-t-v,u>0){s=l.getLayout()[a]-u,i==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0),c=s;for(var d=f-2;d>=0;--d)l=o[d],u=l.getLayout()[a]+l.getLayout()[h]+t-c,u>0&&(s=l.getLayout()[a]-u,i==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0)),c=l.getLayout()[a]}})}function xUe(e,t,r){R(e.slice().reverse(),function(n){R(n,function(i){if(i.outEdges.length){var a=ru(i.outEdges,_Ue,r)/ru(i.outEdges,Xw);if(isNaN(a)){var o=i.outEdges.length;a=o?ru(i.outEdges,bUe,r)/o:0}if(r==="vertical"){var s=i.getLayout().x+(a-du(i,r))*t;i.setLayout({x:s},!0)}else{var l=i.getLayout().y+(a-du(i,r))*t;i.setLayout({y:l},!0)}}})})}function _Ue(e,t){return du(e.node2,t)*e.getValue()}function bUe(e,t){return du(e.node2,t)}function wUe(e,t){return du(e.node1,t)*e.getValue()}function SUe(e,t){return du(e.node1,t)}function du(e,t){return t==="vertical"?e.getLayout().x+e.getLayout().dx/2:e.getLayout().y+e.getLayout().dy/2}function Xw(e){return e.getValue()}function ru(e,t,r){for(var n=0,i=e.length,a=-1;++ao&&(o=l)}),R(n,function(s){var l=new Hr({type:"color",mappingMethod:"linear",dataExtent:[a,o],visual:t.get("color")}),u=l.mapValueToVisual(s.getLayout().value),c=s.getModel().get(["itemStyle","color"]);c!=null?(s.setVisual("color",c),s.setVisual("style",{fill:c})):(s.setVisual("color",u),s.setVisual("style",{fill:u}))})}i.length&&R(i,function(s){var l=s.getModel().get("lineStyle");s.setVisual("style",l)})})}function MUe(e){e.registerChartView(oUe),e.registerSeriesModel(lUe),e.registerLayout(uUe),e.registerVisual(AUe),e.registerAction({type:"dragNode",event:"dragnode",update:"update"},function(t,r){r.eachComponent({mainType:"series",subType:"sankey",query:t},function(n){n.setNodePosition(t.dataIndex,[t.localX,t.localY])})}),e.registerAction({type:"sankeyRoam",event:"sankeyRoam",update:"none"},function(t,r,n){r.eachComponent({mainType:"series",subType:"sankey",query:t},function(i){var a=i.coordinateSystem,o=iC(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}var kne=function(){function e(){}return e.prototype._hasEncodeRule=function(t){var r=this.getEncode();return r&&r.get(t)!=null},e.prototype.getInitialData=function(t,r){var n,i=r.getComponent("xAxis",this.get("xAxisIndex")),a=r.getComponent("yAxis",this.get("yAxisIndex")),o=i.get("type"),s=a.get("type"),l;o==="category"?(t.layout="horizontal",n=i.getOrdinalMeta(),l=!this._hasEncodeRule("x")):s==="category"?(t.layout="vertical",n=a.getOrdinalMeta(),l=!this._hasEncodeRule("y")):t.layout=t.layout||"horizontal";var u=["x","y"],c=t.layout==="horizontal"?0:1,f=this._baseAxisDim=u[c],h=u[1-c],d=[i,a],v=d[c].get("type"),g=d[1-c].get("type"),m=t.data;if(m&&l){var x=[];R(m,function(S,T){var C;ae(S)?(C=S.slice(),S.unshift(T)):ae(S.value)?(C=ne({},S),C.value=C.value.slice(),S.value.unshift(T)):C=S,x.push(C)}),t.data=x}var _=this.defaultValueDimensions,b=[{name:f,type:Ow(v),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:h,type:Ow(g),dimsDef:_.slice()}];return ep(this,{coordDimensions:b,dimensionsCount:_.length+1,encodeDefaulter:Fe(zQ,b,this)})},e.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},e}(),Lne=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],r.visualDrawType="stroke",r}return t.type="series.boxplot",t.dependencies=["xAxis","yAxis","grid"],t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:J.color.neutral00,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:J.color.shadow}},animationDuration:800},t}(Tt);cr(Lne,kne,!0);var PUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this.group,s=this._data;this._data||o.removeAll();var l=r.get("layout")==="horizontal"?1:0;a.diff(s).add(function(u){if(a.hasValue(u)){var c=a.getItemLayout(u),f=u8(c,a,u,l,!0);a.setItemGraphicEl(u,f),o.add(f)}}).update(function(u,c){var f=s.getItemGraphicEl(c);if(!a.hasValue(u)){o.remove(f);return}var h=a.getItemLayout(u);f?(ga(f),Ine(h,f,a,u)):f=u8(h,a,u,l),o.add(f),a.setItemGraphicEl(u,f)}).remove(function(u){var c=s.getItemGraphicEl(u);c&&o.remove(c)}).execute(),this._data=a},t.prototype.remove=function(r){var n=this.group,i=this._data;this._data=null,i&&i.eachItemGraphicEl(function(a){a&&n.remove(a)})},t.type="boxplot",t}(bt),kUe=function(){function e(){}return e}(),LUe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="boxplotBoxPath",n}return t.prototype.getDefaultShape=function(){return new kUe},t.prototype.buildPath=function(r,n){var i=n.points,a=0;for(r.moveTo(i[a][0],i[a][1]),a++;a<4;a++)r.lineTo(i[a][0],i[a][1]);for(r.closePath();ag){var S=[x,b];n.push(S)}}}return{boxData:r,outliers:n}}var RUe={type:"echarts:boxplot",transform:function(t){var r=t.upstream;if(r.sourceFormat!==on){var n="";mt(n)}var i=jUe(r.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};function BUe(e){e.registerSeriesModel(Lne),e.registerChartView(PUe),e.registerLayout(OUe),e.registerTransform(RUe)}var zUe=["itemStyle","borderColor"],$Ue=["itemStyle","borderColor0"],FUe=["itemStyle","borderColorDoji"],VUe=["itemStyle","color"],GUe=["itemStyle","color0"];function pR(e,t){return t.get(e>0?VUe:GUe)}function gR(e,t){return t.get(e===0?FUe:e>0?zUe:$Ue)}var WUe={seriesType:"candlestick",plan:Zv(),performRawSeries:!0,reset:function(e,t){if(!t.isSeriesFiltered(e)){var r=e.pipelineContext.large;return!r&&{progress:function(n,i){for(var a;(a=n.next())!=null;){var o=i.getItemModel(a),s=i.getItemLayout(a).sign,l=o.getItemStyle();l.fill=pR(s,o),l.stroke=gR(s,o)||l.fill;var u=i.ensureUniqueItemVisual(a,"style");ne(u,l)}}}}}},HUe=["color","borderColor"],UUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(r),this._isLargeDraw?this._renderLarge(r):this._renderNormal(r)},t.prototype.incrementalPrepareRender=function(r,n,i){this._clear(),this._updateDrawMode(r)},t.prototype.incrementalRender=function(r,n,i,a){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(r,n):this._incrementalRenderNormal(r,n)},t.prototype.eachRendered=function(r){Au(this._progressiveEls||this.group,r)},t.prototype._updateDrawMode=function(r){var n=r.pipelineContext.large;(this._isLargeDraw==null||n!==this._isLargeDraw)&&(this._isLargeDraw=n,this._clear())},t.prototype._renderNormal=function(r){var n=r.getData(),i=this._data,a=this.group,o=n.getLayout("isSimpleBox"),s=r.get("clip",!0),l=r.coordinateSystem,u=l.getArea&&l.getArea();this._data||a.removeAll(),n.diff(i).add(function(c){if(n.hasValue(c)){var f=n.getItemLayout(c);if(s&&c8(u,f))return;var h=$M(f,c,!0);Dt(h,{shape:{points:f.ends}},r,c),FM(h,n,c,o),a.add(h),n.setItemGraphicEl(c,h)}}).update(function(c,f){var h=i.getItemGraphicEl(f);if(!n.hasValue(c)){a.remove(h);return}var d=n.getItemLayout(c);if(s&&c8(u,d)){a.remove(h);return}h?(lt(h,{shape:{points:d.ends}},r,c),ga(h)):h=$M(d),FM(h,n,c,o),a.add(h),n.setItemGraphicEl(c,h)}).remove(function(c){var f=i.getItemGraphicEl(c);f&&a.remove(f)}).execute(),this._data=n},t.prototype._renderLarge=function(r){this._clear(),f8(r,this.group);var n=r.get("clip",!0)?T0(r.coordinateSystem,!1,r):null;n?this.group.setClipPath(n):this.group.removeClipPath()},t.prototype._incrementalRenderNormal=function(r,n){for(var i=n.getData(),a=i.getLayout("isSimpleBox"),o;(o=r.next())!=null;){var s=i.getItemLayout(o),l=$M(s);FM(l,i,o,a),l.incremental=!0,this.group.add(l),this._progressiveEls.push(l)}},t.prototype._incrementalRenderLarge=function(r,n){f8(n,this.group,this._progressiveEls,!0)},t.prototype.remove=function(r){this._clear()},t.prototype._clear=function(){this.group.removeAll(),this._data=null},t.type="candlestick",t}(bt),ZUe=function(){function e(){}return e}(),YUe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="normalCandlestickBox",n}return t.prototype.getDefaultShape=function(){return new ZUe},t.prototype.buildPath=function(r,n){var i=n.points;this.__simpleBox?(r.moveTo(i[4][0],i[4][1]),r.lineTo(i[6][0],i[6][1])):(r.moveTo(i[0][0],i[0][1]),r.lineTo(i[1][0],i[1][1]),r.lineTo(i[2][0],i[2][1]),r.lineTo(i[3][0],i[3][1]),r.closePath(),r.moveTo(i[4][0],i[4][1]),r.lineTo(i[5][0],i[5][1]),r.moveTo(i[6][0],i[6][1]),r.lineTo(i[7][0],i[7][1]))},t}(tt);function $M(e,t,r){var n=e.ends;return new YUe({shape:{points:r?XUe(n,e):n},z2:100})}function c8(e,t){for(var r=!0,n=0;nT?E[a]:k[a],ends:z,brushRect:Z(C,A,b)})}function $(G,Y){var K=[];return K[i]=Y,K[a]=G,isNaN(Y)||isNaN(G)?[NaN,NaN]:t.dataToPoint(K)}function B(G,Y,K){var ee=Y.slice(),le=Y.slice();ee[i]=fb(ee[i]+n/2,1,!1),le[i]=fb(le[i]-n/2,1,!0),K?G.push(ee,le):G.push(le,ee)}function Z(G,Y,K){var ee=$(G,K),le=$(Y,K);return ee[i]-=n/2,le[i]-=n/2,{x:ee[0],y:ee[1],width:n,height:le[1]-ee[1]}}function W(G){return G[i]=fb(G[i],1),G}}function v(g,m){for(var x=Mo(g.count*4),_=0,b,S=[],T=[],C,A=m.getStore(),P=!!e.get(["itemStyle","borderColorDoji"]);(C=g.next())!=null;){var I=A.get(s,C),k=A.get(u,C),E=A.get(c,C),D=A.get(f,C),N=A.get(h,C);if(isNaN(I)||isNaN(D)||isNaN(N)){x[_++]=NaN,_+=3;continue}x[_++]=h8(A,C,k,E,c,P),S[i]=I,S[a]=D,b=t.dataToPoint(S,null,T),x[_++]=b?b[0]:NaN,x[_++]=b?b[1]:NaN,S[a]=N,b=t.dataToPoint(S,null,T),x[_++]=b?b[1]:NaN}m.setLayout("largePoints",x)}}};function h8(e,t,r,n,i,a){var o;return r>n?o=-1:r0?e.get(i,t-1)<=n?1:-1:1,o}function QUe(e,t){var r=e.getBaseAxis(),n,i=r.type==="category"?r.getBandWidth():(n=r.getExtent(),Math.abs(n[1]-n[0])/t.count()),a=ve(be(e.get("barMaxWidth"),i),i),o=ve(be(e.get("barMinWidth"),1),i),s=e.get("barWidth");return s!=null?ve(s,i):Math.max(Math.min(i/2,a),o)}function e7e(e){e.registerChartView(UUe),e.registerSeriesModel(One),e.registerPreprocessor(KUe),e.registerVisual(WUe),e.registerLayout(JUe)}function d8(e,t){var r=t.rippleEffectColor||t.color;e.eachChild(function(n){n.attr({z:t.z,zlevel:t.zlevel,style:{stroke:t.brushType==="stroke"?r:null,fill:t.brushType==="fill"?r:null}})})}var t7e=function(e){q(t,e);function t(r,n){var i=e.call(this)||this,a=new w0(r,n),o=new Me;return i.add(a),i.add(o),i.updateData(r,n),i}return t.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},t.prototype.startEffectAnimation=function(r){for(var n=r.symbolType,i=r.color,a=r.rippleNumber,o=this.childAt(1),s=0;s0&&(s=this._getLineLength(a)/c*1e3),s!==this._period||l!==this._loop||u!==this._roundTrip){a.stopAnimation();var h=void 0;Ce(f)?h=f(i):h=f,a.__t>0&&(h=-s*a.__t),this._animateSymbol(a,s,h,l,u)}this._period=s,this._loop=l,this._roundTrip=u}},t.prototype._animateSymbol=function(r,n,i,a,o){if(n>0){r.__t=0;var s=this,l=r.animate("",a).when(o?n*2:n,{__t:o?2:1}).delay(i).during(function(){s._updateSymbolPosition(r)});a||l.done(function(){s.remove(r)}),l.start()}},t.prototype._getLineLength=function(r){return xs(r.__p1,r.__cp1)+xs(r.__cp1,r.__p2)},t.prototype._updateAnimationPoints=function(r,n){r.__p1=n[0],r.__p2=n[1],r.__cp1=n[2]||[(n[0][0]+n[1][0])/2,(n[0][1]+n[1][1])/2]},t.prototype.updateData=function(r,n,i){this.childAt(0).updateData(r,n,i),this._updateEffectSymbol(r,n)},t.prototype._updateSymbolPosition=function(r){var n=r.__p1,i=r.__p2,a=r.__cp1,o=r.__t<1?r.__t:2-r.__t,s=[r.x,r.y],l=s.slice(),u=tn,c=rI;s[0]=u(n[0],a[0],i[0],o),s[1]=u(n[1],a[1],i[1],o);var f=r.__t<1?c(n[0],a[0],i[0],o):c(i[0],a[0],n[0],1-o),h=r.__t<1?c(n[1],a[1],i[1],o):c(i[1],a[1],n[1],1-o);r.rotation=-Math.atan2(h,f)-Math.PI/2,(this._symbolType==="line"||this._symbolType==="rect"||this._symbolType==="roundRect")&&(r.__lastT!==void 0&&r.__lastT=0&&!(a[l]<=n);l--);l=Math.min(l,o-2)}else{for(l=s;ln);l++);l=Math.min(l-1,o-2)}var c=(n-a[l])/(a[l+1]-a[l]),f=i[l],h=i[l+1];r.x=f[0]*(1-c)+c*h[0],r.y=f[1]*(1-c)+c*h[1];var d=r.__t<1?h[0]-f[0]:f[0]-h[0],v=r.__t<1?h[1]-f[1]:f[1]-h[1];r.rotation=-Math.atan2(v,d)-Math.PI/2,this._lastFrame=l,this._lastFramePercent=n,r.ignore=!1}},t}(Ene),o7e=function(){function e(){this.polyline=!1,this.curveness=0,this.segs=[]}return e}(),s7e=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n._off=0,n.hoverDataIdx=-1,n}return t.prototype.reset=function(){this.notClear=!1,this._off=0},t.prototype.getDefaultStyle=function(){return{stroke:J.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new o7e},t.prototype.buildPath=function(r,n){var i=n.segs,a=n.curveness,o;if(n.polyline)for(o=this._off;o0){r.moveTo(i[o++],i[o++]);for(var l=1;l0){var d=(u+f)/2-(c-h)*a,v=(c+h)/2-(f-u)*a;r.quadraticCurveTo(d,v,f,h)}else r.lineTo(f,h)}this.incremental&&(this._off=o,this.notClear=!0)},t.prototype.findDataIndex=function(r,n){var i=this.shape,a=i.segs,o=i.curveness,s=this.style.lineWidth;if(i.polyline)for(var l=0,u=0;u0)for(var f=a[u++],h=a[u++],d=1;d0){var m=(f+v)/2-(h-g)*o,x=(h+g)/2-(v-f)*o;if(DJ(f,h,m,x,v,g,s,r,n))return l}else if(wl(f,h,v,g,s,r,n))return l;l++}return-1},t.prototype.contain=function(r,n){var i=this.transformCoordToLocal(r,n),a=this.getBoundingRect();if(r=i[0],n=i[1],a.contain(r,n)){var o=this.hoverDataIdx=this.findDataIndex(r,n);return o>=0}return this.hoverDataIdx=-1,!1},t.prototype.getBoundingRect=function(){var r=this._rect;if(!r){for(var n=this.shape,i=n.segs,a=1/0,o=1/0,s=-1/0,l=-1/0,u=0;u0&&(o.dataIndex=l+t.__startIndex)})},e.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},e}(),Nne={seriesType:"lines",plan:Zv(),reset:function(e){var t=e.coordinateSystem;if(t){var r=e.get("polyline"),n=e.pipelineContext.large;return{progress:function(i,a){var o=[];if(n){var s=void 0,l=i.end-i.start;if(r){for(var u=0,c=i.start;c0&&(c||u.configLayer(s,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(l/10+.9,1),0)})),o.updateData(a);var f=r.get("clip",!0)&&T0(r.coordinateSystem,!1,r);f?this.group.setClipPath(f):this.group.removeClipPath(),this._lastZlevel=s,this._finished=!0},t.prototype.incrementalPrepareRender=function(r,n,i){var a=r.getData(),o=this._updateLineDraw(a,r);o.incrementalPrepareUpdate(a),this._clearLayer(i),this._finished=!1},t.prototype.incrementalRender=function(r,n,i){this._lineDraw.incrementalUpdate(r,n.getData()),this._finished=r.end===n.getData().count()},t.prototype.eachRendered=function(r){this._lineDraw&&this._lineDraw.eachRendered(r)},t.prototype.updateTransform=function(r,n,i){var a=r.getData(),o=r.pipelineContext;if(!this._finished||o.large||o.progressiveRender)return{update:!0};var s=Nne.reset(r,n,i);s.progress&&s.progress({start:0,end:a.count(),count:a.count()},a),this._lineDraw.updateLayout(),this._clearLayer(i)},t.prototype._updateLineDraw=function(r,n){var i=this._lineDraw,a=this._showEffect(n),o=!!n.get("polyline"),s=n.pipelineContext,l=s.large;return(!i||a!==this._hasEffet||o!==this._isPolyline||l!==this._isLargeDraw)&&(i&&i.remove(),i=this._lineDraw=l?new l7e:new oR(o?a?a7e:Dne:a?Ene:aR),this._hasEffet=a,this._isPolyline=o,this._isLargeDraw=l),this.group.add(i.group),i},t.prototype._showEffect=function(r){return!!r.get(["effect","show"])},t.prototype._clearLayer=function(r){var n=r.getZr(),i=n.painter.getType()==="svg";!i&&this._lastZlevel!=null&&n.painter.getLayer(this._lastZlevel).clear(!0)},t.prototype.remove=function(r,n){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(n)},t.prototype.dispose=function(r,n){this.remove(r,n)},t.type="lines",t}(bt),c7e=typeof Uint32Array>"u"?Array:Uint32Array,f7e=typeof Float64Array>"u"?Array:Float64Array;function v8(e){var t=e.data;t&&t[0]&&t[0][0]&&t[0][0].coord&&(e.data=se(t,function(r){var n=[r[0].coord,r[1].coord],i={coords:n};return r[0].name&&(i.fromName=r[0].name),r[1].name&&(i.toName=r[1].name),PT([i,r[0],r[1]])}))}var h7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.visualStyleAccessPath="lineStyle",r.visualDrawType="stroke",r}return t.prototype.init=function(r){r.data=r.data||[],v8(r);var n=this._processFlatCoordsArray(r.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(r.data=new Float32Array(n.count)),e.prototype.init.apply(this,arguments)},t.prototype.mergeOption=function(r){if(v8(r),r.data){var n=this._processFlatCoordsArray(r.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(r.data=new Float32Array(n.count))}e.prototype.mergeOption.apply(this,arguments)},t.prototype.appendData=function(r){var n=this._processFlatCoordsArray(r.data);n.flatCoords&&(this._flatCoords?(this._flatCoords=Yd(this._flatCoords,n.flatCoords),this._flatCoordsOffset=Yd(this._flatCoordsOffset,n.flatCoordsOffset)):(this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset),r.data=new Float32Array(n.count)),this.getRawData().appendData(r.data)},t.prototype._getCoordsFromItemModel=function(r){var n=this.getData().getItemModel(r),i=n.option instanceof Array?n.option:n.getShallow("coords");return i},t.prototype.getLineCoordsCount=function(r){return this._flatCoordsOffset?this._flatCoordsOffset[r*2+1]:this._getCoordsFromItemModel(r).length},t.prototype.getLineCoords=function(r,n){if(this._flatCoordsOffset){for(var i=this._flatCoordsOffset[r*2],a=this._flatCoordsOffset[r*2+1],o=0;o ")})},t.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},t.prototype.getProgressive=function(){var r=this.option.progressive;return r??(this.option.large?1e4:this.get("progressive"))},t.prototype.getProgressiveThreshold=function(){var r=this.option.progressiveThreshold;return r??(this.option.large?2e4:this.get("progressiveThreshold"))},t.prototype.getZLevelKey=function(){var r=this.getModel("effect"),n=r.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:r.get("show")&&n>0?n+"":""},t.type="series.lines",t.dependencies=["grid","polar","geo","calendar"],t.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},t}(Tt);function M_(e){return e instanceof Array||(e=[e,e]),e}var d7e={seriesType:"lines",reset:function(e){var t=M_(e.get("symbol")),r=M_(e.get("symbolSize")),n=e.getData();n.setVisual("fromSymbol",t&&t[0]),n.setVisual("toSymbol",t&&t[1]),n.setVisual("fromSymbolSize",r&&r[0]),n.setVisual("toSymbolSize",r&&r[1]);function i(a,o){var s=a.getItemModel(o),l=M_(s.getShallow("symbol",!0)),u=M_(s.getShallow("symbolSize",!0));l[0]&&a.setItemVisual(o,"fromSymbol",l[0]),l[1]&&a.setItemVisual(o,"toSymbol",l[1]),u[0]&&a.setItemVisual(o,"fromSymbolSize",u[0]),u[1]&&a.setItemVisual(o,"toSymbolSize",u[1])}return{dataEach:n.hasItemOption?i:null}}};function v7e(e){e.registerChartView(u7e),e.registerSeriesModel(h7e),e.registerLayout(Nne),e.registerVisual(d7e)}var p7e=256,g7e=function(){function e(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=ui.createCanvas();this.canvas=t}return e.prototype.update=function(t,r,n,i,a,o){var s=this._getBrush(),l=this._getGradient(a,"inRange"),u=this._getGradient(a,"outOfRange"),c=this.pointSize+this.blurSize,f=this.canvas,h=f.getContext("2d"),d=t.length;f.width=r,f.height=n;for(var v=0;v0){var D=o(b)?l:u;b>0&&(b=b*k+P),T[C++]=D[E],T[C++]=D[E+1],T[C++]=D[E+2],T[C++]=D[E+3]*b*256}else C+=4}return h.putImageData(S,0,0),f},e.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=ui.createCanvas()),r=this.pointSize+this.blurSize,n=r*2;t.width=n,t.height=n;var i=t.getContext("2d");return i.clearRect(0,0,n,n),i.shadowOffsetX=n,i.shadowBlur=this.blurSize,i.shadowColor=J.color.neutral99,i.beginPath(),i.arc(-r,r,this.pointSize,0,Math.PI*2,!0),i.closePath(),i.fill(),t},e.prototype._getGradient=function(t,r){for(var n=this._gradientPixels,i=n[r]||(n[r]=new Uint8ClampedArray(256*4)),a=[0,0,0,0],o=0,s=0;s<256;s++)t[r](s/255,!0,a),i[o++]=a[0],i[o++]=a[1],i[o++]=a[2],i[o++]=a[3];return i},e}();function m7e(e,t,r){var n=e[1]-e[0];t=se(t,function(o){return{interval:[(o.interval[0]-e[0])/n,(o.interval[1]-e[0])/n]}});var i=t.length,a=0;return function(o){var s;for(s=a;s=0;s--){var l=t[s].interval;if(l[0]<=o&&o<=l[1]){a=s;break}}return s>=0&&s=t[0]&&n<=t[1]}}function p8(e){var t=e.dimensions;return t[0]==="lng"&&t[1]==="lat"}var x7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a;n.eachComponent("visualMap",function(s){s.eachTargetSeries(function(l){l===r&&(a=s)})}),this._progressiveEls=null,this.group.removeAll();var o=r.coordinateSystem;o.type==="cartesian2d"||o.type==="calendar"||o.type==="matrix"?this._renderOnGridLike(r,i,0,r.getData().count()):p8(o)&&this._renderOnGeo(o,r,a,i)},t.prototype.incrementalPrepareRender=function(r,n,i){this.group.removeAll()},t.prototype.incrementalRender=function(r,n,i,a){var o=n.coordinateSystem;o&&(p8(o)?this.render(n,i,a):(this._progressiveEls=[],this._renderOnGridLike(n,a,r.start,r.end,!0)))},t.prototype.eachRendered=function(r){Au(this._progressiveEls||this.group,r)},t.prototype._renderOnGridLike=function(r,n,i,a,o){var s=r.coordinateSystem,l=fu(s,"cartesian2d"),u=fu(s,"matrix"),c,f,h,d;if(l){var v=s.getAxis("x"),g=s.getAxis("y");c=v.getBandWidth()+.5,f=g.getBandWidth()+.5,h=v.scale.getExtent(),d=g.scale.getExtent()}for(var m=this.group,x=r.getData(),_=r.getModel(["emphasis","itemStyle"]).getItemStyle(),b=r.getModel(["blur","itemStyle"]).getItemStyle(),S=r.getModel(["select","itemStyle"]).getItemStyle(),T=r.get(["itemStyle","borderRadius"]),C=Nr(r),A=r.getModel("emphasis"),P=A.get("focus"),I=A.get("blurScope"),k=A.get("disabled"),E=l||u?[x.mapDimension("x"),x.mapDimension("y"),x.mapDimension("value")]:[x.mapDimension("time"),x.mapDimension("value")],D=i;Dh[1]||Fd[1])continue;var $=s.dataToPoint([V,F]);N=new Xe({shape:{x:$[0]-c/2,y:$[1]-f/2,width:c,height:f},style:z})}else if(u){var B=s.dataToLayout([x.get(E[0],D),x.get(E[1],D)]).rect;if(gn(B.x))continue;N=new Xe({z2:1,shape:B,style:z})}else{if(isNaN(x.get(E[1],D)))continue;var Z=s.dataToLayout([x.get(E[0],D)]),B=Z.contentRect||Z.rect;if(gn(B.x)||gn(B.y))continue;N=new Xe({z2:1,shape:B,style:z})}if(x.hasItemOption){var W=x.getItemModel(D),G=W.getModel("emphasis");_=G.getModel("itemStyle").getItemStyle(),b=W.getModel(["blur","itemStyle"]).getItemStyle(),S=W.getModel(["select","itemStyle"]).getItemStyle(),T=W.get(["itemStyle","borderRadius"]),P=G.get("focus"),I=G.get("blurScope"),k=G.get("disabled"),C=Nr(W)}N.shape.r=T;var Y=r.getRawValue(D),K="-";Y&&Y[2]!=null&&(K=Y[2]+""),Ur(N,C,{labelFetcher:r,labelDataIndex:D,defaultOpacity:z.opacity,defaultText:K}),N.ensureState("emphasis").style=_,N.ensureState("blur").style=b,N.ensureState("select").style=S,Gt(N,P,I,k),N.incremental=o,o&&(N.states.emphasis.hoverLayer=!0),m.add(N),x.setItemGraphicEl(D,N),this._progressiveEls&&this._progressiveEls.push(N)}},t.prototype._renderOnGeo=function(r,n,i,a){var o=i.targetVisuals.inRange,s=i.targetVisuals.outOfRange,l=n.getData(),u=this._hmLayer||this._hmLayer||new g7e;u.blurSize=n.get("blurSize"),u.pointSize=n.get("pointSize"),u.minOpacity=n.get("minOpacity"),u.maxOpacity=n.get("maxOpacity");var c=r.getViewRect().clone(),f=r.getRoamTransform();c.applyTransform(f);var h=Math.max(c.x,0),d=Math.max(c.y,0),v=Math.min(c.width+c.x,a.getWidth()),g=Math.min(c.height+c.y,a.getHeight()),m=v-h,x=g-d,_=[l.mapDimension("lng"),l.mapDimension("lat"),l.mapDimension("value")],b=l.mapArray(_,function(A,P,I){var k=r.dataToPoint([A,P]);return k[0]-=h,k[1]-=d,k.push(I),k}),S=i.getExtent(),T=i.type==="visualMap.continuous"?y7e(S,i.option.range):m7e(S,i.getPieceList(),i.option.selected);u.update(b,m,x,o.color.getNormalizer(),{inRange:o.color.getColorMapper(),outOfRange:s.color.getColorMapper()},T);var C=new Yr({style:{width:m,height:x,x:h,y:d,image:u.canvas},silent:!0});this.group.add(C)},t.type="heatmap",t}(bt),_7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(r,n){return Jo(null,this,{generateCoord:"value"})},t.prototype.preventIncremental=function(){var r=Uv.get(this.get("coordinateSystem"));if(r&&r.dimensions)return r.dimensions[0]==="lng"&&r.dimensions[1]==="lat"},t.type="series.heatmap",t.dependencies=["grid","geo","calendar","matrix"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:J.color.primary}}},t}(Tt);function b7e(e){e.registerChartView(x7e),e.registerSeriesModel(_7e)}var w7e=["itemStyle","borderWidth"],g8=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],WM=new Ko,S7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=this.group,o=r.getData(),s=this._data,l=r.coordinateSystem,u=l.getBaseAxis(),c=u.isHorizontal(),f=l.master.getRect(),h={ecSize:{width:i.getWidth(),height:i.getHeight()},seriesModel:r,coordSys:l,coordSysExtent:[[f.x,f.x+f.width],[f.y,f.y+f.height]],isHorizontal:c,valueDim:g8[+c],categoryDim:g8[1-+c]};o.diff(s).add(function(v){if(o.hasValue(v)){var g=y8(o,v),m=m8(o,v,g,h),x=x8(o,h,m);o.setItemGraphicEl(v,x),a.add(x),b8(x,h,m)}}).update(function(v,g){var m=s.getItemGraphicEl(g);if(!o.hasValue(v)){a.remove(m);return}var x=y8(o,v),_=m8(o,v,x,h),b=Fne(o,_);m&&b!==m.__pictorialShapeStr&&(a.remove(m),o.setItemGraphicEl(v,null),m=null),m?L7e(m,h,_):m=x8(o,h,_,!0),o.setItemGraphicEl(v,m),m.__pictorialSymbolMeta=_,a.add(m),b8(m,h,_)}).remove(function(v){var g=s.getItemGraphicEl(v);g&&_8(s,v,g.__pictorialSymbolMeta.animationModel,g)}).execute();var d=r.get("clip",!0)?T0(r.coordinateSystem,!1,r):null;return d?a.setClipPath(d):a.removeClipPath(),this._data=o,this.group},t.prototype.remove=function(r,n){var i=this.group,a=this._data;r.get("animation")?a&&a.eachItemGraphicEl(function(o){_8(a,Ne(o).dataIndex,r,o)}):i.removeAll()},t.type="pictorialBar",t}(bt);function m8(e,t,r,n){var i=e.getItemLayout(t),a=r.get("symbolRepeat"),o=r.get("symbolClip"),s=r.get("symbolPosition")||"start",l=r.get("symbolRotate"),u=(l||0)*Math.PI/180||0,c=r.get("symbolPatternSize")||2,f=r.isAnimationEnabled(),h={dataIndex:t,layout:i,itemModel:r,symbolType:e.getItemVisual(t,"symbol")||"circle",style:e.getItemVisual(t,"style"),symbolClip:o,symbolRepeat:a,symbolRepeatDirection:r.get("symbolRepeatDirection"),symbolPatternSize:c,rotation:u,animationModel:f?r:null,hoverScale:f&&r.get(["emphasis","scale"]),z2:r.getShallow("z",!0)||0};T7e(r,a,i,n,h),C7e(e,t,i,a,o,h.boundingLength,h.pxSign,c,n,h),A7e(r,h.symbolScale,u,n,h);var d=h.symbolSize,v=Of(r.get("symbolOffset"),d);return M7e(r,d,i,a,o,v,s,h.valueLineWidth,h.boundingLength,h.repeatCutLength,n,h),h}function T7e(e,t,r,n,i){var a=n.valueDim,o=e.get("symbolBoundingData"),s=n.coordSys.getOtherAxis(n.coordSys.getBaseAxis()),l=s.toGlobalCoord(s.dataToCoord(0)),u=1-+(r[a.wh]<=0),c;if(ae(o)){var f=[HM(s,o[0])-l,HM(s,o[1])-l];f[1]=0?1:-1:c>0?1:-1}function HM(e,t){return e.toGlobalCoord(e.dataToCoord(e.scale.parse(t)))}function C7e(e,t,r,n,i,a,o,s,l,u){var c=l.valueDim,f=l.categoryDim,h=Math.abs(r[f.wh]),d=e.getItemVisual(t,"symbolSize"),v;ae(d)?v=d.slice():d==null?v=["100%","100%"]:v=[d,d],v[f.index]=ve(v[f.index],h),v[c.index]=ve(v[c.index],n?h:Math.abs(a)),u.symbolSize=v;var g=u.symbolScale=[v[0]/s,v[1]/s];g[c.index]*=(l.isHorizontal?-1:1)*o}function A7e(e,t,r,n,i){var a=e.get(w7e)||0;a&&(WM.attr({scaleX:t[0],scaleY:t[1],rotation:r}),WM.updateTransform(),a/=WM.getLineScale(),a*=t[n.valueDim.index]),i.valueLineWidth=a||0}function M7e(e,t,r,n,i,a,o,s,l,u,c,f){var h=c.categoryDim,d=c.valueDim,v=f.pxSign,g=Math.max(t[d.index]+s,0),m=g;if(n){var x=Math.abs(l),_=rn(e.get("symbolMargin"),"15%")+"",b=!1;_.lastIndexOf("!")===_.length-1&&(b=!0,_=_.slice(0,_.length-1));var S=ve(_,t[d.index]),T=Math.max(g+S*2,0),C=b?0:S*2,A=AN(n),P=A?n:w8((x+C)/T),I=x-P*g;S=I/2/(b?P:Math.max(P-1,1)),T=g+S*2,C=b?0:S*2,!A&&n!=="fixed"&&(P=u?w8((Math.abs(u)+C)/T):0),m=P*T-C,f.repeatTimes=P,f.symbolMargin=S}var k=v*(m/2),E=f.pathPosition=[];E[h.index]=r[h.wh]/2,E[d.index]=o==="start"?k:o==="end"?l-k:l/2,a&&(E[0]+=a[0],E[1]+=a[1]);var D=f.bundlePosition=[];D[h.index]=r[h.xy],D[d.index]=r[d.xy];var N=f.barRectShape=ne({},r);N[d.wh]=v*Math.max(Math.abs(r[d.wh]),Math.abs(E[d.index]+k)),N[h.wh]=r[h.wh];var z=f.clipShape={};z[h.xy]=-r[h.xy],z[h.wh]=c.ecSize[h.wh],z[d.xy]=0,z[d.wh]=r[d.wh]}function jne(e){var t=e.symbolPatternSize,r=xr(e.symbolType,-t/2,-t/2,t,t);return r.attr({culling:!0}),r.type!=="image"&&r.setStyle({strokeNoScale:!0}),r}function Rne(e,t,r,n){var i=e.__pictorialBundle,a=r.symbolSize,o=r.valueLineWidth,s=r.pathPosition,l=t.valueDim,u=r.repeatTimes||0,c=0,f=a[t.valueDim.index]+o+r.symbolMargin*2;for(mR(e,function(g){g.__pictorialAnimationIndex=c,g.__pictorialRepeatTimes=u,c0:x<0)&&(_=u-1-g),m[l.index]=f*(_-u/2+.5)+s[l.index],{x:m[0],y:m[1],scaleX:r.symbolScale[0],scaleY:r.symbolScale[1],rotation:r.rotation}}}function Bne(e,t,r,n){var i=e.__pictorialBundle,a=e.__pictorialMainPath;a?vd(a,null,{x:r.pathPosition[0],y:r.pathPosition[1],scaleX:r.symbolScale[0],scaleY:r.symbolScale[1],rotation:r.rotation},r,n):(a=e.__pictorialMainPath=jne(r),i.add(a),vd(a,{x:r.pathPosition[0],y:r.pathPosition[1],scaleX:0,scaleY:0,rotation:r.rotation},{scaleX:r.symbolScale[0],scaleY:r.symbolScale[1]},r,n))}function zne(e,t,r){var n=ne({},t.barRectShape),i=e.__pictorialBarRect;i?vd(i,null,{shape:n},t,r):(i=e.__pictorialBarRect=new Xe({z2:2,shape:n,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}}),i.disableMorphing=!0,e.add(i))}function $ne(e,t,r,n){if(r.symbolClip){var i=e.__pictorialClipPath,a=ne({},r.clipShape),o=t.valueDim,s=r.animationModel,l=r.dataIndex;if(i)lt(i,{shape:a},s,l);else{a[o.wh]=0,i=new Xe({shape:a}),e.__pictorialBundle.setClipPath(i),e.__pictorialClipPath=i;var u={};u[o.wh]=r.clipShape[o.wh],kf[n?"updateProps":"initProps"](i,{shape:u},s,l)}}}function y8(e,t){var r=e.getItemModel(t);return r.getAnimationDelayParams=P7e,r.isAnimationEnabled=k7e,r}function P7e(e){return{index:e.__pictorialAnimationIndex,count:e.__pictorialRepeatTimes}}function k7e(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function x8(e,t,r,n){var i=new Me,a=new Me;return i.add(a),i.__pictorialBundle=a,a.x=r.bundlePosition[0],a.y=r.bundlePosition[1],r.symbolRepeat?Rne(i,t,r):Bne(i,t,r),zne(i,r,n),$ne(i,t,r,n),i.__pictorialShapeStr=Fne(e,r),i.__pictorialSymbolMeta=r,i}function L7e(e,t,r){var n=r.animationModel,i=r.dataIndex,a=e.__pictorialBundle;lt(a,{x:r.bundlePosition[0],y:r.bundlePosition[1]},n,i),r.symbolRepeat?Rne(e,t,r,!0):Bne(e,t,r,!0),zne(e,r,!0),$ne(e,t,r,!0)}function _8(e,t,r,n){var i=n.__pictorialBarRect;i&&i.removeTextContent();var a=[];mR(n,function(o){a.push(o)}),n.__pictorialMainPath&&a.push(n.__pictorialMainPath),n.__pictorialClipPath&&(r=null),R(a,function(o){cu(o,{scaleX:0,scaleY:0},r,t,function(){n.parent&&n.parent.remove(n)})}),e.setItemGraphicEl(t,null)}function Fne(e,t){return[e.getItemVisual(t.dataIndex,"symbol")||"none",!!t.symbolRepeat,!!t.symbolClip].join(":")}function mR(e,t,r){R(e.__pictorialBundle.children(),function(n){n!==e.__pictorialBarRect&&t.call(r,n)})}function vd(e,t,r,n,i,a){t&&e.attr(t),n.symbolClip&&!i?r&&e.attr(r):r&&kf[i?"updateProps":"initProps"](e,r,n.animationModel,n.dataIndex,a)}function b8(e,t,r){var n=r.dataIndex,i=r.itemModel,a=i.getModel("emphasis"),o=a.getModel("itemStyle").getItemStyle(),s=i.getModel(["blur","itemStyle"]).getItemStyle(),l=i.getModel(["select","itemStyle"]).getItemStyle(),u=i.getShallow("cursor"),c=a.get("focus"),f=a.get("blurScope"),h=a.get("scale");mR(e,function(g){if(g instanceof Yr){var m=g.style;g.useStyle(ne({image:m.image,x:m.x,y:m.y,width:m.width,height:m.height},r.style))}else g.useStyle(r.style);var x=g.ensureState("emphasis");x.style=o,h&&(x.scaleX=g.scaleX*1.1,x.scaleY=g.scaleY*1.1),g.ensureState("blur").style=s,g.ensureState("select").style=l,u&&(g.cursor=u),g.z2=r.z2});var d=t.valueDim.posDesc[+(r.boundingLength>0)],v=e.__pictorialBarRect;v.ignoreClip=!0,Ur(v,Nr(i),{labelFetcher:t.seriesModel,labelDataIndex:n,defaultText:av(t.seriesModel.getData(),n),inheritColor:r.style.fill,defaultOpacity:r.style.opacity,defaultOutsidePosition:d}),Gt(e,c,f,a.get("disabled"))}function w8(e){var t=Math.round(e);return Math.abs(e-t)<1e-4?t:Math.ceil(e)}var I7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.hasSymbolVisual=!0,r.defaultSymbol="roundRect",r}return t.prototype.getInitialData=function(r){return r.stack=null,e.prototype.getInitialData.apply(this,arguments)},t.type="series.pictorialBar",t.dependencies=["grid"],t.defaultOption=Mu(Dy.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",clip:!1,progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:J.color.primary}}}),t}(Dy);function O7e(e){e.registerChartView(S7e),e.registerSeriesModel(I7e),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,Fe(ste,"pictorialBar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,lte("pictorialBar"))}var E7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._layers=[],r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this,s=this.group,l=r.getLayerSeries(),u=a.getLayout("layoutInfo"),c=u.rect,f=u.boundaryGap;s.x=0,s.y=c.y+f[0];function h(m){return m.name}var d=new Us(this._layersSeries||[],l,h,h),v=[];d.add(ge(g,this,"add")).update(ge(g,this,"update")).remove(ge(g,this,"remove")).execute();function g(m,x,_){var b=o._layers;if(m==="remove"){s.remove(b[x]);return}for(var S=[],T=[],C,A=l[x].indices,P=0;Pa&&(a=s),n.push(s)}for(var u=0;ua&&(a=f)}return{y0:i,max:a}}function B7e(e){e.registerChartView(E7e),e.registerSeriesModel(N7e),e.registerLayout(j7e),e.registerProcessor(Qv("themeRiver"))}var z7e=2,$7e=4,T8=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;o.z2=z7e,o.textConfig={inside:!0},Ne(o).seriesIndex=n.seriesIndex;var s=new at({z2:$7e,silent:r.getModel().get(["label","silent"])});return o.setTextContent(s),o.updateData(!0,r,n,i,a),o}return t.prototype.updateData=function(r,n,i,a,o){this.node=n,n.piece=this,i=i||this._seriesModel,a=a||this._ecModel;var s=this;Ne(s).dataIndex=n.dataIndex;var l=n.getModel(),u=l.getModel("emphasis"),c=n.getLayout(),f=ne({},c);f.label=null;var h=n.getVisual("style");h.lineJoin="bevel";var d=n.getVisual("decal");d&&(h.decal=rv(d,o));var v=ko(l.getModel("itemStyle"),f,!0);ne(f,v),R(Zn,function(_){var b=s.ensureState(_),S=l.getModel([_,"itemStyle"]);b.style=S.getItemStyle();var T=ko(S,f);T&&(b.shape=T)}),r?(s.setShape(f),s.shape.r=c.r0,Dt(s,{shape:{r:c.r}},i,n.dataIndex)):(lt(s,{shape:f},i),ga(s)),s.useStyle(h),this._updateLabel(i);var g=l.getShallow("cursor");g&&s.attr("cursor",g),this._seriesModel=i||this._seriesModel,this._ecModel=a||this._ecModel;var m=u.get("focus"),x=m==="relative"?Yd(n.getAncestorsIndices(),n.getDescendantIndices()):m==="ancestor"?n.getAncestorsIndices():m==="descendant"?n.getDescendantIndices():m;Gt(this,x,u.get("blurScope"),u.get("disabled"))},t.prototype._updateLabel=function(r){var n=this,i=this.node.getModel(),a=i.getModel("label"),o=this.node.getLayout(),s=o.endAngle-o.startAngle,l=(o.startAngle+o.endAngle)/2,u=Math.cos(l),c=Math.sin(l),f=this,h=f.getTextContent(),d=this.node.dataIndex,v=a.get("minAngle")/180*Math.PI,g=a.get("show")&&!(v!=null&&Math.abs(s)z&&!Kd(F-z)&&F0?(o.virtualPiece?o.virtualPiece.updateData(!1,_,r,n,i):(o.virtualPiece=new T8(_,r,n,i),c.add(o.virtualPiece)),b.piece.off("click"),o.virtualPiece.on("click",function(S){o._rootToNode(b.parentNode)})):o.virtualPiece&&(c.remove(o.virtualPiece),o.virtualPiece=null)}},t.prototype._initEvents=function(){var r=this;this.group.off("click"),this.group.on("click",function(n){var i=!1,a=r.seriesModel.getViewRoot();a.eachNode(function(o){if(!i&&o.piece&&o.piece===n.target){var s=o.getModel().get("nodeClick");if(s==="rootToNode")r._rootToNode(o);else if(s==="link"){var l=o.getModel(),u=l.get("link");if(u){var c=l.get("target",!0)||"_blank";ww(u,c)}}i=!0}})})},t.prototype._rootToNode=function(r){r!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:DO,from:this.uid,seriesId:this.seriesModel.id,targetNode:r})},t.prototype.containPoint=function(r,n){var i=n.getData(),a=i.getItemLayout(0);if(a){var o=r[0]-a.cx,s=r[1]-a.cy,l=Math.sqrt(o*o+s*s);return l<=a.r&&l>=a.r0}},t.type="sunburst",t}(bt),W7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.ignoreStyleOnData=!0,r}return t.prototype.getInitialData=function(r,n){var i={name:r.name,children:r.data};Vne(i);var a=this._levelModels=se(r.levels||[],function(l){return new et(l,this,n)},this),o=Qj.createTree(i,this,s);function s(l){l.wrapMethod("getItemModel",function(u,c){var f=o.getNodeByDataIndex(c),h=a[f.depth];return h&&(u.parentModel=h),u})}return o.data},t.prototype.optionUpdated=function(){this.resetViewRoot()},t.prototype.getDataParams=function(r){var n=e.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(r);return n.treePathInfo=oC(i,this),n},t.prototype.getLevelModel=function(r){return this._levelModels&&this._levelModels[r.depth]},t.prototype.getViewRoot=function(){return this._viewRoot},t.prototype.resetViewRoot=function(r){r?this._viewRoot=r:r=this._viewRoot;var n=this.getRawData().tree.root;(!r||r!==n&&!n.contains(r))&&(this._viewRoot=n)},t.prototype.enableAriaDecal=function(){Ure(this)},t.type="series.sunburst",t.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},t}(Tt);function Vne(e){var t=0;R(e.children,function(n){Vne(n);var i=n.value;ae(i)&&(i=i[0]),t+=i});var r=e.value;ae(r)&&(r=r[0]),(r==null||isNaN(r))&&(r=t),r<0&&(r=0),ae(e.value)?e.value[0]=r:e.value=r}var A8=Math.PI/180;function H7e(e,t,r){t.eachSeriesByType(e,function(n){var i=n.get("center"),a=n.get("radius");ae(a)||(a=[0,a]),ae(i)||(i=[i,i]);var o=r.getWidth(),s=r.getHeight(),l=Math.min(o,s),u=ve(i[0],o),c=ve(i[1],s),f=ve(a[0],l/2),h=ve(a[1],l/2),d=-n.get("startAngle")*A8,v=n.get("minAngle")*A8,g=n.getData().tree.root,m=n.getViewRoot(),x=m.depth,_=n.get("sort");_!=null&&Gne(m,_);var b=0;R(m.children,function(F){!isNaN(F.getValue())&&b++});var S=m.getValue(),T=Math.PI/(S||b)*2,C=m.depth>0,A=m.height-(C?-1:1),P=(h-f)/(A||1),I=n.get("clockwise"),k=n.get("stillShowZeroSum"),E=I?1:-1,D=function(F,$){if(F){var B=$;if(F!==g){var Z=F.getValue(),W=S===0&&k?T:Z*T;W1;)o=o.parentNode;var s=i.getColorFromPalette(o.name||o.dataIndex+"",t);return n.depth>1&&pe(s)&&(s=lw(s,(n.depth-1)/(a-1)*.5)),s}e.eachSeriesByType("sunburst",function(n){var i=n.getData(),a=i.tree;a.eachNode(function(o){var s=o.getModel(),l=s.getModel("itemStyle").getItemStyle();l.fill||(l.fill=r(o,n,a.root.height));var u=i.ensureUniqueItemVisual(o.dataIndex,"style");ne(u,l)})})}function Y7e(e){e.registerChartView(G7e),e.registerSeriesModel(W7e),e.registerLayout(Fe(H7e,"sunburst")),e.registerProcessor(Fe(Qv,"sunburst")),e.registerVisual(Z7e),V7e(e)}var M8={color:"fill",borderColor:"stroke"},X7e={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},Is=Je(),q7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},t.prototype.getInitialData=function(r,n){return Jo(null,this)},t.prototype.getDataParams=function(r,n,i){var a=e.prototype.getDataParams.call(this,r,n);return i&&(a.info=Is(i).info),a},t.type="series.custom",t.dependencies=["grid","polar","geo","singleAxis","calendar","matrix"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},t}(Tt);function K7e(e,t){return t=t||[0,0],se(["x","y"],function(r,n){var i=this.getAxis(r),a=t[n],o=e[n]/2;return i.type==="category"?i.getBandWidth():Math.abs(i.dataToCoord(a-o)-i.dataToCoord(a+o))},this)}function J7e(e){var t=e.master.getRect();return{coordSys:{type:"cartesian2d",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(r){return e.dataToPoint(r)},size:ge(K7e,e)}}}function Q7e(e,t){return t=t||[0,0],se([0,1],function(r){var n=t[r],i=e[r]/2,a=[],o=[];return a[r]=n-i,o[r]=n+i,a[1-r]=o[1-r]=t[1-r],Math.abs(this.dataToPoint(a)[r]-this.dataToPoint(o)[r])},this)}function e9e(e){var t=e.getBoundingRect();return{coordSys:{type:"geo",x:t.x,y:t.y,width:t.width,height:t.height,zoom:e.getZoom()},api:{coord:function(r){return e.dataToPoint(r)},size:ge(Q7e,e)}}}function t9e(e,t){var r=this.getAxis(),n=t instanceof Array?t[0]:t,i=(e instanceof Array?e[0]:e)/2;return r.type==="category"?r.getBandWidth():Math.abs(r.dataToCoord(n-i)-r.dataToCoord(n+i))}function r9e(e){var t=e.getRect();return{coordSys:{type:"singleAxis",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(r){return e.dataToPoint(r)},size:ge(t9e,e)}}}function n9e(e,t){return t=t||[0,0],se(["Radius","Angle"],function(r,n){var i="get"+r+"Axis",a=this[i](),o=t[n],s=e[n]/2,l=a.type==="category"?a.getBandWidth():Math.abs(a.dataToCoord(o-s)-a.dataToCoord(o+s));return r==="Angle"&&(l=l*Math.PI/180),l},this)}function i9e(e){var t=e.getRadiusAxis(),r=e.getAngleAxis(),n=t.getExtent();return n[0]>n[1]&&n.reverse(),{coordSys:{type:"polar",cx:e.cx,cy:e.cy,r:n[1],r0:n[0]},api:{coord:function(i){var a=t.dataToRadius(i[0]),o=r.dataToAngle(i[1]),s=e.coordToPoint([a,o]);return s.push(a,o*Math.PI/180),s},size:ge(n9e,e)}}}function a9e(e){var t=e.getRect(),r=e.getRangeInfo();return{coordSys:{type:"calendar",x:t.x,y:t.y,width:t.width,height:t.height,cellWidth:e.getCellWidth(),cellHeight:e.getCellHeight(),rangeInfo:{start:r.start,end:r.end,weeks:r.weeks,dayCount:r.allDay}},api:{coord:function(n,i){return e.dataToPoint(n,i)},layout:function(n,i){return e.dataToLayout(n,i)}}}}function o9e(e){var t=e.getRect();return{coordSys:{type:"matrix",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(r,n){return e.dataToPoint(r,n)},layout:function(r,n){return e.dataToLayout(r,n)}}}}function Wne(e,t,r,n){return e&&(e.legacy||e.legacy!==!1&&!r&&!n&&t!=="tspan"&&(t==="text"||xe(e,"text")))}function Hne(e,t,r){var n=e,i,a,o;if(t==="text")o=n;else{o={},xe(n,"text")&&(o.text=n.text),xe(n,"rich")&&(o.rich=n.rich),xe(n,"textFill")&&(o.fill=n.textFill),xe(n,"textStroke")&&(o.stroke=n.textStroke),xe(n,"fontFamily")&&(o.fontFamily=n.fontFamily),xe(n,"fontSize")&&(o.fontSize=n.fontSize),xe(n,"fontStyle")&&(o.fontStyle=n.fontStyle),xe(n,"fontWeight")&&(o.fontWeight=n.fontWeight),a={type:"text",style:o,silent:!0},i={};var s=xe(n,"textPosition");r?i.position=s?n.textPosition:"inside":s&&(i.position=n.textPosition),xe(n,"textPosition")&&(i.position=n.textPosition),xe(n,"textOffset")&&(i.offset=n.textOffset),xe(n,"textRotation")&&(i.rotation=n.textRotation),xe(n,"textDistance")&&(i.distance=n.textDistance)}return P8(o,e),R(o.rich,function(l){P8(l,l)}),{textConfig:i,textContent:a}}function P8(e,t){t&&(t.font=t.textFont||t.font,xe(t,"textStrokeWidth")&&(e.lineWidth=t.textStrokeWidth),xe(t,"textAlign")&&(e.align=t.textAlign),xe(t,"textVerticalAlign")&&(e.verticalAlign=t.textVerticalAlign),xe(t,"textLineHeight")&&(e.lineHeight=t.textLineHeight),xe(t,"textWidth")&&(e.width=t.textWidth),xe(t,"textHeight")&&(e.height=t.textHeight),xe(t,"textBackgroundColor")&&(e.backgroundColor=t.textBackgroundColor),xe(t,"textPadding")&&(e.padding=t.textPadding),xe(t,"textBorderColor")&&(e.borderColor=t.textBorderColor),xe(t,"textBorderWidth")&&(e.borderWidth=t.textBorderWidth),xe(t,"textBorderRadius")&&(e.borderRadius=t.textBorderRadius),xe(t,"textBoxShadowColor")&&(e.shadowColor=t.textBoxShadowColor),xe(t,"textBoxShadowBlur")&&(e.shadowBlur=t.textBoxShadowBlur),xe(t,"textBoxShadowOffsetX")&&(e.shadowOffsetX=t.textBoxShadowOffsetX),xe(t,"textBoxShadowOffsetY")&&(e.shadowOffsetY=t.textBoxShadowOffsetY))}function k8(e,t,r){var n=e;n.textPosition=n.textPosition||r.position||"inside",r.offset!=null&&(n.textOffset=r.offset),r.rotation!=null&&(n.textRotation=r.rotation),r.distance!=null&&(n.textDistance=r.distance);var i=n.textPosition.indexOf("inside")>=0,a=e.fill||J.color.neutral99;L8(n,t);var o=n.textFill==null;return i?o&&(n.textFill=r.insideFill||J.color.neutral00,!n.textStroke&&r.insideStroke&&(n.textStroke=r.insideStroke),!n.textStroke&&(n.textStroke=a),n.textStrokeWidth==null&&(n.textStrokeWidth=2)):(o&&(n.textFill=e.fill||r.outsideFill||J.color.neutral00),!n.textStroke&&r.outsideStroke&&(n.textStroke=r.outsideStroke)),n.text=t.text,n.rich=t.rich,R(t.rich,function(s){L8(s,s)}),n}function L8(e,t){t&&(xe(t,"fill")&&(e.textFill=t.fill),xe(t,"stroke")&&(e.textStroke=t.fill),xe(t,"lineWidth")&&(e.textStrokeWidth=t.lineWidth),xe(t,"font")&&(e.font=t.font),xe(t,"fontStyle")&&(e.fontStyle=t.fontStyle),xe(t,"fontWeight")&&(e.fontWeight=t.fontWeight),xe(t,"fontSize")&&(e.fontSize=t.fontSize),xe(t,"fontFamily")&&(e.fontFamily=t.fontFamily),xe(t,"align")&&(e.textAlign=t.align),xe(t,"verticalAlign")&&(e.textVerticalAlign=t.verticalAlign),xe(t,"lineHeight")&&(e.textLineHeight=t.lineHeight),xe(t,"width")&&(e.textWidth=t.width),xe(t,"height")&&(e.textHeight=t.height),xe(t,"backgroundColor")&&(e.textBackgroundColor=t.backgroundColor),xe(t,"padding")&&(e.textPadding=t.padding),xe(t,"borderColor")&&(e.textBorderColor=t.borderColor),xe(t,"borderWidth")&&(e.textBorderWidth=t.borderWidth),xe(t,"borderRadius")&&(e.textBorderRadius=t.borderRadius),xe(t,"shadowColor")&&(e.textBoxShadowColor=t.shadowColor),xe(t,"shadowBlur")&&(e.textBoxShadowBlur=t.shadowBlur),xe(t,"shadowOffsetX")&&(e.textBoxShadowOffsetX=t.shadowOffsetX),xe(t,"shadowOffsetY")&&(e.textBoxShadowOffsetY=t.shadowOffsetY),xe(t,"textShadowColor")&&(e.textShadowColor=t.textShadowColor),xe(t,"textShadowBlur")&&(e.textShadowBlur=t.textShadowBlur),xe(t,"textShadowOffsetX")&&(e.textShadowOffsetX=t.textShadowOffsetX),xe(t,"textShadowOffsetY")&&(e.textShadowOffsetY=t.textShadowOffsetY))}var Une={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},I8=it(Une);da(Vo,function(e,t){return e[t]=1,e},{});Vo.join(", ");var qw=["","style","shape","extra"],uv=Je();function yR(e,t,r,n,i){var a=e+"Animation",o=Fv(e,n,i)||{},s=uv(t).userDuring;return o.duration>0&&(o.during=s?ge(f9e,{el:t,userDuring:s}):null,o.setToFinal=!0,o.scope=e),ne(o,r[a]),o}function xb(e,t,r,n){n=n||{};var i=n.dataIndex,a=n.isInit,o=n.clearStyle,s=r.isAnimationEnabled(),l=uv(e),u=t.style;l.userDuring=t.during;var c={},f={};if(d9e(e,t,f),e.type==="compound")for(var h=e.shape.paths,d=t.shape.paths,v=0;v0&&e.animateFrom(m,x)}else l9e(e,t,i||0,r,c);Zne(e,t),u?e.dirty():e.markRedraw()}function Zne(e,t){for(var r=uv(e).leaveToProps,n=0;n0&&e.animateFrom(i,a)}}function u9e(e,t){xe(t,"silent")&&(e.silent=t.silent),xe(t,"ignore")&&(e.ignore=t.ignore),e instanceof pa&&xe(t,"invisible")&&(e.invisible=t.invisible),e instanceof tt&&xe(t,"autoBatch")&&(e.autoBatch=t.autoBatch)}var po={},c9e={setTransform:function(e,t){return po.el[e]=t,this},getTransform:function(e){return po.el[e]},setShape:function(e,t){var r=po.el,n=r.shape||(r.shape={});return n[e]=t,r.dirtyShape&&r.dirtyShape(),this},getShape:function(e){var t=po.el.shape;if(t)return t[e]},setStyle:function(e,t){var r=po.el,n=r.style;return n&&(n[e]=t,r.dirtyStyle&&r.dirtyStyle()),this},getStyle:function(e){var t=po.el.style;if(t)return t[e]},setExtra:function(e,t){var r=po.el.extra||(po.el.extra={});return r[e]=t,this},getExtra:function(e){var t=po.el.extra;if(t)return t[e]}};function f9e(){var e=this,t=e.el;if(t){var r=uv(t).userDuring,n=e.userDuring;if(r!==n){e.el=e.userDuring=null;return}po.el=t,n(c9e)}}function O8(e,t,r,n){var i=r[e];if(i){var a=t[e],o;if(a){var s=r.transition,l=i.transition;if(l)if(!o&&(o=n[e]={}),Xc(l))ne(o,a);else for(var u=Pt(l),c=0;c=0){!o&&(o=n[e]={});for(var d=it(a),c=0;c=0)){var h=e.getAnimationStyleProps(),d=h?h.style:null;if(d){!a&&(a=n.style={});for(var v=it(r),u=0;u=0?t.getStore().get(B,F):void 0}var Z=t.get($.name,F),W=$&&$.ordinalMeta;return W?W.categories[Z]:Z}function A(V,F){F==null&&(F=c);var $=t.getItemVisual(F,"style"),B=$&&$.fill,Z=$&&$.opacity,W=b(F,Rl).getItemStyle();B!=null&&(W.fill=B),Z!=null&&(W.opacity=Z);var G={inheritColor:pe(B)?B:J.color.neutral99},Y=S(F,Rl),K=Mt(Y,null,G,!1,!0);K.text=Y.getShallow("show")?be(e.getFormattedLabel(F,Rl),av(t,F)):null;var ee=xw(Y,G,!1);return k(V,W),W=k8(W,K,ee),V&&I(W,V),W.legacy=!0,W}function P(V,F){F==null&&(F=c);var $=b(F,Os).getItemStyle(),B=S(F,Os),Z=Mt(B,null,null,!0,!0);Z.text=B.getShallow("show")?li(e.getFormattedLabel(F,Os),e.getFormattedLabel(F,Rl),av(t,F)):null;var W=xw(B,null,!0);return k(V,$),$=k8($,Z,W),V&&I($,V),$.legacy=!0,$}function I(V,F){for(var $ in F)xe(F,$)&&(V[$]=F[$])}function k(V,F){V&&(V.textFill&&(F.textFill=V.textFill),V.textPosition&&(F.textPosition=V.textPosition))}function E(V,F){if(F==null&&(F=c),xe(M8,V)){var $=t.getItemVisual(F,"style");return $?$[M8[V]]:null}if(xe(X7e,V))return t.getItemVisual(F,V)}function D(V){if(o.type==="cartesian2d"){var F=o.getBaseAxis();return x$e(Pe({axis:F},V))}}function N(){return r.getCurrentSeriesIndices()}function z(V){return UN(V,r)}}function T9e(e){var t={};return R(e.dimensions,function(r){var n=e.getDimensionInfo(r);if(!n.isExtraCoord){var i=n.coordDim,a=t[i]=t[i]||[];a[n.coordDimIndex]=e.getDimensionIndex(r)}}),t}function qM(e,t,r,n,i,a,o){if(!n){a.remove(t);return}var s=SR(e,t,r,n,i,a);return s&&o.setItemGraphicEl(r,s),s&&Gt(s,n.focus,n.blurScope,n.emphasisDisabled),s}function SR(e,t,r,n,i,a){var o=-1,s=t;t&&Kne(t,n,i)&&(o=We(a.childrenRef(),t),t=null);var l=!t,u=t;u?u.clearStates():(u=bR(n),s&&_9e(s,u)),n.morph===!1?u.disableMorphing=!0:u.disableMorphing&&(u.disableMorphing=!1),n.tooltipDisabled&&(u.tooltipDisabled=!0),Hi.normal.cfg=Hi.normal.conOpt=Hi.emphasis.cfg=Hi.emphasis.conOpt=Hi.blur.cfg=Hi.blur.conOpt=Hi.select.cfg=Hi.select.conOpt=null,Hi.isLegacy=!1,A9e(u,r,n,i,l,Hi),C9e(u,r,n,i,l),wR(e,u,r,n,Hi,i,l),xe(n,"info")&&(Is(u).info=n.info);for(var c=0;c=0?a.replaceAt(u,o):a.add(u),u}function Kne(e,t,r){var n=Is(e),i=t.type,a=t.shape,o=t.style;return r.isUniversalTransitionEnabled()||i!=null&&i!==n.customGraphicType||i==="path"&&I9e(a)&&Jne(a)!==n.customPathData||i==="image"&&xe(o,"image")&&o.image!==n.customImagePath}function C9e(e,t,r,n,i){var a=r.clipPath;if(a===!1)e&&e.getClipPath()&&e.removeClipPath();else if(a){var o=e.getClipPath();o&&Kne(o,a,n)&&(o=null),o||(o=bR(a),e.setClipPath(o)),wR(null,o,t,a,null,n,i)}}function A9e(e,t,r,n,i,a){if(!(e.isGroup||e.type==="compoundPath")){D8(r,null,a),D8(r,Os,a);var o=a.normal.conOpt,s=a.emphasis.conOpt,l=a.blur.conOpt,u=a.select.conOpt;if(o!=null||s!=null||u!=null||l!=null){var c=e.getTextContent();if(o===!1)c&&e.removeTextContent();else{o=a.normal.conOpt=o||{type:"text"},c?c.clearStates():(c=bR(o),e.setTextContent(c)),wR(null,c,t,o,null,n,i);for(var f=o&&o.style,h=0;h=c;d--){var v=t.childAt(d);P9e(t,v,i)}}}function P9e(e,t,r){t&&uC(t,Is(e).option,r)}function k9e(e){new Us(e.oldChildren,e.newChildren,N8,N8,e).add(j8).update(j8).remove(L9e).execute()}function N8(e,t){var r=e&&e.name;return r??y9e+t}function j8(e,t){var r=this.context,n=e!=null?r.newChildren[e]:null,i=t!=null?r.oldChildren[t]:null;SR(r.api,i,r.dataIndex,n,r.seriesModel,r.group)}function L9e(e){var t=this.context,r=t.oldChildren[e];r&&uC(r,Is(r).option,t.seriesModel)}function Jne(e){return e&&(e.pathData||e.d)}function I9e(e){return e&&(xe(e,"pathData")||xe(e,"d"))}function O9e(e){e.registerChartView(b9e),e.registerSeriesModel(q7e)}var bc=Je(),R8=Ae,KM=ge,CR=function(){function e(){this._dragging=!1,this.animationThreshold=15}return e.prototype.render=function(t,r,n,i){var a=r.get("value"),o=r.get("status");if(this._axisModel=t,this._axisPointerModel=r,this._api=n,!(!i&&this._lastValue===a&&this._lastStatus===o)){this._lastValue=a,this._lastStatus=o;var s=this._group,l=this._handle;if(!o||o==="hide"){s&&s.hide(),l&&l.hide();return}s&&s.show(),l&&l.show();var u={};this.makeElOption(u,a,t,r,n);var c=u.graphicKey;c!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=c;var f=this._moveAnimation=this.determineAnimation(t,r);if(!s)s=this._group=new Me,this.createPointerEl(s,u,t,r),this.createLabelEl(s,u,t,r),n.getZr().add(s);else{var h=Fe(B8,r,f);this.updatePointerEl(s,u,h),this.updateLabelEl(s,u,h,r)}$8(s,r,!0),this._renderHandle(a)}},e.prototype.remove=function(t){this.clear(t)},e.prototype.dispose=function(t){this.clear(t)},e.prototype.determineAnimation=function(t,r){var n=r.get("animation"),i=t.axis,a=i.type==="category",o=r.get("snap");if(!o&&!a)return!1;if(n==="auto"||n==null){var s=this.animationThreshold;if(a&&i.getBandWidth()>s)return!0;if(o){var l=Uj(t).seriesDataCount,u=i.getExtent();return Math.abs(u[0]-u[1])/l>s}return!1}return n===!0},e.prototype.makeElOption=function(t,r,n,i,a){},e.prototype.createPointerEl=function(t,r,n,i){var a=r.pointer;if(a){var o=bc(t).pointerEl=new kf[a.type](R8(r.pointer));t.add(o)}},e.prototype.createLabelEl=function(t,r,n,i){if(r.label){var a=bc(t).labelEl=new at(R8(r.label));t.add(a),z8(a,i)}},e.prototype.updatePointerEl=function(t,r,n){var i=bc(t).pointerEl;i&&r.pointer&&(i.setStyle(r.pointer.style),n(i,{shape:r.pointer.shape}))},e.prototype.updateLabelEl=function(t,r,n,i){var a=bc(t).labelEl;a&&(a.setStyle(r.label.style),n(a,{x:r.label.x,y:r.label.y}),z8(a,i))},e.prototype._renderHandle=function(t){if(!(this._dragging||!this.updateHandleTransform)){var r=this._axisPointerModel,n=this._api.getZr(),i=this._handle,a=r.getModel("handle"),o=r.get("status");if(!a.get("show")||!o||o==="hide"){i&&n.remove(i),this._handle=null;return}var s;this._handle||(s=!0,i=this._handle=Vv(a.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(u){Gs(u.event)},onmousedown:KM(this._onHandleDragMove,this,0,0),drift:KM(this._onHandleDragMove,this),ondragend:KM(this._onHandleDragEnd,this)}),n.add(i)),$8(i,r,!1),i.setStyle(a.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var l=a.get("size");ae(l)||(l=[l,l]),i.scaleX=l[0]/2,i.scaleY=l[1]/2,Yv(this,"_doDispatchAxisPointer",a.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,s)}},e.prototype._moveHandleToValue=function(t,r){B8(this._axisPointerModel,!r&&this._moveAnimation,this._handle,JM(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},e.prototype._onHandleDragMove=function(t,r){var n=this._handle;if(n){this._dragging=!0;var i=this.updateHandleTransform(JM(n),[t,r],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(JM(i)),bc(n).lastProp=null,this._doDispatchAxisPointer()}},e.prototype._doDispatchAxisPointer=function(){var t=this._handle;if(t){var r=this._payloadInfo,n=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:r.cursorPoint[0],y:r.cursorPoint[1],tooltipOption:r.tooltipOption,axesInfo:[{axisDim:n.axis.dim,axisIndex:n.componentIndex}]})}},e.prototype._onHandleDragEnd=function(){this._dragging=!1;var t=this._handle;if(t){var r=this._axisPointerModel.get("value");this._moveHandleToValue(r),this._api.dispatchAction({type:"hideTip"})}},e.prototype.clear=function(t){this._lastValue=null,this._lastStatus=null;var r=t.getZr(),n=this._group,i=this._handle;r&&n&&(this._lastGraphicKey=null,n&&r.remove(n),i&&r.remove(i),this._group=null,this._handle=null,this._payloadInfo=null),Ay(this,"_doDispatchAxisPointer")},e.prototype.doClear=function(){},e.prototype.buildLabel=function(t,r,n){return n=n||0,{x:t[n],y:t[1-n],width:r[n],height:r[1-n]}},e}();function B8(e,t,r,n){Qne(bc(r).lastProp,n)||(bc(r).lastProp=n,t?lt(r,n,e):(r.stopAnimation(),r.attr(n)))}function Qne(e,t){if(ke(e)&&ke(t)){var r=!0;return R(t,function(n,i){r=r&&Qne(e[i],n)}),!!r}else return e===t}function z8(e,t){e[t.get(["label","show"])?"show":"hide"]()}function JM(e){return{x:e.x||0,y:e.y||0,rotation:e.rotation||0}}function $8(e,t,r){var n=t.get("z"),i=t.get("zlevel");e&&e.traverse(function(a){a.type!=="group"&&(n!=null&&(a.z=n),i!=null&&(a.zlevel=i),a.silent=r)})}function AR(e){var t=e.get("type"),r=e.getModel(t+"Style"),n;return t==="line"?(n=r.getLineStyle(),n.fill=null):t==="shadow"&&(n=r.getAreaStyle(),n.stroke=null),n}function eie(e,t,r,n,i){var a=r.get("value"),o=tie(a,t.axis,t.ecModel,r.get("seriesDataIndices"),{precision:r.get(["label","precision"]),formatter:r.get(["label","formatter"])}),s=r.getModel("label"),l=Hv(s.get("padding")||0),u=s.getFont(),c=ET(o,u),f=i.position,h=c.width+l[1]+l[3],d=c.height+l[0]+l[2],v=i.align;v==="right"&&(f[0]-=h),v==="center"&&(f[0]-=h/2);var g=i.verticalAlign;g==="bottom"&&(f[1]-=d),g==="middle"&&(f[1]-=d/2),E9e(f,h,d,n);var m=s.get("backgroundColor");(!m||m==="auto")&&(m=t.get(["axisLine","lineStyle","color"])),e.label={x:f[0],y:f[1],style:Mt(s,{text:o,font:u,fill:s.getTextColor(),padding:l,backgroundColor:m}),z2:10}}function E9e(e,t,r,n){var i=n.getWidth(),a=n.getHeight();e[0]=Math.min(e[0]+t,i)-t,e[1]=Math.min(e[1]+r,a)-r,e[0]=Math.max(e[0],0),e[1]=Math.max(e[1],0)}function tie(e,t,r,n,i){e=t.scale.parse(e);var a=t.scale.getLabel({value:e},{precision:i.precision}),o=i.formatter;if(o){var s={value:Ew(t,{value:e}),axisDimension:t.dim,axisIndex:t.index,seriesData:[]};R(n,function(l){var u=r.getSeriesByIndex(l.seriesIndex),c=l.dataIndexInside,f=u&&u.getDataParams(c);f&&s.seriesData.push(f)}),pe(o)?a=o.replace("{value}",a):Ce(o)&&(a=o(s))}return a}function MR(e,t,r){var n=Wr();return el(n,n,r.rotation),qa(n,n,r.position),Ha([e.dataToCoord(t),(r.labelOffset||0)+(r.labelDirection||1)*(r.labelMargin||0)],n)}function rie(e,t,r,n,i,a){var o=Wn.innerTextLayout(r.rotation,0,r.labelDirection);r.labelMargin=i.get(["label","margin"]),eie(t,n,i,a,{position:MR(n.axis,e,r),align:o.textAlign,verticalAlign:o.textVerticalAlign})}function PR(e,t,r){return r=r||0,{x1:e[r],y1:e[1-r],x2:t[r],y2:t[1-r]}}function nie(e,t,r){return r=r||0,{x:e[r],y:e[1-r],width:t[r],height:t[1-r]}}function F8(e,t,r,n,i,a){return{cx:e,cy:t,r0:r,r:n,startAngle:i,endAngle:a,clockwise:!0}}var D9e=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.makeElOption=function(r,n,i,a,o){var s=i.axis,l=s.grid,u=a.get("type"),c=V8(l,s).getOtherAxis(s).getGlobalExtent(),f=s.toGlobalCoord(s.dataToCoord(n,!0));if(u&&u!=="none"){var h=AR(a),d=N9e[u](s,f,c);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=Gw(l.getRect(),i);rie(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=Gw(n.axis.grid.getRect(),n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=MR(n.axis,r,a);return{x:o[0],y:o[1],rotation:a.rotation+(a.labelDirection<0?Math.PI:0)}},t.prototype.updateHandleTransform=function(r,n,i,a){var o=i.axis,s=o.grid,l=o.getGlobalExtent(!0),u=V8(s,o).getOtherAxis(o).getGlobalExtent(),c=o.dim==="x"?0:1,f=[r.x,r.y];f[c]+=n[c],f[c]=Math.min(l[1],f[c]),f[c]=Math.max(l[0],f[c]);var h=(u[1]+u[0])/2,d=[h,h];d[c]=f[c];var v=[{verticalAlign:"middle"},{align:"center"}];return{x:f[0],y:f[1],rotation:r.rotation,cursorPoint:d,tooltipOption:v[c]}},t}(CR);function V8(e,t){var r={};return r[t.dim+"AxisIndex"]=t.index,e.getCartesian(r)}var N9e={line:function(e,t,r){var n=PR([t,r[0]],[t,r[1]],G8(e));return{type:"Line",subPixelOptimize:!0,shape:n}},shadow:function(e,t,r){var n=Math.max(1,e.getBandWidth()),i=r[1]-r[0];return{type:"Rect",shape:nie([t-n/2,r[0]],[n,i],G8(e))}}};function G8(e){return e.dim==="x"?0:1}var j9e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="axisPointer",t.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,triggerEmphasis:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:J.color.border,width:1,type:"dashed"},shadowStyle:{color:J.color.shadowTint},label:{show:!0,formatter:null,precision:"auto",margin:3,color:J.color.neutral00,padding:[5,7,5,7],backgroundColor:J.color.accent60,borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:J.color.accent40,throttle:40}},t}(Ke),Ss=Je(),R9e=R;function iie(e,t,r){if(!nt.node){var n=t.getZr();Ss(n).records||(Ss(n).records={}),B9e(n,t);var i=Ss(n).records[e]||(Ss(n).records[e]={});i.handler=r}}function B9e(e,t){if(Ss(e).initialized)return;Ss(e).initialized=!0,r("click",Fe(W8,"click")),r("mousemove",Fe(W8,"mousemove")),r("globalout",$9e);function r(n,i){e.on(n,function(a){var o=F9e(t);R9e(Ss(e).records,function(s){s&&i(s,a,o.dispatchAction)}),z9e(o.pendings,t)})}}function z9e(e,t){var r=e.showTip.length,n=e.hideTip.length,i;r?i=e.showTip[r-1]:n&&(i=e.hideTip[n-1]),i&&(i.dispatchAction=null,t.dispatchAction(i))}function $9e(e,t,r){e.handler("leave",null,r)}function W8(e,t,r,n){t.handler(e,r,n)}function F9e(e){var t={showTip:[],hideTip:[]},r=function(n){var i=t[n.type];i?i.push(n):(n.dispatchAction=r,e.dispatchAction(n))};return{dispatchAction:r,pendings:t}}function RO(e,t){if(!nt.node){var r=t.getZr(),n=(Ss(r).records||{})[e];n&&(Ss(r).records[e]=null)}}var V9e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=n.getComponent("tooltip"),o=r.get("triggerOn")||a&&a.get("triggerOn")||"mousemove|click";iie("axisPointer",i,function(s,l,u){o!=="none"&&(s==="leave"||o.indexOf(s)>=0)&&u({type:"updateAxisPointer",currTrigger:s,x:l&&l.offsetX,y:l&&l.offsetY})})},t.prototype.remove=function(r,n){RO("axisPointer",n)},t.prototype.dispose=function(r,n){RO("axisPointer",n)},t.type="axisPointer",t}(kt);function aie(e,t){var r=[],n=e.seriesIndex,i;if(n==null||!(i=t.getSeriesByIndex(n)))return{point:[]};var a=i.getData(),o=uf(a,e);if(o==null||o<0||ae(o))return{point:[]};var s=a.getItemGraphicEl(o),l=i.coordinateSystem;if(i.getTooltipPosition)r=i.getTooltipPosition(o)||[];else if(l&&l.dataToPoint)if(e.isStacked){var u=l.getBaseAxis(),c=l.getOtherAxis(u),f=c.dim,h=u.dim,d=f==="x"||f==="radius"?1:0,v=a.mapDimension(h),g=[];g[d]=a.get(v,o),g[1-d]=a.get(a.getCalculationInfo("stackResultDimension"),o),r=l.dataToPoint(g)||[]}else r=l.dataToPoint(a.getValues(se(l.dimensions,function(x){return a.mapDimension(x)}),o))||[];else if(s){var m=s.getBoundingRect().clone();m.applyTransform(s.transform),r=[m.x+m.width/2,m.y+m.height/2]}return{point:r,el:s}}var H8=Je();function G9e(e,t,r){var n=e.currTrigger,i=[e.x,e.y],a=e,o=e.dispatchAction||ge(r.dispatchAction,r),s=t.getComponent("axisPointer").coordSysAxesInfo;if(s){_b(i)&&(i=aie({seriesIndex:a.seriesIndex,dataIndex:a.dataIndex},t).point);var l=_b(i),u=a.axesInfo,c=s.axesInfo,f=n==="leave"||_b(i),h={},d={},v={list:[],map:{}},g={showPointer:Fe(H9e,d),showTooltip:Fe(U9e,v)};R(s.coordSysMap,function(x,_){var b=l||x.containPoint(i);R(s.coordSysAxesInfo[_],function(S,T){var C=S.axis,A=q9e(u,S);if(!f&&b&&(!u||A)){var P=A&&A.value;P==null&&!l&&(P=C.pointToData(i)),P!=null&&U8(S,P,g,!1,h)}})});var m={};return R(c,function(x,_){var b=x.linkGroup;b&&!d[_]&&R(b.axesInfo,function(S,T){var C=d[T];if(S!==x&&C){var A=C.value;b.mapper&&(A=x.axis.scale.parse(b.mapper(A,Z8(S),Z8(x)))),m[x.key]=A}})}),R(m,function(x,_){U8(c[_],x,g,!0,h)}),Z9e(d,c,h),Y9e(v,i,e,o),X9e(c,o,r),h}}function U8(e,t,r,n,i){var a=e.axis;if(!(a.scale.isBlank()||!a.containData(t))){if(!e.involveSeries){r.showPointer(e,t);return}var o=W9e(t,e),s=o.payloadBatch,l=o.snapToValue;s[0]&&i.seriesIndex==null&&ne(i,s[0]),!n&&e.snap&&a.containData(l)&&l!=null&&(t=l),r.showPointer(e,t,s),r.showTooltip(e,o,l)}}function W9e(e,t){var r=t.axis,n=r.dim,i=e,a=[],o=Number.MAX_VALUE,s=-1;return R(t.seriesModels,function(l,u){var c=l.getData().mapDimensionsAll(n),f,h;if(l.getAxisTooltipData){var d=l.getAxisTooltipData(c,e,r);h=d.dataIndices,f=d.nestestValue}else{if(h=l.indicesOfNearest(n,c[0],e,r.type==="category"?.5:null),!h.length)return;f=l.getData().get(c[0],h[0])}if(!(f==null||!isFinite(f))){var v=e-f,g=Math.abs(v);g<=o&&((g=0&&s<0)&&(o=g,s=v,i=f,a.length=0),R(h,function(m){a.push({seriesIndex:l.seriesIndex,dataIndexInside:m,dataIndex:l.getData().getRawIndex(m)})}))}}),{payloadBatch:a,snapToValue:i}}function H9e(e,t,r,n){e[t.key]={value:r,payloadBatch:n}}function U9e(e,t,r,n){var i=r.payloadBatch,a=t.axis,o=a.model,s=t.axisPointerModel;if(!(!t.triggerTooltip||!i.length)){var l=t.coordSys.model,u=Ny(l),c=e.map[u];c||(c=e.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},e.list.push(c)),c.dataByAxis.push({axisDim:a.dim,axisIndex:o.componentIndex,axisType:o.type,axisId:o.id,value:n,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:i.slice()})}}function Z9e(e,t,r){var n=r.axesInfo=[];R(t,function(i,a){var o=i.axisPointerModel.option,s=e[a];s?(!i.useHandle&&(o.status="show"),o.value=s.value,o.seriesDataIndices=(s.payloadBatch||[]).slice()):!i.useHandle&&(o.status="hide"),o.status==="show"&&n.push({axisDim:i.axis.dim,axisIndex:i.axis.model.componentIndex,value:o.value})})}function Y9e(e,t,r,n){if(_b(t)||!e.list.length){n({type:"hideTip"});return}var i=((e.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};n({type:"showTip",escapeConnect:!0,x:t[0],y:t[1],tooltipOption:r.tooltipOption,position:r.position,dataIndexInside:i.dataIndexInside,dataIndex:i.dataIndex,seriesIndex:i.seriesIndex,dataByCoordSys:e.list})}function X9e(e,t,r){var n=r.getZr(),i="axisPointerLastHighlights",a=H8(n)[i]||{},o=H8(n)[i]={};R(e,function(u,c){var f=u.axisPointerModel.option;f.status==="show"&&u.triggerEmphasis&&R(f.seriesDataIndices,function(h){var d=h.seriesIndex+" | "+h.dataIndex;o[d]=h})});var s=[],l=[];R(a,function(u,c){!o[c]&&l.push(u)}),R(o,function(u,c){!a[c]&&s.push(u)}),l.length&&r.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&r.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}function q9e(e,t){for(var r=0;r<(e||[]).length;r++){var n=e[r];if(t.axis.dim===n.axisDim&&t.axis.model.componentIndex===n.axisIndex)return n}}function Z8(e){var t=e.axis.model,r={},n=r.axisDim=e.axis.dim;return r.axisIndex=r[n+"AxisIndex"]=t.componentIndex,r.axisName=r[n+"AxisName"]=t.name,r.axisId=r[n+"AxisId"]=t.id,r}function _b(e){return!e||e[0]==null||isNaN(e[0])||e[1]==null||isNaN(e[1])}function M0(e){Ef.registerAxisPointerClass("CartesianAxisPointer",D9e),e.registerComponentModel(j9e),e.registerComponentView(V9e),e.registerPreprocessor(function(t){if(t){(!t.axisPointer||t.axisPointer.length===0)&&(t.axisPointer={});var r=t.axisPointer.link;r&&!ae(r)&&(t.axisPointer.link=[r])}}),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,function(t,r){t.getComponent("axisPointer").coordSysAxesInfo=K6e(t,r)}),e.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},G9e)}function K9e(e){Ze(kre),Ze(M0)}var J9e=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.makeElOption=function(r,n,i,a,o){var s=i.axis;s.dim==="angle"&&(this.animationThreshold=Math.PI/18);var l=s.polar,u=l.getOtherAxis(s),c=u.getExtent(),f=s.dataToCoord(n),h=a.get("type");if(h&&h!=="none"){var d=AR(a),v=eZe[h](s,l,f,c);v.style=d,r.graphicKey=v.type,r.pointer=v}var g=a.get(["label","margin"]),m=Q9e(n,i,a,l,g);eie(r,i,a,o,m)},t}(CR);function Q9e(e,t,r,n,i){var a=t.axis,o=a.dataToCoord(e),s=n.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l=n.getRadiusAxis().getExtent(),u,c,f;if(a.dim==="radius"){var h=Wr();el(h,h,s),qa(h,h,[n.cx,n.cy]),u=Ha([o,-i],h);var d=t.getModel("axisLabel").get("rotate")||0,v=Wn.innerTextLayout(s,d*Math.PI/180,-1);c=v.textAlign,f=v.textVerticalAlign}else{var g=l[1];u=n.coordToPoint([g+i,o]);var m=n.cx,x=n.cy;c=Math.abs(u[0]-m)/g<.3?"center":u[0]>m?"left":"right",f=Math.abs(u[1]-x)/g<.3?"middle":u[1]>x?"top":"bottom"}return{position:u,align:c,verticalAlign:f}}var eZe={line:function(e,t,r,n){return e.dim==="angle"?{type:"Line",shape:PR(t.coordToPoint([n[0],r]),t.coordToPoint([n[1],r]))}:{type:"Circle",shape:{cx:t.cx,cy:t.cy,r}}},shadow:function(e,t,r,n){var i=Math.max(1,e.getBandWidth()),a=Math.PI/180;return e.dim==="angle"?{type:"Sector",shape:F8(t.cx,t.cy,n[0],n[1],(-r-i/2)*a,(-r+i/2)*a)}:{type:"Sector",shape:F8(t.cx,t.cy,r-i/2,r+i/2,0,Math.PI*2)}}},tZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.findAxisModel=function(r){var n,i=this.ecModel;return i.eachComponent(r,function(a){a.getCoordSysModel()===this&&(n=a)},this),n},t.type="polar",t.dependencies=["radiusAxis","angleAxis"],t.defaultOption={z:0,center:["50%","50%"],radius:"80%"},t}(Ke),kR=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",er).models[0]},t.type="polarAxis",t}(Ke);cr(kR,Jv);var rZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="angleAxis",t}(kR),nZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="radiusAxis",t}(kR),LR=function(e){q(t,e);function t(r,n){return e.call(this,"radius",r,n)||this}return t.prototype.pointToData=function(r,n){return this.polar.pointToData(r,n)[this.dim==="radius"?0:1]},t}(ba);LR.prototype.dataToRadius=ba.prototype.dataToCoord;LR.prototype.radiusToData=ba.prototype.coordToData;var iZe=Je(),IR=function(e){q(t,e);function t(r,n){return e.call(this,"angle",r,n||[0,360])||this}return t.prototype.pointToData=function(r,n){return this.polar.pointToData(r,n)[this.dim==="radius"?0:1]},t.prototype.calculateCategoryInterval=function(){var r=this,n=r.getLabelModel(),i=r.scale,a=i.getExtent(),o=i.count();if(a[1]-a[0]<1)return 0;var s=a[0],l=r.dataToCoord(s+1)-r.dataToCoord(s),u=Math.abs(l),c=ET(s==null?"":s+"",n.getFont(),"center","top"),f=Math.max(c.height,7),h=f/u;isNaN(h)&&(h=1/0);var d=Math.max(0,Math.floor(h)),v=iZe(r.model),g=v.lastAutoInterval,m=v.lastTickCount;return g!=null&&m!=null&&Math.abs(g-d)<=1&&Math.abs(m-o)<=1&&g>d?d=g:(v.lastTickCount=o,v.lastAutoInterval=d),d},t}(ba);IR.prototype.dataToAngle=ba.prototype.dataToCoord;IR.prototype.angleToData=ba.prototype.coordToData;var oie=["radius","angle"],aZe=function(){function e(t){this.dimensions=oie,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new LR,this._angleAxis=new IR,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return e.prototype.containPoint=function(t){var r=this.pointToCoord(t);return this._radiusAxis.contain(r[0])&&this._angleAxis.contain(r[1])},e.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},e.prototype.getAxis=function(t){var r="_"+t+"Axis";return this[r]},e.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},e.prototype.getAxesByScale=function(t){var r=[],n=this._angleAxis,i=this._radiusAxis;return n.scale.type===t&&r.push(n),i.scale.type===t&&r.push(i),r},e.prototype.getAngleAxis=function(){return this._angleAxis},e.prototype.getRadiusAxis=function(){return this._radiusAxis},e.prototype.getOtherAxis=function(t){var r=this._angleAxis;return t===r?this._radiusAxis:r},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},e.prototype.getTooltipAxes=function(t){var r=t!=null&&t!=="auto"?this.getAxis(t):this.getBaseAxis();return{baseAxes:[r],otherAxes:[this.getOtherAxis(r)]}},e.prototype.dataToPoint=function(t,r,n){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],r),this._angleAxis.dataToAngle(t[1],r)],n)},e.prototype.pointToData=function(t,r,n){n=n||[];var i=this.pointToCoord(t);return n[0]=this._radiusAxis.radiusToData(i[0],r),n[1]=this._angleAxis.angleToData(i[1],r),n},e.prototype.pointToCoord=function(t){var r=t[0]-this.cx,n=t[1]-this.cy,i=this.getAngleAxis(),a=i.getExtent(),o=Math.min(a[0],a[1]),s=Math.max(a[0],a[1]);i.inverse?o=s-360:s=o+360;var l=Math.sqrt(r*r+n*n);r/=l,n/=l;for(var u=Math.atan2(-n,r)/Math.PI*180,c=us;)u+=c*360;return[l,u]},e.prototype.coordToPoint=function(t,r){r=r||[];var n=t[0],i=t[1]/180*Math.PI;return r[0]=Math.cos(i)*n+this.cx,r[1]=-Math.sin(i)*n+this.cy,r},e.prototype.getArea=function(){var t=this.getAngleAxis(),r=this.getRadiusAxis(),n=r.getExtent().slice();n[0]>n[1]&&n.reverse();var i=t.getExtent(),a=Math.PI/180,o=1e-4;return{cx:this.cx,cy:this.cy,r0:n[0],r:n[1],startAngle:-i[0]*a,endAngle:-i[1]*a,clockwise:t.inverse,contain:function(s,l){var u=s-this.cx,c=l-this.cy,f=u*u+c*c,h=this.r,d=this.r0;return h!==d&&f-o<=h*h&&f+o>=d*d},x:this.cx-n[1],y:this.cy-n[1],width:n[1]*2,height:n[1]*2}},e.prototype.convertToPixel=function(t,r,n){var i=Y8(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=Y8(r);return i===this?this.pointToData(n):null},e}();function Y8(e){var t=e.seriesModel,r=e.polarModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function oZe(e,t,r){var n=t.get("center"),i=jr(t,r).refContainer;e.cx=ve(n[0],i.width)+i.x,e.cy=ve(n[1],i.height)+i.y;var a=e.getRadiusAxis(),o=Math.min(i.width,i.height)/2,s=t.get("radius");s==null?s=[0,"100%"]:ae(s)||(s=[0,s]);var l=[ve(s[0],o),ve(s[1],o)];a.inverse?a.setExtent(l[1],l[0]):a.setExtent(l[0],l[1])}function sZe(e,t){var r=this,n=r.getAngleAxis(),i=r.getRadiusAxis();if(n.scale.setExtent(1/0,-1/0),i.scale.setExtent(1/0,-1/0),e.eachSeries(function(s){if(s.coordinateSystem===r){var l=s.getData();R(Dw(l,"radius"),function(u){i.scale.unionExtentFromData(l,u)}),R(Dw(l,"angle"),function(u){n.scale.unionExtentFromData(l,u)})}}),pf(n.scale,n.model),pf(i.scale,i.model),n.type==="category"&&!n.onBand){var a=n.getExtent(),o=360/n.scale.count();n.inverse?a[1]+=o:a[1]-=o,n.setExtent(a[0],a[1])}}function lZe(e){return e.mainType==="angleAxis"}function X8(e,t){var r;if(e.type=t.get("type"),e.scale=b0(t),e.onBand=t.get("boundaryGap")&&e.type==="category",e.inverse=t.get("inverse"),lZe(t)){e.inverse=e.inverse!==t.get("clockwise");var n=t.get("startAngle"),i=(r=t.get("endAngle"))!==null&&r!==void 0?r:n+(e.inverse?-360:360);e.setExtent(n,i)}t.axis=e,e.model=t}var uZe={dimensions:oie,create:function(e,t){var r=[];return e.eachComponent("polar",function(n,i){var a=new aZe(i+"");a.update=sZe;var o=a.getRadiusAxis(),s=a.getAngleAxis(),l=n.findAxisModel("radiusAxis"),u=n.findAxisModel("angleAxis");X8(o,l),X8(s,u),oZe(a,n,t),r.push(a),n.coordinateSystem=a,a.model=n}),e.eachSeries(function(n){if(n.get("coordinateSystem")==="polar"){var i=n.getReferringComponents("polar",er).models[0];n.coordinateSystem=i.coordinateSystem}}),r}},cZe=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function P_(e,t,r){t[1]>t[0]&&(t=t.slice().reverse());var n=e.coordToPoint([t[0],r]),i=e.coordToPoint([t[1],r]);return{x1:n[0],y1:n[1],x2:i[0],y2:i[1]}}function k_(e){var t=e.getRadiusAxis();return t.inverse?0:1}function q8(e){var t=e[0],r=e[e.length-1];t&&r&&Math.abs(Math.abs(t.coord-r.coord)-360)<1e-4&&e.pop()}var fZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.axisPointerClass="PolarAxisPointer",r}return t.prototype.render=function(r,n){if(this.group.removeAll(),!!r.get("show")){var i=r.axis,a=i.polar,o=a.getRadiusAxis().getExtent(),s=i.getTicksCoords({breakTicks:"none"}),l=i.getMinorTicksCoords(),u=se(i.getViewLabels(),function(c){c=Ae(c);var f=i.scale,h=f.type==="ordinal"?f.getRawOrdinalNumber(c.tickValue):c.tickValue;return c.coord=i.dataToCoord(h),c});q8(u),q8(s),R(cZe,function(c){r.get([c,"show"])&&(!i.scale.isBlank()||c==="axisLine")&&hZe[c](this.group,r,a,s,l,o,u)},this)}},t.type="angleAxis",t}(Ef),hZe={axisLine:function(e,t,r,n,i,a){var o=t.getModel(["axisLine","lineStyle"]),s=r.getAngleAxis(),l=Math.PI/180,u=s.getExtent(),c=k_(r),f=c?0:1,h,d=Math.abs(u[1]-u[0])===360?"Circle":"Arc";a[f]===0?h=new kf[d]({shape:{cx:r.cx,cy:r.cy,r:a[c],startAngle:-u[0]*l,endAngle:-u[1]*l,clockwise:s.inverse},style:o.getLineStyle(),z2:1,silent:!0}):h=new zv({shape:{cx:r.cx,cy:r.cy,r:a[c],r0:a[f]},style:o.getLineStyle(),z2:1,silent:!0}),h.style.fill=null,e.add(h)},axisTick:function(e,t,r,n,i,a){var o=t.getModel("axisTick"),s=(o.get("inside")?-1:1)*o.get("length"),l=a[k_(r)],u=se(n,function(c){return new mr({shape:P_(r,[l,l+s],c.coord)})});e.add(Si(u,{style:Pe(o.getModel("lineStyle").getLineStyle(),{stroke:t.get(["axisLine","lineStyle","color"])})}))},minorTick:function(e,t,r,n,i,a){if(i.length){for(var o=t.getModel("axisTick"),s=t.getModel("minorTick"),l=(o.get("inside")?-1:1)*s.get("length"),u=a[k_(r)],c=[],f=0;fx?"left":"right",S=Math.abs(m[1]-_)/g<.3?"middle":m[1]>_?"top":"bottom";if(s&&s[v]){var T=s[v];ke(T)&&T.textStyle&&(d=new et(T.textStyle,l,l.ecModel))}var C=new at({silent:Wn.isLabelSilent(t),style:Mt(d,{x:m[0],y:m[1],fill:d.getTextColor()||t.get(["axisLine","lineStyle","color"]),text:f.formattedLabel,align:b,verticalAlign:S})});if(e.add(C),rl({el:C,componentModel:t,itemName:f.formattedLabel,formatterParamsExtra:{isTruncated:function(){return C.isTruncated},value:f.rawLabel,tickIndex:h}}),c){var A=Wn.makeAxisEventDataBase(t);A.targetType="axisLabel",A.value=f.rawLabel,Ne(C).eventData=A}},this)},splitLine:function(e,t,r,n,i,a){var o=t.getModel("splitLine"),s=o.getModel("lineStyle"),l=s.get("color"),u=0;l=l instanceof Array?l:[l];for(var c=[],f=0;f=0?"p":"n",V=I;T&&(n[c][N]||(n[c][N]={p:I,n:I}),V=n[c][N][z]);var F=void 0,$=void 0,B=void 0,Z=void 0;if(v.dim==="radius"){var W=v.dataToCoord(D)-I,G=l.dataToCoord(N);Math.abs(W)=Z})}}})}function yZe(e){var t={};R(e,function(n,i){var a=n.getData(),o=n.coordinateSystem,s=o.getBaseAxis(),l=lie(o,s),u=s.getExtent(),c=s.type==="category"?s.getBandWidth():Math.abs(u[1]-u[0])/a.count(),f=t[l]||{bandWidth:c,remainedWidth:c,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},h=f.stacks;t[l]=f;var d=sie(n);h[d]||f.autoWidthCount++,h[d]=h[d]||{width:0,maxWidth:0};var v=ve(n.get("barWidth"),c),g=ve(n.get("barMaxWidth"),c),m=n.get("barGap"),x=n.get("barCategoryGap");v&&!h[d].width&&(v=Math.min(f.remainedWidth,v),h[d].width=v,f.remainedWidth-=v),g&&(h[d].maxWidth=g),m!=null&&(f.gap=m),x!=null&&(f.categoryGap=x)});var r={};return R(t,function(n,i){r[i]={};var a=n.stacks,o=n.bandWidth,s=ve(n.categoryGap,o),l=ve(n.gap,1),u=n.remainedWidth,c=n.autoWidthCount,f=(u-s)/(c+(c-1)*l);f=Math.max(f,0),R(a,function(g,m){var x=g.maxWidth;x&&x=r.y&&t[1]<=r.y+r.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=r.y&&t[0]<=r.y+r.height},e.prototype.pointToData=function(t,r,n){n=n||[];var i=this.getAxis();return n[0]=i.coordToData(i.toLocalCoord(t[i.orient==="horizontal"?0:1])),n},e.prototype.dataToPoint=function(t,r,n){var i=this.getAxis(),a=this.getRect();n=n||[];var o=i.orient==="horizontal"?0:1;return t instanceof Array&&(t=t[0]),n[o]=i.toGlobalCoord(i.dataToCoord(+t)),n[1-o]=o===0?a.y+a.height/2:a.x+a.width/2,n},e.prototype.convertToPixel=function(t,r,n){var i=K8(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=K8(r);return i===this?this.pointToData(n):null},e}();function K8(e){var t=e.seriesModel,r=e.singleAxisModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function PZe(e,t){var r=[];return e.eachComponent("singleAxis",function(n,i){var a=new MZe(n,e,t);a.name="single_"+i,a.resize(n,t),n.coordinateSystem=a,r.push(a)}),e.eachSeries(function(n){if(n.get("coordinateSystem")==="singleAxis"){var i=n.getReferringComponents("singleAxis",er).models[0];n.coordinateSystem=i&&i.coordinateSystem}}),r}var kZe={create:PZe,dimensions:uie},J8=["x","y"],LZe=["width","height"],IZe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.makeElOption=function(r,n,i,a,o){var s=i.axis,l=s.coordinateSystem,u=QM(l,1-Qw(s)),c=l.dataToPoint(n)[0],f=a.get("type");if(f&&f!=="none"){var h=AR(a),d=OZe[f](s,c,u);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=BO(i);rie(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=BO(n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=MR(n.axis,r,a);return{x:o[0],y:o[1],rotation:a.rotation+(a.labelDirection<0?Math.PI:0)}},t.prototype.updateHandleTransform=function(r,n,i,a){var o=i.axis,s=o.coordinateSystem,l=Qw(o),u=QM(s,l),c=[r.x,r.y];c[l]+=n[l],c[l]=Math.min(u[1],c[l]),c[l]=Math.max(u[0],c[l]);var f=QM(s,1-l),h=(f[1]+f[0])/2,d=[h,h];return d[l]=c[l],{x:c[0],y:c[1],rotation:r.rotation,cursorPoint:d,tooltipOption:{verticalAlign:"middle"}}},t}(CR),OZe={line:function(e,t,r){var n=PR([t,r[0]],[t,r[1]],Qw(e));return{type:"Line",subPixelOptimize:!0,shape:n}},shadow:function(e,t,r){var n=e.getBandWidth(),i=r[1]-r[0];return{type:"Rect",shape:nie([t-n/2,r[0]],[n,i],Qw(e))}}};function Qw(e){return e.isHorizontal()?0:1}function QM(e,t){var r=e.getRect();return[r[J8[t]],r[J8[t]]+r[LZe[t]]]}var EZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="single",t}(kt);function DZe(e){Ze(M0),Ef.registerAxisPointerClass("SingleAxisPointer",IZe),e.registerComponentView(EZe),e.registerComponentView(TZe),e.registerComponentModel(bb),ov(e,"single",bb,bb.defaultOption),e.registerCoordinateSystem("single",kZe)}var NZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n,i){var a=Lf(r);e.prototype.init.apply(this,arguments),Q8(r,a)},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),Q8(this.option,r)},t.prototype.getCellSize=function(){return this.option.cellSize},t.type="calendar",t.layoutMode="box",t.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:J.color.axisLine,width:1,type:"solid"}},itemStyle:{color:J.color.neutral00,borderWidth:1,borderColor:J.color.neutral10},dayLabel:{show:!0,firstDay:0,position:"start",margin:J.size.s,color:J.color.secondary},monthLabel:{show:!0,position:"start",margin:J.size.s,align:"center",formatter:null,color:J.color.secondary},yearLabel:{show:!0,position:null,margin:J.size.xl,formatter:null,color:J.color.quaternary,fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},t}(Ke);function Q8(e,t){var r=e.cellSize,n;ae(r)?n=r:n=e.cellSize=[r,r],n.length===1&&(n[1]=n[0]);var i=se([0,1],function(a){return nBe(t,a)&&(n[a]="auto"),n[a]!=null&&n[a]!=="auto"});Ho(e,t,{type:"box",ignoreSize:i})}var jZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=this.group;a.removeAll();var o=r.coordinateSystem,s=o.getRangeInfo(),l=o.getOrient(),u=n.getLocaleModel();this._renderDayRect(r,s,a),this._renderLines(r,s,l,a),this._renderYearText(r,s,l,a),this._renderMonthText(r,u,l,a),this._renderWeekText(r,u,s,l,a)},t.prototype._renderDayRect=function(r,n,i){for(var a=r.coordinateSystem,o=r.getModel("itemStyle").getItemStyle(),s=a.getCellWidth(),l=a.getCellHeight(),u=n.start.time;u<=n.end.time;u=a.getNextNDay(u,1).time){var c=a.dataToCalendarLayout([u],!1).tl,f=new Xe({shape:{x:c[0],y:c[1],width:s,height:l},cursor:"default",style:o});i.add(f)}},t.prototype._renderLines=function(r,n,i,a){var o=this,s=r.coordinateSystem,l=r.getModel(["splitLine","lineStyle"]).getLineStyle(),u=r.get(["splitLine","show"]),c=l.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var f=n.start,h=0;f.time<=n.end.time;h++){v(f.formatedDate),h===0&&(f=s.getDateInfo(n.start.y+"-"+n.start.m));var d=f.date;d.setMonth(d.getMonth()+1),f=s.getDateInfo(d)}v(s.getNextNDay(n.end.time,1).formatedDate);function v(g){o._firstDayOfMonth.push(s.getDateInfo(g)),o._firstDayPoints.push(s.dataToCalendarLayout([g],!1).tl);var m=o._getLinePointsOfOneWeek(r,g,i);o._tlpoints.push(m[0]),o._blpoints.push(m[m.length-1]),u&&o._drawSplitline(m,l,a)}u&&this._drawSplitline(o._getEdgesPoints(o._tlpoints,c,i),l,a),u&&this._drawSplitline(o._getEdgesPoints(o._blpoints,c,i),l,a)},t.prototype._getEdgesPoints=function(r,n,i){var a=[r[0].slice(),r[r.length-1].slice()],o=i==="horizontal"?0:1;return a[0][o]=a[0][o]-n/2,a[1][o]=a[1][o]+n/2,a},t.prototype._drawSplitline=function(r,n,i){var a=new an({z2:20,shape:{points:r},style:n});i.add(a)},t.prototype._getLinePointsOfOneWeek=function(r,n,i){for(var a=r.coordinateSystem,o=a.getDateInfo(n),s=[],l=0;l<7;l++){var u=a.getNextNDay(o.time,l),c=a.dataToCalendarLayout([u.time],!1);s[2*u.day]=c.tl,s[2*u.day+1]=c[i==="horizontal"?"bl":"tr"]}return s},t.prototype._formatterLabel=function(r,n){return pe(r)&&r?q3e(r,n):Ce(r)?r(n):n.nameMap},t.prototype._yearTextPositionControl=function(r,n,i,a,o){var s=n[0],l=n[1],u=["center","bottom"];a==="bottom"?(l+=o,u=["center","top"]):a==="left"?s-=o:a==="right"?(s+=o,u=["center","top"]):l-=o;var c=0;return(a==="left"||a==="right")&&(c=Math.PI/2),{rotation:c,x:s,y:l,style:{align:u[0],verticalAlign:u[1]}}},t.prototype._renderYearText=function(r,n,i,a){var o=r.getModel("yearLabel");if(o.get("show")){var s=o.get("margin"),l=o.get("position");l||(l=i!=="horizontal"?"top":"left");var u=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],c=(u[0][0]+u[1][0])/2,f=(u[0][1]+u[1][1])/2,h=i==="horizontal"?0:1,d={top:[c,u[h][1]],bottom:[c,u[1-h][1]],left:[u[1-h][0],f],right:[u[h][0],f]},v=n.start.y;+n.end.y>+n.start.y&&(v=v+"-"+n.end.y);var g=o.get("formatter"),m={start:n.start.y,end:n.end.y,nameMap:v},x=this._formatterLabel(g,m),_=new at({z2:30,style:Mt(o,{text:x}),silent:o.get("silent")});_.attr(this._yearTextPositionControl(_,d[l],i,l,s)),a.add(_)}},t.prototype._monthTextPositionControl=function(r,n,i,a,o){var s="left",l="top",u=r[0],c=r[1];return i==="horizontal"?(c=c+o,n&&(s="center"),a==="start"&&(l="bottom")):(u=u+o,n&&(l="middle"),a==="start"&&(s="right")),{x:u,y:c,align:s,verticalAlign:l}},t.prototype._renderMonthText=function(r,n,i,a){var o=r.getModel("monthLabel");if(o.get("show")){var s=o.get("nameMap"),l=o.get("margin"),u=o.get("position"),c=o.get("align"),f=[this._tlpoints,this._blpoints];(!s||pe(s))&&(s&&(n=EI(s)||n),s=n.get(["time","monthAbbr"])||[]);var h=u==="start"?0:1,d=i==="horizontal"?0:1;l=u==="start"?-l:l;for(var v=c==="center",g=o.get("silent"),m=0;m=a.start.time&&i.times.end.time&&r.reverse(),r},e.prototype._getRangeInfo=function(t){var r=[this.getDateInfo(t[0]),this.getDateInfo(t[1])],n;r[0].time>r[1].time&&(n=!0,r.reverse());var i=Math.floor(r[1].time/eP)-Math.floor(r[0].time/eP)+1,a=new Date(r[0].time),o=a.getDate(),s=r[1].date.getDate();a.setDate(o+i-1);var l=a.getDate();if(l!==s)for(var u=a.getTime()-r[1].time>0?1:-1;(l=a.getDate())!==s&&(a.getTime()-r[1].time)*u>0;)i-=u,a.setDate(l-u);var c=Math.floor((i+r[0].day+6)/7),f=n?-c+1:c-1;return n&&r.reverse(),{range:[r[0].formatedDate,r[1].formatedDate],start:r[0],end:r[1],allDay:i,weeks:c,nthWeek:f,fweek:r[0].day,lweek:r[1].day}},e.prototype._getDateByWeeksAndDay=function(t,r,n){var i=this._getRangeInfo(n);if(t>i.weeks||t===0&&ri.lweek)return null;var a=(t-1)*7-i.fweek+r,o=new Date(i.start.time);return o.setDate(+i.start.d+a),this.getDateInfo(o)},e.create=function(t,r){var n=[];return t.eachComponent("calendar",function(i){var a=new e(i,t,r);n.push(a),i.coordinateSystem=a}),t.eachComponent(function(i,a){x0({targetModel:a,coordSysType:"calendar",coordSysProvider:PQ})}),n},e.dimensions=["time","value"],e}();function tP(e){var t=e.calendarModel,r=e.seriesModel,n=t?t.coordinateSystem:r?r.coordinateSystem:null;return n}function BZe(e){e.registerComponentModel(NZe),e.registerComponentView(jZe),e.registerCoordinateSystem("calendar",RZe)}var vs={level:1,leaf:2,nonLeaf:3},Es={none:0,all:1,body:2,corner:3};function zO(e,t,r){var n=t[Be[r]].getCell(e);return!n&&ot(e)&&e<0&&(n=t[Be[1-r]].getUnitLayoutInfo(r,Math.round(e))),n}function cie(e){var t=e||[];return t[0]=t[0]||[],t[1]=t[1]||[],t[0][0]=t[0][1]=t[1][0]=t[1][1]=NaN,t}function fie(e,t,r,n,i){eH(e[0],t,i,r,n,0),eH(e[1],t,i,r,n,1)}function eH(e,t,r,n,i,a){e[0]=1/0,e[1]=-1/0;var o=n[a],s=ae(o)?o:[o],l=s.length,u=!!r;if(l>=1?(tH(e,t,s,u,i,a,0),l>1&&tH(e,t,s,u,i,a,l-1)):e[0]=e[1]=NaN,u){var c=-i[Be[1-a]].getLocatorCount(a),f=i[Be[a]].getLocatorCount(a)-1;r===Es.body?c=pr(0,c):r===Es.corner&&(f=Li(-1,f)),f=t[0]&&e[0]<=t[1]}function iH(e,t){e.id.set(t[0][0],t[1][0]),e.span.set(t[0][1]-e.id.x+1,t[1][1]-e.id.y+1)}function FZe(e,t){e[0][0]=t[0][0],e[0][1]=t[0][1],e[1][0]=t[1][0],e[1][1]=t[1][1]}function aH(e,t,r,n){var i=zO(t[n][0],r,n),a=zO(t[n][1],r,n);e[Be[n]]=e[Tr[n]]=NaN,i&&a&&(e[Be[n]]=i.xy,e[Tr[n]]=a.xy+a.wh-i.xy)}function ig(e,t,r,n){return e[Be[t]]=r,e[Be[1-t]]=n,e}function VZe(e){return e&&(e.type===vs.leaf||e.type===vs.nonLeaf)?e:null}function eS(){return{x:NaN,y:NaN,width:NaN,height:NaN}}var oH=function(){function e(t,r){this._cells=[],this._levels=[],this.dim=t,this.dimIdx=t==="x"?0:1,this._model=r,this._uniqueValueGen=GZe(t);var n=r.get("data",!0);n!=null&&!ae(n)&&(n=[]),n?this._initByDimModelData(n):this._initBySeriesData()}return e.prototype._initByDimModelData=function(t){var r=this,n=r._cells,i=r._levels,a=[],o=0;r._leavesCount=s(t,0,0),l();return;function s(u,c,f){var h=0;return u&&R(u,function(d,v){var g;pe(d)?g={value:d}:ke(d)?(g=d,d.value!=null&&!pe(d.value)&&(g={value:null})):g={value:null};var m={type:vs.nonLeaf,ordinal:NaN,level:f,firstLeafLocator:c,id:new Ie,span:ig(new Ie,r.dimIdx,1,1),option:g,xy:NaN,wh:NaN,dim:r,rect:eS()};o++,(a[c]||(a[c]=[])).push(m),i[f]||(i[f]={type:vs.level,xy:NaN,wh:NaN,option:null,id:new Ie,dim:r});var x=s(g.children,c,f+1),_=Math.max(1,x);m.span[Be[r.dimIdx]]=_,h+=_,c+=_}),h}function l(){for(var u=[];n.length=1,b=r[Be[n]],S=a.getLocatorCount(n)-1,T=new Kl;for(o.resetLayoutIterator(T,n);T.next();)C(T.item);for(a.resetLayoutIterator(T,n);T.next();)C(T.item);function C(A){gn(A.wh)&&(A.wh=x),A.xy=b,A.id[Be[n]]===S&&!_&&(A.wh=r[Be[n]]+r[Tr[n]]-A.xy),b+=A.wh}}function dH(e,t){for(var r=t[Be[e]].resetCellIterator();r.next();){var n=r.item;tS(n.rect,e,n.id,n.span,t),tS(n.rect,1-e,n.id,n.span,t),n.type===vs.nonLeaf&&(n.xy=n.rect[Be[e]],n.wh=n.rect[Tr[e]])}}function vH(e,t){e.travelExistingCells(function(r){var n=r.span;if(n){var i=r.spanRect,a=r.id;tS(i,0,a,n,t),tS(i,1,a,n,t)}})}function tS(e,t,r,n,i){e[Tr[t]]=0;var a=r[Be[t]],o=a<0?i[Be[1-t]]:i[Be[t]],s=o.getUnitLayoutInfo(t,r[Be[t]]);if(e[Be[t]]=s.xy,e[Tr[t]]=s.wh,n[Be[t]]>1){var l=o.getUnitLayoutInfo(t,r[Be[t]]+n[Be[t]]-1);e[Tr[t]]=l.xy+l.wh-s.xy}}function rYe(e,t,r){var n=vw(e,r[Tr[t]]);return FO(n,r[Tr[t]])}function FO(e,t){return Math.max(Math.min(e,be(t,1/0)),0)}function iP(e){var t=e.matrixModel,r=e.seriesModel,n=t?t.coordinateSystem:r?r.coordinateSystem:null;return n}var hn={inBody:1,inCorner:2,outside:3},ho={x:null,y:null,point:[]};function pH(e,t,r,n,i){var a=r[Be[t]],o=r[Be[1-t]],s=a.getUnitLayoutInfo(t,a.getLocatorCount(t)-1),l=a.getUnitLayoutInfo(t,0),u=o.getUnitLayoutInfo(t,-o.getLocatorCount(t)),c=o.shouldShow()?o.getUnitLayoutInfo(t,-1):null,f=e.point[t]=n[t];if(!l&&!c){e[Be[t]]=hn.outside;return}if(i===Es.body){l?(e[Be[t]]=hn.inBody,f=Li(s.xy+s.wh,pr(l.xy,f)),e.point[t]=f):e[Be[t]]=hn.outside;return}else if(i===Es.corner){c?(e[Be[t]]=hn.inCorner,f=Li(c.xy+c.wh,pr(u.xy,f)),e.point[t]=f):e[Be[t]]=hn.outside;return}var h=l?l.xy:c?c.xy+c.wh:NaN,d=u?u.xy:h,v=s?s.xy+s.wh:h;if(fv){if(!i){e[Be[t]]=hn.outside;return}f=v}e.point[t]=f,e[Be[t]]=h<=f&&f<=v?hn.inBody:d<=f&&f<=h?hn.inCorner:hn.outside}function gH(e,t,r,n){var i=1-r;if(e[Be[r]]!==hn.outside)for(n[Be[r]].resetCellIterator(nP);nP.next();){var a=nP.item;if(yH(e.point[r],a.rect,r)&&yH(e.point[i],a.rect,i)){t[r]=a.ordinal,t[i]=a.id[Be[i]];return}}}function mH(e,t,r,n){if(e[Be[r]]!==hn.outside){var i=e[Be[r]]===hn.inCorner?n[Be[1-r]]:n[Be[r]];for(i.resetLayoutIterator(D_,r);D_.next();)if(nYe(e.point[r],D_.item)){t[r]=D_.item.id[Be[r]];return}}}function nYe(e,t){return t.xy<=e&&e<=t.xy+t.wh}function yH(e,t,r){return t[Be[r]]<=e&&e<=t[Be[r]]+t[Tr[r]]}function iYe(e){e.registerComponentModel(ZZe),e.registerComponentView(JZe),e.registerCoordinateSystem("matrix",tYe)}function aYe(e,t){var r=e.existing;if(t.id=e.keyInfo.id,!t.type&&r&&(t.type=r.type),t.parentId==null){var n=t.parentOption;n?t.parentId=n.id:r&&(t.parentId=r.parentId)}t.parentOption=null}function xH(e,t){var r;return R(t,function(n){e[n]!=null&&e[n]!=="auto"&&(r=!0)}),r}function oYe(e,t,r){var n=ne({},r),i=e[t],a=r.$action||"merge";a==="merge"?i?(He(i,n,!0),Ho(i,n,{ignoreSize:!0}),EQ(r,i),N_(r,i),N_(r,i,"shape"),N_(r,i,"style"),N_(r,i,"extra"),r.clipPath=i.clipPath):e[t]=n:a==="replace"?e[t]=n:a==="remove"&&i&&(e[t]=null)}var die=["transition","enterFrom","leaveTo"],sYe=die.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function N_(e,t,r){if(r&&(!e[r]&&t[r]&&(e[r]={}),e=e[r],t=t[r]),!(!e||!t))for(var n=r?die:sYe,i=0;i=0;c--){var f=i[c],h=Ir(f.id,null),d=h!=null?o.get(h):null;if(d){var v=d.parent,x=qi(v),_=v===a?{width:s,height:l}:{width:x.width,height:x.height},b={},S=ZT(d,f,_,null,{hv:f.hv,boundingMode:f.bounding},b);if(!qi(d).isNew&&S){for(var T=f.transition,C={},A=0;A=0)?C[P]=I:d[P]=I}lt(d,C,r,0)}else d.attr(b)}}},t.prototype._clear=function(){var r=this,n=this._elMap;n.each(function(i){wb(i,qi(i).option,n,r._lastGraphicModel)}),this._elMap=_e()},t.prototype.dispose=function(){this._clear()},t.type="graphic",t}(kt);function VO(e){var t=xe(_H,e)?_H[e]:wy(e),r=new t({});return qi(r).type=e,r}function bH(e,t,r,n){var i=VO(r);return t.add(i),n.set(e,i),qi(i).id=e,qi(i).isNew=!0,i}function wb(e,t,r,n){var i=e&&e.parent;i&&(e.type==="group"&&e.traverse(function(a){wb(a,t,r,n)}),uC(e,t,n),r.removeKey(qi(e).id))}function wH(e,t,r,n){e.isGroup||R([["cursor",pa.prototype.cursor],["zlevel",n||0],["z",r||0],["z2",0]],function(i){var a=i[0];xe(t,a)?e[a]=be(t[a],i[1]):e[a]==null&&(e[a]=i[1])}),R(it(t),function(i){if(i.indexOf("on")===0){var a=t[i];e[i]=Ce(a)?a:null}}),xe(t,"draggable")&&(e.draggable=t.draggable),t.name!=null&&(e.name=t.name),t.id!=null&&(e.id=t.id)}function fYe(e){return e=ne({},e),R(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(kQ),function(t){delete e[t]}),e}function hYe(e,t,r){var n=Ne(e).eventData;!e.silent&&!e.ignore&&!n&&(n=Ne(e).eventData={componentType:"graphic",componentIndex:t.componentIndex,name:e.name}),n&&(n.info=r.info)}function dYe(e){e.registerComponentModel(uYe),e.registerComponentView(cYe),e.registerPreprocessor(function(t){var r=t.graphic;ae(r)?!r[0]||!r[0].elements?t.graphic=[{elements:r}]:t.graphic=[t.graphic[0]]:r&&!r.elements&&(t.graphic=[{elements:[r]}])})}var SH=["x","y","radius","angle","single"],vYe=["cartesian2d","polar","singleAxis"];function pYe(e){var t=e.get("coordinateSystem");return We(vYe,t)>=0}function Bl(e){return e+"Axis"}function gYe(e,t){var r=_e(),n=[],i=_e();e.eachComponent({mainType:"dataZoom",query:t},function(c){i.get(c.uid)||s(c)});var a;do a=!1,e.eachComponent("dataZoom",o);while(a);function o(c){!i.get(c.uid)&&l(c)&&(s(c),a=!0)}function s(c){i.set(c.uid,!0),n.push(c),u(c)}function l(c){var f=!1;return c.eachTargetAxis(function(h,d){var v=r.get(h);v&&v[d]&&(f=!0)}),f}function u(c){c.eachTargetAxis(function(f,h){(r.get(f)||r.set(f,[]))[h]=!0})}return n}function vie(e){var t=e.ecModel,r={infoList:[],infoMap:_e()};return e.eachTargetAxis(function(n,i){var a=t.getComponent(Bl(n),i);if(a){var o=a.getCoordSysModel();if(o){var s=o.uid,l=r.infoMap.get(s);l||(l={model:o,axisModels:[]},r.infoList.push(l),r.infoMap.set(s,l)),l.axisModels.push(a)}}}),r}var aP=function(){function e(){this.indexList=[],this.indexMap=[]}return e.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},e}(),Fy=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._autoThrottle=!0,r._noTarget=!0,r._rangePropMode=["percent","percent"],r}return t.prototype.init=function(r,n,i){var a=TH(r);this.settledOption=a,this.mergeDefaultAndTheme(r,i),this._doInit(a)},t.prototype.mergeOption=function(r){var n=TH(r);He(this.option,r,!0),He(this.settledOption,n,!0),this._doInit(n)},t.prototype._doInit=function(r){var n=this.option;this._setDefaultThrottle(r),this._updateRangeUse(r);var i=this.settledOption;R([["start","startValue"],["end","endValue"]],function(a,o){this._rangePropMode[o]==="value"&&(n[a[0]]=i[a[0]]=null)},this),this._resetTarget()},t.prototype._resetTarget=function(){var r=this.get("orient",!0),n=this._targetAxisInfoMap=_e(),i=this._fillSpecifiedTargetAxis(n);i?this._orient=r||this._makeAutoOrientByTargetAxis():(this._orient=r||"horizontal",this._fillAutoTargetAxisByOrient(n,this._orient)),this._noTarget=!0,n.each(function(a){a.indexList.length&&(this._noTarget=!1)},this)},t.prototype._fillSpecifiedTargetAxis=function(r){var n=!1;return R(SH,function(i){var a=this.getReferringComponents(Bl(i),DRe);if(a.specified){n=!0;var o=new aP;R(a.models,function(s){o.add(s.componentIndex)}),r.set(i,o)}},this),n},t.prototype._fillAutoTargetAxisByOrient=function(r,n){var i=this.ecModel,a=!0;if(a){var o=n==="vertical"?"y":"x",s=i.findComponents({mainType:o+"Axis"});l(s,o)}if(a){var s=i.findComponents({mainType:"singleAxis",filter:function(c){return c.get("orient",!0)===n}});l(s,"single")}function l(u,c){var f=u[0];if(f){var h=new aP;if(h.add(f.componentIndex),r.set(c,h),a=!1,c==="x"||c==="y"){var d=f.getReferringComponents("grid",er).models[0];d&&R(u,function(v){f.componentIndex!==v.componentIndex&&d===v.getReferringComponents("grid",er).models[0]&&h.add(v.componentIndex)})}}}a&&R(SH,function(u){if(a){var c=i.findComponents({mainType:Bl(u),filter:function(h){return h.get("type",!0)==="category"}});if(c[0]){var f=new aP;f.add(c[0].componentIndex),r.set(u,f),a=!1}}},this)},t.prototype._makeAutoOrientByTargetAxis=function(){var r;return this.eachTargetAxis(function(n){!r&&(r=n)},this),r==="y"?"vertical":"horizontal"},t.prototype._setDefaultThrottle=function(r){if(r.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var n=this.ecModel.option;this.option.throttle=n.animation&&n.animationDurationUpdate>0?100:20}},t.prototype._updateRangeUse=function(r){var n=this._rangePropMode,i=this.get("rangeMode");R([["start","startValue"],["end","endValue"]],function(a,o){var s=r[a[0]]!=null,l=r[a[1]]!=null;s&&!l?n[o]="percent":!s&&l?n[o]="value":i?n[o]=i[o]:s&&(n[o]="percent")})},t.prototype.noTarget=function(){return this._noTarget},t.prototype.getFirstTargetAxisModel=function(){var r;return this.eachTargetAxis(function(n,i){r==null&&(r=this.ecModel.getComponent(Bl(n),i))},this),r},t.prototype.eachTargetAxis=function(r,n){this._targetAxisInfoMap.each(function(i,a){R(i.indexList,function(o){r.call(n,a,o)})})},t.prototype.getAxisProxy=function(r,n){var i=this.getAxisModel(r,n);if(i)return i.__dzAxisProxy},t.prototype.getAxisModel=function(r,n){var i=this._targetAxisInfoMap.get(r);if(i&&i.indexMap[n])return this.ecModel.getComponent(Bl(r),n)},t.prototype.setRawRange=function(r){var n=this.option,i=this.settledOption;R([["start","startValue"],["end","endValue"]],function(a){(r[a[0]]!=null||r[a[1]]!=null)&&(n[a[0]]=i[a[0]]=r[a[0]],n[a[1]]=i[a[1]]=r[a[1]])},this),this._updateRangeUse(r)},t.prototype.setCalculatedRange=function(r){var n=this.option;R(["start","startValue","end","endValue"],function(i){n[i]=r[i]})},t.prototype.getPercentRange=function(){var r=this.findRepresentativeAxisProxy();if(r)return r.getDataPercentWindow()},t.prototype.getValueRange=function(r,n){if(r==null&&n==null){var i=this.findRepresentativeAxisProxy();if(i)return i.getDataValueWindow()}else return this.getAxisProxy(r,n).getDataValueWindow()},t.prototype.findRepresentativeAxisProxy=function(r){if(r)return r.__dzAxisProxy;for(var n,i=this._targetAxisInfoMap.keys(),a=0;ao[1];if(b&&!S&&!T)return!0;b&&(m=!0),S&&(v=!0),T&&(g=!0)}return m&&v&&g})}else Mh(c,function(d){if(a==="empty")l.setData(u=u.map(d,function(g){return s(g)?g:NaN}));else{var v={};v[d]=o,u.selectRange(v)}});Mh(c,function(d){u.setApproximateExtent(o,d)})}});function s(l){return l>=o[0]&&l<=o[1]}},e.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},r=this._dataZoomModel,n=this._dataExtent;Mh(["min","max"],function(i){var a=r.get(i+"Span"),o=r.get(i+"ValueSpan");o!=null&&(o=this.getAxisModel().axis.scale.parse(o)),o!=null?a=gt(n[0]+o,n,[0,100],!0):a!=null&&(o=gt(a,[0,100],n,!0)-n[0]),t[i+"Span"]=a,t[i+"ValueSpan"]=o},this)},e.prototype._setAxisModel=function(){var t=this.getAxisModel(),r=this._percentWindow,n=this._valueWindow;if(r){var i=SN(n,[0,500]);i=Math.min(i,20);var a=t.axis.scale.rawExtentInfo;r[0]!==0&&a.setDeterminedMinMax("min",+n[0].toFixed(i)),r[1]!==100&&a.setDeterminedMinMax("max",+n[1].toFixed(i)),a.freeze()}},e}();function _Ye(e,t,r){var n=[1/0,-1/0];Mh(r,function(o){B$e(n,o.getData(),t)});var i=e.getAxisModel(),a=dte(i.axis.scale,i,n).calculate();return[a.min,a.max]}var bYe={getTargetSeries:function(e){function t(i){e.eachComponent("dataZoom",function(a){a.eachTargetAxis(function(o,s){var l=e.getComponent(Bl(o),s);i(o,s,l,a)})})}t(function(i,a,o,s){o.__dzAxisProxy=null});var r=[];t(function(i,a,o,s){o.__dzAxisProxy||(o.__dzAxisProxy=new xYe(i,a,s,e),r.push(o.__dzAxisProxy))});var n=_e();return R(r,function(i){R(i.getTargetSeriesModels(),function(a){n.set(a.uid,a)})}),n},overallReset:function(e,t){e.eachComponent("dataZoom",function(r){r.eachTargetAxis(function(n,i){r.getAxisProxy(n,i).reset(r)}),r.eachTargetAxis(function(n,i){r.getAxisProxy(n,i).filterData(r,t)})}),e.eachComponent("dataZoom",function(r){var n=r.findRepresentativeAxisProxy();if(n){var i=n.getDataPercentWindow(),a=n.getDataValueWindow();r.setCalculatedRange({start:i[0],end:i[1],startValue:a[0],endValue:a[1]})}})}};function wYe(e){e.registerAction("dataZoom",function(t,r){var n=gYe(r,t);R(n,function(i){i.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})})})}var AH=!1;function NR(e){AH||(AH=!0,e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,bYe),wYe(e),e.registerSubTypeDefaulter("dataZoom",function(){return"slider"}))}function SYe(e){e.registerComponentModel(mYe),e.registerComponentView(yYe),NR(e)}var ea=function(){function e(){}return e}(),pie={};function Ph(e,t){pie[e]=t}function gie(e){return pie[e]}var TYe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.optionUpdated=function(){e.prototype.optionUpdated.apply(this,arguments);var r=this.ecModel;R(this.option.feature,function(n,i){var a=gie(i);a&&(a.getDefaultOption&&(a.defaultOption=a.getDefaultOption(r)),He(n,a.defaultOption))})},t.type="toolbox",t.layoutMode={type:"box",ignoreSize:!0},t.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:J.color.border,borderRadius:0,borderWidth:0,padding:J.size.m,itemSize:15,itemGap:J.size.s,showTitle:!0,iconStyle:{borderColor:J.color.accent50,color:"none"},emphasis:{iconStyle:{borderColor:J.color.accent50}},tooltip:{show:!1,position:"bottom"}},t}(Ke);function mie(e,t){var r=Hv(t.get("padding")),n=t.getItemStyle(["color","opacity"]);n.fill=t.get("backgroundColor");var i=new Xe({shape:{x:e.x-r[3],y:e.y-r[0],width:e.width+r[1]+r[3],height:e.height+r[0]+r[2],r:t.get("borderRadius")},style:n,silent:!0,z2:-1});return i}var CYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(r,n,i,a){var o=this.group;if(o.removeAll(),!r.get("show"))return;var s=+r.get("itemSize"),l=r.get("orient")==="vertical",u=r.get("feature")||{},c=this._features||(this._features={}),f=[];R(u,function(_,b){f.push(b)}),new Us(this._featureNames||[],f).add(h).update(h).remove(Fe(h,null)).execute(),this._featureNames=f;function h(_,b){var S=f[_],T=f[b],C=u[S],A=new et(C,r,r.ecModel),P;if(a&&a.newTitle!=null&&a.featureName===S&&(C.title=a.newTitle),S&&!T){if(AYe(S))P={onclick:A.option.onclick,featureName:S};else{var I=gie(S);if(!I)return;P=new I}c[S]=P}else if(P=c[T],!P)return;P.uid=Wv("toolbox-feature"),P.model=A,P.ecModel=n,P.api=i;var k=P instanceof ea;if(!S&&T){k&&P.dispose&&P.dispose(n,i);return}if(!A.get("show")||k&&P.unusable){k&&P.remove&&P.remove(n,i);return}d(A,P,S),A.setIconStatus=function(E,D){var N=this.option,z=this.iconPaths;N.iconStatus=N.iconStatus||{},N.iconStatus[E]=D,z[E]&&(D==="emphasis"?Ws:Hs)(z[E])},P instanceof ea&&P.render&&P.render(A,n,i,a)}function d(_,b,S){var T=_.getModel("iconStyle"),C=_.getModel(["emphasis","iconStyle"]),A=b instanceof ea&&b.getIcons?b.getIcons():_.get("icon"),P=_.get("title")||{},I,k;pe(A)?(I={},I[S]=A):I=A,pe(P)?(k={},k[S]=P):k=P;var E=_.iconPaths={};R(I,function(D,N){var z=Vv(D,{},{x:-s/2,y:-s/2,width:s,height:s});z.setStyle(T.getItemStyle());var V=z.ensureState("emphasis");V.style=C.getItemStyle();var F=new at({style:{text:k[N],align:C.get("textAlign"),borderRadius:C.get("textBorderRadius"),padding:C.get("textPadding"),fill:null,font:UN({fontStyle:C.get("textFontStyle"),fontFamily:C.get("textFontFamily"),fontSize:C.get("textFontSize"),fontWeight:C.get("textFontWeight")},n)},ignore:!0});z.setTextContent(F),rl({el:z,componentModel:r,itemName:N,formatterParamsExtra:{title:k[N]}}),z.__title=k[N],z.on("mouseover",function(){var $=C.getItemStyle(),B=l?r.get("right")==null&&r.get("left")!=="right"?"right":"left":r.get("bottom")==null&&r.get("top")!=="bottom"?"bottom":"top";F.setStyle({fill:C.get("textFill")||$.fill||$.stroke||J.color.neutral99,backgroundColor:C.get("textBackgroundColor")}),z.setTextConfig({position:C.get("textPosition")||B}),F.ignore=!r.get("showTitle"),i.enterEmphasis(this)}).on("mouseout",function(){_.get(["iconStatus",N])!=="emphasis"&&i.leaveEmphasis(this),F.hide()}),(_.get(["iconStatus",N])==="emphasis"?Ws:Hs)(z),o.add(z),z.on("click",ge(b.onclick,b,n,i,N)),E[N]=z})}var v=jr(r,i).refContainer,g=r.getBoxLayoutParams(),m=r.get("padding"),x=zt(g,v,m);Uc(r.get("orient"),o,r.get("itemGap"),x.width,x.height),ZT(o,g,v,m),o.add(mie(o.getBoundingRect(),r)),l||o.eachChild(function(_){var b=_.__title,S=_.ensureState("emphasis"),T=S.textConfig||(S.textConfig={}),C=_.getTextContent(),A=C&&C.ensureState("emphasis");if(A&&!Ce(A)&&b){var P=A.style||(A.style={}),I=ET(b,at.makeFont(P)),k=_.x+o.x,E=_.y+o.y+s,D=!1;E+I.height>i.getHeight()&&(T.position="top",D=!0);var N=D?-5-I.height:s+10;k+I.width/2>i.getWidth()?(T.position=["100%",N],P.align="right"):k-I.width/2<0&&(T.position=[0,N],P.align="left")}})},t.prototype.updateView=function(r,n,i,a){R(this._features,function(o){o instanceof ea&&o.updateView&&o.updateView(o.model,n,i,a)})},t.prototype.remove=function(r,n){R(this._features,function(i){i instanceof ea&&i.remove&&i.remove(r,n)}),this.group.removeAll()},t.prototype.dispose=function(r,n){R(this._features,function(i){i instanceof ea&&i.dispose&&i.dispose(r,n)})},t.type="toolbox",t}(kt);function AYe(e){return e.indexOf("my")===0}var MYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){var i=this.model,a=i.get("name")||r.get("title.0.text")||"echarts",o=n.getZr().painter.getType()==="svg",s=o?"svg":i.get("type",!0)||"png",l=n.getConnectedDataURL({type:s,backgroundColor:i.get("backgroundColor",!0)||r.get("backgroundColor")||J.color.neutral00,connectedBackgroundColor:i.get("connectedBackgroundColor"),excludeComponents:i.get("excludeComponents"),pixelRatio:i.get("pixelRatio")}),u=nt.browser;if(typeof MouseEvent=="function"&&(u.newEdge||!u.ie&&!u.edge)){var c=document.createElement("a");c.download=a+"."+s,c.target="_blank",c.href=l;var f=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});c.dispatchEvent(f)}else if(window.navigator.msSaveOrOpenBlob||o){var h=l.split(","),d=h[0].indexOf("base64")>-1,v=o?decodeURIComponent(h[1]):h[1];d&&(v=window.atob(v));var g=a+"."+s;if(window.navigator.msSaveOrOpenBlob){for(var m=v.length,x=new Uint8Array(m);m--;)x[m]=v.charCodeAt(m);var _=new Blob([x]);window.navigator.msSaveOrOpenBlob(_,g)}else{var b=document.createElement("iframe");document.body.appendChild(b);var S=b.contentWindow,T=S.document;T.open("image/svg+xml","replace"),T.write(v),T.close(),S.focus(),T.execCommand("SaveAs",!0,g),document.body.removeChild(b)}}else{var C=i.get("lang"),A='',P=window.open();P.document.write(A),P.document.title=a}},t.getDefaultOption=function(r){var n={show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:r.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:J.color.neutral00,name:"",excludeComponents:["toolbox"],lang:r.getLocaleModel().get(["toolbox","saveAsImage","lang"])};return n},t}(ea),MH="__ec_magicType_stack__",PYe=[["line","bar"],["stack"]],kYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getIcons=function(){var r=this.model,n=r.get("icon"),i={};return R(r.get("type"),function(a){n[a]&&(i[a]=n[a])}),i},t.getDefaultOption=function(r){var n={show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:r.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}};return n},t.prototype.onclick=function(r,n,i){var a=this.model,o=a.get(["seriesIndex",i]);if(PH[i]){var s={series:[]},l=function(f){var h=f.subType,d=f.id,v=PH[i](h,d,f,a);v&&(Pe(v,f.option),s.series.push(v));var g=f.coordinateSystem;if(g&&g.type==="cartesian2d"&&(i==="line"||i==="bar")){var m=g.getAxesByScale("ordinal")[0];if(m){var x=m.dim,_=x+"Axis",b=f.getReferringComponents(_,er).models[0],S=b.componentIndex;s[_]=s[_]||[];for(var T=0;T<=S;T++)s[_][S]=s[_][S]||{};s[_][S].boundaryGap=i==="bar"}}};R(PYe,function(f){We(f,i)>=0&&R(f,function(h){a.setIconStatus(h,"normal")})}),a.setIconStatus(i,"emphasis"),r.eachComponent({mainType:"series",query:o==null?null:{seriesIndex:o}},l);var u,c=i;i==="stack"&&(u=He({stack:a.option.title.tiled,tiled:a.option.title.stack},a.option.title),a.get(["iconStatus",i])!=="emphasis"&&(c="tiled")),n.dispatchAction({type:"changeMagicType",currentType:c,newOption:s,newTitle:u,featureName:"magicType"})}},t}(ea),PH={line:function(e,t,r,n){if(e==="bar")return He({id:t,type:"line",data:r.get("data"),stack:r.get("stack"),markPoint:r.get("markPoint"),markLine:r.get("markLine")},n.get(["option","line"])||{},!0)},bar:function(e,t,r,n){if(e==="line")return He({id:t,type:"bar",data:r.get("data"),stack:r.get("stack"),markPoint:r.get("markPoint"),markLine:r.get("markLine")},n.get(["option","bar"])||{},!0)},stack:function(e,t,r,n){var i=r.get("stack")===MH;if(e==="line"||e==="bar")return n.setIconStatus("stack",i?"normal":"emphasis"),He({id:t,stack:i?"":MH},n.get(["option","stack"])||{},!0)}};to({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(e,t){t.mergeOption(e.newOption)});var cC=new Array(60).join("-"),cv=" ";function LYe(e){var t={},r=[],n=[];return e.eachRawSeries(function(i){var a=i.coordinateSystem;if(a&&(a.type==="cartesian2d"||a.type==="polar")){var o=a.getBaseAxis();if(o.type==="category"){var s=o.dim+"_"+o.index;t[s]||(t[s]={categoryAxis:o,valueAxis:a.getOtherAxis(o),series:[]},n.push({axisDim:o.dim,axisIndex:o.index})),t[s].series.push(i)}else r.push(i)}else r.push(i)}),{seriesGroupByCategoryAxis:t,other:r,meta:n}}function IYe(e){var t=[];return R(e,function(r,n){var i=r.categoryAxis,a=r.valueAxis,o=a.dim,s=[" "].concat(se(r.series,function(d){return d.name})),l=[i.model.getCategories()];R(r.series,function(d){var v=d.getRawData();l.push(d.getRawData().mapArray(v.mapDimension(o),function(g){return g}))});for(var u=[s.join(cv)],c=0;c1||r>0&&!e.noHeader;return R(e.blocks,function(i){var a=cee(i);a>=t&&(t=a+ +(n&&(!a||VI(i)&&!i.noHeader)))}),t}return 0}function uze(e,t,r,n){var i=t.noHeader,a=fze(cee(t)),o=[],s=t.blocks||[];_n(!s||ae(s)),s=s||[];var l=e.orderMode;if(t.sortBlocks&&l){s=s.slice();var u={valueAsc:"asc",valueDesc:"desc"};if(be(u,l)){var c=new ree(u[l],null);s.sort(function(m,y){return c.evaluate(m.sortParam,y.sortParam)})}else l==="seriesDesc"&&s.reverse()}R(s,function(m,y){var x=t.valueFormatter,_=uee(m)(x?ne(ne({},e),{valueFormatter:x}):e,m,y>0?a.html:0,n);_!=null&&o.push(_)});var f=e.renderMode==="richText"?o.join(a.richText):GI(n,o.join(""),i?r:a.html);if(i)return f;var h=jI(t.header,"ordinal",e.useUTC),d=lee(n,e.renderMode).nameStyle,v=see(n);return e.renderMode==="richText"?fee(e,h,d)+a.richText+f:GI(n,'
'+En(h)+"
"+f,r)}function cze(e,t,r,n){var i=e.renderMode,a=t.noName,o=t.noValue,s=!t.markerType,l=t.name,u=e.useUTC,c=t.valueFormatter||e.valueFormatter||function(S){return S=ae(S)?S:[S],se(S,function(T,C){return jI(T,ae(d)?d[C]:d,u)})};if(!(a&&o)){var f=s?"":e.markupStyleCreator.makeTooltipMarker(t.markerType,t.markerColor||J.color.secondary,i),h=a?"":jI(l,"ordinal",u),d=t.valueType,v=o?[]:c(t.value,t.dataIndex),m=!s||!a,y=!s&&a,x=lee(n,i),_=x.nameStyle,b=x.valueStyle;return i==="richText"?(s?"":f)+(a?"":fee(e,h,_))+(o?"":vze(e,v,m,y,b)):GI(n,(s?"":f)+(a?"":hze(h,!s,_))+(o?"":dze(v,m,y,b)),r)}}function cG(e,t,r,n,i,a){if(e){var o=uee(e),s={useUTC:i,renderMode:r,orderMode:n,markupStyleCreator:t,valueFormatter:e.valueFormatter};return o(s,e,0,a)}}function fze(e){return{html:sze[e],richText:lze[e]}}function GI(e,t,r){var n='
',i="margin: "+r+"px 0 0",a=see(e);return'
'+t+n+"
"}function hze(e,t,r){var n=t?"margin-left:2px":"";return''+En(e)+""}function dze(e,t,r,n){var i=r?"10px":"20px",a=t?"float:right;margin-left:"+i:"";return e=ae(e)?e:[e],''+se(e,function(o){return En(o)}).join("  ")+""}function fee(e,t,r){return e.markupStyleCreator.wrapRichTextStyle(t,r)}function vze(e,t,r,n,i){var a=[i],o=n?10:20;return r&&a.push({padding:[0,0,0,o],align:"right"}),e.markupStyleCreator.wrapRichTextStyle(ae(t)?t.join(" "):t,a)}function hee(e,t){var r=e.getData().getItemVisual(t,"style"),n=r[e.visualDrawType];return pf(n)}function dee(e,t){var r=e.get("padding");return r??(t==="richText"?[8,10]:10)}var F2=function(){function e(){this.richTextStyles={},this._nextStyleNameId=_J()}return e.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},e.prototype.makeTooltipMarker=function(t,r,n){var i=n==="richText"?this._generateStyleName():null,a=MQ({color:r,type:t,renderMode:n,markerId:i});return ge(a)?a:(this.richTextStyles[i]=a.style,a.content)},e.prototype.wrapRichTextStyle=function(t,r){var n={};ae(r)?R(r,function(a){return ne(n,a)}):ne(n,r);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},e}();function vee(e){var t=e.series,r=e.dataIndex,n=e.multipleSeries,i=t.getData(),a=i.mapDimensionsAll("defaultedTooltip"),o=a.length,s=t.getRawValue(r),l=ae(s),u=hee(t,r),c,f,h,d;if(o>1||l&&!o){var v=pze(s,t,r,a,u);c=v.inlineValues,f=v.inlineValueTypes,h=v.blocks,d=v.inlineValues[0]}else if(o){var m=i.getDimensionInfo(a[0]);d=c=tv(i,r,a[0]),f=m.type}else d=c=l?s[0]:s;var y=LN(t),x=y&&t.name||"",_=i.getName(r),b=n?x:_;return Ar("section",{header:x,noHeader:n||!y,sortParam:d,blocks:[Ar("nameValue",{markerType:"item",markerColor:u,name:b,noName:!Ci(b),value:c,valueType:f,dataIndex:r})].concat(h||[])})}function pze(e,t,r,n,i){var a=t.getData(),o=da(e,function(f,h,d){var v=a.getDimensionInfo(d);return f=f||v&&v.tooltip!==!1&&v.displayName!=null},!1),s=[],l=[],u=[];n.length?R(n,function(f){c(tv(a,r,f),f)}):R(e,c);function c(f,h){var d=a.getDimensionInfo(h);!d||d.otherDims.tooltip===!1||(o?u.push(Ar("nameValue",{markerType:"subItem",markerColor:i,name:d.displayName,value:f,valueType:d.type})):(s.push(f),l.push(d.type)))}return{inlineValues:s,inlineValueTypes:l,blocks:u}}var ll=Je();function Qx(e,t){return e.getName(t)||e.getId(t)}var gb="__universalTransitionEnabled",Ct=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r._selectedDataIndicesMap={},r}return t.prototype.init=function(r,n,i){this.seriesIndex=this.componentIndex,this.dataTask=rm({count:mze,reset:yze}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(r,i);var a=ll(this).sourceManager=new oee(this);a.prepareSource();var o=this.getInitialData(r,i);hG(o,this),this.dataTask.context.data=o,ll(this).dataBeforeProcessed=o,fG(this),this._initSelectedMapFromData(o)},t.prototype.mergeDefaultAndTheme=function(r,n){var i=Ty(this),a=i?If(r):{},o=this.subType;Ke.hasClass(o)&&(o+="Series"),He(r,n.getTheme().get(this.subType)),He(r,this.getDefaultOption()),uf(r,"label",["show"]),this.fillDataTextStyle(r.data),i&&Ho(r,a,i)},t.prototype.mergeOption=function(r,n){r=He(this.option,r,!0),this.fillDataTextStyle(r.data);var i=Ty(this);i&&Ho(this.option,r,i);var a=ll(this).sourceManager;a.dirty(),a.prepareSource();var o=this.getInitialData(r,n);hG(o,this),this.dataTask.dirty(),this.dataTask.context.data=o,ll(this).dataBeforeProcessed=o,fG(this),this._initSelectedMapFromData(o)},t.prototype.fillDataTextStyle=function(r){if(r&&!Zn(r))for(var n=["show"],i=0;i=0&&h<0)&&(f=_,h=x,d=0),x===h&&(c[d++]=m))}),c.length=d,c},t.prototype.formatTooltip=function(r,n,i){return vee({series:this,dataIndex:r,multipleSeries:n})},t.prototype.isAnimationEnabled=function(){var r=this.ecModel;if(nt.node&&!(r&&r.ssr))return!1;var n=this.getShallow("animation");return n&&this.getData().count()>this.getShallow("animationThreshold")&&(n=!1),!!n},t.prototype.restoreData=function(){this.dataTask.dirty()},t.prototype.getColorFromPalette=function(r,n,i){var a=this.ecModel,o=dj.prototype.getColorFromPalette.call(this,r,n,i);return o||(o=a.getColorFromPalette(r,n,i)),o},t.prototype.coordDimToDataDim=function(r){return this.getRawData().mapDimensionsAll(r)},t.prototype.getProgressive=function(){return this.get("progressive")},t.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},t.prototype.select=function(r,n){this._innerSelect(this.getData(n),r)},t.prototype.unselect=function(r,n){var i=this.option.selectedMap;if(i){var a=this.option.selectedMode,o=this.getData(n);if(a==="series"||i==="all"){this.option.selectedMap={},this._selectedDataIndicesMap={};return}for(var s=0;s=0&&i.push(o)}return i},t.prototype.isSelected=function(r,n){var i=this.option.selectedMap;if(!i)return!1;var a=this.getData(n);return(i==="all"||i[Qx(a,r)])&&!a.getItemModel(r).get(["select","disabled"])},t.prototype.isUniversalTransitionEnabled=function(){if(this[gb])return!0;var r=this.option.universalTransition;return r?r===!0?!0:r&&r.enabled:!1},t.prototype._innerSelect=function(r,n){var i,a,o=this.option,s=o.selectedMode,l=n.length;if(!(!s||!l)){if(s==="series")o.selectedMap="all";else if(s==="multiple"){Le(o.selectedMap)||(o.selectedMap={});for(var u=o.selectedMap,c=0;c0&&this._innerSelect(r,n)}},t.registerClass=function(r){return Ke.registerClass(r)},t.protoInitialize=function(){var r=t.prototype;r.type="series.__base__",r.seriesIndex=0,r.ignoreStyleOnData=!1,r.hasSymbolVisual=!1,r.defaultSymbol="circle",r.visualStyleAccessPath="itemStyle",r.visualDrawType="fill"}(),t}(Ke);cr(Ct,XT);cr(Ct,dj);LJ(Ct,Ke);function fG(e){var t=e.name;LN(e)||(e.name=gze(e)||t)}function gze(e){var t=e.getRawData(),r=t.mapDimensionsAll("seriesName"),n=[];return R(r,function(i){var a=t.getDimensionInfo(i);a.displayName&&n.push(a.displayName)}),n.join(" ")}function mze(e){return e.model.getRawData().count()}function yze(e){var t=e.model;return t.setData(t.getRawData().cloneShallow()),xze}function xze(e,t){t.outputData&&e.end>t.outputData.count()&&t.model.getRawData().cloneShallow(t.outputData)}function hG(e,t){R(Yd(e.CHANGABLE_METHODS,e.DOWNSAMPLE_METHODS),function(r){e.wrapMethod(r,Fe(_ze,t))})}function _ze(e,t){var r=WI(e);return r&&r.setOutputEnd((t||this).count()),t}function WI(e){var t=(e.ecModel||{}).scheduler,r=t&&t.getPipeline(e.uid);if(r){var n=r.currentTask;if(n){var i=n.agentStubMap;i&&(n=i.get(e.uid))}return n}}var Lt=function(){function e(){this.group=new Pe,this.uid=Wv("viewComponent")}return e.prototype.init=function(t,r){},e.prototype.render=function(t,r,n,i){},e.prototype.dispose=function(t,r){},e.prototype.updateView=function(t,r,n,i){},e.prototype.updateLayout=function(t,r,n,i){},e.prototype.updateVisual=function(t,r,n,i){},e.prototype.toggleBlurSeries=function(t,r,n){},e.prototype.eachRendered=function(t){var r=this.group;r&&r.traverse(t)},e}();EN(Lt);jT(Lt);function Zv(){var e=Je();return function(t){var r=e(t),n=t.pipelineContext,i=!!r.large,a=!!r.progressiveRender,o=r.large=!!(n&&n.large),s=r.progressiveRender=!!(n&&n.progressiveRender);return(i!==o||a!==s)&&"reset"}}var pee=Je(),bze=Zv(),bt=function(){function e(){this.group=new Pe,this.uid=Wv("viewChart"),this.renderTask=rm({plan:wze,reset:Sze}),this.renderTask.context={view:this}}return e.prototype.init=function(t,r){},e.prototype.render=function(t,r,n,i){},e.prototype.highlight=function(t,r,n,i){var a=t.getData(i&&i.dataType);a&&vG(a,i,"emphasis")},e.prototype.downplay=function(t,r,n,i){var a=t.getData(i&&i.dataType);a&&vG(a,i,"normal")},e.prototype.remove=function(t,r){this.group.removeAll()},e.prototype.dispose=function(t,r){},e.prototype.updateView=function(t,r,n,i){this.render(t,r,n,i)},e.prototype.updateLayout=function(t,r,n,i){this.render(t,r,n,i)},e.prototype.updateVisual=function(t,r,n,i){this.render(t,r,n,i)},e.prototype.eachRendered=function(t){Au(this.group,t)},e.markUpdateMethod=function(t,r){pee(t).updateMethod=r},e.protoInitialize=function(){var t=e.prototype;t.type="chart"}(),e}();function dG(e,t,r){e&&by(e)&&(t==="emphasis"?Ws:Hs)(e,r)}function vG(e,t,r){var n=cf(e,t),i=t&&t.highlightKey!=null?X3e(t.highlightKey):null;n!=null?R(kt(n),function(a){dG(e.getItemGraphicEl(a),r,i)}):e.eachItemGraphicEl(function(a){dG(a,r,i)})}EN(bt);jT(bt);function wze(e){return bze(e.model)}function Sze(e){var t=e.model,r=e.ecModel,n=e.api,i=e.payload,a=t.pipelineContext.progressiveRender,o=e.view,s=i&&pee(i).updateMethod,l=a?"incrementalPrepareRender":s&&o[s]?s:"render";return l!=="render"&&o[l](t,r,n,i),Tze[l]}var Tze={incrementalPrepareRender:{progress:function(e,t){t.view.incrementalRender(e,t.model,t.ecModel,t.api,t.payload)}},render:{forceFirstProgress:!0,progress:function(e,t){t.view.render(t.model,t.ecModel,t.api,t.payload)}}},Sw="\0__throttleOriginMethod",pG="\0__throttleRate",gG="\0__throttleType";function KT(e,t,r){var n,i=0,a=0,o=null,s,l,u,c;t=t||0;function f(){a=new Date().getTime(),o=null,e.apply(l,u||[])}var h=function(){for(var d=[],v=0;v=0?f():o=setTimeout(f,-s),i=n};return h.clear=function(){o&&(clearTimeout(o),o=null)},h.debounceNextCall=function(d){c=d},h}function Yv(e,t,r,n){var i=e[t];if(i){var a=i[Sw]||i,o=i[gG],s=i[pG];if(s!==r||o!==n){if(r==null||!n)return e[t]=a;i=e[t]=KT(a,r,n==="debounce"),i[Sw]=a,i[gG]=n,i[pG]=r}return i}}function Ay(e,t){var r=e[t];r&&r[Sw]&&(r.clear&&r.clear(),e[t]=r[Sw])}var mG=Je(),yG={itemStyle:ff(yQ,!0),lineStyle:ff(mQ,!0)},Cze={lineStyle:"stroke",itemStyle:"fill"};function gee(e,t){var r=e.visualStyleMapper||yG[t];return r||(console.warn("Unknown style type '"+t+"'."),yG.itemStyle)}function mee(e,t){var r=e.visualDrawType||Cze[t];return r||(console.warn("Unknown style type '"+t+"'."),"fill")}var Aze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=e.getModel(n),a=gee(e,n),o=a(i),s=i.getShallow("decal");s&&(r.setVisual("decal",s),s.dirty=!0);var l=mee(e,n),u=o[l],c=Ae(u)?u:null,f=o.fill==="auto"||o.stroke==="auto";if(!o[l]||c||f){var h=e.getColorFromPalette(e.name,null,t.getSeriesCount());o[l]||(o[l]=h,r.setVisual("colorFromPalette",!0)),o.fill=o.fill==="auto"||Ae(o.fill)?h:o.fill,o.stroke=o.stroke==="auto"||Ae(o.stroke)?h:o.stroke}if(r.setVisual("style",o),r.setVisual("drawType",l),!t.isSeriesFiltered(e)&&c)return r.setVisual("colorFromPalette",!1),{dataEach:function(d,v){var m=e.getDataParams(v),y=ne({},o);y[l]=c(m),d.setItemVisual(v,"style",y)}}}},Fp=new et,Mze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){if(!(e.ignoreStyleOnData||t.isSeriesFiltered(e))){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=gee(e,n),a=r.getVisual("drawType");return{dataEach:r.hasItemOption?function(o,s){var l=o.getRawDataItem(s);if(l&&l[n]){Fp.option=l[n];var u=i(Fp),c=o.ensureUniqueItemVisual(s,"style");ne(c,u),Fp.option.decal&&(o.setItemVisual(s,"decal",Fp.option.decal),Fp.option.decal.dirty=!0),a in u&&o.setItemVisual(s,"colorFromPalette",!1)}}:null}}}},Pze={performRawSeries:!0,overallReset:function(e){var t=we();e.eachSeries(function(r){var n=r.getColorBy();if(!r.isColorBySeries()){var i=r.type+"-"+n,a=t.get(i);a||(a={},t.set(i,a)),mG(r).scope=a}}),e.eachSeries(function(r){if(!(r.isColorBySeries()||e.isSeriesFiltered(r))){var n=r.getRawData(),i={},a=r.getData(),o=mG(r).scope,s=r.visualStyleAccessPath||"itemStyle",l=mee(r,s);a.each(function(u){var c=a.getRawIndex(u);i[c]=u}),n.each(function(u){var c=i[u],f=a.getItemVisual(c,"colorFromPalette");if(f){var h=a.ensureUniqueItemVisual(c,"style"),d=n.getName(u)||u+"",v=n.count();h[l]=r.getColorFromPalette(d,o,v)}})}})}},e_=Math.PI;function kze(e,t){t=t||{},ke(t,{text:"loading",textColor:J.color.primary,fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255,255,255,0.8)",showSpinner:!0,color:J.color.theme[0],spinnerRadius:10,lineWidth:5,zlevel:0});var r=new Pe,n=new Xe({style:{fill:t.maskColor},zlevel:t.zlevel,z:1e4});r.add(n);var i=new at({style:{text:t.text,fill:t.textColor,fontSize:t.fontSize,fontWeight:t.fontWeight,fontStyle:t.fontStyle,fontFamily:t.fontFamily},zlevel:t.zlevel,z:10001}),a=new Xe({style:{fill:"none"},textContent:i,textConfig:{position:"right",distance:10},zlevel:t.zlevel,z:10001});r.add(a);var o;return t.showSpinner&&(o=new p0({shape:{startAngle:-e_/2,endAngle:-e_/2+.1,r:t.spinnerRadius},style:{stroke:t.color,lineCap:"round",lineWidth:t.lineWidth},zlevel:t.zlevel,z:10001}),o.animateShape(!0).when(1e3,{endAngle:e_*3/2}).start("circularInOut"),o.animateShape(!0).when(1e3,{startAngle:e_*3/2}).delay(300).start("circularInOut"),r.add(o)),r.resize=function(){var s=i.getBoundingRect().width,l=t.showSpinner?t.spinnerRadius:0,u=(e.getWidth()-l*2-(t.showSpinner&&s?10:0)-s)/2-(t.showSpinner&&s?0:5+s/2)+(t.showSpinner?0:s/2)+(s?0:l),c=e.getHeight()/2;t.showSpinner&&o.setShape({cx:u,cy:c}),a.setShape({x:u-l,y:c-l,width:l*2,height:l*2}),n.setShape({x:0,y:0,width:e.getWidth(),height:e.getHeight()})},r.resize(),r}var yee=function(){function e(t,r,n,i){this._stageTaskMap=we(),this.ecInstance=t,this.api=r,n=this._dataProcessorHandlers=n.slice(),i=this._visualHandlers=i.slice(),this._allHandlers=n.concat(i)}return e.prototype.restoreData=function(t,r){t.restoreData(r),this._stageTaskMap.each(function(n){var i=n.overallTask;i&&i.dirty()})},e.prototype.getPerformArgs=function(t,r){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),i=n.context,a=!r&&n.progressiveEnabled&&(!i||i.progressiveRender)&&t.__idxInPipeline>n.blockIndex,o=a?n.step:null,s=i&&i.modDataCount,l=s!=null?Math.ceil(s/o):null;return{step:o,modBy:l,modDataCount:s}}},e.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},e.prototype.updateStreamModes=function(t,r){var n=this._pipelineMap.get(t.uid),i=t.getData(),a=i.count(),o=n.progressiveEnabled&&r.incrementalPrepareRender&&a>=n.threshold,s=t.get("large")&&a>=t.get("largeThreshold"),l=t.get("progressiveChunkMode")==="mod"?a:null;t.pipelineContext=n.context={progressiveRender:o,modDataCount:l,large:s}},e.prototype.restorePipelines=function(t){var r=this,n=r._pipelineMap=we();t.eachSeries(function(i){var a=i.getProgressive(),o=i.uid;n.set(o,{id:o,head:null,tail:null,threshold:i.getProgressiveThreshold(),progressiveEnabled:a&&!(i.preventIncremental&&i.preventIncremental()),blockIndex:-1,step:Math.round(a||700),count:0}),r._pipe(i,i.dataTask)})},e.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,r=this.api.getModel(),n=this.api;R(this._allHandlers,function(i){var a=t.get(i.uid)||t.set(i.uid,{}),o="";_n(!(i.reset&&i.overallReset),o),i.reset&&this._createSeriesStageTask(i,a,r,n),i.overallReset&&this._createOverallStageTask(i,a,r,n)},this)},e.prototype.prepareView=function(t,r,n,i){var a=t.renderTask,o=a.context;o.model=r,o.ecModel=n,o.api=i,a.__block=!t.incrementalPrepareRender,this._pipe(r,a)},e.prototype.performDataProcessorTasks=function(t,r){this._performStageTasks(this._dataProcessorHandlers,t,r,{block:!0})},e.prototype.performVisualTasks=function(t,r,n){this._performStageTasks(this._visualHandlers,t,r,n)},e.prototype._performStageTasks=function(t,r,n,i){i=i||{};var a=!1,o=this;R(t,function(l,u){if(!(i.visualType&&i.visualType!==l.visualType)){var c=o._stageTaskMap.get(l.uid),f=c.seriesTaskMap,h=c.overallTask;if(h){var d,v=h.agentStubMap;v.each(function(y){s(i,y)&&(y.dirty(),d=!0)}),d&&h.dirty(),o.updatePayload(h,n);var m=o.getPerformArgs(h,i.block);v.each(function(y){y.perform(m)}),h.perform(m)&&(a=!0)}else f&&f.each(function(y,x){s(i,y)&&y.dirty();var _=o.getPerformArgs(y,i.block);_.skip=!l.performRawSeries&&r.isSeriesFiltered(y.context.model),o.updatePayload(y,n),y.perform(_)&&(a=!0)})}});function s(l,u){return l.setDirty&&(!l.dirtyMap||l.dirtyMap.get(u.__pipeline.id))}this.unfinished=a||this.unfinished},e.prototype.performSeriesTasks=function(t){var r;t.eachSeries(function(n){r=n.dataTask.perform()||r}),this.unfinished=r||this.unfinished},e.prototype.plan=function(){this._pipelineMap.each(function(t){var r=t.tail;do{if(r.__block){t.blockIndex=r.__idxInPipeline;break}r=r.getUpstream()}while(r)})},e.prototype.updatePayload=function(t,r){r!=="remain"&&(t.context.payload=r)},e.prototype._createSeriesStageTask=function(t,r,n,i){var a=this,o=r.seriesTaskMap,s=r.seriesTaskMap=we(),l=t.seriesType,u=t.getTargetSeries;t.createOnAllSeries?n.eachRawSeries(c):l?n.eachRawSeriesByType(l,c):u&&u(n,i).each(c);function c(f){var h=f.uid,d=s.set(h,o&&o.get(h)||rm({plan:Dze,reset:Nze,count:Rze}));d.context={model:f,ecModel:n,api:i,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:a},a._pipe(f,d)}},e.prototype._createOverallStageTask=function(t,r,n,i){var a=this,o=r.overallTask=r.overallTask||rm({reset:Lze});o.context={ecModel:n,api:i,overallReset:t.overallReset,scheduler:a};var s=o.agentStubMap,l=o.agentStubMap=we(),u=t.seriesType,c=t.getTargetSeries,f=!0,h=!1,d="";_n(!t.createOnAllSeries,d),u?n.eachRawSeriesByType(u,v):c?c(n,i).each(v):(f=!1,R(n.getSeries(),v));function v(m){var y=m.uid,x=l.set(y,s&&s.get(y)||(h=!0,rm({reset:Ize,onDirty:Oze})));x.context={model:m,overallProgress:f},x.agent=o,x.__block=f,a._pipe(m,x)}h&&o.dirty()},e.prototype._pipe=function(t,r){var n=t.uid,i=this._pipelineMap.get(n);!i.head&&(i.head=r),i.tail&&i.tail.pipe(r),i.tail=r,r.__idxInPipeline=i.count++,r.__pipeline=i},e.wrapStageHandler=function(t,r){return Ae(t)&&(t={overallReset:t,seriesType:Bze(t)}),t.uid=Wv("stageHandler"),r&&(t.visualType=r),t},e}();function Lze(e){e.overallReset(e.ecModel,e.api,e.payload)}function Ize(e){return e.overallProgress&&Eze}function Eze(){this.agent.dirty(),this.getDownstream().dirty()}function Oze(){this.agent&&this.agent.dirty()}function Dze(e){return e.plan?e.plan(e.model,e.ecModel,e.api,e.payload):null}function Nze(e){e.useClearVisual&&e.data.clearAllVisual();var t=e.resetDefines=kt(e.reset(e.model,e.ecModel,e.api,e.payload));return t.length>1?se(t,function(r,n){return xee(n)}):jze}var jze=xee(0);function xee(e){return function(t,r){var n=r.data,i=r.resetDefines[e];if(i&&i.dataEach)for(var a=t.start;a0&&d===u.length-h.length){var v=u.slice(0,d);v!=="data"&&(r.mainType=v,r[h.toLowerCase()]=l,c=!0)}}s.hasOwnProperty(u)&&(n[u]=l,c=!0),c||(i[u]=l)})}return{cptQuery:r,dataQuery:n,otherQuery:i}},e.prototype.filter=function(t,r){var n=this.eventInfo;if(!n)return!0;var i=n.targetEl,a=n.packedEvent,o=n.model,s=n.view;if(!o||!s)return!0;var l=r.cptQuery,u=r.dataQuery;return c(l,o,"mainType")&&c(l,o,"subType")&&c(l,o,"index","componentIndex")&&c(l,o,"name")&&c(l,o,"id")&&c(u,a,"name")&&c(u,a,"dataIndex")&&c(u,a,"dataType")&&(!s.filterForExposedEvent||s.filterForExposedEvent(t,r.otherQuery,i,a));function c(f,h,d,v){return f[d]==null||h[v||d]===f[d]}},e.prototype.afterTrigger=function(){this.eventInfo=null},e}(),HI=["symbol","symbolSize","symbolRotate","symbolOffset"],_G=HI.concat(["symbolKeepAspect"]),Fze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){var r=e.getData();if(e.legendIcon&&r.setVisual("legendIcon",e.legendIcon),!e.hasSymbolVisual)return;for(var n={},i={},a=!1,o=0;o=0&&jc(l)?l:.5;var u=e.createRadialGradient(o,s,0,o,s,l);return u}function UI(e,t,r){for(var n=t.type==="radial"?r4e(e,t,r):t4e(e,t,r),i=t.colorStops,a=0;a0)?null:e==="dashed"?[4*t,2*t]:e==="dotted"?[t]:ot(e)?[e]:ae(e)?e:null}function _j(e){var t=e.style,r=t.lineDash&&t.lineWidth>0&&i4e(t.lineDash,t.lineWidth),n=t.lineDashOffset;if(r){var i=t.strokeNoScale&&e.getLineScale?e.getLineScale():1;i&&i!==1&&(r=se(r,function(a){return a/i}),n/=i)}return[r,n]}var a4e=new Wo(!0);function Aw(e){var t=e.stroke;return!(t==null||t==="none"||!(e.lineWidth>0))}function bG(e){return typeof e=="string"&&e!=="none"}function Mw(e){var t=e.fill;return t!=null&&t!=="none"}function wG(e,t){if(t.fillOpacity!=null&&t.fillOpacity!==1){var r=e.globalAlpha;e.globalAlpha=t.fillOpacity*t.opacity,e.fill(),e.globalAlpha=r}else e.fill()}function SG(e,t){if(t.strokeOpacity!=null&&t.strokeOpacity!==1){var r=e.globalAlpha;e.globalAlpha=t.strokeOpacity*t.opacity,e.stroke(),e.globalAlpha=r}else e.stroke()}function ZI(e,t,r){var n=ON(t.image,t.__image,r);if(RT(n)){var i=e.createPattern(n,t.repeat||"repeat");if(typeof DOMMatrix=="function"&&i&&i.setTransform){var a=new DOMMatrix;a.translateSelf(t.x||0,t.y||0),a.rotateSelf(0,0,(t.rotation||0)*Hg),a.scaleSelf(t.scaleX||1,t.scaleY||1),i.setTransform(a)}return i}}function o4e(e,t,r,n){var i,a=Aw(r),o=Mw(r),s=r.strokePercent,l=s<1,u=!t.path;(!t.silent||l)&&u&&t.createPathProxy();var c=t.path||a4e,f=t.__dirty;if(!n){var h=r.fill,d=r.stroke,v=o&&!!h.colorStops,m=a&&!!d.colorStops,y=o&&!!h.image,x=a&&!!d.image,_=void 0,b=void 0,S=void 0,T=void 0,C=void 0;(v||m)&&(C=t.getBoundingRect()),v&&(_=f?UI(e,h,C):t.__canvasFillGradient,t.__canvasFillGradient=_),m&&(b=f?UI(e,d,C):t.__canvasStrokeGradient,t.__canvasStrokeGradient=b),y&&(S=f||!t.__canvasFillPattern?ZI(e,h,t):t.__canvasFillPattern,t.__canvasFillPattern=S),x&&(T=f||!t.__canvasStrokePattern?ZI(e,d,t):t.__canvasStrokePattern,t.__canvasStrokePattern=T),v?e.fillStyle=_:y&&(S?e.fillStyle=S:o=!1),m?e.strokeStyle=b:x&&(T?e.strokeStyle=T:a=!1)}var A=t.getGlobalScale();c.setScale(A[0],A[1],t.segmentIgnoreThreshold);var P,I;e.setLineDash&&r.lineDash&&(i=_j(t),P=i[0],I=i[1]);var k=!0;(u||f&Ah)&&(c.setDPR(e.dpr),l?c.setContext(null):(c.setContext(e),k=!1),c.reset(),t.buildPath(c,t.shape,n),c.toStatic(),t.pathUpdated()),k&&c.rebuildPath(e,l?s:1),P&&(e.setLineDash(P),e.lineDashOffset=I),n||(r.strokeFirst?(a&&SG(e,r),o&&wG(e,r)):(o&&wG(e,r),a&&SG(e,r))),P&&e.setLineDash([])}function s4e(e,t,r){var n=t.__image=ON(r.image,t.__image,t,t.onload);if(!(!n||!RT(n))){var i=r.x||0,a=r.y||0,o=t.getWidth(),s=t.getHeight(),l=n.width/n.height;if(o==null&&s!=null?o=s*l:s==null&&o!=null?s=o/l:o==null&&s==null&&(o=n.width,s=n.height),r.sWidth&&r.sHeight){var u=r.sx||0,c=r.sy||0;e.drawImage(n,u,c,r.sWidth,r.sHeight,i,a,o,s)}else if(r.sx&&r.sy){var u=r.sx,c=r.sy,f=o-u,h=s-c;e.drawImage(n,u,c,f,h,i,a,o,s)}else e.drawImage(n,i,a,o,s)}}function l4e(e,t,r){var n,i=r.text;if(i!=null&&(i+=""),i){e.font=r.font||Vs,e.textAlign=r.textAlign,e.textBaseline=r.textBaseline;var a=void 0,o=void 0;e.setLineDash&&r.lineDash&&(n=_j(t),a=n[0],o=n[1]),a&&(e.setLineDash(a),e.lineDashOffset=o),r.strokeFirst?(Aw(r)&&e.strokeText(i,r.x,r.y),Mw(r)&&e.fillText(i,r.x,r.y)):(Mw(r)&&e.fillText(i,r.x,r.y),Aw(r)&&e.strokeText(i,r.x,r.y)),a&&e.setLineDash([])}}var TG=["shadowBlur","shadowOffsetX","shadowOffsetY"],CG=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function Cee(e,t,r,n,i){var a=!1;if(!n&&(r=r||{},t===r))return!1;if(n||t.opacity!==r.opacity){ni(e,i),a=!0;var o=Math.max(Math.min(t.opacity,1),0);e.globalAlpha=isNaN(o)?Wc.opacity:o}(n||t.blend!==r.blend)&&(a||(ni(e,i),a=!0),e.globalCompositeOperation=t.blend||Wc.blend);for(var s=0;s0&&r.unfinished);r.unfinished||this._zr.flush()}}},t.prototype.getDom=function(){return this._dom},t.prototype.getId=function(){return this.id},t.prototype.getZr=function(){return this._zr},t.prototype.isSSR=function(){return this._ssr},t.prototype.setOption=function(r,n,i){if(!this[kr]){if(this._disposed){this.id;return}var a,o,s;if(Le(n)&&(i=n.lazyUpdate,a=n.silent,o=n.replaceMerge,s=n.transition,n=n.notMerge),this[kr]=!0,fh(this),!this._model||n){var l=new wBe(this._api),u=this._theme,c=this._model=new vj;c.scheduler=this._scheduler,c.ssr=this._ssr,c.init(null,null,null,u,this._locale,l)}this._model.setOption(r,{replaceMerge:o},KI);var f={seriesTransition:s,optionChanged:!0};if(i)this[Jr]={silent:a,updateParams:f},this[kr]=!1,this.getZr().wakeUp();else{try{nc(this),os.update.call(this,null,f)}catch(h){throw this[Jr]=null,this[kr]=!1,h}this._ssr||this._zr.flush(),this[Jr]=null,this[kr]=!1,uh.call(this,a),ch.call(this,a)}}},t.prototype.setTheme=function(r,n){if(!this[kr]){if(this._disposed){this.id;return}var i=this._model;if(i){var a=n&&n.silent,o=null;this[Jr]&&(a==null&&(a=this[Jr].silent),o=this[Jr].updateParams,this[Jr]=null),this[kr]=!0,fh(this);try{this._updateTheme(r),i.setTheme(this._theme),nc(this),os.update.call(this,{type:"setTheme"},o)}catch(s){throw this[kr]=!1,s}this[kr]=!1,uh.call(this,a),ch.call(this,a)}}},t.prototype._updateTheme=function(r){ge(r)&&(r=Wee[r]),r&&(r=Me(r),r&&ZQ(r,!0),this._theme=r)},t.prototype.getModel=function(){return this._model},t.prototype.getOption=function(){return this._model&&this._model.getOption()},t.prototype.getWidth=function(){return this._zr.getWidth()},t.prototype.getHeight=function(){return this._zr.getHeight()},t.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||nt.hasGlobalWindow&&window.devicePixelRatio||1},t.prototype.getRenderedCanvas=function(r){return this.renderToCanvas(r)},t.prototype.renderToCanvas=function(r){r=r||{};var n=this._zr.painter;return n.getRenderedCanvas({backgroundColor:r.backgroundColor||this._model.get("backgroundColor"),pixelRatio:r.pixelRatio||this.getDevicePixelRatio()})},t.prototype.renderToSVGString=function(r){r=r||{};var n=this._zr.painter;return n.renderToString({useViewBox:r.useViewBox})},t.prototype.getSvgDataURL=function(){var r=this._zr,n=r.storage.getDisplayList();return R(n,function(i){i.stopAnimation(null,!0)}),r.painter.toDataURL()},t.prototype.getDataURL=function(r){if(this._disposed){this.id;return}r=r||{};var n=r.excludeComponents,i=this._model,a=[],o=this;R(n,function(l){i.eachComponent({mainType:l},function(u){var c=o._componentsMap[u.__viewId];c.group.ignore||(a.push(c),c.group.ignore=!0)})});var s=this._zr.painter.getType()==="svg"?this.getSvgDataURL():this.renderToCanvas(r).toDataURL("image/"+(r&&r.type||"png"));return R(a,function(l){l.group.ignore=!1}),s},t.prototype.getConnectedDataURL=function(r){if(this._disposed){this.id;return}var n=r.type==="svg",i=this.group,a=Math.min,o=Math.max,s=1/0;if(Iw[i]){var l=s,u=s,c=-s,f=-s,h=[],d=r&&r.pixelRatio||this.getDevicePixelRatio();R(Zc,function(b,S){if(b.group===i){var T=n?b.getZr().painter.getSvgDom().innerHTML:b.renderToCanvas(Me(r)),C=b.getDom().getBoundingClientRect();l=a(C.left,l),u=a(C.top,u),c=o(C.right,c),f=o(C.bottom,f),h.push({dom:T,left:C.left,top:C.top})}}),l*=d,u*=d,c*=d,f*=d;var v=c-l,m=f-u,y=ci.createCanvas(),x=pI(y,{renderer:n?"svg":"canvas"});if(x.resize({width:v,height:m}),n){var _="";return R(h,function(b){var S=b.left-l,T=b.top-u;_+=''+b.dom+""}),x.painter.getSvgRoot().innerHTML=_,r.connectedBackgroundColor&&x.painter.setBackgroundColor(r.connectedBackgroundColor),x.refreshImmediately(),x.painter.toDataURL()}else return r.connectedBackgroundColor&&x.add(new Xe({shape:{x:0,y:0,width:v,height:m},style:{fill:r.connectedBackgroundColor}})),R(h,function(b){var S=new Xr({style:{x:b.left*d-l,y:b.top*d-u,image:b.dom}});x.add(S)}),x.refreshImmediately(),y.toDataURL("image/"+(r&&r.type||"png"))}else return this.getDataURL(r)},t.prototype.convertToPixel=function(r,n,i){return i_(this,"convertToPixel",r,n,i)},t.prototype.convertToLayout=function(r,n,i){return i_(this,"convertToLayout",r,n,i)},t.prototype.convertFromPixel=function(r,n,i){return i_(this,"convertFromPixel",r,n,i)},t.prototype.containPixel=function(r,n){if(this._disposed){this.id;return}var i=this._model,a,o=hd(i,r);return R(o,function(s,l){l.indexOf("Models")>=0&&R(s,function(u){var c=u.coordinateSystem;if(c&&c.containPoint)a=a||!!c.containPoint(n);else if(l==="seriesModels"){var f=this._chartsMap[u.__viewId];f&&f.containPoint&&(a=a||f.containPoint(n,u))}},this)},this),!!a},t.prototype.getVisual=function(r,n){var i=this._model,a=hd(i,r,{defaultMainType:"series"}),o=a.seriesModel,s=o.getData(),l=a.hasOwnProperty("dataIndexInside")?a.dataIndexInside:a.hasOwnProperty("dataIndex")?s.indexOfRawIndex(a.dataIndex):null;return l!=null?xj(s,l,n):_0(s,n)},t.prototype.getViewOfComponentModel=function(r){return this._componentsMap[r.__viewId]},t.prototype.getViewOfSeriesModel=function(r){return this._chartsMap[r.__viewId]},t.prototype._initEvents=function(){var r=this;R(D4e,function(i){var a=function(o){var s=r.getModel(),l=o.target,u,c=i==="globalout";if(c?u={}:l&&Nc(l,function(m){var y=je(m);if(y&&y.dataIndex!=null){var x=y.dataModel||s.getSeriesByIndex(y.seriesIndex);return u=x&&x.getDataParams(y.dataIndex,y.dataType,l)||{},!0}else if(y.eventData)return u=ne({},y.eventData),!0},!0),u){var f=u.componentType,h=u.componentIndex;(f==="markLine"||f==="markPoint"||f==="markArea")&&(f="series",h=u.seriesIndex);var d=f&&h!=null&&s.getComponent(f,h),v=d&&r[d.mainType==="series"?"_chartsMap":"_componentsMap"][d.__viewId];u.event=o,u.type=i,r._$eventProcessor.eventInfo={targetEl:l,packedEvent:u,model:d,view:v},r.trigger(i,u)}};a.zrEventfulCallAtLast=!0,r._zr.on(i,a,r)});var n=this._messageCenter;R(XI,function(i,a){n.on(a,function(o){r.trigger(a,o)})}),Gze(n,this,this._api)},t.prototype.isDisposed=function(){return this._disposed},t.prototype.clear=function(){if(this._disposed){this.id;return}this.setOption({series:[]},!0)},t.prototype.dispose=function(){if(this._disposed){this.id;return}this._disposed=!0;var r=this.getDom();r&&MJ(this.getDom(),Tj,"");var n=this,i=n._api,a=n._model;R(n._componentsViews,function(o){o.dispose(a,i)}),R(n._chartsViews,function(o){o.dispose(a,i)}),n._zr.dispose(),n._dom=n._model=n._chartsMap=n._componentsMap=n._chartsViews=n._componentsViews=n._scheduler=n._api=n._zr=n._throttledZrFlush=n._theme=n._coordSysMgr=n._messageCenter=null,delete Zc[n.id]},t.prototype.resize=function(r){if(!this[kr]){if(this._disposed){this.id;return}this._zr.resize(r);var n=this._model;if(this._loadingFX&&this._loadingFX.resize(),!!n){var i=n.resetOption("media"),a=r&&r.silent;this[Jr]&&(a==null&&(a=this[Jr].silent),i=!0,this[Jr]=null),this[kr]=!0,fh(this);try{i&&nc(this),os.update.call(this,{type:"resize",animation:ne({duration:0},r&&r.animation)})}catch(o){throw this[kr]=!1,o}this[kr]=!1,uh.call(this,a),ch.call(this,a)}}},t.prototype.showLoading=function(r,n){if(this._disposed){this.id;return}if(Le(r)&&(n=r,r=""),r=r||"default",this.hideLoading(),!!JI[r]){var i=JI[r](this._api,n),a=this._zr;this._loadingFX=i,a.add(i)}},t.prototype.hideLoading=function(){if(this._disposed){this.id;return}this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null},t.prototype.makeActionFromEvent=function(r){var n=ne({},r);return n.type=YI[r.type],n},t.prototype.dispatchAction=function(r,n){if(this._disposed){this.id;return}if(Le(n)||(n={silent:!!n}),!!kw[r.type]&&this._model){if(this[kr]){this._pendingActions.push(r);return}var i=n.silent;Z2.call(this,r,i);var a=n.flush;a?this._zr.flush():a!==!1&&nt.browser.weChat&&this._throttledZrFlush(),uh.call(this,i),ch.call(this,i)}},t.prototype.updateLabelLayout=function(){La.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},t.prototype.appendData=function(r){if(this._disposed){this.id;return}var n=r.seriesIndex,i=this.getModel(),a=i.getSeriesByIndex(n);a.appendData(r),this._scheduler.unfinished=!0,this.getZr().wakeUp()},t.internalField=function(){nc=function(f){var h=f._scheduler;h.restorePipelines(f._model),h.prepareStageTasks(),H2(f,!0),H2(f,!1),h.plan()},H2=function(f,h){for(var d=f._model,v=f._scheduler,m=h?f._componentsViews:f._chartsViews,y=h?f._componentsMap:f._chartsMap,x=f._zr,_=f._api,b=0;bh.get("hoverLayerThreshold")&&!nt.node&&!nt.worker&&h.eachSeries(function(y){if(!y.preventUsingHoverLayer){var x=f._chartsMap[y.__viewId];x.__alive&&x.eachRendered(function(_){_.states.emphasis&&(_.states.emphasis.hoverLayer=!0)})}})}function s(f,h){var d=f.get("blendMode")||null;h.eachRendered(function(v){v.isGroup||(v.style.blend=d)})}function l(f,h){if(!f.preventAutoZ){var d=vf(f);h.eachRendered(function(v){return HT(v,d.z,d.zlevel),!0})}}function u(f,h){h.eachRendered(function(d){if(!dd(d)){var v=d.getTextContent(),m=d.getTextGuideLine();d.stateTransition&&(d.stateTransition=null),v&&v.stateTransition&&(v.stateTransition=null),m&&m.stateTransition&&(m.stateTransition=null),d.hasState()?(d.prevStates=d.currentStates,d.clearStates()):d.prevStates&&(d.prevStates=null)}})}function c(f,h){var d=f.getModel("stateAnimation"),v=f.isAnimationEnabled(),m=d.get("duration"),y=m>0?{duration:m,delay:d.get("delay"),easing:d.get("easing")}:null;h.eachRendered(function(x){if(x.states&&x.states.emphasis){if(dd(x))return;if(x instanceof tt&&q3e(x),x.__dirty){var _=x.prevStates;_&&x.useStates(_)}if(v){x.stateTransition=y;var b=x.getTextContent(),S=x.getTextGuideLine();b&&(b.stateTransition=y),S&&(S.stateTransition=y)}x.__dirty&&a(x)}})}BG=function(f){return new(function(h){q(d,h);function d(){return h!==null&&h.apply(this,arguments)||this}return d.prototype.getCoordinateSystems=function(){return f._coordSysMgr.getCoordinateSystems()},d.prototype.getComponentByElement=function(v){for(;v;){var m=v.__ecComponentInfo;if(m!=null)return f._model.getComponent(m.mainType,m.index);v=v.parent}},d.prototype.enterEmphasis=function(v,m){Ws(v,m),Gi(f)},d.prototype.leaveEmphasis=function(v,m){Hs(v,m),Gi(f)},d.prototype.enterBlur=function(v){HJ(v),Gi(f)},d.prototype.leaveBlur=function(v){zN(v),Gi(f)},d.prototype.enterSelect=function(v){UJ(v),Gi(f)},d.prototype.leaveSelect=function(v){ZJ(v),Gi(f)},d.prototype.getModel=function(){return f.getModel()},d.prototype.getViewOfComponentModel=function(v){return f.getViewOfComponentModel(v)},d.prototype.getViewOfSeriesModel=function(v){return f.getViewOfSeriesModel(v)},d.prototype.getMainProcessVersion=function(){return f[r_]},d}(HQ))(f)},Gee=function(f){function h(d,v){for(var m=0;m=0)){$G.push(r);var a=yee.wrapStageHandler(r,i);a.__prio=t,a.__raw=r,e.push(a)}}function Lj(e,t){JI[e]=t}function W4e(e){EK({createCanvas:e})}function qee(e,t,r){var n=Iee("registerMap");n&&n(e,t,r)}function H4e(e){var t=Iee("getMap");return t&&t(e)}var Kee=eze;Pu(wj,Aze);Pu(JT,Mze);Pu(JT,Pze);Pu(wj,Fze);Pu(JT,Vze);Pu(jee,g4e);Mj(ZQ);Pj(S4e,DBe);Lj("default",kze);to({type:Hc,event:Hc,update:Hc},sr);to({type:cb,event:cb,update:cb},sr);to({type:gw,event:RN,update:gw,action:sr,refineEvent:Ij,publishNonRefinedEvent:!0});to({type:CI,event:RN,update:CI,action:sr,refineEvent:Ij,publishNonRefinedEvent:!0});to({type:mw,event:RN,update:mw,action:sr,refineEvent:Ij,publishNonRefinedEvent:!0});function Ij(e,t,r,n){return{eventContent:{selected:H3e(r),isFromClick:t.isFromClick||!1}}}Aj("default",{});Aj("dark",wee);var U4e={},FG=[],Z4e={registerPreprocessor:Mj,registerProcessor:Pj,registerPostInit:Uee,registerPostUpdate:Zee,registerUpdateLifecycle:QT,registerAction:to,registerCoordinateSystem:Yee,registerLayout:Xee,registerVisual:Pu,registerTransform:Kee,registerLoading:Lj,registerMap:qee,registerImpl:m4e,PRIORITY:Ree,ComponentModel:Ke,ComponentView:Lt,SeriesModel:Ct,ChartView:bt,registerComponentModel:function(e){Ke.registerClass(e)},registerComponentView:function(e){Lt.registerClass(e)},registerSeriesModel:function(e){Ct.registerClass(e)},registerChartView:function(e){bt.registerClass(e)},registerCustomSeries:function(e,t){Oee(e,t)},registerSubTypeDefaulter:function(e,t){Ke.registerSubTypeDefaulter(e,t)},registerPainter:function(e,t){dJ(e,t)}};function Ze(e){if(ae(e)){R(e,function(t){Ze(t)});return}We(FG,e)>=0||(FG.push(e),Ae(e)&&(e={install:e}),e.install(Z4e))}function Gp(e){return e==null?0:e.length||1}function VG(e){return e}var Us=function(){function e(t,r,n,i,a,o){this._old=t,this._new=r,this._oldKeyGetter=n||VG,this._newKeyGetter=i||VG,this.context=a,this._diffModeMultiple=o==="multiple"}return e.prototype.add=function(t){return this._add=t,this},e.prototype.update=function(t){return this._update=t,this},e.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},e.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},e.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},e.prototype.remove=function(t){return this._remove=t,this},e.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},e.prototype._executeOneToOne=function(){var t=this._old,r=this._new,n={},i=new Array(t.length),a=new Array(r.length);this._initIndexMap(t,null,i,"_oldKeyGetter"),this._initIndexMap(r,n,a,"_newKeyGetter");for(var o=0;o1){var c=l.shift();l.length===1&&(n[s]=l[0]),this._update&&this._update(c,o)}else u===1?(n[s]=null,this._update&&this._update(l,o)):this._remove&&this._remove(o)}this._performRestAdd(a,n)},e.prototype._executeMultiple=function(){var t=this._old,r=this._new,n={},i={},a=[],o=[];this._initIndexMap(t,n,a,"_oldKeyGetter"),this._initIndexMap(r,i,o,"_newKeyGetter");for(var s=0;s1&&h===1)this._updateManyToOne&&this._updateManyToOne(c,u),i[l]=null;else if(f===1&&h>1)this._updateOneToMany&&this._updateOneToMany(c,u),i[l]=null;else if(f===1&&h===1)this._update&&this._update(c,u),i[l]=null;else if(f>1&&h>1)this._updateManyToMany&&this._updateManyToMany(c,u),i[l]=null;else if(f>1)for(var d=0;d1)for(var s=0;s30}var Wp=Le,ul=se,Q4e=typeof Int32Array>"u"?Array:Int32Array,e$e="e\0\0",GG=-1,t$e=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],r$e=["_approximateExtent"],WG,o_,Hp,Up,q2,Zp,K2,Dn=function(){function e(t,r){this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","minmaxDownSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","minmaxDownSample","lttbDownSample"];var n,i=!1;Qee(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(i=!0,n=t),n=n||["x","y"];for(var a={},o=[],s={},l=!1,u={},c=0;c=r)){var n=this._store,i=n.getProvider();this._updateOrdinalMeta();var a=this._nameList,o=this._idList,s=i.getSource().sourceFormat,l=s===Ni;if(l&&!i.pure)for(var u=[],c=t;c0},e.prototype.ensureUniqueItemVisual=function(t,r){var n=this._itemVisuals,i=n[t];i||(i=n[t]={});var a=i[r];return a==null&&(a=this.getVisual(r),ae(a)?a=a.slice():Wp(a)&&(a=ne({},a)),i[r]=a),a},e.prototype.setItemVisual=function(t,r,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,Wp(r)?ne(i,r):i[r]=n},e.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},e.prototype.setLayout=function(t,r){Wp(t)?ne(this._layout,t):this._layout[t]=r},e.prototype.getLayout=function(t){return this._layout[t]},e.prototype.getItemLayout=function(t){return this._itemLayouts[t]},e.prototype.setItemLayout=function(t,r,n){this._itemLayouts[t]=n?ne(this._itemLayouts[t]||{},r):r},e.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},e.prototype.setItemGraphicEl=function(t,r){var n=this.hostModel&&this.hostModel.seriesIndex;TI(n,this.dataType,t,r),this._graphicEls[t]=r},e.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},e.prototype.eachItemGraphicEl=function(t,r){R(this._graphicEls,function(n,i){n&&t&&t.call(r,n,i)})},e.prototype.cloneShallow=function(t){return t||(t=new e(this._schema?this._schema:ul(this.dimensions,this._getDimInfo,this),this.hostModel)),q2(t,this),t._store=this._store,t},e.prototype.wrapMethod=function(t,r){var n=this[t];Ae(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var i=n.apply(this,arguments);return r.apply(this,[i].concat(kT(arguments)))})},e.internalField=function(){WG=function(t){var r=t._invertedIndicesMap;R(r,function(n,i){var a=t._dimInfos[i],o=a.ordinalMeta,s=t._store;if(o){n=r[i]=new Q4e(o.categories.length);for(var l=0;l1&&(l+="__ec__"+c),i[r]=l}}}(),e}();function n$e(e,t){return qv(e,t).dimensions}function qv(e,t){pj(e)||(e=gj(e)),t=t||{};var r=t.coordDimensions||[],n=t.dimensionsDefine||e.dimensionsDefine||[],i=we(),a=[],o=a$e(e,r,n,t.dimensionsCount),s=t.canOmitUnusedDimensions&&rte(o),l=n===e.dimensionsDefine,u=l?tte(e):ete(n),c=t.encodeDefine;!c&&t.encodeDefaulter&&(c=t.encodeDefaulter(e,o));for(var f=we(c),h=new iee(o),d=0;d0&&(n.name=i+(a-1)),a++,t.set(i,a)}}function a$e(e,t,r,n){var i=Math.max(e.dimensionsDetectedCount||1,t.length,r.length,n||0);return R(t,function(a){var o;Le(a)&&(o=a.dimsDef)&&(i=Math.max(i,o.length))}),i}function o$e(e,t,r){if(r||t.hasKey(e)){for(var n=0;t.hasKey(e+n);)n++;e+=n}return t.set(e,!0),e}var s$e=function(){function e(t){this.coordSysDims=[],this.axisMap=we(),this.categoryAxisMap=we(),this.coordSysName=t}return e}();function l$e(e){var t=e.get("coordinateSystem"),r=new s$e(t),n=u$e[t];if(n)return n(e,r,r.axisMap,r.categoryAxisMap),r}var u$e={cartesian2d:function(e,t,r,n){var i=e.getReferringComponents("xAxis",er).models[0],a=e.getReferringComponents("yAxis",er).models[0];t.coordSysDims=["x","y"],r.set("x",i),r.set("y",a),hh(i)&&(n.set("x",i),t.firstCategoryDimIndex=0),hh(a)&&(n.set("y",a),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},singleAxis:function(e,t,r,n){var i=e.getReferringComponents("singleAxis",er).models[0];t.coordSysDims=["single"],r.set("single",i),hh(i)&&(n.set("single",i),t.firstCategoryDimIndex=0)},polar:function(e,t,r,n){var i=e.getReferringComponents("polar",er).models[0],a=i.findAxisModel("radiusAxis"),o=i.findAxisModel("angleAxis");t.coordSysDims=["radius","angle"],r.set("radius",a),r.set("angle",o),hh(a)&&(n.set("radius",a),t.firstCategoryDimIndex=0),hh(o)&&(n.set("angle",o),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},geo:function(e,t,r,n){t.coordSysDims=["lng","lat"]},parallel:function(e,t,r,n){var i=e.ecModel,a=i.getComponent("parallel",e.get("parallelIndex")),o=t.coordSysDims=a.dimensions.slice();R(a.parallelAxisIndex,function(s,l){var u=i.getComponent("parallelAxis",s),c=o[l];r.set(c,u),hh(u)&&(n.set(c,u),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=l))})},matrix:function(e,t,r,n){var i=e.getReferringComponents("matrix",er).models[0];t.coordSysDims=["x","y"];var a=i.getDimensionModel("x"),o=i.getDimensionModel("y");r.set("x",a),r.set("y",o),n.set("x",a),n.set("y",o)}};function hh(e){return e.get("type")==="category"}function nte(e,t,r){r=r||{};var n=r.byIndex,i=r.stackedCoordDimension,a,o,s;c$e(t)?a=t:(o=t.schema,a=o.dimensions,s=t.store);var l=!!(e&&e.get("stack")),u,c,f,h;if(R(a,function(_,b){ge(_)&&(a[b]=_={name:_}),l&&!_.isExtraCoord&&(!n&&!u&&_.ordinalMeta&&(u=_),!c&&_.type!=="ordinal"&&_.type!=="time"&&(!i||i===_.coordDim)&&(c=_))}),c&&!n&&!u&&(n=!0),c){f="__\0ecstackresult_"+e.id,h="__\0ecstackedover_"+e.id,u&&(u.createInvertedIndices=!0);var d=c.coordDim,v=c.type,m=0;R(a,function(_){_.coordDim===d&&m++});var y={name:f,coordDim:d,coordDimIndex:m,type:v,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:a.length},x={name:h,coordDim:h,coordDimIndex:m+1,type:v,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:a.length+1};o?(s&&(y.storeDimIndex=s.ensureCalculationDimension(h,v),x.storeDimIndex=s.ensureCalculationDimension(f,v)),o.appendCalculationDimension(y),o.appendCalculationDimension(x)):(a.push(y),a.push(x))}return{stackedDimension:c&&c.name,stackedByDimension:u&&u.name,isStackedByIndex:n,stackedOverDimension:h,stackResultDimension:f}}function c$e(e){return!Qee(e.schema)}function Zs(e,t){return!!t&&t===e.getCalculationInfo("stackedDimension")}function Ej(e,t){return Zs(e,t)?e.getCalculationInfo("stackResultDimension"):t}function f$e(e,t){var r=e.get("coordinateSystem"),n=Uv.get(r),i;return t&&t.coordSysDims&&(i=se(t.coordSysDims,function(a){var o={name:a},s=t.axisMap.get(a);if(s){var l=s.get("type");o.type=Ew(l)}return o})),i||(i=n&&(n.getDimensionsInfo?n.getDimensionsInfo():n.dimensions.slice())||["x","y"]),i}function h$e(e,t,r){var n,i;return r&&R(e,function(a,o){var s=a.coordDim,l=r.categoryAxisMap.get(s);l&&(n==null&&(n=o),a.ordinalMeta=l.getOrdinalMeta(),t&&(a.createInvertedIndices=!0)),a.otherDims.itemName!=null&&(i=!0)}),!i&&n!=null&&(e[n].otherDims.itemName=0),n}function Jo(e,t,r){r=r||{};var n=t.getSourceManager(),i,a=!1;e?(a=!0,i=gj(e)):(i=n.getSource(),a=i.sourceFormat===Ni);var o=l$e(t),s=f$e(t,o),l=r.useEncodeDefaulter,u=Ae(l)?l:l?Fe(FQ,s,t):null,c={coordDimensions:s,generateCoord:r.generateCoord,encodeDefine:t.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!a},f=qv(i,c),h=h$e(f.dimensions,r.createInvertedIndices,o),d=a?null:n.getSharedDataStore(f),v=nte(t,{schema:f,store:d}),m=new Dn(f,t);m.setCalculationInfo(v);var y=h!=null&&d$e(i)?function(x,_,b,S){return S===h?b:this.defaultDimValueGetter(x,_,b,S)}:null;return m.hasItemOption=!1,m.initData(a?i:d,null,y),m}function d$e(e){if(e.sourceFormat===Ni){var t=v$e(e.data||[]);return!ae(jv(t))}}function v$e(e){for(var t=0;ti&&(o=a.interval=i);var s=a.intervalPrecision=ky(o),l=a.niceTickExtent=[gr(Math.ceil(e[0]/o)*o,s),gr(Math.floor(e[1]/o)*o,s)];return g$e(l,e),a}function J2(e){var t=Math.pow(10,NT(e)),r=e/t;return r?r===2?r=3:r===3?r=5:r*=2:r=1,gr(r*t)}function ky(e){return za(e)+2}function HG(e,t,r){e[t]=Math.max(Math.min(e[t],r[1]),r[0])}function g$e(e,t){!isFinite(e[0])&&(e[0]=t[0]),!isFinite(e[1])&&(e[1]=t[1]),HG(e,0,t),HG(e,1,t),e[0]>e[1]&&(e[0]=e[1])}function Oj(e,t){return e>=t[0]&&e<=t[1]}var m$e=function(){function e(){this.normalize=UG,this.scale=ZG}return e.prototype.updateMethods=function(t){t.hasBreaks()?(this.normalize=me(t.normalize,t),this.scale=me(t.scale,t)):(this.normalize=UG,this.scale=ZG)},e}();function UG(e,t){return t[1]===t[0]?.5:(e-t[0])/(t[1]-t[0])}function ZG(e,t){return e*(t[1]-t[0])+t[0]}function eE(e,t,r){var n=Math.log(e);return[Math.log(r?t[0]:Math.max(0,t[0]))/n,Math.log(r?t[1]:Math.max(0,t[1]))/n]}var ku=function(){function e(t){this._calculator=new m$e,this._setting=t||{},this._extent=[1/0,-1/0];var r=Tr();r&&(this._brkCtx=r.createScaleBreakContext(),this._brkCtx.update(this._extent))}return e.prototype.getSetting=function(t){return this._setting[t]},e.prototype._innerUnionExtent=function(t){var r=this._extent;this._innerSetExtent(t[0]r[1]?t[1]:r[1])},e.prototype.unionExtentFromData=function(t,r){this._innerUnionExtent(t.getApproximateExtent(r))},e.prototype.getExtent=function(){return this._extent.slice()},e.prototype.setExtent=function(t,r){this._innerSetExtent(t,r)},e.prototype._innerSetExtent=function(t,r){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(r)||(n[1]=r),this._brkCtx&&this._brkCtx.update(n)},e.prototype.setBreaksFromOption=function(t){var r=Tr();r&&this._innerSetBreak(r.parseAxisBreakOption(t,me(this.parse,this)))},e.prototype._innerSetBreak=function(t){this._brkCtx&&(this._brkCtx.setBreaks(t),this._calculator.updateMethods(this._brkCtx),this._brkCtx.update(this._extent))},e.prototype._innerGetBreaks=function(){return this._brkCtx?this._brkCtx.breaks:[]},e.prototype.hasBreaks=function(){return this._brkCtx?this._brkCtx.hasBreaks():!1},e.prototype._getExtentSpanWithBreaks=function(){return this._brkCtx&&this._brkCtx.hasBreaks()?this._brkCtx.getExtentSpan():this._extent[1]-this._extent[0]},e.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},e.prototype.isBlank=function(){return this._isBlank},e.prototype.setBlank=function(t){this._isBlank=t},e}();jT(ku);var y$e=0,Ly=function(){function e(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++y$e,this._onCollect=t.onCollect}return e.createByAxisModel=function(t){var r=t.option,n=r.data,i=n&&se(n,x$e);return new e({categories:i,needCollect:!i,deduplication:r.dedplication!==!1})},e.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},e.prototype.parseAndCollect=function(t){var r,n=this._needCollect;if(!ge(t)&&!n)return t;if(n&&!this._deduplication)return r=this.categories.length,this.categories[r]=t,this._onCollect&&this._onCollect(t,r),r;var i=this._getOrCreateMap();return r=i.get(t),r==null&&(n?(r=this.categories.length,this.categories[r]=t,i.set(t,r),this._onCollect&&this._onCollect(t,r)):r=NaN),r},e.prototype._getOrCreateMap=function(){return this._map||(this._map=we(this.categories))},e}();function x$e(e){return Le(e)&&e.value!=null?e.value:e+""}var nv=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;n.type="ordinal";var i=n.getSetting("ordinalMeta");return i||(i=new Ly({})),ae(i)&&(i=new Ly({categories:se(i,function(a){return Le(a)?a.value:a})})),n._ordinalMeta=i,n._extent=n.getSetting("extent")||[0,i.categories.length-1],n}return t.prototype.parse=function(r){return r==null?NaN:ge(r)?this._ordinalMeta.getOrdinal(r):Math.round(r)},t.prototype.contain=function(r){return Oj(r,this._extent)&&r>=0&&r=0&&r=0&&r=r},t.prototype.getOrdinalMeta=function(){return this._ordinalMeta},t.prototype.calcNiceTicks=function(){},t.prototype.calcNiceExtent=function(){},t.type="ordinal",t}(ku);ku.registerClass(nv);var cl=gr,Ys=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="interval",r._interval=0,r._intervalPrecision=2,r}return t.prototype.parse=function(r){return r==null||r===""?NaN:Number(r)},t.prototype.contain=function(r){return Oj(r,this._extent)},t.prototype.normalize=function(r){return this._calculator.normalize(r,this._extent)},t.prototype.scale=function(r){return this._calculator.scale(r,this._extent)},t.prototype.getInterval=function(){return this._interval},t.prototype.setInterval=function(r){this._interval=r,this._niceExtent=this._extent.slice(),this._intervalPrecision=ky(r)},t.prototype.getTicks=function(r){r=r||{};var n=this._interval,i=this._extent,a=this._niceExtent,o=this._intervalPrecision,s=Tr(),l=[];if(!n)return l;if(r.breakTicks==="only_break"&&s)return s.addBreaksToTicks(l,this._brkCtx.breaks,this._extent),l;var u=1e4;i[0]=0&&(f=cl(f+h*n,o))}if(l.length>0&&f===l[l.length-1].value)break;if(l.length>u)return[]}var d=l.length?l[l.length-1].value:a[1];return i[1]>d&&(r.expandToNicedExtent?l.push({value:cl(d+n,o)}):l.push({value:i[1]})),s&&s.pruneTicksByBreak(r.pruneByBreak,l,this._brkCtx.breaks,function(v){return v.value},this._interval,this._extent),r.breakTicks!=="none"&&s&&s.addBreaksToTicks(l,this._brkCtx.breaks,this._extent),l},t.prototype.getMinorTicks=function(r){for(var n=this.getTicks({expandToNicedExtent:!0}),i=[],a=this.getExtent(),o=1;oa[0]&&v0&&(a=a===null?s:Math.min(a,s))}r[n]=a}}return r}function ste(e){var t=w$e(e),r=[];return R(e,function(n){var i=n.coordinateSystem,a=i.getBaseAxis(),o=a.getExtent(),s;if(a.type==="category")s=a.getBandWidth();else if(a.type==="value"||a.type==="time"){var l=a.dim+"_"+a.index,u=t[l],c=Math.abs(o[1]-o[0]),f=a.scale.getExtent(),h=Math.abs(f[1]-f[0]);s=u?c/h*u:c}else{var d=n.getData();s=Math.abs(o[1]-o[0])/d.count()}var v=pe(n.get("barWidth"),s),m=pe(n.get("barMaxWidth"),s),y=pe(n.get("barMinWidth")||(hte(n)?.5:1),s),x=n.get("barGap"),_=n.get("barCategoryGap"),b=n.get("defaultBarGap");r.push({bandWidth:s,barWidth:v,barMaxWidth:m,barMinWidth:y,barGap:x,barCategoryGap:_,defaultBarGap:b,axisKey:Dj(a),stackId:ate(n)})}),lte(r)}function lte(e){var t={};R(e,function(n,i){var a=n.axisKey,o=n.bandWidth,s=t[a]||{bandWidth:o,remainedWidth:o,autoWidthCount:0,categoryGap:null,gap:n.defaultBarGap||0,stacks:{}},l=s.stacks;t[a]=s;var u=n.stackId;l[u]||s.autoWidthCount++,l[u]=l[u]||{width:0,maxWidth:0};var c=n.barWidth;c&&!l[u].width&&(l[u].width=c,c=Math.min(s.remainedWidth,c),s.remainedWidth-=c);var f=n.barMaxWidth;f&&(l[u].maxWidth=f);var h=n.barMinWidth;h&&(l[u].minWidth=h);var d=n.barGap;d!=null&&(s.gap=d);var v=n.barCategoryGap;v!=null&&(s.categoryGap=v)});var r={};return R(t,function(n,i){r[i]={};var a=n.stacks,o=n.bandWidth,s=n.categoryGap;if(s==null){var l=it(a).length;s=Math.max(35-l*4,15)+"%"}var u=pe(s,o),c=pe(n.gap,1),f=n.remainedWidth,h=n.autoWidthCount,d=(f-u)/(h+(h-1)*c);d=Math.max(d,0),R(a,function(x){var _=x.maxWidth,b=x.minWidth;if(x.width){var S=x.width;_&&(S=Math.min(S,_)),b&&(S=Math.max(S,b)),x.width=S,f-=S+c*S,h--}else{var S=d;_&&_S&&(S=b),S!==d&&(x.width=S,f-=S+c*S,h--)}}),d=(f-u)/(h+(h-1)*c),d=Math.max(d,0);var v=0,m;R(a,function(x,_){x.width||(x.width=d),m=x,v+=x.width*(1+c)}),m&&(v-=m.width*c);var y=-v/2;R(a,function(x,_){r[i][_]=r[i][_]||{bandWidth:o,offset:y,width:x.width},y+=x.width*(1+c)})}),r}function S$e(e,t,r){if(e&&t){var n=e[Dj(t)];return n}}function ute(e,t){var r=ote(e,t),n=ste(r);R(r,function(i){var a=i.getData(),o=i.coordinateSystem,s=o.getBaseAxis(),l=ate(i),u=n[Dj(s)][l],c=u.offset,f=u.width;a.setLayout({bandWidth:u.bandWidth,offset:c,size:f})})}function cte(e){return{seriesType:e,plan:Zv(),reset:function(t){if(fte(t)){var r=t.getData(),n=t.coordinateSystem,i=n.getBaseAxis(),a=n.getOtherAxis(i),o=r.getDimensionIndex(r.mapDimension(a.dim)),s=r.getDimensionIndex(r.mapDimension(i.dim)),l=t.get("showBackground",!0),u=r.mapDimension(a.dim),c=r.getCalculationInfo("stackResultDimension"),f=Zs(r,u)&&!!r.getCalculationInfo("stackedOnSeries"),h=a.isHorizontal(),d=T$e(i,a),v=hte(t),m=t.get("barMinHeight")||0,y=c&&r.getDimensionIndex(c),x=r.getLayout("size"),_=r.getLayout("offset");return{progress:function(b,S){for(var T=b.count,C=v&&Mo(T*3),A=v&&l&&Mo(T*3),P=v&&Mo(T),I=n.master.getRect(),k=h?I.width:I.height,O,D=S.getStore(),N=0;(O=b.next())!=null;){var z=D.get(f?y:o,O),V=D.get(s,O),F=d,$=void 0;f&&($=+z-D.get(o,O));var B=void 0,Z=void 0,W=void 0,G=void 0;if(h){var Y=n.dataToPoint([z,V]);if(f){var K=n.dataToPoint([$,V]);F=K[0]}B=F,Z=Y[1]+_,W=Y[0]-F,G=x,Math.abs(W)0?r:1:r))}var C$e=function(e,t,r,n){for(;r>>1;e[i][1]i&&(this._approxInterval=i);var o=s_.length,s=Math.min(C$e(s_,this._approxInterval,0,o),o-1);this._interval=s_[s][1],this._intervalPrecision=ky(this._interval),this._minLevelUnit=s_[Math.max(s-1,0)][0]},t.prototype.parse=function(r){return ot(r)?r:+qo(r)},t.prototype.contain=function(r){return Oj(r,this._extent)},t.prototype.normalize=function(r){return this._calculator.normalize(r,this._extent)},t.prototype.scale=function(r){return this._calculator.scale(r,this._extent)},t.type="time",t}(Ys),s_=[["second",QN],["minute",ej],["hour",em],["quarter-day",em*6],["half-day",em*12],["day",ta*1.2],["half-week",ta*3.5],["week",ta*7],["month",ta*31],["quarter",ta*95],["half-year",RV/2],["year",RV]];function dte(e,t,r,n){return bw(new Date(t),e,n).getTime()===bw(new Date(r),e,n).getTime()}function A$e(e,t){return e/=ta,e>16?16:e>7.5?7:e>3.5?4:e>1.5?2:1}function M$e(e){var t=30*ta;return e/=t,e>6?6:e>3?3:e>2?2:1}function P$e(e){return e/=em,e>12?12:e>6?6:e>3.5?4:e>2?2:1}function YG(e,t){return e/=t?ej:QN,e>30?30:e>20?20:e>15?15:e>10?10:e>5?5:e>2?2:1}function k$e(e){return PN(e,!0)}function L$e(e,t,r){var n=Math.max(0,We(xi,t)-1);return bw(new Date(e),xi[n],r).getTime()}function I$e(e,t){var r=new Date(0);r[e](1);var n=r.getTime();r[e](1+t);var i=r.getTime()-n;return function(a,o){return Math.max(0,Math.round((o-a)/i))}}function E$e(e,t,r,n,i,a){var o=1e4,s=W5e,l=0;function u(N,z,V,F,$,B,Z){for(var W=I$e($,N),G=z,Y=new Date(G);Go));)if(Y[$](Y[F]()+N),G=Y.getTime(),a){var K=a.calcNiceTickMultiple(G,W);K>0&&(Y[$](Y[F]()+K*N),G=Y.getTime())}Z.push({value:G,notAdd:!0})}function c(N,z,V){var F=[],$=!z.length;if(!dte(tm(N),n[0],n[1],r)){$&&(z=[{value:L$e(n[0],N,r)},{value:n[1]}]);for(var B=0;B=n[0]&&Z<=n[1]&&u(G,Z,W,Y,K,ee,F),N==="year"&&V.length>1&&B===0&&V.unshift({value:V[0].value-G})}}for(var B=0;B=n[0]&&S<=n[1]&&d++)}var T=i/t;if(d>T*1.5&&v>T/1.5||(f.push(_),d>T||e===s[m]))break}h=[]}}}for(var C=ht(se(f,function(N){return ht(N,function(z){return z.value>=n[0]&&z.value<=n[1]&&!z.notAdd})}),function(N){return N.length>0}),A=[],P=C.length-1,m=0;m0;)a*=10;var s=[rE(D$e(n[0]/a)*a),rE(O$e(n[1]/a)*a)];this._interval=a,this._intervalPrecision=ky(a),this._niceExtent=s}},t.prototype.calcNiceExtent=function(r){e.prototype.calcNiceExtent.call(this,r),this._fixMin=r.fixMin,this._fixMax=r.fixMax},t.prototype.contain=function(r){return r=u_(r)/u_(this.base),e.prototype.contain.call(this,r)},t.prototype.normalize=function(r){return r=u_(r)/u_(this.base),e.prototype.normalize.call(this,r)},t.prototype.scale=function(r){return r=e.prototype.scale.call(this,r),l_(this.base,r)},t.prototype.setBreaksFromOption=function(r){var n=Tr();if(n){var i=n.logarithmicParseBreaksFromOption(r,this.base,me(this.parse,this)),a=i.parsedOriginal,o=i.parsedLogged;this._originalScale._innerSetBreak(a),this._innerSetBreak(o)}},t.type="log",t}(Ys);function c_(e,t){return rE(e,za(t))}ku.registerClass(vte);var N$e=function(){function e(t,r,n){this._prepareParams(t,r,n)}return e.prototype._prepareParams=function(t,r,n){n[1]0&&l>0&&!u&&(s=0),s<0&&l<0&&!c&&(l=0));var h=this._determinedMin,d=this._determinedMax;return h!=null&&(s=h,u=!0),d!=null&&(l=d,c=!0),{min:s,max:l,minFixed:u,maxFixed:c,isBlank:f}},e.prototype.modifyDataMinMax=function(t,r){this[R$e[t]]=r},e.prototype.setDeterminedMinMax=function(t,r){var n=j$e[t];this[n]=r},e.prototype.freeze=function(){this.frozen=!0},e}(),j$e={min:"_determinedMin",max:"_determinedMax"},R$e={min:"_dataMin",max:"_dataMax"};function pte(e,t,r){var n=e.rawExtentInfo;return n||(n=new N$e(e,t,r),e.rawExtentInfo=n,n)}function f_(e,t){return t==null?null:mn(t)?NaN:e.parse(t)}function gte(e,t){var r=e.type,n=pte(e,t,e.getExtent()).calculate();e.setBlank(n.isBlank);var i=n.min,a=n.max,o=t.ecModel;if(o&&r==="time"){var s=ote("bar",o),l=!1;if(R(s,function(f){l=l||f.getBaseAxis()===t.axis}),l){var u=ste(s),c=B$e(i,a,t,u);i=c.min,a=c.max}}return{extent:[i,a],fixMin:n.minFixed,fixMax:n.maxFixed}}function B$e(e,t,r,n){var i=r.axis.getExtent(),a=Math.abs(i[1]-i[0]),o=S$e(n,r.axis);if(o===void 0)return{min:e,max:t};var s=1/0;R(o,function(d){s=Math.min(d.offset,s)});var l=-1/0;R(o,function(d){l=Math.max(d.offset+d.width,l)}),s=Math.abs(s),l=Math.abs(l);var u=s+l,c=t-e,f=1-(s+l)/a,h=c/f-c;return t+=h*(l/u),e-=h*(s/u),{min:e,max:t}}function gf(e,t){var r=t,n=gte(e,r),i=n.extent,a=r.get("splitNumber");e instanceof vte&&(e.base=r.get("logBase"));var o=e.type,s=r.get("interval"),l=o==="interval"||o==="time";e.setBreaksFromOption(yte(r)),e.setExtent(i[0],i[1]),e.calcNiceExtent({splitNumber:a,fixMin:n.fixMin,fixMax:n.fixMax,minInterval:l?r.get("minInterval"):null,maxInterval:l?r.get("maxInterval"):null}),s!=null&&e.setInterval&&e.setInterval(s)}function b0(e,t){if(t=t||e.get("type"),t)switch(t){case"category":return new nv({ordinalMeta:e.getOrdinalMeta?e.getOrdinalMeta():e.getCategories(),extent:[1/0,-1/0]});case"time":return new Nj({locale:e.ecModel.getLocaleModel(),useUTC:e.ecModel.get("useUTC")});default:return new(ku.getClass(t)||Ys)}}function z$e(e){var t=e.scale.getExtent(),r=t[0],n=t[1];return!(r>0&&n>0||r<0&&n<0)}function Kv(e){var t=e.getLabelModel().get("formatter");if(e.type==="time"){var r=H5e(t);return function(i,a){return e.scale.getFormattedLabel(i,a,r)}}else{if(ge(t))return function(i){var a=e.scale.getLabel(i),o=t.replace("{value}",a??"");return o};if(Ae(t)){if(e.type==="category")return function(i,a){return t(Ow(e,i),i.value-e.scale.getExtent()[0],null)};var n=Tr();return function(i,a){var o=null;return n&&(o=n.makeAxisLabelFormatterParamBreak(o,i.break)),t(Ow(e,i),a,o)}}else return function(i){return e.scale.getLabel(i)}}}function Ow(e,t){return e.type==="category"?e.scale.getLabel(t):t.value}function jj(e){var t=e.get("interval");return t??"auto"}function mte(e){return e.type==="category"&&jj(e.getLabelModel())===0}function Dw(e,t){var r={};return R(e.mapDimensionsAll(t),function(n){r[Ej(e,n)]=!0}),it(r)}function $$e(e,t,r){t&&R(Dw(t,r),function(n){var i=t.getApproximateExtent(n);i[0]e[1]&&(e[1]=i[1])})}function iv(e){return e==="middle"||e==="center"}function Iy(e){return e.getShallow("show")}function yte(e){var t=e.get("breaks",!0);if(t!=null)return!Tr()||!F$e(e.axis)?void 0:t}function F$e(e){return(e.dim==="x"||e.dim==="y"||e.dim==="z"||e.dim==="single")&&e.type!=="category"}var Jv=function(){function e(){}return e.prototype.getNeedCrossZero=function(){var t=this.option;return!t.scale},e.prototype.getCoordSysModel=function(){},e}();function V$e(e){return Jo(null,e)}var G$e={isDimensionStacked:Zs,enableDataStack:nte,getStackedDimension:Ej};function W$e(e,t){var r=t;t instanceof et||(r=new et(t));var n=b0(r);return n.setExtent(e[0],e[1]),gf(n,r),n}function H$e(e){cr(e,Jv)}function U$e(e,t){return t=t||{},Pt(e,null,null,t.state!=="normal")}const Z$e=Object.freeze(Object.defineProperty({__proto__:null,createDimensions:n$e,createList:V$e,createScale:W$e,createSymbol:xr,createTextStyle:U$e,dataStack:G$e,enableHoverEmphasis:Jl,getECData:je,getLayoutRect:zt,mixinAxisModelCommonMethods:H$e},Symbol.toStringTag,{value:"Module"}));var Y$e=1e-8;function XG(e,t){return Math.abs(e-t)i&&(n=o,i=l)}if(n)return q$e(n.exterior);var u=this.getBoundingRect();return[u.x+u.width/2,u.y+u.height/2]},t.prototype.getBoundingRect=function(r){var n=this._rect;if(n&&!r)return n;var i=[1/0,1/0],a=[-1/0,-1/0],o=this.geometries;return R(o,function(s){s.type==="polygon"?qG(s.exterior,i,a,r):R(s.points,function(l){qG(l,i,a,r)})}),isFinite(i[0])&&isFinite(i[1])&&isFinite(a[0])&&isFinite(a[1])||(i[0]=i[1]=a[0]=a[1]=0),n=new Oe(i[0],i[1],a[0]-i[0],a[1]-i[1]),r||(this._rect=n),n},t.prototype.contain=function(r){var n=this.getBoundingRect(),i=this.geometries;if(!n.contain(r[0],r[1]))return!1;e:for(var a=0,o=i.length;a>1^-(s&1),l=l>>1^-(l&1),s+=i,l+=a,i=s,a=l,n.push([s/r,l/r])}return n}function nE(e,t){return e=J$e(e),se(ht(e.features,function(r){return r.geometry&&r.properties&&r.geometry.coordinates.length>0}),function(r){var n=r.properties,i=r.geometry,a=[];switch(i.type){case"Polygon":var o=i.coordinates;a.push(new KG(o[0],o.slice(1)));break;case"MultiPolygon":R(i.coordinates,function(l){l[0]&&a.push(new KG(l[0],l.slice(1)))});break;case"LineString":a.push(new JG([i.coordinates]));break;case"MultiLineString":a.push(new JG(i.coordinates))}var s=new _te(n[t||"name"],a,n.cp);return s.properties=n,s})}const Q$e=Object.freeze(Object.defineProperty({__proto__:null,MAX_SAFE_INTEGER:mI,asc:Ai,getPercentWithPrecision:yRe,getPixelPrecision:AN,getPrecision:za,getPrecisionSafe:mJ,isNumeric:kN,isRadianAroundZero:Kd,linearMap:gt,nice:PN,numericToNumber:Go,parseDate:qo,parsePercent:pe,quantile:ub,quantity:xJ,quantityExponent:NT,reformIntervals:yI,remRadian:MN,round:gr},Symbol.toStringTag,{value:"Module"})),eFe=Object.freeze(Object.defineProperty({__proto__:null,format:y0,parse:qo,roundTime:bw},Symbol.toStringTag,{value:"Module"})),tFe=Object.freeze(Object.defineProperty({__proto__:null,Arc:p0,BezierCurve:$v,BoundingRect:Oe,Circle:Ko,CompoundPath:g0,Ellipse:v0,Group:Pe,Image:Xr,IncrementalDisplayable:aQ,Line:mr,LinearGradient:kf,Polygon:wn,Polyline:on,RadialGradient:VN,Rect:Xe,Ring:zv,Sector:bn,Text:at,clipPointsByRect:UN,clipRectByRect:cQ,createIcon:Vv,extendPath:lQ,extendShape:sQ,getShapeClass:wy,getTransform:Ql,initProps:Nt,makeImage:WN,makePath:Qd,mergePath:Si,registerShape:_a,resizePath:HN,updateProps:lt},Symbol.toStringTag,{value:"Module"})),rFe=Object.freeze(Object.defineProperty({__proto__:null,addCommas:sj,capitalFirst:eBe,encodeHTML:En,formatTime:Q5e,formatTpl:uj,getTextRect:K5e,getTooltipMarker:MQ,normalizeCssArray:Hv,toCamelCase:lj,truncateText:KRe},Symbol.toStringTag,{value:"Module"})),nFe=Object.freeze(Object.defineProperty({__proto__:null,bind:me,clone:Me,curry:Fe,defaults:ke,each:R,extend:ne,filter:ht,indexOf:We,inherits:yN,isArray:ae,isFunction:Ae,isObject:Le,isString:ge,map:se,merge:He,reduce:da},Symbol.toStringTag,{value:"Module"}));var iFe=Je(),nm=Je(),Ja={estimate:1,determine:2};function Nw(e){return{out:{noPxChangeTryDetermine:[]},kind:e}}function wte(e,t){var r=se(t,function(n){return e.scale.parse(n)});return e.type==="time"&&r.length>0&&(r.sort(),r.unshift(r[0]),r.push(r[r.length-1])),r}function aFe(e,t){var r=e.getLabelModel().get("customValues");if(r){var n=Kv(e),i=e.scale.getExtent(),a=wte(e,r),o=ht(a,function(s){return s>=i[0]&&s<=i[1]});return{labels:se(o,function(s){var l={value:s};return{formattedLabel:n(l),rawLabel:e.scale.getLabel(l),tickValue:s,time:void 0,break:void 0}})}}return e.type==="category"?sFe(e,t):uFe(e)}function oFe(e,t,r){var n=e.getTickModel().get("customValues");if(n){var i=e.scale.getExtent(),a=wte(e,n);return{ticks:ht(a,function(o){return o>=i[0]&&o<=i[1]})}}return e.type==="category"?lFe(e,t):{ticks:se(e.scale.getTicks(r),function(o){return o.value})}}function sFe(e,t){var r=e.getLabelModel(),n=Ste(e,r,t);return!r.get("show")||e.scale.isBlank()?{labels:[]}:n}function Ste(e,t,r){var n=fFe(e),i=jj(t),a=r.kind===Ja.estimate;if(!a){var o=Cte(n,i);if(o)return o}var s,l;Ae(i)?s=Pte(e,i):(l=i==="auto"?hFe(e,r):i,s=Mte(e,l));var u={labels:s,labelCategoryInterval:l};return a?r.out.noPxChangeTryDetermine.push(function(){return iE(n,i,u),!0}):iE(n,i,u),u}function lFe(e,t){var r=cFe(e),n=jj(t),i=Cte(r,n);if(i)return i;var a,o;if((!t.get("show")||e.scale.isBlank())&&(a=[]),Ae(n))a=Pte(e,n,!0);else if(n==="auto"){var s=Ste(e,e.getLabelModel(),Nw(Ja.determine));o=s.labelCategoryInterval,a=se(s.labels,function(l){return l.tickValue})}else o=n,a=Mte(e,o,!0);return iE(r,n,{ticks:a,tickCategoryInterval:o})}function uFe(e){var t=e.scale.getTicks(),r=Kv(e);return{labels:se(t,function(n,i){return{formattedLabel:r(n,i),rawLabel:e.scale.getLabel(n),tickValue:n.value,time:n.time,break:n.break}})}}var cFe=Tte("axisTick"),fFe=Tte("axisLabel");function Tte(e){return function(r){return nm(r)[e]||(nm(r)[e]={list:[]})}}function Cte(e,t){for(var r=0;rc&&(u=Math.max(1,Math.floor(l/c)));for(var f=s[0],h=e.dataToCoord(f+1)-e.dataToCoord(f),d=Math.abs(h*Math.cos(a)),v=Math.abs(h*Math.sin(a)),m=0,y=0;f<=s[1];f+=u){var x=0,_=0,b=OT(i({value:f}),n.font,"center","top");x=b.width*1.3,_=b.height*1.3,m=Math.max(m,x,7),y=Math.max(y,_,7)}var S=m/d,T=y/v;isNaN(S)&&(S=1/0),isNaN(T)&&(T=1/0);var C=Math.max(0,Math.floor(Math.min(S,T)));if(r===Ja.estimate)return t.out.noPxChangeTryDetermine.push(me(vFe,null,e,C,l)),C;var A=Ate(e,C,l);return A??C}function vFe(e,t,r){return Ate(e,t,r)==null}function Ate(e,t,r){var n=iFe(e.model),i=e.getExtent(),a=n.lastAutoInterval,o=n.lastTickCount;if(a!=null&&o!=null&&Math.abs(a-t)<=1&&Math.abs(o-r)<=1&&a>t&&n.axisExtent0===i[0]&&n.axisExtent1===i[1])return a;n.lastTickCount=r,n.lastAutoInterval=t,n.axisExtent0=i[0],n.axisExtent1=i[1]}function pFe(e){var t=e.getLabelModel();return{axisRotate:e.getRotate?e.getRotate():e.isHorizontal&&!e.isHorizontal()?90:0,labelRotate:t.get("rotate")||0,font:t.getFont()}}function Mte(e,t,r){var n=Kv(e),i=e.scale,a=i.getExtent(),o=e.getLabelModel(),s=[],l=Math.max((t||0)+1,1),u=a[0],c=i.count();u!==0&&l>1&&c/l>2&&(u=Math.round(Math.ceil(u/l)*l));var f=mte(e),h=o.get("showMinLabel")||f,d=o.get("showMaxLabel")||f;h&&u!==a[0]&&m(a[0]);for(var v=u;v<=a[1];v+=l)m(v);d&&v-l!==a[1]&&m(a[1]);function m(y){var x={value:y};s.push(r?y:{formattedLabel:n(x),rawLabel:i.getLabel(x),tickValue:y,time:void 0,break:void 0})}return s}function Pte(e,t,r){var n=e.scale,i=Kv(e),a=[];return R(n.getTicks(),function(o){var s=n.getLabel(o),l=o.value;t(o.value,s)&&a.push(r?l:{formattedLabel:i(o),rawLabel:s,tickValue:l,time:void 0,break:void 0})}),a}var QG=[0,1],ba=function(){function e(t,r,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=r,this._extent=n||[0,0]}return e.prototype.contain=function(t){var r=this._extent,n=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]);return t>=n&&t<=i},e.prototype.containData=function(t){return this.scale.contain(this.scale.parse(t))},e.prototype.getExtent=function(){return this._extent.slice()},e.prototype.getPixelPrecision=function(t){return AN(t||this.scale.getExtent(),this._extent)},e.prototype.setExtent=function(t,r){var n=this._extent;n[0]=t,n[1]=r},e.prototype.dataToCoord=function(t,r){var n=this._extent,i=this.scale;return t=i.normalize(i.parse(t)),this.onBand&&i.type==="ordinal"&&(n=n.slice(),e6(n,i.count())),gt(t,QG,n,r)},e.prototype.coordToData=function(t,r){var n=this._extent,i=this.scale;this.onBand&&i.type==="ordinal"&&(n=n.slice(),e6(n,i.count()));var a=gt(t,n,QG,r);return this.scale.scale(a)},e.prototype.pointToData=function(t,r){},e.prototype.getTicksCoords=function(t){t=t||{};var r=t.tickModel||this.getTickModel(),n=oFe(this,r,{breakTicks:t.breakTicks,pruneByBreak:t.pruneByBreak}),i=n.ticks,a=se(i,function(s){return{coord:this.dataToCoord(this.scale.type==="ordinal"?this.scale.getRawOrdinalNumber(s):s),tickValue:s}},this),o=r.get("alignWithLabel");return gFe(this,a,o,t.clamp),a},e.prototype.getMinorTicksCoords=function(){if(this.scale.type==="ordinal")return[];var t=this.model.getModel("minorTick"),r=t.get("splitNumber");r>0&&r<100||(r=5);var n=this.scale.getMinorTicks(r),i=se(n,function(a){return se(a,function(o){return{coord:this.dataToCoord(o),tickValue:o}},this)},this);return i},e.prototype.getViewLabels=function(t){return t=t||Nw(Ja.determine),aFe(this,t).labels},e.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},e.prototype.getTickModel=function(){return this.model.getModel("axisTick")},e.prototype.getBandWidth=function(){var t=this._extent,r=this.scale.getExtent(),n=r[1]-r[0]+(this.onBand?1:0);n===0&&(n=1);var i=Math.abs(t[1]-t[0]);return Math.abs(i)/n},e.prototype.calculateCategoryInterval=function(t){return t=t||Nw(Ja.determine),dFe(this,t)},e}();function e6(e,t){var r=e[1]-e[0],n=t,i=r/n/2;e[0]+=i,e[1]-=i}function gFe(e,t,r,n){var i=t.length;if(!e.onBand||r||!i)return;var a=e.getExtent(),o,s;if(i===1)t[0].coord=a[0],t[0].onBand=!0,o=t[1]={coord:a[1],tickValue:t[0].tickValue,onBand:!0};else{var l=t[i-1].tickValue-t[0].tickValue,u=(t[i-1].coord-t[0].coord)/l;R(t,function(d){d.coord-=u/2,d.onBand=!0});var c=e.scale.getExtent();s=1+c[1]-t[i-1].tickValue,o={coord:t[i-1].coord+u*s,tickValue:c[1]+1,onBand:!0},t.push(o)}var f=a[0]>a[1];h(t[0].coord,a[0])&&(n?t[0].coord=a[0]:t.shift()),n&&h(a[0],t[0].coord)&&t.unshift({coord:a[0],onBand:!0}),h(a[1],o.coord)&&(n?o.coord=a[1]:t.pop()),n&&h(o.coord,a[1])&&t.push({coord:a[1],onBand:!0});function h(d,v){return d=gr(d),v=gr(v),f?d>v:di&&(i+=Yp);var d=Math.atan2(s,o);if(d<0&&(d+=Yp),d>=n&&d<=i||d+Yp>=n&&d+Yp<=i)return l[0]=c,l[1]=f,u-r;var v=r*Math.cos(n)+e,m=r*Math.sin(n)+t,y=r*Math.cos(i)+e,x=r*Math.sin(i)+t,_=(v-o)*(v-o)+(m-s)*(m-s),b=(y-o)*(y-o)+(x-s)*(x-s);return _0){t=t/180*Math.PI,$a.fromArray(e[0]),Ot.fromArray(e[1]),dr.fromArray(e[2]),Ee.sub(Po,$a,Ot),Ee.sub(wo,dr,Ot);var r=Po.len(),n=wo.len();if(!(r<.001||n<.001)){Po.scale(1/r),wo.scale(1/n);var i=Po.dot(wo),a=Math.cos(t);if(a1&&Ee.copy(Vn,dr),Vn.toArray(e[1])}}}}function AFe(e,t,r){if(r<=180&&r>0){r=r/180*Math.PI,$a.fromArray(e[0]),Ot.fromArray(e[1]),dr.fromArray(e[2]),Ee.sub(Po,Ot,$a),Ee.sub(wo,dr,Ot);var n=Po.len(),i=wo.len();if(!(n<.001||i<.001)){Po.scale(1/n),wo.scale(1/i);var a=Po.dot(t),o=Math.cos(r);if(a=l)Ee.copy(Vn,dr);else{Vn.scaleAndAdd(wo,s/Math.tan(Math.PI/2-c));var f=dr.x!==Ot.x?(Vn.x-Ot.x)/(dr.x-Ot.x):(Vn.y-Ot.y)/(dr.y-Ot.y);if(isNaN(f))return;f<0?Ee.copy(Vn,Ot):f>1&&Ee.copy(Vn,dr)}Vn.toArray(e[1])}}}}function tM(e,t,r,n){var i=r==="normal",a=i?e:e.ensureState(r);a.ignore=t;var o=n.get("smooth");o&&o===!0&&(o=.3),a.shape=a.shape||{},o>0&&(a.shape.smooth=o);var s=n.getModel("lineStyle").getLineStyle();i?e.useStyle(s):a.style=s}function MFe(e,t){var r=t.smooth,n=t.points;if(n)if(e.moveTo(n[0][0],n[0][1]),r>0&&n.length>=3){var i=xs(n[0],n[1]),a=xs(n[1],n[2]);if(!i||!a){e.lineTo(n[1][0],n[1][1]),e.lineTo(n[2][0],n[2][1]);return}var o=Math.min(i,a)*r,s=Zg([],n[1],n[0],o/i),l=Zg([],n[1],n[2],o/a),u=Zg([],s,l,.5);e.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),e.bezierCurveTo(l[0],l[1],l[0],l[1],n[2][0],n[2][1])}else for(var c=1;c0){S(k*I,0,a);var O=k+A;O<0&&T(-O*I,1)}else T(-A*I,1)}}function S(A,P,I){A!==0&&(c=!0);for(var k=P;k0)for(var O=0;O0;O--){var V=I[O-1]*z;S(-V,O,a)}}}function C(A){var P=A<0?-1:1;A=Math.abs(A);for(var I=Math.ceil(A/(a-1)),k=0;k0?S(I,0,k+1):S(-I,a-k-1,a),A-=I,A<=0)return}return c}function LFe(e){for(var t=0;t=0&&n.attr(a.oldLayoutSelect),We(h,"emphasis")>=0&&n.attr(a.oldLayoutEmphasis)),lt(n,u,r,l)}else if(n.attr(u),!Gv(n).valueAnimation){var f=Se(n.style.opacity,1);n.style.opacity=0,Nt(n,{style:{opacity:f}},r,l)}if(a.oldLayout=u,n.states.select){var d=a.oldLayoutSelect={};h_(d,u,d_),h_(d,n.states.select,d_)}if(n.states.emphasis){var v=a.oldLayoutEmphasis={};h_(v,u,d_),h_(v,n.states.emphasis,d_)}gQ(n,l,c,r,r)}if(i&&!i.ignore&&!i.invisible){var a=OFe(i),o=a.oldLayout,m={points:i.shape.points};o?(i.attr({shape:o}),lt(i,{shape:m},r)):(i.setShape(m),i.style.strokePercent=0,Nt(i,{style:{strokePercent:1}},r)),a.oldLayout=m}},e}(),iM=Je();function NFe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){var i=iM(r).labelManager;i||(i=iM(r).labelManager=new DFe),i.clearLabels()}),e.registerUpdateLifecycle("series:layoutlabels",function(t,r,n){var i=iM(r).labelManager;n.updatedSeries.forEach(function(a){i.addLabelsOfSeries(r.getViewOfSeriesModel(a))}),i.updateLayoutConfig(r),i.layout(r),i.processLabelsOverall()})}var aM=Math.sin,oM=Math.cos,Nte=Math.PI,ac=Math.PI*2,jFe=180/Nte,jte=function(){function e(){}return e.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},e.prototype.moveTo=function(t,r){this._add("M",t,r)},e.prototype.lineTo=function(t,r){this._add("L",t,r)},e.prototype.bezierCurveTo=function(t,r,n,i,a,o){this._add("C",t,r,n,i,a,o)},e.prototype.quadraticCurveTo=function(t,r,n,i){this._add("Q",t,r,n,i)},e.prototype.arc=function(t,r,n,i,a,o){this.ellipse(t,r,n,n,0,i,a,o)},e.prototype.ellipse=function(t,r,n,i,a,o,s,l){var u=s-o,c=!l,f=Math.abs(u),h=Nl(f-ac)||(c?u>=ac:-u>=ac),d=u>0?u%ac:u%ac+ac,v=!1;h?v=!0:Nl(f)?v=!1:v=d>=Nte==!!c;var m=t+n*oM(o),y=r+i*aM(o);this._start&&this._add("M",m,y);var x=Math.round(a*jFe);if(h){var _=1/this._p,b=(c?1:-1)*(ac-_);this._add("A",n,i,x,1,+c,t+n*oM(o+b),r+i*aM(o+b)),_>.01&&this._add("A",n,i,x,0,+c,m,y)}else{var S=t+n*oM(s),T=r+i*aM(s);this._add("A",n,i,x,+v,+c,S,T)}},e.prototype.rect=function(t,r,n,i){this._add("M",t,r),this._add("l",n,0),this._add("l",0,i),this._add("l",-n,0),this._add("Z")},e.prototype.closePath=function(){this._d.length>0&&this._add("Z")},e.prototype._add=function(t,r,n,i,a,o,s,l,u){for(var c=[],f=this._p,h=1;h"}function HFe(e){return""}function $j(e,t){t=t||{};var r=t.newline?` +`:"";function n(i){var a=i.children,o=i.tag,s=i.attrs,l=i.text;return WFe(o,s)+(o!=="style"?En(l):l||"")+(a?""+r+se(a,function(u){return n(u)}).join(r)+r:"")+HFe(o)}return n(e)}function UFe(e,t,r){r=r||{};var n=r.newline?` +`:"",i=" {"+n,a=n+"}",o=se(it(e),function(l){return l+i+se(it(e[l]),function(u){return u+":"+e[l][u]+";"}).join(n)+a}).join(n),s=se(it(t),function(l){return"@keyframes "+l+i+se(it(t[l]),function(u){return u+i+se(it(t[l][u]),function(c){var f=t[l][u][c];return c==="d"&&(f='path("'+f+'")'),c+":"+f+";"}).join(n)+a}).join(n)+a}).join(n);return!o&&!s?"":[""].join(n)}function uE(e){return{zrId:e,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssStyleCache:{},cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function o6(e,t,r,n){return Wr("svg","root",{width:e,height:t,xmlns:Rte,"xmlns:xlink":Bte,version:"1.1",baseProfile:"full",viewBox:n?"0 0 "+e+" "+t:!1},r)}var ZFe=0;function $te(){return ZFe++}var s6={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},dc="transform-origin";function YFe(e,t,r){var n=ne({},e.shape);ne(n,t),e.buildPath(r,n);var i=new jte;return i.reset(oJ(e)),r.rebuildPath(i,1),i.generateStr(),i.getStr()}function XFe(e,t){var r=t.originX,n=t.originY;(r||n)&&(e[dc]=r+"px "+n+"px")}var qFe={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function Fte(e,t){var r=t.zrId+"-ani-"+t.cssAnimIdx++;return t.cssAnims[r]=e,r}function KFe(e,t,r){var n=e.shape.paths,i={},a,o;if(R(n,function(l){var u=uE(r.zrId);u.animation=!0,tC(l,{},u,!0);var c=u.cssAnims,f=u.cssNodes,h=it(c),d=h.length;if(d){o=h[d-1];var v=c[o];for(var m in v){var y=v[m];i[m]=i[m]||{d:""},i[m].d+=y.d||""}for(var x in f){var _=f[x].animation;_.indexOf(o)>=0&&(a=_)}}}),!!a){t.d=!1;var s=Fte(i,r);return a.replace(o,s)}}function l6(e){return ge(e)?s6[e]?"cubic-bezier("+s6[e]+")":wN(e)?e:"":""}function tC(e,t,r,n){var i=e.animators,a=i.length,o=[];if(e instanceof g0){var s=KFe(e,t,r);if(s)o.push(s);else if(!a)return}else if(!a)return;for(var l={},u=0;u0}).length){var Ne=Fte(A,r);return Ne+" "+_[0]+" both"}}for(var y in l){var s=m(l[y]);s&&o.push(s)}if(o.length){var x=r.zrId+"-cls-"+$te();r.cssNodes["."+x]={animation:o.join(",")},t.class=x}}function JFe(e,t,r){if(!e.ignore)if(e.isSilent()){var n={"pointer-events":"none"};u6(n,t,r)}else{var i=e.states.emphasis&&e.states.emphasis.style?e.states.emphasis.style:{},a=i.fill;if(!a){var o=e.style&&e.style.fill,s=e.states.select&&e.states.select.style&&e.states.select.style.fill,l=e.currentStates.indexOf("select")>=0&&s||o;l&&(a=uw(l))}var u=i.lineWidth;if(u){var c=!i.strokeNoScale&&e.transform?e.transform[0]:1;u=u/c}var n={cursor:"pointer"};a&&(n.fill=a),i.stroke&&(n.stroke=i.stroke),u&&(n["stroke-width"]=u),u6(n,t,r)}}function u6(e,t,r,n){var i=JSON.stringify(e),a=r.cssStyleCache[i];a||(a=r.zrId+"-cls-"+$te(),r.cssStyleCache[i]=a,r.cssNodes["."+a+":hover"]=e),t.class=t.class?t.class+" "+a:a}var Ey=Math.round;function Vte(e){return e&&ge(e.src)}function Gte(e){return e&&Ae(e.toDataURL)}function Fj(e,t,r,n){FFe(function(i,a){var o=i==="fill"||i==="stroke";o&&aJ(a)?Hte(t,e,i,n):o&&TN(a)?Ute(r,e,i,n):e[i]=a,o&&n.ssr&&a==="none"&&(e["pointer-events"]="visible")},t,r,!1),aVe(r,e,n)}function Vj(e,t){var r=vJ(t);r&&(r.each(function(n,i){n!=null&&(e[(a6+i).toLowerCase()]=n+"")}),t.isSilent()&&(e[a6+"silent"]="true"))}function c6(e){return Nl(e[0]-1)&&Nl(e[1])&&Nl(e[2])&&Nl(e[3]-1)}function QFe(e){return Nl(e[4])&&Nl(e[5])}function Gj(e,t,r){if(t&&!(QFe(t)&&c6(t))){var n=1e4;e.transform=c6(t)?"translate("+Ey(t[4]*n)/n+" "+Ey(t[5]*n)/n+")":Dje(t)}}function f6(e,t,r){for(var n=e.points,i=[],a=0;a"u"){var y="Image width/height must been given explictly in svg-ssr renderer.";_n(h,y),_n(d,y)}else if(h==null||d==null){var x=function(k,O){if(k){var D=k.elm,N=h||O.width,z=d||O.height;k.tag==="pattern"&&(u?(z=1,N/=a.width):c&&(N=1,z/=a.height)),k.attrs.width=N,k.attrs.height=z,D&&(D.setAttribute("width",N),D.setAttribute("height",z))}},_=ON(v,null,e,function(k){l||x(C,k),x(f,k)});_&&_.width&&_.height&&(h=h||_.width,d=d||_.height)}f=Wr("image","img",{href:v,width:h,height:d}),o.width=h,o.height=d}else i.svgElement&&(f=Me(i.svgElement),o.width=i.svgWidth,o.height=i.svgHeight);if(f){var b,S;l?b=S=1:u?(S=1,b=o.width/a.width):c?(b=1,S=o.height/a.height):o.patternUnits="userSpaceOnUse",b!=null&&!isNaN(b)&&(o.width=b),S!=null&&!isNaN(S)&&(o.height=S);var T=sJ(i);T&&(o.patternTransform=T);var C=Wr("pattern","",o,[f]),A=$j(C),P=n.patternCache,I=P[A];I||(I=n.zrId+"-p"+n.patternIdx++,P[A]=I,o.id=I,C=n.defs[I]=Wr("pattern",I,o,[f])),t[r]=ET(I)}}function oVe(e,t,r){var n=r.clipPathCache,i=r.defs,a=n[e.id];if(!a){a=r.zrId+"-c"+r.clipPathIdx++;var o={id:a};n[e.id]=a,i[a]=Wr("clipPath",a,o,[Wte(e,r)])}t["clip-path"]=ET(a)}function v6(e){return document.createTextNode(e)}function _c(e,t,r){e.insertBefore(t,r)}function p6(e,t){e.removeChild(t)}function g6(e,t){e.appendChild(t)}function Zte(e){return e.parentNode}function Yte(e){return e.nextSibling}function sM(e,t){e.textContent=t}var m6=58,sVe=120,lVe=Wr("","");function cE(e){return e===void 0}function yo(e){return e!==void 0}function uVe(e,t,r){for(var n={},i=t;i<=r;++i){var a=e[i].key;a!==void 0&&(n[a]=i)}return n}function Tg(e,t){var r=e.key===t.key,n=e.tag===t.tag;return n&&r}function Oy(e){var t,r=e.children,n=e.tag;if(yo(n)){var i=e.elm=zte(n);if(Wj(lVe,e),ae(r))for(t=0;ta?(v=r[l+1]==null?null:r[l+1].elm,Xte(e,v,r,i,l)):$w(e,t,n,a))}function Mh(e,t){var r=t.elm=e.elm,n=e.children,i=t.children;e!==t&&(Wj(e,t),cE(t.text)?yo(n)&&yo(i)?n!==i&&cVe(r,n,i):yo(i)?(yo(e.text)&&sM(r,""),Xte(r,null,i,0,i.length-1)):yo(n)?$w(r,n,0,n.length-1):yo(e.text)&&sM(r,""):e.text!==t.text&&(yo(n)&&$w(r,n,0,n.length-1),sM(r,t.text)))}function fVe(e,t){if(Tg(e,t))Mh(e,t);else{var r=e.elm,n=Zte(r);Oy(t),n!==null&&(_c(n,t.elm,Yte(r)),$w(n,[e],0,0))}return t}var hVe=0,dVe=function(){function e(t,r,n){if(this.type="svg",this.refreshHover=y6(),this.configLayer=y6(),this.storage=r,this._opts=n=ne({},n),this.root=t,this._id="zr"+hVe++,this._oldVNode=o6(n.width,n.height),t&&!n.ssr){var i=this._viewport=document.createElement("div");i.style.cssText="position:relative;overflow:hidden";var a=this._svgDom=this._oldVNode.elm=zte("svg");Wj(null,this._oldVNode),i.appendChild(a),t.appendChild(i)}this.resize(n.width,n.height)}return e.prototype.getType=function(){return this.type},e.prototype.getViewportRoot=function(){return this._viewport},e.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},e.prototype.getSvgDom=function(){return this._svgDom},e.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",fVe(this._oldVNode,t),this._oldVNode=t}},e.prototype.renderOneToVNode=function(t){return d6(t,uE(this._id))},e.prototype.renderToVNode=function(t){t=t||{};var r=this.storage.getDisplayList(!0),n=this._width,i=this._height,a=uE(this._id);a.animation=t.animation,a.willUpdate=t.willUpdate,a.compress=t.compress,a.emphasis=t.emphasis,a.ssr=this._opts.ssr;var o=[],s=this._bgVNode=vVe(n,i,this._backgroundColor,a);s&&o.push(s);var l=t.compress?null:this._mainVNode=Wr("g","main",{},[]);this._paintList(r,a,l?l.children:o),l&&o.push(l);var u=se(it(a.defs),function(h){return a.defs[h]});if(u.length&&o.push(Wr("defs","defs",{},u)),t.animation){var c=UFe(a.cssNodes,a.cssAnims,{newline:!0});if(c){var f=Wr("style","stl",{},[],c);o.push(f)}}return o6(n,i,o,t.useViewBox)},e.prototype.renderToString=function(t){return t=t||{},$j(this.renderToVNode({animation:Se(t.cssAnimation,!0),emphasis:Se(t.cssEmphasis,!0),willUpdate:!1,compress:!0,useViewBox:Se(t.useViewBox,!0)}),{newline:!0})},e.prototype.setBackgroundColor=function(t){this._backgroundColor=t},e.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},e.prototype._paintList=function(t,r,n){for(var i=t.length,a=[],o=0,s,l,u=0,c=0;c=0&&!(h&&l&&h[m]===l[m]);m--);for(var y=v-1;y>m;y--)o--,s=a[o-1];for(var x=m+1;x=s)}}for(var f=this.__startIndex;f15)break}}z.prevElClipPaths&&x.restore()};if(_)if(_.length===0)P=y.__endIndex;else for(var k=d.dpr,O=0;O<_.length;++O){var D=_[O];x.save(),x.beginPath(),x.rect(D.x*k,D.y*k,D.width*k,D.height*k),x.clip(),I(D),x.restore()}else x.save(),I(),x.restore();y.__drawIndex=P,y.__drawIndex0&&t>i[0]){for(l=0;lt);l++);s=n[i[l]]}if(i.splice(l+1,0,t),n[t]=r,!r.virtual)if(s){var u=s.dom;u.nextSibling?o.insertBefore(r.dom,u.nextSibling):o.appendChild(r.dom)}else o.firstChild?o.insertBefore(r.dom,o.firstChild):o.appendChild(r.dom);r.painter||(r.painter=this)}},e.prototype.eachLayer=function(t,r){for(var n=this._zlevelList,i=0;i0?v_:0),this._needsManuallyCompositing),c.__builtin__||MT("ZLevel "+u+" has been used by unkown layer "+c.id),c!==a&&(c.__used=!0,c.__startIndex!==l&&(c.__dirty=!0),c.__startIndex=l,c.incremental?c.__drawIndex=-1:c.__drawIndex=l,r(l),a=c),i.__dirty&wi&&!i.__inHover&&(c.__dirty=!0,c.incremental&&c.__drawIndex<0&&(c.__drawIndex=l))}r(l),this.eachBuiltinLayer(function(f,h){!f.__used&&f.getElementCount()>0&&(f.__dirty=!0,f.__startIndex=f.__endIndex=f.__drawIndex=0),f.__dirty&&f.__drawIndex<0&&(f.__drawIndex=f.__startIndex)})},e.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},e.prototype._clearLayer=function(t){t.clear()},e.prototype.setBackgroundColor=function(t){this._backgroundColor=t,R(this._layers,function(r){r.setUnpainted()})},e.prototype.configLayer=function(t,r){if(r){var n=this._layerConfig;n[t]?He(n[t],r,!0):n[t]=r;for(var i=0;i-1&&(u.style.stroke=u.style.fill,u.style.fill=J.color.neutral00,u.style.lineWidth=2),n},t.type="series.line",t.dependencies=["grid","polar"],t.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:6,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},t}(Ct);function av(e,t){var r=e.mapDimensionsAll("defaultedLabel"),n=r.length;if(n===1){var i=tv(e,t,r[0]);return i!=null?i+"":null}else if(n){for(var a=[],o=0;o=0&&n.push(t[a])}return n.join(" ")}var w0=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;return o.updateData(r,n,i,a),o}return t.prototype._createSymbol=function(r,n,i,a,o,s){this.removeAll();var l=xr(r,-1,-1,2,2,null,s);l.attr({z2:Se(o,100),culling:!0,scaleX:a[0]/2,scaleY:a[1]/2}),l.drift=wVe,this._symbolType=r,this.add(l)},t.prototype.stopSymbolAnimation=function(r){this.childAt(0).stopAnimation(null,r)},t.prototype.getSymbolType=function(){return this._symbolType},t.prototype.getSymbolPath=function(){return this.childAt(0)},t.prototype.highlight=function(){Ws(this.childAt(0))},t.prototype.downplay=function(){Hs(this.childAt(0))},t.prototype.setZ=function(r,n){var i=this.childAt(0);i.zlevel=r,i.z=n},t.prototype.setDraggable=function(r,n){var i=this.childAt(0);i.draggable=r,i.cursor=!n&&r?"move":i.cursor},t.prototype.updateData=function(r,n,i,a){this.silent=!1;var o=r.getItemVisual(n,"symbol")||"circle",s=r.hostModel,l=t.getSymbolSize(r,n),u=t.getSymbolZ2(r,n),c=o!==this._symbolType,f=a&&a.disableAnimation;if(c){var h=r.getItemVisual(n,"symbolKeepAspect");this._createSymbol(o,r,n,l,u,h)}else{var d=this.childAt(0);d.silent=!1;var v={scaleX:l[0]/2,scaleY:l[1]/2};f?d.attr(v):lt(d,v,s,n),ga(d)}if(this._updateCommon(r,n,l,i,a),c){var d=this.childAt(0);if(!f){var v={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:d.style.opacity}};d.scaleX=d.scaleY=0,d.style.opacity=0,Nt(d,v,s,n)}}f&&this.childAt(0).stopAnimation("leave")},t.prototype._updateCommon=function(r,n,i,a,o){var s=this.childAt(0),l=r.hostModel,u,c,f,h,d,v,m,y,x;if(a&&(u=a.emphasisItemStyle,c=a.blurItemStyle,f=a.selectItemStyle,h=a.focus,d=a.blurScope,m=a.labelStatesModels,y=a.hoverScale,x=a.cursorStyle,v=a.emphasisDisabled),!a||r.hasItemOption){var _=a&&a.itemModel?a.itemModel:r.getItemModel(n),b=_.getModel("emphasis");u=b.getModel("itemStyle").getItemStyle(),f=_.getModel(["select","itemStyle"]).getItemStyle(),c=_.getModel(["blur","itemStyle"]).getItemStyle(),h=b.get("focus"),d=b.get("blurScope"),v=b.get("disabled"),m=jr(_),y=b.getShallow("scale"),x=_.getShallow("cursor")}var S=r.getItemVisual(n,"symbolRotate");s.attr("rotation",(S||0)*Math.PI/180||0);var T=Of(r.getItemVisual(n,"symbolOffset"),i);T&&(s.x=T[0],s.y=T[1]),x&&s.attr("cursor",x);var C=r.getItemVisual(n,"style"),A=C.fill;if(s instanceof Xr){var P=s.style;s.useStyle(ne({image:P.image,x:P.x,y:P.y,width:P.width,height:P.height},C))}else s.__isEmptyBrush?s.useStyle(ne({},C)):s.useStyle(C),s.style.decal=null,s.setColor(A,o&&o.symbolInnerColor),s.style.strokeNoScale=!0;var I=r.getItemVisual(n,"liftZ"),k=this._z2;I!=null?k==null&&(this._z2=s.z2,s.z2+=I):k!=null&&(s.z2=k,this._z2=null);var O=o&&o.useNameLabel;Zr(s,m,{labelFetcher:l,labelDataIndex:n,defaultText:D,inheritColor:A,defaultOpacity:C.opacity});function D(V){return O?r.getName(V):av(r,V)}this._sizeX=i[0]/2,this._sizeY=i[1]/2;var N=s.ensureState("emphasis");N.style=u,s.ensureState("select").style=f,s.ensureState("blur").style=c;var z=y==null||y===!0?Math.max(1.1,3/this._sizeY):isFinite(y)&&y>0?+y:1;N.scaleX=this._sizeX*z,N.scaleY=this._sizeY*z,this.setSymbolScale(1),Gt(this,h,d,v)},t.prototype.setSymbolScale=function(r){this.scaleX=this.scaleY=r},t.prototype.fadeOut=function(r,n,i){var a=this.childAt(0),o=je(this).dataIndex,s=i&&i.animation;if(this.silent=a.silent=!0,i&&i.fadeLabel){var l=a.getTextContent();l&&cu(l,{style:{opacity:0}},n,{dataIndex:o,removeOpt:s,cb:function(){a.removeTextContent()}})}else a.removeTextContent();cu(a,{style:{opacity:0},scaleX:0,scaleY:0},n,{dataIndex:o,cb:r,removeOpt:s})},t.getSymbolSize=function(r,n){return Xv(r.getItemVisual(n,"symbolSize"))},t.getSymbolZ2=function(r,n){return r.getItemVisual(n,"z2")},t}(Pe);function wVe(e,t){this.parent.drift(e,t)}function uM(e,t,r,n){return t&&!isNaN(t[0])&&!isNaN(t[1])&&!(n.isIgnore&&n.isIgnore(r))&&!(n.clipShape&&!n.clipShape.contain(t[0],t[1]))&&e.getItemVisual(r,"symbol")!=="none"}function b6(e){return e!=null&&!Le(e)&&(e={isIgnore:e}),e||{}}function w6(e){var t=e.hostModel,r=t.getModel("emphasis");return{emphasisItemStyle:r.getModel("itemStyle").getItemStyle(),blurItemStyle:t.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:t.getModel(["select","itemStyle"]).getItemStyle(),focus:r.get("focus"),blurScope:r.get("blurScope"),emphasisDisabled:r.get("disabled"),hoverScale:r.get("scale"),labelStatesModels:jr(t),cursorStyle:t.get("cursor")}}var S0=function(){function e(t){this.group=new Pe,this._SymbolCtor=t||w0}return e.prototype.updateData=function(t,r){this._progressiveEls=null,r=b6(r);var n=this.group,i=t.hostModel,a=this._data,o=this._SymbolCtor,s=r.disableAnimation,l=w6(t),u={disableAnimation:s},c=r.getSymbolPoint||function(f){return t.getItemLayout(f)};a||n.removeAll(),t.diff(a).add(function(f){var h=c(f);if(uM(t,h,f,r)){var d=new o(t,f,l,u);d.setPosition(h),t.setItemGraphicEl(f,d),n.add(d)}}).update(function(f,h){var d=a.getItemGraphicEl(h),v=c(f);if(!uM(t,v,f,r)){n.remove(d);return}var m=t.getItemVisual(f,"symbol")||"circle",y=d&&d.getSymbolType&&d.getSymbolType();if(!d||y&&y!==m)n.remove(d),d=new o(t,f,l,u),d.setPosition(v);else{d.updateData(t,f,l,u);var x={x:v[0],y:v[1]};s?d.attr(x):lt(d,x,i)}n.add(d),t.setItemGraphicEl(f,d)}).remove(function(f){var h=a.getItemGraphicEl(f);h&&h.fadeOut(function(){n.remove(h)},i)}).execute(),this._getSymbolPoint=c,this._data=t},e.prototype.updateLayout=function(){var t=this,r=this._data;r&&r.eachItemGraphicEl(function(n,i){var a=t._getSymbolPoint(i);n.setPosition(a),n.markRedraw()})},e.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=w6(t),this._data=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r,n){this._progressiveEls=[],n=b6(n);function i(l){l.isGroup||(l.incremental=!0,l.ensureState("emphasis").hoverLayer=!0)}for(var a=t.start;a0?r=n[0]:n[1]<0&&(r=n[1]),r}function Jte(e,t,r,n){var i=NaN;e.stacked&&(i=r.get(r.getCalculationInfo("stackedOverDimension"),n)),isNaN(i)&&(i=e.valueStart);var a=e.baseDataOffset,o=[];return o[a]=r.get(e.baseDim,n),o[1-a]=i,t.dataToPoint(o)}function TVe(e,t){var r=[];return t.diff(e).add(function(n){r.push({cmd:"+",idx:n})}).update(function(n,i){r.push({cmd:"=",idx:i,idx1:n})}).remove(function(n){r.push({cmd:"-",idx:n})}).execute(),r}function CVe(e,t,r,n,i,a,o,s){for(var l=TVe(e,t),u=[],c=[],f=[],h=[],d=[],v=[],m=[],y=Kte(i,t,o),x=e.getLayout("points")||[],_=t.getLayout("points")||[],b=0;b=i||m<0)break;if(Yc(x,_)){if(l){m+=a;continue}break}if(m===r)e[a>0?"moveTo":"lineTo"](x,_),f=x,h=_;else{var b=x-u,S=_-c;if(b*b+S*S<.5){m+=a;continue}if(o>0){for(var T=m+a,C=t[T*2],A=t[T*2+1];C===x&&A===_&&y=n||Yc(C,A))d=x,v=_;else{k=C-u,O=A-c;var z=x-u,V=C-x,F=_-c,$=A-_,B=void 0,Z=void 0;if(s==="x"){B=Math.abs(z),Z=Math.abs(V);var W=k>0?1:-1;d=x-W*B*o,v=_,D=x+W*Z*o,N=_}else if(s==="y"){B=Math.abs(F),Z=Math.abs($);var G=O>0?1:-1;d=x,v=_-G*B*o,D=x,N=_+G*Z*o}else B=Math.sqrt(z*z+F*F),Z=Math.sqrt(V*V+$*$),I=Z/(Z+B),d=x-k*o*(1-I),v=_-O*o*(1-I),D=x+k*o*I,N=_+O*o*I,D=fl(D,hl(C,x)),N=fl(N,hl(A,_)),D=hl(D,fl(C,x)),N=hl(N,fl(A,_)),k=D-x,O=N-_,d=x-k*B/Z,v=_-O*B/Z,d=fl(d,hl(u,x)),v=fl(v,hl(c,_)),d=hl(d,fl(u,x)),v=hl(v,fl(c,_)),k=x-d,O=_-v,D=x+k*Z/B,N=_+O*Z/B}e.bezierCurveTo(f,h,d,v,x,_),f=D,h=N}else e.lineTo(x,_)}u=x,c=_,m+=a}return y}var Qte=function(){function e(){this.smooth=0,this.smoothConstraint=!0}return e}(),AVe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="ec-polyline",n}return t.prototype.getDefaultStyle=function(){return{stroke:J.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new Qte},t.prototype.buildPath=function(r,n){var i=n.points,a=0,o=i.length/2;if(n.connectNulls){for(;o>0&&Yc(i[o*2-2],i[o*2-1]);o--);for(;a=0){var S=u?(v-l)*b+l:(d-s)*b+s;return u?[r,S]:[S,r]}s=d,l=v;break;case o.C:d=a[f++],v=a[f++],m=a[f++],y=a[f++],x=a[f++],_=a[f++];var T=u?sw(s,d,m,x,r,c):sw(l,v,y,_,r,c);if(T>0)for(var C=0;C=0){var S=u?Fr(l,v,y,_,A):Fr(s,d,m,x,A);return u?[r,S]:[S,r]}}s=x,l=_;break}}},t}(tt),MVe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(Qte),ere=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="ec-polygon",n}return t.prototype.getDefaultShape=function(){return new MVe},t.prototype.buildPath=function(r,n){var i=n.points,a=n.stackedOnPoints,o=0,s=i.length/2,l=n.smoothMonotone;if(n.connectNulls){for(;s>0&&Yc(i[s*2-2],i[s*2-1]);s--);for(;ot){a?r.push(o(a,l,t)):i&&r.push(o(i,l,0),o(i,l,t));break}else i&&(r.push(o(i,l,0)),i=null),r.push(l),a=l}return r}function LVe(e,t,r){var n=e.getVisual("visualMeta");if(!(!n||!n.length||!e.count())&&t.type==="cartesian2d"){for(var i,a,o=n.length-1;o>=0;o--){var s=e.getDimensionInfo(n[o].dimension);if(i=s&&s.coordDim,i==="x"||i==="y"){a=n[o];break}}if(a){var l=t.getAxis(i),u=se(a.stops,function(b){return{coord:l.toGlobalCoord(l.dataToCoord(b.value)),color:b.color}}),c=u.length,f=a.outerColors.slice();c&&u[0].coord>u[c-1].coord&&(u.reverse(),f.reverse());var h=kVe(u,i==="x"?r.getWidth():r.getHeight()),d=h.length;if(!d&&c)return u[0].coord<0?f[1]?f[1]:u[c-1].color:f[0]?f[0]:u[0].color;var v=10,m=h[0].coord-v,y=h[d-1].coord+v,x=y-m;if(x<.001)return"transparent";R(h,function(b){b.offset=(b.coord-m)/x}),h.push({offset:d?h[d-1].offset:.5,color:f[1]||"transparent"}),h.unshift({offset:d?h[0].offset:.5,color:f[0]||"transparent"});var _=new kf(0,0,0,0,h,!0);return _[i]=m,_[i+"2"]=y,_}}}function IVe(e,t,r){var n=e.get("showAllSymbol"),i=n==="auto";if(!(n&&!i)){var a=r.getAxesByScale("ordinal")[0];if(a&&!(i&&EVe(a,t))){var o=t.mapDimension(a.dim),s={};return R(a.getViewLabels(),function(l){var u=a.scale.getRawOrdinalNumber(l.tickValue);s[u]=1}),function(l){return!s.hasOwnProperty(t.get(o,l))}}}}function EVe(e,t){var r=e.getExtent(),n=Math.abs(r[1]-r[0])/e.scale.count();isNaN(n)&&(n=0);for(var i=t.count(),a=Math.max(1,Math.round(i/5)),o=0;on)return!1;return!0}function OVe(e,t){return isNaN(e)||isNaN(t)}function DVe(e){for(var t=e.length/2;t>0&&OVe(e[t*2-2],e[t*2-1]);t--);return t-1}function M6(e,t){return[e[t*2],e[t*2+1]]}function NVe(e,t,r){for(var n=e.length/2,i=r==="x"?0:1,a,o,s=0,l=-1,u=0;u=t||a>=t&&o<=t){l=u;break}s=u,a=o}return{range:[s,l],t:(t-a)/(o-a)}}function nre(e){if(e.get(["endLabel","show"]))return!0;for(var t=0;t0&&r.get(["emphasis","lineStyle","width"])==="bolder"){var Z=v.getState("emphasis").style;Z.lineWidth=+v.style.lineWidth+1}je(v).seriesIndex=r.seriesIndex,Gt(v,F,$,B);var W=A6(r.get("smooth")),G=r.get("smoothMonotone");if(v.setShape({smooth:W,smoothMonotone:G,connectNulls:A}),m){var Y=s.getCalculationInfo("stackedOnSeries"),K=0;m.useStyle(ke(u.getAreaStyle(),{fill:D,opacity:.7,lineJoin:"bevel",decal:s.getVisual("style").decal})),Y&&(K=A6(Y.get("smooth"))),m.setShape({smooth:W,stackedOnSmooth:K,smoothMonotone:G,connectNulls:A}),Nr(m,r,"areaStyle"),je(m).seriesIndex=r.seriesIndex,Gt(m,F,$,B)}var ee=this._changePolyState;s.eachItemGraphicEl(function(le){le&&(le.onHoverStateChange=ee)}),this._polyline.onHoverStateChange=ee,this._data=s,this._coordSys=a,this._stackedOnPoints=T,this._points=c,this._step=k,this._valueOrigin=b,r.get("triggerLineEvent")&&(this.packEventData(r,v),m&&this.packEventData(r,m))},t.prototype.packEventData=function(r,n){je(n).eventData={componentType:"series",componentSubType:"line",componentIndex:r.componentIndex,seriesIndex:r.seriesIndex,seriesName:r.name,seriesType:"line"}},t.prototype.highlight=function(r,n,i,a){var o=r.getData(),s=cf(o,a);if(this._changePolyState("emphasis"),!(s instanceof Array)&&s!=null&&s>=0){var l=o.getLayout("points"),u=o.getItemGraphicEl(s);if(!u){var c=l[s*2],f=l[s*2+1];if(isNaN(c)||isNaN(f)||this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(c,f))return;var h=r.get("zlevel")||0,d=r.get("z")||0;u=new w0(o,s),u.x=c,u.y=f,u.setZ(h,d);var v=u.getSymbolPath().getTextContent();v&&(v.zlevel=h,v.z=d,v.z2=this._polyline.z2+1),u.__temp=!0,o.setItemGraphicEl(s,u),u.stopSymbolAnimation(!0),this.group.add(u)}u.highlight()}else bt.prototype.highlight.call(this,r,n,i,a)},t.prototype.downplay=function(r,n,i,a){var o=r.getData(),s=cf(o,a);if(this._changePolyState("normal"),s!=null&&s>=0){var l=o.getItemGraphicEl(s);l&&(l.__temp?(o.setItemGraphicEl(s,null),this.group.remove(l)):l.downplay())}else bt.prototype.downplay.call(this,r,n,i,a)},t.prototype._changePolyState=function(r){var n=this._polygon;yw(this._polyline,r),n&&yw(n,r)},t.prototype._newPolyline=function(r){var n=this._polyline;return n&&this._lineGroup.remove(n),n=new AVe({shape:{points:r},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(n),this._polyline=n,n},t.prototype._newPolygon=function(r,n){var i=this._polygon;return i&&this._lineGroup.remove(i),i=new ere({shape:{points:r,stackedOnPoints:n},segmentIgnoreThreshold:2}),this._lineGroup.add(i),this._polygon=i,i},t.prototype._initSymbolLabelAnimation=function(r,n,i){var a,o,s=n.getBaseAxis(),l=s.inverse;n.type==="cartesian2d"?(a=s.isHorizontal(),o=!1):n.type==="polar"&&(a=s.dim==="angle",o=!0);var u=r.hostModel,c=u.get("animationDuration");Ae(c)&&(c=c(null));var f=u.get("animationDelay")||0,h=Ae(f)?f(null):f;r.eachItemGraphicEl(function(d,v){var m=d;if(m){var y=[d.x,d.y],x=void 0,_=void 0,b=void 0;if(i)if(o){var S=i,T=n.pointToCoord(y);a?(x=S.startAngle,_=S.endAngle,b=-T[1]/180*Math.PI):(x=S.r0,_=S.r,b=T[0])}else{var C=i;a?(x=C.x,_=C.x+C.width,b=d.x):(x=C.y+C.height,_=C.y,b=d.y)}var A=_===x?0:(b-x)/(_-x);l&&(A=1-A);var P=Ae(f)?f(v):c*A+h,I=m.getSymbolPath(),k=I.getTextContent();m.attr({scaleX:0,scaleY:0}),m.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:P}),k&&k.animateFrom({style:{opacity:0}},{duration:300,delay:P}),I.disableLabelAnimation=!0}})},t.prototype._initOrUpdateEndLabel=function(r,n,i){var a=r.getModel("endLabel");if(nre(r)){var o=r.getData(),s=this._polyline,l=o.getLayout("points");if(!l){s.removeTextContent(),this._endLabel=null;return}var u=this._endLabel;u||(u=this._endLabel=new at({z2:200}),u.ignoreClip=!0,s.setTextContent(this._endLabel),s.disableLabelAnimation=!0);var c=DVe(l);c>=0&&(Zr(s,jr(r,"endLabel"),{inheritColor:i,labelFetcher:r,labelDataIndex:c,defaultText:function(f,h,d){return d!=null?qte(o,d):av(o,f)},enableTextSetter:!0},jVe(a,n)),s.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},t.prototype._endLabelOnDuring=function(r,n,i,a,o,s,l){var u=this._endLabel,c=this._polyline;if(u){r<1&&a.originalX==null&&(a.originalX=u.x,a.originalY=u.y);var f=i.getLayout("points"),h=i.hostModel,d=h.get("connectNulls"),v=s.get("precision"),m=s.get("distance")||0,y=l.getBaseAxis(),x=y.isHorizontal(),_=y.inverse,b=n.shape,S=_?x?b.x:b.y+b.height:x?b.x+b.width:b.y,T=(x?m:0)*(_?-1:1),C=(x?0:-m)*(_?-1:1),A=x?"x":"y",P=NVe(f,S,A),I=P.range,k=I[1]-I[0],O=void 0;if(k>=1){if(k>1&&!d){var D=M6(f,I[0]);u.attr({x:D[0]+T,y:D[1]+C}),o&&(O=h.getRawValue(I[0]))}else{var D=c.getPointOn(S,A);D&&u.attr({x:D[0]+T,y:D[1]+C});var N=h.getRawValue(I[0]),z=h.getRawValue(I[1]);o&&(O=PJ(i,v,N,z,P.t))}a.lastFrameIndex=I[0]}else{var V=r===1||a.lastFrameIndex>0?I[0]:0,D=M6(f,V);o&&(O=h.getRawValue(V)),u.attr({x:D[0]+T,y:D[1]+C})}if(o){var F=Gv(u);typeof F.setLabelText=="function"&&F.setLabelText(O)}}},t.prototype._doUpdateAnimation=function(r,n,i,a,o,s,l){var u=this._polyline,c=this._polygon,f=r.hostModel,h=CVe(this._data,r,this._stackedOnPoints,n,this._coordSys,i,this._valueOrigin),d=h.current,v=h.stackedOnCurrent,m=h.next,y=h.stackedOnNext;if(o&&(v=dl(h.stackedOnCurrent,h.current,i,o,l),d=dl(h.current,null,i,o,l),y=dl(h.stackedOnNext,h.next,i,o,l),m=dl(h.next,null,i,o,l)),C6(d,m)>3e3||c&&C6(v,y)>3e3){u.stopAnimation(),u.setShape({points:m}),c&&(c.stopAnimation(),c.setShape({points:m,stackedOnPoints:y}));return}u.shape.__points=h.current,u.shape.points=d;var x={shape:{points:m}};h.current!==d&&(x.shape.__points=h.next),u.stopAnimation(),lt(u,x,f),c&&(c.setShape({points:d,stackedOnPoints:v}),c.stopAnimation(),lt(c,{shape:{stackedOnPoints:y}},f),u.shape.points!==c.shape.points&&(c.shape.points=u.shape.points));for(var _=[],b=h.status,S=0;St&&(t=e[r]);return isFinite(t)?t:NaN},min:function(e){for(var t=1/0,r=0;r10&&o.type==="cartesian2d"&&a){var l=o.getBaseAxis(),u=o.getOtherAxis(l),c=l.getExtent(),f=n.getDevicePixelRatio(),h=Math.abs(c[1]-c[0])*(f||1),d=Math.round(s/h);if(isFinite(d)&&d>1){a==="lttb"?t.setData(i.lttbDownSample(i.mapDimension(u.dim),1/d)):a==="minmax"&&t.setData(i.minmaxDownSample(i.mapDimension(u.dim),1/d));var v=void 0;ge(a)?v=BVe[a]:Ae(a)&&(v=a),v&&t.setData(i.downSample(i.mapDimension(u.dim),1/d,v,zVe))}}}}}function $Ve(e){e.registerChartView(RVe),e.registerSeriesModel(bVe),e.registerLayout(C0("line",!0)),e.registerVisual({seriesType:"line",reset:function(t){var r=t.getData(),n=t.getModel("lineStyle").getLineStyle();n&&!n.stroke&&(n.stroke=r.getVisual("style").fill),r.setVisual("legendLineStyle",n)}}),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,ire("line"))}var Dy=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(r,n){return Jo(null,this,{useEncodeDefaulter:!0})},t.prototype.getMarkerPosition=function(r,n,i){var a=this.coordinateSystem;if(a&&a.clampData){var o=a.clampData(r),s=a.dataToPoint(o);if(i)R(a.getAxes(),function(h,d){if(h.type==="category"&&n!=null){var v=h.getTicksCoords(),m=h.getTickModel().get("alignWithLabel"),y=o[d],x=n[d]==="x1"||n[d]==="y1";if(x&&!m&&(y+=1),v.length<2)return;if(v.length===2){s[d]=h.toGlobalCoord(h.getExtent()[x?1:0]);return}for(var _=void 0,b=void 0,S=1,T=0;Ty){b=(C+_)/2;break}T===1&&(S=A-v[0].tickValue)}b==null&&(_?_&&(b=v[v.length-1].coord):b=v[0].coord),s[d]=h.toGlobalCoord(b)}});else{var l=this.getData(),u=l.getLayout("offset"),c=l.getLayout("size"),f=a.getBaseAxis().isHorizontal()?0:1;s[f]+=u+c/2}return s}return[NaN,NaN]},t.type="series.__base_bar__",t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod",defaultBarGap:"10%"},t}(Ct);Ct.registerClass(Dy);var FVe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(){return Jo(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},t.prototype.getProgressive=function(){return this.get("large")?this.get("progressive"):!1},t.prototype.getProgressiveThreshold=function(){var r=this.get("progressiveThreshold"),n=this.get("largeThreshold");return n>r&&(r=n),r},t.prototype.brushSelector=function(r,n,i){return i.rect(n.getItemLayout(r))},t.type="series.bar",t.dependencies=["grid","polar"],t.defaultOption=Mu(Dy.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:J.color.primary,borderWidth:2}},realtimeSort:!1}),t}(Dy),VVe=function(){function e(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return e}(),Fw=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="sausage",n}return t.prototype.getDefaultShape=function(){return new VVe},t.prototype.buildPath=function(r,n){var i=n.cx,a=n.cy,o=Math.max(n.r0||0,0),s=Math.max(n.r,0),l=(s-o)*.5,u=o+l,c=n.startAngle,f=n.endAngle,h=n.clockwise,d=Math.PI*2,v=h?f-cMath.PI/2&&cs)return!0;s=f}return!1},t.prototype._isOrderDifferentInView=function(r,n){for(var i=n.scale,a=i.getExtent(),o=Math.max(0,a[0]),s=Math.min(a[1],i.getOrdinalMeta().categories.length-1);o<=s;++o)if(r.ordinalNumbers[o]!==i.getRawOrdinalNumber(o))return!0},t.prototype._updateSortWithinSameData=function(r,n,i,a){if(this._isOrderChangedWithinSameData(r,n,i)){var o=this._dataSort(r,i,n);this._isOrderDifferentInView(o,i)&&(this._removeOnRenderedListener(a),a.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",axisId:i.index,sortInfo:o}))}},t.prototype._dispatchInitSort=function(r,n,i){var a=n.baseAxis,o=this._dataSort(r,a,function(s){return r.get(r.mapDimension(n.otherAxis.dim),s)});i.dispatchAction({type:"changeAxisOrder",componentType:a.dim+"Axis",isInitSort:!0,axisId:a.index,sortInfo:o})},t.prototype.remove=function(r,n){this._clear(this._model),this._removeOnRenderedListener(n)},t.prototype.dispose=function(r,n){this._removeOnRenderedListener(n)},t.prototype._removeOnRenderedListener=function(r){this._onRendered&&(r.getZr().off("rendered",this._onRendered),this._onRendered=null)},t.prototype._clear=function(r){var n=this.group,i=this._data;r&&r.isAnimationEnabled()&&i&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],i.eachItemGraphicEl(function(a){Ls(a,r,je(a).dataIndex)})):n.removeAll(),this._data=null,this._isFirstFrame=!0},t.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},t.type="bar",t}(bt),P6={cartesian2d:function(e,t){var r=t.width<0?-1:1,n=t.height<0?-1:1;r<0&&(t.x+=t.width,t.width=-t.width),n<0&&(t.y+=t.height,t.height=-t.height);var i=e.x+e.width,a=e.y+e.height,o=fM(t.x,e.x),s=hM(t.x+t.width,i),l=fM(t.y,e.y),u=hM(t.y+t.height,a),c=si?s:o,t.y=f&&l>a?u:l,t.width=c?0:s-o,t.height=f?0:u-l,r<0&&(t.x+=t.width,t.width=-t.width),n<0&&(t.y+=t.height,t.height=-t.height),c||f},polar:function(e,t){var r=t.r0<=t.r?1:-1;if(r<0){var n=t.r;t.r=t.r0,t.r0=n}var i=hM(t.r,e.r),a=fM(t.r0,e.r0);t.r=i,t.r0=a;var o=i-a<0;if(r<0){var n=t.r;t.r=t.r0,t.r0=n}return o}},k6={cartesian2d:function(e,t,r,n,i,a,o,s,l){var u=new Xe({shape:ne({},n),z2:1});if(u.__dataIndex=r,u.name="item",a){var c=u.shape,f=i?"height":"width";c[f]=0}return u},polar:function(e,t,r,n,i,a,o,s,l){var u=!i&&l?Fw:bn,c=new u({shape:n,z2:1});c.name="item";var f=are(i);if(c.calculateTextPosition=GVe(f,{isRoundCap:u===Fw}),a){var h=c.shape,d=i?"r":"endAngle",v={};h[d]=i?n.r0:n.startAngle,v[d]=n[d],(s?lt:Nt)(c,{shape:v},a)}return c}};function ZVe(e,t){var r=e.get("realtimeSort",!0),n=t.getBaseAxis();if(r&&n.type==="category"&&t.type==="cartesian2d")return{baseAxis:n,otherAxis:t.getOtherAxis(n)}}function L6(e,t,r,n,i,a,o,s){var l,u;a?(u={x:n.x,width:n.width},l={y:n.y,height:n.height}):(u={y:n.y,height:n.height},l={x:n.x,width:n.width}),s||(o?lt:Nt)(r,{shape:l},t,i,null);var c=t?e.baseAxis.model:null;(o?lt:Nt)(r,{shape:u},c,i)}function I6(e,t){for(var r=0;r0?1:-1,o=n.height>0?1:-1;return{x:n.x+a*i/2,y:n.y+o*i/2,width:n.width-a*i,height:n.height-o*i}},polar:function(e,t,r){var n=e.getItemLayout(t);return{cx:n.cx,cy:n.cy,r0:n.r0,r:n.r,startAngle:n.startAngle,endAngle:n.endAngle,clockwise:n.clockwise}}};function qVe(e){return e.startAngle!=null&&e.endAngle!=null&&e.startAngle===e.endAngle}function are(e){return function(t){var r=t?"Arc":"Angle";return function(n){switch(n){case"start":case"insideStart":case"end":case"insideEnd":return n+r;default:return n}}}(e)}function O6(e,t,r,n,i,a,o,s){var l=t.getItemVisual(r,"style");if(s){if(!a.get("roundCap")){var c=e.shape,f=ko(n.getModel("itemStyle"),c,!0);ne(c,f),e.setShape(c)}}else{var u=n.get(["itemStyle","borderRadius"])||0;e.setShape("r",u)}e.useStyle(l);var h=n.getShallow("cursor");h&&e.attr("cursor",h);var d=s?o?i.r>=i.r0?"endArc":"startArc":i.endAngle>=i.startAngle?"endAngle":"startAngle":o?i.height>=0?"bottom":"top":i.width>=0?"right":"left",v=jr(n);Zr(e,v,{labelFetcher:a,labelDataIndex:r,defaultText:av(a.getData(),r),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:d});var m=e.getTextContent();if(s&&m){var y=n.get(["label","position"]);e.textConfig.inside=y==="middle"?!0:null,WVe(e,y==="outside"?d:y,are(o),n.get(["label","rotate"]))}pQ(m,v,a.getRawValue(r),function(_){return qte(t,_)});var x=n.getModel(["emphasis"]);Gt(e,x.get("focus"),x.get("blurScope"),x.get("disabled")),Nr(e,n),qVe(i)&&(e.style.fill="none",e.style.stroke="none",R(e.states,function(_){_.style&&(_.style.fill=_.style.stroke="none")}))}function KVe(e,t){var r=e.get(["itemStyle","borderColor"]);if(!r||r==="none")return 0;var n=e.get(["itemStyle","borderWidth"])||0,i=isNaN(t.width)?Number.MAX_VALUE:Math.abs(t.width),a=isNaN(t.height)?Number.MAX_VALUE:Math.abs(t.height);return Math.min(n,i,a)}var JVe=function(){function e(){}return e}(),D6=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="largeBar",n}return t.prototype.getDefaultShape=function(){return new JVe},t.prototype.buildPath=function(r,n){for(var i=n.points,a=this.baseDimIdx,o=1-this.baseDimIdx,s=[],l=[],u=this.barWidth,c=0;c=0?r:null},30,!1);function QVe(e,t,r){for(var n=e.baseDimIdx,i=1-n,a=e.shape.points,o=e.largeDataIndices,s=[],l=[],u=e.barWidth,c=0,f=a.length/3;c=s[0]&&t<=s[0]+l[0]&&r>=s[1]&&r<=s[1]+l[1])return o[c]}return-1}function ore(e,t,r){if(fu(r,"cartesian2d")){var n=t,i=r.getArea();return{x:e?n.x:i.x,y:e?i.y:n.y,width:e?n.width:i.width,height:e?i.height:n.height}}else{var i=r.getArea(),a=t;return{cx:i.cx,cy:i.cy,r0:e?i.r0:a.r0,r:e?i.r:a.r,startAngle:e?a.startAngle:0,endAngle:e?a.endAngle:Math.PI*2}}}function eGe(e,t,r){var n=e.type==="polar"?bn:Xe;return new n({shape:ore(t,r,e),silent:!0,z2:0})}function tGe(e){e.registerChartView(UVe),e.registerSeriesModel(FVe),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,Fe(ute,"bar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,cte("bar")),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,ire("bar")),e.registerAction({type:"changeAxisOrder",event:"changeAxisOrder",update:"update"},function(t,r){var n=t.componentType||"series";r.eachComponent({mainType:n,query:t},function(i){t.sortInfo&&i.axis.setCategorySortInfo(t.sortInfo)})})}var R6=Math.PI*2,y_=Math.PI/180;function rGe(e,t,r){t.eachSeriesByType(e,function(n){var i=n.getData(),a=i.mapDimension("value"),o=OQ(n,r),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=o.viewRect,h=-n.get("startAngle")*y_,d=n.get("endAngle"),v=n.get("padAngle")*y_;d=d==="auto"?h-R6:-d*y_;var m=n.get("minAngle")*y_,y=m+v,x=0;i.each(a,function($){!isNaN($)&&x++});var _=i.getSum(a),b=Math.PI/(_||x)*2,S=n.get("clockwise"),T=n.get("roseType"),C=n.get("stillShowZeroSum"),A=i.getDataExtent(a);A[0]=0;var P=S?1:-1,I=[h,d],k=P*v/2;$T(I,!S),h=I[0],d=I[1];var O=sre(n);O.startAngle=h,O.endAngle=d,O.clockwise=S,O.cx=s,O.cy=l,O.r=u,O.r0=c;var D=Math.abs(d-h),N=D,z=0,V=h;if(i.setLayout({viewRect:f,r:u}),i.each(a,function($,B){var Z;if(isNaN($)){i.setItemLayout(B,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:S,cx:s,cy:l,r0:c,r:T?NaN:u});return}T!=="area"?Z=_===0&&C?b:$*b:Z=D/x,ZZ?(G=V+P*Z/2,Y=G):(G=V+k,Y=W-k),i.setItemLayout(B,{angle:Z,startAngle:G,endAngle:Y,clockwise:S,cx:s,cy:l,r0:c,r:T?gt($,A,[c,u]):u}),V=W}),Nr?x:y,T=Math.abs(b.label.y-r);if(T>=S.maxY){var C=b.label.x-t-b.len2*i,A=n+b.len,P=Math.abs(C)e.unconstrainedWidth?null:h:null;n.setStyle("width",d)}ure(a,n)}}}function ure(e,t){z6.rect=e,Ote(z6,t,aGe)}var aGe={minMarginForce:[null,0,null,0],marginDefault:[1,0,1,0]},z6={};function dM(e){return e.position==="center"}function oGe(e){var t=e.getData(),r=[],n,i,a=!1,o=(e.get("minShowLabelAngle")||0)*nGe,s=t.getLayout("viewRect"),l=t.getLayout("r"),u=s.width,c=s.x,f=s.y,h=s.height;function d(C){C.ignore=!0}function v(C){if(!C.ignore)return!0;for(var A in C.states)if(C.states[A].ignore===!1)return!0;return!1}t.each(function(C){var A=t.getItemGraphicEl(C),P=A.shape,I=A.getTextContent(),k=A.getTextGuideLine(),O=t.getItemModel(C),D=O.getModel("label"),N=D.get("position")||O.get(["emphasis","label","position"]),z=D.get("distanceToLabelLine"),V=D.get("alignTo"),F=pe(D.get("edgeDistance"),u),$=D.get("bleedMargin");$==null&&($=Math.min(u,h)>200?10:2);var B=O.getModel("labelLine"),Z=B.get("length");Z=pe(Z,u);var W=B.get("length2");if(W=pe(W,u),Math.abs(P.endAngle-P.startAngle)0?"right":"left":Y>0?"left":"right"}var Ge=Math.PI,Ye=0,vt=D.get("rotate");if(ot(vt))Ye=vt*(Ge/180);else if(N==="center")Ye=0;else if(vt==="radial"||vt===!0){var Ft=Y<0?-G+Ge:-G;Ye=Ft}else if(vt==="tangential"&&N!=="outside"&&N!=="outer"){var rr=Math.atan2(Y,K);rr<0&&(rr=Ge*2+rr);var jn=K>0;jn&&(rr=Ge+rr),Ye=rr-Ge}if(a=!!Ye,I.x=ee,I.y=le,I.rotation=Ye,I.setStyle({verticalAlign:"middle"}),xe){I.setStyle({align:Ne});var Kn=I.states.select;Kn&&(Kn.x+=I.x,Kn.y+=I.y)}else{var qr=new Oe(0,0,0,0);ure(qr,I),r.push({label:I,labelLine:k,position:N,len:Z,len2:W,minTurnAngle:B.get("minTurnAngle"),maxSurfaceAngle:B.get("maxSurfaceAngle"),surfaceNormal:new Ee(Y,K),linePoints:he,textAlign:Ne,labelDistance:z,labelAlignTo:V,edgeDistance:F,bleedMargin:$,rect:qr,unconstrainedWidth:qr.width,labelStyleWidth:I.style.width})}A.setTextConfig({inside:xe})}}),!a&&e.get("avoidLabelOverlap")&&iGe(r,n,i,l,u,h,c,f);for(var m=0;m0){for(var c=o.getItemLayout(0),f=1;isNaN(c&&c.startAngle)&&f=a.r0}},t.type="pie",t}(bt);function ep(e,t,r){t=ae(t)&&{coordDimensions:t}||ne({encodeDefine:e.getEncode()},t);var n=e.getSource(),i=qv(n,t).dimensions,a=new Dn(i,e);return a.initData(n,r),a}var tp=function(){function e(t,r){this._getDataWithEncodedVisual=t,this._getRawData=r}return e.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},e.prototype.containName=function(t){var r=this._getRawData();return r.indexOfName(t)>=0},e.prototype.indexOfName=function(t){var r=this._getDataWithEncodedVisual();return r.indexOfName(t)},e.prototype.getItemVisual=function(t,r){var n=this._getDataWithEncodedVisual();return n.getItemVisual(t,r)},e}(),uGe=Je(),cre=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments),this.legendVisualProvider=new tp(me(this.getData,this),me(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.mergeOption=function(){e.prototype.mergeOption.apply(this,arguments)},t.prototype.getInitialData=function(){return ep(this,{coordDimensions:["value"],encodeDefaulter:Fe(fj,this)})},t.prototype.getDataParams=function(r){var n=this.getData(),i=uGe(n),a=i.seats;if(!a){var o=[];n.each(n.mapDimension("value"),function(l){o.push(l)}),a=i.seats=yJ(o,n.hostModel.get("percentPrecision"))}var s=e.prototype.getDataParams.call(this,r);return s.percent=a[r]||0,s.$vars.push("percent"),s},t.prototype._defaultLabelLine=function(r){uf(r,"labelLine",["show"]);var n=r.labelLine,i=r.emphasis.labelLine;n.show=n.show&&r.label.show,i.show=i.show&&r.emphasis.label.show},t.type="series.pie",t.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"50%"],clockwise:!0,startAngle:90,endAngle:"auto",padAngle:0,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,coordinateSystemUsage:"box",left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:30,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},t}(Ct);rBe({fullType:cre.type,getCoord2:function(e){return e.getShallow("center")}});function cGe(e){return{seriesType:e,reset:function(t,r){var n=t.getData();n.filterSelf(function(i){var a=n.mapDimension("value"),o=n.get(a,i);return!(ot(o)&&!isNaN(o)&&o<0)})}}}function fGe(e){e.registerChartView(lGe),e.registerSeriesModel(cre),Tee("pie",e.registerAction),e.registerLayout(Fe(rGe,"pie")),e.registerProcessor(Qv("pie")),e.registerProcessor(cGe("pie"))}var hGe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.hasSymbolVisual=!0,r}return t.prototype.getInitialData=function(r,n){return Jo(null,this,{useEncodeDefaulter:!0})},t.prototype.getProgressive=function(){var r=this.option.progressive;return r??(this.option.large?5e3:this.get("progressive"))},t.prototype.getProgressiveThreshold=function(){var r=this.option.progressiveThreshold;return r??(this.option.large?1e4:this.get("progressiveThreshold"))},t.prototype.brushSelector=function(r,n,i){return i.point(n.getItemLayout(r))},t.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},t.type="series.scatter",t.dependencies=["grid","polar","geo","singleAxis","calendar","matrix"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:J.color.primary}},universalTransition:{divideShape:"clone"}},t}(Ct),fre=4,dGe=function(){function e(){}return e}(),vGe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n._off=0,n.hoverDataIdx=-1,n}return t.prototype.getDefaultShape=function(){return new dGe},t.prototype.reset=function(){this.notClear=!1,this._off=0},t.prototype.buildPath=function(r,n){var i=n.points,a=n.size,o=this.symbolProxy,s=o.shape,l=r.getContext?r.getContext():r,u=l&&a[0]=0;u--){var c=u*2,f=a[c]-s/2,h=a[c+1]-l/2;if(r>=f&&n>=h&&r<=f+s&&n<=h+l)return u}return-1},t.prototype.contain=function(r,n){var i=this.transformCoordToLocal(r,n),a=this.getBoundingRect();if(r=i[0],n=i[1],a.contain(r,n)){var o=this.hoverDataIdx=this.findDataIndex(r,n);return o>=0}return this.hoverDataIdx=-1,!1},t.prototype.getBoundingRect=function(){var r=this._rect;if(!r){for(var n=this.shape,i=n.points,a=n.size,o=a[0],s=a[1],l=1/0,u=1/0,c=-1/0,f=-1/0,h=0;h=0&&(u.dataIndex=f+(t.startIndex||0))})},e.prototype.remove=function(){this._clear()},e.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},e}(),gGe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this._updateSymbolDraw(a,r);o.updateData(a,{clipShape:this._getClipShape(r)}),this._finished=!0},t.prototype.incrementalPrepareRender=function(r,n,i){var a=r.getData(),o=this._updateSymbolDraw(a,r);o.incrementalPrepareUpdate(a),this._finished=!1},t.prototype.incrementalRender=function(r,n,i){this._symbolDraw.incrementalUpdate(r,n.getData(),{clipShape:this._getClipShape(n)}),this._finished=r.end===n.getData().count()},t.prototype.updateTransform=function(r,n,i){var a=r.getData();if(this.group.dirty(),!this._finished||a.count()>1e4)return{update:!0};var o=C0("").reset(r,n,i);o.progress&&o.progress({start:0,end:a.count(),count:a.count()},a),this._symbolDraw.updateLayout(a)},t.prototype.eachRendered=function(r){this._symbolDraw&&this._symbolDraw.eachRendered(r)},t.prototype._getClipShape=function(r){if(r.get("clip",!0)){var n=r.coordinateSystem;return n&&n.getArea&&n.getArea(.1)}},t.prototype._updateSymbolDraw=function(r,n){var i=this._symbolDraw,a=n.pipelineContext,o=a.large;return(!i||o!==this._isLargeDraw)&&(i&&i.remove(),i=this._symbolDraw=o?new pGe:new S0,this._isLargeDraw=o,this.group.removeAll()),this.group.add(i.group),i},t.prototype.remove=function(r,n){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},t.prototype.dispose=function(){},t.type="scatter",t}(bt),hre={left:0,right:0,top:0,bottom:0},Vw=["25%","25%"],mGe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.mergeDefaultAndTheme=function(r,n){var i=If(r.outerBounds);e.prototype.mergeDefaultAndTheme.apply(this,arguments),i&&r.outerBounds&&Ho(r.outerBounds,i)},t.prototype.mergeOption=function(r,n){e.prototype.mergeOption.apply(this,arguments),this.option.outerBounds&&r.outerBounds&&Ho(this.option.outerBounds,r.outerBounds)},t.type="grid",t.dependencies=["xAxis","yAxis"],t.layoutMode="box",t.defaultOption={show:!1,z:0,left:"15%",top:65,right:"10%",bottom:80,containLabel:!1,outerBoundsMode:"auto",outerBounds:hre,outerBoundsContain:"all",outerBoundsClampWidth:Vw[0],outerBoundsClampHeight:Vw[1],backgroundColor:J.color.transparent,borderWidth:1,borderColor:J.color.neutral30},t}(Ke),hE=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",er).models[0]},t.type="cartesian2dAxis",t}(Ke);cr(hE,Jv);var dre={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:J.color.axisLine,width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15],breakLine:!0},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12,color:J.color.axisLabel,textMargin:[0,3]},splitLine:{show:!0,showMinLine:!0,showMaxLine:!0,lineStyle:{color:J.color.axisSplitLine,width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:[J.color.backgroundTint,J.color.backgroundTransparent]}},breakArea:{show:!0,itemStyle:{color:J.color.neutral00,borderColor:J.color.border,borderWidth:1,borderType:[3,3],opacity:.6},zigzagAmplitude:4,zigzagMinSpan:4,zigzagMaxSpan:20,zigzagZ:100,expandOnClick:!0},breakLabelLayout:{moveOverlap:"auto"}},yGe=He({boundaryGap:!0,deduplication:null,jitter:0,jitterOverlap:!0,jitterMargin:2,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto",show:"auto"},axisLabel:{interval:"auto"}},dre),Hj=He({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:J.color.axisMinorSplitLine,width:1}}},dre),xGe=He({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},Hj),_Ge=ke({logBase:10},Hj);const vre={category:yGe,value:Hj,time:xGe,log:_Ge};var bGe={value:1,category:1,time:1,log:1},dE=null;function wGe(e){dE||(dE=e)}function A0(){return dE}function ov(e,t,r,n){R(bGe,function(i,a){var o=He(He({},vre[a],!0),n,!0),s=function(l){q(u,l);function u(){var c=l!==null&&l.apply(this,arguments)||this;return c.type=t+"Axis."+a,c}return u.prototype.mergeDefaultAndTheme=function(c,f){var h=Ty(this),d=h?If(c):{},v=f.getTheme();He(c,v.get(a+"Axis")),He(c,this.getDefaultOption()),c.type=$6(c),h&&Ho(c,d,h)},u.prototype.optionUpdated=function(){var c=this.option;c.type==="category"&&(this.__ordinalMeta=Ly.createByAxisModel(this))},u.prototype.getCategories=function(c){var f=this.option;if(f.type==="category")return c?f.data:this.__ordinalMeta.categories},u.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},u.prototype.updateAxisBreaks=function(c){var f=A0();return f?f.updateModelAxisBreak(this,c):{breaks:[]}},u.type=t+"Axis."+a,u.defaultOption=o,u}(r);e.registerComponentModel(s)}),e.registerSubTypeDefaulter(t+"Axis",$6)}function $6(e){return e.type||(e.data?"category":"value")}var SGe=function(){function e(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return e.prototype.getAxis=function(t){return this._axes[t]},e.prototype.getAxes=function(){return se(this._dimList,function(t){return this._axes[t]},this)},e.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),ht(this.getAxes(),function(r){return r.scale.type===t})},e.prototype.addAxis=function(t){var r=t.dim;this._axes[r]=t,this._dimList.push(r)},e}(),vE=["x","y"];function F6(e){return(e.type==="interval"||e.type==="time")&&!e.hasBreaks()}var TGe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="cartesian2d",r.dimensions=vE,r}return t.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var r=this.getAxis("x").scale,n=this.getAxis("y").scale;if(!(!F6(r)||!F6(n))){var i=r.getExtent(),a=n.getExtent(),o=this.dataToPoint([i[0],a[0]]),s=this.dataToPoint([i[1],a[1]]),l=i[1]-i[0],u=a[1]-a[0];if(!(!l||!u)){var c=(s[0]-o[0])/l,f=(s[1]-o[1])/u,h=o[0]-i[0]*c,d=o[1]-a[0]*f,v=this._transform=[c,0,0,f,h,d];this._invTransform=va([],v)}}},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},t.prototype.containPoint=function(r){var n=this.getAxis("x"),i=this.getAxis("y");return n.contain(n.toLocalCoord(r[0]))&&i.contain(i.toLocalCoord(r[1]))},t.prototype.containData=function(r){return this.getAxis("x").containData(r[0])&&this.getAxis("y").containData(r[1])},t.prototype.containZone=function(r,n){var i=this.dataToPoint(r),a=this.dataToPoint(n),o=this.getArea(),s=new Oe(i[0],i[1],a[0]-i[0],a[1]-i[1]);return o.intersect(s)},t.prototype.dataToPoint=function(r,n,i){i=i||[];var a=r[0],o=r[1];if(this._transform&&a!=null&&isFinite(a)&&o!=null&&isFinite(o))return lr(i,r,this._transform);var s=this.getAxis("x"),l=this.getAxis("y");return i[0]=s.toGlobalCoord(s.dataToCoord(a,n)),i[1]=l.toGlobalCoord(l.dataToCoord(o,n)),i},t.prototype.clampData=function(r,n){var i=this.getAxis("x").scale,a=this.getAxis("y").scale,o=i.getExtent(),s=a.getExtent(),l=i.parse(r[0]),u=a.parse(r[1]);return n=n||[],n[0]=Math.min(Math.max(Math.min(o[0],o[1]),l),Math.max(o[0],o[1])),n[1]=Math.min(Math.max(Math.min(s[0],s[1]),u),Math.max(s[0],s[1])),n},t.prototype.pointToData=function(r,n,i){if(i=i||[],this._invTransform)return lr(i,r,this._invTransform);var a=this.getAxis("x"),o=this.getAxis("y");return i[0]=a.coordToData(a.toLocalCoord(r[0]),n),i[1]=o.coordToData(o.toLocalCoord(r[1]),n),i},t.prototype.getOtherAxis=function(r){return this.getAxis(r.dim==="x"?"y":"x")},t.prototype.getArea=function(r){r=r||0;var n=this.getAxis("x").getGlobalExtent(),i=this.getAxis("y").getGlobalExtent(),a=Math.min(n[0],n[1])-r,o=Math.min(i[0],i[1])-r,s=Math.max(n[0],n[1])-a+r,l=Math.max(i[0],i[1])-o+r;return new Oe(a,o,s,l)},t}(SGe),pre=function(e){q(t,e);function t(r,n,i,a,o){var s=e.call(this,r,n,i)||this;return s.index=0,s.type=a||"value",s.position=o||"bottom",s}return t.prototype.isHorizontal=function(){var r=this.position;return r==="top"||r==="bottom"},t.prototype.getGlobalExtent=function(r){var n=this.getExtent();return n[0]=this.toGlobalCoord(n[0]),n[1]=this.toGlobalCoord(n[1]),r&&n[0]>n[1]&&n.reverse(),n},t.prototype.pointToData=function(r,n){return this.coordToData(this.toLocalCoord(r[this.dim==="x"?0:1]),n)},t.prototype.setCategorySortInfo=function(r){if(this.type!=="category")return!1;this.model.option.categorySortInfo=r,this.scale.setSortInfo(r)},t}(ba),rC="expandAxisBreak",gre="collapseAxisBreak",mre="toggleAxisBreak",Uj="axisbreakchanged",CGe={type:rC,event:Uj,update:"update",refineEvent:Zj},AGe={type:gre,event:Uj,update:"update",refineEvent:Zj},MGe={type:mre,event:Uj,update:"update",refineEvent:Zj};function Zj(e,t,r,n){var i=[];return R(e,function(a){i=i.concat(a.eventBreaks)}),{eventContent:{breaks:i}}}function PGe(e){e.registerAction(CGe,t),e.registerAction(AGe,t),e.registerAction(MGe,t);function t(r,n){var i=[],a=hd(n,r);function o(s,l){R(a[s],function(u){var c=u.updateAxisBreaks(r);R(c.breaks,function(f){var h;i.push(ke((h={},h[l]=u.componentIndex,h),f))})})}return o("xAxisModels","xAxisIndex"),o("yAxisModels","yAxisIndex"),o("singleAxisModels","singleAxisIndex"),{eventBreaks:i}}}var jl=Math.PI,kGe=[[1,2,1,2],[5,3,5,3],[8,3,8,3]],LGe=[[0,1,0,1],[0,3,0,3],[0,3,0,3]],sv=Je(),yre=Je(),xre=function(){function e(t){this.recordMap={},this.resolveAxisNameOverlap=t}return e.prototype.ensureRecord=function(t){var r=t.axis.dim,n=t.componentIndex,i=this.recordMap,a=i[r]||(i[r]=[]);return a[n]||(a[n]={ready:{}})},e}();function IGe(e,t,r,n){var i=r.axis,a=t.ensureRecord(r),o=[],s,l=Yj(e.axisName)&&iv(e.nameLocation);R(n,function(v){var m=Uo(v);if(!(!m||m.label.ignore)){o.push(m);var y=a.transGroup;l&&(y.transform?va(Xp,y.transform):c0(Xp),m.transform&&Ga(Xp,Xp,m.transform),Oe.copy(x_,m.localRect),x_.applyTransform(Xp),s?s.union(x_):Oe.copy(s=new Oe(0,0,0,0),x_))}});var u=Math.abs(a.dirVec.x)>.1?"x":"y",c=a.transGroup[u];if(o.sort(function(v,m){return Math.abs(v.label[u]-c)-Math.abs(m.label[u]-c)}),l&&s){var f=i.getExtent(),h=Math.min(f[0],f[1]),d=Math.max(f[0],f[1])-h;s.union(new Oe(h,0,d,1))}a.stOccupiedRect=s,a.labelInfoList=o}var Xp=Hr(),x_=new Oe(0,0,0,0),_re=function(e,t,r,n,i,a){if(iv(e.nameLocation)){var o=a.stOccupiedRect;o&&bre(kFe({},o,a.transGroup.transform),n,i)}else wre(a.labelInfoList,a.dirVec,n,i)};function bre(e,t,r){var n=new Ee;eC(e,t,n,{direction:Math.atan2(r.y,r.x),bidirectional:!1,touchThreshold:.05})&&aE(t,n)}function wre(e,t,r,n){for(var i=Ee.dot(n,t)>=0,a=0,o=e.length;a0?"top":"bottom",a="center"):Kd(i-jl)?(o=n>0?"bottom":"top",a="center"):(o="middle",i>0&&i0?"right":"left":a=n>0?"left":"right"),{rotation:i,textAlign:a,textVerticalAlign:o}},e.makeAxisEventDataBase=function(t){var r={componentType:t.mainType,componentIndex:t.componentIndex};return r[t.mainType+"Index"]=t.componentIndex,r},e.isLabelSilent=function(t){var r=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||r&&r.show)},e}(),EGe=["axisLine","axisTickLabelEstimate","axisTickLabelDetermine","axisName"],OGe={axisLine:function(e,t,r,n,i,a,o){var s=n.get(["axisLine","show"]);if(s==="auto"&&(s=!0,e.raw.axisLineAutoShow!=null&&(s=!!e.raw.axisLineAutoShow)),!!s){var l=n.axis.getExtent(),u=a.transform,c=[l[0],0],f=[l[1],0],h=c[0]>f[0];u&&(lr(c,c,u),lr(f,f,u));var d=ne({lineCap:"round"},n.getModel(["axisLine","lineStyle"]).getLineStyle()),v={strokeContainThreshold:e.raw.strokeContainThreshold||5,silent:!0,z2:1,style:d};if(n.get(["axisLine","breakLine"])&&n.axis.scale.hasBreaks())A0().buildAxisBreakLine(n,i,a,v);else{var m=new mr(ne({shape:{x1:c[0],y1:c[1],x2:f[0],y2:f[1]}},v));ev(m.shape,m.style.lineWidth),m.anid="line",i.add(m)}var y=n.get(["axisLine","symbol"]);if(y!=null){var x=n.get(["axisLine","symbolSize"]);ge(y)&&(y=[y,y]),(ge(x)||ot(x))&&(x=[x,x]);var _=Of(n.get(["axisLine","symbolOffset"])||0,x),b=x[0],S=x[1];R([{rotate:e.rotation+Math.PI/2,offset:_[0],r:0},{rotate:e.rotation-Math.PI/2,offset:_[1],r:Math.sqrt((c[0]-f[0])*(c[0]-f[0])+(c[1]-f[1])*(c[1]-f[1]))}],function(T,C){if(y[C]!=="none"&&y[C]!=null){var A=xr(y[C],-b/2,-S/2,b,S,d.stroke,!0),P=T.r+T.offset,I=h?f:c;A.attr({rotation:T.rotate,x:I[0]+P*Math.cos(e.rotation),y:I[1]-P*Math.sin(e.rotation),silent:!0,z2:11}),i.add(A)}})}}},axisTickLabelEstimate:function(e,t,r,n,i,a,o,s){var l=G6(t,i,s);l&&V6(e,t,r,n,i,a,o,Ja.estimate)},axisTickLabelDetermine:function(e,t,r,n,i,a,o,s){var l=G6(t,i,s);l&&V6(e,t,r,n,i,a,o,Ja.determine);var u=RGe(e,i,a,n);jGe(e,t.labelLayoutList,u),BGe(e,i,a,n,e.tickDirection)},axisName:function(e,t,r,n,i,a,o,s){var l=r.ensureRecord(n);t.nameEl&&(i.remove(t.nameEl),t.nameEl=l.nameLayout=l.nameLocation=null);var u=e.axisName;if(Yj(u)){var c=e.nameLocation,f=e.nameDirection,h=n.getModel("nameTextStyle"),d=n.get("nameGap")||0,v=n.axis.getExtent(),m=n.axis.inverse?-1:1,y=new Ee(0,0),x=new Ee(0,0);c==="start"?(y.x=v[0]-m*d,x.x=-m):c==="end"?(y.x=v[1]+m*d,x.x=m):(y.x=(v[0]+v[1])/2,y.y=e.labelOffset+f*d,x.y=f);var _=Hr();x.transform(el(_,_,e.rotation));var b=n.get("nameRotate");b!=null&&(b=b*jl/180);var S,T;iv(c)?S=Hn.innerTextLayout(e.rotation,b??e.rotation,f):(S=DGe(e.rotation,c,b||0,v),T=e.raw.axisNameAvailableWidth,T!=null&&(T=Math.abs(T/Math.sin(S.rotation)),!isFinite(T)&&(T=null)));var C=h.getFont(),A=n.get("nameTruncate",!0)||{},P=A.ellipsis,I=nn(e.raw.nameTruncateMaxWidth,A.maxWidth,T),k=s.nameMarginLevel||0,O=new at({x:y.x,y:y.y,rotation:S.rotation,silent:Hn.isLabelSilent(n),style:Pt(h,{text:u,font:C,overflow:"truncate",width:I,ellipsis:P,fill:h.getTextColor()||n.get(["axisLine","lineStyle","color"]),align:h.get("align")||S.textAlign,verticalAlign:h.get("verticalAlign")||S.textVerticalAlign}),z2:1});if(rl({el:O,componentModel:n,itemName:u}),O.__fullText=u,O.anid="name",n.get("triggerEvent")){var D=Hn.makeAxisEventDataBase(n);D.targetType="axisName",D.name=u,je(O).eventData=D}a.add(O),O.updateTransform(),t.nameEl=O;var N=l.nameLayout=Uo({label:O,priority:O.z2,defaultAttr:{ignore:O.ignore},marginDefault:iv(c)?kGe[k]:LGe[k]});if(l.nameLocation=c,i.add(O),O.decomposeTransform(),e.shouldNameMoveOverlap&&N){var z=r.ensureRecord(n);r.resolveAxisNameOverlap(e,r,n,N,x,z)}}}};function V6(e,t,r,n,i,a,o,s){Tre(t)||zGe(e,t,i,s,n,o);var l=t.labelLayoutList;$Ge(e,n,l,a),GGe(n,e.rotation,l);var u=e.optionHideOverlap;NGe(n,l,u),u&&Dte(ht(l,function(c){return c&&!c.label.ignore})),IGe(e,r,n,l)}function DGe(e,t,r,n){var i=MN(r-e),a,o,s=n[0]>n[1],l=t==="start"&&!s||t!=="start"&&s;return Kd(i-jl/2)?(o=l?"bottom":"top",a="center"):Kd(i-jl*1.5)?(o=l?"top":"bottom",a="center"):(o="middle",ijl/2?a=l?"left":"right":a=l?"right":"left"),{rotation:i,textAlign:a,textVerticalAlign:o}}function NGe(e,t,r){if(mte(e.axis))return;function n(s,l,u){var c=Uo(t[l]),f=Uo(t[u]);if(!(!c||!f)){if(s===!1||c.suggestIgnore){Cg(c.label);return}if(f.suggestIgnore){Cg(f.label);return}var h=.1;if(!r){var d=[0,0,0,0];c=oE({marginForce:d},c),f=oE({marginForce:d},f)}eC(c,f,null,{touchThreshold:h})&&Cg(s?f.label:c.label)}}var i=e.get(["axisLabel","showMinLabel"]),a=e.get(["axisLabel","showMaxLabel"]),o=t.length;n(i,0,1),n(a,o-1,o-2)}function jGe(e,t,r){e.showMinorTicks||R(t,function(n){if(n&&n.label.ignore)for(var i=0;iu[0]&&isFinite(v)&&isFinite(u[0]);)d=J2(d),v=u[1]-d*o;else{var y=e.getTicks().length-1;y>o&&(d=J2(d));var x=d*o;m=Math.ceil(u[1]/d)*d,v=gr(m-x),v<0&&u[0]>=0?(v=0,m=gr(x)):m>0&&u[1]<=0&&(m=0,v=-gr(x))}var _=(i[0].value-a[0].value)/s,b=(i[o].value-a[o].value)/s;n.setExtent.call(e,v+d*_,m+d*b),n.setInterval.call(e,d),(_||b)&&n.setNiceExtent.call(e,v+d,m-d)}var H6=[[3,1],[0,2]],ZGe=function(){function e(t,r,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=vE,this._initCartesian(t,r,n),this.model=t}return e.prototype.getRect=function(){return this._rect},e.prototype.update=function(t,r){var n=this._axesMap;this._updateScale(t,this.model);function i(o){var s,l=it(o),u=l.length;if(u){for(var c=[],f=u-1;f>=0;f--){var h=+l[f],d=o[h],v=d.model,m=d.scale;QI(m)&&v.get("alignTicks")&&v.get("interval")==null?c.push(d):(gf(m,v),QI(m)&&(s=d))}c.length&&(s||(s=c.pop(),gf(s.scale,s.model)),R(c,function(y){Cre(y.scale,y.model,s.scale)}))}}i(n.x),i(n.y);var a={};R(n.x,function(o){U6(n,"y",o,a)}),R(n.y,function(o){U6(n,"x",o,a)}),this.resize(this.model,r)},e.prototype.resize=function(t,r,n){var i=Rr(t,r),a=this._rect=zt(t.getBoxLayoutParams(),i.refContainer),o=this._axesMap,s=this._coordsList,l=t.get("containLabel");if(gE(o,a),!n){var u=qGe(a,s,o,l,r),c=void 0;if(l)mE?(mE(this._axesList,a),gE(o,a)):c=X6(a.clone(),"axisLabel",null,a,o,u,i);else{var f=KGe(t,a,i),h=f.outerBoundsRect,d=f.parsedOuterBoundsContain,v=f.outerBoundsClamp;h&&(c=X6(h,d,v,a,o,u,i))}Are(a,o,Ja.determine,null,c,i)}R(this._coordsList,function(m){m.calcAffineTransform()})},e.prototype.getAxis=function(t,r){var n=this._axesMap[t];if(n!=null)return n[r||0]},e.prototype.getAxes=function(){return this._axesList.slice()},e.prototype.getCartesian=function(t,r){if(t!=null&&r!=null){var n="x"+t+"y"+r;return this._coordsMap[n]}Le(t)&&(r=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,a=this._coordsList;i0})==null;return df(n,s,!0,!0,r),gE(i,n),l;function u(h){R(i[$e[h]],function(d){if(Iy(d.model)){var v=a.ensureRecord(d.model),m=v.labelInfoList;if(m)for(var y=0;y0&&!mn(d)&&d>1e-4&&(h/=d),h}}function qGe(e,t,r,n,i){var a=new xre(JGe);return R(r,function(o){return R(o,function(s){if(Iy(s.model)){var l=!n;s.axisBuilder=HGe(e,t,s.model,i,a,l)}})}),a}function Are(e,t,r,n,i,a){var o=r===Ja.determine;R(t,function(u){return R(u,function(c){Iy(c.model)&&(UGe(c.axisBuilder,e,c.model),c.axisBuilder.build(o?{axisTickLabelDetermine:!0}:{axisTickLabelEstimate:!0},{noPxChange:i}))})});var s={x:0,y:0};l(0),l(1);function l(u){s[$e[1-u]]=e[Cr[u]]<=a.refContainer[Cr[u]]*.5?0:1-u===1?2:1}R(t,function(u,c){return R(u,function(f){Iy(f.model)&&((n==="all"||o)&&f.axisBuilder.build({axisName:!0},{nameMarginLevel:s[c]}),o&&f.axisBuilder.build({axisLine:!0}))})})}function KGe(e,t,r){var n,i=e.get("outerBoundsMode",!0);i==="same"?n=t.clone():(i==null||i==="auto")&&(n=zt(e.get("outerBounds",!0)||hre,r.refContainer));var a=e.get("outerBoundsContain",!0),o;a==null||a==="auto"||We(["all","axisLabel"],a)<0?o="all":o=a;var s=[vw(Se(e.get("outerBoundsClampWidth",!0),Vw[0]),t.width),vw(Se(e.get("outerBoundsClampHeight",!0),Vw[1]),t.height)];return{outerBoundsRect:n,parsedOuterBoundsContain:o,outerBoundsClamp:s}}var JGe=function(e,t,r,n,i,a){var o=r.axis.dim==="x"?"y":"x";_re(e,t,r,n,i,a),iv(e.nameLocation)||R(t.recordMap[o],function(s){s&&s.labelInfoList&&s.dirVec&&wre(s.labelInfoList,s.dirVec,n,i)})};function QGe(e,t){var r={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return e6e(r,e,t),r.seriesInvolved&&r6e(r,e),r}function e6e(e,t,r){var n=t.getComponent("tooltip"),i=t.getComponent("axisPointer"),a=i.get("link",!0)||[],o=[];R(r.getCoordinateSystems(),function(s){if(!s.axisPointerEnabled)return;var l=Ny(s.model),u=e.coordSysAxesInfo[l]={};e.coordSysMap[l]=s;var c=s.model,f=c.getModel("tooltip",n);if(R(s.getAxes(),Fe(m,!1,null)),s.getTooltipAxes&&n&&f.get("show")){var h=f.get("trigger")==="axis",d=f.get(["axisPointer","type"])==="cross",v=s.getTooltipAxes(f.get(["axisPointer","axis"]));(h||d)&&R(v.baseAxes,Fe(m,d?"cross":!0,h)),d&&R(v.otherAxes,Fe(m,"cross",!1))}function m(y,x,_){var b=_.model.getModel("axisPointer",i),S=b.get("show");if(!(!S||S==="auto"&&!y&&!yE(b))){x==null&&(x=b.get("triggerTooltip")),b=y?t6e(_,f,i,t,y,x):b;var T=b.get("snap"),C=b.get("triggerEmphasis"),A=Ny(_.model),P=x||T||_.type==="category",I=e.axesInfo[A]={key:A,axis:_,coordSys:s,axisPointerModel:b,triggerTooltip:x,triggerEmphasis:C,involveSeries:P,snap:T,useHandle:yE(b),seriesModels:[],linkGroup:null};u[A]=I,e.seriesInvolved=e.seriesInvolved||P;var k=n6e(a,_);if(k!=null){var O=o[k]||(o[k]={axesInfo:{}});O.axesInfo[A]=I,O.mapper=a[k].mapper,I.linkGroup=O}}}})}function t6e(e,t,r,n,i,a){var o=t.getModel("axisPointer"),s=["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],l={};R(s,function(h){l[h]=Me(o.get(h))}),l.snap=e.type!=="category"&&!!a,o.get("type")==="cross"&&(l.type="line");var u=l.label||(l.label={});if(u.show==null&&(u.show=!1),i==="cross"){var c=o.get(["label","show"]);if(u.show=c??!0,!a){var f=l.lineStyle=o.get("crossStyle");f&&ke(u,f.textStyle)}}return e.model.getModel("axisPointer",new et(l,r,n))}function r6e(e,t){t.eachSeries(function(r){var n=r.coordinateSystem,i=r.get(["tooltip","trigger"],!0),a=r.get(["tooltip","show"],!0);!n||!n.model||i==="none"||i===!1||i==="item"||a===!1||r.get(["axisPointer","show"],!0)===!1||R(e.coordSysAxesInfo[Ny(n.model)],function(o){var s=o.axis;n.getAxis(s.dim)===s&&(o.seriesModels.push(r),o.seriesDataCount==null&&(o.seriesDataCount=0),o.seriesDataCount+=r.getData().count())})})}function n6e(e,t){for(var r=t.model,n=t.dim,i=0;i=0||e===t}function i6e(e){var t=Xj(e);if(t){var r=t.axisPointerModel,n=t.axis.scale,i=r.option,a=r.get("status"),o=r.get("value");o!=null&&(o=n.parse(o));var s=yE(r);a==null&&(i.status=s?"show":"hide");var l=n.getExtent().slice();l[0]>l[1]&&l.reverse(),(o==null||o>l[1])&&(o=l[1]),o0;return o&&s}var f6e=Je();function J6(e,t,r,n){if(e instanceof pre){var i=e.scale.type;if(i!=="category"&&i!=="ordinal")return r}var a=e.model,o=a.get("jitter"),s=a.get("jitterOverlap"),l=a.get("jitterMargin")||0,u=e.scale.type==="ordinal"?e.getBandWidth():null;return o>0?s?Ere(r,o,u,n):h6e(e,t,r,n,o,l):r}function Ere(e,t,r,n){if(r===null)return e+(Math.random()-.5)*t;var i=r-n*2,a=Math.min(Math.max(0,t),i);return e+(Math.random()-.5)*a}function h6e(e,t,r,n,i,a){var o=f6e(e);o.items||(o.items=[]);var s=o.items,l=Q6(s,t,r,n,i,a,1),u=Q6(s,t,r,n,i,a,-1),c=Math.abs(l-r)i/2||f&&h>f/2-n?Ere(r,i,f,n):(s.push({fixedCoord:t,floatCoord:c,r:n}),c)}function Q6(e,t,r,n,i,a,o){for(var s=r,l=0;li/2)return Number.MAX_VALUE;if(o===1&&v>s||o===-1&&v0&&!v.min?v.min=0:v.min!=null&&v.min<0&&!v.max&&(v.max=0);var m=l;v.color!=null&&(m=ke({color:v.color},l));var y=He(Me(v),{boundaryGap:r,splitNumber:n,scale:i,axisLine:a,axisTick:o,axisLabel:s,name:v.text,showName:u,nameLocation:"end",nameGap:f,nameTextStyle:m,triggerEvent:h},!1);if(ge(c)){var x=y.name;y.name=c.replace("{value}",x??"")}else Ae(c)&&(y.name=c(y.name,y));var _=new et(y,null,this.ecModel);return cr(_,Jv.prototype),_.mainType="radar",_.componentIndex=this.componentIndex,_},this);this._indicatorModels=d},t.prototype.getIndicatorModels=function(){return this._indicatorModels},t.type="radar",t.defaultOption={z:0,center:["50%","50%"],radius:"50%",startAngle:90,axisName:{show:!0,color:J.color.axisLabel},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:He({lineStyle:{color:J.color.neutral20}},qp.axisLine),axisLabel:__(qp.axisLabel,!1),axisTick:__(qp.axisTick,!1),splitLine:__(qp.splitLine,!0),splitArea:__(qp.splitArea,!0),indicator:[]},t}(Ke),b6e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=this.group;a.removeAll(),this._buildAxes(r,i),this._buildSplitLineAndArea(r)},t.prototype._buildAxes=function(r,n){var i=r.coordinateSystem,a=i.getIndicatorAxes(),o=se(a,function(s){var l=s.model.get("showName")?s.name:"",u=new Hn(s.model,n,{axisName:l,position:[i.cx,i.cy],rotation:s.angle,labelDirection:-1,tickDirection:-1,nameDirection:1});return u});R(o,function(s){s.build(),this.group.add(s.group)},this)},t.prototype._buildSplitLineAndArea=function(r){var n=r.coordinateSystem,i=n.getIndicatorAxes();if(!i.length)return;var a=r.get("shape"),o=r.getModel("splitLine"),s=r.getModel("splitArea"),l=o.getModel("lineStyle"),u=s.getModel("areaStyle"),c=o.get("show"),f=s.get("show"),h=l.get("color"),d=u.get("color"),v=ae(h)?h:[h],m=ae(d)?d:[d],y=[],x=[];function _(V,F,$){var B=$%F.length;return V[B]=V[B]||[],B}if(a==="circle")for(var b=i[0].getTicksCoords(),S=n.cx,T=n.cy,C=0;C3?1.4:o>1?1.2:1.1,c=a>0?u:1/u;this._checkTriggerMoveZoom(this,"zoom","zoomOnMouseWheel",r,{scale:c,originX:s,originY:l,isAvailableBehavior:null})}if(i){var f=Math.abs(a),h=(a>0?1:-1)*(f>3?.4:f>1?.15:.05);this._checkTriggerMoveZoom(this,"scrollMove","moveOnMouseWheel",r,{scrollDelta:h,originX:s,originY:l,isAvailableBehavior:null})}}}},t.prototype._pinchHandler=function(r){if(!(rW(this._zr,"globalPan")||Kp(r))){var n=r.pinchScale>1?1.1:1/1.1;this._checkTriggerMoveZoom(this,"zoom",null,r,{scale:n,originX:r.pinchX,originY:r.pinchY,isAvailableBehavior:null})}},t.prototype._checkTriggerMoveZoom=function(r,n,i,a,o){r._checkPointer(a,o.originX,o.originY)&&(Gs(a.event),a.__ecRoamConsumed=!0,nW(r,n,i,a,o))},t}(xa);function Kp(e){return e.__ecRoamConsumed}var k6e=Je();function nC(e){var t=k6e(e);return t.roam=t.roam||{},t.uniform=t.uniform||{},t}function Jp(e,t,r,n){for(var i=nC(e),a=i.roam,o=a[t]=a[t]||[],s=0;s=4&&(c={x:parseFloat(h[0]||0),y:parseFloat(h[1]||0),width:parseFloat(h[2]),height:parseFloat(h[3])})}if(c&&s!=null&&l!=null&&(f=Bre(c,{x:0,y:0,width:s,height:l}),!r.ignoreViewBox)){var d=i;i=new Pe,i.add(d),d.scaleX=d.scaleY=f.scale,d.x=f.x,d.y=f.y}return!r.ignoreRootClip&&s!=null&&l!=null&&i.setClipPath(new Xe({shape:{x:0,y:0,width:s,height:l}})),{root:i,width:s,height:l,viewBoxRect:c,viewBoxTransform:f,named:a}},e.prototype._parseNode=function(t,r,n,i,a,o){var s=t.nodeName.toLowerCase(),l,u=i;if(s==="defs"&&(a=!0),s==="text"&&(o=!0),s==="defs"||s==="switch")l=r;else{if(!a){var c=gM[s];if(c&&be(gM,s)){l=c.call(this,t,r);var f=t.getAttribute("name");if(f){var h={name:f,namedFrom:null,svgNodeTagLower:s,el:l};n.push(h),s==="g"&&(u=h)}else i&&n.push({name:i.name,namedFrom:i,svgNodeTagLower:s,el:l});r.add(l)}}var d=sW[s];if(d&&be(sW,s)){var v=d.call(this,t),m=t.getAttribute("id");m&&(this._defs[m]=v)}}if(l&&l.isGroup)for(var y=t.firstChild;y;)y.nodeType===1?this._parseNode(y,l,n,u,a,o):y.nodeType===3&&o&&this._parseText(y,l),y=y.nextSibling},e.prototype._parseText=function(t,r){var n=new Jd({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),O6e(n,r);var i=n.style,a=i.fontSize;a&&a<9&&(i.fontSize=9,n.scaleX*=a/9,n.scaleY*=a/9);var o=(i.fontSize||i.fontFamily)&&[i.fontStyle,i.fontWeight,(i.fontSize||12)+"px",i.fontFamily||"sans-serif"].join(" ");i.font=o;var s=n.getBoundingRect();return this._textX+=s.width,r.add(n),n},e.internalField=function(){gM={g:function(t,r){var n=new Pe;return Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),n},rect:function(t,r){var n=new Xe;return Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,r){var n=new Ko;return Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,r){var n=new mr;return Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,r){var n=new v0;return Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,r){var n=t.getAttribute("points"),i;n&&(i=cW(n));var a=new wn({shape:{points:i||[]},silent:!0});return Wi(r,a),vi(t,a,this._defsUsePending,!1,!1),a},polyline:function(t,r){var n=t.getAttribute("points"),i;n&&(i=cW(n));var a=new on({shape:{points:i||[]},silent:!0});return Wi(r,a),vi(t,a,this._defsUsePending,!1,!1),a},image:function(t,r){var n=new Xr;return Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,r){var n=t.getAttribute("x")||"0",i=t.getAttribute("y")||"0",a=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(a),this._textY=parseFloat(i)+parseFloat(o);var s=new Pe;return Wi(r,s),vi(t,s,this._defsUsePending,!1,!0),s},tspan:function(t,r){var n=t.getAttribute("x"),i=t.getAttribute("y");n!=null&&(this._textX=parseFloat(n)),i!=null&&(this._textY=parseFloat(i));var a=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0",s=new Pe;return Wi(r,s),vi(t,s,this._defsUsePending,!1,!0),this._textX+=parseFloat(a),this._textY+=parseFloat(o),s},path:function(t,r){var n=t.getAttribute("d")||"",i=eQ(n);return Wi(r,i),vi(t,i,this._defsUsePending,!1,!1),i.silent=!0,i}}}(),e}(),sW={lineargradient:function(e){var t=parseInt(e.getAttribute("x1")||"0",10),r=parseInt(e.getAttribute("y1")||"0",10),n=parseInt(e.getAttribute("x2")||"10",10),i=parseInt(e.getAttribute("y2")||"0",10),a=new kf(t,r,n,i);return lW(e,a),uW(e,a),a},radialgradient:function(e){var t=parseInt(e.getAttribute("cx")||"0",10),r=parseInt(e.getAttribute("cy")||"0",10),n=parseInt(e.getAttribute("r")||"0",10),i=new VN(t,r,n);return lW(e,i),uW(e,i),i}};function lW(e,t){var r=e.getAttribute("gradientUnits");r==="userSpaceOnUse"&&(t.global=!0)}function uW(e,t){for(var r=e.firstChild;r;){if(r.nodeType===1&&r.nodeName.toLocaleLowerCase()==="stop"){var n=r.getAttribute("offset"),i=void 0;n&&n.indexOf("%")>0?i=parseInt(n,10)/100:n?i=parseFloat(n):i=0;var a={};Rre(r,a,a);var o=a.stopColor||r.getAttribute("stop-color")||"#000000",s=a.stopOpacity||r.getAttribute("stop-opacity");if(s){var l=On(o),u=l&&l[3];u&&(l[3]*=Ps(s),o=la(l,"rgba"))}t.colorStops.push({offset:i,color:o})}r=r.nextSibling}}function Wi(e,t){e&&e.__inheritedStyle&&(t.__inheritedStyle||(t.__inheritedStyle={}),ke(t.__inheritedStyle,e.__inheritedStyle))}function cW(e){for(var t=aC(e),r=[],n=0;n0;a-=2){var o=n[a],s=n[a-1],l=aC(o);switch(i=i||Hr(),s){case"translate":qa(i,i,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":IT(i,i,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":el(i,i,-parseFloat(l[0])*mM,[parseFloat(l[1]||"0"),parseFloat(l[2]||"0")]);break;case"skewX":var u=Math.tan(parseFloat(l[0])*mM);Ga(i,[1,0,u,1,0,0],i);break;case"skewY":var c=Math.tan(parseFloat(l[0])*mM);Ga(i,[1,c,0,1,0,0],i);break;case"matrix":i[0]=parseFloat(l[0]),i[1]=parseFloat(l[1]),i[2]=parseFloat(l[2]),i[3]=parseFloat(l[3]),i[4]=parseFloat(l[4]),i[5]=parseFloat(l[5]);break}}t.setLocalTransform(i)}}var hW=/([^\s:;]+)\s*:\s*([^:;]+)/g;function Rre(e,t,r){var n=e.getAttribute("style");if(n){hW.lastIndex=0;for(var i;(i=hW.exec(n))!=null;){var a=i[1],o=be(Ww,a)?Ww[a]:null;o&&(t[o]=i[2]);var s=be(Hw,a)?Hw[a]:null;s&&(r[s]=i[2])}}}function z6e(e,t,r){for(var n=0;n0,_={api:n,geo:l,mapOrGeoModel:t,data:s,isVisualEncodedByVisualMap:x,isGeo:o,transformInfoRaw:h};l.resourceType==="geoJSON"?this._buildGeoJSON(_):l.resourceType==="geoSVG"&&this._buildSVG(_),this._updateController(t,y,r,n),this._updateMapSelectHandler(t,u,n,i)},e.prototype._buildGeoJSON=function(t){var r=this._regionsGroupByName=we(),n=we(),i=this._regionsGroup,a=t.transformInfoRaw,o=t.mapOrGeoModel,s=t.data,l=t.geo.projection,u=l&&l.stream;function c(d,v){return v&&(d=v(d)),d&&[d[0]*a.scaleX+a.x,d[1]*a.scaleY+a.y]}function f(d){for(var v=[],m=!u&&l&&l.project,y=0;y=0)&&(h=i);var d=o?{normal:{align:"center",verticalAlign:"middle"}}:null;Zr(t,jr(n),{labelFetcher:h,labelDataIndex:f,defaultText:r},d);var v=t.getTextContent();if(v&&(zre(v).ignore=v.ignore,t.textConfig&&o)){var m=t.getBoundingRect().clone();t.textConfig.layoutRect=m,t.textConfig.position=[(o[0]-m.x)/m.width*100+"%",(o[1]-m.y)/m.height*100+"%"]}t.disableLabelAnimation=!0}else t.removeTextContent(),t.removeTextConfig(),t.disableLabelAnimation=null}function mW(e,t,r,n,i,a){e.data?e.data.setItemGraphicEl(a,t):je(t).eventData={componentType:"geo",componentIndex:i.componentIndex,geoIndex:i.componentIndex,name:r,region:n&&n.option||{}}}function yW(e,t,r,n,i){e.data||rl({el:t,componentModel:i,itemName:r,itemTooltipOption:n.get("tooltip")})}function xW(e,t,r,n,i){t.highDownSilentOnTouch=!!i.get("selectedMode");var a=n.getModel("emphasis"),o=a.get("focus");return Gt(t,o,a.get("blurScope"),a.get("disabled")),e.isGeo&&Y3e(t,i,r),o}function _W(e,t,r){var n=[],i;function a(){i=[]}function o(){i.length&&(n.push(i),i=[])}var s=t({polygonStart:a,polygonEnd:o,lineStart:a,lineEnd:o,point:function(l,u){isFinite(l)&&isFinite(u)&&i.push([l,u])},sphere:function(){}});return!r&&s.polygonStart(),R(e,function(l){s.lineStart();for(var u=0;u-1&&(i.style.stroke=i.style.fill,i.style.fill=J.color.neutral00,i.style.lineWidth=2),i},t.type="series.map",t.dependencies=["geo"],t.layoutMode="box",t.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:J.color.tertiary},itemStyle:{borderWidth:.5,borderColor:J.color.border,areaColor:J.color.background},emphasis:{label:{show:!0,color:J.color.primary},itemStyle:{areaColor:J.color.highlight}},select:{label:{show:!0,color:J.color.primary},itemStyle:{color:J.color.highlight}},nameProperty:"name"},t}(Ct);function aWe(e,t){var r={};return R(e,function(n){n.each(n.mapDimension("value"),function(i,a){var o="ec-"+n.getName(a);r[o]=r[o]||[],isNaN(i)||r[o].push(i)})}),e[0].map(e[0].mapDimension("value"),function(n,i){for(var a="ec-"+e[0].getName(i),o=0,s=1/0,l=-1/0,u=r[a].length,c=0;c1?(b.width=_,b.height=_/m):(b.height=_,b.width=_*m),b.y=x[1]-b.height/2,b.x=x[0]-b.width/2;else{var S=e.getBoxLayoutParams();S.aspect=m,b=zt(S,v),b=DQ(e,b,m)}this.setViewRect(b.x,b.y,b.width,b.height),this.setCenter(e.get("center")),this.setZoom(e.get("zoom"))}function uWe(e,t){R(t.get("geoCoord"),function(r,n){e.addGeoCoord(n,r)})}var cWe=function(){function e(){this.dimensions=Fre}return e.prototype.create=function(t,r){var n=[];function i(o){return{nameProperty:o.get("nameProperty"),aspectScale:o.get("aspectScale"),projection:o.get("projection")}}t.eachComponent("geo",function(o,s){var l=o.get("map"),u=new bE(l+s,l,ne({nameMap:o.get("nameMap"),api:r,ecModel:t},i(o)));u.zoomLimit=o.get("scaleLimit"),n.push(u),o.coordinateSystem=u,u.model=o,u.resize=TW,u.resize(o,r)}),t.eachSeries(function(o){x0({targetModel:o,coordSysType:"geo",coordSysProvider:function(){var s=o.subType==="map"?o.getHostGeoModel():o.getReferringComponents("geo",er).models[0];return s&&s.coordinateSystem},allowNotFound:!0})});var a={};return t.eachSeriesByType("map",function(o){if(!o.getHostGeoModel()){var s=o.getMapType();a[s]=a[s]||[],a[s].push(o)}}),R(a,function(o,s){var l=se(o,function(c){return c.get("nameMap")}),u=new bE(s,s,ne({nameMap:PT(l),api:r,ecModel:t},i(o[0])));u.zoomLimit=nn.apply(null,se(o,function(c){return c.get("scaleLimit")})),n.push(u),u.resize=TW,u.resize(o[0],r),R(o,function(c){c.coordinateSystem=u,uWe(u,c)})}),n},e.prototype.getFilledRegions=function(t,r,n,i){for(var a=(t||[]).slice(),o=we(),s=0;s=0;o--){var s=i[o];s.hierNode={defaultAncestor:null,ancestor:s,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},r.push(s)}}function gWe(e,t){var r=e.isExpand?e.children:[],n=e.parentNode.children,i=e.hierNode.i?n[e.hierNode.i-1]:null;if(r.length){yWe(e);var a=(r[0].hierNode.prelim+r[r.length-1].hierNode.prelim)/2;i?(e.hierNode.prelim=i.hierNode.prelim+t(e,i),e.hierNode.modifier=e.hierNode.prelim-a):e.hierNode.prelim=a}else i&&(e.hierNode.prelim=i.hierNode.prelim+t(e,i));e.parentNode.hierNode.defaultAncestor=xWe(e,i,e.parentNode.hierNode.defaultAncestor||n[0],t)}function mWe(e){var t=e.hierNode.prelim+e.parentNode.hierNode.modifier;e.setLayout({x:t},!0),e.hierNode.modifier+=e.parentNode.hierNode.modifier}function CW(e){return arguments.length?e:wWe}function Ag(e,t){return e-=Math.PI/2,{x:t*Math.cos(e),y:t*Math.sin(e)}}function yWe(e){for(var t=e.children,r=t.length,n=0,i=0;--r>=0;){var a=t[r];a.hierNode.prelim+=n,a.hierNode.modifier+=n,i+=a.hierNode.change,n+=a.hierNode.shift+i}}function xWe(e,t,r,n){if(t){for(var i=e,a=e,o=a.parentNode.children[0],s=t,l=i.hierNode.modifier,u=a.hierNode.modifier,c=o.hierNode.modifier,f=s.hierNode.modifier;s=yM(s),a=xM(a),s&&a;){i=yM(i),o=xM(o),i.hierNode.ancestor=e;var h=s.hierNode.prelim+f-a.hierNode.prelim-u+n(s,a);h>0&&(bWe(_We(s,e,r),e,h),u+=h,l+=h),f+=s.hierNode.modifier,u+=a.hierNode.modifier,l+=i.hierNode.modifier,c+=o.hierNode.modifier}s&&!yM(i)&&(i.hierNode.thread=s,i.hierNode.modifier+=f-l),a&&!xM(o)&&(o.hierNode.thread=a,o.hierNode.modifier+=u-c,r=e)}return r}function yM(e){var t=e.children;return t.length&&e.isExpand?t[t.length-1]:e.hierNode.thread}function xM(e){var t=e.children;return t.length&&e.isExpand?t[0]:e.hierNode.thread}function _We(e,t,r){return e.hierNode.ancestor.parentNode===t.parentNode?e.hierNode.ancestor:r}function bWe(e,t,r){var n=r/(t.hierNode.i-e.hierNode.i);t.hierNode.change-=n,t.hierNode.shift+=r,t.hierNode.modifier+=r,t.hierNode.prelim+=r,e.hierNode.change+=n}function wWe(e,t){return e.parentNode===t.parentNode?1:2}var SWe=function(){function e(){this.parentPoint=[],this.childPoints=[]}return e}(),TWe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultStyle=function(){return{stroke:J.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new SWe},t.prototype.buildPath=function(r,n){var i=n.childPoints,a=i.length,o=n.parentPoint,s=i[0],l=i[a-1];if(a===1){r.moveTo(o[0],o[1]),r.lineTo(s[0],s[1]);return}var u=n.orient,c=u==="TB"||u==="BT"?0:1,f=1-c,h=pe(n.forkPosition,1),d=[];d[c]=o[c],d[f]=o[f]+(l[f]-o[f])*h,r.moveTo(o[0],o[1]),r.lineTo(d[0],d[1]),r.moveTo(s[0],s[1]),d[c]=s[c],r.lineTo(d[0],d[1]),d[c]=l[c],r.lineTo(d[0],d[1]),r.lineTo(l[0],l[1]);for(var v=1;v_.x,T||(S=S-Math.PI));var A=T?"left":"right",P=s.getModel("label"),I=P.get("rotate"),k=I*(Math.PI/180),O=y.getTextContent();O&&(y.setTextConfig({position:P.get("position")||A,rotation:I==null?-S:k,origin:"center"}),O.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),N=D==="relative"?Yd(o.getAncestorsIndices(),o.getDescendantIndices()):D==="ancestor"?o.getAncestorsIndices():D==="descendant"?o.getDescendantIndices():null;N&&(je(r).focus=N),AWe(i,o,c,r,v,d,m,n),r.__edge&&(r.onHoverStateChange=function(z){if(z!=="blur"){var V=o.parentNode&&e.getItemGraphicEl(o.parentNode.dataIndex);V&&V.hoverState===d0||yw(r.__edge,z)}})}function AWe(e,t,r,n,i,a,o,s){var l=t.getModel(),u=e.get("edgeShape"),c=e.get("layout"),f=e.getOrient(),h=e.get(["lineStyle","curveness"]),d=e.get("edgeForkPosition"),v=l.getModel("lineStyle").getLineStyle(),m=n.__edge;if(u==="curve")t.parentNode&&t.parentNode!==r&&(m||(m=n.__edge=new $v({shape:wE(c,f,h,i,i)})),lt(m,{shape:wE(c,f,h,a,o)},e));else if(u==="polyline"&&c==="orthogonal"&&t!==r&&t.children&&t.children.length!==0&&t.isExpand===!0){for(var y=t.children,x=[],_=0;_r&&(r=i.height)}this.height=r+1},e.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var r=0,n=this.children,i=n.length;r=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,r)},e.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},e.prototype.getModel=function(t){if(!(this.dataIndex<0)){var r=this.hostTree,n=r.data.getItemModel(this.dataIndex);return n.getModel(t)}},e.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},e.prototype.setVisual=function(t,r){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,r)},e.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},e.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},e.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},e.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,r=0;r=0){var n=r.getData().tree.root,i=e.targetNode;if(ge(i)&&(i=n.getNodeById(i)),i&&n.contains(i))return{node:i};var a=e.targetNodeId;if(a!=null&&(i=n.getNodeById(a)))return{node:i}}}function Zre(e){for(var t=[];e;)e=e.parentNode,e&&t.push(e);return t.reverse()}function nR(e,t){var r=Zre(e);return We(r,t)>=0}function oC(e,t){for(var r=[];e;){var n=e.dataIndex;r.push({name:e.name,dataIndex:n,value:t.getRawValue(n)}),e=e.parentNode}return r.reverse(),r}var NWe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.hasSymbolVisual=!0,r.ignoreStyleOnData=!0,r}return t.prototype.getInitialData=function(r){var n={name:r.name,children:r.data},i=r.leaves||{},a=new et(i,this,this.ecModel),o=rR.createTree(n,this,s);function s(f){f.wrapMethod("getItemModel",function(h,d){var v=o.getNodeByDataIndex(d);return v&&v.children.length&&v.isExpand||(h.parentModel=a),h})}var l=0;o.eachNode("preorder",function(f){f.depth>l&&(l=f.depth)});var u=r.expandAndCollapse,c=u&&r.initialTreeDepth>=0?r.initialTreeDepth:l;return o.root.eachNode("preorder",function(f){var h=f.hostTree.data.getRawDataItem(f.dataIndex);f.isExpand=h&&h.collapsed!=null?!h.collapsed:f.depth<=c}),o.data},t.prototype.getOrient=function(){var r=this.get("orient");return r==="horizontal"?r="LR":r==="vertical"&&(r="TB"),r},t.prototype.setZoom=function(r){this.option.zoom=r},t.prototype.setCenter=function(r){this.option.center=r},t.prototype.formatTooltip=function(r,n,i){for(var a=this.getData().tree,o=a.root.children[0],s=a.getNodeByDataIndex(r),l=s.getValue(),u=s.name;s&&s!==o;)u=s.parentNode.name+"."+u,s=s.parentNode;return Ar("nameValue",{name:u,value:l,noValue:isNaN(l)||l==null})},t.prototype.getDataParams=function(r){var n=e.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(r);return n.treeAncestors=oC(i,this),n.collapsed=!i.isExpand,n},t.type="series.tree",t.layoutMode="box",t.defaultOption={z:2,coordinateSystemUsage:"box",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,roamTrigger:"global",nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:J.color.borderTint,width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t}(Ct);function jWe(e,t,r){for(var n=[e],i=[],a;a=n.pop();)if(i.push(a),a.isExpand){var o=a.children;if(o.length)for(var s=0;s=0;a--)r.push(i[a])}}function RWe(e,t){e.eachSeriesByType("tree",function(r){BWe(r,t)})}function BWe(e,t){var r=Rr(e,t).refContainer,n=zt(e.getBoxLayoutParams(),r);e.layoutInfo=n;var i=e.get("layout"),a=0,o=0,s=null;i==="radial"?(a=2*Math.PI,o=Math.min(n.height,n.width)/2,s=CW(function(S,T){return(S.parentNode===T.parentNode?1:2)/S.depth})):(a=n.width,o=n.height,s=CW());var l=e.getData().tree.root,u=l.children[0];if(u){pWe(l),jWe(u,gWe,s),l.hierNode.modifier=-u.hierNode.prelim,tg(u,mWe);var c=u,f=u,h=u;tg(u,function(S){var T=S.getLayout().x;Tf.getLayout().x&&(f=S),S.depth>h.depth&&(h=S)});var d=c===f?1:s(c,f)/2,v=d-c.getLayout().x,m=0,y=0,x=0,_=0;if(i==="radial")m=a/(f.getLayout().x+d+v),y=o/(h.depth-1||1),tg(u,function(S){x=(S.getLayout().x+v)*m,_=(S.depth-1)*y;var T=Ag(x,_);S.setLayout({x:T.x,y:T.y,rawX:x,rawY:_},!0)});else{var b=e.getOrient();b==="RL"||b==="LR"?(y=o/(f.getLayout().x+d+v),m=a/(h.depth-1||1),tg(u,function(S){_=(S.getLayout().x+v)*y,x=b==="LR"?(S.depth-1)*m:a-(S.depth-1)*m,S.setLayout({x,y:_},!0)})):(b==="TB"||b==="BT")&&(m=a/(f.getLayout().x+d+v),y=o/(h.depth-1||1),tg(u,function(S){x=(S.getLayout().x+v)*m,_=b==="TB"?(S.depth-1)*y:o-(S.depth-1)*y,S.setLayout({x,y:_},!0)}))}}}function zWe(e){e.eachSeriesByType("tree",function(t){var r=t.getData(),n=r.tree;n.eachNode(function(i){var a=i.getModel(),o=a.getModel("itemStyle").getItemStyle(),s=r.ensureUniqueItemVisual(i.dataIndex,"style");ne(s,o)})})}function $We(e){e.registerAction({type:"treeExpandAndCollapse",event:"treeExpandAndCollapse",update:"update"},function(t,r){r.eachComponent({mainType:"series",subType:"tree",query:t},function(n){var i=t.dataIndex,a=n.getData().tree,o=a.getNodeByDataIndex(i);o.isExpand=!o.isExpand})}),e.registerAction({type:"treeRoam",event:"treeRoam",update:"none"},function(t,r,n){r.eachComponent({mainType:"series",subType:"tree",query:t},function(i){var a=i.coordinateSystem,o=iC(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}function FWe(e){e.registerChartView(CWe),e.registerSeriesModel(NWe),e.registerLayout(RWe),e.registerVisual(zWe),$We(e)}var LW=["treemapZoomToNode","treemapRender","treemapMove"];function VWe(e){for(var t=0;t1;)a=a.parentNode;var o=zI(e.ecModel,a.name||a.dataIndex+"",n);i.setVisual("decal",o)})}var GWe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.preventUsingHoverLayer=!0,r}return t.prototype.getInitialData=function(r,n){var i={name:r.name,children:r.data};Xre(i);var a=r.levels||[],o=this.designatedVisualItemStyle={},s=new et({itemStyle:o},this,n);a=r.levels=WWe(a,n);var l=se(a||[],function(f){return new et(f,s,n)},this),u=rR.createTree(i,this,c);function c(f){f.wrapMethod("getItemModel",function(h,d){var v=u.getNodeByDataIndex(d),m=v?l[v.depth]:null;return h.parentModel=m||s,h})}return u.data},t.prototype.optionUpdated=function(){this.resetViewRoot()},t.prototype.formatTooltip=function(r,n,i){var a=this.getData(),o=this.getRawValue(r),s=a.getName(r);return Ar("nameValue",{name:s,value:o})},t.prototype.getDataParams=function(r){var n=e.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(r);return n.treeAncestors=oC(i,this),n.treePathInfo=n.treeAncestors,n},t.prototype.setLayoutInfo=function(r){this.layoutInfo=this.layoutInfo||{},ne(this.layoutInfo,r)},t.prototype.mapIdToIndex=function(r){var n=this._idIndexMap;n||(n=this._idIndexMap=we(),this._idIndexMapCount=0);var i=n.get(r);return i==null&&n.set(r,i=this._idIndexMapCount++),i},t.prototype.getViewRoot=function(){return this._viewRoot},t.prototype.resetViewRoot=function(r){r?this._viewRoot=r:r=this._viewRoot;var n=this.getRawData().tree.root;(!r||r!==n&&!n.contains(r))&&(this._viewRoot=n)},t.prototype.enableAriaDecal=function(){Yre(this)},t.type="series.treemap",t.layoutMode="box",t.defaultOption={progressive:0,coordinateSystemUsage:"box",left:J.size.l,top:J.size.xxxl,right:J.size.l,bottom:J.size.xxxl,sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.32*.32,scaleLimit:{max:5,min:.2},roam:!0,roamTrigger:"global",nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",bottom:J.size.m,emptyItemWidth:25,itemStyle:{color:J.color.backgroundShade,textStyle:{color:J.color.secondary}},emphasis:{itemStyle:{color:J.color.background}}},label:{show:!0,distance:0,padding:5,position:"inside",color:J.color.neutral00,overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:J.color.neutral00,borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},t}(Ct);function Xre(e){var t=0;R(e.children,function(n){Xre(n);var i=n.value;ae(i)&&(i=i[0]),t+=i});var r=e.value;ae(r)&&(r=r[0]),(r==null||isNaN(r))&&(r=t),r<0&&(r=0),ae(e.value)?e.value[0]=r:e.value=r}function WWe(e,t){var r=kt(t.get("color")),n=kt(t.get(["aria","decal","decals"]));if(r){e=e||[];var i,a;R(e,function(s){var l=new et(s),u=l.get("color"),c=l.get("decal");(l.get(["itemStyle","color"])||u&&u!=="none")&&(i=!0),(l.get(["itemStyle","decal"])||c&&c!=="none")&&(a=!0)});var o=e[0]||(e[0]={});return i||(o.color=r.slice()),!a&&n&&(o.decal=n.slice()),e}}var HWe=8,IW=8,_M=5,UWe=function(){function e(t){this.group=new Pe,t.add(this.group)}return e.prototype.render=function(t,r,n,i){var a=t.getModel("breadcrumb"),o=this.group;if(o.removeAll(),!(!a.get("show")||!n)){var s=a.getModel("itemStyle"),l=a.getModel("emphasis"),u=s.getModel("textStyle"),c=l.getModel(["itemStyle","textStyle"]),f=Rr(t,r).refContainer,h={left:a.get("left"),right:a.get("right"),top:a.get("top"),bottom:a.get("bottom")},d={emptyItemWidth:a.get("emptyItemWidth"),totalWidth:0,renderList:[]},v=zt(h,f);this._prepare(n,d,u),this._renderContent(t,d,v,s,l,u,c,i),ZT(o,h,f)}},e.prototype._prepare=function(t,r,n){for(var i=t;i;i=i.parentNode){var a=Er(i.getModel().get("name"),""),o=n.getTextRect(a),s=Math.max(o.width+HWe*2,r.emptyItemWidth);r.totalWidth+=s+IW,r.renderList.push({node:i,text:a,width:s})}},e.prototype._renderContent=function(t,r,n,i,a,o,s,l){for(var u=0,c=r.emptyItemWidth,f=t.get(["breadcrumb","height"]),h=r.totalWidth,d=r.renderList,v=a.getModel("itemStyle").getItemStyle(),m=d.length-1;m>=0;m--){var y=d[m],x=y.node,_=y.width,b=y.text;h>n.width&&(h-=_-c,_=c,b=null);var S=new wn({shape:{points:ZWe(u,0,_,f,m===d.length-1,m===0)},style:ke(i.getItemStyle(),{lineJoin:"bevel"}),textContent:new at({style:Pt(o,{text:b})}),textConfig:{position:"inside"},z2:Bv*1e4,onclick:Fe(l,x)});S.disableLabelAnimation=!0,S.getTextContent().ensureState("emphasis").style=Pt(s,{text:b}),S.ensureState("emphasis").style=v,Gt(S,a.get("focus"),a.get("blurScope"),a.get("disabled")),this.group.add(S),YWe(S,t,x),u+=_+IW}},e.prototype.remove=function(){this.group.removeAll()},e}();function ZWe(e,t,r,n,i,a){var o=[[i?e:e-_M,t],[e+r,t],[e+r,t+n],[i?e:e-_M,t+n]];return!a&&o.splice(2,0,[e+r+_M,t+n/2]),!i&&o.push([e,t+n/2]),o}function YWe(e,t,r){je(e).eventData={componentType:"series",componentSubType:"treemap",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:r&&r.dataIndex,name:r&&r.name},treePathInfo:r&&oC(r,t)}}var XWe=function(){function e(){this._storage=[],this._elExistsMap={}}return e.prototype.add=function(t,r,n,i,a){return this._elExistsMap[t.id]?!1:(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:r,duration:n,delay:i,easing:a}),!0)},e.prototype.finished=function(t){return this._finishedCallback=t,this},e.prototype.start=function(){for(var t=this,r=this._storage.length,n=function(){r--,r<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},i=0,a=this._storage.length;iOW||Math.abs(r.dy)>OW)){var n=this.seriesModel.getData().tree.root;if(!n)return;var i=n.getLayout();if(!i)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:i.x+r.dx,y:i.y+r.dy,width:i.width,height:i.height}})}},t.prototype._onZoom=function(r){var n=r.originX,i=r.originY,a=r.scale;if(this._state!=="animating"){var o=this.seriesModel.getData().tree.root;if(!o)return;var s=o.getLayout();if(!s)return;var l=new Oe(s.x,s.y,s.width,s.height),u=null,c=this._controllerHost;u=c.zoomLimit;var f=c.zoom=c.zoom||1;if(f*=a,u){var h=u.min||0,d=u.max||1/0;f=Math.max(Math.min(d,f),h)}var v=f/c.zoom;c.zoom=f;var m=this.seriesModel.layoutInfo;n-=m.x,i-=m.y;var y=Hr();qa(y,y,[-n,-i]),IT(y,y,[v,v]),qa(y,y,[n,i]),l.applyTransform(y),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:l.x,y:l.y,width:l.width,height:l.height}})}},t.prototype._initEvents=function(r){var n=this;r.on("click",function(i){if(n._state==="ready"){var a=n.seriesModel.get("nodeClick",!0);if(a){var o=n.findTarget(i.offsetX,i.offsetY);if(o){var s=o.node;if(s.getLayout().isLeafRoot)n._rootToNode(o);else if(a==="zoomToNode")n._zoomToNode(o);else if(a==="link"){var l=s.hostTree.data.getItemModel(s.dataIndex),u=l.get("link",!0),c=l.get("target",!0)||"blank";u&&ww(u,c)}}}}},this)},t.prototype._renderBreadcrumb=function(r,n,i){var a=this;i||(i=r.get("leafDepth",!0)!=null?{node:r.getViewRoot()}:this.findTarget(n.getWidth()/2,n.getHeight()/2),i||(i={node:r.getData().tree.root})),(this._breadcrumb||(this._breadcrumb=new UWe(this.group))).render(r,n,i.node,function(o){a._state!=="animating"&&(nR(r.getViewRoot(),o)?a._rootToNode({node:o}):a._zoomToNode({node:o}))})},t.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage=rg(),this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},t.prototype.dispose=function(){this._clearController()},t.prototype._zoomToNode=function(r){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:r.node})},t.prototype._rootToNode=function(r){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:r.node})},t.prototype.findTarget=function(r,n){var i,a=this.seriesModel.getViewRoot();return a.eachNode({attr:"viewChildren",order:"preorder"},function(o){var s=this._storage.background[o.getRawIndex()];if(s){var l=s.transformCoordToLocal(r,n),u=s.shape;if(u.x<=l[0]&&l[0]<=u.x+u.width&&u.y<=l[1]&&l[1]<=u.y+u.height)i={node:o,offsetX:l[0],offsetY:l[1]};else return!1}},this),i},t.type="treemap",t}(bt);function rg(){return{nodeGroup:[],background:[],content:[]}}function t8e(e,t,r,n,i,a,o,s,l,u){if(!o)return;var c=o.getLayout(),f=e.getData(),h=o.getModel();if(f.setItemGraphicEl(o.dataIndex,null),!c||!c.isInView)return;var d=c.width,v=c.height,m=c.borderWidth,y=c.invisible,x=o.getRawIndex(),_=s&&s.getRawIndex(),b=o.viewChildren,S=c.upperHeight,T=b&&b.length,C=h.getModel("itemStyle"),A=h.getModel(["emphasis","itemStyle"]),P=h.getModel(["blur","itemStyle"]),I=h.getModel(["select","itemStyle"]),k=C.get("borderRadius")||0,O=le("nodeGroup",SE);if(!O)return;if(l.add(O),O.x=c.x||0,O.y=c.y||0,O.markRedraw(),Uw(O).nodeWidth=d,Uw(O).nodeHeight=v,c.isAboveViewRoot)return O;var D=le("background",EW,u,JWe);D&&W(O,D,T&&c.upperLabelHeight);var N=h.getModel("emphasis"),z=N.get("focus"),V=N.get("blurScope"),F=N.get("disabled"),$=z==="ancestor"?o.getAncestorsIndices():z==="descendant"?o.getDescendantIndices():z;if(T)by(O)&&Oc(O,!1),D&&(Oc(D,!F),f.setItemGraphicEl(o.dataIndex,D),PI(D,$,V));else{var B=le("content",EW,u,QWe);B&&G(O,B),D.disableMorphing=!0,D&&by(D)&&Oc(D,!1),Oc(O,!F),f.setItemGraphicEl(o.dataIndex,O);var Z=h.getShallow("cursor");Z&&B.attr("cursor",Z),PI(O,$,V)}return O;function W(xe,ie,de){var ue=je(ie);if(ue.dataIndex=o.dataIndex,ue.seriesIndex=e.seriesIndex,ie.setShape({x:0,y:0,width:d,height:v,r:k}),y)Y(ie);else{ie.invisible=!1;var te=o.getVisual("style"),Ve=te.stroke,Ce=jW(C);Ce.fill=Ve;var Ge=pc(A);Ge.fill=A.get("borderColor");var Ye=pc(P);Ye.fill=P.get("borderColor");var vt=pc(I);if(vt.fill=I.get("borderColor"),de){var Ft=d-2*m;K(ie,Ve,te.opacity,{x:m,y:0,width:Ft,height:S})}else ie.removeTextContent();ie.setStyle(Ce),ie.ensureState("emphasis").style=Ge,ie.ensureState("blur").style=Ye,ie.ensureState("select").style=vt,hf(ie)}xe.add(ie)}function G(xe,ie){var de=je(ie);de.dataIndex=o.dataIndex,de.seriesIndex=e.seriesIndex;var ue=Math.max(d-2*m,0),te=Math.max(v-2*m,0);if(ie.culling=!0,ie.setShape({x:m,y:m,width:ue,height:te,r:k}),y)Y(ie);else{ie.invisible=!1;var Ve=o.getVisual("style"),Ce=Ve.fill,Ge=jW(C);Ge.fill=Ce,Ge.decal=Ve.decal;var Ye=pc(A),vt=pc(P),Ft=pc(I);K(ie,Ce,Ve.opacity,null),ie.setStyle(Ge),ie.ensureState("emphasis").style=Ye,ie.ensureState("blur").style=vt,ie.ensureState("select").style=Ft,hf(ie)}xe.add(ie)}function Y(xe){!xe.invisible&&a.push(xe)}function K(xe,ie,de,ue){var te=h.getModel(ue?NW:DW),Ve=Er(h.get("name"),null),Ce=te.getShallow("show");Zr(xe,jr(h,ue?NW:DW),{defaultText:Ce?Ve:null,inheritColor:ie,defaultOpacity:de,labelFetcher:e,labelDataIndex:o.dataIndex});var Ge=xe.getTextContent();if(Ge){var Ye=Ge.style,vt=l0(Ye.padding||0);ue&&(xe.setTextConfig({layoutRect:ue}),Ge.disableLabelLayout=!0),Ge.beforeUpdate=function(){var rr=Math.max((ue?ue.width:xe.shape.width)-vt[1]-vt[3],0),jn=Math.max((ue?ue.height:xe.shape.height)-vt[0]-vt[2],0);(Ye.width!==rr||Ye.height!==jn)&&Ge.setStyle({width:rr,height:jn})},Ye.truncateMinChar=2,Ye.lineOverflow="truncate",ee(Ye,ue,c);var Ft=Ge.getState("emphasis");ee(Ft?Ft.style:null,ue,c)}}function ee(xe,ie,de){var ue=xe?xe.text:null;if(!ie&&de.isLeafRoot&&ue!=null){var te=e.get("drillDownIcon",!0);xe.text=te?te+" "+ue:ue}}function le(xe,ie,de,ue){var te=_!=null&&r[xe][_],Ve=i[xe];return te?(r[xe][_]=null,he(Ve,te)):y||(te=new ie,te instanceof pa&&(te.z2=r8e(de,ue)),Ne(Ve,te)),t[xe][x]=te}function he(xe,ie){var de=xe[x]={};ie instanceof SE?(de.oldX=ie.x,de.oldY=ie.y):de.oldShape=ne({},ie.shape)}function Ne(xe,ie){var de=xe[x]={},ue=o.parentNode,te=ie instanceof Pe;if(ue&&(!n||n.direction==="drillDown")){var Ve=0,Ce=0,Ge=i.background[ue.getRawIndex()];!n&&Ge&&Ge.oldShape&&(Ve=Ge.oldShape.width,Ce=Ge.oldShape.height),te?(de.oldX=0,de.oldY=Ce):de.oldShape={x:Ve,y:Ce,width:0,height:0}}de.fadein=!te}}function r8e(e,t){return e*KWe+t}var Ry=R,n8e=Le,Zw=-1,Ur=function(){function e(t){var r=t.mappingMethod,n=t.type,i=this.option=Me(t);this.type=n,this.mappingMethod=r,this._normalizeData=o8e[r];var a=e.visualHandlers[n];this.applyVisual=a.applyVisual,this.getColorMapper=a.getColorMapper,this._normalizedToVisual=a._normalizedToVisual[r],r==="piecewise"?(bM(i),i8e(i)):r==="category"?i.categories?a8e(i):bM(i,!0):(_n(r!=="linear"||i.dataExtent),bM(i))}return e.prototype.mapValueToVisual=function(t){var r=this._normalizeData(t);return this._normalizedToVisual(r,t)},e.prototype.getNormalizer=function(){return me(this._normalizeData,this)},e.listVisualTypes=function(){return it(e.visualHandlers)},e.isValidType=function(t){return e.visualHandlers.hasOwnProperty(t)},e.eachVisual=function(t,r,n){Le(t)?R(t,r,n):r.call(n,t)},e.mapVisual=function(t,r,n){var i,a=ae(t)?[]:Le(t)?{}:(i=!0,null);return e.eachVisual(t,function(o,s){var l=r.call(n,o,s);i?a=l:a[s]=l}),a},e.retrieveVisuals=function(t){var r={},n;return t&&Ry(e.visualHandlers,function(i,a){t.hasOwnProperty(a)&&(r[a]=t[a],n=!0)}),n?r:null},e.prepareVisualTypes=function(t){if(ae(t))t=t.slice();else if(n8e(t)){var r=[];Ry(t,function(n,i){r.push(i)}),t=r}else return[];return t.sort(function(n,i){return i==="color"&&n!=="color"&&n.indexOf("color")===0?1:-1}),t},e.dependsOn=function(t,r){return r==="color"?!!(t&&t.indexOf(r)===0):t===r},e.findPieceIndex=function(t,r,n){for(var i,a=1/0,o=0,s=r.length;o=0;a--)n[a]==null&&(delete r[t[a]],t.pop())}function bM(e,t){var r=e.visual,n=[];Le(r)?Ry(r,function(a){n.push(a)}):r!=null&&n.push(r);var i={color:1,symbol:1};!t&&n.length===1&&!i.hasOwnProperty(e.type)&&(n[1]=n[0]),qre(e,n)}function w_(e){return{applyVisual:function(t,r,n){var i=this.mapValueToVisual(t);n("color",e(r("color"),i))},_normalizedToVisual:TE([0,1])}}function RW(e){var t=this.option.visual;return t[Math.round(gt(e,[0,1],[0,t.length-1],!0))]||{}}function ng(e){return function(t,r,n){n(e,this.mapValueToVisual(t))}}function Mg(e){var t=this.option.visual;return t[this.option.loop&&e!==Zw?e%t.length:e]}function gc(){return this.option.visual[0]}function TE(e){return{linear:function(t){return gt(t,e,this.option.visual,!0)},category:Mg,piecewise:function(t,r){var n=CE.call(this,r);return n==null&&(n=gt(t,e,this.option.visual,!0)),n},fixed:gc}}function CE(e){var t=this.option,r=t.pieceList;if(t.hasSpecialVisual){var n=Ur.findPieceIndex(e,r),i=r[n];if(i&&i.visual)return i.visual[this.type]}}function qre(e,t){return e.visual=t,e.type==="color"&&(e.parsedVisual=se(t,function(r){var n=On(r);return n||[0,0,0,1]})),t}var o8e={linear:function(e){return gt(e,this.option.dataExtent,[0,1],!0)},piecewise:function(e){var t=this.option.pieceList,r=Ur.findPieceIndex(e,t,!0);if(r!=null)return gt(r,[0,t.length-1],[0,1],!0)},category:function(e){var t=this.option.categories?this.option.categoryMap[e]:e;return t??Zw},fixed:sr};function S_(e,t,r){return e?t<=r:t=r.length||m===r[m.depth]){var x=h8e(i,l,m,y,v,n);Jre(m,x,r,n)}})}}}function u8e(e,t,r){var n=ne({},t),i=r.designatedVisualItemStyle;return R(["color","colorAlpha","colorSaturation"],function(a){i[a]=t[a];var o=e.get(a);i[a]=null,o!=null&&(n[a]=o)}),n}function BW(e){var t=wM(e,"color");if(t){var r=wM(e,"colorAlpha"),n=wM(e,"colorSaturation");return n&&(t=ks(t,null,null,n)),r&&(t=gy(t,r)),t}}function c8e(e,t){return t!=null?ks(t,null,null,e):null}function wM(e,t){var r=e[t];if(r!=null&&r!=="none")return r}function f8e(e,t,r,n,i,a){if(!(!a||!a.length)){var o=SM(t,"color")||i.color!=null&&i.color!=="none"&&(SM(t,"colorAlpha")||SM(t,"colorSaturation"));if(o){var s=t.get("visualMin"),l=t.get("visualMax"),u=r.dataExtent.slice();s!=null&&su[1]&&(u[1]=l);var c=t.get("colorMappingBy"),f={type:o.name,dataExtent:u,visual:o.range};f.type==="color"&&(c==="index"||c==="id")?(f.mappingMethod="category",f.loop=!0):f.mappingMethod="linear";var h=new Ur(f);return Kre(h).drColorMappingBy=c,h}}}function SM(e,t){var r=e.get(t);return ae(r)&&r.length?{name:t,range:r}:null}function h8e(e,t,r,n,i,a){var o=ne({},t);if(i){var s=i.type,l=s==="color"&&Kre(i).drColorMappingBy,u=l==="index"?n:l==="id"?a.mapIdToIndex(r.getId()):r.getValue(e.get("visualDimension"));o[s]=i.mapValueToVisual(u)}return o}var By=Math.max,Yw=Math.min,zW=nn,iR=R,Qre=["itemStyle","borderWidth"],d8e=["itemStyle","gapWidth"],v8e=["upperLabel","show"],p8e=["upperLabel","height"];const g8e={seriesType:"treemap",reset:function(e,t,r,n){var i=e.option,a=Rr(e,r).refContainer,o=zt(e.getBoxLayoutParams(),a),s=i.size||[],l=pe(zW(o.width,s[0]),a.width),u=pe(zW(o.height,s[1]),a.height),c=n&&n.type,f=["treemapZoomToNode","treemapRootToNode"],h=jy(n,f,e),d=c==="treemapRender"||c==="treemapMove"?n.rootRect:null,v=e.getViewRoot(),m=Zre(v);if(c!=="treemapMove"){var y=c==="treemapZoomToNode"?w8e(e,h,v,l,u):d?[d.width,d.height]:[l,u],x=i.sort;x&&x!=="asc"&&x!=="desc"&&(x="desc");var _={squareRatio:i.squareRatio,sort:x,leafDepth:i.leafDepth};v.hostTree.clearLayouts();var b={x:0,y:0,width:y[0],height:y[1],area:y[0]*y[1]};v.setLayout(b),ene(v,_,!1,0),b=v.getLayout(),iR(m,function(T,C){var A=(m[C+1]||v).getValue();T.setLayout(ne({dataExtent:[A,A],borderWidth:0,upperHeight:0},b))})}var S=e.getData().tree.root;S.setLayout(S8e(o,d,h),!0),e.setLayoutInfo(o),tne(S,new Oe(-o.x,-o.y,r.getWidth(),r.getHeight()),m,v,0)}};function ene(e,t,r,n){var i,a;if(!e.isRemoved()){var o=e.getLayout();i=o.width,a=o.height;var s=e.getModel(),l=s.get(Qre),u=s.get(d8e)/2,c=rne(s),f=Math.max(l,c),h=l-u,d=f-u;e.setLayout({borderWidth:l,upperHeight:f,upperLabelHeight:c},!0),i=By(i-2*h,0),a=By(a-h-d,0);var v=i*a,m=m8e(e,s,v,t,r,n);if(m.length){var y={x:h,y:d,width:i,height:a},x=Yw(i,a),_=1/0,b=[];b.area=0;for(var S=0,T=m.length;S=0;l--){var u=i[n==="asc"?o-l-1:l].getValue();u/r*ts[1]&&(s[1]=u)})),{sum:n,dataExtent:s}}function b8e(e,t,r){for(var n=0,i=1/0,a=0,o=void 0,s=e.length;an&&(n=o));var l=e.area*e.area,u=t*t*r;return l?By(u*n/l,l/(u*i)):1/0}function $W(e,t,r,n,i){var a=t===r.width?0:1,o=1-a,s=["x","y"],l=["width","height"],u=r[s[a]],c=t?e.area/t:0;(i||c>r[l[o]])&&(c=r[l[o]]);for(var f=0,h=e.length;fmI&&(u=mI),a=s}un&&(n=t);var a=n%2?n+2:n+3;i=[];for(var o=0;o0&&(T[0]=-T[0],T[1]=-T[1]);var A=S[0]<0?-1:1;if(a.__position!=="start"&&a.__position!=="end"){var P=-Math.atan2(S[1],S[0]);f[0].8?"left":h[0]<-.8?"right":"center",m=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";break;case"start":a.x=-h[0]*x+c[0],a.y=-h[1]*_+c[1],v=h[0]>.8?"right":h[0]<-.8?"left":"center",m=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":a.x=x*A+c[0],a.y=c[1]+I,v=S[0]<0?"right":"left",a.originX=-x*A,a.originY=-I;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":a.x=C[0],a.y=C[1]+I,v="center",a.originY=-I;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":a.x=-x*A+f[0],a.y=f[1]+I,v=S[0]>=0?"right":"left",a.originX=x*A,a.originY=-I;break}a.scaleX=a.scaleY=o,a.setStyle({verticalAlign:a.__verticalAlign||m,align:a.__align||v})}},t}(Pe),uR=function(){function e(t){this.group=new Pe,this._LineCtor=t||lR}return e.prototype.updateData=function(t){var r=this;this._progressiveEls=null;var n=this,i=n.group,a=n._lineData;n._lineData=t,a||i.removeAll();var o=UW(t);t.diff(a).add(function(s){r._doAdd(t,s,o)}).update(function(s,l){r._doUpdate(a,t,l,s,o)}).remove(function(s){i.remove(a.getItemGraphicEl(s))}).execute()},e.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl(function(r,n){r.updateLayout(t,n)},this)},e.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=UW(t),this._lineData=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r){this._progressiveEls=[];function n(s){!s.isGroup&&!$8e(s)&&(s.incremental=!0,s.ensureState("emphasis").hoverLayer=!0)}for(var i=t.start;i0}function UW(e){var t=e.hostModel,r=t.getModel("emphasis");return{lineStyle:t.getModel("lineStyle").getLineStyle(),emphasisLineStyle:r.getModel(["lineStyle"]).getLineStyle(),blurLineStyle:t.getModel(["blur","lineStyle"]).getLineStyle(),selectLineStyle:t.getModel(["select","lineStyle"]).getLineStyle(),emphasisDisabled:r.get("disabled"),blurScope:r.get("blurScope"),focus:r.get("focus"),labelStatesModels:jr(t)}}function ZW(e){return isNaN(e[0])||isNaN(e[1])}function PM(e){return e&&!ZW(e[0])&&!ZW(e[1])}var kM=[],LM=[],IM=[],ph=rn,EM=Xl,YW=Math.abs;function XW(e,t,r){for(var n=e[0],i=e[1],a=e[2],o=1/0,s,l=r*r,u=.1,c=.1;c<=.9;c+=.1){kM[0]=ph(n[0],i[0],a[0],c),kM[1]=ph(n[1],i[1],a[1],c);var f=YW(EM(kM,t)-l);f=0?s=s+u:s=s-u:v>=0?s=s-u:s=s+u}return s}function OM(e,t){var r=[],n=vy,i=[[],[],[]],a=[[],[]],o=[];t/=2,e.eachEdge(function(s,l){var u=s.getLayout(),c=s.getVisual("fromSymbol"),f=s.getVisual("toSymbol");u.__original||(u.__original=[No(u[0]),No(u[1])],u[2]&&u.__original.push(No(u[2])));var h=u.__original;if(u[2]!=null){if(Pn(i[0],h[0]),Pn(i[1],h[2]),Pn(i[2],h[1]),c&&c!=="none"){var d=kg(s.node1),v=XW(i,h[0],d*t);n(i[0][0],i[1][0],i[2][0],v,r),i[0][0]=r[3],i[1][0]=r[4],n(i[0][1],i[1][1],i[2][1],v,r),i[0][1]=r[3],i[1][1]=r[4]}if(f&&f!=="none"){var d=kg(s.node2),v=XW(i,h[1],d*t);n(i[0][0],i[1][0],i[2][0],v,r),i[1][0]=r[1],i[2][0]=r[2],n(i[0][1],i[1][1],i[2][1],v,r),i[1][1]=r[1],i[2][1]=r[2]}Pn(u[0],i[0]),Pn(u[1],i[2]),Pn(u[2],i[1])}else{if(Pn(a[0],h[0]),Pn(a[1],h[1]),El(o,a[1],a[0]),Pf(o,o),c&&c!=="none"){var d=kg(s.node1);rw(a[0],a[0],o,d*t)}if(f&&f!=="none"){var d=kg(s.node2);rw(a[1],a[1],o,-d*t)}Pn(u[0],a[0]),Pn(u[1],a[1])}})}var une=Je();function F8e(e){if(e)return une(e).bridge}function qW(e,t){e&&(une(e).bridge=t)}function KW(e){return e.type==="view"}var V8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){var i=new S0,a=new uR,o=this.group,s=new Pe;this._controller=new Nf(n.getZr()),this._controllerHost={target:s},s.add(i.group),s.add(a.group),o.add(s),this._symbolDraw=i,this._lineDraw=a,this._mainGroup=s,this._firstRender=!0},t.prototype.render=function(r,n,i){var a=this,o=r.coordinateSystem,s=!1;this._model=r,this._api=i,this._active=!0;var l=this._getThumbnailInfo();l&&l.bridge.reset(i);var u=this._symbolDraw,c=this._lineDraw;if(KW(o)){var f={x:o.x,y:o.y,scaleX:o.scaleX,scaleY:o.scaleY};this._firstRender?this._mainGroup.attr(f):lt(this._mainGroup,f,r)}OM(r.getGraph(),Pg(r));var h=r.getData();u.updateData(h);var d=r.getEdgeData();c.updateData(d),this._updateNodeAndLinkScale(),this._updateController(null,r,i),clearTimeout(this._layoutTimeout);var v=r.forceLayout,m=r.get(["force","layoutAnimation"]);v&&(s=!0,this._startForceLayoutIteration(v,i,m));var y=r.get("layout");h.graph.eachNode(function(S){var T=S.dataIndex,C=S.getGraphicEl(),A=S.getModel();if(C){C.off("drag").off("dragend");var P=A.get("draggable");P&&C.on("drag",function(k){switch(y){case"force":v.warmUp(),!a._layouting&&a._startForceLayoutIteration(v,i,m),v.setFixed(T),h.setItemLayout(T,[C.x,C.y]);break;case"circular":h.setItemLayout(T,[C.x,C.y]),S.setLayout({fixed:!0},!0),sR(r,"symbolSize",S,[k.offsetX,k.offsetY]),a.updateLayout(r);break;case"none":default:h.setItemLayout(T,[C.x,C.y]),oR(r.getGraph(),r),a.updateLayout(r);break}}).on("dragend",function(){v&&v.setUnfixed(T)}),C.setDraggable(P,!!A.get("cursor"));var I=A.get(["emphasis","focus"]);I==="adjacency"&&(je(C).focus=S.getAdjacentDataIndices())}}),h.graph.eachEdge(function(S){var T=S.getGraphicEl(),C=S.getModel().get(["emphasis","focus"]);T&&C==="adjacency"&&(je(T).focus={edge:[S.dataIndex],node:[S.node1.dataIndex,S.node2.dataIndex]})});var x=r.get("layout")==="circular"&&r.get(["circular","rotateLabel"]),_=h.getLayout("cx"),b=h.getLayout("cy");h.graph.eachNode(function(S){one(S,x,_,b)}),this._firstRender=!1,s||this._renderThumbnail(r,i,this._symbolDraw,this._lineDraw)},t.prototype.dispose=function(){this.remove(),this._controller&&this._controller.dispose(),this._controllerHost=null},t.prototype._startForceLayoutIteration=function(r,n,i){var a=this,o=!1;(function s(){r.step(function(l){a.updateLayout(a._model),(l||!o)&&(o=!0,a._renderThumbnail(a._model,n,a._symbolDraw,a._lineDraw)),(a._layouting=!l)&&(i?a._layoutTimeout=setTimeout(s,16):s())})})()},t.prototype._updateController=function(r,n,i){var a=this._controller,o=this._controllerHost,s=n.coordinateSystem;if(!KW(s)){a.disable();return}a.enable(n.get("roam"),{api:i,zInfo:{component:n},triggerInfo:{roamTrigger:n.get("roamTrigger"),isInSelf:function(l,u,c){return s.containPoint([u,c])},isInClip:function(l,u,c){return!r||r.contain(u,c)}}}),o.zoomLimit=n.get("scaleLimit"),o.zoom=s.getZoom(),a.off("pan").off("zoom").on("pan",function(l){i.dispatchAction({seriesId:n.id,type:"graphRoam",dx:l.dx,dy:l.dy})}).on("zoom",function(l){i.dispatchAction({seriesId:n.id,type:"graphRoam",zoom:l.scale,originX:l.originX,originY:l.originY})})},t.prototype.updateViewOnPan=function(r,n,i){this._active&&(Kj(this._controllerHost,i.dx,i.dy),this._updateThumbnailWindow())},t.prototype.updateViewOnZoom=function(r,n,i){this._active&&(Jj(this._controllerHost,i.zoom,i.originX,i.originY),this._updateNodeAndLinkScale(),OM(r.getGraph(),Pg(r)),this._lineDraw.updateLayout(),n.updateLabelLayout(),this._updateThumbnailWindow())},t.prototype._updateNodeAndLinkScale=function(){var r=this._model,n=r.getData(),i=Pg(r);n.eachItemGraphicEl(function(a,o){a&&a.setSymbolScale(i)})},t.prototype.updateLayout=function(r){this._active&&(OM(r.getGraph(),Pg(r)),this._symbolDraw.updateLayout(),this._lineDraw.updateLayout())},t.prototype.remove=function(){this._active=!1,clearTimeout(this._layoutTimeout),this._layouting=!1,this._layoutTimeout=null,this._symbolDraw&&this._symbolDraw.remove(),this._lineDraw&&this._lineDraw.remove(),this._controller&&this._controller.disable()},t.prototype._getThumbnailInfo=function(){var r=this._model,n=r.coordinateSystem;if(n.type==="view"){var i=F8e(r);if(i)return{bridge:i,coordSys:n}}},t.prototype._updateThumbnailWindow=function(){var r=this._getThumbnailInfo();r&&r.bridge.updateWindow(r.coordSys.transform,this._api)},t.prototype._renderThumbnail=function(r,n,i,a){var o=this._getThumbnailInfo();if(o){var s=new Pe,l=i.group.children(),u=a.group.children(),c=new Pe,f=new Pe;s.add(f),s.add(c);for(var h=0;h=0&&t.call(r,n[a],a)},e.prototype.eachEdge=function(t,r){for(var n=this.edges,i=n.length,a=0;a=0&&n[a].node1.dataIndex>=0&&n[a].node2.dataIndex>=0&&t.call(r,n[a],a)},e.prototype.breadthFirstTraverse=function(t,r,n,i){if(r instanceof mc||(r=this._nodesMap[gh(r)]),!!r){for(var a=n==="out"?"outEdges":n==="in"?"inEdges":"edges",o=0;o=0&&l.node2.dataIndex>=0});for(var a=0,o=i.length;a=0&&!t.hasKey(v)&&(t.set(v,!0),o.push(d.node1))}for(l=0;l=0&&!t.hasKey(b)&&(t.set(b,!0),s.push(_.node2))}}}return{edge:t.keys(),node:r.keys()}},e}(),cne=function(){function e(t,r,n){this.dataIndex=-1,this.node1=t,this.node2=r,this.dataIndex=n??-1}return e.prototype.getModel=function(t){if(!(this.dataIndex<0)){var r=this.hostGraph,n=r.edgeData.getItemModel(this.dataIndex);return n.getModel(t)}},e.prototype.getAdjacentDataIndices=function(){return{edge:[this.dataIndex],node:[this.node1.dataIndex,this.node2.dataIndex]}},e.prototype.getTrajectoryDataIndices=function(){var t=we(),r=we();t.set(this.dataIndex,!0);for(var n=[this.node1],i=[this.node2],a=0;a=0&&!t.hasKey(f)&&(t.set(f,!0),n.push(c.node1))}for(a=0;a=0&&!t.hasKey(m)&&(t.set(m,!0),i.push(v.node2))}return{edge:t.keys(),node:r.keys()}},e}();function fne(e,t){return{getValue:function(r){var n=this[e][t];return n.getStore().get(n.getDimensionIndex(r||"value"),this.dataIndex)},setVisual:function(r,n){this.dataIndex>=0&&this[e][t].setItemVisual(this.dataIndex,r,n)},getVisual:function(r){return this[e][t].getItemVisual(this.dataIndex,r)},setLayout:function(r,n){this.dataIndex>=0&&this[e][t].setItemLayout(this.dataIndex,r,n)},getLayout:function(){return this[e][t].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[e][t].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[e][t].getRawIndex(this.dataIndex)}}}cr(mc,fne("hostGraph","data"));cr(cne,fne("hostGraph","edgeData"));function cR(e,t,r,n,i){for(var a=new G8e(n),o=0;o "+h)),u++)}var d=r.get("coordinateSystem"),v;if(d==="cartesian2d"||d==="polar"||d==="matrix")v=Jo(e,r);else{var m=Uv.get(d),y=m?m.dimensions||[]:[];We(y,"value")<0&&y.concat(["value"]);var x=qv(e,{coordDimensions:y,encodeDefine:r.getEncode()}).dimensions;v=new Dn(x,r),v.initData(e)}var _=new Dn(["value"],r);return _.initData(l,s),i&&i(v,_),Hre({mainData:v,struct:a,structAttr:"graph",datas:{node:v,edge:_},datasAttr:{node:"data",edge:"edgeData"}}),a.update(),a}var W8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.hasSymbolVisual=!0,r}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments);var n=this;function i(){return n._categoriesData}this.legendVisualProvider=new tp(i,i),this.fillDataTextStyle(r.edges||r.links),this._updateCategoriesData()},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(r.edges||r.links),this._updateCategoriesData()},t.prototype.mergeDefaultAndTheme=function(r){e.prototype.mergeDefaultAndTheme.apply(this,arguments),uf(r,"edgeLabel",["show"])},t.prototype.getInitialData=function(r,n){var i=r.edges||r.links||[],a=r.data||r.nodes||[],o=this;if(a&&i){L8e(this);var s=cR(a,i,this,!0,l);return R(s.edges,function(u){I8e(u.node1,u.node2,this,u.dataIndex)},this),s.data}function l(u,c){u.wrapMethod("getItemModel",function(v){var m=o._categoriesModels,y=v.getShallow("category"),x=m[y];return x&&(x.parentModel=v.parentModel,v.parentModel=x),v});var f=et.prototype.getModel;function h(v,m){var y=f.call(this,v,m);return y.resolveParentPath=d,y}c.wrapMethod("getItemModel",function(v){return v.resolveParentPath=d,v.getModel=h,v});function d(v){if(v&&(v[0]==="label"||v[1]==="label")){var m=v.slice();return v[0]==="label"?m[0]="edgeLabel":v[1]==="label"&&(m[1]="edgeLabel"),m}return v}}},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.getCategoriesData=function(){return this._categoriesData},t.prototype.formatTooltip=function(r,n,i){if(i==="edge"){var a=this.getData(),o=this.getDataParams(r,i),s=a.graph.getEdgeByIndex(r),l=a.getName(s.node1.dataIndex),u=a.getName(s.node2.dataIndex),c=[];return l!=null&&c.push(l),u!=null&&c.push(u),Ar("nameValue",{name:c.join(" > "),value:o.value,noValue:o.value==null})}var f=vee({series:this,dataIndex:r,multipleSeries:n});return f},t.prototype._updateCategoriesData=function(){var r=se(this.option.categories||[],function(i){return i.value!=null?i:ne({value:0},i)}),n=new Dn(["value"],this);n.initData(r),this._categoriesData=n,this._categoriesModels=n.mapArray(function(i){return n.getItemModel(i)})},t.prototype.setZoom=function(r){this.option.zoom=r},t.prototype.setCenter=function(r){this.option.center=r},t.prototype.isAnimationEnabled=function(){return e.prototype.isAnimationEnabled.call(this)&&!(this.get("layout")==="force"&&this.get(["force","layoutAnimation"]))},t.type="series.graph",t.dependencies=["grid","polar","geo","singleAxis","calendar"],t.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:J.color.neutral50,width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:J.color.primary}}},t}(Ct);function H8e(e){e.registerChartView(V8e),e.registerSeriesModel(W8e),e.registerProcessor(C8e),e.registerVisual(A8e),e.registerVisual(M8e),e.registerLayout(E8e),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,D8e),e.registerLayout(j8e),e.registerCoordinateSystem("graphView",{dimensions:jf.dimensions,create:B8e}),e.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},sr),e.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},sr),e.registerAction({type:"graphRoam",event:"graphRoam",update:"none"},function(t,r,n){r.eachComponent({mainType:"series",query:t},function(i){var a=n.getViewOfSeriesModel(i);a&&(t.dx!=null&&t.dy!=null&&a.updateViewOnPan(i,n,t),t.zoom!=null&&t.originX!=null&&t.originY!=null&&a.updateViewOnZoom(i,n,t));var o=i.coordinateSystem,s=iC(o,t,i.get("scaleLimit"));i.setCenter&&i.setCenter(s.center),i.setZoom&&i.setZoom(s.zoom)})})}var JW=function(e){q(t,e);function t(r,n,i){var a=e.call(this)||this;je(a).dataType="node",a.z2=2;var o=new at;return a.setTextContent(o),a.updateData(r,n,i,!0),a}return t.prototype.updateData=function(r,n,i,a){var o=this,s=r.graph.getNodeByIndex(n),l=r.hostModel,u=s.getModel(),c=u.getModel("emphasis"),f=r.getItemLayout(n),h=ne(ko(u.getModel("itemStyle"),f,!0),f),d=this;if(isNaN(h.startAngle)){d.setShape(h);return}a?d.setShape(h):lt(d,{shape:h},l,n);var v=ne(ko(u.getModel("itemStyle"),f,!0),f);o.setShape(v),o.useStyle(r.getItemVisual(n,"style")),Nr(o,u),this._updateLabel(l,u,s),r.setItemGraphicEl(n,d),Nr(d,u,"itemStyle");var m=c.get("focus");Gt(this,m==="adjacency"?s.getAdjacentDataIndices():m,c.get("blurScope"),c.get("disabled"))},t.prototype._updateLabel=function(r,n,i){var a=this.getTextContent(),o=i.getLayout(),s=(o.startAngle+o.endAngle)/2,l=Math.cos(s),u=Math.sin(s),c=n.getModel("label");a.ignore=!c.get("show");var f=jr(n),h=i.getVisual("style");Zr(a,f,{labelFetcher:{getFormattedLabel:function(_,b,S,T,C,A){return r.getFormattedLabel(_,b,"node",T,ui(C,f.normal&&f.normal.get("formatter"),n.get("name")),A)}},labelDataIndex:i.dataIndex,defaultText:i.dataIndex+"",inheritColor:h.fill,defaultOpacity:h.opacity,defaultOutsidePosition:"startArc"});var d=c.get("position")||"outside",v=c.get("distance")||0,m;d==="outside"?m=o.r+v:m=(o.r+o.r0)/2,this.textConfig={inside:d!=="outside"};var y=d!=="outside"?c.get("align")||"center":l>0?"left":"right",x=d!=="outside"?c.get("verticalAlign")||"middle":u>0?"top":"bottom";a.attr({x:l*m+o.cx,y:u*m+o.cy,rotation:0,style:{align:y,verticalAlign:x}})},t}(bn),U8e=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;return je(o).dataType="edge",o.updateData(r,n,i,a,!0),o}return t.prototype.buildPath=function(r,n){r.moveTo(n.s1[0],n.s1[1]);var i=.7,a=n.clockwise;r.arc(n.cx,n.cy,n.r,n.sStartAngle,n.sEndAngle,!a),r.bezierCurveTo((n.cx-n.s2[0])*i+n.s2[0],(n.cy-n.s2[1])*i+n.s2[1],(n.cx-n.t1[0])*i+n.t1[0],(n.cy-n.t1[1])*i+n.t1[1],n.t1[0],n.t1[1]),r.arc(n.cx,n.cy,n.r,n.tStartAngle,n.tEndAngle,!a),r.bezierCurveTo((n.cx-n.t2[0])*i+n.t2[0],(n.cy-n.t2[1])*i+n.t2[1],(n.cx-n.s1[0])*i+n.s1[0],(n.cy-n.s1[1])*i+n.s1[1],n.s1[0],n.s1[1]),r.closePath()},t.prototype.updateData=function(r,n,i,a,o){var s=r.hostModel,l=n.graph.getEdgeByIndex(i),u=l.getLayout(),c=l.node1.getModel(),f=n.getItemModel(l.dataIndex),h=f.getModel("lineStyle"),d=f.getModel("emphasis"),v=d.get("focus"),m=ne(ko(c.getModel("itemStyle"),u,!0),u),y=this;if(isNaN(m.sStartAngle)||isNaN(m.tStartAngle)){y.setShape(m);return}o?(y.setShape(m),QW(y,l,r,h)):(ga(y),QW(y,l,r,h),lt(y,{shape:m},s,i)),Gt(this,v==="adjacency"?l.getAdjacentDataIndices():v,d.get("blurScope"),d.get("disabled")),Nr(y,f,"lineStyle"),n.setItemGraphicEl(l.dataIndex,y)},t}(tt);function QW(e,t,r,n){var i=t.node1,a=t.node2,o=e.style;e.setStyle(n.getLineStyle());var s=n.get("color");switch(s){case"source":o.fill=r.getItemVisual(i.dataIndex,"style").fill,o.decal=i.getVisual("style").decal;break;case"target":o.fill=r.getItemVisual(a.dataIndex,"style").fill,o.decal=a.getVisual("style").decal;break;case"gradient":var l=r.getItemVisual(i.dataIndex,"style").fill,u=r.getItemVisual(a.dataIndex,"style").fill;if(ge(l)&&ge(u)){var c=e.shape,f=(c.s1[0]+c.s2[0])/2,h=(c.s1[1]+c.s2[1])/2,d=(c.t1[0]+c.t2[0])/2,v=(c.t1[1]+c.t2[1])/2;o.fill=new kf(f,h,d,v,[{offset:0,color:l},{offset:1,color:u}],!0)}break}}var Z8e=Math.PI/180,Y8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){},t.prototype.render=function(r,n,i){var a=r.getData(),o=this._data,s=this.group,l=-r.get("startAngle")*Z8e;if(a.diff(o).add(function(c){var f=a.getItemLayout(c);if(f){var h=new JW(a,c,l);je(h).dataIndex=c,s.add(h)}}).update(function(c,f){var h=o.getItemGraphicEl(f),d=a.getItemLayout(c);if(!d){h&&Ls(h,r,f);return}h?h.updateData(a,c,l):h=new JW(a,c,l),s.add(h)}).remove(function(c){var f=o.getItemGraphicEl(c);f&&Ls(f,r,c)}).execute(),!o){var u=r.get("center");this.group.scaleX=.01,this.group.scaleY=.01,this.group.originX=pe(u[0],i.getWidth()),this.group.originY=pe(u[1],i.getHeight()),Nt(this.group,{scaleX:1,scaleY:1},r)}this._data=a,this.renderEdges(r,l)},t.prototype.renderEdges=function(r,n){var i=r.getData(),a=r.getEdgeData(),o=this._edgeData,s=this.group;a.diff(o).add(function(l){var u=new U8e(i,a,l,n);je(u).dataIndex=l,s.add(u)}).update(function(l,u){var c=o.getItemGraphicEl(u);c.updateData(i,a,l,n),s.add(c)}).remove(function(l){var u=o.getItemGraphicEl(l);u&&Ls(u,r,l)}).execute(),this._edgeData=a},t.prototype.dispose=function(){},t.type="chord",t}(bt),X8e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments),this.fillDataTextStyle(r.edges||r.links),this.legendVisualProvider=new tp(me(this.getData,this),me(this.getRawData,this))},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(r.edges||r.links)},t.prototype.getInitialData=function(r,n){var i=r.edges||r.links||[],a=r.data||r.nodes||[];if(a&&i){var o=cR(a,i,this,!0,s);return o.data}function s(l,u){var c=et.prototype.getModel;function f(d,v){var m=c.call(this,d,v);return m.resolveParentPath=h,m}u.wrapMethod("getItemModel",function(d){return d.resolveParentPath=h,d.getModel=f,d});function h(d){if(d&&(d[0]==="label"||d[1]==="label")){var v=d.slice();return d[0]==="label"?v[0]="edgeLabel":d[1]==="label"&&(v[1]="edgeLabel"),v}return d}}},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.formatTooltip=function(r,n,i){var a=this.getDataParams(r,i);if(i==="edge"){var o=this.getData(),s=o.graph.getEdgeByIndex(r),l=o.getName(s.node1.dataIndex),u=o.getName(s.node2.dataIndex),c=[];return l!=null&&c.push(l),u!=null&&c.push(u),Ar("nameValue",{name:c.join(" > "),value:a.value,noValue:a.value==null})}return Ar("nameValue",{name:a.name,value:a.value,noValue:a.value==null})},t.prototype.getDataParams=function(r,n){var i=e.prototype.getDataParams.call(this,r,n);if(n==="node"){var a=this.getData(),o=this.getGraph().getNodeByIndex(r);if(i.name==null&&(i.name=a.getName(r)),i.value==null){var s=o.getLayout().value;i.value=s}}return i},t.type="series.chord",t.defaultOption={z:2,coordinateSystem:"none",legendHoverLink:!0,colorBy:"data",left:0,top:0,right:0,bottom:0,width:null,height:null,center:["50%","50%"],radius:["70%","80%"],clockwise:!0,startAngle:90,endAngle:"auto",minAngle:0,padAngle:3,itemStyle:{borderRadius:[0,0,5,5]},lineStyle:{width:0,color:"source",opacity:.2},label:{show:!0,position:"outside",distance:5},emphasis:{focus:"adjacency",lineStyle:{opacity:.5}}},t}(Ct),DM=Math.PI/180;function q8e(e,t){e.eachSeriesByType("chord",function(r){K8e(r,t)})}function K8e(e,t){var r=e.getData(),n=r.graph,i=e.getEdgeData(),a=i.count();if(a){var o=OQ(e,t),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=Math.max((e.get("padAngle")||0)*DM,0),h=Math.max((e.get("minAngle")||0)*DM,0),d=-e.get("startAngle")*DM,v=d+Math.PI*2,m=e.get("clockwise"),y=m?1:-1,x=[d,v];$T(x,!m);var _=x[0],b=x[1],S=b-_,T=r.getSum("value")===0&&i.getSum("value")===0,C=[],A=0;n.eachEdge(function(B){var Z=T?1:B.getValue("value");T&&(Z>0||h)&&(A+=2);var W=B.node1.dataIndex,G=B.node2.dataIndex;C[W]=(C[W]||0)+Z,C[G]=(C[G]||0)+Z});var P=0;if(n.eachNode(function(B){var Z=B.getValue("value");isNaN(Z)||(C[B.dataIndex]=Math.max(Z,C[B.dataIndex]||0)),!T&&(C[B.dataIndex]>0||h)&&A++,P+=C[B.dataIndex]||0}),!(A===0||P===0)){f*A>=Math.abs(S)&&(f=Math.max(0,(Math.abs(S)-h*A)/A)),(f+h)*A>=Math.abs(S)&&(h=(Math.abs(S)-f*A)/A);var I=(S-f*A*y)/P,k=0,O=0,D=0;n.eachNode(function(B){var Z=C[B.dataIndex]||0,W=I*(P?Z:1)*y;Math.abs(W)O){var z=k/O;n.eachNode(function(B){var Z=B.getLayout().angle;Math.abs(Z)>=h?B.setLayout({angle:Z*z,ratio:z},!0):B.setLayout({angle:h,ratio:h===0?1:Z/h},!0)})}else n.eachNode(function(B){if(!N){var Z=B.getLayout().angle,W=Math.min(Z/D,1),G=W*k;Z-Gh&&h>0){var W=N?1:Math.min(Z/D,1),G=Z-h,Y=Math.min(G,Math.min(V,k*W));V-=Y,B.setLayout({angle:Z-Y,ratio:(Z-Y)/Z},!0)}else h>0&&B.setLayout({angle:h,ratio:Z===0?1:h/Z},!0)}});var F=_,$=[];n.eachNode(function(B){var Z=Math.max(B.getLayout().angle,h);B.setLayout({cx:s,cy:l,r0:c,r:u,startAngle:F,endAngle:F+Z*y,clockwise:m},!0),$[B.dataIndex]=F,F+=(Z+f)*y}),n.eachEdge(function(B){var Z=T?1:B.getValue("value"),W=I*(P?Z:1)*y,G=B.node1.dataIndex,Y=$[G]||0,K=Math.abs((B.node1.getLayout().ratio||1)*W),ee=Y+K*y,le=[s+c*Math.cos(Y),l+c*Math.sin(Y)],he=[s+c*Math.cos(ee),l+c*Math.sin(ee)],Ne=B.node2.dataIndex,xe=$[Ne]||0,ie=Math.abs((B.node2.getLayout().ratio||1)*W),de=xe+ie*y,ue=[s+c*Math.cos(xe),l+c*Math.sin(xe)],te=[s+c*Math.cos(de),l+c*Math.sin(de)];B.setLayout({s1:le,s2:he,sStartAngle:Y,sEndAngle:ee,t1:ue,t2:te,tStartAngle:xe,tEndAngle:de,cx:s,cy:l,r:c,value:Z,clockwise:m}),$[G]=ee,$[Ne]=de})}}}function J8e(e){e.registerChartView(Y8e),e.registerSeriesModel(X8e),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,q8e),e.registerProcessor(Qv("chord"))}var Q8e=function(){function e(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0}return e}(),eHe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="pointer",n}return t.prototype.getDefaultShape=function(){return new Q8e},t.prototype.buildPath=function(r,n){var i=Math.cos,a=Math.sin,o=n.r,s=n.width,l=n.angle,u=n.x-i(l)*s*(s>=o/3?1:2),c=n.y-a(l)*s*(s>=o/3?1:2);l=n.angle-Math.PI/2,r.moveTo(u,c),r.lineTo(n.x+i(l)*s,n.y+a(l)*s),r.lineTo(n.x+i(n.angle)*o,n.y+a(n.angle)*o),r.lineTo(n.x-i(l)*s,n.y-a(l)*s),r.lineTo(u,c)},t}(tt);function tHe(e,t){var r=e.get("center"),n=t.getWidth(),i=t.getHeight(),a=Math.min(n,i),o=pe(r[0],t.getWidth()),s=pe(r[1],t.getHeight()),l=pe(e.get("radius"),a/2);return{cx:o,cy:s,r:l}}function C_(e,t){var r=e==null?"":e+"";return t&&(ge(t)?r=t.replace("{value}",r):Ae(t)&&(r=t(e))),r}var rHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){this.group.removeAll();var a=r.get(["axisLine","lineStyle","color"]),o=tHe(r,i);this._renderMain(r,n,i,a,o),this._data=r.getData()},t.prototype.dispose=function(){},t.prototype._renderMain=function(r,n,i,a,o){var s=this.group,l=r.get("clockwise"),u=-r.get("startAngle")/180*Math.PI,c=-r.get("endAngle")/180*Math.PI,f=r.getModel("axisLine"),h=f.get("roundCap"),d=h?Fw:bn,v=f.get("show"),m=f.getModel("lineStyle"),y=m.get("width"),x=[u,c];$T(x,!l),u=x[0],c=x[1];for(var _=c-u,b=u,S=[],T=0;v&&T=I&&(k===0?0:a[k-1][0])Math.PI/2&&(ee+=Math.PI)):K==="tangential"?ee=-P-Math.PI/2:ot(K)&&(ee=K*Math.PI/180),ee===0?f.add(new at({style:Pt(b,{text:Z,x:G,y:Y,verticalAlign:V<-.8?"top":V>.8?"bottom":"middle",align:z<-.4?"left":z>.4?"right":"center"},{inheritColor:W}),silent:!0})):f.add(new at({style:Pt(b,{text:Z,x:G,y:Y,verticalAlign:"middle",align:"center"},{inheritColor:W}),silent:!0,originX:G,originY:Y,rotation:ee}))}if(_.get("show")&&F!==S){var $=_.get("distance");$=$?$+c:c;for(var le=0;le<=T;le++){z=Math.cos(P),V=Math.sin(P);var he=new mr({shape:{x1:z*(v-$)+h,y1:V*(v-$)+d,x2:z*(v-A-$)+h,y2:V*(v-A-$)+d},silent:!0,style:D});D.stroke==="auto"&&he.setStyle({stroke:a((F+le/T)/S)}),f.add(he),P+=k}P-=k}else P+=I}},t.prototype._renderPointer=function(r,n,i,a,o,s,l,u,c){var f=this.group,h=this._data,d=this._progressEls,v=[],m=r.get(["pointer","show"]),y=r.getModel("progress"),x=y.get("show"),_=r.getData(),b=_.mapDimension("value"),S=+r.get("min"),T=+r.get("max"),C=[S,T],A=[s,l];function P(k,O){var D=_.getItemModel(k),N=D.getModel("pointer"),z=pe(N.get("width"),o.r),V=pe(N.get("length"),o.r),F=r.get(["pointer","icon"]),$=N.get("offsetCenter"),B=pe($[0],o.r),Z=pe($[1],o.r),W=N.get("keepAspect"),G;return F?G=xr(F,B-z/2,Z-V,z,V,null,W):G=new eHe({shape:{angle:-Math.PI/2,width:z,r:V,x:B,y:Z}}),G.rotation=-(O+Math.PI/2),G.x=o.cx,G.y=o.cy,G}function I(k,O){var D=y.get("roundCap"),N=D?Fw:bn,z=y.get("overlap"),V=z?y.get("width"):c/_.count(),F=z?o.r-V:o.r-(k+1)*V,$=z?o.r:o.r-k*V,B=new N({shape:{startAngle:s,endAngle:O,cx:o.cx,cy:o.cy,clockwise:u,r0:F,r:$}});return z&&(B.z2=gt(_.get(b,k),[S,T],[100,0],!0)),B}(x||m)&&(_.diff(h).add(function(k){var O=_.get(b,k);if(m){var D=P(k,s);Nt(D,{rotation:-((isNaN(+O)?A[0]:gt(O,C,A,!0))+Math.PI/2)},r),f.add(D),_.setItemGraphicEl(k,D)}if(x){var N=I(k,s),z=y.get("clip");Nt(N,{shape:{endAngle:gt(O,C,A,z)}},r),f.add(N),TI(r.seriesIndex,_.dataType,k,N),v[k]=N}}).update(function(k,O){var D=_.get(b,k);if(m){var N=h.getItemGraphicEl(O),z=N?N.rotation:s,V=P(k,z);V.rotation=z,lt(V,{rotation:-((isNaN(+D)?A[0]:gt(D,C,A,!0))+Math.PI/2)},r),f.add(V),_.setItemGraphicEl(k,V)}if(x){var F=d[O],$=F?F.shape.endAngle:s,B=I(k,$),Z=y.get("clip");lt(B,{shape:{endAngle:gt(D,C,A,Z)}},r),f.add(B),TI(r.seriesIndex,_.dataType,k,B),v[k]=B}}).execute(),_.each(function(k){var O=_.getItemModel(k),D=O.getModel("emphasis"),N=D.get("focus"),z=D.get("blurScope"),V=D.get("disabled");if(m){var F=_.getItemGraphicEl(k),$=_.getItemVisual(k,"style"),B=$.fill;if(F instanceof Xr){var Z=F.style;F.useStyle(ne({image:Z.image,x:Z.x,y:Z.y,width:Z.width,height:Z.height},$))}else F.useStyle($),F.type!=="pointer"&&F.setColor(B);F.setStyle(O.getModel(["pointer","itemStyle"]).getItemStyle()),F.style.fill==="auto"&&F.setStyle("fill",a(gt(_.get(b,k),C,[0,1],!0))),F.z2EmphasisLift=0,Nr(F,O),Gt(F,N,z,V)}if(x){var W=v[k];W.useStyle(_.getItemVisual(k,"style")),W.setStyle(O.getModel(["progress","itemStyle"]).getItemStyle()),W.z2EmphasisLift=0,Nr(W,O),Gt(W,N,z,V)}}),this._progressEls=v)},t.prototype._renderAnchor=function(r,n){var i=r.getModel("anchor"),a=i.get("show");if(a){var o=i.get("size"),s=i.get("icon"),l=i.get("offsetCenter"),u=i.get("keepAspect"),c=xr(s,n.cx-o/2+pe(l[0],n.r),n.cy-o/2+pe(l[1],n.r),o,o,null,u);c.z2=i.get("showAbove")?1:0,c.setStyle(i.getModel("itemStyle").getItemStyle()),this.group.add(c)}},t.prototype._renderTitleAndDetail=function(r,n,i,a,o){var s=this,l=r.getData(),u=l.mapDimension("value"),c=+r.get("min"),f=+r.get("max"),h=new Pe,d=[],v=[],m=r.isAnimationEnabled(),y=r.get(["pointer","showAbove"]);l.diff(this._data).add(function(x){d[x]=new at({silent:!0}),v[x]=new at({silent:!0})}).update(function(x,_){d[x]=s._titleEls[_],v[x]=s._detailEls[_]}).execute(),l.each(function(x){var _=l.getItemModel(x),b=l.get(u,x),S=new Pe,T=a(gt(b,[c,f],[0,1],!0)),C=_.getModel("title");if(C.get("show")){var A=C.get("offsetCenter"),P=o.cx+pe(A[0],o.r),I=o.cy+pe(A[1],o.r),k=d[x];k.attr({z2:y?0:2,style:Pt(C,{x:P,y:I,text:l.getName(x),align:"center",verticalAlign:"middle"},{inheritColor:T})}),S.add(k)}var O=_.getModel("detail");if(O.get("show")){var D=O.get("offsetCenter"),N=o.cx+pe(D[0],o.r),z=o.cy+pe(D[1],o.r),V=pe(O.get("width"),o.r),F=pe(O.get("height"),o.r),$=r.get(["progress","show"])?l.getItemVisual(x,"style").fill:T,k=v[x],B=O.get("formatter");k.attr({z2:y?0:2,style:Pt(O,{x:N,y:z,text:C_(b,B),width:isNaN(V)?null:V,height:isNaN(F)?null:F,align:"center",verticalAlign:"middle"},{inheritColor:$})}),pQ(k,{normal:O},b,function(W){return C_(W,B)}),m&&gQ(k,x,l,r,{getFormattedLabel:function(W,G,Y,K,ee,le){return C_(le?le.interpolatedValue:b,B)}}),S.add(k)}h.add(S)}),this.group.add(h),this._titleEls=d,this._detailEls=v},t.type="gauge",t}(bt),nHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.visualStyleAccessPath="itemStyle",r}return t.prototype.getInitialData=function(r,n){return ep(this,["value"])},t.type="series.gauge",t.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,J.color.neutral10]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:J.color.axisTick,width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:J.color.axisTickMinor,width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:J.color.axisLabel,fontSize:12,rotate:0},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:J.color.neutral00,borderWidth:0,borderColor:J.color.theme[0]}},title:{show:!0,offsetCenter:[0,"20%"],color:J.color.secondary,fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:J.color.transparent,borderWidth:0,borderColor:J.color.neutral40,width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:J.color.primary,fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},t}(Ct);function iHe(e){e.registerChartView(rHe),e.registerSeriesModel(nHe)}var aHe=["itemStyle","opacity"],oHe=function(e){q(t,e);function t(r,n){var i=e.call(this)||this,a=i,o=new on,s=new at;return a.setTextContent(s),i.setTextGuideLine(o),i.updateData(r,n,!0),i}return t.prototype.updateData=function(r,n,i){var a=this,o=r.hostModel,s=r.getItemModel(n),l=r.getItemLayout(n),u=s.getModel("emphasis"),c=s.get(aHe);c=c??1,i||ga(a),a.useStyle(r.getItemVisual(n,"style")),a.style.lineJoin="round",i?(a.setShape({points:l.points}),a.style.opacity=0,Nt(a,{style:{opacity:c}},o,n)):lt(a,{style:{opacity:c},shape:{points:l.points}},o,n),Nr(a,s),this._updateLabel(r,n),Gt(this,u.get("focus"),u.get("blurScope"),u.get("disabled"))},t.prototype._updateLabel=function(r,n){var i=this,a=this.getTextGuideLine(),o=i.getTextContent(),s=r.hostModel,l=r.getItemModel(n),u=r.getItemLayout(n),c=u.label,f=r.getItemVisual(n,"style"),h=f.fill;Zr(o,jr(l),{labelFetcher:r.hostModel,labelDataIndex:n,defaultOpacity:f.opacity,defaultText:r.getName(n)},{normal:{align:c.textAlign,verticalAlign:c.verticalAlign}});var d=l.getModel("label"),v=d.get("color"),m=v==="inherit"?h:null;i.setTextConfig({local:!0,inside:!!c.inside,insideStroke:m,outsideFill:m});var y=c.linePoints;a.setShape({points:y}),i.textGuideLineConfig={anchor:y?new Ee(y[0][0],y[0][1]):null},lt(o,{style:{x:c.x,y:c.y}},s,n),o.attr({rotation:c.rotation,originX:c.x,originY:c.y,z2:10}),Rj(i,Bj(l),{stroke:h})},t}(wn),sHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.ignoreLabelLineUpdate=!0,r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this._data,s=this.group;a.diff(o).add(function(l){var u=new oHe(a,l);a.setItemGraphicEl(l,u),s.add(u)}).update(function(l,u){var c=o.getItemGraphicEl(u);c.updateData(a,l),s.add(c),a.setItemGraphicEl(l,c)}).remove(function(l){var u=o.getItemGraphicEl(l);Ls(u,r,l)}).execute(),this._data=a},t.prototype.remove=function(){this.group.removeAll(),this._data=null},t.prototype.dispose=function(){},t.type="funnel",t}(bt),lHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r){e.prototype.init.apply(this,arguments),this.legendVisualProvider=new tp(me(this.getData,this),me(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.getInitialData=function(r,n){return ep(this,{coordDimensions:["value"],encodeDefaulter:Fe(fj,this)})},t.prototype._defaultLabelLine=function(r){uf(r,"labelLine",["show"]);var n=r.labelLine,i=r.emphasis.labelLine;n.show=n.show&&r.label.show,i.show=i.show&&r.emphasis.label.show},t.prototype.getDataParams=function(r){var n=this.getData(),i=e.prototype.getDataParams.call(this,r),a=n.mapDimension("value"),o=n.getSum(a);return i.percent=o?+(n.get(a,r)/o*100).toFixed(2):0,i.$vars.push("percent"),i},t.type="series.funnel",t.defaultOption={coordinateSystemUsage:"box",z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:65,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:J.color.neutral00,borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:J.color.primary}}},t}(Ct);function uHe(e,t){for(var r=e.mapDimension("value"),n=e.mapArray(r,function(l){return l}),i=[],a=t==="ascending",o=0,s=e.count();oCHe)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]);i.behavior!=="none"&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(e){if(!(this._mouseDownPoint||!jM(this,"mousemove"))){var t=this._model,r=t.coordinateSystem.getSlidedAxisExpandWindow([e.offsetX,e.offsetY]),n=r.behavior;n==="jump"&&this._throttledDispatchExpand.debounceNextCall(t.get("axisExpandDebounce")),this._throttledDispatchExpand(n==="none"?null:{axisExpandWindow:r.axisExpandWindow,animation:n==="jump"?null:{duration:0}})}}};function jM(e,t){var r=e._model;return r.get("axisExpandable")&&r.get("axisExpandTriggerOn")===t}var PHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(){e.prototype.init.apply(this,arguments),this.mergeOption({})},t.prototype.mergeOption=function(r){var n=this.option;r&&He(n,r,!0),this._initDimensions()},t.prototype.contains=function(r,n){var i=r.get("parallelIndex");return i!=null&&n.getComponent("parallel",i)===this},t.prototype.setAxisExpand=function(r){R(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],function(n){r.hasOwnProperty(n)&&(this.option[n]=r[n])},this)},t.prototype._initDimensions=function(){var r=this.dimensions=[],n=this.parallelAxisIndex=[],i=ht(this.ecModel.queryComponents({mainType:"parallelAxis"}),function(a){return(a.get("parallelIndex")||0)===this.componentIndex},this);R(i,function(a){r.push("dim"+a.get("dim")),n.push(a.componentIndex)})},t.type="parallel",t.dependencies=["parallelAxis"],t.layoutMode="box",t.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},t}(Ke),kHe=function(e){q(t,e);function t(r,n,i,a,o){var s=e.call(this,r,n,i)||this;return s.type=a||"value",s.axisIndex=o,s}return t.prototype.isHorizontal=function(){return this.coordinateSystem.getModel().get("layout")!=="horizontal"},t}(ba);function hu(e,t,r,n,i,a){e=e||0;var o=r[1]-r[0];if(i!=null&&(i=mh(i,[0,o])),a!=null&&(a=Math.max(a,i??0)),n==="all"){var s=Math.abs(t[1]-t[0]);s=mh(s,[0,o]),i=a=mh(s,[i,a]),n=0}t[0]=mh(t[0],r),t[1]=mh(t[1],r);var l=RM(t,n);t[n]+=e;var u=i||0,c=r.slice();l.sign<0?c[0]+=u:c[1]-=u,t[n]=mh(t[n],c);var f;return f=RM(t,n),i!=null&&(f.sign!==l.sign||f.spana&&(t[1-n]=t[n]+f.sign*a),t}function RM(e,t){var r=e[t]-e[1-t];return{span:Math.abs(r),sign:r>0?-1:r<0?1:t?-1:1}}function mh(e,t){return Math.min(t[1]!=null?t[1]:1/0,Math.max(t[0]!=null?t[0]:-1/0,e))}var BM=R,dne=Math.min,vne=Math.max,r8=Math.floor,LHe=Math.ceil,n8=gr,IHe=Math.PI,EHe=function(){function e(t,r,n){this.type="parallel",this._axesMap=we(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,r,n)}return e.prototype._init=function(t,r,n){var i=t.dimensions,a=t.parallelAxisIndex;BM(i,function(o,s){var l=a[s],u=r.getComponent("parallelAxis",l),c=this._axesMap.set(o,new kHe(o,b0(u),[0,0],u.get("type"),l)),f=c.type==="category";c.onBand=f&&u.get("boundaryGap"),c.inverse=u.get("inverse"),u.axis=c,c.model=u,c.coordinateSystem=u.coordinateSystem=this},this)},e.prototype.update=function(t,r){this._updateAxesFromSeries(this._model,t)},e.prototype.containPoint=function(t){var r=this._makeLayoutInfo(),n=r.axisBase,i=r.layoutBase,a=r.pixelDimIndex,o=t[1-a],s=t[a];return o>=n&&o<=n+r.axisLength&&s>=i&&s<=i+r.layoutLength},e.prototype.getModel=function(){return this._model},e.prototype._updateAxesFromSeries=function(t,r){r.eachSeries(function(n){if(t.contains(n,r)){var i=n.getData();BM(this.dimensions,function(a){var o=this._axesMap.get(a);o.scale.unionExtentFromData(i,i.mapDimension(a)),gf(o.scale,o.model)},this)}},this)},e.prototype.resize=function(t,r){var n=Rr(t,r).refContainer;this._rect=zt(t.getBoxLayoutParams(),n),this._layoutAxes()},e.prototype.getRect=function(){return this._rect},e.prototype._makeLayoutInfo=function(){var t=this._model,r=this._rect,n=["x","y"],i=["width","height"],a=t.get("layout"),o=a==="horizontal"?0:1,s=r[i[o]],l=[0,s],u=this.dimensions.length,c=A_(t.get("axisExpandWidth"),l),f=A_(t.get("axisExpandCount")||0,[0,u]),h=t.get("axisExpandable")&&u>3&&u>f&&f>1&&c>0&&s>0,d=t.get("axisExpandWindow"),v;if(d)v=A_(d[1]-d[0],l),d[1]=d[0]+v;else{v=A_(c*(f-1),l);var m=t.get("axisExpandCenter")||r8(u/2);d=[c*m-v/2],d[1]=d[0]+v}var y=(s-v)/(u-f);y<3&&(y=0);var x=[r8(n8(d[0]/c,1))+1,LHe(n8(d[1]/c,1))-1],_=y/c*d[0];return{layout:a,pixelDimIndex:o,layoutBase:r[n[o]],layoutLength:s,axisBase:r[n[1-o]],axisLength:r[i[1-o]],axisExpandable:h,axisExpandWidth:c,axisCollapseWidth:y,axisExpandWindow:d,axisCount:u,winInnerIndices:x,axisExpandWindow0Pos:_}},e.prototype._layoutAxes=function(){var t=this._rect,r=this._axesMap,n=this.dimensions,i=this._makeLayoutInfo(),a=i.layout;r.each(function(o){var s=[0,i.axisLength],l=o.inverse?1:0;o.setExtent(s[l],s[1-l])}),BM(n,function(o,s){var l=(i.axisExpandable?DHe:OHe)(s,i),u={horizontal:{x:l.position,y:i.axisLength},vertical:{x:0,y:l.position}},c={horizontal:IHe/2,vertical:0},f=[u[a].x+t.x,u[a].y+t.y],h=c[a],d=Hr();el(d,d,h),qa(d,d,f),this._axesLayout[o]={position:f,rotation:h,transform:d,axisNameAvailableWidth:l.axisNameAvailableWidth,axisLabelShow:l.axisLabelShow,nameTruncateMaxWidth:l.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}},this)},e.prototype.getAxis=function(t){return this._axesMap.get(t)},e.prototype.dataToPoint=function(t,r){return this.axisCoordToPoint(this._axesMap.get(r).dataToCoord(t),r)},e.prototype.eachActiveState=function(t,r,n,i){n==null&&(n=0),i==null&&(i=t.count());var a=this._axesMap,o=this.dimensions,s=[],l=[];R(o,function(y){s.push(t.mapDimension(y)),l.push(a.get(y).model)});for(var u=this.hasAxisBrushed(),c=n;ca*(1-f[0])?(u="jump",l=s-a*(1-f[2])):(l=s-a*f[1])>=0&&(l=s-a*(1-f[1]))<=0&&(l=0),l*=r.axisExpandWidth/c,l?hu(l,i,o,"all"):u="none";else{var d=i[1]-i[0],v=o[1]*s/d;i=[vne(0,v-d/2)],i[1]=dne(o[1],i[0]+d),i[0]=i[1]-d}return{axisExpandWindow:i,behavior:u}},e}();function A_(e,t){return dne(vne(e,t[0]),t[1])}function OHe(e,t){var r=t.layoutLength/(t.axisCount-1);return{position:r*e,axisNameAvailableWidth:r,axisLabelShow:!0}}function DHe(e,t){var r=t.layoutLength,n=t.axisExpandWidth,i=t.axisCount,a=t.axisCollapseWidth,o=t.winInnerIndices,s,l=a,u=!1,c;return e=0;i--)Ai(n[i])},t.prototype.getActiveState=function(r){var n=this.activeIntervals;if(!n.length)return"normal";if(r==null||isNaN(+r))return"inactive";if(n.length===1){var i=n[0];if(i[0]<=r&&r<=i[1])return"active"}else for(var a=0,o=n.length;azHe}function _ne(e){var t=e.length-1;return t<0&&(t=0),[e[0],e[t]]}function bne(e,t,r,n){var i=new Pe;return i.add(new Xe({name:"main",style:pR(r),silent:!0,draggable:!0,cursor:"move",drift:Fe(o8,e,t,i,["n","s","w","e"]),ondragend:Fe(yf,t,{isEnd:!0})})),R(n,function(a){i.add(new Xe({name:a.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:Fe(o8,e,t,i,a),ondragend:Fe(yf,t,{isEnd:!0})}))}),i}function wne(e,t,r,n){var i=n.brushStyle.lineWidth||0,a=lv(i,$He),o=r[0][0],s=r[1][0],l=o-i/2,u=s-i/2,c=r[0][1],f=r[1][1],h=c-a+i/2,d=f-a+i/2,v=c-o,m=f-s,y=v+i,x=m+i;ls(e,t,"main",o,s,v,m),n.transformable&&(ls(e,t,"w",l,u,a,x),ls(e,t,"e",h,u,a,x),ls(e,t,"n",l,u,y,a),ls(e,t,"s",l,d,y,a),ls(e,t,"nw",l,u,a,a),ls(e,t,"ne",h,u,a,a),ls(e,t,"sw",l,d,a,a),ls(e,t,"se",h,d,a,a))}function IE(e,t){var r=t.__brushOption,n=r.transformable,i=t.childAt(0);i.useStyle(pR(r)),i.attr({silent:!n,cursor:n?"move":"default"}),R([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],function(a){var o=t.childOfName(a.join("")),s=a.length===1?EE(e,a[0]):UHe(e,a);o&&o.attr({silent:!n,invisible:!n,cursor:n?VHe[s]+"-resize":null})})}function ls(e,t,r,n,i,a,o){var s=t.childOfName(r);s&&s.setShape(YHe(gR(e,t,[[n,i],[n+a,i+o]])))}function pR(e){return ke({strokeNoScale:!0},e.brushStyle)}function Sne(e,t,r,n){var i=[$y(e,r),$y(t,n)],a=[lv(e,r),lv(t,n)];return[[i[0],a[0]],[i[1],a[1]]]}function HHe(e){return Ql(e.group)}function EE(e,t){var r={w:"left",e:"right",n:"top",s:"bottom"},n={left:"w",right:"e",top:"n",bottom:"s"},i=WT(r[t],HHe(e));return n[i]}function UHe(e,t){var r=[EE(e,t[0]),EE(e,t[1])];return(r[0]==="e"||r[0]==="w")&&r.reverse(),r.join("")}function o8(e,t,r,n,i,a){var o=r.__brushOption,s=e.toRectRange(o.range),l=Tne(t,i,a);R(n,function(u){var c=FHe[u];s[c[0]][c[1]]+=l[c[0]]}),o.range=e.fromRectRange(Sne(s[0][0],s[1][0],s[0][1],s[1][1])),hR(t,r),yf(t,{isEnd:!1})}function ZHe(e,t,r,n){var i=t.__brushOption.range,a=Tne(e,r,n);R(i,function(o){o[0]+=a[0],o[1]+=a[1]}),hR(e,t),yf(e,{isEnd:!1})}function Tne(e,t,r){var n=e.group,i=n.transformCoordToLocal(t,r),a=n.transformCoordToLocal(0,0);return[i[0]-a[0],i[1]-a[1]]}function gR(e,t,r){var n=xne(e,t);return n&&n!==mf?n.clipPath(r,e._transform):Me(r)}function YHe(e){var t=$y(e[0][0],e[1][0]),r=$y(e[0][1],e[1][1]),n=lv(e[0][0],e[1][0]),i=lv(e[0][1],e[1][1]);return{x:t,y:r,width:n-t,height:i-r}}function XHe(e,t,r){if(!(!e._brushType||KHe(e,t.offsetX,t.offsetY))){var n=e._zr,i=e._covers,a=vR(e,t,r);if(!e._dragging)for(var o=0;on.getWidth()||r<0||r>n.getHeight()}var lC={lineX:u8(0),lineY:u8(1),rect:{createCover:function(e,t){function r(n){return n}return bne({toRectRange:r,fromRectRange:r},e,t,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(e){var t=_ne(e);return Sne(t[1][0],t[1][1],t[0][0],t[0][1])},updateCoverShape:function(e,t,r,n){wne(e,t,r,n)},updateCommon:IE,contain:DE},polygon:{createCover:function(e,t){var r=new Pe;return r.add(new on({name:"main",style:pR(t),silent:!0})),r},getCreatingRange:function(e){return e},endCreating:function(e,t){t.remove(t.childAt(0)),t.add(new wn({name:"main",draggable:!0,drift:Fe(ZHe,e,t),ondragend:Fe(yf,e,{isEnd:!0})}))},updateCoverShape:function(e,t,r,n){t.childAt(0).setShape({points:gR(e,t,r)})},updateCommon:IE,contain:DE}};function u8(e){return{createCover:function(t,r){return bne({toRectRange:function(n){var i=[n,[0,100]];return e&&i.reverse(),i},fromRectRange:function(n){return n[e]}},t,r,[[["w"],["e"]],[["n"],["s"]]][e])},getCreatingRange:function(t){var r=_ne(t),n=$y(r[0][e],r[1][e]),i=lv(r[0][e],r[1][e]);return[n,i]},updateCoverShape:function(t,r,n,i){var a,o=xne(t,r);if(o!==mf&&o.getLinearBrushOtherExtent)a=o.getLinearBrushOtherExtent(e);else{var s=t._zr;a=[0,[s.getWidth(),s.getHeight()][1-e]]}var l=[n,a];e&&l.reverse(),wne(t,r,l,i)},updateCommon:IE,contain:DE}}function Ane(e){return e=mR(e),function(t){return UN(t,e)}}function Mne(e,t){return e=mR(e),function(r){var n=t??r,i=n?e.width:e.height,a=n?e.x:e.y;return[a,a+(i||0)]}}function Pne(e,t,r){var n=mR(e);return function(i,a){return n.contain(a[0],a[1])&&!Ore(i,t,r)}}function mR(e){return Oe.create(e)}var JHe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){e.prototype.init.apply(this,arguments),(this._brushController=new fR(n.getZr())).on("brush",me(this._onBrush,this))},t.prototype.render=function(r,n,i,a){if(!QHe(r,n,a)){this.axisModel=r,this.api=i,this.group.removeAll();var o=this._axisGroup;if(this._axisGroup=new Pe,this.group.add(this._axisGroup),!!r.get("show")){var s=tUe(r,n),l=s.coordinateSystem,u=r.getAreaSelectStyle(),c=u.width,f=r.axis.dim,h=l.getAxisLayout(f),d=ne({strokeContainThreshold:c},h),v=new Hn(r,i,d);v.build(),this._axisGroup.add(v.group),this._refreshBrushController(d,u,r,s,c,i),m0(o,this._axisGroup,r)}}},t.prototype._refreshBrushController=function(r,n,i,a,o,s){var l=i.axis.getExtent(),u=l[1]-l[0],c=Math.min(30,Math.abs(u)*.1),f=Oe.create({x:l[0],y:-o/2,width:u,height:o});f.x-=c,f.width+=2*c,this._brushController.mount({enableGlobalPan:!0,rotation:r.rotation,x:r.position[0],y:r.position[1]}).setPanels([{panelId:"pl",clipPath:Ane(f),isTargetByCursor:Pne(f,s,a),getLinearBrushOtherExtent:Mne(f,0)}]).enableBrush({brushType:"lineX",brushStyle:n,removeOnClick:!0}).updateCovers(eUe(i))},t.prototype._onBrush=function(r){var n=r.areas,i=this.axisModel,a=i.axis,o=se(n,function(s){return[a.coordToData(s.range[0],!0),a.coordToData(s.range[1],!0)]});(!i.option.realtime===r.isEnd||r.removeOnClick)&&this.api.dispatchAction({type:"axisAreaSelect",parallelAxisId:i.id,intervals:o})},t.prototype.dispose=function(){this._brushController.dispose()},t.type="parallelAxis",t}(Lt);function QHe(e,t,r){return r&&r.type==="axisAreaSelect"&&t.findComponents({mainType:"parallelAxis",query:r})[0]===e}function eUe(e){var t=e.axis;return se(e.activeIntervals,function(r){return{brushType:"lineX",panelId:"pl",range:[t.dataToCoord(r[0],!0),t.dataToCoord(r[1],!0)]}})}function tUe(e,t){return t.getComponent("parallel",e.get("parallelIndex"))}var rUe={type:"axisAreaSelect",event:"axisAreaSelected"};function nUe(e){e.registerAction(rUe,function(t,r){r.eachComponent({mainType:"parallelAxis",query:t},function(n){n.axis.model.setActiveIntervals(t.intervals)})}),e.registerAction("parallelAxisExpand",function(t,r){r.eachComponent({mainType:"parallel",query:t},function(n){n.setAxisExpand(t)})})}var iUe={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function kne(e){e.registerComponentView(AHe),e.registerComponentModel(PHe),e.registerCoordinateSystem("parallel",jHe),e.registerPreprocessor(wHe),e.registerComponentModel(kE),e.registerComponentView(JHe),ov(e,"parallel",kE,iUe),nUe(e)}function aUe(e){Ze(kne),e.registerChartView(vHe),e.registerSeriesModel(mHe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,bHe)}var oUe=function(){function e(){this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.cpx1=0,this.cpy1=0,this.cpx2=0,this.cpy2=0,this.extent=0}return e}(),sUe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new oUe},t.prototype.buildPath=function(r,n){var i=n.extent;r.moveTo(n.x1,n.y1),r.bezierCurveTo(n.cpx1,n.cpy1,n.cpx2,n.cpy2,n.x2,n.y2),n.orient==="vertical"?(r.lineTo(n.x2+i,n.y2),r.bezierCurveTo(n.cpx2+i,n.cpy2,n.cpx1+i,n.cpy1,n.x1+i,n.y1)):(r.lineTo(n.x2,n.y2+i),r.bezierCurveTo(n.cpx2,n.cpy2+i,n.cpx1,n.cpy1+i,n.x1,n.y1+i)),r.closePath()},t.prototype.highlight=function(){Ws(this)},t.prototype.downplay=function(){Hs(this)},t}(tt),lUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._mainGroup=new Pe,r._focusAdjacencyDisabled=!1,r}return t.prototype.init=function(r,n){this._controller=new Nf(n.getZr()),this._controllerHost={target:this.group},this.group.add(this._mainGroup)},t.prototype.render=function(r,n,i){var a=this,o=r.getGraph(),s=this._mainGroup,l=r.layoutInfo,u=l.width,c=l.height,f=r.getData(),h=r.getData("edge"),d=r.get("orient");this._model=r,s.removeAll(),s.x=l.x,s.y=l.y,this._updateViewCoordSys(r,i),Dre(r,i,s,this._controller,this._controllerHost,null),o.eachEdge(function(v){var m=new sUe,y=je(m);y.dataIndex=v.dataIndex,y.seriesIndex=r.seriesIndex,y.dataType="edge";var x=v.getModel(),_=x.getModel("lineStyle"),b=_.get("curveness"),S=v.node1.getLayout(),T=v.node1.getModel(),C=T.get("localX"),A=T.get("localY"),P=v.node2.getLayout(),I=v.node2.getModel(),k=I.get("localX"),O=I.get("localY"),D=v.getLayout(),N,z,V,F,$,B,Z,W;m.shape.extent=Math.max(1,D.dy),m.shape.orient=d,d==="vertical"?(N=(C!=null?C*u:S.x)+D.sy,z=(A!=null?A*c:S.y)+S.dy,V=(k!=null?k*u:P.x)+D.ty,F=O!=null?O*c:P.y,$=N,B=z*(1-b)+F*b,Z=V,W=z*b+F*(1-b)):(N=(C!=null?C*u:S.x)+S.dx,z=(A!=null?A*c:S.y)+D.sy,V=k!=null?k*u:P.x,F=(O!=null?O*c:P.y)+D.ty,$=N*(1-b)+V*b,B=z,Z=N*b+V*(1-b),W=F),m.setShape({x1:N,y1:z,x2:V,y2:F,cpx1:$,cpy1:B,cpx2:Z,cpy2:W}),m.useStyle(_.getItemStyle()),c8(m.style,d,v);var G=""+x.get("value"),Y=jr(x,"edgeLabel");Zr(m,Y,{labelFetcher:{getFormattedLabel:function(le,he,Ne,xe,ie,de){return r.getFormattedLabel(le,he,"edge",xe,ui(ie,Y.normal&&Y.normal.get("formatter"),G),de)}},labelDataIndex:v.dataIndex,defaultText:G}),m.setTextConfig({position:"inside"});var K=x.getModel("emphasis");Nr(m,x,"lineStyle",function(le){var he=le.getItemStyle();return c8(he,d,v),he}),s.add(m),h.setItemGraphicEl(v.dataIndex,m);var ee=K.get("focus");Gt(m,ee==="adjacency"?v.getAdjacentDataIndices():ee==="trajectory"?v.getTrajectoryDataIndices():ee,K.get("blurScope"),K.get("disabled"))}),o.eachNode(function(v){var m=v.getLayout(),y=v.getModel(),x=y.get("localX"),_=y.get("localY"),b=y.getModel("emphasis"),S=y.get(["itemStyle","borderRadius"])||0,T=new Xe({shape:{x:x!=null?x*u:m.x,y:_!=null?_*c:m.y,width:m.dx,height:m.dy,r:S},style:y.getModel("itemStyle").getItemStyle(),z2:10});Zr(T,jr(y),{labelFetcher:{getFormattedLabel:function(A,P){return r.getFormattedLabel(A,P,"node")}},labelDataIndex:v.dataIndex,defaultText:v.id}),T.disableLabelAnimation=!0,T.setStyle("fill",v.getVisual("color")),T.setStyle("decal",v.getVisual("style").decal),Nr(T,y),s.add(T),f.setItemGraphicEl(v.dataIndex,T),je(T).dataType="node";var C=b.get("focus");Gt(T,C==="adjacency"?v.getAdjacentDataIndices():C==="trajectory"?v.getTrajectoryDataIndices():C,b.get("blurScope"),b.get("disabled"))}),f.eachItemGraphicEl(function(v,m){var y=f.getItemModel(m);y.get("draggable")&&(v.drift=function(x,_){a._focusAdjacencyDisabled=!0,this.shape.x+=x,this.shape.y+=_,this.dirty(),i.dispatchAction({type:"dragNode",seriesId:r.id,dataIndex:f.getRawIndex(m),localX:this.shape.x/u,localY:this.shape.y/c})},v.ondragend=function(){a._focusAdjacencyDisabled=!1},v.draggable=!0,v.cursor="move")}),!this._data&&r.isAnimationEnabled()&&s.setClipPath(uUe(s.getBoundingRect(),r,function(){s.removeClipPath()})),this._data=r.getData()},t.prototype.dispose=function(){this._controller&&this._controller.dispose(),this._controllerHost=null},t.prototype._updateViewCoordSys=function(r,n){var i=r.layoutInfo,a=i.width,o=i.height,s=r.coordinateSystem=new jf(null,{api:n,ecModel:r.ecModel});s.zoomLimit=r.get("scaleLimit"),s.setBoundingRect(0,0,a,o),s.setCenter(r.get("center")),s.setZoom(r.get("zoom")),this._controllerHost.target.attr({x:s.x,y:s.y,scaleX:s.scaleX,scaleY:s.scaleY})},t.type="sankey",t}(bt);function c8(e,t,r){switch(e.fill){case"source":e.fill=r.node1.getVisual("color"),e.decal=r.node1.getVisual("style").decal;break;case"target":e.fill=r.node2.getVisual("color"),e.decal=r.node2.getVisual("style").decal;break;case"gradient":var n=r.node1.getVisual("color"),i=r.node2.getVisual("color");ge(n)&&ge(i)&&(e.fill=new kf(0,0,+(t==="horizontal"),+(t==="vertical"),[{color:n,offset:0},{color:i,offset:1}]))}}function uUe(e,t,r){var n=new Xe({shape:{x:e.x-10,y:e.y-10,width:0,height:e.height+20}});return Nt(n,{shape:{width:e.width+20}},t,r),n}var cUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(r,n){var i=r.edges||r.links||[],a=r.data||r.nodes||[],o=r.levels||[];this.levelModels=[];for(var s=this.levelModels,l=0;l=0&&(s[o[l].depth]=new et(o[l],this,n));var u=cR(a,i,this,!0,c);return u.data;function c(f,h){f.wrapMethod("getItemModel",function(d,v){var m=d.parentModel,y=m.getData().getItemLayout(v);if(y){var x=y.depth,_=m.levelModels[x];_&&(d.parentModel=_)}return d}),h.wrapMethod("getItemModel",function(d,v){var m=d.parentModel,y=m.getGraph().getEdgeByIndex(v),x=y.node1.getLayout();if(x){var _=x.depth,b=m.levelModels[_];b&&(d.parentModel=b)}return d})}},t.prototype.setNodePosition=function(r,n){var i=this.option.data||this.option.nodes,a=i[r];a.localX=n[0],a.localY=n[1]},t.prototype.setCenter=function(r){this.option.center=r},t.prototype.setZoom=function(r){this.option.zoom=r},t.prototype.getGraph=function(){return this.getData().graph},t.prototype.getEdgeData=function(){return this.getGraph().edgeData},t.prototype.formatTooltip=function(r,n,i){function a(d){return isNaN(d)||d==null}if(i==="edge"){var o=this.getDataParams(r,i),s=o.data,l=o.value,u=s.source+" -- "+s.target;return Ar("nameValue",{name:u,value:l,noValue:a(l)})}else{var c=this.getGraph().getNodeByIndex(r),f=c.getLayout().value,h=this.getDataParams(r,i).data.name;return Ar("nameValue",{name:h!=null?h+"":null,value:f,noValue:a(f)})}},t.prototype.optionUpdated=function(){},t.prototype.getDataParams=function(r,n){var i=e.prototype.getDataParams.call(this,r,n);if(i.value==null&&n==="node"){var a=this.getGraph().getNodeByIndex(r),o=a.getLayout().value;i.value=o}return i},t.type="series.sankey",t.layoutMode="box",t.defaultOption={z:2,coordinateSystemUsage:"box",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,roam:!1,roamTrigger:"global",center:null,zoom:1,label:{show:!0,position:"right",fontSize:12},edgeLabel:{show:!1,fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:J.color.neutral50,opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:J.color.primary}},animationEasing:"linear",animationDuration:1e3},t}(Ct);function fUe(e,t){e.eachSeriesByType("sankey",function(r){var n=r.get("nodeWidth"),i=r.get("nodeGap"),a=Rr(r,t).refContainer,o=zt(r.getBoxLayoutParams(),a);r.layoutInfo=o;var s=o.width,l=o.height,u=r.getGraph(),c=u.nodes,f=u.edges;dUe(c);var h=ht(c,function(y){return y.getLayout().value===0}),d=h.length!==0?0:r.get("layoutIterations"),v=r.get("orient"),m=r.get("nodeAlign");hUe(c,f,n,i,s,l,d,v,m)})}function hUe(e,t,r,n,i,a,o,s,l){vUe(e,t,r,i,a,s,l),yUe(e,t,a,i,n,o,s),MUe(e,s)}function dUe(e){R(e,function(t){var r=ru(t.outEdges,Xw),n=ru(t.inEdges,Xw),i=t.getValue()||0,a=Math.max(r,n,i);t.setLayout({value:a},!0)})}function vUe(e,t,r,n,i,a,o){for(var s=[],l=[],u=[],c=[],f=0,h=0;h=0;x&&y.depth>d&&(d=y.depth),m.setLayout({depth:x?y.depth:f},!0),a==="vertical"?m.setLayout({dy:r},!0):m.setLayout({dx:r},!0);for(var _=0;_f-1?d:f-1;o&&o!=="left"&&pUe(e,o,a,A);var P=a==="vertical"?(i-r)/A:(n-r)/A;mUe(e,P,a)}function Lne(e){var t=e.hostGraph.data.getRawDataItem(e.dataIndex);return t.depth!=null&&t.depth>=0}function pUe(e,t,r,n){if(t==="right"){for(var i=[],a=e,o=0;a.length;){for(var s=0;s0;a--)l*=.99,bUe(s,l,o),zM(s,i,r,n,o),AUe(s,l,o),zM(s,i,r,n,o)}function xUe(e,t){var r=[],n=t==="vertical"?"y":"x",i=xI(e,function(a){return a.getLayout()[n]});return i.keys.sort(function(a,o){return a-o}),R(i.keys,function(a){r.push(i.buckets.get(a))}),r}function _Ue(e,t,r,n,i,a){var o=1/0;R(e,function(s){var l=s.length,u=0;R(s,function(f){u+=f.getLayout().value});var c=a==="vertical"?(n-(l-1)*i)/u:(r-(l-1)*i)/u;c0&&(s=l.getLayout()[a]+u,i==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0)),c=l.getLayout()[a]+l.getLayout()[h]+t;var v=i==="vertical"?n:r;if(u=c-t-v,u>0){s=l.getLayout()[a]-u,i==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0),c=s;for(var d=f-2;d>=0;--d)l=o[d],u=l.getLayout()[a]+l.getLayout()[h]+t-c,u>0&&(s=l.getLayout()[a]-u,i==="vertical"?l.setLayout({x:s},!0):l.setLayout({y:s},!0)),c=l.getLayout()[a]}})}function bUe(e,t,r){R(e.slice().reverse(),function(n){R(n,function(i){if(i.outEdges.length){var a=ru(i.outEdges,wUe,r)/ru(i.outEdges,Xw);if(isNaN(a)){var o=i.outEdges.length;a=o?ru(i.outEdges,SUe,r)/o:0}if(r==="vertical"){var s=i.getLayout().x+(a-du(i,r))*t;i.setLayout({x:s},!0)}else{var l=i.getLayout().y+(a-du(i,r))*t;i.setLayout({y:l},!0)}}})})}function wUe(e,t){return du(e.node2,t)*e.getValue()}function SUe(e,t){return du(e.node2,t)}function TUe(e,t){return du(e.node1,t)*e.getValue()}function CUe(e,t){return du(e.node1,t)}function du(e,t){return t==="vertical"?e.getLayout().x+e.getLayout().dx/2:e.getLayout().y+e.getLayout().dy/2}function Xw(e){return e.getValue()}function ru(e,t,r){for(var n=0,i=e.length,a=-1;++ao&&(o=l)}),R(n,function(s){var l=new Ur({type:"color",mappingMethod:"linear",dataExtent:[a,o],visual:t.get("color")}),u=l.mapValueToVisual(s.getLayout().value),c=s.getModel().get(["itemStyle","color"]);c!=null?(s.setVisual("color",c),s.setVisual("style",{fill:c})):(s.setVisual("color",u),s.setVisual("style",{fill:u}))})}i.length&&R(i,function(s){var l=s.getModel().get("lineStyle");s.setVisual("style",l)})})}function kUe(e){e.registerChartView(lUe),e.registerSeriesModel(cUe),e.registerLayout(fUe),e.registerVisual(PUe),e.registerAction({type:"dragNode",event:"dragnode",update:"update"},function(t,r){r.eachComponent({mainType:"series",subType:"sankey",query:t},function(n){n.setNodePosition(t.dataIndex,[t.localX,t.localY])})}),e.registerAction({type:"sankeyRoam",event:"sankeyRoam",update:"none"},function(t,r,n){r.eachComponent({mainType:"series",subType:"sankey",query:t},function(i){var a=i.coordinateSystem,o=iC(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}var Ine=function(){function e(){}return e.prototype._hasEncodeRule=function(t){var r=this.getEncode();return r&&r.get(t)!=null},e.prototype.getInitialData=function(t,r){var n,i=r.getComponent("xAxis",this.get("xAxisIndex")),a=r.getComponent("yAxis",this.get("yAxisIndex")),o=i.get("type"),s=a.get("type"),l;o==="category"?(t.layout="horizontal",n=i.getOrdinalMeta(),l=!this._hasEncodeRule("x")):s==="category"?(t.layout="vertical",n=a.getOrdinalMeta(),l=!this._hasEncodeRule("y")):t.layout=t.layout||"horizontal";var u=["x","y"],c=t.layout==="horizontal"?0:1,f=this._baseAxisDim=u[c],h=u[1-c],d=[i,a],v=d[c].get("type"),m=d[1-c].get("type"),y=t.data;if(y&&l){var x=[];R(y,function(S,T){var C;ae(S)?(C=S.slice(),S.unshift(T)):ae(S.value)?(C=ne({},S),C.value=C.value.slice(),S.value.unshift(T)):C=S,x.push(C)}),t.data=x}var _=this.defaultValueDimensions,b=[{name:f,type:Ew(v),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:h,type:Ew(m),dimsDef:_.slice()}];return ep(this,{coordDimensions:b,dimensionsCount:_.length+1,encodeDefaulter:Fe(FQ,b,this)})},e.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},e}(),Ene=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],r.visualDrawType="stroke",r}return t.type="series.boxplot",t.dependencies=["xAxis","yAxis","grid"],t.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:J.color.neutral00,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:J.color.shadow}},animationDuration:800},t}(Ct);cr(Ene,Ine,!0);var LUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this.group,s=this._data;this._data||o.removeAll();var l=r.get("layout")==="horizontal"?1:0;a.diff(s).add(function(u){if(a.hasValue(u)){var c=a.getItemLayout(u),f=f8(c,a,u,l,!0);a.setItemGraphicEl(u,f),o.add(f)}}).update(function(u,c){var f=s.getItemGraphicEl(c);if(!a.hasValue(u)){o.remove(f);return}var h=a.getItemLayout(u);f?(ga(f),One(h,f,a,u)):f=f8(h,a,u,l),o.add(f),a.setItemGraphicEl(u,f)}).remove(function(u){var c=s.getItemGraphicEl(u);c&&o.remove(c)}).execute(),this._data=a},t.prototype.remove=function(r){var n=this.group,i=this._data;this._data=null,i&&i.eachItemGraphicEl(function(a){a&&n.remove(a)})},t.type="boxplot",t}(bt),IUe=function(){function e(){}return e}(),EUe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="boxplotBoxPath",n}return t.prototype.getDefaultShape=function(){return new IUe},t.prototype.buildPath=function(r,n){var i=n.points,a=0;for(r.moveTo(i[a][0],i[a][1]),a++;a<4;a++)r.lineTo(i[a][0],i[a][1]);for(r.closePath();am){var S=[x,b];n.push(S)}}}return{boxData:r,outliers:n}}var zUe={type:"echarts:boxplot",transform:function(t){var r=t.upstream;if(r.sourceFormat!==sn){var n="";mt(n)}var i=BUe(r.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};function $Ue(e){e.registerSeriesModel(Ene),e.registerChartView(LUe),e.registerLayout(DUe),e.registerTransform(zUe)}var FUe=["itemStyle","borderColor"],VUe=["itemStyle","borderColor0"],GUe=["itemStyle","borderColorDoji"],WUe=["itemStyle","color"],HUe=["itemStyle","color0"];function yR(e,t){return t.get(e>0?WUe:HUe)}function xR(e,t){return t.get(e===0?GUe:e>0?FUe:VUe)}var UUe={seriesType:"candlestick",plan:Zv(),performRawSeries:!0,reset:function(e,t){if(!t.isSeriesFiltered(e)){var r=e.pipelineContext.large;return!r&&{progress:function(n,i){for(var a;(a=n.next())!=null;){var o=i.getItemModel(a),s=i.getItemLayout(a).sign,l=o.getItemStyle();l.fill=yR(s,o),l.stroke=xR(s,o)||l.fill;var u=i.ensureUniqueItemVisual(a,"style");ne(u,l)}}}}}},ZUe=["color","borderColor"],YUe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(r),this._isLargeDraw?this._renderLarge(r):this._renderNormal(r)},t.prototype.incrementalPrepareRender=function(r,n,i){this._clear(),this._updateDrawMode(r)},t.prototype.incrementalRender=function(r,n,i,a){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(r,n):this._incrementalRenderNormal(r,n)},t.prototype.eachRendered=function(r){Au(this._progressiveEls||this.group,r)},t.prototype._updateDrawMode=function(r){var n=r.pipelineContext.large;(this._isLargeDraw==null||n!==this._isLargeDraw)&&(this._isLargeDraw=n,this._clear())},t.prototype._renderNormal=function(r){var n=r.getData(),i=this._data,a=this.group,o=n.getLayout("isSimpleBox"),s=r.get("clip",!0),l=r.coordinateSystem,u=l.getArea&&l.getArea();this._data||a.removeAll(),n.diff(i).add(function(c){if(n.hasValue(c)){var f=n.getItemLayout(c);if(s&&h8(u,f))return;var h=$M(f,c,!0);Nt(h,{shape:{points:f.ends}},r,c),FM(h,n,c,o),a.add(h),n.setItemGraphicEl(c,h)}}).update(function(c,f){var h=i.getItemGraphicEl(f);if(!n.hasValue(c)){a.remove(h);return}var d=n.getItemLayout(c);if(s&&h8(u,d)){a.remove(h);return}h?(lt(h,{shape:{points:d.ends}},r,c),ga(h)):h=$M(d),FM(h,n,c,o),a.add(h),n.setItemGraphicEl(c,h)}).remove(function(c){var f=i.getItemGraphicEl(c);f&&a.remove(f)}).execute(),this._data=n},t.prototype._renderLarge=function(r){this._clear(),d8(r,this.group);var n=r.get("clip",!0)?T0(r.coordinateSystem,!1,r):null;n?this.group.setClipPath(n):this.group.removeClipPath()},t.prototype._incrementalRenderNormal=function(r,n){for(var i=n.getData(),a=i.getLayout("isSimpleBox"),o;(o=r.next())!=null;){var s=i.getItemLayout(o),l=$M(s);FM(l,i,o,a),l.incremental=!0,this.group.add(l),this._progressiveEls.push(l)}},t.prototype._incrementalRenderLarge=function(r,n){d8(n,this.group,this._progressiveEls,!0)},t.prototype.remove=function(r){this._clear()},t.prototype._clear=function(){this.group.removeAll(),this._data=null},t.type="candlestick",t}(bt),XUe=function(){function e(){}return e}(),qUe=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n.type="normalCandlestickBox",n}return t.prototype.getDefaultShape=function(){return new XUe},t.prototype.buildPath=function(r,n){var i=n.points;this.__simpleBox?(r.moveTo(i[4][0],i[4][1]),r.lineTo(i[6][0],i[6][1])):(r.moveTo(i[0][0],i[0][1]),r.lineTo(i[1][0],i[1][1]),r.lineTo(i[2][0],i[2][1]),r.lineTo(i[3][0],i[3][1]),r.closePath(),r.moveTo(i[4][0],i[4][1]),r.lineTo(i[5][0],i[5][1]),r.moveTo(i[6][0],i[6][1]),r.lineTo(i[7][0],i[7][1]))},t}(tt);function $M(e,t,r){var n=e.ends;return new qUe({shape:{points:r?KUe(n,e):n},z2:100})}function h8(e,t){for(var r=!0,n=0;nT?O[a]:k[a],ends:z,brushRect:Z(C,A,b)})}function $(G,Y){var K=[];return K[i]=Y,K[a]=G,isNaN(Y)||isNaN(G)?[NaN,NaN]:t.dataToPoint(K)}function B(G,Y,K){var ee=Y.slice(),le=Y.slice();ee[i]=fb(ee[i]+n/2,1,!1),le[i]=fb(le[i]-n/2,1,!0),K?G.push(ee,le):G.push(le,ee)}function Z(G,Y,K){var ee=$(G,K),le=$(Y,K);return ee[i]-=n/2,le[i]-=n/2,{x:ee[0],y:ee[1],width:n,height:le[1]-ee[1]}}function W(G){return G[i]=fb(G[i],1),G}}function v(m,y){for(var x=Mo(m.count*4),_=0,b,S=[],T=[],C,A=y.getStore(),P=!!e.get(["itemStyle","borderColorDoji"]);(C=m.next())!=null;){var I=A.get(s,C),k=A.get(u,C),O=A.get(c,C),D=A.get(f,C),N=A.get(h,C);if(isNaN(I)||isNaN(D)||isNaN(N)){x[_++]=NaN,_+=3;continue}x[_++]=v8(A,C,k,O,c,P),S[i]=I,S[a]=D,b=t.dataToPoint(S,null,T),x[_++]=b?b[0]:NaN,x[_++]=b?b[1]:NaN,S[a]=N,b=t.dataToPoint(S,null,T),x[_++]=b?b[1]:NaN}y.setLayout("largePoints",x)}}};function v8(e,t,r,n,i,a){var o;return r>n?o=-1:r0?e.get(i,t-1)<=n?1:-1:1,o}function t7e(e,t){var r=e.getBaseAxis(),n,i=r.type==="category"?r.getBandWidth():(n=r.getExtent(),Math.abs(n[1]-n[0])/t.count()),a=pe(Se(e.get("barMaxWidth"),i),i),o=pe(Se(e.get("barMinWidth"),1),i),s=e.get("barWidth");return s!=null?pe(s,i):Math.max(Math.min(i/2,a),o)}function r7e(e){e.registerChartView(YUe),e.registerSeriesModel(Dne),e.registerPreprocessor(QUe),e.registerVisual(UUe),e.registerLayout(e7e)}function p8(e,t){var r=t.rippleEffectColor||t.color;e.eachChild(function(n){n.attr({z:t.z,zlevel:t.zlevel,style:{stroke:t.brushType==="stroke"?r:null,fill:t.brushType==="fill"?r:null}})})}var n7e=function(e){q(t,e);function t(r,n){var i=e.call(this)||this,a=new w0(r,n),o=new Pe;return i.add(a),i.add(o),i.updateData(r,n),i}return t.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},t.prototype.startEffectAnimation=function(r){for(var n=r.symbolType,i=r.color,a=r.rippleNumber,o=this.childAt(1),s=0;s0&&(s=this._getLineLength(a)/c*1e3),s!==this._period||l!==this._loop||u!==this._roundTrip){a.stopAnimation();var h=void 0;Ae(f)?h=f(i):h=f,a.__t>0&&(h=-s*a.__t),this._animateSymbol(a,s,h,l,u)}this._period=s,this._loop=l,this._roundTrip=u}},t.prototype._animateSymbol=function(r,n,i,a,o){if(n>0){r.__t=0;var s=this,l=r.animate("",a).when(o?n*2:n,{__t:o?2:1}).delay(i).during(function(){s._updateSymbolPosition(r)});a||l.done(function(){s.remove(r)}),l.start()}},t.prototype._getLineLength=function(r){return xs(r.__p1,r.__cp1)+xs(r.__cp1,r.__p2)},t.prototype._updateAnimationPoints=function(r,n){r.__p1=n[0],r.__p2=n[1],r.__cp1=n[2]||[(n[0][0]+n[1][0])/2,(n[0][1]+n[1][1])/2]},t.prototype.updateData=function(r,n,i){this.childAt(0).updateData(r,n,i),this._updateEffectSymbol(r,n)},t.prototype._updateSymbolPosition=function(r){var n=r.__p1,i=r.__p2,a=r.__cp1,o=r.__t<1?r.__t:2-r.__t,s=[r.x,r.y],l=s.slice(),u=rn,c=nI;s[0]=u(n[0],a[0],i[0],o),s[1]=u(n[1],a[1],i[1],o);var f=r.__t<1?c(n[0],a[0],i[0],o):c(i[0],a[0],n[0],1-o),h=r.__t<1?c(n[1],a[1],i[1],o):c(i[1],a[1],n[1],1-o);r.rotation=-Math.atan2(h,f)-Math.PI/2,(this._symbolType==="line"||this._symbolType==="rect"||this._symbolType==="roundRect")&&(r.__lastT!==void 0&&r.__lastT=0&&!(a[l]<=n);l--);l=Math.min(l,o-2)}else{for(l=s;ln);l++);l=Math.min(l-1,o-2)}var c=(n-a[l])/(a[l+1]-a[l]),f=i[l],h=i[l+1];r.x=f[0]*(1-c)+c*h[0],r.y=f[1]*(1-c)+c*h[1];var d=r.__t<1?h[0]-f[0]:f[0]-h[0],v=r.__t<1?h[1]-f[1]:f[1]-h[1];r.rotation=-Math.atan2(v,d)-Math.PI/2,this._lastFrame=l,this._lastFramePercent=n,r.ignore=!1}},t}(Nne),l7e=function(){function e(){this.polyline=!1,this.curveness=0,this.segs=[]}return e}(),u7e=function(e){q(t,e);function t(r){var n=e.call(this,r)||this;return n._off=0,n.hoverDataIdx=-1,n}return t.prototype.reset=function(){this.notClear=!1,this._off=0},t.prototype.getDefaultStyle=function(){return{stroke:J.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new l7e},t.prototype.buildPath=function(r,n){var i=n.segs,a=n.curveness,o;if(n.polyline)for(o=this._off;o0){r.moveTo(i[o++],i[o++]);for(var l=1;l0){var d=(u+f)/2-(c-h)*a,v=(c+h)/2-(f-u)*a;r.quadraticCurveTo(d,v,f,h)}else r.lineTo(f,h)}this.incremental&&(this._off=o,this.notClear=!0)},t.prototype.findDataIndex=function(r,n){var i=this.shape,a=i.segs,o=i.curveness,s=this.style.lineWidth;if(i.polyline)for(var l=0,u=0;u0)for(var f=a[u++],h=a[u++],d=1;d0){var y=(f+v)/2-(h-m)*o,x=(h+m)/2-(v-f)*o;if(jJ(f,h,y,x,v,m,s,r,n))return l}else if(wl(f,h,v,m,s,r,n))return l;l++}return-1},t.prototype.contain=function(r,n){var i=this.transformCoordToLocal(r,n),a=this.getBoundingRect();if(r=i[0],n=i[1],a.contain(r,n)){var o=this.hoverDataIdx=this.findDataIndex(r,n);return o>=0}return this.hoverDataIdx=-1,!1},t.prototype.getBoundingRect=function(){var r=this._rect;if(!r){for(var n=this.shape,i=n.segs,a=1/0,o=1/0,s=-1/0,l=-1/0,u=0;u0&&(o.dataIndex=l+t.__startIndex)})},e.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},e}(),Rne={seriesType:"lines",plan:Zv(),reset:function(e){var t=e.coordinateSystem;if(t){var r=e.get("polyline"),n=e.pipelineContext.large;return{progress:function(i,a){var o=[];if(n){var s=void 0,l=i.end-i.start;if(r){for(var u=0,c=i.start;c0&&(c||u.configLayer(s,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(l/10+.9,1),0)})),o.updateData(a);var f=r.get("clip",!0)&&T0(r.coordinateSystem,!1,r);f?this.group.setClipPath(f):this.group.removeClipPath(),this._lastZlevel=s,this._finished=!0},t.prototype.incrementalPrepareRender=function(r,n,i){var a=r.getData(),o=this._updateLineDraw(a,r);o.incrementalPrepareUpdate(a),this._clearLayer(i),this._finished=!1},t.prototype.incrementalRender=function(r,n,i){this._lineDraw.incrementalUpdate(r,n.getData()),this._finished=r.end===n.getData().count()},t.prototype.eachRendered=function(r){this._lineDraw&&this._lineDraw.eachRendered(r)},t.prototype.updateTransform=function(r,n,i){var a=r.getData(),o=r.pipelineContext;if(!this._finished||o.large||o.progressiveRender)return{update:!0};var s=Rne.reset(r,n,i);s.progress&&s.progress({start:0,end:a.count(),count:a.count()},a),this._lineDraw.updateLayout(),this._clearLayer(i)},t.prototype._updateLineDraw=function(r,n){var i=this._lineDraw,a=this._showEffect(n),o=!!n.get("polyline"),s=n.pipelineContext,l=s.large;return(!i||a!==this._hasEffet||o!==this._isPolyline||l!==this._isLargeDraw)&&(i&&i.remove(),i=this._lineDraw=l?new c7e:new uR(o?a?s7e:jne:a?Nne:lR),this._hasEffet=a,this._isPolyline=o,this._isLargeDraw=l),this.group.add(i.group),i},t.prototype._showEffect=function(r){return!!r.get(["effect","show"])},t.prototype._clearLayer=function(r){var n=r.getZr(),i=n.painter.getType()==="svg";!i&&this._lastZlevel!=null&&n.painter.getLayer(this._lastZlevel).clear(!0)},t.prototype.remove=function(r,n){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(n)},t.prototype.dispose=function(r,n){this.remove(r,n)},t.type="lines",t}(bt),h7e=typeof Uint32Array>"u"?Array:Uint32Array,d7e=typeof Float64Array>"u"?Array:Float64Array;function g8(e){var t=e.data;t&&t[0]&&t[0][0]&&t[0][0].coord&&(e.data=se(t,function(r){var n=[r[0].coord,r[1].coord],i={coords:n};return r[0].name&&(i.fromName=r[0].name),r[1].name&&(i.toName=r[1].name),PT([i,r[0],r[1]])}))}var v7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.visualStyleAccessPath="lineStyle",r.visualDrawType="stroke",r}return t.prototype.init=function(r){r.data=r.data||[],g8(r);var n=this._processFlatCoordsArray(r.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(r.data=new Float32Array(n.count)),e.prototype.init.apply(this,arguments)},t.prototype.mergeOption=function(r){if(g8(r),r.data){var n=this._processFlatCoordsArray(r.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(r.data=new Float32Array(n.count))}e.prototype.mergeOption.apply(this,arguments)},t.prototype.appendData=function(r){var n=this._processFlatCoordsArray(r.data);n.flatCoords&&(this._flatCoords?(this._flatCoords=Yd(this._flatCoords,n.flatCoords),this._flatCoordsOffset=Yd(this._flatCoordsOffset,n.flatCoordsOffset)):(this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset),r.data=new Float32Array(n.count)),this.getRawData().appendData(r.data)},t.prototype._getCoordsFromItemModel=function(r){var n=this.getData().getItemModel(r),i=n.option instanceof Array?n.option:n.getShallow("coords");return i},t.prototype.getLineCoordsCount=function(r){return this._flatCoordsOffset?this._flatCoordsOffset[r*2+1]:this._getCoordsFromItemModel(r).length},t.prototype.getLineCoords=function(r,n){if(this._flatCoordsOffset){for(var i=this._flatCoordsOffset[r*2],a=this._flatCoordsOffset[r*2+1],o=0;o ")})},t.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},t.prototype.getProgressive=function(){var r=this.option.progressive;return r??(this.option.large?1e4:this.get("progressive"))},t.prototype.getProgressiveThreshold=function(){var r=this.option.progressiveThreshold;return r??(this.option.large?2e4:this.get("progressiveThreshold"))},t.prototype.getZLevelKey=function(){var r=this.getModel("effect"),n=r.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:r.get("show")&&n>0?n+"":""},t.type="series.lines",t.dependencies=["grid","polar","geo","calendar"],t.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},t}(Ct);function M_(e){return e instanceof Array||(e=[e,e]),e}var p7e={seriesType:"lines",reset:function(e){var t=M_(e.get("symbol")),r=M_(e.get("symbolSize")),n=e.getData();n.setVisual("fromSymbol",t&&t[0]),n.setVisual("toSymbol",t&&t[1]),n.setVisual("fromSymbolSize",r&&r[0]),n.setVisual("toSymbolSize",r&&r[1]);function i(a,o){var s=a.getItemModel(o),l=M_(s.getShallow("symbol",!0)),u=M_(s.getShallow("symbolSize",!0));l[0]&&a.setItemVisual(o,"fromSymbol",l[0]),l[1]&&a.setItemVisual(o,"toSymbol",l[1]),u[0]&&a.setItemVisual(o,"fromSymbolSize",u[0]),u[1]&&a.setItemVisual(o,"toSymbolSize",u[1])}return{dataEach:n.hasItemOption?i:null}}};function g7e(e){e.registerChartView(f7e),e.registerSeriesModel(v7e),e.registerLayout(Rne),e.registerVisual(p7e)}var m7e=256,y7e=function(){function e(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=ci.createCanvas();this.canvas=t}return e.prototype.update=function(t,r,n,i,a,o){var s=this._getBrush(),l=this._getGradient(a,"inRange"),u=this._getGradient(a,"outOfRange"),c=this.pointSize+this.blurSize,f=this.canvas,h=f.getContext("2d"),d=t.length;f.width=r,f.height=n;for(var v=0;v0){var D=o(b)?l:u;b>0&&(b=b*k+P),T[C++]=D[O],T[C++]=D[O+1],T[C++]=D[O+2],T[C++]=D[O+3]*b*256}else C+=4}return h.putImageData(S,0,0),f},e.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=ci.createCanvas()),r=this.pointSize+this.blurSize,n=r*2;t.width=n,t.height=n;var i=t.getContext("2d");return i.clearRect(0,0,n,n),i.shadowOffsetX=n,i.shadowBlur=this.blurSize,i.shadowColor=J.color.neutral99,i.beginPath(),i.arc(-r,r,this.pointSize,0,Math.PI*2,!0),i.closePath(),i.fill(),t},e.prototype._getGradient=function(t,r){for(var n=this._gradientPixels,i=n[r]||(n[r]=new Uint8ClampedArray(256*4)),a=[0,0,0,0],o=0,s=0;s<256;s++)t[r](s/255,!0,a),i[o++]=a[0],i[o++]=a[1],i[o++]=a[2],i[o++]=a[3];return i},e}();function x7e(e,t,r){var n=e[1]-e[0];t=se(t,function(o){return{interval:[(o.interval[0]-e[0])/n,(o.interval[1]-e[0])/n]}});var i=t.length,a=0;return function(o){var s;for(s=a;s=0;s--){var l=t[s].interval;if(l[0]<=o&&o<=l[1]){a=s;break}}return s>=0&&s=t[0]&&n<=t[1]}}function m8(e){var t=e.dimensions;return t[0]==="lng"&&t[1]==="lat"}var b7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a;n.eachComponent("visualMap",function(s){s.eachTargetSeries(function(l){l===r&&(a=s)})}),this._progressiveEls=null,this.group.removeAll();var o=r.coordinateSystem;o.type==="cartesian2d"||o.type==="calendar"||o.type==="matrix"?this._renderOnGridLike(r,i,0,r.getData().count()):m8(o)&&this._renderOnGeo(o,r,a,i)},t.prototype.incrementalPrepareRender=function(r,n,i){this.group.removeAll()},t.prototype.incrementalRender=function(r,n,i,a){var o=n.coordinateSystem;o&&(m8(o)?this.render(n,i,a):(this._progressiveEls=[],this._renderOnGridLike(n,a,r.start,r.end,!0)))},t.prototype.eachRendered=function(r){Au(this._progressiveEls||this.group,r)},t.prototype._renderOnGridLike=function(r,n,i,a,o){var s=r.coordinateSystem,l=fu(s,"cartesian2d"),u=fu(s,"matrix"),c,f,h,d;if(l){var v=s.getAxis("x"),m=s.getAxis("y");c=v.getBandWidth()+.5,f=m.getBandWidth()+.5,h=v.scale.getExtent(),d=m.scale.getExtent()}for(var y=this.group,x=r.getData(),_=r.getModel(["emphasis","itemStyle"]).getItemStyle(),b=r.getModel(["blur","itemStyle"]).getItemStyle(),S=r.getModel(["select","itemStyle"]).getItemStyle(),T=r.get(["itemStyle","borderRadius"]),C=jr(r),A=r.getModel("emphasis"),P=A.get("focus"),I=A.get("blurScope"),k=A.get("disabled"),O=l||u?[x.mapDimension("x"),x.mapDimension("y"),x.mapDimension("value")]:[x.mapDimension("time"),x.mapDimension("value")],D=i;Dh[1]||Fd[1])continue;var $=s.dataToPoint([V,F]);N=new Xe({shape:{x:$[0]-c/2,y:$[1]-f/2,width:c,height:f},style:z})}else if(u){var B=s.dataToLayout([x.get(O[0],D),x.get(O[1],D)]).rect;if(mn(B.x))continue;N=new Xe({z2:1,shape:B,style:z})}else{if(isNaN(x.get(O[1],D)))continue;var Z=s.dataToLayout([x.get(O[0],D)]),B=Z.contentRect||Z.rect;if(mn(B.x)||mn(B.y))continue;N=new Xe({z2:1,shape:B,style:z})}if(x.hasItemOption){var W=x.getItemModel(D),G=W.getModel("emphasis");_=G.getModel("itemStyle").getItemStyle(),b=W.getModel(["blur","itemStyle"]).getItemStyle(),S=W.getModel(["select","itemStyle"]).getItemStyle(),T=W.get(["itemStyle","borderRadius"]),P=G.get("focus"),I=G.get("blurScope"),k=G.get("disabled"),C=jr(W)}N.shape.r=T;var Y=r.getRawValue(D),K="-";Y&&Y[2]!=null&&(K=Y[2]+""),Zr(N,C,{labelFetcher:r,labelDataIndex:D,defaultOpacity:z.opacity,defaultText:K}),N.ensureState("emphasis").style=_,N.ensureState("blur").style=b,N.ensureState("select").style=S,Gt(N,P,I,k),N.incremental=o,o&&(N.states.emphasis.hoverLayer=!0),y.add(N),x.setItemGraphicEl(D,N),this._progressiveEls&&this._progressiveEls.push(N)}},t.prototype._renderOnGeo=function(r,n,i,a){var o=i.targetVisuals.inRange,s=i.targetVisuals.outOfRange,l=n.getData(),u=this._hmLayer||this._hmLayer||new y7e;u.blurSize=n.get("blurSize"),u.pointSize=n.get("pointSize"),u.minOpacity=n.get("minOpacity"),u.maxOpacity=n.get("maxOpacity");var c=r.getViewRect().clone(),f=r.getRoamTransform();c.applyTransform(f);var h=Math.max(c.x,0),d=Math.max(c.y,0),v=Math.min(c.width+c.x,a.getWidth()),m=Math.min(c.height+c.y,a.getHeight()),y=v-h,x=m-d,_=[l.mapDimension("lng"),l.mapDimension("lat"),l.mapDimension("value")],b=l.mapArray(_,function(A,P,I){var k=r.dataToPoint([A,P]);return k[0]-=h,k[1]-=d,k.push(I),k}),S=i.getExtent(),T=i.type==="visualMap.continuous"?_7e(S,i.option.range):x7e(S,i.getPieceList(),i.option.selected);u.update(b,y,x,o.color.getNormalizer(),{inRange:o.color.getColorMapper(),outOfRange:s.color.getColorMapper()},T);var C=new Xr({style:{width:y,height:x,x:h,y:d,image:u.canvas},silent:!0});this.group.add(C)},t.type="heatmap",t}(bt),w7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.getInitialData=function(r,n){return Jo(null,this,{generateCoord:"value"})},t.prototype.preventIncremental=function(){var r=Uv.get(this.get("coordinateSystem"));if(r&&r.dimensions)return r.dimensions[0]==="lng"&&r.dimensions[1]==="lat"},t.type="series.heatmap",t.dependencies=["grid","geo","calendar","matrix"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,geoIndex:0,blurSize:30,pointSize:20,maxOpacity:1,minOpacity:0,select:{itemStyle:{borderColor:J.color.primary}}},t}(Ct);function S7e(e){e.registerChartView(b7e),e.registerSeriesModel(w7e)}var T7e=["itemStyle","borderWidth"],y8=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],WM=new Ko,C7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=this.group,o=r.getData(),s=this._data,l=r.coordinateSystem,u=l.getBaseAxis(),c=u.isHorizontal(),f=l.master.getRect(),h={ecSize:{width:i.getWidth(),height:i.getHeight()},seriesModel:r,coordSys:l,coordSysExtent:[[f.x,f.x+f.width],[f.y,f.y+f.height]],isHorizontal:c,valueDim:y8[+c],categoryDim:y8[1-+c]};o.diff(s).add(function(v){if(o.hasValue(v)){var m=_8(o,v),y=x8(o,v,m,h),x=b8(o,h,y);o.setItemGraphicEl(v,x),a.add(x),S8(x,h,y)}}).update(function(v,m){var y=s.getItemGraphicEl(m);if(!o.hasValue(v)){a.remove(y);return}var x=_8(o,v),_=x8(o,v,x,h),b=Gne(o,_);y&&b!==y.__pictorialShapeStr&&(a.remove(y),o.setItemGraphicEl(v,null),y=null),y?E7e(y,h,_):y=b8(o,h,_,!0),o.setItemGraphicEl(v,y),y.__pictorialSymbolMeta=_,a.add(y),S8(y,h,_)}).remove(function(v){var m=s.getItemGraphicEl(v);m&&w8(s,v,m.__pictorialSymbolMeta.animationModel,m)}).execute();var d=r.get("clip",!0)?T0(r.coordinateSystem,!1,r):null;return d?a.setClipPath(d):a.removeClipPath(),this._data=o,this.group},t.prototype.remove=function(r,n){var i=this.group,a=this._data;r.get("animation")?a&&a.eachItemGraphicEl(function(o){w8(a,je(o).dataIndex,r,o)}):i.removeAll()},t.type="pictorialBar",t}(bt);function x8(e,t,r,n){var i=e.getItemLayout(t),a=r.get("symbolRepeat"),o=r.get("symbolClip"),s=r.get("symbolPosition")||"start",l=r.get("symbolRotate"),u=(l||0)*Math.PI/180||0,c=r.get("symbolPatternSize")||2,f=r.isAnimationEnabled(),h={dataIndex:t,layout:i,itemModel:r,symbolType:e.getItemVisual(t,"symbol")||"circle",style:e.getItemVisual(t,"style"),symbolClip:o,symbolRepeat:a,symbolRepeatDirection:r.get("symbolRepeatDirection"),symbolPatternSize:c,rotation:u,animationModel:f?r:null,hoverScale:f&&r.get(["emphasis","scale"]),z2:r.getShallow("z",!0)||0};A7e(r,a,i,n,h),M7e(e,t,i,a,o,h.boundingLength,h.pxSign,c,n,h),P7e(r,h.symbolScale,u,n,h);var d=h.symbolSize,v=Of(r.get("symbolOffset"),d);return k7e(r,d,i,a,o,v,s,h.valueLineWidth,h.boundingLength,h.repeatCutLength,n,h),h}function A7e(e,t,r,n,i){var a=n.valueDim,o=e.get("symbolBoundingData"),s=n.coordSys.getOtherAxis(n.coordSys.getBaseAxis()),l=s.toGlobalCoord(s.dataToCoord(0)),u=1-+(r[a.wh]<=0),c;if(ae(o)){var f=[HM(s,o[0])-l,HM(s,o[1])-l];f[1]=0?1:-1:c>0?1:-1}function HM(e,t){return e.toGlobalCoord(e.dataToCoord(e.scale.parse(t)))}function M7e(e,t,r,n,i,a,o,s,l,u){var c=l.valueDim,f=l.categoryDim,h=Math.abs(r[f.wh]),d=e.getItemVisual(t,"symbolSize"),v;ae(d)?v=d.slice():d==null?v=["100%","100%"]:v=[d,d],v[f.index]=pe(v[f.index],h),v[c.index]=pe(v[c.index],n?h:Math.abs(a)),u.symbolSize=v;var m=u.symbolScale=[v[0]/s,v[1]/s];m[c.index]*=(l.isHorizontal?-1:1)*o}function P7e(e,t,r,n,i){var a=e.get(T7e)||0;a&&(WM.attr({scaleX:t[0],scaleY:t[1],rotation:r}),WM.updateTransform(),a/=WM.getLineScale(),a*=t[n.valueDim.index]),i.valueLineWidth=a||0}function k7e(e,t,r,n,i,a,o,s,l,u,c,f){var h=c.categoryDim,d=c.valueDim,v=f.pxSign,m=Math.max(t[d.index]+s,0),y=m;if(n){var x=Math.abs(l),_=nn(e.get("symbolMargin"),"15%")+"",b=!1;_.lastIndexOf("!")===_.length-1&&(b=!0,_=_.slice(0,_.length-1));var S=pe(_,t[d.index]),T=Math.max(m+S*2,0),C=b?0:S*2,A=kN(n),P=A?n:T8((x+C)/T),I=x-P*m;S=I/2/(b?P:Math.max(P-1,1)),T=m+S*2,C=b?0:S*2,!A&&n!=="fixed"&&(P=u?T8((Math.abs(u)+C)/T):0),y=P*T-C,f.repeatTimes=P,f.symbolMargin=S}var k=v*(y/2),O=f.pathPosition=[];O[h.index]=r[h.wh]/2,O[d.index]=o==="start"?k:o==="end"?l-k:l/2,a&&(O[0]+=a[0],O[1]+=a[1]);var D=f.bundlePosition=[];D[h.index]=r[h.xy],D[d.index]=r[d.xy];var N=f.barRectShape=ne({},r);N[d.wh]=v*Math.max(Math.abs(r[d.wh]),Math.abs(O[d.index]+k)),N[h.wh]=r[h.wh];var z=f.clipShape={};z[h.xy]=-r[h.xy],z[h.wh]=c.ecSize[h.wh],z[d.xy]=0,z[d.wh]=r[d.wh]}function Bne(e){var t=e.symbolPatternSize,r=xr(e.symbolType,-t/2,-t/2,t,t);return r.attr({culling:!0}),r.type!=="image"&&r.setStyle({strokeNoScale:!0}),r}function zne(e,t,r,n){var i=e.__pictorialBundle,a=r.symbolSize,o=r.valueLineWidth,s=r.pathPosition,l=t.valueDim,u=r.repeatTimes||0,c=0,f=a[t.valueDim.index]+o+r.symbolMargin*2;for(_R(e,function(m){m.__pictorialAnimationIndex=c,m.__pictorialRepeatTimes=u,c0:x<0)&&(_=u-1-m),y[l.index]=f*(_-u/2+.5)+s[l.index],{x:y[0],y:y[1],scaleX:r.symbolScale[0],scaleY:r.symbolScale[1],rotation:r.rotation}}}function $ne(e,t,r,n){var i=e.__pictorialBundle,a=e.__pictorialMainPath;a?pd(a,null,{x:r.pathPosition[0],y:r.pathPosition[1],scaleX:r.symbolScale[0],scaleY:r.symbolScale[1],rotation:r.rotation},r,n):(a=e.__pictorialMainPath=Bne(r),i.add(a),pd(a,{x:r.pathPosition[0],y:r.pathPosition[1],scaleX:0,scaleY:0,rotation:r.rotation},{scaleX:r.symbolScale[0],scaleY:r.symbolScale[1]},r,n))}function Fne(e,t,r){var n=ne({},t.barRectShape),i=e.__pictorialBarRect;i?pd(i,null,{shape:n},t,r):(i=e.__pictorialBarRect=new Xe({z2:2,shape:n,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}}),i.disableMorphing=!0,e.add(i))}function Vne(e,t,r,n){if(r.symbolClip){var i=e.__pictorialClipPath,a=ne({},r.clipShape),o=t.valueDim,s=r.animationModel,l=r.dataIndex;if(i)lt(i,{shape:a},s,l);else{a[o.wh]=0,i=new Xe({shape:a}),e.__pictorialBundle.setClipPath(i),e.__pictorialClipPath=i;var u={};u[o.wh]=r.clipShape[o.wh],Lf[n?"updateProps":"initProps"](i,{shape:u},s,l)}}}function _8(e,t){var r=e.getItemModel(t);return r.getAnimationDelayParams=L7e,r.isAnimationEnabled=I7e,r}function L7e(e){return{index:e.__pictorialAnimationIndex,count:e.__pictorialRepeatTimes}}function I7e(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function b8(e,t,r,n){var i=new Pe,a=new Pe;return i.add(a),i.__pictorialBundle=a,a.x=r.bundlePosition[0],a.y=r.bundlePosition[1],r.symbolRepeat?zne(i,t,r):$ne(i,t,r),Fne(i,r,n),Vne(i,t,r,n),i.__pictorialShapeStr=Gne(e,r),i.__pictorialSymbolMeta=r,i}function E7e(e,t,r){var n=r.animationModel,i=r.dataIndex,a=e.__pictorialBundle;lt(a,{x:r.bundlePosition[0],y:r.bundlePosition[1]},n,i),r.symbolRepeat?zne(e,t,r,!0):$ne(e,t,r,!0),Fne(e,r,!0),Vne(e,t,r,!0)}function w8(e,t,r,n){var i=n.__pictorialBarRect;i&&i.removeTextContent();var a=[];_R(n,function(o){a.push(o)}),n.__pictorialMainPath&&a.push(n.__pictorialMainPath),n.__pictorialClipPath&&(r=null),R(a,function(o){cu(o,{scaleX:0,scaleY:0},r,t,function(){n.parent&&n.parent.remove(n)})}),e.setItemGraphicEl(t,null)}function Gne(e,t){return[e.getItemVisual(t.dataIndex,"symbol")||"none",!!t.symbolRepeat,!!t.symbolClip].join(":")}function _R(e,t,r){R(e.__pictorialBundle.children(),function(n){n!==e.__pictorialBarRect&&t.call(r,n)})}function pd(e,t,r,n,i,a){t&&e.attr(t),n.symbolClip&&!i?r&&e.attr(r):r&&Lf[i?"updateProps":"initProps"](e,r,n.animationModel,n.dataIndex,a)}function S8(e,t,r){var n=r.dataIndex,i=r.itemModel,a=i.getModel("emphasis"),o=a.getModel("itemStyle").getItemStyle(),s=i.getModel(["blur","itemStyle"]).getItemStyle(),l=i.getModel(["select","itemStyle"]).getItemStyle(),u=i.getShallow("cursor"),c=a.get("focus"),f=a.get("blurScope"),h=a.get("scale");_R(e,function(m){if(m instanceof Xr){var y=m.style;m.useStyle(ne({image:y.image,x:y.x,y:y.y,width:y.width,height:y.height},r.style))}else m.useStyle(r.style);var x=m.ensureState("emphasis");x.style=o,h&&(x.scaleX=m.scaleX*1.1,x.scaleY=m.scaleY*1.1),m.ensureState("blur").style=s,m.ensureState("select").style=l,u&&(m.cursor=u),m.z2=r.z2});var d=t.valueDim.posDesc[+(r.boundingLength>0)],v=e.__pictorialBarRect;v.ignoreClip=!0,Zr(v,jr(i),{labelFetcher:t.seriesModel,labelDataIndex:n,defaultText:av(t.seriesModel.getData(),n),inheritColor:r.style.fill,defaultOpacity:r.style.opacity,defaultOutsidePosition:d}),Gt(e,c,f,a.get("disabled"))}function T8(e){var t=Math.round(e);return Math.abs(e-t)<1e-4?t:Math.ceil(e)}var O7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.hasSymbolVisual=!0,r.defaultSymbol="roundRect",r}return t.prototype.getInitialData=function(r){return r.stack=null,e.prototype.getInitialData.apply(this,arguments)},t.type="series.pictorialBar",t.dependencies=["grid"],t.defaultOption=Mu(Dy.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",clip:!1,progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:J.color.primary}}}),t}(Dy);function D7e(e){e.registerChartView(C7e),e.registerSeriesModel(O7e),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,Fe(ute,"pictorialBar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,cte("pictorialBar"))}var N7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._layers=[],r}return t.prototype.render=function(r,n,i){var a=r.getData(),o=this,s=this.group,l=r.getLayerSeries(),u=a.getLayout("layoutInfo"),c=u.rect,f=u.boundaryGap;s.x=0,s.y=c.y+f[0];function h(y){return y.name}var d=new Us(this._layersSeries||[],l,h,h),v=[];d.add(me(m,this,"add")).update(me(m,this,"update")).remove(me(m,this,"remove")).execute();function m(y,x,_){var b=o._layers;if(y==="remove"){s.remove(b[x]);return}for(var S=[],T=[],C,A=l[x].indices,P=0;Pa&&(a=s),n.push(s)}for(var u=0;ua&&(a=f)}return{y0:i,max:a}}function $7e(e){e.registerChartView(N7e),e.registerSeriesModel(R7e),e.registerLayout(B7e),e.registerProcessor(Qv("themeRiver"))}var F7e=2,V7e=4,A8=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;o.z2=F7e,o.textConfig={inside:!0},je(o).seriesIndex=n.seriesIndex;var s=new at({z2:V7e,silent:r.getModel().get(["label","silent"])});return o.setTextContent(s),o.updateData(!0,r,n,i,a),o}return t.prototype.updateData=function(r,n,i,a,o){this.node=n,n.piece=this,i=i||this._seriesModel,a=a||this._ecModel;var s=this;je(s).dataIndex=n.dataIndex;var l=n.getModel(),u=l.getModel("emphasis"),c=n.getLayout(),f=ne({},c);f.label=null;var h=n.getVisual("style");h.lineJoin="bevel";var d=n.getVisual("decal");d&&(h.decal=rv(d,o));var v=ko(l.getModel("itemStyle"),f,!0);ne(f,v),R(Yn,function(_){var b=s.ensureState(_),S=l.getModel([_,"itemStyle"]);b.style=S.getItemStyle();var T=ko(S,f);T&&(b.shape=T)}),r?(s.setShape(f),s.shape.r=c.r0,Nt(s,{shape:{r:c.r}},i,n.dataIndex)):(lt(s,{shape:f},i),ga(s)),s.useStyle(h),this._updateLabel(i);var m=l.getShallow("cursor");m&&s.attr("cursor",m),this._seriesModel=i||this._seriesModel,this._ecModel=a||this._ecModel;var y=u.get("focus"),x=y==="relative"?Yd(n.getAncestorsIndices(),n.getDescendantIndices()):y==="ancestor"?n.getAncestorsIndices():y==="descendant"?n.getDescendantIndices():y;Gt(this,x,u.get("blurScope"),u.get("disabled"))},t.prototype._updateLabel=function(r){var n=this,i=this.node.getModel(),a=i.getModel("label"),o=this.node.getLayout(),s=o.endAngle-o.startAngle,l=(o.startAngle+o.endAngle)/2,u=Math.cos(l),c=Math.sin(l),f=this,h=f.getTextContent(),d=this.node.dataIndex,v=a.get("minAngle")/180*Math.PI,m=a.get("show")&&!(v!=null&&Math.abs(s)z&&!Kd(F-z)&&F0?(o.virtualPiece?o.virtualPiece.updateData(!1,_,r,n,i):(o.virtualPiece=new A8(_,r,n,i),c.add(o.virtualPiece)),b.piece.off("click"),o.virtualPiece.on("click",function(S){o._rootToNode(b.parentNode)})):o.virtualPiece&&(c.remove(o.virtualPiece),o.virtualPiece=null)}},t.prototype._initEvents=function(){var r=this;this.group.off("click"),this.group.on("click",function(n){var i=!1,a=r.seriesModel.getViewRoot();a.eachNode(function(o){if(!i&&o.piece&&o.piece===n.target){var s=o.getModel().get("nodeClick");if(s==="rootToNode")r._rootToNode(o);else if(s==="link"){var l=o.getModel(),u=l.get("link");if(u){var c=l.get("target",!0)||"_blank";ww(u,c)}}i=!0}})})},t.prototype._rootToNode=function(r){r!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:NE,from:this.uid,seriesId:this.seriesModel.id,targetNode:r})},t.prototype.containPoint=function(r,n){var i=n.getData(),a=i.getItemLayout(0);if(a){var o=r[0]-a.cx,s=r[1]-a.cy,l=Math.sqrt(o*o+s*s);return l<=a.r&&l>=a.r0}},t.type="sunburst",t}(bt),U7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.ignoreStyleOnData=!0,r}return t.prototype.getInitialData=function(r,n){var i={name:r.name,children:r.data};Wne(i);var a=this._levelModels=se(r.levels||[],function(l){return new et(l,this,n)},this),o=rR.createTree(i,this,s);function s(l){l.wrapMethod("getItemModel",function(u,c){var f=o.getNodeByDataIndex(c),h=a[f.depth];return h&&(u.parentModel=h),u})}return o.data},t.prototype.optionUpdated=function(){this.resetViewRoot()},t.prototype.getDataParams=function(r){var n=e.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(r);return n.treePathInfo=oC(i,this),n},t.prototype.getLevelModel=function(r){return this._levelModels&&this._levelModels[r.depth]},t.prototype.getViewRoot=function(){return this._viewRoot},t.prototype.resetViewRoot=function(r){r?this._viewRoot=r:r=this._viewRoot;var n=this.getRawData().tree.root;(!r||r!==n&&!n.contains(r))&&(this._viewRoot=n)},t.prototype.enableAriaDecal=function(){Yre(this)},t.type="series.sunburst",t.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},t}(Ct);function Wne(e){var t=0;R(e.children,function(n){Wne(n);var i=n.value;ae(i)&&(i=i[0]),t+=i});var r=e.value;ae(r)&&(r=r[0]),(r==null||isNaN(r))&&(r=t),r<0&&(r=0),ae(e.value)?e.value[0]=r:e.value=r}var P8=Math.PI/180;function Z7e(e,t,r){t.eachSeriesByType(e,function(n){var i=n.get("center"),a=n.get("radius");ae(a)||(a=[0,a]),ae(i)||(i=[i,i]);var o=r.getWidth(),s=r.getHeight(),l=Math.min(o,s),u=pe(i[0],o),c=pe(i[1],s),f=pe(a[0],l/2),h=pe(a[1],l/2),d=-n.get("startAngle")*P8,v=n.get("minAngle")*P8,m=n.getData().tree.root,y=n.getViewRoot(),x=y.depth,_=n.get("sort");_!=null&&Hne(y,_);var b=0;R(y.children,function(F){!isNaN(F.getValue())&&b++});var S=y.getValue(),T=Math.PI/(S||b)*2,C=y.depth>0,A=y.height-(C?-1:1),P=(h-f)/(A||1),I=n.get("clockwise"),k=n.get("stillShowZeroSum"),O=I?1:-1,D=function(F,$){if(F){var B=$;if(F!==m){var Z=F.getValue(),W=S===0&&k?T:Z*T;W1;)o=o.parentNode;var s=i.getColorFromPalette(o.name||o.dataIndex+"",t);return n.depth>1&&ge(s)&&(s=lw(s,(n.depth-1)/(a-1)*.5)),s}e.eachSeriesByType("sunburst",function(n){var i=n.getData(),a=i.tree;a.eachNode(function(o){var s=o.getModel(),l=s.getModel("itemStyle").getItemStyle();l.fill||(l.fill=r(o,n,a.root.height));var u=i.ensureUniqueItemVisual(o.dataIndex,"style");ne(u,l)})})}function q7e(e){e.registerChartView(H7e),e.registerSeriesModel(U7e),e.registerLayout(Fe(Z7e,"sunburst")),e.registerProcessor(Fe(Qv,"sunburst")),e.registerVisual(X7e),W7e(e)}var k8={color:"fill",borderColor:"stroke"},K7e={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},Is=Je(),J7e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},t.prototype.getInitialData=function(r,n){return Jo(null,this)},t.prototype.getDataParams=function(r,n,i){var a=e.prototype.getDataParams.call(this,r,n);return i&&(a.info=Is(i).info),a},t.type="series.custom",t.dependencies=["grid","polar","geo","singleAxis","calendar","matrix"],t.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},t}(Ct);function Q7e(e,t){return t=t||[0,0],se(["x","y"],function(r,n){var i=this.getAxis(r),a=t[n],o=e[n]/2;return i.type==="category"?i.getBandWidth():Math.abs(i.dataToCoord(a-o)-i.dataToCoord(a+o))},this)}function e9e(e){var t=e.master.getRect();return{coordSys:{type:"cartesian2d",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(r){return e.dataToPoint(r)},size:me(Q7e,e)}}}function t9e(e,t){return t=t||[0,0],se([0,1],function(r){var n=t[r],i=e[r]/2,a=[],o=[];return a[r]=n-i,o[r]=n+i,a[1-r]=o[1-r]=t[1-r],Math.abs(this.dataToPoint(a)[r]-this.dataToPoint(o)[r])},this)}function r9e(e){var t=e.getBoundingRect();return{coordSys:{type:"geo",x:t.x,y:t.y,width:t.width,height:t.height,zoom:e.getZoom()},api:{coord:function(r){return e.dataToPoint(r)},size:me(t9e,e)}}}function n9e(e,t){var r=this.getAxis(),n=t instanceof Array?t[0]:t,i=(e instanceof Array?e[0]:e)/2;return r.type==="category"?r.getBandWidth():Math.abs(r.dataToCoord(n-i)-r.dataToCoord(n+i))}function i9e(e){var t=e.getRect();return{coordSys:{type:"singleAxis",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(r){return e.dataToPoint(r)},size:me(n9e,e)}}}function a9e(e,t){return t=t||[0,0],se(["Radius","Angle"],function(r,n){var i="get"+r+"Axis",a=this[i](),o=t[n],s=e[n]/2,l=a.type==="category"?a.getBandWidth():Math.abs(a.dataToCoord(o-s)-a.dataToCoord(o+s));return r==="Angle"&&(l=l*Math.PI/180),l},this)}function o9e(e){var t=e.getRadiusAxis(),r=e.getAngleAxis(),n=t.getExtent();return n[0]>n[1]&&n.reverse(),{coordSys:{type:"polar",cx:e.cx,cy:e.cy,r:n[1],r0:n[0]},api:{coord:function(i){var a=t.dataToRadius(i[0]),o=r.dataToAngle(i[1]),s=e.coordToPoint([a,o]);return s.push(a,o*Math.PI/180),s},size:me(a9e,e)}}}function s9e(e){var t=e.getRect(),r=e.getRangeInfo();return{coordSys:{type:"calendar",x:t.x,y:t.y,width:t.width,height:t.height,cellWidth:e.getCellWidth(),cellHeight:e.getCellHeight(),rangeInfo:{start:r.start,end:r.end,weeks:r.weeks,dayCount:r.allDay}},api:{coord:function(n,i){return e.dataToPoint(n,i)},layout:function(n,i){return e.dataToLayout(n,i)}}}}function l9e(e){var t=e.getRect();return{coordSys:{type:"matrix",x:t.x,y:t.y,width:t.width,height:t.height},api:{coord:function(r,n){return e.dataToPoint(r,n)},layout:function(r,n){return e.dataToLayout(r,n)}}}}function Une(e,t,r,n){return e&&(e.legacy||e.legacy!==!1&&!r&&!n&&t!=="tspan"&&(t==="text"||be(e,"text")))}function Zne(e,t,r){var n=e,i,a,o;if(t==="text")o=n;else{o={},be(n,"text")&&(o.text=n.text),be(n,"rich")&&(o.rich=n.rich),be(n,"textFill")&&(o.fill=n.textFill),be(n,"textStroke")&&(o.stroke=n.textStroke),be(n,"fontFamily")&&(o.fontFamily=n.fontFamily),be(n,"fontSize")&&(o.fontSize=n.fontSize),be(n,"fontStyle")&&(o.fontStyle=n.fontStyle),be(n,"fontWeight")&&(o.fontWeight=n.fontWeight),a={type:"text",style:o,silent:!0},i={};var s=be(n,"textPosition");r?i.position=s?n.textPosition:"inside":s&&(i.position=n.textPosition),be(n,"textPosition")&&(i.position=n.textPosition),be(n,"textOffset")&&(i.offset=n.textOffset),be(n,"textRotation")&&(i.rotation=n.textRotation),be(n,"textDistance")&&(i.distance=n.textDistance)}return L8(o,e),R(o.rich,function(l){L8(l,l)}),{textConfig:i,textContent:a}}function L8(e,t){t&&(t.font=t.textFont||t.font,be(t,"textStrokeWidth")&&(e.lineWidth=t.textStrokeWidth),be(t,"textAlign")&&(e.align=t.textAlign),be(t,"textVerticalAlign")&&(e.verticalAlign=t.textVerticalAlign),be(t,"textLineHeight")&&(e.lineHeight=t.textLineHeight),be(t,"textWidth")&&(e.width=t.textWidth),be(t,"textHeight")&&(e.height=t.textHeight),be(t,"textBackgroundColor")&&(e.backgroundColor=t.textBackgroundColor),be(t,"textPadding")&&(e.padding=t.textPadding),be(t,"textBorderColor")&&(e.borderColor=t.textBorderColor),be(t,"textBorderWidth")&&(e.borderWidth=t.textBorderWidth),be(t,"textBorderRadius")&&(e.borderRadius=t.textBorderRadius),be(t,"textBoxShadowColor")&&(e.shadowColor=t.textBoxShadowColor),be(t,"textBoxShadowBlur")&&(e.shadowBlur=t.textBoxShadowBlur),be(t,"textBoxShadowOffsetX")&&(e.shadowOffsetX=t.textBoxShadowOffsetX),be(t,"textBoxShadowOffsetY")&&(e.shadowOffsetY=t.textBoxShadowOffsetY))}function I8(e,t,r){var n=e;n.textPosition=n.textPosition||r.position||"inside",r.offset!=null&&(n.textOffset=r.offset),r.rotation!=null&&(n.textRotation=r.rotation),r.distance!=null&&(n.textDistance=r.distance);var i=n.textPosition.indexOf("inside")>=0,a=e.fill||J.color.neutral99;E8(n,t);var o=n.textFill==null;return i?o&&(n.textFill=r.insideFill||J.color.neutral00,!n.textStroke&&r.insideStroke&&(n.textStroke=r.insideStroke),!n.textStroke&&(n.textStroke=a),n.textStrokeWidth==null&&(n.textStrokeWidth=2)):(o&&(n.textFill=e.fill||r.outsideFill||J.color.neutral00),!n.textStroke&&r.outsideStroke&&(n.textStroke=r.outsideStroke)),n.text=t.text,n.rich=t.rich,R(t.rich,function(s){E8(s,s)}),n}function E8(e,t){t&&(be(t,"fill")&&(e.textFill=t.fill),be(t,"stroke")&&(e.textStroke=t.fill),be(t,"lineWidth")&&(e.textStrokeWidth=t.lineWidth),be(t,"font")&&(e.font=t.font),be(t,"fontStyle")&&(e.fontStyle=t.fontStyle),be(t,"fontWeight")&&(e.fontWeight=t.fontWeight),be(t,"fontSize")&&(e.fontSize=t.fontSize),be(t,"fontFamily")&&(e.fontFamily=t.fontFamily),be(t,"align")&&(e.textAlign=t.align),be(t,"verticalAlign")&&(e.textVerticalAlign=t.verticalAlign),be(t,"lineHeight")&&(e.textLineHeight=t.lineHeight),be(t,"width")&&(e.textWidth=t.width),be(t,"height")&&(e.textHeight=t.height),be(t,"backgroundColor")&&(e.textBackgroundColor=t.backgroundColor),be(t,"padding")&&(e.textPadding=t.padding),be(t,"borderColor")&&(e.textBorderColor=t.borderColor),be(t,"borderWidth")&&(e.textBorderWidth=t.borderWidth),be(t,"borderRadius")&&(e.textBorderRadius=t.borderRadius),be(t,"shadowColor")&&(e.textBoxShadowColor=t.shadowColor),be(t,"shadowBlur")&&(e.textBoxShadowBlur=t.shadowBlur),be(t,"shadowOffsetX")&&(e.textBoxShadowOffsetX=t.shadowOffsetX),be(t,"shadowOffsetY")&&(e.textBoxShadowOffsetY=t.shadowOffsetY),be(t,"textShadowColor")&&(e.textShadowColor=t.textShadowColor),be(t,"textShadowBlur")&&(e.textShadowBlur=t.textShadowBlur),be(t,"textShadowOffsetX")&&(e.textShadowOffsetX=t.textShadowOffsetX),be(t,"textShadowOffsetY")&&(e.textShadowOffsetY=t.textShadowOffsetY))}var Yne={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},O8=it(Yne);da(Vo,function(e,t){return e[t]=1,e},{});Vo.join(", ");var qw=["","style","shape","extra"],uv=Je();function bR(e,t,r,n,i){var a=e+"Animation",o=Fv(e,n,i)||{},s=uv(t).userDuring;return o.duration>0&&(o.during=s?me(d9e,{el:t,userDuring:s}):null,o.setToFinal=!0,o.scope=e),ne(o,r[a]),o}function xb(e,t,r,n){n=n||{};var i=n.dataIndex,a=n.isInit,o=n.clearStyle,s=r.isAnimationEnabled(),l=uv(e),u=t.style;l.userDuring=t.during;var c={},f={};if(p9e(e,t,f),e.type==="compound")for(var h=e.shape.paths,d=t.shape.paths,v=0;v0&&e.animateFrom(y,x)}else c9e(e,t,i||0,r,c);Xne(e,t),u?e.dirty():e.markRedraw()}function Xne(e,t){for(var r=uv(e).leaveToProps,n=0;n0&&e.animateFrom(i,a)}}function f9e(e,t){be(t,"silent")&&(e.silent=t.silent),be(t,"ignore")&&(e.ignore=t.ignore),e instanceof pa&&be(t,"invisible")&&(e.invisible=t.invisible),e instanceof tt&&be(t,"autoBatch")&&(e.autoBatch=t.autoBatch)}var po={},h9e={setTransform:function(e,t){return po.el[e]=t,this},getTransform:function(e){return po.el[e]},setShape:function(e,t){var r=po.el,n=r.shape||(r.shape={});return n[e]=t,r.dirtyShape&&r.dirtyShape(),this},getShape:function(e){var t=po.el.shape;if(t)return t[e]},setStyle:function(e,t){var r=po.el,n=r.style;return n&&(n[e]=t,r.dirtyStyle&&r.dirtyStyle()),this},getStyle:function(e){var t=po.el.style;if(t)return t[e]},setExtra:function(e,t){var r=po.el.extra||(po.el.extra={});return r[e]=t,this},getExtra:function(e){var t=po.el.extra;if(t)return t[e]}};function d9e(){var e=this,t=e.el;if(t){var r=uv(t).userDuring,n=e.userDuring;if(r!==n){e.el=e.userDuring=null;return}po.el=t,n(h9e)}}function D8(e,t,r,n){var i=r[e];if(i){var a=t[e],o;if(a){var s=r.transition,l=i.transition;if(l)if(!o&&(o=n[e]={}),Xc(l))ne(o,a);else for(var u=kt(l),c=0;c=0){!o&&(o=n[e]={});for(var d=it(a),c=0;c=0)){var h=e.getAnimationStyleProps(),d=h?h.style:null;if(d){!a&&(a=n.style={});for(var v=it(r),u=0;u=0?t.getStore().get(B,F):void 0}var Z=t.get($.name,F),W=$&&$.ordinalMeta;return W?W.categories[Z]:Z}function A(V,F){F==null&&(F=c);var $=t.getItemVisual(F,"style"),B=$&&$.fill,Z=$&&$.opacity,W=b(F,Rl).getItemStyle();B!=null&&(W.fill=B),Z!=null&&(W.opacity=Z);var G={inheritColor:ge(B)?B:J.color.neutral99},Y=S(F,Rl),K=Pt(Y,null,G,!1,!0);K.text=Y.getShallow("show")?Se(e.getFormattedLabel(F,Rl),av(t,F)):null;var ee=xw(Y,G,!1);return k(V,W),W=I8(W,K,ee),V&&I(W,V),W.legacy=!0,W}function P(V,F){F==null&&(F=c);var $=b(F,Es).getItemStyle(),B=S(F,Es),Z=Pt(B,null,null,!0,!0);Z.text=B.getShallow("show")?ui(e.getFormattedLabel(F,Es),e.getFormattedLabel(F,Rl),av(t,F)):null;var W=xw(B,null,!0);return k(V,$),$=I8($,Z,W),V&&I($,V),$.legacy=!0,$}function I(V,F){for(var $ in F)be(F,$)&&(V[$]=F[$])}function k(V,F){V&&(V.textFill&&(F.textFill=V.textFill),V.textPosition&&(F.textPosition=V.textPosition))}function O(V,F){if(F==null&&(F=c),be(k8,V)){var $=t.getItemVisual(F,"style");return $?$[k8[V]]:null}if(be(K7e,V))return t.getItemVisual(F,V)}function D(V){if(o.type==="cartesian2d"){var F=o.getBaseAxis();return b$e(ke({axis:F},V))}}function N(){return r.getCurrentSeriesIndices()}function z(V){return XN(V,r)}}function A9e(e){var t={};return R(e.dimensions,function(r){var n=e.getDimensionInfo(r);if(!n.isExtraCoord){var i=n.coordDim,a=t[i]=t[i]||[];a[n.coordDimIndex]=e.getDimensionIndex(r)}}),t}function qM(e,t,r,n,i,a,o){if(!n){a.remove(t);return}var s=AR(e,t,r,n,i,a);return s&&o.setItemGraphicEl(r,s),s&&Gt(s,n.focus,n.blurScope,n.emphasisDisabled),s}function AR(e,t,r,n,i,a){var o=-1,s=t;t&&Qne(t,n,i)&&(o=We(a.childrenRef(),t),t=null);var l=!t,u=t;u?u.clearStates():(u=TR(n),s&&w9e(s,u)),n.morph===!1?u.disableMorphing=!0:u.disableMorphing&&(u.disableMorphing=!1),n.tooltipDisabled&&(u.tooltipDisabled=!0),Hi.normal.cfg=Hi.normal.conOpt=Hi.emphasis.cfg=Hi.emphasis.conOpt=Hi.blur.cfg=Hi.blur.conOpt=Hi.select.cfg=Hi.select.conOpt=null,Hi.isLegacy=!1,P9e(u,r,n,i,l,Hi),M9e(u,r,n,i,l),CR(e,u,r,n,Hi,i,l),be(n,"info")&&(Is(u).info=n.info);for(var c=0;c=0?a.replaceAt(u,o):a.add(u),u}function Qne(e,t,r){var n=Is(e),i=t.type,a=t.shape,o=t.style;return r.isUniversalTransitionEnabled()||i!=null&&i!==n.customGraphicType||i==="path"&&O9e(a)&&eie(a)!==n.customPathData||i==="image"&&be(o,"image")&&o.image!==n.customImagePath}function M9e(e,t,r,n,i){var a=r.clipPath;if(a===!1)e&&e.getClipPath()&&e.removeClipPath();else if(a){var o=e.getClipPath();o&&Qne(o,a,n)&&(o=null),o||(o=TR(a),e.setClipPath(o)),CR(null,o,t,a,null,n,i)}}function P9e(e,t,r,n,i,a){if(!(e.isGroup||e.type==="compoundPath")){j8(r,null,a),j8(r,Es,a);var o=a.normal.conOpt,s=a.emphasis.conOpt,l=a.blur.conOpt,u=a.select.conOpt;if(o!=null||s!=null||u!=null||l!=null){var c=e.getTextContent();if(o===!1)c&&e.removeTextContent();else{o=a.normal.conOpt=o||{type:"text"},c?c.clearStates():(c=TR(o),e.setTextContent(c)),CR(null,c,t,o,null,n,i);for(var f=o&&o.style,h=0;h=c;d--){var v=t.childAt(d);L9e(t,v,i)}}}function L9e(e,t,r){t&&uC(t,Is(e).option,r)}function I9e(e){new Us(e.oldChildren,e.newChildren,R8,R8,e).add(B8).update(B8).remove(E9e).execute()}function R8(e,t){var r=e&&e.name;return r??_9e+t}function B8(e,t){var r=this.context,n=e!=null?r.newChildren[e]:null,i=t!=null?r.oldChildren[t]:null;AR(r.api,i,r.dataIndex,n,r.seriesModel,r.group)}function E9e(e){var t=this.context,r=t.oldChildren[e];r&&uC(r,Is(r).option,t.seriesModel)}function eie(e){return e&&(e.pathData||e.d)}function O9e(e){return e&&(be(e,"pathData")||be(e,"d"))}function D9e(e){e.registerChartView(S9e),e.registerSeriesModel(J7e)}var bc=Je(),z8=Me,KM=me,PR=function(){function e(){this._dragging=!1,this.animationThreshold=15}return e.prototype.render=function(t,r,n,i){var a=r.get("value"),o=r.get("status");if(this._axisModel=t,this._axisPointerModel=r,this._api=n,!(!i&&this._lastValue===a&&this._lastStatus===o)){this._lastValue=a,this._lastStatus=o;var s=this._group,l=this._handle;if(!o||o==="hide"){s&&s.hide(),l&&l.hide();return}s&&s.show(),l&&l.show();var u={};this.makeElOption(u,a,t,r,n);var c=u.graphicKey;c!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=c;var f=this._moveAnimation=this.determineAnimation(t,r);if(!s)s=this._group=new Pe,this.createPointerEl(s,u,t,r),this.createLabelEl(s,u,t,r),n.getZr().add(s);else{var h=Fe($8,r,f);this.updatePointerEl(s,u,h),this.updateLabelEl(s,u,h,r)}V8(s,r,!0),this._renderHandle(a)}},e.prototype.remove=function(t){this.clear(t)},e.prototype.dispose=function(t){this.clear(t)},e.prototype.determineAnimation=function(t,r){var n=r.get("animation"),i=t.axis,a=i.type==="category",o=r.get("snap");if(!o&&!a)return!1;if(n==="auto"||n==null){var s=this.animationThreshold;if(a&&i.getBandWidth()>s)return!0;if(o){var l=Xj(t).seriesDataCount,u=i.getExtent();return Math.abs(u[0]-u[1])/l>s}return!1}return n===!0},e.prototype.makeElOption=function(t,r,n,i,a){},e.prototype.createPointerEl=function(t,r,n,i){var a=r.pointer;if(a){var o=bc(t).pointerEl=new Lf[a.type](z8(r.pointer));t.add(o)}},e.prototype.createLabelEl=function(t,r,n,i){if(r.label){var a=bc(t).labelEl=new at(z8(r.label));t.add(a),F8(a,i)}},e.prototype.updatePointerEl=function(t,r,n){var i=bc(t).pointerEl;i&&r.pointer&&(i.setStyle(r.pointer.style),n(i,{shape:r.pointer.shape}))},e.prototype.updateLabelEl=function(t,r,n,i){var a=bc(t).labelEl;a&&(a.setStyle(r.label.style),n(a,{x:r.label.x,y:r.label.y}),F8(a,i))},e.prototype._renderHandle=function(t){if(!(this._dragging||!this.updateHandleTransform)){var r=this._axisPointerModel,n=this._api.getZr(),i=this._handle,a=r.getModel("handle"),o=r.get("status");if(!a.get("show")||!o||o==="hide"){i&&n.remove(i),this._handle=null;return}var s;this._handle||(s=!0,i=this._handle=Vv(a.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(u){Gs(u.event)},onmousedown:KM(this._onHandleDragMove,this,0,0),drift:KM(this._onHandleDragMove,this),ondragend:KM(this._onHandleDragEnd,this)}),n.add(i)),V8(i,r,!1),i.setStyle(a.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var l=a.get("size");ae(l)||(l=[l,l]),i.scaleX=l[0]/2,i.scaleY=l[1]/2,Yv(this,"_doDispatchAxisPointer",a.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,s)}},e.prototype._moveHandleToValue=function(t,r){$8(this._axisPointerModel,!r&&this._moveAnimation,this._handle,JM(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},e.prototype._onHandleDragMove=function(t,r){var n=this._handle;if(n){this._dragging=!0;var i=this.updateHandleTransform(JM(n),[t,r],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(JM(i)),bc(n).lastProp=null,this._doDispatchAxisPointer()}},e.prototype._doDispatchAxisPointer=function(){var t=this._handle;if(t){var r=this._payloadInfo,n=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:r.cursorPoint[0],y:r.cursorPoint[1],tooltipOption:r.tooltipOption,axesInfo:[{axisDim:n.axis.dim,axisIndex:n.componentIndex}]})}},e.prototype._onHandleDragEnd=function(){this._dragging=!1;var t=this._handle;if(t){var r=this._axisPointerModel.get("value");this._moveHandleToValue(r),this._api.dispatchAction({type:"hideTip"})}},e.prototype.clear=function(t){this._lastValue=null,this._lastStatus=null;var r=t.getZr(),n=this._group,i=this._handle;r&&n&&(this._lastGraphicKey=null,n&&r.remove(n),i&&r.remove(i),this._group=null,this._handle=null,this._payloadInfo=null),Ay(this,"_doDispatchAxisPointer")},e.prototype.doClear=function(){},e.prototype.buildLabel=function(t,r,n){return n=n||0,{x:t[n],y:t[1-n],width:r[n],height:r[1-n]}},e}();function $8(e,t,r,n){tie(bc(r).lastProp,n)||(bc(r).lastProp=n,t?lt(r,n,e):(r.stopAnimation(),r.attr(n)))}function tie(e,t){if(Le(e)&&Le(t)){var r=!0;return R(t,function(n,i){r=r&&tie(e[i],n)}),!!r}else return e===t}function F8(e,t){e[t.get(["label","show"])?"show":"hide"]()}function JM(e){return{x:e.x||0,y:e.y||0,rotation:e.rotation||0}}function V8(e,t,r){var n=t.get("z"),i=t.get("zlevel");e&&e.traverse(function(a){a.type!=="group"&&(n!=null&&(a.z=n),i!=null&&(a.zlevel=i),a.silent=r)})}function kR(e){var t=e.get("type"),r=e.getModel(t+"Style"),n;return t==="line"?(n=r.getLineStyle(),n.fill=null):t==="shadow"&&(n=r.getAreaStyle(),n.stroke=null),n}function rie(e,t,r,n,i){var a=r.get("value"),o=nie(a,t.axis,t.ecModel,r.get("seriesDataIndices"),{precision:r.get(["label","precision"]),formatter:r.get(["label","formatter"])}),s=r.getModel("label"),l=Hv(s.get("padding")||0),u=s.getFont(),c=OT(o,u),f=i.position,h=c.width+l[1]+l[3],d=c.height+l[0]+l[2],v=i.align;v==="right"&&(f[0]-=h),v==="center"&&(f[0]-=h/2);var m=i.verticalAlign;m==="bottom"&&(f[1]-=d),m==="middle"&&(f[1]-=d/2),N9e(f,h,d,n);var y=s.get("backgroundColor");(!y||y==="auto")&&(y=t.get(["axisLine","lineStyle","color"])),e.label={x:f[0],y:f[1],style:Pt(s,{text:o,font:u,fill:s.getTextColor(),padding:l,backgroundColor:y}),z2:10}}function N9e(e,t,r,n){var i=n.getWidth(),a=n.getHeight();e[0]=Math.min(e[0]+t,i)-t,e[1]=Math.min(e[1]+r,a)-r,e[0]=Math.max(e[0],0),e[1]=Math.max(e[1],0)}function nie(e,t,r,n,i){e=t.scale.parse(e);var a=t.scale.getLabel({value:e},{precision:i.precision}),o=i.formatter;if(o){var s={value:Ow(t,{value:e}),axisDimension:t.dim,axisIndex:t.index,seriesData:[]};R(n,function(l){var u=r.getSeriesByIndex(l.seriesIndex),c=l.dataIndexInside,f=u&&u.getDataParams(c);f&&s.seriesData.push(f)}),ge(o)?a=o.replace("{value}",a):Ae(o)&&(a=o(s))}return a}function LR(e,t,r){var n=Hr();return el(n,n,r.rotation),qa(n,n,r.position),Ha([e.dataToCoord(t),(r.labelOffset||0)+(r.labelDirection||1)*(r.labelMargin||0)],n)}function iie(e,t,r,n,i,a){var o=Hn.innerTextLayout(r.rotation,0,r.labelDirection);r.labelMargin=i.get(["label","margin"]),rie(t,n,i,a,{position:LR(n.axis,e,r),align:o.textAlign,verticalAlign:o.textVerticalAlign})}function IR(e,t,r){return r=r||0,{x1:e[r],y1:e[1-r],x2:t[r],y2:t[1-r]}}function aie(e,t,r){return r=r||0,{x:e[r],y:e[1-r],width:t[r],height:t[1-r]}}function G8(e,t,r,n,i,a){return{cx:e,cy:t,r0:r,r:n,startAngle:i,endAngle:a,clockwise:!0}}var j9e=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.makeElOption=function(r,n,i,a,o){var s=i.axis,l=s.grid,u=a.get("type"),c=W8(l,s).getOtherAxis(s).getGlobalExtent(),f=s.toGlobalCoord(s.dataToCoord(n,!0));if(u&&u!=="none"){var h=kR(a),d=R9e[u](s,f,c);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=Gw(l.getRect(),i);iie(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=Gw(n.axis.grid.getRect(),n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=LR(n.axis,r,a);return{x:o[0],y:o[1],rotation:a.rotation+(a.labelDirection<0?Math.PI:0)}},t.prototype.updateHandleTransform=function(r,n,i,a){var o=i.axis,s=o.grid,l=o.getGlobalExtent(!0),u=W8(s,o).getOtherAxis(o).getGlobalExtent(),c=o.dim==="x"?0:1,f=[r.x,r.y];f[c]+=n[c],f[c]=Math.min(l[1],f[c]),f[c]=Math.max(l[0],f[c]);var h=(u[1]+u[0])/2,d=[h,h];d[c]=f[c];var v=[{verticalAlign:"middle"},{align:"center"}];return{x:f[0],y:f[1],rotation:r.rotation,cursorPoint:d,tooltipOption:v[c]}},t}(PR);function W8(e,t){var r={};return r[t.dim+"AxisIndex"]=t.index,e.getCartesian(r)}var R9e={line:function(e,t,r){var n=IR([t,r[0]],[t,r[1]],H8(e));return{type:"Line",subPixelOptimize:!0,shape:n}},shadow:function(e,t,r){var n=Math.max(1,e.getBandWidth()),i=r[1]-r[0];return{type:"Rect",shape:aie([t-n/2,r[0]],[n,i],H8(e))}}};function H8(e){return e.dim==="x"?0:1}var B9e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="axisPointer",t.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,triggerEmphasis:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:J.color.border,width:1,type:"dashed"},shadowStyle:{color:J.color.shadowTint},label:{show:!0,formatter:null,precision:"auto",margin:3,color:J.color.neutral00,padding:[5,7,5,7],backgroundColor:J.color.accent60,borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:J.color.accent40,throttle:40}},t}(Ke),Ss=Je(),z9e=R;function oie(e,t,r){if(!nt.node){var n=t.getZr();Ss(n).records||(Ss(n).records={}),$9e(n,t);var i=Ss(n).records[e]||(Ss(n).records[e]={});i.handler=r}}function $9e(e,t){if(Ss(e).initialized)return;Ss(e).initialized=!0,r("click",Fe(U8,"click")),r("mousemove",Fe(U8,"mousemove")),r("globalout",V9e);function r(n,i){e.on(n,function(a){var o=G9e(t);z9e(Ss(e).records,function(s){s&&i(s,a,o.dispatchAction)}),F9e(o.pendings,t)})}}function F9e(e,t){var r=e.showTip.length,n=e.hideTip.length,i;r?i=e.showTip[r-1]:n&&(i=e.hideTip[n-1]),i&&(i.dispatchAction=null,t.dispatchAction(i))}function V9e(e,t,r){e.handler("leave",null,r)}function U8(e,t,r,n){t.handler(e,r,n)}function G9e(e){var t={showTip:[],hideTip:[]},r=function(n){var i=t[n.type];i?i.push(n):(n.dispatchAction=r,e.dispatchAction(n))};return{dispatchAction:r,pendings:t}}function BE(e,t){if(!nt.node){var r=t.getZr(),n=(Ss(r).records||{})[e];n&&(Ss(r).records[e]=null)}}var W9e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=n.getComponent("tooltip"),o=r.get("triggerOn")||a&&a.get("triggerOn")||"mousemove|click";oie("axisPointer",i,function(s,l,u){o!=="none"&&(s==="leave"||o.indexOf(s)>=0)&&u({type:"updateAxisPointer",currTrigger:s,x:l&&l.offsetX,y:l&&l.offsetY})})},t.prototype.remove=function(r,n){BE("axisPointer",n)},t.prototype.dispose=function(r,n){BE("axisPointer",n)},t.type="axisPointer",t}(Lt);function sie(e,t){var r=[],n=e.seriesIndex,i;if(n==null||!(i=t.getSeriesByIndex(n)))return{point:[]};var a=i.getData(),o=cf(a,e);if(o==null||o<0||ae(o))return{point:[]};var s=a.getItemGraphicEl(o),l=i.coordinateSystem;if(i.getTooltipPosition)r=i.getTooltipPosition(o)||[];else if(l&&l.dataToPoint)if(e.isStacked){var u=l.getBaseAxis(),c=l.getOtherAxis(u),f=c.dim,h=u.dim,d=f==="x"||f==="radius"?1:0,v=a.mapDimension(h),m=[];m[d]=a.get(v,o),m[1-d]=a.get(a.getCalculationInfo("stackResultDimension"),o),r=l.dataToPoint(m)||[]}else r=l.dataToPoint(a.getValues(se(l.dimensions,function(x){return a.mapDimension(x)}),o))||[];else if(s){var y=s.getBoundingRect().clone();y.applyTransform(s.transform),r=[y.x+y.width/2,y.y+y.height/2]}return{point:r,el:s}}var Z8=Je();function H9e(e,t,r){var n=e.currTrigger,i=[e.x,e.y],a=e,o=e.dispatchAction||me(r.dispatchAction,r),s=t.getComponent("axisPointer").coordSysAxesInfo;if(s){_b(i)&&(i=sie({seriesIndex:a.seriesIndex,dataIndex:a.dataIndex},t).point);var l=_b(i),u=a.axesInfo,c=s.axesInfo,f=n==="leave"||_b(i),h={},d={},v={list:[],map:{}},m={showPointer:Fe(Z9e,d),showTooltip:Fe(Y9e,v)};R(s.coordSysMap,function(x,_){var b=l||x.containPoint(i);R(s.coordSysAxesInfo[_],function(S,T){var C=S.axis,A=J9e(u,S);if(!f&&b&&(!u||A)){var P=A&&A.value;P==null&&!l&&(P=C.pointToData(i)),P!=null&&Y8(S,P,m,!1,h)}})});var y={};return R(c,function(x,_){var b=x.linkGroup;b&&!d[_]&&R(b.axesInfo,function(S,T){var C=d[T];if(S!==x&&C){var A=C.value;b.mapper&&(A=x.axis.scale.parse(b.mapper(A,X8(S),X8(x)))),y[x.key]=A}})}),R(y,function(x,_){Y8(c[_],x,m,!0,h)}),X9e(d,c,h),q9e(v,i,e,o),K9e(c,o,r),h}}function Y8(e,t,r,n,i){var a=e.axis;if(!(a.scale.isBlank()||!a.containData(t))){if(!e.involveSeries){r.showPointer(e,t);return}var o=U9e(t,e),s=o.payloadBatch,l=o.snapToValue;s[0]&&i.seriesIndex==null&&ne(i,s[0]),!n&&e.snap&&a.containData(l)&&l!=null&&(t=l),r.showPointer(e,t,s),r.showTooltip(e,o,l)}}function U9e(e,t){var r=t.axis,n=r.dim,i=e,a=[],o=Number.MAX_VALUE,s=-1;return R(t.seriesModels,function(l,u){var c=l.getData().mapDimensionsAll(n),f,h;if(l.getAxisTooltipData){var d=l.getAxisTooltipData(c,e,r);h=d.dataIndices,f=d.nestestValue}else{if(h=l.indicesOfNearest(n,c[0],e,r.type==="category"?.5:null),!h.length)return;f=l.getData().get(c[0],h[0])}if(!(f==null||!isFinite(f))){var v=e-f,m=Math.abs(v);m<=o&&((m=0&&s<0)&&(o=m,s=v,i=f,a.length=0),R(h,function(y){a.push({seriesIndex:l.seriesIndex,dataIndexInside:y,dataIndex:l.getData().getRawIndex(y)})}))}}),{payloadBatch:a,snapToValue:i}}function Z9e(e,t,r,n){e[t.key]={value:r,payloadBatch:n}}function Y9e(e,t,r,n){var i=r.payloadBatch,a=t.axis,o=a.model,s=t.axisPointerModel;if(!(!t.triggerTooltip||!i.length)){var l=t.coordSys.model,u=Ny(l),c=e.map[u];c||(c=e.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},e.list.push(c)),c.dataByAxis.push({axisDim:a.dim,axisIndex:o.componentIndex,axisType:o.type,axisId:o.id,value:n,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:i.slice()})}}function X9e(e,t,r){var n=r.axesInfo=[];R(t,function(i,a){var o=i.axisPointerModel.option,s=e[a];s?(!i.useHandle&&(o.status="show"),o.value=s.value,o.seriesDataIndices=(s.payloadBatch||[]).slice()):!i.useHandle&&(o.status="hide"),o.status==="show"&&n.push({axisDim:i.axis.dim,axisIndex:i.axis.model.componentIndex,value:o.value})})}function q9e(e,t,r,n){if(_b(t)||!e.list.length){n({type:"hideTip"});return}var i=((e.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};n({type:"showTip",escapeConnect:!0,x:t[0],y:t[1],tooltipOption:r.tooltipOption,position:r.position,dataIndexInside:i.dataIndexInside,dataIndex:i.dataIndex,seriesIndex:i.seriesIndex,dataByCoordSys:e.list})}function K9e(e,t,r){var n=r.getZr(),i="axisPointerLastHighlights",a=Z8(n)[i]||{},o=Z8(n)[i]={};R(e,function(u,c){var f=u.axisPointerModel.option;f.status==="show"&&u.triggerEmphasis&&R(f.seriesDataIndices,function(h){var d=h.seriesIndex+" | "+h.dataIndex;o[d]=h})});var s=[],l=[];R(a,function(u,c){!o[c]&&l.push(u)}),R(o,function(u,c){!a[c]&&s.push(u)}),l.length&&r.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&r.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}function J9e(e,t){for(var r=0;r<(e||[]).length;r++){var n=e[r];if(t.axis.dim===n.axisDim&&t.axis.model.componentIndex===n.axisIndex)return n}}function X8(e){var t=e.axis.model,r={},n=r.axisDim=e.axis.dim;return r.axisIndex=r[n+"AxisIndex"]=t.componentIndex,r.axisName=r[n+"AxisName"]=t.name,r.axisId=r[n+"AxisId"]=t.id,r}function _b(e){return!e||e[0]==null||isNaN(e[0])||e[1]==null||isNaN(e[1])}function M0(e){Df.registerAxisPointerClass("CartesianAxisPointer",j9e),e.registerComponentModel(B9e),e.registerComponentView(W9e),e.registerPreprocessor(function(t){if(t){(!t.axisPointer||t.axisPointer.length===0)&&(t.axisPointer={});var r=t.axisPointer.link;r&&!ae(r)&&(t.axisPointer.link=[r])}}),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,function(t,r){t.getComponent("axisPointer").coordSysAxesInfo=QGe(t,r)}),e.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},H9e)}function Q9e(e){Ze(Ire),Ze(M0)}var eZe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.makeElOption=function(r,n,i,a,o){var s=i.axis;s.dim==="angle"&&(this.animationThreshold=Math.PI/18);var l=s.polar,u=l.getOtherAxis(s),c=u.getExtent(),f=s.dataToCoord(n),h=a.get("type");if(h&&h!=="none"){var d=kR(a),v=rZe[h](s,l,f,c);v.style=d,r.graphicKey=v.type,r.pointer=v}var m=a.get(["label","margin"]),y=tZe(n,i,a,l,m);rie(r,i,a,o,y)},t}(PR);function tZe(e,t,r,n,i){var a=t.axis,o=a.dataToCoord(e),s=n.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l=n.getRadiusAxis().getExtent(),u,c,f;if(a.dim==="radius"){var h=Hr();el(h,h,s),qa(h,h,[n.cx,n.cy]),u=Ha([o,-i],h);var d=t.getModel("axisLabel").get("rotate")||0,v=Hn.innerTextLayout(s,d*Math.PI/180,-1);c=v.textAlign,f=v.textVerticalAlign}else{var m=l[1];u=n.coordToPoint([m+i,o]);var y=n.cx,x=n.cy;c=Math.abs(u[0]-y)/m<.3?"center":u[0]>y?"left":"right",f=Math.abs(u[1]-x)/m<.3?"middle":u[1]>x?"top":"bottom"}return{position:u,align:c,verticalAlign:f}}var rZe={line:function(e,t,r,n){return e.dim==="angle"?{type:"Line",shape:IR(t.coordToPoint([n[0],r]),t.coordToPoint([n[1],r]))}:{type:"Circle",shape:{cx:t.cx,cy:t.cy,r}}},shadow:function(e,t,r,n){var i=Math.max(1,e.getBandWidth()),a=Math.PI/180;return e.dim==="angle"?{type:"Sector",shape:G8(t.cx,t.cy,n[0],n[1],(-r-i/2)*a,(-r+i/2)*a)}:{type:"Sector",shape:G8(t.cx,t.cy,r-i/2,r+i/2,0,Math.PI*2)}}},nZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.findAxisModel=function(r){var n,i=this.ecModel;return i.eachComponent(r,function(a){a.getCoordSysModel()===this&&(n=a)},this),n},t.type="polar",t.dependencies=["radiusAxis","angleAxis"],t.defaultOption={z:0,center:["50%","50%"],radius:"80%"},t}(Ke),ER=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",er).models[0]},t.type="polarAxis",t}(Ke);cr(ER,Jv);var iZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="angleAxis",t}(ER),aZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="radiusAxis",t}(ER),OR=function(e){q(t,e);function t(r,n){return e.call(this,"radius",r,n)||this}return t.prototype.pointToData=function(r,n){return this.polar.pointToData(r,n)[this.dim==="radius"?0:1]},t}(ba);OR.prototype.dataToRadius=ba.prototype.dataToCoord;OR.prototype.radiusToData=ba.prototype.coordToData;var oZe=Je(),DR=function(e){q(t,e);function t(r,n){return e.call(this,"angle",r,n||[0,360])||this}return t.prototype.pointToData=function(r,n){return this.polar.pointToData(r,n)[this.dim==="radius"?0:1]},t.prototype.calculateCategoryInterval=function(){var r=this,n=r.getLabelModel(),i=r.scale,a=i.getExtent(),o=i.count();if(a[1]-a[0]<1)return 0;var s=a[0],l=r.dataToCoord(s+1)-r.dataToCoord(s),u=Math.abs(l),c=OT(s==null?"":s+"",n.getFont(),"center","top"),f=Math.max(c.height,7),h=f/u;isNaN(h)&&(h=1/0);var d=Math.max(0,Math.floor(h)),v=oZe(r.model),m=v.lastAutoInterval,y=v.lastTickCount;return m!=null&&y!=null&&Math.abs(m-d)<=1&&Math.abs(y-o)<=1&&m>d?d=m:(v.lastTickCount=o,v.lastAutoInterval=d),d},t}(ba);DR.prototype.dataToAngle=ba.prototype.dataToCoord;DR.prototype.angleToData=ba.prototype.coordToData;var lie=["radius","angle"],sZe=function(){function e(t){this.dimensions=lie,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new OR,this._angleAxis=new DR,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return e.prototype.containPoint=function(t){var r=this.pointToCoord(t);return this._radiusAxis.contain(r[0])&&this._angleAxis.contain(r[1])},e.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},e.prototype.getAxis=function(t){var r="_"+t+"Axis";return this[r]},e.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},e.prototype.getAxesByScale=function(t){var r=[],n=this._angleAxis,i=this._radiusAxis;return n.scale.type===t&&r.push(n),i.scale.type===t&&r.push(i),r},e.prototype.getAngleAxis=function(){return this._angleAxis},e.prototype.getRadiusAxis=function(){return this._radiusAxis},e.prototype.getOtherAxis=function(t){var r=this._angleAxis;return t===r?this._radiusAxis:r},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},e.prototype.getTooltipAxes=function(t){var r=t!=null&&t!=="auto"?this.getAxis(t):this.getBaseAxis();return{baseAxes:[r],otherAxes:[this.getOtherAxis(r)]}},e.prototype.dataToPoint=function(t,r,n){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],r),this._angleAxis.dataToAngle(t[1],r)],n)},e.prototype.pointToData=function(t,r,n){n=n||[];var i=this.pointToCoord(t);return n[0]=this._radiusAxis.radiusToData(i[0],r),n[1]=this._angleAxis.angleToData(i[1],r),n},e.prototype.pointToCoord=function(t){var r=t[0]-this.cx,n=t[1]-this.cy,i=this.getAngleAxis(),a=i.getExtent(),o=Math.min(a[0],a[1]),s=Math.max(a[0],a[1]);i.inverse?o=s-360:s=o+360;var l=Math.sqrt(r*r+n*n);r/=l,n/=l;for(var u=Math.atan2(-n,r)/Math.PI*180,c=us;)u+=c*360;return[l,u]},e.prototype.coordToPoint=function(t,r){r=r||[];var n=t[0],i=t[1]/180*Math.PI;return r[0]=Math.cos(i)*n+this.cx,r[1]=-Math.sin(i)*n+this.cy,r},e.prototype.getArea=function(){var t=this.getAngleAxis(),r=this.getRadiusAxis(),n=r.getExtent().slice();n[0]>n[1]&&n.reverse();var i=t.getExtent(),a=Math.PI/180,o=1e-4;return{cx:this.cx,cy:this.cy,r0:n[0],r:n[1],startAngle:-i[0]*a,endAngle:-i[1]*a,clockwise:t.inverse,contain:function(s,l){var u=s-this.cx,c=l-this.cy,f=u*u+c*c,h=this.r,d=this.r0;return h!==d&&f-o<=h*h&&f+o>=d*d},x:this.cx-n[1],y:this.cy-n[1],width:n[1]*2,height:n[1]*2}},e.prototype.convertToPixel=function(t,r,n){var i=q8(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=q8(r);return i===this?this.pointToData(n):null},e}();function q8(e){var t=e.seriesModel,r=e.polarModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function lZe(e,t,r){var n=t.get("center"),i=Rr(t,r).refContainer;e.cx=pe(n[0],i.width)+i.x,e.cy=pe(n[1],i.height)+i.y;var a=e.getRadiusAxis(),o=Math.min(i.width,i.height)/2,s=t.get("radius");s==null?s=[0,"100%"]:ae(s)||(s=[0,s]);var l=[pe(s[0],o),pe(s[1],o)];a.inverse?a.setExtent(l[1],l[0]):a.setExtent(l[0],l[1])}function uZe(e,t){var r=this,n=r.getAngleAxis(),i=r.getRadiusAxis();if(n.scale.setExtent(1/0,-1/0),i.scale.setExtent(1/0,-1/0),e.eachSeries(function(s){if(s.coordinateSystem===r){var l=s.getData();R(Dw(l,"radius"),function(u){i.scale.unionExtentFromData(l,u)}),R(Dw(l,"angle"),function(u){n.scale.unionExtentFromData(l,u)})}}),gf(n.scale,n.model),gf(i.scale,i.model),n.type==="category"&&!n.onBand){var a=n.getExtent(),o=360/n.scale.count();n.inverse?a[1]+=o:a[1]-=o,n.setExtent(a[0],a[1])}}function cZe(e){return e.mainType==="angleAxis"}function K8(e,t){var r;if(e.type=t.get("type"),e.scale=b0(t),e.onBand=t.get("boundaryGap")&&e.type==="category",e.inverse=t.get("inverse"),cZe(t)){e.inverse=e.inverse!==t.get("clockwise");var n=t.get("startAngle"),i=(r=t.get("endAngle"))!==null&&r!==void 0?r:n+(e.inverse?-360:360);e.setExtent(n,i)}t.axis=e,e.model=t}var fZe={dimensions:lie,create:function(e,t){var r=[];return e.eachComponent("polar",function(n,i){var a=new sZe(i+"");a.update=uZe;var o=a.getRadiusAxis(),s=a.getAngleAxis(),l=n.findAxisModel("radiusAxis"),u=n.findAxisModel("angleAxis");K8(o,l),K8(s,u),lZe(a,n,t),r.push(a),n.coordinateSystem=a,a.model=n}),e.eachSeries(function(n){if(n.get("coordinateSystem")==="polar"){var i=n.getReferringComponents("polar",er).models[0];n.coordinateSystem=i.coordinateSystem}}),r}},hZe=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function P_(e,t,r){t[1]>t[0]&&(t=t.slice().reverse());var n=e.coordToPoint([t[0],r]),i=e.coordToPoint([t[1],r]);return{x1:n[0],y1:n[1],x2:i[0],y2:i[1]}}function k_(e){var t=e.getRadiusAxis();return t.inverse?0:1}function J8(e){var t=e[0],r=e[e.length-1];t&&r&&Math.abs(Math.abs(t.coord-r.coord)-360)<1e-4&&e.pop()}var dZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.axisPointerClass="PolarAxisPointer",r}return t.prototype.render=function(r,n){if(this.group.removeAll(),!!r.get("show")){var i=r.axis,a=i.polar,o=a.getRadiusAxis().getExtent(),s=i.getTicksCoords({breakTicks:"none"}),l=i.getMinorTicksCoords(),u=se(i.getViewLabels(),function(c){c=Me(c);var f=i.scale,h=f.type==="ordinal"?f.getRawOrdinalNumber(c.tickValue):c.tickValue;return c.coord=i.dataToCoord(h),c});J8(u),J8(s),R(hZe,function(c){r.get([c,"show"])&&(!i.scale.isBlank()||c==="axisLine")&&vZe[c](this.group,r,a,s,l,o,u)},this)}},t.type="angleAxis",t}(Df),vZe={axisLine:function(e,t,r,n,i,a){var o=t.getModel(["axisLine","lineStyle"]),s=r.getAngleAxis(),l=Math.PI/180,u=s.getExtent(),c=k_(r),f=c?0:1,h,d=Math.abs(u[1]-u[0])===360?"Circle":"Arc";a[f]===0?h=new Lf[d]({shape:{cx:r.cx,cy:r.cy,r:a[c],startAngle:-u[0]*l,endAngle:-u[1]*l,clockwise:s.inverse},style:o.getLineStyle(),z2:1,silent:!0}):h=new zv({shape:{cx:r.cx,cy:r.cy,r:a[c],r0:a[f]},style:o.getLineStyle(),z2:1,silent:!0}),h.style.fill=null,e.add(h)},axisTick:function(e,t,r,n,i,a){var o=t.getModel("axisTick"),s=(o.get("inside")?-1:1)*o.get("length"),l=a[k_(r)],u=se(n,function(c){return new mr({shape:P_(r,[l,l+s],c.coord)})});e.add(Si(u,{style:ke(o.getModel("lineStyle").getLineStyle(),{stroke:t.get(["axisLine","lineStyle","color"])})}))},minorTick:function(e,t,r,n,i,a){if(i.length){for(var o=t.getModel("axisTick"),s=t.getModel("minorTick"),l=(o.get("inside")?-1:1)*s.get("length"),u=a[k_(r)],c=[],f=0;fx?"left":"right",S=Math.abs(y[1]-_)/m<.3?"middle":y[1]>_?"top":"bottom";if(s&&s[v]){var T=s[v];Le(T)&&T.textStyle&&(d=new et(T.textStyle,l,l.ecModel))}var C=new at({silent:Hn.isLabelSilent(t),style:Pt(d,{x:y[0],y:y[1],fill:d.getTextColor()||t.get(["axisLine","lineStyle","color"]),text:f.formattedLabel,align:b,verticalAlign:S})});if(e.add(C),rl({el:C,componentModel:t,itemName:f.formattedLabel,formatterParamsExtra:{isTruncated:function(){return C.isTruncated},value:f.rawLabel,tickIndex:h}}),c){var A=Hn.makeAxisEventDataBase(t);A.targetType="axisLabel",A.value=f.rawLabel,je(C).eventData=A}},this)},splitLine:function(e,t,r,n,i,a){var o=t.getModel("splitLine"),s=o.getModel("lineStyle"),l=s.get("color"),u=0;l=l instanceof Array?l:[l];for(var c=[],f=0;f=0?"p":"n",V=I;T&&(n[c][N]||(n[c][N]={p:I,n:I}),V=n[c][N][z]);var F=void 0,$=void 0,B=void 0,Z=void 0;if(v.dim==="radius"){var W=v.dataToCoord(D)-I,G=l.dataToCoord(N);Math.abs(W)=Z})}}})}function _Ze(e){var t={};R(e,function(n,i){var a=n.getData(),o=n.coordinateSystem,s=o.getBaseAxis(),l=cie(o,s),u=s.getExtent(),c=s.type==="category"?s.getBandWidth():Math.abs(u[1]-u[0])/a.count(),f=t[l]||{bandWidth:c,remainedWidth:c,autoWidthCount:0,categoryGap:"20%",gap:"30%",stacks:{}},h=f.stacks;t[l]=f;var d=uie(n);h[d]||f.autoWidthCount++,h[d]=h[d]||{width:0,maxWidth:0};var v=pe(n.get("barWidth"),c),m=pe(n.get("barMaxWidth"),c),y=n.get("barGap"),x=n.get("barCategoryGap");v&&!h[d].width&&(v=Math.min(f.remainedWidth,v),h[d].width=v,f.remainedWidth-=v),m&&(h[d].maxWidth=m),y!=null&&(f.gap=y),x!=null&&(f.categoryGap=x)});var r={};return R(t,function(n,i){r[i]={};var a=n.stacks,o=n.bandWidth,s=pe(n.categoryGap,o),l=pe(n.gap,1),u=n.remainedWidth,c=n.autoWidthCount,f=(u-s)/(c+(c-1)*l);f=Math.max(f,0),R(a,function(m,y){var x=m.maxWidth;x&&x=r.y&&t[1]<=r.y+r.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=r.y&&t[0]<=r.y+r.height},e.prototype.pointToData=function(t,r,n){n=n||[];var i=this.getAxis();return n[0]=i.coordToData(i.toLocalCoord(t[i.orient==="horizontal"?0:1])),n},e.prototype.dataToPoint=function(t,r,n){var i=this.getAxis(),a=this.getRect();n=n||[];var o=i.orient==="horizontal"?0:1;return t instanceof Array&&(t=t[0]),n[o]=i.toGlobalCoord(i.dataToCoord(+t)),n[1-o]=o===0?a.y+a.height/2:a.x+a.width/2,n},e.prototype.convertToPixel=function(t,r,n){var i=Q8(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=Q8(r);return i===this?this.pointToData(n):null},e}();function Q8(e){var t=e.seriesModel,r=e.singleAxisModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function LZe(e,t){var r=[];return e.eachComponent("singleAxis",function(n,i){var a=new kZe(n,e,t);a.name="single_"+i,a.resize(n,t),n.coordinateSystem=a,r.push(a)}),e.eachSeries(function(n){if(n.get("coordinateSystem")==="singleAxis"){var i=n.getReferringComponents("singleAxis",er).models[0];n.coordinateSystem=i&&i.coordinateSystem}}),r}var IZe={create:LZe,dimensions:fie},eH=["x","y"],EZe=["width","height"],OZe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.makeElOption=function(r,n,i,a,o){var s=i.axis,l=s.coordinateSystem,u=QM(l,1-Qw(s)),c=l.dataToPoint(n)[0],f=a.get("type");if(f&&f!=="none"){var h=kR(a),d=DZe[f](s,c,u);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=zE(i);iie(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=zE(n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=LR(n.axis,r,a);return{x:o[0],y:o[1],rotation:a.rotation+(a.labelDirection<0?Math.PI:0)}},t.prototype.updateHandleTransform=function(r,n,i,a){var o=i.axis,s=o.coordinateSystem,l=Qw(o),u=QM(s,l),c=[r.x,r.y];c[l]+=n[l],c[l]=Math.min(u[1],c[l]),c[l]=Math.max(u[0],c[l]);var f=QM(s,1-l),h=(f[1]+f[0])/2,d=[h,h];return d[l]=c[l],{x:c[0],y:c[1],rotation:r.rotation,cursorPoint:d,tooltipOption:{verticalAlign:"middle"}}},t}(PR),DZe={line:function(e,t,r){var n=IR([t,r[0]],[t,r[1]],Qw(e));return{type:"Line",subPixelOptimize:!0,shape:n}},shadow:function(e,t,r){var n=e.getBandWidth(),i=r[1]-r[0];return{type:"Rect",shape:aie([t-n/2,r[0]],[n,i],Qw(e))}}};function Qw(e){return e.isHorizontal()?0:1}function QM(e,t){var r=e.getRect();return[r[eH[t]],r[eH[t]]+r[EZe[t]]]}var NZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="single",t}(Lt);function jZe(e){Ze(M0),Df.registerAxisPointerClass("SingleAxisPointer",OZe),e.registerComponentView(NZe),e.registerComponentView(AZe),e.registerComponentModel(bb),ov(e,"single",bb,bb.defaultOption),e.registerCoordinateSystem("single",IZe)}var RZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n,i){var a=If(r);e.prototype.init.apply(this,arguments),tH(r,a)},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),tH(this.option,r)},t.prototype.getCellSize=function(){return this.option.cellSize},t.type="calendar",t.layoutMode="box",t.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:J.color.axisLine,width:1,type:"solid"}},itemStyle:{color:J.color.neutral00,borderWidth:1,borderColor:J.color.neutral10},dayLabel:{show:!0,firstDay:0,position:"start",margin:J.size.s,color:J.color.secondary},monthLabel:{show:!0,position:"start",margin:J.size.s,align:"center",formatter:null,color:J.color.secondary},yearLabel:{show:!0,position:null,margin:J.size.xl,formatter:null,color:J.color.quaternary,fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},t}(Ke);function tH(e,t){var r=e.cellSize,n;ae(r)?n=r:n=e.cellSize=[r,r],n.length===1&&(n[1]=n[0]);var i=se([0,1],function(a){return aBe(t,a)&&(n[a]="auto"),n[a]!=null&&n[a]!=="auto"});Ho(e,t,{type:"box",ignoreSize:i})}var BZe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){var a=this.group;a.removeAll();var o=r.coordinateSystem,s=o.getRangeInfo(),l=o.getOrient(),u=n.getLocaleModel();this._renderDayRect(r,s,a),this._renderLines(r,s,l,a),this._renderYearText(r,s,l,a),this._renderMonthText(r,u,l,a),this._renderWeekText(r,u,s,l,a)},t.prototype._renderDayRect=function(r,n,i){for(var a=r.coordinateSystem,o=r.getModel("itemStyle").getItemStyle(),s=a.getCellWidth(),l=a.getCellHeight(),u=n.start.time;u<=n.end.time;u=a.getNextNDay(u,1).time){var c=a.dataToCalendarLayout([u],!1).tl,f=new Xe({shape:{x:c[0],y:c[1],width:s,height:l},cursor:"default",style:o});i.add(f)}},t.prototype._renderLines=function(r,n,i,a){var o=this,s=r.coordinateSystem,l=r.getModel(["splitLine","lineStyle"]).getLineStyle(),u=r.get(["splitLine","show"]),c=l.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var f=n.start,h=0;f.time<=n.end.time;h++){v(f.formatedDate),h===0&&(f=s.getDateInfo(n.start.y+"-"+n.start.m));var d=f.date;d.setMonth(d.getMonth()+1),f=s.getDateInfo(d)}v(s.getNextNDay(n.end.time,1).formatedDate);function v(m){o._firstDayOfMonth.push(s.getDateInfo(m)),o._firstDayPoints.push(s.dataToCalendarLayout([m],!1).tl);var y=o._getLinePointsOfOneWeek(r,m,i);o._tlpoints.push(y[0]),o._blpoints.push(y[y.length-1]),u&&o._drawSplitline(y,l,a)}u&&this._drawSplitline(o._getEdgesPoints(o._tlpoints,c,i),l,a),u&&this._drawSplitline(o._getEdgesPoints(o._blpoints,c,i),l,a)},t.prototype._getEdgesPoints=function(r,n,i){var a=[r[0].slice(),r[r.length-1].slice()],o=i==="horizontal"?0:1;return a[0][o]=a[0][o]-n/2,a[1][o]=a[1][o]+n/2,a},t.prototype._drawSplitline=function(r,n,i){var a=new on({z2:20,shape:{points:r},style:n});i.add(a)},t.prototype._getLinePointsOfOneWeek=function(r,n,i){for(var a=r.coordinateSystem,o=a.getDateInfo(n),s=[],l=0;l<7;l++){var u=a.getNextNDay(o.time,l),c=a.dataToCalendarLayout([u.time],!1);s[2*u.day]=c.tl,s[2*u.day+1]=c[i==="horizontal"?"bl":"tr"]}return s},t.prototype._formatterLabel=function(r,n){return ge(r)&&r?J5e(r,n):Ae(r)?r(n):n.nameMap},t.prototype._yearTextPositionControl=function(r,n,i,a,o){var s=n[0],l=n[1],u=["center","bottom"];a==="bottom"?(l+=o,u=["center","top"]):a==="left"?s-=o:a==="right"?(s+=o,u=["center","top"]):l-=o;var c=0;return(a==="left"||a==="right")&&(c=Math.PI/2),{rotation:c,x:s,y:l,style:{align:u[0],verticalAlign:u[1]}}},t.prototype._renderYearText=function(r,n,i,a){var o=r.getModel("yearLabel");if(o.get("show")){var s=o.get("margin"),l=o.get("position");l||(l=i!=="horizontal"?"top":"left");var u=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],c=(u[0][0]+u[1][0])/2,f=(u[0][1]+u[1][1])/2,h=i==="horizontal"?0:1,d={top:[c,u[h][1]],bottom:[c,u[1-h][1]],left:[u[1-h][0],f],right:[u[h][0],f]},v=n.start.y;+n.end.y>+n.start.y&&(v=v+"-"+n.end.y);var m=o.get("formatter"),y={start:n.start.y,end:n.end.y,nameMap:v},x=this._formatterLabel(m,y),_=new at({z2:30,style:Pt(o,{text:x}),silent:o.get("silent")});_.attr(this._yearTextPositionControl(_,d[l],i,l,s)),a.add(_)}},t.prototype._monthTextPositionControl=function(r,n,i,a,o){var s="left",l="top",u=r[0],c=r[1];return i==="horizontal"?(c=c+o,n&&(s="center"),a==="start"&&(l="bottom")):(u=u+o,n&&(l="middle"),a==="start"&&(s="right")),{x:u,y:c,align:s,verticalAlign:l}},t.prototype._renderMonthText=function(r,n,i,a){var o=r.getModel("monthLabel");if(o.get("show")){var s=o.get("nameMap"),l=o.get("margin"),u=o.get("position"),c=o.get("align"),f=[this._tlpoints,this._blpoints];(!s||ge(s))&&(s&&(n=DI(s)||n),s=n.get(["time","monthAbbr"])||[]);var h=u==="start"?0:1,d=i==="horizontal"?0:1;l=u==="start"?-l:l;for(var v=c==="center",m=o.get("silent"),y=0;y=a.start.time&&i.times.end.time&&r.reverse(),r},e.prototype._getRangeInfo=function(t){var r=[this.getDateInfo(t[0]),this.getDateInfo(t[1])],n;r[0].time>r[1].time&&(n=!0,r.reverse());var i=Math.floor(r[1].time/eP)-Math.floor(r[0].time/eP)+1,a=new Date(r[0].time),o=a.getDate(),s=r[1].date.getDate();a.setDate(o+i-1);var l=a.getDate();if(l!==s)for(var u=a.getTime()-r[1].time>0?1:-1;(l=a.getDate())!==s&&(a.getTime()-r[1].time)*u>0;)i-=u,a.setDate(l-u);var c=Math.floor((i+r[0].day+6)/7),f=n?-c+1:c-1;return n&&r.reverse(),{range:[r[0].formatedDate,r[1].formatedDate],start:r[0],end:r[1],allDay:i,weeks:c,nthWeek:f,fweek:r[0].day,lweek:r[1].day}},e.prototype._getDateByWeeksAndDay=function(t,r,n){var i=this._getRangeInfo(n);if(t>i.weeks||t===0&&ri.lweek)return null;var a=(t-1)*7-i.fweek+r,o=new Date(i.start.time);return o.setDate(+i.start.d+a),this.getDateInfo(o)},e.create=function(t,r){var n=[];return t.eachComponent("calendar",function(i){var a=new e(i,t,r);n.push(a),i.coordinateSystem=a}),t.eachComponent(function(i,a){x0({targetModel:a,coordSysType:"calendar",coordSysProvider:LQ})}),n},e.dimensions=["time","value"],e}();function tP(e){var t=e.calendarModel,r=e.seriesModel,n=t?t.coordinateSystem:r?r.coordinateSystem:null;return n}function $Ze(e){e.registerComponentModel(RZe),e.registerComponentView(BZe),e.registerCoordinateSystem("calendar",zZe)}var vs={level:1,leaf:2,nonLeaf:3},Os={none:0,all:1,body:2,corner:3};function $E(e,t,r){var n=t[$e[r]].getCell(e);return!n&&ot(e)&&e<0&&(n=t[$e[1-r]].getUnitLayoutInfo(r,Math.round(e))),n}function hie(e){var t=e||[];return t[0]=t[0]||[],t[1]=t[1]||[],t[0][0]=t[0][1]=t[1][0]=t[1][1]=NaN,t}function die(e,t,r,n,i){rH(e[0],t,i,r,n,0),rH(e[1],t,i,r,n,1)}function rH(e,t,r,n,i,a){e[0]=1/0,e[1]=-1/0;var o=n[a],s=ae(o)?o:[o],l=s.length,u=!!r;if(l>=1?(nH(e,t,s,u,i,a,0),l>1&&nH(e,t,s,u,i,a,l-1)):e[0]=e[1]=NaN,u){var c=-i[$e[1-a]].getLocatorCount(a),f=i[$e[a]].getLocatorCount(a)-1;r===Os.body?c=pr(0,c):r===Os.corner&&(f=Li(-1,f)),f=t[0]&&e[0]<=t[1]}function oH(e,t){e.id.set(t[0][0],t[1][0]),e.span.set(t[0][1]-e.id.x+1,t[1][1]-e.id.y+1)}function GZe(e,t){e[0][0]=t[0][0],e[0][1]=t[0][1],e[1][0]=t[1][0],e[1][1]=t[1][1]}function sH(e,t,r,n){var i=$E(t[n][0],r,n),a=$E(t[n][1],r,n);e[$e[n]]=e[Cr[n]]=NaN,i&&a&&(e[$e[n]]=i.xy,e[Cr[n]]=a.xy+a.wh-i.xy)}function ig(e,t,r,n){return e[$e[t]]=r,e[$e[1-t]]=n,e}function WZe(e){return e&&(e.type===vs.leaf||e.type===vs.nonLeaf)?e:null}function eS(){return{x:NaN,y:NaN,width:NaN,height:NaN}}var lH=function(){function e(t,r){this._cells=[],this._levels=[],this.dim=t,this.dimIdx=t==="x"?0:1,this._model=r,this._uniqueValueGen=HZe(t);var n=r.get("data",!0);n!=null&&!ae(n)&&(n=[]),n?this._initByDimModelData(n):this._initBySeriesData()}return e.prototype._initByDimModelData=function(t){var r=this,n=r._cells,i=r._levels,a=[],o=0;r._leavesCount=s(t,0,0),l();return;function s(u,c,f){var h=0;return u&&R(u,function(d,v){var m;ge(d)?m={value:d}:Le(d)?(m=d,d.value!=null&&!ge(d.value)&&(m={value:null})):m={value:null};var y={type:vs.nonLeaf,ordinal:NaN,level:f,firstLeafLocator:c,id:new Ee,span:ig(new Ee,r.dimIdx,1,1),option:m,xy:NaN,wh:NaN,dim:r,rect:eS()};o++,(a[c]||(a[c]=[])).push(y),i[f]||(i[f]={type:vs.level,xy:NaN,wh:NaN,option:null,id:new Ee,dim:r});var x=s(m.children,c,f+1),_=Math.max(1,x);y.span[$e[r.dimIdx]]=_,h+=_,c+=_}),h}function l(){for(var u=[];n.length=1,b=r[$e[n]],S=a.getLocatorCount(n)-1,T=new Kl;for(o.resetLayoutIterator(T,n);T.next();)C(T.item);for(a.resetLayoutIterator(T,n);T.next();)C(T.item);function C(A){mn(A.wh)&&(A.wh=x),A.xy=b,A.id[$e[n]]===S&&!_&&(A.wh=r[$e[n]]+r[Cr[n]]-A.xy),b+=A.wh}}function pH(e,t){for(var r=t[$e[e]].resetCellIterator();r.next();){var n=r.item;tS(n.rect,e,n.id,n.span,t),tS(n.rect,1-e,n.id,n.span,t),n.type===vs.nonLeaf&&(n.xy=n.rect[$e[e]],n.wh=n.rect[Cr[e]])}}function gH(e,t){e.travelExistingCells(function(r){var n=r.span;if(n){var i=r.spanRect,a=r.id;tS(i,0,a,n,t),tS(i,1,a,n,t)}})}function tS(e,t,r,n,i){e[Cr[t]]=0;var a=r[$e[t]],o=a<0?i[$e[1-t]]:i[$e[t]],s=o.getUnitLayoutInfo(t,r[$e[t]]);if(e[$e[t]]=s.xy,e[Cr[t]]=s.wh,n[$e[t]]>1){var l=o.getUnitLayoutInfo(t,r[$e[t]]+n[$e[t]]-1);e[Cr[t]]=l.xy+l.wh-s.xy}}function iYe(e,t,r){var n=vw(e,r[Cr[t]]);return VE(n,r[Cr[t]])}function VE(e,t){return Math.max(Math.min(e,Se(t,1/0)),0)}function iP(e){var t=e.matrixModel,r=e.seriesModel,n=t?t.coordinateSystem:r?r.coordinateSystem:null;return n}var dn={inBody:1,inCorner:2,outside:3},ho={x:null,y:null,point:[]};function mH(e,t,r,n,i){var a=r[$e[t]],o=r[$e[1-t]],s=a.getUnitLayoutInfo(t,a.getLocatorCount(t)-1),l=a.getUnitLayoutInfo(t,0),u=o.getUnitLayoutInfo(t,-o.getLocatorCount(t)),c=o.shouldShow()?o.getUnitLayoutInfo(t,-1):null,f=e.point[t]=n[t];if(!l&&!c){e[$e[t]]=dn.outside;return}if(i===Os.body){l?(e[$e[t]]=dn.inBody,f=Li(s.xy+s.wh,pr(l.xy,f)),e.point[t]=f):e[$e[t]]=dn.outside;return}else if(i===Os.corner){c?(e[$e[t]]=dn.inCorner,f=Li(c.xy+c.wh,pr(u.xy,f)),e.point[t]=f):e[$e[t]]=dn.outside;return}var h=l?l.xy:c?c.xy+c.wh:NaN,d=u?u.xy:h,v=s?s.xy+s.wh:h;if(fv){if(!i){e[$e[t]]=dn.outside;return}f=v}e.point[t]=f,e[$e[t]]=h<=f&&f<=v?dn.inBody:d<=f&&f<=h?dn.inCorner:dn.outside}function yH(e,t,r,n){var i=1-r;if(e[$e[r]]!==dn.outside)for(n[$e[r]].resetCellIterator(nP);nP.next();){var a=nP.item;if(_H(e.point[r],a.rect,r)&&_H(e.point[i],a.rect,i)){t[r]=a.ordinal,t[i]=a.id[$e[i]];return}}}function xH(e,t,r,n){if(e[$e[r]]!==dn.outside){var i=e[$e[r]]===dn.inCorner?n[$e[1-r]]:n[$e[r]];for(i.resetLayoutIterator(D_,r);D_.next();)if(aYe(e.point[r],D_.item)){t[r]=D_.item.id[$e[r]];return}}}function aYe(e,t){return t.xy<=e&&e<=t.xy+t.wh}function _H(e,t,r){return t[$e[r]]<=e&&e<=t[$e[r]]+t[Cr[r]]}function oYe(e){e.registerComponentModel(XZe),e.registerComponentView(eYe),e.registerCoordinateSystem("matrix",nYe)}function sYe(e,t){var r=e.existing;if(t.id=e.keyInfo.id,!t.type&&r&&(t.type=r.type),t.parentId==null){var n=t.parentOption;n?t.parentId=n.id:r&&(t.parentId=r.parentId)}t.parentOption=null}function bH(e,t){var r;return R(t,function(n){e[n]!=null&&e[n]!=="auto"&&(r=!0)}),r}function lYe(e,t,r){var n=ne({},r),i=e[t],a=r.$action||"merge";a==="merge"?i?(He(i,n,!0),Ho(i,n,{ignoreSize:!0}),NQ(r,i),N_(r,i),N_(r,i,"shape"),N_(r,i,"style"),N_(r,i,"extra"),r.clipPath=i.clipPath):e[t]=n:a==="replace"?e[t]=n:a==="remove"&&i&&(e[t]=null)}var pie=["transition","enterFrom","leaveTo"],uYe=pie.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function N_(e,t,r){if(r&&(!e[r]&&t[r]&&(e[r]={}),e=e[r],t=t[r]),!(!e||!t))for(var n=r?pie:uYe,i=0;i=0;c--){var f=i[c],h=Er(f.id,null),d=h!=null?o.get(h):null;if(d){var v=d.parent,x=qi(v),_=v===a?{width:s,height:l}:{width:x.width,height:x.height},b={},S=ZT(d,f,_,null,{hv:f.hv,boundingMode:f.bounding},b);if(!qi(d).isNew&&S){for(var T=f.transition,C={},A=0;A=0)?C[P]=I:d[P]=I}lt(d,C,r,0)}else d.attr(b)}}},t.prototype._clear=function(){var r=this,n=this._elMap;n.each(function(i){wb(i,qi(i).option,n,r._lastGraphicModel)}),this._elMap=we()},t.prototype.dispose=function(){this._clear()},t.type="graphic",t}(Lt);function GE(e){var t=be(wH,e)?wH[e]:wy(e),r=new t({});return qi(r).type=e,r}function SH(e,t,r,n){var i=GE(r);return t.add(i),n.set(e,i),qi(i).id=e,qi(i).isNew=!0,i}function wb(e,t,r,n){var i=e&&e.parent;i&&(e.type==="group"&&e.traverse(function(a){wb(a,t,r,n)}),uC(e,t,n),r.removeKey(qi(e).id))}function TH(e,t,r,n){e.isGroup||R([["cursor",pa.prototype.cursor],["zlevel",n||0],["z",r||0],["z2",0]],function(i){var a=i[0];be(t,a)?e[a]=Se(t[a],i[1]):e[a]==null&&(e[a]=i[1])}),R(it(t),function(i){if(i.indexOf("on")===0){var a=t[i];e[i]=Ae(a)?a:null}}),be(t,"draggable")&&(e.draggable=t.draggable),t.name!=null&&(e.name=t.name),t.id!=null&&(e.id=t.id)}function dYe(e){return e=ne({},e),R(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(IQ),function(t){delete e[t]}),e}function vYe(e,t,r){var n=je(e).eventData;!e.silent&&!e.ignore&&!n&&(n=je(e).eventData={componentType:"graphic",componentIndex:t.componentIndex,name:e.name}),n&&(n.info=r.info)}function pYe(e){e.registerComponentModel(fYe),e.registerComponentView(hYe),e.registerPreprocessor(function(t){var r=t.graphic;ae(r)?!r[0]||!r[0].elements?t.graphic=[{elements:r}]:t.graphic=[t.graphic[0]]:r&&!r.elements&&(t.graphic=[{elements:[r]}])})}var CH=["x","y","radius","angle","single"],gYe=["cartesian2d","polar","singleAxis"];function mYe(e){var t=e.get("coordinateSystem");return We(gYe,t)>=0}function Bl(e){return e+"Axis"}function yYe(e,t){var r=we(),n=[],i=we();e.eachComponent({mainType:"dataZoom",query:t},function(c){i.get(c.uid)||s(c)});var a;do a=!1,e.eachComponent("dataZoom",o);while(a);function o(c){!i.get(c.uid)&&l(c)&&(s(c),a=!0)}function s(c){i.set(c.uid,!0),n.push(c),u(c)}function l(c){var f=!1;return c.eachTargetAxis(function(h,d){var v=r.get(h);v&&v[d]&&(f=!0)}),f}function u(c){c.eachTargetAxis(function(f,h){(r.get(f)||r.set(f,[]))[h]=!0})}return n}function gie(e){var t=e.ecModel,r={infoList:[],infoMap:we()};return e.eachTargetAxis(function(n,i){var a=t.getComponent(Bl(n),i);if(a){var o=a.getCoordSysModel();if(o){var s=o.uid,l=r.infoMap.get(s);l||(l={model:o,axisModels:[]},r.infoList.push(l),r.infoMap.set(s,l)),l.axisModels.push(a)}}}),r}var aP=function(){function e(){this.indexList=[],this.indexMap=[]}return e.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},e}(),Fy=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._autoThrottle=!0,r._noTarget=!0,r._rangePropMode=["percent","percent"],r}return t.prototype.init=function(r,n,i){var a=AH(r);this.settledOption=a,this.mergeDefaultAndTheme(r,i),this._doInit(a)},t.prototype.mergeOption=function(r){var n=AH(r);He(this.option,r,!0),He(this.settledOption,n,!0),this._doInit(n)},t.prototype._doInit=function(r){var n=this.option;this._setDefaultThrottle(r),this._updateRangeUse(r);var i=this.settledOption;R([["start","startValue"],["end","endValue"]],function(a,o){this._rangePropMode[o]==="value"&&(n[a[0]]=i[a[0]]=null)},this),this._resetTarget()},t.prototype._resetTarget=function(){var r=this.get("orient",!0),n=this._targetAxisInfoMap=we(),i=this._fillSpecifiedTargetAxis(n);i?this._orient=r||this._makeAutoOrientByTargetAxis():(this._orient=r||"horizontal",this._fillAutoTargetAxisByOrient(n,this._orient)),this._noTarget=!0,n.each(function(a){a.indexList.length&&(this._noTarget=!1)},this)},t.prototype._fillSpecifiedTargetAxis=function(r){var n=!1;return R(CH,function(i){var a=this.getReferringComponents(Bl(i),jRe);if(a.specified){n=!0;var o=new aP;R(a.models,function(s){o.add(s.componentIndex)}),r.set(i,o)}},this),n},t.prototype._fillAutoTargetAxisByOrient=function(r,n){var i=this.ecModel,a=!0;if(a){var o=n==="vertical"?"y":"x",s=i.findComponents({mainType:o+"Axis"});l(s,o)}if(a){var s=i.findComponents({mainType:"singleAxis",filter:function(c){return c.get("orient",!0)===n}});l(s,"single")}function l(u,c){var f=u[0];if(f){var h=new aP;if(h.add(f.componentIndex),r.set(c,h),a=!1,c==="x"||c==="y"){var d=f.getReferringComponents("grid",er).models[0];d&&R(u,function(v){f.componentIndex!==v.componentIndex&&d===v.getReferringComponents("grid",er).models[0]&&h.add(v.componentIndex)})}}}a&&R(CH,function(u){if(a){var c=i.findComponents({mainType:Bl(u),filter:function(h){return h.get("type",!0)==="category"}});if(c[0]){var f=new aP;f.add(c[0].componentIndex),r.set(u,f),a=!1}}},this)},t.prototype._makeAutoOrientByTargetAxis=function(){var r;return this.eachTargetAxis(function(n){!r&&(r=n)},this),r==="y"?"vertical":"horizontal"},t.prototype._setDefaultThrottle=function(r){if(r.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var n=this.ecModel.option;this.option.throttle=n.animation&&n.animationDurationUpdate>0?100:20}},t.prototype._updateRangeUse=function(r){var n=this._rangePropMode,i=this.get("rangeMode");R([["start","startValue"],["end","endValue"]],function(a,o){var s=r[a[0]]!=null,l=r[a[1]]!=null;s&&!l?n[o]="percent":!s&&l?n[o]="value":i?n[o]=i[o]:s&&(n[o]="percent")})},t.prototype.noTarget=function(){return this._noTarget},t.prototype.getFirstTargetAxisModel=function(){var r;return this.eachTargetAxis(function(n,i){r==null&&(r=this.ecModel.getComponent(Bl(n),i))},this),r},t.prototype.eachTargetAxis=function(r,n){this._targetAxisInfoMap.each(function(i,a){R(i.indexList,function(o){r.call(n,a,o)})})},t.prototype.getAxisProxy=function(r,n){var i=this.getAxisModel(r,n);if(i)return i.__dzAxisProxy},t.prototype.getAxisModel=function(r,n){var i=this._targetAxisInfoMap.get(r);if(i&&i.indexMap[n])return this.ecModel.getComponent(Bl(r),n)},t.prototype.setRawRange=function(r){var n=this.option,i=this.settledOption;R([["start","startValue"],["end","endValue"]],function(a){(r[a[0]]!=null||r[a[1]]!=null)&&(n[a[0]]=i[a[0]]=r[a[0]],n[a[1]]=i[a[1]]=r[a[1]])},this),this._updateRangeUse(r)},t.prototype.setCalculatedRange=function(r){var n=this.option;R(["start","startValue","end","endValue"],function(i){n[i]=r[i]})},t.prototype.getPercentRange=function(){var r=this.findRepresentativeAxisProxy();if(r)return r.getDataPercentWindow()},t.prototype.getValueRange=function(r,n){if(r==null&&n==null){var i=this.findRepresentativeAxisProxy();if(i)return i.getDataValueWindow()}else return this.getAxisProxy(r,n).getDataValueWindow()},t.prototype.findRepresentativeAxisProxy=function(r){if(r)return r.__dzAxisProxy;for(var n,i=this._targetAxisInfoMap.keys(),a=0;ao[1];if(b&&!S&&!T)return!0;b&&(y=!0),S&&(v=!0),T&&(m=!0)}return y&&v&&m})}else Ph(c,function(d){if(a==="empty")l.setData(u=u.map(d,function(m){return s(m)?m:NaN}));else{var v={};v[d]=o,u.selectRange(v)}});Ph(c,function(d){u.setApproximateExtent(o,d)})}});function s(l){return l>=o[0]&&l<=o[1]}},e.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},r=this._dataZoomModel,n=this._dataExtent;Ph(["min","max"],function(i){var a=r.get(i+"Span"),o=r.get(i+"ValueSpan");o!=null&&(o=this.getAxisModel().axis.scale.parse(o)),o!=null?a=gt(n[0]+o,n,[0,100],!0):a!=null&&(o=gt(a,[0,100],n,!0)-n[0]),t[i+"Span"]=a,t[i+"ValueSpan"]=o},this)},e.prototype._setAxisModel=function(){var t=this.getAxisModel(),r=this._percentWindow,n=this._valueWindow;if(r){var i=AN(n,[0,500]);i=Math.min(i,20);var a=t.axis.scale.rawExtentInfo;r[0]!==0&&a.setDeterminedMinMax("min",+n[0].toFixed(i)),r[1]!==100&&a.setDeterminedMinMax("max",+n[1].toFixed(i)),a.freeze()}},e}();function wYe(e,t,r){var n=[1/0,-1/0];Ph(r,function(o){$$e(n,o.getData(),t)});var i=e.getAxisModel(),a=pte(i.axis.scale,i,n).calculate();return[a.min,a.max]}var SYe={getTargetSeries:function(e){function t(i){e.eachComponent("dataZoom",function(a){a.eachTargetAxis(function(o,s){var l=e.getComponent(Bl(o),s);i(o,s,l,a)})})}t(function(i,a,o,s){o.__dzAxisProxy=null});var r=[];t(function(i,a,o,s){o.__dzAxisProxy||(o.__dzAxisProxy=new bYe(i,a,s,e),r.push(o.__dzAxisProxy))});var n=we();return R(r,function(i){R(i.getTargetSeriesModels(),function(a){n.set(a.uid,a)})}),n},overallReset:function(e,t){e.eachComponent("dataZoom",function(r){r.eachTargetAxis(function(n,i){r.getAxisProxy(n,i).reset(r)}),r.eachTargetAxis(function(n,i){r.getAxisProxy(n,i).filterData(r,t)})}),e.eachComponent("dataZoom",function(r){var n=r.findRepresentativeAxisProxy();if(n){var i=n.getDataPercentWindow(),a=n.getDataValueWindow();r.setCalculatedRange({start:i[0],end:i[1],startValue:a[0],endValue:a[1]})}})}};function TYe(e){e.registerAction("dataZoom",function(t,r){var n=yYe(r,t);R(n,function(i){i.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})})})}var PH=!1;function BR(e){PH||(PH=!0,e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,SYe),TYe(e),e.registerSubTypeDefaulter("dataZoom",function(){return"slider"}))}function CYe(e){e.registerComponentModel(xYe),e.registerComponentView(_Ye),BR(e)}var ea=function(){function e(){}return e}(),mie={};function kh(e,t){mie[e]=t}function yie(e){return mie[e]}var AYe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.optionUpdated=function(){e.prototype.optionUpdated.apply(this,arguments);var r=this.ecModel;R(this.option.feature,function(n,i){var a=yie(i);a&&(a.getDefaultOption&&(a.defaultOption=a.getDefaultOption(r)),He(n,a.defaultOption))})},t.type="toolbox",t.layoutMode={type:"box",ignoreSize:!0},t.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:J.color.border,borderRadius:0,borderWidth:0,padding:J.size.m,itemSize:15,itemGap:J.size.s,showTitle:!0,iconStyle:{borderColor:J.color.accent50,color:"none"},emphasis:{iconStyle:{borderColor:J.color.accent50}},tooltip:{show:!1,position:"bottom"}},t}(Ke);function xie(e,t){var r=Hv(t.get("padding")),n=t.getItemStyle(["color","opacity"]);n.fill=t.get("backgroundColor");var i=new Xe({shape:{x:e.x-r[3],y:e.y-r[0],width:e.width+r[1]+r[3],height:e.height+r[0]+r[2],r:t.get("borderRadius")},style:n,silent:!0,z2:-1});return i}var MYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(r,n,i,a){var o=this.group;if(o.removeAll(),!r.get("show"))return;var s=+r.get("itemSize"),l=r.get("orient")==="vertical",u=r.get("feature")||{},c=this._features||(this._features={}),f=[];R(u,function(_,b){f.push(b)}),new Us(this._featureNames||[],f).add(h).update(h).remove(Fe(h,null)).execute(),this._featureNames=f;function h(_,b){var S=f[_],T=f[b],C=u[S],A=new et(C,r,r.ecModel),P;if(a&&a.newTitle!=null&&a.featureName===S&&(C.title=a.newTitle),S&&!T){if(PYe(S))P={onclick:A.option.onclick,featureName:S};else{var I=yie(S);if(!I)return;P=new I}c[S]=P}else if(P=c[T],!P)return;P.uid=Wv("toolbox-feature"),P.model=A,P.ecModel=n,P.api=i;var k=P instanceof ea;if(!S&&T){k&&P.dispose&&P.dispose(n,i);return}if(!A.get("show")||k&&P.unusable){k&&P.remove&&P.remove(n,i);return}d(A,P,S),A.setIconStatus=function(O,D){var N=this.option,z=this.iconPaths;N.iconStatus=N.iconStatus||{},N.iconStatus[O]=D,z[O]&&(D==="emphasis"?Ws:Hs)(z[O])},P instanceof ea&&P.render&&P.render(A,n,i,a)}function d(_,b,S){var T=_.getModel("iconStyle"),C=_.getModel(["emphasis","iconStyle"]),A=b instanceof ea&&b.getIcons?b.getIcons():_.get("icon"),P=_.get("title")||{},I,k;ge(A)?(I={},I[S]=A):I=A,ge(P)?(k={},k[S]=P):k=P;var O=_.iconPaths={};R(I,function(D,N){var z=Vv(D,{},{x:-s/2,y:-s/2,width:s,height:s});z.setStyle(T.getItemStyle());var V=z.ensureState("emphasis");V.style=C.getItemStyle();var F=new at({style:{text:k[N],align:C.get("textAlign"),borderRadius:C.get("textBorderRadius"),padding:C.get("textPadding"),fill:null,font:XN({fontStyle:C.get("textFontStyle"),fontFamily:C.get("textFontFamily"),fontSize:C.get("textFontSize"),fontWeight:C.get("textFontWeight")},n)},ignore:!0});z.setTextContent(F),rl({el:z,componentModel:r,itemName:N,formatterParamsExtra:{title:k[N]}}),z.__title=k[N],z.on("mouseover",function(){var $=C.getItemStyle(),B=l?r.get("right")==null&&r.get("left")!=="right"?"right":"left":r.get("bottom")==null&&r.get("top")!=="bottom"?"bottom":"top";F.setStyle({fill:C.get("textFill")||$.fill||$.stroke||J.color.neutral99,backgroundColor:C.get("textBackgroundColor")}),z.setTextConfig({position:C.get("textPosition")||B}),F.ignore=!r.get("showTitle"),i.enterEmphasis(this)}).on("mouseout",function(){_.get(["iconStatus",N])!=="emphasis"&&i.leaveEmphasis(this),F.hide()}),(_.get(["iconStatus",N])==="emphasis"?Ws:Hs)(z),o.add(z),z.on("click",me(b.onclick,b,n,i,N)),O[N]=z})}var v=Rr(r,i).refContainer,m=r.getBoxLayoutParams(),y=r.get("padding"),x=zt(m,v,y);Uc(r.get("orient"),o,r.get("itemGap"),x.width,x.height),ZT(o,m,v,y),o.add(xie(o.getBoundingRect(),r)),l||o.eachChild(function(_){var b=_.__title,S=_.ensureState("emphasis"),T=S.textConfig||(S.textConfig={}),C=_.getTextContent(),A=C&&C.ensureState("emphasis");if(A&&!Ae(A)&&b){var P=A.style||(A.style={}),I=OT(b,at.makeFont(P)),k=_.x+o.x,O=_.y+o.y+s,D=!1;O+I.height>i.getHeight()&&(T.position="top",D=!0);var N=D?-5-I.height:s+10;k+I.width/2>i.getWidth()?(T.position=["100%",N],P.align="right"):k-I.width/2<0&&(T.position=[0,N],P.align="left")}})},t.prototype.updateView=function(r,n,i,a){R(this._features,function(o){o instanceof ea&&o.updateView&&o.updateView(o.model,n,i,a)})},t.prototype.remove=function(r,n){R(this._features,function(i){i instanceof ea&&i.remove&&i.remove(r,n)}),this.group.removeAll()},t.prototype.dispose=function(r,n){R(this._features,function(i){i instanceof ea&&i.dispose&&i.dispose(r,n)})},t.type="toolbox",t}(Lt);function PYe(e){return e.indexOf("my")===0}var kYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){var i=this.model,a=i.get("name")||r.get("title.0.text")||"echarts",o=n.getZr().painter.getType()==="svg",s=o?"svg":i.get("type",!0)||"png",l=n.getConnectedDataURL({type:s,backgroundColor:i.get("backgroundColor",!0)||r.get("backgroundColor")||J.color.neutral00,connectedBackgroundColor:i.get("connectedBackgroundColor"),excludeComponents:i.get("excludeComponents"),pixelRatio:i.get("pixelRatio")}),u=nt.browser;if(typeof MouseEvent=="function"&&(u.newEdge||!u.ie&&!u.edge)){var c=document.createElement("a");c.download=a+"."+s,c.target="_blank",c.href=l;var f=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});c.dispatchEvent(f)}else if(window.navigator.msSaveOrOpenBlob||o){var h=l.split(","),d=h[0].indexOf("base64")>-1,v=o?decodeURIComponent(h[1]):h[1];d&&(v=window.atob(v));var m=a+"."+s;if(window.navigator.msSaveOrOpenBlob){for(var y=v.length,x=new Uint8Array(y);y--;)x[y]=v.charCodeAt(y);var _=new Blob([x]);window.navigator.msSaveOrOpenBlob(_,m)}else{var b=document.createElement("iframe");document.body.appendChild(b);var S=b.contentWindow,T=S.document;T.open("image/svg+xml","replace"),T.write(v),T.close(),S.focus(),T.execCommand("SaveAs",!0,m),document.body.removeChild(b)}}else{var C=i.get("lang"),A='',P=window.open();P.document.write(A),P.document.title=a}},t.getDefaultOption=function(r){var n={show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:r.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:J.color.neutral00,name:"",excludeComponents:["toolbox"],lang:r.getLocaleModel().get(["toolbox","saveAsImage","lang"])};return n},t}(ea),kH="__ec_magicType_stack__",LYe=[["line","bar"],["stack"]],IYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getIcons=function(){var r=this.model,n=r.get("icon"),i={};return R(r.get("type"),function(a){n[a]&&(i[a]=n[a])}),i},t.getDefaultOption=function(r){var n={show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:r.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}};return n},t.prototype.onclick=function(r,n,i){var a=this.model,o=a.get(["seriesIndex",i]);if(LH[i]){var s={series:[]},l=function(f){var h=f.subType,d=f.id,v=LH[i](h,d,f,a);v&&(ke(v,f.option),s.series.push(v));var m=f.coordinateSystem;if(m&&m.type==="cartesian2d"&&(i==="line"||i==="bar")){var y=m.getAxesByScale("ordinal")[0];if(y){var x=y.dim,_=x+"Axis",b=f.getReferringComponents(_,er).models[0],S=b.componentIndex;s[_]=s[_]||[];for(var T=0;T<=S;T++)s[_][S]=s[_][S]||{};s[_][S].boundaryGap=i==="bar"}}};R(LYe,function(f){We(f,i)>=0&&R(f,function(h){a.setIconStatus(h,"normal")})}),a.setIconStatus(i,"emphasis"),r.eachComponent({mainType:"series",query:o==null?null:{seriesIndex:o}},l);var u,c=i;i==="stack"&&(u=He({stack:a.option.title.tiled,tiled:a.option.title.stack},a.option.title),a.get(["iconStatus",i])!=="emphasis"&&(c="tiled")),n.dispatchAction({type:"changeMagicType",currentType:c,newOption:s,newTitle:u,featureName:"magicType"})}},t}(ea),LH={line:function(e,t,r,n){if(e==="bar")return He({id:t,type:"line",data:r.get("data"),stack:r.get("stack"),markPoint:r.get("markPoint"),markLine:r.get("markLine")},n.get(["option","line"])||{},!0)},bar:function(e,t,r,n){if(e==="line")return He({id:t,type:"bar",data:r.get("data"),stack:r.get("stack"),markPoint:r.get("markPoint"),markLine:r.get("markLine")},n.get(["option","bar"])||{},!0)},stack:function(e,t,r,n){var i=r.get("stack")===kH;if(e==="line"||e==="bar")return n.setIconStatus("stack",i?"normal":"emphasis"),He({id:t,stack:i?"":kH},n.get(["option","stack"])||{},!0)}};to({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(e,t){t.mergeOption(e.newOption)});var cC=new Array(60).join("-"),cv=" ";function EYe(e){var t={},r=[],n=[];return e.eachRawSeries(function(i){var a=i.coordinateSystem;if(a&&(a.type==="cartesian2d"||a.type==="polar")){var o=a.getBaseAxis();if(o.type==="category"){var s=o.dim+"_"+o.index;t[s]||(t[s]={categoryAxis:o,valueAxis:a.getOtherAxis(o),series:[]},n.push({axisDim:o.dim,axisIndex:o.index})),t[s].series.push(i)}else r.push(i)}else r.push(i)}),{seriesGroupByCategoryAxis:t,other:r,meta:n}}function OYe(e){var t=[];return R(e,function(r,n){var i=r.categoryAxis,a=r.valueAxis,o=a.dim,s=[" "].concat(se(r.series,function(d){return d.name})),l=[i.model.getCategories()];R(r.series,function(d){var v=d.getRawData();l.push(d.getRawData().mapArray(v.mapDimension(o),function(m){return m}))});for(var u=[s.join(cv)],c=0;c=0)return!0}var GO=new RegExp("["+cv+"]+","g");function NYe(e){for(var t=e.split(/\n+/g),r=rS(t.shift()).split(GO),n=[],i=se(r,function(l){return{name:l,data:[]}}),a=0;a=0)return!0}var WE=new RegExp("["+cv+"]+","g");function RYe(e){for(var t=e.split(/\n+/g),r=rS(t.shift()).split(WE),n=[],i=se(r,function(l){return{name:l,data:[]}}),a=0;a=0;a--){var o=r[a];if(o[i])break}if(a<0){var s=e.queryComponents({mainType:"dataZoom",subType:"select",id:i})[0];if(s){var l=s.getPercentRange();r[0][i]={dataZoomId:i,start:l[0],end:l[1]}}}}),r.push(t)}function FYe(e){var t=jR(e),r=t[t.length-1];t.length>1&&t.pop();var n={};return yie(r,function(i,a){for(var o=t.length-1;o>=0;o--)if(i=t[o][a],i){n[a]=i;break}}),n}function VYe(e){xie(e).snapshots=null}function GYe(e){return jR(e).length}function jR(e){var t=xie(e);return t.snapshots||(t.snapshots=[{}]),t.snapshots}var WYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){VYe(r),n.dispatchAction({type:"restore",from:this.uid})},t.getDefaultOption=function(r){var n={show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:r.getLocaleModel().get(["toolbox","restore","title"])};return n},t}(ea);to({type:"restore",event:"restore",update:"prepareAndUpdate"},function(e,t){t.resetOption("recreate")});var HYe=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],RR=function(){function e(t,r,n){var i=this;this._targetInfoList=[];var a=kH(r,t);R(UYe,function(o,s){(!n||!n.include||We(n.include,s)>=0)&&o(a,i._targetInfoList)})}return e.prototype.setOutputRanges=function(t,r){return this.matchOutputRanges(t,r,function(n,i,a){if((n.coordRanges||(n.coordRanges=[])).push(i),!n.coordRange){n.coordRange=i;var o=oP[n.brushType](0,a,i);n.__rangeOffset={offset:EH[n.brushType](o.values,n.range,[1,1]),xyMinMax:o.xyMinMax}}}),t},e.prototype.matchOutputRanges=function(t,r,n){R(t,function(i){var a=this.findTargetInfo(i,r);a&&a!==!0&&R(a.coordSyses,function(o){var s=oP[i.brushType](1,o,i.range,!0);n(i,s.values,o,r)})},this)},e.prototype.setInputRanges=function(t,r){R(t,function(n){var i=this.findTargetInfo(n,r);if(n.range=n.range||[],i&&i!==!0){n.panelId=i.panelId;var a=oP[n.brushType](0,i.coordSys,n.coordRange),o=n.__rangeOffset;n.range=o?EH[n.brushType](a.values,o.offset,ZYe(a.xyMinMax,o.xyMinMax)):a.values}},this)},e.prototype.makePanelOpts=function(t,r){return se(this._targetInfoList,function(n){var i=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:r?r(n):null,clipPath:Tne(i),isTargetByCursor:Ane(i,t,n.coordSysModel),getLinearBrushOtherExtent:Cne(i)}})},e.prototype.controlSeries=function(t,r,n){var i=this.findTargetInfo(t,n);return i===!0||i&&We(i.coordSyses,r.coordinateSystem)>=0},e.prototype.findTargetInfo=function(t,r){for(var n=this._targetInfoList,i=kH(r,t),a=0;ae[1]&&e.reverse(),e}function kH(e,t){return fd(e,t,{includeMainTypes:HYe})}var UYe={grid:function(e,t){var r=e.xAxisModels,n=e.yAxisModels,i=e.gridModels,a=_e(),o={},s={};!r&&!n&&!i||(R(r,function(l){var u=l.axis.grid.model;a.set(u.id,u),o[u.id]=!0}),R(n,function(l){var u=l.axis.grid.model;a.set(u.id,u),s[u.id]=!0}),R(i,function(l){a.set(l.id,l),o[l.id]=!0,s[l.id]=!0}),a.each(function(l){var u=l.coordinateSystem,c=[];R(u.getCartesians(),function(f,h){(We(r,f.getAxis("x").model)>=0||We(n,f.getAxis("y").model)>=0)&&c.push(f)}),t.push({panelId:"grid--"+l.id,gridModel:l,coordSysModel:l,coordSys:c[0],coordSyses:c,getPanelRect:IH.grid,xAxisDeclared:o[l.id],yAxisDeclared:s[l.id]})}))},geo:function(e,t){R(e.geoModels,function(r){var n=r.coordinateSystem;t.push({panelId:"geo--"+r.id,geoModel:r,coordSysModel:r,coordSys:n,coordSyses:[n],getPanelRect:IH.geo})})}},LH=[function(e,t){var r=e.xAxisModel,n=e.yAxisModel,i=e.gridModel;return!i&&r&&(i=r.axis.grid.model),!i&&n&&(i=n.axis.grid.model),i&&i===t.gridModel},function(e,t){var r=e.geoModel;return r&&r===t.geoModel}],IH={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var e=this.coordSys,t=e.getBoundingRect().clone();return t.applyTransform(Ql(e)),t}},oP={lineX:Fe(OH,0),lineY:Fe(OH,1),rect:function(e,t,r,n){var i=e?t.pointToData([r[0][0],r[1][0]],n):t.dataToPoint([r[0][0],r[1][0]],n),a=e?t.pointToData([r[0][1],r[1][1]],n):t.dataToPoint([r[0][1],r[1][1]],n),o=[WO([i[0],a[0]]),WO([i[1],a[1]])];return{values:o,xyMinMax:o}},polygon:function(e,t,r,n){var i=[[1/0,-1/0],[1/0,-1/0]],a=se(r,function(o){var s=e?t.pointToData(o,n):t.dataToPoint(o,n);return i[0][0]=Math.min(i[0][0],s[0]),i[1][0]=Math.min(i[1][0],s[1]),i[0][1]=Math.max(i[0][1],s[0]),i[1][1]=Math.max(i[1][1],s[1]),s});return{values:a,xyMinMax:i}}};function OH(e,t,r,n){var i=r.getAxis(["x","y"][e]),a=WO(se([0,1],function(s){return t?i.coordToData(i.toLocalCoord(n[s]),!0):i.toGlobalCoord(i.dataToCoord(n[s]))})),o=[];return o[e]=a,o[1-e]=[NaN,NaN],{values:a,xyMinMax:o}}var EH={lineX:Fe(DH,0),lineY:Fe(DH,1),rect:function(e,t,r){return[[e[0][0]-r[0]*t[0][0],e[0][1]-r[0]*t[0][1]],[e[1][0]-r[1]*t[1][0],e[1][1]-r[1]*t[1][1]]]},polygon:function(e,t,r){return se(e,function(n,i){return[n[0]-r[0]*t[i][0],n[1]-r[1]*t[i][1]]})}};function DH(e,t,r,n){return[t[0]-n[e]*r[0],t[1]-n[e]*r[1]]}function ZYe(e,t){var r=NH(e),n=NH(t),i=[r[0]/n[0],r[1]/n[1]];return isNaN(i[0])&&(i[0]=1),isNaN(i[1])&&(i[1]=1),i}function NH(e){return e?[e[0][1]-e[0][0],e[1][1]-e[1][0]]:[NaN,NaN]}var HO=R,YYe=kRe("toolbox-dataZoom_"),XYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(r,n,i,a){this._brushController||(this._brushController=new lR(i.getZr()),this._brushController.on("brush",ge(this._onBrush,this)).mount()),JYe(r,n,this,a,i),KYe(r,n)},t.prototype.onclick=function(r,n,i){qYe[i].call(this)},t.prototype.remove=function(r,n){this._brushController&&this._brushController.unmount()},t.prototype.dispose=function(r,n){this._brushController&&this._brushController.dispose()},t.prototype._onBrush=function(r){var n=r.areas;if(!r.isEnd||!n.length)return;var i={},a=this.ecModel;this._brushController.updateCovers([]);var o=new RR(BR(this.model),a,{include:["grid"]});o.matchOutputRanges(n,a,function(u,c,f){if(f.type==="cartesian2d"){var h=u.brushType;h==="rect"?(s("x",f,c[0]),s("y",f,c[1])):s({lineX:"x",lineY:"y"}[h],f,c)}}),$Ye(a,i),this._dispatchZoomAction(i);function s(u,c,f){var h=c.getAxis(u),d=h.model,v=l(u,d,a),g=v.findRepresentativeAxisProxy(d).getMinMaxSpan();(g.minValueSpan!=null||g.maxValueSpan!=null)&&(f=hu(0,f.slice(),h.scale.getExtent(),0,g.minValueSpan,g.maxValueSpan)),v&&(i[v.id]={dataZoomId:v.id,startValue:f[0],endValue:f[1]})}function l(u,c,f){var h;return f.eachComponent({mainType:"dataZoom",subType:"select"},function(d){var v=d.getAxisModel(u,c.componentIndex);v&&(h=d)}),h}},t.prototype._dispatchZoomAction=function(r){var n=[];HO(r,function(i,a){n.push(Ae(i))}),n.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:n})},t.getDefaultOption=function(r){var n={show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:r.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:J.color.backgroundTint}};return n},t}(ea),qYe={zoom:function(){var e=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:e})},back:function(){this._dispatchZoomAction(FYe(this.ecModel))}};function BR(e){var t={xAxisIndex:e.get("xAxisIndex",!0),yAxisIndex:e.get("yAxisIndex",!0),xAxisId:e.get("xAxisId",!0),yAxisId:e.get("yAxisId",!0)};return t.xAxisIndex==null&&t.xAxisId==null&&(t.xAxisIndex="all"),t.yAxisIndex==null&&t.yAxisId==null&&(t.yAxisIndex="all"),t}function KYe(e,t){e.setIconStatus("back",GYe(t)>1?"emphasis":"normal")}function JYe(e,t,r,n,i){var a=r._isZoomActive;n&&n.type==="takeGlobalCursor"&&(a=n.key==="dataZoomSelect"?n.dataZoomSelectActive:!1),r._isZoomActive=a,e.setIconStatus("zoom",a?"emphasis":"normal");var o=new RR(BR(e),t,{include:["grid"]}),s=o.makePanelOpts(i,function(l){return l.xAxisDeclared&&!l.yAxisDeclared?"lineX":!l.xAxisDeclared&&l.yAxisDeclared?"lineY":"rect"});r._brushController.setPanels(s).enableBrush(a&&s.length?{brushType:"auto",brushStyle:e.getModel("brushStyle").getItemStyle()}:!1)}cBe("dataZoom",function(e){var t=e.getComponent("toolbox",0),r=["feature","dataZoom"];if(!t||t.get(r)==null)return;var n=t.getModel(r),i=[],a=BR(n),o=fd(e,a);HO(o.xAxisModels,function(l){return s(l,"xAxis","xAxisIndex")}),HO(o.yAxisModels,function(l){return s(l,"yAxis","yAxisIndex")});function s(l,u,c){var f=l.componentIndex,h={type:"select",$fromToolbox:!0,filterMode:n.get("filterMode",!0)||"filter",id:YYe+u+f};h[c]=f,i.push(h)}return i});function QYe(e){e.registerComponentModel(TYe),e.registerComponentView(CYe),Ph("saveAsImage",MYe),Ph("magicType",kYe),Ph("dataView",BYe),Ph("dataZoom",XYe),Ph("restore",WYe),Ze(SYe)}var eXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="tooltip",t.dependencies=["axisPointer"],t.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,displayTransition:!0,enterable:!1,backgroundColor:J.color.neutral00,shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,defaultBorderColor:J.color.border,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:J.color.borderShade,width:1,type:"dashed",textStyle:{}}},textStyle:{color:J.color.tertiary,fontSize:14}},t}(Ke);function _ie(e){var t=e.get("confine");return t!=null?!!t:e.get("renderMode")==="richText"}function bie(e){if(nt.domSupported){for(var t=document.documentElement.style,r=0,n=e.length;r-1?(s+="top:50%",l+="translateY(-50%) rotate("+(u=a==="left"?-225:-45)+"deg)"):(s+="left:50%",l+="translateX(-50%) rotate("+(u=a==="top"?225:45)+"deg)");var c=u*Math.PI/180,f=o+i,h=f*Math.abs(Math.cos(c))+f*Math.abs(Math.sin(c)),d=Math.round(((h-Math.SQRT2*i)/2+Math.SQRT2*i-(h-f)/2)*100)/100;s+=";"+a+":-"+d+"px";var v=t+" solid "+i+"px;",g=["position:absolute;width:"+o+"px;height:"+o+"px;z-index:-1;",s+";"+l+";","border-bottom:"+v,"border-right:"+v,"background-color:"+n+";"];return'
'}function sXe(e,t,r){var n="cubic-bezier(0.23,1,0.32,1)",i="",a="";return r&&(i=" "+e/2+"s "+n,a="opacity"+i+",visibility"+i),t||(i=" "+e+"s "+n,a+=(a.length?",":"")+(nt.transformSupported?""+zR+i:",left"+i+",top"+i)),nXe+":"+a}function jH(e,t,r){var n=e.toFixed(0)+"px",i=t.toFixed(0)+"px";if(!nt.transformSupported)return r?"top:"+i+";left:"+n+";":[["top",i],["left",n]];var a=nt.transform3dSupported,o="translate"+(a?"3d":"")+"("+n+","+i+(a?",0":"")+")";return r?"top:0;left:0;"+zR+":"+o+";":[["top",0],["left",0],[wie,o]]}function lXe(e){var t=[],r=e.get("fontSize"),n=e.getTextColor();n&&t.push("color:"+n),t.push("font:"+e.getFont());var i=be(e.get("lineHeight"),Math.round(r*3/2));r&&t.push("line-height:"+i+"px");var a=e.get("textShadowColor"),o=e.get("textShadowBlur")||0,s=e.get("textShadowOffsetX")||0,l=e.get("textShadowOffsetY")||0;return a&&o&&t.push("text-shadow:"+s+"px "+l+"px "+o+"px "+a),R(["decoration","align"],function(u){var c=e.get(u);c&&t.push("text-"+u+":"+c)}),t.join(";")}function uXe(e,t,r,n){var i=[],a=e.get("transitionDuration"),o=e.get("backgroundColor"),s=e.get("shadowBlur"),l=e.get("shadowColor"),u=e.get("shadowOffsetX"),c=e.get("shadowOffsetY"),f=e.getModel("textStyle"),h=fee(e,"html"),d=u+"px "+c+"px "+s+"px "+l;return i.push("box-shadow:"+d),t&&a>0&&i.push(sXe(a,r,n)),o&&i.push("background-color:"+o),R(["width","color","radius"],function(v){var g="border-"+v,m=aj(g),x=e.get(m);x!=null&&i.push(g+":"+x+(v==="color"?"":"px"))}),i.push(lXe(f)),h!=null&&i.push("padding:"+Hv(h).join("px ")+"px"),i.join(";")+";"}function RH(e,t,r,n,i){var a=t&&t.painter;if(r){var o=a&&a.getViewportRoot();o&&YNe(e,o,r,n,i)}else{e[0]=n,e[1]=i;var s=a&&a.getViewportRootOffset();s&&(e[0]+=s.offsetLeft,e[1]+=s.offsetTop)}e[2]=e[0]/t.getWidth(),e[3]=e[1]/t.getHeight()}var cXe=function(){function e(t,r){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._alwaysShowContent=!1,this._firstShow=!0,this._longHide=!0,nt.wxa)return null;var n=document.createElement("div");n.domBelongToZr=!0,this.el=n;var i=this._zr=t.getZr(),a=r.appendTo,o=a&&(pe(a)?document.querySelector(a):sf(a)?a:Ce(a)&&a(t.getDom()));RH(this._styleCoord,i,o,t.getWidth()/2,t.getHeight()/2),(o||t.getDom()).appendChild(n),this._api=t,this._container=o;var s=this;n.onmouseenter=function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0},n.onmousemove=function(l){if(l=l||window.event,!s._enterable){var u=i.handler,c=i.painter.getViewportRoot();Zi(c,l,!0),u.dispatch("mousemove",l)}},n.onmouseleave=function(){s._inContent=!1,s._enterable&&s._show&&s.hideLater(s._hideDelay)}}return e.prototype.update=function(t){if(!this._container){var r=this._api.getDom(),n=rXe(r,"position"),i=r.style;i.position!=="absolute"&&n!=="absolute"&&(i.position="relative")}var a=t.get("alwaysShowContent");a&&this._moveIfResized(),this._alwaysShowContent=a,this._enableDisplayTransition=t.get("displayTransition")&&t.get("transitionDuration")>0,this.el.className=t.get("className")||""},e.prototype.show=function(t,r){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var n=this.el,i=n.style,a=this._styleCoord;n.innerHTML?i.cssText=iXe+uXe(t,!this._firstShow,this._longHide,this._enableDisplayTransition)+jH(a[0],a[1],!0)+("border-color:"+vf(r)+";")+(t.get("extraCssText")||"")+(";pointer-events:"+(this._enterable?"auto":"none")):i.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},e.prototype.setContent=function(t,r,n,i,a){var o=this.el;if(t==null){o.innerHTML="";return}var s="";if(pe(a)&&n.get("trigger")==="item"&&!_ie(n)&&(s=oXe(n,i,a)),pe(t))o.innerHTML=t+s;else if(t){o.innerHTML="",ae(t)||(t=[t]);for(var l=0;l=0?this._tryShow(a,o):i==="leave"&&this._hide(o))},this))},t.prototype._keepShow=function(){var r=this._tooltipModel,n=this._ecModel,i=this._api,a=r.get("triggerOn");if(this._lastX!=null&&this._lastY!=null&&a!=="none"&&a!=="click"){var o=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout(function(){!i.isDisposed()&&o.manuallyShowTip(r,n,i,{x:o._lastX,y:o._lastY,dataByCoordSys:o._lastDataByCoordSys})})}},t.prototype.manuallyShowTip=function(r,n,i,a){if(!(a.from===this.uid||nt.node||!i.getDom())){var o=$H(a,i);this._ticket="";var s=a.dataByCoordSys,l=mXe(a,n,i);if(l){var u=l.el.getBoundingRect().clone();u.applyTransform(l.el.transform),this._tryShow({offsetX:u.x+u.width/2,offsetY:u.y+u.height/2,target:l.el,position:a.position,positionDefault:"bottom"},o)}else if(a.tooltip&&a.x!=null&&a.y!=null){var c=hXe;c.x=a.x,c.y=a.y,c.update(),Ne(c).tooltipConfig={name:null,option:a.tooltip},this._tryShow({offsetX:a.x,offsetY:a.y,target:c},o)}else if(s)this._tryShow({offsetX:a.x,offsetY:a.y,position:a.position,dataByCoordSys:s,tooltipOption:a.tooltipOption},o);else if(a.seriesIndex!=null){if(this._manuallyAxisShowTip(r,n,i,a))return;var f=aie(a,n),h=f.point[0],d=f.point[1];h!=null&&d!=null&&this._tryShow({offsetX:h,offsetY:d,target:f.el,position:a.position,positionDefault:"bottom"},o)}else a.x!=null&&a.y!=null&&(i.dispatchAction({type:"updateAxisPointer",x:a.x,y:a.y}),this._tryShow({offsetX:a.x,offsetY:a.y,position:a.position,target:i.getZr().findHover(a.x,a.y).target},o))}},t.prototype.manuallyHideTip=function(r,n,i,a){var o=this._tooltipContent;this._tooltipModel&&o.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,a.from!==this.uid&&this._hide($H(a,i))},t.prototype._manuallyAxisShowTip=function(r,n,i,a){var o=a.seriesIndex,s=a.dataIndex,l=n.getComponent("axisPointer").coordSysAxesInfo;if(!(o==null||s==null||l==null)){var u=n.getSeriesByIndex(o);if(u){var c=u.getData(),f=og([c.getItemModel(s),u,(u.coordinateSystem||{}).model],this._tooltipModel);if(f.get("trigger")==="axis")return i.dispatchAction({type:"updateAxisPointer",seriesIndex:o,dataIndex:s,position:a.position}),!0}}},t.prototype._tryShow=function(r,n){var i=r.target,a=this._tooltipModel;if(a){this._lastX=r.offsetX,this._lastY=r.offsetY;var o=r.dataByCoordSys;if(o&&o.length)this._showAxisTooltip(o,r);else if(i){var s=Ne(i);if(s.ssrType==="legend")return;this._lastDataByCoordSys=null;var l,u;Nc(i,function(c){if(c.tooltipDisabled)return l=u=null,!0;l||u||(Ne(c).dataIndex!=null?l=c:Ne(c).tooltipConfig!=null&&(u=c))},!0),l?this._showSeriesItemTooltip(r,l,n):u?this._showComponentItemTooltip(r,u,n):this._hide(n)}else this._lastDataByCoordSys=null,this._hide(n)}},t.prototype._showOrMove=function(r,n){var i=r.get("showDelay");n=ge(n,this),clearTimeout(this._showTimout),i>0?this._showTimout=setTimeout(n,i):n()},t.prototype._showAxisTooltip=function(r,n){var i=this._ecModel,a=this._tooltipModel,o=[n.offsetX,n.offsetY],s=og([n.tooltipOption],a),l=this._renderMode,u=[],c=Cr("section",{blocks:[],noHeader:!0}),f=[],h=new F2;R(r,function(_){R(_.dataByAxis,function(b){var S=i.getComponent(b.axisDim+"Axis",b.axisIndex),T=b.value;if(!(!S||T==null)){var C=tie(T,S.axis,i,b.seriesDataIndices,b.valueLabelOpt),A=Cr("section",{header:C,noHeader:!Ci(C),sortBlocks:!0,blocks:[]});c.blocks.push(A),R(b.seriesDataIndices,function(P){var I=i.getSeriesByIndex(P.seriesIndex),k=P.dataIndexInside,E=I.getDataParams(k);if(!(E.dataIndex<0)){E.axisDim=b.axisDim,E.axisIndex=b.axisIndex,E.axisType=b.axisType,E.axisId=b.axisId,E.axisValue=Ew(S.axis,{value:T}),E.axisValueLabel=C,E.marker=h.makeTooltipMarker("item",vf(E.color),l);var D=r6(I.formatTooltip(k,!0,null)),N=D.frag;if(N){var z=og([I],a).get("valueFormatter");A.blocks.push(z?ne({valueFormatter:z},N):N)}D.text&&f.push(D.text),u.push(E)}})}})}),c.blocks.reverse(),f.reverse();var d=n.position,v=s.get("order"),g=l6(c,h,l,v,i.get("useUTC"),s.get("textStyle"));g&&f.unshift(g);var m=l==="richText"?` +*`,"g")),n={series:[]};return R(r,function(i,a){if(jYe(i)){var o=RYe(i),s=t[a],l=s.axisDim+"Axis";s&&(n[l]=n[l]||[],n[l][s.axisIndex]={data:o.categories},n.series=n.series.concat(o.series))}else{var o=BYe(i);n.series.push(o)}}),n}var $Ye=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){setTimeout(function(){n.dispatchAction({type:"hideTip"})});var i=n.getDom(),a=this.model;this._dom&&i.removeChild(this._dom);var o=document.createElement("div");o.style.cssText="position:absolute;top:0;bottom:0;left:0;right:0;padding:5px",o.style.backgroundColor=a.get("backgroundColor")||J.color.neutral00;var s=document.createElement("h4"),l=a.get("lang")||[];s.innerHTML=l[0]||a.get("title"),s.style.cssText="margin:10px 20px",s.style.color=a.get("textColor");var u=document.createElement("div"),c=document.createElement("textarea");u.style.cssText="overflow:auto";var f=a.get("optionToContent"),h=a.get("contentToOption"),d=NYe(r);if(Ae(f)){var v=f(n.getOption());ge(v)?u.innerHTML=v:lf(v)&&u.appendChild(v)}else{c.readOnly=a.get("readOnly");var m=c.style;m.cssText="display:block;width:100%;height:100%;font-family:monospace;font-size:14px;line-height:1.6rem;resize:none;box-sizing:border-box;outline:none",m.color=a.get("textColor"),m.borderColor=a.get("textareaBorderColor"),m.backgroundColor=a.get("textareaColor"),c.value=d.value,u.appendChild(c)}var y=d.meta,x=document.createElement("div");x.style.cssText="position:absolute;bottom:5px;left:0;right:0";var _="float:right;margin-right:20px;border:none;cursor:pointer;padding:2px 5px;font-size:12px;border-radius:3px",b=document.createElement("div"),S=document.createElement("div");_+=";background-color:"+a.get("buttonColor"),_+=";color:"+a.get("buttonTextColor");var T=this;function C(){i.removeChild(o),T._dom=null}eI(b,"click",C),eI(S,"click",function(){if(h==null&&f!=null||h!=null&&f==null){C();return}var A;try{Ae(h)?A=h(u,n.getOption()):A=zYe(c.value,y)}catch(P){throw C(),new Error("Data view format error "+P)}A&&n.dispatchAction({type:"changeDataView",newOption:A}),C()}),b.innerHTML=l[1],S.innerHTML=l[2],S.style.cssText=b.style.cssText=_,!a.get("readOnly")&&x.appendChild(S),x.appendChild(b),o.appendChild(s),o.appendChild(u),o.appendChild(x),u.style.height=i.clientHeight-80+"px",i.appendChild(o),this._dom=o},t.prototype.remove=function(r,n){this._dom&&n.getDom().removeChild(this._dom)},t.prototype.dispose=function(r,n){this.remove(r,n)},t.getDefaultOption=function(r){var n={show:!0,readOnly:!1,optionToContent:null,contentToOption:null,icon:"M17.5,17.3H33 M17.5,17.3H33 M45.4,29.5h-28 M11.5,2v56H51V14.8L38.4,2H11.5z M38.4,2.2v12.7H51 M45.4,41.7h-28",title:r.getLocaleModel().get(["toolbox","dataView","title"]),lang:r.getLocaleModel().get(["toolbox","dataView","lang"]),backgroundColor:J.color.background,textColor:J.color.primary,textareaColor:J.color.background,textareaBorderColor:J.color.border,buttonColor:J.color.accent50,buttonTextColor:J.color.neutral00};return n},t}(ea);function FYe(e,t){return se(e,function(r,n){var i=t&&t[n];if(Le(i)&&!ae(i)){var a=Le(r)&&!ae(r);a||(r={value:r});var o=i.name!=null&&r.name==null;return r=ke(r,i),o&&delete r.name,r}else return r})}to({type:"changeDataView",event:"dataViewChanged",update:"prepareAndUpdate"},function(e,t){var r=[];R(e.newOption.series,function(n){var i=t.getSeriesByName(n.name)[0];if(!i)r.push(ne({type:"scatter"},n));else{var a=i.get("data");r.push({name:n.name,data:FYe(n.data,a)})}}),t.mergeOption(ke({series:r},e.newOption))});var _ie=R,bie=Je();function VYe(e,t){var r=zR(e);_ie(t,function(n,i){for(var a=r.length-1;a>=0;a--){var o=r[a];if(o[i])break}if(a<0){var s=e.queryComponents({mainType:"dataZoom",subType:"select",id:i})[0];if(s){var l=s.getPercentRange();r[0][i]={dataZoomId:i,start:l[0],end:l[1]}}}}),r.push(t)}function GYe(e){var t=zR(e),r=t[t.length-1];t.length>1&&t.pop();var n={};return _ie(r,function(i,a){for(var o=t.length-1;o>=0;o--)if(i=t[o][a],i){n[a]=i;break}}),n}function WYe(e){bie(e).snapshots=null}function HYe(e){return zR(e).length}function zR(e){var t=bie(e);return t.snapshots||(t.snapshots=[{}]),t.snapshots}var UYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){WYe(r),n.dispatchAction({type:"restore",from:this.uid})},t.getDefaultOption=function(r){var n={show:!0,icon:"M3.8,33.4 M47,18.9h9.8V8.7 M56.3,20.1 C52.1,9,40.5,0.6,26.8,2.1C12.6,3.7,1.6,16.2,2.1,30.6 M13,41.1H3.1v10.2 M3.7,39.9c4.2,11.1,15.8,19.5,29.5,18 c14.2-1.6,25.2-14.1,24.7-28.5",title:r.getLocaleModel().get(["toolbox","restore","title"])};return n},t}(ea);to({type:"restore",event:"restore",update:"prepareAndUpdate"},function(e,t){t.resetOption("recreate")});var ZYe=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],$R=function(){function e(t,r,n){var i=this;this._targetInfoList=[];var a=IH(r,t);R(YYe,function(o,s){(!n||!n.include||We(n.include,s)>=0)&&o(a,i._targetInfoList)})}return e.prototype.setOutputRanges=function(t,r){return this.matchOutputRanges(t,r,function(n,i,a){if((n.coordRanges||(n.coordRanges=[])).push(i),!n.coordRange){n.coordRange=i;var o=oP[n.brushType](0,a,i);n.__rangeOffset={offset:NH[n.brushType](o.values,n.range,[1,1]),xyMinMax:o.xyMinMax}}}),t},e.prototype.matchOutputRanges=function(t,r,n){R(t,function(i){var a=this.findTargetInfo(i,r);a&&a!==!0&&R(a.coordSyses,function(o){var s=oP[i.brushType](1,o,i.range,!0);n(i,s.values,o,r)})},this)},e.prototype.setInputRanges=function(t,r){R(t,function(n){var i=this.findTargetInfo(n,r);if(n.range=n.range||[],i&&i!==!0){n.panelId=i.panelId;var a=oP[n.brushType](0,i.coordSys,n.coordRange),o=n.__rangeOffset;n.range=o?NH[n.brushType](a.values,o.offset,XYe(a.xyMinMax,o.xyMinMax)):a.values}},this)},e.prototype.makePanelOpts=function(t,r){return se(this._targetInfoList,function(n){var i=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:r?r(n):null,clipPath:Ane(i),isTargetByCursor:Pne(i,t,n.coordSysModel),getLinearBrushOtherExtent:Mne(i)}})},e.prototype.controlSeries=function(t,r,n){var i=this.findTargetInfo(t,n);return i===!0||i&&We(i.coordSyses,r.coordinateSystem)>=0},e.prototype.findTargetInfo=function(t,r){for(var n=this._targetInfoList,i=IH(r,t),a=0;ae[1]&&e.reverse(),e}function IH(e,t){return hd(e,t,{includeMainTypes:ZYe})}var YYe={grid:function(e,t){var r=e.xAxisModels,n=e.yAxisModels,i=e.gridModels,a=we(),o={},s={};!r&&!n&&!i||(R(r,function(l){var u=l.axis.grid.model;a.set(u.id,u),o[u.id]=!0}),R(n,function(l){var u=l.axis.grid.model;a.set(u.id,u),s[u.id]=!0}),R(i,function(l){a.set(l.id,l),o[l.id]=!0,s[l.id]=!0}),a.each(function(l){var u=l.coordinateSystem,c=[];R(u.getCartesians(),function(f,h){(We(r,f.getAxis("x").model)>=0||We(n,f.getAxis("y").model)>=0)&&c.push(f)}),t.push({panelId:"grid--"+l.id,gridModel:l,coordSysModel:l,coordSys:c[0],coordSyses:c,getPanelRect:OH.grid,xAxisDeclared:o[l.id],yAxisDeclared:s[l.id]})}))},geo:function(e,t){R(e.geoModels,function(r){var n=r.coordinateSystem;t.push({panelId:"geo--"+r.id,geoModel:r,coordSysModel:r,coordSys:n,coordSyses:[n],getPanelRect:OH.geo})})}},EH=[function(e,t){var r=e.xAxisModel,n=e.yAxisModel,i=e.gridModel;return!i&&r&&(i=r.axis.grid.model),!i&&n&&(i=n.axis.grid.model),i&&i===t.gridModel},function(e,t){var r=e.geoModel;return r&&r===t.geoModel}],OH={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var e=this.coordSys,t=e.getBoundingRect().clone();return t.applyTransform(Ql(e)),t}},oP={lineX:Fe(DH,0),lineY:Fe(DH,1),rect:function(e,t,r,n){var i=e?t.pointToData([r[0][0],r[1][0]],n):t.dataToPoint([r[0][0],r[1][0]],n),a=e?t.pointToData([r[0][1],r[1][1]],n):t.dataToPoint([r[0][1],r[1][1]],n),o=[HE([i[0],a[0]]),HE([i[1],a[1]])];return{values:o,xyMinMax:o}},polygon:function(e,t,r,n){var i=[[1/0,-1/0],[1/0,-1/0]],a=se(r,function(o){var s=e?t.pointToData(o,n):t.dataToPoint(o,n);return i[0][0]=Math.min(i[0][0],s[0]),i[1][0]=Math.min(i[1][0],s[1]),i[0][1]=Math.max(i[0][1],s[0]),i[1][1]=Math.max(i[1][1],s[1]),s});return{values:a,xyMinMax:i}}};function DH(e,t,r,n){var i=r.getAxis(["x","y"][e]),a=HE(se([0,1],function(s){return t?i.coordToData(i.toLocalCoord(n[s]),!0):i.toGlobalCoord(i.dataToCoord(n[s]))})),o=[];return o[e]=a,o[1-e]=[NaN,NaN],{values:a,xyMinMax:o}}var NH={lineX:Fe(jH,0),lineY:Fe(jH,1),rect:function(e,t,r){return[[e[0][0]-r[0]*t[0][0],e[0][1]-r[0]*t[0][1]],[e[1][0]-r[1]*t[1][0],e[1][1]-r[1]*t[1][1]]]},polygon:function(e,t,r){return se(e,function(n,i){return[n[0]-r[0]*t[i][0],n[1]-r[1]*t[i][1]]})}};function jH(e,t,r,n){return[t[0]-n[e]*r[0],t[1]-n[e]*r[1]]}function XYe(e,t){var r=RH(e),n=RH(t),i=[r[0]/n[0],r[1]/n[1]];return isNaN(i[0])&&(i[0]=1),isNaN(i[1])&&(i[1]=1),i}function RH(e){return e?[e[0][1]-e[0][0],e[1][1]-e[1][0]]:[NaN,NaN]}var UE=R,qYe=IRe("toolbox-dataZoom_"),KYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(r,n,i,a){this._brushController||(this._brushController=new fR(i.getZr()),this._brushController.on("brush",me(this._onBrush,this)).mount()),eXe(r,n,this,a,i),QYe(r,n)},t.prototype.onclick=function(r,n,i){JYe[i].call(this)},t.prototype.remove=function(r,n){this._brushController&&this._brushController.unmount()},t.prototype.dispose=function(r,n){this._brushController&&this._brushController.dispose()},t.prototype._onBrush=function(r){var n=r.areas;if(!r.isEnd||!n.length)return;var i={},a=this.ecModel;this._brushController.updateCovers([]);var o=new $R(FR(this.model),a,{include:["grid"]});o.matchOutputRanges(n,a,function(u,c,f){if(f.type==="cartesian2d"){var h=u.brushType;h==="rect"?(s("x",f,c[0]),s("y",f,c[1])):s({lineX:"x",lineY:"y"}[h],f,c)}}),VYe(a,i),this._dispatchZoomAction(i);function s(u,c,f){var h=c.getAxis(u),d=h.model,v=l(u,d,a),m=v.findRepresentativeAxisProxy(d).getMinMaxSpan();(m.minValueSpan!=null||m.maxValueSpan!=null)&&(f=hu(0,f.slice(),h.scale.getExtent(),0,m.minValueSpan,m.maxValueSpan)),v&&(i[v.id]={dataZoomId:v.id,startValue:f[0],endValue:f[1]})}function l(u,c,f){var h;return f.eachComponent({mainType:"dataZoom",subType:"select"},function(d){var v=d.getAxisModel(u,c.componentIndex);v&&(h=d)}),h}},t.prototype._dispatchZoomAction=function(r){var n=[];UE(r,function(i,a){n.push(Me(i))}),n.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:n})},t.getDefaultOption=function(r){var n={show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:r.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:J.color.backgroundTint}};return n},t}(ea),JYe={zoom:function(){var e=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:e})},back:function(){this._dispatchZoomAction(GYe(this.ecModel))}};function FR(e){var t={xAxisIndex:e.get("xAxisIndex",!0),yAxisIndex:e.get("yAxisIndex",!0),xAxisId:e.get("xAxisId",!0),yAxisId:e.get("yAxisId",!0)};return t.xAxisIndex==null&&t.xAxisId==null&&(t.xAxisIndex="all"),t.yAxisIndex==null&&t.yAxisId==null&&(t.yAxisIndex="all"),t}function QYe(e,t){e.setIconStatus("back",HYe(t)>1?"emphasis":"normal")}function eXe(e,t,r,n,i){var a=r._isZoomActive;n&&n.type==="takeGlobalCursor"&&(a=n.key==="dataZoomSelect"?n.dataZoomSelectActive:!1),r._isZoomActive=a,e.setIconStatus("zoom",a?"emphasis":"normal");var o=new $R(FR(e),t,{include:["grid"]}),s=o.makePanelOpts(i,function(l){return l.xAxisDeclared&&!l.yAxisDeclared?"lineX":!l.xAxisDeclared&&l.yAxisDeclared?"lineY":"rect"});r._brushController.setPanels(s).enableBrush(a&&s.length?{brushType:"auto",brushStyle:e.getModel("brushStyle").getItemStyle()}:!1)}hBe("dataZoom",function(e){var t=e.getComponent("toolbox",0),r=["feature","dataZoom"];if(!t||t.get(r)==null)return;var n=t.getModel(r),i=[],a=FR(n),o=hd(e,a);UE(o.xAxisModels,function(l){return s(l,"xAxis","xAxisIndex")}),UE(o.yAxisModels,function(l){return s(l,"yAxis","yAxisIndex")});function s(l,u,c){var f=l.componentIndex,h={type:"select",$fromToolbox:!0,filterMode:n.get("filterMode",!0)||"filter",id:qYe+u+f};h[c]=f,i.push(h)}return i});function tXe(e){e.registerComponentModel(AYe),e.registerComponentView(MYe),kh("saveAsImage",kYe),kh("magicType",IYe),kh("dataView",$Ye),kh("dataZoom",KYe),kh("restore",UYe),Ze(CYe)}var rXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="tooltip",t.dependencies=["axisPointer"],t.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,displayTransition:!0,enterable:!1,backgroundColor:J.color.neutral00,shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,defaultBorderColor:J.color.border,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:J.color.borderShade,width:1,type:"dashed",textStyle:{}}},textStyle:{color:J.color.tertiary,fontSize:14}},t}(Ke);function wie(e){var t=e.get("confine");return t!=null?!!t:e.get("renderMode")==="richText"}function Sie(e){if(nt.domSupported){for(var t=document.documentElement.style,r=0,n=e.length;r-1?(s+="top:50%",l+="translateY(-50%) rotate("+(u=a==="left"?-225:-45)+"deg)"):(s+="left:50%",l+="translateX(-50%) rotate("+(u=a==="top"?225:45)+"deg)");var c=u*Math.PI/180,f=o+i,h=f*Math.abs(Math.cos(c))+f*Math.abs(Math.sin(c)),d=Math.round(((h-Math.SQRT2*i)/2+Math.SQRT2*i-(h-f)/2)*100)/100;s+=";"+a+":-"+d+"px";var v=t+" solid "+i+"px;",m=["position:absolute;width:"+o+"px;height:"+o+"px;z-index:-1;",s+";"+l+";","border-bottom:"+v,"border-right:"+v,"background-color:"+n+";"];return'
'}function uXe(e,t,r){var n="cubic-bezier(0.23,1,0.32,1)",i="",a="";return r&&(i=" "+e/2+"s "+n,a="opacity"+i+",visibility"+i),t||(i=" "+e+"s "+n,a+=(a.length?",":"")+(nt.transformSupported?""+VR+i:",left"+i+",top"+i)),aXe+":"+a}function BH(e,t,r){var n=e.toFixed(0)+"px",i=t.toFixed(0)+"px";if(!nt.transformSupported)return r?"top:"+i+";left:"+n+";":[["top",i],["left",n]];var a=nt.transform3dSupported,o="translate"+(a?"3d":"")+"("+n+","+i+(a?",0":"")+")";return r?"top:0;left:0;"+VR+":"+o+";":[["top",0],["left",0],[Tie,o]]}function cXe(e){var t=[],r=e.get("fontSize"),n=e.getTextColor();n&&t.push("color:"+n),t.push("font:"+e.getFont());var i=Se(e.get("lineHeight"),Math.round(r*3/2));r&&t.push("line-height:"+i+"px");var a=e.get("textShadowColor"),o=e.get("textShadowBlur")||0,s=e.get("textShadowOffsetX")||0,l=e.get("textShadowOffsetY")||0;return a&&o&&t.push("text-shadow:"+s+"px "+l+"px "+o+"px "+a),R(["decoration","align"],function(u){var c=e.get(u);c&&t.push("text-"+u+":"+c)}),t.join(";")}function fXe(e,t,r,n){var i=[],a=e.get("transitionDuration"),o=e.get("backgroundColor"),s=e.get("shadowBlur"),l=e.get("shadowColor"),u=e.get("shadowOffsetX"),c=e.get("shadowOffsetY"),f=e.getModel("textStyle"),h=dee(e,"html"),d=u+"px "+c+"px "+s+"px "+l;return i.push("box-shadow:"+d),t&&a>0&&i.push(uXe(a,r,n)),o&&i.push("background-color:"+o),R(["width","color","radius"],function(v){var m="border-"+v,y=lj(m),x=e.get(y);x!=null&&i.push(m+":"+x+(v==="color"?"":"px"))}),i.push(cXe(f)),h!=null&&i.push("padding:"+Hv(h).join("px ")+"px"),i.join(";")+";"}function zH(e,t,r,n,i){var a=t&&t.painter;if(r){var o=a&&a.getViewportRoot();o&&qNe(e,o,r,n,i)}else{e[0]=n,e[1]=i;var s=a&&a.getViewportRootOffset();s&&(e[0]+=s.offsetLeft,e[1]+=s.offsetTop)}e[2]=e[0]/t.getWidth(),e[3]=e[1]/t.getHeight()}var hXe=function(){function e(t,r){if(this._show=!1,this._styleCoord=[0,0,0,0],this._enterable=!0,this._alwaysShowContent=!1,this._firstShow=!0,this._longHide=!0,nt.wxa)return null;var n=document.createElement("div");n.domBelongToZr=!0,this.el=n;var i=this._zr=t.getZr(),a=r.appendTo,o=a&&(ge(a)?document.querySelector(a):lf(a)?a:Ae(a)&&a(t.getDom()));zH(this._styleCoord,i,o,t.getWidth()/2,t.getHeight()/2),(o||t.getDom()).appendChild(n),this._api=t,this._container=o;var s=this;n.onmouseenter=function(){s._enterable&&(clearTimeout(s._hideTimeout),s._show=!0),s._inContent=!0},n.onmousemove=function(l){if(l=l||window.event,!s._enterable){var u=i.handler,c=i.painter.getViewportRoot();Zi(c,l,!0),u.dispatch("mousemove",l)}},n.onmouseleave=function(){s._inContent=!1,s._enterable&&s._show&&s.hideLater(s._hideDelay)}}return e.prototype.update=function(t){if(!this._container){var r=this._api.getDom(),n=iXe(r,"position"),i=r.style;i.position!=="absolute"&&n!=="absolute"&&(i.position="relative")}var a=t.get("alwaysShowContent");a&&this._moveIfResized(),this._alwaysShowContent=a,this._enableDisplayTransition=t.get("displayTransition")&&t.get("transitionDuration")>0,this.el.className=t.get("className")||""},e.prototype.show=function(t,r){clearTimeout(this._hideTimeout),clearTimeout(this._longHideTimeout);var n=this.el,i=n.style,a=this._styleCoord;n.innerHTML?i.cssText=oXe+fXe(t,!this._firstShow,this._longHide,this._enableDisplayTransition)+BH(a[0],a[1],!0)+("border-color:"+pf(r)+";")+(t.get("extraCssText")||"")+(";pointer-events:"+(this._enterable?"auto":"none")):i.display="none",this._show=!0,this._firstShow=!1,this._longHide=!1},e.prototype.setContent=function(t,r,n,i,a){var o=this.el;if(t==null){o.innerHTML="";return}var s="";if(ge(a)&&n.get("trigger")==="item"&&!wie(n)&&(s=lXe(n,i,a)),ge(t))o.innerHTML=t+s;else if(t){o.innerHTML="",ae(t)||(t=[t]);for(var l=0;l=0?this._tryShow(a,o):i==="leave"&&this._hide(o))},this))},t.prototype._keepShow=function(){var r=this._tooltipModel,n=this._ecModel,i=this._api,a=r.get("triggerOn");if(this._lastX!=null&&this._lastY!=null&&a!=="none"&&a!=="click"){var o=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout(function(){!i.isDisposed()&&o.manuallyShowTip(r,n,i,{x:o._lastX,y:o._lastY,dataByCoordSys:o._lastDataByCoordSys})})}},t.prototype.manuallyShowTip=function(r,n,i,a){if(!(a.from===this.uid||nt.node||!i.getDom())){var o=VH(a,i);this._ticket="";var s=a.dataByCoordSys,l=xXe(a,n,i);if(l){var u=l.el.getBoundingRect().clone();u.applyTransform(l.el.transform),this._tryShow({offsetX:u.x+u.width/2,offsetY:u.y+u.height/2,target:l.el,position:a.position,positionDefault:"bottom"},o)}else if(a.tooltip&&a.x!=null&&a.y!=null){var c=vXe;c.x=a.x,c.y=a.y,c.update(),je(c).tooltipConfig={name:null,option:a.tooltip},this._tryShow({offsetX:a.x,offsetY:a.y,target:c},o)}else if(s)this._tryShow({offsetX:a.x,offsetY:a.y,position:a.position,dataByCoordSys:s,tooltipOption:a.tooltipOption},o);else if(a.seriesIndex!=null){if(this._manuallyAxisShowTip(r,n,i,a))return;var f=sie(a,n),h=f.point[0],d=f.point[1];h!=null&&d!=null&&this._tryShow({offsetX:h,offsetY:d,target:f.el,position:a.position,positionDefault:"bottom"},o)}else a.x!=null&&a.y!=null&&(i.dispatchAction({type:"updateAxisPointer",x:a.x,y:a.y}),this._tryShow({offsetX:a.x,offsetY:a.y,position:a.position,target:i.getZr().findHover(a.x,a.y).target},o))}},t.prototype.manuallyHideTip=function(r,n,i,a){var o=this._tooltipContent;this._tooltipModel&&o.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,a.from!==this.uid&&this._hide(VH(a,i))},t.prototype._manuallyAxisShowTip=function(r,n,i,a){var o=a.seriesIndex,s=a.dataIndex,l=n.getComponent("axisPointer").coordSysAxesInfo;if(!(o==null||s==null||l==null)){var u=n.getSeriesByIndex(o);if(u){var c=u.getData(),f=og([c.getItemModel(s),u,(u.coordinateSystem||{}).model],this._tooltipModel);if(f.get("trigger")==="axis")return i.dispatchAction({type:"updateAxisPointer",seriesIndex:o,dataIndex:s,position:a.position}),!0}}},t.prototype._tryShow=function(r,n){var i=r.target,a=this._tooltipModel;if(a){this._lastX=r.offsetX,this._lastY=r.offsetY;var o=r.dataByCoordSys;if(o&&o.length)this._showAxisTooltip(o,r);else if(i){var s=je(i);if(s.ssrType==="legend")return;this._lastDataByCoordSys=null;var l,u;Nc(i,function(c){if(c.tooltipDisabled)return l=u=null,!0;l||u||(je(c).dataIndex!=null?l=c:je(c).tooltipConfig!=null&&(u=c))},!0),l?this._showSeriesItemTooltip(r,l,n):u?this._showComponentItemTooltip(r,u,n):this._hide(n)}else this._lastDataByCoordSys=null,this._hide(n)}},t.prototype._showOrMove=function(r,n){var i=r.get("showDelay");n=me(n,this),clearTimeout(this._showTimout),i>0?this._showTimout=setTimeout(n,i):n()},t.prototype._showAxisTooltip=function(r,n){var i=this._ecModel,a=this._tooltipModel,o=[n.offsetX,n.offsetY],s=og([n.tooltipOption],a),l=this._renderMode,u=[],c=Ar("section",{blocks:[],noHeader:!0}),f=[],h=new F2;R(r,function(_){R(_.dataByAxis,function(b){var S=i.getComponent(b.axisDim+"Axis",b.axisIndex),T=b.value;if(!(!S||T==null)){var C=nie(T,S.axis,i,b.seriesDataIndices,b.valueLabelOpt),A=Ar("section",{header:C,noHeader:!Ci(C),sortBlocks:!0,blocks:[]});c.blocks.push(A),R(b.seriesDataIndices,function(P){var I=i.getSeriesByIndex(P.seriesIndex),k=P.dataIndexInside,O=I.getDataParams(k);if(!(O.dataIndex<0)){O.axisDim=b.axisDim,O.axisIndex=b.axisIndex,O.axisType=b.axisType,O.axisId=b.axisId,O.axisValue=Ow(S.axis,{value:T}),O.axisValueLabel=C,O.marker=h.makeTooltipMarker("item",pf(O.color),l);var D=iG(I.formatTooltip(k,!0,null)),N=D.frag;if(N){var z=og([I],a).get("valueFormatter");A.blocks.push(z?ne({valueFormatter:z},N):N)}D.text&&f.push(D.text),u.push(O)}})}})}),c.blocks.reverse(),f.reverse();var d=n.position,v=s.get("order"),m=cG(c,h,l,v,i.get("useUTC"),s.get("textStyle"));m&&f.unshift(m);var y=l==="richText"?` -`:"
",x=f.join(m);this._showOrMove(s,function(){this._updateContentNotChangedOnAxis(r,u)?this._updatePosition(s,d,o[0],o[1],this._tooltipContent,u):this._showTooltipContent(s,x,u,Math.random()+"",o[0],o[1],d,null,h)})},t.prototype._showSeriesItemTooltip=function(r,n,i){var a=this._ecModel,o=Ne(n),s=o.seriesIndex,l=a.getSeriesByIndex(s),u=o.dataModel||l,c=o.dataIndex,f=o.dataType,h=u.getData(f),d=this._renderMode,v=r.positionDefault,g=og([h.getItemModel(c),u,l&&(l.coordinateSystem||{}).model],this._tooltipModel,v?{position:v}:null),m=g.get("trigger");if(!(m!=null&&m!=="item")){var x=u.getDataParams(c,f),_=new F2;x.marker=_.makeTooltipMarker("item",vf(x.color),d);var b=r6(u.formatTooltip(c,!1,f)),S=g.get("order"),T=g.get("valueFormatter"),C=b.frag,A=C?l6(T?ne({valueFormatter:T},C):C,_,d,S,a.get("useUTC"),g.get("textStyle")):b.text,P="item_"+u.name+"_"+c;this._showOrMove(g,function(){this._showTooltipContent(g,A,x,P,r.offsetX,r.offsetY,r.position,r.target,_)}),i({type:"showTip",dataIndexInside:c,dataIndex:h.getRawIndex(c),seriesIndex:s,from:this.uid})}},t.prototype._showComponentItemTooltip=function(r,n,i){var a=this._renderMode==="html",o=Ne(n),s=o.tooltipConfig,l=s.option||{},u=l.encodeHTMLContent;if(pe(l)){var c=l;l={content:c,formatter:c},u=!0}u&&a&&l.content&&(l=Ae(l),l.content=In(l.content));var f=[l],h=this._ecModel.getComponent(o.componentMainType,o.componentIndex);h&&f.push(h),f.push({formatter:l.content});var d=r.positionDefault,v=og(f,this._tooltipModel,d?{position:d}:null),g=v.get("content"),m=Math.random()+"",x=new F2;this._showOrMove(v,function(){var _=Ae(v.get("formatterParams")||{});this._showTooltipContent(v,g,_,m,r.offsetX,r.offsetY,r.position,n,x)}),i({type:"showTip",from:this.uid})},t.prototype._showTooltipContent=function(r,n,i,a,o,s,l,u,c){if(this._ticket="",!(!r.get("showContent")||!r.get("show"))){var f=this._tooltipContent;f.setEnterable(r.get("enterable"));var h=r.get("formatter");l=l||r.get("position");var d=n,v=this._getNearestPoint([o,s],i,r.get("trigger"),r.get("borderColor"),r.get("defaultBorderColor",!0)),g=v.color;if(h)if(pe(h)){var m=r.ecModel.get("useUTC"),x=ae(i)?i[0]:i,_=x&&x.axisType&&x.axisType.indexOf("time")>=0;d=h,_&&(d=y0(x.axisValue,d,m)),d=oj(d,i,!0)}else if(Ce(h)){var b=ge(function(S,T){S===this._ticket&&(f.setContent(T,c,r,g,l),this._updatePosition(r,l,o,s,f,i,u))},this);this._ticket=a,d=h(i,a,b)}else d=h;f.setContent(d,c,r,g,l),f.show(r,g),this._updatePosition(r,l,o,s,f,i,u)}},t.prototype._getNearestPoint=function(r,n,i,a,o){if(i==="axis"||ae(n))return{color:a||o};if(!ae(n))return{color:a||n.color||n.borderColor}},t.prototype._updatePosition=function(r,n,i,a,o,s,l){var u=this._api.getWidth(),c=this._api.getHeight();n=n||r.get("position");var f=o.getSize(),h=r.get("align"),d=r.get("verticalAlign"),v=l&&l.getBoundingRect().clone();if(l&&v.applyTransform(l.transform),Ce(n)&&(n=n([i,a],s,o.el,v,{viewSize:[u,c],contentSize:f.slice()})),ae(n))i=ve(n[0],u),a=ve(n[1],c);else if(ke(n)){var g=n;g.width=f[0],g.height=f[1];var m=zt(g,{width:u,height:c});i=m.x,a=m.y,h=null,d=null}else if(pe(n)&&l){var x=gXe(n,v,f,r.get("borderWidth"));i=x[0],a=x[1]}else{var x=vXe(i,a,o,u,c,h?null:20,d?null:20);i=x[0],a=x[1]}if(h&&(i-=FH(h)?f[0]/2:h==="right"?f[0]:0),d&&(a-=FH(d)?f[1]/2:d==="bottom"?f[1]:0),_ie(r)){var x=pXe(i,a,o,u,c);i=x[0],a=x[1]}o.moveTo(i,a)},t.prototype._updateContentNotChangedOnAxis=function(r,n){var i=this._lastDataByCoordSys,a=this._cbParamsList,o=!!i&&i.length===r.length;return o&&R(i,function(s,l){var u=s.dataByAxis||[],c=r[l]||{},f=c.dataByAxis||[];o=o&&u.length===f.length,o&&R(u,function(h,d){var v=f[d]||{},g=h.seriesDataIndices||[],m=v.seriesDataIndices||[];o=o&&h.value===v.value&&h.axisType===v.axisType&&h.axisId===v.axisId&&g.length===m.length,o&&R(g,function(x,_){var b=m[_];o=o&&x.seriesIndex===b.seriesIndex&&x.dataIndex===b.dataIndex}),a&&R(h.seriesDataIndices,function(x){var _=x.seriesIndex,b=n[_],S=a[_];b&&S&&S.data!==b.data&&(o=!1)})})}),this._lastDataByCoordSys=r,this._cbParamsList=n,!!o},t.prototype._hide=function(r){this._lastDataByCoordSys=null,r({type:"hideTip",from:this.uid})},t.prototype.dispose=function(r,n){nt.node||!n.getDom()||(Ay(this,"_updatePosition"),this._tooltipContent.dispose(),RO("itemTooltip",n))},t.type="tooltip",t}(kt);function og(e,t,r){var n=t.ecModel,i;r?(i=new et(r,n,n),i=new et(t.option,i,n)):i=t;for(var a=e.length-1;a>=0;a--){var o=e[a];o&&(o instanceof et&&(o=o.get("tooltip",!0)),pe(o)&&(o={formatter:o}),o&&(i=new et(o,i,n)))}return i}function $H(e,t){return e.dispatchAction||ge(t.dispatchAction,t)}function vXe(e,t,r,n,i,a,o){var s=r.getSize(),l=s[0],u=s[1];return a!=null&&(e+l+a+2>n?e-=l+a:e+=a),o!=null&&(t+u+o>i?t-=u+o:t+=o),[e,t]}function pXe(e,t,r,n,i){var a=r.getSize(),o=a[0],s=a[1];return e=Math.min(e+o,n)-o,t=Math.min(t+s,i)-s,e=Math.max(e,0),t=Math.max(t,0),[e,t]}function gXe(e,t,r,n){var i=r[0],a=r[1],o=Math.ceil(Math.SQRT2*n)+8,s=0,l=0,u=t.width,c=t.height;switch(e){case"inside":s=t.x+u/2-i/2,l=t.y+c/2-a/2;break;case"top":s=t.x+u/2-i/2,l=t.y-a-o;break;case"bottom":s=t.x+u/2-i/2,l=t.y+c+o;break;case"left":s=t.x-i-o,l=t.y+c/2-a/2;break;case"right":s=t.x+u+o,l=t.y+c/2-a/2}return[s,l]}function FH(e){return e==="center"||e==="middle"}function mXe(e,t,r){var n=PN(e).queryOptionMap,i=n.keys()[0];if(!(!i||i==="series")){var a=Rv(t,i,n.get(i),{useDefault:!1,enableAll:!1,enableNone:!1}),o=a.models[0];if(o){var s=r.getViewOfComponentModel(o),l;if(s.group.traverse(function(u){var c=Ne(u).tooltipConfig;if(c&&c.name===e.name)return l=u,!0}),l)return{componentMainType:i,componentIndex:o.componentIndex,el:l}}}}function yXe(e){Ze(M0),e.registerComponentModel(eXe),e.registerComponentView(dXe),e.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},sr),e.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},sr)}var xXe=["rect","polygon","keep","clear"];function _Xe(e,t){var r=Pt(e?e.brush:[]);if(r.length){var n=[];R(r,function(l){var u=l.hasOwnProperty("toolbox")?l.toolbox:[];u instanceof Array&&(n=n.concat(u))});var i=e&&e.toolbox;ae(i)&&(i=i[0]),i||(i={feature:{}},e.toolbox=[i]);var a=i.feature||(i.feature={}),o=a.brush||(a.brush={}),s=o.type||(o.type=[]);s.push.apply(s,n),bXe(s),t&&!s.length&&s.push.apply(s,xXe)}}function bXe(e){var t={};R(e,function(r){t[r]=1}),e.length=0,R(t,function(r,n){e.push(n)})}var VH=R;function GH(e){if(e){for(var t in e)if(e.hasOwnProperty(t))return!0}}function UO(e,t,r){var n={};return VH(t,function(a){var o=n[a]=i();VH(e[a],function(s,l){if(Hr.isValidType(l)){var u={type:l,visual:s};r&&r(u,a),o[l]=new Hr(u),l==="opacity"&&(u=Ae(u),u.type="colorAlpha",o.__hidden.__alphaForOpacity=new Hr(u))}})}),n;function i(){var a=function(){};a.prototype.__hidden=a.prototype;var o=new a;return o}}function Tie(e,t,r){var n;R(r,function(i){t.hasOwnProperty(i)&&GH(t[i])&&(n=!0)}),n&&R(r,function(i){t.hasOwnProperty(i)&&GH(t[i])?e[i]=Ae(t[i]):delete e[i]})}function wXe(e,t,r,n,i,a){var o={};R(e,function(f){var h=Hr.prepareVisualTypes(t[f]);o[f]=h});var s;function l(f){return gj(r,s,f)}function u(f,h){bee(r,s,f,h)}r.each(c);function c(f,h){s=f;var d=r.getRawDataItem(s);if(!(d&&d.visualMap===!1))for(var v=n.call(i,f),g=t[v],m=o[v],x=0,_=m.length;x<_;x++){var b=m[x];g[b]&&g[b].applyVisual(f,l,u)}}}function SXe(e,t,r,n){var i={};return R(e,function(a){var o=Hr.prepareVisualTypes(t[a]);i[a]=o}),{progress:function(o,s){var l;n!=null&&(l=s.getDimensionIndex(n));function u(T){return gj(s,f,T)}function c(T,C){bee(s,f,T,C)}for(var f,h=s.getStore();(f=o.next())!=null;){var d=s.getRawDataItem(f);if(!(d&&d.visualMap===!1))for(var v=n!=null?h.get(l,f):f,g=r(v),m=t[g],x=i[g],_=0,b=x.length;_t[0][1]&&(t[0][1]=a[0]),a[1]t[1][1]&&(t[1][1]=a[1])}return t&&YH(t)}};function YH(e){return new Oe(e[0][0],e[1][0],e[0][1]-e[0][0],e[1][1]-e[1][0])}var LXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){this.ecModel=r,this.api=n,this.model,(this._brushController=new lR(n.getZr())).on("brush",ge(this._onBrush,this)).mount()},t.prototype.render=function(r,n,i,a){this.model=r,this._updateController(r,n,i,a)},t.prototype.updateTransform=function(r,n,i,a){Cie(n),this._updateController(r,n,i,a)},t.prototype.updateVisual=function(r,n,i,a){this.updateTransform(r,n,i,a)},t.prototype.updateView=function(r,n,i,a){this._updateController(r,n,i,a)},t.prototype._updateController=function(r,n,i,a){(!a||a.$from!==r.id)&&this._brushController.setPanels(r.brushTargetManager.makePanelOpts(i)).enableBrush(r.brushOption).updateCovers(r.areas.slice())},t.prototype.dispose=function(){this._brushController.dispose()},t.prototype._onBrush=function(r){var n=this.model.id,i=this.model.brushTargetManager.setOutputRanges(r.areas,this.ecModel);(!r.isEnd||r.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:n,areas:Ae(i),$from:n}),r.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:n,areas:Ae(i),$from:n})},t.type="brush",t}(kt),IXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.areas=[],r.brushOption={},r}return t.prototype.optionUpdated=function(r,n){var i=this.option;!n&&Tie(i,r,["inBrush","outOfBrush"]);var a=i.inBrush=i.inBrush||{};i.outOfBrush=i.outOfBrush||{color:this.option.defaultOutOfBrushColor},a.hasOwnProperty("liftZ")||(a.liftZ=5)},t.prototype.setAreas=function(r){r&&(this.areas=se(r,function(n){return XH(this.option,n)},this))},t.prototype.setBrushOption=function(r){this.brushOption=XH(this.option,r),this.brushType=this.brushOption.brushType},t.type="brush",t.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],t.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:J.color.backgroundTint,borderColor:J.color.borderTint},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4,defaultOutOfBrushColor:J.color.disabled},t}(Ke);function XH(e,t){return He({brushType:e.brushType,brushMode:e.brushMode,transformable:e.transformable,brushStyle:new et(e.brushStyle).getItemStyle(),removeOnClick:e.removeOnClick,z:e.z},t,!0)}var OXe=["rect","polygon","lineX","lineY","keep","clear"],EXe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(r,n,i){var a,o,s;n.eachComponent({mainType:"brush"},function(l){a=l.brushType,o=l.brushOption.brushMode||"single",s=s||!!l.areas.length}),this._brushType=a,this._brushMode=o,R(r.get("type",!0),function(l){r.setIconStatus(l,(l==="keep"?o==="multiple":l==="clear"?s:l===a)?"emphasis":"normal")})},t.prototype.updateView=function(r,n,i){this.render(r,n,i)},t.prototype.getIcons=function(){var r=this.model,n=r.get("icon",!0),i={};return R(r.get("type",!0),function(a){n[a]&&(i[a]=n[a])}),i},t.prototype.onclick=function(r,n,i){var a=this._brushType,o=this._brushMode;i==="clear"?(n.dispatchAction({type:"axisAreaSelect",intervals:[]}),n.dispatchAction({type:"brush",command:"clear",areas:[]})):n.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:i==="keep"?a:a===i?!1:i,brushMode:i==="keep"?o==="multiple"?"single":"multiple":o}})},t.getDefaultOption=function(r){var n={show:!0,type:OXe.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:r.getLocaleModel().get(["toolbox","brush","title"])};return n},t}(ea);function DXe(e){e.registerComponentView(LXe),e.registerComponentModel(IXe),e.registerPreprocessor(_Xe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,CXe),e.registerAction({type:"brush",event:"brush",update:"updateVisual"},function(t,r){r.eachComponent({mainType:"brush",query:t},function(n){n.setAreas(t.areas)})}),e.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},sr),e.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},sr),Ph("brush",EXe)}var NXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.layoutMode={type:"box",ignoreSize:!0},r}return t.type="title",t.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:"center",top:J.size.m,backgroundColor:J.color.transparent,borderColor:J.color.primary,borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:J.color.primary},subtextStyle:{fontSize:12,color:J.color.quaternary}},t}(Ke),jXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){if(this.group.removeAll(),!!r.get("show")){var a=this.group,o=r.getModel("textStyle"),s=r.getModel("subtextStyle"),l=r.get("textAlign"),u=be(r.get("textBaseline"),r.get("textVerticalAlign")),c=new at({style:Mt(o,{text:r.get("text"),fill:o.getTextColor()},{disableBox:!0}),z2:10}),f=c.getBoundingRect(),h=r.get("subtext"),d=new at({style:Mt(s,{text:h,fill:s.getTextColor(),y:f.height+r.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),v=r.get("link"),g=r.get("sublink"),m=r.get("triggerEvent",!0);c.silent=!v&&!m,d.silent=!g&&!m,v&&c.on("click",function(){ww(v,"_"+r.get("target"))}),g&&d.on("click",function(){ww(g,"_"+r.get("subtarget"))}),Ne(c).eventData=Ne(d).eventData=m?{componentType:"title",componentIndex:r.componentIndex}:null,a.add(c),h&&a.add(d);var x=a.getBoundingRect(),_=r.getBoxLayoutParams();_.width=x.width,_.height=x.height;var b=jr(r,i),S=zt(_,b.refContainer,r.get("padding"));l||(l=r.get("left")||r.get("right"),l==="middle"&&(l="center"),l==="right"?S.x+=S.width:l==="center"&&(S.x+=S.width/2)),u||(u=r.get("top")||r.get("bottom"),u==="center"&&(u="middle"),u==="bottom"?S.y+=S.height:u==="middle"&&(S.y+=S.height/2),u=u||"top"),a.x=S.x,a.y=S.y,a.markRedraw();var T={align:l,verticalAlign:u};c.setStyle(T),d.setStyle(T),x=a.getBoundingRect();var C=S.margin,A=r.getItemStyle(["color","opacity"]);A.fill=r.get("backgroundColor");var P=new Xe({shape:{x:x.x-C[3],y:x.y-C[0],width:x.width+C[1]+C[3],height:x.height+C[0]+C[2],r:r.get("borderRadius")},style:A,subPixelOptimize:!0,silent:!0});a.add(P)}},t.type="title",t}(kt);function RXe(e){e.registerComponentModel(NXe),e.registerComponentView(jXe)}var qH=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.layoutMode="box",r}return t.prototype.init=function(r,n,i){this.mergeDefaultAndTheme(r,i),this._initData()},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),this._initData()},t.prototype.setCurrentIndex=function(r){r==null&&(r=this.option.currentIndex);var n=this._data.count();this.option.loop?r=(r%n+n)%n:(r>=n&&(r=n-1),r<0&&(r=0)),this.option.currentIndex=r},t.prototype.getCurrentIndex=function(){return this.option.currentIndex},t.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},t.prototype.setPlayState=function(r){this.option.autoPlay=!!r},t.prototype.getPlayState=function(){return!!this.option.autoPlay},t.prototype._initData=function(){var r=this.option,n=r.data||[],i=r.axisType,a=this._names=[],o;i==="category"?(o=[],R(n,function(u,c){var f=Ir(jv(u),""),h;ke(u)?(h=Ae(u),h.value=c):h=c,o.push(h),a.push(f)})):o=n;var s={category:"ordinal",time:"time",value:"number"}[i]||"number",l=this._data=new En([{name:"value",type:s}],this);l.initData(o,a)},t.prototype.getData=function(){return this._data},t.prototype.getCategories=function(){if(this.get("axisType")==="category")return this._names.slice()},t.type="timeline",t.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:J.size.m,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:J.color.secondary},data:[]},t}(Ke),Aie=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="timeline.slider",t.defaultOption=Mu(qH.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:J.color.border,borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:J.color.accent10},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:J.color.tertiary},itemStyle:{color:J.color.accent20,borderWidth:0},checkpointStyle:{symbol:"circle",symbolSize:15,color:J.color.accent50,borderColor:J.color.accent50,borderWidth:0,shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"rgba(0, 0, 0, 0)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M15 0C23.2843 0 30 6.71573 30 15C30 23.2843 23.2843 30 15 30C6.71573 30 0 23.2843 0 15C0 6.71573 6.71573 0 15 0ZM15 3C8.37258 3 3 8.37258 3 15C3 21.6274 8.37258 27 15 27C21.6274 27 27 21.6274 27 15C27 8.37258 21.6274 3 15 3ZM11.5 10.6699C11.5 9.90014 12.3333 9.41887 13 9.80371L20.5 14.1338C21.1667 14.5187 21.1667 15.4813 20.5 15.8662L13 20.1963C12.3333 20.5811 11.5 20.0999 11.5 19.3301V10.6699Z",stopIcon:"path://M15 0C23.2843 0 30 6.71573 30 15C30 23.2843 23.2843 30 15 30C6.71573 30 0 23.2843 0 15C0 6.71573 6.71573 0 15 0ZM15 3C8.37258 3 3 8.37258 3 15C3 21.6274 8.37258 27 15 27C21.6274 27 27 21.6274 27 15C27 8.37258 21.6274 3 15 3ZM11.5 10C12.3284 10 13 10.6716 13 11.5V18.5C13 19.3284 12.3284 20 11.5 20C10.6716 20 10 19.3284 10 18.5V11.5C10 10.6716 10.6716 10 11.5 10ZM18.5 10C19.3284 10 20 10.6716 20 11.5V18.5C20 19.3284 19.3284 20 18.5 20C17.6716 20 17 19.3284 17 18.5V11.5C17 10.6716 17.6716 10 18.5 10Z",nextIcon:"path://M0.838834 18.7383C0.253048 18.1525 0.253048 17.2028 0.838834 16.617L7.55635 9.89949L0.838834 3.18198C0.253048 2.59619 0.253048 1.64645 0.838834 1.06066C1.42462 0.474874 2.37437 0.474874 2.96015 1.06066L10.7383 8.83883L10.8412 8.95277C11.2897 9.50267 11.2897 10.2963 10.8412 10.8462L10.7383 10.9602L2.96015 18.7383C2.37437 19.3241 1.42462 19.3241 0.838834 18.7383Z",prevIcon:"path://M10.9602 1.06066C11.5459 1.64645 11.5459 2.59619 10.9602 3.18198L4.24264 9.89949L10.9602 16.617C11.5459 17.2028 11.5459 18.1525 10.9602 18.7383C10.3744 19.3241 9.42462 19.3241 8.83883 18.7383L1.06066 10.9602L0.957771 10.8462C0.509245 10.2963 0.509245 9.50267 0.957771 8.95277L1.06066 8.83883L8.83883 1.06066C9.42462 0.474874 10.3744 0.474874 10.9602 1.06066Z",prevBtnSize:18,nextBtnSize:18,color:J.color.accent50,borderColor:J.color.accent50,borderWidth:0},emphasis:{label:{show:!0,color:J.color.accent60},itemStyle:{color:J.color.accent60,borderColor:J.color.accent60},controlStyle:{color:J.color.accent70,borderColor:J.color.accent70}},progress:{lineStyle:{color:J.color.accent30},itemStyle:{color:J.color.accent40}},data:[]}),t}(qH);cr(Aie,XT.prototype);var BXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="timeline",t}(kt),zXe=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this,r,n,i)||this;return o.type=a||"value",o}return t.prototype.getLabelModel=function(){return this.model.getModel("label")},t.prototype.isHorizontal=function(){return this.model.get("orient")==="horizontal"},t}(ba),lP=Math.PI,KH=Je(),$Xe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){this.api=n},t.prototype.render=function(r,n,i){if(this.model=r,this.api=i,this.ecModel=n,this.group.removeAll(),r.get("show",!0)){var a=this._layout(r,i),o=this._createGroup("_mainGroup"),s=this._createGroup("_labelGroup"),l=this._axis=this._createAxis(a,r);r.formatTooltip=function(u){var c=l.scale.getLabel({value:u});return Cr("nameValue",{noName:!0,value:c})},R(["AxisLine","AxisTick","Control","CurrentPointer"],function(u){this["_render"+u](a,o,l,r)},this),this._renderAxisLabel(a,s,l,r),this._position(a,r)}this._doPlayStop(),this._updateTicksStatus()},t.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},t.prototype.dispose=function(){this._clearTimer()},t.prototype._layout=function(r,n){var i=r.get(["label","position"]),a=r.get("orient"),o=VXe(r,n),s;i==null||i==="auto"?s=a==="horizontal"?o.y+o.height/2=0||s==="+"?"left":"right"},u={horizontal:s>=0||s==="+"?"top":"bottom",vertical:"middle"},c={horizontal:0,vertical:lP/2},f=a==="vertical"?o.height:o.width,h=r.getModel("controlStyle"),d=h.get("show",!0),v=d?h.get("itemSize"):0,g=d?h.get("itemGap"):0,m=v+g,x=r.get(["label","rotate"])||0;x=x*lP/180;var _,b,S,T=h.get("position",!0),C=d&&h.get("showPlayBtn",!0),A=d&&h.get("showPrevBtn",!0),P=d&&h.get("showNextBtn",!0),I=0,k=f;T==="left"||T==="bottom"?(C&&(_=[0,0],I+=m),A&&(b=[I,0],I+=m),P&&(S=[k-v,0],k-=m)):(C&&(_=[k-v,0],k-=m),A&&(b=[0,0],I+=m),P&&(S=[k-v,0],k-=m));var E=[I,k];return r.get("inverse")&&E.reverse(),{viewRect:o,mainLength:f,orient:a,rotation:c[a],labelRotation:x,labelPosOpt:s,labelAlign:r.get(["label","align"])||l[a],labelBaseline:r.get(["label","verticalAlign"])||r.get(["label","baseline"])||u[a],playPosition:_,prevBtnPosition:b,nextBtnPosition:S,axisExtent:E,controlSize:v,controlGap:g}},t.prototype._position=function(r,n){var i=this._mainGroup,a=this._labelGroup,o=r.viewRect;if(r.orient==="vertical"){var s=Wr(),l=o.x,u=o.y+o.height;qa(s,s,[-l,-u]),el(s,s,-lP/2),qa(s,s,[l,u]),o=o.clone(),o.applyTransform(s)}var c=_(o),f=_(i.getBoundingRect()),h=_(a.getBoundingRect()),d=[i.x,i.y],v=[a.x,a.y];v[0]=d[0]=c[0][0];var g=r.labelPosOpt;if(g==null||pe(g)){var m=g==="+"?0:1;b(d,f,c,1,m),b(v,h,c,1,1-m)}else{var m=g>=0?0:1;b(d,f,c,1,m),v[1]=d[1]+g}i.setPosition(d),a.setPosition(v),i.rotation=a.rotation=r.rotation,x(i),x(a);function x(S){S.originX=c[0][0]-S.x,S.originY=c[1][0]-S.y}function _(S){return[[S.x,S.x+S.width],[S.y,S.y+S.height]]}function b(S,T,C,A,P){S[A]+=C[A][P]-T[A][P]}},t.prototype._createAxis=function(r,n){var i=n.getData(),a=n.get("axisType"),o=FXe(n,a);o.getTicks=function(){return i.mapArray(["value"],function(u){return{value:u}})};var s=i.getDataExtent("value");o.setExtent(s[0],s[1]),o.calcNiceTicks();var l=new zXe("value",o,r.axisExtent,a);return l.model=n,l},t.prototype._createGroup=function(r){var n=this[r]=new Me;return this.group.add(n),n},t.prototype._renderAxisLine=function(r,n,i,a){var o=i.getExtent();if(a.get(["lineStyle","show"])){var s=new mr({shape:{x1:o[0],y1:0,x2:o[1],y2:0},style:ne({lineCap:"round"},a.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});n.add(s);var l=this._progressLine=new mr({shape:{x1:o[0],x2:this._currentPointer?this._currentPointer.x:o[0],y1:0,y2:0},style:Pe({lineCap:"round",lineWidth:s.style.lineWidth},a.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});n.add(l)}},t.prototype._renderAxisTick=function(r,n,i,a){var o=this,s=a.getData(),l=i.scale.getTicks();this._tickSymbols=[],R(l,function(u){var c=i.dataToCoord(u.value),f=s.getItemModel(u.value),h=f.getModel("itemStyle"),d=f.getModel(["emphasis","itemStyle"]),v=f.getModel(["progress","itemStyle"]),g={x:c,y:0,onclick:ge(o._changeTimeline,o,u.value)},m=JH(f,h,n,g);m.ensureState("emphasis").style=d.getItemStyle(),m.ensureState("progress").style=v.getItemStyle(),Jl(m);var x=Ne(m);f.get("tooltip")?(x.dataIndex=u.value,x.dataModel=a):x.dataIndex=x.dataModel=null,o._tickSymbols.push(m)})},t.prototype._renderAxisLabel=function(r,n,i,a){var o=this,s=i.getLabelModel();if(s.get("show")){var l=a.getData(),u=i.getViewLabels();this._tickLabels=[],R(u,function(c){var f=c.tickValue,h=l.getItemModel(f),d=h.getModel("label"),v=h.getModel(["emphasis","label"]),g=h.getModel(["progress","label"]),m=i.dataToCoord(c.tickValue),x=new at({x:m,y:0,rotation:r.labelRotation-r.rotation,onclick:ge(o._changeTimeline,o,f),silent:!1,style:Mt(d,{text:c.formattedLabel,align:r.labelAlign,verticalAlign:r.labelBaseline})});x.ensureState("emphasis").style=Mt(v),x.ensureState("progress").style=Mt(g),n.add(x),Jl(x),KH(x).dataIndex=f,o._tickLabels.push(x)})}},t.prototype._renderControl=function(r,n,i,a){var o=r.controlSize,s=r.rotation,l=a.getModel("controlStyle").getItemStyle(),u=a.getModel(["emphasis","controlStyle"]).getItemStyle(),c=a.getPlayState(),f=a.get("inverse",!0);h(r.nextBtnPosition,"next",ge(this._changeTimeline,this,f?"-":"+")),h(r.prevBtnPosition,"prev",ge(this._changeTimeline,this,f?"+":"-")),h(r.playPosition,c?"stop":"play",ge(this._handlePlayClick,this,!c),!0);function h(d,v,g,m){if(d){var x=Ka(be(a.get(["controlStyle",v+"BtnSize"]),o),o),_=[0,-x/2,x,x],b=GXe(a,v+"Icon",_,{x:d[0],y:d[1],originX:o/2,originY:0,rotation:m?-s:0,rectHover:!0,style:l,onclick:g});b.ensureState("emphasis").style=u,n.add(b),Jl(b)}}},t.prototype._renderCurrentPointer=function(r,n,i,a){var o=a.getData(),s=a.getCurrentIndex(),l=o.getItemModel(s).getModel("checkpointStyle"),u=this,c={onCreate:function(f){f.draggable=!0,f.drift=ge(u._handlePointerDrag,u),f.ondragend=ge(u._handlePointerDragend,u),QH(f,u._progressLine,s,i,a,!0)},onUpdate:function(f){QH(f,u._progressLine,s,i,a)}};this._currentPointer=JH(l,l,this._mainGroup,{},this._currentPointer,c)},t.prototype._handlePlayClick=function(r){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:r,from:this.uid})},t.prototype._handlePointerDrag=function(r,n,i){this._clearTimer(),this._pointerChangeTimeline([i.offsetX,i.offsetY])},t.prototype._handlePointerDragend=function(r){this._pointerChangeTimeline([r.offsetX,r.offsetY],!0)},t.prototype._pointerChangeTimeline=function(r,n){var i=this._toAxisCoord(r)[0],a=this._axis,o=Ai(a.getExtent().slice());i>o[1]&&(i=o[1]),i=0&&(s[o]=+s[o].toFixed(v)),[s,d]}var z_={min:Fe(B_,"min"),max:Fe(B_,"max"),average:Fe(B_,"average"),median:Fe(B_,"median")};function Vy(e,t){if(t){var r=e.getData(),n=e.coordinateSystem,i=n&&n.dimensions;if(!XXe(t)&&!ae(t.coord)&&ae(i)){var a=Mie(t,r,n,e);if(t=Ae(t),t.type&&z_[t.type]&&a.baseAxis&&a.valueAxis){var o=We(i,a.baseAxis.dim),s=We(i,a.valueAxis.dim),l=z_[t.type](r,a.valueAxis.dim,a.baseDataDim,a.valueDataDim,o,s);t.coord=l[0],t.value=l[1]}else t.coord=[t.xAxis!=null?t.xAxis:t.radiusAxis,t.yAxis!=null?t.yAxis:t.angleAxis]}if(t.coord==null||!ae(i)){t.coord=[];var u=e.getBaseAxis();if(u&&t.type&&z_[t.type]){var c=n.getOtherAxis(u);c&&(t.value=nS(r,r.mapDimension(c.dim),t.type))}}else for(var f=t.coord,h=0;h<2;h++)z_[f[h]]&&(f[h]=nS(r,r.mapDimension(i[h]),f[h]));return t}}function Mie(e,t,r,n){var i={};return e.valueIndex!=null||e.valueDim!=null?(i.valueDataDim=e.valueIndex!=null?t.getDimension(e.valueIndex):e.valueDim,i.valueAxis=r.getAxis(qXe(n,i.valueDataDim)),i.baseAxis=r.getOtherAxis(i.valueAxis),i.baseDataDim=t.mapDimension(i.baseAxis.dim)):(i.baseAxis=n.getBaseAxis(),i.valueAxis=r.getOtherAxis(i.baseAxis),i.baseDataDim=t.mapDimension(i.baseAxis.dim),i.valueDataDim=t.mapDimension(i.valueAxis.dim)),i}function qXe(e,t){var r=e.getData().getDimensionInfo(t);return r&&r.coordDim}function Gy(e,t){return e&&e.containData&&t.coord&&!YO(t)?e.containData(t.coord):!0}function KXe(e,t,r){return e&&e.containZone&&t.coord&&r.coord&&!YO(t)&&!YO(r)?e.containZone(t.coord,r.coord):!0}function Pie(e,t){return e?function(r,n,i,a){var o=a<2?r.coord&&r.coord[a]:r.value;return tu(o,t[a])}:function(r,n,i,a){return tu(r.value,t[a])}}function nS(e,t,r){if(r==="average"){var n=0,i=0;return e.each(t,function(a,o){isNaN(a)||(n+=a,i++)}),n/i}else return r==="median"?e.getMedian(t):e.getDataExtent(t)[r==="max"?1:0]}var uP=Je(),FR=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(){this.markerGroupMap=_e()},t.prototype.render=function(r,n,i){var a=this,o=this.markerGroupMap;o.each(function(s){uP(s).keep=!1}),n.eachSeries(function(s){var l=Zo.getMarkerModelFromSeries(s,a.type);l&&a.renderSeries(s,l,n,i)}),o.each(function(s){!uP(s).keep&&a.group.remove(s.group)}),JXe(n,o,this.type)},t.prototype.markKeep=function(r){uP(r).keep=!0},t.prototype.toggleBlurSeries=function(r,n){var i=this;R(r,function(a){var o=Zo.getMarkerModelFromSeries(a,i.type);if(o){var s=o.getData();s.eachItemGraphicEl(function(l){l&&(n?GJ(l):jN(l))})}})},t.type="marker",t}(kt);function JXe(e,t,r){e.eachSeries(function(n){var i=Zo.getMarkerModelFromSeries(n,r),a=t.get(n.id);if(i&&a&&a.group){var o=df(i),s=o.z,l=o.zlevel;HT(a.group,s,l)}})}function tU(e,t,r){var n=t.coordinateSystem,i=r.getWidth(),a=r.getHeight(),o=n&&n.getArea&&n.getArea();e.each(function(s){var l=e.getItemModel(s),u=l.get("relativeTo")==="coordinate",c=u?o?o.width:0:i,f=u?o?o.height:0:a,h=u&&o?o.x:0,d=u&&o?o.y:0,v,g=ve(l.get("x"),c)+h,m=ve(l.get("y"),f)+d;if(!isNaN(g)&&!isNaN(m))v=[g,m];else if(t.getMarkerPosition)v=t.getMarkerPosition(e.getValues(e.dimensions,s));else if(n){var x=e.get(n.dimensions[0],s),_=e.get(n.dimensions[1],s);v=n.dataToPoint([x,_])}isNaN(g)||(v[0]=g),isNaN(m)||(v[1]=m),e.setItemLayout(s,v)})}var QXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Zo.getMarkerModelFromSeries(a,"markPoint");o&&(tU(o.getData(),a,i),this.markerGroupMap.get(a.id).updateLayout())},this)},t.prototype.renderSeries=function(r,n,i,a){var o=r.coordinateSystem,s=r.id,l=r.getData(),u=this.markerGroupMap,c=u.get(s)||u.set(s,new S0),f=eqe(o,r,n);n.setData(f),tU(n.getData(),r,a),f.each(function(h){var d=f.getItemModel(h),v=d.getShallow("symbol"),g=d.getShallow("symbolSize"),m=d.getShallow("symbolRotate"),x=d.getShallow("symbolOffset"),_=d.getShallow("symbolKeepAspect");if(Ce(v)||Ce(g)||Ce(m)||Ce(x)){var b=n.getRawValue(h),S=n.getDataParams(h);Ce(v)&&(v=v(b,S)),Ce(g)&&(g=g(b,S)),Ce(m)&&(m=m(b,S)),Ce(x)&&(x=x(b,S))}var T=d.getModel("itemStyle").getItemStyle(),C=d.get("z2"),A=_0(l,"color");T.fill||(T.fill=A),f.setItemVisual(h,{z2:be(C,0),symbol:v,symbolSize:g,symbolRotate:m,symbolOffset:x,symbolKeepAspect:_,style:T})}),c.updateData(f),this.group.add(c.group),f.eachItemGraphicEl(function(h){h.traverse(function(d){Ne(d).dataModel=n})}),this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markPoint",t}(FR);function eqe(e,t,r){var n;e?n=se(e&&e.dimensions,function(s){var l=t.getData().getDimensionInfo(t.getData().mapDimension(s))||{};return ne(ne({},l),{name:s,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var i=new En(n,r),a=se(r.get("data"),Fe(Vy,t));e&&(a=ht(a,Fe(Gy,e)));var o=Pie(!!e,n);return i.initData(a,null,o),i}function tqe(e){e.registerComponentModel(YXe),e.registerComponentView(QXe),e.registerPreprocessor(function(t){$R(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})})}var rqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.createMarkerModelFromSeries=function(r,n,i){return new t(r,n,i)},t.type="markLine",t.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},t}(Zo),$_=Je(),nqe=function(e,t,r,n){var i=e.getData(),a;if(ae(n))a=n;else{var o=n.type;if(o==="min"||o==="max"||o==="average"||o==="median"||n.xAxis!=null||n.yAxis!=null){var s=void 0,l=void 0;if(n.yAxis!=null||n.xAxis!=null)s=t.getAxis(n.yAxis!=null?"y":"x"),l=rn(n.yAxis,n.xAxis);else{var u=Mie(n,i,t,e);s=u.valueAxis;var c=kj(i,u.valueDataDim);l=nS(i,c,o)}var f=s.dim==="x"?0:1,h=1-f,d=Ae(n),v={coord:[]};d.type=null,d.coord=[],d.coord[h]=-1/0,v.coord[h]=1/0;var g=r.get("precision");g>=0&&ot(l)&&(l=+l.toFixed(Math.min(g,20))),d.coord[f]=v.coord[f]=l,a=[d,v,{type:o,valueIndex:n.valueIndex,value:l}]}else a=[]}var m=[Vy(e,a[0]),Vy(e,a[1]),ne({},a[2])];return m[2].type=m[2].type||null,He(m[2],m[0]),He(m[2],m[1]),m};function iS(e){return!isNaN(e)&&!isFinite(e)}function rU(e,t,r,n){var i=1-e,a=n.dimensions[e];return iS(t[i])&&iS(r[i])&&t[e]===r[e]&&n.getAxis(a).containData(t[e])}function iqe(e,t){if(e.type==="cartesian2d"){var r=t[0].coord,n=t[1].coord;if(r&&n&&(rU(1,r,n,e)||rU(0,r,n,e)))return!0}return Gy(e,t[0])&&Gy(e,t[1])}function cP(e,t,r,n,i){var a=n.coordinateSystem,o=e.getItemModel(t),s,l=ve(o.get("x"),i.getWidth()),u=ve(o.get("y"),i.getHeight());if(!isNaN(l)&&!isNaN(u))s=[l,u];else{if(n.getMarkerPosition)s=n.getMarkerPosition(e.getValues(e.dimensions,t));else{var c=a.dimensions,f=e.get(c[0],t),h=e.get(c[1],t);s=a.dataToPoint([f,h])}if(fu(a,"cartesian2d")){var d=a.getAxis("x"),v=a.getAxis("y"),c=a.dimensions;iS(e.get(c[0],t))?s[0]=d.toGlobalCoord(d.getExtent()[r?0:1]):iS(e.get(c[1],t))&&(s[1]=v.toGlobalCoord(v.getExtent()[r?0:1]))}isNaN(l)||(s[0]=l),isNaN(u)||(s[1]=u)}e.setItemLayout(t,s)}var aqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Zo.getMarkerModelFromSeries(a,"markLine");if(o){var s=o.getData(),l=$_(o).from,u=$_(o).to;l.each(function(c){cP(l,c,!0,a,i),cP(u,c,!1,a,i)}),s.each(function(c){s.setItemLayout(c,[l.getItemLayout(c),u.getItemLayout(c)])}),this.markerGroupMap.get(a.id).updateLayout()}},this)},t.prototype.renderSeries=function(r,n,i,a){var o=r.coordinateSystem,s=r.id,l=r.getData(),u=this.markerGroupMap,c=u.get(s)||u.set(s,new oR);this.group.add(c.group);var f=oqe(o,r,n),h=f.from,d=f.to,v=f.line;$_(n).from=h,$_(n).to=d,n.setData(v);var g=n.get("symbol"),m=n.get("symbolSize"),x=n.get("symbolRotate"),_=n.get("symbolOffset");ae(g)||(g=[g,g]),ae(m)||(m=[m,m]),ae(x)||(x=[x,x]),ae(_)||(_=[_,_]),f.from.each(function(S){b(h,S,!0),b(d,S,!1)}),v.each(function(S){var T=v.getItemModel(S),C=T.getModel("lineStyle").getLineStyle();v.setItemLayout(S,[h.getItemLayout(S),d.getItemLayout(S)]);var A=T.get("z2");C.stroke==null&&(C.stroke=h.getItemVisual(S,"style").fill),v.setItemVisual(S,{z2:be(A,0),fromSymbolKeepAspect:h.getItemVisual(S,"symbolKeepAspect"),fromSymbolOffset:h.getItemVisual(S,"symbolOffset"),fromSymbolRotate:h.getItemVisual(S,"symbolRotate"),fromSymbolSize:h.getItemVisual(S,"symbolSize"),fromSymbol:h.getItemVisual(S,"symbol"),toSymbolKeepAspect:d.getItemVisual(S,"symbolKeepAspect"),toSymbolOffset:d.getItemVisual(S,"symbolOffset"),toSymbolRotate:d.getItemVisual(S,"symbolRotate"),toSymbolSize:d.getItemVisual(S,"symbolSize"),toSymbol:d.getItemVisual(S,"symbol"),style:C})}),c.updateData(v),f.line.eachItemGraphicEl(function(S){Ne(S).dataModel=n,S.traverse(function(T){Ne(T).dataModel=n})});function b(S,T,C){var A=S.getItemModel(T);cP(S,T,C,r,a);var P=A.getModel("itemStyle").getItemStyle();P.fill==null&&(P.fill=_0(l,"color")),S.setItemVisual(T,{symbolKeepAspect:A.get("symbolKeepAspect"),symbolOffset:be(A.get("symbolOffset",!0),_[C?0:1]),symbolRotate:be(A.get("symbolRotate",!0),x[C?0:1]),symbolSize:be(A.get("symbolSize"),m[C?0:1]),symbol:be(A.get("symbol",!0),g[C?0:1]),style:P})}this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markLine",t}(FR);function oqe(e,t,r){var n;e?n=se(e&&e.dimensions,function(u){var c=t.getData().getDimensionInfo(t.getData().mapDimension(u))||{};return ne(ne({},c),{name:u,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var i=new En(n,r),a=new En(n,r),o=new En([],r),s=se(r.get("data"),Fe(nqe,t,e,r));e&&(s=ht(s,Fe(iqe,e)));var l=Pie(!!e,n);return i.initData(se(s,function(u){return u[0]}),null,l),a.initData(se(s,function(u){return u[1]}),null,l),o.initData(se(s,function(u){return u[2]})),o.hasItemOption=!0,{from:i,to:a,line:o}}function sqe(e){e.registerComponentModel(rqe),e.registerComponentView(aqe),e.registerPreprocessor(function(t){$R(t.series,"markLine")&&(t.markLine=t.markLine||{})})}var lqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.createMarkerModelFromSeries=function(r,n,i){return new t(r,n,i)},t.type="markArea",t.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},t}(Zo),F_=Je(),uqe=function(e,t,r,n){var i=n[0],a=n[1];if(!(!i||!a)){var o=Vy(e,i),s=Vy(e,a),l=o.coord,u=s.coord;l[0]=rn(l[0],-1/0),l[1]=rn(l[1],-1/0),u[0]=rn(u[0],1/0),u[1]=rn(u[1],1/0);var c=PT([{},o,s]);return c.coord=[o.coord,s.coord],c.x0=o.x,c.y0=o.y,c.x1=s.x,c.y1=s.y,c}};function aS(e){return!isNaN(e)&&!isFinite(e)}function nU(e,t,r,n){var i=1-e;return aS(t[i])&&aS(r[i])}function cqe(e,t){var r=t.coord[0],n=t.coord[1],i={coord:r,x:t.x0,y:t.y0},a={coord:n,x:t.x1,y:t.y1};return fu(e,"cartesian2d")?r&&n&&(nU(1,r,n)||nU(0,r,n))?!0:KXe(e,i,a):Gy(e,i)||Gy(e,a)}function iU(e,t,r,n,i){var a=n.coordinateSystem,o=e.getItemModel(t),s,l=ve(o.get(r[0]),i.getWidth()),u=ve(o.get(r[1]),i.getHeight());if(!isNaN(l)&&!isNaN(u))s=[l,u];else{if(n.getMarkerPosition){var c=e.getValues(["x0","y0"],t),f=e.getValues(["x1","y1"],t),h=a.clampData(c),d=a.clampData(f),v=[];r[0]==="x0"?v[0]=h[0]>d[0]?f[0]:c[0]:v[0]=h[0]>d[0]?c[0]:f[0],r[1]==="y0"?v[1]=h[1]>d[1]?f[1]:c[1]:v[1]=h[1]>d[1]?c[1]:f[1],s=n.getMarkerPosition(v,r,!0)}else{var g=e.get(r[0],t),m=e.get(r[1],t),x=[g,m];a.clampData&&a.clampData(x,x),s=a.dataToPoint(x,!0)}if(fu(a,"cartesian2d")){var _=a.getAxis("x"),b=a.getAxis("y"),g=e.get(r[0],t),m=e.get(r[1],t);aS(g)?s[0]=_.toGlobalCoord(_.getExtent()[r[0]==="x0"?0:1]):aS(m)&&(s[1]=b.toGlobalCoord(b.getExtent()[r[1]==="y0"?0:1]))}isNaN(l)||(s[0]=l),isNaN(u)||(s[1]=u)}return s}var aU=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],fqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Zo.getMarkerModelFromSeries(a,"markArea");if(o){var s=o.getData();s.each(function(l){var u=se(aU,function(f){return iU(s,l,f,a,i)});s.setItemLayout(l,u);var c=s.getItemGraphicEl(l);c.setShape("points",u)})}},this)},t.prototype.renderSeries=function(r,n,i,a){var o=r.coordinateSystem,s=r.id,l=r.getData(),u=this.markerGroupMap,c=u.get(s)||u.set(s,{group:new Me});this.group.add(c.group),this.markKeep(c);var f=hqe(o,r,n);n.setData(f),f.each(function(h){var d=se(aU,function(k){return iU(f,h,k,r,a)}),v=o.getAxis("x").scale,g=o.getAxis("y").scale,m=v.getExtent(),x=g.getExtent(),_=[v.parse(f.get("x0",h)),v.parse(f.get("x1",h))],b=[g.parse(f.get("y0",h)),g.parse(f.get("y1",h))];Ai(_),Ai(b);var S=!(m[0]>_[1]||m[1]<_[0]||x[0]>b[1]||x[1]=0},t.prototype.getOrient=function(){return this.get("orient")==="vertical"?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},t.type="legend.plain",t.dependencies=["series"],t.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",bottom:J.size.m,align:"auto",backgroundColor:J.color.transparent,borderColor:J.color.border,borderRadius:0,borderWidth:0,padding:5,itemGap:8,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:J.color.disabled,inactiveBorderColor:J.color.disabled,inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:J.color.disabled,inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:J.color.secondary},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:J.color.tertiary,borderWidth:1,borderColor:J.color.border},emphasis:{selectorLabel:{show:!0,color:J.color.quaternary}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1},triggerEvent:!1},t}(Ke),xh=Fe,qO=R,V_=Me,kie=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.newlineDisabled=!1,r}return t.prototype.init=function(){this.group.add(this._contentGroup=new V_),this.group.add(this._selectorGroup=new V_),this._isFirstRender=!0},t.prototype.getContentGroup=function(){return this._contentGroup},t.prototype.getSelectorGroup=function(){return this._selectorGroup},t.prototype.render=function(r,n,i){var a=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),!!r.get("show",!0)){var o=r.get("align"),s=r.get("orient");(!o||o==="auto")&&(o=r.get("left")==="right"&&s==="vertical"?"right":"left");var l=r.get("selector",!0),u=r.get("selectorPosition",!0);l&&(!u||u==="auto")&&(u=s==="horizontal"?"end":"start"),this.renderInner(o,r,n,i,l,s,u);var c=jr(r,i).refContainer,f=r.getBoxLayoutParams(),h=r.get("padding"),d=zt(f,c,h),v=this.layoutInner(r,o,d,a,l,u),g=zt(Pe({width:v.width,height:v.height},f),c,h);this.group.x=g.x-v.x,this.group.y=g.y-v.y,this.group.markRedraw(),this.group.add(this._backgroundEl=mie(v,r))}},t.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},t.prototype.renderInner=function(r,n,i,a,o,s,l){var u=this.getContentGroup(),c=_e(),f=n.get("selectedMode"),h=n.get("triggerEvent"),d=[];i.eachRawSeries(function(v){!v.get("legendHoverLink")&&d.push(v.id)}),qO(n.getData(),function(v,g){var m=this,x=v.get("name");if(!this.newlineDisabled&&(x===""||x===` -`)){var _=new V_;_.newline=!0,u.add(_);return}var b=i.getSeriesByName(x)[0];if(!c.get(x))if(b){var S=b.getData(),T=S.getVisual("legendLineStyle")||{},C=S.getVisual("legendIcon"),A=S.getVisual("style"),P=this._createItem(b,x,g,v,n,r,T,A,C,f,a);P.on("click",xh(oU,x,null,a,d)).on("mouseover",xh(KO,b.name,null,a,d)).on("mouseout",xh(JO,b.name,null,a,d)),i.ssr&&P.eachChild(function(I){var k=Ne(I);k.seriesIndex=b.seriesIndex,k.dataIndex=g,k.ssrType="legend"}),h&&P.eachChild(function(I){m.packEventData(I,n,b,g,x)}),c.set(x,!0)}else i.eachRawSeries(function(I){var k=this;if(!c.get(x)&&I.legendVisualProvider){var E=I.legendVisualProvider;if(!E.containName(x))return;var D=E.indexOfName(x),N=E.getItemVisual(D,"style"),z=E.getItemVisual(D,"legendIcon"),V=On(N.fill);V&&V[3]===0&&(V[3]=.2,N=ne(ne({},N),{fill:la(V,"rgba")}));var F=this._createItem(I,x,g,v,n,r,{},N,z,f,a);F.on("click",xh(oU,null,x,a,d)).on("mouseover",xh(KO,null,x,a,d)).on("mouseout",xh(JO,null,x,a,d)),i.ssr&&F.eachChild(function($){var B=Ne($);B.seriesIndex=I.seriesIndex,B.dataIndex=g,B.ssrType="legend"}),h&&F.eachChild(function($){k.packEventData($,n,I,g,x)}),c.set(x,!0)}},this)},this),o&&this._createSelector(o,n,a,s,l)},t.prototype.packEventData=function(r,n,i,a,o){var s={componentType:"legend",componentIndex:n.componentIndex,dataIndex:a,value:o,seriesIndex:i.seriesIndex};Ne(r).eventData=s},t.prototype._createSelector=function(r,n,i,a,o){var s=this.getSelectorGroup();qO(r,function(u){var c=u.type,f=new at({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){i.dispatchAction({type:c==="all"?"legendAllSelect":"legendInverseSelect",legendId:n.id})}});s.add(f);var h=n.getModel("selectorLabel"),d=n.getModel(["emphasis","selectorLabel"]);Ur(f,{normal:h,emphasis:d},{defaultText:u.title}),Jl(f)})},t.prototype._createItem=function(r,n,i,a,o,s,l,u,c,f,h){var d=r.visualDrawType,v=o.get("itemWidth"),g=o.get("itemHeight"),m=o.isSelected(n),x=a.get("symbolRotate"),_=a.get("symbolKeepAspect"),b=a.get("icon");c=b||c||"roundRect";var S=pqe(c,a,l,u,d,m,h),T=new V_,C=a.getModel("textStyle");if(Ce(r.getLegendIcon)&&(!b||b==="inherit"))T.add(r.getLegendIcon({itemWidth:v,itemHeight:g,icon:c,iconRotate:x,itemStyle:S.itemStyle,lineStyle:S.lineStyle,symbolKeepAspect:_}));else{var A=b==="inherit"&&r.getData().getVisual("symbol")?x==="inherit"?r.getData().getVisual("symbolRotate"):x:0;T.add(gqe({itemWidth:v,itemHeight:g,icon:c,iconRotate:A,itemStyle:S.itemStyle,symbolKeepAspect:_}))}var P=s==="left"?v+5:-5,I=s,k=o.get("formatter"),E=n;pe(k)&&k?E=k.replace("{name}",n??""):Ce(k)&&(E=k(n));var D=m?C.getTextColor():a.get("inactiveColor");T.add(new at({style:Mt(C,{text:E,x:P,y:g/2,fill:D,align:I,verticalAlign:"middle"},{inheritColor:D})}));var N=new Xe({shape:T.getBoundingRect(),style:{fill:"transparent"}}),z=a.getModel("tooltip");return z.get("show")&&rl({el:N,componentModel:o,itemName:n,itemTooltipOption:z.option}),T.add(N),T.eachChild(function(V){V.silent=!0}),N.silent=!f,this.getContentGroup().add(T),Jl(T),T.__legendDataIndex=i,T},t.prototype.layoutInner=function(r,n,i,a,o,s){var l=this.getContentGroup(),u=this.getSelectorGroup();Uc(r.get("orient"),l,r.get("itemGap"),i.width,i.height);var c=l.getBoundingRect(),f=[-c.x,-c.y];if(u.markRedraw(),l.markRedraw(),o){Uc("horizontal",u,r.get("selectorItemGap",!0));var h=u.getBoundingRect(),d=[-h.x,-h.y],v=r.get("selectorButtonGap",!0),g=r.getOrient().index,m=g===0?"width":"height",x=g===0?"height":"width",_=g===0?"y":"x";s==="end"?d[g]+=c[m]+v:f[g]+=h[m]+v,d[1-g]+=c[x]/2-h[x]/2,u.x=d[0],u.y=d[1],l.x=f[0],l.y=f[1];var b={x:0,y:0};return b[m]=c[m]+v+h[m],b[x]=Math.max(c[x],h[x]),b[_]=Math.min(0,h[_]+d[1-g]),b}else return l.x=f[0],l.y=f[1],this.group.getBoundingRect()},t.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},t.type="legend.plain",t}(kt);function pqe(e,t,r,n,i,a,o){function s(m,x){m.lineWidth==="auto"&&(m.lineWidth=x.lineWidth>0?2:0),qO(m,function(_,b){m[b]==="inherit"&&(m[b]=x[b])})}var l=t.getModel("itemStyle"),u=l.getItemStyle(),c=e.lastIndexOf("empty",0)===0?"fill":"stroke",f=l.getShallow("decal");u.decal=!f||f==="inherit"?n.decal:rv(f,o),u.fill==="inherit"&&(u.fill=n[i]),u.stroke==="inherit"&&(u.stroke=n[c]),u.opacity==="inherit"&&(u.opacity=(i==="fill"?n:r).opacity),s(u,n);var h=t.getModel("lineStyle"),d=h.getLineStyle();if(s(d,r),u.fill==="auto"&&(u.fill=n.fill),u.stroke==="auto"&&(u.stroke=n.fill),d.stroke==="auto"&&(d.stroke=n.fill),!a){var v=t.get("inactiveBorderWidth"),g=u[c];u.lineWidth=v==="auto"?n.lineWidth>0&&g?2:0:u.lineWidth,u.fill=t.get("inactiveColor"),u.stroke=t.get("inactiveBorderColor"),d.stroke=h.get("inactiveColor"),d.lineWidth=h.get("inactiveWidth")}return{itemStyle:u,lineStyle:d}}function gqe(e){var t=e.icon||"roundRect",r=xr(t,0,0,e.itemWidth,e.itemHeight,e.itemStyle.fill,e.symbolKeepAspect);return r.setStyle(e.itemStyle),r.rotation=(e.iconRotate||0)*Math.PI/180,r.setOrigin([e.itemWidth/2,e.itemHeight/2]),t.indexOf("empty")>-1&&(r.style.stroke=r.style.fill,r.style.fill=J.color.neutral00,r.style.lineWidth=2),r}function oU(e,t,r,n){JO(e,t,r,n),r.dispatchAction({type:"legendToggleSelect",name:e??t}),KO(e,t,r,n)}function Lie(e){for(var t=e.getZr().storage.getDisplayList(),r,n=0,i=t.length;ni[o],m=[-d.x,-d.y];n||(m[a]=c[u]);var x=[0,0],_=[-v.x,-v.y],b=be(r.get("pageButtonGap",!0),r.get("itemGap",!0));if(g){var S=r.get("pageButtonPosition",!0);S==="end"?_[a]+=i[o]-v[o]:x[a]+=v[o]+b}_[1-a]+=d[s]/2-v[s]/2,c.setPosition(m),f.setPosition(x),h.setPosition(_);var T={x:0,y:0};if(T[o]=g?i[o]:d[o],T[s]=Math.max(d[s],v[s]),T[l]=Math.min(0,v[l]+_[1-a]),f.__rectSize=i[o],g){var C={x:0,y:0};C[o]=Math.max(i[o]-v[o]-b,0),C[s]=T[s],f.setClipPath(new Xe({shape:C})),f.__rectSize=C[o]}else h.eachChild(function(P){P.attr({invisible:!0,silent:!0})});var A=this._getPageInfo(r);return A.pageIndex!=null&<(c,{x:A.contentPosition[0],y:A.contentPosition[1]},g?r:null),this._updatePageInfoView(r,A),T},t.prototype._pageGo=function(r,n,i){var a=this._getPageInfo(n)[r];a!=null&&i.dispatchAction({type:"legendScroll",scrollDataIndex:a,legendId:n.id})},t.prototype._updatePageInfoView=function(r,n){var i=this._controllerGroup;R(["pagePrev","pageNext"],function(c){var f=c+"DataIndex",h=n[f]!=null,d=i.childOfName(c);d&&(d.setStyle("fill",h?r.get("pageIconColor",!0):r.get("pageIconInactiveColor",!0)),d.cursor=h?"pointer":"default")});var a=i.childOfName("pageText"),o=r.get("pageFormatter"),s=n.pageIndex,l=s!=null?s+1:0,u=n.pageCount;a&&o&&a.setStyle("text",pe(o)?o.replace("{current}",l==null?"":l+"").replace("{total}",u==null?"":u+""):o({current:l,total:u}))},t.prototype._getPageInfo=function(r){var n=r.get("scrollDataIndex",!0),i=this.getContentGroup(),a=this._containerGroup.__rectSize,o=r.getOrient().index,s=fP[o],l=hP[o],u=this._findTargetItemIndex(n),c=i.children(),f=c[u],h=c.length,d=h?1:0,v={contentPosition:[i.x,i.y],pageCount:d,pageIndex:d-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!f)return v;var g=S(f);v.contentPosition[o]=-g.s;for(var m=u+1,x=g,_=g,b=null;m<=h;++m)b=S(c[m]),(!b&&_.e>x.s+a||b&&!T(b,x.s))&&(_.i>x.i?x=_:x=b,x&&(v.pageNextDataIndex==null&&(v.pageNextDataIndex=x.i),++v.pageCount)),_=b;for(var m=u-1,x=g,_=g,b=null;m>=-1;--m)b=S(c[m]),(!b||!T(_,b.s))&&x.i<_.i&&(_=x,v.pagePrevDataIndex==null&&(v.pagePrevDataIndex=x.i),++v.pageCount,++v.pageIndex),x=b;return v;function S(C){if(C){var A=C.getBoundingRect(),P=A[l]+C[l];return{s:P,e:P+A[s],i:C.__legendDataIndex}}}function T(C,A){return C.e>=A&&C.s<=A+a}},t.prototype._findTargetItemIndex=function(r){if(!this._showController)return 0;var n,i=this.getContentGroup(),a;return i.eachChild(function(o,s){var l=o.__legendDataIndex;a==null&&l!=null&&(a=s),l===r&&(n=s)}),n??a},t.type="legend.scroll",t}(kie);function bqe(e){e.registerAction("legendScroll","legendscroll",function(t,r){var n=t.scrollDataIndex;n!=null&&r.eachComponent({mainType:"legend",subType:"scroll",query:t},function(i){i.setScrollDataIndex(n)})})}function wqe(e){Ze(Iie),e.registerComponentModel(xqe),e.registerComponentView(_qe),bqe(e)}function Sqe(e){Ze(Iie),Ze(wqe)}var Tqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="dataZoom.inside",t.defaultOption=Mu(Fy.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),t}(Fy),VR=Je();function Cqe(e,t,r){VR(e).coordSysRecordMap.each(function(n){var i=n.dataZoomInfoMap.get(t.uid);i&&(i.getRange=r)})}function Aqe(e,t){for(var r=VR(e).coordSysRecordMap,n=r.keys(),i=0;ia[i+n]&&(n=u),o=o&&l.get("preventDefaultMouseMove",!0)}),{controlType:n,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!o,api:r,zInfo:{component:t.model},triggerInfo:{roamTrigger:null,isInSelf:t.containsPoint}}}}function Iqe(e){e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,function(t,r){var n=VR(r),i=n.coordSysRecordMap||(n.coordSysRecordMap=_e());i.each(function(a){a.dataZoomInfoMap=null}),t.eachComponent({mainType:"dataZoom",subType:"inside"},function(a){var o=vie(a);R(o.infoList,function(s){var l=s.model.uid,u=i.get(l)||i.set(l,Mqe(r,s.model)),c=u.dataZoomInfoMap||(u.dataZoomInfoMap=_e());c.set(a.uid,{dzReferCoordSysInfo:s,model:a,getRange:null})})}),i.each(function(a){var o=a.controller,s,l=a.dataZoomInfoMap;if(l){var u=l.keys()[0];u!=null&&(s=l.get(u))}if(!s){Oie(i,a);return}var c=Lqe(l,a,r);o.enable(c.controlType,c.opt),Yv(a,"dispatchAction",s.model.get("throttle",!0),"fixRate")})})}var Oqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="dataZoom.inside",r}return t.prototype.render=function(r,n,i){if(e.prototype.render.apply(this,arguments),r.noTarget()){this._clear();return}this.range=r.getPercentRange(),Cqe(i,r,{pan:ge(dP.pan,this),zoom:ge(dP.zoom,this),scrollMove:ge(dP.scrollMove,this)})},t.prototype.dispose=function(){this._clear(),e.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){Aqe(this.api,this.dataZoomModel),this.range=null},t.type="dataZoom.inside",t}(DR),dP={zoom:function(e,t,r,n){var i=this.range,a=i.slice(),o=e.axisModels[0];if(o){var s=vP[t](null,[n.originX,n.originY],o,r,e),l=(s.signal>0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(a[1]-a[0])+a[0],u=Math.max(1/n.scale,0);a[0]=(a[0]-l)*u+l,a[1]=(a[1]-l)*u+l;var c=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();if(hu(0,a,[0,100],0,c.minSpan,c.maxSpan),this.range=a,i[0]!==a[0]||i[1]!==a[1])return a}},pan:cU(function(e,t,r,n,i,a){var o=vP[n]([a.oldX,a.oldY],[a.newX,a.newY],t,i,r);return o.signal*(e[1]-e[0])*o.pixel/o.pixelLength}),scrollMove:cU(function(e,t,r,n,i,a){var o=vP[n]([0,0],[a.scrollDelta,a.scrollDelta],t,i,r);return o.signal*(e[1]-e[0])*a.scrollDelta})};function cU(e){return function(t,r,n,i){var a=this.range,o=a.slice(),s=t.axisModels[0];if(s){var l=e(o,s,t,r,n,i);if(hu(l,o,[0,100],"all"),this.range=o,a[0]!==o[0]||a[1]!==o[1])return o}}}var vP={grid:function(e,t,r,n,i){var a=r.axis,o={},s=i.model.coordinateSystem.getRect();return e=e||[0,0],a.dim==="x"?(o.pixel=t[0]-e[0],o.pixelLength=s.width,o.pixelStart=s.x,o.signal=a.inverse?1:-1):(o.pixel=t[1]-e[1],o.pixelLength=s.height,o.pixelStart=s.y,o.signal=a.inverse?-1:1),o},polar:function(e,t,r,n,i){var a=r.axis,o={},s=i.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return e=e?s.pointToCoord(e):[0,0],t=s.pointToCoord(t),r.mainType==="radiusAxis"?(o.pixel=t[0]-e[0],o.pixelLength=l[1]-l[0],o.pixelStart=l[0],o.signal=a.inverse?1:-1):(o.pixel=t[1]-e[1],o.pixelLength=u[1]-u[0],o.pixelStart=u[0],o.signal=a.inverse?-1:1),o},singleAxis:function(e,t,r,n,i){var a=r.axis,o=i.model.coordinateSystem.getRect(),s={};return e=e||[0,0],a.orient==="horizontal"?(s.pixel=t[0]-e[0],s.pixelLength=o.width,s.pixelStart=o.x,s.signal=a.inverse?1:-1):(s.pixel=t[1]-e[1],s.pixelLength=o.height,s.pixelStart=o.y,s.signal=a.inverse?-1:1),s}};function Eie(e){NR(e),e.registerComponentModel(Tqe),e.registerComponentView(Oqe),Iqe(e)}var Eqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="dataZoom.slider",t.layoutMode="box",t.defaultOption=Mu(Fy.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:J.color.accent10,borderRadius:0,backgroundColor:J.color.transparent,dataBackground:{lineStyle:{color:J.color.accent30,width:.5},areaStyle:{color:J.color.accent20,opacity:.2}},selectedDataBackground:{lineStyle:{color:J.color.accent40,width:.5},areaStyle:{color:J.color.accent20,opacity:.3}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:J.color.neutral00,borderColor:J.color.accent20},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:J.color.accent40,opacity:.5},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:J.color.tertiary},brushSelect:!0,brushStyle:{color:J.color.accent30,opacity:.3},emphasis:{handleLabel:{show:!0},handleStyle:{borderColor:J.color.accent40},moveHandleStyle:{opacity:.8}},defaultLocationEdgeGap:15}),t}(Fy),ug=Xe,Dqe=1,pP=30,Nqe=7,cg="horizontal",fU="vertical",jqe=5,Rqe=["line","bar","candlestick","scatter"],Bqe={easing:"cubicOut",duration:100,delay:0},zqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._displayables={},r}return t.prototype.init=function(r,n){this.api=n,this._onBrush=ge(this._onBrush,this),this._onBrushEnd=ge(this._onBrushEnd,this)},t.prototype.render=function(r,n,i,a){if(e.prototype.render.apply(this,arguments),Yv(this,"_dispatchZoomAction",r.get("throttle"),"fixRate"),this._orient=r.getOrient(),r.get("show")===!1){this.group.removeAll();return}if(r.noTarget()){this._clear(),this.group.removeAll();return}(!a||a.type!=="dataZoom"||a.from!==this.uid)&&this._buildView(),this._updateView()},t.prototype.dispose=function(){this._clear(),e.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){Ay(this,"_dispatchZoomAction");var r=this.api.getZr();r.off("mousemove",this._onBrush),r.off("mouseup",this._onBrushEnd)},t.prototype._buildView=function(){var r=this.group;r.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var n=this._displayables.sliderGroup=new Me;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),r.add(n),this._positionGroup()},t.prototype._resetLocation=function(){var r=this.dataZoomModel,n=this.api,i=r.get("brushSelect"),a=i?Nqe:0,o=jr(r,n).refContainer,s=this._findCoordRect(),l=r.get("defaultLocationEdgeGap",!0)||0,u=this._orient===cg?{right:o.width-s.x-s.width,top:o.height-pP-l-a,width:s.width,height:pP}:{right:l,top:s.y,width:pP,height:s.height},c=Lf(r.option);R(["right","top","width","height"],function(h){c[h]==="ph"&&(c[h]=u[h])});var f=zt(c,o);this._location={x:f.x,y:f.y},this._size=[f.width,f.height],this._orient===fU&&this._size.reverse()},t.prototype._positionGroup=function(){var r=this.group,n=this._location,i=this._orient,a=this.dataZoomModel.getFirstTargetAxisModel(),o=a&&a.get("inverse"),s=this._displayables.sliderGroup,l=(this._dataShadowInfo||{}).otherAxisInverse;s.attr(i===cg&&!o?{scaleY:l?1:-1,scaleX:1}:i===cg&&o?{scaleY:l?1:-1,scaleX:-1}:i===fU&&!o?{scaleY:l?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:l?-1:1,scaleX:-1,rotation:Math.PI/2});var u=r.getBoundingRect([s]);r.x=n.x-u.x,r.y=n.y-u.y,r.markRedraw()},t.prototype._getViewExtent=function(){return[0,this._size[0]]},t.prototype._renderBackground=function(){var r=this.dataZoomModel,n=this._size,i=this._displayables.sliderGroup,a=r.get("brushSelect");i.add(new ug({silent:!0,shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:r.get("backgroundColor")},z2:-40}));var o=new ug({shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:"transparent"},z2:0,onclick:ge(this._onClickPanel,this)}),s=this.api.getZr();a?(o.on("mousedown",this._onBrushStart,this),o.cursor="crosshair",s.on("mousemove",this._onBrush),s.on("mouseup",this._onBrushEnd)):(s.off("mousemove",this._onBrush),s.off("mouseup",this._onBrushEnd)),i.add(o)},t.prototype._renderDataShadow=function(){var r=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],!r)return;var n=this._size,i=this._shadowSize||[],a=r.series,o=a.getRawData(),s=a.getShadowDim&&a.getShadowDim(),l=s&&o.getDimensionInfo(s)?a.getShadowDim():r.otherDim;if(l==null)return;var u=this._shadowPolygonPts,c=this._shadowPolylinePts;if(o!==this._shadowData||l!==this._shadowDim||n[0]!==i[0]||n[1]!==i[1]){var f=o.getDataExtent(r.thisDim),h=o.getDataExtent(l),d=(h[1]-h[0])*.3;h=[h[0]-d,h[1]+d];var v=[0,n[1]],g=[0,n[0]],m=[[n[0],0],[0,0]],x=[],_=g[1]/Math.max(1,o.count()-1),b=n[0]/(f[1]-f[0]),S=r.thisAxis.type==="time",T=-_,C=Math.round(o.count()/n[0]),A;o.each([r.thisDim,l],function(D,N,z){if(C>0&&z%C){S||(T+=_);return}T=S?(+D-f[0])*b:T+_;var V=N==null||isNaN(N)||N==="",F=V?0:gt(N,h,v,!0);V&&!A&&z?(m.push([m[m.length-1][0],0]),x.push([x[x.length-1][0],0])):!V&&A&&(m.push([T,0]),x.push([T,0])),V||(m.push([T,F]),x.push([T,F])),A=V}),u=this._shadowPolygonPts=m,c=this._shadowPolylinePts=x}this._shadowData=o,this._shadowDim=l,this._shadowSize=[n[0],n[1]];var P=this.dataZoomModel;function I(D){var N=P.getModel(D?"selectedDataBackground":"dataBackground"),z=new Me,V=new bn({shape:{points:u},segmentIgnoreThreshold:1,style:N.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),F=new an({shape:{points:c},segmentIgnoreThreshold:1,style:N.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return z.add(V),z.add(F),z}for(var k=0;k<3;k++){var E=I(k===1);this._displayables.sliderGroup.add(E),this._displayables.dataShadowSegs.push(E)}},t.prototype._prepareDataShadowInfo=function(){var r=this.dataZoomModel,n=r.get("showDataShadow");if(n!==!1){var i,a=this.ecModel;return r.eachTargetAxis(function(o,s){var l=r.getAxisProxy(o,s).getTargetSeriesModels();R(l,function(u){if(!i&&!(n!==!0&&We(Rqe,u.get("type"))<0)){var c=a.getComponent(Bl(o),s).axis,f=$qe(o),h,d=u.coordinateSystem;f!=null&&d.getOtherAxis&&(h=d.getOtherAxis(c).inverse),f=u.getData().mapDimension(f);var v=u.getData().mapDimension(o);i={thisAxis:c,series:u,thisDim:v,otherDim:f,otherAxisInverse:h}}},this)},this),i}},t.prototype._renderHandle=function(){var r=this.group,n=this._displayables,i=n.handles=[null,null],a=n.handleLabels=[null,null],o=this._displayables.sliderGroup,s=this._size,l=this.dataZoomModel,u=this.api,c=l.get("borderRadius")||0,f=l.get("brushSelect"),h=n.filler=new ug({silent:f,style:{fill:l.get("fillerColor")},textConfig:{position:"inside"}});o.add(h),o.add(new ug({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:s[0],height:s[1],r:c},style:{stroke:l.get("dataBackgroundColor")||l.get("borderColor"),lineWidth:Dqe,fill:J.color.transparent}})),R([0,1],function(b){var S=l.get("handleIcon");!Cw[S]&&S.indexOf("path://")<0&&S.indexOf("image://")<0&&(S="path://"+S);var T=xr(S,-1,0,2,2,null,!0);T.attr({cursor:Fqe(this._orient),draggable:!0,drift:ge(this._onDragMove,this,b),ondragend:ge(this._onDragEnd,this),onmouseover:ge(this._showDataInfo,this,!0),onmouseout:ge(this._showDataInfo,this,!1),z2:5});var C=T.getBoundingRect(),A=l.get("handleSize");this._handleHeight=ve(A,this._size[1]),this._handleWidth=C.width/C.height*this._handleHeight,T.setStyle(l.getModel("handleStyle").getItemStyle()),T.style.strokeNoScale=!0,T.rectHover=!0,T.ensureState("emphasis").style=l.getModel(["emphasis","handleStyle"]).getItemStyle(),Jl(T);var P=l.get("handleColor");P!=null&&(T.style.fill=P),o.add(i[b]=T);var I=l.getModel("textStyle"),k=l.get("handleLabel")||{},E=k.show||!1;r.add(a[b]=new at({silent:!0,invisible:!E,style:Mt(I,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:I.getTextColor(),font:I.getFont()}),z2:10}))},this);var d=h;if(f){var v=ve(l.get("moveHandleSize"),s[1]),g=n.moveHandle=new Xe({style:l.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:s[1]-.5,height:v}}),m=v*.8,x=n.moveHandleIcon=xr(l.get("moveHandleIcon"),-m/2,-m/2,m,m,J.color.neutral00,!0);x.silent=!0,x.y=s[1]+v/2-.5,g.ensureState("emphasis").style=l.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var _=Math.min(s[1]/2,Math.max(v,10));d=n.moveZone=new Xe({invisible:!0,shape:{y:s[1]-_,height:v+_}}),d.on("mouseover",function(){u.enterEmphasis(g)}).on("mouseout",function(){u.leaveEmphasis(g)}),o.add(g),o.add(x),o.add(d)}d.attr({draggable:!0,cursor:"default",drift:ge(this._onDragMove,this,"all"),ondragstart:ge(this._showDataInfo,this,!0),ondragend:ge(this._onDragEnd,this),onmouseover:ge(this._showDataInfo,this,!0),onmouseout:ge(this._showDataInfo,this,!1)})},t.prototype._resetInterval=function(){var r=this._range=this.dataZoomModel.getPercentRange(),n=this._getViewExtent();this._handleEnds=[gt(r[0],[0,100],n,!0),gt(r[1],[0,100],n,!0)]},t.prototype._updateInterval=function(r,n){var i=this.dataZoomModel,a=this._handleEnds,o=this._getViewExtent(),s=i.findRepresentativeAxisProxy().getMinMaxSpan(),l=[0,100];hu(n,a,o,i.get("zoomLock")?"all":r,s.minSpan!=null?gt(s.minSpan,l,o,!0):null,s.maxSpan!=null?gt(s.maxSpan,l,o,!0):null);var u=this._range,c=this._range=Ai([gt(a[0],o,l,!0),gt(a[1],o,l,!0)]);return!u||u[0]!==c[0]||u[1]!==c[1]},t.prototype._updateView=function(r){var n=this._displayables,i=this._handleEnds,a=Ai(i.slice()),o=this._size;R([0,1],function(d){var v=n.handles[d],g=this._handleHeight;v.attr({scaleX:g/2,scaleY:g/2,x:i[d]+(d?-1:1),y:o[1]/2-g/2})},this),n.filler.setShape({x:a[0],y:0,width:a[1]-a[0],height:o[1]});var s={x:a[0],width:a[1]-a[0]};n.moveHandle&&(n.moveHandle.setShape(s),n.moveZone.setShape(s),n.moveZone.getBoundingRect(),n.moveHandleIcon&&n.moveHandleIcon.attr("x",s.x+s.width/2));for(var l=n.dataShadowSegs,u=[0,a[0],a[1],o[0]],c=0;cn[0]||i[1]<0||i[1]>n[1])){var a=this._handleEnds,o=(a[0]+a[1])/2,s=this._updateInterval("all",i[0]-o);this._updateView(),s&&this._dispatchZoomAction(!1)}},t.prototype._onBrushStart=function(r){var n=r.offsetX,i=r.offsetY;this._brushStart=new Ie(n,i),this._brushing=!0,this._brushStartTime=+new Date},t.prototype._onBrushEnd=function(r){if(this._brushing){var n=this._displayables.brushRect;if(this._brushing=!1,!!n){n.attr("ignore",!0);var i=n.shape,a=+new Date;if(!(a-this._brushStartTime<200&&Math.abs(i.width)<5)){var o=this._getViewExtent(),s=[0,100],l=this._handleEnds=[i.x,i.x+i.width],u=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();hu(0,l,o,0,u.minSpan!=null?gt(u.minSpan,s,o,!0):null,u.maxSpan!=null?gt(u.maxSpan,s,o,!0):null),this._range=Ai([gt(l[0],o,s,!0),gt(l[1],o,s,!0)]),this._updateView(),this._dispatchZoomAction(!1)}}}},t.prototype._onBrush=function(r){this._brushing&&(Gs(r.event),this._updateBrushRect(r.offsetX,r.offsetY))},t.prototype._updateBrushRect=function(r,n){var i=this._displayables,a=this.dataZoomModel,o=i.brushRect;o||(o=i.brushRect=new ug({silent:!0,style:a.getModel("brushStyle").getItemStyle()}),i.sliderGroup.add(o)),o.attr("ignore",!1);var s=this._brushStart,l=this._displayables.sliderGroup,u=l.transformCoordToLocal(r,n),c=l.transformCoordToLocal(s.x,s.y),f=this._size;u[0]=Math.max(Math.min(f[0],u[0]),0),o.setShape({x:c[0],y:0,width:u[0]-c[0],height:f[1]})},t.prototype._dispatchZoomAction=function(r){var n=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:r?Bqe:null,start:n[0],end:n[1]})},t.prototype._findCoordRect=function(){var r,n=vie(this.dataZoomModel).infoList;if(!r&&n.length){var i=n[0].model.coordinateSystem;r=i.getRect&&i.getRect()}if(!r){var a=this.api.getWidth(),o=this.api.getHeight();r={x:a*.2,y:o*.2,width:a*.6,height:o*.6}}return r},t.type="dataZoom.slider",t}(DR);function $qe(e){var t={x:"y",y:"x",radius:"angle",angle:"radius"};return t[e]}function Fqe(e){return e==="vertical"?"ns-resize":"ew-resize"}function Die(e){e.registerComponentModel(Eqe),e.registerComponentView(zqe),NR(e)}function Vqe(e){Ze(Eie),Ze(Die)}var Nie={get:function(e,t,r){var n=Ae((Gqe[e]||{})[t]);return r&&ae(n)?n[n.length-1]:n}},Gqe={color:{active:["#006edd","#e0ffff"],inactive:[J.color.transparent]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},hU=Hr.mapVisual,Wqe=Hr.eachVisual,Hqe=ae,dU=R,Uqe=Ai,Zqe=gt,oS=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.stateList=["inRange","outOfRange"],r.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],r.layoutMode={type:"box",ignoreSize:!0},r.dataBound=[-1/0,1/0],r.targetVisuals={},r.controllerVisuals={},r}return t.prototype.init=function(r,n,i){this.mergeDefaultAndTheme(r,i)},t.prototype.optionUpdated=function(r,n){var i=this.option;!n&&Tie(i,r,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},t.prototype.resetVisual=function(r){var n=this.stateList;r=ge(r,this),this.controllerVisuals=UO(this.option.controller,n,r),this.targetVisuals=UO(this.option.target,n,r)},t.prototype.getItemSymbol=function(){return null},t.prototype.getTargetSeriesIndices=function(){var r=this.option.seriesId,n=this.option.seriesIndex;n==null&&r==null&&(n="all");var i=Rv(this.ecModel,"series",{index:n,id:r},{useDefault:!1,enableAll:!0,enableNone:!1}).models;return se(i,function(a){return a.componentIndex})},t.prototype.eachTargetSeries=function(r,n){R(this.getTargetSeriesIndices(),function(i){var a=this.ecModel.getSeriesByIndex(i);a&&r.call(n,a)},this)},t.prototype.isTargetSeries=function(r){var n=!1;return this.eachTargetSeries(function(i){i===r&&(n=!0)}),n},t.prototype.formatValueText=function(r,n,i){var a=this.option,o=a.precision,s=this.dataBound,l=a.formatter,u;i=i||["<",">"],ae(r)&&(r=r.slice(),u=!0);var c=n?r:u?[f(r[0]),f(r[1])]:f(r);if(pe(l))return l.replace("{value}",u?c[0]:c).replace("{value2}",u?c[1]:c);if(Ce(l))return u?l(r[0],r[1]):l(r);if(u)return r[0]===s[0]?i[0]+" "+c[1]:r[1]===s[1]?i[1]+" "+c[0]:c[0]+" - "+c[1];return c;function f(h){return h===s[0]?"min":h===s[1]?"max":(+h).toFixed(Math.min(o,20))}},t.prototype.resetExtent=function(){var r=this.option,n=Uqe([r.min,r.max]);this._dataExtent=n},t.prototype.getDataDimensionIndex=function(r){var n=this.option.dimension;if(n!=null)return r.getDimensionIndex(n);for(var i=r.dimensions,a=i.length-1;a>=0;a--){var o=i[a],s=r.getDimensionInfo(o);if(!s.isCalculationCoord)return s.storeDimIndex}},t.prototype.getExtent=function(){return this._dataExtent.slice()},t.prototype.completeVisualOption=function(){var r=this.ecModel,n=this.option,i={inRange:n.inRange,outOfRange:n.outOfRange},a=n.target||(n.target={}),o=n.controller||(n.controller={});He(a,i),He(o,i);var s=this.isCategory();l.call(this,a),l.call(this,o),u.call(this,a,"inRange","outOfRange"),c.call(this,o);function l(f){Hqe(n.color)&&!f.inRange&&(f.inRange={color:n.color.slice().reverse()}),f.inRange=f.inRange||{color:r.get("gradientColor")}}function u(f,h,d){var v=f[h],g=f[d];v&&!g&&(g=f[d]={},dU(v,function(m,x){if(Hr.isValidType(x)){var _=Nie.get(x,"inactive",s);_!=null&&(g[x]=_,x==="color"&&!g.hasOwnProperty("opacity")&&!g.hasOwnProperty("colorAlpha")&&(g.opacity=[0,0]))}}))}function c(f){var h=(f.inRange||{}).symbol||(f.outOfRange||{}).symbol,d=(f.inRange||{}).symbolSize||(f.outOfRange||{}).symbolSize,v=this.get("inactiveColor"),g=this.getItemSymbol(),m=g||"roundRect";dU(this.stateList,function(x){var _=this.itemSize,b=f[x];b||(b=f[x]={color:s?v:[v]}),b.symbol==null&&(b.symbol=h&&Ae(h)||(s?m:[m])),b.symbolSize==null&&(b.symbolSize=d&&Ae(d)||(s?_[0]:[_[0],_[0]])),b.symbol=hU(b.symbol,function(C){return C==="none"?m:C});var S=b.symbolSize;if(S!=null){var T=-1/0;Wqe(S,function(C){C>T&&(T=C)}),b.symbolSize=hU(S,function(C){return Zqe(C,[0,T],[0,_[0]],!0)})}},this)}},t.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},t.prototype.isCategory=function(){return!!this.option.categories},t.prototype.setSelected=function(r){},t.prototype.getSelected=function(){return null},t.prototype.getValueState=function(r){return null},t.prototype.getVisualMeta=function(r){return null},t.type="visualMap",t.dependencies=["series"],t.defaultOption={show:!0,z:4,min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:J.color.transparent,borderColor:J.color.borderTint,contentColor:J.color.theme[0],inactiveColor:J.color.disabled,borderWidth:0,padding:J.size.m,textGap:10,precision:0,textStyle:{color:J.color.secondary}},t}(Ke),vU=[20,140],Yqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.optionUpdated=function(r,n){e.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual(function(i){i.mappingMethod="linear",i.dataExtent=this.getExtent()}),this._resetRange()},t.prototype.resetItemSize=function(){e.prototype.resetItemSize.apply(this,arguments);var r=this.itemSize;(r[0]==null||isNaN(r[0]))&&(r[0]=vU[0]),(r[1]==null||isNaN(r[1]))&&(r[1]=vU[1])},t.prototype._resetRange=function(){var r=this.getExtent(),n=this.option.range;!n||n.auto?(r.auto=1,this.option.range=r):ae(n)&&(n[0]>n[1]&&n.reverse(),n[0]=Math.max(n[0],r[0]),n[1]=Math.min(n[1],r[1]))},t.prototype.completeVisualOption=function(){e.prototype.completeVisualOption.apply(this,arguments),R(this.stateList,function(r){var n=this.option.controller[r].symbolSize;n&&n[0]!==n[1]&&(n[0]=n[1]/3)},this)},t.prototype.setSelected=function(r){this.option.range=r.slice(),this._resetRange()},t.prototype.getSelected=function(){var r=this.getExtent(),n=Ai((this.get("range")||[]).slice());return n[0]>r[1]&&(n[0]=r[1]),n[1]>r[1]&&(n[1]=r[1]),n[0]=i[1]||r<=n[1])?"inRange":"outOfRange"},t.prototype.findTargetDataIndices=function(r){var n=[];return this.eachTargetSeries(function(i){var a=[],o=i.getData();o.each(this.getDataDimensionIndex(o),function(s,l){r[0]<=s&&s<=r[1]&&a.push(l)},this),n.push({seriesId:i.id,dataIndex:a})},this),n},t.prototype.getVisualMeta=function(r){var n=pU(this,"outOfRange",this.getExtent()),i=pU(this,"inRange",this.option.range.slice()),a=[];function o(d,v){a.push({value:d,color:r(d,v)})}for(var s=0,l=0,u=i.length,c=n.length;lr[1])break;a.push({color:this.getControllerVisual(l,"color",n),offset:s/i})}return a.push({color:this.getControllerVisual(r[1],"color",n),offset:1}),a},t.prototype._createBarPoints=function(r,n){var i=this.visualMapModel.itemSize;return[[i[0]-n[0],r[0]],[i[0],r[0]],[i[0],r[1]],[i[0]-n[1],r[1]]]},t.prototype._createBarGroup=function(r){var n=this._orient,i=this.visualMapModel.get("inverse");return new Me(n==="horizontal"&&!i?{scaleX:r==="bottom"?1:-1,rotation:Math.PI/2}:n==="horizontal"&&i?{scaleX:r==="bottom"?-1:1,rotation:-Math.PI/2}:n==="vertical"&&!i?{scaleX:r==="left"?1:-1,scaleY:-1}:{scaleX:r==="left"?1:-1})},t.prototype._updateHandle=function(r,n){if(this._useHandle){var i=this._shapes,a=this.visualMapModel,o=i.handleThumbs,s=i.handleLabels,l=a.itemSize,u=a.getExtent(),c=this._applyTransform("left",i.mainGroup);Xqe([0,1],function(f){var h=o[f];h.setStyle("fill",n.handlesColor[f]),h.y=r[f];var d=go(r[f],[0,l[1]],u,!0),v=this.getControllerVisual(d,"symbolSize");h.scaleX=h.scaleY=v/l[0],h.x=l[0]-v/2;var g=Ha(i.handleLabelPoints[f],Ql(h,this.group));if(this._orient==="horizontal"){var m=c==="left"||c==="top"?(l[0]-v)/2:(l[0]-v)/-2;g[1]+=m}s[f].setStyle({x:g[0],y:g[1],text:a.formatValueText(this._dataInterval[f]),verticalAlign:"middle",align:this._orient==="vertical"?this._applyTransform("left",i.mainGroup):"center"})},this)}},t.prototype._showIndicator=function(r,n,i,a){var o=this.visualMapModel,s=o.getExtent(),l=o.itemSize,u=[0,l[1]],c=this._shapes,f=c.indicator;if(f){f.attr("invisible",!1);var h={convertOpacityToAlpha:!0},d=this.getControllerVisual(r,"color",h),v=this.getControllerVisual(r,"symbolSize"),g=go(r,s,u,!0),m=l[0]-v/2,x={x:f.x,y:f.y};f.y=g,f.x=m;var _=Ha(c.indicatorLabelPoint,Ql(f,this.group)),b=c.indicatorLabel;b.attr("invisible",!1);var S=this._applyTransform("left",c.mainGroup),T=this._orient,C=T==="horizontal";b.setStyle({text:(i||"")+o.formatValueText(n),verticalAlign:C?S:"middle",align:C?"center":S});var A={x:m,y:g,style:{fill:d}},P={style:{x:_[0],y:_[1]}};if(o.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var I={duration:100,easing:"cubicInOut",additive:!0};f.x=x.x,f.y=x.y,f.animateTo(A,I),b.animateTo(P,I)}else f.attr(A),b.attr(P);this._firstShowIndicator=!1;var k=this._shapes.handleLabels;if(k)for(var E=0;Eo[1]&&(f[1]=1/0),n&&(f[0]===-1/0?this._showIndicator(c,f[1],"< ",l):f[1]===1/0?this._showIndicator(c,f[0],"> ",l):this._showIndicator(c,c,"≈ ",l));var h=this._hoverLinkDataIndices,d=[];(n||xU(i))&&(d=this._hoverLinkDataIndices=i.findTargetDataIndices(f));var v=ORe(h,d);this._dispatchHighDown("downplay",Sb(v[0],i)),this._dispatchHighDown("highlight",Sb(v[1],i))}},t.prototype._hoverLinkFromSeriesMouseOver=function(r){var n;if(Nc(r.target,function(l){var u=Ne(l);if(u.dataIndex!=null)return n=u,!0},!0),!!n){var i=this.ecModel.getSeriesByIndex(n.seriesIndex),a=this.visualMapModel;if(a.isTargetSeries(i)){var o=i.getData(n.dataType),s=o.getStore().get(a.getDataDimensionIndex(o),n.dataIndex);isNaN(s)||this._showIndicator(s,s)}}},t.prototype._hideIndicator=function(){var r=this._shapes;r.indicator&&r.indicator.attr("invisible",!0),r.indicatorLabel&&r.indicatorLabel.attr("invisible",!0);var n=this._shapes.handleLabels;if(n)for(var i=0;i=0&&(a.dimension=o,n.push(a))}}),e.getData().setVisual("visualMeta",n)}}];function nKe(e,t,r,n){for(var i=t.targetVisuals[n],a=Hr.prepareVisualTypes(i),o={color:_0(e.getData(),"color")},s=0,l=a.length;s0:t.splitNumber>0)||t.calculable)?"continuous":"piecewise"}),e.registerAction(eKe,tKe),R(rKe,function(t){e.registerVisual(e.PRIORITY.VISUAL.COMPONENT,t)}),e.registerPreprocessor(iKe))}function zie(e){e.registerComponentModel(Yqe),e.registerComponentView(Jqe),Bie(e)}var aKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._pieceList=[],r}return t.prototype.optionUpdated=function(r,n){e.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var i=this._mode=this._determineMode();this._pieceList=[],oKe[this._mode].call(this,this._pieceList),this._resetSelected(r,n);var a=this.option.categories;this.resetVisual(function(o,s){i==="categories"?(o.mappingMethod="category",o.categories=Ae(a)):(o.dataExtent=this.getExtent(),o.mappingMethod="piecewise",o.pieceList=se(this._pieceList,function(l){return l=Ae(l),s!=="inRange"&&(l.visual=null),l}))})},t.prototype.completeVisualOption=function(){var r=this.option,n={},i=Hr.listVisualTypes(),a=this.isCategory();R(r.pieces,function(s){R(i,function(l){s.hasOwnProperty(l)&&(n[l]=1)})}),R(n,function(s,l){var u=!1;R(this.stateList,function(c){u=u||o(r,c,l)||o(r.target,c,l)},this),!u&&R(this.stateList,function(c){(r[c]||(r[c]={}))[l]=Nie.get(l,c==="inRange"?"active":"inactive",a)})},this);function o(s,l,u){return s&&s[l]&&s[l].hasOwnProperty(u)}e.prototype.completeVisualOption.apply(this,arguments)},t.prototype._resetSelected=function(r,n){var i=this.option,a=this._pieceList,o=(n?i:r).selected||{};if(i.selected=o,R(a,function(l,u){var c=this.getSelectedMapKey(l);o.hasOwnProperty(c)||(o[c]=!0)},this),i.selectedMode==="single"){var s=!1;R(a,function(l,u){var c=this.getSelectedMapKey(l);o[c]&&(s?o[c]=!1:s=!0)},this)}},t.prototype.getItemSymbol=function(){return this.get("itemSymbol")},t.prototype.getSelectedMapKey=function(r){return this._mode==="categories"?r.value+"":r.index+""},t.prototype.getPieceList=function(){return this._pieceList},t.prototype._determineMode=function(){var r=this.option;return r.pieces&&r.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},t.prototype.setSelected=function(r){this.option.selected=Ae(r)},t.prototype.getValueState=function(r){var n=Hr.findPieceIndex(r,this._pieceList);return n!=null&&this.option.selected[this.getSelectedMapKey(this._pieceList[n])]?"inRange":"outOfRange"},t.prototype.findTargetDataIndices=function(r){var n=[],i=this._pieceList;return this.eachTargetSeries(function(a){var o=[],s=a.getData();s.each(this.getDataDimensionIndex(s),function(l,u){var c=Hr.findPieceIndex(l,i);c===r&&o.push(u)},this),n.push({seriesId:a.id,dataIndex:o})},this),n},t.prototype.getRepresentValue=function(r){var n;if(this.isCategory())n=r.value;else if(r.value!=null)n=r.value;else{var i=r.interval||[];n=i[0]===-1/0&&i[1]===1/0?0:(i[0]+i[1])/2}return n},t.prototype.getVisualMeta=function(r){if(this.isCategory())return;var n=[],i=["",""],a=this;function o(c,f){var h=a.getRepresentValue({interval:c});f||(f=a.getValueState(h));var d=r(h,f);c[0]===-1/0?i[0]=d:c[1]===1/0?i[1]=d:n.push({value:c[0],color:d},{value:c[1],color:d})}var s=this._pieceList.slice();if(!s.length)s.push({interval:[-1/0,1/0]});else{var l=s[0].interval[0];l!==-1/0&&s.unshift({interval:[-1/0,l]}),l=s[s.length-1].interval[1],l!==1/0&&s.push({interval:[l,1/0]})}var u=-1/0;return R(s,function(c){var f=c.interval;f&&(f[0]>u&&o([u,f[0]],"outOfRange"),o(f.slice()),u=f[1])},this),{stops:n,outerColors:i}},t.type="visualMap.piecewise",t.defaultOption=Mu(oS.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),t}(oS),oKe={splitNumber:function(e){var t=this.option,r=Math.min(t.precision,20),n=this.getExtent(),i=t.splitNumber;i=Math.max(parseInt(i,10),1),t.splitNumber=i;for(var a=(n[1]-n[0])/i;+a.toFixed(r)!==a&&r<5;)r++;t.precision=r,a=+a.toFixed(r),t.minOpen&&e.push({interval:[-1/0,n[0]],close:[0,0]});for(var o=0,s=n[0];o","≥"][n[0]]];r.text=r.text||this.formatValueText(r.value!=null?r.value:r.interval,!1,i)},this)}};function SU(e,t){var r=e.inverse;(e.orient==="vertical"?!r:r)&&t.reverse()}var sKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.doRender=function(){var r=this.group;r.removeAll();var n=this.visualMapModel,i=n.get("textGap"),a=n.textStyleModel,o=this._getItemAlign(),s=n.itemSize,l=this._getViewData(),u=l.endsText,c=rn(n.get("showLabel",!0),!u),f=!n.get("selectedMode");u&&this._renderEndsText(r,u[0],s,c,o),R(l.viewPieceList,function(h){var d=h.piece,v=new Me;v.onclick=ge(this._onItemClick,this,d),this._enableHoverLink(v,h.indexInModelPieceList);var g=n.getRepresentValue(d);if(this._createItemSymbol(v,g,[0,0,s[0],s[1]],f),c){var m=this.visualMapModel.getValueState(g),x=a.get("align")||o;v.add(new at({style:Mt(a,{x:x==="right"?-i:s[0]+i,y:s[1]/2,text:d.text,verticalAlign:a.get("verticalAlign")||"middle",align:x,opacity:be(a.get("opacity"),m==="outOfRange"?.5:1)}),silent:f}))}r.add(v)},this),u&&this._renderEndsText(r,u[1],s,c,o),Uc(n.get("orient"),r,n.get("itemGap")),this.renderBackground(r),this.positionGroup(r)},t.prototype._enableHoverLink=function(r,n){var i=this;r.on("mouseover",function(){return a("highlight")}).on("mouseout",function(){return a("downplay")});var a=function(o){var s=i.visualMapModel;s.option.hoverLink&&i.api.dispatchAction({type:o,batch:Sb(s.findTargetDataIndices(n),s)})}},t.prototype._getItemAlign=function(){var r=this.visualMapModel,n=r.option;if(n.orient==="vertical")return Rie(r,this.api,r.itemSize);var i=n.align;return(!i||i==="auto")&&(i="left"),i},t.prototype._renderEndsText=function(r,n,i,a,o){if(n){var s=new Me,l=this.visualMapModel.textStyleModel;s.add(new at({style:Mt(l,{x:a?o==="right"?i[0]:0:i[0]/2,y:i[1]/2,verticalAlign:"middle",align:a?o:"center",text:n})})),r.add(s)}},t.prototype._getViewData=function(){var r=this.visualMapModel,n=se(r.getPieceList(),function(s,l){return{piece:s,indexInModelPieceList:l}}),i=r.get("text"),a=r.get("orient"),o=r.get("inverse");return(a==="horizontal"?o:!o)?n.reverse():i&&(i=i.slice().reverse()),{viewPieceList:n,endsText:i}},t.prototype._createItemSymbol=function(r,n,i,a){var o=xr(this.getControllerVisual(n,"symbol"),i[0],i[1],i[2],i[3],this.getControllerVisual(n,"color"));o.silent=a,r.add(o)},t.prototype._onItemClick=function(r){var n=this.visualMapModel,i=n.option,a=i.selectedMode;if(a){var o=Ae(i.selected),s=n.getSelectedMapKey(r);a==="single"||a===!0?(o[s]=!0,R(o,function(l,u){o[u]=u===s})):o[s]=!o[s],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:o})}},t.type="visualMap.piecewise",t}(jie);function $ie(e){e.registerComponentModel(aKe),e.registerComponentView(sKe),Bie(e)}function lKe(e){Ze(zie),Ze($ie)}var uKe=function(){function e(t){this._thumbnailModel=t}return e.prototype.reset=function(t){this._renderVersion=t.getMainProcessVersion()},e.prototype.renderContent=function(t){var r=t.api.getViewOfComponentModel(this._thumbnailModel);r&&(t.group.silent=!0,r.renderContent({group:t.group,targetTrans:t.targetTrans,z2Range:cQ(t.group),roamType:t.roamType,viewportRect:t.viewportRect,renderVersion:this._renderVersion}))},e.prototype.updateWindow=function(t,r){var n=r.getViewOfComponentModel(this._thumbnailModel);n&&n.updateWindow({targetTrans:t,renderVersion:this._renderVersion})},e}(),cKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.preventAutoZ=!0,r}return t.prototype.optionUpdated=function(r,n){this._updateBridge()},t.prototype._updateBridge=function(){var r=this._birdge=this._birdge||new uKe(this);if(this._target=null,this.ecModel.eachSeries(function(i){YW(i,null)}),this.shouldShow()){var n=this.getTarget();YW(n.baseMapProvider,r)}},t.prototype.shouldShow=function(){return this.getShallow("show",!0)},t.prototype.getBridge=function(){return this._birdge},t.prototype.getTarget=function(){if(this._target)return this._target;var r=this.getReferringComponents("series",{useDefault:!1,enableAll:!1,enableNone:!1}).models[0];return r?r.subType!=="graph"&&(r=null):r=this.ecModel.queryComponents({mainType:"series",subType:"graph"})[0],this._target={baseMapProvider:r},this._target},t.type="thumbnail",t.layoutMode="box",t.dependencies=["series","geo"],t.defaultOption={show:!0,right:1,bottom:1,height:"25%",width:"25%",itemStyle:{borderColor:J.color.border,borderWidth:2},windowStyle:{borderWidth:1,color:J.color.neutral30,borderColor:J.color.neutral40,opacity:.3},z:10},t}(Ke),fKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){if(this._api=i,this._model=r,this._coordSys||(this._coordSys=new Nf),!this._isEnabled()){this._clear();return}this._renderVersion=i.getMainProcessVersion();var a=this.group;a.removeAll();var o=r.getModel("itemStyle"),s=o.getItemStyle();s.fill==null&&(s.fill=n.get("backgroundColor")||J.color.neutral00);var l=jr(r,i).refContainer,u=zt(LQ(r,!0),l),c=s.lineWidth||0,f=this._contentRect=hf(u.clone(),c/2,!0,!0),h=new Me;a.add(h),h.setClipPath(new Xe({shape:f.plain()}));var d=this._targetGroup=new Me;h.add(d);var v=u.plain();v.r=o.getShallow("borderRadius",!0),a.add(this._bgRect=new Xe({style:s,shape:v,silent:!1,cursor:"grab"}));var g=r.getModel("windowStyle"),m=g.getShallow("borderRadius",!0);h.add(this._windowRect=new Xe({shape:{x:0,y:0,width:0,height:0,r:m},style:g.getItemStyle(),silent:!1,cursor:"grab"})),this._dealRenderContent(),this._dealUpdateWindow(),CU(r,this)},t.prototype.renderContent=function(r){this._bridgeRendered=r,this._isEnabled()&&(this._dealRenderContent(),this._dealUpdateWindow(),CU(this._model,this))},t.prototype._dealRenderContent=function(){var r=this._bridgeRendered;if(!(!r||r.renderVersion!==this._renderVersion)){var n=this._targetGroup,i=this._coordSys,a=this._contentRect;if(n.removeAll(),!!r){var o=r.group,s=o.getBoundingRect();n.add(o),this._bgRect.z2=r.z2Range.min-10,i.setBoundingRect(s.x,s.y,s.width,s.height);var l=zt({left:"center",top:"center",aspect:s.width/s.height},a);i.setViewRect(l.x,l.y,l.width,l.height),o.attr(i.getTransformInfo().raw),this._windowRect.z2=r.z2Range.max+10,this._resetRoamController(r.roamType)}}},t.prototype.updateWindow=function(r){var n=this._bridgeRendered;n&&n.renderVersion===r.renderVersion&&(n.targetTrans=r.targetTrans),this._isEnabled()&&this._dealUpdateWindow()},t.prototype._dealUpdateWindow=function(){var r=this._bridgeRendered;if(!(!r||r.renderVersion!==this._renderVersion)){var n=va([],r.targetTrans),i=Ga([],this._coordSys.transform,n);this._transThisToTarget=va([],i);var a=r.viewportRect;a?a=a.clone():a=new Oe(0,0,this._api.getWidth(),this._api.getHeight()),a.applyTransform(i);var o=this._windowRect,s=o.shape.r;o.setShape(Pe({r:s},a))}},t.prototype._resetRoamController=function(r){var n=this,i=this._api,a=this._roamController;if(a||(a=this._roamController=new Df(i.getZr())),!r||!this._isEnabled()){a.disable();return}a.enable(r,{api:i,zInfo:{component:this._model},triggerInfo:{roamTrigger:null,isInSelf:function(o,s,l){return n._contentRect.contain(s,l)}}}),a.off("pan").off("zoom").on("pan",ge(this._onPan,this)).on("zoom",ge(this._onZoom,this))},t.prototype._onPan=function(r){var n=this._transThisToTarget;if(!(!this._isEnabled()||!n)){var i=lr([],[r.oldX,r.oldY],n),a=lr([],[r.oldX-r.dx,r.oldY-r.dy],n);this._api.dispatchAction(TU(this._model.getTarget().baseMapProvider,{dx:a[0]-i[0],dy:a[1]-i[1]}))}},t.prototype._onZoom=function(r){var n=this._transThisToTarget;if(!(!this._isEnabled()||!n)){var i=lr([],[r.originX,r.originY],n);this._api.dispatchAction(TU(this._model.getTarget().baseMapProvider,{zoom:1/r.scale,originX:i[0],originY:i[1]}))}},t.prototype._isEnabled=function(){var r=this._model;if(!r||!r.shouldShow())return!1;var n=r.getTarget().baseMapProvider;return!!n},t.prototype._clear=function(){this.group.removeAll(),this._bridgeRendered=null,this._roamController&&this._roamController.disable()},t.prototype.remove=function(){this._clear()},t.prototype.dispose=function(){this._clear()},t.type="thumbnail",t}(kt);function TU(e,t){var r=e.mainType==="series"?e.subType+"Roam":e.mainType+"Roam",n={type:r};return n[e.mainType+"Id"]=e.id,ne(n,t),n}function CU(e,t){var r=df(e);HT(t.group,r.z,r.zlevel)}function hKe(e){e.registerComponentModel(cKe),e.registerComponentView(fKe)}var dKe={label:{enabled:!0},decal:{show:!1}},AU=Je(),vKe={};function pKe(e,t){var r=e.getModel("aria");if(!r.get("enabled"))return;var n=Ae(dKe);He(n.label,e.getLocaleModel().get("aria"),!1),He(r.option,n,!1),i(),a();function i(){var u=r.getModel("decal"),c=u.get("show");if(c){var f=_e();e.eachSeries(function(h){if(!h.isColorBySeries()){var d=f.get(h.type);d||(d={},f.set(h.type,d)),AU(h).scope=d}}),e.eachRawSeries(function(h){if(e.isSeriesFiltered(h))return;if(Ce(h.enableAriaDecal)){h.enableAriaDecal();return}var d=h.getData();if(h.isColorBySeries()){var _=BI(h.ecModel,h.name,vKe,e.getSeriesCount()),b=d.getVisual("decal");d.setVisual("decal",S(b,_))}else{var v=h.getRawData(),g={},m=AU(h).scope;d.each(function(T){var C=d.getRawIndex(T);g[C]=T});var x=v.count();v.each(function(T){var C=g[T],A=v.getName(T)||T+"",P=BI(h.ecModel,A,m,x),I=d.getItemVisual(C,"decal");d.setItemVisual(C,"decal",S(I,P))})}function S(T,C){var A=T?ne(ne({},C),T):C;return A.dirty=!0,A}})}}function a(){var u=t.getZr().dom;if(u){var c=e.getLocaleModel().get("aria"),f=r.getModel("label");if(f.option=Pe(f.option,c),!!f.get("enabled")){if(u.setAttribute("role","img"),f.get("description")){u.setAttribute("aria-label",f.get("description"));return}var h=e.getSeriesCount(),d=f.get(["data","maxCount"])||10,v=f.get(["series","maxCount"])||10,g=Math.min(h,v),m;if(!(h<1)){var x=s();if(x){var _=f.get(["general","withTitle"]);m=o(_,{title:x})}else m=f.get(["general","withoutTitle"]);var b=[],S=h>1?f.get(["series","multiple","prefix"]):f.get(["series","single","prefix"]);m+=o(S,{seriesCount:h}),e.eachSeries(function(P,I){if(I1?f.get(["series","multiple",D]):f.get(["series","single",D]),k=o(k,{seriesId:P.seriesIndex,seriesName:P.get("name"),seriesType:l(P.subType)});var N=P.getData();if(N.count()>d){var z=f.get(["data","partialData"]);k+=o(z,{displayCnt:d})}else k+=f.get(["data","allData"]);for(var V=f.get(["data","separator","middle"]),F=f.get(["data","separator","end"]),$=f.get(["data","excludeDimensionId"]),B=[],Z=0;Z":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},yKe=function(){function e(t){var r=this._condVal=pe(t)?new RegExp(t):DK(t)?t:null;if(r==null){var n="";mt(n)}}return e.prototype.evaluate=function(t){var r=typeof t;return pe(r)?this._condVal.test(t):ot(r)?this._condVal.test(t+""):!1},e}(),xKe=function(){function e(){}return e.prototype.evaluate=function(){return this.value},e}(),_Ke=function(){function e(){}return e.prototype.evaluate=function(){for(var t=this.children,r=0;r2&&n.push(i),i=[N,z]}function c(N,z,V,F){qh(N,V)&&qh(z,F)||i.push(N,z,V,F,V,F)}function f(N,z,V,F,$,B){var Z=Math.abs(z-N),W=Math.tan(Z/4)*4/3,G=zP:E2&&n.push(i),n}function eE(e,t,r,n,i,a,o,s,l,u){if(qh(e,r)&&qh(t,n)&&qh(i,o)&&qh(a,s)){l.push(o,s);return}var c=2/u,f=c*c,h=o-e,d=s-t,v=Math.sqrt(h*h+d*d);h/=v,d/=v;var g=r-e,m=n-t,x=i-o,_=a-s,b=g*g+m*m,S=x*x+_*_;if(b=0&&P=0){l.push(o,s);return}var I=[],k=[];uu(e,r,i,o,.5,I),uu(t,n,a,s,.5,k),eE(I[0],k[0],I[1],k[1],I[2],k[2],I[3],k[3],l,u),eE(I[4],k[4],I[5],k[5],I[6],k[6],I[7],k[7],l,u)}function DKe(e,t){var r=QO(e),n=[];t=t||1;for(var i=0;i0)for(var u=0;uMath.abs(u),f=Vie([l,u],c?0:1,t),h=(c?s:u)/f.length,d=0;di,o=Vie([n,i],a?0:1,t),s=a?"width":"height",l=a?"height":"width",u=a?"x":"y",c=a?"y":"x",f=e[s]/o.length,h=0;h1?null:new Ie(g*l+e,g*u+t)}function RKe(e,t,r){var n=new Ie;Ie.sub(n,r,t),n.normalize();var i=new Ie;Ie.sub(i,e,t);var a=i.dot(n);return a}function bh(e,t){var r=e[e.length-1];r&&r[0]===t[0]&&r[1]===t[1]||e.push(t)}function BKe(e,t,r){for(var n=e.length,i=[],a=0;ao?(u.x=c.x=s+a/2,u.y=l,c.y=l+o):(u.y=c.y=l+o/2,u.x=s,c.x=s+a),BKe(t,u,c)}function sS(e,t,r,n){if(r===1)n.push(t);else{var i=Math.floor(r/2),a=e(t);sS(e,a[0],i,n),sS(e,a[1],r-i,n)}return n}function zKe(e,t){for(var r=[],n=0;n0;u/=2){var c=0,f=0;(e&u)>0&&(c=1),(t&u)>0&&(f=1),s+=u*u*(3*c^f),f===0&&(c===1&&(e=u-1-e,t=u-1-t),l=e,e=t,t=l)}return s}function cS(e){var t=1/0,r=1/0,n=-1/0,i=-1/0,a=se(e,function(s){var l=s.getBoundingRect(),u=s.getComputedTransform(),c=l.x+l.width/2+(u?u[4]:0),f=l.y+l.height/2+(u?u[5]:0);return t=Math.min(c,t),r=Math.min(f,r),n=Math.max(c,n),i=Math.max(f,i),[c,f]}),o=se(a,function(s,l){return{cp:s,z:YKe(s[0],s[1],t,r,n,i),path:e[l]}});return o.sort(function(s,l){return s.z-l.z}).map(function(s){return s.path})}function Hie(e){return VKe(e.path,e.count)}function tE(){return{fromIndividuals:[],toIndividuals:[],count:0}}function XKe(e,t,r){var n=[];function i(T){for(var C=0;C=0;i--)if(!r[i].many.length){var l=r[s].many;if(l.length<=1)if(s)s=0;else return r;var a=l.length,u=Math.ceil(a/2);r[i].many=l.slice(u,a),r[s].many=l.slice(0,u),s++}return r}var KKe={clone:function(e){for(var t=[],r=1-Math.pow(1-e.path.style.opacity,1/e.count),n=0;n0))return;var s=n.getModel("universalTransition").get("delay"),l=Object.assign({setToFinal:!0},o),u,c;NU(e)&&(u=e,c=t),NU(t)&&(u=t,c=e);function f(x,_,b,S,T){var C=x.many,A=x.one;if(C.length===1&&!T){var P=_?C[0]:A,I=_?A:C[0];if(lS(P))f({many:[P],one:I},!0,b,S,!0);else{var k=s?Pe({delay:s(b,S)},l):l;WR(P,I,k),a(P,I,P,I,k)}}else for(var E=Pe({dividePath:KKe[r],individualDelay:s&&function($,B,Z,W){return s($+b,S)}},l),D=_?XKe(C,A,E):qKe(A,C,E),N=D.fromIndividuals,z=D.toIndividuals,V=N.length,F=0;Ft.length,d=u?jU(c,u):jU(h?t:e,[h?e:t]),v=0,g=0;gUie))for(var a=n.getIndices(),o=0;o0&&C.group.traverse(function(P){P instanceof tt&&!P.animators.length&&P.animateFrom({style:{opacity:0}},A)})})}function FU(e){var t=e.getModel("universalTransition").get("seriesKey");return t||e.id}function VU(e){return ae(e)?e.sort().join(","):e}function Sl(e){if(e.hostModel)return e.hostModel.getModel("universalTransition").get("divideShape")}function iJe(e,t){var r=_e(),n=_e(),i=_e();return R(e.oldSeries,function(a,o){var s=e.oldDataGroupIds[o],l=e.oldData[o],u=FU(a),c=VU(u);n.set(c,{dataGroupId:s,data:l}),ae(u)&&R(u,function(f){i.set(f,{key:c,dataGroupId:s,data:l})})}),R(t.updatedSeries,function(a){if(a.isUniversalTransitionEnabled()&&a.isAnimationEnabled()){var o=a.get("dataGroupId"),s=a.getData(),l=FU(a),u=VU(l),c=n.get(u);if(c)r.set(u,{oldSeries:[{dataGroupId:c.dataGroupId,divide:Sl(c.data),data:c.data}],newSeries:[{dataGroupId:o,divide:Sl(s),data:s}]});else if(ae(l)){var f=[];R(l,function(v){var g=n.get(v);g.data&&f.push({dataGroupId:g.dataGroupId,divide:Sl(g.data),data:g.data})}),f.length&&r.set(u,{oldSeries:f,newSeries:[{dataGroupId:o,data:s,divide:Sl(s)}]})}else{var h=i.get(l);if(h){var d=r.get(h.key);d||(d={oldSeries:[{dataGroupId:h.dataGroupId,data:h.data,divide:Sl(h.data)}],newSeries:[]},r.set(h.key,d)),d.newSeries.push({dataGroupId:o,data:s,divide:Sl(s)})}}}}),r}function GU(e,t){for(var r=0;r=0&&i.push({dataGroupId:t.oldDataGroupIds[s],data:t.oldData[s],divide:Sl(t.oldData[s]),groupIdDim:o.dimension})}),R(Pt(e.to),function(o){var s=GU(r.updatedSeries,o);if(s>=0){var l=r.updatedSeries[s].getData();a.push({dataGroupId:t.oldDataGroupIds[s],data:l,divide:Sl(l),groupIdDim:o.dimension})}}),i.length>0&&a.length>0&&Zie(i,a,n)}function oJe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){R(Pt(n.seriesTransition),function(i){R(Pt(i.to),function(a){for(var o=n.updatedSeries,s=0;so.vmin?r+=o.vmin-n+(t-o.vmin)/(o.vmax-o.vmin)*o.gapReal:r+=t-n,n=o.vmax,i=!1;break}r+=o.vmin-n+o.gapReal,n=o.vmax}return i&&(r+=t-n),r},e.prototype.unelapse=function(t){for(var r=WU,n=HU,i=!0,a=0,o=0;ol?a=s.vmin+(t-l)/(u-l)*(s.vmax-s.vmin):a=n+t-r,n=s.vmax,i=!1;break}r=u,n=s.vmax}return i&&(a=n+t-r),a},e}();function lJe(){return new sJe}var WU=0,HU=0;function uJe(e,t){var r=0,n={tpAbs:{span:0,val:0},tpPrct:{span:0,val:0}},i=function(){return{has:!1,span:NaN,inExtFrac:NaN,val:NaN}},a={S:{tpAbs:i(),tpPrct:i()},E:{tpAbs:i(),tpPrct:i()}};R(e.breaks,function(s){var l=s.gapParsed;l.type==="tpPrct"&&(r+=l.val);var u=HR(s,t);if(u){var c=u.vmin!==s.vmin,f=u.vmax!==s.vmax,h=u.vmax-u.vmin;if(!(c&&f))if(c||f){var d=c?"S":"E";a[d][l.type].has=!0,a[d][l.type].span=h,a[d][l.type].inExtFrac=h/(s.vmax-s.vmin),a[d][l.type].val=l.val}else n[l.type].span+=h,n[l.type].val+=l.val}});var o=r*(0+(t[1]-t[0])+(n.tpAbs.val-n.tpAbs.span)+(a.S.tpAbs.has?(a.S.tpAbs.val-a.S.tpAbs.span)*a.S.tpAbs.inExtFrac:0)+(a.E.tpAbs.has?(a.E.tpAbs.val-a.E.tpAbs.span)*a.E.tpAbs.inExtFrac:0)-n.tpPrct.span-(a.S.tpPrct.has?a.S.tpPrct.span*a.S.tpPrct.inExtFrac:0)-(a.E.tpPrct.has?a.E.tpPrct.span*a.E.tpPrct.inExtFrac:0))/(1-n.tpPrct.val-(a.S.tpPrct.has?a.S.tpPrct.val*a.S.tpPrct.inExtFrac:0)-(a.E.tpPrct.has?a.E.tpPrct.val*a.E.tpPrct.inExtFrac:0));R(e.breaks,function(s){var l=s.gapParsed;l.type==="tpPrct"&&(s.gapReal=r!==0?Math.max(o,0)*l.val/r:0),l.type==="tpAbs"&&(s.gapReal=l.val),s.gapReal==null&&(s.gapReal=0)})}function cJe(e,t,r,n,i,a){e!=="no"&&R(r,function(o){var s=HR(o,a);if(s)for(var l=t.length-1;l>=0;l--){var u=t[l],c=n(u),f=i*3/4;c>s.vmin-f&&ct[0]&&r=0&&o<1-1e-5}R(e,function(o){if(!(!o||o.start==null||o.end==null)&&!o.isExpanded){var s={breakOption:Ae(o),vmin:t(o.start),vmax:t(o.end),gapParsed:{type:"tpAbs",val:0},gapReal:null};if(o.gap!=null){var l=!1;if(pe(o.gap)){var u=Ci(o.gap);if(u.match(/%$/)){var c=parseFloat(u)/100;i(c)||(c=0),s.gapParsed.type="tpPrct",s.gapParsed.val=c,l=!0}}if(!l){var f=t(o.gap);(!isFinite(f)||f<0)&&(f=0),s.gapParsed.type="tpAbs",s.gapParsed.val=f}}if(s.vmin===s.vmax&&(s.gapParsed.type="tpAbs",s.gapParsed.val=0),r&&r.noNegative&&R(["vmin","vmax"],function(d){s[d]<0&&(s[d]=0)}),s.vmin>s.vmax){var h=s.vmax;s.vmax=s.vmin,s.vmin=h}n.push(s)}}),n.sort(function(o,s){return o.vmin-s.vmin});var a=-1/0;return R(n,function(o,s){a>o.vmin&&(n[s]=null),a=o.vmax}),{breaks:n.filter(function(o){return!!o})}}function UR(e,t){return nE(t)===nE(e)}function nE(e){return e.start+"_\0_"+e.end}function hJe(e,t,r){var n=[];R(e,function(a,o){var s=t(a);s&&s.type==="vmin"&&n.push([o])}),R(e,function(a,o){var s=t(a);if(s&&s.type==="vmax"){var l=Tu(n,function(u){return UR(t(e[u[0]]).parsedBreak.breakOption,s.parsedBreak.breakOption)});l&&l.push(o)}});var i=[];return R(n,function(a){a.length===2&&i.push(r?a:[e[a[0]],e[a[1]]])}),i}function dJe(e,t,r,n){var i,a;if(e.break){var o=e.break.parsedBreak,s=Tu(r,function(f){return UR(f.breakOption,e.break.parsedBreak.breakOption)}),l=n(Math.pow(t,o.vmin),s.vmin),u=n(Math.pow(t,o.vmax),s.vmax),c={type:o.gapParsed.type,val:o.gapParsed.type==="tpAbs"?gr(Math.pow(t,o.vmin+o.gapParsed.val))-l:o.gapParsed.val};i={type:e.break.type,parsedBreak:{breakOption:o.breakOption,vmin:l,vmax:u,gapParsed:c,gapReal:o.gapReal}},a=s[e.break.type]}return{brkRoundingCriterion:a,vBreak:i}}function vJe(e,t,r){var n={noNegative:!0},i=rE(e,r,n),a=rE(e,r,n),o=Math.log(t);return a.breaks=se(a.breaks,function(s){var l=Math.log(s.vmin)/o,u=Math.log(s.vmax)/o,c={type:s.gapParsed.type,val:s.gapParsed.type==="tpAbs"?Math.log(s.vmin+s.gapParsed.val)/o-l:s.gapParsed.val};return{vmin:l,vmax:u,gapParsed:c,gapReal:s.gapReal,breakOption:s.breakOption}}),{parsedOriginal:i,parsedLogged:a}}var pJe={vmin:"start",vmax:"end"};function gJe(e,t){return t&&(e=e||{},e.break={type:pJe[t.type],start:t.parsedBreak.vmin,end:t.parsedBreak.vmax}),e}function mJe(){z3e({createScaleBreakContext:lJe,pruneTicksByBreak:cJe,addBreaksToTicks:fJe,parseAxisBreakOption:rE,identifyAxisBreak:UR,serializeAxisBreakIdentifier:nE,retrieveAxisBreakPairs:hJe,getTicksLogTransformBreak:dJe,logarithmicParseBreaksFromOption:vJe,makeAxisLabelFormatterParamBreak:gJe})}var UU=Je();function yJe(e,t){var r=Tu(e,function(n){return Sr().identifyAxisBreak(n.parsedBreak.breakOption,t.breakOption)});return r||e.push(r={zigzagRandomList:[],parsedBreak:t,shouldRemove:!1}),r}function xJe(e){R(e,function(t){return t.shouldRemove=!0})}function _Je(e){for(var t=e.length-1;t>=0;t--)e[t].shouldRemove&&e.splice(t,1)}function bJe(e,t,r,n,i){var a=r.axis;if(a.scale.isBlank()||!Sr())return;var o=Sr().retrieveAxisBreakPairs(a.scale.getTicks({breakTicks:"only_break"}),function(I){return I.break},!1);if(!o.length)return;var s=r.getModel("breakArea"),l=s.get("zigzagAmplitude"),u=s.get("zigzagMinSpan"),c=s.get("zigzagMaxSpan");u=Math.max(2,u||0),c=Math.max(u,c||0);var f=s.get("expandOnClick"),h=s.get("zigzagZ"),d=s.getModel("itemStyle"),v=d.getItemStyle(),g=v.stroke,m=v.lineWidth,x=v.lineDash,_=v.fill,b=new Me({ignoreModelZ:!0}),S=a.isHorizontal(),T=UU(t).visualList||(UU(t).visualList=[]);xJe(T);for(var C=function(I){var k=o[I][0].break.parsedBreak,E=[];E[0]=a.toGlobalCoord(a.dataToCoord(k.vmin,!0)),E[1]=a.toGlobalCoord(a.dataToCoord(k.vmax,!0)),E[1]=B;fe&&(K=B);var De=[],me=[];De[F]=E,me[F]=D,!le&&!fe&&(De[F]+=Y?-l:l,me[F]-=Y?l:-l),De[$]=K,me[$]=K,W.push(De),G.push(me);var ie=void 0;if(ee_[1]&&_.reverse(),{coordPair:_,brkId:Sr().serializeAxisBreakIdentifier(x.breakOption)}});l.sort(function(m,x){return m.coordPair[0]-x.coordPair[0]});for(var u=o[0],c=null,f=0;f=0?l[0].width:l[1].width),h=(f+c.x)/2-u.x,d=Math.min(h,h-c.x),v=Math.max(h,h-c.x),g=v<0?v:d>0?d:0;s=(h-g)/c.x}var m=new Ie,x=new Ie;Ie.scale(m,n,-s),Ie.scale(x,n,1-s),iO(r[0],m),iO(r[1],x)}function TJe(e,t){var r={breaks:[]};return R(t.breaks,function(n){if(n){var i=Tu(e.get("breaks",!0),function(s){return Sr().identifyAxisBreak(s,n)});if(i){var a=t.type,o={isExpanded:!!i.isExpanded};i.isExpanded=a===rC?!0:a===vre?!1:a===pre?!i.isExpanded:i.isExpanded,r.breaks.push({start:i.start,end:i.end,isExpanded:!!i.isExpanded,old:o})}}}),r}function CJe(){_6e({adjustBreakLabelPair:SJe,buildAxisBreakLine:wJe,rectCoordBuildBreakAxis:bJe,updateModelAxisBreak:TJe})}function AJe(e){A6e(e),mJe(),CJe()}function MJe(){Z6e(PJe)}function PJe(e,t){R(e,function(r){if(!r.model.get(["axisLabel","inside"])){var n=kJe(r);if(n){var i=r.isHorizontal()?"height":"width",a=r.model.get(["axisLabel","margin"]);t[i]-=n[i]+a,r.position==="top"?t.y+=n.height+a:r.position==="left"&&(t.x+=n.width+a)}}})}function kJe(e){var t=e.model,r=e.scale;if(!t.get(["axisLabel","show"])||r.isBlank())return;var n,i,a=r.getExtent();r instanceof nv?i=r.count():(n=r.getTicks(),i=n.length);var o=e.getLabelModel(),s=Kv(e),l,u=1;i>40&&(u=Math.ceil(i/40));for(var c=0;c1&&arguments[1]!==void 0?arguments[1]:60,i=null;return function(){for(var a=this,o=arguments.length,s=new Array(o),l=0;l12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function UJe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function ZJe(e){return e==="ROUTER"||e==="ROUTER_LATE"?30:e==="REPEATER"||e==="TRACKER"?25:e==="CLIENT_MUTE"?7:e==="CLIENT_BASE"?12:15}function YJe({nodes:e,edges:t,selectedNodeId:r,onSelectNode:n}){const i=H.useRef(null),[a,o]=H.useState("connected"),s=H.useMemo(()=>{const m=new Set;return t.forEach(x=>{m.add(x.from_node),m.add(x.to_node)}),m},[t]),l=H.useMemo(()=>{let m=e;return a==="connected"?m=m.filter(x=>s.has(x.node_num)):a==="infra"&&(m=m.filter(x=>XU.includes(x.role))),m},[e,a,s]),u=H.useMemo(()=>new Map(l.map(m=>[m.node_num,m])),[l]),c=H.useMemo(()=>t.filter(m=>u.has(m.from_node)&&u.has(m.to_node)),[t,u]),f=H.useMemo(()=>{const m=new Set;return r!==null&&c.forEach(x=>{x.from_node===r&&m.add(x.to_node),x.to_node===r&&m.add(x.from_node)}),m},[r,c]),h=H.useMemo(()=>{const m=l.map(_=>{const b=UJe(_.latitude),S=YU[b%YU.length],T=XU.includes(_.role),C=_.node_num===r,A=f.has(_.node_num),P=r===null||C||A;return{id:String(_.node_num),name:_.short_name,value:_.node_num,symbolSize:ZJe(_.role),itemStyle:{color:T?S:"#111827",borderColor:S,borderWidth:T?0:2,opacity:P?1:.15},label:{show:!0,position:"bottom",distance:5,fontSize:10,fontFamily:"JetBrains Mono, monospace",color:P?"#94a3b8":"#94a3b820"},nodeNum:_.node_num,longName:_.long_name,role:_.role}}),x=c.map(_=>{const b=r===null||_.from_node===r||_.to_node===r;return{source:String(_.from_node),target:String(_.to_node),value:_.snr,lineStyle:{color:HJe(_.snr),width:b&&r!==null?2:1,opacity:r===null?.4:b?.6:.04}}});return{nodes:m,links:x}},[l,c,r,f]),d=H.useMemo(()=>({backgroundColor:"#111827",tooltip:{trigger:"item",backgroundColor:"#1e293b",borderColor:"#334155",textStyle:{color:"#e2e8f0",fontFamily:"JetBrains Mono, monospace",fontSize:11},formatter:m=>{if(m.data&&m.data.longName){const x=m.data;return`${x.name}
${x.longName}
Role: ${x.role}`}return""}},series:[{type:"graph",layout:"force",roam:!0,draggable:!0,animation:!1,data:h.nodes,links:h.links,force:{repulsion:200,edgeLength:[80,120],gravity:.1},emphasis:{focus:"adjacency",blurScope:"coordinateSystem",scale:1.1,lineStyle:{width:2}},blur:{itemStyle:{opacity:.15},lineStyle:{opacity:.04}},label:{show:!0,position:"bottom",distance:5,fontSize:10,fontFamily:"JetBrains Mono, monospace"},edgeLabel:{show:!1},edgeSymbol:["none","none"]}]}),[h]),v=H.useCallback(m=>{if(m.data&&"nodeNum"in m.data){const x=m.data.nodeNum;n(r===x?null:x??null)}},[r,n]),g=H.useMemo(()=>({click:v}),[v]);return H.useEffect(()=>{var x;const m=(x=i.current)==null?void 0:x.getEchartsInstance();m&&m.setOption(d,{notMerge:!1,lazyUpdate:!0})},[d]),y.jsxs("div",{className:"relative bg-bg-card rounded-lg border border-border overflow-hidden",children:[y.jsx(WJe,{ref:i,option:d,style:{height:"540px",width:"100%"},onEvents:g,opts:{renderer:"canvas"}}),y.jsxs("div",{className:"absolute top-4 left-4 flex items-center gap-2 bg-bg-card/90 backdrop-blur-sm border border-border rounded px-3 py-2",children:[y.jsx(sD,{size:14,className:"text-slate-500"}),y.jsx("div",{className:"flex gap-1",children:[{key:"connected",label:"Connected"},{key:"infra",label:"Infra"},{key:"all",label:"All"}].map(({key:m,label:x})=>y.jsx("button",{onClick:()=>o(m),className:`px-2 py-1 text-xs rounded transition-colors ${a===m?"bg-accent text-white":"bg-bg-hover text-slate-400 hover:text-slate-200"}`,children:x},m))}),y.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[l.length," nodes • ",c.length," edges"]})]}),y.jsxs("div",{className:"absolute bottom-4 left-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded p-3",children:[y.jsx("div",{className:"text-xs text-slate-400 font-medium mb-2",children:"Edge Quality (SNR)"}),y.jsx("div",{className:"space-y-1",children:[{label:"Excellent (>12)",color:"#22c55e"},{label:"Good (8-12)",color:"#4ade80"},{label:"Fair (5-8)",color:"#f59e0b"},{label:"Marginal (3-5)",color:"#f97316"},{label:"Poor (<3)",color:"#ef4444"}].map(m=>y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("div",{className:"w-4 h-0.5",style:{backgroundColor:m.color}}),y.jsx("span",{className:"text-xs text-slate-500",children:m.label})]},m.label))})]}),y.jsxs("div",{className:"absolute bottom-4 right-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded p-3",children:[y.jsx("div",{className:"text-xs text-slate-400 font-medium mb-2",children:"Node Type"}),y.jsxs("div",{className:"space-y-2",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("div",{className:"w-3 h-3 rounded-full bg-blue-500"}),y.jsx("span",{className:"text-xs text-slate-500",children:"Infrastructure"})]}),y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("div",{className:"w-3 h-3 rounded-full bg-gray-900 border-2 border-blue-500"}),y.jsx("span",{className:"text-xs text-slate-500",children:"Client"})]})]})]})]})}function qie(e,t){const r=H.useRef(t);H.useEffect(function(){t!==r.current&&e.attributionControl!=null&&(r.current!=null&&e.attributionControl.removeAttribution(r.current),t!=null&&e.attributionControl.addAttribution(t)),r.current=t},[e,t])}function XJe(e,t,r){t.center!==r.center&&e.setLatLng(t.center),t.radius!=null&&t.radius!==r.radius&&e.setRadius(t.radius)}const qJe=1;function KJe(e){return Object.freeze({__version:qJe,map:e})}function Kie(e,t){return Object.freeze({...e,...t})}const Jie=H.createContext(null),Qie=Jie.Provider;function vC(){const e=H.useContext(Jie);if(e==null)throw new Error("No context provided: useLeafletContext() can only be used in a descendant of ");return e}function JJe(e){function t(r,n){const{instance:i,context:a}=e(r).current;return H.useImperativeHandle(n,()=>i),r.children==null?null:Q.createElement(Qie,{value:a},r.children)}return H.forwardRef(t)}function QJe(e){function t(r,n){const[i,a]=H.useState(!1),{instance:o}=e(r,a).current;H.useImperativeHandle(n,()=>o),H.useEffect(function(){i&&o.update()},[o,i,r.children]);const s=o._contentNode;return s?_Z.createPortal(r.children,s):null}return H.forwardRef(t)}function eQe(e){function t(r,n){const{instance:i}=e(r).current;return H.useImperativeHandle(n,()=>i),null}return H.forwardRef(t)}function qR(e,t){const r=H.useRef();H.useEffect(function(){return t!=null&&e.instance.on(t),r.current=t,function(){r.current!=null&&e.instance.off(r.current),r.current=null}},[e,t])}function pC(e,t){const r=e.pane??t.pane;return r?{...e,pane:r}:e}function tQe(e,t){return function(n,i){const a=vC(),o=e(pC(n,a),a);return qie(a.map,n.attribution),qR(o.current,n.eventHandlers),t(o.current,a,n,i),o}}var oE={exports:{}};/* @preserve +`:"
",x=f.join(y);this._showOrMove(s,function(){this._updateContentNotChangedOnAxis(r,u)?this._updatePosition(s,d,o[0],o[1],this._tooltipContent,u):this._showTooltipContent(s,x,u,Math.random()+"",o[0],o[1],d,null,h)})},t.prototype._showSeriesItemTooltip=function(r,n,i){var a=this._ecModel,o=je(n),s=o.seriesIndex,l=a.getSeriesByIndex(s),u=o.dataModel||l,c=o.dataIndex,f=o.dataType,h=u.getData(f),d=this._renderMode,v=r.positionDefault,m=og([h.getItemModel(c),u,l&&(l.coordinateSystem||{}).model],this._tooltipModel,v?{position:v}:null),y=m.get("trigger");if(!(y!=null&&y!=="item")){var x=u.getDataParams(c,f),_=new F2;x.marker=_.makeTooltipMarker("item",pf(x.color),d);var b=iG(u.formatTooltip(c,!1,f)),S=m.get("order"),T=m.get("valueFormatter"),C=b.frag,A=C?cG(T?ne({valueFormatter:T},C):C,_,d,S,a.get("useUTC"),m.get("textStyle")):b.text,P="item_"+u.name+"_"+c;this._showOrMove(m,function(){this._showTooltipContent(m,A,x,P,r.offsetX,r.offsetY,r.position,r.target,_)}),i({type:"showTip",dataIndexInside:c,dataIndex:h.getRawIndex(c),seriesIndex:s,from:this.uid})}},t.prototype._showComponentItemTooltip=function(r,n,i){var a=this._renderMode==="html",o=je(n),s=o.tooltipConfig,l=s.option||{},u=l.encodeHTMLContent;if(ge(l)){var c=l;l={content:c,formatter:c},u=!0}u&&a&&l.content&&(l=Me(l),l.content=En(l.content));var f=[l],h=this._ecModel.getComponent(o.componentMainType,o.componentIndex);h&&f.push(h),f.push({formatter:l.content});var d=r.positionDefault,v=og(f,this._tooltipModel,d?{position:d}:null),m=v.get("content"),y=Math.random()+"",x=new F2;this._showOrMove(v,function(){var _=Me(v.get("formatterParams")||{});this._showTooltipContent(v,m,_,y,r.offsetX,r.offsetY,r.position,n,x)}),i({type:"showTip",from:this.uid})},t.prototype._showTooltipContent=function(r,n,i,a,o,s,l,u,c){if(this._ticket="",!(!r.get("showContent")||!r.get("show"))){var f=this._tooltipContent;f.setEnterable(r.get("enterable"));var h=r.get("formatter");l=l||r.get("position");var d=n,v=this._getNearestPoint([o,s],i,r.get("trigger"),r.get("borderColor"),r.get("defaultBorderColor",!0)),m=v.color;if(h)if(ge(h)){var y=r.ecModel.get("useUTC"),x=ae(i)?i[0]:i,_=x&&x.axisType&&x.axisType.indexOf("time")>=0;d=h,_&&(d=y0(x.axisValue,d,y)),d=uj(d,i,!0)}else if(Ae(h)){var b=me(function(S,T){S===this._ticket&&(f.setContent(T,c,r,m,l),this._updatePosition(r,l,o,s,f,i,u))},this);this._ticket=a,d=h(i,a,b)}else d=h;f.setContent(d,c,r,m,l),f.show(r,m),this._updatePosition(r,l,o,s,f,i,u)}},t.prototype._getNearestPoint=function(r,n,i,a,o){if(i==="axis"||ae(n))return{color:a||o};if(!ae(n))return{color:a||n.color||n.borderColor}},t.prototype._updatePosition=function(r,n,i,a,o,s,l){var u=this._api.getWidth(),c=this._api.getHeight();n=n||r.get("position");var f=o.getSize(),h=r.get("align"),d=r.get("verticalAlign"),v=l&&l.getBoundingRect().clone();if(l&&v.applyTransform(l.transform),Ae(n)&&(n=n([i,a],s,o.el,v,{viewSize:[u,c],contentSize:f.slice()})),ae(n))i=pe(n[0],u),a=pe(n[1],c);else if(Le(n)){var m=n;m.width=f[0],m.height=f[1];var y=zt(m,{width:u,height:c});i=y.x,a=y.y,h=null,d=null}else if(ge(n)&&l){var x=yXe(n,v,f,r.get("borderWidth"));i=x[0],a=x[1]}else{var x=gXe(i,a,o,u,c,h?null:20,d?null:20);i=x[0],a=x[1]}if(h&&(i-=GH(h)?f[0]/2:h==="right"?f[0]:0),d&&(a-=GH(d)?f[1]/2:d==="bottom"?f[1]:0),wie(r)){var x=mXe(i,a,o,u,c);i=x[0],a=x[1]}o.moveTo(i,a)},t.prototype._updateContentNotChangedOnAxis=function(r,n){var i=this._lastDataByCoordSys,a=this._cbParamsList,o=!!i&&i.length===r.length;return o&&R(i,function(s,l){var u=s.dataByAxis||[],c=r[l]||{},f=c.dataByAxis||[];o=o&&u.length===f.length,o&&R(u,function(h,d){var v=f[d]||{},m=h.seriesDataIndices||[],y=v.seriesDataIndices||[];o=o&&h.value===v.value&&h.axisType===v.axisType&&h.axisId===v.axisId&&m.length===y.length,o&&R(m,function(x,_){var b=y[_];o=o&&x.seriesIndex===b.seriesIndex&&x.dataIndex===b.dataIndex}),a&&R(h.seriesDataIndices,function(x){var _=x.seriesIndex,b=n[_],S=a[_];b&&S&&S.data!==b.data&&(o=!1)})})}),this._lastDataByCoordSys=r,this._cbParamsList=n,!!o},t.prototype._hide=function(r){this._lastDataByCoordSys=null,r({type:"hideTip",from:this.uid})},t.prototype.dispose=function(r,n){nt.node||!n.getDom()||(Ay(this,"_updatePosition"),this._tooltipContent.dispose(),BE("itemTooltip",n))},t.type="tooltip",t}(Lt);function og(e,t,r){var n=t.ecModel,i;r?(i=new et(r,n,n),i=new et(t.option,i,n)):i=t;for(var a=e.length-1;a>=0;a--){var o=e[a];o&&(o instanceof et&&(o=o.get("tooltip",!0)),ge(o)&&(o={formatter:o}),o&&(i=new et(o,i,n)))}return i}function VH(e,t){return e.dispatchAction||me(t.dispatchAction,t)}function gXe(e,t,r,n,i,a,o){var s=r.getSize(),l=s[0],u=s[1];return a!=null&&(e+l+a+2>n?e-=l+a:e+=a),o!=null&&(t+u+o>i?t-=u+o:t+=o),[e,t]}function mXe(e,t,r,n,i){var a=r.getSize(),o=a[0],s=a[1];return e=Math.min(e+o,n)-o,t=Math.min(t+s,i)-s,e=Math.max(e,0),t=Math.max(t,0),[e,t]}function yXe(e,t,r,n){var i=r[0],a=r[1],o=Math.ceil(Math.SQRT2*n)+8,s=0,l=0,u=t.width,c=t.height;switch(e){case"inside":s=t.x+u/2-i/2,l=t.y+c/2-a/2;break;case"top":s=t.x+u/2-i/2,l=t.y-a-o;break;case"bottom":s=t.x+u/2-i/2,l=t.y+c+o;break;case"left":s=t.x-i-o,l=t.y+c/2-a/2;break;case"right":s=t.x+u+o,l=t.y+c/2-a/2}return[s,l]}function GH(e){return e==="center"||e==="middle"}function xXe(e,t,r){var n=IN(e).queryOptionMap,i=n.keys()[0];if(!(!i||i==="series")){var a=Rv(t,i,n.get(i),{useDefault:!1,enableAll:!1,enableNone:!1}),o=a.models[0];if(o){var s=r.getViewOfComponentModel(o),l;if(s.group.traverse(function(u){var c=je(u).tooltipConfig;if(c&&c.name===e.name)return l=u,!0}),l)return{componentMainType:i,componentIndex:o.componentIndex,el:l}}}}function _Xe(e){Ze(M0),e.registerComponentModel(rXe),e.registerComponentView(pXe),e.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},sr),e.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},sr)}var bXe=["rect","polygon","keep","clear"];function wXe(e,t){var r=kt(e?e.brush:[]);if(r.length){var n=[];R(r,function(l){var u=l.hasOwnProperty("toolbox")?l.toolbox:[];u instanceof Array&&(n=n.concat(u))});var i=e&&e.toolbox;ae(i)&&(i=i[0]),i||(i={feature:{}},e.toolbox=[i]);var a=i.feature||(i.feature={}),o=a.brush||(a.brush={}),s=o.type||(o.type=[]);s.push.apply(s,n),SXe(s),t&&!s.length&&s.push.apply(s,bXe)}}function SXe(e){var t={};R(e,function(r){t[r]=1}),e.length=0,R(t,function(r,n){e.push(n)})}var WH=R;function HH(e){if(e){for(var t in e)if(e.hasOwnProperty(t))return!0}}function ZE(e,t,r){var n={};return WH(t,function(a){var o=n[a]=i();WH(e[a],function(s,l){if(Ur.isValidType(l)){var u={type:l,visual:s};r&&r(u,a),o[l]=new Ur(u),l==="opacity"&&(u=Me(u),u.type="colorAlpha",o.__hidden.__alphaForOpacity=new Ur(u))}})}),n;function i(){var a=function(){};a.prototype.__hidden=a.prototype;var o=new a;return o}}function Aie(e,t,r){var n;R(r,function(i){t.hasOwnProperty(i)&&HH(t[i])&&(n=!0)}),n&&R(r,function(i){t.hasOwnProperty(i)&&HH(t[i])?e[i]=Me(t[i]):delete e[i]})}function TXe(e,t,r,n,i,a){var o={};R(e,function(f){var h=Ur.prepareVisualTypes(t[f]);o[f]=h});var s;function l(f){return xj(r,s,f)}function u(f,h){See(r,s,f,h)}r.each(c);function c(f,h){s=f;var d=r.getRawDataItem(s);if(!(d&&d.visualMap===!1))for(var v=n.call(i,f),m=t[v],y=o[v],x=0,_=y.length;x<_;x++){var b=y[x];m[b]&&m[b].applyVisual(f,l,u)}}}function CXe(e,t,r,n){var i={};return R(e,function(a){var o=Ur.prepareVisualTypes(t[a]);i[a]=o}),{progress:function(o,s){var l;n!=null&&(l=s.getDimensionIndex(n));function u(T){return xj(s,f,T)}function c(T,C){See(s,f,T,C)}for(var f,h=s.getStore();(f=o.next())!=null;){var d=s.getRawDataItem(f);if(!(d&&d.visualMap===!1))for(var v=n!=null?h.get(l,f):f,m=r(v),y=t[m],x=i[m],_=0,b=x.length;_t[0][1]&&(t[0][1]=a[0]),a[1]t[1][1]&&(t[1][1]=a[1])}return t&&qH(t)}};function qH(e){return new Oe(e[0][0],e[1][0],e[0][1]-e[0][0],e[1][1]-e[1][0])}var EXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){this.ecModel=r,this.api=n,this.model,(this._brushController=new fR(n.getZr())).on("brush",me(this._onBrush,this)).mount()},t.prototype.render=function(r,n,i,a){this.model=r,this._updateController(r,n,i,a)},t.prototype.updateTransform=function(r,n,i,a){Mie(n),this._updateController(r,n,i,a)},t.prototype.updateVisual=function(r,n,i,a){this.updateTransform(r,n,i,a)},t.prototype.updateView=function(r,n,i,a){this._updateController(r,n,i,a)},t.prototype._updateController=function(r,n,i,a){(!a||a.$from!==r.id)&&this._brushController.setPanels(r.brushTargetManager.makePanelOpts(i)).enableBrush(r.brushOption).updateCovers(r.areas.slice())},t.prototype.dispose=function(){this._brushController.dispose()},t.prototype._onBrush=function(r){var n=this.model.id,i=this.model.brushTargetManager.setOutputRanges(r.areas,this.ecModel);(!r.isEnd||r.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:n,areas:Me(i),$from:n}),r.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:n,areas:Me(i),$from:n})},t.type="brush",t}(Lt),OXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.areas=[],r.brushOption={},r}return t.prototype.optionUpdated=function(r,n){var i=this.option;!n&&Aie(i,r,["inBrush","outOfBrush"]);var a=i.inBrush=i.inBrush||{};i.outOfBrush=i.outOfBrush||{color:this.option.defaultOutOfBrushColor},a.hasOwnProperty("liftZ")||(a.liftZ=5)},t.prototype.setAreas=function(r){r&&(this.areas=se(r,function(n){return KH(this.option,n)},this))},t.prototype.setBrushOption=function(r){this.brushOption=KH(this.option,r),this.brushType=this.brushOption.brushType},t.type="brush",t.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],t.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:J.color.backgroundTint,borderColor:J.color.borderTint},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4,defaultOutOfBrushColor:J.color.disabled},t}(Ke);function KH(e,t){return He({brushType:e.brushType,brushMode:e.brushMode,transformable:e.transformable,brushStyle:new et(e.brushStyle).getItemStyle(),removeOnClick:e.removeOnClick,z:e.z},t,!0)}var DXe=["rect","polygon","lineX","lineY","keep","clear"],NXe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(r,n,i){var a,o,s;n.eachComponent({mainType:"brush"},function(l){a=l.brushType,o=l.brushOption.brushMode||"single",s=s||!!l.areas.length}),this._brushType=a,this._brushMode=o,R(r.get("type",!0),function(l){r.setIconStatus(l,(l==="keep"?o==="multiple":l==="clear"?s:l===a)?"emphasis":"normal")})},t.prototype.updateView=function(r,n,i){this.render(r,n,i)},t.prototype.getIcons=function(){var r=this.model,n=r.get("icon",!0),i={};return R(r.get("type",!0),function(a){n[a]&&(i[a]=n[a])}),i},t.prototype.onclick=function(r,n,i){var a=this._brushType,o=this._brushMode;i==="clear"?(n.dispatchAction({type:"axisAreaSelect",intervals:[]}),n.dispatchAction({type:"brush",command:"clear",areas:[]})):n.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:i==="keep"?a:a===i?!1:i,brushMode:i==="keep"?o==="multiple"?"single":"multiple":o}})},t.getDefaultOption=function(r){var n={show:!0,type:DXe.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:r.getLocaleModel().get(["toolbox","brush","title"])};return n},t}(ea);function jXe(e){e.registerComponentView(EXe),e.registerComponentModel(OXe),e.registerPreprocessor(wXe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,MXe),e.registerAction({type:"brush",event:"brush",update:"updateVisual"},function(t,r){r.eachComponent({mainType:"brush",query:t},function(n){n.setAreas(t.areas)})}),e.registerAction({type:"brushSelect",event:"brushSelected",update:"none"},sr),e.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},sr),kh("brush",NXe)}var RXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.layoutMode={type:"box",ignoreSize:!0},r}return t.type="title",t.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:"center",top:J.size.m,backgroundColor:J.color.transparent,borderColor:J.color.primary,borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:J.color.primary},subtextStyle:{fontSize:12,color:J.color.quaternary}},t}(Ke),BXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){if(this.group.removeAll(),!!r.get("show")){var a=this.group,o=r.getModel("textStyle"),s=r.getModel("subtextStyle"),l=r.get("textAlign"),u=Se(r.get("textBaseline"),r.get("textVerticalAlign")),c=new at({style:Pt(o,{text:r.get("text"),fill:o.getTextColor()},{disableBox:!0}),z2:10}),f=c.getBoundingRect(),h=r.get("subtext"),d=new at({style:Pt(s,{text:h,fill:s.getTextColor(),y:f.height+r.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),v=r.get("link"),m=r.get("sublink"),y=r.get("triggerEvent",!0);c.silent=!v&&!y,d.silent=!m&&!y,v&&c.on("click",function(){ww(v,"_"+r.get("target"))}),m&&d.on("click",function(){ww(m,"_"+r.get("subtarget"))}),je(c).eventData=je(d).eventData=y?{componentType:"title",componentIndex:r.componentIndex}:null,a.add(c),h&&a.add(d);var x=a.getBoundingRect(),_=r.getBoxLayoutParams();_.width=x.width,_.height=x.height;var b=Rr(r,i),S=zt(_,b.refContainer,r.get("padding"));l||(l=r.get("left")||r.get("right"),l==="middle"&&(l="center"),l==="right"?S.x+=S.width:l==="center"&&(S.x+=S.width/2)),u||(u=r.get("top")||r.get("bottom"),u==="center"&&(u="middle"),u==="bottom"?S.y+=S.height:u==="middle"&&(S.y+=S.height/2),u=u||"top"),a.x=S.x,a.y=S.y,a.markRedraw();var T={align:l,verticalAlign:u};c.setStyle(T),d.setStyle(T),x=a.getBoundingRect();var C=S.margin,A=r.getItemStyle(["color","opacity"]);A.fill=r.get("backgroundColor");var P=new Xe({shape:{x:x.x-C[3],y:x.y-C[0],width:x.width+C[1]+C[3],height:x.height+C[0]+C[2],r:r.get("borderRadius")},style:A,subPixelOptimize:!0,silent:!0});a.add(P)}},t.type="title",t}(Lt);function zXe(e){e.registerComponentModel(RXe),e.registerComponentView(BXe)}var JH=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.layoutMode="box",r}return t.prototype.init=function(r,n,i){this.mergeDefaultAndTheme(r,i),this._initData()},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),this._initData()},t.prototype.setCurrentIndex=function(r){r==null&&(r=this.option.currentIndex);var n=this._data.count();this.option.loop?r=(r%n+n)%n:(r>=n&&(r=n-1),r<0&&(r=0)),this.option.currentIndex=r},t.prototype.getCurrentIndex=function(){return this.option.currentIndex},t.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},t.prototype.setPlayState=function(r){this.option.autoPlay=!!r},t.prototype.getPlayState=function(){return!!this.option.autoPlay},t.prototype._initData=function(){var r=this.option,n=r.data||[],i=r.axisType,a=this._names=[],o;i==="category"?(o=[],R(n,function(u,c){var f=Er(jv(u),""),h;Le(u)?(h=Me(u),h.value=c):h=c,o.push(h),a.push(f)})):o=n;var s={category:"ordinal",time:"time",value:"number"}[i]||"number",l=this._data=new Dn([{name:"value",type:s}],this);l.initData(o,a)},t.prototype.getData=function(){return this._data},t.prototype.getCategories=function(){if(this.get("axisType")==="category")return this._names.slice()},t.type="timeline",t.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:J.size.m,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:J.color.secondary},data:[]},t}(Ke),Pie=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="timeline.slider",t.defaultOption=Mu(JH.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:J.color.border,borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:J.color.accent10},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:J.color.tertiary},itemStyle:{color:J.color.accent20,borderWidth:0},checkpointStyle:{symbol:"circle",symbolSize:15,color:J.color.accent50,borderColor:J.color.accent50,borderWidth:0,shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"rgba(0, 0, 0, 0)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M15 0C23.2843 0 30 6.71573 30 15C30 23.2843 23.2843 30 15 30C6.71573 30 0 23.2843 0 15C0 6.71573 6.71573 0 15 0ZM15 3C8.37258 3 3 8.37258 3 15C3 21.6274 8.37258 27 15 27C21.6274 27 27 21.6274 27 15C27 8.37258 21.6274 3 15 3ZM11.5 10.6699C11.5 9.90014 12.3333 9.41887 13 9.80371L20.5 14.1338C21.1667 14.5187 21.1667 15.4813 20.5 15.8662L13 20.1963C12.3333 20.5811 11.5 20.0999 11.5 19.3301V10.6699Z",stopIcon:"path://M15 0C23.2843 0 30 6.71573 30 15C30 23.2843 23.2843 30 15 30C6.71573 30 0 23.2843 0 15C0 6.71573 6.71573 0 15 0ZM15 3C8.37258 3 3 8.37258 3 15C3 21.6274 8.37258 27 15 27C21.6274 27 27 21.6274 27 15C27 8.37258 21.6274 3 15 3ZM11.5 10C12.3284 10 13 10.6716 13 11.5V18.5C13 19.3284 12.3284 20 11.5 20C10.6716 20 10 19.3284 10 18.5V11.5C10 10.6716 10.6716 10 11.5 10ZM18.5 10C19.3284 10 20 10.6716 20 11.5V18.5C20 19.3284 19.3284 20 18.5 20C17.6716 20 17 19.3284 17 18.5V11.5C17 10.6716 17.6716 10 18.5 10Z",nextIcon:"path://M0.838834 18.7383C0.253048 18.1525 0.253048 17.2028 0.838834 16.617L7.55635 9.89949L0.838834 3.18198C0.253048 2.59619 0.253048 1.64645 0.838834 1.06066C1.42462 0.474874 2.37437 0.474874 2.96015 1.06066L10.7383 8.83883L10.8412 8.95277C11.2897 9.50267 11.2897 10.2963 10.8412 10.8462L10.7383 10.9602L2.96015 18.7383C2.37437 19.3241 1.42462 19.3241 0.838834 18.7383Z",prevIcon:"path://M10.9602 1.06066C11.5459 1.64645 11.5459 2.59619 10.9602 3.18198L4.24264 9.89949L10.9602 16.617C11.5459 17.2028 11.5459 18.1525 10.9602 18.7383C10.3744 19.3241 9.42462 19.3241 8.83883 18.7383L1.06066 10.9602L0.957771 10.8462C0.509245 10.2963 0.509245 9.50267 0.957771 8.95277L1.06066 8.83883L8.83883 1.06066C9.42462 0.474874 10.3744 0.474874 10.9602 1.06066Z",prevBtnSize:18,nextBtnSize:18,color:J.color.accent50,borderColor:J.color.accent50,borderWidth:0},emphasis:{label:{show:!0,color:J.color.accent60},itemStyle:{color:J.color.accent60,borderColor:J.color.accent60},controlStyle:{color:J.color.accent70,borderColor:J.color.accent70}},progress:{lineStyle:{color:J.color.accent30},itemStyle:{color:J.color.accent40}},data:[]}),t}(JH);cr(Pie,XT.prototype);var $Xe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="timeline",t}(Lt),FXe=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this,r,n,i)||this;return o.type=a||"value",o}return t.prototype.getLabelModel=function(){return this.model.getModel("label")},t.prototype.isHorizontal=function(){return this.model.get("orient")==="horizontal"},t}(ba),lP=Math.PI,QH=Je(),VXe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(r,n){this.api=n},t.prototype.render=function(r,n,i){if(this.model=r,this.api=i,this.ecModel=n,this.group.removeAll(),r.get("show",!0)){var a=this._layout(r,i),o=this._createGroup("_mainGroup"),s=this._createGroup("_labelGroup"),l=this._axis=this._createAxis(a,r);r.formatTooltip=function(u){var c=l.scale.getLabel({value:u});return Ar("nameValue",{noName:!0,value:c})},R(["AxisLine","AxisTick","Control","CurrentPointer"],function(u){this["_render"+u](a,o,l,r)},this),this._renderAxisLabel(a,s,l,r),this._position(a,r)}this._doPlayStop(),this._updateTicksStatus()},t.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},t.prototype.dispose=function(){this._clearTimer()},t.prototype._layout=function(r,n){var i=r.get(["label","position"]),a=r.get("orient"),o=WXe(r,n),s;i==null||i==="auto"?s=a==="horizontal"?o.y+o.height/2=0||s==="+"?"left":"right"},u={horizontal:s>=0||s==="+"?"top":"bottom",vertical:"middle"},c={horizontal:0,vertical:lP/2},f=a==="vertical"?o.height:o.width,h=r.getModel("controlStyle"),d=h.get("show",!0),v=d?h.get("itemSize"):0,m=d?h.get("itemGap"):0,y=v+m,x=r.get(["label","rotate"])||0;x=x*lP/180;var _,b,S,T=h.get("position",!0),C=d&&h.get("showPlayBtn",!0),A=d&&h.get("showPrevBtn",!0),P=d&&h.get("showNextBtn",!0),I=0,k=f;T==="left"||T==="bottom"?(C&&(_=[0,0],I+=y),A&&(b=[I,0],I+=y),P&&(S=[k-v,0],k-=y)):(C&&(_=[k-v,0],k-=y),A&&(b=[0,0],I+=y),P&&(S=[k-v,0],k-=y));var O=[I,k];return r.get("inverse")&&O.reverse(),{viewRect:o,mainLength:f,orient:a,rotation:c[a],labelRotation:x,labelPosOpt:s,labelAlign:r.get(["label","align"])||l[a],labelBaseline:r.get(["label","verticalAlign"])||r.get(["label","baseline"])||u[a],playPosition:_,prevBtnPosition:b,nextBtnPosition:S,axisExtent:O,controlSize:v,controlGap:m}},t.prototype._position=function(r,n){var i=this._mainGroup,a=this._labelGroup,o=r.viewRect;if(r.orient==="vertical"){var s=Hr(),l=o.x,u=o.y+o.height;qa(s,s,[-l,-u]),el(s,s,-lP/2),qa(s,s,[l,u]),o=o.clone(),o.applyTransform(s)}var c=_(o),f=_(i.getBoundingRect()),h=_(a.getBoundingRect()),d=[i.x,i.y],v=[a.x,a.y];v[0]=d[0]=c[0][0];var m=r.labelPosOpt;if(m==null||ge(m)){var y=m==="+"?0:1;b(d,f,c,1,y),b(v,h,c,1,1-y)}else{var y=m>=0?0:1;b(d,f,c,1,y),v[1]=d[1]+m}i.setPosition(d),a.setPosition(v),i.rotation=a.rotation=r.rotation,x(i),x(a);function x(S){S.originX=c[0][0]-S.x,S.originY=c[1][0]-S.y}function _(S){return[[S.x,S.x+S.width],[S.y,S.y+S.height]]}function b(S,T,C,A,P){S[A]+=C[A][P]-T[A][P]}},t.prototype._createAxis=function(r,n){var i=n.getData(),a=n.get("axisType"),o=GXe(n,a);o.getTicks=function(){return i.mapArray(["value"],function(u){return{value:u}})};var s=i.getDataExtent("value");o.setExtent(s[0],s[1]),o.calcNiceTicks();var l=new FXe("value",o,r.axisExtent,a);return l.model=n,l},t.prototype._createGroup=function(r){var n=this[r]=new Pe;return this.group.add(n),n},t.prototype._renderAxisLine=function(r,n,i,a){var o=i.getExtent();if(a.get(["lineStyle","show"])){var s=new mr({shape:{x1:o[0],y1:0,x2:o[1],y2:0},style:ne({lineCap:"round"},a.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});n.add(s);var l=this._progressLine=new mr({shape:{x1:o[0],x2:this._currentPointer?this._currentPointer.x:o[0],y1:0,y2:0},style:ke({lineCap:"round",lineWidth:s.style.lineWidth},a.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});n.add(l)}},t.prototype._renderAxisTick=function(r,n,i,a){var o=this,s=a.getData(),l=i.scale.getTicks();this._tickSymbols=[],R(l,function(u){var c=i.dataToCoord(u.value),f=s.getItemModel(u.value),h=f.getModel("itemStyle"),d=f.getModel(["emphasis","itemStyle"]),v=f.getModel(["progress","itemStyle"]),m={x:c,y:0,onclick:me(o._changeTimeline,o,u.value)},y=eU(f,h,n,m);y.ensureState("emphasis").style=d.getItemStyle(),y.ensureState("progress").style=v.getItemStyle(),Jl(y);var x=je(y);f.get("tooltip")?(x.dataIndex=u.value,x.dataModel=a):x.dataIndex=x.dataModel=null,o._tickSymbols.push(y)})},t.prototype._renderAxisLabel=function(r,n,i,a){var o=this,s=i.getLabelModel();if(s.get("show")){var l=a.getData(),u=i.getViewLabels();this._tickLabels=[],R(u,function(c){var f=c.tickValue,h=l.getItemModel(f),d=h.getModel("label"),v=h.getModel(["emphasis","label"]),m=h.getModel(["progress","label"]),y=i.dataToCoord(c.tickValue),x=new at({x:y,y:0,rotation:r.labelRotation-r.rotation,onclick:me(o._changeTimeline,o,f),silent:!1,style:Pt(d,{text:c.formattedLabel,align:r.labelAlign,verticalAlign:r.labelBaseline})});x.ensureState("emphasis").style=Pt(v),x.ensureState("progress").style=Pt(m),n.add(x),Jl(x),QH(x).dataIndex=f,o._tickLabels.push(x)})}},t.prototype._renderControl=function(r,n,i,a){var o=r.controlSize,s=r.rotation,l=a.getModel("controlStyle").getItemStyle(),u=a.getModel(["emphasis","controlStyle"]).getItemStyle(),c=a.getPlayState(),f=a.get("inverse",!0);h(r.nextBtnPosition,"next",me(this._changeTimeline,this,f?"-":"+")),h(r.prevBtnPosition,"prev",me(this._changeTimeline,this,f?"+":"-")),h(r.playPosition,c?"stop":"play",me(this._handlePlayClick,this,!c),!0);function h(d,v,m,y){if(d){var x=Ka(Se(a.get(["controlStyle",v+"BtnSize"]),o),o),_=[0,-x/2,x,x],b=HXe(a,v+"Icon",_,{x:d[0],y:d[1],originX:o/2,originY:0,rotation:y?-s:0,rectHover:!0,style:l,onclick:m});b.ensureState("emphasis").style=u,n.add(b),Jl(b)}}},t.prototype._renderCurrentPointer=function(r,n,i,a){var o=a.getData(),s=a.getCurrentIndex(),l=o.getItemModel(s).getModel("checkpointStyle"),u=this,c={onCreate:function(f){f.draggable=!0,f.drift=me(u._handlePointerDrag,u),f.ondragend=me(u._handlePointerDragend,u),tU(f,u._progressLine,s,i,a,!0)},onUpdate:function(f){tU(f,u._progressLine,s,i,a)}};this._currentPointer=eU(l,l,this._mainGroup,{},this._currentPointer,c)},t.prototype._handlePlayClick=function(r){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:r,from:this.uid})},t.prototype._handlePointerDrag=function(r,n,i){this._clearTimer(),this._pointerChangeTimeline([i.offsetX,i.offsetY])},t.prototype._handlePointerDragend=function(r){this._pointerChangeTimeline([r.offsetX,r.offsetY],!0)},t.prototype._pointerChangeTimeline=function(r,n){var i=this._toAxisCoord(r)[0],a=this._axis,o=Ai(a.getExtent().slice());i>o[1]&&(i=o[1]),i=0&&(s[o]=+s[o].toFixed(v)),[s,d]}var z_={min:Fe(B_,"min"),max:Fe(B_,"max"),average:Fe(B_,"average"),median:Fe(B_,"median")};function Vy(e,t){if(t){var r=e.getData(),n=e.coordinateSystem,i=n&&n.dimensions;if(!KXe(t)&&!ae(t.coord)&&ae(i)){var a=kie(t,r,n,e);if(t=Me(t),t.type&&z_[t.type]&&a.baseAxis&&a.valueAxis){var o=We(i,a.baseAxis.dim),s=We(i,a.valueAxis.dim),l=z_[t.type](r,a.valueAxis.dim,a.baseDataDim,a.valueDataDim,o,s);t.coord=l[0],t.value=l[1]}else t.coord=[t.xAxis!=null?t.xAxis:t.radiusAxis,t.yAxis!=null?t.yAxis:t.angleAxis]}if(t.coord==null||!ae(i)){t.coord=[];var u=e.getBaseAxis();if(u&&t.type&&z_[t.type]){var c=n.getOtherAxis(u);c&&(t.value=nS(r,r.mapDimension(c.dim),t.type))}}else for(var f=t.coord,h=0;h<2;h++)z_[f[h]]&&(f[h]=nS(r,r.mapDimension(i[h]),f[h]));return t}}function kie(e,t,r,n){var i={};return e.valueIndex!=null||e.valueDim!=null?(i.valueDataDim=e.valueIndex!=null?t.getDimension(e.valueIndex):e.valueDim,i.valueAxis=r.getAxis(JXe(n,i.valueDataDim)),i.baseAxis=r.getOtherAxis(i.valueAxis),i.baseDataDim=t.mapDimension(i.baseAxis.dim)):(i.baseAxis=n.getBaseAxis(),i.valueAxis=r.getOtherAxis(i.baseAxis),i.baseDataDim=t.mapDimension(i.baseAxis.dim),i.valueDataDim=t.mapDimension(i.valueAxis.dim)),i}function JXe(e,t){var r=e.getData().getDimensionInfo(t);return r&&r.coordDim}function Gy(e,t){return e&&e.containData&&t.coord&&!XE(t)?e.containData(t.coord):!0}function QXe(e,t,r){return e&&e.containZone&&t.coord&&r.coord&&!XE(t)&&!XE(r)?e.containZone(t.coord,r.coord):!0}function Lie(e,t){return e?function(r,n,i,a){var o=a<2?r.coord&&r.coord[a]:r.value;return tu(o,t[a])}:function(r,n,i,a){return tu(r.value,t[a])}}function nS(e,t,r){if(r==="average"){var n=0,i=0;return e.each(t,function(a,o){isNaN(a)||(n+=a,i++)}),n/i}else return r==="median"?e.getMedian(t):e.getDataExtent(t)[r==="max"?1:0]}var uP=Je(),WR=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.init=function(){this.markerGroupMap=we()},t.prototype.render=function(r,n,i){var a=this,o=this.markerGroupMap;o.each(function(s){uP(s).keep=!1}),n.eachSeries(function(s){var l=Zo.getMarkerModelFromSeries(s,a.type);l&&a.renderSeries(s,l,n,i)}),o.each(function(s){!uP(s).keep&&a.group.remove(s.group)}),eqe(n,o,this.type)},t.prototype.markKeep=function(r){uP(r).keep=!0},t.prototype.toggleBlurSeries=function(r,n){var i=this;R(r,function(a){var o=Zo.getMarkerModelFromSeries(a,i.type);if(o){var s=o.getData();s.eachItemGraphicEl(function(l){l&&(n?HJ(l):zN(l))})}})},t.type="marker",t}(Lt);function eqe(e,t,r){e.eachSeries(function(n){var i=Zo.getMarkerModelFromSeries(n,r),a=t.get(n.id);if(i&&a&&a.group){var o=vf(i),s=o.z,l=o.zlevel;HT(a.group,s,l)}})}function nU(e,t,r){var n=t.coordinateSystem,i=r.getWidth(),a=r.getHeight(),o=n&&n.getArea&&n.getArea();e.each(function(s){var l=e.getItemModel(s),u=l.get("relativeTo")==="coordinate",c=u?o?o.width:0:i,f=u?o?o.height:0:a,h=u&&o?o.x:0,d=u&&o?o.y:0,v,m=pe(l.get("x"),c)+h,y=pe(l.get("y"),f)+d;if(!isNaN(m)&&!isNaN(y))v=[m,y];else if(t.getMarkerPosition)v=t.getMarkerPosition(e.getValues(e.dimensions,s));else if(n){var x=e.get(n.dimensions[0],s),_=e.get(n.dimensions[1],s);v=n.dataToPoint([x,_])}isNaN(m)||(v[0]=m),isNaN(y)||(v[1]=y),e.setItemLayout(s,v)})}var tqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Zo.getMarkerModelFromSeries(a,"markPoint");o&&(nU(o.getData(),a,i),this.markerGroupMap.get(a.id).updateLayout())},this)},t.prototype.renderSeries=function(r,n,i,a){var o=r.coordinateSystem,s=r.id,l=r.getData(),u=this.markerGroupMap,c=u.get(s)||u.set(s,new S0),f=rqe(o,r,n);n.setData(f),nU(n.getData(),r,a),f.each(function(h){var d=f.getItemModel(h),v=d.getShallow("symbol"),m=d.getShallow("symbolSize"),y=d.getShallow("symbolRotate"),x=d.getShallow("symbolOffset"),_=d.getShallow("symbolKeepAspect");if(Ae(v)||Ae(m)||Ae(y)||Ae(x)){var b=n.getRawValue(h),S=n.getDataParams(h);Ae(v)&&(v=v(b,S)),Ae(m)&&(m=m(b,S)),Ae(y)&&(y=y(b,S)),Ae(x)&&(x=x(b,S))}var T=d.getModel("itemStyle").getItemStyle(),C=d.get("z2"),A=_0(l,"color");T.fill||(T.fill=A),f.setItemVisual(h,{z2:Se(C,0),symbol:v,symbolSize:m,symbolRotate:y,symbolOffset:x,symbolKeepAspect:_,style:T})}),c.updateData(f),this.group.add(c.group),f.eachItemGraphicEl(function(h){h.traverse(function(d){je(d).dataModel=n})}),this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markPoint",t}(WR);function rqe(e,t,r){var n;e?n=se(e&&e.dimensions,function(s){var l=t.getData().getDimensionInfo(t.getData().mapDimension(s))||{};return ne(ne({},l),{name:s,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var i=new Dn(n,r),a=se(r.get("data"),Fe(Vy,t));e&&(a=ht(a,Fe(Gy,e)));var o=Lie(!!e,n);return i.initData(a,null,o),i}function nqe(e){e.registerComponentModel(qXe),e.registerComponentView(tqe),e.registerPreprocessor(function(t){GR(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})})}var iqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.createMarkerModelFromSeries=function(r,n,i){return new t(r,n,i)},t.type="markLine",t.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},t}(Zo),$_=Je(),aqe=function(e,t,r,n){var i=e.getData(),a;if(ae(n))a=n;else{var o=n.type;if(o==="min"||o==="max"||o==="average"||o==="median"||n.xAxis!=null||n.yAxis!=null){var s=void 0,l=void 0;if(n.yAxis!=null||n.xAxis!=null)s=t.getAxis(n.yAxis!=null?"y":"x"),l=nn(n.yAxis,n.xAxis);else{var u=kie(n,i,t,e);s=u.valueAxis;var c=Ej(i,u.valueDataDim);l=nS(i,c,o)}var f=s.dim==="x"?0:1,h=1-f,d=Me(n),v={coord:[]};d.type=null,d.coord=[],d.coord[h]=-1/0,v.coord[h]=1/0;var m=r.get("precision");m>=0&&ot(l)&&(l=+l.toFixed(Math.min(m,20))),d.coord[f]=v.coord[f]=l,a=[d,v,{type:o,valueIndex:n.valueIndex,value:l}]}else a=[]}var y=[Vy(e,a[0]),Vy(e,a[1]),ne({},a[2])];return y[2].type=y[2].type||null,He(y[2],y[0]),He(y[2],y[1]),y};function iS(e){return!isNaN(e)&&!isFinite(e)}function iU(e,t,r,n){var i=1-e,a=n.dimensions[e];return iS(t[i])&&iS(r[i])&&t[e]===r[e]&&n.getAxis(a).containData(t[e])}function oqe(e,t){if(e.type==="cartesian2d"){var r=t[0].coord,n=t[1].coord;if(r&&n&&(iU(1,r,n,e)||iU(0,r,n,e)))return!0}return Gy(e,t[0])&&Gy(e,t[1])}function cP(e,t,r,n,i){var a=n.coordinateSystem,o=e.getItemModel(t),s,l=pe(o.get("x"),i.getWidth()),u=pe(o.get("y"),i.getHeight());if(!isNaN(l)&&!isNaN(u))s=[l,u];else{if(n.getMarkerPosition)s=n.getMarkerPosition(e.getValues(e.dimensions,t));else{var c=a.dimensions,f=e.get(c[0],t),h=e.get(c[1],t);s=a.dataToPoint([f,h])}if(fu(a,"cartesian2d")){var d=a.getAxis("x"),v=a.getAxis("y"),c=a.dimensions;iS(e.get(c[0],t))?s[0]=d.toGlobalCoord(d.getExtent()[r?0:1]):iS(e.get(c[1],t))&&(s[1]=v.toGlobalCoord(v.getExtent()[r?0:1]))}isNaN(l)||(s[0]=l),isNaN(u)||(s[1]=u)}e.setItemLayout(t,s)}var sqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Zo.getMarkerModelFromSeries(a,"markLine");if(o){var s=o.getData(),l=$_(o).from,u=$_(o).to;l.each(function(c){cP(l,c,!0,a,i),cP(u,c,!1,a,i)}),s.each(function(c){s.setItemLayout(c,[l.getItemLayout(c),u.getItemLayout(c)])}),this.markerGroupMap.get(a.id).updateLayout()}},this)},t.prototype.renderSeries=function(r,n,i,a){var o=r.coordinateSystem,s=r.id,l=r.getData(),u=this.markerGroupMap,c=u.get(s)||u.set(s,new uR);this.group.add(c.group);var f=lqe(o,r,n),h=f.from,d=f.to,v=f.line;$_(n).from=h,$_(n).to=d,n.setData(v);var m=n.get("symbol"),y=n.get("symbolSize"),x=n.get("symbolRotate"),_=n.get("symbolOffset");ae(m)||(m=[m,m]),ae(y)||(y=[y,y]),ae(x)||(x=[x,x]),ae(_)||(_=[_,_]),f.from.each(function(S){b(h,S,!0),b(d,S,!1)}),v.each(function(S){var T=v.getItemModel(S),C=T.getModel("lineStyle").getLineStyle();v.setItemLayout(S,[h.getItemLayout(S),d.getItemLayout(S)]);var A=T.get("z2");C.stroke==null&&(C.stroke=h.getItemVisual(S,"style").fill),v.setItemVisual(S,{z2:Se(A,0),fromSymbolKeepAspect:h.getItemVisual(S,"symbolKeepAspect"),fromSymbolOffset:h.getItemVisual(S,"symbolOffset"),fromSymbolRotate:h.getItemVisual(S,"symbolRotate"),fromSymbolSize:h.getItemVisual(S,"symbolSize"),fromSymbol:h.getItemVisual(S,"symbol"),toSymbolKeepAspect:d.getItemVisual(S,"symbolKeepAspect"),toSymbolOffset:d.getItemVisual(S,"symbolOffset"),toSymbolRotate:d.getItemVisual(S,"symbolRotate"),toSymbolSize:d.getItemVisual(S,"symbolSize"),toSymbol:d.getItemVisual(S,"symbol"),style:C})}),c.updateData(v),f.line.eachItemGraphicEl(function(S){je(S).dataModel=n,S.traverse(function(T){je(T).dataModel=n})});function b(S,T,C){var A=S.getItemModel(T);cP(S,T,C,r,a);var P=A.getModel("itemStyle").getItemStyle();P.fill==null&&(P.fill=_0(l,"color")),S.setItemVisual(T,{symbolKeepAspect:A.get("symbolKeepAspect"),symbolOffset:Se(A.get("symbolOffset",!0),_[C?0:1]),symbolRotate:Se(A.get("symbolRotate",!0),x[C?0:1]),symbolSize:Se(A.get("symbolSize"),y[C?0:1]),symbol:Se(A.get("symbol",!0),m[C?0:1]),style:P})}this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markLine",t}(WR);function lqe(e,t,r){var n;e?n=se(e&&e.dimensions,function(u){var c=t.getData().getDimensionInfo(t.getData().mapDimension(u))||{};return ne(ne({},c),{name:u,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var i=new Dn(n,r),a=new Dn(n,r),o=new Dn([],r),s=se(r.get("data"),Fe(aqe,t,e,r));e&&(s=ht(s,Fe(oqe,e)));var l=Lie(!!e,n);return i.initData(se(s,function(u){return u[0]}),null,l),a.initData(se(s,function(u){return u[1]}),null,l),o.initData(se(s,function(u){return u[2]})),o.hasItemOption=!0,{from:i,to:a,line:o}}function uqe(e){e.registerComponentModel(iqe),e.registerComponentView(sqe),e.registerPreprocessor(function(t){GR(t.series,"markLine")&&(t.markLine=t.markLine||{})})}var cqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.createMarkerModelFromSeries=function(r,n,i){return new t(r,n,i)},t.type="markArea",t.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},t}(Zo),F_=Je(),fqe=function(e,t,r,n){var i=n[0],a=n[1];if(!(!i||!a)){var o=Vy(e,i),s=Vy(e,a),l=o.coord,u=s.coord;l[0]=nn(l[0],-1/0),l[1]=nn(l[1],-1/0),u[0]=nn(u[0],1/0),u[1]=nn(u[1],1/0);var c=PT([{},o,s]);return c.coord=[o.coord,s.coord],c.x0=o.x,c.y0=o.y,c.x1=s.x,c.y1=s.y,c}};function aS(e){return!isNaN(e)&&!isFinite(e)}function aU(e,t,r,n){var i=1-e;return aS(t[i])&&aS(r[i])}function hqe(e,t){var r=t.coord[0],n=t.coord[1],i={coord:r,x:t.x0,y:t.y0},a={coord:n,x:t.x1,y:t.y1};return fu(e,"cartesian2d")?r&&n&&(aU(1,r,n)||aU(0,r,n))?!0:QXe(e,i,a):Gy(e,i)||Gy(e,a)}function oU(e,t,r,n,i){var a=n.coordinateSystem,o=e.getItemModel(t),s,l=pe(o.get(r[0]),i.getWidth()),u=pe(o.get(r[1]),i.getHeight());if(!isNaN(l)&&!isNaN(u))s=[l,u];else{if(n.getMarkerPosition){var c=e.getValues(["x0","y0"],t),f=e.getValues(["x1","y1"],t),h=a.clampData(c),d=a.clampData(f),v=[];r[0]==="x0"?v[0]=h[0]>d[0]?f[0]:c[0]:v[0]=h[0]>d[0]?c[0]:f[0],r[1]==="y0"?v[1]=h[1]>d[1]?f[1]:c[1]:v[1]=h[1]>d[1]?c[1]:f[1],s=n.getMarkerPosition(v,r,!0)}else{var m=e.get(r[0],t),y=e.get(r[1],t),x=[m,y];a.clampData&&a.clampData(x,x),s=a.dataToPoint(x,!0)}if(fu(a,"cartesian2d")){var _=a.getAxis("x"),b=a.getAxis("y"),m=e.get(r[0],t),y=e.get(r[1],t);aS(m)?s[0]=_.toGlobalCoord(_.getExtent()[r[0]==="x0"?0:1]):aS(y)&&(s[1]=b.toGlobalCoord(b.getExtent()[r[1]==="y0"?0:1]))}isNaN(l)||(s[0]=l),isNaN(u)||(s[1]=u)}return s}var sU=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],dqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Zo.getMarkerModelFromSeries(a,"markArea");if(o){var s=o.getData();s.each(function(l){var u=se(sU,function(f){return oU(s,l,f,a,i)});s.setItemLayout(l,u);var c=s.getItemGraphicEl(l);c.setShape("points",u)})}},this)},t.prototype.renderSeries=function(r,n,i,a){var o=r.coordinateSystem,s=r.id,l=r.getData(),u=this.markerGroupMap,c=u.get(s)||u.set(s,{group:new Pe});this.group.add(c.group),this.markKeep(c);var f=vqe(o,r,n);n.setData(f),f.each(function(h){var d=se(sU,function(k){return oU(f,h,k,r,a)}),v=o.getAxis("x").scale,m=o.getAxis("y").scale,y=v.getExtent(),x=m.getExtent(),_=[v.parse(f.get("x0",h)),v.parse(f.get("x1",h))],b=[m.parse(f.get("y0",h)),m.parse(f.get("y1",h))];Ai(_),Ai(b);var S=!(y[0]>_[1]||y[1]<_[0]||x[0]>b[1]||x[1]=0},t.prototype.getOrient=function(){return this.get("orient")==="vertical"?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},t.type="legend.plain",t.dependencies=["series"],t.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",bottom:J.size.m,align:"auto",backgroundColor:J.color.transparent,borderColor:J.color.border,borderRadius:0,borderWidth:0,padding:5,itemGap:8,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:J.color.disabled,inactiveBorderColor:J.color.disabled,inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:J.color.disabled,inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:J.color.secondary},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:J.color.tertiary,borderWidth:1,borderColor:J.color.border},emphasis:{selectorLabel:{show:!0,color:J.color.quaternary}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1},triggerEvent:!1},t}(Ke),_h=Fe,KE=R,V_=Pe,Iie=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.newlineDisabled=!1,r}return t.prototype.init=function(){this.group.add(this._contentGroup=new V_),this.group.add(this._selectorGroup=new V_),this._isFirstRender=!0},t.prototype.getContentGroup=function(){return this._contentGroup},t.prototype.getSelectorGroup=function(){return this._selectorGroup},t.prototype.render=function(r,n,i){var a=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),!!r.get("show",!0)){var o=r.get("align"),s=r.get("orient");(!o||o==="auto")&&(o=r.get("left")==="right"&&s==="vertical"?"right":"left");var l=r.get("selector",!0),u=r.get("selectorPosition",!0);l&&(!u||u==="auto")&&(u=s==="horizontal"?"end":"start"),this.renderInner(o,r,n,i,l,s,u);var c=Rr(r,i).refContainer,f=r.getBoxLayoutParams(),h=r.get("padding"),d=zt(f,c,h),v=this.layoutInner(r,o,d,a,l,u),m=zt(ke({width:v.width,height:v.height},f),c,h);this.group.x=m.x-v.x,this.group.y=m.y-v.y,this.group.markRedraw(),this.group.add(this._backgroundEl=xie(v,r))}},t.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},t.prototype.renderInner=function(r,n,i,a,o,s,l){var u=this.getContentGroup(),c=we(),f=n.get("selectedMode"),h=n.get("triggerEvent"),d=[];i.eachRawSeries(function(v){!v.get("legendHoverLink")&&d.push(v.id)}),KE(n.getData(),function(v,m){var y=this,x=v.get("name");if(!this.newlineDisabled&&(x===""||x===` +`)){var _=new V_;_.newline=!0,u.add(_);return}var b=i.getSeriesByName(x)[0];if(!c.get(x))if(b){var S=b.getData(),T=S.getVisual("legendLineStyle")||{},C=S.getVisual("legendIcon"),A=S.getVisual("style"),P=this._createItem(b,x,m,v,n,r,T,A,C,f,a);P.on("click",_h(lU,x,null,a,d)).on("mouseover",_h(JE,b.name,null,a,d)).on("mouseout",_h(QE,b.name,null,a,d)),i.ssr&&P.eachChild(function(I){var k=je(I);k.seriesIndex=b.seriesIndex,k.dataIndex=m,k.ssrType="legend"}),h&&P.eachChild(function(I){y.packEventData(I,n,b,m,x)}),c.set(x,!0)}else i.eachRawSeries(function(I){var k=this;if(!c.get(x)&&I.legendVisualProvider){var O=I.legendVisualProvider;if(!O.containName(x))return;var D=O.indexOfName(x),N=O.getItemVisual(D,"style"),z=O.getItemVisual(D,"legendIcon"),V=On(N.fill);V&&V[3]===0&&(V[3]=.2,N=ne(ne({},N),{fill:la(V,"rgba")}));var F=this._createItem(I,x,m,v,n,r,{},N,z,f,a);F.on("click",_h(lU,null,x,a,d)).on("mouseover",_h(JE,null,x,a,d)).on("mouseout",_h(QE,null,x,a,d)),i.ssr&&F.eachChild(function($){var B=je($);B.seriesIndex=I.seriesIndex,B.dataIndex=m,B.ssrType="legend"}),h&&F.eachChild(function($){k.packEventData($,n,I,m,x)}),c.set(x,!0)}},this)},this),o&&this._createSelector(o,n,a,s,l)},t.prototype.packEventData=function(r,n,i,a,o){var s={componentType:"legend",componentIndex:n.componentIndex,dataIndex:a,value:o,seriesIndex:i.seriesIndex};je(r).eventData=s},t.prototype._createSelector=function(r,n,i,a,o){var s=this.getSelectorGroup();KE(r,function(u){var c=u.type,f=new at({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){i.dispatchAction({type:c==="all"?"legendAllSelect":"legendInverseSelect",legendId:n.id})}});s.add(f);var h=n.getModel("selectorLabel"),d=n.getModel(["emphasis","selectorLabel"]);Zr(f,{normal:h,emphasis:d},{defaultText:u.title}),Jl(f)})},t.prototype._createItem=function(r,n,i,a,o,s,l,u,c,f,h){var d=r.visualDrawType,v=o.get("itemWidth"),m=o.get("itemHeight"),y=o.isSelected(n),x=a.get("symbolRotate"),_=a.get("symbolKeepAspect"),b=a.get("icon");c=b||c||"roundRect";var S=mqe(c,a,l,u,d,y,h),T=new V_,C=a.getModel("textStyle");if(Ae(r.getLegendIcon)&&(!b||b==="inherit"))T.add(r.getLegendIcon({itemWidth:v,itemHeight:m,icon:c,iconRotate:x,itemStyle:S.itemStyle,lineStyle:S.lineStyle,symbolKeepAspect:_}));else{var A=b==="inherit"&&r.getData().getVisual("symbol")?x==="inherit"?r.getData().getVisual("symbolRotate"):x:0;T.add(yqe({itemWidth:v,itemHeight:m,icon:c,iconRotate:A,itemStyle:S.itemStyle,symbolKeepAspect:_}))}var P=s==="left"?v+5:-5,I=s,k=o.get("formatter"),O=n;ge(k)&&k?O=k.replace("{name}",n??""):Ae(k)&&(O=k(n));var D=y?C.getTextColor():a.get("inactiveColor");T.add(new at({style:Pt(C,{text:O,x:P,y:m/2,fill:D,align:I,verticalAlign:"middle"},{inheritColor:D})}));var N=new Xe({shape:T.getBoundingRect(),style:{fill:"transparent"}}),z=a.getModel("tooltip");return z.get("show")&&rl({el:N,componentModel:o,itemName:n,itemTooltipOption:z.option}),T.add(N),T.eachChild(function(V){V.silent=!0}),N.silent=!f,this.getContentGroup().add(T),Jl(T),T.__legendDataIndex=i,T},t.prototype.layoutInner=function(r,n,i,a,o,s){var l=this.getContentGroup(),u=this.getSelectorGroup();Uc(r.get("orient"),l,r.get("itemGap"),i.width,i.height);var c=l.getBoundingRect(),f=[-c.x,-c.y];if(u.markRedraw(),l.markRedraw(),o){Uc("horizontal",u,r.get("selectorItemGap",!0));var h=u.getBoundingRect(),d=[-h.x,-h.y],v=r.get("selectorButtonGap",!0),m=r.getOrient().index,y=m===0?"width":"height",x=m===0?"height":"width",_=m===0?"y":"x";s==="end"?d[m]+=c[y]+v:f[m]+=h[y]+v,d[1-m]+=c[x]/2-h[x]/2,u.x=d[0],u.y=d[1],l.x=f[0],l.y=f[1];var b={x:0,y:0};return b[y]=c[y]+v+h[y],b[x]=Math.max(c[x],h[x]),b[_]=Math.min(0,h[_]+d[1-m]),b}else return l.x=f[0],l.y=f[1],this.group.getBoundingRect()},t.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},t.type="legend.plain",t}(Lt);function mqe(e,t,r,n,i,a,o){function s(y,x){y.lineWidth==="auto"&&(y.lineWidth=x.lineWidth>0?2:0),KE(y,function(_,b){y[b]==="inherit"&&(y[b]=x[b])})}var l=t.getModel("itemStyle"),u=l.getItemStyle(),c=e.lastIndexOf("empty",0)===0?"fill":"stroke",f=l.getShallow("decal");u.decal=!f||f==="inherit"?n.decal:rv(f,o),u.fill==="inherit"&&(u.fill=n[i]),u.stroke==="inherit"&&(u.stroke=n[c]),u.opacity==="inherit"&&(u.opacity=(i==="fill"?n:r).opacity),s(u,n);var h=t.getModel("lineStyle"),d=h.getLineStyle();if(s(d,r),u.fill==="auto"&&(u.fill=n.fill),u.stroke==="auto"&&(u.stroke=n.fill),d.stroke==="auto"&&(d.stroke=n.fill),!a){var v=t.get("inactiveBorderWidth"),m=u[c];u.lineWidth=v==="auto"?n.lineWidth>0&&m?2:0:u.lineWidth,u.fill=t.get("inactiveColor"),u.stroke=t.get("inactiveBorderColor"),d.stroke=h.get("inactiveColor"),d.lineWidth=h.get("inactiveWidth")}return{itemStyle:u,lineStyle:d}}function yqe(e){var t=e.icon||"roundRect",r=xr(t,0,0,e.itemWidth,e.itemHeight,e.itemStyle.fill,e.symbolKeepAspect);return r.setStyle(e.itemStyle),r.rotation=(e.iconRotate||0)*Math.PI/180,r.setOrigin([e.itemWidth/2,e.itemHeight/2]),t.indexOf("empty")>-1&&(r.style.stroke=r.style.fill,r.style.fill=J.color.neutral00,r.style.lineWidth=2),r}function lU(e,t,r,n){QE(e,t,r,n),r.dispatchAction({type:"legendToggleSelect",name:e??t}),JE(e,t,r,n)}function Eie(e){for(var t=e.getZr().storage.getDisplayList(),r,n=0,i=t.length;ni[o],y=[-d.x,-d.y];n||(y[a]=c[u]);var x=[0,0],_=[-v.x,-v.y],b=Se(r.get("pageButtonGap",!0),r.get("itemGap",!0));if(m){var S=r.get("pageButtonPosition",!0);S==="end"?_[a]+=i[o]-v[o]:x[a]+=v[o]+b}_[1-a]+=d[s]/2-v[s]/2,c.setPosition(y),f.setPosition(x),h.setPosition(_);var T={x:0,y:0};if(T[o]=m?i[o]:d[o],T[s]=Math.max(d[s],v[s]),T[l]=Math.min(0,v[l]+_[1-a]),f.__rectSize=i[o],m){var C={x:0,y:0};C[o]=Math.max(i[o]-v[o]-b,0),C[s]=T[s],f.setClipPath(new Xe({shape:C})),f.__rectSize=C[o]}else h.eachChild(function(P){P.attr({invisible:!0,silent:!0})});var A=this._getPageInfo(r);return A.pageIndex!=null&<(c,{x:A.contentPosition[0],y:A.contentPosition[1]},m?r:null),this._updatePageInfoView(r,A),T},t.prototype._pageGo=function(r,n,i){var a=this._getPageInfo(n)[r];a!=null&&i.dispatchAction({type:"legendScroll",scrollDataIndex:a,legendId:n.id})},t.prototype._updatePageInfoView=function(r,n){var i=this._controllerGroup;R(["pagePrev","pageNext"],function(c){var f=c+"DataIndex",h=n[f]!=null,d=i.childOfName(c);d&&(d.setStyle("fill",h?r.get("pageIconColor",!0):r.get("pageIconInactiveColor",!0)),d.cursor=h?"pointer":"default")});var a=i.childOfName("pageText"),o=r.get("pageFormatter"),s=n.pageIndex,l=s!=null?s+1:0,u=n.pageCount;a&&o&&a.setStyle("text",ge(o)?o.replace("{current}",l==null?"":l+"").replace("{total}",u==null?"":u+""):o({current:l,total:u}))},t.prototype._getPageInfo=function(r){var n=r.get("scrollDataIndex",!0),i=this.getContentGroup(),a=this._containerGroup.__rectSize,o=r.getOrient().index,s=fP[o],l=hP[o],u=this._findTargetItemIndex(n),c=i.children(),f=c[u],h=c.length,d=h?1:0,v={contentPosition:[i.x,i.y],pageCount:d,pageIndex:d-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!f)return v;var m=S(f);v.contentPosition[o]=-m.s;for(var y=u+1,x=m,_=m,b=null;y<=h;++y)b=S(c[y]),(!b&&_.e>x.s+a||b&&!T(b,x.s))&&(_.i>x.i?x=_:x=b,x&&(v.pageNextDataIndex==null&&(v.pageNextDataIndex=x.i),++v.pageCount)),_=b;for(var y=u-1,x=m,_=m,b=null;y>=-1;--y)b=S(c[y]),(!b||!T(_,b.s))&&x.i<_.i&&(_=x,v.pagePrevDataIndex==null&&(v.pagePrevDataIndex=x.i),++v.pageCount,++v.pageIndex),x=b;return v;function S(C){if(C){var A=C.getBoundingRect(),P=A[l]+C[l];return{s:P,e:P+A[s],i:C.__legendDataIndex}}}function T(C,A){return C.e>=A&&C.s<=A+a}},t.prototype._findTargetItemIndex=function(r){if(!this._showController)return 0;var n,i=this.getContentGroup(),a;return i.eachChild(function(o,s){var l=o.__legendDataIndex;a==null&&l!=null&&(a=s),l===r&&(n=s)}),n??a},t.type="legend.scroll",t}(Iie);function Sqe(e){e.registerAction("legendScroll","legendscroll",function(t,r){var n=t.scrollDataIndex;n!=null&&r.eachComponent({mainType:"legend",subType:"scroll",query:t},function(i){i.setScrollDataIndex(n)})})}function Tqe(e){Ze(Oie),e.registerComponentModel(bqe),e.registerComponentView(wqe),Sqe(e)}function Cqe(e){Ze(Oie),Ze(Tqe)}var Aqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="dataZoom.inside",t.defaultOption=Mu(Fy.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),t}(Fy),HR=Je();function Mqe(e,t,r){HR(e).coordSysRecordMap.each(function(n){var i=n.dataZoomInfoMap.get(t.uid);i&&(i.getRange=r)})}function Pqe(e,t){for(var r=HR(e).coordSysRecordMap,n=r.keys(),i=0;ia[i+n]&&(n=u),o=o&&l.get("preventDefaultMouseMove",!0)}),{controlType:n,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!o,api:r,zInfo:{component:t.model},triggerInfo:{roamTrigger:null,isInSelf:t.containsPoint}}}}function Oqe(e){e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,function(t,r){var n=HR(r),i=n.coordSysRecordMap||(n.coordSysRecordMap=we());i.each(function(a){a.dataZoomInfoMap=null}),t.eachComponent({mainType:"dataZoom",subType:"inside"},function(a){var o=gie(a);R(o.infoList,function(s){var l=s.model.uid,u=i.get(l)||i.set(l,kqe(r,s.model)),c=u.dataZoomInfoMap||(u.dataZoomInfoMap=we());c.set(a.uid,{dzReferCoordSysInfo:s,model:a,getRange:null})})}),i.each(function(a){var o=a.controller,s,l=a.dataZoomInfoMap;if(l){var u=l.keys()[0];u!=null&&(s=l.get(u))}if(!s){Die(i,a);return}var c=Eqe(l,a,r);o.enable(c.controlType,c.opt),Yv(a,"dispatchAction",s.model.get("throttle",!0),"fixRate")})})}var Dqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="dataZoom.inside",r}return t.prototype.render=function(r,n,i){if(e.prototype.render.apply(this,arguments),r.noTarget()){this._clear();return}this.range=r.getPercentRange(),Mqe(i,r,{pan:me(dP.pan,this),zoom:me(dP.zoom,this),scrollMove:me(dP.scrollMove,this)})},t.prototype.dispose=function(){this._clear(),e.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){Pqe(this.api,this.dataZoomModel),this.range=null},t.type="dataZoom.inside",t}(RR),dP={zoom:function(e,t,r,n){var i=this.range,a=i.slice(),o=e.axisModels[0];if(o){var s=vP[t](null,[n.originX,n.originY],o,r,e),l=(s.signal>0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(a[1]-a[0])+a[0],u=Math.max(1/n.scale,0);a[0]=(a[0]-l)*u+l,a[1]=(a[1]-l)*u+l;var c=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();if(hu(0,a,[0,100],0,c.minSpan,c.maxSpan),this.range=a,i[0]!==a[0]||i[1]!==a[1])return a}},pan:hU(function(e,t,r,n,i,a){var o=vP[n]([a.oldX,a.oldY],[a.newX,a.newY],t,i,r);return o.signal*(e[1]-e[0])*o.pixel/o.pixelLength}),scrollMove:hU(function(e,t,r,n,i,a){var o=vP[n]([0,0],[a.scrollDelta,a.scrollDelta],t,i,r);return o.signal*(e[1]-e[0])*a.scrollDelta})};function hU(e){return function(t,r,n,i){var a=this.range,o=a.slice(),s=t.axisModels[0];if(s){var l=e(o,s,t,r,n,i);if(hu(l,o,[0,100],"all"),this.range=o,a[0]!==o[0]||a[1]!==o[1])return o}}}var vP={grid:function(e,t,r,n,i){var a=r.axis,o={},s=i.model.coordinateSystem.getRect();return e=e||[0,0],a.dim==="x"?(o.pixel=t[0]-e[0],o.pixelLength=s.width,o.pixelStart=s.x,o.signal=a.inverse?1:-1):(o.pixel=t[1]-e[1],o.pixelLength=s.height,o.pixelStart=s.y,o.signal=a.inverse?-1:1),o},polar:function(e,t,r,n,i){var a=r.axis,o={},s=i.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return e=e?s.pointToCoord(e):[0,0],t=s.pointToCoord(t),r.mainType==="radiusAxis"?(o.pixel=t[0]-e[0],o.pixelLength=l[1]-l[0],o.pixelStart=l[0],o.signal=a.inverse?1:-1):(o.pixel=t[1]-e[1],o.pixelLength=u[1]-u[0],o.pixelStart=u[0],o.signal=a.inverse?-1:1),o},singleAxis:function(e,t,r,n,i){var a=r.axis,o=i.model.coordinateSystem.getRect(),s={};return e=e||[0,0],a.orient==="horizontal"?(s.pixel=t[0]-e[0],s.pixelLength=o.width,s.pixelStart=o.x,s.signal=a.inverse?1:-1):(s.pixel=t[1]-e[1],s.pixelLength=o.height,s.pixelStart=o.y,s.signal=a.inverse?-1:1),s}};function Nie(e){BR(e),e.registerComponentModel(Aqe),e.registerComponentView(Dqe),Oqe(e)}var Nqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.type="dataZoom.slider",t.layoutMode="box",t.defaultOption=Mu(Fy.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:J.color.accent10,borderRadius:0,backgroundColor:J.color.transparent,dataBackground:{lineStyle:{color:J.color.accent30,width:.5},areaStyle:{color:J.color.accent20,opacity:.2}},selectedDataBackground:{lineStyle:{color:J.color.accent40,width:.5},areaStyle:{color:J.color.accent20,opacity:.3}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:J.color.neutral00,borderColor:J.color.accent20},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:J.color.accent40,opacity:.5},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:J.color.tertiary},brushSelect:!0,brushStyle:{color:J.color.accent30,opacity:.3},emphasis:{handleLabel:{show:!0},handleStyle:{borderColor:J.color.accent40},moveHandleStyle:{opacity:.8}},defaultLocationEdgeGap:15}),t}(Fy),ug=Xe,jqe=1,pP=30,Rqe=7,cg="horizontal",dU="vertical",Bqe=5,zqe=["line","bar","candlestick","scatter"],$qe={easing:"cubicOut",duration:100,delay:0},Fqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._displayables={},r}return t.prototype.init=function(r,n){this.api=n,this._onBrush=me(this._onBrush,this),this._onBrushEnd=me(this._onBrushEnd,this)},t.prototype.render=function(r,n,i,a){if(e.prototype.render.apply(this,arguments),Yv(this,"_dispatchZoomAction",r.get("throttle"),"fixRate"),this._orient=r.getOrient(),r.get("show")===!1){this.group.removeAll();return}if(r.noTarget()){this._clear(),this.group.removeAll();return}(!a||a.type!=="dataZoom"||a.from!==this.uid)&&this._buildView(),this._updateView()},t.prototype.dispose=function(){this._clear(),e.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){Ay(this,"_dispatchZoomAction");var r=this.api.getZr();r.off("mousemove",this._onBrush),r.off("mouseup",this._onBrushEnd)},t.prototype._buildView=function(){var r=this.group;r.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var n=this._displayables.sliderGroup=new Pe;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),r.add(n),this._positionGroup()},t.prototype._resetLocation=function(){var r=this.dataZoomModel,n=this.api,i=r.get("brushSelect"),a=i?Rqe:0,o=Rr(r,n).refContainer,s=this._findCoordRect(),l=r.get("defaultLocationEdgeGap",!0)||0,u=this._orient===cg?{right:o.width-s.x-s.width,top:o.height-pP-l-a,width:s.width,height:pP}:{right:l,top:s.y,width:pP,height:s.height},c=If(r.option);R(["right","top","width","height"],function(h){c[h]==="ph"&&(c[h]=u[h])});var f=zt(c,o);this._location={x:f.x,y:f.y},this._size=[f.width,f.height],this._orient===dU&&this._size.reverse()},t.prototype._positionGroup=function(){var r=this.group,n=this._location,i=this._orient,a=this.dataZoomModel.getFirstTargetAxisModel(),o=a&&a.get("inverse"),s=this._displayables.sliderGroup,l=(this._dataShadowInfo||{}).otherAxisInverse;s.attr(i===cg&&!o?{scaleY:l?1:-1,scaleX:1}:i===cg&&o?{scaleY:l?1:-1,scaleX:-1}:i===dU&&!o?{scaleY:l?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:l?-1:1,scaleX:-1,rotation:Math.PI/2});var u=r.getBoundingRect([s]);r.x=n.x-u.x,r.y=n.y-u.y,r.markRedraw()},t.prototype._getViewExtent=function(){return[0,this._size[0]]},t.prototype._renderBackground=function(){var r=this.dataZoomModel,n=this._size,i=this._displayables.sliderGroup,a=r.get("brushSelect");i.add(new ug({silent:!0,shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:r.get("backgroundColor")},z2:-40}));var o=new ug({shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:"transparent"},z2:0,onclick:me(this._onClickPanel,this)}),s=this.api.getZr();a?(o.on("mousedown",this._onBrushStart,this),o.cursor="crosshair",s.on("mousemove",this._onBrush),s.on("mouseup",this._onBrushEnd)):(s.off("mousemove",this._onBrush),s.off("mouseup",this._onBrushEnd)),i.add(o)},t.prototype._renderDataShadow=function(){var r=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],!r)return;var n=this._size,i=this._shadowSize||[],a=r.series,o=a.getRawData(),s=a.getShadowDim&&a.getShadowDim(),l=s&&o.getDimensionInfo(s)?a.getShadowDim():r.otherDim;if(l==null)return;var u=this._shadowPolygonPts,c=this._shadowPolylinePts;if(o!==this._shadowData||l!==this._shadowDim||n[0]!==i[0]||n[1]!==i[1]){var f=o.getDataExtent(r.thisDim),h=o.getDataExtent(l),d=(h[1]-h[0])*.3;h=[h[0]-d,h[1]+d];var v=[0,n[1]],m=[0,n[0]],y=[[n[0],0],[0,0]],x=[],_=m[1]/Math.max(1,o.count()-1),b=n[0]/(f[1]-f[0]),S=r.thisAxis.type==="time",T=-_,C=Math.round(o.count()/n[0]),A;o.each([r.thisDim,l],function(D,N,z){if(C>0&&z%C){S||(T+=_);return}T=S?(+D-f[0])*b:T+_;var V=N==null||isNaN(N)||N==="",F=V?0:gt(N,h,v,!0);V&&!A&&z?(y.push([y[y.length-1][0],0]),x.push([x[x.length-1][0],0])):!V&&A&&(y.push([T,0]),x.push([T,0])),V||(y.push([T,F]),x.push([T,F])),A=V}),u=this._shadowPolygonPts=y,c=this._shadowPolylinePts=x}this._shadowData=o,this._shadowDim=l,this._shadowSize=[n[0],n[1]];var P=this.dataZoomModel;function I(D){var N=P.getModel(D?"selectedDataBackground":"dataBackground"),z=new Pe,V=new wn({shape:{points:u},segmentIgnoreThreshold:1,style:N.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),F=new on({shape:{points:c},segmentIgnoreThreshold:1,style:N.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return z.add(V),z.add(F),z}for(var k=0;k<3;k++){var O=I(k===1);this._displayables.sliderGroup.add(O),this._displayables.dataShadowSegs.push(O)}},t.prototype._prepareDataShadowInfo=function(){var r=this.dataZoomModel,n=r.get("showDataShadow");if(n!==!1){var i,a=this.ecModel;return r.eachTargetAxis(function(o,s){var l=r.getAxisProxy(o,s).getTargetSeriesModels();R(l,function(u){if(!i&&!(n!==!0&&We(zqe,u.get("type"))<0)){var c=a.getComponent(Bl(o),s).axis,f=Vqe(o),h,d=u.coordinateSystem;f!=null&&d.getOtherAxis&&(h=d.getOtherAxis(c).inverse),f=u.getData().mapDimension(f);var v=u.getData().mapDimension(o);i={thisAxis:c,series:u,thisDim:v,otherDim:f,otherAxisInverse:h}}},this)},this),i}},t.prototype._renderHandle=function(){var r=this.group,n=this._displayables,i=n.handles=[null,null],a=n.handleLabels=[null,null],o=this._displayables.sliderGroup,s=this._size,l=this.dataZoomModel,u=this.api,c=l.get("borderRadius")||0,f=l.get("brushSelect"),h=n.filler=new ug({silent:f,style:{fill:l.get("fillerColor")},textConfig:{position:"inside"}});o.add(h),o.add(new ug({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:s[0],height:s[1],r:c},style:{stroke:l.get("dataBackgroundColor")||l.get("borderColor"),lineWidth:jqe,fill:J.color.transparent}})),R([0,1],function(b){var S=l.get("handleIcon");!Cw[S]&&S.indexOf("path://")<0&&S.indexOf("image://")<0&&(S="path://"+S);var T=xr(S,-1,0,2,2,null,!0);T.attr({cursor:Gqe(this._orient),draggable:!0,drift:me(this._onDragMove,this,b),ondragend:me(this._onDragEnd,this),onmouseover:me(this._showDataInfo,this,!0),onmouseout:me(this._showDataInfo,this,!1),z2:5});var C=T.getBoundingRect(),A=l.get("handleSize");this._handleHeight=pe(A,this._size[1]),this._handleWidth=C.width/C.height*this._handleHeight,T.setStyle(l.getModel("handleStyle").getItemStyle()),T.style.strokeNoScale=!0,T.rectHover=!0,T.ensureState("emphasis").style=l.getModel(["emphasis","handleStyle"]).getItemStyle(),Jl(T);var P=l.get("handleColor");P!=null&&(T.style.fill=P),o.add(i[b]=T);var I=l.getModel("textStyle"),k=l.get("handleLabel")||{},O=k.show||!1;r.add(a[b]=new at({silent:!0,invisible:!O,style:Pt(I,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:I.getTextColor(),font:I.getFont()}),z2:10}))},this);var d=h;if(f){var v=pe(l.get("moveHandleSize"),s[1]),m=n.moveHandle=new Xe({style:l.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:s[1]-.5,height:v}}),y=v*.8,x=n.moveHandleIcon=xr(l.get("moveHandleIcon"),-y/2,-y/2,y,y,J.color.neutral00,!0);x.silent=!0,x.y=s[1]+v/2-.5,m.ensureState("emphasis").style=l.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var _=Math.min(s[1]/2,Math.max(v,10));d=n.moveZone=new Xe({invisible:!0,shape:{y:s[1]-_,height:v+_}}),d.on("mouseover",function(){u.enterEmphasis(m)}).on("mouseout",function(){u.leaveEmphasis(m)}),o.add(m),o.add(x),o.add(d)}d.attr({draggable:!0,cursor:"default",drift:me(this._onDragMove,this,"all"),ondragstart:me(this._showDataInfo,this,!0),ondragend:me(this._onDragEnd,this),onmouseover:me(this._showDataInfo,this,!0),onmouseout:me(this._showDataInfo,this,!1)})},t.prototype._resetInterval=function(){var r=this._range=this.dataZoomModel.getPercentRange(),n=this._getViewExtent();this._handleEnds=[gt(r[0],[0,100],n,!0),gt(r[1],[0,100],n,!0)]},t.prototype._updateInterval=function(r,n){var i=this.dataZoomModel,a=this._handleEnds,o=this._getViewExtent(),s=i.findRepresentativeAxisProxy().getMinMaxSpan(),l=[0,100];hu(n,a,o,i.get("zoomLock")?"all":r,s.minSpan!=null?gt(s.minSpan,l,o,!0):null,s.maxSpan!=null?gt(s.maxSpan,l,o,!0):null);var u=this._range,c=this._range=Ai([gt(a[0],o,l,!0),gt(a[1],o,l,!0)]);return!u||u[0]!==c[0]||u[1]!==c[1]},t.prototype._updateView=function(r){var n=this._displayables,i=this._handleEnds,a=Ai(i.slice()),o=this._size;R([0,1],function(d){var v=n.handles[d],m=this._handleHeight;v.attr({scaleX:m/2,scaleY:m/2,x:i[d]+(d?-1:1),y:o[1]/2-m/2})},this),n.filler.setShape({x:a[0],y:0,width:a[1]-a[0],height:o[1]});var s={x:a[0],width:a[1]-a[0]};n.moveHandle&&(n.moveHandle.setShape(s),n.moveZone.setShape(s),n.moveZone.getBoundingRect(),n.moveHandleIcon&&n.moveHandleIcon.attr("x",s.x+s.width/2));for(var l=n.dataShadowSegs,u=[0,a[0],a[1],o[0]],c=0;cn[0]||i[1]<0||i[1]>n[1])){var a=this._handleEnds,o=(a[0]+a[1])/2,s=this._updateInterval("all",i[0]-o);this._updateView(),s&&this._dispatchZoomAction(!1)}},t.prototype._onBrushStart=function(r){var n=r.offsetX,i=r.offsetY;this._brushStart=new Ee(n,i),this._brushing=!0,this._brushStartTime=+new Date},t.prototype._onBrushEnd=function(r){if(this._brushing){var n=this._displayables.brushRect;if(this._brushing=!1,!!n){n.attr("ignore",!0);var i=n.shape,a=+new Date;if(!(a-this._brushStartTime<200&&Math.abs(i.width)<5)){var o=this._getViewExtent(),s=[0,100],l=this._handleEnds=[i.x,i.x+i.width],u=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();hu(0,l,o,0,u.minSpan!=null?gt(u.minSpan,s,o,!0):null,u.maxSpan!=null?gt(u.maxSpan,s,o,!0):null),this._range=Ai([gt(l[0],o,s,!0),gt(l[1],o,s,!0)]),this._updateView(),this._dispatchZoomAction(!1)}}}},t.prototype._onBrush=function(r){this._brushing&&(Gs(r.event),this._updateBrushRect(r.offsetX,r.offsetY))},t.prototype._updateBrushRect=function(r,n){var i=this._displayables,a=this.dataZoomModel,o=i.brushRect;o||(o=i.brushRect=new ug({silent:!0,style:a.getModel("brushStyle").getItemStyle()}),i.sliderGroup.add(o)),o.attr("ignore",!1);var s=this._brushStart,l=this._displayables.sliderGroup,u=l.transformCoordToLocal(r,n),c=l.transformCoordToLocal(s.x,s.y),f=this._size;u[0]=Math.max(Math.min(f[0],u[0]),0),o.setShape({x:c[0],y:0,width:u[0]-c[0],height:f[1]})},t.prototype._dispatchZoomAction=function(r){var n=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:r?$qe:null,start:n[0],end:n[1]})},t.prototype._findCoordRect=function(){var r,n=gie(this.dataZoomModel).infoList;if(!r&&n.length){var i=n[0].model.coordinateSystem;r=i.getRect&&i.getRect()}if(!r){var a=this.api.getWidth(),o=this.api.getHeight();r={x:a*.2,y:o*.2,width:a*.6,height:o*.6}}return r},t.type="dataZoom.slider",t}(RR);function Vqe(e){var t={x:"y",y:"x",radius:"angle",angle:"radius"};return t[e]}function Gqe(e){return e==="vertical"?"ns-resize":"ew-resize"}function jie(e){e.registerComponentModel(Nqe),e.registerComponentView(Fqe),BR(e)}function Wqe(e){Ze(Nie),Ze(jie)}var Rie={get:function(e,t,r){var n=Me((Hqe[e]||{})[t]);return r&&ae(n)?n[n.length-1]:n}},Hqe={color:{active:["#006edd","#e0ffff"],inactive:[J.color.transparent]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},vU=Ur.mapVisual,Uqe=Ur.eachVisual,Zqe=ae,pU=R,Yqe=Ai,Xqe=gt,oS=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.stateList=["inRange","outOfRange"],r.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],r.layoutMode={type:"box",ignoreSize:!0},r.dataBound=[-1/0,1/0],r.targetVisuals={},r.controllerVisuals={},r}return t.prototype.init=function(r,n,i){this.mergeDefaultAndTheme(r,i)},t.prototype.optionUpdated=function(r,n){var i=this.option;!n&&Aie(i,r,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},t.prototype.resetVisual=function(r){var n=this.stateList;r=me(r,this),this.controllerVisuals=ZE(this.option.controller,n,r),this.targetVisuals=ZE(this.option.target,n,r)},t.prototype.getItemSymbol=function(){return null},t.prototype.getTargetSeriesIndices=function(){var r=this.option.seriesId,n=this.option.seriesIndex;n==null&&r==null&&(n="all");var i=Rv(this.ecModel,"series",{index:n,id:r},{useDefault:!1,enableAll:!0,enableNone:!1}).models;return se(i,function(a){return a.componentIndex})},t.prototype.eachTargetSeries=function(r,n){R(this.getTargetSeriesIndices(),function(i){var a=this.ecModel.getSeriesByIndex(i);a&&r.call(n,a)},this)},t.prototype.isTargetSeries=function(r){var n=!1;return this.eachTargetSeries(function(i){i===r&&(n=!0)}),n},t.prototype.formatValueText=function(r,n,i){var a=this.option,o=a.precision,s=this.dataBound,l=a.formatter,u;i=i||["<",">"],ae(r)&&(r=r.slice(),u=!0);var c=n?r:u?[f(r[0]),f(r[1])]:f(r);if(ge(l))return l.replace("{value}",u?c[0]:c).replace("{value2}",u?c[1]:c);if(Ae(l))return u?l(r[0],r[1]):l(r);if(u)return r[0]===s[0]?i[0]+" "+c[1]:r[1]===s[1]?i[1]+" "+c[0]:c[0]+" - "+c[1];return c;function f(h){return h===s[0]?"min":h===s[1]?"max":(+h).toFixed(Math.min(o,20))}},t.prototype.resetExtent=function(){var r=this.option,n=Yqe([r.min,r.max]);this._dataExtent=n},t.prototype.getDataDimensionIndex=function(r){var n=this.option.dimension;if(n!=null)return r.getDimensionIndex(n);for(var i=r.dimensions,a=i.length-1;a>=0;a--){var o=i[a],s=r.getDimensionInfo(o);if(!s.isCalculationCoord)return s.storeDimIndex}},t.prototype.getExtent=function(){return this._dataExtent.slice()},t.prototype.completeVisualOption=function(){var r=this.ecModel,n=this.option,i={inRange:n.inRange,outOfRange:n.outOfRange},a=n.target||(n.target={}),o=n.controller||(n.controller={});He(a,i),He(o,i);var s=this.isCategory();l.call(this,a),l.call(this,o),u.call(this,a,"inRange","outOfRange"),c.call(this,o);function l(f){Zqe(n.color)&&!f.inRange&&(f.inRange={color:n.color.slice().reverse()}),f.inRange=f.inRange||{color:r.get("gradientColor")}}function u(f,h,d){var v=f[h],m=f[d];v&&!m&&(m=f[d]={},pU(v,function(y,x){if(Ur.isValidType(x)){var _=Rie.get(x,"inactive",s);_!=null&&(m[x]=_,x==="color"&&!m.hasOwnProperty("opacity")&&!m.hasOwnProperty("colorAlpha")&&(m.opacity=[0,0]))}}))}function c(f){var h=(f.inRange||{}).symbol||(f.outOfRange||{}).symbol,d=(f.inRange||{}).symbolSize||(f.outOfRange||{}).symbolSize,v=this.get("inactiveColor"),m=this.getItemSymbol(),y=m||"roundRect";pU(this.stateList,function(x){var _=this.itemSize,b=f[x];b||(b=f[x]={color:s?v:[v]}),b.symbol==null&&(b.symbol=h&&Me(h)||(s?y:[y])),b.symbolSize==null&&(b.symbolSize=d&&Me(d)||(s?_[0]:[_[0],_[0]])),b.symbol=vU(b.symbol,function(C){return C==="none"?y:C});var S=b.symbolSize;if(S!=null){var T=-1/0;Uqe(S,function(C){C>T&&(T=C)}),b.symbolSize=vU(S,function(C){return Xqe(C,[0,T],[0,_[0]],!0)})}},this)}},t.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},t.prototype.isCategory=function(){return!!this.option.categories},t.prototype.setSelected=function(r){},t.prototype.getSelected=function(){return null},t.prototype.getValueState=function(r){return null},t.prototype.getVisualMeta=function(r){return null},t.type="visualMap",t.dependencies=["series"],t.defaultOption={show:!0,z:4,min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:J.color.transparent,borderColor:J.color.borderTint,contentColor:J.color.theme[0],inactiveColor:J.color.disabled,borderWidth:0,padding:J.size.m,textGap:10,precision:0,textStyle:{color:J.color.secondary}},t}(Ke),gU=[20,140],qqe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.optionUpdated=function(r,n){e.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual(function(i){i.mappingMethod="linear",i.dataExtent=this.getExtent()}),this._resetRange()},t.prototype.resetItemSize=function(){e.prototype.resetItemSize.apply(this,arguments);var r=this.itemSize;(r[0]==null||isNaN(r[0]))&&(r[0]=gU[0]),(r[1]==null||isNaN(r[1]))&&(r[1]=gU[1])},t.prototype._resetRange=function(){var r=this.getExtent(),n=this.option.range;!n||n.auto?(r.auto=1,this.option.range=r):ae(n)&&(n[0]>n[1]&&n.reverse(),n[0]=Math.max(n[0],r[0]),n[1]=Math.min(n[1],r[1]))},t.prototype.completeVisualOption=function(){e.prototype.completeVisualOption.apply(this,arguments),R(this.stateList,function(r){var n=this.option.controller[r].symbolSize;n&&n[0]!==n[1]&&(n[0]=n[1]/3)},this)},t.prototype.setSelected=function(r){this.option.range=r.slice(),this._resetRange()},t.prototype.getSelected=function(){var r=this.getExtent(),n=Ai((this.get("range")||[]).slice());return n[0]>r[1]&&(n[0]=r[1]),n[1]>r[1]&&(n[1]=r[1]),n[0]=i[1]||r<=n[1])?"inRange":"outOfRange"},t.prototype.findTargetDataIndices=function(r){var n=[];return this.eachTargetSeries(function(i){var a=[],o=i.getData();o.each(this.getDataDimensionIndex(o),function(s,l){r[0]<=s&&s<=r[1]&&a.push(l)},this),n.push({seriesId:i.id,dataIndex:a})},this),n},t.prototype.getVisualMeta=function(r){var n=mU(this,"outOfRange",this.getExtent()),i=mU(this,"inRange",this.option.range.slice()),a=[];function o(d,v){a.push({value:d,color:r(d,v)})}for(var s=0,l=0,u=i.length,c=n.length;lr[1])break;a.push({color:this.getControllerVisual(l,"color",n),offset:s/i})}return a.push({color:this.getControllerVisual(r[1],"color",n),offset:1}),a},t.prototype._createBarPoints=function(r,n){var i=this.visualMapModel.itemSize;return[[i[0]-n[0],r[0]],[i[0],r[0]],[i[0],r[1]],[i[0]-n[1],r[1]]]},t.prototype._createBarGroup=function(r){var n=this._orient,i=this.visualMapModel.get("inverse");return new Pe(n==="horizontal"&&!i?{scaleX:r==="bottom"?1:-1,rotation:Math.PI/2}:n==="horizontal"&&i?{scaleX:r==="bottom"?-1:1,rotation:-Math.PI/2}:n==="vertical"&&!i?{scaleX:r==="left"?1:-1,scaleY:-1}:{scaleX:r==="left"?1:-1})},t.prototype._updateHandle=function(r,n){if(this._useHandle){var i=this._shapes,a=this.visualMapModel,o=i.handleThumbs,s=i.handleLabels,l=a.itemSize,u=a.getExtent(),c=this._applyTransform("left",i.mainGroup);Kqe([0,1],function(f){var h=o[f];h.setStyle("fill",n.handlesColor[f]),h.y=r[f];var d=go(r[f],[0,l[1]],u,!0),v=this.getControllerVisual(d,"symbolSize");h.scaleX=h.scaleY=v/l[0],h.x=l[0]-v/2;var m=Ha(i.handleLabelPoints[f],Ql(h,this.group));if(this._orient==="horizontal"){var y=c==="left"||c==="top"?(l[0]-v)/2:(l[0]-v)/-2;m[1]+=y}s[f].setStyle({x:m[0],y:m[1],text:a.formatValueText(this._dataInterval[f]),verticalAlign:"middle",align:this._orient==="vertical"?this._applyTransform("left",i.mainGroup):"center"})},this)}},t.prototype._showIndicator=function(r,n,i,a){var o=this.visualMapModel,s=o.getExtent(),l=o.itemSize,u=[0,l[1]],c=this._shapes,f=c.indicator;if(f){f.attr("invisible",!1);var h={convertOpacityToAlpha:!0},d=this.getControllerVisual(r,"color",h),v=this.getControllerVisual(r,"symbolSize"),m=go(r,s,u,!0),y=l[0]-v/2,x={x:f.x,y:f.y};f.y=m,f.x=y;var _=Ha(c.indicatorLabelPoint,Ql(f,this.group)),b=c.indicatorLabel;b.attr("invisible",!1);var S=this._applyTransform("left",c.mainGroup),T=this._orient,C=T==="horizontal";b.setStyle({text:(i||"")+o.formatValueText(n),verticalAlign:C?S:"middle",align:C?"center":S});var A={x:y,y:m,style:{fill:d}},P={style:{x:_[0],y:_[1]}};if(o.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var I={duration:100,easing:"cubicInOut",additive:!0};f.x=x.x,f.y=x.y,f.animateTo(A,I),b.animateTo(P,I)}else f.attr(A),b.attr(P);this._firstShowIndicator=!1;var k=this._shapes.handleLabels;if(k)for(var O=0;Oo[1]&&(f[1]=1/0),n&&(f[0]===-1/0?this._showIndicator(c,f[1],"< ",l):f[1]===1/0?this._showIndicator(c,f[0],"> ",l):this._showIndicator(c,c,"≈ ",l));var h=this._hoverLinkDataIndices,d=[];(n||bU(i))&&(d=this._hoverLinkDataIndices=i.findTargetDataIndices(f));var v=DRe(h,d);this._dispatchHighDown("downplay",Sb(v[0],i)),this._dispatchHighDown("highlight",Sb(v[1],i))}},t.prototype._hoverLinkFromSeriesMouseOver=function(r){var n;if(Nc(r.target,function(l){var u=je(l);if(u.dataIndex!=null)return n=u,!0},!0),!!n){var i=this.ecModel.getSeriesByIndex(n.seriesIndex),a=this.visualMapModel;if(a.isTargetSeries(i)){var o=i.getData(n.dataType),s=o.getStore().get(a.getDataDimensionIndex(o),n.dataIndex);isNaN(s)||this._showIndicator(s,s)}}},t.prototype._hideIndicator=function(){var r=this._shapes;r.indicator&&r.indicator.attr("invisible",!0),r.indicatorLabel&&r.indicatorLabel.attr("invisible",!0);var n=this._shapes.handleLabels;if(n)for(var i=0;i=0&&(a.dimension=o,n.push(a))}}),e.getData().setVisual("visualMeta",n)}}];function aKe(e,t,r,n){for(var i=t.targetVisuals[n],a=Ur.prepareVisualTypes(i),o={color:_0(e.getData(),"color")},s=0,l=a.length;s0:t.splitNumber>0)||t.calculable)?"continuous":"piecewise"}),e.registerAction(rKe,nKe),R(iKe,function(t){e.registerVisual(e.PRIORITY.VISUAL.COMPONENT,t)}),e.registerPreprocessor(oKe))}function Fie(e){e.registerComponentModel(qqe),e.registerComponentView(eKe),$ie(e)}var sKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r._pieceList=[],r}return t.prototype.optionUpdated=function(r,n){e.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var i=this._mode=this._determineMode();this._pieceList=[],lKe[this._mode].call(this,this._pieceList),this._resetSelected(r,n);var a=this.option.categories;this.resetVisual(function(o,s){i==="categories"?(o.mappingMethod="category",o.categories=Me(a)):(o.dataExtent=this.getExtent(),o.mappingMethod="piecewise",o.pieceList=se(this._pieceList,function(l){return l=Me(l),s!=="inRange"&&(l.visual=null),l}))})},t.prototype.completeVisualOption=function(){var r=this.option,n={},i=Ur.listVisualTypes(),a=this.isCategory();R(r.pieces,function(s){R(i,function(l){s.hasOwnProperty(l)&&(n[l]=1)})}),R(n,function(s,l){var u=!1;R(this.stateList,function(c){u=u||o(r,c,l)||o(r.target,c,l)},this),!u&&R(this.stateList,function(c){(r[c]||(r[c]={}))[l]=Rie.get(l,c==="inRange"?"active":"inactive",a)})},this);function o(s,l,u){return s&&s[l]&&s[l].hasOwnProperty(u)}e.prototype.completeVisualOption.apply(this,arguments)},t.prototype._resetSelected=function(r,n){var i=this.option,a=this._pieceList,o=(n?i:r).selected||{};if(i.selected=o,R(a,function(l,u){var c=this.getSelectedMapKey(l);o.hasOwnProperty(c)||(o[c]=!0)},this),i.selectedMode==="single"){var s=!1;R(a,function(l,u){var c=this.getSelectedMapKey(l);o[c]&&(s?o[c]=!1:s=!0)},this)}},t.prototype.getItemSymbol=function(){return this.get("itemSymbol")},t.prototype.getSelectedMapKey=function(r){return this._mode==="categories"?r.value+"":r.index+""},t.prototype.getPieceList=function(){return this._pieceList},t.prototype._determineMode=function(){var r=this.option;return r.pieces&&r.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},t.prototype.setSelected=function(r){this.option.selected=Me(r)},t.prototype.getValueState=function(r){var n=Ur.findPieceIndex(r,this._pieceList);return n!=null&&this.option.selected[this.getSelectedMapKey(this._pieceList[n])]?"inRange":"outOfRange"},t.prototype.findTargetDataIndices=function(r){var n=[],i=this._pieceList;return this.eachTargetSeries(function(a){var o=[],s=a.getData();s.each(this.getDataDimensionIndex(s),function(l,u){var c=Ur.findPieceIndex(l,i);c===r&&o.push(u)},this),n.push({seriesId:a.id,dataIndex:o})},this),n},t.prototype.getRepresentValue=function(r){var n;if(this.isCategory())n=r.value;else if(r.value!=null)n=r.value;else{var i=r.interval||[];n=i[0]===-1/0&&i[1]===1/0?0:(i[0]+i[1])/2}return n},t.prototype.getVisualMeta=function(r){if(this.isCategory())return;var n=[],i=["",""],a=this;function o(c,f){var h=a.getRepresentValue({interval:c});f||(f=a.getValueState(h));var d=r(h,f);c[0]===-1/0?i[0]=d:c[1]===1/0?i[1]=d:n.push({value:c[0],color:d},{value:c[1],color:d})}var s=this._pieceList.slice();if(!s.length)s.push({interval:[-1/0,1/0]});else{var l=s[0].interval[0];l!==-1/0&&s.unshift({interval:[-1/0,l]}),l=s[s.length-1].interval[1],l!==1/0&&s.push({interval:[l,1/0]})}var u=-1/0;return R(s,function(c){var f=c.interval;f&&(f[0]>u&&o([u,f[0]],"outOfRange"),o(f.slice()),u=f[1])},this),{stops:n,outerColors:i}},t.type="visualMap.piecewise",t.defaultOption=Mu(oS.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),t}(oS),lKe={splitNumber:function(e){var t=this.option,r=Math.min(t.precision,20),n=this.getExtent(),i=t.splitNumber;i=Math.max(parseInt(i,10),1),t.splitNumber=i;for(var a=(n[1]-n[0])/i;+a.toFixed(r)!==a&&r<5;)r++;t.precision=r,a=+a.toFixed(r),t.minOpen&&e.push({interval:[-1/0,n[0]],close:[0,0]});for(var o=0,s=n[0];o","≥"][n[0]]];r.text=r.text||this.formatValueText(r.value!=null?r.value:r.interval,!1,i)},this)}};function CU(e,t){var r=e.inverse;(e.orient==="vertical"?!r:r)&&t.reverse()}var uKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.doRender=function(){var r=this.group;r.removeAll();var n=this.visualMapModel,i=n.get("textGap"),a=n.textStyleModel,o=this._getItemAlign(),s=n.itemSize,l=this._getViewData(),u=l.endsText,c=nn(n.get("showLabel",!0),!u),f=!n.get("selectedMode");u&&this._renderEndsText(r,u[0],s,c,o),R(l.viewPieceList,function(h){var d=h.piece,v=new Pe;v.onclick=me(this._onItemClick,this,d),this._enableHoverLink(v,h.indexInModelPieceList);var m=n.getRepresentValue(d);if(this._createItemSymbol(v,m,[0,0,s[0],s[1]],f),c){var y=this.visualMapModel.getValueState(m),x=a.get("align")||o;v.add(new at({style:Pt(a,{x:x==="right"?-i:s[0]+i,y:s[1]/2,text:d.text,verticalAlign:a.get("verticalAlign")||"middle",align:x,opacity:Se(a.get("opacity"),y==="outOfRange"?.5:1)}),silent:f}))}r.add(v)},this),u&&this._renderEndsText(r,u[1],s,c,o),Uc(n.get("orient"),r,n.get("itemGap")),this.renderBackground(r),this.positionGroup(r)},t.prototype._enableHoverLink=function(r,n){var i=this;r.on("mouseover",function(){return a("highlight")}).on("mouseout",function(){return a("downplay")});var a=function(o){var s=i.visualMapModel;s.option.hoverLink&&i.api.dispatchAction({type:o,batch:Sb(s.findTargetDataIndices(n),s)})}},t.prototype._getItemAlign=function(){var r=this.visualMapModel,n=r.option;if(n.orient==="vertical")return zie(r,this.api,r.itemSize);var i=n.align;return(!i||i==="auto")&&(i="left"),i},t.prototype._renderEndsText=function(r,n,i,a,o){if(n){var s=new Pe,l=this.visualMapModel.textStyleModel;s.add(new at({style:Pt(l,{x:a?o==="right"?i[0]:0:i[0]/2,y:i[1]/2,verticalAlign:"middle",align:a?o:"center",text:n})})),r.add(s)}},t.prototype._getViewData=function(){var r=this.visualMapModel,n=se(r.getPieceList(),function(s,l){return{piece:s,indexInModelPieceList:l}}),i=r.get("text"),a=r.get("orient"),o=r.get("inverse");return(a==="horizontal"?o:!o)?n.reverse():i&&(i=i.slice().reverse()),{viewPieceList:n,endsText:i}},t.prototype._createItemSymbol=function(r,n,i,a){var o=xr(this.getControllerVisual(n,"symbol"),i[0],i[1],i[2],i[3],this.getControllerVisual(n,"color"));o.silent=a,r.add(o)},t.prototype._onItemClick=function(r){var n=this.visualMapModel,i=n.option,a=i.selectedMode;if(a){var o=Me(i.selected),s=n.getSelectedMapKey(r);a==="single"||a===!0?(o[s]=!0,R(o,function(l,u){o[u]=u===s})):o[s]=!o[s],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:o})}},t.type="visualMap.piecewise",t}(Bie);function Vie(e){e.registerComponentModel(sKe),e.registerComponentView(uKe),$ie(e)}function cKe(e){Ze(Fie),Ze(Vie)}var fKe=function(){function e(t){this._thumbnailModel=t}return e.prototype.reset=function(t){this._renderVersion=t.getMainProcessVersion()},e.prototype.renderContent=function(t){var r=t.api.getViewOfComponentModel(this._thumbnailModel);r&&(t.group.silent=!0,r.renderContent({group:t.group,targetTrans:t.targetTrans,z2Range:hQ(t.group),roamType:t.roamType,viewportRect:t.viewportRect,renderVersion:this._renderVersion}))},e.prototype.updateWindow=function(t,r){var n=r.getViewOfComponentModel(this._thumbnailModel);n&&n.updateWindow({targetTrans:t,renderVersion:this._renderVersion})},e}(),hKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r.preventAutoZ=!0,r}return t.prototype.optionUpdated=function(r,n){this._updateBridge()},t.prototype._updateBridge=function(){var r=this._birdge=this._birdge||new fKe(this);if(this._target=null,this.ecModel.eachSeries(function(i){qW(i,null)}),this.shouldShow()){var n=this.getTarget();qW(n.baseMapProvider,r)}},t.prototype.shouldShow=function(){return this.getShallow("show",!0)},t.prototype.getBridge=function(){return this._birdge},t.prototype.getTarget=function(){if(this._target)return this._target;var r=this.getReferringComponents("series",{useDefault:!1,enableAll:!1,enableNone:!1}).models[0];return r?r.subType!=="graph"&&(r=null):r=this.ecModel.queryComponents({mainType:"series",subType:"graph"})[0],this._target={baseMapProvider:r},this._target},t.type="thumbnail",t.layoutMode="box",t.dependencies=["series","geo"],t.defaultOption={show:!0,right:1,bottom:1,height:"25%",width:"25%",itemStyle:{borderColor:J.color.border,borderWidth:2},windowStyle:{borderWidth:1,color:J.color.neutral30,borderColor:J.color.neutral40,opacity:.3},z:10},t}(Ke),dKe=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type=t.type,r}return t.prototype.render=function(r,n,i){if(this._api=i,this._model=r,this._coordSys||(this._coordSys=new jf),!this._isEnabled()){this._clear();return}this._renderVersion=i.getMainProcessVersion();var a=this.group;a.removeAll();var o=r.getModel("itemStyle"),s=o.getItemStyle();s.fill==null&&(s.fill=n.get("backgroundColor")||J.color.neutral00);var l=Rr(r,i).refContainer,u=zt(EQ(r,!0),l),c=s.lineWidth||0,f=this._contentRect=df(u.clone(),c/2,!0,!0),h=new Pe;a.add(h),h.setClipPath(new Xe({shape:f.plain()}));var d=this._targetGroup=new Pe;h.add(d);var v=u.plain();v.r=o.getShallow("borderRadius",!0),a.add(this._bgRect=new Xe({style:s,shape:v,silent:!1,cursor:"grab"}));var m=r.getModel("windowStyle"),y=m.getShallow("borderRadius",!0);h.add(this._windowRect=new Xe({shape:{x:0,y:0,width:0,height:0,r:y},style:m.getItemStyle(),silent:!1,cursor:"grab"})),this._dealRenderContent(),this._dealUpdateWindow(),MU(r,this)},t.prototype.renderContent=function(r){this._bridgeRendered=r,this._isEnabled()&&(this._dealRenderContent(),this._dealUpdateWindow(),MU(this._model,this))},t.prototype._dealRenderContent=function(){var r=this._bridgeRendered;if(!(!r||r.renderVersion!==this._renderVersion)){var n=this._targetGroup,i=this._coordSys,a=this._contentRect;if(n.removeAll(),!!r){var o=r.group,s=o.getBoundingRect();n.add(o),this._bgRect.z2=r.z2Range.min-10,i.setBoundingRect(s.x,s.y,s.width,s.height);var l=zt({left:"center",top:"center",aspect:s.width/s.height},a);i.setViewRect(l.x,l.y,l.width,l.height),o.attr(i.getTransformInfo().raw),this._windowRect.z2=r.z2Range.max+10,this._resetRoamController(r.roamType)}}},t.prototype.updateWindow=function(r){var n=this._bridgeRendered;n&&n.renderVersion===r.renderVersion&&(n.targetTrans=r.targetTrans),this._isEnabled()&&this._dealUpdateWindow()},t.prototype._dealUpdateWindow=function(){var r=this._bridgeRendered;if(!(!r||r.renderVersion!==this._renderVersion)){var n=va([],r.targetTrans),i=Ga([],this._coordSys.transform,n);this._transThisToTarget=va([],i);var a=r.viewportRect;a?a=a.clone():a=new Oe(0,0,this._api.getWidth(),this._api.getHeight()),a.applyTransform(i);var o=this._windowRect,s=o.shape.r;o.setShape(ke({r:s},a))}},t.prototype._resetRoamController=function(r){var n=this,i=this._api,a=this._roamController;if(a||(a=this._roamController=new Nf(i.getZr())),!r||!this._isEnabled()){a.disable();return}a.enable(r,{api:i,zInfo:{component:this._model},triggerInfo:{roamTrigger:null,isInSelf:function(o,s,l){return n._contentRect.contain(s,l)}}}),a.off("pan").off("zoom").on("pan",me(this._onPan,this)).on("zoom",me(this._onZoom,this))},t.prototype._onPan=function(r){var n=this._transThisToTarget;if(!(!this._isEnabled()||!n)){var i=lr([],[r.oldX,r.oldY],n),a=lr([],[r.oldX-r.dx,r.oldY-r.dy],n);this._api.dispatchAction(AU(this._model.getTarget().baseMapProvider,{dx:a[0]-i[0],dy:a[1]-i[1]}))}},t.prototype._onZoom=function(r){var n=this._transThisToTarget;if(!(!this._isEnabled()||!n)){var i=lr([],[r.originX,r.originY],n);this._api.dispatchAction(AU(this._model.getTarget().baseMapProvider,{zoom:1/r.scale,originX:i[0],originY:i[1]}))}},t.prototype._isEnabled=function(){var r=this._model;if(!r||!r.shouldShow())return!1;var n=r.getTarget().baseMapProvider;return!!n},t.prototype._clear=function(){this.group.removeAll(),this._bridgeRendered=null,this._roamController&&this._roamController.disable()},t.prototype.remove=function(){this._clear()},t.prototype.dispose=function(){this._clear()},t.type="thumbnail",t}(Lt);function AU(e,t){var r=e.mainType==="series"?e.subType+"Roam":e.mainType+"Roam",n={type:r};return n[e.mainType+"Id"]=e.id,ne(n,t),n}function MU(e,t){var r=vf(e);HT(t.group,r.z,r.zlevel)}function vKe(e){e.registerComponentModel(hKe),e.registerComponentView(dKe)}var pKe={label:{enabled:!0},decal:{show:!1}},PU=Je(),gKe={};function mKe(e,t){var r=e.getModel("aria");if(!r.get("enabled"))return;var n=Me(pKe);He(n.label,e.getLocaleModel().get("aria"),!1),He(r.option,n,!1),i(),a();function i(){var u=r.getModel("decal"),c=u.get("show");if(c){var f=we();e.eachSeries(function(h){if(!h.isColorBySeries()){var d=f.get(h.type);d||(d={},f.set(h.type,d)),PU(h).scope=d}}),e.eachRawSeries(function(h){if(e.isSeriesFiltered(h))return;if(Ae(h.enableAriaDecal)){h.enableAriaDecal();return}var d=h.getData();if(h.isColorBySeries()){var _=zI(h.ecModel,h.name,gKe,e.getSeriesCount()),b=d.getVisual("decal");d.setVisual("decal",S(b,_))}else{var v=h.getRawData(),m={},y=PU(h).scope;d.each(function(T){var C=d.getRawIndex(T);m[C]=T});var x=v.count();v.each(function(T){var C=m[T],A=v.getName(T)||T+"",P=zI(h.ecModel,A,y,x),I=d.getItemVisual(C,"decal");d.setItemVisual(C,"decal",S(I,P))})}function S(T,C){var A=T?ne(ne({},C),T):C;return A.dirty=!0,A}})}}function a(){var u=t.getZr().dom;if(u){var c=e.getLocaleModel().get("aria"),f=r.getModel("label");if(f.option=ke(f.option,c),!!f.get("enabled")){if(u.setAttribute("role","img"),f.get("description")){u.setAttribute("aria-label",f.get("description"));return}var h=e.getSeriesCount(),d=f.get(["data","maxCount"])||10,v=f.get(["series","maxCount"])||10,m=Math.min(h,v),y;if(!(h<1)){var x=s();if(x){var _=f.get(["general","withTitle"]);y=o(_,{title:x})}else y=f.get(["general","withoutTitle"]);var b=[],S=h>1?f.get(["series","multiple","prefix"]):f.get(["series","single","prefix"]);y+=o(S,{seriesCount:h}),e.eachSeries(function(P,I){if(I1?f.get(["series","multiple",D]):f.get(["series","single",D]),k=o(k,{seriesId:P.seriesIndex,seriesName:P.get("name"),seriesType:l(P.subType)});var N=P.getData();if(N.count()>d){var z=f.get(["data","partialData"]);k+=o(z,{displayCnt:d})}else k+=f.get(["data","allData"]);for(var V=f.get(["data","separator","middle"]),F=f.get(["data","separator","end"]),$=f.get(["data","excludeDimensionId"]),B=[],Z=0;Z":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},_Ke=function(){function e(t){var r=this._condVal=ge(t)?new RegExp(t):jK(t)?t:null;if(r==null){var n="";mt(n)}}return e.prototype.evaluate=function(t){var r=typeof t;return ge(r)?this._condVal.test(t):ot(r)?this._condVal.test(t+""):!1},e}(),bKe=function(){function e(){}return e.prototype.evaluate=function(){return this.value},e}(),wKe=function(){function e(){}return e.prototype.evaluate=function(){for(var t=this.children,r=0;r2&&n.push(i),i=[N,z]}function c(N,z,V,F){Kh(N,V)&&Kh(z,F)||i.push(N,z,V,F,V,F)}function f(N,z,V,F,$,B){var Z=Math.abs(z-N),W=Math.tan(Z/4)*4/3,G=zP:O2&&n.push(i),n}function tO(e,t,r,n,i,a,o,s,l,u){if(Kh(e,r)&&Kh(t,n)&&Kh(i,o)&&Kh(a,s)){l.push(o,s);return}var c=2/u,f=c*c,h=o-e,d=s-t,v=Math.sqrt(h*h+d*d);h/=v,d/=v;var m=r-e,y=n-t,x=i-o,_=a-s,b=m*m+y*y,S=x*x+_*_;if(b=0&&P=0){l.push(o,s);return}var I=[],k=[];uu(e,r,i,o,.5,I),uu(t,n,a,s,.5,k),tO(I[0],k[0],I[1],k[1],I[2],k[2],I[3],k[3],l,u),tO(I[4],k[4],I[5],k[5],I[6],k[6],I[7],k[7],l,u)}function jKe(e,t){var r=eO(e),n=[];t=t||1;for(var i=0;i0)for(var u=0;uMath.abs(u),f=Wie([l,u],c?0:1,t),h=(c?s:u)/f.length,d=0;di,o=Wie([n,i],a?0:1,t),s=a?"width":"height",l=a?"height":"width",u=a?"x":"y",c=a?"y":"x",f=e[s]/o.length,h=0;h1?null:new Ee(m*l+e,m*u+t)}function zKe(e,t,r){var n=new Ee;Ee.sub(n,r,t),n.normalize();var i=new Ee;Ee.sub(i,e,t);var a=i.dot(n);return a}function wh(e,t){var r=e[e.length-1];r&&r[0]===t[0]&&r[1]===t[1]||e.push(t)}function $Ke(e,t,r){for(var n=e.length,i=[],a=0;ao?(u.x=c.x=s+a/2,u.y=l,c.y=l+o):(u.y=c.y=l+o/2,u.x=s,c.x=s+a),$Ke(t,u,c)}function sS(e,t,r,n){if(r===1)n.push(t);else{var i=Math.floor(r/2),a=e(t);sS(e,a[0],i,n),sS(e,a[1],r-i,n)}return n}function FKe(e,t){for(var r=[],n=0;n0;u/=2){var c=0,f=0;(e&u)>0&&(c=1),(t&u)>0&&(f=1),s+=u*u*(3*c^f),f===0&&(c===1&&(e=u-1-e,t=u-1-t),l=e,e=t,t=l)}return s}function cS(e){var t=1/0,r=1/0,n=-1/0,i=-1/0,a=se(e,function(s){var l=s.getBoundingRect(),u=s.getComputedTransform(),c=l.x+l.width/2+(u?u[4]:0),f=l.y+l.height/2+(u?u[5]:0);return t=Math.min(c,t),r=Math.min(f,r),n=Math.max(c,n),i=Math.max(f,i),[c,f]}),o=se(a,function(s,l){return{cp:s,z:qKe(s[0],s[1],t,r,n,i),path:e[l]}});return o.sort(function(s,l){return s.z-l.z}).map(function(s){return s.path})}function Zie(e){return WKe(e.path,e.count)}function rO(){return{fromIndividuals:[],toIndividuals:[],count:0}}function KKe(e,t,r){var n=[];function i(T){for(var C=0;C=0;i--)if(!r[i].many.length){var l=r[s].many;if(l.length<=1)if(s)s=0;else return r;var a=l.length,u=Math.ceil(a/2);r[i].many=l.slice(u,a),r[s].many=l.slice(0,u),s++}return r}var QKe={clone:function(e){for(var t=[],r=1-Math.pow(1-e.path.style.opacity,1/e.count),n=0;n0))return;var s=n.getModel("universalTransition").get("delay"),l=Object.assign({setToFinal:!0},o),u,c;RU(e)&&(u=e,c=t),RU(t)&&(u=t,c=e);function f(x,_,b,S,T){var C=x.many,A=x.one;if(C.length===1&&!T){var P=_?C[0]:A,I=_?A:C[0];if(lS(P))f({many:[P],one:I},!0,b,S,!0);else{var k=s?ke({delay:s(b,S)},l):l;ZR(P,I,k),a(P,I,P,I,k)}}else for(var O=ke({dividePath:QKe[r],individualDelay:s&&function($,B,Z,W){return s($+b,S)}},l),D=_?KKe(C,A,O):JKe(A,C,O),N=D.fromIndividuals,z=D.toIndividuals,V=N.length,F=0;Ft.length,d=u?BU(c,u):BU(h?t:e,[h?e:t]),v=0,m=0;mYie))for(var a=n.getIndices(),o=0;o0&&C.group.traverse(function(P){P instanceof tt&&!P.animators.length&&P.animateFrom({style:{opacity:0}},A)})})}function GU(e){var t=e.getModel("universalTransition").get("seriesKey");return t||e.id}function WU(e){return ae(e)?e.sort().join(","):e}function Sl(e){if(e.hostModel)return e.hostModel.getModel("universalTransition").get("divideShape")}function oJe(e,t){var r=we(),n=we(),i=we();return R(e.oldSeries,function(a,o){var s=e.oldDataGroupIds[o],l=e.oldData[o],u=GU(a),c=WU(u);n.set(c,{dataGroupId:s,data:l}),ae(u)&&R(u,function(f){i.set(f,{key:c,dataGroupId:s,data:l})})}),R(t.updatedSeries,function(a){if(a.isUniversalTransitionEnabled()&&a.isAnimationEnabled()){var o=a.get("dataGroupId"),s=a.getData(),l=GU(a),u=WU(l),c=n.get(u);if(c)r.set(u,{oldSeries:[{dataGroupId:c.dataGroupId,divide:Sl(c.data),data:c.data}],newSeries:[{dataGroupId:o,divide:Sl(s),data:s}]});else if(ae(l)){var f=[];R(l,function(v){var m=n.get(v);m.data&&f.push({dataGroupId:m.dataGroupId,divide:Sl(m.data),data:m.data})}),f.length&&r.set(u,{oldSeries:f,newSeries:[{dataGroupId:o,data:s,divide:Sl(s)}]})}else{var h=i.get(l);if(h){var d=r.get(h.key);d||(d={oldSeries:[{dataGroupId:h.dataGroupId,data:h.data,divide:Sl(h.data)}],newSeries:[]},r.set(h.key,d)),d.newSeries.push({dataGroupId:o,data:s,divide:Sl(s)})}}}}),r}function HU(e,t){for(var r=0;r=0&&i.push({dataGroupId:t.oldDataGroupIds[s],data:t.oldData[s],divide:Sl(t.oldData[s]),groupIdDim:o.dimension})}),R(kt(e.to),function(o){var s=HU(r.updatedSeries,o);if(s>=0){var l=r.updatedSeries[s].getData();a.push({dataGroupId:t.oldDataGroupIds[s],data:l,divide:Sl(l),groupIdDim:o.dimension})}}),i.length>0&&a.length>0&&Xie(i,a,n)}function lJe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){R(kt(n.seriesTransition),function(i){R(kt(i.to),function(a){for(var o=n.updatedSeries,s=0;so.vmin?r+=o.vmin-n+(t-o.vmin)/(o.vmax-o.vmin)*o.gapReal:r+=t-n,n=o.vmax,i=!1;break}r+=o.vmin-n+o.gapReal,n=o.vmax}return i&&(r+=t-n),r},e.prototype.unelapse=function(t){for(var r=UU,n=ZU,i=!0,a=0,o=0;ol?a=s.vmin+(t-l)/(u-l)*(s.vmax-s.vmin):a=n+t-r,n=s.vmax,i=!1;break}r=u,n=s.vmax}return i&&(a=n+t-r),a},e}();function cJe(){return new uJe}var UU=0,ZU=0;function fJe(e,t){var r=0,n={tpAbs:{span:0,val:0},tpPrct:{span:0,val:0}},i=function(){return{has:!1,span:NaN,inExtFrac:NaN,val:NaN}},a={S:{tpAbs:i(),tpPrct:i()},E:{tpAbs:i(),tpPrct:i()}};R(e.breaks,function(s){var l=s.gapParsed;l.type==="tpPrct"&&(r+=l.val);var u=YR(s,t);if(u){var c=u.vmin!==s.vmin,f=u.vmax!==s.vmax,h=u.vmax-u.vmin;if(!(c&&f))if(c||f){var d=c?"S":"E";a[d][l.type].has=!0,a[d][l.type].span=h,a[d][l.type].inExtFrac=h/(s.vmax-s.vmin),a[d][l.type].val=l.val}else n[l.type].span+=h,n[l.type].val+=l.val}});var o=r*(0+(t[1]-t[0])+(n.tpAbs.val-n.tpAbs.span)+(a.S.tpAbs.has?(a.S.tpAbs.val-a.S.tpAbs.span)*a.S.tpAbs.inExtFrac:0)+(a.E.tpAbs.has?(a.E.tpAbs.val-a.E.tpAbs.span)*a.E.tpAbs.inExtFrac:0)-n.tpPrct.span-(a.S.tpPrct.has?a.S.tpPrct.span*a.S.tpPrct.inExtFrac:0)-(a.E.tpPrct.has?a.E.tpPrct.span*a.E.tpPrct.inExtFrac:0))/(1-n.tpPrct.val-(a.S.tpPrct.has?a.S.tpPrct.val*a.S.tpPrct.inExtFrac:0)-(a.E.tpPrct.has?a.E.tpPrct.val*a.E.tpPrct.inExtFrac:0));R(e.breaks,function(s){var l=s.gapParsed;l.type==="tpPrct"&&(s.gapReal=r!==0?Math.max(o,0)*l.val/r:0),l.type==="tpAbs"&&(s.gapReal=l.val),s.gapReal==null&&(s.gapReal=0)})}function hJe(e,t,r,n,i,a){e!=="no"&&R(r,function(o){var s=YR(o,a);if(s)for(var l=t.length-1;l>=0;l--){var u=t[l],c=n(u),f=i*3/4;c>s.vmin-f&&ct[0]&&r=0&&o<1-1e-5}R(e,function(o){if(!(!o||o.start==null||o.end==null)&&!o.isExpanded){var s={breakOption:Me(o),vmin:t(o.start),vmax:t(o.end),gapParsed:{type:"tpAbs",val:0},gapReal:null};if(o.gap!=null){var l=!1;if(ge(o.gap)){var u=Ci(o.gap);if(u.match(/%$/)){var c=parseFloat(u)/100;i(c)||(c=0),s.gapParsed.type="tpPrct",s.gapParsed.val=c,l=!0}}if(!l){var f=t(o.gap);(!isFinite(f)||f<0)&&(f=0),s.gapParsed.type="tpAbs",s.gapParsed.val=f}}if(s.vmin===s.vmax&&(s.gapParsed.type="tpAbs",s.gapParsed.val=0),r&&r.noNegative&&R(["vmin","vmax"],function(d){s[d]<0&&(s[d]=0)}),s.vmin>s.vmax){var h=s.vmax;s.vmax=s.vmin,s.vmin=h}n.push(s)}}),n.sort(function(o,s){return o.vmin-s.vmin});var a=-1/0;return R(n,function(o,s){a>o.vmin&&(n[s]=null),a=o.vmax}),{breaks:n.filter(function(o){return!!o})}}function XR(e,t){return iO(t)===iO(e)}function iO(e){return e.start+"_\0_"+e.end}function vJe(e,t,r){var n=[];R(e,function(a,o){var s=t(a);s&&s.type==="vmin"&&n.push([o])}),R(e,function(a,o){var s=t(a);if(s&&s.type==="vmax"){var l=Tu(n,function(u){return XR(t(e[u[0]]).parsedBreak.breakOption,s.parsedBreak.breakOption)});l&&l.push(o)}});var i=[];return R(n,function(a){a.length===2&&i.push(r?a:[e[a[0]],e[a[1]]])}),i}function pJe(e,t,r,n){var i,a;if(e.break){var o=e.break.parsedBreak,s=Tu(r,function(f){return XR(f.breakOption,e.break.parsedBreak.breakOption)}),l=n(Math.pow(t,o.vmin),s.vmin),u=n(Math.pow(t,o.vmax),s.vmax),c={type:o.gapParsed.type,val:o.gapParsed.type==="tpAbs"?gr(Math.pow(t,o.vmin+o.gapParsed.val))-l:o.gapParsed.val};i={type:e.break.type,parsedBreak:{breakOption:o.breakOption,vmin:l,vmax:u,gapParsed:c,gapReal:o.gapReal}},a=s[e.break.type]}return{brkRoundingCriterion:a,vBreak:i}}function gJe(e,t,r){var n={noNegative:!0},i=nO(e,r,n),a=nO(e,r,n),o=Math.log(t);return a.breaks=se(a.breaks,function(s){var l=Math.log(s.vmin)/o,u=Math.log(s.vmax)/o,c={type:s.gapParsed.type,val:s.gapParsed.type==="tpAbs"?Math.log(s.vmin+s.gapParsed.val)/o-l:s.gapParsed.val};return{vmin:l,vmax:u,gapParsed:c,gapReal:s.gapReal,breakOption:s.breakOption}}),{parsedOriginal:i,parsedLogged:a}}var mJe={vmin:"start",vmax:"end"};function yJe(e,t){return t&&(e=e||{},e.break={type:mJe[t.type],start:t.parsedBreak.vmin,end:t.parsedBreak.vmax}),e}function xJe(){F5e({createScaleBreakContext:cJe,pruneTicksByBreak:hJe,addBreaksToTicks:dJe,parseAxisBreakOption:nO,identifyAxisBreak:XR,serializeAxisBreakIdentifier:iO,retrieveAxisBreakPairs:vJe,getTicksLogTransformBreak:pJe,logarithmicParseBreaksFromOption:gJe,makeAxisLabelFormatterParamBreak:yJe})}var YU=Je();function _Je(e,t){var r=Tu(e,function(n){return Tr().identifyAxisBreak(n.parsedBreak.breakOption,t.breakOption)});return r||e.push(r={zigzagRandomList:[],parsedBreak:t,shouldRemove:!1}),r}function bJe(e){R(e,function(t){return t.shouldRemove=!0})}function wJe(e){for(var t=e.length-1;t>=0;t--)e[t].shouldRemove&&e.splice(t,1)}function SJe(e,t,r,n,i){var a=r.axis;if(a.scale.isBlank()||!Tr())return;var o=Tr().retrieveAxisBreakPairs(a.scale.getTicks({breakTicks:"only_break"}),function(I){return I.break},!1);if(!o.length)return;var s=r.getModel("breakArea"),l=s.get("zigzagAmplitude"),u=s.get("zigzagMinSpan"),c=s.get("zigzagMaxSpan");u=Math.max(2,u||0),c=Math.max(u,c||0);var f=s.get("expandOnClick"),h=s.get("zigzagZ"),d=s.getModel("itemStyle"),v=d.getItemStyle(),m=v.stroke,y=v.lineWidth,x=v.lineDash,_=v.fill,b=new Pe({ignoreModelZ:!0}),S=a.isHorizontal(),T=YU(t).visualList||(YU(t).visualList=[]);bJe(T);for(var C=function(I){var k=o[I][0].break.parsedBreak,O=[];O[0]=a.toGlobalCoord(a.dataToCoord(k.vmin,!0)),O[1]=a.toGlobalCoord(a.dataToCoord(k.vmax,!0)),O[1]=B;he&&(K=B);var Ne=[],xe=[];Ne[F]=O,xe[F]=D,!le&&!he&&(Ne[F]+=Y?-l:l,xe[F]-=Y?l:-l),Ne[$]=K,xe[$]=K,W.push(Ne),G.push(xe);var ie=void 0;if(ee_[1]&&_.reverse(),{coordPair:_,brkId:Tr().serializeAxisBreakIdentifier(x.breakOption)}});l.sort(function(y,x){return y.coordPair[0]-x.coordPair[0]});for(var u=o[0],c=null,f=0;f=0?l[0].width:l[1].width),h=(f+c.x)/2-u.x,d=Math.min(h,h-c.x),v=Math.max(h,h-c.x),m=v<0?v:d>0?d:0;s=(h-m)/c.x}var y=new Ee,x=new Ee;Ee.scale(y,n,-s),Ee.scale(x,n,1-s),aE(r[0],y),aE(r[1],x)}function AJe(e,t){var r={breaks:[]};return R(t.breaks,function(n){if(n){var i=Tu(e.get("breaks",!0),function(s){return Tr().identifyAxisBreak(s,n)});if(i){var a=t.type,o={isExpanded:!!i.isExpanded};i.isExpanded=a===rC?!0:a===gre?!1:a===mre?!i.isExpanded:i.isExpanded,r.breaks.push({start:i.start,end:i.end,isExpanded:!!i.isExpanded,old:o})}}}),r}function MJe(){wGe({adjustBreakLabelPair:CJe,buildAxisBreakLine:TJe,rectCoordBuildBreakAxis:SJe,updateModelAxisBreak:AJe})}function PJe(e){PGe(e),xJe(),MJe()}function kJe(){XGe(LJe)}function LJe(e,t){R(e,function(r){if(!r.model.get(["axisLabel","inside"])){var n=IJe(r);if(n){var i=r.isHorizontal()?"height":"width",a=r.model.get(["axisLabel","margin"]);t[i]-=n[i]+a,r.position==="top"?t.y+=n.height+a:r.position==="left"&&(t.x+=n.width+a)}}})}function IJe(e){var t=e.model,r=e.scale;if(!t.get(["axisLabel","show"])||r.isBlank())return;var n,i,a=r.getExtent();r instanceof nv?i=r.count():(n=r.getTicks(),i=n.length);var o=e.getLabelModel(),s=Kv(e),l,u=1;i>40&&(u=Math.ceil(i/40));for(var c=0;c1&&arguments[1]!==void 0?arguments[1]:60,i=null;return function(){for(var a=this,o=arguments.length,s=new Array(o),l=0;l12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function YJe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function XJe(e){return e==="ROUTER"||e==="ROUTER_LATE"?30:e==="REPEATER"||e==="TRACKER"?25:e==="CLIENT_MUTE"?7:e==="CLIENT_BASE"?12:15}function qJe({nodes:e,edges:t,selectedNodeId:r,onSelectNode:n}){const i=H.useRef(null),[a,o]=H.useState("connected"),s=H.useMemo(()=>{const y=new Set;return t.forEach(x=>{y.add(x.from_node),y.add(x.to_node)}),y},[t]),l=H.useMemo(()=>{let y=e;return a==="connected"?y=y.filter(x=>s.has(x.node_num)):a==="infra"&&(y=y.filter(x=>KU.includes(x.role))),y},[e,a,s]),u=H.useMemo(()=>new Map(l.map(y=>[y.node_num,y])),[l]),c=H.useMemo(()=>t.filter(y=>u.has(y.from_node)&&u.has(y.to_node)),[t,u]),f=H.useMemo(()=>{const y=new Set;return r!==null&&c.forEach(x=>{x.from_node===r&&y.add(x.to_node),x.to_node===r&&y.add(x.from_node)}),y},[r,c]),h=H.useMemo(()=>{const y=l.map(_=>{const b=YJe(_.latitude),S=qU[b%qU.length],T=KU.includes(_.role),C=_.node_num===r,A=f.has(_.node_num),P=r===null||C||A;return{id:String(_.node_num),name:_.short_name,value:_.node_num,symbolSize:XJe(_.role),itemStyle:{color:T?S:"#111827",borderColor:S,borderWidth:T?0:2,opacity:P?1:.15},label:{show:!0,position:"bottom",distance:5,fontSize:10,fontFamily:"JetBrains Mono, monospace",color:P?"#94a3b8":"#94a3b820"},nodeNum:_.node_num,longName:_.long_name,role:_.role}}),x=c.map(_=>{const b=r===null||_.from_node===r||_.to_node===r;return{source:String(_.from_node),target:String(_.to_node),value:_.snr,lineStyle:{color:ZJe(_.snr),width:b&&r!==null?2:1,opacity:r===null?.4:b?.6:.04}}});return{nodes:y,links:x}},[l,c,r,f]),d=H.useMemo(()=>({backgroundColor:"#111827",tooltip:{trigger:"item",backgroundColor:"#1e293b",borderColor:"#334155",textStyle:{color:"#e2e8f0",fontFamily:"JetBrains Mono, monospace",fontSize:11},formatter:y=>{if(y.data&&y.data.longName){const x=y.data;return`${x.name}
${x.longName}
Role: ${x.role}`}return""}},series:[{type:"graph",layout:"force",roam:!0,draggable:!0,animation:!1,data:h.nodes,links:h.links,force:{repulsion:200,edgeLength:[80,120],gravity:.1},emphasis:{focus:"adjacency",blurScope:"coordinateSystem",scale:1.1,lineStyle:{width:2}},blur:{itemStyle:{opacity:.15},lineStyle:{opacity:.04}},label:{show:!0,position:"bottom",distance:5,fontSize:10,fontFamily:"JetBrains Mono, monospace"},edgeLabel:{show:!1},edgeSymbol:["none","none"]}]}),[h]),v=H.useCallback(y=>{if(y.data&&"nodeNum"in y.data){const x=y.data.nodeNum;n(r===x?null:x??null)}},[r,n]),m=H.useMemo(()=>({click:v}),[v]);return H.useEffect(()=>{var x;const y=(x=i.current)==null?void 0:x.getEchartsInstance();y&&y.setOption(d,{notMerge:!1,lazyUpdate:!0})},[d]),g.jsxs("div",{className:"relative bg-bg-card rounded-lg border border-border overflow-hidden",children:[g.jsx(UJe,{ref:i,option:d,style:{height:"540px",width:"100%"},onEvents:m,opts:{renderer:"canvas"}}),g.jsxs("div",{className:"absolute top-4 left-4 flex items-center gap-2 bg-bg-card/90 backdrop-blur-sm border border-border rounded px-3 py-2",children:[g.jsx(lD,{size:14,className:"text-slate-500"}),g.jsx("div",{className:"flex gap-1",children:[{key:"connected",label:"Connected"},{key:"infra",label:"Infra"},{key:"all",label:"All"}].map(({key:y,label:x})=>g.jsx("button",{onClick:()=>o(y),className:`px-2 py-1 text-xs rounded transition-colors ${a===y?"bg-accent text-white":"bg-bg-hover text-slate-400 hover:text-slate-200"}`,children:x},y))}),g.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[l.length," nodes • ",c.length," edges"]})]}),g.jsxs("div",{className:"absolute bottom-4 left-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded p-3",children:[g.jsx("div",{className:"text-xs text-slate-400 font-medium mb-2",children:"Edge Quality (SNR)"}),g.jsx("div",{className:"space-y-1",children:[{label:"Excellent (>12)",color:"#22c55e"},{label:"Good (8-12)",color:"#4ade80"},{label:"Fair (5-8)",color:"#f59e0b"},{label:"Marginal (3-5)",color:"#f97316"},{label:"Poor (<3)",color:"#ef4444"}].map(y=>g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("div",{className:"w-4 h-0.5",style:{backgroundColor:y.color}}),g.jsx("span",{className:"text-xs text-slate-500",children:y.label})]},y.label))})]}),g.jsxs("div",{className:"absolute bottom-4 right-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded p-3",children:[g.jsx("div",{className:"text-xs text-slate-400 font-medium mb-2",children:"Node Type"}),g.jsxs("div",{className:"space-y-2",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("div",{className:"w-3 h-3 rounded-full bg-blue-500"}),g.jsx("span",{className:"text-xs text-slate-500",children:"Infrastructure"})]}),g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("div",{className:"w-3 h-3 rounded-full bg-gray-900 border-2 border-blue-500"}),g.jsx("span",{className:"text-xs text-slate-500",children:"Client"})]})]})]})]})}function Jie(e,t){const r=H.useRef(t);H.useEffect(function(){t!==r.current&&e.attributionControl!=null&&(r.current!=null&&e.attributionControl.removeAttribution(r.current),t!=null&&e.attributionControl.addAttribution(t)),r.current=t},[e,t])}function KJe(e,t,r){t.center!==r.center&&e.setLatLng(t.center),t.radius!=null&&t.radius!==r.radius&&e.setRadius(t.radius)}const JJe=1;function QJe(e){return Object.freeze({__version:JJe,map:e})}function Qie(e,t){return Object.freeze({...e,...t})}const eae=H.createContext(null),tae=eae.Provider;function vC(){const e=H.useContext(eae);if(e==null)throw new Error("No context provided: useLeafletContext() can only be used in a descendant of ");return e}function eQe(e){function t(r,n){const{instance:i,context:a}=e(r).current;return H.useImperativeHandle(n,()=>i),r.children==null?null:Q.createElement(tae,{value:a},r.children)}return H.forwardRef(t)}function tQe(e){function t(r,n){const[i,a]=H.useState(!1),{instance:o}=e(r,a).current;H.useImperativeHandle(n,()=>o),H.useEffect(function(){i&&o.update()},[o,i,r.children]);const s=o._contentNode;return s?wZ.createPortal(r.children,s):null}return H.forwardRef(t)}function rQe(e){function t(r,n){const{instance:i}=e(r).current;return H.useImperativeHandle(n,()=>i),null}return H.forwardRef(t)}function QR(e,t){const r=H.useRef();H.useEffect(function(){return t!=null&&e.instance.on(t),r.current=t,function(){r.current!=null&&e.instance.off(r.current),r.current=null}},[e,t])}function pC(e,t){const r=e.pane??t.pane;return r?{...e,pane:r}:e}function nQe(e,t){return function(n,i){const a=vC(),o=e(pC(n,a),a);return Jie(a.map,n.attribution),QR(o.current,n.eventHandlers),t(o.current,a,n,i),o}}var sO={exports:{}};/* @preserve * Leaflet 1.9.4, a JS library for interactive maps. https://leafletjs.com * (c) 2010-2023 Vladimir Agafonkin, (c) 2010-2011 CloudMade - */(function(e,t){(function(r,n){n(t)})(fg,function(r){var n="1.9.4";function i(p){var w,M,O,j;for(M=1,O=arguments.length;M"u"||!L||!L.Mixin)){p=b(p)?p:[p];for(var w=0;w0?Math.floor(p):Math.ceil(p)};B.prototype={clone:function(){return new B(this.x,this.y)},add:function(p){return this.clone()._add(W(p))},_add:function(p){return this.x+=p.x,this.y+=p.y,this},subtract:function(p){return this.clone()._subtract(W(p))},_subtract:function(p){return this.x-=p.x,this.y-=p.y,this},divideBy:function(p){return this.clone()._divideBy(p)},_divideBy:function(p){return this.x/=p,this.y/=p,this},multiplyBy:function(p){return this.clone()._multiplyBy(p)},_multiplyBy:function(p){return this.x*=p,this.y*=p,this},scaleBy:function(p){return new B(this.x*p.x,this.y*p.y)},unscaleBy:function(p){return new B(this.x/p.x,this.y/p.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=Z(this.x),this.y=Z(this.y),this},distanceTo:function(p){p=W(p);var w=p.x-this.x,M=p.y-this.y;return Math.sqrt(w*w+M*M)},equals:function(p){return p=W(p),p.x===this.x&&p.y===this.y},contains:function(p){return p=W(p),Math.abs(p.x)<=Math.abs(this.x)&&Math.abs(p.y)<=Math.abs(this.y)},toString:function(){return"Point("+h(this.x)+", "+h(this.y)+")"}};function W(p,w,M){return p instanceof B?p:b(p)?new B(p[0],p[1]):p==null?p:typeof p=="object"&&"x"in p&&"y"in p?new B(p.x,p.y):new B(p,w,M)}function G(p,w){if(p)for(var M=w?[p,w]:p,O=0,j=M.length;O=this.min.x&&M.x<=this.max.x&&w.y>=this.min.y&&M.y<=this.max.y},intersects:function(p){p=Y(p);var w=this.min,M=this.max,O=p.min,j=p.max,U=j.x>=w.x&&O.x<=M.x,X=j.y>=w.y&&O.y<=M.y;return U&&X},overlaps:function(p){p=Y(p);var w=this.min,M=this.max,O=p.min,j=p.max,U=j.x>w.x&&O.xw.y&&O.y=w.lat&&j.lat<=M.lat&&O.lng>=w.lng&&j.lng<=M.lng},intersects:function(p){p=ee(p);var w=this._southWest,M=this._northEast,O=p.getSouthWest(),j=p.getNorthEast(),U=j.lat>=w.lat&&O.lat<=M.lat,X=j.lng>=w.lng&&O.lng<=M.lng;return U&&X},overlaps:function(p){p=ee(p);var w=this._southWest,M=this._northEast,O=p.getSouthWest(),j=p.getNorthEast(),U=j.lat>w.lat&&O.latw.lng&&O.lng1,mae=function(){var p=!1;try{var w=Object.defineProperty({},"passive",{get:function(){p=!0}});window.addEventListener("testPassiveEventSupport",f,w),window.removeEventListener("testPassiveEventSupport",f,w)}catch{}return p}(),yae=function(){return!!document.createElement("canvas").getContext}(),yC=!!(document.createElementNS&&Ge("svg").createSVGRect),xae=!!yC&&function(){var p=document.createElement("div");return p.innerHTML="",(p.firstChild&&p.firstChild.namespaceURI)==="http://www.w3.org/2000/svg"}(),_ae=!yC&&function(){try{var p=document.createElement("div");p.innerHTML='';var w=p.firstChild;return w.style.behavior="url(#default#VML)",w&&typeof w.adj=="object"}catch{return!1}}(),bae=navigator.platform.indexOf("Mac")===0,wae=navigator.platform.indexOf("Linux")===0;function ro(p){return navigator.userAgent.toLowerCase().indexOf(p)>=0}var Ue={ie:Ft,ielt9:rr,edge:Nn,webkit:Xr,android:qn,android23:Rf,androidStock:L0,opera:gC,chrome:e5,gecko:t5,safari:lae,phantom:r5,opera12:n5,win:uae,ie3d:i5,webkit3d:mC,gecko3d:a5,any3d:cae,mobile:rp,mobileWebkit:fae,mobileWebkit3d:hae,msPointer:o5,pointer:s5,touch:dae,touchNative:l5,mobileOpera:vae,mobileGecko:pae,retina:gae,passiveEvents:mae,canvas:yae,svg:yC,vml:_ae,inlineSvg:xae,mac:bae,linux:wae},u5=Ue.msPointer?"MSPointerDown":"pointerdown",c5=Ue.msPointer?"MSPointerMove":"pointermove",f5=Ue.msPointer?"MSPointerUp":"pointerup",h5=Ue.msPointer?"MSPointerCancel":"pointercancel",xC={touchstart:u5,touchmove:c5,touchend:f5,touchcancel:h5},d5={touchstart:Pae,touchmove:I0,touchend:I0,touchcancel:I0},Bf={},v5=!1;function Sae(p,w,M){return w==="touchstart"&&Mae(),d5[w]?(M=d5[w].bind(this,M),p.addEventListener(xC[w],M,!1),M):(console.warn("wrong event specified:",w),f)}function Tae(p,w,M){if(!xC[w]){console.warn("wrong event specified:",w);return}p.removeEventListener(xC[w],M,!1)}function Cae(p){Bf[p.pointerId]=p}function Aae(p){Bf[p.pointerId]&&(Bf[p.pointerId]=p)}function p5(p){delete Bf[p.pointerId]}function Mae(){v5||(document.addEventListener(u5,Cae,!0),document.addEventListener(c5,Aae,!0),document.addEventListener(f5,p5,!0),document.addEventListener(h5,p5,!0),v5=!0)}function I0(p,w){if(w.pointerType!==(w.MSPOINTER_TYPE_MOUSE||"mouse")){w.touches=[];for(var M in Bf)w.touches.push(Bf[M]);w.changedTouches=[w],p(w)}}function Pae(p,w){w.MSPOINTER_TYPE_TOUCH&&w.pointerType===w.MSPOINTER_TYPE_TOUCH&&ln(w),I0(p,w)}function kae(p){var w={},M,O;for(O in p)M=p[O],w[O]=M&&M.bind?M.bind(p):M;return p=w,w.type="dblclick",w.detail=2,w.isTrusted=!1,w._simulated=!0,w}var Lae=200;function Iae(p,w){p.addEventListener("dblclick",w);var M=0,O;function j(U){if(U.detail!==1){O=U.detail;return}if(!(U.pointerType==="mouse"||U.sourceCapabilities&&!U.sourceCapabilities.firesTouchEvents)){var X=_5(U);if(!(X.some(function(oe){return oe instanceof HTMLLabelElement&&oe.attributes.for})&&!X.some(function(oe){return oe instanceof HTMLInputElement||oe instanceof HTMLSelectElement}))){var re=Date.now();re-M<=Lae?(O++,O===2&&w(kae(U))):O=1,M=re}}}return p.addEventListener("click",j),{dblclick:w,simDblclick:j}}function Oae(p,w){p.removeEventListener("dblclick",w.dblclick),p.removeEventListener("click",w.simDblclick)}var _C=D0(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),np=D0(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),g5=np==="webkitTransition"||np==="OTransition"?np+"End":"transitionend";function m5(p){return typeof p=="string"?document.getElementById(p):p}function ip(p,w){var M=p.style[w]||p.currentStyle&&p.currentStyle[w];if((!M||M==="auto")&&document.defaultView){var O=document.defaultView.getComputedStyle(p,null);M=O?O[w]:null}return M==="auto"?null:M}function Ct(p,w,M){var O=document.createElement(p);return O.className=w||"",M&&M.appendChild(O),O}function nr(p){var w=p.parentNode;w&&w.removeChild(p)}function O0(p){for(;p.firstChild;)p.removeChild(p.firstChild)}function zf(p){var w=p.parentNode;w&&w.lastChild!==p&&w.appendChild(p)}function $f(p){var w=p.parentNode;w&&w.firstChild!==p&&w.insertBefore(p,w.firstChild)}function bC(p,w){if(p.classList!==void 0)return p.classList.contains(w);var M=E0(p);return M.length>0&&new RegExp("(^|\\s)"+w+"(\\s|$)").test(M)}function ut(p,w){if(p.classList!==void 0)for(var M=v(w),O=0,j=M.length;O0?2*window.devicePixelRatio:1;function w5(p){return Ue.edge?p.wheelDeltaY/2:p.deltaY&&p.deltaMode===0?-p.deltaY/Nae:p.deltaY&&p.deltaMode===1?-p.deltaY*20:p.deltaY&&p.deltaMode===2?-p.deltaY*60:p.deltaX||p.deltaZ?0:p.wheelDelta?(p.wheelDeltaY||p.wheelDelta)/2:p.detail&&Math.abs(p.detail)<32765?-p.detail*20:p.detail?p.detail/-32765*60:0}function EC(p,w){var M=w.relatedTarget;if(!M)return!0;try{for(;M&&M!==p;)M=M.parentNode}catch{return!1}return M!==p}var jae={__proto__:null,on:st,off:Wt,stopPropagation:Ou,disableScrollPropagation:OC,disableClickPropagation:lp,preventDefault:ln,stop:Eu,getPropagationPath:_5,getMousePosition:b5,getWheelDelta:w5,isExternalTarget:EC,addListener:st,removeListener:Wt},S5=$.extend({run:function(p,w,M,O){this.stop(),this._el=p,this._inProgress=!0,this._duration=M||.25,this._easeOutPower=1/Math.max(O||.5,.2),this._startPos=Iu(p),this._offset=w.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=E(this._animate,this),this._step()},_step:function(p){var w=+new Date-this._startTime,M=this._duration*1e3;wthis.options.maxZoom)?this.setZoom(p):this},panInsideBounds:function(p,w){this._enforcingBounds=!0;var M=this.getCenter(),O=this._limitCenter(M,this._zoom,ee(p));return M.equals(O)||this.panTo(O,w),this._enforcingBounds=!1,this},panInside:function(p,w){w=w||{};var M=W(w.paddingTopLeft||w.padding||[0,0]),O=W(w.paddingBottomRight||w.padding||[0,0]),j=this.project(this.getCenter()),U=this.project(p),X=this.getPixelBounds(),re=Y([X.min.add(M),X.max.subtract(O)]),oe=re.getSize();if(!re.contains(U)){this._enforcingBounds=!0;var de=U.subtract(re.getCenter()),Ee=re.extend(U).getSize().subtract(oe);j.x+=de.x<0?-Ee.x:Ee.x,j.y+=de.y<0?-Ee.y:Ee.y,this.panTo(this.unproject(j),w),this._enforcingBounds=!1}return this},invalidateSize:function(p){if(!this._loaded)return this;p=i({animate:!1,pan:!0},p===!0?{animate:!0}:p);var w=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var M=this.getSize(),O=w.divideBy(2).round(),j=M.divideBy(2).round(),U=O.subtract(j);return!U.x&&!U.y?this:(p.animate&&p.pan?this.panBy(U):(p.pan&&this._rawPanBy(U),this.fire("move"),p.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(o(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:w,newSize:M}))},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(p){if(p=this._locateOptions=i({timeout:1e4,watch:!1},p),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var w=o(this._handleGeolocationResponse,this),M=o(this._handleGeolocationError,this);return p.watch?this._locationWatchId=navigator.geolocation.watchPosition(w,M,p):navigator.geolocation.getCurrentPosition(w,M,p),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(p){if(this._container._leaflet_id){var w=p.code,M=p.message||(w===1?"permission denied":w===2?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:w,message:"Geolocation error: "+M+"."})}},_handleGeolocationResponse:function(p){if(this._container._leaflet_id){var w=p.coords.latitude,M=p.coords.longitude,O=new le(w,M),j=O.toBounds(p.coords.accuracy*2),U=this._locateOptions;if(U.setView){var X=this.getBoundsZoom(j);this.setView(O,U.maxZoom?Math.min(X,U.maxZoom):X)}var re={latlng:O,bounds:j,timestamp:p.timestamp};for(var oe in p.coords)typeof p.coords[oe]=="number"&&(re[oe]=p.coords[oe]);this.fire("locationfound",re)}},addHandler:function(p,w){if(!w)return this;var M=this[p]=new w(this);return this._handlers.push(M),this.options[p]&&M.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch{this._container._leaflet_id=void 0,this._containerId=void 0}this._locationWatchId!==void 0&&this.stopLocate(),this._stop(),nr(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(D(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload");var p;for(p in this._layers)this._layers[p].remove();for(p in this._panes)nr(this._panes[p]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(p,w){var M="leaflet-pane"+(p?" leaflet-"+p.replace("Pane","")+"-pane":""),O=Ct("div",M,w||this._mapPane);return p&&(this._panes[p]=O),O},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var p=this.getPixelBounds(),w=this.unproject(p.getBottomLeft()),M=this.unproject(p.getTopRight());return new K(w,M)},getMinZoom:function(){return this.options.minZoom===void 0?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===void 0?this._layersMaxZoom===void 0?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(p,w,M){p=ee(p),M=W(M||[0,0]);var O=this.getZoom()||0,j=this.getMinZoom(),U=this.getMaxZoom(),X=p.getNorthWest(),re=p.getSouthEast(),oe=this.getSize().subtract(M),de=Y(this.project(re,O),this.project(X,O)).getSize(),Ee=Ue.any3d?this.options.zoomSnap:1,Qe=oe.x/de.x,pt=oe.y/de.y,jn=w?Math.max(Qe,pt):Math.min(Qe,pt);return O=this.getScaleZoom(jn,O),Ee&&(O=Math.round(O/(Ee/100))*(Ee/100),O=w?Math.ceil(O/Ee)*Ee:Math.floor(O/Ee)*Ee),Math.max(j,Math.min(U,O))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new B(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(p,w){var M=this._getTopLeftPoint(p,w);return new G(M,M.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(p){return this.options.crs.getProjectedBounds(p===void 0?this.getZoom():p)},getPane:function(p){return typeof p=="string"?this._panes[p]:p},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(p,w){var M=this.options.crs;return w=w===void 0?this._zoom:w,M.scale(p)/M.scale(w)},getScaleZoom:function(p,w){var M=this.options.crs;w=w===void 0?this._zoom:w;var O=M.zoom(p*M.scale(w));return isNaN(O)?1/0:O},project:function(p,w){return w=w===void 0?this._zoom:w,this.options.crs.latLngToPoint(fe(p),w)},unproject:function(p,w){return w=w===void 0?this._zoom:w,this.options.crs.pointToLatLng(W(p),w)},layerPointToLatLng:function(p){var w=W(p).add(this.getPixelOrigin());return this.unproject(w)},latLngToLayerPoint:function(p){var w=this.project(fe(p))._round();return w._subtract(this.getPixelOrigin())},wrapLatLng:function(p){return this.options.crs.wrapLatLng(fe(p))},wrapLatLngBounds:function(p){return this.options.crs.wrapLatLngBounds(ee(p))},distance:function(p,w){return this.options.crs.distance(fe(p),fe(w))},containerPointToLayerPoint:function(p){return W(p).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(p){return W(p).add(this._getMapPanePos())},containerPointToLatLng:function(p){var w=this.containerPointToLayerPoint(W(p));return this.layerPointToLatLng(w)},latLngToContainerPoint:function(p){return this.layerPointToContainerPoint(this.latLngToLayerPoint(fe(p)))},mouseEventToContainerPoint:function(p){return b5(p,this._container)},mouseEventToLayerPoint:function(p){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(p))},mouseEventToLatLng:function(p){return this.layerPointToLatLng(this.mouseEventToLayerPoint(p))},_initContainer:function(p){var w=this._container=m5(p);if(w){if(w._leaflet_id)throw new Error("Map container is already initialized.")}else throw new Error("Map container not found.");st(w,"scroll",this._onScroll,this),this._containerId=l(w)},_initLayout:function(){var p=this._container;this._fadeAnimated=this.options.fadeAnimation&&Ue.any3d,ut(p,"leaflet-container"+(Ue.touch?" leaflet-touch":"")+(Ue.retina?" leaflet-retina":"")+(Ue.ielt9?" leaflet-oldie":"")+(Ue.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var w=ip(p,"position");w!=="absolute"&&w!=="relative"&&w!=="fixed"&&w!=="sticky"&&(p.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var p=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),Ar(this._mapPane,new B(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(ut(p.markerPane,"leaflet-zoom-hide"),ut(p.shadowPane,"leaflet-zoom-hide"))},_resetView:function(p,w,M){Ar(this._mapPane,new B(0,0));var O=!this._loaded;this._loaded=!0,w=this._limitZoom(w),this.fire("viewprereset");var j=this._zoom!==w;this._moveStart(j,M)._move(p,w)._moveEnd(j),this.fire("viewreset"),O&&this.fire("load")},_moveStart:function(p,w){return p&&this.fire("zoomstart"),w||this.fire("movestart"),this},_move:function(p,w,M,O){w===void 0&&(w=this._zoom);var j=this._zoom!==w;return this._zoom=w,this._lastCenter=p,this._pixelOrigin=this._getNewPixelOrigin(p),O?M&&M.pinch&&this.fire("zoom",M):((j||M&&M.pinch)&&this.fire("zoom",M),this.fire("move",M)),this},_moveEnd:function(p){return p&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return D(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(p){Ar(this._mapPane,this._getMapPanePos().subtract(p))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(p){this._targets={},this._targets[l(this._container)]=this;var w=p?Wt:st;w(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&w(window,"resize",this._onResize,this),Ue.any3d&&this.options.transform3DLimit&&(p?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){D(this._resizeRequest),this._resizeRequest=E(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var p=this._getMapPanePos();Math.max(Math.abs(p.x),Math.abs(p.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(p,w){for(var M=[],O,j=w==="mouseout"||w==="mouseover",U=p.target||p.srcElement,X=!1;U;){if(O=this._targets[l(U)],O&&(w==="click"||w==="preclick")&&this._draggableMoved(O)){X=!0;break}if(O&&O.listens(w,!0)&&(j&&!EC(U,p)||(M.push(O),j))||U===this._container)break;U=U.parentNode}return!M.length&&!X&&!j&&this.listens(w,!0)&&(M=[this]),M},_isClickDisabled:function(p){for(;p&&p!==this._container;){if(p._leaflet_disable_click)return!0;p=p.parentNode}},_handleDOMEvent:function(p){var w=p.target||p.srcElement;if(!(!this._loaded||w._leaflet_disable_events||p.type==="click"&&this._isClickDisabled(w))){var M=p.type;M==="mousedown"&&MC(w),this._fireDOMEvent(p,M)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(p,w,M){if(p.type==="click"){var O=i({},p);O.type="preclick",this._fireDOMEvent(O,O.type,M)}var j=this._findEventTargets(p,w);if(M){for(var U=[],X=0;X0?Math.round(p-w)/2:Math.max(0,Math.ceil(p))-Math.max(0,Math.floor(w))},_limitZoom:function(p){var w=this.getMinZoom(),M=this.getMaxZoom(),O=Ue.any3d?this.options.zoomSnap:1;return O&&(p=Math.round(p/O)*O),Math.max(w,Math.min(M,p))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){_r(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(p,w){var M=this._getCenterOffset(p)._trunc();return(w&&w.animate)!==!0&&!this.getSize().contains(M)?!1:(this.panBy(M,w),!0)},_createAnimProxy:function(){var p=this._proxy=Ct("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(p),this.on("zoomanim",function(w){var M=_C,O=this._proxy.style[M];Lu(this._proxy,this.project(w.center,w.zoom),this.getZoomScale(w.zoom,1)),O===this._proxy.style[M]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){nr(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var p=this.getCenter(),w=this.getZoom();Lu(this._proxy,this.project(p,w),this.getZoomScale(w,1))},_catchTransitionEnd:function(p){this._animatingZoom&&p.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(p,w,M){if(this._animatingZoom)return!0;if(M=M||{},!this._zoomAnimated||M.animate===!1||this._nothingToAnimate()||Math.abs(w-this._zoom)>this.options.zoomAnimationThreshold)return!1;var O=this.getZoomScale(w),j=this._getCenterOffset(p)._divideBy(1-1/O);return M.animate!==!0&&!this.getSize().contains(j)?!1:(E(function(){this._moveStart(!0,M.noMoveStart||!1)._animateZoom(p,w,!0)},this),!0)},_animateZoom:function(p,w,M,O){this._mapPane&&(M&&(this._animatingZoom=!0,this._animateToCenter=p,this._animateToZoom=w,ut(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:p,zoom:w,noUpdate:O}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(o(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&_r(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});function Rae(p,w){return new wt(p,w)}var wa=z.extend({options:{position:"topright"},initialize:function(p){g(this,p)},getPosition:function(){return this.options.position},setPosition:function(p){var w=this._map;return w&&w.removeControl(this),this.options.position=p,w&&w.addControl(this),this},getContainer:function(){return this._container},addTo:function(p){this.remove(),this._map=p;var w=this._container=this.onAdd(p),M=this.getPosition(),O=p._controlCorners[M];return ut(w,"leaflet-control"),M.indexOf("bottom")!==-1?O.insertBefore(w,O.firstChild):O.appendChild(w),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(nr(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(p){this._map&&p&&p.screenX>0&&p.screenY>0&&this._map.getContainer().focus()}}),up=function(p){return new wa(p)};wt.include({addControl:function(p){return p.addTo(this),this},removeControl:function(p){return p.remove(),this},_initControlPos:function(){var p=this._controlCorners={},w="leaflet-",M=this._controlContainer=Ct("div",w+"control-container",this._container);function O(j,U){var X=w+j+" "+w+U;p[j+U]=Ct("div",X,M)}O("top","left"),O("top","right"),O("bottom","left"),O("bottom","right")},_clearControlPos:function(){for(var p in this._controlCorners)nr(this._controlCorners[p]);nr(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var T5=wa.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(p,w,M,O){return M1,this._baseLayersList.style.display=p?"":"none"),this._separator.style.display=w&&p?"":"none",this},_onLayerChange:function(p){this._handlingClick||this._update();var w=this._getLayer(l(p.target)),M=w.overlay?p.type==="add"?"overlayadd":"overlayremove":p.type==="add"?"baselayerchange":null;M&&this._map.fire(M,w)},_createRadioElement:function(p,w){var M='",O=document.createElement("div");return O.innerHTML=M,O.firstChild},_addItem:function(p){var w=document.createElement("label"),M=this._map.hasLayer(p.layer),O;p.overlay?(O=document.createElement("input"),O.type="checkbox",O.className="leaflet-control-layers-selector",O.defaultChecked=M):O=this._createRadioElement("leaflet-base-layers_"+l(this),M),this._layerControlInputs.push(O),O.layerId=l(p.layer),st(O,"click",this._onInputClick,this);var j=document.createElement("span");j.innerHTML=" "+p.name;var U=document.createElement("span");w.appendChild(U),U.appendChild(O),U.appendChild(j);var X=p.overlay?this._overlaysList:this._baseLayersList;return X.appendChild(w),this._checkDisabledLayers(),w},_onInputClick:function(){if(!this._preventClick){var p=this._layerControlInputs,w,M,O=[],j=[];this._handlingClick=!0;for(var U=p.length-1;U>=0;U--)w=p[U],M=this._getLayer(w.layerId).layer,w.checked?O.push(M):w.checked||j.push(M);for(U=0;U=0;j--)w=p[j],M=this._getLayer(w.layerId).layer,w.disabled=M.options.minZoom!==void 0&&OM.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var p=this._section;this._preventClick=!0,st(p,"click",ln),this.expand();var w=this;setTimeout(function(){Wt(p,"click",ln),w._preventClick=!1})}}),Bae=function(p,w,M){return new T5(p,w,M)},DC=wa.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(p){var w="leaflet-control-zoom",M=Ct("div",w+" leaflet-bar"),O=this.options;return this._zoomInButton=this._createButton(O.zoomInText,O.zoomInTitle,w+"-in",M,this._zoomIn),this._zoomOutButton=this._createButton(O.zoomOutText,O.zoomOutTitle,w+"-out",M,this._zoomOut),this._updateDisabled(),p.on("zoomend zoomlevelschange",this._updateDisabled,this),M},onRemove:function(p){p.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(p){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(p.shiftKey?3:1))},_createButton:function(p,w,M,O,j){var U=Ct("a",M,O);return U.innerHTML=p,U.href="#",U.title=w,U.setAttribute("role","button"),U.setAttribute("aria-label",w),lp(U),st(U,"click",Eu),st(U,"click",j,this),st(U,"click",this._refocusOnMap,this),U},_updateDisabled:function(){var p=this._map,w="leaflet-disabled";_r(this._zoomInButton,w),_r(this._zoomOutButton,w),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||p._zoom===p.getMinZoom())&&(ut(this._zoomOutButton,w),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||p._zoom===p.getMaxZoom())&&(ut(this._zoomInButton,w),this._zoomInButton.setAttribute("aria-disabled","true"))}});wt.mergeOptions({zoomControl:!0}),wt.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new DC,this.addControl(this.zoomControl))});var zae=function(p){return new DC(p)},C5=wa.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(p){var w="leaflet-control-scale",M=Ct("div",w),O=this.options;return this._addScales(O,w+"-line",M),p.on(O.updateWhenIdle?"moveend":"move",this._update,this),p.whenReady(this._update,this),M},onRemove:function(p){p.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(p,w,M){p.metric&&(this._mScale=Ct("div",w,M)),p.imperial&&(this._iScale=Ct("div",w,M))},_update:function(){var p=this._map,w=p.getSize().y/2,M=p.distance(p.containerPointToLatLng([0,w]),p.containerPointToLatLng([this.options.maxWidth,w]));this._updateScales(M)},_updateScales:function(p){this.options.metric&&p&&this._updateMetric(p),this.options.imperial&&p&&this._updateImperial(p)},_updateMetric:function(p){var w=this._getRoundNum(p),M=w<1e3?w+" m":w/1e3+" km";this._updateScale(this._mScale,M,w/p)},_updateImperial:function(p){var w=p*3.2808399,M,O,j;w>5280?(M=w/5280,O=this._getRoundNum(M),this._updateScale(this._iScale,O+" mi",O/M)):(j=this._getRoundNum(w),this._updateScale(this._iScale,j+" ft",j/w))},_updateScale:function(p,w,M){p.style.width=Math.round(this.options.maxWidth*M)+"px",p.innerHTML=w},_getRoundNum:function(p){var w=Math.pow(10,(Math.floor(p)+"").length-1),M=p/w;return M=M>=10?10:M>=5?5:M>=3?3:M>=2?2:1,w*M}}),$ae=function(p){return new C5(p)},Fae='',NC=wa.extend({options:{position:"bottomright",prefix:''+(Ue.inlineSvg?Fae+" ":"")+"Leaflet"},initialize:function(p){g(this,p),this._attributions={}},onAdd:function(p){p.attributionControl=this,this._container=Ct("div","leaflet-control-attribution"),lp(this._container);for(var w in p._layers)p._layers[w].getAttribution&&this.addAttribution(p._layers[w].getAttribution());return this._update(),p.on("layeradd",this._addAttribution,this),this._container},onRemove:function(p){p.off("layeradd",this._addAttribution,this)},_addAttribution:function(p){p.layer.getAttribution&&(this.addAttribution(p.layer.getAttribution()),p.layer.once("remove",function(){this.removeAttribution(p.layer.getAttribution())},this))},setPrefix:function(p){return this.options.prefix=p,this._update(),this},addAttribution:function(p){return p?(this._attributions[p]||(this._attributions[p]=0),this._attributions[p]++,this._update(),this):this},removeAttribution:function(p){return p?(this._attributions[p]&&(this._attributions[p]--,this._update()),this):this},_update:function(){if(this._map){var p=[];for(var w in this._attributions)this._attributions[w]&&p.push(w);var M=[];this.options.prefix&&M.push(this.options.prefix),p.length&&M.push(p.join(", ")),this._container.innerHTML=M.join(' ')}}});wt.mergeOptions({attributionControl:!0}),wt.addInitHook(function(){this.options.attributionControl&&new NC().addTo(this)});var Vae=function(p){return new NC(p)};wa.Layers=T5,wa.Zoom=DC,wa.Scale=C5,wa.Attribution=NC,up.layers=Bae,up.zoom=zae,up.scale=$ae,up.attribution=Vae;var io=z.extend({initialize:function(p){this._map=p},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});io.addTo=function(p,w){return p.addHandler(w,this),this};var Gae={Events:F},A5=Ue.touch?"touchstart mousedown":"mousedown",nl=$.extend({options:{clickTolerance:3},initialize:function(p,w,M,O){g(this,O),this._element=p,this._dragStartTarget=w||p,this._preventOutline=M},enable:function(){this._enabled||(st(this._dragStartTarget,A5,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(nl._dragging===this&&this.finishDrag(!0),Wt(this._dragStartTarget,A5,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(p){if(this._enabled&&(this._moved=!1,!bC(this._element,"leaflet-zoom-anim"))){if(p.touches&&p.touches.length!==1){nl._dragging===this&&this.finishDrag();return}if(!(nl._dragging||p.shiftKey||p.which!==1&&p.button!==1&&!p.touches)&&(nl._dragging=this,this._preventOutline&&MC(this._element),TC(),ap(),!this._moving)){this.fire("down");var w=p.touches?p.touches[0]:p,M=y5(this._element);this._startPoint=new B(w.clientX,w.clientY),this._startPos=Iu(this._element),this._parentScale=PC(M);var O=p.type==="mousedown";st(document,O?"mousemove":"touchmove",this._onMove,this),st(document,O?"mouseup":"touchend touchcancel",this._onUp,this)}}},_onMove:function(p){if(this._enabled){if(p.touches&&p.touches.length>1){this._moved=!0;return}var w=p.touches&&p.touches.length===1?p.touches[0]:p,M=new B(w.clientX,w.clientY)._subtract(this._startPoint);!M.x&&!M.y||Math.abs(M.x)+Math.abs(M.y)U&&(X=re,U=oe);U>M&&(w[X]=1,RC(p,w,M,O,X),RC(p,w,M,X,j))}function Zae(p,w){for(var M=[p[0]],O=1,j=0,U=p.length;Ow&&(M.push(p[O]),j=O);return jw.max.x&&(M|=2),p.yw.max.y&&(M|=8),M}function Yae(p,w){var M=w.x-p.x,O=w.y-p.y;return M*M+O*O}function cp(p,w,M,O){var j=w.x,U=w.y,X=M.x-j,re=M.y-U,oe=X*X+re*re,de;return oe>0&&(de=((p.x-j)*X+(p.y-U)*re)/oe,de>1?(j=M.x,U=M.y):de>0&&(j+=X*de,U+=re*de)),X=p.x-j,re=p.y-U,O?X*X+re*re:new B(j,U)}function Bi(p){return!b(p[0])||typeof p[0][0]!="object"&&typeof p[0][0]<"u"}function E5(p){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Bi(p)}function D5(p,w){var M,O,j,U,X,re,oe,de;if(!p||p.length===0)throw new Error("latlngs not passed");Bi(p)||(console.warn("latlngs are not flat! Only the first ring will be used"),p=p[0]);var Ee=fe([0,0]),Qe=ee(p),pt=Qe.getNorthWest().distanceTo(Qe.getSouthWest())*Qe.getNorthEast().distanceTo(Qe.getNorthWest());pt<1700&&(Ee=jC(p));var jn=p.length,qr=[];for(M=0;MO){oe=(U-O)/j,de=[re.x-oe*(re.x-X.x),re.y-oe*(re.y-X.y)];break}var Kn=w.unproject(W(de));return fe([Kn.lat+Ee.lat,Kn.lng+Ee.lng])}var Xae={__proto__:null,simplify:k5,pointToSegmentDistance:L5,closestPointOnSegment:Hae,clipSegment:O5,_getEdgeIntersection:R0,_getBitCode:Du,_sqClosestPointOnSegment:cp,isFlat:Bi,_flat:E5,polylineCenter:D5},BC={project:function(p){return new B(p.lng,p.lat)},unproject:function(p){return new le(p.y,p.x)},bounds:new G([-180,-90],[180,90])},zC={R:6378137,R_MINOR:6356752314245179e-9,bounds:new G([-2003750834279e-5,-1549657073972e-5],[2003750834279e-5,1876465623138e-5]),project:function(p){var w=Math.PI/180,M=this.R,O=p.lat*w,j=this.R_MINOR/M,U=Math.sqrt(1-j*j),X=U*Math.sin(O),re=Math.tan(Math.PI/4-O/2)/Math.pow((1-X)/(1+X),U/2);return O=-M*Math.log(Math.max(re,1e-10)),new B(p.lng*w*M,O)},unproject:function(p){for(var w=180/Math.PI,M=this.R,O=this.R_MINOR/M,j=Math.sqrt(1-O*O),U=Math.exp(-p.y/M),X=Math.PI/2-2*Math.atan(U),re=0,oe=.1,de;re<15&&Math.abs(oe)>1e-7;re++)de=j*Math.sin(X),de=Math.pow((1-de)/(1+de),j/2),oe=Math.PI/2-2*Math.atan(U*de)-X,X+=oe;return new le(X*w,p.x*w/M)}},qae={__proto__:null,LonLat:BC,Mercator:zC,SphericalMercator:he},Kae=i({},me,{code:"EPSG:3395",projection:zC,transformation:function(){var p=.5/(Math.PI*zC.R);return te(p,.5,-p,.5)}()}),N5=i({},me,{code:"EPSG:4326",projection:BC,transformation:te(1/180,1,-1/180,.5)}),Jae=i({},De,{projection:BC,transformation:te(1,0,-1,0),scale:function(p){return Math.pow(2,p)},zoom:function(p){return Math.log(p)/Math.LN2},distance:function(p,w){var M=w.lng-p.lng,O=w.lat-p.lat;return Math.sqrt(M*M+O*O)},infinite:!0});De.Earth=me,De.EPSG3395=Kae,De.EPSG3857=Ve,De.EPSG900913=Se,De.EPSG4326=N5,De.Simple=Jae;var Sa=$.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(p){return p.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(p){return p&&p.removeLayer(this),this},getPane:function(p){return this._map.getPane(p?this.options[p]||p:this.options.pane)},addInteractiveTarget:function(p){return this._map._targets[l(p)]=this,this},removeInteractiveTarget:function(p){return delete this._map._targets[l(p)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(p){var w=p.target;if(w.hasLayer(this)){if(this._map=w,this._zoomAnimated=w._zoomAnimated,this.getEvents){var M=this.getEvents();w.on(M,this),this.once("remove",function(){w.off(M,this)},this)}this.onAdd(w),this.fire("add"),w.fire("layeradd",{layer:this})}}});wt.include({addLayer:function(p){if(!p._layerAdd)throw new Error("The provided object is not a Layer.");var w=l(p);return this._layers[w]?this:(this._layers[w]=p,p._mapToAdd=this,p.beforeAdd&&p.beforeAdd(this),this.whenReady(p._layerAdd,p),this)},removeLayer:function(p){var w=l(p);return this._layers[w]?(this._loaded&&p.onRemove(this),delete this._layers[w],this._loaded&&(this.fire("layerremove",{layer:p}),p.fire("remove")),p._map=p._mapToAdd=null,this):this},hasLayer:function(p){return l(p)in this._layers},eachLayer:function(p,w){for(var M in this._layers)p.call(w,this._layers[M]);return this},_addLayers:function(p){p=p?b(p)?p:[p]:[];for(var w=0,M=p.length;wthis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),this.options.minZoom===void 0&&this._layersMinZoom&&this.getZoom()=2&&w[0]instanceof le&&w[0].equals(w[M-1])&&w.pop(),w},_setLatLngs:function(p){es.prototype._setLatLngs.call(this,p),Bi(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Bi(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var p=this._renderer._bounds,w=this.options.weight,M=new B(w,w);if(p=new G(p.min.subtract(M),p.max.add(M)),this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(p))){if(this.options.noClip){this._parts=this._rings;return}for(var O=0,j=this._rings.length,U;Op.y!=j.y>p.y&&p.x<(j.x-O.x)*(p.y-O.y)/(j.y-O.y)+O.x&&(w=!w);return w||es.prototype._containsPoint.call(this,p,!0)}});function ooe(p,w){return new Gf(p,w)}var ts=Qo.extend({initialize:function(p,w){g(this,w),this._layers={},p&&this.addData(p)},addData:function(p){var w=b(p)?p:p.features,M,O,j;if(w){for(M=0,O=w.length;M0&&j.push(j[0].slice()),j}function Wf(p,w){return p.feature?i({},p.feature,{geometry:w}):G0(w)}function G0(p){return p.type==="Feature"||p.type==="FeatureCollection"?p:{type:"Feature",properties:{},geometry:p}}var GC={toGeoJSON:function(p){return Wf(this,{type:"Point",coordinates:VC(this.getLatLng(),p)})}};B0.include(GC),$C.include(GC),z0.include(GC),es.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),M=V0(this._latlngs,w?1:0,!1,p);return Wf(this,{type:(w?"Multi":"")+"LineString",coordinates:M})}}),Gf.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),M=w&&!Bi(this._latlngs[0]),O=V0(this._latlngs,M?2:w?1:0,!0,p);return w||(O=[O]),Wf(this,{type:(M?"Multi":"")+"Polygon",coordinates:O})}}),Ff.include({toMultiPoint:function(p){var w=[];return this.eachLayer(function(M){w.push(M.toGeoJSON(p).geometry.coordinates)}),Wf(this,{type:"MultiPoint",coordinates:w})},toGeoJSON:function(p){var w=this.feature&&this.feature.geometry&&this.feature.geometry.type;if(w==="MultiPoint")return this.toMultiPoint(p);var M=w==="GeometryCollection",O=[];return this.eachLayer(function(j){if(j.toGeoJSON){var U=j.toGeoJSON(p);if(M)O.push(U.geometry);else{var X=G0(U);X.type==="FeatureCollection"?O.push.apply(O,X.features):O.push(X)}}}),M?Wf(this,{geometries:O,type:"GeometryCollection"}):{type:"FeatureCollection",features:O}}});function B5(p,w){return new ts(p,w)}var soe=B5,W0=Sa.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(p,w,M){this._url=p,this._bounds=ee(w),g(this,M)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(ut(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){nr(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(p){return this.options.opacity=p,this._image&&this._updateOpacity(),this},setStyle:function(p){return p.opacity&&this.setOpacity(p.opacity),this},bringToFront:function(){return this._map&&zf(this._image),this},bringToBack:function(){return this._map&&$f(this._image),this},setUrl:function(p){return this._url=p,this._image&&(this._image.src=p),this},setBounds:function(p){return this._bounds=ee(p),this._map&&this._reset(),this},getEvents:function(){var p={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(p.zoomanim=this._animateZoom),p},setZIndex:function(p){return this.options.zIndex=p,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var p=this._url.tagName==="IMG",w=this._image=p?this._url:Ct("img");if(ut(w,"leaflet-image-layer"),this._zoomAnimated&&ut(w,"leaflet-zoom-animated"),this.options.className&&ut(w,this.options.className),w.onselectstart=f,w.onmousemove=f,w.onload=o(this.fire,this,"load"),w.onerror=o(this._overlayOnError,this,"error"),(this.options.crossOrigin||this.options.crossOrigin==="")&&(w.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),p){this._url=w.src;return}w.src=this._url,w.alt=this.options.alt},_animateZoom:function(p){var w=this._map.getZoomScale(p.zoom),M=this._map._latLngBoundsToNewLayerBounds(this._bounds,p.zoom,p.center).min;Lu(this._image,M,w)},_reset:function(){var p=this._image,w=new G(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),M=w.getSize();Ar(p,w.min),p.style.width=M.x+"px",p.style.height=M.y+"px"},_updateOpacity:function(){Ri(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var p=this.options.errorOverlayUrl;p&&this._url!==p&&(this._url=p,this._image.src=p)},getCenter:function(){return this._bounds.getCenter()}}),loe=function(p,w,M){return new W0(p,w,M)},z5=W0.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var p=this._url.tagName==="VIDEO",w=this._image=p?this._url:Ct("video");if(ut(w,"leaflet-image-layer"),this._zoomAnimated&&ut(w,"leaflet-zoom-animated"),this.options.className&&ut(w,this.options.className),w.onselectstart=f,w.onmousemove=f,w.onloadeddata=o(this.fire,this,"load"),p){for(var M=w.getElementsByTagName("source"),O=[],j=0;j0?O:[w.src];return}b(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(w.style,"objectFit")&&(w.style.objectFit="fill"),w.autoplay=!!this.options.autoplay,w.loop=!!this.options.loop,w.muted=!!this.options.muted,w.playsInline=!!this.options.playsInline;for(var U=0;Uj?(w.height=j+"px",ut(p,U)):_r(p,U),this._containerWidth=this._container.offsetWidth},_animateZoom:function(p){var w=this._map._latLngToNewLayerPoint(this._latlng,p.zoom,p.center),M=this._getAnchor();Ar(this._container,w.add(M))},_adjustPan:function(){if(this.options.autoPan){if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning){this._autopanning=!1;return}var p=this._map,w=parseInt(ip(this._container,"marginBottom"),10)||0,M=this._container.offsetHeight+w,O=this._containerWidth,j=new B(this._containerLeft,-M-this._containerBottom);j._add(Iu(this._container));var U=p.layerPointToContainerPoint(j),X=W(this.options.autoPanPadding),re=W(this.options.autoPanPaddingTopLeft||X),oe=W(this.options.autoPanPaddingBottomRight||X),de=p.getSize(),Ee=0,Qe=0;U.x+O+oe.x>de.x&&(Ee=U.x+O-de.x+oe.x),U.x-Ee-re.x<0&&(Ee=U.x-re.x),U.y+M+oe.y>de.y&&(Qe=U.y+M-de.y+oe.y),U.y-Qe-re.y<0&&(Qe=U.y-re.y),(Ee||Qe)&&(this.options.keepInView&&(this._autopanning=!0),p.fire("autopanstart").panBy([Ee,Qe]))}},_getAnchor:function(){return W(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),foe=function(p,w){return new H0(p,w)};wt.mergeOptions({closePopupOnClick:!0}),wt.include({openPopup:function(p,w,M){return this._initOverlay(H0,p,w,M).openOn(this),this},closePopup:function(p){return p=arguments.length?p:this._popup,p&&p.close(),this}}),Sa.include({bindPopup:function(p,w){return this._popup=this._initOverlay(H0,this._popup,p,w),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(p){return this._popup&&(this instanceof Qo||(this._popup._source=this),this._popup._prepareOpen(p||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return this._popup?this._popup.isOpen():!1},setPopupContent:function(p){return this._popup&&this._popup.setContent(p),this},getPopup:function(){return this._popup},_openPopup:function(p){if(!(!this._popup||!this._map)){Eu(p);var w=p.layer||p.target;if(this._popup._source===w&&!(w instanceof il)){this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(p.latlng);return}this._popup._source=w,this.openPopup(p.latlng)}},_movePopup:function(p){this._popup.setLatLng(p.latlng)},_onKeyPress:function(p){p.originalEvent.keyCode===13&&this._openPopup(p)}});var U0=ao.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(p){ao.prototype.onAdd.call(this,p),this.setOpacity(this.options.opacity),p.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(p){ao.prototype.onRemove.call(this,p),p.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var p=ao.prototype.getEvents.call(this);return this.options.permanent||(p.preclick=this.close),p},_initLayout:function(){var p="leaflet-tooltip",w=p+" "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=Ct("div",w),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+l(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(p){var w,M,O=this._map,j=this._container,U=O.latLngToContainerPoint(O.getCenter()),X=O.layerPointToContainerPoint(p),re=this.options.direction,oe=j.offsetWidth,de=j.offsetHeight,Ee=W(this.options.offset),Qe=this._getAnchor();re==="top"?(w=oe/2,M=de):re==="bottom"?(w=oe/2,M=0):re==="center"?(w=oe/2,M=de/2):re==="right"?(w=0,M=de/2):re==="left"?(w=oe,M=de/2):X.xthis.options.maxZoom||MO?this._retainParent(j,U,X,O):!1)},_retainChildren:function(p,w,M,O){for(var j=2*p;j<2*p+2;j++)for(var U=2*w;U<2*w+2;U++){var X=new B(j,U);X.z=M+1;var re=this._tileCoordsToKey(X),oe=this._tiles[re];if(oe&&oe.active){oe.retain=!0;continue}else oe&&oe.loaded&&(oe.retain=!0);M+1this.options.maxZoom||this.options.minZoom!==void 0&&j1){this._setView(p,M);return}for(var Qe=j.min.y;Qe<=j.max.y;Qe++)for(var pt=j.min.x;pt<=j.max.x;pt++){var jn=new B(pt,Qe);if(jn.z=this._tileZoom,!!this._isValidTile(jn)){var qr=this._tiles[this._tileCoordsToKey(jn)];qr?qr.current=!0:X.push(jn)}}if(X.sort(function(Kn,Uf){return Kn.distanceTo(U)-Uf.distanceTo(U)}),X.length!==0){this._loading||(this._loading=!0,this.fire("loading"));var zi=document.createDocumentFragment();for(pt=0;ptM.max.x)||!w.wrapLat&&(p.yM.max.y))return!1}if(!this.options.bounds)return!0;var O=this._tileCoordsToBounds(p);return ee(this.options.bounds).overlaps(O)},_keyToBounds:function(p){return this._tileCoordsToBounds(this._keyToTileCoords(p))},_tileCoordsToNwSe:function(p){var w=this._map,M=this.getTileSize(),O=p.scaleBy(M),j=O.add(M),U=w.unproject(O,p.z),X=w.unproject(j,p.z);return[U,X]},_tileCoordsToBounds:function(p){var w=this._tileCoordsToNwSe(p),M=new K(w[0],w[1]);return this.options.noWrap||(M=this._map.wrapLatLngBounds(M)),M},_tileCoordsToKey:function(p){return p.x+":"+p.y+":"+p.z},_keyToTileCoords:function(p){var w=p.split(":"),M=new B(+w[0],+w[1]);return M.z=+w[2],M},_removeTile:function(p){var w=this._tiles[p];w&&(nr(w.el),delete this._tiles[p],this.fire("tileunload",{tile:w.el,coords:this._keyToTileCoords(p)}))},_initTile:function(p){ut(p,"leaflet-tile");var w=this.getTileSize();p.style.width=w.x+"px",p.style.height=w.y+"px",p.onselectstart=f,p.onmousemove=f,Ue.ielt9&&this.options.opacity<1&&Ri(p,this.options.opacity)},_addTile:function(p,w){var M=this._getTilePos(p),O=this._tileCoordsToKey(p),j=this.createTile(this._wrapCoords(p),o(this._tileReady,this,p));this._initTile(j),this.createTile.length<2&&E(o(this._tileReady,this,p,null,j)),Ar(j,M),this._tiles[O]={el:j,coords:p,current:!0},w.appendChild(j),this.fire("tileloadstart",{tile:j,coords:p})},_tileReady:function(p,w,M){w&&this.fire("tileerror",{error:w,tile:M,coords:p});var O=this._tileCoordsToKey(p);M=this._tiles[O],M&&(M.loaded=+new Date,this._map._fadeAnimated?(Ri(M.el,0),D(this._fadeFrame),this._fadeFrame=E(this._updateOpacity,this)):(M.active=!0,this._pruneTiles()),w||(ut(M.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:M.el,coords:p})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Ue.ielt9||!this._map._fadeAnimated?E(this._pruneTiles,this):setTimeout(o(this._pruneTiles,this),250)))},_getTilePos:function(p){return p.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(p){var w=new B(this._wrapX?c(p.x,this._wrapX):p.x,this._wrapY?c(p.y,this._wrapY):p.y);return w.z=p.z,w},_pxBoundsToTileRange:function(p){var w=this.getTileSize();return new G(p.min.unscaleBy(w).floor(),p.max.unscaleBy(w).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var p in this._tiles)if(!this._tiles[p].loaded)return!1;return!0}});function voe(p){return new hp(p)}var Hf=hp.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(p,w){this._url=p,w=g(this,w),w.detectRetina&&Ue.retina&&w.maxZoom>0?(w.tileSize=Math.floor(w.tileSize/2),w.zoomReverse?(w.zoomOffset--,w.minZoom=Math.min(w.maxZoom,w.minZoom+1)):(w.zoomOffset++,w.maxZoom=Math.max(w.minZoom,w.maxZoom-1)),w.minZoom=Math.max(0,w.minZoom)):w.zoomReverse?w.minZoom=Math.min(w.maxZoom,w.minZoom):w.maxZoom=Math.max(w.minZoom,w.maxZoom),typeof w.subdomains=="string"&&(w.subdomains=w.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(p,w){return this._url===p&&w===void 0&&(w=!0),this._url=p,w||this.redraw(),this},createTile:function(p,w){var M=document.createElement("img");return st(M,"load",o(this._tileOnLoad,this,w,M)),st(M,"error",o(this._tileOnError,this,w,M)),(this.options.crossOrigin||this.options.crossOrigin==="")&&(M.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),typeof this.options.referrerPolicy=="string"&&(M.referrerPolicy=this.options.referrerPolicy),M.alt="",M.src=this.getTileUrl(p),M},getTileUrl:function(p){var w={r:Ue.retina?"@2x":"",s:this._getSubdomain(p),x:p.x,y:p.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var M=this._globalTileRange.max.y-p.y;this.options.tms&&(w.y=M),w["-y"]=M}return _(this._url,i(w,this.options))},_tileOnLoad:function(p,w){Ue.ielt9?setTimeout(o(p,this,null,w),0):p(null,w)},_tileOnError:function(p,w,M){var O=this.options.errorTileUrl;O&&w.getAttribute("src")!==O&&(w.src=O),p(M,w)},_onTileRemove:function(p){p.tile.onload=null},_getZoomForUrl:function(){var p=this._tileZoom,w=this.options.maxZoom,M=this.options.zoomReverse,O=this.options.zoomOffset;return M&&(p=w-p),p+O},_getSubdomain:function(p){var w=Math.abs(p.x+p.y)%this.options.subdomains.length;return this.options.subdomains[w]},_abortLoading:function(){var p,w;for(p in this._tiles)if(this._tiles[p].coords.z!==this._tileZoom&&(w=this._tiles[p].el,w.onload=f,w.onerror=f,!w.complete)){w.src=T;var M=this._tiles[p].coords;nr(w),delete this._tiles[p],this.fire("tileabort",{tile:w,coords:M})}},_removeTile:function(p){var w=this._tiles[p];if(w)return w.el.setAttribute("src",T),hp.prototype._removeTile.call(this,p)},_tileReady:function(p,w,M){if(!(!this._map||M&&M.getAttribute("src")===T))return hp.prototype._tileReady.call(this,p,w,M)}});function V5(p,w){return new Hf(p,w)}var G5=Hf.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(p,w){this._url=p;var M=i({},this.defaultWmsParams);for(var O in w)O in this.options||(M[O]=w[O]);w=g(this,w);var j=w.detectRetina&&Ue.retina?2:1,U=this.getTileSize();M.width=U.x*j,M.height=U.y*j,this.wmsParams=M},onAdd:function(p){this._crs=this.options.crs||p.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var w=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[w]=this._crs.code,Hf.prototype.onAdd.call(this,p)},getTileUrl:function(p){var w=this._tileCoordsToNwSe(p),M=this._crs,O=Y(M.project(w[0]),M.project(w[1])),j=O.min,U=O.max,X=(this._wmsVersion>=1.3&&this._crs===N5?[j.y,j.x,U.y,U.x]:[j.x,j.y,U.x,U.y]).join(","),re=Hf.prototype.getTileUrl.call(this,p);return re+m(this.wmsParams,re,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+X},setParams:function(p,w){return i(this.wmsParams,p),w||this.redraw(),this}});function poe(p,w){return new G5(p,w)}Hf.WMS=G5,V5.wms=poe;var rs=Sa.extend({options:{padding:.1},initialize:function(p){g(this,p),l(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),ut(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var p={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(p.zoomanim=this._onAnimZoom),p},_onAnimZoom:function(p){this._updateTransform(p.center,p.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(p,w){var M=this._map.getZoomScale(w,this._zoom),O=this._map.getSize().multiplyBy(.5+this.options.padding),j=this._map.project(this._center,w),U=O.multiplyBy(-M).add(j).subtract(this._map._getNewPixelOrigin(p,w));Ue.any3d?Lu(this._container,U,M):Ar(this._container,U)},_reset:function(){this._update(),this._updateTransform(this._center,this._zoom);for(var p in this._layers)this._layers[p]._reset()},_onZoomEnd:function(){for(var p in this._layers)this._layers[p]._project()},_updatePaths:function(){for(var p in this._layers)this._layers[p]._update()},_update:function(){var p=this.options.padding,w=this._map.getSize(),M=this._map.containerPointToLayerPoint(w.multiplyBy(-p)).round();this._bounds=new G(M,M.add(w.multiplyBy(1+p*2)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),W5=rs.extend({options:{tolerance:0},getEvents:function(){var p=rs.prototype.getEvents.call(this);return p.viewprereset=this._onViewPreReset,p},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){rs.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var p=this._container=document.createElement("canvas");st(p,"mousemove",this._onMouseMove,this),st(p,"click dblclick mousedown mouseup contextmenu",this._onClick,this),st(p,"mouseout",this._handleMouseOut,this),p._leaflet_disable_events=!0,this._ctx=p.getContext("2d")},_destroyContainer:function(){D(this._redrawRequest),delete this._ctx,nr(this._container),Wt(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){var p;this._redrawBounds=null;for(var w in this._layers)p=this._layers[w],p._update();this._redraw()}},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){rs.prototype._update.call(this);var p=this._bounds,w=this._container,M=p.getSize(),O=Ue.retina?2:1;Ar(w,p.min),w.width=O*M.x,w.height=O*M.y,w.style.width=M.x+"px",w.style.height=M.y+"px",Ue.retina&&this._ctx.scale(2,2),this._ctx.translate(-p.min.x,-p.min.y),this.fire("update")}},_reset:function(){rs.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(p){this._updateDashArray(p),this._layers[l(p)]=p;var w=p._order={layer:p,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=w),this._drawLast=w,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(p){this._requestRedraw(p)},_removePath:function(p){var w=p._order,M=w.next,O=w.prev;M?M.prev=O:this._drawLast=O,O?O.next=M:this._drawFirst=M,delete p._order,delete this._layers[l(p)],this._requestRedraw(p)},_updatePath:function(p){this._extendRedrawBounds(p),p._project(),p._update(),this._requestRedraw(p)},_updateStyle:function(p){this._updateDashArray(p),this._requestRedraw(p)},_updateDashArray:function(p){if(typeof p.options.dashArray=="string"){var w=p.options.dashArray.split(/[, ]+/),M=[],O,j;for(j=0;j')}}catch{}return function(p){return document.createElement("<"+p+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),goe={_initContainer:function(){this._container=Ct("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(rs.prototype._update.call(this),this.fire("update"))},_initPath:function(p){var w=p._container=dp("shape");ut(w,"leaflet-vml-shape "+(this.options.className||"")),w.coordsize="1 1",p._path=dp("path"),w.appendChild(p._path),this._updateStyle(p),this._layers[l(p)]=p},_addPath:function(p){var w=p._container;this._container.appendChild(w),p.options.interactive&&p.addInteractiveTarget(w)},_removePath:function(p){var w=p._container;nr(w),p.removeInteractiveTarget(w),delete this._layers[l(p)]},_updateStyle:function(p){var w=p._stroke,M=p._fill,O=p.options,j=p._container;j.stroked=!!O.stroke,j.filled=!!O.fill,O.stroke?(w||(w=p._stroke=dp("stroke")),j.appendChild(w),w.weight=O.weight+"px",w.color=O.color,w.opacity=O.opacity,O.dashArray?w.dashStyle=b(O.dashArray)?O.dashArray.join(" "):O.dashArray.replace(/( *, *)/g," "):w.dashStyle="",w.endcap=O.lineCap.replace("butt","flat"),w.joinstyle=O.lineJoin):w&&(j.removeChild(w),p._stroke=null),O.fill?(M||(M=p._fill=dp("fill")),j.appendChild(M),M.color=O.fillColor||O.color,M.opacity=O.fillOpacity):M&&(j.removeChild(M),p._fill=null)},_updateCircle:function(p){var w=p._point.round(),M=Math.round(p._radius),O=Math.round(p._radiusY||M);this._setPath(p,p._empty()?"M0 0":"AL "+w.x+","+w.y+" "+M+","+O+" 0,"+65535*360)},_setPath:function(p,w){p._path.v=w},_bringToFront:function(p){zf(p._container)},_bringToBack:function(p){$f(p._container)}},Z0=Ue.vml?dp:Ge,vp=rs.extend({_initContainer:function(){this._container=Z0("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=Z0("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){nr(this._container),Wt(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){rs.prototype._update.call(this);var p=this._bounds,w=p.getSize(),M=this._container;(!this._svgSize||!this._svgSize.equals(w))&&(this._svgSize=w,M.setAttribute("width",w.x),M.setAttribute("height",w.y)),Ar(M,p.min),M.setAttribute("viewBox",[p.min.x,p.min.y,w.x,w.y].join(" ")),this.fire("update")}},_initPath:function(p){var w=p._path=Z0("path");p.options.className&&ut(w,p.options.className),p.options.interactive&&ut(w,"leaflet-interactive"),this._updateStyle(p),this._layers[l(p)]=p},_addPath:function(p){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(p._path),p.addInteractiveTarget(p._path)},_removePath:function(p){nr(p._path),p.removeInteractiveTarget(p._path),delete this._layers[l(p)]},_updatePath:function(p){p._project(),p._update()},_updateStyle:function(p){var w=p._path,M=p.options;w&&(M.stroke?(w.setAttribute("stroke",M.color),w.setAttribute("stroke-opacity",M.opacity),w.setAttribute("stroke-width",M.weight),w.setAttribute("stroke-linecap",M.lineCap),w.setAttribute("stroke-linejoin",M.lineJoin),M.dashArray?w.setAttribute("stroke-dasharray",M.dashArray):w.removeAttribute("stroke-dasharray"),M.dashOffset?w.setAttribute("stroke-dashoffset",M.dashOffset):w.removeAttribute("stroke-dashoffset")):w.setAttribute("stroke","none"),M.fill?(w.setAttribute("fill",M.fillColor||M.color),w.setAttribute("fill-opacity",M.fillOpacity),w.setAttribute("fill-rule",M.fillRule||"evenodd")):w.setAttribute("fill","none"))},_updatePoly:function(p,w){this._setPath(p,Ye(p._parts,w))},_updateCircle:function(p){var w=p._point,M=Math.max(Math.round(p._radius),1),O=Math.max(Math.round(p._radiusY),1)||M,j="a"+M+","+O+" 0 1,0 ",U=p._empty()?"M0 0":"M"+(w.x-M)+","+w.y+j+M*2+",0 "+j+-M*2+",0 ";this._setPath(p,U)},_setPath:function(p,w){p._path.setAttribute("d",w)},_bringToFront:function(p){zf(p._path)},_bringToBack:function(p){$f(p._path)}});Ue.vml&&vp.include(goe);function U5(p){return Ue.svg||Ue.vml?new vp(p):null}wt.include({getRenderer:function(p){var w=p.options.renderer||this._getPaneRenderer(p.options.pane)||this.options.renderer||this._renderer;return w||(w=this._renderer=this._createRenderer()),this.hasLayer(w)||this.addLayer(w),w},_getPaneRenderer:function(p){if(p==="overlayPane"||p===void 0)return!1;var w=this._paneRenderers[p];return w===void 0&&(w=this._createRenderer({pane:p}),this._paneRenderers[p]=w),w},_createRenderer:function(p){return this.options.preferCanvas&&H5(p)||U5(p)}});var Z5=Gf.extend({initialize:function(p,w){Gf.prototype.initialize.call(this,this._boundsToLatLngs(p),w)},setBounds:function(p){return this.setLatLngs(this._boundsToLatLngs(p))},_boundsToLatLngs:function(p){return p=ee(p),[p.getSouthWest(),p.getNorthWest(),p.getNorthEast(),p.getSouthEast()]}});function moe(p,w){return new Z5(p,w)}vp.create=Z0,vp.pointsToPath=Ye,ts.geometryToLayer=$0,ts.coordsToLatLng=FC,ts.coordsToLatLngs=F0,ts.latLngToCoords=VC,ts.latLngsToCoords=V0,ts.getFeature=Wf,ts.asFeature=G0,wt.mergeOptions({boxZoom:!0});var Y5=io.extend({initialize:function(p){this._map=p,this._container=p._container,this._pane=p._panes.overlayPane,this._resetStateTimeout=0,p.on("unload",this._destroy,this)},addHooks:function(){st(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Wt(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){nr(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){this._resetStateTimeout!==0&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(p){if(!p.shiftKey||p.which!==1&&p.button!==1)return!1;this._clearDeferredResetState(),this._resetState(),ap(),TC(),this._startPoint=this._map.mouseEventToContainerPoint(p),st(document,{contextmenu:Eu,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(p){this._moved||(this._moved=!0,this._box=Ct("div","leaflet-zoom-box",this._container),ut(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(p);var w=new G(this._point,this._startPoint),M=w.getSize();Ar(this._box,w.min),this._box.style.width=M.x+"px",this._box.style.height=M.y+"px"},_finish:function(){this._moved&&(nr(this._box),_r(this._container,"leaflet-crosshair")),op(),CC(),Wt(document,{contextmenu:Eu,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(p){if(!(p.which!==1&&p.button!==1)&&(this._finish(),!!this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(o(this._resetState,this),0);var w=new K(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(w).fire("boxzoomend",{boxZoomBounds:w})}},_onKeyDown:function(p){p.keyCode===27&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});wt.addInitHook("addHandler","boxZoom",Y5),wt.mergeOptions({doubleClickZoom:!0});var X5=io.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(p){var w=this._map,M=w.getZoom(),O=w.options.zoomDelta,j=p.originalEvent.shiftKey?M-O:M+O;w.options.doubleClickZoom==="center"?w.setZoom(j):w.setZoomAround(p.containerPoint,j)}});wt.addInitHook("addHandler","doubleClickZoom",X5),wt.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var q5=io.extend({addHooks:function(){if(!this._draggable){var p=this._map;this._draggable=new nl(p._mapPane,p._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),p.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),p.on("zoomend",this._onZoomEnd,this),p.whenReady(this._onZoomEnd,this))}ut(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){_r(this._map._container,"leaflet-grab"),_r(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var p=this._map;if(p._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var w=ee(this._map.options.maxBounds);this._offsetLimit=Y(this._map.latLngToContainerPoint(w.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(w.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;p.fire("movestart").fire("dragstart"),p.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(p){if(this._map.options.inertia){var w=this._lastTime=+new Date,M=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(M),this._times.push(w),this._prunePositions(w)}this._map.fire("move",p).fire("drag",p)},_prunePositions:function(p){for(;this._positions.length>1&&p-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var p=this._map.getSize().divideBy(2),w=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=w.subtract(p).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(p,w){return p-(p-w)*this._viscosity},_onPreDragLimit:function(){if(!(!this._viscosity||!this._offsetLimit)){var p=this._draggable._newPos.subtract(this._draggable._startPos),w=this._offsetLimit;p.xw.max.x&&(p.x=this._viscousLimit(p.x,w.max.x)),p.y>w.max.y&&(p.y=this._viscousLimit(p.y,w.max.y)),this._draggable._newPos=this._draggable._startPos.add(p)}},_onPreDragWrap:function(){var p=this._worldWidth,w=Math.round(p/2),M=this._initialWorldOffset,O=this._draggable._newPos.x,j=(O-w+M)%p+w-M,U=(O+w+M)%p-w-M,X=Math.abs(j+M)0?U:-U))-w;this._delta=0,this._startTime=null,X&&(p.options.scrollWheelZoom==="center"?p.setZoom(w+X):p.setZoomAround(this._lastMousePos,w+X))}});wt.addInitHook("addHandler","scrollWheelZoom",J5);var yoe=600;wt.mergeOptions({tapHold:Ue.touchNative&&Ue.safari&&Ue.mobile,tapTolerance:15});var Q5=io.extend({addHooks:function(){st(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Wt(this._map._container,"touchstart",this._onDown,this)},_onDown:function(p){if(clearTimeout(this._holdTimeout),p.touches.length===1){var w=p.touches[0];this._startPos=this._newPos=new B(w.clientX,w.clientY),this._holdTimeout=setTimeout(o(function(){this._cancel(),this._isTapValid()&&(st(document,"touchend",ln),st(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",w))},this),yoe),st(document,"touchend touchcancel contextmenu",this._cancel,this),st(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function p(){Wt(document,"touchend",ln),Wt(document,"touchend touchcancel",p)},_cancel:function(){clearTimeout(this._holdTimeout),Wt(document,"touchend touchcancel contextmenu",this._cancel,this),Wt(document,"touchmove",this._onMove,this)},_onMove:function(p){var w=p.touches[0];this._newPos=new B(w.clientX,w.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(p,w){var M=new MouseEvent(p,{bubbles:!0,cancelable:!0,view:window,screenX:w.screenX,screenY:w.screenY,clientX:w.clientX,clientY:w.clientY});M._simulated=!0,w.target.dispatchEvent(M)}});wt.addInitHook("addHandler","tapHold",Q5),wt.mergeOptions({touchZoom:Ue.touch,bounceAtZoomLimits:!0});var e3=io.extend({addHooks:function(){ut(this._map._container,"leaflet-touch-zoom"),st(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){_r(this._map._container,"leaflet-touch-zoom"),Wt(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(p){var w=this._map;if(!(!p.touches||p.touches.length!==2||w._animatingZoom||this._zooming)){var M=w.mouseEventToContainerPoint(p.touches[0]),O=w.mouseEventToContainerPoint(p.touches[1]);this._centerPoint=w.getSize()._divideBy(2),this._startLatLng=w.containerPointToLatLng(this._centerPoint),w.options.touchZoom!=="center"&&(this._pinchStartLatLng=w.containerPointToLatLng(M.add(O)._divideBy(2))),this._startDist=M.distanceTo(O),this._startZoom=w.getZoom(),this._moved=!1,this._zooming=!0,w._stop(),st(document,"touchmove",this._onTouchMove,this),st(document,"touchend touchcancel",this._onTouchEnd,this),ln(p)}},_onTouchMove:function(p){if(!(!p.touches||p.touches.length!==2||!this._zooming)){var w=this._map,M=w.mouseEventToContainerPoint(p.touches[0]),O=w.mouseEventToContainerPoint(p.touches[1]),j=M.distanceTo(O)/this._startDist;if(this._zoom=w.getScaleZoom(j,this._startZoom),!w.options.bounceAtZoomLimits&&(this._zoomw.getMaxZoom()&&j>1)&&(this._zoom=w._limitZoom(this._zoom)),w.options.touchZoom==="center"){if(this._center=this._startLatLng,j===1)return}else{var U=M._add(O)._divideBy(2)._subtract(this._centerPoint);if(j===1&&U.x===0&&U.y===0)return;this._center=w.unproject(w.project(this._pinchStartLatLng,this._zoom).subtract(U),this._zoom)}this._moved||(w._moveStart(!0,!1),this._moved=!0),D(this._animRequest);var X=o(w._move,w,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=E(X,this,!0),ln(p)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1,D(this._animRequest),Wt(document,"touchmove",this._onTouchMove,this),Wt(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});wt.addInitHook("addHandler","touchZoom",e3),wt.BoxZoom=Y5,wt.DoubleClickZoom=X5,wt.Drag=q5,wt.Keyboard=K5,wt.ScrollWheelZoom=J5,wt.TapHold=Q5,wt.TouchZoom=e3,r.Bounds=G,r.Browser=Ue,r.CRS=De,r.Canvas=W5,r.Circle=$C,r.CircleMarker=z0,r.Class=z,r.Control=wa,r.DivIcon=F5,r.DivOverlay=ao,r.DomEvent=jae,r.DomUtil=Dae,r.Draggable=nl,r.Evented=$,r.FeatureGroup=Qo,r.GeoJSON=ts,r.GridLayer=hp,r.Handler=io,r.Icon=Vf,r.ImageOverlay=W0,r.LatLng=le,r.LatLngBounds=K,r.Layer=Sa,r.LayerGroup=Ff,r.LineUtil=Xae,r.Map=wt,r.Marker=B0,r.Mixin=Gae,r.Path=il,r.Point=B,r.PolyUtil=Wae,r.Polygon=Gf,r.Polyline=es,r.Popup=H0,r.PosAnimation=S5,r.Projection=qae,r.Rectangle=Z5,r.Renderer=rs,r.SVG=vp,r.SVGOverlay=$5,r.TileLayer=Hf,r.Tooltip=U0,r.Transformation=ue,r.Util=N,r.VideoOverlay=z5,r.bind=o,r.bounds=Y,r.canvas=H5,r.circle=ioe,r.circleMarker=noe,r.control=up,r.divIcon=doe,r.extend=i,r.featureGroup=eoe,r.geoJSON=B5,r.geoJson=soe,r.gridLayer=voe,r.icon=toe,r.imageOverlay=loe,r.latLng=fe,r.latLngBounds=ee,r.layerGroup=Qae,r.map=Rae,r.marker=roe,r.point=W,r.polygon=ooe,r.polyline=aoe,r.popup=foe,r.rectangle=moe,r.setOptions=g,r.stamp=l,r.svg=U5,r.svgOverlay=coe,r.tileLayer=V5,r.tooltip=hoe,r.transformation=te,r.version=n,r.videoOverlay=uoe;var xoe=window.L;r.noConflict=function(){return window.L=xoe,this},window.L=r})})(oE,oE.exports);var jf=oE.exports;const eae=$t(jf);function P0(e,t,r){return Object.freeze({instance:e,context:t,container:r})}function KR(e,t){return t==null?function(n,i){const a=H.useRef();return a.current||(a.current=e(n,i)),a}:function(n,i){const a=H.useRef();a.current||(a.current=e(n,i));const o=H.useRef(n),{instance:s}=a.current;return H.useEffect(function(){o.current!==n&&(t(s,n,o.current),o.current=n)},[s,n,i]),a}}function tae(e,t){H.useEffect(function(){return(t.layerContainer??t.map).addLayer(e.instance),function(){var a;(a=t.layerContainer)==null||a.removeLayer(e.instance),t.map.removeLayer(e.instance)}},[t,e])}function rQe(e){return function(r){const n=vC(),i=e(pC(r,n),n);return qie(n.map,r.attribution),qR(i.current,r.eventHandlers),tae(i.current,n),i}}function nQe(e,t){const r=H.useRef();H.useEffect(function(){if(t.pathOptions!==r.current){const i=t.pathOptions??{};e.instance.setStyle(i),r.current=i}},[e,t])}function iQe(e){return function(r){const n=vC(),i=e(pC(r,n),n);return qR(i.current,r.eventHandlers),tae(i.current,n),nQe(i.current,r),i}}function rae(e,t){const r=KR(e),n=tQe(r,t);return QJe(n)}function nae(e,t){const r=KR(e,t),n=iQe(r);return JJe(n)}function aQe(e,t){const r=KR(e,t),n=rQe(r);return eQe(n)}function oQe(e,t,r){const{opacity:n,zIndex:i}=t;n!=null&&n!==r.opacity&&e.setOpacity(n),i!=null&&i!==r.zIndex&&e.setZIndex(i)}function sQe(){return vC().map}const lQe=nae(function({center:t,children:r,...n},i){const a=new jf.CircleMarker(t,n);return P0(a,Kie(i,{overlayContainer:a}))},XJe);function sE(){return sE=Object.assign||function(e){for(var t=1;t(d==null?void 0:d.map)??null,[d]);const g=H.useCallback(x=>{if(x!==null&&d===null){const _=new jf.Map(x,c);r!=null&&u!=null?_.setView(r,u):e!=null&&_.fitBounds(e,t),l!=null&&_.whenReady(l),v(KJe(_))}},[]);H.useEffect(()=>()=>{d==null||d.map.remove()},[d]);const m=d?Q.createElement(Qie,{value:d},n):o??null;return Q.createElement("div",sE({},h,{ref:g}),m)}const cQe=H.forwardRef(uQe),fQe=nae(function({positions:t,...r},n){const i=new jf.Polyline(t,r);return P0(i,Kie(n,{overlayContainer:i}))},function(t,r,n){r.positions!==n.positions&&t.setLatLngs(r.positions)}),hQe=rae(function(t,r){const n=new jf.Popup(t,r.overlayContainer);return P0(n,r)},function(t,r,{position:n},i){H.useEffect(function(){const{instance:o}=t;function s(u){u.popup===o&&(o.update(),i(!0))}function l(u){u.popup===o&&i(!1)}return r.map.on({popupopen:s,popupclose:l}),r.overlayContainer==null?(n!=null&&o.setLatLng(n),o.openOn(r.map)):r.overlayContainer.bindPopup(o),function(){var c;r.map.off({popupopen:s,popupclose:l}),(c=r.overlayContainer)==null||c.unbindPopup(),r.map.removeLayer(o)}},[t,r,i,n])}),dQe=aQe(function({url:t,...r},n){const i=new jf.TileLayer(t,pC(r,n));return P0(i,n)},function(t,r,n){oQe(t,r,n);const{url:i}=r;i!=null&&i!==n.url&&t.setUrl(i)}),vQe=rae(function(t,r){const n=new jf.Tooltip(t,r.overlayContainer);return P0(n,r)},function(t,r,{position:n},i){H.useEffect(function(){const o=r.overlayContainer;if(o==null)return;const{instance:s}=t,l=c=>{c.tooltip===s&&(n!=null&&s.setLatLng(n),s.update(),i(!0))},u=c=>{c.tooltip===s&&i(!1)};return o.on({tooltipopen:l,tooltipclose:u}),o.bindTooltip(s),function(){o.off({tooltipopen:l,tooltipclose:u}),o._map!=null&&o.unbindTooltip()}},[t,r,i,n])}),pQe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=",gQe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAABSCAMAAAAhFXfZAAAC91BMVEVMaXEzeak2f7I4g7g3g7cua5gzeKg8hJo3grY4g7c3grU0gLI2frE0daAubJc2gbQwd6QzeKk2gLMtd5sxdKIua5g1frA2f7IydaM0e6w2fq41fK01eqo3grgubJgta5cxdKI1f7AydaQydaMxc6EubJgvbJkwcZ4ubZkwcJwubZgubJcydqUydKIxapgubJctbJcubZcubJcvbJYubJcvbZkubJctbJctbZcubJg2f7AubJcrbZcubJcubJcua5g3grY0fq8ubJcubJdEkdEwhsw6i88vhswuhcsuhMtBjMgthMsrg8srgss6is8qgcs8i9A9iMYtg8spgcoogMo7hcMngMonf8olfso4gr8kfck5iM8jfMk4iM8he8k1fro7itAgesk2hs8eecgzfLcofssdeMg0hc4cd8g2hcsxeLQbdsgZdcgxeLImfcszhM0vda4xgckzhM4xg84wf8Yxgs4udKsvfcQucqhUndROmdM1fK0wcZ8vb5w0eqpQm9MzeKhXoNVcpdYydKNWn9VZotVKltJFjsIwcJ1Rms9OlslLmtH///8+kc9epdYzd6dbo9VHkMM2f7FHmNBClM8ydqVcpNY9hro3gLM9hLczealQmcw3fa46f7A8gLMxc6I3eagyc6FIldJMl9JSnNRSntNNl9JPnNJFi75UnM9ZodVKksg8kM45jc09e6ZHltFBk883gbRBh7pDk9EwcaBzn784g7dKkcY2i81Om9M7j85Llc81is09g7Q4grY/j9A0eqxKmdFFltBEjcXf6fFImdBCiLxJl9FGlNFBi78yiMxVndEvbpo6js74+vx+psPP3+o/ks5HkcpGmNCjwdZCkNDM3ehYoNJEls+lxNkxh8xHks0+jdC1zd5Lg6r+/v/H2ufz9/o3jM3t8/edvdM/k89Th61OiLBSjbZklbaTt9BfptdjmL1AicBHj8hGk9FAgK1dkLNTjLRekrdClc/k7fM0icy0y9tgp9c4jc2NtM9Dlc8zicxeXZn3AAAAQ3RSTlMAHDdTb4yPA+LtnEQmC4L2EmHqB7XA0d0sr478x4/Yd5i1zOfyPkf1sLVq4Nh3FvjxopQ2/STNuFzUwFIwxKaejILpIBEV9wAABhVJREFUeF6s1NdyFEcYBeBeoQIhRAkLlRDGrhIgY3BJL8CVeKzuyXFzzjkn5ZxzzuScg3PO8cKzu70JkO0LfxdTU//pM9vTu7Xgf6KqOVTb9X7toRrVEfBf1HTVjZccrT/2by1VV928Yty9ZbVuucdz90frG8DBjl9pVApbOstvmMuvVgaNXSfAAd6pGxpy6yxf5ph43pS/4f3uoaGm2rdu72S9xzOvMymkZFq/ptDrk90mhW7e4zl7HLzhxGWPR20xmSxJ/VqldG5m9XhaVOA1DadsNh3Pu5L2N6QtPO/32JpqQBVVk20oy/Pi2s23WEvyfHbe1thadVQttvm7Llf65gGmXK67XtupyoM7HQhmXdLS8oGWJNeOJ3C5fG5XCEJnkez3/oFdsvgJ4l2ANZwhrJKk/7OSXa+3Vw2WJMlKnGkobouYk6T0TyX30klOUnTD9HJ5qpckL3EW/w4XF3Xd0FGywXUrstrclVsqz5Pd/sXFYyDnPdrLcQODmGOK47IZb4CmibmMn+MYRzFZ5jg33ZL/EJrWcszHmANy3ARBK/IXtciJy8VsitPSdE3uuHxzougojcUdr8/32atnz/ev3f/K5wtpxUTpcaI45zusVDpYtZi+jg0oU9b3x74h7+n9ABvYEZeKaVq0sh0AtLKsFtqNBdeT0MrSzwwlq9+x6xAO4tgOtSzbCjrNQQiNvQUbUEubvzBUeGw26yDCsRHCoLkTHDa7IdOLIThs/gHvChszh2CimE8peRs47cxANI0lYNB5y1DljpOF0IhzBDPOZnDOqYYbeGKECbPzWnXludPphw5c2YBq5zlwXphIbO4VDCZ0gnPfUO1TwZoYwAs2ExPCedAu9DAjfQUjzITQb3jNj0KG2Sgt6BHaQUdYzWz+XmBktOHwanXjaSTcwwziBcuMOtwBmqPrTOxFQR/DRKKPqyur0aiW6cULYsx6tBm0jXpR/AUWR6HRq9WVW6MRhIq5jLyjbaCTDCijyYJNpCajdyobP/eTw0iexBAKkJ3gA5KcQb2zBXsIBckn+xVv8jkZSaEFHE+jFEleAEfayRU0MouNoBmB/L50Ai/HSLIHxcrpCvnhSQAuakKp2C/YbCylJjXRVy/z3+Kv/RrNcCo+WUzlVEhzKffnTQnxeN9fWF88fiNCUdSTsaufaChKWInHeysygfpIqagoakW+vV20J8uyl6TyNKEZWV4oRSPyCkWpgOLSbkCObT8o2r6tlG58HQquf6O0v50tB7JM7F4EORd2dx/K0w/KHsVkLPaoYrwgP/y7krr3SSMA4zj+OBgmjYkxcdIJQyQRKgg2viX9Hddi9UBb29LrKR7CVVEEEXWojUkXNyfTNDE14W9gbHJNuhjDettN3ZvbOvdOqCD3Jp/9l+/wJE+9PkYGjx/fqkys3S2rMozM/o2106rfMUINo6hVqz+eu/hd1c4xTg0TAfy5kV+4UG6+IthHTU9woWmxuKNbTfuCSfovBCxq7EtHqvYL4Sm6F8GVxsSXHMQ07TOi1DKtZxjWaaIyi4CXWjxPccUw8WVbMYY5wxC1mzEyXMJWkllpRloi+Kkoq69sxBTlElF6aAxYUbjXNlhlDZilDnM4U5SlN5biRsRHnbx3mbeWjEh4mEyiuJDl5XcWVmX5GvNkFgLWZM5qwsop4/AWfLhU1cR7k1VVvcYCWRkOI6Xy5gmnphCYIkvzuNYzHzosq2oNk2RtSs8khfUOfHIDgR6ysYBaMpl4uEgk2U/oJTs9AaTSwma7dT69geAE2ZpEjUsn2ieJNHeKfrI3EcAGJ2ZaNgVuC8EBctCLc57P5u5led6IOBkIYkuQMrmmjChs4VkfOerHqSBkPzZlhe06RslZ3zMjk2sscqKwY0RcjKK+LWbzd7KiHhkncs/siFJ+V5eXxD34B8nVuJEpGJNmxN2gH3vSvp7J70tF+D1Ej8qUJD1TkErAND2GZwTFg/LubvmgiBG3SOvdlsqFQrkEzJCL1rstlnVFROixZoDDSuXQFHESwVGlcuQcMb/b42NgjLowh5MTDFE3vNB5qStRIErdCQEh6pLPR92anSUb/wAIhldAaDMpGgAAAABJRU5ErkJggg==",mQe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAApCAQAAAACach9AAACMUlEQVR4Ae3ShY7jQBAE0Aoz/f9/HTMzhg1zrdKUrJbdx+Kd2nD8VNudfsL/Th///dyQN2TH6f3y/BGpC379rV+S+qqetBOxImNQXL8JCAr2V4iMQXHGNJxeCfZXhSRBcQMfvkOWUdtfzlLgAENmZDcmo2TVmt8OSM2eXxBp3DjHSMFutqS7SbmemzBiR+xpKCNUIRkdkkYxhAkyGoBvyQFEJEefwSmmvBfJuJ6aKqKWnAkvGZOaZXTUgFqYULWNSHUckZuR1HIIimUExutRxwzOLROIG4vKmCKQt364mIlhSyzAf1m9lHZHJZrlAOMMztRRiKimp/rpdJDc9Awry5xTZCte7FHtuS8wJgeYGrex28xNTd086Dik7vUMscQOa8y4DoGtCCSkAKlNwpgNtphjrC6MIHUkR6YWxxs6Sc5xqn222mmCRFzIt8lEdKx+ikCtg91qS2WpwVfBelJCiQJwvzixfI9cxZQWgiSJelKnwBElKYtDOb2MFbhmUigbReQBV0Cg4+qMXSxXSyGUn4UbF8l+7qdSGnTC0XLCmahIgUHLhLOhpVCtw4CzYXvLQWQbJNmxoCsOKAxSgBJno75avolkRw8iIAFcsdc02e9iyCd8tHwmeSSoKTowIgvscSGZUOA7PuCN5b2BX9mQM7S0wYhMNU74zgsPBj3HU7wguAfnxxjFQGBE6pwN+GjME9zHY7zGp8wVxMShYX9NXvEWD3HbwJf4giO4CFIQxXScH1/TM+04kkBiAAAAAElFTkSuQmCC";delete eae.Icon.Default.prototype._getIconUrl;eae.Icon.Default.mergeOptions({iconUrl:pQe,iconRetinaUrl:gQe,shadowUrl:mQe});const qU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],yQe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function xQe(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function _Qe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function bQe(e){if(!e)return"Unknown";const t=new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/6e4),a=Math.floor(n/36e5),o=Math.floor(n/864e5);return i<1?"Just now":i<60?`${i}m ago`:a<24?`${a}h ago`:`${o}d ago`}function wQe({bounds:e}){const t=sQe();return H.useEffect(()=>{e&&t.fitBounds(e,{padding:[50,50]})},[t,e]),null}function SQe({node:e}){const t=e.latitude!==null&&e.longitude!==null,r=e.battery_level!==null?e.battery_level>100||e.voltage&&e.voltage>4.1?"USB ⚡":`${e.battery_level.toFixed(0)}%`:"Unknown";return y.jsxs("div",{className:"min-w-[200px]",children:[y.jsx("div",{className:"font-semibold text-slate-800",children:e.short_name}),y.jsx("div",{className:"text-xs text-slate-600 mb-2",children:e.long_name}),y.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-1 text-xs",children:[y.jsx("div",{className:"text-slate-500",children:"Role"}),y.jsx("div",{className:"text-slate-700 font-medium",children:e.role}),y.jsx("div",{className:"text-slate-500",children:"Hardware"}),y.jsx("div",{className:"text-slate-700",children:e.hardware||"Unknown"}),y.jsx("div",{className:"text-slate-500",children:"Battery"}),y.jsx("div",{className:"text-slate-700",children:r}),y.jsx("div",{className:"text-slate-500",children:"Last Heard"}),y.jsx("div",{className:"text-slate-700",children:bQe(e.last_heard)})]}),t&&y.jsxs("div",{className:"mt-3 pt-2 border-t border-slate-200 flex gap-2",children:[y.jsxs("a",{href:`https://www.google.com/maps?q=${e.latitude},${e.longitude}`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-600 hover:text-blue-800",children:[y.jsx(Sd,{size:10}),"Google Maps"]}),y.jsxs("a",{href:`https://www.openstreetmap.org/?mlat=${e.latitude}&mlon=${e.longitude}&zoom=14`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-600 hover:text-blue-800",children:[y.jsx(Sd,{size:10}),"OSM"]})]})]})}function TQe({nodes:e,edges:t,selectedNodeId:r,onSelectNode:n}){const i=H.useMemo(()=>e.filter(f=>f.latitude!==null&&f.longitude!==null),[e]),a=e.length-i.length,o=H.useMemo(()=>new Map(i.map(f=>[f.node_num,f])),[i]),s=H.useMemo(()=>t.filter(f=>o.has(f.from_node)&&o.has(f.to_node)),[t,o]),l=H.useMemo(()=>{if(i.length===0)return null;const f=i.map(d=>d.latitude),h=i.map(d=>d.longitude);return[[Math.min(...f),Math.min(...h)],[Math.max(...f),Math.max(...h)]]},[i]),u=[43.6,-114.4],c=H.useMemo(()=>{const f=new Set;return r!==null&&t.forEach(h=>{h.from_node===r&&f.add(h.to_node),h.to_node===r&&f.add(h.from_node)}),f},[r,t]);return y.jsxs("div",{className:"relative bg-bg-card rounded-lg border border-border overflow-hidden",children:[y.jsxs(cQe,{center:u,zoom:7,style:{width:"100%",height:"540px"},className:"z-0",children:[y.jsx(dQe,{url:"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",attribution:'© OpenStreetMap, © CARTO'}),y.jsx(wQe,{bounds:l}),s.map((f,h)=>{const d=o.get(f.from_node),v=o.get(f.to_node),g=r===null||f.from_node===r||f.to_node===r;return y.jsx(fQe,{positions:[[d.latitude,d.longitude],[v.latitude,v.longitude]],color:xQe(f.snr),weight:g&&r!==null?2.5:1.5,opacity:r===null?.3:g?.6:.08},h)}),i.map(f=>{const h=f.node_num===r,d=c.has(f.node_num),v=r===null||h||d,g=yQe.includes(f.role),m=_Qe(f.latitude),x=qU[m%qU.length];return y.jsxs(lQe,{center:[f.latitude,f.longitude],radius:g?8:5,fillColor:g?x:"#111827",fillOpacity:v?.9:.2,stroke:!0,color:h?"#ffffff":x,weight:h?3:g?0:2,opacity:v?1:.3,eventHandlers:{click:()=>n(h?null:f.node_num)},children:[y.jsx(vQe,{direction:"top",offset:[0,-8],children:y.jsx("span",{className:"font-mono text-xs",children:f.short_name})}),y.jsx(hQe,{children:y.jsx(SQe,{node:f})})]},f.node_num)})]}),y.jsxs("div",{className:"absolute bottom-4 left-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded px-3 py-2 text-xs text-slate-400 flex items-center gap-2",children:[y.jsx(mv,{size:12}),y.jsxs("span",{children:["Showing ",i.length," of ",e.length," nodes",a>0&&y.jsxs("span",{className:"text-slate-500",children:[" (",a," without coordinates)"]})]})]})]})}const KU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],CQe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function JU(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function AQe(e){return e>12?"excellent":e>8?"good":e>5?"fair":e>3?"marginal":"poor"}function MQe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function PQe(e){return["Northern ID","Central ID","SW Idaho","SC Idaho"][e]||"Unknown"}function kQe(e){if(!e)return"Unknown";const t=new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/6e4),a=Math.floor(n/36e5),o=Math.floor(n/864e5);return i<1?"Just now":i<60?`${i}m ago`:a<24?`${a}h ago`:`${o}d ago`}function LQe(e){if(!e)return"bg-slate-500";const t=new Date(e),n=(new Date().getTime()-t.getTime())/36e5;return n<1?"bg-green-500":n<24?"bg-amber-500":"bg-slate-500"}function IQe({node:e,edges:t,nodes:r,onSelectNode:n}){const i=H.useMemo(()=>{if(!e)return[];const f=new Map(r.map(d=>[d.node_num,d])),h=[];return t.forEach(d=>{if(d.from_node===e.node_num){const v=f.get(d.to_node);v&&h.push({node:v,snr:d.snr,quality:d.quality})}else if(d.to_node===e.node_num){const v=f.get(d.from_node);v&&h.push({node:v,snr:d.snr,quality:d.quality})}}),h.sort((d,v)=>v.snr-d.snr)},[e,t,r]);if(!e)return y.jsxs("div",{className:"w-[250px] flex-shrink-0 bg-bg-card border-l border-border p-4 flex flex-col items-center justify-center h-[540px]",children:[y.jsx("div",{className:"w-12 h-12 rounded-full bg-bg-hover border border-border flex items-center justify-center mb-3",children:y.jsx(Ya,{size:24,className:"text-slate-500"})}),y.jsx("p",{className:"text-sm text-slate-500 text-center",children:"Click a node to inspect"})]});const a=CQe.includes(e.role),o=MQe(e.latitude),s=KU[o%KU.length],l=e.latitude!==null&&e.longitude!==null,u=e.battery_level!==null?e.battery_level>100||e.voltage&&e.voltage>4.1?"USB":`${e.battery_level.toFixed(0)}%`:"—",c=e.battery_level!==null&&(e.battery_level>100||e.voltage&&e.voltage>4.1);return y.jsxs("div",{className:"w-[250px] flex-shrink-0 bg-bg-card border-l border-border flex flex-col h-[540px] overflow-hidden",children:[y.jsxs("div",{className:"p-4 border-b border-border",children:[y.jsx("div",{className:"inline-flex items-center px-2 py-0.5 rounded text-xs font-mono mb-2",style:{backgroundColor:`${s}20`,color:s},children:e.node_id_hex}),y.jsx("div",{className:"font-mono text-lg text-slate-100",children:e.short_name}),y.jsx("div",{className:"text-xs text-slate-500 truncate",children:e.long_name})]}),y.jsxs("div",{className:"p-4 border-b border-border grid grid-cols-2 gap-3",children:[y.jsxs("div",{children:[y.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Role"}),y.jsx("div",{className:`text-sm font-medium ${a?"text-cyan-400":"text-slate-300"}`,children:e.role})]}),y.jsxs("div",{children:[y.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Region"}),y.jsx("div",{className:"text-sm text-slate-300",children:PQe(o)})]}),y.jsxs("div",{children:[y.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Battery"}),y.jsxs("div",{className:"text-sm text-slate-300 flex items-center gap-1",children:[c&&y.jsx(km,{size:12,className:"text-amber-400"}),u]})]}),y.jsxs("div",{children:[y.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Status"}),y.jsxs("div",{className:"flex items-center gap-1.5",children:[y.jsx("div",{className:`w-2 h-2 rounded-full ${LQe(e.last_heard)}`}),y.jsx("span",{className:"text-sm text-slate-300",children:kQe(e.last_heard)})]})]}),y.jsxs("div",{className:"col-span-2",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Hardware"}),y.jsx("div",{className:"text-sm text-slate-300 font-mono truncate",children:e.hardware||"Unknown"})]})]}),l&&y.jsxs("div",{className:"px-4 py-3 border-b border-border flex gap-3",children:[y.jsxs("a",{href:`https://www.google.com/maps?q=${e.latitude},${e.longitude}`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-400 hover:text-blue-300",children:[y.jsx(Sd,{size:10}),"Google Maps"]}),y.jsxs("a",{href:`https://www.openstreetmap.org/?mlat=${e.latitude}&mlon=${e.longitude}&zoom=14`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-400 hover:text-blue-300",children:[y.jsx(Sd,{size:10}),"OSM"]})]}),y.jsxs("div",{className:"flex-1 overflow-y-auto",children:[y.jsxs("div",{className:"px-4 py-2 text-xs text-slate-500 font-medium sticky top-0 bg-bg-card border-b border-border",children:["Neighbors (",i.length,")"]}),i.length>0?y.jsx("div",{className:"divide-y divide-border",children:i.map(f=>y.jsxs("button",{onClick:()=>n(f.node.node_num),className:"w-full px-4 py-2 text-left hover:bg-bg-hover transition-colors flex items-center gap-2",style:{borderLeftWidth:3,borderLeftColor:JU(f.snr)},children:[y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsx("div",{className:"text-sm text-slate-200 font-mono truncate",children:f.node.short_name}),y.jsx("div",{className:"text-xs text-slate-500 truncate",children:f.node.long_name})]}),y.jsxs("div",{className:"text-right flex-shrink-0",children:[y.jsxs("div",{className:"text-xs font-mono",style:{color:JU(f.snr)},children:[f.snr.toFixed(1)," dB"]}),y.jsx("div",{className:"text-xs text-slate-500",children:AQe(f.snr)})]})]},f.node.node_num))}):y.jsx("div",{className:"px-4 py-6 text-center text-sm text-slate-500",children:"No known neighbors"})]})]})}const QU=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function OQe(e){if(!e)return"bg-slate-500";const t=new Date(e),n=(new Date().getTime()-t.getTime())/36e5;return n<1?"bg-green-500":n<24?"bg-amber-500":"bg-slate-500"}function EQe(e){if(!e)return"—";const t=new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/6e4),a=Math.floor(n/36e5),o=Math.floor(n/864e5);return i<1?"Just now":i<60?`${i}m ago`:a<24?`${a}h ago`:`${o}d ago`}function DQe(e){return e.battery_level===null?"—":e.battery_level>100||e.voltage&&e.voltage>4.1?"USB ⚡":`${e.battery_level.toFixed(0)}%`}function e7(e){return e===null?"—":e>46?"Northern":e>44.5?"Central":e>43?"SW Idaho":"SC Idaho"}function NQe({nodes:e,selectedNodeId:t,onSelectNode:r}){const[n,i]=H.useState(""),[a,o]=H.useState("short_name"),[s,l]=H.useState("asc"),[u,c]=H.useState("all"),f=H.useMemo(()=>{let v=[...e];if(u==="infra"?v=v.filter(g=>QU.includes(g.role)):u==="online"&&(v=v.filter(g=>{if(!g.last_heard)return!1;const m=new Date(g.last_heard);return(new Date().getTime()-m.getTime())/36e5<1})),n){const g=n.toLowerCase();v=v.filter(m=>m.short_name.toLowerCase().includes(g)||m.long_name.toLowerCase().includes(g)||m.role.toLowerCase().includes(g)||e7(m.latitude).toLowerCase().includes(g))}return v.sort((g,m)=>{let x="",_="";switch(a){case"short_name":x=g.short_name.toLowerCase(),_=m.short_name.toLowerCase();break;case"role":x=g.role,_=m.role;break;case"battery_level":x=g.battery_level??-1,_=m.battery_level??-1;break;case"last_heard":x=g.last_heard?new Date(g.last_heard).getTime():0,_=m.last_heard?new Date(m.last_heard).getTime():0;break;case"hardware":x=g.hardware.toLowerCase(),_=m.hardware.toLowerCase();break}return x<_?s==="asc"?-1:1:x>_?s==="asc"?1:-1:0}),v},[e,n,a,s,u]),h=v=>{a===v?l(s==="asc"?"desc":"asc"):(o(v),l("asc"))},d=({field:v})=>a!==v?null:s==="asc"?y.jsx(hce,{size:14,className:"inline ml-1"}):y.jsx(yu,{size:14,className:"inline ml-1"});return y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg overflow-hidden",children:[y.jsxs("div",{className:"p-3 border-b border-border flex items-center gap-3",children:[y.jsxs("div",{className:"relative flex-1 max-w-xs",children:[y.jsx(jS,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),y.jsx("input",{type:"text",placeholder:"Search nodes...",value:n,onChange:v=>i(v.target.value),className:"w-full pl-9 pr-3 py-1.5 bg-bg-hover border border-border rounded text-sm text-slate-200 placeholder-slate-500 focus:outline-none focus:border-accent"})]}),y.jsxs("div",{className:"flex items-center gap-1",children:[y.jsx(sD,{size:14,className:"text-slate-500 mr-1"}),["all","infra","online"].map(v=>y.jsx("button",{onClick:()=>c(v),className:`px-2 py-1 text-xs rounded transition-colors ${u===v?"bg-accent text-white":"bg-bg-hover text-slate-400 hover:text-slate-200"}`,children:v==="all"?"All":v==="infra"?"Infra":"Online"},v))]}),y.jsxs("div",{className:"text-xs text-slate-500 ml-auto",children:[f.length," of ",e.length," nodes"]})]}),y.jsxs("div",{className:"overflow-x-auto",children:[y.jsxs("table",{className:"w-full text-sm",children:[y.jsx("thead",{children:y.jsxs("tr",{className:"bg-bg-hover text-slate-400 text-xs",children:[y.jsx("th",{className:"w-8 px-3 py-2"}),y.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("short_name"),children:["Name ",y.jsx(d,{field:"short_name"})]}),y.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("role"),children:["Role ",y.jsx(d,{field:"role"})]}),y.jsx("th",{className:"px-3 py-2 text-left",children:"Region"}),y.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("battery_level"),children:["Battery ",y.jsx(d,{field:"battery_level"})]}),y.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("last_heard"),children:["Last Heard ",y.jsx(d,{field:"last_heard"})]}),y.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("hardware"),children:["Hardware ",y.jsx(d,{field:"hardware"})]})]})}),y.jsx("tbody",{className:"divide-y divide-border",children:f.slice(0,100).map(v=>{const g=QU.includes(v.role),m=v.node_num===t;return y.jsxs("tr",{onClick:()=>r(v.node_num),className:`cursor-pointer transition-colors ${m?"bg-accent/10":"hover:bg-bg-hover"}`,children:[y.jsx("td",{className:"px-3 py-2",children:y.jsx("div",{className:`w-2 h-2 rounded-full ${OQe(v.last_heard)}`})}),y.jsxs("td",{className:"px-3 py-2",children:[y.jsx("div",{className:"font-mono text-slate-200",children:v.short_name}),y.jsx("div",{className:"text-xs text-slate-500 truncate max-w-[200px]",children:v.long_name})]}),y.jsx("td",{className:"px-3 py-2",children:y.jsx("span",{className:`inline-block px-1.5 py-0.5 rounded text-xs font-medium ${g?"bg-cyan-500/20 text-cyan-400":"bg-slate-500/20 text-slate-400"}`,children:v.role})}),y.jsx("td",{className:"px-3 py-2 text-slate-400",children:e7(v.latitude)}),y.jsx("td",{className:"px-3 py-2 font-mono text-slate-300",children:DQe(v)}),y.jsx("td",{className:"px-3 py-2 text-slate-400",children:EQe(v.last_heard)}),y.jsx("td",{className:"px-3 py-2 font-mono text-xs text-slate-400 truncate max-w-[150px]",children:v.hardware||"—"})]},v.node_num)})})]}),f.length>100&&y.jsxs("div",{className:"px-3 py-2 text-xs text-slate-500 text-center border-t border-border",children:["Showing first 100 of ",f.length," nodes"]}),f.length===0&&y.jsx("div",{className:"px-3 py-8 text-sm text-slate-500 text-center",children:"No nodes match your filters"})]})]})}function jQe(){const[e,t]=H.useState([]),[r,n]=H.useState([]),[i,a]=H.useState([]),[o,s]=H.useState(null),[l,u]=H.useState("topo"),[c,f]=H.useState(!0),[h,d]=H.useState(null);H.useEffect(()=>{document.title="Mesh — MeshAI",Promise.all([Cce(),Ace(),Ice()]).then(([m,x,_])=>{t(m),n(x),a(_),f(!1)}).catch(m=>{d(m.message),f(!1)})},[]);const v=H.useMemo(()=>e.find(m=>m.node_num===o)||null,[e,o]),g=H.useCallback(m=>{s(m)},[]);return c?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-slate-400",children:"Loading mesh data..."})}):h?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsxs("div",{className:"text-red-400",children:["Error: ",h]})}):y.jsxs("div",{className:"space-y-6",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("div",{className:"text-sm text-slate-400",children:[e.length," nodes • ",r.length," edges"]}),y.jsxs("div",{className:"flex items-center bg-bg-card border border-border rounded-lg p-1",children:[y.jsxs("button",{onClick:()=>u("topo"),className:`flex items-center gap-2 px-3 py-1.5 rounded text-sm transition-colors ${l==="topo"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:[y.jsx(_ce,{size:14}),"Topology"]}),y.jsxs("button",{onClick:()=>u("geo"),className:`flex items-center gap-2 px-3 py-1.5 rounded text-sm transition-colors ${l==="geo"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:[y.jsx(xce,{size:14}),"Geographic"]})]})]}),y.jsxs("div",{className:"flex gap-0",children:[y.jsx("div",{className:"flex-1 min-w-0",children:l==="topo"?y.jsx(YJe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:g}):y.jsx(TQe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:g})}),y.jsx(IQe,{node:v,edges:r,nodes:e,onSelectNode:g})]}),y.jsx(NQe,{nodes:e,selectedNodeId:o,onSelectNode:g})]})}function JR({label:e,value:t,onChange:r,helper:n,info:i,roleFilter:a,valueType:o="short_name"}){const[s,l]=H.useState([]),[u,c]=H.useState(!0),[f,h]=H.useState(""),[d,v]=H.useState(!1);H.useEffect(()=>{fetch("/api/nodes").then(S=>S.json()).then(S=>{l(S),c(!1)}).catch(()=>{l([]),c(!1)})},[]);const g=H.useMemo(()=>{let S=s;if(a&&(S=S.filter(T=>a==="ROUTER"||a==="infrastructure"?T.is_infrastructure||T.role==="ROUTER"||T.role==="ROUTER_CLIENT"||T.role==="REPEATER":T.role===a)),f.trim()){const T=f.toLowerCase();S=S.filter(C=>{var A,P,I,k;return((A=C.short_name)==null?void 0:A.toLowerCase().includes(T))||((P=C.long_name)==null?void 0:P.toLowerCase().includes(T))||((I=C.role)==null?void 0:I.toLowerCase().includes(T))||((k=C.node_id_hex)==null?void 0:k.toLowerCase().includes(T))})}return S.sort((T,C)=>(T.short_name||"").localeCompare(C.short_name||""))},[s,f,a]),m=S=>{switch(o){case"node_num":return String(S.node_num);case"node_id_hex":return S.node_id_hex;default:return S.short_name||String(S.node_num)}},x=S=>{const T=m(S);return t.includes(T)},_=S=>{const T=m(S);t.includes(T)?r(t.filter(C=>C!==T)):r([...t,T])},b=S=>{const T=[S.short_name];return S.long_name&&S.long_name!==S.short_name&&T.push(`— ${S.long_name}`),S.role&&T.push(`(${S.role})`),T.join(" ")};return!u&&s.length===0?y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e}),y.jsx("input",{type:"text",value:t.join(", "),onChange:S=>r(S.target.value.split(",").map(T=>T.trim()).filter(Boolean)),placeholder:"Enter node IDs separated by commas",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]}):y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e}),t.length>0&&y.jsx("div",{className:"flex flex-wrap gap-2 mb-2",children:t.map(S=>{const T=s.find(C=>m(C)===S);return y.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 bg-accent/20 text-accent rounded text-sm",children:[T?T.short_name:S,y.jsx("button",{type:"button",onClick:()=>r(t.filter(C=>C!==S)),className:"hover:text-white",children:y.jsx(Xa,{size:14})})]},S)})}),y.jsxs("div",{className:"relative",children:[y.jsxs("div",{className:"relative",children:[y.jsx(jS,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),y.jsx("input",{type:"text",value:f,onChange:S=>h(S.target.value),onFocus:()=>v(!0),placeholder:u?"Loading nodes...":"Search nodes...",className:"w-full pl-9 pr-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent"})]}),d&&!u&&y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>v(!1)}),y.jsx("div",{className:"absolute left-0 right-0 top-full mt-1 z-50 max-h-64 overflow-y-auto bg-[#0a0e17] border border-[#1e2a3a] rounded-lg shadow-xl",children:g.length===0?y.jsx("div",{className:"p-3 text-sm text-slate-500 text-center",children:"No nodes found"}):g.map(S=>y.jsxs("button",{type:"button",onClick:()=>_(S),className:`w-full flex items-center gap-2 px-3 py-2 text-left text-sm hover:bg-[#1e2a3a] ${x(S)?"bg-accent/10":""}`,children:[y.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center ${x(S)?"bg-accent border-accent":"border-slate-600"}`,children:x(S)&&y.jsx(zo,{size:12,className:"text-white"})}),y.jsx("span",{className:"text-slate-200",children:b(S)})]},S.node_num))})]})]}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function QR(e){const[t,r]=H.useState([]),[n,i]=H.useState(!0);H.useEffect(()=>{fetch("/api/channels").then(h=>h.json()).then(h=>{r(h),i(!1)}).catch(()=>{r([]),i(!1)})},[]);const a=h=>{const d=h.role==="PRIMARY"?"Primary":h.role==="SECONDARY"?"Secondary":"";return`${h.index}: ${h.name}${d?` (${d})`:""}`};if(!n&&t.length===0)return e.mode==="single"?y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e.label}),y.jsx("input",{type:"number",value:e.value,onChange:h=>e.onChange(Number(h.target.value)),min:e.includeDisabled?-1:0,max:7,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),e.helper&&y.jsx("p",{className:"text-xs text-slate-600",children:e.helper})]}):y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e.label}),y.jsx("input",{type:"text",value:e.value.join(", "),onChange:h=>{const d=h.target.value.split(",").map(v=>parseInt(v.trim())).filter(v=>!isNaN(v));e.onChange(d)},placeholder:"Enter channel numbers separated by commas",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),e.helper&&y.jsx("p",{className:"text-xs text-slate-600",children:e.helper})]});if(e.mode==="single"){const{value:h,onChange:d,label:v,helper:g,includeDisabled:m}=e,x=t.filter(_=>_.enabled);return y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:v}),y.jsxs("select",{value:h,onChange:_=>d(Number(_.target.value)),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:[m&&y.jsx("option",{value:-1,children:"Disabled"}),x.map(_=>y.jsx("option",{value:_.index,children:a(_)},_.index))]}),g&&y.jsx("p",{className:"text-xs text-slate-600",children:g})]})}const{value:o,onChange:s,label:l,helper:u}=e,c=t.filter(h=>h.enabled),f=h=>{o.includes(h)?s(o.filter(d=>d!==h)):s([...o,h].sort((d,v)=>d-v))};return y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:l}),y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-2 space-y-1",children:[c.map(h=>y.jsxs("label",{onClick:()=>f(h.index),className:"flex items-center gap-2 p-2 rounded hover:bg-[#0a0e17] cursor-pointer",children:[y.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center ${o.includes(h.index)?"bg-accent border-accent":"border-slate-600"}`,children:o.includes(h.index)&&y.jsx(zo,{size:12,className:"text-white"})}),y.jsx("span",{className:"text-sm text-slate-200",children:a(h)})]},h.index)),c.length===0&&y.jsx("div",{className:"text-sm text-slate-500 p-2",children:"No channels available"})]}),u&&y.jsx("p",{className:"text-xs text-slate-600",children:u})]})}const t7=[{key:"bot",label:"Bot",icon:lce},{key:"connection",label:"Connection",icon:RS},{key:"response",label:"Response",icon:$Z},{key:"history",label:"History",icon:gce},{key:"memory",label:"Memory",icon:uce},{key:"context",label:"Context",icon:oD},{key:"commands",label:"Commands",icon:WZ},{key:"llm",label:"LLM",icon:jZ},{key:"weather",label:"Weather",icon:lu},{key:"meshmonitor",label:"MeshMonitor",icon:Ya},{key:"knowledge",label:"Knowledge",icon:DZ},{key:"mesh_sources",label:"Mesh Sources",icon:BZ},{key:"mesh_intelligence",label:"Intelligence",icon:gv},{key:"dashboard",label:"Dashboard",icon:zZ}],fi={bot:"Identity and behavior settings for the bot on the mesh network.",connection:"How MeshAI connects to your Meshtastic radio.",response:"Controls how quickly and how much the bot responds on the mesh.",history:"Conversation history storage and cleanup.",memory:"Short-term conversation memory management. Controls how the bot maintains context within a conversation.",context:"Passive channel monitoring. The bot listens to mesh channels and uses recent messages as context when responding.",commands:"Mesh commands available via the configured prefix. Toggle individual commands on or off.",llm:"AI model configuration. MeshAI uses an LLM to understand questions and generate responses.",weather:"Weather data for the !weather command. This is separate from NWS environmental alerts.",meshmonitor:"AIDA MeshMonitor integration. An additional data source for mesh network monitoring.",knowledge:"Knowledge base for answering questions from stored documents. Connects to Qdrant vector database or local SQLite.",mesh_sources:"Data sources for mesh network information. MeshAI can pull data from multiple sources simultaneously and merge them into a unified view.",mesh_intelligence:"Advanced mesh analysis: health scoring, region management, and automated alerting. The intelligence engine monitors your mesh and detects problems automatically.",dashboard:"Web dashboard settings. You're looking at it right now."},RQe=[{name:"help",description:"Show available commands and usage"},{name:"health",description:"Mesh network health overview with status dots"},{name:"status",description:"Quick mesh status summary"},{name:"region",description:"List regions or get detailed region breakdown"},{name:"neighbors",description:"Show top infrastructure neighbors with signal quality"},{name:"ping",description:"Test bot responsiveness"},{name:"clear",description:"Clear your conversation history"},{name:"reset",description:"Reset conversation context"},{name:"sub",description:"Subscribe to scheduled reports or alerts"},{name:"unsub",description:"Remove a subscription"},{name:"mysubs",description:"List your active subscriptions"},{name:"alerts",description:"Active NWS weather alerts for mesh area"},{name:"solar",description:"Space weather and HF propagation conditions"},{name:"hf",description:"HF radio propagation (alias for !solar)"},{name:"fire",description:"Active wildfires near the mesh"},{name:"avy",description:"Avalanche advisories for configured zones"},{name:"hotspots",description:"NASA FIRMS satellite fire detections"},{name:"streams",description:"USGS stream gauge readings"},{name:"roads",description:"Road conditions and closures"},{name:"traffic",description:"Traffic flow on monitored corridors"}],BQe=[{value:"US-AL",label:"Alabama"},{value:"US-AK",label:"Alaska"},{value:"US-AZ",label:"Arizona"},{value:"US-AR",label:"Arkansas"},{value:"US-CA",label:"California"},{value:"US-CO",label:"Colorado"},{value:"US-CT",label:"Connecticut"},{value:"US-DE",label:"Delaware"},{value:"US-FL",label:"Florida"},{value:"US-GA",label:"Georgia"},{value:"US-HI",label:"Hawaii"},{value:"US-ID",label:"Idaho"},{value:"US-IL",label:"Illinois"},{value:"US-IN",label:"Indiana"},{value:"US-IA",label:"Iowa"},{value:"US-KS",label:"Kansas"},{value:"US-KY",label:"Kentucky"},{value:"US-LA",label:"Louisiana"},{value:"US-ME",label:"Maine"},{value:"US-MD",label:"Maryland"},{value:"US-MA",label:"Massachusetts"},{value:"US-MI",label:"Michigan"},{value:"US-MN",label:"Minnesota"},{value:"US-MS",label:"Mississippi"},{value:"US-MO",label:"Missouri"},{value:"US-MT",label:"Montana"},{value:"US-NE",label:"Nebraska"},{value:"US-NV",label:"Nevada"},{value:"US-NH",label:"New Hampshire"},{value:"US-NJ",label:"New Jersey"},{value:"US-NM",label:"New Mexico"},{value:"US-NY",label:"New York"},{value:"US-NC",label:"North Carolina"},{value:"US-ND",label:"North Dakota"},{value:"US-OH",label:"Ohio"},{value:"US-OK",label:"Oklahoma"},{value:"US-OR",label:"Oregon"},{value:"US-PA",label:"Pennsylvania"},{value:"US-RI",label:"Rhode Island"},{value:"US-SC",label:"South Carolina"},{value:"US-SD",label:"South Dakota"},{value:"US-TN",label:"Tennessee"},{value:"US-TX",label:"Texas"},{value:"US-UT",label:"Utah"},{value:"US-VT",label:"Vermont"},{value:"US-VA",label:"Virginia"},{value:"US-WA",label:"Washington"},{value:"US-WV",label:"West Virginia"},{value:"US-WI",label:"Wisconsin"},{value:"US-WY",label:"Wyoming"}];function Yo({info:e,link:t,linkText:r="Learn more"}){const[n,i]=H.useState(!1),a=H.useRef(null);return H.useEffect(()=>{if(!n)return;function o(l){a.current&&!a.current.contains(l.target)&&i(!1)}const s=setTimeout(()=>document.addEventListener("mousedown",o),0);return()=>{clearTimeout(s),document.removeEventListener("mousedown",o)}},[n]),y.jsxs("div",{className:"relative inline-block",ref:a,children:[y.jsx("button",{type:"button",onClick:o=>{o.stopPropagation(),i(!n)},className:"ml-1.5 w-4 h-4 rounded-full bg-slate-700 hover:bg-slate-600 text-slate-400 hover:text-slate-200 inline-flex items-center justify-center text-xs transition-colors",title:"More info",children:"?"}),n&&y.jsxs("div",{className:"absolute left-0 top-6 z-50 w-72 p-3 bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl text-xs text-slate-300 leading-relaxed",children:[y.jsx("button",{type:"button",onClick:()=>i(!1),className:"absolute top-1 right-1 w-5 h-5 rounded hover:bg-slate-700 text-slate-500 hover:text-slate-300 inline-flex items-center justify-center transition-colors","aria-label":"Close",children:y.jsx(Xa,{size:12})}),y.jsx("div",{className:"pr-4",children:e}),t&&y.jsxs("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"mt-2 flex items-center gap-1 text-accent hover:underline",onClick:o=>o.stopPropagation(),children:[r," ",y.jsx(Sd,{size:10})]})]})]})}function hi({text:e}){return y.jsx("p",{className:"text-sm text-slate-500 mb-6 pb-4 border-b border-[#1e2a3a]",children:e})}function xt({label:e,value:t,onChange:r,type:n="text",placeholder:i="",helper:a="",info:o="",infoLink:s=""}){const[l,u]=H.useState(!1),c=n==="password";return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,o&&y.jsx(Yo,{info:o,link:s})]}),y.jsxs("div",{className:"relative",children:[y.jsx("input",{type:c&&!l?"password":"text",value:t,onChange:f=>r(f.target.value),placeholder:i,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),c&&y.jsx("button",{type:"button",onClick:()=>u(!l),className:"absolute right-2 top-1/2 -translate-y-1/2 text-slate-500 hover:text-slate-300",children:l?y.jsx(RZ,{size:16}):y.jsx(oD,{size:16})})]}),a&&y.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function rt({label:e,value:t,onChange:r,min:n,max:i,step:a=1,helper:o="",info:s="",infoLink:l=""}){return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,s&&y.jsx(Yo,{info:s,link:l})]}),y.jsx("input",{type:"number",value:t,onChange:u=>r(Number(u.target.value)),min:n,max:i,step:a,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),o&&y.jsx("p",{className:"text-xs text-slate-600",children:o})]})}function yr({label:e,checked:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){return y.jsxs("div",{className:"flex items-center justify-between py-2",children:[y.jsxs("div",{children:[y.jsxs("span",{className:"flex items-center text-sm text-slate-300",children:[e,i&&y.jsx(Yo,{info:i,link:a})]}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]}),y.jsx("button",{type:"button",onClick:()=>r(!t),className:`relative w-11 h-6 rounded-full transition-colors ${t?"bg-accent":"bg-[#1e2a3a]"}`,children:y.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${t?"translate-x-5":""}`})})]})}function Lo({label:e,value:t,onChange:r,options:n,helper:i="",info:a="",infoLink:o=""}){return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&y.jsx(Yo,{info:a,link:o})]}),y.jsx("select",{value:t,onChange:s=>r(s.target.value),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:n.map(s=>y.jsx("option",{value:s.value,children:s.label},s.value))}),i&&y.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function zQe({label:e,value:t,onChange:r,rows:n=4,helper:i="",info:a="",infoLink:o=""}){return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&y.jsx(Yo,{info:a,link:o})]}),y.jsx("textarea",{value:t,onChange:s=>r(s.target.value),rows:n,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent resize-y"}),i&&y.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function Kh({label:e,value:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){const[o,s]=H.useState(t.join(", "));H.useEffect(()=>{s(t.join(", "))},[t]);const l=()=>{const u=o.split(",").map(c=>c.trim()).filter(Boolean);r(u)};return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&y.jsx(Yo,{info:i,link:a})]}),y.jsx("input",{type:"text",value:o,onChange:u=>s(u.target.value),onBlur:l,placeholder:"item1, item2, item3",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function $Qe({label:e,value:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){const[o,s]=H.useState(t.join(", "));H.useEffect(()=>{s(t.join(", "))},[t]);const l=()=>{const u=o.split(",").map(c=>parseInt(c.trim(),10)).filter(c=>!isNaN(c));r(u)};return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&y.jsx(Yo,{info:i,link:a})]}),y.jsx("input",{type:"text",value:o,onChange:u=>s(u.target.value),onBlur:l,placeholder:"0, 1, 2",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function Cn({label:e,description:t,checked:r,onChange:n,threshold:i,onThresholdChange:a,thresholdLabel:o,thresholdMin:s,thresholdMax:l,thresholdStep:u=1,thresholdSuffix:c=""}){return y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-3 space-y-2",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("div",{className:"flex-1",children:[y.jsx("span",{className:"text-sm text-slate-300",children:e}),y.jsx("p",{className:"text-xs text-slate-600",children:t})]}),y.jsx("button",{type:"button",onClick:()=>n(!r),className:`relative w-11 h-6 rounded-full transition-colors flex-shrink-0 ml-3 ${r?"bg-accent":"bg-[#1e2a3a]"}`,children:y.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${r?"translate-x-5":""}`})})]}),r&&i!==void 0&&a&&y.jsxs("div",{className:"flex items-center gap-2 pt-2 border-t border-[#1e2a3a]",children:[y.jsxs("span",{className:"text-xs text-slate-500",children:[o||"Threshold",":"]}),y.jsx("input",{type:"number",value:i,onChange:f=>a(Number(f.target.value)),min:s,max:l,step:u,className:"w-20 px-2 py-1 bg-[#0a0e17] border border-[#1e2a3a] rounded text-xs text-slate-200 font-mono"}),c&&y.jsx("span",{className:"text-xs text-slate-500",children:c})]})]})}function FQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.bot}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Bot Name",value:e.name,onChange:r=>t({...e,name:r}),helper:"Name the bot responds to on the mesh",info:"When someone sends a message containing this name, the bot will respond. Also used as the sender name in broadcasts. Changing this requires a restart."}),y.jsx(xt,{label:"Owner",value:e.owner,onChange:r=>t({...e,owner:r}),helper:"Your callsign or identifier",info:"Identifies the bot operator. Shown in !help responses and used for admin-level commands."})]}),y.jsx(yr,{label:"Respond to DMs",checked:e.respond_to_dms,onChange:r=>t({...e,respond_to_dms:r}),helper:"Reply when someone sends a direct message",info:"When enabled, the bot responds to direct messages from any node. When disabled, the bot only responds to channel messages that mention its name."}),y.jsx(yr,{label:"Filter BBS Protocols",checked:e.filter_bbs_protocols,onChange:r=>t({...e,filter_bbs_protocols:r}),helper:"Ignore BBS bulletin board traffic",info:"Filters out automated BBS protocol messages (advBBS, MAIL*, BOARD*) so the bot doesn't try to respond to machine-to-machine traffic."})]})}function VQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.connection}),y.jsx(Lo,{label:"Connection Type",value:e.type,onChange:r=>t({...e,type:r}),options:[{value:"serial",label:"Serial (USB)"},{value:"tcp",label:"TCP (Network)"}],helper:"Serial for USB-connected radios, TCP for network or meshtasticd",info:"Serial: direct USB connection to a Meshtastic radio. TCP: connect over the network to a radio's IP or to meshtasticd running on another machine."}),e.type==="serial"?y.jsx(xt,{label:"Serial Port",value:e.serial_port,onChange:r=>t({...e,serial_port:r}),placeholder:"/dev/ttyUSB0",helper:"Device path for your USB radio",info:"Usually /dev/ttyUSB0 on Linux or /dev/ttyACM0. Check with 'ls /dev/tty*' after plugging in your radio."}):y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"TCP Host",value:e.tcp_host,onChange:r=>t({...e,tcp_host:r}),placeholder:"192.168.1.100",helper:"IP address or hostname of the radio/meshtasticd"}),y.jsx(rt,{label:"TCP Port",value:e.tcp_port,onChange:r=>t({...e,tcp_port:r}),min:1,max:65535,helper:"Default 4403 for meshtasticd"})]})]})}function GQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.response}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Delay Min (sec)",value:e.delay_min,onChange:r=>t({...e,delay_min:r}),min:0,step:.1,helper:"Minimum wait before responding",info:"Adds a random delay between min and max before the bot sends a response. Prevents the bot from appearing to respond instantly, which can feel unnatural on a radio network."}),y.jsx(rt,{label:"Delay Max (sec)",value:e.delay_max,onChange:r=>t({...e,delay_max:r}),min:0,step:.1,helper:"Maximum wait before responding",info:"Also prevents collisions with other traffic by staggering transmissions."})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Max Length",value:e.max_length,onChange:r=>t({...e,max_length:r}),min:50,max:500,helper:"Maximum characters per response message",info:"Meshtastic packets have limited size. This caps how long each message chunk can be. The bot will split longer responses into multiple messages up to Max Messages."}),y.jsx(rt,{label:"Max Messages",value:e.max_messages,onChange:r=>t({...e,max_messages:r}),min:1,max:10,helper:"Maximum chunks per response",info:"If a response is longer than Max Length, the bot splits it into this many chunks at most. Higher values = more complete answers but more airtime used."})]})]})}function WQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.history}),y.jsx(xt,{label:"Database Path",value:e.database,onChange:r=>t({...e,database:r}),helper:"SQLite file for storing conversation history",info:"Path to the SQLite database file. Created automatically if it doesn't exist. Stores all conversation history for context."}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Max Messages Per User",value:e.max_messages_per_user,onChange:r=>t({...e,max_messages_per_user:r}),min:0,helper:"History limit per user (0 = unlimited)",info:"Limits how many messages are stored per user. Older messages are pruned when the limit is reached. Set to 0 for no limit."}),y.jsx(rt,{label:"Conversation Timeout (sec)",value:e.conversation_timeout,onChange:r=>t({...e,conversation_timeout:r}),min:0,helper:"Seconds before context resets",info:"If a user doesn't message for this long, their next message starts a new conversation context. The bot won't remember the previous topic."})]}),y.jsx(yr,{label:"Auto Cleanup",checked:e.auto_cleanup,onChange:r=>t({...e,auto_cleanup:r}),helper:"Automatically prune old conversations"}),e.auto_cleanup&&y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Cleanup Interval (hours)",value:e.cleanup_interval_hours,onChange:r=>t({...e,cleanup_interval_hours:r}),min:1,helper:"Hours between cleanup runs"}),y.jsx(rt,{label:"Max Age (days)",value:e.max_age_days,onChange:r=>t({...e,max_age_days:r}),min:1,helper:"Delete conversations older than this"})]})]})}function HQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.memory}),y.jsx(yr,{label:"Enable Memory",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Keep conversation context between messages"}),e.enabled&&y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Window Size",value:e.window_size,onChange:r=>t({...e,window_size:r}),min:1,helper:"Recent message pairs kept in full",info:"The bot keeps this many recent exchanges (user message + bot response pairs) as full text in context. Older messages are summarized to save token space."}),y.jsx(rt,{label:"Summarize Threshold",value:e.summarize_threshold,onChange:r=>t({...e,summarize_threshold:r}),min:1,helper:"Messages before older context is summarized",info:"When the conversation exceeds this many messages, older ones outside the window are compressed into a summary by the LLM."})]})]})}function UQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.context}),y.jsx(yr,{label:"Enable Passive Context",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Listen to channel traffic for context",info:"When enabled, the bot monitors mesh channels and includes recent messages in its context. This lets the bot reference things other people said on the channel."}),e.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(QR,{label:"Observe Channels",value:e.observe_channels,onChange:r=>t({...e,observe_channels:r}),helper:"Channels to monitor (empty = all)",info:"Meshtastic channels to listen on. Leave empty to monitor all channels.",mode:"multi"}),y.jsx(JR,{label:"Ignore Nodes",value:e.ignore_nodes,onChange:r=>t({...e,ignore_nodes:r}),helper:"Nodes to exclude from context",info:"Messages from these nodes won't be included in passive context. Useful for filtering out noisy automated nodes."}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Max Age (sec)",value:e.max_age,onChange:r=>t({...e,max_age:r}),min:0,helper:"Ignore messages older than this"}),y.jsx(rt,{label:"Max Context Items",value:e.max_context_items,onChange:r=>t({...e,max_context_items:r}),min:1,helper:"Maximum recent messages to include"})]})]})]})}function ZQe({data:e,onChange:t}){const r=new Set(e.disabled_commands.map(i=>i.toLowerCase())),n=i=>{const a=i.toLowerCase();r.has(a)?t({...e,disabled_commands:e.disabled_commands.filter(o=>o.toLowerCase()!==a)}):t({...e,disabled_commands:[...e.disabled_commands,i]})};return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.commands}),y.jsx(yr,{label:"Enable Commands",checked:e.enabled,onChange:i=>t({...e,enabled:i}),helper:"Allow !commands on the mesh"}),e.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(xt,{label:"Command Prefix",value:e.prefix,onChange:i=>t({...e,prefix:i}),helper:"Character that triggers commands (e.g. ! for !help)",info:"Users type this character followed by the command name. Only single characters recommended."}),y.jsxs("div",{className:"space-y-2",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Available Commands",y.jsx(Yo,{info:"Toggle commands on or off. Disabled commands won't respond when users invoke them."})]}),y.jsx("div",{className:"grid gap-1",children:RQe.map(i=>{const a=!r.has(i.name.toLowerCase());return y.jsxs("div",{className:"flex items-center justify-between p-2 bg-[#0a0e17] border border-[#1e2a3a] rounded hover:border-[#2a3a4a] transition-colors",children:[y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsxs("code",{className:"text-accent text-sm",children:["!",i.name]}),y.jsx("span",{className:"text-xs text-slate-500",children:i.description})]}),y.jsx("button",{type:"button",onClick:()=>n(i.name),className:`relative w-9 h-5 rounded-full transition-colors ${a?"bg-accent":"bg-[#1e2a3a]"}`,children:y.jsx("span",{className:`absolute top-0.5 left-0.5 w-4 h-4 rounded-full bg-white transition-transform ${a?"translate-x-4":""}`})})]},i.name)})})]})]})]})}function YQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.llm}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Lo,{label:"Backend",value:e.backend,onChange:r=>t({...e,backend:r}),options:[{value:"openai",label:"OpenAI"},{value:"anthropic",label:"Anthropic"},{value:"google",label:"Google (Gemini)"}],helper:"LLM provider to use",info:"OpenAI: GPT models (gpt-4o, gpt-4o-mini). Anthropic: Claude models (claude-sonnet-4-20250514). Google: Gemini models. Can also point to compatible APIs like Ollama, LM Studio, or Open WebUI by changing the Base URL."}),y.jsx(xt,{label:"Model",value:e.model,onChange:r=>t({...e,model:r}),placeholder:"gpt-4o-mini",helper:"Specific model name",info:"The specific model to use. Common choices: gpt-4o-mini (fast, cheap), gpt-4o (better, costs more), claude-sonnet-4-20250514 (Anthropic equivalent). For local models via Ollama, use the model name you pulled (e.g. llama3.1)."})]}),y.jsx(xt,{label:"API Key",value:e.api_key,onChange:r=>t({...e,api_key:r}),type:"password",helper:"Supports ${ENV_VAR} syntax",info:"Your API key from the provider. You can also use ${ENV_VAR} syntax to read from an environment variable instead of storing the key in the config file."}),y.jsx(xt,{label:"Base URL",value:e.base_url,onChange:r=>t({...e,base_url:r}),placeholder:"https://api.openai.com/v1",helper:"API endpoint (change for local LLMs)",info:"Default API endpoint for the selected backend. Change this to point to a local LLM server (Ollama at http://localhost:11434/v1, Open WebUI, LM Studio, etc.) or a proxy."}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Timeout (sec)",value:e.timeout,onChange:r=>t({...e,timeout:r}),min:5,max:120,helper:"Maximum seconds to wait for response"}),y.jsx(rt,{label:"Max Response Tokens",value:e.max_response_tokens,onChange:r=>t({...e,max_response_tokens:r}),min:100,helper:"Token limit for LLM responses"})]}),y.jsx(yr,{label:"Use System Prompt",checked:e.use_system_prompt,onChange:r=>t({...e,use_system_prompt:r}),helper:"Enable custom system instructions"}),e.use_system_prompt&&y.jsx(zQe,{label:"System Prompt",value:e.system_prompt,onChange:r=>t({...e,system_prompt:r}),rows:6,helper:"Instructions that shape the bot's personality",info:"Instructions that shape the bot's personality and behavior. The bot always follows these instructions. MeshAI adds mesh health data and environmental context automatically — you don't need to include those here."}),y.jsx(yr,{label:"Web Search",checked:e.web_search,onChange:r=>t({...e,web_search:r}),helper:"Enable web search tool (Open WebUI feature)"}),y.jsx(yr,{label:"Google Grounding",checked:e.google_grounding,onChange:r=>t({...e,google_grounding:r}),helper:"Ground responses in web search (Gemini only)"})]})}function XQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.weather}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Lo,{label:"Primary Provider",value:e.primary,onChange:r=>t({...e,primary:r}),options:[{value:"openmeteo",label:"Open-Meteo"},{value:"wttr",label:"wttr.in"},{value:"llm",label:"LLM"}],helper:"Main weather data source"}),y.jsx(Lo,{label:"Fallback Provider",value:e.fallback,onChange:r=>t({...e,fallback:r}),options:[{value:"openmeteo",label:"Open-Meteo"},{value:"wttr",label:"wttr.in"},{value:"llm",label:"LLM"},{value:"none",label:"None"}],helper:"Backup if primary fails"})]}),y.jsx(xt,{label:"Default Location",value:e.default_location,onChange:r=>t({...e,default_location:r}),placeholder:"Your city, state",helper:"Location when none specified"})]})}function qQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.meshmonitor}),y.jsx(yr,{label:"Enable MeshMonitor",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Connect to AIDA MeshMonitor instance",info:"MeshMonitor by Yeraze provides node data, battery info, telemetry, and auto-responder patterns. MeshAI uses this as a data source and avoids duplicate responses."}),e.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(xt,{label:"URL",value:e.url,onChange:r=>t({...e,url:r}),placeholder:"http://192.168.1.100:8080",helper:"MeshMonitor API endpoint",info:"Full URL to your MeshMonitor instance. Usually runs on port 8080."}),y.jsx(yr,{label:"Inject Into Prompt",checked:e.inject_into_prompt,onChange:r=>t({...e,inject_into_prompt:r}),helper:"Tell LLM about MeshMonitor commands",info:"Adds MeshMonitor's auto-responder patterns to the LLM context so it knows what commands MeshMonitor handles."}),y.jsx(rt,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:r=>t({...e,refresh_interval:r}),min:10,helper:"How often to fetch patterns"}),y.jsx(yr,{label:"Polite Mode",checked:e.polite_mode,onChange:r=>t({...e,polite_mode:r}),helper:"Reduce polling frequency",info:"Reduces polling frequency for shared instances to be a good neighbor."})]})]})}function KQe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.knowledge}),y.jsx(yr,{label:"Enable Knowledge Base",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Answer questions from stored documents",info:"Uses RAG (Retrieval-Augmented Generation) to answer questions from a knowledge base. Supports Qdrant vector database or local SQLite with FTS5."}),e.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(Lo,{label:"Backend",value:e.backend,onChange:r=>t({...e,backend:r}),options:[{value:"auto",label:"Auto (Qdrant -> SQLite)"},{value:"qdrant",label:"Qdrant"},{value:"sqlite",label:"SQLite"}],helper:"Knowledge storage backend",info:"Auto tries Qdrant first, falls back to SQLite. Qdrant provides hybrid search with dense+sparse embeddings. SQLite uses FTS5 keyword search."}),(e.backend==="qdrant"||e.backend==="auto")&&y.jsxs(y.Fragment,{children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Qdrant Host",value:e.qdrant_host,onChange:r=>t({...e,qdrant_host:r}),helper:"Qdrant server hostname",info:"IP or hostname of your Qdrant vector database server."}),y.jsx(rt,{label:"Qdrant Port",value:e.qdrant_port,onChange:r=>t({...e,qdrant_port:r}),helper:"Default 6333"})]}),y.jsx(xt,{label:"Collection",value:e.qdrant_collection,onChange:r=>t({...e,qdrant_collection:r}),helper:"Qdrant collection name"}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"TEI Host",value:e.tei_host,onChange:r=>t({...e,tei_host:r}),helper:"Text Embeddings Inference host",info:"TEI service for generating dense embeddings. Uses BAAI/bge-m3 model."}),y.jsx(rt,{label:"TEI Port",value:e.tei_port,onChange:r=>t({...e,tei_port:r}),helper:"Default 8090"})]}),y.jsx(yr,{label:"Use Sparse Embeddings",checked:e.use_sparse,onChange:r=>t({...e,use_sparse:r}),helper:"Enable hybrid search with sparse vectors",info:"Combines dense embeddings with sparse (keyword-based) embeddings using Reciprocal Rank Fusion for better search results."})]}),y.jsx(xt,{label:"SQLite DB Path",value:e.db_path,onChange:r=>t({...e,db_path:r}),helper:"Local knowledge database file"}),y.jsx(rt,{label:"Top K Results",value:e.top_k,onChange:r=>t({...e,top_k:r}),min:1,max:20,helper:"Number of documents to retrieve"})]})]})}function JQe({source:e,onChange:t,onDelete:r}){const[n,i]=H.useState(!1),a={meshview:"Web-based mesh monitoring tool. Enter the full URL of a MeshView instance. No API key typically required.",meshmonitor:"AIDA MeshMonitor API. Provides node data and network statistics. Requires API token.",mqtt:"Subscribe directly to a Meshtastic MQTT broker for real-time packet data. This is push-based (instant) vs the polling approach of MeshView/MeshMonitor."};return y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg overflow-hidden",children:[y.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>i(!n),children:[y.jsxs("div",{className:"flex items-center gap-3",children:[n?y.jsx(yu,{size:16}):y.jsx(ou,{size:16}),y.jsx("div",{className:`w-2 h-2 rounded-full ${e.enabled?"bg-green-500":"bg-slate-500"}`}),y.jsx("span",{className:"font-mono text-sm text-slate-200",children:e.name||"Unnamed Source"}),y.jsx("span",{className:"text-xs text-slate-500 bg-[#1e2a3a] px-2 py-0.5 rounded",children:e.type})]}),y.jsx("button",{onClick:o=>{o.stopPropagation(),r()},className:"p-1 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",children:y.jsx(Jy,{size:14})})]}),n&&y.jsxs("div",{className:"p-4 space-y-4 border-t border-[#1e2a3a]",children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Name",value:e.name,onChange:o=>t({...e,name:o}),helper:"Friendly name for this source"}),y.jsx(Lo,{label:"Type",value:e.type,onChange:o=>t({...e,type:o}),options:[{value:"meshview",label:"MeshView"},{value:"meshmonitor",label:"MeshMonitor"},{value:"mqtt",label:"MQTT Broker"}],info:a[e.type]||""})]}),e.type!=="mqtt"&&y.jsx(xt,{label:"URL",value:e.url,onChange:o=>t({...e,url:o}),helper:"Full URL including protocol"}),e.type==="meshmonitor"&&y.jsx(xt,{label:"API Token",value:e.api_token,onChange:o=>t({...e,api_token:o}),type:"password",helper:"Bearer token for authentication"}),e.type==="mqtt"&&y.jsxs(y.Fragment,{children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Host",value:e.host||"",onChange:o=>t({...e,host:o}),helper:"MQTT broker hostname"}),y.jsx(rt,{label:"Port",value:e.port||1883,onChange:o=>t({...e,port:o}),min:1,max:65535,helper:"1883 plain, 8883 TLS"})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Username",value:e.username||"",onChange:o=>t({...e,username:o})}),y.jsx(xt,{label:"Password",value:e.password||"",onChange:o=>t({...e,password:o}),type:"password"})]}),y.jsx(xt,{label:"Topic Root",value:e.topic_root||"msh/US",onChange:o=>t({...e,topic_root:o}),helper:"Base topic to subscribe to"}),y.jsx(yr,{label:"Use TLS",checked:e.use_tls||!1,onChange:o=>t({...e,use_tls:o}),helper:"Encrypt MQTT connection"})]}),y.jsx(rt,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:o=>t({...e,refresh_interval:o}),min:10,helper:"Polling frequency"}),y.jsx(yr,{label:"Enabled",checked:e.enabled,onChange:o=>t({...e,enabled:o})}),y.jsx(yr,{label:"Polite Mode",checked:e.polite_mode,onChange:o=>t({...e,polite_mode:o}),helper:"Reduce polling for shared instances"})]})]})}function QQe({data:e,onChange:t}){const r=()=>{t([...e,{name:"New Source",type:"meshview",url:"",api_token:"",refresh_interval:30,polite_mode:!1,enabled:!0,host:"",port:1883,username:"",password:"",topic_root:"msh/US",use_tls:!1}])};return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.mesh_sources}),e.map((n,i)=>y.jsx(JQe,{source:n,onChange:a=>{const o=[...e];o[i]=a,t(o)},onDelete:()=>{confirm(`Delete source "${n.name}"?`)&&t(e.filter((a,o)=>o!==i))}},i)),y.jsxs("button",{onClick:r,className:"w-full py-2 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center justify-center gap-2 transition-colors",children:[y.jsx(yv,{size:16})," Add Source"]})]})}function eet({data:e,onChange:t}){const[r,n]=H.useState(null);return y.jsxs("div",{className:"space-y-6",children:[y.jsx(hi,{text:fi.mesh_intelligence}),y.jsx(yr,{label:"Enable Mesh Intelligence",checked:e.enabled,onChange:i=>t({...e,enabled:i}),helper:"Activate health scoring and alerting"}),e.enabled&&y.jsxs(y.Fragment,{children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Locality Radius (miles)",value:e.locality_radius_miles,onChange:i=>t({...e,locality_radius_miles:i}),min:1,step:.5,helper:"Region assignment radius",info:"Nodes within this distance of a region anchor point are assigned to that region."}),y.jsx(rt,{label:"Offline Threshold (hours)",value:e.offline_threshold_hours,onChange:i=>t({...e,offline_threshold_hours:i}),min:1,helper:"Time until node marked offline",info:"A node is considered offline after not being heard for this many hours."})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Packet Threshold",value:e.packet_threshold,onChange:i=>t({...e,packet_threshold:i}),min:0,helper:"Min packets per 24h to flag",info:"Minimum packets per 24 hours. Nodes below this are flagged as low activity."}),y.jsx(rt,{label:"Battery Warning %",value:e.battery_warning_percent,onChange:i=>t({...e,battery_warning_percent:i}),min:1,max:100,helper:"Global battery warning level"})]}),y.jsx(JR,{label:"Critical Nodes",value:e.critical_nodes,onChange:i=>t({...e,critical_nodes:i}),helper:"Critical infrastructure nodes",info:"Nodes that get priority alerting when they go offline.",roleFilter:"infrastructure"}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(QR,{label:"Alert Channel",value:e.alert_channel,onChange:i=>t({...e,alert_channel:i}),helper:"Channel for broadcast alerts",info:"Meshtastic channel for broadcast alerts. Select Disabled to turn off channel broadcasting.",mode:"single",includeDisabled:!0}),y.jsx(rt,{label:"Alert Cooldown (min)",value:e.alert_cooldown_minutes,onChange:i=>t({...e,alert_cooldown_minutes:i}),min:1,helper:"Min time between repeat alerts",info:"Minimum minutes between repeated alerts for the same condition. Uses scaling cooldown (12h, 24h, 48h)."})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Regions",y.jsx(Yo,{info:"Regions group mesh nodes by geographic area. Each region has an anchor point (lat/lon) and nodes within the region radius are automatically assigned. Regions enable localized reports, alerts, and health scoring."})]}),e.regions.map((i,a)=>y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg overflow-hidden",children:[y.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>n(r===a?null:a),children:[y.jsxs("div",{className:"flex items-center gap-3",children:[r===a?y.jsx(yu,{size:16}):y.jsx(ou,{size:16}),y.jsx("span",{className:"font-medium text-slate-200",children:i.name||"Unnamed Region"}),y.jsx("span",{className:"text-xs text-slate-500",children:i.local_name})]}),y.jsx("button",{onClick:o=>{if(o.stopPropagation(),confirm(`Delete region "${i.name||"Unnamed Region"}"?`)){const s=e.regions.filter((l,u)=>u!==a);t({...e,regions:s})}},className:"p-1 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",children:y.jsx(Jy,{size:14})})]}),r===a&&y.jsxs("div",{className:"p-4 space-y-3 border-t border-[#1e2a3a]",children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Name",value:i.name,onChange:o=>{const s=[...e.regions];s[a]={...i,name:o},t({...e,regions:s})}}),y.jsx(xt,{label:"Local Name",value:i.local_name,onChange:o=>{const s=[...e.regions];s[a]={...i,local_name:o},t({...e,regions:s})}})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Latitude",value:i.lat,onChange:o=>{const s=[...e.regions];s[a]={...i,lat:o},t({...e,regions:s})},step:1e-4}),y.jsx(rt,{label:"Longitude",value:i.lon,onChange:o=>{const s=[...e.regions];s[a]={...i,lon:o},t({...e,regions:s})},step:1e-4})]}),y.jsx(xt,{label:"Description",value:i.description,onChange:o=>{const s=[...e.regions];s[a]={...i,description:o},t({...e,regions:s})}}),y.jsx(Kh,{label:"Aliases",value:i.aliases,onChange:o=>{const s=[...e.regions];s[a]={...i,aliases:o},t({...e,regions:s})}}),y.jsx(Kh,{label:"Cities",value:i.cities,onChange:o=>{const s=[...e.regions];s[a]={...i,cities:o},t({...e,regions:s})}})]})]},a)),y.jsxs("button",{onClick:()=>{const i={name:"",local_name:"",lat:0,lon:0,description:"",aliases:[],cities:[]};t({...e,regions:[...e.regions,i]}),n(e.regions.length)},className:"w-full py-2 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center justify-center gap-2 transition-colors",children:[y.jsx(yv,{size:16})," Add Region"]})]}),y.jsxs("div",{className:"space-y-3",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Alert Rules",y.jsx(Yo,{info:"Configure which conditions trigger alerts. Each rule can have an optional threshold value."})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Infrastructure"}),y.jsx(Cn,{label:"Infra Offline",description:"Alert when an infrastructure node (router/repeater) goes offline",checked:e.alert_rules.infra_offline,onChange:i=>t({...e,alert_rules:{...e.alert_rules,infra_offline:i}})}),y.jsx(Cn,{label:"Infra Recovery",description:"Alert when an offline infrastructure node comes back online",checked:e.alert_rules.infra_recovery,onChange:i=>t({...e,alert_rules:{...e.alert_rules,infra_recovery:i}})}),y.jsx(Cn,{label:"New Router",description:"Alert when a new router/repeater appears on the mesh",checked:e.alert_rules.new_router,onChange:i=>t({...e,alert_rules:{...e.alert_rules,new_router:i}})}),y.jsx(Cn,{label:"Feeder Offline",description:"Alert when a data source (MeshView/MeshMonitor) stops responding",checked:e.alert_rules.feeder_offline,onChange:i=>t({...e,alert_rules:{...e.alert_rules,feeder_offline:i}})}),y.jsx(Cn,{label:"Single Gateway",description:"Alert when an infrastructure node has only one connection path",checked:e.alert_rules.infra_single_gateway,onChange:i=>t({...e,alert_rules:{...e.alert_rules,infra_single_gateway:i}})}),y.jsx(Cn,{label:"Region Blackout",description:"Alert when all infrastructure in a region goes offline",checked:e.alert_rules.region_total_blackout,onChange:i=>t({...e,alert_rules:{...e.alert_rules,region_total_blackout:i}})})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Power"}),y.jsx(Cn,{label:"Battery Warning",description:"Alert when infra node battery drops below warning threshold",checked:e.alert_rules.battery_warning,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_warning:i}}),threshold:e.alert_rules.battery_warning_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_warning_threshold:i}}),thresholdLabel:"Below",thresholdMin:10,thresholdMax:90,thresholdSuffix:"%"}),y.jsx(Cn,{label:"Battery Critical",description:"Alert at critical battery level",checked:e.alert_rules.battery_critical,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_critical:i}}),threshold:e.alert_rules.battery_critical_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_critical_threshold:i}}),thresholdLabel:"Below",thresholdMin:5,thresholdMax:50,thresholdSuffix:"%"}),y.jsx(Cn,{label:"Battery Emergency",description:"Alert at emergency battery level",checked:e.alert_rules.battery_emergency,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_emergency:i}}),threshold:e.alert_rules.battery_emergency_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_emergency_threshold:i}}),thresholdLabel:"Below",thresholdMin:1,thresholdMax:25,thresholdSuffix:"%"}),y.jsx(Cn,{label:"Battery Trend Declining",description:"Alert when battery shows a declining trend over 7 days",checked:e.alert_rules.battery_trend_declining,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_trend_declining:i}})}),y.jsx(Cn,{label:"Power Source Change",description:"Alert when a node switches between battery and USB power",checked:e.alert_rules.power_source_change,onChange:i=>t({...e,alert_rules:{...e.alert_rules,power_source_change:i}})}),y.jsx(Cn,{label:"Solar Not Charging",description:"Alert when a solar-powered node isn't charging during daylight",checked:e.alert_rules.solar_not_charging,onChange:i=>t({...e,alert_rules:{...e.alert_rules,solar_not_charging:i}})})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Utilization"}),y.jsx(Cn,{label:"High Utilization",description:"Alert when channel utilization stays high for extended periods",checked:e.alert_rules.sustained_high_util,onChange:i=>t({...e,alert_rules:{...e.alert_rules,sustained_high_util:i}}),threshold:e.alert_rules.high_util_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,high_util_threshold:i}}),thresholdLabel:"Above",thresholdMin:5,thresholdMax:50,thresholdSuffix:`% for ${e.alert_rules.high_util_hours}h`}),y.jsx(Cn,{label:"Packet Flood",description:"Alert when a single node sends excessive packets",checked:e.alert_rules.packet_flood,onChange:i=>t({...e,alert_rules:{...e.alert_rules,packet_flood:i}}),threshold:e.alert_rules.packet_flood_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,packet_flood_threshold:i}}),thresholdLabel:"Over",thresholdMin:100,thresholdMax:2e3,thresholdSuffix:"pkts/24h"})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Health Scores"}),y.jsx(Cn,{label:"Mesh Score Alert",description:"Alert when overall mesh health score drops below threshold",checked:e.alert_rules.mesh_score_alert,onChange:i=>t({...e,alert_rules:{...e.alert_rules,mesh_score_alert:i}}),threshold:e.alert_rules.mesh_score_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,mesh_score_threshold:i}}),thresholdLabel:"Below",thresholdMin:30,thresholdMax:90,thresholdSuffix:"/100"}),y.jsx(Cn,{label:"Region Score Alert",description:"Alert when a region's health score drops below threshold",checked:e.alert_rules.region_score_alert,onChange:i=>t({...e,alert_rules:{...e.alert_rules,region_score_alert:i}}),threshold:e.alert_rules.region_score_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,region_score_threshold:i}}),thresholdLabel:"Below",thresholdMin:30,thresholdMax:90,thresholdSuffix:"/100"})]})]})]})]})}function tet({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(hi,{text:fi.dashboard}),y.jsx(yr,{label:"Enable Dashboard",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Run the web dashboard"}),e.enabled&&y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xt,{label:"Host",value:e.host,onChange:r=>t({...e,host:r}),placeholder:"0.0.0.0",helper:"Network bind address",info:"0.0.0.0 = accessible from any device on the network. 127.0.0.1 = only accessible from this machine."}),y.jsx(rt,{label:"Port",value:e.port,onChange:r=>t({...e,port:r}),min:1,max:65535,helper:"Dashboard URL port",info:"Port number for the web dashboard URL. You access the dashboard at http://your-ip:port"})]})]})}function ret(){var I;const[e,t]=H.useState(null),[r,n]=H.useState(null),[i,a]=H.useState("bot"),[o,s]=H.useState(!0),[l,u]=H.useState(!1),[c,f]=H.useState(null),[h,d]=H.useState(null),[v,g]=H.useState(!1),[m,x]=H.useState(!1),_=H.useCallback(async()=>{try{const k=await fetch("/api/config");if(!k.ok)throw new Error("Failed to fetch config");const E=await k.json();t(E),n(JSON.parse(JSON.stringify(E))),x(!1),f(null)}catch(k){f(k instanceof Error?k.message:"Unknown error")}finally{s(!1)}},[]);H.useEffect(()=>{document.title="Config — MeshAI",_()},[_]),H.useEffect(()=>{e&&r&&x(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const b=async()=>{if(e){u(!0),f(null),d(null);try{const k=e[i],E=await fetch(`/api/config/${i}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(k)}),D=await E.json();if(!E.ok)throw new Error(D.detail||"Save failed");d(`${i} saved successfully`),n(JSON.parse(JSON.stringify(e))),x(!1),D.restart_required&&(g(!0),jce(Array.isArray(D.changed_keys)?D.changed_keys:[])),setTimeout(()=>d(null),3e3)}catch(k){f(k instanceof Error?k.message:"Save failed")}finally{u(!1)}}},S=()=>{r&&(t(JSON.parse(JSON.stringify(r))),x(!1))},T=async()=>{try{await fetch("/api/restart",{method:"POST"}),g(!1),d("Restart initiated")}catch{f("Restart failed")}},C=(k,E)=>{e&&t({...e,[k]:E})};if(o)return y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-slate-400",children:"Loading configuration..."})});if(!e)return y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-red-400",children:"Failed to load configuration"})});const A=()=>{switch(i){case"bot":return y.jsx(FQe,{data:e.bot,onChange:k=>C("bot",k)});case"connection":return y.jsx(VQe,{data:e.connection,onChange:k=>C("connection",k)});case"response":return y.jsx(GQe,{data:e.response,onChange:k=>C("response",k)});case"history":return y.jsx(WQe,{data:e.history,onChange:k=>C("history",k)});case"memory":return y.jsx(HQe,{data:e.memory,onChange:k=>C("memory",k)});case"context":return y.jsx(UQe,{data:e.context,onChange:k=>C("context",k)});case"commands":return y.jsx(ZQe,{data:e.commands,onChange:k=>C("commands",k)});case"llm":return y.jsx(YQe,{data:e.llm,onChange:k=>C("llm",k)});case"weather":return y.jsx(XQe,{data:e.weather,onChange:k=>C("weather",k)});case"meshmonitor":return y.jsx(qQe,{data:e.meshmonitor,onChange:k=>C("meshmonitor",k)});case"knowledge":return y.jsx(KQe,{data:e.knowledge,onChange:k=>C("knowledge",k)});case"mesh_sources":return y.jsx(QQe,{data:e.mesh_sources,onChange:k=>C("mesh_sources",k)});case"mesh_intelligence":return y.jsx(eet,{data:e.mesh_intelligence,onChange:k=>C("mesh_intelligence",k)});case"dashboard":return y.jsx(tet,{data:e.dashboard,onChange:k=>C("dashboard",k)});default:return null}},P=((I=t7.find(k=>k.key===i))==null?void 0:I.label)||i;return y.jsxs("div",{className:"flex gap-6 h-[calc(100vh-8rem)]",children:[y.jsx("div",{className:"w-48 flex-shrink-0 space-y-1",children:t7.map(({key:k,label:E,icon:D})=>y.jsxs("button",{onClick:()=>a(k),className:`w-full flex items-center gap-2 px-3 py-2 rounded text-sm transition-colors ${i===k?"bg-accent text-white":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover"}`,children:[y.jsx(D,{size:16}),y.jsx("span",{children:E}),m&&i===k&&y.jsx("span",{className:"ml-auto w-2 h-2 bg-amber-500 rounded-full"})]},k))}),y.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[y.jsxs("div",{className:"flex items-center justify-between mb-6",children:[y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx(FZ,{size:20,className:"text-slate-500"}),y.jsx("h2",{className:"text-lg font-semibold text-slate-200",children:P})]}),y.jsxs("div",{className:"flex items-center gap-2",children:[m&&y.jsxs("button",{onClick:S,className:"flex items-center gap-1.5 px-3 py-1.5 text-sm text-slate-400 hover:text-slate-200 bg-bg-hover rounded transition-colors",children:[y.jsx(DS,{size:14}),"Discard"]}),y.jsxs("button",{onClick:b,disabled:l||!m,className:"flex items-center gap-1.5 px-4 py-1.5 text-sm bg-accent text-white rounded hover:bg-accent/80 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[l?y.jsx(Pm,{size:14,className:"animate-spin"}):y.jsx(lD,{size:14}),"Save"]})]})]}),v&&y.jsxs("div",{className:"flex items-center justify-between p-3 mb-4 bg-amber-500/10 border border-amber-500/30 rounded-lg",children:[y.jsxs("div",{className:"flex items-center gap-2 text-amber-400",children:[y.jsx(Bs,{size:16}),y.jsx("span",{className:"text-sm",children:"Restart required for changes to take effect"})]}),y.jsx("button",{onClick:T,className:"px-3 py-1 text-sm bg-amber-500 text-white rounded hover:bg-amber-600 transition-colors",children:"Restart Now"})]}),c&&y.jsxs("div",{className:"flex items-center gap-2 p-3 mb-4 bg-red-500/10 border border-red-500/30 rounded-lg text-red-400",children:[y.jsx(Xa,{size:16}),y.jsx("span",{className:"text-sm",children:c})]}),h&&y.jsxs("div",{className:"flex items-center gap-2 p-3 mb-4 bg-green-500/10 border border-green-500/30 rounded-lg text-green-400",children:[y.jsx(zo,{size:16}),y.jsx("span",{className:"text-sm",children:h})]}),y.jsx("div",{className:"flex-1 overflow-y-auto pr-2",children:y.jsx("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:A()})})]})]})}function net({feed:e}){const t=e.is_loaded?e.consecutive_errors>0?"bg-amber-500":"bg-green-500":"bg-red-500",r=e.is_loaded?e.consecutive_errors>0?`${e.consecutive_errors} errors`:"Healthy":"Not loaded",n=e.last_fetch?new Date(e.last_fetch*1e3).toLocaleTimeString():"Never";return y.jsxs("div",{className:"bg-bg-hover rounded-lg p-4",children:[y.jsxs("div",{className:"flex items-center justify-between mb-2",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("div",{className:`w-2 h-2 rounded-full ${t}`}),y.jsx("span",{className:"text-sm font-medium text-slate-200 uppercase",children:e.source})]}),y.jsx("span",{className:"text-xs text-slate-400",children:r})]}),y.jsxs("div",{className:"text-xs text-slate-500 space-y-1",children:[y.jsxs("div",{children:["Events: ",e.event_count]}),y.jsxs("div",{children:["Last fetch: ",n]}),e.last_error&&y.jsx("div",{className:"text-amber-500 truncate",children:e.last_error})]})]})}function iet({event:e}){const t=e.severity.toLowerCase(),r=t==="extreme"||t==="severe"||t==="immediate"?{bg:"bg-red-500/10",border:"border-red-500",Icon:su,color:"text-red-500"}:t==="moderate"||t==="warning"||t==="priority"?{bg:"bg-amber-500/10",border:"border-amber-500",Icon:Bs,color:"text-amber-500"}:{bg:"bg-blue-500/10",border:"border-blue-500",Icon:OS,color:"text-blue-500"},n=r.Icon;return y.jsx("div",{className:`p-3 rounded-lg ${r.bg} border-l-2 ${r.border}`,children:y.jsxs("div",{className:"flex items-start gap-3",children:[y.jsx(n,{size:16,className:r.color}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[y.jsx("span",{className:"text-sm font-medium text-slate-200",children:e.event_type}),y.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${r.bg} ${r.color}`,children:e.severity})]}),y.jsx("div",{className:"text-sm text-slate-300",children:e.headline})]})]})})}function iae({value:e,onChange:t,disabled:r,centralDisabled:n}){const i="px-2 py-1 text-xs transition-colors";return y.jsxs("div",{className:`flex rounded border border-[#1e2a3a] overflow-hidden ${r?"opacity-40":""}`,children:[y.jsx("button",{type:"button",disabled:r,onClick:()=>t("native"),className:`${i} ${e==="native"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:"native"}),y.jsx("button",{type:"button",disabled:r||n,title:n?"Central not available for this adapter":"",onClick:()=>{n||t("central")},className:`${i} ${n?"text-slate-600 cursor-not-allowed":e==="central"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:"central"})]})}function aet({title:e,subtitle:t,enabled:r,onEnabled:n,feedSource:i,onFeedSource:a,hasCentral:o,nativeOnly:s,hasKey:l,health:u,events:c,children:f}){const h=s||!o;return y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("div",{children:[y.jsx("span",{className:"text-sm font-medium text-slate-300",children:e}),t&&y.jsx("p",{className:"text-xs text-slate-600",children:t})]}),y.jsxs("div",{className:"flex items-center gap-4",children:[y.jsxs("div",{className:"flex items-center gap-1",children:[y.jsx("span",{className:"text-[10px] uppercase tracking-wide text-slate-600",children:"source"}),y.jsx(iae,{value:i,onChange:a,disabled:!r,centralDisabled:h})]}),y.jsx(yr,{label:"",checked:r,onChange:n})]})]}),!l&&y.jsx("div",{className:"text-xs text-amber-400 bg-amber-500/10 rounded p-2",children:"API key not configured — contact admin"}),s&&y.jsx("div",{className:"text-[11px] text-slate-600",children:"Central not available for this adapter — native only"}),y.jsx("div",{className:r?"space-y-3":"space-y-3 opacity-40 pointer-events-none select-none",children:f}),(u||c&&c.length>0)&&y.jsxs("div",{className:"pt-2 border-t border-[#1e2a3a] space-y-3",children:[y.jsx("div",{className:"text-[10px] uppercase tracking-wide text-slate-600",children:"Live status"}),u?y.jsx(net,{feed:u}):y.jsx("div",{className:"text-xs text-slate-600",children:"No status reported."}),c&&c.length>0&&y.jsx("div",{className:"space-y-2",children:c.slice(0,5).map((d,v)=>y.jsx(iet,{event:d},v))})]})]})}const vl={nws:{label:"NWS Weather Alerts",subtitle:"National Weather Service alerts",health:"nws",hasCentral:!0,nativeOnly:!1,hasKey:!0},fires:{label:"NIFC Fire Perimeters",subtitle:"Active wildfires (National Interagency Fire Center)",health:"nifc",hasCentral:!0,nativeOnly:!1,hasKey:!0},firms:{label:"NASA FIRMS Hotspots",subtitle:"Satellite thermal-anomaly detections",health:"firms",hasCentral:!0,nativeOnly:!1,hasKey:!1},swpc:{label:"NOAA Space Weather (SWPC)",subtitle:"Solar indices, geomagnetic storms",health:"swpc",hasCentral:!0,nativeOnly:!1,hasKey:!0},ducting:{label:"Tropospheric Ducting",subtitle:"VHF/UHF extended-range conditions",health:"ducting",hasCentral:!1,nativeOnly:!0,hasKey:!0},traffic:{label:"TomTom Traffic",subtitle:"Traffic flow on monitored corridors",health:"traffic",hasCentral:!0,nativeOnly:!1,hasKey:!0},roads511:{label:"511 Road Conditions",subtitle:"State DOT road events and closures",health:"roads511",hasCentral:!0,nativeOnly:!1,hasKey:!1},usgs_quake:{label:"USGS Earthquakes",subtitle:"Seismic events from the USGS feed",health:"usgs_quake",hasCentral:!0,nativeOnly:!1,hasKey:!0},usgs:{label:"USGS Stream Gauges",subtitle:"River and stream water levels",health:"usgs",hasCentral:!0,nativeOnly:!1,hasKey:!0},avalanche:{label:"Avalanche Advisories",subtitle:"Backcountry avalanche danger ratings",health:"avalanche",hasCentral:!1,nativeOnly:!0,hasKey:!0}},wP=[{key:"weather",label:"Weather",icon:lu,adapters:["nws"]},{key:"fire",label:"Fire",icon:IS,adapters:["fires","firms"]},{key:"rf",label:"RF Propagation",icon:Ya,adapters:["swpc","ducting"]},{key:"roads",label:"Roads",icon:kS,adapters:["traffic","roads511"]},{key:"geohazards",label:"Geohazards",icon:ES,adapters:["usgs_quake","usgs","avalanche"]},{key:"tracking",label:"Tracking",icon:NS,adapters:[]},{key:"mesh",label:"Mesh Health",icon:gv,adapters:[]}];function oet(){var B,Z;const[e,t]=H.useState(null),[r,n]=H.useState(""),[i,a]=H.useState(null),[o,s]=H.useState([]),[l,u]=H.useState(!0),[c,f]=H.useState(!1),[h,d]=H.useState(null),[v,g]=H.useState(null),[m,x]=H.useState(!1),[_,b]=H.useState("weather"),[S,T]=H.useState("nws");H.useEffect(()=>{document.title="Environment — MeshAI",(async()=>{try{const G=await(await fetch("/api/config/environmental")).json();t(G),n(JSON.stringify(G))}catch(W){d(W instanceof Error?W.message:"Failed to load config")}finally{u(!1)}})()},[]),H.useEffect(()=>{const W=async()=>{try{a(await ZZ()),s(await YZ())}catch{}};W();const G=setInterval(W,3e4);return()=>clearInterval(G)},[]);const C=e!==null&&JSON.stringify(e)!==r,A=async()=>{if(e){f(!0),d(null),g(null);try{const W=await fetch("/api/config/environmental",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),G=await W.json();if(!W.ok)throw new Error(G.detail||"Save failed");n(JSON.stringify(e)),g("Environmental config saved"),G.restart_required&&x(!0),setTimeout(()=>g(null),3e3)}catch(W){d(W instanceof Error?W.message:"Save failed")}finally{f(!1)}}},P=()=>{e&&t(JSON.parse(r))},I=async()=>{try{await fetch("/api/restart",{method:"POST"}),x(!1),g("Restart initiated")}catch{d("Restart failed")}},k=W=>e&&t({...e,...W});if(l)return y.jsx("div",{className:"flex items-center justify-center h-64 text-slate-400",children:"Loading environmental config…"});if(!e)return y.jsx("div",{className:"flex items-center justify-center h-64 text-red-400",children:h||"No config"});const E=W=>i==null?void 0:i.feeds.find(G=>G.source===vl[W].health),D=W=>o.filter(G=>G.source===vl[W].health),N=wP.find(W=>W.key===_),z=N.adapters.length===0?null:S&&N.adapters.includes(S)?S:N.adapters[0],V=W=>{switch(W){case"nws":return y.jsxs(y.Fragment,{children:[y.jsx(Kh,{label:"NWS Zones",value:e.nws_zones,onChange:G=>k({nws_zones:G}),helper:"Zone IDs like IDZ016, IDZ030",infoLink:"https://www.weather.gov/pimar/PubZone"}),y.jsx(xt,{label:"User Agent",value:e.nws.user_agent,onChange:G=>k({nws:{...e.nws,user_agent:G}}),placeholder:"(MeshAI, you@email.com)",helper:"Format: (app_name, contact_email)"}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Tick Seconds",value:e.nws.tick_seconds,onChange:G=>k({nws:{...e.nws,tick_seconds:G}}),min:30}),y.jsx(Lo,{label:"Min Severity",value:e.nws.severity_min,onChange:G=>k({nws:{...e.nws,severity_min:G}}),options:[{value:"minor",label:"Minor"},{value:"moderate",label:"Moderate"},{value:"severe",label:"Severe"},{value:"extreme",label:"Extreme"}]})]})]});case"swpc":return y.jsx("div",{className:"text-xs text-slate-500",children:"No additional settings."});case"ducting":return y.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[y.jsx(rt,{label:"Tick Seconds",value:e.ducting.tick_seconds,onChange:G=>k({ducting:{...e.ducting,tick_seconds:G}}),min:60}),y.jsx(rt,{label:"Latitude",value:e.ducting.latitude,onChange:G=>k({ducting:{...e.ducting,latitude:G}}),step:.01}),y.jsx(rt,{label:"Longitude",value:e.ducting.longitude,onChange:G=>k({ducting:{...e.ducting,longitude:G}}),step:.01})]});case"fires":return y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(rt,{label:"Tick Seconds",value:e.fires.tick_seconds,onChange:G=>k({fires:{...e.fires,tick_seconds:G}}),min:60}),y.jsx(Lo,{label:"State",value:e.fires.state,onChange:G=>k({fires:{...e.fires,state:G}}),options:BQe})]});case"avalanche":return y.jsxs(y.Fragment,{children:[y.jsx(rt,{label:"Tick Seconds",value:e.avalanche.tick_seconds,onChange:G=>k({avalanche:{...e.avalanche,tick_seconds:G}}),min:60}),y.jsx(Kh,{label:"Center IDs",value:e.avalanche.center_ids,onChange:G=>k({avalanche:{...e.avalanche,center_ids:G}}),helper:"e.g., SNFAC",infoLink:"https://avalanche.org/avalanche-centers/"}),y.jsx($Qe,{label:"Season Months",value:e.avalanche.season_months,onChange:G=>k({avalanche:{...e.avalanche,season_months:G}}),helper:"e.g., 12, 1, 2, 3, 4"})]});case"usgs":return y.jsxs(y.Fragment,{children:[y.jsx(rt,{label:"Tick Seconds",value:e.usgs.tick_seconds,onChange:G=>k({usgs:{...e.usgs,tick_seconds:G}}),min:900,helper:"Minimum 15 min (900s)"}),y.jsx(Kh,{label:"Site IDs",value:e.usgs.sites,onChange:G=>k({usgs:{...e.usgs,sites:G}}),helper:"USGS gauge site numbers",infoLink:"https://waterdata.usgs.gov/nwis"})]});case"usgs_quake":return y.jsxs(y.Fragment,{children:[y.jsx(rt,{label:"Tick Seconds",value:e.usgs_quake.tick_seconds,onChange:G=>k({usgs_quake:{...e.usgs_quake,tick_seconds:G}}),min:60}),y.jsx(rt,{label:"Min Magnitude",value:e.usgs_quake.min_magnitude,onChange:G=>k({usgs_quake:{...e.usgs_quake,min_magnitude:G}}),step:.1,min:0}),y.jsx(xt,{label:"Region Tag",value:e.usgs_quake.region,onChange:G=>k({usgs_quake:{...e.usgs_quake,region:G}})}),y.jsx("div",{className:"grid grid-cols-4 gap-2",children:["West","South","East","North"].map((G,Y)=>{var K;return y.jsx(rt,{label:G,value:((K=e.usgs_quake.bbox)==null?void 0:K[Y])??0,onChange:ee=>{const le=[...e.usgs_quake.bbox||[0,0,0,0]];le[Y]=ee,k({usgs_quake:{...e.usgs_quake,bbox:le}})},step:.01},G)})}),y.jsx("div",{className:"text-xs text-slate-500",children:"Bounding box [W,S,E,N] geographic filter"})]});case"traffic":return y.jsxs(y.Fragment,{children:[y.jsx(xt,{label:"API Key",value:e.traffic.api_key,onChange:G=>k({traffic:{...e.traffic,api_key:G}}),type:"password",helper:"developer.tomtom.com"}),y.jsx(rt,{label:"Tick Seconds",value:e.traffic.tick_seconds,onChange:G=>k({traffic:{...e.traffic,tick_seconds:G}}),min:60}),y.jsx("div",{className:"text-xs text-slate-500 mt-2",children:"Corridors:"}),(e.traffic.corridors||[]).map((G,Y)=>y.jsxs("div",{className:"grid grid-cols-4 gap-2 items-end",children:[y.jsx(xt,{label:"Name",value:G.name,onChange:K=>{const ee=[...e.traffic.corridors];ee[Y]={...G,name:K},k({traffic:{...e.traffic,corridors:ee}})}}),y.jsx(rt,{label:"Lat",value:G.lat,onChange:K=>{const ee=[...e.traffic.corridors];ee[Y]={...G,lat:K},k({traffic:{...e.traffic,corridors:ee}})},step:.01}),y.jsx(rt,{label:"Lon",value:G.lon,onChange:K=>{const ee=[...e.traffic.corridors];ee[Y]={...G,lon:K},k({traffic:{...e.traffic,corridors:ee}})},step:.01}),y.jsx("button",{onClick:()=>k({traffic:{...e.traffic,corridors:e.traffic.corridors.filter((K,ee)=>ee!==Y)}}),className:"px-2 py-2 text-xs text-red-400 hover:text-red-300 border border-red-400/30 rounded",children:"Remove"})]},Y)),y.jsx("button",{onClick:()=>k({traffic:{...e.traffic,corridors:[...e.traffic.corridors||[],{name:"",lat:0,lon:0}]}}),className:"text-xs text-accent hover:underline",children:"+ Add Corridor"})]});case"roads511":return y.jsxs(y.Fragment,{children:[y.jsx(xt,{label:"Base URL",value:e.roads511.base_url,onChange:G=>k({roads511:{...e.roads511,base_url:G}}),placeholder:"https://511.yourstate.gov/api/v2"}),y.jsx(xt,{label:"API Key",value:e.roads511.api_key,onChange:G=>k({roads511:{...e.roads511,api_key:G}}),type:"password",helper:"Leave empty if not required"}),y.jsx(rt,{label:"Tick Seconds",value:e.roads511.tick_seconds,onChange:G=>k({roads511:{...e.roads511,tick_seconds:G}}),min:60}),y.jsx(Kh,{label:"Endpoints",value:e.roads511.endpoints,onChange:G=>k({roads511:{...e.roads511,endpoints:G}}),helper:"e.g., /get/event"}),y.jsx("div",{className:"grid grid-cols-4 gap-2",children:["West","South","East","North"].map((G,Y)=>{var K;return y.jsx(rt,{label:G,value:((K=e.roads511.bbox)==null?void 0:K[Y])??0,onChange:ee=>{const le=[...e.roads511.bbox||[0,0,0,0]];le[Y]=ee,k({roads511:{...e.roads511,bbox:le}})},step:.01},G)})})]});case"firms":return y.jsxs(y.Fragment,{children:[y.jsx(xt,{label:"MAP Key",value:e.firms.map_key,onChange:G=>k({firms:{...e.firms,map_key:G}}),type:"password",helper:"firms.modaps.eosdis.nasa.gov/api/area/",infoLink:"https://firms.modaps.eosdis.nasa.gov/api/area/"}),y.jsx(rt,{label:"Tick Seconds",value:e.firms.tick_seconds,onChange:G=>k({firms:{...e.firms,tick_seconds:G}}),min:300}),y.jsx(Lo,{label:"Satellite Source",value:e.firms.source,onChange:G=>k({firms:{...e.firms,source:G}}),options:[{value:"VIIRS_SNPP_NRT",label:"VIIRS SNPP (NRT)"},{value:"VIIRS_NOAA20_NRT",label:"VIIRS NOAA-20 (NRT)"},{value:"MODIS_NRT",label:"MODIS (NRT)"}]}),y.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[y.jsx(rt,{label:"Day Range",value:e.firms.day_range,onChange:G=>k({firms:{...e.firms,day_range:G}}),min:1,max:10}),y.jsx(Lo,{label:"Min Confidence",value:e.firms.confidence_min,onChange:G=>k({firms:{...e.firms,confidence_min:G}}),options:[{value:"low",label:"Low"},{value:"nominal",label:"Nominal"},{value:"high",label:"High"}]}),y.jsx(rt,{label:"Proximity (km)",value:e.firms.proximity_km,onChange:G=>k({firms:{...e.firms,proximity_km:G}}),step:.5})]}),y.jsx("div",{className:"grid grid-cols-4 gap-2",children:["West","South","East","North"].map((G,Y)=>{var K;return y.jsx(rt,{label:G,value:((K=e.firms.bbox)==null?void 0:K[Y])??0,onChange:ee=>{const le=[...e.firms.bbox||[0,0,0,0]];le[Y]=ee,k({firms:{...e.firms,bbox:le}})},step:.01},G)})})]})}},F=e,$=(W,G)=>{const Y=e[W]||{};k({[W]:{...Y,...G}})};return y.jsxs("div",{className:"space-y-6",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsx("h1",{className:"text-xl font-semibold text-slate-200",children:"Environment"}),y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx(yr,{label:"Feeds Enabled",checked:e.enabled,onChange:W=>k({enabled:W})}),C&&y.jsxs(y.Fragment,{children:[y.jsxs("button",{onClick:P,className:"flex items-center gap-1 px-3 py-1.5 text-sm text-slate-400 hover:text-slate-200 border border-border rounded",children:[y.jsx(DS,{size:14})," Discard"]}),y.jsxs("button",{onClick:A,disabled:c,className:"flex items-center gap-1 px-3 py-1.5 text-sm bg-accent text-white rounded disabled:opacity-50",children:[y.jsx(lD,{size:14})," ",c?"Saving…":"Save"]})]})]})]}),h&&y.jsx("div",{className:"text-sm text-red-400 bg-red-500/10 rounded p-3",children:h}),v&&y.jsx("div",{className:"text-sm text-green-400 bg-green-500/10 rounded p-3",children:v}),m&&y.jsxs("div",{className:"flex items-center justify-between text-sm text-amber-400 bg-amber-500/10 border border-amber-500/30 rounded p-3",children:[y.jsxs("span",{className:"flex items-center gap-2",children:[y.jsx(Pm,{size:14})," A restart is required for some changes to take effect."]}),y.jsx("button",{onClick:I,className:"px-3 py-1 bg-amber-500/20 hover:bg-amber-500/30 rounded",children:"Restart now"})]}),e.central&&y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("div",{children:[y.jsx("span",{className:"text-sm font-medium text-slate-300",children:"Central Connection"}),y.jsx("p",{className:"text-xs text-slate-600",children:'NATS JetStream source for any adapter set to "central"'})]}),y.jsx(yr,{label:"",checked:!!e.central.enabled,onChange:W=>k({central:{...e.central,enabled:W}})})]}),y.jsxs("div",{className:e.central.enabled?"space-y-3":"space-y-3 opacity-40 pointer-events-none select-none",children:[y.jsx(xt,{label:"URL",value:e.central.url||"",onChange:W=>k({central:{...e.central,url:W}}),placeholder:"nats://central.echo6.mesh:4222"}),y.jsx(xt,{label:"Durable",value:e.central.durable||"",onChange:W=>k({central:{...e.central,durable:W}}),placeholder:"meshai-v04"}),y.jsx(xt,{label:"Region",value:e.central.region||"",onChange:W=>k({central:{...e.central,region:W}}),placeholder:"us.id",helper:"Central v0.9.20 region token (dotted, e.g. 'us.id'). Empty = bare wildcards (all-US firehose)."})]})]}),y.jsx("div",{className:"flex gap-1 border-b border-border overflow-x-auto",children:wP.map(({key:W,label:G,icon:Y})=>y.jsxs("button",{onClick:()=>{b(W);const K=wP.find(ee=>ee.key===W);T(K.adapters[0]??null)},className:`flex items-center gap-2 px-4 py-2 text-sm whitespace-nowrap border-b-2 -mb-px transition-colors ${_===W?"border-accent text-accent":"border-transparent text-slate-400 hover:text-slate-200"}`,children:[y.jsx(Y,{size:15})," ",G]},W))}),_==="tracking"&&y.jsxs("div",{className:"flex flex-col items-center justify-center h-[40vh] text-center",children:[y.jsx(NS,{size:32,className:"text-slate-600 mb-4"}),y.jsx("p",{className:"text-slate-500 max-w-md",children:"No adapters yet. ADS-B / AIS / satellite passes are planned for v0.5."})]}),_==="mesh"&&y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("div",{children:[y.jsx("span",{className:"text-sm font-medium text-slate-300",children:"Mesh Health"}),y.jsx("p",{className:"text-xs text-slate-600",children:"Node/infra telemetry — sourced from the mesh, not an environmental feed."})]}),y.jsxs("div",{className:"flex items-center gap-1",children:[y.jsx("span",{className:"text-[10px] uppercase tracking-wide text-slate-600",children:"source"}),y.jsx(iae,{value:"native",onChange:()=>{},disabled:!1,centralDisabled:!0})]})]}),y.jsx("div",{className:"text-[11px] text-slate-600",children:"Central not available — reserved for a future migration."})]}),N.adapters.length>0&&z&&y.jsxs(y.Fragment,{children:[N.adapters.length>1&&y.jsx("div",{className:"flex gap-1",children:N.adapters.map(W=>y.jsx("button",{onClick:()=>T(W),className:`px-3 py-1.5 text-sm rounded ${z===W?"bg-bg-hover text-slate-100":"text-slate-400 hover:text-slate-200"}`,children:vl[W].label},W))}),y.jsx(aet,{title:vl[z].label,subtitle:vl[z].subtitle,enabled:((B=F[z])==null?void 0:B.enabled)??!1,onEnabled:W=>$(z,{enabled:W}),feedSource:((Z=F[z])==null?void 0:Z.feed_source)??"native",onFeedSource:W=>$(z,{feed_source:W}),hasCentral:vl[z].hasCentral,nativeOnly:vl[z].nativeOnly,hasKey:vl[z].hasKey,health:E(z),events:D(z),children:V(z)})]})]})}const r7={infra_offline:HZ,infra_recovery:RS,battery_warning:yA,battery_critical:yA,battery_emergency:yA,hf_blackout:km,uhf_ducting:Ya,weather_warning:lu,weather_watch:lu,new_router:Ya,packet_flood:Bs,sustained_high_util:Bs,region_blackout:su,default:Mm};function set(e){return r7[e]||r7.default}function aae(e){switch(e==null?void 0:e.toLowerCase()){case"immediate":return{bg:"bg-red-500/10",border:"border-red-500",badge:"bg-red-500/20 text-red-400",iconColor:"text-red-500"};case"priority":return{bg:"bg-amber-500/10",border:"border-amber-500",badge:"bg-amber-500/20 text-amber-400",iconColor:"text-amber-500"};case"routine":default:return{bg:"bg-blue-500/10",border:"border-blue-500",badge:"bg-blue-500/20 text-blue-400",iconColor:"text-blue-500"}}}function uet(e){const t=typeof e=="number"?new Date(e*1e3):new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/1e3),a=Math.floor(i/60),o=Math.floor(a/60),s=Math.floor(o/24);return i<60?"Just now":a<60?`${a}m ago`:o<24?`${o}h ago`:`${s}d ago`}function cet(e){return(typeof e=="number"?new Date(e*1e3):new Date(e)).toLocaleString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",hour12:!1})}function fet(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:e<86400?`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`:`${Math.floor(e/86400)}d`}function het({alert:e,onAcknowledge:t}){var i;const r=aae(e.severity),n=set(e.type);return y.jsx("div",{className:`p-4 rounded-lg ${r.bg} border-l-4 ${r.border}`,children:y.jsxs("div",{className:"flex items-start gap-3",children:[y.jsx(n,{size:20,className:r.iconColor}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[y.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full ${r.badge}`,children:(i=e.severity)==null?void 0:i.toUpperCase()}),y.jsx("span",{className:"text-xs text-slate-500",children:e.type})]}),y.jsx("div",{className:"text-sm text-slate-200",children:e.message}),y.jsxs("div",{className:"flex items-center gap-4 mt-2 text-xs text-slate-500",children:[y.jsxs("span",{className:"flex items-center gap-1",children:[y.jsx(wd,{size:12}),e.timestamp?uet(e.timestamp):"Just now"]}),e.scope_value&&y.jsxs("span",{children:[e.scope_type,": ",e.scope_value]})]})]}),y.jsx("button",{onClick:()=>t(e),className:"px-3 py-1 text-xs text-slate-400 hover:text-slate-200 border border-border rounded hover:bg-bg-hover transition-colors",children:"Acknowledge"})]})})}function det({history:e,typeFilter:t,severityFilter:r,onTypeFilterChange:n,onSeverityFilterChange:i,page:a,totalPages:o,onPageChange:s}){const l=["all","infra_offline","infra_recovery","battery_warning","battery_critical","hf_blackout","uhf_ducting","weather_warning","new_router","packet_flood"],u=["all","immediate","priority","routine"];return y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg",children:[y.jsxs("div",{className:"p-4 border-b border-border flex items-center gap-4",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx(sD,{size:14,className:"text-slate-400"}),y.jsx("span",{className:"text-sm text-slate-400",children:"Filter:"})]}),y.jsx("select",{value:t,onChange:c=>n(c.target.value),className:"bg-bg border border-border rounded px-3 py-1.5 text-sm text-slate-200 focus:outline-none focus:border-blue-500",children:l.map(c=>y.jsx("option",{value:c,children:c==="all"?"All Types":c.replace(/_/g," ")},c))}),y.jsx("select",{value:r,onChange:c=>i(c.target.value),className:"bg-bg border border-border rounded px-3 py-1.5 text-sm text-slate-200 focus:outline-none focus:border-blue-500",children:u.map(c=>y.jsx("option",{value:c,children:c==="all"?"All Severities":c.charAt(0).toUpperCase()+c.slice(1)},c))})]}),y.jsx("div",{className:"overflow-x-auto",children:y.jsxs("table",{className:"w-full",children:[y.jsx("thead",{children:y.jsxs("tr",{className:"border-b border-border",children:[y.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Time"}),y.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Type"}),y.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Severity"}),y.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Message"}),y.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Duration"})]})}),y.jsx("tbody",{children:e.length>0?e.map((c,f)=>{const h=aae(c.severity);return y.jsxs("tr",{className:"border-b border-border hover:bg-bg-hover",children:[y.jsx("td",{className:"p-4 text-sm text-slate-400 font-mono whitespace-nowrap",children:cet(c.timestamp)}),y.jsx("td",{className:"p-4 text-sm text-slate-300",children:c.type.replace(/_/g," ")}),y.jsx("td",{className:"p-4",children:y.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full ${h.badge}`,children:c.severity})}),y.jsx("td",{className:"p-4 text-sm text-slate-200 max-w-md truncate",children:c.message}),y.jsx("td",{className:"p-4 text-sm text-slate-400 font-mono",children:c.duration?fet(c.duration):"-"})]},c.id||f)}):y.jsx("tr",{children:y.jsx("td",{colSpan:5,className:"p-8 text-center text-slate-500",children:"No alert history available"})})})]})}),o>1&&y.jsxs("div",{className:"p-4 border-t border-border flex items-center justify-between",children:[y.jsxs("span",{className:"text-sm text-slate-400",children:["Page ",a," of ",o]}),y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("button",{onClick:()=>s(a-1),disabled:a<=1,className:"p-2 text-slate-400 hover:text-slate-200 disabled:opacity-50 disabled:cursor-not-allowed",children:y.jsx(fce,{size:16})}),y.jsx("button",{onClick:()=>s(a+1),disabled:a>=o,className:"p-2 text-slate-400 hover:text-slate-200 disabled:opacity-50 disabled:cursor-not-allowed",children:y.jsx(ou,{size:16})})]})]})]})}function vet({subscription:e,nodes:t}){const r=o=>{const s=t.find(l=>l.node_id_hex===o||String(l.node_num)===o||l.short_name===o);return s?s.long_name&&s.long_name!==s.short_name?`${s.short_name} (${s.long_name})`:s.short_name:o},n=()=>{if(e.sub_type==="alerts")return"Real-time";const o=e.schedule_time||"0000",s=parseInt(o.slice(0,2)),l=o.slice(2),u=s>=12?"PM":"AM";let f=`${s%12||12}:${l} ${u}`;return e.sub_type==="weekly"&&e.schedule_day&&(f+=` ${e.schedule_day.charAt(0).toUpperCase()}${e.schedule_day.slice(1)}`),f},a=(()=>{switch(e.sub_type){case"alerts":return Mm;case"daily":return wd;case"weekly":return wd;default:return Mm}})();return y.jsx("div",{className:"p-4 rounded-lg bg-bg-hover border border-border",children:y.jsxs("div",{className:"flex items-center gap-3",children:[y.jsx("div",{className:"w-10 h-10 rounded-lg bg-blue-500/10 flex items-center justify-center",children:y.jsx(a,{size:18,className:"text-blue-400"})}),y.jsxs("div",{className:"flex-1",children:[y.jsxs("div",{className:"text-sm text-slate-200 font-medium",children:[e.sub_type.charAt(0).toUpperCase()+e.sub_type.slice(1),e.scope_type!=="mesh"&&e.scope_value&&y.jsxs("span",{className:"text-slate-400 font-normal ml-2",children:["(",e.scope_type,": ",e.scope_value,")"]})]}),y.jsxs("div",{className:"text-xs text-slate-500 mt-0.5",children:[n()," • ",r(e.user_id)]})]}),y.jsx("div",{className:`w-2 h-2 rounded-full ${e.enabled?"bg-green-500":"bg-slate-500"}`})]})})}function pet(){const[e,t]=H.useState([]),[r,n]=H.useState([]),[i,a]=H.useState([]),[o,s]=H.useState([]),[l,u]=H.useState(!0),[c,f]=H.useState(null),[h,d]=H.useState("all"),[v,g]=H.useState("all"),[m,x]=H.useState(1),[_,b]=H.useState(1),S=20,[T,C]=H.useState(new Set),{lastAlert:A}=uD();H.useEffect(()=>{document.title="Alerts — MeshAI"},[]),H.useEffect(()=>{Promise.all([UZ().catch(()=>[]),TB(S,0).catch(()=>({items:[],total:0})),Pce().catch(()=>[]),fetch("/api/nodes").then(k=>k.json()).catch(()=>[])]).then(([k,E,D,N])=>{t(k),Array.isArray(E)?(n(E),b(1)):(n(E.items||[]),b(Math.ceil((E.total||0)/S))),a(D),s(N),u(!1)}).catch(k=>{f(k.message),u(!1)})},[]),H.useEffect(()=>{A&&t(k=>k.some(D=>D.type===A.type&&D.message===A.message)?k:[A,...k])},[A]),H.useEffect(()=>{const k=(m-1)*S;TB(S,k,h,v).then(E=>{Array.isArray(E)?(n(E),b(1)):(n(E.items||[]),b(Math.ceil((E.total||0)/S)))}).catch(()=>{})},[m,h,v]);const P=H.useCallback(k=>{const E=`${k.type}-${k.message}-${k.timestamp}`;C(D=>new Set([...D,E]))},[]),I=e.filter(k=>{const E=`${k.type}-${k.message}-${k.timestamp}`;return!T.has(E)});return l?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-slate-400",children:"Loading alerts..."})}):c?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsxs("div",{className:"text-red-400",children:["Error: ",c]})}):y.jsxs("div",{className:"space-y-6",children:[y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[y.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[y.jsx(Bs,{size:14}),"Active Alerts (",I.length,")"]}),I.length>0?y.jsx("div",{className:"space-y-3",children:I.map((k,E)=>y.jsx(het,{alert:k,onAcknowledge:P},`${k.type}-${k.timestamp}-${E}`))}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-8",children:[y.jsx(aD,{size:20,className:"text-green-500"}),y.jsx("span",{children:"No active alerts — all systems nominal"})]})]}),y.jsxs("div",{children:[y.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[y.jsx(wd,{size:14}),"Alert History"]}),y.jsx(det,{history:r,typeFilter:h,severityFilter:v,onTypeFilterChange:k=>{d(k),x(1)},onSeverityFilterChange:k=>{g(k),x(1)},page:m,totalPages:_,onPageChange:x})]}),y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[y.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[y.jsx(Sce,{size:14}),"Mesh Subscriptions (",i.length,")"]}),i.length>0?y.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-3",children:i.map(k=>y.jsx(vet,{subscription:k,nodes:o},k.id))}):y.jsxs("div",{className:"text-slate-500 py-4",children:[y.jsx("p",{children:"No active subscriptions."}),y.jsxs("p",{className:"text-xs mt-2",children:["Manage subscriptions via ",y.jsx("code",{className:"text-blue-400",children:"!subscribe"})," on mesh"]})]})]})]})}const Tb=[{value:"routine",label:"Routine",description:"Informational, no time pressure (ducting, new node, weather advisory, battery declining)"},{value:"priority",label:"Priority",description:"Needs attention soon (severe weather, fire nearby, node offline, HF blackout)"},{value:"immediate",label:"Immediate",description:"Act now, drop everything (fire at infrastructure, extreme weather, region blackout)"}],n7=[{id:"mesh_health",name:"Mesh Health Monitoring",description:"Infrastructure problems - offline nodes, low battery, channel congestion",rule:{name:"Mesh Health Monitoring",enabled:!0,trigger_type:"condition",categories:["infra_offline","critical_node_down","infra_recovery","battery_warning","battery_critical","battery_emergency","high_utilization","packet_flood","mesh_score_low"],min_severity:"routine",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:30,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"weather_fire",name:"Weather & Fire Alerts",description:"Environmental threats - severe weather, nearby wildfires, new ignitions, flooding",rule:{name:"Weather & Fire Alerts",enabled:!0,trigger_type:"condition",categories:["weather_warning","fire_proximity","new_ignition","stream_flood_warning"],min_severity:"priority",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:15,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"rf_conditions",name:"RF Conditions",description:"Propagation changes - solar events, HF blackouts, tropospheric ducting",rule:{name:"RF Conditions",enabled:!0,trigger_type:"condition",categories:["hf_blackout","tropospheric_ducting","geomagnetic_storm"],min_severity:"routine",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:60,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"road_traffic",name:"Road & Traffic",description:"Road closures and severe congestion",rule:{name:"Road & Traffic",enabled:!0,trigger_type:"condition",categories:["road_closure","traffic_congestion"],min_severity:"routine",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:30,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"everything_critical",name:"Everything Critical",description:"All emergency-level events regardless of type",rule:{name:"Everything Critical",enabled:!0,trigger_type:"condition",categories:[],min_severity:"immediate",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:5,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"morning_briefing",name:"Morning Briefing",description:"Daily health and conditions summary at 7am",rule:{name:"Morning Briefing",enabled:!0,trigger_type:"schedule",categories:[],min_severity:"routine",schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"mesh_health_summary",custom_message:"",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:0,node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}}];function G_(e){if(!e)return"Never";const r=Date.now()/1e3-e;return r<60?"Just now":r<3600?`${Math.floor(r/60)}m ago`:r<86400?`${Math.floor(r/3600)}h ago`:r<604800?`${Math.floor(r/86400)}d ago`:new Date(e*1e3).toLocaleDateString()}function ia({info:e}){const[t,r]=H.useState(!1);return y.jsxs("div",{className:"relative inline-block",children:[y.jsx("button",{type:"button",onClick:n=>{n.stopPropagation(),r(!t)},className:"ml-1.5 w-4 h-4 rounded-full bg-slate-700 hover:bg-slate-600 text-slate-400 hover:text-slate-200 inline-flex items-center justify-center text-xs transition-colors",title:"More info",children:"?"}),t&&y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>r(!1)}),y.jsx("div",{className:"absolute left-0 top-6 z-50 w-72 p-3 bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl text-xs text-slate-300 leading-relaxed",children:e})]})]})}function Tl({label:e,value:t,onChange:r,type:n="text",placeholder:i="",helper:a="",info:o=""}){const[s,l]=H.useState(!1),u=n==="password";return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,o&&y.jsx(ia,{info:o})]}),y.jsxs("div",{className:"relative",children:[y.jsx("input",{type:u&&!s?"password":"text",value:t,onChange:c=>r(c.target.value),placeholder:i,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),u&&y.jsx("button",{type:"button",onClick:()=>l(!s),className:"absolute right-2 top-1/2 -translate-y-1/2 text-slate-500 hover:text-slate-300",children:s?y.jsx(RZ,{size:16}):y.jsx(oD,{size:16})})]}),a&&y.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function Wy({label:e,value:t,onChange:r,min:n,max:i,step:a=1,helper:o="",info:s=""}){return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,s&&y.jsx(ia,{info:s})]}),y.jsx("input",{type:"number",value:t,onChange:l=>r(Number(l.target.value)),min:n,max:i,step:a,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),o&&y.jsx("p",{className:"text-xs text-slate-600",children:o})]})}function fS({label:e,checked:t,onChange:r,helper:n="",info:i=""}){return y.jsxs("div",{className:"flex items-center justify-between py-2",children:[y.jsxs("div",{children:[y.jsxs("span",{className:"flex items-center text-sm text-slate-300",children:[e,i&&y.jsx(ia,{info:i})]}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]}),y.jsx("button",{type:"button",onClick:()=>r(!t),className:`relative w-11 h-6 rounded-full transition-colors ${t?"bg-accent":"bg-[#1e2a3a]"}`,children:y.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${t?"translate-x-5":""}`})})]})}function sm({label:e,value:t,onChange:r,helper:n="",info:i=""}){return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&y.jsx(ia,{info:i})]}),y.jsx("input",{type:"time",value:t,onChange:a=>r(a.target.value),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent"}),n&&y.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function Cb({label:e,value:t,onChange:r,placeholder:n="Add item...",helper:i="",info:a=""}){const[o,s]=H.useState(""),l=()=>{o.trim()&&!t.includes(o.trim())&&(r([...t,o.trim()]),s(""))},u=c=>{r(t.filter((f,h)=>h!==c))};return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&y.jsx(ia,{info:a})]}),y.jsxs("div",{className:"flex gap-2",children:[y.jsx("input",{type:"text",value:o,onChange:c=>s(c.target.value),onKeyDown:c=>c.key==="Enter"&&(c.preventDefault(),l()),className:"flex-1 px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent",placeholder:n}),y.jsx("button",{type:"button",onClick:l,className:"px-3 py-2 bg-accent hover:bg-accent/80 rounded text-sm text-white transition-colors",children:y.jsx(yv,{size:16})})]}),t.length>0&&y.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:t.map((c,f)=>y.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 bg-[#1e2a3a] rounded text-sm text-slate-300",children:[c,y.jsx("button",{type:"button",onClick:()=>u(f),className:"text-slate-500 hover:text-red-400",children:y.jsx(Xa,{size:14})})]},f))}),i&&y.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function oae({value:e,onChange:t}){const[r,n]=H.useState(!1),i=Tb.find(a=>a.value===e)||Tb[0];return y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Severity Threshold",y.jsx(ia,{info:"Only alerts at or above this severity trigger this rule. ROUTINE = informational, PRIORITY = needs attention, IMMEDIATE = act now."})]}),y.jsxs("div",{className:"relative",children:[y.jsxs("button",{type:"button",onClick:()=>n(!r),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-left flex items-center justify-between hover:border-accent transition-colors",children:[y.jsxs("div",{children:[y.jsx("span",{className:"text-slate-200",children:i.label}),y.jsxs("span",{className:"text-slate-500 ml-2",children:["- ",i.description]})]}),y.jsx(yu,{size:16,className:`text-slate-500 transition-transform ${r?"rotate-180":""}`})]}),r&&y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>n(!1)}),y.jsx("div",{className:"absolute left-0 right-0 top-full mt-1 z-50 bg-[#0a0e17] border border-[#1e2a3a] rounded-lg shadow-xl overflow-hidden",children:Tb.map(a=>y.jsxs("button",{type:"button",onClick:()=>{t(a.value),n(!1)},className:`w-full px-3 py-2.5 text-left text-sm hover:bg-[#1e2a3a] transition-colors ${e===a.value?"bg-accent/10":""}`,children:[y.jsx("div",{className:"font-medium text-slate-200",children:a.label}),y.jsx("div",{className:"text-xs text-slate-500",children:a.description})]},a.value))})]})]}),y.jsx("p",{className:"text-xs text-slate-600",children:'Lower = more notifications. "Warning" recommended for most rules.'})]})}function W_({rule:e}){const[t,r]=H.useState(!1),[n,i]=H.useState(null),a=async()=>{r(!0),i(null);try{let s={type:e.delivery_type};e.delivery_type==="mesh_broadcast"?s.channel_index=e.broadcast_channel:e.delivery_type==="mesh_dm"?s.node_ids=e.node_ids:e.delivery_type==="email"?s={type:"email",smtp_host:e.smtp_host,smtp_port:e.smtp_port,smtp_user:e.smtp_user,smtp_password:e.smtp_password,smtp_tls:e.smtp_tls,from_address:e.from_address,recipients:e.recipients}:e.delivery_type==="webhook"&&(s={type:"webhook",url:e.webhook_url,headers:e.webhook_headers});const u=await(await fetch("/api/notifications/channels/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)})).json();i(u)}catch(s){i({success:!1,message:"Test failed",error:s instanceof Error?s.message:"Unknown error",details:{}})}finally{r(!1)}};if(!e.delivery_type)return null;const o={mesh_broadcast:y.jsx(Ya,{size:14}),mesh_dm:y.jsx($Z,{size:14}),email:y.jsx(yce,{size:14}),webhook:y.jsx(mce,{size:14})}[e.delivery_type]||y.jsx(RS,{size:14});return y.jsxs("div",{className:"space-y-2",children:[y.jsx("button",{type:"button",onClick:a,disabled:t,className:"flex items-center gap-2 px-3 py-1.5 bg-slate-700 hover:bg-slate-600 rounded text-sm disabled:opacity-50",children:t?y.jsxs(y.Fragment,{children:[y.jsx(Pm,{size:14,className:"animate-spin"}),"Testing..."]}):y.jsxs(y.Fragment,{children:[o,"Test Channel"]})}),n&&y.jsx("div",{className:`p-2 rounded text-xs ${n.success?"bg-green-500/10 border border-green-500/30 text-green-400":"bg-red-500/10 border border-red-500/30 text-red-400"}`,children:y.jsxs("div",{className:"flex items-start gap-2",children:[n.success?y.jsx(zo,{size:14,className:"mt-0.5 flex-shrink-0"}):y.jsx(Xa,{size:14,className:"mt-0.5 flex-shrink-0"}),y.jsxs("div",{children:[y.jsx("div",{className:"font-medium",children:n.message}),n.error&&y.jsx("div",{className:"mt-1 text-red-300",children:n.error})]})]})})]})}function get({rule:e,ruleIndex:t,categories:r,regions:n,onChange:i,onDelete:a,onDuplicate:o,onTest:s}){var D,N,z,V,F;const[l,u]=H.useState(!e.name),[c,f]=H.useState(!1),[h,d]=H.useState(null),[v,g]=H.useState(null);H.useEffect(()=>{var $;e.name&&t>=0&&(fetch(`/api/notifications/rules/${t}/stats`).then(B=>B.json()).then(B=>d(B)).catch(()=>{}),($=e.categories)!=null&&$.length&&fetch("/api/notifications/rules/sources",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({categories:e.categories})}).then(B=>B.json()).then(B=>g(B)).catch(()=>{}))},[e.name,t,e.categories]);const m=[{value:"",label:"(None)",description:"Rule matches but does not deliver"},{value:"mesh_broadcast",label:"Mesh Broadcast",description:"Send to a mesh radio channel"},{value:"mesh_dm",label:"Mesh DM",description:"Direct message to specific nodes"},{value:"email",label:"Email",description:"Send via SMTP"},{value:"webhook",label:"Webhook",description:"POST to any URL"}],x=[{value:"daily",label:"Daily"},{value:"twice_daily",label:"Twice Daily"},{value:"weekly",label:"Weekly"}],_=[{value:"mesh_health_summary",label:"Mesh Health Summary",description:"Current health score, pillar breakdown, problem nodes"},{value:"rf_propagation_report",label:"RF Propagation Report",description:"Solar indices, Kp, ducting conditions"},{value:"alerts_digest",label:"Active Alerts Digest",description:"Summary of all active environmental alerts"},{value:"environmental_conditions",label:"Environmental Conditions",description:"Full conditions: weather, fire, streams, roads"},{value:"custom",label:"Custom Message",description:"Write your own with template tokens"}],b=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],S=$=>{const B=e.categories||[];B.includes($)?i({...e,categories:B.filter(Z=>Z!==$)}):i({...e,categories:[...B,$]})},T=($,B)=>{const Z=e.categories||[];if(B==="add"){const W=Array.from(new Set([...Z,...$]));i({...e,categories:W})}else{const W=new Set($);i({...e,categories:Z.filter(G=>!W.has(G))})}},C=$=>{const B=e.region_scope||[];B.includes($)?i({...e,region_scope:B.filter(Z=>Z!==$)}):i({...e,region_scope:[...B,$]})},A=$=>{const B=e.schedule_days||[];B.includes($)?i({...e,schedule_days:B.filter(Z=>Z!==$)}):i({...e,schedule_days:[...B,$]})},P=async()=>{f(!0),await s(),f(!1)},I=()=>{if(e.trigger_type==="schedule")return"[Scheduled report preview would appear here]";const $=e.categories||[];if($.length===0&&r.length>0)return r[0].example_message||"Alert notification";const B=r.find(Z=>$.includes(Z.id));return(B==null?void 0:B.example_message)||"Alert notification"},k=()=>{var B,Z,W,G,Y,K,ee,le;const $=[];if(e.trigger_type==="schedule"){const fe=((B=x.find(me=>me.value===e.schedule_frequency))==null?void 0:B.label)||e.schedule_frequency,De=((Z=_.find(me=>me.value===e.message_type))==null?void 0:Z.label)||e.message_type;$.push(`${fe} at ${e.schedule_time||"??:??"}`),$.push(De)}else{const fe=((W=e.categories)==null?void 0:W.length)||0,De=fe===0?"All":r.filter(ie=>{var he;return(he=e.categories)==null?void 0:he.includes(ie.id)}).map(ie=>ie.name).slice(0,2).join(", ")+(fe>2?` +${fe-2}`:""),me=((G=Tb.find(ie=>ie.value===e.min_severity))==null?void 0:G.label)||e.min_severity;$.push(`${De} at ${me}+`)}if(!e.delivery_type)$.push("No delivery");else{const fe=((Y=m.find(me=>me.value===e.delivery_type))==null?void 0:Y.label)||e.delivery_type;let De="";if(e.delivery_type==="mesh_broadcast")De=`Ch ${e.broadcast_channel}`;else if(e.delivery_type==="mesh_dm")De=`${((K=e.node_ids)==null?void 0:K.length)||0} nodes`;else if(e.delivery_type==="email")De=(ee=e.recipients)!=null&&ee.length?e.recipients[0]+(e.recipients.length>1?` +${e.recipients.length-1}`:""):"no recipients";else if(e.delivery_type==="webhook")try{De=new URL(e.webhook_url).hostname}catch{De=((le=e.webhook_url)==null?void 0:le.slice(0,20))||"no URL"}$.push(`${fe}${De?` (${De})`:""}`)}return $.join(" -> ")},E=()=>{var B;if(!v||!((B=e.categories)!=null&&B.length))return null;const $=new Map;for(const[,Z]of Object.entries(v)){const W=$.get(Z.source);W?(W.events+=Z.active_events,W.enabled=W.enabled&&Z.enabled):$.set(Z.source,{enabled:Z.enabled,events:Z.active_events})}return Array.from($.entries()).map(([Z,{enabled:W,events:G}])=>y.jsxs("span",{className:`inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-xs ${W?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,title:W?`${G} active`:"Not enabled",children:[W?y.jsx(RS,{size:10}):y.jsx(HZ,{size:10}),Z.toUpperCase(),W&&G>0&&` (${G})`]},Z))};return y.jsxs("div",{className:`border rounded-lg overflow-hidden ${e.enabled?"border-[#1e2a3a]":"border-slate-700 opacity-60"}`,children:[y.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>u(!l),children:[y.jsxs("div",{className:"flex items-center gap-3 min-w-0 flex-1",children:[l?y.jsx(yu,{size:16,className:"text-slate-500 flex-shrink-0"}):y.jsx(ou,{size:16,className:"text-slate-500 flex-shrink-0"}),y.jsx("button",{onClick:$=>{$.stopPropagation(),i({...e,enabled:!e.enabled})},className:`w-2 h-2 rounded-full flex-shrink-0 ${e.enabled?"bg-green-500":"bg-slate-500"}`,title:e.enabled?"Enabled":"Disabled"}),e.trigger_type==="schedule"?y.jsx(wd,{size:14,className:"text-blue-400 flex-shrink-0"}):y.jsx(km,{size:14,className:"text-yellow-400 flex-shrink-0"}),y.jsx("span",{className:"font-medium text-slate-200 truncate",title:e.name||void 0,children:e.name||"New Rule"}),!l&&y.jsx("span",{className:`text-xs truncate hidden sm:block ${e.delivery_type?"text-slate-500":"text-amber-400"}`,children:k()})]}),y.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[!l&&(()=>{const $="hidden sm:inline-flex items-center gap-1 px-2 py-0.5 rounded text-xs mr-2";if(!e.enabled)return y.jsx("span",{className:`${$} bg-slate-800 text-slate-500`,children:"Disabled"});if(!h)return null;const B=h.fire_count||0,Z=h.last_fired,W=Date.now()/1e3-7*86400;return B>0&&Z&&Z>=W?y.jsx("span",{className:`${$} bg-green-500/10 text-green-400`,title:`Last fired ${G_(Z)}`,children:"Active"}):B>0&&Z?y.jsx("span",{className:`${$} bg-yellow-500/10 text-yellow-400`,title:`Last fired ${G_(Z)}`,children:"Idle (no recent activity)"}):y.jsx("span",{className:`${$} bg-slate-800 text-slate-400`,children:"No activity yet"})})(),!l&&y.jsx("div",{className:"hidden md:flex items-center gap-1 mr-2",children:E()}),y.jsx("button",{onClick:$=>{$.stopPropagation(),P()},disabled:c||!e.name,className:"p-1.5 text-blue-400 hover:text-blue-300 hover:bg-blue-500/10 rounded disabled:opacity-50",title:"Test rule",children:y.jsx(wB,{size:14})}),y.jsx("button",{onClick:$=>{$.stopPropagation(),o()},className:"p-1.5 text-slate-400 hover:text-slate-200 hover:bg-slate-500/10 rounded",title:"Duplicate",children:y.jsx(pce,{size:14})}),y.jsx("button",{onClick:$=>{$.stopPropagation(),a()},className:"p-1.5 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",title:"Delete",children:y.jsx(Jy,{size:14})})]})]}),!l&&e.name&&y.jsxs("div",{className:"px-3 pb-2 pt-0 bg-[#0a0e17] flex items-center gap-2 flex-wrap text-xs",children:[!e.delivery_type&&y.jsxs("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 bg-amber-500/10 text-amber-400 rounded",children:[y.jsx(su,{size:10}),"No delivery method"]}),(h==null?void 0:h.fire_count)!==void 0&&h.fire_count>0&&y.jsxs("span",{className:"text-slate-500",children:["Fired ",h.fire_count,"x"]})]}),l&&y.jsxs("div",{className:"p-4 space-y-6 border-t border-[#1e2a3a]",children:[y.jsx(Tl,{label:"Rule Name",value:e.name,onChange:$=>i({...e,name:$}),placeholder:"e.g., Emergency Broadcast, Daily Health Report",helper:"A descriptive name for this rule"}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Trigger Type"}),y.jsxs("div",{className:"flex gap-2",children:[y.jsxs("button",{type:"button",onClick:()=>i({...e,trigger_type:"condition"}),className:`flex-1 flex items-center justify-center gap-2 px-4 py-3 rounded-lg border transition-colors ${e.trigger_type!=="schedule"?"bg-accent/10 border-accent text-accent":"bg-[#0a0e17] border-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:[y.jsx(km,{size:16}),y.jsx("span",{children:"Condition"})]}),y.jsxs("button",{type:"button",onClick:()=>i({...e,trigger_type:"schedule"}),className:`flex-1 flex items-center justify-center gap-2 px-4 py-3 rounded-lg border transition-colors ${e.trigger_type==="schedule"?"bg-accent/10 border-accent text-accent":"bg-[#0a0e17] border-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:[y.jsx(wd,{size:16}),y.jsx("span",{children:"Schedule"})]})]}),y.jsx("p",{className:"text-xs text-slate-600",children:e.trigger_type==="schedule"?"Send reports on a schedule (daily briefings, weekly digests)":"React to alert conditions (fires, outages, weather warnings)"})]}),e.trigger_type!=="schedule"&&y.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[y.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[y.jsx(Bs,{size:14}),"WHEN (Condition)"]}),y.jsx(oae,{value:e.min_severity,onChange:$=>i({...e,min_severity:$})}),y.jsxs("div",{className:"space-y-2",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Alert Categories",y.jsx(ia,{info:"Select which types of alerts trigger this rule. Leave all unchecked to match ALL categories. Categories are grouped by family — use the 'All' / 'Clear' buttons in each header to bulk-toggle."})]}),y.jsx("div",{className:"text-xs text-slate-500 mb-2",children:(((D=e.categories)==null?void 0:D.length)||0)===0?"All categories (none selected)":`${(N=e.categories)==null?void 0:N.length} selected`}),y.jsx(met,{categories:r,selected:e.categories||[],onToggle:S,onSelectMany:T})]}),v&&Object.keys(v).length>0&&y.jsxs("div",{className:"space-y-2",children:[y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Data Sources"}),y.jsx("div",{className:"flex flex-wrap gap-2",children:E()})]})]}),e.trigger_type==="schedule"&&y.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[y.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[y.jsx(cce,{size:14}),"WHEN (Schedule)"]}),y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Frequency"}),y.jsx("select",{value:e.schedule_frequency||"daily",onChange:$=>i({...e,schedule_frequency:$.target.value}),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:x.map($=>y.jsx("option",{value:$.value,children:$.label},$.value))})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(sm,{label:"Time",value:e.schedule_time||"07:00",onChange:$=>i({...e,schedule_time:$})}),e.schedule_frequency==="twice_daily"&&y.jsx(sm,{label:"Second Time",value:e.schedule_time_2||"19:00",onChange:$=>i({...e,schedule_time_2:$})})]}),e.schedule_frequency==="weekly"&&y.jsxs("div",{className:"space-y-2",children:[y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Days"}),y.jsx("div",{className:"flex flex-wrap gap-2",children:b.map($=>{var B;return y.jsx("button",{type:"button",onClick:()=>A($),className:`px-3 py-1.5 rounded text-sm capitalize transition-colors ${(B=e.schedule_days)!=null&&B.includes($)?"bg-accent text-white":"bg-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:$.slice(0,3)},$)})})]}),y.jsxs("div",{className:"space-y-1",children:[y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Report Type"}),y.jsx("select",{value:e.message_type||"mesh_health_summary",onChange:$=>i({...e,message_type:$.target.value}),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:_.map($=>y.jsx("option",{value:$.value,children:$.label},$.value))}),y.jsx("p",{className:"text-xs text-slate-600",children:(z=_.find($=>$.value===e.message_type))==null?void 0:z.description})]}),e.message_type==="custom"&&y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Custom Message",y.jsx(ia,{info:"Available tokens: {MESH_SCORE}, {NODE_COUNT}, {NODES_ONLINE}, {ACTIVE_ALERTS}, {KP}, {SFI}, {DATE}, {TIME}"})]}),y.jsx("textarea",{value:e.custom_message||"",onChange:$=>i({...e,custom_message:$.target.value}),rows:4,placeholder:"Good morning! Mesh health: {MESH_SCORE}/100 with {NODE_COUNT} nodes online.",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"})]})]}),y.jsxs("div",{className:"space-y-2 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[y.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[y.jsx(mv,{size:14}),"REGIONS",y.jsx(ia,{info:"Limit this rule to alerts from specific regions. Empty selection = all regions (backward compatible). Region names come from /api/regions."})]}),y.jsx("div",{className:"text-xs text-slate-500",children:(((V=e.region_scope)==null?void 0:V.length)||0)===0?"All regions (none selected)":`${e.region_scope.length} of ${n.length} selected`}),n.length===0?y.jsx("div",{className:"text-xs text-slate-600 italic",children:"No regions configured."}):y.jsx("div",{className:"flex flex-wrap gap-2",children:n.map($=>{const B=(e.region_scope||[]).includes($.name);return y.jsx("button",{type:"button",onClick:()=>C($.name),className:`px-3 py-1.5 rounded text-sm transition-colors ${B?"bg-accent text-white":"bg-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,title:$.local_name||$.name,children:$.local_name||$.name},$.name)})})]}),y.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[y.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[y.jsx(wB,{size:14}),"SEND VIA"]}),y.jsxs("div",{className:"space-y-1",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Delivery Method",y.jsx(ia,{info:"Where this notification gets delivered. Select (None) to save the rule without delivery - it will match conditions but won't send until you configure a delivery method."})]}),y.jsx("select",{value:e.delivery_type||"",onChange:$=>i({...e,delivery_type:$.target.value}),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:m.map($=>y.jsx("option",{value:$.value,children:$.label},$.value))}),y.jsx("p",{className:"text-xs text-slate-600",children:(F=m.find($=>$.value===(e.delivery_type||"")))==null?void 0:F.description})]}),!e.delivery_type&&y.jsxs("div",{className:"flex items-start gap-2 p-3 bg-amber-500/10 border border-amber-500/20 rounded-lg",children:[y.jsx(su,{size:16,className:"text-amber-400 mt-0.5 flex-shrink-0"}),y.jsx("div",{className:"text-sm text-amber-300",children:"Rule will log matches but not deliver until a delivery method is configured."})]}),e.delivery_type==="mesh_broadcast"&&y.jsxs(y.Fragment,{children:[y.jsx(QR,{label:"Broadcast Channel",value:e.broadcast_channel??0,onChange:$=>i({...e,broadcast_channel:$}),helper:"Select the mesh radio channel",mode:"single"}),y.jsx(W_,{rule:e})]}),e.delivery_type==="mesh_dm"&&y.jsxs(y.Fragment,{children:[y.jsx(JR,{label:"Recipient Nodes",value:e.node_ids||[],onChange:$=>i({...e,node_ids:$}),helper:"Nodes that receive direct messages",valueType:"node_id_hex"}),y.jsx(W_,{rule:e})]}),e.delivery_type==="email"&&y.jsxs("div",{className:"space-y-4",children:[y.jsx(Cb,{label:"Recipients",value:e.recipients||[],onChange:$=>i({...e,recipients:$}),placeholder:"email@example.com",helper:"Email addresses to receive alerts"}),y.jsxs("details",{className:"group",children:[y.jsxs("summary",{className:"flex items-center gap-2 cursor-pointer text-sm text-slate-400 hover:text-slate-200",children:[y.jsx(ou,{size:14,className:"group-open:rotate-90 transition-transform"}),"SMTP Configuration"]}),y.jsxs("div",{className:"mt-4 space-y-4 pl-6 border-l border-[#1e2a3a]",children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Tl,{label:"SMTP Host",value:e.smtp_host||"",onChange:$=>i({...e,smtp_host:$}),placeholder:"smtp.gmail.com"}),y.jsx(Wy,{label:"SMTP Port",value:e.smtp_port??587,onChange:$=>i({...e,smtp_port:$}),min:1,max:65535})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Tl,{label:"Username",value:e.smtp_user||"",onChange:$=>i({...e,smtp_user:$})}),y.jsx(Tl,{label:"Password",value:e.smtp_password||"",onChange:$=>i({...e,smtp_password:$}),type:"password",info:"Gmail users: use an App Password from myaccount.google.com/apppasswords"})]}),y.jsx(fS,{label:"Use TLS",checked:e.smtp_tls??!0,onChange:$=>i({...e,smtp_tls:$})}),y.jsx(Tl,{label:"From Address",value:e.from_address||"",onChange:$=>i({...e,from_address:$}),placeholder:"alerts@yourdomain.com"})]})]}),y.jsx(W_,{rule:e})]}),e.delivery_type==="webhook"&&y.jsxs(y.Fragment,{children:[y.jsx(Tl,{label:"Webhook URL",value:e.webhook_url||"",onChange:$=>i({...e,webhook_url:$}),placeholder:"https://discord.com/api/webhooks/...",helper:"POST alert as JSON",info:"Works with Discord webhooks, ntfy.sh, Slack, Home Assistant, Pushover, or any HTTP POST endpoint."}),y.jsx(W_,{rule:e})]})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Wy,{label:"Cooldown (minutes)",value:e.cooldown_minutes??10,onChange:$=>i({...e,cooldown_minutes:$}),min:0,helper:"Min time between repeat sends",info:"Prevents alert spam. Same condition won't re-trigger this rule within this window."})," "]}),h&&y.jsxs("div",{className:"flex items-center gap-4 text-xs text-slate-500",children:[y.jsxs("span",{children:["Last fired: ",G_(h.last_fired)]}),y.jsxs("span",{children:["Last tested: ",G_(h.last_test)]}),y.jsxs("span",{children:["Total fires: ",h.fire_count]})]}),e.trigger_type!=="schedule"&&y.jsxs("div",{className:"space-y-2",children:[y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Example Message"}),y.jsx("div",{className:"p-3 bg-[#1e2a3a]/50 rounded-lg border border-[#1e2a3a]",children:y.jsx("p",{className:"text-sm text-slate-300 font-mono",children:I()})}),y.jsx("p",{className:"text-xs text-slate-600",children:"This is an example of what this rule would send."})]})]})]})}const Ab=[{key:"mesh_health",label:"Mesh Health",Icon:gv},{key:"weather",label:"Weather",Icon:lu},{key:"fire",label:"Fire",Icon:IS},{key:"rf_propagation",label:"RF Propagation",Icon:Ya},{key:"roads",label:"Roads",Icon:kS},{key:"avalanche",label:"Avalanche",Icon:wce},{key:"seismic",label:"Seismic",Icon:ES},{key:"tracking",label:"Tracking",Icon:mv}];function met({categories:e,selected:t,onToggle:r,onSelectMany:n}){const i=new Set(Ab.map(h=>h.key)),a=new Map;Ab.forEach(h=>a.set(h.key,[]));const o=[];for(const h of e){const d=h.toggle;d&&i.has(d)?a.get(d).push(h):o.push(h)}const s=new Set;for(const[h,d]of a)d.some(v=>t.includes(v.id))&&s.add(h);o.some(h=>t.includes(h.id))&&s.add("other");const[l,u]=H.useState(s),c=h=>{u(d=>{const v=new Set(d);return v.has(h)?v.delete(h):v.add(h),v})},f=(h,d,v,g)=>{if(!g.length)return null;const m=l.has(h),x=g.map(b=>b.id),_=x.filter(b=>t.includes(b)).length;return y.jsxs("div",{className:"border border-[#1e2a3a] rounded",children:[y.jsxs("div",{className:"flex items-center justify-between px-2 py-1.5 bg-[#0d1420]",children:[y.jsxs("button",{type:"button",onClick:()=>c(h),className:"flex items-center gap-2 text-sm text-slate-200 flex-1 min-w-0",children:[m?y.jsx(yu,{size:14,className:"text-slate-500 flex-shrink-0"}):y.jsx(ou,{size:14,className:"text-slate-500 flex-shrink-0"}),v&&y.jsx(v,{size:14,className:"text-slate-400 flex-shrink-0"}),y.jsxs("span",{className:"truncate",children:[d," (",g.length,")"]}),_>0&&y.jsxs("span",{className:"ml-1 text-xs text-accent",children:[_," selected"]})]}),y.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[y.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),n(x,"add")},className:"text-xs px-2 py-0.5 rounded text-slate-400 hover:text-accent hover:bg-accent/10",title:"Select all in family",children:"All"}),y.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),n(x,"remove")},className:"text-xs px-2 py-0.5 rounded text-slate-400 hover:text-red-400 hover:bg-red-500/10",title:"Clear family",children:"Clear"})]})]}),m&&y.jsx("div",{className:"p-1 space-y-1",children:g.map(b=>y.jsxs("label",{onClick:()=>r(b.id),className:"flex items-start gap-2 p-2 rounded hover:bg-[#1e2a3a]/50 cursor-pointer",children:[y.jsx("div",{className:`w-4 h-4 mt-0.5 rounded border flex items-center justify-center flex-shrink-0 ${t.includes(b.id)?"bg-accent border-accent":"border-slate-600"}`,children:t.includes(b.id)&&y.jsx(zo,{size:12,className:"text-white"})}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsx("div",{className:"text-sm text-slate-200",children:b.name}),y.jsx("div",{className:"text-xs text-slate-500",children:b.description})]})]},b.id))})]},h)};return y.jsxs("div",{className:"max-h-96 overflow-y-auto border border-[#1e2a3a] rounded-lg p-2 space-y-2",children:[Ab.map(h=>f(h.key,h.label,h.Icon,a.get(h.key)||[])),f("other","Other",null,o)]})}const i7=["digest","mesh_broadcast","mesh_dm","email","webhook"],yet=["routine","priority","immediate"];function xet({toggles:e,onChange:t}){const[r,n]=H.useState(null),i=(a,o)=>t({...e,[a]:{...e[a]||{},name:a,...o}});return y.jsxs("div",{className:"space-y-3 mb-8",children:[y.jsxs("div",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Master Toggles",y.jsx(ia,{info:"Per-family notification policy: enable a family, set its severity threshold, choose which channels fire at each severity, and scope to regions (PagerDuty/Grafana-style)."})]}),y.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:Ab.map(({key:a,label:o,Icon:s})=>{const l=e[a]||{},u=r===a,c=Object.values(l.severity_channels||{}).reduce((h,d)=>h+((d==null?void 0:d.length)||0),0),f=(l.regions||[]).length;return y.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-3",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("button",{type:"button",onClick:()=>n(u?null:a),className:"flex items-center gap-2 text-sm text-slate-200",children:[y.jsx(s,{size:15})," ",o,u?y.jsx(yu,{size:14}):y.jsx(ou,{size:14})]}),y.jsx(fS,{label:"",checked:!!l.enabled,onChange:h=>i(a,{enabled:h})})]}),!u&&y.jsx("div",{className:"text-xs text-slate-600 mt-1",children:l.enabled?`${f||"all"} region${f===1?"":"s"}, ${c} channel${c===1?"":"s"} at ${l.min_severity||"priority"}+`:"OFF"}),u&&y.jsxs("div",{className:`mt-3 space-y-3 ${l.enabled?"":"opacity-40 pointer-events-none select-none"}`,children:[y.jsx(oae,{value:l.min_severity||"priority",onChange:h=>i(a,{min_severity:h})}),y.jsx("div",{className:"text-xs text-slate-500",children:"Severity → channels"}),y.jsxs("table",{className:"text-xs w-full",children:[y.jsx("thead",{children:y.jsxs("tr",{children:[y.jsx("th",{}),i7.map(h=>y.jsx("th",{className:"text-slate-500 font-normal px-1",children:h.replace("_"," ")},h))]})}),y.jsx("tbody",{children:yet.map(h=>y.jsxs("tr",{children:[y.jsx("td",{className:"text-slate-400 pr-2",children:h}),i7.map(d=>{var g;const v=(((g=l.severity_channels)==null?void 0:g[h])||[]).includes(d);return y.jsx("td",{className:"text-center",children:y.jsx("input",{type:"checkbox",checked:v,onChange:m=>{const x={...l.severity_channels||{}},_=new Set(x[h]||[]);m.target.checked?_.add(d):_.delete(d),x[h]=Array.from(_),i(a,{severity_channels:x})}})},d)})]},h))})]}),y.jsx(Cb,{label:"Regions (empty = all)",value:l.regions||[],onChange:h=>i(a,{regions:h}),placeholder:"Add region..."})," ",y.jsx("div",{className:"text-xs text-slate-500 pt-1",children:"Channel config"}),y.jsx(Wy,{label:"Broadcast channel",value:l.broadcast_channel??0,onChange:h=>i(a,{broadcast_channel:h})}),y.jsx(Cb,{label:"DM node IDs",value:l.node_ids||[],onChange:h=>i(a,{node_ids:h}),placeholder:"!nodeid"}),y.jsx(Cb,{label:"Email recipients",value:l.recipients||[],onChange:h=>i(a,{recipients:h}),placeholder:"ops@example.com"}),y.jsx(Tl,{label:"SMTP host",value:l.smtp_host||"",onChange:h=>i(a,{smtp_host:h}),placeholder:"smtp.example.com"}),y.jsx(Wy,{label:"SMTP port",value:l.smtp_port??587,onChange:h=>i(a,{smtp_port:h})}),y.jsx(Tl,{label:"Webhook URL",value:l.webhook_url||"",onChange:h=>i(a,{webhook_url:h}),placeholder:"https://..."})]})]},a)})})]})}function _et(){var B,Z,W;const[e,t]=H.useState(null),[r,n]=H.useState(null),[i,a]=H.useState([]),[o,s]=H.useState([]),[l,u]=H.useState(!0),[c,f]=H.useState(!1),[h,d]=H.useState(null),[v,g]=H.useState(null),[m,x]=H.useState(null),[_,b]=H.useState({open:!1,ruleIndex:-1,loading:!1,action:""}),[S,T]=H.useState(!1),[C,A]=H.useState(!1),P=H.useCallback(async()=>{try{const[G,Y,K]=await Promise.all([fetch("/api/config/notifications"),fetch("/api/notifications/categories"),fetch("/api/regions")]);if(!G.ok)throw new Error("Failed to fetch notifications config");const ee=await G.json(),le=await Y.json(),fe=K.ok?await K.json():[];t(ee),n(JSON.parse(JSON.stringify(ee))),a(le),s(Array.isArray(fe)?fe:[]),A(!1),d(null)}catch(G){d(G instanceof Error?G.message:"Unknown error")}finally{u(!1)}},[]);H.useEffect(()=>{document.title="Notifications - MeshAI",P()},[P]),H.useEffect(()=>{e&&r&&A(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const I=async()=>{if(e){f(!0),d(null),g(null);try{const G=await fetch("/api/config/notifications",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),Y=await G.json();if(!G.ok)throw new Error(Y.detail||"Save failed");g("Notifications config saved successfully"),n(JSON.parse(JSON.stringify(e))),A(!1),setTimeout(()=>g(null),3e3)}catch(G){d(G instanceof Error?G.message:"Save failed")}finally{f(!1)}}},k=()=>{r&&(t(JSON.parse(JSON.stringify(r))),A(!1))},E=()=>({name:"",enabled:!0,trigger_type:"condition",categories:[],min_severity:"routine",schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"19:00",schedule_days:["monday"],message_type:"mesh_health_summary",custom_message:"",delivery_type:"",broadcast_channel:0,node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{},cooldown_minutes:10,region_scope:[]}),D=()=>{e&&t({...e,rules:[...e.rules||[],E()]})},N=G=>{if(!e)return;const Y=n7.find(K=>K.id===G);Y&&(t({...e,rules:[...e.rules||[],{...E(),...Y.rule}]}),T(!1))},z=G=>{if(!e)return;const Y=e.rules[G],K={...JSON.parse(JSON.stringify(Y)),name:`${Y.name} (copy)`},ee=[...e.rules];ee.splice(G+1,0,K),t({...e,rules:ee})},V=async G=>{b({open:!0,ruleIndex:G,loading:!0,action:""});try{const K=await(await fetch(`/api/notifications/rules/${G}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"preview"})})).json();x(K),b(ee=>({...ee,loading:!1}))}catch{x({success:!1,message:"Failed to get preview"}),b(Y=>({...Y,loading:!1}))}},F=async G=>{const Y=_.ruleIndex;b(K=>({...K,loading:!0,action:G}));try{const ee=await(await fetch(`/api/notifications/rules/${Y}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:G})})).json();x(ee),b(le=>({...le,loading:!1}))}catch{x({success:!1,message:`Failed to ${G}`}),b(K=>({...K,loading:!1}))}},$=()=>{b({open:!1,ruleIndex:-1,loading:!1,action:""}),x(null)};return l?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-slate-400",children:"Loading notifications config..."})}):e?y.jsxs("div",{className:"max-w-4xl mx-auto space-y-6",children:[_.open&&y.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:y.jsxs("div",{className:"bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl max-w-2xl w-full mx-4 max-h-[85vh] overflow-auto",children:[y.jsxs("div",{className:"p-4 border-b border-[#2a3a4a] flex items-center justify-between sticky top-0 bg-[#1a2332]",children:[y.jsx("h3",{className:"text-lg font-semibold",children:"Test Notification Rule"}),y.jsx("button",{onClick:$,className:"text-slate-500 hover:text-slate-300",children:y.jsx(Xa,{size:20})})]}),y.jsx("div",{className:"p-4 space-y-4",children:_.loading?y.jsxs("div",{className:"flex items-center justify-center py-8",children:[y.jsx(Pm,{size:20,className:"animate-spin text-slate-400 mr-2"}),y.jsx("div",{className:"text-slate-400",children:_.action?`${_.action.replace("_"," ").replace("send ","Sending ")}...`:"Loading current data..."})]}):m?y.jsxs(y.Fragment,{children:[y.jsxs("div",{className:"space-y-2",children:[y.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:"Current Data"}),m.live_data_summary&&m.live_data_summary.length>0?y.jsx("div",{className:"p-3 bg-slate-800/50 rounded space-y-1",children:m.live_data_summary.map((G,Y)=>y.jsx("div",{className:`text-sm font-mono ${G.startsWith("[!]")?"text-amber-400":""}`,children:G},Y))}):y.jsx("div",{className:"p-3 bg-slate-800/50 rounded text-sm text-slate-500",children:"No live data available for this rule's categories"})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:"Rule Matching"}),y.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[m.conditions_matched&&m.conditions_matched>0?y.jsxs("span",{className:"px-2 py-1 bg-green-500/20 text-green-400 rounded text-sm",children:[m.conditions_matched," condition",m.conditions_matched!==1?"s":""," match - this rule WOULD fire"]}):y.jsx("span",{className:"px-2 py-1 bg-slate-700 text-slate-400 rounded text-sm",children:"No conditions trigger this rule right now"}),m.conditions_below_threshold&&m.conditions_below_threshold>0&&y.jsxs("span",{className:"px-2 py-1 bg-yellow-500/20 text-yellow-400 rounded text-sm",children:[m.conditions_below_threshold," below threshold"]})]}),m.conditions_below_threshold&&m.conditions_below_threshold>0&&y.jsxs("div",{className:"p-3 bg-yellow-500/10 border border-yellow-500/30 rounded text-sm space-y-2",children:[y.jsx("div",{className:"text-yellow-300",children:m.below_threshold_summary}),m.below_threshold_events&&m.below_threshold_events.length>0&&y.jsx("div",{className:"space-y-1 text-yellow-200/80",children:m.below_threshold_events.slice(0,3).map((G,Y)=>y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("span",{className:"text-xs px-1.5 py-0.5 bg-yellow-500/20 rounded",children:G.severity}),y.jsx("span",{children:G.headline})]},Y))}),m.suggestion&&y.jsxs("div",{className:"text-yellow-400 text-xs mt-2",children:["Tip: ",m.suggestion]})]})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:m.is_example?"Example Messages":"Messages That Would Fire"}),(B=m.preview_messages)==null?void 0:B.map((G,Y)=>y.jsx("div",{className:"p-3 bg-slate-800 rounded text-sm font-mono break-words",children:G},Y))]}),m.delivered!==void 0&&m.delivery_result&&y.jsx("div",{className:`p-3 rounded text-sm ${m.delivered?"bg-green-500/10 border border-green-500/30 text-green-400":"bg-red-500/10 border border-red-500/30 text-red-400"}`,children:y.jsxs("div",{className:"flex items-start gap-2",children:[m.delivered?y.jsx(zo,{size:16,className:"mt-0.5"}):y.jsx(Xa,{size:16,className:"mt-0.5"}),y.jsxs("div",{children:[y.jsx("div",{children:m.delivery_result}),m.delivery_error&&y.jsx("div",{className:"mt-1 text-red-300",children:m.delivery_error})]})]})}),m.message&&!m.preview_messages&&y.jsx("div",{className:`p-3 rounded text-sm ${m.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,children:m.message})]}):null}),y.jsxs("div",{className:"p-4 border-t border-[#2a3a4a] flex justify-between sticky bottom-0 bg-[#1a2332]",children:[y.jsx("button",{onClick:$,className:"px-4 py-2 text-slate-400 hover:text-slate-200",children:"Close"}),m&&!m.delivered&&y.jsx("div",{className:"flex gap-2",children:m.delivery_method?y.jsxs(y.Fragment,{children:[m.live_data_summary&&m.live_data_summary.length>0&&y.jsx("button",{onClick:()=>F("send_status"),disabled:_.loading,className:"px-3 py-2 bg-slate-700 hover:bg-slate-600 rounded text-sm disabled:opacity-50",title:"Send current conditions summary",children:"Send Current Conditions"}),y.jsx("button",{onClick:()=>F("send_test"),disabled:_.loading,className:"px-3 py-2 bg-slate-700 hover:bg-slate-600 rounded text-sm disabled:opacity-50",title:"Send example alert message",children:"Send Example Alert"}),m.can_send_live&&y.jsx("button",{onClick:()=>F("send_live"),disabled:_.loading,className:"px-3 py-2 bg-accent hover:bg-accent/80 rounded text-sm disabled:opacity-50",title:"Send actual live alert",children:"Send Live Alert"})]}):y.jsx("span",{className:"px-3 py-2 text-amber-400 text-sm",children:"Configure a delivery method to send test messages"})})]})]})}),y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsx("div",{children:y.jsx("p",{className:"text-sm text-slate-500",children:"Alert delivery and scheduled reports. Rules define what triggers a notification and where it gets sent."})}),y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("button",{onClick:P,className:"p-2 text-slate-400 hover:text-slate-200 hover:bg-bg-hover rounded transition-colors",title:"Refresh",children:y.jsx(Pm,{size:18})}),y.jsxs("button",{onClick:k,disabled:!C,className:"flex items-center gap-2 px-3 py-2 text-slate-400 hover:text-slate-200 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[y.jsx(DS,{size:16}),"Discard"]}),y.jsxs("button",{onClick:I,disabled:c||!C,className:"flex items-center gap-2 px-4 py-2 bg-accent hover:bg-accent/80 disabled:bg-slate-700 disabled:cursor-not-allowed rounded text-white transition-colors",children:[y.jsx(lD,{size:16}),c?"Saving...":"Save"]})]})]}),h&&y.jsx("div",{className:"p-3 rounded-lg text-sm bg-red-500/10 text-red-400 border border-red-500/20",children:h}),v&&y.jsxs("div",{className:"p-3 rounded-lg text-sm bg-green-500/10 text-green-400 border border-green-500/20",children:[y.jsx(zo,{size:14,className:"inline mr-2"}),v]}),y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6 space-y-6",children:[y.jsx(fS,{label:"Enable Notifications",checked:e.enabled,onChange:G=>t({...e,enabled:G}),helper:"Master switch for all notification delivery",info:"When disabled, no alerts or scheduled messages will be delivered. Alerts still get recorded to history."}),e.enabled&&y.jsxs(y.Fragment,{children:[" ",y.jsxs("div",{className:"space-y-3 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[y.jsx("div",{className:"flex items-center gap-2",children:y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Cold-start grace"})}),y.jsx(Wy,{label:"Grace period (seconds)",value:e.cold_start_grace_seconds??60,onChange:G=>t({...e,cold_start_grace_seconds:G}),min:0,max:600,helper:"Suppress broadcasts for this many seconds after the first event arrives",info:"When meshai starts seeing events for the first time, suppress mesh broadcasts for this many seconds to absorb any JetStream backlog. Persistence rows still get written; only broadcasts are suppressed."})]}),y.jsxs("div",{className:"space-y-3 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[y.jsx("div",{className:"flex items-center gap-2",children:y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Band Conditions (HF propagation)"})}),y.jsx(fS,{label:"Enable scheduled band-conditions broadcasts",checked:e.band_conditions_enabled??!0,onChange:G=>t({...e,band_conditions_enabled:G}),helper:"3x/day HF propagation summary (Day/Night ratings per band group)",info:"Source priority: (1) recent SWPC readings persisted locally; (2) HamQSL.com fallback; (3) silent skip if both fail. Persistence rows are written either way for an audit trail."}),(e.band_conditions_enabled??!0)&&y.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[y.jsx(sm,{label:"Slot 1",value:(e.band_conditions_schedule??["06:00","14:00","22:00"])[0]||"06:00",onChange:G=>{const Y=[...e.band_conditions_schedule??["06:00","14:00","22:00"]];Y[0]=G,t({...e,band_conditions_schedule:Y})},helper:"Morning (default 06:00 MT)"}),y.jsx(sm,{label:"Slot 2",value:(e.band_conditions_schedule??["06:00","14:00","22:00"])[1]||"14:00",onChange:G=>{const Y=[...e.band_conditions_schedule??["06:00","14:00","22:00"]];Y[1]=G,t({...e,band_conditions_schedule:Y})},helper:"Afternoon (default 14:00 MT)"}),y.jsx(sm,{label:"Slot 3",value:(e.band_conditions_schedule??["06:00","14:00","22:00"])[2]||"22:00",onChange:G=>{const Y=[...e.band_conditions_schedule??["06:00","14:00","22:00"]];Y[2]=G,t({...e,band_conditions_schedule:Y})},helper:"Night (default 22:00 MT)"})]}),y.jsx("p",{className:"text-xs text-slate-600",children:"All times are Mountain Time (America/Boise). DST handled automatically."})]}),e.toggles&&y.jsx(xet,{toggles:e.toggles,onChange:G=>t({...e,toggles:G})}),y.jsxs("div",{className:"space-y-3",children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Notification Rules",y.jsx(ia,{info:"Each rule is self-contained: define what triggers it (condition or schedule), where to send it (mesh, email, webhook), and behavior settings."})]}),y.jsxs("span",{className:"text-xs text-slate-500",children:[((Z=e.rules)==null?void 0:Z.length)||0," rule",(((W=e.rules)==null?void 0:W.length)||0)!==1?"s":""]})]}),(e.rules||[]).map((G,Y)=>y.jsx(get,{rule:G,ruleIndex:Y,categories:i,regions:o,onChange:K=>{const ee=[...e.rules||[]];ee[Y]=K,t({...e,rules:ee})},onDelete:()=>{confirm(`Delete rule "${G.name||"New Rule"}"?`)&&t({...e,rules:(e.rules||[]).filter((K,ee)=>ee!==Y)})},onDuplicate:()=>z(Y),onTest:()=>V(Y)},Y)),y.jsxs("div",{className:"flex gap-2",children:[y.jsxs("button",{onClick:D,className:"flex-1 py-3 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center justify-center gap-2 transition-colors",children:[y.jsx(yv,{size:16})," Add Rule"]}),y.jsxs("div",{className:"relative",children:[y.jsxs("button",{onClick:()=>T(!S),className:"py-3 px-4 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center gap-2 transition-colors",children:[y.jsx(BZ,{size:16})," Add from Template"]}),S&&y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>T(!1)}),y.jsxs("div",{className:"absolute right-0 top-full mt-2 z-50 w-80 bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl overflow-hidden",children:[y.jsx("div",{className:"p-2 border-b border-[#2a3a4a] text-xs text-slate-500 uppercase",children:"Rule Templates"}),n7.map(G=>y.jsxs("button",{onClick:()=>N(G.id),className:"w-full p-3 text-left hover:bg-[#2a3a4a] transition-colors",children:[y.jsx("div",{className:"font-medium text-slate-200",children:G.name}),y.jsx("div",{className:"text-xs text-slate-500 mt-0.5",children:G.description})]},G.id))]})]})]})]})]})]})]})]}):y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-red-400",children:"Failed to load notifications config"})})}const a7=[{id:"stream-gauges",label:"Stream Gauges",icon:LS},{id:"wildfire",label:"Wildfire",icon:IS},{id:"firms",label:"Satellite Fire Detection (FIRMS)",icon:NS},{id:"weather-alerts",label:"Weather Alerts",icon:dce},{id:"solar",label:"Solar & Geomagnetic",icon:GZ},{id:"ducting",label:"Tropospheric Ducting",icon:Ya},{id:"avalanche",label:"Avalanche Danger",icon:ES},{id:"traffic",label:"Traffic Flow",icon:kS},{id:"roads-511",label:"Road Conditions (511)",icon:NZ},{id:"mesh-health",label:"Mesh Health",icon:gv},{id:"notifications",label:"Notifications",icon:Mm},{id:"commands",label:"Commands",icon:WZ},{id:"api",label:"API Reference",icon:vce}];function ir({color:e}){const t={green:"bg-green-500",yellow:"bg-yellow-500",orange:"bg-orange-500",red:"bg-red-500",black:"bg-slate-800 border border-slate-600"};return y.jsx("span",{className:`inline-block w-3 h-3 rounded-full ${t[e]}`})}function jt({headers:e,rows:t}){return y.jsx("div",{className:"overflow-x-auto my-4",children:y.jsxs("table",{className:"w-full text-sm",children:[y.jsx("thead",{children:y.jsx("tr",{className:"bg-[#1a2332] border-b border-[#2a3a4a]",children:e.map((r,n)=>y.jsx("th",{className:"px-4 py-2 text-left text-slate-400 font-medium",children:r},n))})}),y.jsx("tbody",{children:t.map((r,n)=>y.jsx("tr",{className:`border-b border-[#1e2a3a] ${n%2===0?"bg-[#0d1219]":"bg-[#0a0e17]"}`,children:r.map((i,a)=>y.jsx("td",{className:"px-4 py-2 text-slate-300",children:i},a))},n))})]})})}function Rt({href:e,children:t}){return y.jsxs("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:"text-accent hover:underline inline-flex items-center gap-1",children:[t," ",y.jsx(Sd,{size:12})]})}function Te({children:e}){return y.jsx("h3",{className:"text-lg font-semibold text-slate-200 mt-6 mb-3",children:e})}function pl({children:e}){return y.jsx("h4",{className:"text-base font-medium text-slate-300 mt-4 mb-2",children:e})}function $e({children:e}){return y.jsx("code",{className:"font-mono text-accent bg-[#1a2332] px-1 rounded",children:e})}function vi({id:e,title:t,children:r}){return y.jsxs("section",{id:e,className:"mb-12 scroll-mt-6",children:[y.jsx("h2",{className:"text-2xl font-bold text-slate-100 mb-4 pb-2 border-b border-[#2a3a4a]",children:t}),y.jsx("div",{className:"text-slate-300 leading-relaxed space-y-4",children:r})]})}function bet(){const e=pv(),[t,r]=H.useState(""),[n,i]=H.useState("stream-gauges"),a=H.useRef(null);H.useEffect(()=>{const l=e.hash.replace("#","");if(l&&a7.find(u=>u.id===l)){i(l);const u=document.getElementById(l);u&&u.scrollIntoView({behavior:"smooth"})}},[e.hash]);const o=a7.filter(l=>l.label.toLowerCase().includes(t.toLowerCase())),s=l=>{i(l);const u=document.getElementById(l);u&&u.scrollIntoView({behavior:"smooth"}),window.history.replaceState(null,"",`#${l}`)};return y.jsxs("div",{className:"flex h-full -m-6",children:[y.jsxs("aside",{className:"w-64 flex-shrink-0 bg-bg-card border-r border-border overflow-y-auto",children:[y.jsx("div",{className:"p-4 border-b border-border",children:y.jsxs("div",{className:"relative",children:[y.jsx(jS,{size:16,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),y.jsx("input",{type:"text",value:t,onChange:l=>r(l.target.value),placeholder:"Search topics...",className:"w-full pl-9 pr-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent placeholder-slate-600"})]})}),y.jsx("nav",{className:"py-2",children:o.map(l=>{const u=l.icon,c=n===l.id;return y.jsxs("button",{onClick:()=>s(l.id),className:`w-full flex items-center gap-3 px-4 py-2.5 text-sm text-left transition-colors ${c?"text-accent bg-accent/10 border-l-2 border-accent":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover border-l-2 border-transparent"}`,children:[y.jsx(u,{size:16}),l.label]},l.id)})})]}),y.jsx("div",{ref:a,className:"flex-1 overflow-y-auto p-6",children:y.jsxs("div",{className:"max-w-4xl",children:[y.jsx("p",{className:"text-slate-400 mb-8",children:"Everything you need to understand and configure MeshAI's monitoring and alerting systems."}),y.jsxs(vi,{id:"stream-gauges",title:"Stream Gauges",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"MeshAI watches river and stream levels at gauges you configure. Each gauge reports two things:"}),y.jsxs("p",{children:[y.jsx("strong",{children:"Water Level (Gage Height)"}),` — how high the water is, measured in feet. Important: this is NOT the depth of the river. It's the height above a fixed measuring point that's different at every gauge. A reading of "10 feet" at one gauge means something completely different than "10 feet" at another. You can only compare readings from the SAME gauge over time.`]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Flow (Discharge)"}),` — how much water is moving past the gauge, in cubic feet per second (CFS). Think of it as the river's "throughput." For scale:`]}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsx("li",{children:"A small creek: 50-200 CFS"}),y.jsx("li",{children:"A mid-size river: 1,000-5,000 CFS"}),y.jsx("li",{children:"A big river in spring runoff: 10,000+ CFS"})]}),y.jsx(Te,{children:"When Does It Flood?"}),y.jsxs("p",{children:["Flood levels are set by the ",y.jsx("strong",{children:"National Weather Service"}),', not USGS. NWS looks at each specific gauge location and decides "at what water level does the road flood? At what level do buildings get water?" Those levels are different everywhere.']}),y.jsxs("p",{children:[y.jsx("strong",{children:"Action Stage"})," — water is rising, time to start paying attention. Usually still inside the riverbanks."]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Minor Flood"})," — low-lying roads start getting water on them. NWS issues a Flood Advisory."]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Moderate Flood"})," — water in buildings near the river. Some people need to evacuate. NWS issues a Flood Warning."]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Major Flood"})," — widespread flooding. Many people evacuating. Serious property damage."]}),y.jsx("p",{children:"MeshAI automatically looks up the flood levels for your gauge from NWS when you add a site. Some remote gauges don't have flood levels assigned — for those, you set them manually if you know what water levels cause problems in your area."}),y.jsx(Te,{children:"Low Water / Drought"}),y.jsx("p",{children:`There's no official "drought stage" for most gauges. If you need to monitor low water (irrigation, fish habitat), set a manual low-water threshold based on what you know about your local river.`}),y.jsx(Te,{children:"Setting It Up"}),y.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:["Find your gauge at ",y.jsx(Rt,{href:"https://waterdata.usgs.gov/nwis",children:"waterdata.usgs.gov/nwis"})]}),y.jsxs("li",{children:["Copy the site number (like ",y.jsx($e,{children:"13090500"}),")"]}),y.jsx("li",{children:"Add it in Config → Environmental → USGS"}),y.jsx("li",{children:"MeshAI auto-fills the gauge name and flood levels from NWS"})]}),y.jsx("p",{children:"If NWS flood levels don't populate, your gauge may not have them. Set manual thresholds if you know your local conditions."}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://waterdata.usgs.gov/nwis",children:"USGS Water Data"})," — find gauges near you"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://water.noaa.gov",children:"NWS Water Prediction Service"})," — flood forecasts and thresholds"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.usgs.gov/special-topics/water-science-school/science/how-streamflow-measured",children:"Understanding Streamflow"})," — USGS explainer"]})]})]}),y.jsxs(vi,{id:"wildfire",title:"Wildfire",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"MeshAI tracks active wildfire perimeters from the National Interagency Fire Center (NIFC). For each fire, you see the name, size, how much is contained, and how far it is from your mesh nodes."}),y.jsx(Te,{children:"Fire Size — How Big Is It?"}),y.jsx(jt,{headers:["Size","What That Means"],rows:[["10 acres","Small fire. Usually handled quickly by initial crews."],["100 acres","Notable fire. Active firefighting effort."],["1,000 acres","Large fire. Major resources being deployed."],["10,000+ acres","Very large fire. Multiple teams, aircraft, heavy equipment."],["100,000+ acres","Mega-fire. These make the national news."]]}),y.jsx("p",{children:"For reference, 1,000 acres is about 1.5 square miles."}),y.jsx(Te,{children:"Containment — Is It Under Control?"}),y.jsx("p",{children:"Containment means the percentage of the fire's edge where firefighters have built a control line (a cleared strip to stop the fire from spreading further). It does NOT mean the fire is out inside that line."}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx("strong",{children:"0-30%"})," — Essentially uncontrolled. The fire goes where it wants."]}),y.jsxs("li",{children:[y.jsx("strong",{children:"50%"})," — Good progress, but half the edge can still grow."]}),y.jsxs("li",{children:[y.jsx("strong",{children:"80%+"})," — Well controlled. Major growth unlikely."]}),y.jsxs("li",{children:[y.jsx("strong",{children:"100%"}),' — The edge is fully controlled. But the fire may STILL be actively burning inside. "100% contained" does NOT mean "out."']})]}),y.jsx(Te,{children:"How Far Away Should I Worry?"}),y.jsx(jt,{headers:["Distance","What To Do"],rows:[[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"red"})," Under 5 km (3 miles)"]}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Immediate threat."})," This is evacuation-order range. Embers can fly this far in wind."]})],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"orange"})," 5-15 km (3-10 miles)"]}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Prepare."})," The fire could reach you in hours under bad conditions. Have a plan."]})],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"yellow"})," 15-30 km (10-20 miles)"]}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Watch."})," Smoke is likely. Wind shifts could change things fast."]})],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"green"})," Over 30 km (20 miles)"]}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Awareness."})," Keep an eye on it, but no immediate threat."]})]]}),y.jsx("p",{children:"How fast can a fire travel? In grass with wind: up to 14 mph. In heavy timber: 1-6 mph. A fire 10 miles away could theoretically reach you in 1-2 hours under worst-case conditions, but typical spread is much slower."}),y.jsx(Te,{children:"Which Matters More — Size or Distance?"}),y.jsxs("p",{children:[y.jsx("strong",{children:"Distance is the immediate concern."})," A small uncontained fire 10 km away is more dangerous right now than a huge fire 50 km away. But big fires have more energy and can grow fast under wind shifts — keep watching them."]}),y.jsx(Te,{children:"Setting It Up"}),y.jsxs("p",{children:["Just configure your state code (like ",y.jsx($e,{children:"US-ID"})," for Idaho) in Config → Environmental → Fires. MeshAI polls NIFC every 10 minutes for active fires in that state and computes the distance to your mesh nodes automatically."]}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://inciweb.nwcg.gov",children:"InciWeb"})," — detailed incident information"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://data-nifc.opendata.arcgis.com",children:"NIFC Fire Map"})," — raw perimeter data"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.ready.gov/wildfires",children:"Ready.gov Wildfires"})," — preparedness guide"]})]})]}),y.jsxs(vi,{id:"firms",title:"Satellite Fire Detection (FIRMS)",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:`NASA's VIIRS satellites orbit the Earth and look for heat signatures on the ground. When they see something hot — a fire, a factory, a sunlit building — they flag it as a "hotspot." MeshAI checks these detections for your area.`}),y.jsxs("p",{children:[y.jsx("strong",{children:"Why this matters"}),": satellite hotspots show up ",y.jsx("strong",{children:"hours before"})," official fire perimeters are mapped. If a new fire starts near your mesh, the satellite might see it before anyone on the ground reports it."]}),y.jsx(Te,{children:"Confidence — Is It Really a Fire?"}),y.jsx("p",{children:"Each detection gets a confidence rating:"}),y.jsx(jt,{headers:["Confidence","What It Means"],rows:[["High","Almost certainly a real fire. Strong heat signature."],["Nominal","Probably a real fire. Most actual fires get this rating."],["Low","Maybe a fire, maybe not. Could be a hot roof, sun reflecting off water, a factory, or a gas flare. Lots of false alarms."]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Recommendation"}),`: Set the filter to "Nominal + High." If you include "Low" you'll get alerts for every hot parking lot on a summer day.`]}),y.jsx(Te,{children:"FRP — How Intense Is It?"}),y.jsx("p",{children:'FRP (Fire Radiative Power) measures the heat output in megawatts. Think of it as "how hot is this thing":'}),y.jsx(jt,{headers:["FRP","What It Probably Is"],rows:[["Under 5 MW","Hot surface, small agricultural burn, gas flare, or warm ground"],["5-50 MW","An actual fire — brush fire, grass fire, typical wildfire"],["50-300 MW","Intense fire — trees fully burning, active fire front"],["Over 300 MW","Extreme fire — major wildfire in full force"]]}),y.jsx("p",{children:"Setting the minimum FRP to 5 MW filters out most industrial and agricultural false alarms."}),y.jsx(Te,{children:"New Ignition Detection"}),y.jsxs("p",{children:["MeshAI cross-references satellite hotspots against known NIFC fire perimeters. If a hotspot is NOT near any known fire, it gets flagged as a ",y.jsx("strong",{children:"potential new ignition"})," — maybe a new fire just started. These get elevated priority regardless of confidence level."]}),y.jsx(Te,{children:"Timing"}),y.jsxs("p",{children:["Satellite data arrives ",y.jsx("strong",{children:"1-3 hours"})," after the satellite passes overhead. Each location gets observed about ",y.jsx("strong",{children:"6 times per day"}),` across all satellites, so there are multi-hour gaps. This is not real-time — it's "pretty recent."`]}),y.jsx(Te,{children:"Getting an API Key"}),y.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:["Go to ",y.jsx(Rt,{href:"https://firms.modaps.eosdis.nasa.gov/api/area/",children:"FIRMS API page"})]}),y.jsx("li",{children:'Click "Get MAP_KEY"'}),y.jsx("li",{children:"Register for a free Earthdata account"}),y.jsx("li",{children:"Your key arrives by email"}),y.jsx("li",{children:"Enter it in Config → Environmental → FIRMS"})]}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://firms.modaps.eosdis.nasa.gov",children:"FIRMS Fire Map"})," — see hotspots on a map"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://earthdata.nasa.gov/data/tools/firms/faq",children:"FIRMS FAQ"})," — how it works"]})]})]}),y.jsxs(vi,{id:"weather-alerts",title:"Weather Alerts",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"MeshAI watches for NWS (National Weather Service) alerts affecting your area — warnings, watches, and advisories."}),y.jsx(Te,{children:"Alert Severity — How Serious Is It?"}),y.jsx(jt,{headers:["Severity","What It Means","Example"],rows:[["Extreme","Life-threatening. The most serious events.","Tornado Emergency, Hurricane Warning, Tsunami Warning"],["Severe","Dangerous. Take protective action.","Tornado Warning, Flash Flood Warning, Blizzard Warning, Red Flag Warning"],["Moderate","Be prepared. Could become dangerous.","Winter Weather Advisory, Wind Advisory, Flood Watch, Heat Advisory"],["Minor","Good to know. Probably won't hurt anyone.","Special Weather Statement, Air Quality Alert"]]}),y.jsx(Te,{children:"When Should I Act? (Urgency)"}),y.jsx(jt,{headers:["Urgency","What It Means"],rows:[["Immediate","Do something NOW"],["Expected","Do something within the hour"],["Future","Coming in the next several hours"],["Past","It's over — NWS is clearing the alert"]]}),y.jsx(Te,{children:"How Sure Are They? (Certainty)"}),y.jsx(jt,{headers:["Certainty","What It Means"],rows:[["Observed","It's happening right now. Verified."],["Likely","More than 50% chance"],["Possible","Could happen, but less than 50%"],["Unlikely","Probably won't, but mentioned for awareness"]]}),y.jsx(Te,{children:"These Are Separate Scales"}),y.jsx("p",{children:'A single alert has all three. A hurricane warning for next week is "Severe + Future + Likely." A tornado spotted on the ground is "Extreme + Immediate + Observed." An air quality advisory is "Minor + Expected + Possible."'}),y.jsx(Te,{children:"What Minimum Severity Should I Set?"}),y.jsx(jt,{headers:["Setting","What You Get","What You Miss"],rows:[["Minor","Everything — high volume","Nothing"],[y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Moderate"})," ✓"]}),"Watches, Advisories, and Warnings","Special Weather Statements"],["Severe","Only Warnings — things happening NOW","Watches (which give you hours of advance warning)"],["Extreme","Only the rarest events","Most Tornado and Severe Thunderstorm Warnings"]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Moderate is recommended."})," It catches Watches (advance warning that conditions may worsen) and Advisories (conditions exist but aren't severe) while filtering out the informational stuff."]}),y.jsx(Te,{children:"Finding Your NWS Zone"}),y.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:["Go to ",y.jsx(Rt,{href:"https://www.weather.gov",children:"weather.gov"})]}),y.jsx("li",{children:"Enter your location"}),y.jsxs("li",{children:["Find your zone code at ",y.jsx(Rt,{href:"https://www.weather.gov/pimar/PubZone",children:"NWS Zone Map"})]}),y.jsxs("li",{children:["Zone codes look like: ",y.jsx($e,{children:"IDZ016"}),", ",y.jsx($e,{children:"UTZ040"}),", etc."]})]}),y.jsx(Te,{children:"The User-Agent Field"}),y.jsx("p",{children:"NWS wants to know who's using their API — not for approval, just so they can contact you if something breaks. You make it up:"}),y.jsx("p",{children:y.jsx($e,{children:"(meshai, you@email.com)"})}),y.jsx("p",{children:"No registration. No waiting. Just type it in."}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://alerts.weather.gov",children:"NWS Active Alerts"})," — see current alerts"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.weather.gov/documentation/services-web-api",children:"NWS API Docs"})," — technical details"]})]})]}),y.jsxs(vi,{id:"solar",title:"Solar & Geomagnetic Conditions",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"MeshAI tracks space weather — solar activity and its effects on Earth's magnetic field. This matters for radio operators because the sun directly controls how well HF radio works, and major solar events can affect all radio communications."}),y.jsx(Te,{children:"Solar Flux Index (SFI)"}),y.jsx("p",{children:'Think of SFI as a "how active is the sun" number. Higher = better for HF radio, but also higher risk of solar flares.'}),y.jsx(jt,{headers:["SFI","What It Means for You"],rows:[["Below 70","Quiet sun. Higher HF bands (10m, 15m) are probably dead. Stick to lower bands."],["70-90","Getting better. Some openings on 15m and above, but inconsistent."],["90-120","Good. Most HF bands work. Reliable contacts on 20m and 15m."],["120-170","Great. All HF bands open. 10m works for worldwide contacts."],["Above 170","Excellent. Best HF conditions — but watch for flares."]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Quick rule"}),": SFI above 90 and Kp below 4 = good day for HF radio."]}),y.jsx(Te,{children:"Kp Index"}),y.jsx("p",{children:"Kp measures how disturbed Earth's magnetic field is, on a 0-9 scale. Higher = more disturbance = worse for HF radio but better for aurora viewing."}),y.jsx(jt,{headers:["Kp","What It Means for You"],rows:[["0-2","Quiet. Best HF conditions."],["3","Slightly unsettled. You probably won't notice."],["4","Active. Some noise and fading on HF, especially if you're at higher latitudes."],[y.jsx("strong",{children:"5"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Minor storm (G1)."})," HF noticeably degraded. Aurora visible at high latitudes (~60°N)."]})],[y.jsx("strong",{children:"6"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Moderate storm (G2)."})," HF getting rough. Aurora moving south (~55°N)."]})],[y.jsx("strong",{children:"7"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Strong storm (G3)."})," HF unreliable for 1-2 days. Aurora at mid-latitudes."]})],[y.jsx("strong",{children:"8-9"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Severe/Extreme storm."})," HF may black out completely. Aurora visible at very low latitudes. Power grid stress possible."]})]]}),y.jsx(Te,{children:"R / S / G Scales"}),y.jsx("p",{children:"NOAA's shorthand for three types of space weather events:"}),y.jsx(pl,{children:"R (Radio Blackouts) — from solar flares:"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsx("li",{children:"R1-R2: Brief HF disruption. You might not notice."}),y.jsx("li",{children:"R3: HF goes out for about an hour on the sunlit side of Earth."}),y.jsx("li",{children:"R4-R5: HF dead for hours. Serious."})]}),y.jsx(pl,{children:"S (Solar Radiation Storms) — from energetic particles:"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsx("li",{children:"Mostly affects polar regions and satellites"}),y.jsx("li",{children:"S3+: Polar HF goes out entirely"})]}),y.jsx(pl,{children:"G (Geomagnetic Storms) — from solar wind disturbances:"}),y.jsx("ul",{className:"list-disc list-inside ml-4 space-y-1",children:y.jsx("li",{children:"Same as the Kp scale: G1 = Kp 5, up to G5 = Kp 9"})}),y.jsx(Te,{children:"Bz — The Storm Predictor"}),y.jsx("p",{children:"Bz measures the direction of the solar wind's magnetic field. When it points south (negative values), the solar wind can dump energy into Earth's magnetic field, causing storms."}),y.jsx(jt,{headers:["Bz","What It Means"],rows:[["Positive","All good. Solar wind bouncing off."],["0 to -5","Slight coupling. Nothing dramatic."],["-5 to -10","Things starting to pick up. Storm possible."],["Below -10","Storm likely. Kp will start climbing."],["Below -20","Severe storm probable."]]}),y.jsx("p",{children:"Bz can change fast — minute to minute. What matters is whether it stays negative for hours, not brief dips."}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.swpc.noaa.gov",children:"SWPC Space Weather Dashboard"})," — live data"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.swpc.noaa.gov/noaa-scales-explanation",children:"NOAA Space Weather Scales"})," — what R/S/G mean"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.hamqsl.com/solar.html",children:"HamQSL Solar Page"})," — ham-friendly display"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.swpc.noaa.gov/products/planetary-k-index",children:"Planetary K-Index"})," — live Kp"]})]})]}),y.jsxs(vi,{id:"ducting",title:"Tropospheric Ducting",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:'Sometimes the atmosphere creates an invisible "pipe" that traps radio signals and carries them much farther than normal. This is called tropospheric ducting. It mostly affects VHF and UHF frequencies.'}),y.jsx("p",{children:"MeshAI watches for these conditions by analyzing weather data (temperature and humidity at different altitudes) over your mesh area."}),y.jsx(Te,{children:"How Do I Know If Ducting Is Happening?"}),y.jsx("p",{children:'MeshAI reports a "condition" based on the atmospheric profile:'}),y.jsx(jt,{headers:["Condition","What It Means"],rows:[["Normal","Standard propagation. Nothing unusual."],["Super-refraction","Slightly enhanced range. You might hear a few more distant stations than usual."],["Surface Duct","Radio signals trapped near the ground. You may hear stations hundreds of km away that you've never heard before."],["Elevated Duct",'Same effect but the "pipe" is up in the atmosphere. Affects signals passing through that altitude.']]}),y.jsx(Te,{children:"What You'll Actually Notice"}),y.jsx("p",{children:"When ducting happens on your mesh:"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsx("li",{children:"Distant repeaters you've never heard suddenly come in"}),y.jsx("li",{children:"Nodes appear from far outside your normal range"}),y.jsx("li",{children:"You hear FM radio stations from other cities"}),y.jsx("li",{children:"ADS-B flight tracking range gets much longer"}),y.jsx("li",{children:"There might be interference from distant stations on your frequency"})]}),y.jsx(Te,{children:"The dM/dz Number"}),y.jsx("p",{children:`The dashboard shows a "dM/dz" value in "M-units/km." You don't need to understand the math — just know:`}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx("strong",{children:"Around 118"})," = normal atmosphere"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Below 79"})," = enhanced propagation starting"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Below 0 (negative)"})," = ducting is happening"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Below -50"})," = strong ducting — classic VHF/UHF DX event"]})]}),y.jsx(Te,{children:"When Does Ducting Happen?"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsx("li",{children:"Under high-pressure weather systems (clear, stable air)"}),y.jsx("li",{children:"When warm air sits on top of cool air (temperature inversion)"}),y.jsx("li",{children:"Most common in late summer and early fall"}),y.jsx("li",{children:"Strongest along coastlines and over water"}),y.jsx("li",{children:"In mountain valleys: cold air pooling in fall/winter can create surface ducts"})]}),y.jsx(Te,{children:"Setting It Up"}),y.jsx("p",{children:"Just configure the latitude and longitude of the center of your mesh area in Config → Environmental → Ducting. MeshAI checks the atmospheric conditions there every 3 hours using free weather model data. No API key needed."}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://dxinfocentre.com/tropo.html",children:"Tropo Forecast Maps (Hepburn)"})," — 6-day tropo prediction"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://dxmaps.com",children:"DX Maps"})," — real-time VHF/UHF propagation reports"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://en.wikipedia.org/wiki/Tropospheric_propagation",children:"Wikipedia: Tropospheric Propagation"})," — background"]})]})]}),y.jsxs(vi,{id:"avalanche",title:"Avalanche Danger",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"MeshAI pulls avalanche forecasts from your regional avalanche center during winter months. The danger scale has 5 levels and it's the same across all of North America."}),y.jsx(Te,{children:"The Danger Scale"}),y.jsx(jt,{headers:["Level","Name","Color","What To Do"],rows:[["1","Low",y.jsx(ir,{color:"green"}),"Generally safe. Normal caution in steep terrain."],["2","Moderate",y.jsx(ir,{color:"yellow"}),"Be careful on specific terrain features. Evaluate conditions."],["3","Considerable",y.jsx(ir,{color:"orange"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"DANGEROUS."}),` This is where most people die in avalanches — they see "3 out of 5" and think it's fine. It's not. Use extreme caution.`]})],["4","High",y.jsx(ir,{color:"red"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Very dangerous."})," Stay off anything steep."]})],["5","Extreme",y.jsx(ir,{color:"black"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Don't go out."})," Avalanches are happening on their own."]})]]}),y.jsx(Te,{children:"The Most Important Thing to Know"}),y.jsxs("p",{children:[y.jsx("strong",{children:"Level 3 (Considerable) kills more people than any other level."}),' People look at "3 out of 5" and think "middle of the road, probably okay." In reality, the risk roughly doubles at each step up the scale. Level 3 is where dangerous conditions overlap with people thinking they can handle it.']}),y.jsx(Te,{children:"Seasonal"}),y.jsx("p",{children:'MeshAI only checks avalanche conditions during winter months (configurable, default December through April). Outside season, it shows "off season" and saves API calls.'}),y.jsx(Te,{children:"Finding Your Avalanche Center"}),y.jsxs("p",{children:["Go to ",y.jsx(Rt,{href:"https://avalanche.org/avalanche-centers/",children:"avalanche.org/avalanche-centers/"})," for a map. Common center codes:"]}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx($e,{children:"SNFAC"})," — Sawtooth (central Idaho)"]}),y.jsxs("li",{children:[y.jsx($e,{children:"UAC"})," — Utah"]}),y.jsxs("li",{children:[y.jsx($e,{children:"NWAC"})," — Cascades/Olympics (WA/OR)"]}),y.jsxs("li",{children:[y.jsx($e,{children:"CAIC"})," — Colorado"]}),y.jsxs("li",{children:[y.jsx($e,{children:"SAC"})," — Sierra Nevada (CA)"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GNFAC"})," — Gallatin (SW Montana)"]})]}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://avalanche.org",children:"Avalanche.org"})," — US forecasts"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://avalanche.org/avalanche-encyclopedia/human/resources/north-american-public-avalanche-danger-scale/",children:"Avalanche Danger Scale"})," — full scale explanation"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://kbyg.org",children:"Know Before You Go"})," — avalanche awareness"]})]})]}),y.jsxs(vi,{id:"traffic",title:"Traffic Flow",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"MeshAI monitors traffic speed on road segments you configure, using data from TomTom (real vehicles with navigation apps reporting their speed)."}),y.jsx(Te,{children:"Speed Ratio — The Key Number"}),y.jsx("p",{children:'MeshAI compares current speed to "free-flow speed" (what traffic normally does when the road is empty). The ratio tells you how congested it is:'}),y.jsx(jt,{headers:["Ratio","What It Means"],rows:[[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"green"})," Above 85%"]}),"Normal. Traffic flowing fine."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"yellow"})," 65-85%"]}),"Slow. Heavier than usual but moving."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"orange"})," 40-65%"]}),"Congested. Significant delays."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"red"})," Below 40%"]}),"Gridlock. Barely moving."]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Note"}),`: "free-flow speed" is NOT the speed limit. It's what traffic actually does on that road when nobody's in the way. Drivers often exceed speed limits on open highways.`]}),y.jsx(Te,{children:"Confidence — Can You Trust the Data?"}),y.jsx("p",{children:"TomTom's confidence score tells you how much of the reading comes from real vehicles right now vs historical averages:"}),y.jsx(jt,{headers:["Confidence","What It Means"],rows:[["Above 0.9","Very reliable — lots of real-time probe data"],["0.7-0.9","Good — mix of real-time and historical"],["Below 0.7",y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Unreliable"})," — mostly guessing from historical patterns. Don't alert on this."]})]]}),y.jsx("p",{children:"Set minimum confidence to 0.7 to avoid false congestion alerts at night or on rural roads where few probe vehicles drive."}),y.jsx(Te,{children:"Setting Up Corridors"}),y.jsx("p",{children:'Each "corridor" is a point on a road you want to monitor. To add one:'}),y.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[y.jsx("li",{children:"Go to Google Maps, find the road"}),y.jsx("li",{children:`Right-click the road → "What's here?" → copy the coordinates`}),y.jsx("li",{children:"Add the corridor in Config with a name and those coordinates"}),y.jsx("li",{children:"TomTom finds the nearest road segment automatically"})]}),y.jsx(Te,{children:"Getting an API Key"}),y.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:["Sign up at ",y.jsx(Rt,{href:"https://developer.tomtom.com",children:"developer.tomtom.com"})," (free)"]}),y.jsx("li",{children:"Create an app → get your API key"}),y.jsx("li",{children:"Free tier: 2,500 requests/day (plenty for 5-10 corridors)"})]}),y.jsx(Te,{children:"Learn More"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx(Rt,{href:"https://developer.tomtom.com",children:"TomTom Developer Portal"})," — API docs and key signup"]}),y.jsxs("li",{children:[y.jsx(Rt,{href:"https://www.tomtom.com/traffic-index/",children:"TomTom Traffic Index"})," — city congestion rankings"]})]})]}),y.jsxs(vi,{id:"roads-511",title:"Road Conditions (511)",children:[y.jsx(Te,{children:"What You're Looking At"}),y.jsx("p",{children:"511 systems report road closures, construction, weather events, mountain pass conditions, and incidents. Every state runs their own 511 system — there is no national API."}),y.jsx(Te,{children:"Setting It Up"}),y.jsx("p",{children:"You need to find YOUR state's 511 developer API. MeshAI does not include a default URL because every state is different. Some states have free public APIs, some require registration, and some don't have developer APIs at all."}),y.jsx("p",{children:"Configure in Config → Environmental → 511:"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx("strong",{children:"Base URL"})," — your state's API endpoint"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"API Key"})," — if required by your state"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Endpoints"})," — which data feeds to poll (varies by state)"]})]}),y.jsx(Te,{children:"Learn More"}),y.jsx("p",{children:"Check your state's 511 or DOT website for developer information."})]}),y.jsxs(vi,{id:"mesh-health",title:"Mesh Health",children:[y.jsx(Te,{children:"Health Score"}),y.jsx("p",{children:"MeshAI computes a 0-100 health score for your mesh network by looking at five areas, each weighted differently:"}),y.jsx(jt,{headers:["Pillar","Weight","What It Measures"],rows:[[y.jsx("strong",{children:"Infrastructure"}),"30%","Are your routers online?"],[y.jsx("strong",{children:"Utilization"}),"25%","Is the radio channel congested?"],[y.jsx("strong",{children:"Coverage"}),"20%","Do nodes have redundant paths to gateways?"],[y.jsx("strong",{children:"Behavior"}),"15%","Are any nodes flooding the channel?"],[y.jsx("strong",{children:"Power"}),"10%","Are battery-powered nodes running low?"]]}),y.jsx("p",{children:"The overall score is the weighted sum:"}),y.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"Score = (Infrastructure × 30%) + (Utilization × 25%) + (Coverage × 20%) + (Behavior × 15%) + (Power × 10%)"}),y.jsx(Te,{children:"How Each Pillar Is Calculated"}),y.jsx(pl,{children:"Infrastructure (30%)"}),y.jsx("p",{children:"This is the simplest pillar — what percentage of your infrastructure nodes are currently online?"}),y.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"(routers online ÷ total routers) × 100"}),y.jsxs("p",{children:["Only nodes with the ",y.jsx($e,{children:"ROUTER"}),", ",y.jsx($e,{children:"ROUTER_LATE"}),", or ",y.jsx($e,{children:"ROUTER_CLIENT"})," role count as infrastructure. Regular client nodes going offline doesn't affect this score. If you have 5 routers and 3 are online, infrastructure scores 60."]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Special case:"})," If you have no routers at all (all clients), this pillar scores 100. You're not penalized for not having infrastructure — you just don't have any to track."]}),y.jsx(pl,{children:"Utilization (25%)"}),y.jsxs("p",{children:["MeshAI reads the channel utilization that each router reports in its telemetry — this is the firmware's own measurement of how busy the radio channel is. MeshAI uses the ",y.jsx("strong",{children:"highest"})," value from any infrastructure node because the busiest router is the bottleneck for the whole mesh."]}),y.jsx("p",{children:y.jsx("strong",{children:"How it works:"})}),y.jsxs("ol",{className:"list-decimal list-inside space-y-1 ml-4",children:[y.jsxs("li",{children:["Collect ",y.jsx($e,{children:"channel_utilization"})," from all infrastructure nodes that report it"]}),y.jsx("li",{children:"If no infra nodes have telemetry, try all nodes"}),y.jsxs("li",{children:["Use the ",y.jsx("strong",{children:"maximum"})," value for scoring (busiest node = bottleneck)"]}),y.jsx("li",{children:"If no nodes report utilization (older firmware), fall back to packet count estimate"})]}),y.jsxs("p",{className:"mt-4",children:[y.jsx("strong",{children:"Fallback method"})," (when telemetry unavailable): estimates from packet counts using 200ms/packet airtime. This is less accurate — it assumes MediumFast preset and sums packets across all nodes."]}),y.jsx(jt,{headers:["Channel Utilization","Score","What It Means"],rows:[["Under 20%","100","Channel is clear — this is the goal"],["20-25%","75-100","Slight degradation, occasional collisions"],["25-35%","50-75","Severe degradation — firmware throttling active"],["35-45%","25-50","Mesh struggling badly — reliability dropping"],["Over 45%","0-25","Mesh is effectively unusable"]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Special case:"})," If no utilization data is available (no telemetry and no packet data), this pillar scores 100. You're not penalized for missing data."]}),y.jsx(pl,{children:"Coverage (20%)"}),y.jsx("p",{children:'Measures gateway redundancy — how many of your data sources can "see" each node. A node reported by all 3 of your gateways has full coverage. A node only seen by 1 gateway is a single point of failure.'}),y.jsxs("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:["coverage_ratio = average_gateways_per_node ÷ total_sources",y.jsx("br",{}),"single_gw_penalty = (single_gateway_nodes ÷ total_nodes) × 40"]}),y.jsx("p",{children:"If a node is seen by 2 out of 3 sources, its coverage ratio is 0.67. Infrastructure nodes with only single-gateway coverage get an extra penalty — they're critical but have no backup path."}),y.jsx(jt,{headers:["Coverage Ratio","Base Score","After Penalty"],rows:[["100% (all sources)","100","100 minus single-gw penalty"],["70-99%","90","Minus penalties"],["50-69%","70","Minus penalties"],["Under 50%","50 or less","Heavy penalty"]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Special case:"})," With only 1 data source, this pillar can't score well — there's no redundancy to measure. Coverage becomes meaningful when you have 2+ sources (MeshMonitor + MQTT, multiple gateways, etc.)."]}),y.jsx(pl,{children:"Behavior (15%)"}),y.jsx("p",{children:"Counts how many nodes are sending an unusually high number of non-text packets. This catches firmware bugs, stuck transmitters, and misconfigured nodes that are flooding the channel."}),y.jsxs("p",{children:[y.jsx("strong",{children:"What counts as flooding:"})," More than 500 non-text packets in 24 hours. Text messages don't count — the behavior pillar only flags telemetry, position, and routing packet floods."]}),y.jsx(jt,{headers:["Flagged Nodes","Score"],rows:[["0","100"],["1","80"],["2-3","60"],["4-5","40"],["6+","20"]]}),y.jsx("p",{children:"A single misbehaving node only drops the score to 80. It takes multiple problem nodes to seriously hurt the behavior pillar."}),y.jsx(pl,{children:"Power (10%)"}),y.jsx("p",{children:"Measures what fraction of battery-powered nodes are below the warning threshold (default 20%)."}),y.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"100 × (1 − low_battery_nodes ÷ total_battery_nodes)"}),y.jsx("p",{children:"If 2 out of 10 battery nodes are below 20%, power scores 80."}),y.jsxs("p",{children:[y.jsx("strong",{children:"Important:"})," USB-powered nodes are excluded from this calculation. Many nodes report 100% battery even when running on wall power with no battery installed. Only nodes actually running on batteries affect this pillar."]}),y.jsx(Te,{children:"Health Tiers"}),y.jsx(jt,{headers:["Score","Tier","What It Means"],rows:[["90-100",y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"green"})," Healthy"]}),"Everything's working well."],["75-89",y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"yellow"})," Slight degradation"]}),"Some issues but the mesh is functional."],["50-74",y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"orange"})," Unhealthy"]}),"Multiple problems. Reliability is affected."],["25-49",y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"red"})," Warning"]}),"Significant issues. The mesh is struggling."],["0-24",y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"black"})," Critical"]}),"Major failures. Barely functional."]]}),y.jsx(Te,{children:"Channel Utilization — Is the Radio Channel Full?"}),y.jsx("p",{children:"Meshtastic radios share one LoRa channel. If too many nodes are transmitting too often, they step on each other and messages get lost."}),y.jsx(jt,{headers:["Utilization","What's Happening"],rows:[[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"green"})," Under 25%"]}),"Healthy. The firmware itself starts throttling above 25% to protect the channel — so under 25% is the target."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"yellow"})," 25-40%"]}),"Getting busy. Common on larger meshes. Worth watching."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"orange"})," 40-50%"]}),"Congested. The firmware throttles GPS updates above 40%. Messages are colliding and retrying."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"red"})," Over 50%"]}),"Serious problem. More time is spent retrying than communicating. Mesh reliability drops fast."],[y.jsxs(y.Fragment,{children:[y.jsx(ir,{color:"black"})," Over 65%"]}),"Documented failure point on busy LONG_FAST meshes. The mesh becomes unusable."]]}),y.jsx(Te,{children:"Packet Flooding"}),y.jsx("p",{className:"p-3 bg-yellow-500/10 border border-yellow-500/30 rounded text-yellow-200",children:y.jsx("strong",{children:'⚠️ "Packet flooding" means a node sending too many RADIO PACKETS. This has nothing to do with water flooding.'})}),y.jsx("p",{children:"A normal Meshtastic node sends a packet every few minutes (announcing itself, reporting telemetry, updating position). If a node starts blasting packets every few seconds, something is wrong — firmware bug, stuck transmitter, or misconfiguration."}),y.jsx(jt,{headers:["Packets per Minute","What It Means"],rows:[["1-5","Normal"],["5-10","Elevated — might be someone chatting a lot"],["10-20","Suspicious — worth investigating"],["Over 30","Something is broken. This node is actively hurting the mesh."]]}),y.jsx(Te,{children:"Battery Levels"}),y.jsx("p",{children:"Most Meshtastic radios (T-Beam, RAK4631, Heltec V3) use a single lithium battery cell. The voltage tells you how much charge is left:"}),y.jsx(jt,{headers:["Voltage","Charge","What To Do"],rows:[["4.20V","100%","Full"],["3.80V","~60%","Fine"],[y.jsx("strong",{children:"3.60V"}),y.jsx("strong",{children:"~30%"}),y.jsx(y.Fragment,{children:y.jsx("strong",{children:"⚠️ Warning — charge it soon"})})],[y.jsx("strong",{children:"3.50V"}),y.jsx("strong",{children:"~15%"}),y.jsx(y.Fragment,{children:y.jsx("strong",{children:"🔴 Low — charge it now"})})],[y.jsx("strong",{children:"3.40V"}),y.jsx("strong",{children:"~7%"}),y.jsx(y.Fragment,{children:y.jsx("strong",{children:"⚫ About to die"})})],["3.30V","~3%","Device shutting down"]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"USB-powered nodes"})," report 100% battery even if there's no battery installed. Battery alerts only matter for nodes actually running on battery power."]}),y.jsx(Te,{children:"Node Offline Detection"}),y.jsx("p",{children:`MeshAI marks a node as "offline" when it hasn't been heard for a configurable time period. Different node types need different thresholds:`}),y.jsx(jt,{headers:["Node Type","Recommended Threshold","Why"],rows:[["Fixed infrastructure (wall power)",y.jsx("strong",{children:"2 hours"}),"These should always be transmitting. 2 hours of silence means something is wrong."],["Fixed client (wall power)","2-4 hours","Same logic, slightly more lenient."],["Mobile / vehicle","4-8 hours","They go behind mountains, into garages, out of range. Normal."],["Solar-powered","12-24 hours","May shut down at night when solar stops charging."]]}),y.jsxs("p",{children:[y.jsx("strong",{children:"Rule of thumb"}),`: set the threshold to about 4× the node's beacon interval. Too tight and nodes will constantly flap "offline/online" from normal gaps. Too loose and real outages go unnoticed.`]})]}),y.jsxs(vi,{id:"notifications",title:"Notifications",children:[y.jsx(Te,{children:"How It Works"}),y.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx("strong",{children:"Something happens"})," — a fire is detected, weather warning issued, node goes offline, etc."]}),y.jsxs("li",{children:[y.jsx("strong",{children:"MeshAI checks your rules"})," — does this event match any of your notification rules? Is it severe enough?"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"If a rule matches"})," — MeshAI sends the notification through whatever delivery method that rule is configured for."]})]}),y.jsx(Te,{children:"Building Rules"}),y.jsx("p",{children:"Each rule answers three questions:"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx("strong",{children:"WHEN"})," does it trigger? (which categories, what severity)"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"WHERE"})," does it send? (mesh broadcast, email, webhook, etc.)"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"HOW OFTEN"})," at most? (cooldown period)"]})]}),y.jsx("p",{children:'Use "Add from Template" to start with a pre-built rule and customize it, or build from scratch with "Add Rule."'}),y.jsx(Te,{children:"Severity Levels — What Should I Set?"}),y.jsx(jt,{headers:["Level","When It's Used","Notification Volume"],rows:[["Info","Routine stuff (ducting detected, new router appeared)","High — lots of messages"],["Advisory","Worth knowing (weather advisory, slow traffic, battery declining)","Moderate"],["Watch","Pay attention (fire within 50km, weather watch, stream rising)","Low-moderate"],[y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Warning"})," ✓"]}),"Take action (fire within 15km, severe weather, critical battery)","Low — recommended for most rules"],["Emergency","Life safety (extreme weather, fire at infrastructure, total blackout)","Very rare"]]}),y.jsxs("p",{children:[y.jsx("strong",{children:'"Warning" is the sweet spot for most rules.'})," You get alerted when something actually needs your attention without being overwhelmed by every minor event."]}),y.jsx(Te,{children:"Webhook — The Swiss Army Knife"}),y.jsx("p",{children:"A webhook sends your alert as an HTTP POST to any URL. This one delivery method works with:"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx("strong",{children:"Discord"})," — use a Discord webhook URL"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Slack"})," — use a Slack incoming webhook URL"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"ntfy.sh"})," — POST to ",y.jsx($e,{children:"https://ntfy.sh/your-topic"})]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Pushover"})," — POST to the Pushover API"]}),y.jsxs("li",{children:[y.jsx("strong",{children:"Home Assistant"})," — POST to an automation webhook URL"]}),y.jsx("li",{children:"Anything else that accepts HTTP POST"})]}),y.jsx("p",{children:"MeshAI doesn't need to know what's on the other end. Give it the URL and it works."})]}),y.jsxs(vi,{id:"commands",title:"Commands",children:[y.jsxs("p",{children:["All commands use the ",y.jsx($e,{children:"!"})," prefix (configurable). Send these as a direct message to MeshAI on your mesh."]}),y.jsx(Te,{children:"Basic Commands"}),y.jsx(jt,{headers:["Command","What It Does"],rows:[[y.jsx($e,{children:"!help"}),"Shows all available commands"],[y.jsx($e,{children:"!ping"}),"Tests if the bot is alive"],[y.jsx($e,{children:"!status"}),"Quick mesh summary (nodes online, health score)"],[y.jsx($e,{children:"!health"}),"Detailed health report with pillar scores"],[y.jsx($e,{children:"!weather"}),"Current weather for your area"]]}),y.jsx(Te,{children:"Environmental Commands"}),y.jsx(jt,{headers:["Command","What It Does"],rows:[[y.jsx($e,{children:"!alerts"}),"Active NWS weather alerts for your area"],[y.jsxs(y.Fragment,{children:[y.jsx($e,{children:"!solar"})," (or ",y.jsx($e,{children:"!hf"}),")"]}),"Current solar indices and RF conditions"],[y.jsx($e,{children:"!fire"}),"Active wildfires near your mesh"],[y.jsx($e,{children:"!avy"}),'Avalanche advisory (seasonal — shows "off season" in summer)'],[y.jsxs(y.Fragment,{children:[y.jsx($e,{children:"!streams"})," (or ",y.jsx($e,{children:"!gauges"}),")"]}),"Stream gauge readings"],[y.jsxs(y.Fragment,{children:[y.jsx($e,{children:"!roads"})," (or ",y.jsx($e,{children:"!traffic"}),")"]}),"Road conditions and traffic flow"],[y.jsx($e,{children:"!hotspots"}),"Satellite fire detections"]]}),y.jsx(Te,{children:"Subscription Commands"}),y.jsx(jt,{headers:["Command","What It Does"],rows:[[y.jsx($e,{children:"!subscribe"}),"Lists all alert categories you can subscribe to"],[y.jsx($e,{children:"!subscribe fire_proximity"}),"Subscribe to a specific category"],[y.jsx($e,{children:"!subscribe all"}),"Subscribe to everything"],[y.jsx($e,{children:"!unsubscribe fire_proximity"}),"Unsubscribe from a category"],[y.jsx($e,{children:"!subscriptions"}),"Shows what you're currently subscribed to"]]}),y.jsx(Te,{children:"Conversational"}),y.jsx("p",{children:`MeshAI isn't just commands — you can ask it questions in plain English. "How's the mesh doing?" "Is there any ducting?" "What's the fire situation?" "How's traffic on I-84?" It uses the live environmental data and mesh health data to answer.`})]}),y.jsxs(vi,{id:"api",title:"API Reference",children:[y.jsxs("p",{children:["MeshAI's REST API is available at ",y.jsx($e,{children:"http://your-host:8080"}),". All endpoints return JSON."]}),y.jsx(Te,{children:"System"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/status"})," — version, uptime, node count"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/channels"})," — radio channel list"]}),y.jsxs("li",{children:[y.jsx($e,{children:"POST /api/restart"})," — restart the bot"]})]}),y.jsx(Te,{children:"Mesh Data"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/health"})," — health score and pillars"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/nodes"})," — all nodes with positions and telemetry"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/edges"})," — neighbor links with signal quality"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/regions"})," — region summaries"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/sources"})," — data source health"]})]}),y.jsx(Te,{children:"Configuration"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/config"})," — full config"]}),y.jsxs("li",{children:[y.jsxs($e,{children:["GET /api/config/","{section}"]})," — one section"]}),y.jsxs("li",{children:[y.jsxs($e,{children:["PUT /api/config/","{section}"]})," — update a section"]})]}),y.jsx(Te,{children:"Environmental"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/env/status"})," — per-feed health"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/env/active"})," — all active events"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/env/swpc"})," — solar/geomagnetic data"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/env/ducting"})," — atmospheric profile"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/env/fires"})," — wildfire perimeters"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/env/hotspots"})," — satellite fire detections"]})]}),y.jsx(Te,{children:"Alerts"}),y.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/alerts/active"})," — current alerts"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/alerts/history"})," — past alerts"]}),y.jsxs("li",{children:[y.jsx($e,{children:"GET /api/notifications/categories"})," — available alert categories"]})]}),y.jsx(Te,{children:"Real-time"}),y.jsx("ul",{className:"list-disc list-inside ml-4 space-y-1",children:y.jsxs("li",{children:[y.jsx($e,{children:"ws://your-host:8080/ws/live"})," — WebSocket for live updates"]})})]})]})})]})}const wet=1500;function Tet(){const[e,t]=H.useState({}),[r,n]=H.useState({}),[i,a]=H.useState(!0),[o,s]=H.useState(null),[l,u]=H.useState({}),[c,f]=H.useState({}),[h,d]=H.useState({}),v=H.useCallback(async()=>{a(!0),s(null);try{const[S,T]=await Promise.all([fetch("/api/adapter-config"),fetch("/api/adapter-meta")]);if(!S.ok)throw new Error(`GET /adapter-config: ${S.status}`);if(!T.ok)throw new Error(`GET /adapter-meta: ${T.status}`);t(await S.json()),n(await T.json())}catch(S){s(String(S))}finally{a(!1)}},[]);H.useEffect(()=>{v()},[v]);const g=H.useCallback((S,T,C)=>{f(A=>({...A,[S]:T})),C&&d(A=>({...A,[S]:C})),T==="saved"&&setTimeout(()=>{f(A=>A[S]==="saved"?{...A,[S]:"idle"}:A)},wet)},[]),m=H.useCallback(async(S,T,C)=>{const A=`${S}.${T}`;g(A,"saving");try{const P=await fetch(`/api/adapter-config/${S}/${T}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:C})});if(!P.ok){const E=(await P.json().catch(()=>({}))).detail||P.statusText;g(A,"error",String(E));return}const I=await P.json();t(k=>({...k,[S]:(k[S]||[]).map(E=>E.key===T?I:E)})),g(A,"saved")}catch(P){g(A,"error",String(P))}},[g]),x=H.useCallback(async(S,T)=>{const C=`${S}.${T}`;g(C,"saving");try{const A=await fetch(`/api/adapter-config/${S}/${T}/reset`,{method:"POST"});if(!A.ok){g(C,"error",`reset failed (${A.status})`);return}const P=await A.json();t(I=>({...I,[S]:(I[S]||[]).map(k=>k.key===T?P:k)})),g(C,"saved")}catch(A){g(C,"error",String(A))}},[g]),_=H.useCallback(async(S,T)=>{const C=`meta:${S}`;g(C,"saving");try{const A=await fetch(`/api/adapter-meta/${S}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(T)});if(!A.ok){const I=await A.json().catch(()=>({}));g(C,"error",String(I.detail||A.statusText));return}const P=await A.json();n(I=>({...I,[S]:P})),g(C,"saved")}catch(A){g(C,"error",String(A))}},[g]);if(i)return y.jsxs("div",{className:"p-6 flex items-center gap-2 text-slate-400",children:[y.jsx(Ky,{className:"w-5 h-5 animate-spin"})," Loading adapter config…"]});if(o)return y.jsxs("div",{className:"p-6 text-red-400",children:[y.jsx(su,{className:"w-5 h-5 inline mr-2"}),"Failed to load: ",o]});const b=Array.from(new Set([...Object.keys(r),...Object.keys(e)])).sort();return y.jsxs("div",{className:"p-6 space-y-4",children:[y.jsxs("div",{className:"flex items-center gap-2 text-slate-200",children:[y.jsx(VZ,{className:"w-5 h-5"}),y.jsx("h1",{className:"text-xl font-semibold",children:"Adapter Config"}),y.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[Object.values(e).reduce((S,T)=>S+T.length,0)," settings across ",b.length," adapters"]})]}),y.jsx("p",{className:"text-xs text-slate-400 max-w-3xl",children:"Per-adapter tunables (thresholds, freshness windows, toggles, curation lists). Changes take effect on the next handler call -- no container restart needed. Sentence templates, emoji, and translation maps live in code by design."}),b.map(S=>{const T=r[S]||{display_name:S,include_in_llm_context:!0,description:""},C=e[S]||[],A=l[S]??!1,P=`meta:${S}`,I=c[P]||"idle";return y.jsxs("div",{className:"bg-slate-800/60 border border-slate-700 rounded-lg",children:[y.jsxs("div",{className:"p-4 flex items-start gap-4",children:[y.jsx("button",{onClick:()=>u(k=>({...k,[S]:!k[S]})),className:"text-slate-400 hover:text-white","aria-label":"toggle expand",children:A?y.jsx(yu,{className:"w-5 h-5"}):y.jsx(ou,{className:"w-5 h-5"})}),y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("h2",{className:"text-base font-semibold text-slate-100",children:T.display_name}),y.jsx("code",{className:"text-xs text-slate-500",children:S}),C.length>0&&y.jsxs("span",{className:"text-xs text-slate-400 ml-1",children:["(",C.length," settings)"]}),C.length===0&&y.jsx("span",{className:"text-xs text-slate-500 ml-1 italic",children:"(meta only)"})]}),T.description&&y.jsx("p",{className:"text-xs text-slate-400 mt-1",children:T.description})]}),y.jsxs("label",{className:"flex items-center gap-2 text-xs text-slate-300 select-none",children:[y.jsx("input",{type:"checkbox",checked:T.include_in_llm_context,onChange:k=>_(S,{include_in_llm_context:k.target.checked}),className:"w-4 h-4 accent-cyan-500"}),"LLM context",y.jsx(sae,{status:I,error:h[P]})]})]}),A&&C.length>0&&y.jsx("div",{className:"border-t border-slate-700 divide-y divide-slate-700/60",children:C.map(k=>y.jsx(Cet,{row:k,status:c[`${S}.${k.key}`]||"idle",error:h[`${S}.${k.key}`],onCommit:E=>m(S,k.key,E),onReset:()=>x(S,k.key)},k.key))})]},S)})]})}function Cet({row:e,status:t,error:r,onCommit:n,onReset:i}){const[a,o]=H.useState(SP(e));H.useEffect(()=>{o(SP(e))},[e.value,e.type]);const s=a!==SP(e),l=JSON.stringify(e.value)===JSON.stringify(e.default),u=()=>{const c=Aet(a,e.type);c.error||c.changed(e.value)&&n(c.value)};return y.jsxs("div",{className:"px-6 py-3 flex items-start gap-4",children:[y.jsxs("div",{className:"flex-1 min-w-0",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx("code",{className:"text-sm font-mono text-cyan-300",children:e.key}),y.jsxs("span",{className:"text-xs text-slate-500",children:["[",e.type,"]"]}),!l&&y.jsx("span",{className:"text-xs text-amber-400",children:"edited"})]}),e.description&&y.jsx("p",{className:"text-xs text-slate-400 mt-1",children:e.description})]}),y.jsxs("div",{className:"flex items-center gap-2 min-w-[280px] justify-end",children:[e.type==="bool"?y.jsx("input",{type:"checkbox",checked:e.value===!0,onChange:c=>n(c.target.checked),className:"w-5 h-5 accent-cyan-500"}):e.type==="json"?y.jsx("textarea",{className:"w-72 h-20 bg-slate-900 border border-slate-700 rounded px-2 py-1 text-xs font-mono text-slate-100",value:a,onChange:c=>o(c.target.value),onBlur:u}):y.jsx("input",{type:e.type==="int"||e.type==="float"?"number":"text",step:e.type==="float"?"any":"1",className:"w-48 bg-slate-900 border border-slate-700 rounded px-2 py-1 text-sm text-slate-100",value:a,onChange:c=>o(c.target.value),onBlur:u,onKeyDown:c=>{c.key==="Enter"&&c.target.blur()}}),y.jsx(sae,{status:t,error:r,dirty:s}),y.jsx("button",{onClick:i,disabled:l,className:"text-slate-400 hover:text-white disabled:opacity-30 disabled:cursor-not-allowed",title:"Reset to default",children:y.jsx(DS,{className:"w-4 h-4"})})]})]})}function sae({status:e,error:t,dirty:r}){return e==="saving"?y.jsx(Ky,{className:"w-4 h-4 text-cyan-400 animate-spin"}):e==="saved"?y.jsx(zo,{className:"w-4 h-4 text-emerald-400"}):e==="error"?y.jsx("span",{title:t,className:"text-red-400 cursor-help",children:y.jsx(su,{className:"w-4 h-4"})}):r?y.jsx("span",{className:"w-2 h-2 bg-amber-400 rounded-full",title:"unsaved"}):y.jsx("span",{className:"w-4 h-4"})}function SP(e){return e.type==="bool"?String(e.value===!0):e.type==="json"?JSON.stringify(e.value,null,2):e.value===null||e.value===void 0?"":String(e.value)}function Aet(e,t){if(t==="int"){const r=Number(e);return!Number.isFinite(r)||!Number.isInteger(r)?{error:"expected integer",value:null,changed:()=>!1}:{error:null,value:r,changed:n=>n!==r}}if(t==="float"){const r=Number(e);return Number.isFinite(r)?{error:null,value:r,changed:n=>n!==r}:{error:"expected number",value:null,changed:()=>!1}}if(t==="str")return{error:null,value:e,changed:r=>r!==e};if(t==="json")try{const r=JSON.parse(e);return{error:null,value:r,changed:n=>JSON.stringify(n)!==JSON.stringify(r)}}catch{return{error:"invalid JSON",value:null,changed:()=>!1}}return{error:null,value:e,changed:()=>!0}}const TP={site_id:"",gauge_name:"",lat:0,lon:0,action_ft:null,flood_minor_ft:null,flood_moderate_ft:null,flood_major_ft:null,enabled:!0,updated_at:0};function Met(){const[e,t]=H.useState([]),[r,n]=H.useState(!0),[i,a]=H.useState(null),[o,s]=H.useState(null),[l,u]=H.useState(TP),[c,f]=H.useState(!1),[h,d]=H.useState("unknown"),v=H.useCallback(async()=>{n(!0),a(null);try{const S=await fetch("/api/gauge-sites");if(!S.ok)throw new Error(`GET: ${S.status}`);t(await S.json())}catch(S){a(String(S))}finally{n(!1)}},[]);H.useEffect(()=>{v()},[v]),H.useEffect(()=>{fetch("/api/config/environmental").then(S=>S.json()).then(S=>{var T;return d(((T=S==null?void 0:S.usgs)==null?void 0:T.feed_source)||"unknown")}).catch(()=>d("unknown"))},[]);const g=S=>{s(S.site_id),u({...S}),f(!1)},m=()=>{f(!0),s(null),u({...TP})},x=()=>{s(null),f(!1),u(TP)},_=async()=>{try{const S=c?"/api/gauge-sites":`/api/gauge-sites/${o}`,C=await fetch(S,{method:c?"POST":"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)});if(!C.ok){const A=await C.json().catch(()=>({}));alert(`save failed: ${A.detail||C.statusText}`);return}x(),v()}catch(S){alert(String(S))}},b=async S=>{if(!confirm(`Delete ${S}?`))return;const T=await fetch(`/api/gauge-sites/${S}`,{method:"DELETE"});if(!T.ok){alert(`delete failed: ${T.status}`);return}v()};return r?y.jsxs("div",{className:"p-6 text-slate-400",children:[y.jsx(Ky,{className:"w-5 h-5 animate-spin inline mr-2"}),"Loading…"]}):i?y.jsxs("div",{className:"p-6 text-red-400",children:["Load failed: ",i]}):y.jsxs("div",{className:"p-6 space-y-4",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx(LS,{className:"w-5 h-5 text-cyan-400"}),y.jsx("h1",{className:"text-xl font-semibold text-slate-100",children:"Gauge Sites"}),y.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[e.length," sites"]}),y.jsxs("button",{onClick:m,className:"ml-auto flex items-center gap-1 px-3 py-1 bg-cyan-700 hover:bg-cyan-600 rounded text-white text-sm",children:[y.jsx(yv,{className:"w-4 h-4"})," Add site"]})]}),y.jsx("p",{className:"text-xs text-slate-400 max-w-3xl",children:"NWS-AHPS stream gauge thresholds curated for the nwis_handler. Disabled rows are ignored at envelope time. Changes propagate to the handler on the next event."}),c&&y.jsx(o7,{draft:l,setDraft:u,onSave:_,onCancel:x,adding:!0,feedSource:h}),y.jsx("div",{className:"bg-slate-800/60 border border-slate-700 rounded-lg overflow-x-auto",children:y.jsxs("table",{className:"w-full text-sm text-slate-200",children:[y.jsx("thead",{className:"bg-slate-900 text-xs text-slate-400 uppercase",children:y.jsxs("tr",{children:[y.jsx("th",{className:"px-3 py-2 text-left",children:"Site ID"}),y.jsx("th",{className:"px-3 py-2 text-left",children:"Name"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Lat,Lon"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Action"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Minor"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Moderate"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Major"}),y.jsx("th",{className:"px-3 py-2 text-center",children:"On"}),y.jsx("th",{className:"px-3 py-2"})]})}),y.jsx("tbody",{className:"divide-y divide-slate-700/60",children:e.map(S=>o===S.site_id?y.jsx("tr",{className:"bg-slate-900/40",children:y.jsx("td",{colSpan:9,className:"px-3 py-2",children:y.jsx(o7,{draft:l,setDraft:u,onSave:_,onCancel:x,feedSource:h})})},S.site_id):y.jsxs("tr",{className:"hover:bg-slate-800/50",children:[y.jsx("td",{className:"px-3 py-2 font-mono text-xs",children:S.site_id}),y.jsx("td",{className:"px-3 py-2",children:S.gauge_name}),y.jsxs("td",{className:"px-3 py-2 text-right text-xs",children:[S.lat.toFixed(3),",",S.lon.toFixed(3)]}),y.jsx("td",{className:"px-3 py-2 text-right",children:S.action_ft??"-"}),y.jsx("td",{className:"px-3 py-2 text-right",children:S.flood_minor_ft??"-"}),y.jsx("td",{className:"px-3 py-2 text-right",children:S.flood_moderate_ft??"-"}),y.jsx("td",{className:"px-3 py-2 text-right",children:S.flood_major_ft??"-"}),y.jsx("td",{className:"px-3 py-2 text-center",children:S.enabled?y.jsx(zo,{className:"w-4 h-4 text-emerald-400 inline"}):y.jsx(Xa,{className:"w-4 h-4 text-slate-500 inline"})}),y.jsxs("td",{className:"px-3 py-2 text-right",children:[y.jsx("button",{onClick:()=>g(S),className:"text-cyan-400 hover:text-cyan-300 text-xs mr-3",children:"Edit"}),y.jsx("button",{onClick:()=>b(S.site_id),className:"text-red-400 hover:text-red-300",children:y.jsx(Jy,{className:"w-4 h-4 inline"})})]})]},S.site_id))})]})})]})}function o7({draft:e,setDraft:t,onSave:r,onCancel:n,adding:i,feedSource:a}){const o=(v,g)=>t({...e,[v]:g}),[s,l]=H.useState(!1),[u,c]=H.useState(null),f=a!=="native"||!e.site_id.trim(),h=a!=="native"?"USGS lookup not available in central-feed mode (would be AND-model anti-pattern). Enter values manually.":e.site_id.trim()?"Auto-populate from USGS / NWS NWPS":"Enter a site_id first",d=async()=>{if(!f){l(!0),c(null);try{const v=e.site_id.replace(/^USGS-/i,""),g=await fetch(`/api/env/usgs/lookup/${encodeURIComponent(v)}`);if(g.status===404){const _=await g.json().catch(()=>({}));c(_.detail||"Lookup unavailable -- enter values manually"),l(!1);return}if(!g.ok){c(`Lookup failed (${g.status})`),l(!1);return}const m=await g.json(),x={...e};m.name&&!x.gauge_name&&(x.gauge_name=m.name),typeof m.lat=="number"&&(x.lat=m.lat),typeof m.lon=="number"&&(x.lon=m.lon),typeof m.action_ft=="number"&&(x.action_ft=m.action_ft),typeof m.flood_minor_ft=="number"&&(x.flood_minor_ft=m.flood_minor_ft),typeof m.flood_moderate_ft=="number"&&(x.flood_moderate_ft=m.flood_moderate_ft),typeof m.flood_major_ft=="number"&&(x.flood_major_ft=m.flood_major_ft),t(x)}catch(v){c(String(v))}finally{l(!1)}}};return y.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2 p-3 bg-slate-900/50 rounded",children:[y.jsxs("label",{className:"text-xs text-slate-400 col-span-2",children:["Site ID",y.jsxs("div",{className:"flex items-center gap-1 mt-1",children:[y.jsx("input",{className:"flex-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100 font-mono text-xs",value:e.site_id,onChange:v=>o("site_id",v.target.value),disabled:!i}),y.jsxs("button",{type:"button",onClick:d,disabled:f||s,title:h,className:"px-2 py-1 bg-slate-700 hover:bg-slate-600 disabled:opacity-30 disabled:cursor-not-allowed rounded text-xs text-slate-100 flex items-center gap-1",children:[s?y.jsx(Ky,{className:"w-3 h-3 animate-spin"}):y.jsx(jS,{className:"w-3 h-3"}),"USGS lookup"]})]}),u&&y.jsx("span",{className:"text-amber-400 text-xs mt-1 block",children:u})]}),y.jsxs("label",{className:"text-xs text-slate-400 col-span-2",children:["Gauge name",y.jsx("input",{className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.gauge_name,onChange:v=>o("gauge_name",v.target.value)})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Lat",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lat,onChange:v=>o("lat",parseFloat(v.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Lon",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lon,onChange:v=>o("lon",parseFloat(v.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Action ft",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.action_ft??"",onChange:v=>o("action_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Minor flood ft",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.flood_minor_ft??"",onChange:v=>o("flood_minor_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Moderate flood ft",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.flood_moderate_ft??"",onChange:v=>o("flood_moderate_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Major flood ft",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.flood_major_ft??"",onChange:v=>o("flood_major_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-300 col-span-2 flex items-center gap-2 mt-2",children:[y.jsx("input",{type:"checkbox",checked:e.enabled,onChange:v=>o("enabled",v.target.checked),className:"accent-cyan-500"}),"Enabled"]}),y.jsxs("div",{className:"col-span-2 flex items-center justify-end gap-2 mt-2",children:[y.jsx("button",{onClick:n,className:"px-3 py-1 text-slate-300 hover:bg-slate-700 rounded text-sm",children:"Cancel"}),y.jsx("button",{onClick:r,className:"px-3 py-1 bg-cyan-700 hover:bg-cyan-600 text-white rounded text-sm",children:"Save"})]})]})}const CP={anchor_id:0,name:"",lat:0,lon:0,state:"ID",enabled:!0,updated_at:0};function Pet(){const[e,t]=H.useState([]),[r,n]=H.useState(!0),[i,a]=H.useState(null),[o,s]=H.useState(null),[l,u]=H.useState(!1),[c,f]=H.useState(CP),h=H.useCallback(async()=>{n(!0),a(null);try{const _=await fetch("/api/town-anchors");if(!_.ok)throw new Error(`GET: ${_.status}`);t(await _.json())}catch(_){a(String(_))}finally{n(!1)}},[]);H.useEffect(()=>{h()},[h]);const d=_=>{s(_.anchor_id),f({..._}),u(!1)},v=()=>{u(!0),s(null),f({...CP})},g=()=>{s(null),u(!1),f(CP)},m=async()=>{const _=l?"/api/town-anchors":`/api/town-anchors/${o}`,S=await fetch(_,{method:l?"POST":"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!S.ok){const T=await S.json().catch(()=>({}));alert(`save failed: ${T.detail||S.statusText}`);return}g(),h()},x=async _=>{if(!confirm(`Delete anchor ${_}?`))return;const b=await fetch(`/api/town-anchors/${_}`,{method:"DELETE"});if(!b.ok){alert(`delete failed: ${b.status}`);return}h()};return r?y.jsxs("div",{className:"p-6 text-slate-400",children:[y.jsx(Ky,{className:"w-5 h-5 animate-spin inline mr-2"}),"Loading…"]}):i?y.jsxs("div",{className:"p-6 text-red-400",children:["Load failed: ",i]}):y.jsxs("div",{className:"p-6 space-y-4",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx(mv,{className:"w-5 h-5 text-cyan-400"}),y.jsx("h1",{className:"text-xl font-semibold text-slate-100",children:"Town Anchors"}),y.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[e.length," towns"]}),y.jsxs("button",{onClick:v,className:"ml-auto flex items-center gap-1 px-3 py-1 bg-cyan-700 hover:bg-cyan-600 rounded text-white text-sm",children:[y.jsx(yv,{className:"w-4 h-4"})," Add town"]})]}),y.jsx("p",{className:"text-xs text-slate-400 max-w-3xl",children:'Lookup table for the "X mi of " anchor in wire-string rendering. Disabled rows fall through to the generic anchor chain.'}),l&&y.jsx(s7,{draft:c,setDraft:f,onSave:m,onCancel:g,adding:!0}),y.jsx("div",{className:"bg-slate-800/60 border border-slate-700 rounded-lg overflow-x-auto",children:y.jsxs("table",{className:"w-full text-sm text-slate-200",children:[y.jsx("thead",{className:"bg-slate-900 text-xs text-slate-400 uppercase",children:y.jsxs("tr",{children:[y.jsx("th",{className:"px-3 py-2 text-left",children:"Name"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Lat"}),y.jsx("th",{className:"px-3 py-2 text-right",children:"Lon"}),y.jsx("th",{className:"px-3 py-2 text-center",children:"State"}),y.jsx("th",{className:"px-3 py-2 text-center",children:"On"}),y.jsx("th",{className:"px-3 py-2"})]})}),y.jsx("tbody",{className:"divide-y divide-slate-700/60",children:e.map(_=>o===_.anchor_id?y.jsx("tr",{className:"bg-slate-900/40",children:y.jsx("td",{colSpan:6,className:"px-3 py-2",children:y.jsx(s7,{draft:c,setDraft:f,onSave:m,onCancel:g})})},_.anchor_id):y.jsxs("tr",{className:"hover:bg-slate-800/50",children:[y.jsx("td",{className:"px-3 py-2 capitalize",children:_.name}),y.jsx("td",{className:"px-3 py-2 text-right text-xs",children:_.lat.toFixed(4)}),y.jsx("td",{className:"px-3 py-2 text-right text-xs",children:_.lon.toFixed(4)}),y.jsx("td",{className:"px-3 py-2 text-center text-xs",children:_.state||"-"}),y.jsx("td",{className:"px-3 py-2 text-center",children:_.enabled?y.jsx(zo,{className:"w-4 h-4 text-emerald-400 inline"}):y.jsx(Xa,{className:"w-4 h-4 text-slate-500 inline"})}),y.jsxs("td",{className:"px-3 py-2 text-right",children:[y.jsx("button",{onClick:()=>d(_),className:"text-cyan-400 hover:text-cyan-300 text-xs mr-3",children:"Edit"}),y.jsx("button",{onClick:()=>x(_.anchor_id),className:"text-red-400 hover:text-red-300",children:y.jsx(Jy,{className:"w-4 h-4 inline"})})]})]},_.anchor_id))})]})})]})}function s7({draft:e,setDraft:t,onSave:r,onCancel:n,adding:i}){const a=(o,s)=>t({...e,[o]:s});return y.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2 p-3 bg-slate-900/50 rounded",children:[y.jsxs("label",{className:"text-xs text-slate-400 col-span-2",children:["Name (lowercased on save)",y.jsx("input",{className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.name,onChange:o=>a("name",o.target.value),disabled:!i})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["State",y.jsx("input",{className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.state??"",onChange:o=>a("state",o.target.value)})]}),y.jsxs("label",{className:"text-xs text-slate-400 flex items-center gap-2",children:[y.jsx("input",{type:"checkbox",checked:e.enabled,onChange:o=>a("enabled",o.target.checked),className:"accent-cyan-500 mt-4"}),"Enabled"]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Lat",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lat,onChange:o=>a("lat",parseFloat(o.target.value))})]}),y.jsxs("label",{className:"text-xs text-slate-400",children:["Lon",y.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lon,onChange:o=>a("lon",parseFloat(o.target.value))})]}),y.jsxs("div",{className:"col-span-2 flex items-center justify-end gap-2 mt-2",children:[y.jsx("button",{onClick:n,className:"px-3 py-1 text-slate-300 hover:bg-slate-700 rounded text-sm",children:"Cancel"}),y.jsx("button",{onClick:r,className:"px-3 py-1 bg-cyan-700 hover:bg-cyan-600 text-white rounded text-sm",children:"Save"})]})]})}function ket(){return y.jsx(Nce,{children:y.jsx($ce,{children:y.jsxs(Uue,{children:[y.jsx(Ma,{path:"/",element:y.jsx(xNe,{})}),y.jsx(Ma,{path:"/mesh",element:y.jsx(jQe,{})}),y.jsx(Ma,{path:"/environment",element:y.jsx(oet,{})}),y.jsx(Ma,{path:"/config",element:y.jsx(ret,{})}),y.jsx(Ma,{path:"/alerts",element:y.jsx(pet,{})}),y.jsx(Ma,{path:"/notifications",element:y.jsx(_et,{})}),y.jsx(Ma,{path:"/reference",element:y.jsx(bet,{})}),y.jsx(Ma,{path:"/adapter-config",element:y.jsx(Tet,{})}),y.jsx(Ma,{path:"/gauge-sites",element:y.jsx(Met,{})}),y.jsx(Ma,{path:"/town-anchors",element:y.jsx(Pet,{})})]})})})}AP.createRoot(document.getElementById("root")).render(y.jsx(Q.StrictMode,{children:y.jsx(Que,{children:y.jsx(ket,{})})})); + */(function(e,t){(function(r,n){n(t)})(fg,function(r){var n="1.9.4";function i(p){var w,M,E,j;for(M=1,E=arguments.length;M"u"||!L||!L.Mixin)){p=b(p)?p:[p];for(var w=0;w0?Math.floor(p):Math.ceil(p)};B.prototype={clone:function(){return new B(this.x,this.y)},add:function(p){return this.clone()._add(W(p))},_add:function(p){return this.x+=p.x,this.y+=p.y,this},subtract:function(p){return this.clone()._subtract(W(p))},_subtract:function(p){return this.x-=p.x,this.y-=p.y,this},divideBy:function(p){return this.clone()._divideBy(p)},_divideBy:function(p){return this.x/=p,this.y/=p,this},multiplyBy:function(p){return this.clone()._multiplyBy(p)},_multiplyBy:function(p){return this.x*=p,this.y*=p,this},scaleBy:function(p){return new B(this.x*p.x,this.y*p.y)},unscaleBy:function(p){return new B(this.x/p.x,this.y/p.y)},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.clone()._ceil()},_ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},trunc:function(){return this.clone()._trunc()},_trunc:function(){return this.x=Z(this.x),this.y=Z(this.y),this},distanceTo:function(p){p=W(p);var w=p.x-this.x,M=p.y-this.y;return Math.sqrt(w*w+M*M)},equals:function(p){return p=W(p),p.x===this.x&&p.y===this.y},contains:function(p){return p=W(p),Math.abs(p.x)<=Math.abs(this.x)&&Math.abs(p.y)<=Math.abs(this.y)},toString:function(){return"Point("+h(this.x)+", "+h(this.y)+")"}};function W(p,w,M){return p instanceof B?p:b(p)?new B(p[0],p[1]):p==null?p:typeof p=="object"&&"x"in p&&"y"in p?new B(p.x,p.y):new B(p,w,M)}function G(p,w){if(p)for(var M=w?[p,w]:p,E=0,j=M.length;E=this.min.x&&M.x<=this.max.x&&w.y>=this.min.y&&M.y<=this.max.y},intersects:function(p){p=Y(p);var w=this.min,M=this.max,E=p.min,j=p.max,U=j.x>=w.x&&E.x<=M.x,X=j.y>=w.y&&E.y<=M.y;return U&&X},overlaps:function(p){p=Y(p);var w=this.min,M=this.max,E=p.min,j=p.max,U=j.x>w.x&&E.xw.y&&E.y=w.lat&&j.lat<=M.lat&&E.lng>=w.lng&&j.lng<=M.lng},intersects:function(p){p=ee(p);var w=this._southWest,M=this._northEast,E=p.getSouthWest(),j=p.getNorthEast(),U=j.lat>=w.lat&&E.lat<=M.lat,X=j.lng>=w.lng&&E.lng<=M.lng;return U&&X},overlaps:function(p){p=ee(p);var w=this._southWest,M=this._northEast,E=p.getSouthWest(),j=p.getNorthEast(),U=j.lat>w.lat&&E.latw.lng&&E.lng1,xae=function(){var p=!1;try{var w=Object.defineProperty({},"passive",{get:function(){p=!0}});window.addEventListener("testPassiveEventSupport",f,w),window.removeEventListener("testPassiveEventSupport",f,w)}catch{}return p}(),_ae=function(){return!!document.createElement("canvas").getContext}(),yC=!!(document.createElementNS&&Ge("svg").createSVGRect),bae=!!yC&&function(){var p=document.createElement("div");return p.innerHTML="",(p.firstChild&&p.firstChild.namespaceURI)==="http://www.w3.org/2000/svg"}(),wae=!yC&&function(){try{var p=document.createElement("div");p.innerHTML='';var w=p.firstChild;return w.style.behavior="url(#default#VML)",w&&typeof w.adj=="object"}catch{return!1}}(),Sae=navigator.platform.indexOf("Mac")===0,Tae=navigator.platform.indexOf("Linux")===0;function ro(p){return navigator.userAgent.toLowerCase().indexOf(p)>=0}var Ue={ie:Ft,ielt9:rr,edge:jn,webkit:qr,android:Kn,android23:Bf,androidStock:L0,opera:gC,chrome:n3,gecko:i3,safari:cae,phantom:a3,opera12:o3,win:fae,ie3d:s3,webkit3d:mC,gecko3d:l3,any3d:hae,mobile:rp,mobileWebkit:dae,mobileWebkit3d:vae,msPointer:u3,pointer:c3,touch:pae,touchNative:f3,mobileOpera:gae,mobileGecko:mae,retina:yae,passiveEvents:xae,canvas:_ae,svg:yC,vml:wae,inlineSvg:bae,mac:Sae,linux:Tae},h3=Ue.msPointer?"MSPointerDown":"pointerdown",d3=Ue.msPointer?"MSPointerMove":"pointermove",v3=Ue.msPointer?"MSPointerUp":"pointerup",p3=Ue.msPointer?"MSPointerCancel":"pointercancel",xC={touchstart:h3,touchmove:d3,touchend:v3,touchcancel:p3},g3={touchstart:Lae,touchmove:I0,touchend:I0,touchcancel:I0},zf={},m3=!1;function Cae(p,w,M){return w==="touchstart"&&kae(),g3[w]?(M=g3[w].bind(this,M),p.addEventListener(xC[w],M,!1),M):(console.warn("wrong event specified:",w),f)}function Aae(p,w,M){if(!xC[w]){console.warn("wrong event specified:",w);return}p.removeEventListener(xC[w],M,!1)}function Mae(p){zf[p.pointerId]=p}function Pae(p){zf[p.pointerId]&&(zf[p.pointerId]=p)}function y3(p){delete zf[p.pointerId]}function kae(){m3||(document.addEventListener(h3,Mae,!0),document.addEventListener(d3,Pae,!0),document.addEventListener(v3,y3,!0),document.addEventListener(p3,y3,!0),m3=!0)}function I0(p,w){if(w.pointerType!==(w.MSPOINTER_TYPE_MOUSE||"mouse")){w.touches=[];for(var M in zf)w.touches.push(zf[M]);w.changedTouches=[w],p(w)}}function Lae(p,w){w.MSPOINTER_TYPE_TOUCH&&w.pointerType===w.MSPOINTER_TYPE_TOUCH&&un(w),I0(p,w)}function Iae(p){var w={},M,E;for(E in p)M=p[E],w[E]=M&&M.bind?M.bind(p):M;return p=w,w.type="dblclick",w.detail=2,w.isTrusted=!1,w._simulated=!0,w}var Eae=200;function Oae(p,w){p.addEventListener("dblclick",w);var M=0,E;function j(U){if(U.detail!==1){E=U.detail;return}if(!(U.pointerType==="mouse"||U.sourceCapabilities&&!U.sourceCapabilities.firesTouchEvents)){var X=S3(U);if(!(X.some(function(oe){return oe instanceof HTMLLabelElement&&oe.attributes.for})&&!X.some(function(oe){return oe instanceof HTMLInputElement||oe instanceof HTMLSelectElement}))){var re=Date.now();re-M<=Eae?(E++,E===2&&w(Iae(U))):E=1,M=re}}}return p.addEventListener("click",j),{dblclick:w,simDblclick:j}}function Dae(p,w){p.removeEventListener("dblclick",w.dblclick),p.removeEventListener("click",w.simDblclick)}var _C=D0(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),np=D0(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),x3=np==="webkitTransition"||np==="OTransition"?np+"End":"transitionend";function _3(p){return typeof p=="string"?document.getElementById(p):p}function ip(p,w){var M=p.style[w]||p.currentStyle&&p.currentStyle[w];if((!M||M==="auto")&&document.defaultView){var E=document.defaultView.getComputedStyle(p,null);M=E?E[w]:null}return M==="auto"?null:M}function At(p,w,M){var E=document.createElement(p);return E.className=w||"",M&&M.appendChild(E),E}function nr(p){var w=p.parentNode;w&&w.removeChild(p)}function E0(p){for(;p.firstChild;)p.removeChild(p.firstChild)}function $f(p){var w=p.parentNode;w&&w.lastChild!==p&&w.appendChild(p)}function Ff(p){var w=p.parentNode;w&&w.firstChild!==p&&w.insertBefore(p,w.firstChild)}function bC(p,w){if(p.classList!==void 0)return p.classList.contains(w);var M=O0(p);return M.length>0&&new RegExp("(^|\\s)"+w+"(\\s|$)").test(M)}function ut(p,w){if(p.classList!==void 0)for(var M=v(w),E=0,j=M.length;E0?2*window.devicePixelRatio:1;function C3(p){return Ue.edge?p.wheelDeltaY/2:p.deltaY&&p.deltaMode===0?-p.deltaY/Rae:p.deltaY&&p.deltaMode===1?-p.deltaY*20:p.deltaY&&p.deltaMode===2?-p.deltaY*60:p.deltaX||p.deltaZ?0:p.wheelDelta?(p.wheelDeltaY||p.wheelDelta)/2:p.detail&&Math.abs(p.detail)<32765?-p.detail*20:p.detail?p.detail/-32765*60:0}function OC(p,w){var M=w.relatedTarget;if(!M)return!0;try{for(;M&&M!==p;)M=M.parentNode}catch{return!1}return M!==p}var Bae={__proto__:null,on:st,off:Wt,stopPropagation:Eu,disableScrollPropagation:EC,disableClickPropagation:lp,preventDefault:un,stop:Ou,getPropagationPath:S3,getMousePosition:T3,getWheelDelta:C3,isExternalTarget:OC,addListener:st,removeListener:Wt},A3=$.extend({run:function(p,w,M,E){this.stop(),this._el=p,this._inProgress=!0,this._duration=M||.25,this._easeOutPower=1/Math.max(E||.5,.2),this._startPos=Iu(p),this._offset=w.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(!0),this._complete())},_animate:function(){this._animId=O(this._animate,this),this._step()},_step:function(p){var w=+new Date-this._startTime,M=this._duration*1e3;wthis.options.maxZoom)?this.setZoom(p):this},panInsideBounds:function(p,w){this._enforcingBounds=!0;var M=this.getCenter(),E=this._limitCenter(M,this._zoom,ee(p));return M.equals(E)||this.panTo(E,w),this._enforcingBounds=!1,this},panInside:function(p,w){w=w||{};var M=W(w.paddingTopLeft||w.padding||[0,0]),E=W(w.paddingBottomRight||w.padding||[0,0]),j=this.project(this.getCenter()),U=this.project(p),X=this.getPixelBounds(),re=Y([X.min.add(M),X.max.subtract(E)]),oe=re.getSize();if(!re.contains(U)){this._enforcingBounds=!0;var ve=U.subtract(re.getCenter()),De=re.extend(U).getSize().subtract(oe);j.x+=ve.x<0?-De.x:De.x,j.y+=ve.y<0?-De.y:De.y,this.panTo(this.unproject(j),w),this._enforcingBounds=!1}return this},invalidateSize:function(p){if(!this._loaded)return this;p=i({animate:!1,pan:!0},p===!0?{animate:!0}:p);var w=this.getSize();this._sizeChanged=!0,this._lastCenter=null;var M=this.getSize(),E=w.divideBy(2).round(),j=M.divideBy(2).round(),U=E.subtract(j);return!U.x&&!U.y?this:(p.animate&&p.pan?this.panBy(U):(p.pan&&this._rawPanBy(U),this.fire("move"),p.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(o(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:w,newSize:M}))},stop:function(){return this.setZoom(this._limitZoom(this._zoom)),this.options.zoomSnap||this.fire("viewreset"),this._stop()},locate:function(p){if(p=this._locateOptions=i({timeout:1e4,watch:!1},p),!("geolocation"in navigator))return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var w=o(this._handleGeolocationResponse,this),M=o(this._handleGeolocationError,this);return p.watch?this._locationWatchId=navigator.geolocation.watchPosition(w,M,p):navigator.geolocation.getCurrentPosition(w,M,p),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(p){if(this._container._leaflet_id){var w=p.code,M=p.message||(w===1?"permission denied":w===2?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:w,message:"Geolocation error: "+M+"."})}},_handleGeolocationResponse:function(p){if(this._container._leaflet_id){var w=p.coords.latitude,M=p.coords.longitude,E=new le(w,M),j=E.toBounds(p.coords.accuracy*2),U=this._locateOptions;if(U.setView){var X=this.getBoundsZoom(j);this.setView(E,U.maxZoom?Math.min(X,U.maxZoom):X)}var re={latlng:E,bounds:j,timestamp:p.timestamp};for(var oe in p.coords)typeof p.coords[oe]=="number"&&(re[oe]=p.coords[oe]);this.fire("locationfound",re)}},addHandler:function(p,w){if(!w)return this;var M=this[p]=new w(this);return this._handlers.push(M),this.options[p]&&M.enable(),this},remove:function(){if(this._initEvents(!0),this.options.maxBounds&&this.off("moveend",this._panInsideMaxBounds),this._containerId!==this._container._leaflet_id)throw new Error("Map container is being reused by another instance");try{delete this._container._leaflet_id,delete this._containerId}catch{this._container._leaflet_id=void 0,this._containerId=void 0}this._locationWatchId!==void 0&&this.stopLocate(),this._stop(),nr(this._mapPane),this._clearControlPos&&this._clearControlPos(),this._resizeRequest&&(D(this._resizeRequest),this._resizeRequest=null),this._clearHandlers(),this._loaded&&this.fire("unload");var p;for(p in this._layers)this._layers[p].remove();for(p in this._panes)nr(this._panes[p]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(p,w){var M="leaflet-pane"+(p?" leaflet-"+p.replace("Pane","")+"-pane":""),E=At("div",M,w||this._mapPane);return p&&(this._panes[p]=E),E},getCenter:function(){return this._checkIfLoaded(),this._lastCenter&&!this._moved()?this._lastCenter.clone():this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var p=this.getPixelBounds(),w=this.unproject(p.getBottomLeft()),M=this.unproject(p.getTopRight());return new K(w,M)},getMinZoom:function(){return this.options.minZoom===void 0?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===void 0?this._layersMaxZoom===void 0?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(p,w,M){p=ee(p),M=W(M||[0,0]);var E=this.getZoom()||0,j=this.getMinZoom(),U=this.getMaxZoom(),X=p.getNorthWest(),re=p.getSouthEast(),oe=this.getSize().subtract(M),ve=Y(this.project(re,E),this.project(X,E)).getSize(),De=Ue.any3d?this.options.zoomSnap:1,Qe=oe.x/ve.x,pt=oe.y/ve.y,Rn=w?Math.max(Qe,pt):Math.min(Qe,pt);return E=this.getScaleZoom(Rn,E),De&&(E=Math.round(E/(De/100))*(De/100),E=w?Math.ceil(E/De)*De:Math.floor(E/De)*De),Math.max(j,Math.min(U,E))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new B(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(p,w){var M=this._getTopLeftPoint(p,w);return new G(M,M.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._pixelOrigin},getPixelWorldBounds:function(p){return this.options.crs.getProjectedBounds(p===void 0?this.getZoom():p)},getPane:function(p){return typeof p=="string"?this._panes[p]:p},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(p,w){var M=this.options.crs;return w=w===void 0?this._zoom:w,M.scale(p)/M.scale(w)},getScaleZoom:function(p,w){var M=this.options.crs;w=w===void 0?this._zoom:w;var E=M.zoom(p*M.scale(w));return isNaN(E)?1/0:E},project:function(p,w){return w=w===void 0?this._zoom:w,this.options.crs.latLngToPoint(he(p),w)},unproject:function(p,w){return w=w===void 0?this._zoom:w,this.options.crs.pointToLatLng(W(p),w)},layerPointToLatLng:function(p){var w=W(p).add(this.getPixelOrigin());return this.unproject(w)},latLngToLayerPoint:function(p){var w=this.project(he(p))._round();return w._subtract(this.getPixelOrigin())},wrapLatLng:function(p){return this.options.crs.wrapLatLng(he(p))},wrapLatLngBounds:function(p){return this.options.crs.wrapLatLngBounds(ee(p))},distance:function(p,w){return this.options.crs.distance(he(p),he(w))},containerPointToLayerPoint:function(p){return W(p).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(p){return W(p).add(this._getMapPanePos())},containerPointToLatLng:function(p){var w=this.containerPointToLayerPoint(W(p));return this.layerPointToLatLng(w)},latLngToContainerPoint:function(p){return this.layerPointToContainerPoint(this.latLngToLayerPoint(he(p)))},mouseEventToContainerPoint:function(p){return T3(p,this._container)},mouseEventToLayerPoint:function(p){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(p))},mouseEventToLatLng:function(p){return this.layerPointToLatLng(this.mouseEventToLayerPoint(p))},_initContainer:function(p){var w=this._container=_3(p);if(w){if(w._leaflet_id)throw new Error("Map container is already initialized.")}else throw new Error("Map container not found.");st(w,"scroll",this._onScroll,this),this._containerId=l(w)},_initLayout:function(){var p=this._container;this._fadeAnimated=this.options.fadeAnimation&&Ue.any3d,ut(p,"leaflet-container"+(Ue.touch?" leaflet-touch":"")+(Ue.retina?" leaflet-retina":"")+(Ue.ielt9?" leaflet-oldie":"")+(Ue.safari?" leaflet-safari":"")+(this._fadeAnimated?" leaflet-fade-anim":""));var w=ip(p,"position");w!=="absolute"&&w!=="relative"&&w!=="fixed"&&w!=="sticky"&&(p.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var p=this._panes={};this._paneRenderers={},this._mapPane=this.createPane("mapPane",this._container),Mr(this._mapPane,new B(0,0)),this.createPane("tilePane"),this.createPane("overlayPane"),this.createPane("shadowPane"),this.createPane("markerPane"),this.createPane("tooltipPane"),this.createPane("popupPane"),this.options.markerZoomAnimation||(ut(p.markerPane,"leaflet-zoom-hide"),ut(p.shadowPane,"leaflet-zoom-hide"))},_resetView:function(p,w,M){Mr(this._mapPane,new B(0,0));var E=!this._loaded;this._loaded=!0,w=this._limitZoom(w),this.fire("viewprereset");var j=this._zoom!==w;this._moveStart(j,M)._move(p,w)._moveEnd(j),this.fire("viewreset"),E&&this.fire("load")},_moveStart:function(p,w){return p&&this.fire("zoomstart"),w||this.fire("movestart"),this},_move:function(p,w,M,E){w===void 0&&(w=this._zoom);var j=this._zoom!==w;return this._zoom=w,this._lastCenter=p,this._pixelOrigin=this._getNewPixelOrigin(p),E?M&&M.pinch&&this.fire("zoom",M):((j||M&&M.pinch)&&this.fire("zoom",M),this.fire("move",M)),this},_moveEnd:function(p){return p&&this.fire("zoomend"),this.fire("moveend")},_stop:function(){return D(this._flyToFrame),this._panAnim&&this._panAnim.stop(),this},_rawPanBy:function(p){Mr(this._mapPane,this._getMapPanePos().subtract(p))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_panInsideMaxBounds:function(){this._enforcingBounds||this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(p){this._targets={},this._targets[l(this._container)]=this;var w=p?Wt:st;w(this._container,"click dblclick mousedown mouseup mouseover mouseout mousemove contextmenu keypress keydown keyup",this._handleDOMEvent,this),this.options.trackResize&&w(window,"resize",this._onResize,this),Ue.any3d&&this.options.transform3DLimit&&(p?this.off:this.on).call(this,"moveend",this._onMoveEnd)},_onResize:function(){D(this._resizeRequest),this._resizeRequest=O(function(){this.invalidateSize({debounceMoveend:!0})},this)},_onScroll:function(){this._container.scrollTop=0,this._container.scrollLeft=0},_onMoveEnd:function(){var p=this._getMapPanePos();Math.max(Math.abs(p.x),Math.abs(p.y))>=this.options.transform3DLimit&&this._resetView(this.getCenter(),this.getZoom())},_findEventTargets:function(p,w){for(var M=[],E,j=w==="mouseout"||w==="mouseover",U=p.target||p.srcElement,X=!1;U;){if(E=this._targets[l(U)],E&&(w==="click"||w==="preclick")&&this._draggableMoved(E)){X=!0;break}if(E&&E.listens(w,!0)&&(j&&!OC(U,p)||(M.push(E),j))||U===this._container)break;U=U.parentNode}return!M.length&&!X&&!j&&this.listens(w,!0)&&(M=[this]),M},_isClickDisabled:function(p){for(;p&&p!==this._container;){if(p._leaflet_disable_click)return!0;p=p.parentNode}},_handleDOMEvent:function(p){var w=p.target||p.srcElement;if(!(!this._loaded||w._leaflet_disable_events||p.type==="click"&&this._isClickDisabled(w))){var M=p.type;M==="mousedown"&&MC(w),this._fireDOMEvent(p,M)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(p,w,M){if(p.type==="click"){var E=i({},p);E.type="preclick",this._fireDOMEvent(E,E.type,M)}var j=this._findEventTargets(p,w);if(M){for(var U=[],X=0;X0?Math.round(p-w)/2:Math.max(0,Math.ceil(p))-Math.max(0,Math.floor(w))},_limitZoom:function(p){var w=this.getMinZoom(),M=this.getMaxZoom(),E=Ue.any3d?this.options.zoomSnap:1;return E&&(p=Math.round(p/E)*E),Math.max(w,Math.min(M,p))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){_r(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(p,w){var M=this._getCenterOffset(p)._trunc();return(w&&w.animate)!==!0&&!this.getSize().contains(M)?!1:(this.panBy(M,w),!0)},_createAnimProxy:function(){var p=this._proxy=At("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(p),this.on("zoomanim",function(w){var M=_C,E=this._proxy.style[M];Lu(this._proxy,this.project(w.center,w.zoom),this.getZoomScale(w.zoom,1)),E===this._proxy.style[M]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){nr(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var p=this.getCenter(),w=this.getZoom();Lu(this._proxy,this.project(p,w),this.getZoomScale(w,1))},_catchTransitionEnd:function(p){this._animatingZoom&&p.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(p,w,M){if(this._animatingZoom)return!0;if(M=M||{},!this._zoomAnimated||M.animate===!1||this._nothingToAnimate()||Math.abs(w-this._zoom)>this.options.zoomAnimationThreshold)return!1;var E=this.getZoomScale(w),j=this._getCenterOffset(p)._divideBy(1-1/E);return M.animate!==!0&&!this.getSize().contains(j)?!1:(O(function(){this._moveStart(!0,M.noMoveStart||!1)._animateZoom(p,w,!0)},this),!0)},_animateZoom:function(p,w,M,E){this._mapPane&&(M&&(this._animatingZoom=!0,this._animateToCenter=p,this._animateToZoom=w,ut(this._mapPane,"leaflet-zoom-anim")),this.fire("zoomanim",{center:p,zoom:w,noUpdate:E}),this._tempFireZoomEvent||(this._tempFireZoomEvent=this._zoom!==this._animateToZoom),this._move(this._animateToCenter,this._animateToZoom,void 0,!0),setTimeout(o(this._onZoomTransitionEnd,this),250))},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._mapPane&&_r(this._mapPane,"leaflet-zoom-anim"),this._animatingZoom=!1,this._move(this._animateToCenter,this._animateToZoom,void 0,!0),this._tempFireZoomEvent&&this.fire("zoom"),delete this._tempFireZoomEvent,this.fire("move"),this._moveEnd(!0))}});function zae(p,w){return new wt(p,w)}var wa=z.extend({options:{position:"topright"},initialize:function(p){m(this,p)},getPosition:function(){return this.options.position},setPosition:function(p){var w=this._map;return w&&w.removeControl(this),this.options.position=p,w&&w.addControl(this),this},getContainer:function(){return this._container},addTo:function(p){this.remove(),this._map=p;var w=this._container=this.onAdd(p),M=this.getPosition(),E=p._controlCorners[M];return ut(w,"leaflet-control"),M.indexOf("bottom")!==-1?E.insertBefore(w,E.firstChild):E.appendChild(w),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(nr(this._container),this.onRemove&&this.onRemove(this._map),this._map.off("unload",this.remove,this),this._map=null,this):this},_refocusOnMap:function(p){this._map&&p&&p.screenX>0&&p.screenY>0&&this._map.getContainer().focus()}}),up=function(p){return new wa(p)};wt.include({addControl:function(p){return p.addTo(this),this},removeControl:function(p){return p.remove(),this},_initControlPos:function(){var p=this._controlCorners={},w="leaflet-",M=this._controlContainer=At("div",w+"control-container",this._container);function E(j,U){var X=w+j+" "+w+U;p[j+U]=At("div",X,M)}E("top","left"),E("top","right"),E("bottom","left"),E("bottom","right")},_clearControlPos:function(){for(var p in this._controlCorners)nr(this._controlCorners[p]);nr(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var M3=wa.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(p,w,M,E){return M1,this._baseLayersList.style.display=p?"":"none"),this._separator.style.display=w&&p?"":"none",this},_onLayerChange:function(p){this._handlingClick||this._update();var w=this._getLayer(l(p.target)),M=w.overlay?p.type==="add"?"overlayadd":"overlayremove":p.type==="add"?"baselayerchange":null;M&&this._map.fire(M,w)},_createRadioElement:function(p,w){var M='",E=document.createElement("div");return E.innerHTML=M,E.firstChild},_addItem:function(p){var w=document.createElement("label"),M=this._map.hasLayer(p.layer),E;p.overlay?(E=document.createElement("input"),E.type="checkbox",E.className="leaflet-control-layers-selector",E.defaultChecked=M):E=this._createRadioElement("leaflet-base-layers_"+l(this),M),this._layerControlInputs.push(E),E.layerId=l(p.layer),st(E,"click",this._onInputClick,this);var j=document.createElement("span");j.innerHTML=" "+p.name;var U=document.createElement("span");w.appendChild(U),U.appendChild(E),U.appendChild(j);var X=p.overlay?this._overlaysList:this._baseLayersList;return X.appendChild(w),this._checkDisabledLayers(),w},_onInputClick:function(){if(!this._preventClick){var p=this._layerControlInputs,w,M,E=[],j=[];this._handlingClick=!0;for(var U=p.length-1;U>=0;U--)w=p[U],M=this._getLayer(w.layerId).layer,w.checked?E.push(M):w.checked||j.push(M);for(U=0;U=0;j--)w=p[j],M=this._getLayer(w.layerId).layer,w.disabled=M.options.minZoom!==void 0&&EM.options.maxZoom},_expandIfNotCollapsed:function(){return this._map&&!this.options.collapsed&&this.expand(),this},_expandSafely:function(){var p=this._section;this._preventClick=!0,st(p,"click",un),this.expand();var w=this;setTimeout(function(){Wt(p,"click",un),w._preventClick=!1})}}),$ae=function(p,w,M){return new M3(p,w,M)},DC=wa.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(p){var w="leaflet-control-zoom",M=At("div",w+" leaflet-bar"),E=this.options;return this._zoomInButton=this._createButton(E.zoomInText,E.zoomInTitle,w+"-in",M,this._zoomIn),this._zoomOutButton=this._createButton(E.zoomOutText,E.zoomOutTitle,w+"-out",M,this._zoomOut),this._updateDisabled(),p.on("zoomend zoomlevelschange",this._updateDisabled,this),M},onRemove:function(p){p.off("zoomend zoomlevelschange",this._updateDisabled,this)},disable:function(){return this._disabled=!0,this._updateDisabled(),this},enable:function(){return this._disabled=!1,this._updateDisabled(),this},_zoomIn:function(p){!this._disabled&&this._map._zoomthis._map.getMinZoom()&&this._map.zoomOut(this._map.options.zoomDelta*(p.shiftKey?3:1))},_createButton:function(p,w,M,E,j){var U=At("a",M,E);return U.innerHTML=p,U.href="#",U.title=w,U.setAttribute("role","button"),U.setAttribute("aria-label",w),lp(U),st(U,"click",Ou),st(U,"click",j,this),st(U,"click",this._refocusOnMap,this),U},_updateDisabled:function(){var p=this._map,w="leaflet-disabled";_r(this._zoomInButton,w),_r(this._zoomOutButton,w),this._zoomInButton.setAttribute("aria-disabled","false"),this._zoomOutButton.setAttribute("aria-disabled","false"),(this._disabled||p._zoom===p.getMinZoom())&&(ut(this._zoomOutButton,w),this._zoomOutButton.setAttribute("aria-disabled","true")),(this._disabled||p._zoom===p.getMaxZoom())&&(ut(this._zoomInButton,w),this._zoomInButton.setAttribute("aria-disabled","true"))}});wt.mergeOptions({zoomControl:!0}),wt.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new DC,this.addControl(this.zoomControl))});var Fae=function(p){return new DC(p)},P3=wa.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(p){var w="leaflet-control-scale",M=At("div",w),E=this.options;return this._addScales(E,w+"-line",M),p.on(E.updateWhenIdle?"moveend":"move",this._update,this),p.whenReady(this._update,this),M},onRemove:function(p){p.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(p,w,M){p.metric&&(this._mScale=At("div",w,M)),p.imperial&&(this._iScale=At("div",w,M))},_update:function(){var p=this._map,w=p.getSize().y/2,M=p.distance(p.containerPointToLatLng([0,w]),p.containerPointToLatLng([this.options.maxWidth,w]));this._updateScales(M)},_updateScales:function(p){this.options.metric&&p&&this._updateMetric(p),this.options.imperial&&p&&this._updateImperial(p)},_updateMetric:function(p){var w=this._getRoundNum(p),M=w<1e3?w+" m":w/1e3+" km";this._updateScale(this._mScale,M,w/p)},_updateImperial:function(p){var w=p*3.2808399,M,E,j;w>5280?(M=w/5280,E=this._getRoundNum(M),this._updateScale(this._iScale,E+" mi",E/M)):(j=this._getRoundNum(w),this._updateScale(this._iScale,j+" ft",j/w))},_updateScale:function(p,w,M){p.style.width=Math.round(this.options.maxWidth*M)+"px",p.innerHTML=w},_getRoundNum:function(p){var w=Math.pow(10,(Math.floor(p)+"").length-1),M=p/w;return M=M>=10?10:M>=5?5:M>=3?3:M>=2?2:1,w*M}}),Vae=function(p){return new P3(p)},Gae='',NC=wa.extend({options:{position:"bottomright",prefix:''+(Ue.inlineSvg?Gae+" ":"")+"Leaflet"},initialize:function(p){m(this,p),this._attributions={}},onAdd:function(p){p.attributionControl=this,this._container=At("div","leaflet-control-attribution"),lp(this._container);for(var w in p._layers)p._layers[w].getAttribution&&this.addAttribution(p._layers[w].getAttribution());return this._update(),p.on("layeradd",this._addAttribution,this),this._container},onRemove:function(p){p.off("layeradd",this._addAttribution,this)},_addAttribution:function(p){p.layer.getAttribution&&(this.addAttribution(p.layer.getAttribution()),p.layer.once("remove",function(){this.removeAttribution(p.layer.getAttribution())},this))},setPrefix:function(p){return this.options.prefix=p,this._update(),this},addAttribution:function(p){return p?(this._attributions[p]||(this._attributions[p]=0),this._attributions[p]++,this._update(),this):this},removeAttribution:function(p){return p?(this._attributions[p]&&(this._attributions[p]--,this._update()),this):this},_update:function(){if(this._map){var p=[];for(var w in this._attributions)this._attributions[w]&&p.push(w);var M=[];this.options.prefix&&M.push(this.options.prefix),p.length&&M.push(p.join(", ")),this._container.innerHTML=M.join(' ')}}});wt.mergeOptions({attributionControl:!0}),wt.addInitHook(function(){this.options.attributionControl&&new NC().addTo(this)});var Wae=function(p){return new NC(p)};wa.Layers=M3,wa.Zoom=DC,wa.Scale=P3,wa.Attribution=NC,up.layers=$ae,up.zoom=Fae,up.scale=Vae,up.attribution=Wae;var io=z.extend({initialize:function(p){this._map=p},enable:function(){return this._enabled?this:(this._enabled=!0,this.addHooks(),this)},disable:function(){return this._enabled?(this._enabled=!1,this.removeHooks(),this):this},enabled:function(){return!!this._enabled}});io.addTo=function(p,w){return p.addHandler(w,this),this};var Hae={Events:F},k3=Ue.touch?"touchstart mousedown":"mousedown",nl=$.extend({options:{clickTolerance:3},initialize:function(p,w,M,E){m(this,E),this._element=p,this._dragStartTarget=w||p,this._preventOutline=M},enable:function(){this._enabled||(st(this._dragStartTarget,k3,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(nl._dragging===this&&this.finishDrag(!0),Wt(this._dragStartTarget,k3,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(p){if(this._enabled&&(this._moved=!1,!bC(this._element,"leaflet-zoom-anim"))){if(p.touches&&p.touches.length!==1){nl._dragging===this&&this.finishDrag();return}if(!(nl._dragging||p.shiftKey||p.which!==1&&p.button!==1&&!p.touches)&&(nl._dragging=this,this._preventOutline&&MC(this._element),TC(),ap(),!this._moving)){this.fire("down");var w=p.touches?p.touches[0]:p,M=b3(this._element);this._startPoint=new B(w.clientX,w.clientY),this._startPos=Iu(this._element),this._parentScale=PC(M);var E=p.type==="mousedown";st(document,E?"mousemove":"touchmove",this._onMove,this),st(document,E?"mouseup":"touchend touchcancel",this._onUp,this)}}},_onMove:function(p){if(this._enabled){if(p.touches&&p.touches.length>1){this._moved=!0;return}var w=p.touches&&p.touches.length===1?p.touches[0]:p,M=new B(w.clientX,w.clientY)._subtract(this._startPoint);!M.x&&!M.y||Math.abs(M.x)+Math.abs(M.y)U&&(X=re,U=oe);U>M&&(w[X]=1,RC(p,w,M,E,X),RC(p,w,M,X,j))}function Xae(p,w){for(var M=[p[0]],E=1,j=0,U=p.length;Ew&&(M.push(p[E]),j=E);return jw.max.x&&(M|=2),p.yw.max.y&&(M|=8),M}function qae(p,w){var M=w.x-p.x,E=w.y-p.y;return M*M+E*E}function cp(p,w,M,E){var j=w.x,U=w.y,X=M.x-j,re=M.y-U,oe=X*X+re*re,ve;return oe>0&&(ve=((p.x-j)*X+(p.y-U)*re)/oe,ve>1?(j=M.x,U=M.y):ve>0&&(j+=X*ve,U+=re*ve)),X=p.x-j,re=p.y-U,E?X*X+re*re:new B(j,U)}function Bi(p){return!b(p[0])||typeof p[0][0]!="object"&&typeof p[0][0]<"u"}function j3(p){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Bi(p)}function R3(p,w){var M,E,j,U,X,re,oe,ve;if(!p||p.length===0)throw new Error("latlngs not passed");Bi(p)||(console.warn("latlngs are not flat! Only the first ring will be used"),p=p[0]);var De=he([0,0]),Qe=ee(p),pt=Qe.getNorthWest().distanceTo(Qe.getSouthWest())*Qe.getNorthEast().distanceTo(Qe.getNorthWest());pt<1700&&(De=jC(p));var Rn=p.length,Kr=[];for(M=0;ME){oe=(U-E)/j,ve=[re.x-oe*(re.x-X.x),re.y-oe*(re.y-X.y)];break}var Jn=w.unproject(W(ve));return he([Jn.lat+De.lat,Jn.lng+De.lng])}var Kae={__proto__:null,simplify:E3,pointToSegmentDistance:O3,closestPointOnSegment:Zae,clipSegment:N3,_getEdgeIntersection:R0,_getBitCode:Du,_sqClosestPointOnSegment:cp,isFlat:Bi,_flat:j3,polylineCenter:R3},BC={project:function(p){return new B(p.lng,p.lat)},unproject:function(p){return new le(p.y,p.x)},bounds:new G([-180,-90],[180,90])},zC={R:6378137,R_MINOR:6356752314245179e-9,bounds:new G([-2003750834279e-5,-1549657073972e-5],[2003750834279e-5,1876465623138e-5]),project:function(p){var w=Math.PI/180,M=this.R,E=p.lat*w,j=this.R_MINOR/M,U=Math.sqrt(1-j*j),X=U*Math.sin(E),re=Math.tan(Math.PI/4-E/2)/Math.pow((1-X)/(1+X),U/2);return E=-M*Math.log(Math.max(re,1e-10)),new B(p.lng*w*M,E)},unproject:function(p){for(var w=180/Math.PI,M=this.R,E=this.R_MINOR/M,j=Math.sqrt(1-E*E),U=Math.exp(-p.y/M),X=Math.PI/2-2*Math.atan(U),re=0,oe=.1,ve;re<15&&Math.abs(oe)>1e-7;re++)ve=j*Math.sin(X),ve=Math.pow((1-ve)/(1+ve),j/2),oe=Math.PI/2-2*Math.atan(U*ve)-X,X+=oe;return new le(X*w,p.x*w/M)}},Jae={__proto__:null,LonLat:BC,Mercator:zC,SphericalMercator:de},Qae=i({},xe,{code:"EPSG:3395",projection:zC,transformation:function(){var p=.5/(Math.PI*zC.R);return te(p,.5,-p,.5)}()}),B3=i({},xe,{code:"EPSG:4326",projection:BC,transformation:te(1/180,1,-1/180,.5)}),eoe=i({},Ne,{projection:BC,transformation:te(1,0,-1,0),scale:function(p){return Math.pow(2,p)},zoom:function(p){return Math.log(p)/Math.LN2},distance:function(p,w){var M=w.lng-p.lng,E=w.lat-p.lat;return Math.sqrt(M*M+E*E)},infinite:!0});Ne.Earth=xe,Ne.EPSG3395=Qae,Ne.EPSG3857=Ve,Ne.EPSG900913=Ce,Ne.EPSG4326=B3,Ne.Simple=eoe;var Sa=$.extend({options:{pane:"overlayPane",attribution:null,bubblingMouseEvents:!0},addTo:function(p){return p.addLayer(this),this},remove:function(){return this.removeFrom(this._map||this._mapToAdd)},removeFrom:function(p){return p&&p.removeLayer(this),this},getPane:function(p){return this._map.getPane(p?this.options[p]||p:this.options.pane)},addInteractiveTarget:function(p){return this._map._targets[l(p)]=this,this},removeInteractiveTarget:function(p){return delete this._map._targets[l(p)],this},getAttribution:function(){return this.options.attribution},_layerAdd:function(p){var w=p.target;if(w.hasLayer(this)){if(this._map=w,this._zoomAnimated=w._zoomAnimated,this.getEvents){var M=this.getEvents();w.on(M,this),this.once("remove",function(){w.off(M,this)},this)}this.onAdd(w),this.fire("add"),w.fire("layeradd",{layer:this})}}});wt.include({addLayer:function(p){if(!p._layerAdd)throw new Error("The provided object is not a Layer.");var w=l(p);return this._layers[w]?this:(this._layers[w]=p,p._mapToAdd=this,p.beforeAdd&&p.beforeAdd(this),this.whenReady(p._layerAdd,p),this)},removeLayer:function(p){var w=l(p);return this._layers[w]?(this._loaded&&p.onRemove(this),delete this._layers[w],this._loaded&&(this.fire("layerremove",{layer:p}),p.fire("remove")),p._map=p._mapToAdd=null,this):this},hasLayer:function(p){return l(p)in this._layers},eachLayer:function(p,w){for(var M in this._layers)p.call(w,this._layers[M]);return this},_addLayers:function(p){p=p?b(p)?p:[p]:[];for(var w=0,M=p.length;wthis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),this.options.minZoom===void 0&&this._layersMinZoom&&this.getZoom()=2&&w[0]instanceof le&&w[0].equals(w[M-1])&&w.pop(),w},_setLatLngs:function(p){es.prototype._setLatLngs.call(this,p),Bi(this._latlngs)&&(this._latlngs=[this._latlngs])},_defaultShape:function(){return Bi(this._latlngs[0])?this._latlngs[0]:this._latlngs[0][0]},_clipPoints:function(){var p=this._renderer._bounds,w=this.options.weight,M=new B(w,w);if(p=new G(p.min.subtract(M),p.max.add(M)),this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(p))){if(this.options.noClip){this._parts=this._rings;return}for(var E=0,j=this._rings.length,U;Ep.y!=j.y>p.y&&p.x<(j.x-E.x)*(p.y-E.y)/(j.y-E.y)+E.x&&(w=!w);return w||es.prototype._containsPoint.call(this,p,!0)}});function loe(p,w){return new Wf(p,w)}var ts=Qo.extend({initialize:function(p,w){m(this,w),this._layers={},p&&this.addData(p)},addData:function(p){var w=b(p)?p:p.features,M,E,j;if(w){for(M=0,E=w.length;M0&&j.push(j[0].slice()),j}function Hf(p,w){return p.feature?i({},p.feature,{geometry:w}):G0(w)}function G0(p){return p.type==="Feature"||p.type==="FeatureCollection"?p:{type:"Feature",properties:{},geometry:p}}var GC={toGeoJSON:function(p){return Hf(this,{type:"Point",coordinates:VC(this.getLatLng(),p)})}};B0.include(GC),$C.include(GC),z0.include(GC),es.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),M=V0(this._latlngs,w?1:0,!1,p);return Hf(this,{type:(w?"Multi":"")+"LineString",coordinates:M})}}),Wf.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),M=w&&!Bi(this._latlngs[0]),E=V0(this._latlngs,M?2:w?1:0,!0,p);return w||(E=[E]),Hf(this,{type:(M?"Multi":"")+"Polygon",coordinates:E})}}),Vf.include({toMultiPoint:function(p){var w=[];return this.eachLayer(function(M){w.push(M.toGeoJSON(p).geometry.coordinates)}),Hf(this,{type:"MultiPoint",coordinates:w})},toGeoJSON:function(p){var w=this.feature&&this.feature.geometry&&this.feature.geometry.type;if(w==="MultiPoint")return this.toMultiPoint(p);var M=w==="GeometryCollection",E=[];return this.eachLayer(function(j){if(j.toGeoJSON){var U=j.toGeoJSON(p);if(M)E.push(U.geometry);else{var X=G0(U);X.type==="FeatureCollection"?E.push.apply(E,X.features):E.push(X)}}}),M?Hf(this,{geometries:E,type:"GeometryCollection"}):{type:"FeatureCollection",features:E}}});function F3(p,w){return new ts(p,w)}var uoe=F3,W0=Sa.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(p,w,M){this._url=p,this._bounds=ee(w),m(this,M)},onAdd:function(){this._image||(this._initImage(),this.options.opacity<1&&this._updateOpacity()),this.options.interactive&&(ut(this._image,"leaflet-interactive"),this.addInteractiveTarget(this._image)),this.getPane().appendChild(this._image),this._reset()},onRemove:function(){nr(this._image),this.options.interactive&&this.removeInteractiveTarget(this._image)},setOpacity:function(p){return this.options.opacity=p,this._image&&this._updateOpacity(),this},setStyle:function(p){return p.opacity&&this.setOpacity(p.opacity),this},bringToFront:function(){return this._map&&$f(this._image),this},bringToBack:function(){return this._map&&Ff(this._image),this},setUrl:function(p){return this._url=p,this._image&&(this._image.src=p),this},setBounds:function(p){return this._bounds=ee(p),this._map&&this._reset(),this},getEvents:function(){var p={zoom:this._reset,viewreset:this._reset};return this._zoomAnimated&&(p.zoomanim=this._animateZoom),p},setZIndex:function(p){return this.options.zIndex=p,this._updateZIndex(),this},getBounds:function(){return this._bounds},getElement:function(){return this._image},_initImage:function(){var p=this._url.tagName==="IMG",w=this._image=p?this._url:At("img");if(ut(w,"leaflet-image-layer"),this._zoomAnimated&&ut(w,"leaflet-zoom-animated"),this.options.className&&ut(w,this.options.className),w.onselectstart=f,w.onmousemove=f,w.onload=o(this.fire,this,"load"),w.onerror=o(this._overlayOnError,this,"error"),(this.options.crossOrigin||this.options.crossOrigin==="")&&(w.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),this.options.zIndex&&this._updateZIndex(),p){this._url=w.src;return}w.src=this._url,w.alt=this.options.alt},_animateZoom:function(p){var w=this._map.getZoomScale(p.zoom),M=this._map._latLngBoundsToNewLayerBounds(this._bounds,p.zoom,p.center).min;Lu(this._image,M,w)},_reset:function(){var p=this._image,w=new G(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),M=w.getSize();Mr(p,w.min),p.style.width=M.x+"px",p.style.height=M.y+"px"},_updateOpacity:function(){Ri(this._image,this.options.opacity)},_updateZIndex:function(){this._image&&this.options.zIndex!==void 0&&this.options.zIndex!==null&&(this._image.style.zIndex=this.options.zIndex)},_overlayOnError:function(){this.fire("error");var p=this.options.errorOverlayUrl;p&&this._url!==p&&(this._url=p,this._image.src=p)},getCenter:function(){return this._bounds.getCenter()}}),coe=function(p,w,M){return new W0(p,w,M)},V3=W0.extend({options:{autoplay:!0,loop:!0,keepAspectRatio:!0,muted:!1,playsInline:!0},_initImage:function(){var p=this._url.tagName==="VIDEO",w=this._image=p?this._url:At("video");if(ut(w,"leaflet-image-layer"),this._zoomAnimated&&ut(w,"leaflet-zoom-animated"),this.options.className&&ut(w,this.options.className),w.onselectstart=f,w.onmousemove=f,w.onloadeddata=o(this.fire,this,"load"),p){for(var M=w.getElementsByTagName("source"),E=[],j=0;j0?E:[w.src];return}b(this._url)||(this._url=[this._url]),!this.options.keepAspectRatio&&Object.prototype.hasOwnProperty.call(w.style,"objectFit")&&(w.style.objectFit="fill"),w.autoplay=!!this.options.autoplay,w.loop=!!this.options.loop,w.muted=!!this.options.muted,w.playsInline=!!this.options.playsInline;for(var U=0;Uj?(w.height=j+"px",ut(p,U)):_r(p,U),this._containerWidth=this._container.offsetWidth},_animateZoom:function(p){var w=this._map._latLngToNewLayerPoint(this._latlng,p.zoom,p.center),M=this._getAnchor();Mr(this._container,w.add(M))},_adjustPan:function(){if(this.options.autoPan){if(this._map._panAnim&&this._map._panAnim.stop(),this._autopanning){this._autopanning=!1;return}var p=this._map,w=parseInt(ip(this._container,"marginBottom"),10)||0,M=this._container.offsetHeight+w,E=this._containerWidth,j=new B(this._containerLeft,-M-this._containerBottom);j._add(Iu(this._container));var U=p.layerPointToContainerPoint(j),X=W(this.options.autoPanPadding),re=W(this.options.autoPanPaddingTopLeft||X),oe=W(this.options.autoPanPaddingBottomRight||X),ve=p.getSize(),De=0,Qe=0;U.x+E+oe.x>ve.x&&(De=U.x+E-ve.x+oe.x),U.x-De-re.x<0&&(De=U.x-re.x),U.y+M+oe.y>ve.y&&(Qe=U.y+M-ve.y+oe.y),U.y-Qe-re.y<0&&(Qe=U.y-re.y),(De||Qe)&&(this.options.keepInView&&(this._autopanning=!0),p.fire("autopanstart").panBy([De,Qe]))}},_getAnchor:function(){return W(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),doe=function(p,w){return new H0(p,w)};wt.mergeOptions({closePopupOnClick:!0}),wt.include({openPopup:function(p,w,M){return this._initOverlay(H0,p,w,M).openOn(this),this},closePopup:function(p){return p=arguments.length?p:this._popup,p&&p.close(),this}}),Sa.include({bindPopup:function(p,w){return this._popup=this._initOverlay(H0,this._popup,p,w),this._popupHandlersAdded||(this.on({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this.off({click:this._openPopup,keypress:this._onKeyPress,remove:this.closePopup,move:this._movePopup}),this._popupHandlersAdded=!1,this._popup=null),this},openPopup:function(p){return this._popup&&(this instanceof Qo||(this._popup._source=this),this._popup._prepareOpen(p||this._latlng)&&this._popup.openOn(this._map)),this},closePopup:function(){return this._popup&&this._popup.close(),this},togglePopup:function(){return this._popup&&this._popup.toggle(this),this},isPopupOpen:function(){return this._popup?this._popup.isOpen():!1},setPopupContent:function(p){return this._popup&&this._popup.setContent(p),this},getPopup:function(){return this._popup},_openPopup:function(p){if(!(!this._popup||!this._map)){Ou(p);var w=p.layer||p.target;if(this._popup._source===w&&!(w instanceof il)){this._map.hasLayer(this._popup)?this.closePopup():this.openPopup(p.latlng);return}this._popup._source=w,this.openPopup(p.latlng)}},_movePopup:function(p){this._popup.setLatLng(p.latlng)},_onKeyPress:function(p){p.originalEvent.keyCode===13&&this._openPopup(p)}});var U0=ao.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(p){ao.prototype.onAdd.call(this,p),this.setOpacity(this.options.opacity),p.fire("tooltipopen",{tooltip:this}),this._source&&(this.addEventParent(this._source),this._source.fire("tooltipopen",{tooltip:this},!0))},onRemove:function(p){ao.prototype.onRemove.call(this,p),p.fire("tooltipclose",{tooltip:this}),this._source&&(this.removeEventParent(this._source),this._source.fire("tooltipclose",{tooltip:this},!0))},getEvents:function(){var p=ao.prototype.getEvents.call(this);return this.options.permanent||(p.preclick=this.close),p},_initLayout:function(){var p="leaflet-tooltip",w=p+" "+(this.options.className||"")+" leaflet-zoom-"+(this._zoomAnimated?"animated":"hide");this._contentNode=this._container=At("div",w),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+l(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(p){var w,M,E=this._map,j=this._container,U=E.latLngToContainerPoint(E.getCenter()),X=E.layerPointToContainerPoint(p),re=this.options.direction,oe=j.offsetWidth,ve=j.offsetHeight,De=W(this.options.offset),Qe=this._getAnchor();re==="top"?(w=oe/2,M=ve):re==="bottom"?(w=oe/2,M=0):re==="center"?(w=oe/2,M=ve/2):re==="right"?(w=0,M=ve/2):re==="left"?(w=oe,M=ve/2):X.xthis.options.maxZoom||ME?this._retainParent(j,U,X,E):!1)},_retainChildren:function(p,w,M,E){for(var j=2*p;j<2*p+2;j++)for(var U=2*w;U<2*w+2;U++){var X=new B(j,U);X.z=M+1;var re=this._tileCoordsToKey(X),oe=this._tiles[re];if(oe&&oe.active){oe.retain=!0;continue}else oe&&oe.loaded&&(oe.retain=!0);M+1this.options.maxZoom||this.options.minZoom!==void 0&&j1){this._setView(p,M);return}for(var Qe=j.min.y;Qe<=j.max.y;Qe++)for(var pt=j.min.x;pt<=j.max.x;pt++){var Rn=new B(pt,Qe);if(Rn.z=this._tileZoom,!!this._isValidTile(Rn)){var Kr=this._tiles[this._tileCoordsToKey(Rn)];Kr?Kr.current=!0:X.push(Rn)}}if(X.sort(function(Jn,Zf){return Jn.distanceTo(U)-Zf.distanceTo(U)}),X.length!==0){this._loading||(this._loading=!0,this.fire("loading"));var zi=document.createDocumentFragment();for(pt=0;ptM.max.x)||!w.wrapLat&&(p.yM.max.y))return!1}if(!this.options.bounds)return!0;var E=this._tileCoordsToBounds(p);return ee(this.options.bounds).overlaps(E)},_keyToBounds:function(p){return this._tileCoordsToBounds(this._keyToTileCoords(p))},_tileCoordsToNwSe:function(p){var w=this._map,M=this.getTileSize(),E=p.scaleBy(M),j=E.add(M),U=w.unproject(E,p.z),X=w.unproject(j,p.z);return[U,X]},_tileCoordsToBounds:function(p){var w=this._tileCoordsToNwSe(p),M=new K(w[0],w[1]);return this.options.noWrap||(M=this._map.wrapLatLngBounds(M)),M},_tileCoordsToKey:function(p){return p.x+":"+p.y+":"+p.z},_keyToTileCoords:function(p){var w=p.split(":"),M=new B(+w[0],+w[1]);return M.z=+w[2],M},_removeTile:function(p){var w=this._tiles[p];w&&(nr(w.el),delete this._tiles[p],this.fire("tileunload",{tile:w.el,coords:this._keyToTileCoords(p)}))},_initTile:function(p){ut(p,"leaflet-tile");var w=this.getTileSize();p.style.width=w.x+"px",p.style.height=w.y+"px",p.onselectstart=f,p.onmousemove=f,Ue.ielt9&&this.options.opacity<1&&Ri(p,this.options.opacity)},_addTile:function(p,w){var M=this._getTilePos(p),E=this._tileCoordsToKey(p),j=this.createTile(this._wrapCoords(p),o(this._tileReady,this,p));this._initTile(j),this.createTile.length<2&&O(o(this._tileReady,this,p,null,j)),Mr(j,M),this._tiles[E]={el:j,coords:p,current:!0},w.appendChild(j),this.fire("tileloadstart",{tile:j,coords:p})},_tileReady:function(p,w,M){w&&this.fire("tileerror",{error:w,tile:M,coords:p});var E=this._tileCoordsToKey(p);M=this._tiles[E],M&&(M.loaded=+new Date,this._map._fadeAnimated?(Ri(M.el,0),D(this._fadeFrame),this._fadeFrame=O(this._updateOpacity,this)):(M.active=!0,this._pruneTiles()),w||(ut(M.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:M.el,coords:p})),this._noTilesToLoad()&&(this._loading=!1,this.fire("load"),Ue.ielt9||!this._map._fadeAnimated?O(this._pruneTiles,this):setTimeout(o(this._pruneTiles,this),250)))},_getTilePos:function(p){return p.scaleBy(this.getTileSize()).subtract(this._level.origin)},_wrapCoords:function(p){var w=new B(this._wrapX?c(p.x,this._wrapX):p.x,this._wrapY?c(p.y,this._wrapY):p.y);return w.z=p.z,w},_pxBoundsToTileRange:function(p){var w=this.getTileSize();return new G(p.min.unscaleBy(w).floor(),p.max.unscaleBy(w).ceil().subtract([1,1]))},_noTilesToLoad:function(){for(var p in this._tiles)if(!this._tiles[p].loaded)return!1;return!0}});function goe(p){return new hp(p)}var Uf=hp.extend({options:{minZoom:0,maxZoom:18,subdomains:"abc",errorTileUrl:"",zoomOffset:0,tms:!1,zoomReverse:!1,detectRetina:!1,crossOrigin:!1,referrerPolicy:!1},initialize:function(p,w){this._url=p,w=m(this,w),w.detectRetina&&Ue.retina&&w.maxZoom>0?(w.tileSize=Math.floor(w.tileSize/2),w.zoomReverse?(w.zoomOffset--,w.minZoom=Math.min(w.maxZoom,w.minZoom+1)):(w.zoomOffset++,w.maxZoom=Math.max(w.minZoom,w.maxZoom-1)),w.minZoom=Math.max(0,w.minZoom)):w.zoomReverse?w.minZoom=Math.min(w.maxZoom,w.minZoom):w.maxZoom=Math.max(w.minZoom,w.maxZoom),typeof w.subdomains=="string"&&(w.subdomains=w.subdomains.split("")),this.on("tileunload",this._onTileRemove)},setUrl:function(p,w){return this._url===p&&w===void 0&&(w=!0),this._url=p,w||this.redraw(),this},createTile:function(p,w){var M=document.createElement("img");return st(M,"load",o(this._tileOnLoad,this,w,M)),st(M,"error",o(this._tileOnError,this,w,M)),(this.options.crossOrigin||this.options.crossOrigin==="")&&(M.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),typeof this.options.referrerPolicy=="string"&&(M.referrerPolicy=this.options.referrerPolicy),M.alt="",M.src=this.getTileUrl(p),M},getTileUrl:function(p){var w={r:Ue.retina?"@2x":"",s:this._getSubdomain(p),x:p.x,y:p.y,z:this._getZoomForUrl()};if(this._map&&!this._map.options.crs.infinite){var M=this._globalTileRange.max.y-p.y;this.options.tms&&(w.y=M),w["-y"]=M}return _(this._url,i(w,this.options))},_tileOnLoad:function(p,w){Ue.ielt9?setTimeout(o(p,this,null,w),0):p(null,w)},_tileOnError:function(p,w,M){var E=this.options.errorTileUrl;E&&w.getAttribute("src")!==E&&(w.src=E),p(M,w)},_onTileRemove:function(p){p.tile.onload=null},_getZoomForUrl:function(){var p=this._tileZoom,w=this.options.maxZoom,M=this.options.zoomReverse,E=this.options.zoomOffset;return M&&(p=w-p),p+E},_getSubdomain:function(p){var w=Math.abs(p.x+p.y)%this.options.subdomains.length;return this.options.subdomains[w]},_abortLoading:function(){var p,w;for(p in this._tiles)if(this._tiles[p].coords.z!==this._tileZoom&&(w=this._tiles[p].el,w.onload=f,w.onerror=f,!w.complete)){w.src=T;var M=this._tiles[p].coords;nr(w),delete this._tiles[p],this.fire("tileabort",{tile:w,coords:M})}},_removeTile:function(p){var w=this._tiles[p];if(w)return w.el.setAttribute("src",T),hp.prototype._removeTile.call(this,p)},_tileReady:function(p,w,M){if(!(!this._map||M&&M.getAttribute("src")===T))return hp.prototype._tileReady.call(this,p,w,M)}});function H3(p,w){return new Uf(p,w)}var U3=Uf.extend({defaultWmsParams:{service:"WMS",request:"GetMap",layers:"",styles:"",format:"image/jpeg",transparent:!1,version:"1.1.1"},options:{crs:null,uppercase:!1},initialize:function(p,w){this._url=p;var M=i({},this.defaultWmsParams);for(var E in w)E in this.options||(M[E]=w[E]);w=m(this,w);var j=w.detectRetina&&Ue.retina?2:1,U=this.getTileSize();M.width=U.x*j,M.height=U.y*j,this.wmsParams=M},onAdd:function(p){this._crs=this.options.crs||p.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var w=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[w]=this._crs.code,Uf.prototype.onAdd.call(this,p)},getTileUrl:function(p){var w=this._tileCoordsToNwSe(p),M=this._crs,E=Y(M.project(w[0]),M.project(w[1])),j=E.min,U=E.max,X=(this._wmsVersion>=1.3&&this._crs===B3?[j.y,j.x,U.y,U.x]:[j.x,j.y,U.x,U.y]).join(","),re=Uf.prototype.getTileUrl.call(this,p);return re+y(this.wmsParams,re,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+X},setParams:function(p,w){return i(this.wmsParams,p),w||this.redraw(),this}});function moe(p,w){return new U3(p,w)}Uf.WMS=U3,H3.wms=moe;var rs=Sa.extend({options:{padding:.1},initialize:function(p){m(this,p),l(this),this._layers=this._layers||{}},onAdd:function(){this._container||(this._initContainer(),ut(this._container,"leaflet-zoom-animated")),this.getPane().appendChild(this._container),this._update(),this.on("update",this._updatePaths,this)},onRemove:function(){this.off("update",this._updatePaths,this),this._destroyContainer()},getEvents:function(){var p={viewreset:this._reset,zoom:this._onZoom,moveend:this._update,zoomend:this._onZoomEnd};return this._zoomAnimated&&(p.zoomanim=this._onAnimZoom),p},_onAnimZoom:function(p){this._updateTransform(p.center,p.zoom)},_onZoom:function(){this._updateTransform(this._map.getCenter(),this._map.getZoom())},_updateTransform:function(p,w){var M=this._map.getZoomScale(w,this._zoom),E=this._map.getSize().multiplyBy(.5+this.options.padding),j=this._map.project(this._center,w),U=E.multiplyBy(-M).add(j).subtract(this._map._getNewPixelOrigin(p,w));Ue.any3d?Lu(this._container,U,M):Mr(this._container,U)},_reset:function(){this._update(),this._updateTransform(this._center,this._zoom);for(var p in this._layers)this._layers[p]._reset()},_onZoomEnd:function(){for(var p in this._layers)this._layers[p]._project()},_updatePaths:function(){for(var p in this._layers)this._layers[p]._update()},_update:function(){var p=this.options.padding,w=this._map.getSize(),M=this._map.containerPointToLayerPoint(w.multiplyBy(-p)).round();this._bounds=new G(M,M.add(w.multiplyBy(1+p*2)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),Z3=rs.extend({options:{tolerance:0},getEvents:function(){var p=rs.prototype.getEvents.call(this);return p.viewprereset=this._onViewPreReset,p},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){rs.prototype.onAdd.call(this),this._draw()},_initContainer:function(){var p=this._container=document.createElement("canvas");st(p,"mousemove",this._onMouseMove,this),st(p,"click dblclick mousedown mouseup contextmenu",this._onClick,this),st(p,"mouseout",this._handleMouseOut,this),p._leaflet_disable_events=!0,this._ctx=p.getContext("2d")},_destroyContainer:function(){D(this._redrawRequest),delete this._ctx,nr(this._container),Wt(this._container),delete this._container},_updatePaths:function(){if(!this._postponeUpdatePaths){var p;this._redrawBounds=null;for(var w in this._layers)p=this._layers[w],p._update();this._redraw()}},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){rs.prototype._update.call(this);var p=this._bounds,w=this._container,M=p.getSize(),E=Ue.retina?2:1;Mr(w,p.min),w.width=E*M.x,w.height=E*M.y,w.style.width=M.x+"px",w.style.height=M.y+"px",Ue.retina&&this._ctx.scale(2,2),this._ctx.translate(-p.min.x,-p.min.y),this.fire("update")}},_reset:function(){rs.prototype._reset.call(this),this._postponeUpdatePaths&&(this._postponeUpdatePaths=!1,this._updatePaths())},_initPath:function(p){this._updateDashArray(p),this._layers[l(p)]=p;var w=p._order={layer:p,prev:this._drawLast,next:null};this._drawLast&&(this._drawLast.next=w),this._drawLast=w,this._drawFirst=this._drawFirst||this._drawLast},_addPath:function(p){this._requestRedraw(p)},_removePath:function(p){var w=p._order,M=w.next,E=w.prev;M?M.prev=E:this._drawLast=E,E?E.next=M:this._drawFirst=M,delete p._order,delete this._layers[l(p)],this._requestRedraw(p)},_updatePath:function(p){this._extendRedrawBounds(p),p._project(),p._update(),this._requestRedraw(p)},_updateStyle:function(p){this._updateDashArray(p),this._requestRedraw(p)},_updateDashArray:function(p){if(typeof p.options.dashArray=="string"){var w=p.options.dashArray.split(/[, ]+/),M=[],E,j;for(j=0;j')}}catch{}return function(p){return document.createElement("<"+p+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),yoe={_initContainer:function(){this._container=At("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(rs.prototype._update.call(this),this.fire("update"))},_initPath:function(p){var w=p._container=dp("shape");ut(w,"leaflet-vml-shape "+(this.options.className||"")),w.coordsize="1 1",p._path=dp("path"),w.appendChild(p._path),this._updateStyle(p),this._layers[l(p)]=p},_addPath:function(p){var w=p._container;this._container.appendChild(w),p.options.interactive&&p.addInteractiveTarget(w)},_removePath:function(p){var w=p._container;nr(w),p.removeInteractiveTarget(w),delete this._layers[l(p)]},_updateStyle:function(p){var w=p._stroke,M=p._fill,E=p.options,j=p._container;j.stroked=!!E.stroke,j.filled=!!E.fill,E.stroke?(w||(w=p._stroke=dp("stroke")),j.appendChild(w),w.weight=E.weight+"px",w.color=E.color,w.opacity=E.opacity,E.dashArray?w.dashStyle=b(E.dashArray)?E.dashArray.join(" "):E.dashArray.replace(/( *, *)/g," "):w.dashStyle="",w.endcap=E.lineCap.replace("butt","flat"),w.joinstyle=E.lineJoin):w&&(j.removeChild(w),p._stroke=null),E.fill?(M||(M=p._fill=dp("fill")),j.appendChild(M),M.color=E.fillColor||E.color,M.opacity=E.fillOpacity):M&&(j.removeChild(M),p._fill=null)},_updateCircle:function(p){var w=p._point.round(),M=Math.round(p._radius),E=Math.round(p._radiusY||M);this._setPath(p,p._empty()?"M0 0":"AL "+w.x+","+w.y+" "+M+","+E+" 0,"+65535*360)},_setPath:function(p,w){p._path.v=w},_bringToFront:function(p){$f(p._container)},_bringToBack:function(p){Ff(p._container)}},Z0=Ue.vml?dp:Ge,vp=rs.extend({_initContainer:function(){this._container=Z0("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=Z0("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){nr(this._container),Wt(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){rs.prototype._update.call(this);var p=this._bounds,w=p.getSize(),M=this._container;(!this._svgSize||!this._svgSize.equals(w))&&(this._svgSize=w,M.setAttribute("width",w.x),M.setAttribute("height",w.y)),Mr(M,p.min),M.setAttribute("viewBox",[p.min.x,p.min.y,w.x,w.y].join(" ")),this.fire("update")}},_initPath:function(p){var w=p._path=Z0("path");p.options.className&&ut(w,p.options.className),p.options.interactive&&ut(w,"leaflet-interactive"),this._updateStyle(p),this._layers[l(p)]=p},_addPath:function(p){this._rootGroup||this._initContainer(),this._rootGroup.appendChild(p._path),p.addInteractiveTarget(p._path)},_removePath:function(p){nr(p._path),p.removeInteractiveTarget(p._path),delete this._layers[l(p)]},_updatePath:function(p){p._project(),p._update()},_updateStyle:function(p){var w=p._path,M=p.options;w&&(M.stroke?(w.setAttribute("stroke",M.color),w.setAttribute("stroke-opacity",M.opacity),w.setAttribute("stroke-width",M.weight),w.setAttribute("stroke-linecap",M.lineCap),w.setAttribute("stroke-linejoin",M.lineJoin),M.dashArray?w.setAttribute("stroke-dasharray",M.dashArray):w.removeAttribute("stroke-dasharray"),M.dashOffset?w.setAttribute("stroke-dashoffset",M.dashOffset):w.removeAttribute("stroke-dashoffset")):w.setAttribute("stroke","none"),M.fill?(w.setAttribute("fill",M.fillColor||M.color),w.setAttribute("fill-opacity",M.fillOpacity),w.setAttribute("fill-rule",M.fillRule||"evenodd")):w.setAttribute("fill","none"))},_updatePoly:function(p,w){this._setPath(p,Ye(p._parts,w))},_updateCircle:function(p){var w=p._point,M=Math.max(Math.round(p._radius),1),E=Math.max(Math.round(p._radiusY),1)||M,j="a"+M+","+E+" 0 1,0 ",U=p._empty()?"M0 0":"M"+(w.x-M)+","+w.y+j+M*2+",0 "+j+-M*2+",0 ";this._setPath(p,U)},_setPath:function(p,w){p._path.setAttribute("d",w)},_bringToFront:function(p){$f(p._path)},_bringToBack:function(p){Ff(p._path)}});Ue.vml&&vp.include(yoe);function X3(p){return Ue.svg||Ue.vml?new vp(p):null}wt.include({getRenderer:function(p){var w=p.options.renderer||this._getPaneRenderer(p.options.pane)||this.options.renderer||this._renderer;return w||(w=this._renderer=this._createRenderer()),this.hasLayer(w)||this.addLayer(w),w},_getPaneRenderer:function(p){if(p==="overlayPane"||p===void 0)return!1;var w=this._paneRenderers[p];return w===void 0&&(w=this._createRenderer({pane:p}),this._paneRenderers[p]=w),w},_createRenderer:function(p){return this.options.preferCanvas&&Y3(p)||X3(p)}});var q3=Wf.extend({initialize:function(p,w){Wf.prototype.initialize.call(this,this._boundsToLatLngs(p),w)},setBounds:function(p){return this.setLatLngs(this._boundsToLatLngs(p))},_boundsToLatLngs:function(p){return p=ee(p),[p.getSouthWest(),p.getNorthWest(),p.getNorthEast(),p.getSouthEast()]}});function xoe(p,w){return new q3(p,w)}vp.create=Z0,vp.pointsToPath=Ye,ts.geometryToLayer=$0,ts.coordsToLatLng=FC,ts.coordsToLatLngs=F0,ts.latLngToCoords=VC,ts.latLngsToCoords=V0,ts.getFeature=Hf,ts.asFeature=G0,wt.mergeOptions({boxZoom:!0});var K3=io.extend({initialize:function(p){this._map=p,this._container=p._container,this._pane=p._panes.overlayPane,this._resetStateTimeout=0,p.on("unload",this._destroy,this)},addHooks:function(){st(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){Wt(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){nr(this._pane),delete this._pane},_resetState:function(){this._resetStateTimeout=0,this._moved=!1},_clearDeferredResetState:function(){this._resetStateTimeout!==0&&(clearTimeout(this._resetStateTimeout),this._resetStateTimeout=0)},_onMouseDown:function(p){if(!p.shiftKey||p.which!==1&&p.button!==1)return!1;this._clearDeferredResetState(),this._resetState(),ap(),TC(),this._startPoint=this._map.mouseEventToContainerPoint(p),st(document,{contextmenu:Ou,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(p){this._moved||(this._moved=!0,this._box=At("div","leaflet-zoom-box",this._container),ut(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(p);var w=new G(this._point,this._startPoint),M=w.getSize();Mr(this._box,w.min),this._box.style.width=M.x+"px",this._box.style.height=M.y+"px"},_finish:function(){this._moved&&(nr(this._box),_r(this._container,"leaflet-crosshair")),op(),CC(),Wt(document,{contextmenu:Ou,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseUp:function(p){if(!(p.which!==1&&p.button!==1)&&(this._finish(),!!this._moved)){this._clearDeferredResetState(),this._resetStateTimeout=setTimeout(o(this._resetState,this),0);var w=new K(this._map.containerPointToLatLng(this._startPoint),this._map.containerPointToLatLng(this._point));this._map.fitBounds(w).fire("boxzoomend",{boxZoomBounds:w})}},_onKeyDown:function(p){p.keyCode===27&&(this._finish(),this._clearDeferredResetState(),this._resetState())}});wt.addInitHook("addHandler","boxZoom",K3),wt.mergeOptions({doubleClickZoom:!0});var J3=io.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(p){var w=this._map,M=w.getZoom(),E=w.options.zoomDelta,j=p.originalEvent.shiftKey?M-E:M+E;w.options.doubleClickZoom==="center"?w.setZoom(j):w.setZoomAround(p.containerPoint,j)}});wt.addInitHook("addHandler","doubleClickZoom",J3),wt.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var Q3=io.extend({addHooks:function(){if(!this._draggable){var p=this._map;this._draggable=new nl(p._mapPane,p._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),this._draggable.on("predrag",this._onPreDragLimit,this),p.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDragWrap,this),p.on("zoomend",this._onZoomEnd,this),p.whenReady(this._onZoomEnd,this))}ut(this._map._container,"leaflet-grab leaflet-touch-drag"),this._draggable.enable(),this._positions=[],this._times=[]},removeHooks:function(){_r(this._map._container,"leaflet-grab"),_r(this._map._container,"leaflet-touch-drag"),this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},moving:function(){return this._draggable&&this._draggable._moving},_onDragStart:function(){var p=this._map;if(p._stop(),this._map.options.maxBounds&&this._map.options.maxBoundsViscosity){var w=ee(this._map.options.maxBounds);this._offsetLimit=Y(this._map.latLngToContainerPoint(w.getNorthWest()).multiplyBy(-1),this._map.latLngToContainerPoint(w.getSouthEast()).multiplyBy(-1).add(this._map.getSize())),this._viscosity=Math.min(1,Math.max(0,this._map.options.maxBoundsViscosity))}else this._offsetLimit=null;p.fire("movestart").fire("dragstart"),p.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(p){if(this._map.options.inertia){var w=this._lastTime=+new Date,M=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(M),this._times.push(w),this._prunePositions(w)}this._map.fire("move",p).fire("drag",p)},_prunePositions:function(p){for(;this._positions.length>1&&p-this._times[0]>50;)this._positions.shift(),this._times.shift()},_onZoomEnd:function(){var p=this._map.getSize().divideBy(2),w=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=w.subtract(p).x,this._worldWidth=this._map.getPixelWorldBounds().getSize().x},_viscousLimit:function(p,w){return p-(p-w)*this._viscosity},_onPreDragLimit:function(){if(!(!this._viscosity||!this._offsetLimit)){var p=this._draggable._newPos.subtract(this._draggable._startPos),w=this._offsetLimit;p.xw.max.x&&(p.x=this._viscousLimit(p.x,w.max.x)),p.y>w.max.y&&(p.y=this._viscousLimit(p.y,w.max.y)),this._draggable._newPos=this._draggable._startPos.add(p)}},_onPreDragWrap:function(){var p=this._worldWidth,w=Math.round(p/2),M=this._initialWorldOffset,E=this._draggable._newPos.x,j=(E-w+M)%p+w-M,U=(E+w+M)%p-w-M,X=Math.abs(j+M)0?U:-U))-w;this._delta=0,this._startTime=null,X&&(p.options.scrollWheelZoom==="center"?p.setZoom(w+X):p.setZoomAround(this._lastMousePos,w+X))}});wt.addInitHook("addHandler","scrollWheelZoom",t5);var _oe=600;wt.mergeOptions({tapHold:Ue.touchNative&&Ue.safari&&Ue.mobile,tapTolerance:15});var r5=io.extend({addHooks:function(){st(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Wt(this._map._container,"touchstart",this._onDown,this)},_onDown:function(p){if(clearTimeout(this._holdTimeout),p.touches.length===1){var w=p.touches[0];this._startPos=this._newPos=new B(w.clientX,w.clientY),this._holdTimeout=setTimeout(o(function(){this._cancel(),this._isTapValid()&&(st(document,"touchend",un),st(document,"touchend touchcancel",this._cancelClickPrevent),this._simulateEvent("contextmenu",w))},this),_oe),st(document,"touchend touchcancel contextmenu",this._cancel,this),st(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function p(){Wt(document,"touchend",un),Wt(document,"touchend touchcancel",p)},_cancel:function(){clearTimeout(this._holdTimeout),Wt(document,"touchend touchcancel contextmenu",this._cancel,this),Wt(document,"touchmove",this._onMove,this)},_onMove:function(p){var w=p.touches[0];this._newPos=new B(w.clientX,w.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(p,w){var M=new MouseEvent(p,{bubbles:!0,cancelable:!0,view:window,screenX:w.screenX,screenY:w.screenY,clientX:w.clientX,clientY:w.clientY});M._simulated=!0,w.target.dispatchEvent(M)}});wt.addInitHook("addHandler","tapHold",r5),wt.mergeOptions({touchZoom:Ue.touch,bounceAtZoomLimits:!0});var n5=io.extend({addHooks:function(){ut(this._map._container,"leaflet-touch-zoom"),st(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){_r(this._map._container,"leaflet-touch-zoom"),Wt(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(p){var w=this._map;if(!(!p.touches||p.touches.length!==2||w._animatingZoom||this._zooming)){var M=w.mouseEventToContainerPoint(p.touches[0]),E=w.mouseEventToContainerPoint(p.touches[1]);this._centerPoint=w.getSize()._divideBy(2),this._startLatLng=w.containerPointToLatLng(this._centerPoint),w.options.touchZoom!=="center"&&(this._pinchStartLatLng=w.containerPointToLatLng(M.add(E)._divideBy(2))),this._startDist=M.distanceTo(E),this._startZoom=w.getZoom(),this._moved=!1,this._zooming=!0,w._stop(),st(document,"touchmove",this._onTouchMove,this),st(document,"touchend touchcancel",this._onTouchEnd,this),un(p)}},_onTouchMove:function(p){if(!(!p.touches||p.touches.length!==2||!this._zooming)){var w=this._map,M=w.mouseEventToContainerPoint(p.touches[0]),E=w.mouseEventToContainerPoint(p.touches[1]),j=M.distanceTo(E)/this._startDist;if(this._zoom=w.getScaleZoom(j,this._startZoom),!w.options.bounceAtZoomLimits&&(this._zoomw.getMaxZoom()&&j>1)&&(this._zoom=w._limitZoom(this._zoom)),w.options.touchZoom==="center"){if(this._center=this._startLatLng,j===1)return}else{var U=M._add(E)._divideBy(2)._subtract(this._centerPoint);if(j===1&&U.x===0&&U.y===0)return;this._center=w.unproject(w.project(this._pinchStartLatLng,this._zoom).subtract(U),this._zoom)}this._moved||(w._moveStart(!0,!1),this._moved=!0),D(this._animRequest);var X=o(w._move,w,this._center,this._zoom,{pinch:!0,round:!1},void 0);this._animRequest=O(X,this,!0),un(p)}},_onTouchEnd:function(){if(!this._moved||!this._zooming){this._zooming=!1;return}this._zooming=!1,D(this._animRequest),Wt(document,"touchmove",this._onTouchMove,this),Wt(document,"touchend touchcancel",this._onTouchEnd,this),this._map.options.zoomAnimation?this._map._animateZoom(this._center,this._map._limitZoom(this._zoom),!0,this._map.options.zoomSnap):this._map._resetView(this._center,this._map._limitZoom(this._zoom))}});wt.addInitHook("addHandler","touchZoom",n5),wt.BoxZoom=K3,wt.DoubleClickZoom=J3,wt.Drag=Q3,wt.Keyboard=e5,wt.ScrollWheelZoom=t5,wt.TapHold=r5,wt.TouchZoom=n5,r.Bounds=G,r.Browser=Ue,r.CRS=Ne,r.Canvas=Z3,r.Circle=$C,r.CircleMarker=z0,r.Class=z,r.Control=wa,r.DivIcon=W3,r.DivOverlay=ao,r.DomEvent=Bae,r.DomUtil=jae,r.Draggable=nl,r.Evented=$,r.FeatureGroup=Qo,r.GeoJSON=ts,r.GridLayer=hp,r.Handler=io,r.Icon=Gf,r.ImageOverlay=W0,r.LatLng=le,r.LatLngBounds=K,r.Layer=Sa,r.LayerGroup=Vf,r.LineUtil=Kae,r.Map=wt,r.Marker=B0,r.Mixin=Hae,r.Path=il,r.Point=B,r.PolyUtil=Uae,r.Polygon=Wf,r.Polyline=es,r.Popup=H0,r.PosAnimation=A3,r.Projection=Jae,r.Rectangle=q3,r.Renderer=rs,r.SVG=vp,r.SVGOverlay=G3,r.TileLayer=Uf,r.Tooltip=U0,r.Transformation=ue,r.Util=N,r.VideoOverlay=V3,r.bind=o,r.bounds=Y,r.canvas=Y3,r.circle=ooe,r.circleMarker=aoe,r.control=up,r.divIcon=poe,r.extend=i,r.featureGroup=roe,r.geoJSON=F3,r.geoJson=uoe,r.gridLayer=goe,r.icon=noe,r.imageOverlay=coe,r.latLng=he,r.latLngBounds=ee,r.layerGroup=toe,r.map=zae,r.marker=ioe,r.point=W,r.polygon=loe,r.polyline=soe,r.popup=doe,r.rectangle=xoe,r.setOptions=m,r.stamp=l,r.svg=X3,r.svgOverlay=hoe,r.tileLayer=H3,r.tooltip=voe,r.transformation=te,r.version=n,r.videoOverlay=foe;var boe=window.L;r.noConflict=function(){return window.L=boe,this},window.L=r})})(sO,sO.exports);var Rf=sO.exports;const rae=$t(Rf);function P0(e,t,r){return Object.freeze({instance:e,context:t,container:r})}function e3(e,t){return t==null?function(n,i){const a=H.useRef();return a.current||(a.current=e(n,i)),a}:function(n,i){const a=H.useRef();a.current||(a.current=e(n,i));const o=H.useRef(n),{instance:s}=a.current;return H.useEffect(function(){o.current!==n&&(t(s,n,o.current),o.current=n)},[s,n,i]),a}}function nae(e,t){H.useEffect(function(){return(t.layerContainer??t.map).addLayer(e.instance),function(){var a;(a=t.layerContainer)==null||a.removeLayer(e.instance),t.map.removeLayer(e.instance)}},[t,e])}function iQe(e){return function(r){const n=vC(),i=e(pC(r,n),n);return Jie(n.map,r.attribution),QR(i.current,r.eventHandlers),nae(i.current,n),i}}function aQe(e,t){const r=H.useRef();H.useEffect(function(){if(t.pathOptions!==r.current){const i=t.pathOptions??{};e.instance.setStyle(i),r.current=i}},[e,t])}function oQe(e){return function(r){const n=vC(),i=e(pC(r,n),n);return QR(i.current,r.eventHandlers),nae(i.current,n),aQe(i.current,r),i}}function iae(e,t){const r=e3(e),n=nQe(r,t);return tQe(n)}function aae(e,t){const r=e3(e,t),n=oQe(r);return eQe(n)}function sQe(e,t){const r=e3(e,t),n=iQe(r);return rQe(n)}function lQe(e,t,r){const{opacity:n,zIndex:i}=t;n!=null&&n!==r.opacity&&e.setOpacity(n),i!=null&&i!==r.zIndex&&e.setZIndex(i)}function uQe(){return vC().map}const cQe=aae(function({center:t,children:r,...n},i){const a=new Rf.CircleMarker(t,n);return P0(a,Qie(i,{overlayContainer:a}))},KJe);function lO(){return lO=Object.assign||function(e){for(var t=1;t(d==null?void 0:d.map)??null,[d]);const m=H.useCallback(x=>{if(x!==null&&d===null){const _=new Rf.Map(x,c);r!=null&&u!=null?_.setView(r,u):e!=null&&_.fitBounds(e,t),l!=null&&_.whenReady(l),v(QJe(_))}},[]);H.useEffect(()=>()=>{d==null||d.map.remove()},[d]);const y=d?Q.createElement(tae,{value:d},n):o??null;return Q.createElement("div",lO({},h,{ref:m}),y)}const hQe=H.forwardRef(fQe),dQe=aae(function({positions:t,...r},n){const i=new Rf.Polyline(t,r);return P0(i,Qie(n,{overlayContainer:i}))},function(t,r,n){r.positions!==n.positions&&t.setLatLngs(r.positions)}),vQe=iae(function(t,r){const n=new Rf.Popup(t,r.overlayContainer);return P0(n,r)},function(t,r,{position:n},i){H.useEffect(function(){const{instance:o}=t;function s(u){u.popup===o&&(o.update(),i(!0))}function l(u){u.popup===o&&i(!1)}return r.map.on({popupopen:s,popupclose:l}),r.overlayContainer==null?(n!=null&&o.setLatLng(n),o.openOn(r.map)):r.overlayContainer.bindPopup(o),function(){var c;r.map.off({popupopen:s,popupclose:l}),(c=r.overlayContainer)==null||c.unbindPopup(),r.map.removeLayer(o)}},[t,r,i,n])}),pQe=sQe(function({url:t,...r},n){const i=new Rf.TileLayer(t,pC(r,n));return P0(i,n)},function(t,r,n){lQe(t,r,n);const{url:i}=r;i!=null&&i!==n.url&&t.setUrl(i)}),gQe=iae(function(t,r){const n=new Rf.Tooltip(t,r.overlayContainer);return P0(n,r)},function(t,r,{position:n},i){H.useEffect(function(){const o=r.overlayContainer;if(o==null)return;const{instance:s}=t,l=c=>{c.tooltip===s&&(n!=null&&s.setLatLng(n),s.update(),i(!0))},u=c=>{c.tooltip===s&&i(!1)};return o.on({tooltipopen:l,tooltipclose:u}),o.bindTooltip(s),function(){o.off({tooltipopen:l,tooltipclose:u}),o._map!=null&&o.unbindTooltip()}},[t,r,i,n])}),mQe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=",yQe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAABSCAMAAAAhFXfZAAAC91BMVEVMaXEzeak2f7I4g7g3g7cua5gzeKg8hJo3grY4g7c3grU0gLI2frE0daAubJc2gbQwd6QzeKk2gLMtd5sxdKIua5g1frA2f7IydaM0e6w2fq41fK01eqo3grgubJgta5cxdKI1f7AydaQydaMxc6EubJgvbJkwcZ4ubZkwcJwubZgubJcydqUydKIxapgubJctbJcubZcubJcvbJYubJcvbZkubJctbJctbZcubJg2f7AubJcrbZcubJcubJcua5g3grY0fq8ubJcubJdEkdEwhsw6i88vhswuhcsuhMtBjMgthMsrg8srgss6is8qgcs8i9A9iMYtg8spgcoogMo7hcMngMonf8olfso4gr8kfck5iM8jfMk4iM8he8k1fro7itAgesk2hs8eecgzfLcofssdeMg0hc4cd8g2hcsxeLQbdsgZdcgxeLImfcszhM0vda4xgckzhM4xg84wf8Yxgs4udKsvfcQucqhUndROmdM1fK0wcZ8vb5w0eqpQm9MzeKhXoNVcpdYydKNWn9VZotVKltJFjsIwcJ1Rms9OlslLmtH///8+kc9epdYzd6dbo9VHkMM2f7FHmNBClM8ydqVcpNY9hro3gLM9hLczealQmcw3fa46f7A8gLMxc6I3eagyc6FIldJMl9JSnNRSntNNl9JPnNJFi75UnM9ZodVKksg8kM45jc09e6ZHltFBk883gbRBh7pDk9EwcaBzn784g7dKkcY2i81Om9M7j85Llc81is09g7Q4grY/j9A0eqxKmdFFltBEjcXf6fFImdBCiLxJl9FGlNFBi78yiMxVndEvbpo6js74+vx+psPP3+o/ks5HkcpGmNCjwdZCkNDM3ehYoNJEls+lxNkxh8xHks0+jdC1zd5Lg6r+/v/H2ufz9/o3jM3t8/edvdM/k89Th61OiLBSjbZklbaTt9BfptdjmL1AicBHj8hGk9FAgK1dkLNTjLRekrdClc/k7fM0icy0y9tgp9c4jc2NtM9Dlc8zicxeXZn3AAAAQ3RSTlMAHDdTb4yPA+LtnEQmC4L2EmHqB7XA0d0sr478x4/Yd5i1zOfyPkf1sLVq4Nh3FvjxopQ2/STNuFzUwFIwxKaejILpIBEV9wAABhVJREFUeF6s1NdyFEcYBeBeoQIhRAkLlRDGrhIgY3BJL8CVeKzuyXFzzjkn5ZxzzuScg3PO8cKzu70JkO0LfxdTU//pM9vTu7Xgf6KqOVTb9X7toRrVEfBf1HTVjZccrT/2by1VV928Yty9ZbVuucdz90frG8DBjl9pVApbOstvmMuvVgaNXSfAAd6pGxpy6yxf5ph43pS/4f3uoaGm2rdu72S9xzOvMymkZFq/ptDrk90mhW7e4zl7HLzhxGWPR20xmSxJ/VqldG5m9XhaVOA1DadsNh3Pu5L2N6QtPO/32JpqQBVVk20oy/Pi2s23WEvyfHbe1thadVQttvm7Llf65gGmXK67XtupyoM7HQhmXdLS8oGWJNeOJ3C5fG5XCEJnkez3/oFdsvgJ4l2ANZwhrJKk/7OSXa+3Vw2WJMlKnGkobouYk6T0TyX30klOUnTD9HJ5qpckL3EW/w4XF3Xd0FGywXUrstrclVsqz5Pd/sXFYyDnPdrLcQODmGOK47IZb4CmibmMn+MYRzFZ5jg33ZL/EJrWcszHmANy3ARBK/IXtciJy8VsitPSdE3uuHxzougojcUdr8/32atnz/ev3f/K5wtpxUTpcaI45zusVDpYtZi+jg0oU9b3x74h7+n9ABvYEZeKaVq0sh0AtLKsFtqNBdeT0MrSzwwlq9+x6xAO4tgOtSzbCjrNQQiNvQUbUEubvzBUeGw26yDCsRHCoLkTHDa7IdOLIThs/gHvChszh2CimE8peRs47cxANI0lYNB5y1DljpOF0IhzBDPOZnDOqYYbeGKECbPzWnXludPphw5c2YBq5zlwXphIbO4VDCZ0gnPfUO1TwZoYwAs2ExPCedAu9DAjfQUjzITQb3jNj0KG2Sgt6BHaQUdYzWz+XmBktOHwanXjaSTcwwziBcuMOtwBmqPrTOxFQR/DRKKPqyur0aiW6cULYsx6tBm0jXpR/AUWR6HRq9WVW6MRhIq5jLyjbaCTDCijyYJNpCajdyobP/eTw0iexBAKkJ3gA5KcQb2zBXsIBckn+xVv8jkZSaEFHE+jFEleAEfayRU0MouNoBmB/L50Ai/HSLIHxcrpCvnhSQAuakKp2C/YbCylJjXRVy/z3+Kv/RrNcCo+WUzlVEhzKffnTQnxeN9fWF88fiNCUdSTsaufaChKWInHeysygfpIqagoakW+vV20J8uyl6TyNKEZWV4oRSPyCkWpgOLSbkCObT8o2r6tlG58HQquf6O0v50tB7JM7F4EORd2dx/K0w/KHsVkLPaoYrwgP/y7krr3SSMA4zj+OBgmjYkxcdIJQyQRKgg2viX9Hddi9UBb29LrKR7CVVEEEXWojUkXNyfTNDE14W9gbHJNuhjDettN3ZvbOvdOqCD3Jp/9l+/wJE+9PkYGjx/fqkys3S2rMozM/o2106rfMUINo6hVqz+eu/hd1c4xTg0TAfy5kV+4UG6+IthHTU9woWmxuKNbTfuCSfovBCxq7EtHqvYL4Sm6F8GVxsSXHMQ07TOi1DKtZxjWaaIyi4CXWjxPccUw8WVbMYY5wxC1mzEyXMJWkllpRloi+Kkoq69sxBTlElF6aAxYUbjXNlhlDZilDnM4U5SlN5biRsRHnbx3mbeWjEh4mEyiuJDl5XcWVmX5GvNkFgLWZM5qwsop4/AWfLhU1cR7k1VVvcYCWRkOI6Xy5gmnphCYIkvzuNYzHzosq2oNk2RtSs8khfUOfHIDgR6ysYBaMpl4uEgk2U/oJTs9AaTSwma7dT69geAE2ZpEjUsn2ieJNHeKfrI3EcAGJ2ZaNgVuC8EBctCLc57P5u5led6IOBkIYkuQMrmmjChs4VkfOerHqSBkPzZlhe06RslZ3zMjk2sscqKwY0RcjKK+LWbzd7KiHhkncs/siFJ+V5eXxD34B8nVuJEpGJNmxN2gH3vSvp7J70tF+D1Ej8qUJD1TkErAND2GZwTFg/LubvmgiBG3SOvdlsqFQrkEzJCL1rstlnVFROixZoDDSuXQFHESwVGlcuQcMb/b42NgjLowh5MTDFE3vNB5qStRIErdCQEh6pLPR92anSUb/wAIhldAaDMpGgAAAABJRU5ErkJggg==",xQe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAApCAQAAAACach9AAACMUlEQVR4Ae3ShY7jQBAE0Aoz/f9/HTMzhg1zrdKUrJbdx+Kd2nD8VNudfsL/Th///dyQN2TH6f3y/BGpC379rV+S+qqetBOxImNQXL8JCAr2V4iMQXHGNJxeCfZXhSRBcQMfvkOWUdtfzlLgAENmZDcmo2TVmt8OSM2eXxBp3DjHSMFutqS7SbmemzBiR+xpKCNUIRkdkkYxhAkyGoBvyQFEJEefwSmmvBfJuJ6aKqKWnAkvGZOaZXTUgFqYULWNSHUckZuR1HIIimUExutRxwzOLROIG4vKmCKQt364mIlhSyzAf1m9lHZHJZrlAOMMztRRiKimp/rpdJDc9Awry5xTZCte7FHtuS8wJgeYGrex28xNTd086Dik7vUMscQOa8y4DoGtCCSkAKlNwpgNtphjrC6MIHUkR6YWxxs6Sc5xqn222mmCRFzIt8lEdKx+ikCtg91qS2WpwVfBelJCiQJwvzixfI9cxZQWgiSJelKnwBElKYtDOb2MFbhmUigbReQBV0Cg4+qMXSxXSyGUn4UbF8l+7qdSGnTC0XLCmahIgUHLhLOhpVCtw4CzYXvLQWQbJNmxoCsOKAxSgBJno75avolkRw8iIAFcsdc02e9iyCd8tHwmeSSoKTowIgvscSGZUOA7PuCN5b2BX9mQM7S0wYhMNU74zgsPBj3HU7wguAfnxxjFQGBE6pwN+GjME9zHY7zGp8wVxMShYX9NXvEWD3HbwJf4giO4CFIQxXScH1/TM+04kkBiAAAAAElFTkSuQmCC";delete rae.Icon.Default.prototype._getIconUrl;rae.Icon.Default.mergeOptions({iconUrl:mQe,iconRetinaUrl:yQe,shadowUrl:xQe});const JU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],_Qe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function bQe(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function wQe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function SQe(e){if(!e)return"Unknown";const t=new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/6e4),a=Math.floor(n/36e5),o=Math.floor(n/864e5);return i<1?"Just now":i<60?`${i}m ago`:a<24?`${a}h ago`:`${o}d ago`}function TQe({bounds:e}){const t=uQe();return H.useEffect(()=>{e&&t.fitBounds(e,{padding:[50,50]})},[t,e]),null}function CQe({node:e}){const t=e.latitude!==null&&e.longitude!==null,r=e.battery_level!==null?e.battery_level>100||e.voltage&&e.voltage>4.1?"USB ⚡":`${e.battery_level.toFixed(0)}%`:"Unknown";return g.jsxs("div",{className:"min-w-[200px]",children:[g.jsx("div",{className:"font-semibold text-slate-800",children:e.short_name}),g.jsx("div",{className:"text-xs text-slate-600 mb-2",children:e.long_name}),g.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-1 text-xs",children:[g.jsx("div",{className:"text-slate-500",children:"Role"}),g.jsx("div",{className:"text-slate-700 font-medium",children:e.role}),g.jsx("div",{className:"text-slate-500",children:"Hardware"}),g.jsx("div",{className:"text-slate-700",children:e.hardware||"Unknown"}),g.jsx("div",{className:"text-slate-500",children:"Battery"}),g.jsx("div",{className:"text-slate-700",children:r}),g.jsx("div",{className:"text-slate-500",children:"Last Heard"}),g.jsx("div",{className:"text-slate-700",children:SQe(e.last_heard)})]}),t&&g.jsxs("div",{className:"mt-3 pt-2 border-t border-slate-200 flex gap-2",children:[g.jsxs("a",{href:`https://www.google.com/maps?q=${e.latitude},${e.longitude}`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-600 hover:text-blue-800",children:[g.jsx(Sd,{size:10}),"Google Maps"]}),g.jsxs("a",{href:`https://www.openstreetmap.org/?mlat=${e.latitude}&mlon=${e.longitude}&zoom=14`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-600 hover:text-blue-800",children:[g.jsx(Sd,{size:10}),"OSM"]})]})]})}function AQe({nodes:e,edges:t,selectedNodeId:r,onSelectNode:n}){const i=H.useMemo(()=>e.filter(f=>f.latitude!==null&&f.longitude!==null),[e]),a=e.length-i.length,o=H.useMemo(()=>new Map(i.map(f=>[f.node_num,f])),[i]),s=H.useMemo(()=>t.filter(f=>o.has(f.from_node)&&o.has(f.to_node)),[t,o]),l=H.useMemo(()=>{if(i.length===0)return null;const f=i.map(d=>d.latitude),h=i.map(d=>d.longitude);return[[Math.min(...f),Math.min(...h)],[Math.max(...f),Math.max(...h)]]},[i]),u=[43.6,-114.4],c=H.useMemo(()=>{const f=new Set;return r!==null&&t.forEach(h=>{h.from_node===r&&f.add(h.to_node),h.to_node===r&&f.add(h.from_node)}),f},[r,t]);return g.jsxs("div",{className:"relative bg-bg-card rounded-lg border border-border overflow-hidden",children:[g.jsxs(hQe,{center:u,zoom:7,style:{width:"100%",height:"540px"},className:"z-0",children:[g.jsx(pQe,{url:"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",attribution:'© OpenStreetMap, © CARTO'}),g.jsx(TQe,{bounds:l}),s.map((f,h)=>{const d=o.get(f.from_node),v=o.get(f.to_node),m=r===null||f.from_node===r||f.to_node===r;return g.jsx(dQe,{positions:[[d.latitude,d.longitude],[v.latitude,v.longitude]],color:bQe(f.snr),weight:m&&r!==null?2.5:1.5,opacity:r===null?.3:m?.6:.08},h)}),i.map(f=>{const h=f.node_num===r,d=c.has(f.node_num),v=r===null||h||d,m=_Qe.includes(f.role),y=wQe(f.latitude),x=JU[y%JU.length];return g.jsxs(cQe,{center:[f.latitude,f.longitude],radius:m?8:5,fillColor:m?x:"#111827",fillOpacity:v?.9:.2,stroke:!0,color:h?"#ffffff":x,weight:h?3:m?0:2,opacity:v?1:.3,eventHandlers:{click:()=>n(h?null:f.node_num)},children:[g.jsx(gQe,{direction:"top",offset:[0,-8],children:g.jsx("span",{className:"font-mono text-xs",children:f.short_name})}),g.jsx(vQe,{children:g.jsx(CQe,{node:f})})]},f.node_num)})]}),g.jsxs("div",{className:"absolute bottom-4 left-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded px-3 py-2 text-xs text-slate-400 flex items-center gap-2",children:[g.jsx(mv,{size:12}),g.jsxs("span",{children:["Showing ",i.length," of ",e.length," nodes",a>0&&g.jsxs("span",{className:"text-slate-500",children:[" (",a," without coordinates)"]})]})]})]})}const QU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],MQe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function e7(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function PQe(e){return e>12?"excellent":e>8?"good":e>5?"fair":e>3?"marginal":"poor"}function kQe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function LQe(e){return["Northern ID","Central ID","SW Idaho","SC Idaho"][e]||"Unknown"}function IQe(e){if(!e)return"Unknown";const t=new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/6e4),a=Math.floor(n/36e5),o=Math.floor(n/864e5);return i<1?"Just now":i<60?`${i}m ago`:a<24?`${a}h ago`:`${o}d ago`}function EQe(e){if(!e)return"bg-slate-500";const t=new Date(e),n=(new Date().getTime()-t.getTime())/36e5;return n<1?"bg-green-500":n<24?"bg-amber-500":"bg-slate-500"}function OQe({node:e,edges:t,nodes:r,onSelectNode:n}){const i=H.useMemo(()=>{if(!e)return[];const f=new Map(r.map(d=>[d.node_num,d])),h=[];return t.forEach(d=>{if(d.from_node===e.node_num){const v=f.get(d.to_node);v&&h.push({node:v,snr:d.snr,quality:d.quality})}else if(d.to_node===e.node_num){const v=f.get(d.from_node);v&&h.push({node:v,snr:d.snr,quality:d.quality})}}),h.sort((d,v)=>v.snr-d.snr)},[e,t,r]);if(!e)return g.jsxs("div",{className:"w-[250px] flex-shrink-0 bg-bg-card border-l border-border p-4 flex flex-col items-center justify-center h-[540px]",children:[g.jsx("div",{className:"w-12 h-12 rounded-full bg-bg-hover border border-border flex items-center justify-center mb-3",children:g.jsx(Ya,{size:24,className:"text-slate-500"})}),g.jsx("p",{className:"text-sm text-slate-500 text-center",children:"Click a node to inspect"})]});const a=MQe.includes(e.role),o=kQe(e.latitude),s=QU[o%QU.length],l=e.latitude!==null&&e.longitude!==null,u=e.battery_level!==null?e.battery_level>100||e.voltage&&e.voltage>4.1?"USB":`${e.battery_level.toFixed(0)}%`:"—",c=e.battery_level!==null&&(e.battery_level>100||e.voltage&&e.voltage>4.1);return g.jsxs("div",{className:"w-[250px] flex-shrink-0 bg-bg-card border-l border-border flex flex-col h-[540px] overflow-hidden",children:[g.jsxs("div",{className:"p-4 border-b border-border",children:[g.jsx("div",{className:"inline-flex items-center px-2 py-0.5 rounded text-xs font-mono mb-2",style:{backgroundColor:`${s}20`,color:s},children:e.node_id_hex}),g.jsx("div",{className:"font-mono text-lg text-slate-100",children:e.short_name}),g.jsx("div",{className:"text-xs text-slate-500 truncate",children:e.long_name})]}),g.jsxs("div",{className:"p-4 border-b border-border grid grid-cols-2 gap-3",children:[g.jsxs("div",{children:[g.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Role"}),g.jsx("div",{className:`text-sm font-medium ${a?"text-cyan-400":"text-slate-300"}`,children:e.role})]}),g.jsxs("div",{children:[g.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Region"}),g.jsx("div",{className:"text-sm text-slate-300",children:LQe(o)})]}),g.jsxs("div",{children:[g.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Battery"}),g.jsxs("div",{className:"text-sm text-slate-300 flex items-center gap-1",children:[c&&g.jsx(km,{size:12,className:"text-amber-400"}),u]})]}),g.jsxs("div",{children:[g.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Status"}),g.jsxs("div",{className:"flex items-center gap-1.5",children:[g.jsx("div",{className:`w-2 h-2 rounded-full ${EQe(e.last_heard)}`}),g.jsx("span",{className:"text-sm text-slate-300",children:IQe(e.last_heard)})]})]}),g.jsxs("div",{className:"col-span-2",children:[g.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Hardware"}),g.jsx("div",{className:"text-sm text-slate-300 font-mono truncate",children:e.hardware||"Unknown"})]})]}),l&&g.jsxs("div",{className:"px-4 py-3 border-b border-border flex gap-3",children:[g.jsxs("a",{href:`https://www.google.com/maps?q=${e.latitude},${e.longitude}`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-400 hover:text-blue-300",children:[g.jsx(Sd,{size:10}),"Google Maps"]}),g.jsxs("a",{href:`https://www.openstreetmap.org/?mlat=${e.latitude}&mlon=${e.longitude}&zoom=14`,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-xs text-blue-400 hover:text-blue-300",children:[g.jsx(Sd,{size:10}),"OSM"]})]}),g.jsxs("div",{className:"flex-1 overflow-y-auto",children:[g.jsxs("div",{className:"px-4 py-2 text-xs text-slate-500 font-medium sticky top-0 bg-bg-card border-b border-border",children:["Neighbors (",i.length,")"]}),i.length>0?g.jsx("div",{className:"divide-y divide-border",children:i.map(f=>g.jsxs("button",{onClick:()=>n(f.node.node_num),className:"w-full px-4 py-2 text-left hover:bg-bg-hover transition-colors flex items-center gap-2",style:{borderLeftWidth:3,borderLeftColor:e7(f.snr)},children:[g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsx("div",{className:"text-sm text-slate-200 font-mono truncate",children:f.node.short_name}),g.jsx("div",{className:"text-xs text-slate-500 truncate",children:f.node.long_name})]}),g.jsxs("div",{className:"text-right flex-shrink-0",children:[g.jsxs("div",{className:"text-xs font-mono",style:{color:e7(f.snr)},children:[f.snr.toFixed(1)," dB"]}),g.jsx("div",{className:"text-xs text-slate-500",children:PQe(f.snr)})]})]},f.node.node_num))}):g.jsx("div",{className:"px-4 py-6 text-center text-sm text-slate-500",children:"No known neighbors"})]})]})}const t7=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function DQe(e){if(!e)return"bg-slate-500";const t=new Date(e),n=(new Date().getTime()-t.getTime())/36e5;return n<1?"bg-green-500":n<24?"bg-amber-500":"bg-slate-500"}function NQe(e){if(!e)return"—";const t=new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/6e4),a=Math.floor(n/36e5),o=Math.floor(n/864e5);return i<1?"Just now":i<60?`${i}m ago`:a<24?`${a}h ago`:`${o}d ago`}function jQe(e){return e.battery_level===null?"—":e.battery_level>100||e.voltage&&e.voltage>4.1?"USB ⚡":`${e.battery_level.toFixed(0)}%`}function r7(e){return e===null?"—":e>46?"Northern":e>44.5?"Central":e>43?"SW Idaho":"SC Idaho"}function RQe({nodes:e,selectedNodeId:t,onSelectNode:r}){const[n,i]=H.useState(""),[a,o]=H.useState("short_name"),[s,l]=H.useState("asc"),[u,c]=H.useState("all"),f=H.useMemo(()=>{let v=[...e];if(u==="infra"?v=v.filter(m=>t7.includes(m.role)):u==="online"&&(v=v.filter(m=>{if(!m.last_heard)return!1;const y=new Date(m.last_heard);return(new Date().getTime()-y.getTime())/36e5<1})),n){const m=n.toLowerCase();v=v.filter(y=>y.short_name.toLowerCase().includes(m)||y.long_name.toLowerCase().includes(m)||y.role.toLowerCase().includes(m)||r7(y.latitude).toLowerCase().includes(m))}return v.sort((m,y)=>{let x="",_="";switch(a){case"short_name":x=m.short_name.toLowerCase(),_=y.short_name.toLowerCase();break;case"role":x=m.role,_=y.role;break;case"battery_level":x=m.battery_level??-1,_=y.battery_level??-1;break;case"last_heard":x=m.last_heard?new Date(m.last_heard).getTime():0,_=y.last_heard?new Date(y.last_heard).getTime():0;break;case"hardware":x=m.hardware.toLowerCase(),_=y.hardware.toLowerCase();break}return x<_?s==="asc"?-1:1:x>_?s==="asc"?1:-1:0}),v},[e,n,a,s,u]),h=v=>{a===v?l(s==="asc"?"desc":"asc"):(o(v),l("asc"))},d=({field:v})=>a!==v?null:s==="asc"?g.jsx(vce,{size:14,className:"inline ml-1"}):g.jsx(yu,{size:14,className:"inline ml-1"});return g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg overflow-hidden",children:[g.jsxs("div",{className:"p-3 border-b border-border flex items-center gap-3",children:[g.jsxs("div",{className:"relative flex-1 max-w-xs",children:[g.jsx(jS,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),g.jsx("input",{type:"text",placeholder:"Search nodes...",value:n,onChange:v=>i(v.target.value),className:"w-full pl-9 pr-3 py-1.5 bg-bg-hover border border-border rounded text-sm text-slate-200 placeholder-slate-500 focus:outline-none focus:border-accent"})]}),g.jsxs("div",{className:"flex items-center gap-1",children:[g.jsx(lD,{size:14,className:"text-slate-500 mr-1"}),["all","infra","online"].map(v=>g.jsx("button",{onClick:()=>c(v),className:`px-2 py-1 text-xs rounded transition-colors ${u===v?"bg-accent text-white":"bg-bg-hover text-slate-400 hover:text-slate-200"}`,children:v==="all"?"All":v==="infra"?"Infra":"Online"},v))]}),g.jsxs("div",{className:"text-xs text-slate-500 ml-auto",children:[f.length," of ",e.length," nodes"]})]}),g.jsxs("div",{className:"overflow-x-auto",children:[g.jsxs("table",{className:"w-full text-sm",children:[g.jsx("thead",{children:g.jsxs("tr",{className:"bg-bg-hover text-slate-400 text-xs",children:[g.jsx("th",{className:"w-8 px-3 py-2"}),g.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("short_name"),children:["Name ",g.jsx(d,{field:"short_name"})]}),g.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("role"),children:["Role ",g.jsx(d,{field:"role"})]}),g.jsx("th",{className:"px-3 py-2 text-left",children:"Region"}),g.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("battery_level"),children:[g.jsx("span",{title:"Battery percent (4.20V = 100%, 3.60V ~ 30% warning, 3.30V ~ 3% critical). USB ⚡ = USB-powered (>100% or >4.1V); no battery management applies.",children:"Battery"})," ",g.jsx(d,{field:"battery_level"})]}),g.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("last_heard"),children:[g.jsx("span",{title:"Status dot: green = heard in the last hour; amber = within 24h; slate = offline (past the configured threshold). See Reference → Mesh Health for thresholds by node type.",children:"Last Heard"})," ",g.jsx(d,{field:"last_heard"})]}),g.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("hardware"),children:["Hardware ",g.jsx(d,{field:"hardware"})]})]})}),g.jsx("tbody",{className:"divide-y divide-border",children:f.slice(0,100).map(v=>{const m=t7.includes(v.role),y=v.node_num===t;return g.jsxs("tr",{onClick:()=>r(v.node_num),className:`cursor-pointer transition-colors ${y?"bg-accent/10":"hover:bg-bg-hover"}`,children:[g.jsx("td",{className:"px-3 py-2",children:g.jsx("div",{className:`w-2 h-2 rounded-full ${DQe(v.last_heard)}`})}),g.jsxs("td",{className:"px-3 py-2",children:[g.jsx("div",{className:"font-mono text-slate-200",children:v.short_name}),g.jsx("div",{className:"text-xs text-slate-500 truncate max-w-[200px]",children:v.long_name})]}),g.jsx("td",{className:"px-3 py-2",children:g.jsx("span",{className:`inline-block px-1.5 py-0.5 rounded text-xs font-medium ${m?"bg-cyan-500/20 text-cyan-400":"bg-slate-500/20 text-slate-400"}`,children:v.role})}),g.jsx("td",{className:"px-3 py-2 text-slate-400",children:r7(v.latitude)}),g.jsx("td",{className:"px-3 py-2 font-mono text-slate-300",children:jQe(v)}),g.jsx("td",{className:"px-3 py-2 text-slate-400",children:NQe(v.last_heard)}),g.jsx("td",{className:"px-3 py-2 font-mono text-xs text-slate-400 truncate max-w-[150px]",children:v.hardware||"—"})]},v.node_num)})})]}),f.length>100&&g.jsxs("div",{className:"px-3 py-2 text-xs text-slate-500 text-center border-t border-border",children:["Showing first 100 of ",f.length," nodes"]}),f.length===0&&g.jsx("div",{className:"px-3 py-8 text-sm text-slate-500 text-center",children:"No nodes match your filters"})]})]})}function BQe(){const[e,t]=H.useState([]),[r,n]=H.useState([]),[i,a]=H.useState([]),[o,s]=H.useState(null),[l,u]=H.useState("topo"),[c,f]=H.useState(!0),[h,d]=H.useState(null);H.useEffect(()=>{document.title="Mesh — MeshAI",Promise.all([Mce(),Pce(),Oce()]).then(([y,x,_])=>{t(y),n(x),a(_),f(!1)}).catch(y=>{d(y.message),f(!1)})},[]);const v=H.useMemo(()=>e.find(y=>y.node_num===o)||null,[e,o]),m=H.useCallback(y=>{s(y)},[]);return c?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-slate-400",children:"Loading mesh data..."})}):h?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsxs("div",{className:"text-red-400",children:["Error: ",h]})}):g.jsxs("div",{className:"space-y-6",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("div",{className:"text-sm text-slate-400",children:[e.length," nodes • ",r.length," edges"]}),g.jsxs("div",{className:"flex items-center bg-bg-card border border-border rounded-lg p-1",children:[g.jsxs("button",{onClick:()=>u("topo"),className:`flex items-center gap-2 px-3 py-1.5 rounded text-sm transition-colors ${l==="topo"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:[g.jsx(GZ,{size:14}),g.jsx("span",{title:"Force-directed graph of nodes + neighbor links. Edge weight reflects SNR; node color reflects status (green = active, amber = stale, slate = offline).",children:"Topology"})]}),g.jsxs("button",{onClick:()=>u("geo"),className:`flex items-center gap-2 px-3 py-1.5 rounded text-sm transition-colors ${l==="geo"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:[g.jsx(wce,{size:14}),g.jsx("span",{title:"Nodes plotted by lat/lon on a basemap. Nodes without a reported position are clustered at the top edge.",children:"Geographic"})]})]})]}),g.jsxs("div",{className:"flex gap-0",children:[g.jsx("div",{className:"flex-1 min-w-0",children:l==="topo"?g.jsx(qJe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:m}):g.jsx(AQe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:m})}),g.jsx(OQe,{node:v,edges:r,nodes:e,onSelectNode:m})]}),g.jsx(RQe,{nodes:e,selectedNodeId:o,onSelectNode:m})]})}function t3({label:e,value:t,onChange:r,helper:n,info:i,roleFilter:a,valueType:o="short_name"}){const[s,l]=H.useState([]),[u,c]=H.useState(!0),[f,h]=H.useState(""),[d,v]=H.useState(!1);H.useEffect(()=>{fetch("/api/nodes").then(S=>S.json()).then(S=>{l(S),c(!1)}).catch(()=>{l([]),c(!1)})},[]);const m=H.useMemo(()=>{let S=s;if(a&&(S=S.filter(T=>a==="ROUTER"||a==="infrastructure"?T.is_infrastructure||T.role==="ROUTER"||T.role==="ROUTER_CLIENT"||T.role==="REPEATER":T.role===a)),f.trim()){const T=f.toLowerCase();S=S.filter(C=>{var A,P,I,k;return((A=C.short_name)==null?void 0:A.toLowerCase().includes(T))||((P=C.long_name)==null?void 0:P.toLowerCase().includes(T))||((I=C.role)==null?void 0:I.toLowerCase().includes(T))||((k=C.node_id_hex)==null?void 0:k.toLowerCase().includes(T))})}return S.sort((T,C)=>(T.short_name||"").localeCompare(C.short_name||""))},[s,f,a]),y=S=>{switch(o){case"node_num":return String(S.node_num);case"node_id_hex":return S.node_id_hex;default:return S.short_name||String(S.node_num)}},x=S=>{const T=y(S);return t.includes(T)},_=S=>{const T=y(S);t.includes(T)?r(t.filter(C=>C!==T)):r([...t,T])},b=S=>{const T=[S.short_name];return S.long_name&&S.long_name!==S.short_name&&T.push(`— ${S.long_name}`),S.role&&T.push(`(${S.role})`),T.join(" ")};return!u&&s.length===0?g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e}),g.jsx("input",{type:"text",value:t.join(", "),onChange:S=>r(S.target.value.split(",").map(T=>T.trim()).filter(Boolean)),placeholder:"Enter node IDs separated by commas",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]}):g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e}),t.length>0&&g.jsx("div",{className:"flex flex-wrap gap-2 mb-2",children:t.map(S=>{const T=s.find(C=>y(C)===S);return g.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 bg-accent/20 text-accent rounded text-sm",children:[T?T.short_name:S,g.jsx("button",{type:"button",onClick:()=>r(t.filter(C=>C!==S)),className:"hover:text-white",children:g.jsx(Xa,{size:14})})]},S)})}),g.jsxs("div",{className:"relative",children:[g.jsxs("div",{className:"relative",children:[g.jsx(jS,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),g.jsx("input",{type:"text",value:f,onChange:S=>h(S.target.value),onFocus:()=>v(!0),placeholder:u?"Loading nodes...":"Search nodes...",className:"w-full pl-9 pr-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent"})]}),d&&!u&&g.jsxs(g.Fragment,{children:[g.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>v(!1)}),g.jsx("div",{className:"absolute left-0 right-0 top-full mt-1 z-50 max-h-64 overflow-y-auto bg-[#0a0e17] border border-[#1e2a3a] rounded-lg shadow-xl",children:m.length===0?g.jsx("div",{className:"p-3 text-sm text-slate-500 text-center",children:"No nodes found"}):m.map(S=>g.jsxs("button",{type:"button",onClick:()=>_(S),className:`w-full flex items-center gap-2 px-3 py-2 text-left text-sm hover:bg-[#1e2a3a] ${x(S)?"bg-accent/10":""}`,children:[g.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center ${x(S)?"bg-accent border-accent":"border-slate-600"}`,children:x(S)&&g.jsx(zo,{size:12,className:"text-white"})}),g.jsx("span",{className:"text-slate-200",children:b(S)})]},S.node_num))})]})]}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function r3(e){const[t,r]=H.useState([]),[n,i]=H.useState(!0);H.useEffect(()=>{fetch("/api/channels").then(h=>h.json()).then(h=>{r(h),i(!1)}).catch(()=>{r([]),i(!1)})},[]);const a=h=>{const d=h.role==="PRIMARY"?"Primary":h.role==="SECONDARY"?"Secondary":"";return`${h.index}: ${h.name}${d?` (${d})`:""}`};if(!n&&t.length===0)return e.mode==="single"?g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e.label}),g.jsx("input",{type:"number",value:e.value,onChange:h=>e.onChange(Number(h.target.value)),min:e.includeDisabled?-1:0,max:7,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),e.helper&&g.jsx("p",{className:"text-xs text-slate-600",children:e.helper})]}):g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e.label}),g.jsx("input",{type:"text",value:e.value.join(", "),onChange:h=>{const d=h.target.value.split(",").map(v=>parseInt(v.trim())).filter(v=>!isNaN(v));e.onChange(d)},placeholder:"Enter channel numbers separated by commas",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),e.helper&&g.jsx("p",{className:"text-xs text-slate-600",children:e.helper})]});if(e.mode==="single"){const{value:h,onChange:d,label:v,helper:m,includeDisabled:y}=e,x=t.filter(_=>_.enabled);return g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:v}),g.jsxs("select",{value:h,onChange:_=>d(Number(_.target.value)),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:[y&&g.jsx("option",{value:-1,children:"Disabled"}),x.map(_=>g.jsx("option",{value:_.index,children:a(_)},_.index))]}),m&&g.jsx("p",{className:"text-xs text-slate-600",children:m})]})}const{value:o,onChange:s,label:l,helper:u}=e,c=t.filter(h=>h.enabled),f=h=>{o.includes(h)?s(o.filter(d=>d!==h)):s([...o,h].sort((d,v)=>d-v))};return g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:l}),g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-2 space-y-1",children:[c.map(h=>g.jsxs("label",{onClick:()=>f(h.index),className:"flex items-center gap-2 p-2 rounded hover:bg-[#0a0e17] cursor-pointer",children:[g.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center ${o.includes(h.index)?"bg-accent border-accent":"border-slate-600"}`,children:o.includes(h.index)&&g.jsx(zo,{size:12,className:"text-white"})}),g.jsx("span",{className:"text-sm text-slate-200",children:a(h)})]},h.index)),c.length===0&&g.jsx("div",{className:"text-sm text-slate-500 p-2",children:"No channels available"})]}),u&&g.jsx("p",{className:"text-xs text-slate-600",children:u})]})}const n7=[{key:"bot",label:"Bot",icon:cce},{key:"connection",label:"Connection",icon:RS},{key:"response",label:"Response",icon:uD},{key:"history",label:"History",icon:zZ},{key:"memory",label:"Memory",icon:fce},{key:"context",label:"Context",icon:sD},{key:"commands",label:"Commands",icon:UZ},{key:"llm",label:"LLM",icon:BZ},{key:"weather",label:"Weather",icon:lu},{key:"meshmonitor",label:"MeshMonitor",icon:Ya},{key:"knowledge",label:"Knowledge",icon:jZ},{key:"mesh_sources",label:"Mesh Sources",icon:FZ},{key:"mesh_intelligence",label:"Intelligence",icon:gv},{key:"dashboard",label:"Dashboard",icon:VZ}],hi={bot:"Identity and behavior settings for the bot on the mesh network.",connection:"How MeshAI connects to your Meshtastic radio.",response:"Controls how quickly and how much the bot responds on the mesh.",history:"Conversation history storage and cleanup.",memory:"Short-term conversation memory management. Controls how the bot maintains context within a conversation.",context:"Passive channel monitoring. The bot listens to mesh channels and uses recent messages as context when responding.",commands:"Mesh commands available via the configured prefix. Toggle individual commands on or off.",llm:"AI model configuration. MeshAI uses an LLM to understand questions and generate responses.",weather:"Weather data for the !weather command. This is separate from NWS environmental alerts.",meshmonitor:"AIDA MeshMonitor integration. An additional data source for mesh network monitoring.",knowledge:"Knowledge base for answering questions from stored documents. Connects to Qdrant vector database or local SQLite.",mesh_sources:"Data sources for mesh network information. MeshAI can pull data from multiple sources simultaneously and merge them into a unified view.",mesh_intelligence:"Advanced mesh analysis: health scoring, region management, and automated alerting. The intelligence engine monitors your mesh and detects problems automatically.",dashboard:"Web dashboard settings. You're looking at it right now."},zQe=[{name:"help",description:"Show available commands and usage"},{name:"health",description:"Mesh network health overview with status dots"},{name:"status",description:"Quick mesh status summary"},{name:"region",description:"List regions or get detailed region breakdown"},{name:"neighbors",description:"Show top infrastructure neighbors with signal quality"},{name:"ping",description:"Test bot responsiveness"},{name:"clear",description:"Clear your conversation history"},{name:"reset",description:"Reset conversation context"},{name:"sub",description:"Subscribe to scheduled reports or alerts"},{name:"unsub",description:"Remove a subscription"},{name:"mysubs",description:"List your active subscriptions"},{name:"alerts",description:"Active NWS weather alerts for mesh area"},{name:"solar",description:"Space weather and HF propagation conditions"},{name:"hf",description:"HF radio propagation (alias for !solar)"},{name:"fire",description:"Active wildfires near the mesh"},{name:"avy",description:"Avalanche advisories for configured zones"},{name:"hotspots",description:"NASA FIRMS satellite fire detections"},{name:"streams",description:"USGS stream gauge readings"},{name:"roads",description:"Road conditions and closures"},{name:"traffic",description:"Traffic flow on monitored corridors"}],$Qe=[{value:"US-AL",label:"Alabama"},{value:"US-AK",label:"Alaska"},{value:"US-AZ",label:"Arizona"},{value:"US-AR",label:"Arkansas"},{value:"US-CA",label:"California"},{value:"US-CO",label:"Colorado"},{value:"US-CT",label:"Connecticut"},{value:"US-DE",label:"Delaware"},{value:"US-FL",label:"Florida"},{value:"US-GA",label:"Georgia"},{value:"US-HI",label:"Hawaii"},{value:"US-ID",label:"Idaho"},{value:"US-IL",label:"Illinois"},{value:"US-IN",label:"Indiana"},{value:"US-IA",label:"Iowa"},{value:"US-KS",label:"Kansas"},{value:"US-KY",label:"Kentucky"},{value:"US-LA",label:"Louisiana"},{value:"US-ME",label:"Maine"},{value:"US-MD",label:"Maryland"},{value:"US-MA",label:"Massachusetts"},{value:"US-MI",label:"Michigan"},{value:"US-MN",label:"Minnesota"},{value:"US-MS",label:"Mississippi"},{value:"US-MO",label:"Missouri"},{value:"US-MT",label:"Montana"},{value:"US-NE",label:"Nebraska"},{value:"US-NV",label:"Nevada"},{value:"US-NH",label:"New Hampshire"},{value:"US-NJ",label:"New Jersey"},{value:"US-NM",label:"New Mexico"},{value:"US-NY",label:"New York"},{value:"US-NC",label:"North Carolina"},{value:"US-ND",label:"North Dakota"},{value:"US-OH",label:"Ohio"},{value:"US-OK",label:"Oklahoma"},{value:"US-OR",label:"Oregon"},{value:"US-PA",label:"Pennsylvania"},{value:"US-RI",label:"Rhode Island"},{value:"US-SC",label:"South Carolina"},{value:"US-SD",label:"South Dakota"},{value:"US-TN",label:"Tennessee"},{value:"US-TX",label:"Texas"},{value:"US-UT",label:"Utah"},{value:"US-VT",label:"Vermont"},{value:"US-VA",label:"Virginia"},{value:"US-WA",label:"Washington"},{value:"US-WV",label:"West Virginia"},{value:"US-WI",label:"Wisconsin"},{value:"US-WY",label:"Wyoming"}];function Yo({info:e,link:t,linkText:r="Learn more"}){const[n,i]=H.useState(!1),a=H.useRef(null);return H.useEffect(()=>{if(!n)return;function o(l){a.current&&!a.current.contains(l.target)&&i(!1)}const s=setTimeout(()=>document.addEventListener("mousedown",o),0);return()=>{clearTimeout(s),document.removeEventListener("mousedown",o)}},[n]),g.jsxs("div",{className:"relative inline-block",ref:a,children:[g.jsx("button",{type:"button",onClick:o=>{o.stopPropagation(),i(!n)},className:"ml-1.5 w-4 h-4 rounded-full bg-slate-700 hover:bg-slate-600 text-slate-400 hover:text-slate-200 inline-flex items-center justify-center text-xs transition-colors",title:"More info",children:"?"}),n&&g.jsxs("div",{className:"absolute left-0 top-6 z-50 w-72 p-3 bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl text-xs text-slate-300 leading-relaxed",children:[g.jsx("button",{type:"button",onClick:()=>i(!1),className:"absolute top-1 right-1 w-5 h-5 rounded hover:bg-slate-700 text-slate-500 hover:text-slate-300 inline-flex items-center justify-center transition-colors","aria-label":"Close",children:g.jsx(Xa,{size:12})}),g.jsx("div",{className:"pr-4",children:e}),t&&g.jsxs("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"mt-2 flex items-center gap-1 text-accent hover:underline",onClick:o=>o.stopPropagation(),children:[r," ",g.jsx(Sd,{size:10})]})]})]})}function di({text:e}){return g.jsx("p",{className:"text-sm text-slate-500 mb-6 pb-4 border-b border-[#1e2a3a]",children:e})}function xt({label:e,value:t,onChange:r,type:n="text",placeholder:i="",helper:a="",info:o="",infoLink:s=""}){const[l,u]=H.useState(!1),c=n==="password";return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,o&&g.jsx(Yo,{info:o,link:s})]}),g.jsxs("div",{className:"relative",children:[g.jsx("input",{type:c&&!l?"password":"text",value:t,onChange:f=>r(f.target.value),placeholder:i,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),c&&g.jsx("button",{type:"button",onClick:()=>u(!l),className:"absolute right-2 top-1/2 -translate-y-1/2 text-slate-500 hover:text-slate-300",children:l?g.jsx($Z,{size:16}):g.jsx(sD,{size:16})})]}),a&&g.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function rt({label:e,value:t,onChange:r,min:n,max:i,step:a=1,helper:o="",info:s="",infoLink:l=""}){return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,s&&g.jsx(Yo,{info:s,link:l})]}),g.jsx("input",{type:"number",value:t,onChange:u=>r(Number(u.target.value)),min:n,max:i,step:a,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),o&&g.jsx("p",{className:"text-xs text-slate-600",children:o})]})}function yr({label:e,checked:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){return g.jsxs("div",{className:"flex items-center justify-between py-2",children:[g.jsxs("div",{children:[g.jsxs("span",{className:"flex items-center text-sm text-slate-300",children:[e,i&&g.jsx(Yo,{info:i,link:a})]}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]}),g.jsx("button",{type:"button",onClick:()=>r(!t),className:`relative w-11 h-6 rounded-full transition-colors ${t?"bg-accent":"bg-[#1e2a3a]"}`,children:g.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${t?"translate-x-5":""}`})})]})}function Lo({label:e,value:t,onChange:r,options:n,helper:i="",info:a="",infoLink:o=""}){return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&g.jsx(Yo,{info:a,link:o})]}),g.jsx("select",{value:t,onChange:s=>r(s.target.value),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:n.map(s=>g.jsx("option",{value:s.value,children:s.label},s.value))}),i&&g.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function FQe({label:e,value:t,onChange:r,rows:n=4,helper:i="",info:a="",infoLink:o=""}){return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&g.jsx(Yo,{info:a,link:o})]}),g.jsx("textarea",{value:t,onChange:s=>r(s.target.value),rows:n,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent resize-y"}),i&&g.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function Jh({label:e,value:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){const[o,s]=H.useState(t.join(", "));H.useEffect(()=>{s(t.join(", "))},[t]);const l=()=>{const u=o.split(",").map(c=>c.trim()).filter(Boolean);r(u)};return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&g.jsx(Yo,{info:i,link:a})]}),g.jsx("input",{type:"text",value:o,onChange:u=>s(u.target.value),onBlur:l,placeholder:"item1, item2, item3",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function VQe({label:e,value:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){const[o,s]=H.useState(t.join(", "));H.useEffect(()=>{s(t.join(", "))},[t]);const l=()=>{const u=o.split(",").map(c=>parseInt(c.trim(),10)).filter(c=>!isNaN(c));r(u)};return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&g.jsx(Yo,{info:i,link:a})]}),g.jsx("input",{type:"text",value:o,onChange:u=>s(u.target.value),onBlur:l,placeholder:"0, 1, 2",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function An({label:e,description:t,checked:r,onChange:n,threshold:i,onThresholdChange:a,thresholdLabel:o,thresholdMin:s,thresholdMax:l,thresholdStep:u=1,thresholdSuffix:c=""}){return g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-3 space-y-2",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("div",{className:"flex-1",children:[g.jsx("span",{className:"text-sm text-slate-300",children:e}),g.jsx("p",{className:"text-xs text-slate-600",children:t})]}),g.jsx("button",{type:"button",onClick:()=>n(!r),className:`relative w-11 h-6 rounded-full transition-colors flex-shrink-0 ml-3 ${r?"bg-accent":"bg-[#1e2a3a]"}`,children:g.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${r?"translate-x-5":""}`})})]}),r&&i!==void 0&&a&&g.jsxs("div",{className:"flex items-center gap-2 pt-2 border-t border-[#1e2a3a]",children:[g.jsxs("span",{className:"text-xs text-slate-500",children:[o||"Threshold",":"]}),g.jsx("input",{type:"number",value:i,onChange:f=>a(Number(f.target.value)),min:s,max:l,step:u,className:"w-20 px-2 py-1 bg-[#0a0e17] border border-[#1e2a3a] rounded text-xs text-slate-200 font-mono"}),c&&g.jsx("span",{className:"text-xs text-slate-500",children:c})]})]})}function GQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.bot}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Bot Name",value:e.name,onChange:r=>t({...e,name:r}),helper:"Name the bot responds to on the mesh",info:"When someone sends a message containing this name, the bot will respond. Also used as the sender name in broadcasts. Changing this requires a restart."}),g.jsx(xt,{label:"Owner",value:e.owner,onChange:r=>t({...e,owner:r}),helper:"Your callsign or identifier",info:"Identifies the bot operator. Shown in !help responses and used for admin-level commands."})]}),g.jsx(yr,{label:"Respond to DMs",checked:e.respond_to_dms,onChange:r=>t({...e,respond_to_dms:r}),helper:"Reply when someone sends a direct message",info:"When enabled, the bot responds to direct messages from any node. When disabled, the bot only responds to channel messages that mention its name."}),g.jsx(yr,{label:"Filter BBS Protocols",checked:e.filter_bbs_protocols,onChange:r=>t({...e,filter_bbs_protocols:r}),helper:"Ignore BBS bulletin board traffic",info:"Filters out automated BBS protocol messages (advBBS, MAIL*, BOARD*) so the bot doesn't try to respond to machine-to-machine traffic."})]})}function WQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.connection}),g.jsx(Lo,{label:"Connection Type",value:e.type,onChange:r=>t({...e,type:r}),options:[{value:"serial",label:"Serial (USB)"},{value:"tcp",label:"TCP (Network)"}],helper:"Serial for USB-connected radios, TCP for network or meshtasticd",info:"Serial: direct USB connection to a Meshtastic radio. TCP: connect over the network to a radio's IP or to meshtasticd running on another machine."}),e.type==="serial"?g.jsx(xt,{label:"Serial Port",value:e.serial_port,onChange:r=>t({...e,serial_port:r}),placeholder:"/dev/ttyUSB0",helper:"Device path for your USB radio",info:"Usually /dev/ttyUSB0 on Linux or /dev/ttyACM0. Check with 'ls /dev/tty*' after plugging in your radio."}):g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"TCP Host",value:e.tcp_host,onChange:r=>t({...e,tcp_host:r}),placeholder:"192.168.1.100",helper:"IP address or hostname of the radio/meshtasticd"}),g.jsx(rt,{label:"TCP Port",value:e.tcp_port,onChange:r=>t({...e,tcp_port:r}),min:1,max:65535,helper:"Default 4403 for meshtasticd"})]})]})}function HQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.response}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Delay Min (sec)",value:e.delay_min,onChange:r=>t({...e,delay_min:r}),min:0,step:.1,helper:"Minimum wait before responding",info:"Adds a random delay between min and max before the bot sends a response. Prevents the bot from appearing to respond instantly, which can feel unnatural on a radio network."}),g.jsx(rt,{label:"Delay Max (sec)",value:e.delay_max,onChange:r=>t({...e,delay_max:r}),min:0,step:.1,helper:"Maximum wait before responding",info:"Also prevents collisions with other traffic by staggering transmissions."})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Max Length",value:e.max_length,onChange:r=>t({...e,max_length:r}),min:50,max:500,helper:"Maximum characters per response message",info:"Meshtastic packets have limited size. This caps how long each message chunk can be. The bot will split longer responses into multiple messages up to Max Messages."}),g.jsx(rt,{label:"Max Messages",value:e.max_messages,onChange:r=>t({...e,max_messages:r}),min:1,max:10,helper:"Maximum chunks per response",info:"If a response is longer than Max Length, the bot splits it into this many chunks at most. Higher values = more complete answers but more airtime used."})]})]})}function UQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.history}),g.jsx(xt,{label:"Database Path",value:e.database,onChange:r=>t({...e,database:r}),helper:"SQLite file for storing conversation history",info:"Path to the SQLite database file. Created automatically if it doesn't exist. Stores all conversation history for context."}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Max Messages Per User",value:e.max_messages_per_user,onChange:r=>t({...e,max_messages_per_user:r}),min:0,helper:"History limit per user (0 = unlimited)",info:"Limits how many messages are stored per user. Older messages are pruned when the limit is reached. Set to 0 for no limit."}),g.jsx(rt,{label:"Conversation Timeout (sec)",value:e.conversation_timeout,onChange:r=>t({...e,conversation_timeout:r}),min:0,helper:"Seconds before context resets",info:"If a user doesn't message for this long, their next message starts a new conversation context. The bot won't remember the previous topic."})]}),g.jsx(yr,{label:"Auto Cleanup",checked:e.auto_cleanup,onChange:r=>t({...e,auto_cleanup:r}),helper:"Automatically prune old conversations"}),e.auto_cleanup&&g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Cleanup Interval (hours)",value:e.cleanup_interval_hours,onChange:r=>t({...e,cleanup_interval_hours:r}),min:1,helper:"Hours between cleanup runs"}),g.jsx(rt,{label:"Max Age (days)",value:e.max_age_days,onChange:r=>t({...e,max_age_days:r}),min:1,helper:"Delete conversations older than this"})]})]})}function ZQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.memory}),g.jsx(yr,{label:"Enable Memory",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Keep conversation context between messages"}),e.enabled&&g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Window Size",value:e.window_size,onChange:r=>t({...e,window_size:r}),min:1,helper:"Recent message pairs kept in full",info:"The bot keeps this many recent exchanges (user message + bot response pairs) as full text in context. Older messages are summarized to save token space."}),g.jsx(rt,{label:"Summarize Threshold",value:e.summarize_threshold,onChange:r=>t({...e,summarize_threshold:r}),min:1,helper:"Messages before older context is summarized",info:"When the conversation exceeds this many messages, older ones outside the window are compressed into a summary by the LLM."})]})]})}function YQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.context}),g.jsx(yr,{label:"Enable Passive Context",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Listen to channel traffic for context",info:"When enabled, the bot monitors mesh channels and includes recent messages in its context. This lets the bot reference things other people said on the channel."}),e.enabled&&g.jsxs(g.Fragment,{children:[g.jsx(r3,{label:"Observe Channels",value:e.observe_channels,onChange:r=>t({...e,observe_channels:r}),helper:"Channels to monitor (empty = all)",info:"Meshtastic channels to listen on. Leave empty to monitor all channels.",mode:"multi"}),g.jsx(t3,{label:"Ignore Nodes",value:e.ignore_nodes,onChange:r=>t({...e,ignore_nodes:r}),helper:"Nodes to exclude from context",info:"Messages from these nodes won't be included in passive context. Useful for filtering out noisy automated nodes."}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Max Age (sec)",value:e.max_age,onChange:r=>t({...e,max_age:r}),min:0,helper:"Ignore messages older than this"}),g.jsx(rt,{label:"Max Context Items",value:e.max_context_items,onChange:r=>t({...e,max_context_items:r}),min:1,helper:"Maximum recent messages to include"})]})]})]})}function XQe({data:e,onChange:t}){const r=new Set(e.disabled_commands.map(i=>i.toLowerCase())),n=i=>{const a=i.toLowerCase();r.has(a)?t({...e,disabled_commands:e.disabled_commands.filter(o=>o.toLowerCase()!==a)}):t({...e,disabled_commands:[...e.disabled_commands,i]})};return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.commands}),g.jsx(yr,{label:"Enable Commands",checked:e.enabled,onChange:i=>t({...e,enabled:i}),helper:"Allow !commands on the mesh"}),e.enabled&&g.jsxs(g.Fragment,{children:[g.jsx(xt,{label:"Command Prefix",value:e.prefix,onChange:i=>t({...e,prefix:i}),helper:"Character that triggers commands (e.g. ! for !help)",info:"Users type this character followed by the command name. Only single characters recommended."}),g.jsxs("div",{className:"space-y-2",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Available Commands",g.jsx(Yo,{info:"Toggle commands on or off. Disabled commands won't respond when users invoke them."})]}),g.jsx("div",{className:"grid gap-1",children:zQe.map(i=>{const a=!r.has(i.name.toLowerCase());return g.jsxs("div",{className:"flex items-center justify-between p-2 bg-[#0a0e17] border border-[#1e2a3a] rounded hover:border-[#2a3a4a] transition-colors",children:[g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsxs("code",{className:"text-accent text-sm",children:["!",i.name]}),g.jsx("span",{className:"text-xs text-slate-500",children:i.description})]}),g.jsx("button",{type:"button",onClick:()=>n(i.name),className:`relative w-9 h-5 rounded-full transition-colors ${a?"bg-accent":"bg-[#1e2a3a]"}`,children:g.jsx("span",{className:`absolute top-0.5 left-0.5 w-4 h-4 rounded-full bg-white transition-transform ${a?"translate-x-4":""}`})})]},i.name)})})]})]})]})}function qQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.llm}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(Lo,{label:"Backend",value:e.backend,onChange:r=>t({...e,backend:r}),options:[{value:"openai",label:"OpenAI"},{value:"anthropic",label:"Anthropic"},{value:"google",label:"Google (Gemini)"}],helper:"LLM provider to use",info:"OpenAI: GPT models (gpt-4o, gpt-4o-mini). Anthropic: Claude models (claude-sonnet-4-20250514). Google: Gemini models. Can also point to compatible APIs like Ollama, LM Studio, or Open WebUI by changing the Base URL."}),g.jsx(xt,{label:"Model",value:e.model,onChange:r=>t({...e,model:r}),placeholder:"gpt-4o-mini",helper:"Specific model name",info:"The specific model to use. Common choices: gpt-4o-mini (fast, cheap), gpt-4o (better, costs more), claude-sonnet-4-20250514 (Anthropic equivalent). For local models via Ollama, use the model name you pulled (e.g. llama3.1)."})]}),g.jsx(xt,{label:"API Key",value:e.api_key,onChange:r=>t({...e,api_key:r}),type:"password",helper:"Supports ${ENV_VAR} syntax",info:"Your API key from the provider. You can also use ${ENV_VAR} syntax to read from an environment variable instead of storing the key in the config file."}),g.jsx(xt,{label:"Base URL",value:e.base_url,onChange:r=>t({...e,base_url:r}),placeholder:"https://api.openai.com/v1",helper:"API endpoint (change for local LLMs)",info:"Default API endpoint for the selected backend. Change this to point to a local LLM server (Ollama at http://localhost:11434/v1, Open WebUI, LM Studio, etc.) or a proxy."}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Timeout (sec)",value:e.timeout,onChange:r=>t({...e,timeout:r}),min:5,max:120,helper:"Maximum seconds to wait for response"}),g.jsx(rt,{label:"Max Response Tokens",value:e.max_response_tokens,onChange:r=>t({...e,max_response_tokens:r}),min:100,helper:"Token limit for LLM responses"})]}),g.jsx(yr,{label:"Use System Prompt",checked:e.use_system_prompt,onChange:r=>t({...e,use_system_prompt:r}),helper:"Enable custom system instructions"}),e.use_system_prompt&&g.jsx(FQe,{label:"System Prompt",value:e.system_prompt,onChange:r=>t({...e,system_prompt:r}),rows:6,helper:"Instructions that shape the bot's personality",info:"Instructions that shape the bot's personality and behavior. The bot always follows these instructions. MeshAI adds mesh health data and environmental context automatically — you don't need to include those here."}),g.jsx(yr,{label:"Web Search",checked:e.web_search,onChange:r=>t({...e,web_search:r}),helper:"Enable web search tool (Open WebUI feature)"}),g.jsx(yr,{label:"Google Grounding",checked:e.google_grounding,onChange:r=>t({...e,google_grounding:r}),helper:"Ground responses in web search (Gemini only)"})]})}function KQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.weather}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(Lo,{label:"Primary Provider",value:e.primary,onChange:r=>t({...e,primary:r}),options:[{value:"openmeteo",label:"Open-Meteo"},{value:"wttr",label:"wttr.in"},{value:"llm",label:"LLM"}],helper:"Main weather data source"}),g.jsx(Lo,{label:"Fallback Provider",value:e.fallback,onChange:r=>t({...e,fallback:r}),options:[{value:"openmeteo",label:"Open-Meteo"},{value:"wttr",label:"wttr.in"},{value:"llm",label:"LLM"},{value:"none",label:"None"}],helper:"Backup if primary fails"})]}),g.jsx(xt,{label:"Default Location",value:e.default_location,onChange:r=>t({...e,default_location:r}),placeholder:"Your city, state",helper:"Location when none specified"})]})}function JQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.meshmonitor}),g.jsx(yr,{label:"Enable MeshMonitor",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Connect to AIDA MeshMonitor instance",info:"MeshMonitor by Yeraze provides node data, battery info, telemetry, and auto-responder patterns. MeshAI uses this as a data source and avoids duplicate responses."}),e.enabled&&g.jsxs(g.Fragment,{children:[g.jsx(xt,{label:"URL",value:e.url,onChange:r=>t({...e,url:r}),placeholder:"http://192.168.1.100:8080",helper:"MeshMonitor API endpoint",info:"Full URL to your MeshMonitor instance. Usually runs on port 8080."}),g.jsx(yr,{label:"Inject Into Prompt",checked:e.inject_into_prompt,onChange:r=>t({...e,inject_into_prompt:r}),helper:"Tell LLM about MeshMonitor commands",info:"Adds MeshMonitor's auto-responder patterns to the LLM context so it knows what commands MeshMonitor handles."}),g.jsx(rt,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:r=>t({...e,refresh_interval:r}),min:10,helper:"How often to fetch patterns"}),g.jsx(yr,{label:"Polite Mode",checked:e.polite_mode,onChange:r=>t({...e,polite_mode:r}),helper:"Reduce polling frequency",info:"Reduces polling frequency for shared instances to be a good neighbor."})]})]})}function QQe({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.knowledge}),g.jsx(yr,{label:"Enable Knowledge Base",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Answer questions from stored documents",info:"Uses RAG (Retrieval-Augmented Generation) to answer questions from a knowledge base. Supports Qdrant vector database or local SQLite with FTS5."}),e.enabled&&g.jsxs(g.Fragment,{children:[g.jsx(Lo,{label:"Backend",value:e.backend,onChange:r=>t({...e,backend:r}),options:[{value:"auto",label:"Auto (Qdrant -> SQLite)"},{value:"qdrant",label:"Qdrant"},{value:"sqlite",label:"SQLite"}],helper:"Knowledge storage backend",info:"Auto tries Qdrant first, falls back to SQLite. Qdrant provides hybrid search with dense+sparse embeddings. SQLite uses FTS5 keyword search."}),(e.backend==="qdrant"||e.backend==="auto")&&g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Qdrant Host",value:e.qdrant_host,onChange:r=>t({...e,qdrant_host:r}),helper:"Qdrant server hostname",info:"IP or hostname of your Qdrant vector database server."}),g.jsx(rt,{label:"Qdrant Port",value:e.qdrant_port,onChange:r=>t({...e,qdrant_port:r}),helper:"Default 6333"})]}),g.jsx(xt,{label:"Collection",value:e.qdrant_collection,onChange:r=>t({...e,qdrant_collection:r}),helper:"Qdrant collection name"}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"TEI Host",value:e.tei_host,onChange:r=>t({...e,tei_host:r}),helper:"Text Embeddings Inference host",info:"TEI service for generating dense embeddings. Uses BAAI/bge-m3 model."}),g.jsx(rt,{label:"TEI Port",value:e.tei_port,onChange:r=>t({...e,tei_port:r}),helper:"Default 8090"})]}),g.jsx(yr,{label:"Use Sparse Embeddings",checked:e.use_sparse,onChange:r=>t({...e,use_sparse:r}),helper:"Enable hybrid search with sparse vectors",info:"Combines dense embeddings with sparse (keyword-based) embeddings using Reciprocal Rank Fusion for better search results."})]}),g.jsx(xt,{label:"SQLite DB Path",value:e.db_path,onChange:r=>t({...e,db_path:r}),helper:"Local knowledge database file"}),g.jsx(rt,{label:"Top K Results",value:e.top_k,onChange:r=>t({...e,top_k:r}),min:1,max:20,helper:"Number of documents to retrieve"})]})]})}function eet({source:e,onChange:t,onDelete:r}){const[n,i]=H.useState(!1),a={meshview:"Web-based mesh monitoring tool. Enter the full URL of a MeshView instance. No API key typically required.",meshmonitor:"AIDA MeshMonitor API. Provides node data and network statistics. Requires API token.",mqtt:"Subscribe directly to a Meshtastic MQTT broker for real-time packet data. This is push-based (instant) vs the polling approach of MeshView/MeshMonitor."};return g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg overflow-hidden",children:[g.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>i(!n),children:[g.jsxs("div",{className:"flex items-center gap-3",children:[n?g.jsx(yu,{size:16}):g.jsx(ou,{size:16}),g.jsx("div",{className:`w-2 h-2 rounded-full ${e.enabled?"bg-green-500":"bg-slate-500"}`}),g.jsx("span",{className:"font-mono text-sm text-slate-200",children:e.name||"Unnamed Source"}),g.jsx("span",{className:"text-xs text-slate-500 bg-[#1e2a3a] px-2 py-0.5 rounded",children:e.type})]}),g.jsx("button",{onClick:o=>{o.stopPropagation(),r()},className:"p-1 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",children:g.jsx(Jy,{size:14})})]}),n&&g.jsxs("div",{className:"p-4 space-y-4 border-t border-[#1e2a3a]",children:[g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Name",value:e.name,onChange:o=>t({...e,name:o}),helper:"Friendly name for this source"}),g.jsx(Lo,{label:"Type",value:e.type,onChange:o=>t({...e,type:o}),options:[{value:"meshview",label:"MeshView"},{value:"meshmonitor",label:"MeshMonitor"},{value:"mqtt",label:"MQTT Broker"}],info:a[e.type]||""})]}),e.type!=="mqtt"&&g.jsx(xt,{label:"URL",value:e.url,onChange:o=>t({...e,url:o}),helper:"Full URL including protocol"}),e.type==="meshmonitor"&&g.jsx(xt,{label:"API Token",value:e.api_token,onChange:o=>t({...e,api_token:o}),type:"password",helper:"Bearer token for authentication"}),e.type==="mqtt"&&g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Host",value:e.host||"",onChange:o=>t({...e,host:o}),helper:"MQTT broker hostname"}),g.jsx(rt,{label:"Port",value:e.port||1883,onChange:o=>t({...e,port:o}),min:1,max:65535,helper:"1883 plain, 8883 TLS"})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Username",value:e.username||"",onChange:o=>t({...e,username:o})}),g.jsx(xt,{label:"Password",value:e.password||"",onChange:o=>t({...e,password:o}),type:"password"})]}),g.jsx(xt,{label:"Topic Root",value:e.topic_root||"msh/US",onChange:o=>t({...e,topic_root:o}),helper:"Base topic to subscribe to"}),g.jsx(yr,{label:"Use TLS",checked:e.use_tls||!1,onChange:o=>t({...e,use_tls:o}),helper:"Encrypt MQTT connection"})]}),g.jsx(rt,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:o=>t({...e,refresh_interval:o}),min:10,helper:"Polling frequency"}),g.jsx(yr,{label:"Enabled",checked:e.enabled,onChange:o=>t({...e,enabled:o})}),g.jsx(yr,{label:"Polite Mode",checked:e.polite_mode,onChange:o=>t({...e,polite_mode:o}),helper:"Reduce polling for shared instances"})]})]})}function tet({data:e,onChange:t}){const r=()=>{t([...e,{name:"New Source",type:"meshview",url:"",api_token:"",refresh_interval:30,polite_mode:!1,enabled:!0,host:"",port:1883,username:"",password:"",topic_root:"msh/US",use_tls:!1}])};return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.mesh_sources}),e.map((n,i)=>g.jsx(eet,{source:n,onChange:a=>{const o=[...e];o[i]=a,t(o)},onDelete:()=>{confirm(`Delete source "${n.name}"?`)&&t(e.filter((a,o)=>o!==i))}},i)),g.jsxs("button",{onClick:r,className:"w-full py-2 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center justify-center gap-2 transition-colors",children:[g.jsx(yv,{size:16})," Add Source"]})]})}function ret({data:e,onChange:t}){const[r,n]=H.useState(null);return g.jsxs("div",{className:"space-y-6",children:[g.jsx(di,{text:hi.mesh_intelligence}),g.jsx(yr,{label:"Enable Mesh Intelligence",checked:e.enabled,onChange:i=>t({...e,enabled:i}),helper:"Activate health scoring and alerting"}),e.enabled&&g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Locality Radius (miles)",value:e.locality_radius_miles,onChange:i=>t({...e,locality_radius_miles:i}),min:1,step:.5,helper:"Region assignment radius",info:"Nodes within this distance of a region anchor point are assigned to that region."}),g.jsx(rt,{label:"Offline Threshold (hours)",value:e.offline_threshold_hours,onChange:i=>t({...e,offline_threshold_hours:i}),min:1,helper:"Time until node marked offline",info:"A node is considered offline after not being heard for this many hours."})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Packet Threshold",value:e.packet_threshold,onChange:i=>t({...e,packet_threshold:i}),min:0,helper:"Min packets per 24h to flag",info:"Minimum packets per 24 hours. Nodes below this are flagged as low activity."}),g.jsx(rt,{label:"Battery Warning %",value:e.battery_warning_percent,onChange:i=>t({...e,battery_warning_percent:i}),min:1,max:100,helper:"Global battery warning level"})]}),g.jsx(t3,{label:"Critical Nodes",value:e.critical_nodes,onChange:i=>t({...e,critical_nodes:i}),helper:"Critical infrastructure nodes",info:"Nodes that get priority alerting when they go offline.",roleFilter:"infrastructure"}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(r3,{label:"Alert Channel",value:e.alert_channel,onChange:i=>t({...e,alert_channel:i}),helper:"Channel for broadcast alerts",info:"Meshtastic channel for broadcast alerts. Select Disabled to turn off channel broadcasting.",mode:"single",includeDisabled:!0}),g.jsx(rt,{label:"Alert Cooldown (min)",value:e.alert_cooldown_minutes,onChange:i=>t({...e,alert_cooldown_minutes:i}),min:1,helper:"Min time between repeat alerts",info:"Minimum minutes between repeated alerts for the same condition. Uses scaling cooldown (12h, 24h, 48h)."})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Regions",g.jsx(Yo,{info:"Regions group mesh nodes by geographic area. Each region has an anchor point (lat/lon) and nodes within the region radius are automatically assigned. Regions enable localized reports, alerts, and health scoring."})]}),e.regions.map((i,a)=>g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg overflow-hidden",children:[g.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>n(r===a?null:a),children:[g.jsxs("div",{className:"flex items-center gap-3",children:[r===a?g.jsx(yu,{size:16}):g.jsx(ou,{size:16}),g.jsx("span",{className:"font-medium text-slate-200",children:i.name||"Unnamed Region"}),g.jsx("span",{className:"text-xs text-slate-500",children:i.local_name})]}),g.jsx("button",{onClick:o=>{if(o.stopPropagation(),confirm(`Delete region "${i.name||"Unnamed Region"}"?`)){const s=e.regions.filter((l,u)=>u!==a);t({...e,regions:s})}},className:"p-1 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",children:g.jsx(Jy,{size:14})})]}),r===a&&g.jsxs("div",{className:"p-4 space-y-3 border-t border-[#1e2a3a]",children:[g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Name",value:i.name,onChange:o=>{const s=[...e.regions];s[a]={...i,name:o},t({...e,regions:s})}}),g.jsx(xt,{label:"Local Name",value:i.local_name,onChange:o=>{const s=[...e.regions];s[a]={...i,local_name:o},t({...e,regions:s})}})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Latitude",value:i.lat,onChange:o=>{const s=[...e.regions];s[a]={...i,lat:o},t({...e,regions:s})},step:1e-4}),g.jsx(rt,{label:"Longitude",value:i.lon,onChange:o=>{const s=[...e.regions];s[a]={...i,lon:o},t({...e,regions:s})},step:1e-4})]}),g.jsx(xt,{label:"Description",value:i.description,onChange:o=>{const s=[...e.regions];s[a]={...i,description:o},t({...e,regions:s})}}),g.jsx(Jh,{label:"Aliases",value:i.aliases,onChange:o=>{const s=[...e.regions];s[a]={...i,aliases:o},t({...e,regions:s})}}),g.jsx(Jh,{label:"Cities",value:i.cities,onChange:o=>{const s=[...e.regions];s[a]={...i,cities:o},t({...e,regions:s})}})]})]},a)),g.jsxs("button",{onClick:()=>{const i={name:"",local_name:"",lat:0,lon:0,description:"",aliases:[],cities:[]};t({...e,regions:[...e.regions,i]}),n(e.regions.length)},className:"w-full py-2 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center justify-center gap-2 transition-colors",children:[g.jsx(yv,{size:16})," Add Region"]})]}),g.jsxs("div",{className:"space-y-3",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Alert Rules",g.jsx(Yo,{info:"Configure which conditions trigger alerts. Each rule can have an optional threshold value."})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Infrastructure"}),g.jsx(An,{label:"Infra Offline",description:"Alert when an infrastructure node (router/repeater) goes offline",checked:e.alert_rules.infra_offline,onChange:i=>t({...e,alert_rules:{...e.alert_rules,infra_offline:i}})}),g.jsx(An,{label:"Infra Recovery",description:"Alert when an offline infrastructure node comes back online",checked:e.alert_rules.infra_recovery,onChange:i=>t({...e,alert_rules:{...e.alert_rules,infra_recovery:i}})}),g.jsx(An,{label:"New Router",description:"Alert when a new router/repeater appears on the mesh",checked:e.alert_rules.new_router,onChange:i=>t({...e,alert_rules:{...e.alert_rules,new_router:i}})}),g.jsx(An,{label:"Feeder Offline",description:"Alert when a data source (MeshView/MeshMonitor) stops responding",checked:e.alert_rules.feeder_offline,onChange:i=>t({...e,alert_rules:{...e.alert_rules,feeder_offline:i}})}),g.jsx(An,{label:"Single Gateway",description:"Alert when an infrastructure node has only one connection path",checked:e.alert_rules.infra_single_gateway,onChange:i=>t({...e,alert_rules:{...e.alert_rules,infra_single_gateway:i}})}),g.jsx(An,{label:"Region Blackout",description:"Alert when all infrastructure in a region goes offline",checked:e.alert_rules.region_total_blackout,onChange:i=>t({...e,alert_rules:{...e.alert_rules,region_total_blackout:i}})})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Power"}),g.jsx(An,{label:"Battery Warning",description:"Alert when infra node battery drops below warning threshold",checked:e.alert_rules.battery_warning,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_warning:i}}),threshold:e.alert_rules.battery_warning_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_warning_threshold:i}}),thresholdLabel:"Below",thresholdMin:10,thresholdMax:90,thresholdSuffix:"%"}),g.jsx(An,{label:"Battery Critical",description:"Alert at critical battery level",checked:e.alert_rules.battery_critical,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_critical:i}}),threshold:e.alert_rules.battery_critical_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_critical_threshold:i}}),thresholdLabel:"Below",thresholdMin:5,thresholdMax:50,thresholdSuffix:"%"}),g.jsx(An,{label:"Battery Emergency",description:"Alert at emergency battery level",checked:e.alert_rules.battery_emergency,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_emergency:i}}),threshold:e.alert_rules.battery_emergency_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_emergency_threshold:i}}),thresholdLabel:"Below",thresholdMin:1,thresholdMax:25,thresholdSuffix:"%"}),g.jsx(An,{label:"Battery Trend Declining",description:"Alert when battery shows a declining trend over 7 days",checked:e.alert_rules.battery_trend_declining,onChange:i=>t({...e,alert_rules:{...e.alert_rules,battery_trend_declining:i}})}),g.jsx(An,{label:"Power Source Change",description:"Alert when a node switches between battery and USB power",checked:e.alert_rules.power_source_change,onChange:i=>t({...e,alert_rules:{...e.alert_rules,power_source_change:i}})}),g.jsx(An,{label:"Solar Not Charging",description:"Alert when a solar-powered node isn't charging during daylight",checked:e.alert_rules.solar_not_charging,onChange:i=>t({...e,alert_rules:{...e.alert_rules,solar_not_charging:i}})})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Utilization"}),g.jsx(An,{label:"High Utilization",description:"Alert when channel utilization stays high for extended periods",checked:e.alert_rules.sustained_high_util,onChange:i=>t({...e,alert_rules:{...e.alert_rules,sustained_high_util:i}}),threshold:e.alert_rules.high_util_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,high_util_threshold:i}}),thresholdLabel:"Above",thresholdMin:5,thresholdMax:50,thresholdSuffix:`% for ${e.alert_rules.high_util_hours}h`}),g.jsx(An,{label:"Packet Flood",description:"Alert when a single node sends excessive packets",checked:e.alert_rules.packet_flood,onChange:i=>t({...e,alert_rules:{...e.alert_rules,packet_flood:i}}),threshold:e.alert_rules.packet_flood_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,packet_flood_threshold:i}}),thresholdLabel:"Over",thresholdMin:100,thresholdMax:2e3,thresholdSuffix:"pkts/24h"})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Health Scores"}),g.jsx(An,{label:"Mesh Score Alert",description:"Alert when overall mesh health score drops below threshold",checked:e.alert_rules.mesh_score_alert,onChange:i=>t({...e,alert_rules:{...e.alert_rules,mesh_score_alert:i}}),threshold:e.alert_rules.mesh_score_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,mesh_score_threshold:i}}),thresholdLabel:"Below",thresholdMin:30,thresholdMax:90,thresholdSuffix:"/100"}),g.jsx(An,{label:"Region Score Alert",description:"Alert when a region's health score drops below threshold",checked:e.alert_rules.region_score_alert,onChange:i=>t({...e,alert_rules:{...e.alert_rules,region_score_alert:i}}),threshold:e.alert_rules.region_score_threshold,onThresholdChange:i=>t({...e,alert_rules:{...e.alert_rules,region_score_threshold:i}}),thresholdLabel:"Below",thresholdMin:30,thresholdMax:90,thresholdSuffix:"/100"})]})]})]})]})}function net({data:e,onChange:t}){return g.jsxs("div",{className:"space-y-4",children:[g.jsx(di,{text:hi.dashboard}),g.jsx(yr,{label:"Enable Dashboard",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Run the web dashboard"}),e.enabled&&g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(xt,{label:"Host",value:e.host,onChange:r=>t({...e,host:r}),placeholder:"0.0.0.0",helper:"Network bind address",info:"0.0.0.0 = accessible from any device on the network. 127.0.0.1 = only accessible from this machine."}),g.jsx(rt,{label:"Port",value:e.port,onChange:r=>t({...e,port:r}),min:1,max:65535,helper:"Dashboard URL port",info:"Port number for the web dashboard URL. You access the dashboard at http://your-ip:port"})]})]})}function iet(){var I;const[e,t]=H.useState(null),[r,n]=H.useState(null),[i,a]=H.useState("bot"),[o,s]=H.useState(!0),[l,u]=H.useState(!1),[c,f]=H.useState(null),[h,d]=H.useState(null),[v,m]=H.useState(!1),[y,x]=H.useState(!1),_=H.useCallback(async()=>{try{const k=await fetch("/api/config");if(!k.ok)throw new Error("Failed to fetch config");const O=await k.json();t(O),n(JSON.parse(JSON.stringify(O))),x(!1),f(null)}catch(k){f(k instanceof Error?k.message:"Unknown error")}finally{s(!1)}},[]);H.useEffect(()=>{document.title="Config — MeshAI",_()},[_]),H.useEffect(()=>{e&&r&&x(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const b=async()=>{if(e){u(!0),f(null),d(null);try{const k=e[i],O=await fetch(`/api/config/${i}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(k)}),D=await O.json();if(!O.ok)throw new Error(D.detail||"Save failed");d(`${i} saved successfully`),n(JSON.parse(JSON.stringify(e))),x(!1),D.restart_required&&(m(!0),Bce(Array.isArray(D.changed_keys)?D.changed_keys:[])),setTimeout(()=>d(null),3e3)}catch(k){f(k instanceof Error?k.message:"Save failed")}finally{u(!1)}}},S=()=>{r&&(t(JSON.parse(JSON.stringify(r))),x(!1))},T=async()=>{try{await fetch("/api/restart",{method:"POST"}),m(!1),d("Restart initiated")}catch{f("Restart failed")}},C=(k,O)=>{e&&t({...e,[k]:O})};if(o)return g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-slate-400",children:"Loading configuration..."})});if(!e)return g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-red-400",children:"Failed to load configuration"})});const A=()=>{switch(i){case"bot":return g.jsx(GQe,{data:e.bot,onChange:k=>C("bot",k)});case"connection":return g.jsx(WQe,{data:e.connection,onChange:k=>C("connection",k)});case"response":return g.jsx(HQe,{data:e.response,onChange:k=>C("response",k)});case"history":return g.jsx(UQe,{data:e.history,onChange:k=>C("history",k)});case"memory":return g.jsx(ZQe,{data:e.memory,onChange:k=>C("memory",k)});case"context":return g.jsx(YQe,{data:e.context,onChange:k=>C("context",k)});case"commands":return g.jsx(XQe,{data:e.commands,onChange:k=>C("commands",k)});case"llm":return g.jsx(qQe,{data:e.llm,onChange:k=>C("llm",k)});case"weather":return g.jsx(KQe,{data:e.weather,onChange:k=>C("weather",k)});case"meshmonitor":return g.jsx(JQe,{data:e.meshmonitor,onChange:k=>C("meshmonitor",k)});case"knowledge":return g.jsx(QQe,{data:e.knowledge,onChange:k=>C("knowledge",k)});case"mesh_sources":return g.jsx(tet,{data:e.mesh_sources,onChange:k=>C("mesh_sources",k)});case"mesh_intelligence":return g.jsx(ret,{data:e.mesh_intelligence,onChange:k=>C("mesh_intelligence",k)});case"dashboard":return g.jsx(net,{data:e.dashboard,onChange:k=>C("dashboard",k)});default:return null}},P=((I=n7.find(k=>k.key===i))==null?void 0:I.label)||i;return g.jsxs("div",{className:"flex gap-6 h-[calc(100vh-8rem)]",children:[g.jsx("div",{className:"w-48 flex-shrink-0 space-y-1",children:n7.map(({key:k,label:O,icon:D})=>g.jsxs("button",{onClick:()=>a(k),className:`w-full flex items-center gap-2 px-3 py-2 rounded text-sm transition-colors ${i===k?"bg-accent text-white":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover"}`,children:[g.jsx(D,{size:16}),g.jsx("span",{children:O}),y&&i===k&&g.jsx("span",{className:"ml-auto w-2 h-2 bg-amber-500 rounded-full"})]},k))}),g.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[g.jsxs("div",{className:"flex items-center justify-between mb-6",children:[g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsx(WZ,{size:20,className:"text-slate-500"}),g.jsx("h2",{className:"text-lg font-semibold text-slate-200",children:P})]}),g.jsxs("div",{className:"flex items-center gap-2",children:[y&&g.jsxs("button",{onClick:S,className:"flex items-center gap-1.5 px-3 py-1.5 text-sm text-slate-400 hover:text-slate-200 bg-bg-hover rounded transition-colors",children:[g.jsx(DS,{size:14}),"Discard"]}),g.jsxs("button",{onClick:b,disabled:l||!y,className:"flex items-center gap-1.5 px-4 py-1.5 text-sm bg-accent text-white rounded hover:bg-accent/80 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[l?g.jsx(Pm,{size:14,className:"animate-spin"}):g.jsx(cD,{size:14}),"Save"]})]})]}),v&&g.jsxs("div",{className:"flex items-center justify-between p-3 mb-4 bg-amber-500/10 border border-amber-500/30 rounded-lg",children:[g.jsxs("div",{className:"flex items-center gap-2 text-amber-400",children:[g.jsx(Bs,{size:16}),g.jsx("span",{className:"text-sm",children:"Restart required for changes to take effect"})]}),g.jsx("button",{onClick:T,className:"px-3 py-1 text-sm bg-amber-500 text-white rounded hover:bg-amber-600 transition-colors",children:"Restart Now"})]}),c&&g.jsxs("div",{className:"flex items-center gap-2 p-3 mb-4 bg-red-500/10 border border-red-500/30 rounded-lg text-red-400",children:[g.jsx(Xa,{size:16}),g.jsx("span",{className:"text-sm",children:c})]}),h&&g.jsxs("div",{className:"flex items-center gap-2 p-3 mb-4 bg-green-500/10 border border-green-500/30 rounded-lg text-green-400",children:[g.jsx(zo,{size:16}),g.jsx("span",{className:"text-sm",children:h})]}),g.jsx("div",{className:"flex-1 overflow-y-auto pr-2",children:g.jsx("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:A()})})]})]})}function aet({feed:e}){const t=e.is_loaded?e.consecutive_errors>0?"bg-amber-500":"bg-green-500":"bg-red-500",r=e.is_loaded?e.consecutive_errors>0?`${e.consecutive_errors} errors`:"Healthy":"Not loaded",n=e.last_fetch?new Date(e.last_fetch*1e3).toLocaleTimeString():"Never";return g.jsxs("div",{className:"bg-bg-hover rounded-lg p-4",children:[g.jsxs("div",{className:"flex items-center justify-between mb-2",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("div",{className:`w-2 h-2 rounded-full ${t}`}),g.jsx("span",{className:"text-sm font-medium text-slate-200 uppercase",children:e.source})]}),g.jsx("span",{className:"text-xs text-slate-400",children:r})]}),g.jsxs("div",{className:"text-xs text-slate-500 space-y-1",children:[g.jsxs("div",{children:["Events: ",e.event_count]}),g.jsxs("div",{children:["Last fetch: ",n]}),e.last_error&&g.jsx("div",{className:"text-amber-500 truncate",children:e.last_error})]})]})}function oet({event:e}){const t=e.severity.toLowerCase(),r=t==="extreme"||t==="severe"||t==="immediate"?{bg:"bg-red-500/10",border:"border-red-500",Icon:su,color:"text-red-500"}:t==="moderate"||t==="warning"||t==="priority"?{bg:"bg-amber-500/10",border:"border-amber-500",Icon:Bs,color:"text-amber-500"}:{bg:"bg-blue-500/10",border:"border-blue-500",Icon:ES,color:"text-blue-500"},n=r.Icon;return g.jsx("div",{className:`p-3 rounded-lg ${r.bg} border-l-2 ${r.border}`,children:g.jsxs("div",{className:"flex items-start gap-3",children:[g.jsx(n,{size:16,className:r.color}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[g.jsx("span",{className:"text-sm font-medium text-slate-200",children:e.event_type}),g.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${r.bg} ${r.color}`,children:e.severity})]}),g.jsx("div",{className:"text-sm text-slate-300",children:e.headline})]})]})})}function oae({value:e,onChange:t,disabled:r,centralDisabled:n}){const i="px-2 py-1 text-xs transition-colors";return g.jsxs("div",{className:`flex rounded border border-[#1e2a3a] overflow-hidden ${r?"opacity-40":""}`,children:[g.jsx("button",{type:"button",disabled:r,onClick:()=>t("native"),className:`${i} ${e==="native"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:"native"}),g.jsx("button",{type:"button",disabled:r||n,title:n?"Central not available for this adapter":"",onClick:()=>{n||t("central")},className:`${i} ${n?"text-slate-600 cursor-not-allowed":e==="central"?"bg-accent text-white":"text-slate-400 hover:text-slate-200"}`,children:"central"})]})}function set({title:e,subtitle:t,enabled:r,onEnabled:n,feedSource:i,onFeedSource:a,hasCentral:o,nativeOnly:s,hasKey:l,health:u,events:c,children:f}){const h=s||!o;return g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("div",{children:[g.jsx("span",{className:"text-sm font-medium text-slate-300",children:e}),t&&g.jsx("p",{className:"text-xs text-slate-600",children:t})]}),g.jsxs("div",{className:"flex items-center gap-4",children:[g.jsxs("div",{className:"flex items-center gap-1",children:[g.jsx("span",{className:"text-[10px] uppercase tracking-wide text-slate-600",children:"source"}),g.jsx(oae,{value:i,onChange:a,disabled:!r,centralDisabled:h})]}),g.jsx(yr,{label:"",checked:r,onChange:n})]})]}),!l&&g.jsx("div",{className:"text-xs text-amber-400 bg-amber-500/10 rounded p-2",children:"API key not configured — contact admin"}),s&&g.jsx("div",{className:"text-[11px] text-slate-600",children:"Central not available for this adapter — native only"}),g.jsx("div",{className:r?"space-y-3":"space-y-3 opacity-40 pointer-events-none select-none",children:f}),(u||c&&c.length>0)&&g.jsxs("div",{className:"pt-2 border-t border-[#1e2a3a] space-y-3",children:[g.jsx("div",{className:"text-[10px] uppercase tracking-wide text-slate-600",children:"Live status"}),u?g.jsx(aet,{feed:u}):g.jsx("div",{className:"text-xs text-slate-600",children:"No status reported."}),c&&c.length>0&&g.jsx("div",{className:"space-y-2",children:c.slice(0,5).map((d,v)=>g.jsx(oet,{event:d},v))})]})]})}const vl={nws:{label:"NWS Weather Alerts",subtitle:"National Weather Service alerts",health:"nws",hasCentral:!0,nativeOnly:!1,hasKey:!0},fires:{label:"NIFC Fire Perimeters",subtitle:"Active wildfires (National Interagency Fire Center)",health:"nifc",hasCentral:!0,nativeOnly:!1,hasKey:!0},firms:{label:"NASA FIRMS Hotspots",subtitle:"Satellite thermal-anomaly detections",health:"firms",hasCentral:!0,nativeOnly:!1,hasKey:!1},swpc:{label:"NOAA Space Weather (SWPC)",subtitle:"Solar indices, geomagnetic storms",health:"swpc",hasCentral:!0,nativeOnly:!1,hasKey:!0},ducting:{label:"Tropospheric Ducting",subtitle:"VHF/UHF extended-range conditions",health:"ducting",hasCentral:!1,nativeOnly:!0,hasKey:!0},traffic:{label:"TomTom Traffic",subtitle:"Traffic flow on monitored corridors",health:"traffic",hasCentral:!0,nativeOnly:!1,hasKey:!0},roads511:{label:"511 Road Conditions",subtitle:"State DOT road events and closures",health:"roads511",hasCentral:!0,nativeOnly:!1,hasKey:!1},usgs_quake:{label:"USGS Earthquakes",subtitle:"Seismic events from the USGS feed",health:"usgs_quake",hasCentral:!0,nativeOnly:!1,hasKey:!0},usgs:{label:"USGS Stream Gauges",subtitle:"River and stream water levels",health:"usgs",hasCentral:!0,nativeOnly:!1,hasKey:!0},avalanche:{label:"Avalanche Advisories",subtitle:"Backcountry avalanche danger ratings",health:"avalanche",hasCentral:!1,nativeOnly:!0,hasKey:!0}},wP=[{key:"weather",label:"Weather",icon:lu,adapters:["nws"]},{key:"fire",label:"Fire",icon:IS,adapters:["fires","firms"]},{key:"rf",label:"RF Propagation",icon:Ya,adapters:["swpc","ducting"]},{key:"roads",label:"Roads",icon:kS,adapters:["traffic","roads511"]},{key:"geohazards",label:"Geohazards",icon:OS,adapters:["usgs_quake","usgs","avalanche"]},{key:"tracking",label:"Tracking",icon:NS,adapters:[]},{key:"mesh",label:"Mesh Health",icon:gv,adapters:[]}];function uet(){var B,Z;const[e,t]=H.useState(null),[r,n]=H.useState(""),[i,a]=H.useState(null),[o,s]=H.useState([]),[l,u]=H.useState(!0),[c,f]=H.useState(!1),[h,d]=H.useState(null),[v,m]=H.useState(null),[y,x]=H.useState(!1),[_,b]=H.useState("weather"),[S,T]=H.useState("nws");H.useEffect(()=>{document.title="Environment — MeshAI",(async()=>{try{const G=await(await fetch("/api/config/environmental")).json();t(G),n(JSON.stringify(G))}catch(W){d(W instanceof Error?W.message:"Failed to load config")}finally{u(!1)}})()},[]),H.useEffect(()=>{const W=async()=>{try{a(await XZ()),s(await qZ())}catch{}};W();const G=setInterval(W,3e4);return()=>clearInterval(G)},[]);const C=e!==null&&JSON.stringify(e)!==r,A=async()=>{if(e){f(!0),d(null),m(null);try{const W=await fetch("/api/config/environmental",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),G=await W.json();if(!W.ok)throw new Error(G.detail||"Save failed");n(JSON.stringify(e)),m("Environmental config saved"),G.restart_required&&x(!0),setTimeout(()=>m(null),3e3)}catch(W){d(W instanceof Error?W.message:"Save failed")}finally{f(!1)}}},P=()=>{e&&t(JSON.parse(r))},I=async()=>{try{await fetch("/api/restart",{method:"POST"}),x(!1),m("Restart initiated")}catch{d("Restart failed")}},k=W=>e&&t({...e,...W});if(l)return g.jsx("div",{className:"flex items-center justify-center h-64 text-slate-400",children:"Loading environmental config…"});if(!e)return g.jsx("div",{className:"flex items-center justify-center h-64 text-red-400",children:h||"No config"});const O=W=>i==null?void 0:i.feeds.find(G=>G.source===vl[W].health),D=W=>o.filter(G=>G.source===vl[W].health),N=wP.find(W=>W.key===_),z=N.adapters.length===0?null:S&&N.adapters.includes(S)?S:N.adapters[0],V=W=>{switch(W){case"nws":return g.jsxs(g.Fragment,{children:[g.jsx(Jh,{label:"NWS Zones",value:e.nws_zones,onChange:G=>k({nws_zones:G}),helper:"Zone IDs like IDZ016, IDZ030",infoLink:"https://www.weather.gov/pimar/PubZone"}),g.jsx(xt,{label:"User Agent",value:e.nws.user_agent,onChange:G=>k({nws:{...e.nws,user_agent:G}}),placeholder:"(MeshAI, you@email.com)",helper:"Format: (app_name, contact_email)"}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Tick Seconds",value:e.nws.tick_seconds,onChange:G=>k({nws:{...e.nws,tick_seconds:G}}),min:30}),g.jsx(Lo,{label:"Min Severity",value:e.nws.severity_min,onChange:G=>k({nws:{...e.nws,severity_min:G}}),options:[{value:"minor",label:"Minor"},{value:"moderate",label:"Moderate"},{value:"severe",label:"Severe"},{value:"extreme",label:"Extreme"}]})]})]});case"swpc":return g.jsx("div",{className:"text-xs text-slate-500",children:"No additional settings."});case"ducting":return g.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[g.jsx(rt,{label:"Tick Seconds",value:e.ducting.tick_seconds,onChange:G=>k({ducting:{...e.ducting,tick_seconds:G}}),min:60}),g.jsx(rt,{label:"Latitude",value:e.ducting.latitude,onChange:G=>k({ducting:{...e.ducting,latitude:G}}),step:.01}),g.jsx(rt,{label:"Longitude",value:e.ducting.longitude,onChange:G=>k({ducting:{...e.ducting,longitude:G}}),step:.01})]});case"fires":return g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(rt,{label:"Tick Seconds",value:e.fires.tick_seconds,onChange:G=>k({fires:{...e.fires,tick_seconds:G}}),min:60}),g.jsx(Lo,{label:"State",value:e.fires.state,onChange:G=>k({fires:{...e.fires,state:G}}),options:$Qe})]});case"avalanche":return g.jsxs(g.Fragment,{children:[g.jsx(rt,{label:"Tick Seconds",value:e.avalanche.tick_seconds,onChange:G=>k({avalanche:{...e.avalanche,tick_seconds:G}}),min:60}),g.jsx(Jh,{label:"Center IDs",value:e.avalanche.center_ids,onChange:G=>k({avalanche:{...e.avalanche,center_ids:G}}),helper:"e.g., SNFAC",infoLink:"https://avalanche.org/avalanche-centers/"}),g.jsx(VQe,{label:"Season Months",value:e.avalanche.season_months,onChange:G=>k({avalanche:{...e.avalanche,season_months:G}}),helper:"e.g., 12, 1, 2, 3, 4"})]});case"usgs":return g.jsxs(g.Fragment,{children:[g.jsx(rt,{label:"Tick Seconds",value:e.usgs.tick_seconds,onChange:G=>k({usgs:{...e.usgs,tick_seconds:G}}),min:900,helper:"Minimum 15 min (900s). tick_seconds is the native-mode poll interval; ignored when this adapter is set to feed_source=central."}),g.jsx(Jh,{label:"Site IDs",value:e.usgs.sites,onChange:G=>k({usgs:{...e.usgs,sites:G}}),helper:"USGS gauge site numbers",infoLink:"https://waterdata.usgs.gov/nwis"})]});case"usgs_quake":return g.jsxs(g.Fragment,{children:[g.jsx(rt,{label:"Tick Seconds",value:e.usgs_quake.tick_seconds,onChange:G=>k({usgs_quake:{...e.usgs_quake,tick_seconds:G}}),min:60}),g.jsx(rt,{label:"Min Magnitude",value:e.usgs_quake.min_magnitude,onChange:G=>k({usgs_quake:{...e.usgs_quake,min_magnitude:G}}),step:.1,min:0}),g.jsx(xt,{label:"Region Tag",value:e.usgs_quake.region,onChange:G=>k({usgs_quake:{...e.usgs_quake,region:G}})}),g.jsx("div",{className:"grid grid-cols-4 gap-2",children:["West","South","East","North"].map((G,Y)=>{var K;return g.jsx(rt,{label:G,value:((K=e.usgs_quake.bbox)==null?void 0:K[Y])??0,onChange:ee=>{const le=[...e.usgs_quake.bbox||[0,0,0,0]];le[Y]=ee,k({usgs_quake:{...e.usgs_quake,bbox:le}})},step:.01},G)})}),g.jsx("div",{className:"text-xs text-slate-500",children:"Bounding box [W,S,E,N] geographic filter"})]});case"traffic":return g.jsxs(g.Fragment,{children:[g.jsx(xt,{label:"API Key",value:e.traffic.api_key,onChange:G=>k({traffic:{...e.traffic,api_key:G}}),type:"password",helper:"developer.tomtom.com"}),g.jsx(rt,{label:"Tick Seconds",value:e.traffic.tick_seconds,onChange:G=>k({traffic:{...e.traffic,tick_seconds:G}}),min:60}),g.jsx("div",{className:"text-xs text-slate-500 mt-2",children:"Corridors:"}),(e.traffic.corridors||[]).map((G,Y)=>g.jsxs("div",{className:"grid grid-cols-4 gap-2 items-end",children:[g.jsx(xt,{label:"Name",value:G.name,onChange:K=>{const ee=[...e.traffic.corridors];ee[Y]={...G,name:K},k({traffic:{...e.traffic,corridors:ee}})}}),g.jsx(rt,{label:"Lat",value:G.lat,onChange:K=>{const ee=[...e.traffic.corridors];ee[Y]={...G,lat:K},k({traffic:{...e.traffic,corridors:ee}})},step:.01}),g.jsx(rt,{label:"Lon",value:G.lon,onChange:K=>{const ee=[...e.traffic.corridors];ee[Y]={...G,lon:K},k({traffic:{...e.traffic,corridors:ee}})},step:.01}),g.jsx("button",{onClick:()=>k({traffic:{...e.traffic,corridors:e.traffic.corridors.filter((K,ee)=>ee!==Y)}}),className:"px-2 py-2 text-xs text-red-400 hover:text-red-300 border border-red-400/30 rounded",children:"Remove"})]},Y)),g.jsx("button",{onClick:()=>k({traffic:{...e.traffic,corridors:[...e.traffic.corridors||[],{name:"",lat:0,lon:0}]}}),className:"text-xs text-accent hover:underline",children:"+ Add Corridor"})]});case"roads511":return g.jsxs(g.Fragment,{children:[g.jsx(xt,{label:"Base URL",value:e.roads511.base_url,onChange:G=>k({roads511:{...e.roads511,base_url:G}}),placeholder:"https://511.yourstate.gov/api/v2"}),g.jsx(xt,{label:"API Key",value:e.roads511.api_key,onChange:G=>k({roads511:{...e.roads511,api_key:G}}),type:"password",helper:"Leave empty if not required"}),g.jsx(rt,{label:"Tick Seconds",value:e.roads511.tick_seconds,onChange:G=>k({roads511:{...e.roads511,tick_seconds:G}}),min:60}),g.jsx(Jh,{label:"Endpoints",value:e.roads511.endpoints,onChange:G=>k({roads511:{...e.roads511,endpoints:G}}),helper:"e.g., /get/event"}),g.jsx("div",{className:"grid grid-cols-4 gap-2",children:["West","South","East","North"].map((G,Y)=>{var K;return g.jsx(rt,{label:G,value:((K=e.roads511.bbox)==null?void 0:K[Y])??0,onChange:ee=>{const le=[...e.roads511.bbox||[0,0,0,0]];le[Y]=ee,k({roads511:{...e.roads511,bbox:le}})},step:.01},G)})})]});case"firms":return g.jsxs(g.Fragment,{children:[g.jsx(xt,{label:"MAP Key",value:e.firms.map_key,onChange:G=>k({firms:{...e.firms,map_key:G}}),type:"password",helper:"firms.modaps.eosdis.nasa.gov/api/area/",infoLink:"https://firms.modaps.eosdis.nasa.gov/api/area/"}),g.jsx(rt,{label:"Tick Seconds",value:e.firms.tick_seconds,onChange:G=>k({firms:{...e.firms,tick_seconds:G}}),min:300}),g.jsx(Lo,{label:"Satellite Source",value:e.firms.source,onChange:G=>k({firms:{...e.firms,source:G}}),options:[{value:"VIIRS_SNPP_NRT",label:"VIIRS SNPP (NRT)"},{value:"VIIRS_NOAA20_NRT",label:"VIIRS NOAA-20 (NRT)"},{value:"MODIS_NRT",label:"MODIS (NRT)"}]}),g.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[g.jsx(rt,{label:"Day Range",value:e.firms.day_range,onChange:G=>k({firms:{...e.firms,day_range:G}}),min:1,max:10}),g.jsx(Lo,{label:"Min Confidence",value:e.firms.confidence_min,onChange:G=>k({firms:{...e.firms,confidence_min:G}}),options:[{value:"low",label:"Low"},{value:"nominal",label:"Nominal"},{value:"high",label:"High"}]}),g.jsx(rt,{label:"Proximity (km)",value:e.firms.proximity_km,onChange:G=>k({firms:{...e.firms,proximity_km:G}}),step:.5})]}),g.jsx("div",{className:"grid grid-cols-4 gap-2",children:["West","South","East","North"].map((G,Y)=>{var K;return g.jsx(rt,{label:G,value:((K=e.firms.bbox)==null?void 0:K[Y])??0,onChange:ee=>{const le=[...e.firms.bbox||[0,0,0,0]];le[Y]=ee,k({firms:{...e.firms,bbox:le}})},step:.01},G)})})]})}},F=e,$=(W,G)=>{const Y=e[W]||{};k({[W]:{...Y,...G}})};return g.jsxs("div",{className:"space-y-6",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsx("h1",{className:"text-xl font-semibold text-slate-200",children:"Environment"}),g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsx(yr,{label:"Feeds Enabled",checked:e.enabled,onChange:W=>k({enabled:W})}),C&&g.jsxs(g.Fragment,{children:[g.jsxs("button",{onClick:P,className:"flex items-center gap-1 px-3 py-1.5 text-sm text-slate-400 hover:text-slate-200 border border-border rounded",children:[g.jsx(DS,{size:14})," Discard"]}),g.jsxs("button",{onClick:A,disabled:c,className:"flex items-center gap-1 px-3 py-1.5 text-sm bg-accent text-white rounded disabled:opacity-50",children:[g.jsx(cD,{size:14})," ",c?"Saving…":"Save"]})]})]})]}),h&&g.jsx("div",{className:"text-sm text-red-400 bg-red-500/10 rounded p-3",children:h}),v&&g.jsx("div",{className:"text-sm text-green-400 bg-green-500/10 rounded p-3",children:v}),y&&g.jsxs("div",{className:"flex items-center justify-between text-sm text-amber-400 bg-amber-500/10 border border-amber-500/30 rounded p-3",children:[g.jsxs("span",{className:"flex items-center gap-2",children:[g.jsx(Pm,{size:14})," A restart is required for some changes to take effect."]}),g.jsx("button",{onClick:I,className:"px-3 py-1 bg-amber-500/20 hover:bg-amber-500/30 rounded",children:"Restart now"})]}),e.central&&g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("div",{children:[g.jsx("span",{className:"text-sm font-medium text-slate-300",children:"Central Connection"}),g.jsx("p",{className:"text-xs text-slate-600",children:'NATS JetStream source for any adapter set to "central"'})]}),g.jsx(yr,{label:"",checked:!!e.central.enabled,onChange:W=>k({central:{...e.central,enabled:W}})})]}),g.jsxs("div",{className:e.central.enabled?"space-y-3":"space-y-3 opacity-40 pointer-events-none select-none",children:[g.jsx(xt,{label:"URL",value:e.central.url||"",onChange:W=>k({central:{...e.central,url:W}}),placeholder:"nats://central.echo6.mesh:4222"}),g.jsx(xt,{label:"Durable",value:e.central.durable||"",onChange:W=>k({central:{...e.central,durable:W}}),placeholder:"meshai-v04"}),g.jsx(xt,{label:"Region",value:e.central.region||"",onChange:W=>k({central:{...e.central,region:W}}),placeholder:"us.id",helper:"Central v0.9.20 region token (dotted, e.g. 'us.id'). Empty = bare wildcards (all-US firehose). Each adapter is either Central or native, never both — see Reference → OR-not-AND Architecture for why."})]})]}),g.jsx("div",{className:"flex gap-1 border-b border-border overflow-x-auto",children:wP.map(({key:W,label:G,icon:Y})=>g.jsxs("button",{onClick:()=>{b(W);const K=wP.find(ee=>ee.key===W);T(K.adapters[0]??null)},className:`flex items-center gap-2 px-4 py-2 text-sm whitespace-nowrap border-b-2 -mb-px transition-colors ${_===W?"border-accent text-accent":"border-transparent text-slate-400 hover:text-slate-200"}`,children:[g.jsx(Y,{size:15})," ",G]},W))}),_==="tracking"&&g.jsxs("div",{className:"flex flex-col items-center justify-center h-[40vh] text-center",children:[g.jsx(NS,{size:32,className:"text-slate-600 mb-4"}),g.jsx("p",{className:"text-slate-500 max-w-md",children:"No adapters yet. ADS-B / AIS / satellite passes are planned for v0.5."})]}),_==="mesh"&&g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("div",{children:[g.jsx("span",{className:"text-sm font-medium text-slate-300",children:"Mesh Health"}),g.jsx("p",{className:"text-xs text-slate-600",children:"Node/infra telemetry — sourced from the mesh, not an environmental feed."})]}),g.jsxs("div",{className:"flex items-center gap-1",children:[g.jsx("span",{className:"text-[10px] uppercase tracking-wide text-slate-600",children:"source"}),g.jsx(oae,{value:"native",onChange:()=>{},disabled:!1,centralDisabled:!0})]})]}),g.jsx("div",{className:"text-[11px] text-slate-600",children:"Central not available — reserved for a future migration."})]}),N.adapters.length>0&&z&&g.jsxs(g.Fragment,{children:[N.adapters.length>1&&g.jsx("div",{className:"flex gap-1",children:N.adapters.map(W=>g.jsx("button",{onClick:()=>T(W),className:`px-3 py-1.5 text-sm rounded ${z===W?"bg-bg-hover text-slate-100":"text-slate-400 hover:text-slate-200"}`,children:vl[W].label},W))}),g.jsx(set,{title:vl[z].label,subtitle:vl[z].subtitle,enabled:((B=F[z])==null?void 0:B.enabled)??!1,onEnabled:W=>$(z,{enabled:W}),feedSource:((Z=F[z])==null?void 0:Z.feed_source)??"native",onFeedSource:W=>$(z,{feed_source:W}),hasCentral:vl[z].hasCentral,nativeOnly:vl[z].nativeOnly,hasKey:vl[z].hasKey,health:O(z),events:D(z),children:V(z)})]})]})}const i7={infra_offline:ZZ,infra_recovery:RS,battery_warning:yA,battery_critical:yA,battery_emergency:yA,hf_blackout:km,uhf_ducting:Ya,weather_warning:lu,weather_watch:lu,new_router:Ya,packet_flood:Bs,sustained_high_util:Bs,region_blackout:su,default:Mm};function cet(e){return i7[e]||i7.default}function sae(e){switch(e==null?void 0:e.toLowerCase()){case"immediate":return{bg:"bg-red-500/10",border:"border-red-500",badge:"bg-red-500/20 text-red-400",iconColor:"text-red-500"};case"priority":return{bg:"bg-amber-500/10",border:"border-amber-500",badge:"bg-amber-500/20 text-amber-400",iconColor:"text-amber-500"};case"routine":default:return{bg:"bg-blue-500/10",border:"border-blue-500",badge:"bg-blue-500/20 text-blue-400",iconColor:"text-blue-500"}}}function fet(e){const t=typeof e=="number"?new Date(e*1e3):new Date(e),n=new Date().getTime()-t.getTime(),i=Math.floor(n/1e3),a=Math.floor(i/60),o=Math.floor(a/60),s=Math.floor(o/24);return i<60?"Just now":a<60?`${a}m ago`:o<24?`${o}h ago`:`${s}d ago`}function het(e){return(typeof e=="number"?new Date(e*1e3):new Date(e)).toLocaleString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",hour12:!1})}function det(e){return e<60?`${e}s`:e<3600?`${Math.floor(e/60)}m`:e<86400?`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`:`${Math.floor(e/86400)}d`}function vet({alert:e,onAcknowledge:t}){var i;const r=sae(e.severity),n=cet(e.type);return g.jsx("div",{className:`p-4 rounded-lg ${r.bg} border-l-4 ${r.border}`,children:g.jsxs("div",{className:"flex items-start gap-3",children:[g.jsx(n,{size:20,className:r.iconColor}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[g.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full ${r.badge}`,children:(i=e.severity)==null?void 0:i.toUpperCase()}),g.jsx("span",{className:"text-xs text-slate-500",children:e.type})]}),g.jsx("div",{className:"text-sm text-slate-200",children:e.message}),g.jsxs("div",{className:"flex items-center gap-4 mt-2 text-xs text-slate-500",children:[g.jsxs("span",{className:"flex items-center gap-1",children:[g.jsx(rf,{size:12}),e.timestamp?fet(e.timestamp):"Just now"]}),e.scope_value&&g.jsxs("span",{children:[e.scope_type,": ",e.scope_value]})]})]}),g.jsx("button",{onClick:()=>t(e),className:"px-3 py-1 text-xs text-slate-400 hover:text-slate-200 border border-border rounded hover:bg-bg-hover transition-colors",children:"Acknowledge"})]})})}function pet({history:e,typeFilter:t,severityFilter:r,onTypeFilterChange:n,onSeverityFilterChange:i,page:a,totalPages:o,onPageChange:s}){const l=["all","infra_offline","infra_recovery","battery_warning","battery_critical","hf_blackout","uhf_ducting","weather_warning","new_router","packet_flood"],u=["all","immediate","priority","routine"];return g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg",children:[g.jsxs("div",{className:"p-4 border-b border-border flex items-center gap-4",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx(lD,{size:14,className:"text-slate-400"}),g.jsx("span",{className:"text-sm text-slate-400",children:"Filter:"})]}),g.jsx("select",{value:t,onChange:c=>n(c.target.value),className:"bg-bg border border-border rounded px-3 py-1.5 text-sm text-slate-200 focus:outline-none focus:border-blue-500",children:l.map(c=>g.jsx("option",{value:c,children:c==="all"?"All Types":c.replace(/_/g," ")},c))}),g.jsx("select",{value:r,onChange:c=>i(c.target.value),className:"bg-bg border border-border rounded px-3 py-1.5 text-sm text-slate-200 focus:outline-none focus:border-blue-500",children:u.map(c=>g.jsx("option",{value:c,children:c==="all"?"All Severities":c.charAt(0).toUpperCase()+c.slice(1)},c))})]}),g.jsx("div",{className:"overflow-x-auto",children:g.jsxs("table",{className:"w-full",children:[g.jsx("thead",{children:g.jsxs("tr",{className:"border-b border-border",children:[g.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Time"}),g.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Type"}),g.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Severity"}),g.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Message"}),g.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Duration"})]})}),g.jsx("tbody",{children:e.length>0?e.map((c,f)=>{const h=sae(c.severity);return g.jsxs("tr",{className:"border-b border-border hover:bg-bg-hover",children:[g.jsx("td",{className:"p-4 text-sm text-slate-400 font-mono whitespace-nowrap",children:het(c.timestamp)}),g.jsx("td",{className:"p-4 text-sm text-slate-300",children:c.type.replace(/_/g," ")}),g.jsx("td",{className:"p-4",children:g.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full ${h.badge}`,children:c.severity})}),g.jsx("td",{className:"p-4 text-sm text-slate-200 max-w-md truncate",children:c.message}),g.jsx("td",{className:"p-4 text-sm text-slate-400 font-mono",children:c.duration?det(c.duration):"-"})]},c.id||f)}):g.jsx("tr",{children:g.jsx("td",{colSpan:5,className:"p-8 text-center text-slate-500",children:"No alert history available"})})})]})}),o>1&&g.jsxs("div",{className:"p-4 border-t border-border flex items-center justify-between",children:[g.jsxs("span",{className:"text-sm text-slate-400",children:["Page ",a," of ",o]}),g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("button",{onClick:()=>s(a-1),disabled:a<=1,className:"p-2 text-slate-400 hover:text-slate-200 disabled:opacity-50 disabled:cursor-not-allowed",children:g.jsx(dce,{size:16})}),g.jsx("button",{onClick:()=>s(a+1),disabled:a>=o,className:"p-2 text-slate-400 hover:text-slate-200 disabled:opacity-50 disabled:cursor-not-allowed",children:g.jsx(ou,{size:16})})]})]})]})}function get({subscription:e,nodes:t}){const r=o=>{const s=t.find(l=>l.node_id_hex===o||String(l.node_num)===o||l.short_name===o);return s?s.long_name&&s.long_name!==s.short_name?`${s.short_name} (${s.long_name})`:s.short_name:o},n=()=>{if(e.sub_type==="alerts")return"Real-time";const o=e.schedule_time||"0000",s=parseInt(o.slice(0,2)),l=o.slice(2),u=s>=12?"PM":"AM";let f=`${s%12||12}:${l} ${u}`;return e.sub_type==="weekly"&&e.schedule_day&&(f+=` ${e.schedule_day.charAt(0).toUpperCase()}${e.schedule_day.slice(1)}`),f},a=(()=>{switch(e.sub_type){case"alerts":return Mm;case"daily":return rf;case"weekly":return rf;default:return Mm}})();return g.jsx("div",{className:"p-4 rounded-lg bg-bg-hover border border-border",children:g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsx("div",{className:"w-10 h-10 rounded-lg bg-blue-500/10 flex items-center justify-center",children:g.jsx(a,{size:18,className:"text-blue-400"})}),g.jsxs("div",{className:"flex-1",children:[g.jsxs("div",{className:"text-sm text-slate-200 font-medium",children:[e.sub_type.charAt(0).toUpperCase()+e.sub_type.slice(1),e.scope_type!=="mesh"&&e.scope_value&&g.jsxs("span",{className:"text-slate-400 font-normal ml-2",children:["(",e.scope_type,": ",e.scope_value,")"]})]}),g.jsxs("div",{className:"text-xs text-slate-500 mt-0.5",children:[n()," • ",r(e.user_id)]})]}),g.jsx("div",{className:`w-2 h-2 rounded-full ${e.enabled?"bg-green-500":"bg-slate-500"}`})]})})}function met(){const[e,t]=H.useState([]),[r,n]=H.useState([]),[i,a]=H.useState([]),[o,s]=H.useState([]),[l,u]=H.useState(!0),[c,f]=H.useState(null),[h,d]=H.useState("all"),[v,m]=H.useState("all"),[y,x]=H.useState(1),[_,b]=H.useState(1),S=20,[T,C]=H.useState(new Set),{lastAlert:A}=hD();H.useEffect(()=>{document.title="Alerts — MeshAI"},[]),H.useEffect(()=>{Promise.all([YZ().catch(()=>[]),AB(S,0).catch(()=>({items:[],total:0})),Lce().catch(()=>[]),fetch("/api/nodes").then(k=>k.json()).catch(()=>[])]).then(([k,O,D,N])=>{t(k),Array.isArray(O)?(n(O),b(1)):(n(O.items||[]),b(Math.ceil((O.total||0)/S))),a(D),s(N),u(!1)}).catch(k=>{f(k.message),u(!1)})},[]),H.useEffect(()=>{A&&t(k=>k.some(D=>D.type===A.type&&D.message===A.message)?k:[A,...k])},[A]),H.useEffect(()=>{const k=(y-1)*S;AB(S,k,h,v).then(O=>{Array.isArray(O)?(n(O),b(1)):(n(O.items||[]),b(Math.ceil((O.total||0)/S)))}).catch(()=>{})},[y,h,v]);const P=H.useCallback(k=>{const O=`${k.type}-${k.message}-${k.timestamp}`;C(D=>new Set([...D,O]))},[]),I=e.filter(k=>{const O=`${k.type}-${k.message}-${k.timestamp}`;return!T.has(O)});return l?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-slate-400",children:"Loading alerts..."})}):c?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsxs("div",{className:"text-red-400",children:["Error: ",c]})}):g.jsxs("div",{className:"space-y-6",children:[g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[g.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[g.jsx(Bs,{size:14}),"Active Alerts (",I.length,")"]}),I.length>0?g.jsx("div",{className:"space-y-3",children:I.map((k,O)=>g.jsx(vet,{alert:k,onAcknowledge:P},`${k.type}-${k.timestamp}-${O}`))}):g.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-8",children:[g.jsx(oD,{size:20,className:"text-green-500"}),g.jsx("span",{children:"No active alerts — all systems nominal"})]})]}),g.jsxs("div",{children:[g.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[g.jsx(rf,{size:14}),"Alert History"]}),g.jsx(pet,{history:r,typeFilter:h,severityFilter:v,onTypeFilterChange:k=>{d(k),x(1)},onSeverityFilterChange:k=>{m(k),x(1)},page:y,totalPages:_,onPageChange:x})]}),g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[g.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[g.jsx(Cce,{size:14}),"Mesh Subscriptions (",i.length,")"]}),i.length>0?g.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-3",children:i.map(k=>g.jsx(get,{subscription:k,nodes:o},k.id))}):g.jsxs("div",{className:"text-slate-500 py-4",children:[g.jsx("p",{children:"No active subscriptions."}),g.jsxs("p",{className:"text-xs mt-2",children:["Manage subscriptions via ",g.jsx("code",{className:"text-blue-400",children:"!subscribe"})," on mesh. Broadcasts arrive with one of three prefixes — ",g.jsx("strong",{children:"New:"})," (first sight), ",g.jsx("strong",{children:"Update:"})," (material change), or ",g.jsx("strong",{children:"Active:"})," (clock-driven reminder while the event is still live). See ",g.jsx("a",{href:"/reference#broadcast-types",className:"text-blue-400 hover:underline",children:"Broadcast Types"})," and ",g.jsx("a",{href:"/reference#reminders",className:"text-blue-400 hover:underline",children:"Reminder System"})," in Reference."]})]})]})]})}const Tb=[{value:"routine",label:"Routine",description:"Informational, no time pressure (ducting, new node, weather advisory, battery declining)"},{value:"priority",label:"Priority",description:"Needs attention soon (severe weather, fire nearby, node offline, HF blackout)"},{value:"immediate",label:"Immediate",description:"Act now, drop everything (fire at infrastructure, extreme weather, region blackout)"}],a7=[{id:"mesh_health",name:"Mesh Health Monitoring",description:"Infrastructure problems - offline nodes, low battery, channel congestion",rule:{name:"Mesh Health Monitoring",enabled:!0,trigger_type:"condition",categories:["infra_offline","critical_node_down","infra_recovery","battery_warning","battery_critical","battery_emergency","high_utilization","packet_flood","mesh_score_low"],min_severity:"routine",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:30,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"weather_fire",name:"Weather & Fire Alerts",description:"Environmental threats - severe weather, nearby wildfires, new ignitions, flooding",rule:{name:"Weather & Fire Alerts",enabled:!0,trigger_type:"condition",categories:["weather_warning","fire_proximity","new_ignition","stream_flood_warning"],min_severity:"priority",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:15,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"rf_conditions",name:"RF Conditions",description:"Propagation changes - solar events, HF blackouts, tropospheric ducting",rule:{name:"RF Conditions",enabled:!0,trigger_type:"condition",categories:["hf_blackout","tropospheric_ducting","geomagnetic_storm"],min_severity:"routine",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:60,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"road_traffic",name:"Road & Traffic",description:"Road closures and severe congestion",rule:{name:"Road & Traffic",enabled:!0,trigger_type:"condition",categories:["road_closure","traffic_congestion"],min_severity:"routine",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:30,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"everything_critical",name:"Everything Critical",description:"All emergency-level events regardless of type",rule:{name:"Everything Critical",enabled:!0,trigger_type:"condition",categories:[],min_severity:"immediate",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:5,schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"",custom_message:"",node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}},{id:"morning_briefing",name:"Morning Briefing",description:"Daily health and conditions summary at 7am",rule:{name:"Morning Briefing",enabled:!0,trigger_type:"schedule",categories:[],min_severity:"routine",schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"",schedule_days:[],message_type:"mesh_health_summary",custom_message:"",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:0,node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}}];function G_(e){if(!e)return"Never";const r=Date.now()/1e3-e;return r<60?"Just now":r<3600?`${Math.floor(r/60)}m ago`:r<86400?`${Math.floor(r/3600)}h ago`:r<604800?`${Math.floor(r/86400)}d ago`:new Date(e*1e3).toLocaleDateString()}function ia({info:e}){const[t,r]=H.useState(!1);return g.jsxs("div",{className:"relative inline-block",children:[g.jsx("button",{type:"button",onClick:n=>{n.stopPropagation(),r(!t)},className:"ml-1.5 w-4 h-4 rounded-full bg-slate-700 hover:bg-slate-600 text-slate-400 hover:text-slate-200 inline-flex items-center justify-center text-xs transition-colors",title:"More info",children:"?"}),t&&g.jsxs(g.Fragment,{children:[g.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>r(!1)}),g.jsx("div",{className:"absolute left-0 top-6 z-50 w-72 p-3 bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl text-xs text-slate-300 leading-relaxed",children:e})]})]})}function Tl({label:e,value:t,onChange:r,type:n="text",placeholder:i="",helper:a="",info:o=""}){const[s,l]=H.useState(!1),u=n==="password";return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,o&&g.jsx(ia,{info:o})]}),g.jsxs("div",{className:"relative",children:[g.jsx("input",{type:u&&!s?"password":"text",value:t,onChange:c=>r(c.target.value),placeholder:i,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"}),u&&g.jsx("button",{type:"button",onClick:()=>l(!s),className:"absolute right-2 top-1/2 -translate-y-1/2 text-slate-500 hover:text-slate-300",children:s?g.jsx($Z,{size:16}):g.jsx(sD,{size:16})})]}),a&&g.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function Wy({label:e,value:t,onChange:r,min:n,max:i,step:a=1,helper:o="",info:s=""}){return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,s&&g.jsx(ia,{info:s})]}),g.jsx("input",{type:"number",value:t,onChange:l=>r(Number(l.target.value)),min:n,max:i,step:a,className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent"}),o&&g.jsx("p",{className:"text-xs text-slate-600",children:o})]})}function fS({label:e,checked:t,onChange:r,helper:n="",info:i=""}){return g.jsxs("div",{className:"flex items-center justify-between py-2",children:[g.jsxs("div",{children:[g.jsxs("span",{className:"flex items-center text-sm text-slate-300",children:[e,i&&g.jsx(ia,{info:i})]}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]}),g.jsx("button",{type:"button",onClick:()=>r(!t),className:`relative w-11 h-6 rounded-full transition-colors ${t?"bg-accent":"bg-[#1e2a3a]"}`,children:g.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${t?"translate-x-5":""}`})})]})}function sm({label:e,value:t,onChange:r,helper:n="",info:i=""}){return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&g.jsx(ia,{info:i})]}),g.jsx("input",{type:"time",value:t,onChange:a=>r(a.target.value),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent"}),n&&g.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function Cb({label:e,value:t,onChange:r,placeholder:n="Add item...",helper:i="",info:a=""}){const[o,s]=H.useState(""),l=()=>{o.trim()&&!t.includes(o.trim())&&(r([...t,o.trim()]),s(""))},u=c=>{r(t.filter((f,h)=>h!==c))};return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&g.jsx(ia,{info:a})]}),g.jsxs("div",{className:"flex gap-2",children:[g.jsx("input",{type:"text",value:o,onChange:c=>s(c.target.value),onKeyDown:c=>c.key==="Enter"&&(c.preventDefault(),l()),className:"flex-1 px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent",placeholder:n}),g.jsx("button",{type:"button",onClick:l,className:"px-3 py-2 bg-accent hover:bg-accent/80 rounded text-sm text-white transition-colors",children:g.jsx(yv,{size:16})})]}),t.length>0&&g.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:t.map((c,f)=>g.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 bg-[#1e2a3a] rounded text-sm text-slate-300",children:[c,g.jsx("button",{type:"button",onClick:()=>u(f),className:"text-slate-500 hover:text-red-400",children:g.jsx(Xa,{size:14})})]},f))}),i&&g.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function lae({value:e,onChange:t}){const[r,n]=H.useState(!1),i=Tb.find(a=>a.value===e)||Tb[0];return g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Severity Threshold",g.jsx(ia,{info:"Only alerts at or above this severity trigger this rule. ROUTINE = informational, PRIORITY = needs attention, IMMEDIATE = act now."})]}),g.jsxs("div",{className:"relative",children:[g.jsxs("button",{type:"button",onClick:()=>n(!r),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-left flex items-center justify-between hover:border-accent transition-colors",children:[g.jsxs("div",{children:[g.jsx("span",{className:"text-slate-200",children:i.label}),g.jsxs("span",{className:"text-slate-500 ml-2",children:["- ",i.description]})]}),g.jsx(yu,{size:16,className:`text-slate-500 transition-transform ${r?"rotate-180":""}`})]}),r&&g.jsxs(g.Fragment,{children:[g.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>n(!1)}),g.jsx("div",{className:"absolute left-0 right-0 top-full mt-1 z-50 bg-[#0a0e17] border border-[#1e2a3a] rounded-lg shadow-xl overflow-hidden",children:Tb.map(a=>g.jsxs("button",{type:"button",onClick:()=>{t(a.value),n(!1)},className:`w-full px-3 py-2.5 text-left text-sm hover:bg-[#1e2a3a] transition-colors ${e===a.value?"bg-accent/10":""}`,children:[g.jsx("div",{className:"font-medium text-slate-200",children:a.label}),g.jsx("div",{className:"text-xs text-slate-500",children:a.description})]},a.value))})]})]}),g.jsx("p",{className:"text-xs text-slate-600",children:'Lower = more notifications. "Warning" recommended for most rules.'})]})}function W_({rule:e}){const[t,r]=H.useState(!1),[n,i]=H.useState(null),a=async()=>{r(!0),i(null);try{let s={type:e.delivery_type};e.delivery_type==="mesh_broadcast"?s.channel_index=e.broadcast_channel:e.delivery_type==="mesh_dm"?s.node_ids=e.node_ids:e.delivery_type==="email"?s={type:"email",smtp_host:e.smtp_host,smtp_port:e.smtp_port,smtp_user:e.smtp_user,smtp_password:e.smtp_password,smtp_tls:e.smtp_tls,from_address:e.from_address,recipients:e.recipients}:e.delivery_type==="webhook"&&(s={type:"webhook",url:e.webhook_url,headers:e.webhook_headers});const u=await(await fetch("/api/notifications/channels/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)})).json();i(u)}catch(s){i({success:!1,message:"Test failed",error:s instanceof Error?s.message:"Unknown error",details:{}})}finally{r(!1)}};if(!e.delivery_type)return null;const o={mesh_broadcast:g.jsx(Ya,{size:14}),mesh_dm:g.jsx(uD,{size:14}),email:g.jsx(bce,{size:14}),webhook:g.jsx(xce,{size:14})}[e.delivery_type]||g.jsx(RS,{size:14});return g.jsxs("div",{className:"space-y-2",children:[g.jsx("button",{type:"button",onClick:a,disabled:t,className:"flex items-center gap-2 px-3 py-1.5 bg-slate-700 hover:bg-slate-600 rounded text-sm disabled:opacity-50",children:t?g.jsxs(g.Fragment,{children:[g.jsx(Pm,{size:14,className:"animate-spin"}),"Testing..."]}):g.jsxs(g.Fragment,{children:[o,"Test Channel"]})}),n&&g.jsx("div",{className:`p-2 rounded text-xs ${n.success?"bg-green-500/10 border border-green-500/30 text-green-400":"bg-red-500/10 border border-red-500/30 text-red-400"}`,children:g.jsxs("div",{className:"flex items-start gap-2",children:[n.success?g.jsx(zo,{size:14,className:"mt-0.5 flex-shrink-0"}):g.jsx(Xa,{size:14,className:"mt-0.5 flex-shrink-0"}),g.jsxs("div",{children:[g.jsx("div",{className:"font-medium",children:n.message}),n.error&&g.jsx("div",{className:"mt-1 text-red-300",children:n.error})]})]})})]})}function yet({rule:e,ruleIndex:t,categories:r,regions:n,onChange:i,onDelete:a,onDuplicate:o,onTest:s}){var D,N,z,V,F;const[l,u]=H.useState(!e.name),[c,f]=H.useState(!1),[h,d]=H.useState(null),[v,m]=H.useState(null);H.useEffect(()=>{var $;e.name&&t>=0&&(fetch(`/api/notifications/rules/${t}/stats`).then(B=>B.json()).then(B=>d(B)).catch(()=>{}),($=e.categories)!=null&&$.length&&fetch("/api/notifications/rules/sources",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({categories:e.categories})}).then(B=>B.json()).then(B=>m(B)).catch(()=>{}))},[e.name,t,e.categories]);const y=[{value:"",label:"(None)",description:"Rule matches but does not deliver"},{value:"mesh_broadcast",label:"Mesh Broadcast",description:"Send to a mesh radio channel"},{value:"mesh_dm",label:"Mesh DM",description:"Direct message to specific nodes"},{value:"email",label:"Email",description:"Send via SMTP"},{value:"webhook",label:"Webhook",description:"POST to any URL"}],x=[{value:"daily",label:"Daily"},{value:"twice_daily",label:"Twice Daily"},{value:"weekly",label:"Weekly"}],_=[{value:"mesh_health_summary",label:"Mesh Health Summary",description:"Current health score, pillar breakdown, problem nodes"},{value:"rf_propagation_report",label:"RF Propagation Report",description:"Solar indices, Kp, ducting conditions"},{value:"alerts_digest",label:"Active Alerts Digest",description:"Summary of all active environmental alerts"},{value:"environmental_conditions",label:"Environmental Conditions",description:"Full conditions: weather, fire, streams, roads"},{value:"custom",label:"Custom Message",description:"Write your own with template tokens"}],b=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],S=$=>{const B=e.categories||[];B.includes($)?i({...e,categories:B.filter(Z=>Z!==$)}):i({...e,categories:[...B,$]})},T=($,B)=>{const Z=e.categories||[];if(B==="add"){const W=Array.from(new Set([...Z,...$]));i({...e,categories:W})}else{const W=new Set($);i({...e,categories:Z.filter(G=>!W.has(G))})}},C=$=>{const B=e.region_scope||[];B.includes($)?i({...e,region_scope:B.filter(Z=>Z!==$)}):i({...e,region_scope:[...B,$]})},A=$=>{const B=e.schedule_days||[];B.includes($)?i({...e,schedule_days:B.filter(Z=>Z!==$)}):i({...e,schedule_days:[...B,$]})},P=async()=>{f(!0),await s(),f(!1)},I=()=>{if(e.trigger_type==="schedule")return"[Scheduled report preview would appear here]";const $=e.categories||[];if($.length===0&&r.length>0)return r[0].example_message||"Alert notification";const B=r.find(Z=>$.includes(Z.id));return(B==null?void 0:B.example_message)||"Alert notification"},k=()=>{var B,Z,W,G,Y,K,ee,le;const $=[];if(e.trigger_type==="schedule"){const he=((B=x.find(xe=>xe.value===e.schedule_frequency))==null?void 0:B.label)||e.schedule_frequency,Ne=((Z=_.find(xe=>xe.value===e.message_type))==null?void 0:Z.label)||e.message_type;$.push(`${he} at ${e.schedule_time||"??:??"}`),$.push(Ne)}else{const he=((W=e.categories)==null?void 0:W.length)||0,Ne=he===0?"All":r.filter(ie=>{var de;return(de=e.categories)==null?void 0:de.includes(ie.id)}).map(ie=>ie.name).slice(0,2).join(", ")+(he>2?` +${he-2}`:""),xe=((G=Tb.find(ie=>ie.value===e.min_severity))==null?void 0:G.label)||e.min_severity;$.push(`${Ne} at ${xe}+`)}if(!e.delivery_type)$.push("No delivery");else{const he=((Y=y.find(xe=>xe.value===e.delivery_type))==null?void 0:Y.label)||e.delivery_type;let Ne="";if(e.delivery_type==="mesh_broadcast")Ne=`Ch ${e.broadcast_channel}`;else if(e.delivery_type==="mesh_dm")Ne=`${((K=e.node_ids)==null?void 0:K.length)||0} nodes`;else if(e.delivery_type==="email")Ne=(ee=e.recipients)!=null&&ee.length?e.recipients[0]+(e.recipients.length>1?` +${e.recipients.length-1}`:""):"no recipients";else if(e.delivery_type==="webhook")try{Ne=new URL(e.webhook_url).hostname}catch{Ne=((le=e.webhook_url)==null?void 0:le.slice(0,20))||"no URL"}$.push(`${he}${Ne?` (${Ne})`:""}`)}return $.join(" -> ")},O=()=>{var B;if(!v||!((B=e.categories)!=null&&B.length))return null;const $=new Map;for(const[,Z]of Object.entries(v)){const W=$.get(Z.source);W?(W.events+=Z.active_events,W.enabled=W.enabled&&Z.enabled):$.set(Z.source,{enabled:Z.enabled,events:Z.active_events})}return Array.from($.entries()).map(([Z,{enabled:W,events:G}])=>g.jsxs("span",{className:`inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-xs ${W?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,title:W?`${G} active`:"Not enabled",children:[W?g.jsx(RS,{size:10}):g.jsx(ZZ,{size:10}),Z.toUpperCase(),W&&G>0&&` (${G})`]},Z))};return g.jsxs("div",{className:`border rounded-lg overflow-hidden ${e.enabled?"border-[#1e2a3a]":"border-slate-700 opacity-60"}`,children:[g.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>u(!l),children:[g.jsxs("div",{className:"flex items-center gap-3 min-w-0 flex-1",children:[l?g.jsx(yu,{size:16,className:"text-slate-500 flex-shrink-0"}):g.jsx(ou,{size:16,className:"text-slate-500 flex-shrink-0"}),g.jsx("button",{onClick:$=>{$.stopPropagation(),i({...e,enabled:!e.enabled})},className:`w-2 h-2 rounded-full flex-shrink-0 ${e.enabled?"bg-green-500":"bg-slate-500"}`,title:e.enabled?"Enabled":"Disabled"}),e.trigger_type==="schedule"?g.jsx(rf,{size:14,className:"text-blue-400 flex-shrink-0"}):g.jsx(km,{size:14,className:"text-yellow-400 flex-shrink-0"}),g.jsx("span",{className:"font-medium text-slate-200 truncate",title:e.name||void 0,children:e.name||"New Rule"}),!l&&g.jsx("span",{className:`text-xs truncate hidden sm:block ${e.delivery_type?"text-slate-500":"text-amber-400"}`,children:k()})]}),g.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[!l&&(()=>{const $="hidden sm:inline-flex items-center gap-1 px-2 py-0.5 rounded text-xs mr-2";if(!e.enabled)return g.jsx("span",{className:`${$} bg-slate-800 text-slate-500`,children:"Disabled"});if(!h)return null;const B=h.fire_count||0,Z=h.last_fired,W=Date.now()/1e3-7*86400;return B>0&&Z&&Z>=W?g.jsx("span",{className:`${$} bg-green-500/10 text-green-400`,title:`Last fired ${G_(Z)}`,children:"Active"}):B>0&&Z?g.jsx("span",{className:`${$} bg-yellow-500/10 text-yellow-400`,title:`Last fired ${G_(Z)}`,children:"Idle (no recent activity)"}):g.jsx("span",{className:`${$} bg-slate-800 text-slate-400`,children:"No activity yet"})})(),!l&&g.jsx("div",{className:"hidden md:flex items-center gap-1 mr-2",children:O()}),g.jsx("button",{onClick:$=>{$.stopPropagation(),P()},disabled:c||!e.name,className:"p-1.5 text-blue-400 hover:text-blue-300 hover:bg-blue-500/10 rounded disabled:opacity-50",title:"Test rule",children:g.jsx(wk,{size:14})}),g.jsx("button",{onClick:$=>{$.stopPropagation(),o()},className:"p-1.5 text-slate-400 hover:text-slate-200 hover:bg-slate-500/10 rounded",title:"Duplicate",children:g.jsx(mce,{size:14})}),g.jsx("button",{onClick:$=>{$.stopPropagation(),a()},className:"p-1.5 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",title:"Delete",children:g.jsx(Jy,{size:14})})]})]}),!l&&e.name&&g.jsxs("div",{className:"px-3 pb-2 pt-0 bg-[#0a0e17] flex items-center gap-2 flex-wrap text-xs",children:[!e.delivery_type&&g.jsxs("span",{className:"inline-flex items-center gap-1 px-1.5 py-0.5 bg-amber-500/10 text-amber-400 rounded",children:[g.jsx(su,{size:10}),"No delivery method"]}),(h==null?void 0:h.fire_count)!==void 0&&h.fire_count>0&&g.jsxs("span",{className:"text-slate-500",children:["Fired ",h.fire_count,"x"]})]}),l&&g.jsxs("div",{className:"p-4 space-y-6 border-t border-[#1e2a3a]",children:[g.jsx(Tl,{label:"Rule Name",value:e.name,onChange:$=>i({...e,name:$}),placeholder:"e.g., Emergency Broadcast, Daily Health Report",helper:"A descriptive name for this rule"}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Trigger Type"}),g.jsxs("div",{className:"flex gap-2",children:[g.jsxs("button",{type:"button",onClick:()=>i({...e,trigger_type:"condition"}),className:`flex-1 flex items-center justify-center gap-2 px-4 py-3 rounded-lg border transition-colors ${e.trigger_type!=="schedule"?"bg-accent/10 border-accent text-accent":"bg-[#0a0e17] border-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:[g.jsx(km,{size:16}),g.jsx("span",{children:"Condition"})]}),g.jsxs("button",{type:"button",onClick:()=>i({...e,trigger_type:"schedule"}),className:`flex-1 flex items-center justify-center gap-2 px-4 py-3 rounded-lg border transition-colors ${e.trigger_type==="schedule"?"bg-accent/10 border-accent text-accent":"bg-[#0a0e17] border-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:[g.jsx(rf,{size:16}),g.jsx("span",{children:"Schedule"})]})]}),g.jsx("p",{className:"text-xs text-slate-600",children:e.trigger_type==="schedule"?"Send reports on a schedule (daily briefings, weekly digests)":"React to alert conditions (fires, outages, weather warnings)"})]}),e.trigger_type!=="schedule"&&g.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[g.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[g.jsx(Bs,{size:14}),"WHEN (Condition)"]}),g.jsx(lae,{value:e.min_severity,onChange:$=>i({...e,min_severity:$})}),g.jsxs("div",{className:"space-y-2",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Alert Categories",g.jsx(ia,{info:"Select which types of alerts trigger this rule. Leave all unchecked to match ALL categories. Categories are grouped by family — use the 'All' / 'Clear' buttons in each header to bulk-toggle."})]}),g.jsx("div",{className:"text-xs text-slate-500 mb-2",children:(((D=e.categories)==null?void 0:D.length)||0)===0?"All categories (none selected)":`${(N=e.categories)==null?void 0:N.length} selected`}),g.jsx(xet,{categories:r,selected:e.categories||[],onToggle:S,onSelectMany:T})]}),v&&Object.keys(v).length>0&&g.jsxs("div",{className:"space-y-2",children:[g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Data Sources"}),g.jsx("div",{className:"flex flex-wrap gap-2",children:O()})]})]}),e.trigger_type==="schedule"&&g.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[g.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[g.jsx(hce,{size:14}),"WHEN (Schedule)"]}),g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Frequency"}),g.jsx("select",{value:e.schedule_frequency||"daily",onChange:$=>i({...e,schedule_frequency:$.target.value}),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:x.map($=>g.jsx("option",{value:$.value,children:$.label},$.value))})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(sm,{label:"Time",value:e.schedule_time||"07:00",onChange:$=>i({...e,schedule_time:$})}),e.schedule_frequency==="twice_daily"&&g.jsx(sm,{label:"Second Time",value:e.schedule_time_2||"19:00",onChange:$=>i({...e,schedule_time_2:$})})]}),e.schedule_frequency==="weekly"&&g.jsxs("div",{className:"space-y-2",children:[g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Days"}),g.jsx("div",{className:"flex flex-wrap gap-2",children:b.map($=>{var B;return g.jsx("button",{type:"button",onClick:()=>A($),className:`px-3 py-1.5 rounded text-sm capitalize transition-colors ${(B=e.schedule_days)!=null&&B.includes($)?"bg-accent text-white":"bg-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:$.slice(0,3)},$)})})]}),g.jsxs("div",{className:"space-y-1",children:[g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Report Type"}),g.jsx("select",{value:e.message_type||"mesh_health_summary",onChange:$=>i({...e,message_type:$.target.value}),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:_.map($=>g.jsx("option",{value:$.value,children:$.label},$.value))}),g.jsx("p",{className:"text-xs text-slate-600",children:(z=_.find($=>$.value===e.message_type))==null?void 0:z.description})]}),e.message_type==="custom"&&g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Custom Message",g.jsx(ia,{info:"Available tokens: {MESH_SCORE}, {NODE_COUNT}, {NODES_ONLINE}, {ACTIVE_ALERTS}, {KP}, {SFI}, {DATE}, {TIME}"})]}),g.jsx("textarea",{value:e.custom_message||"",onChange:$=>i({...e,custom_message:$.target.value}),rows:4,placeholder:"Good morning! Mesh health: {MESH_SCORE}/100 with {NODE_COUNT} nodes online.",className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 font-mono focus:outline-none focus:border-accent placeholder-slate-600"})]})]}),g.jsxs("div",{className:"space-y-2 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[g.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[g.jsx(mv,{size:14}),"REGIONS",g.jsx(ia,{info:"Limit this rule to alerts from specific regions. Empty selection = all regions (backward compatible). Region names come from /api/regions."})]}),g.jsx("div",{className:"text-xs text-slate-500",children:(((V=e.region_scope)==null?void 0:V.length)||0)===0?"All regions (none selected)":`${e.region_scope.length} of ${n.length} selected`}),n.length===0?g.jsx("div",{className:"text-xs text-slate-600 italic",children:"No regions configured."}):g.jsx("div",{className:"flex flex-wrap gap-2",children:n.map($=>{const B=(e.region_scope||[]).includes($.name);return g.jsx("button",{type:"button",onClick:()=>C($.name),className:`px-3 py-1.5 rounded text-sm transition-colors ${B?"bg-accent text-white":"bg-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,title:$.local_name||$.name,children:$.local_name||$.name},$.name)})})]}),g.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[g.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[g.jsx(wk,{size:14}),"SEND VIA"]}),g.jsxs("div",{className:"space-y-1",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Delivery Method",g.jsx(ia,{info:"Where this notification gets delivered. Select (None) to save the rule without delivery - it will match conditions but won't send until you configure a delivery method."})]}),g.jsx("select",{value:e.delivery_type||"",onChange:$=>i({...e,delivery_type:$.target.value}),className:"w-full px-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent",children:y.map($=>g.jsx("option",{value:$.value,children:$.label},$.value))}),g.jsx("p",{className:"text-xs text-slate-600",children:(F=y.find($=>$.value===(e.delivery_type||"")))==null?void 0:F.description})]}),!e.delivery_type&&g.jsxs("div",{className:"flex items-start gap-2 p-3 bg-amber-500/10 border border-amber-500/20 rounded-lg",children:[g.jsx(su,{size:16,className:"text-amber-400 mt-0.5 flex-shrink-0"}),g.jsx("div",{className:"text-sm text-amber-300",children:"Rule will log matches but not deliver until a delivery method is configured."})]}),e.delivery_type==="mesh_broadcast"&&g.jsxs(g.Fragment,{children:[g.jsx(r3,{label:"Broadcast Channel",value:e.broadcast_channel??0,onChange:$=>i({...e,broadcast_channel:$}),helper:"Select the mesh radio channel",mode:"single"}),g.jsx(W_,{rule:e})]}),e.delivery_type==="mesh_dm"&&g.jsxs(g.Fragment,{children:[g.jsx(t3,{label:"Recipient Nodes",value:e.node_ids||[],onChange:$=>i({...e,node_ids:$}),helper:"Nodes that receive direct messages",valueType:"node_id_hex"}),g.jsx(W_,{rule:e})]}),e.delivery_type==="email"&&g.jsxs("div",{className:"space-y-4",children:[g.jsx(Cb,{label:"Recipients",value:e.recipients||[],onChange:$=>i({...e,recipients:$}),placeholder:"email@example.com",helper:"Email addresses to receive alerts"}),g.jsxs("details",{className:"group",children:[g.jsxs("summary",{className:"flex items-center gap-2 cursor-pointer text-sm text-slate-400 hover:text-slate-200",children:[g.jsx(ou,{size:14,className:"group-open:rotate-90 transition-transform"}),"SMTP Configuration"]}),g.jsxs("div",{className:"mt-4 space-y-4 pl-6 border-l border-[#1e2a3a]",children:[g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(Tl,{label:"SMTP Host",value:e.smtp_host||"",onChange:$=>i({...e,smtp_host:$}),placeholder:"smtp.gmail.com"}),g.jsx(Wy,{label:"SMTP Port",value:e.smtp_port??587,onChange:$=>i({...e,smtp_port:$}),min:1,max:65535})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(Tl,{label:"Username",value:e.smtp_user||"",onChange:$=>i({...e,smtp_user:$})}),g.jsx(Tl,{label:"Password",value:e.smtp_password||"",onChange:$=>i({...e,smtp_password:$}),type:"password",info:"Gmail users: use an App Password from myaccount.google.com/apppasswords"})]}),g.jsx(fS,{label:"Use TLS",checked:e.smtp_tls??!0,onChange:$=>i({...e,smtp_tls:$})}),g.jsx(Tl,{label:"From Address",value:e.from_address||"",onChange:$=>i({...e,from_address:$}),placeholder:"alerts@yourdomain.com"})]})]}),g.jsx(W_,{rule:e})]}),e.delivery_type==="webhook"&&g.jsxs(g.Fragment,{children:[g.jsx(Tl,{label:"Webhook URL",value:e.webhook_url||"",onChange:$=>i({...e,webhook_url:$}),placeholder:"https://discord.com/api/webhooks/...",helper:"POST alert as JSON",info:"Works with Discord webhooks, ntfy.sh, Slack, Home Assistant, Pushover, or any HTTP POST endpoint."}),g.jsx(W_,{rule:e})]})]}),g.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[g.jsx(Wy,{label:"Cooldown (minutes)",value:e.cooldown_minutes??10,onChange:$=>i({...e,cooldown_minutes:$}),min:0,helper:"Min time between repeat sends",info:"Prevents alert spam. Same condition won't re-trigger this rule within this window."})," "]}),h&&g.jsxs("div",{className:"flex items-center gap-4 text-xs text-slate-500",children:[g.jsxs("span",{children:["Last fired: ",G_(h.last_fired)]}),g.jsxs("span",{children:["Last tested: ",G_(h.last_test)]}),g.jsxs("span",{children:["Total fires: ",h.fire_count]})]}),e.trigger_type!=="schedule"&&g.jsxs("div",{className:"space-y-2",children:[g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Example Message"}),g.jsx("div",{className:"p-3 bg-[#1e2a3a]/50 rounded-lg border border-[#1e2a3a]",children:g.jsx("p",{className:"text-sm text-slate-300 font-mono",children:I()})}),g.jsx("p",{className:"text-xs text-slate-600",children:"This is an example of what this rule would send."})]})]})]})}const Ab=[{key:"mesh_health",label:"Mesh Health",Icon:gv},{key:"weather",label:"Weather",Icon:lu},{key:"fire",label:"Fire",Icon:IS},{key:"rf_propagation",label:"RF Propagation",Icon:Ya},{key:"roads",label:"Roads",Icon:kS},{key:"avalanche",label:"Avalanche",Icon:Tce},{key:"seismic",label:"Seismic",Icon:OS},{key:"tracking",label:"Tracking",Icon:mv}];function xet({categories:e,selected:t,onToggle:r,onSelectMany:n}){const i=new Set(Ab.map(h=>h.key)),a=new Map;Ab.forEach(h=>a.set(h.key,[]));const o=[];for(const h of e){const d=h.toggle;d&&i.has(d)?a.get(d).push(h):o.push(h)}const s=new Set;for(const[h,d]of a)d.some(v=>t.includes(v.id))&&s.add(h);o.some(h=>t.includes(h.id))&&s.add("other");const[l,u]=H.useState(s),c=h=>{u(d=>{const v=new Set(d);return v.has(h)?v.delete(h):v.add(h),v})},f=(h,d,v,m)=>{if(!m.length)return null;const y=l.has(h),x=m.map(b=>b.id),_=x.filter(b=>t.includes(b)).length;return g.jsxs("div",{className:"border border-[#1e2a3a] rounded",children:[g.jsxs("div",{className:"flex items-center justify-between px-2 py-1.5 bg-[#0d1420]",children:[g.jsxs("button",{type:"button",onClick:()=>c(h),className:"flex items-center gap-2 text-sm text-slate-200 flex-1 min-w-0",children:[y?g.jsx(yu,{size:14,className:"text-slate-500 flex-shrink-0"}):g.jsx(ou,{size:14,className:"text-slate-500 flex-shrink-0"}),v&&g.jsx(v,{size:14,className:"text-slate-400 flex-shrink-0"}),g.jsxs("span",{className:"truncate",children:[d," (",m.length,")"]}),_>0&&g.jsxs("span",{className:"ml-1 text-xs text-accent",children:[_," selected"]})]}),g.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[g.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),n(x,"add")},className:"text-xs px-2 py-0.5 rounded text-slate-400 hover:text-accent hover:bg-accent/10",title:"Select all in family",children:"All"}),g.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),n(x,"remove")},className:"text-xs px-2 py-0.5 rounded text-slate-400 hover:text-red-400 hover:bg-red-500/10",title:"Clear family",children:"Clear"})]})]}),y&&g.jsx("div",{className:"p-1 space-y-1",children:m.map(b=>g.jsxs("label",{onClick:()=>r(b.id),className:"flex items-start gap-2 p-2 rounded hover:bg-[#1e2a3a]/50 cursor-pointer",children:[g.jsx("div",{className:`w-4 h-4 mt-0.5 rounded border flex items-center justify-center flex-shrink-0 ${t.includes(b.id)?"bg-accent border-accent":"border-slate-600"}`,children:t.includes(b.id)&&g.jsx(zo,{size:12,className:"text-white"})}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsx("div",{className:"text-sm text-slate-200",children:b.name}),g.jsx("div",{className:"text-xs text-slate-500",children:b.description})]})]},b.id))})]},h)};return g.jsxs("div",{className:"max-h-96 overflow-y-auto border border-[#1e2a3a] rounded-lg p-2 space-y-2",children:[Ab.map(h=>f(h.key,h.label,h.Icon,a.get(h.key)||[])),f("other","Other",null,o)]})}const o7=["digest","mesh_broadcast","mesh_dm","email","webhook"],_et=["routine","priority","immediate"];function bet({toggles:e,onChange:t}){const[r,n]=H.useState(null),i=(a,o)=>t({...e,[a]:{...e[a]||{},name:a,...o}});return g.jsxs("div",{className:"space-y-3 mb-8",children:[g.jsxs("div",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Master Toggles",g.jsx(ia,{info:"Per-family notification policy: enable a family, set its severity threshold, choose which channels fire at each severity, and scope to regions (PagerDuty/Grafana-style)."})]}),g.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:Ab.map(({key:a,label:o,Icon:s})=>{const l=e[a]||{},u=r===a,c=Object.values(l.severity_channels||{}).reduce((h,d)=>h+((d==null?void 0:d.length)||0),0),f=(l.regions||[]).length;return g.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-3",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("button",{type:"button",onClick:()=>n(u?null:a),className:"flex items-center gap-2 text-sm text-slate-200",children:[g.jsx(s,{size:15})," ",o,u?g.jsx(yu,{size:14}):g.jsx(ou,{size:14})]}),g.jsx(fS,{label:"",checked:!!l.enabled,onChange:h=>i(a,{enabled:h})})]}),!u&&g.jsx("div",{className:"text-xs text-slate-600 mt-1",children:l.enabled?`${f||"all"} region${f===1?"":"s"}, ${c} channel${c===1?"":"s"} at ${l.min_severity||"priority"}+`:"OFF"}),u&&g.jsxs("div",{className:`mt-3 space-y-3 ${l.enabled?"":"opacity-40 pointer-events-none select-none"}`,children:[g.jsx(lae,{value:l.min_severity||"priority",onChange:h=>i(a,{min_severity:h})}),g.jsx("div",{className:"text-xs text-slate-500",children:"Severity → channels"}),g.jsxs("table",{className:"text-xs w-full",children:[g.jsx("thead",{children:g.jsxs("tr",{children:[g.jsx("th",{}),o7.map(h=>g.jsx("th",{className:"text-slate-500 font-normal px-1",children:h.replace("_"," ")},h))]})}),g.jsx("tbody",{children:_et.map(h=>g.jsxs("tr",{children:[g.jsx("td",{className:"text-slate-400 pr-2",children:h}),o7.map(d=>{var m;const v=(((m=l.severity_channels)==null?void 0:m[h])||[]).includes(d);return g.jsx("td",{className:"text-center",children:g.jsx("input",{type:"checkbox",checked:v,onChange:y=>{const x={...l.severity_channels||{}},_=new Set(x[h]||[]);y.target.checked?_.add(d):_.delete(d),x[h]=Array.from(_),i(a,{severity_channels:x})}})},d)})]},h))})]}),g.jsx(Cb,{label:"Regions (empty = all)",value:l.regions||[],onChange:h=>i(a,{regions:h}),placeholder:"Add region..."})," ",g.jsx("div",{className:"text-xs text-slate-500 pt-1",children:"Channel config"}),g.jsx(Wy,{label:"Broadcast channel",value:l.broadcast_channel??0,onChange:h=>i(a,{broadcast_channel:h})}),g.jsx(Cb,{label:"DM node IDs",value:l.node_ids||[],onChange:h=>i(a,{node_ids:h}),placeholder:"!nodeid"}),g.jsx(Cb,{label:"Email recipients",value:l.recipients||[],onChange:h=>i(a,{recipients:h}),placeholder:"ops@example.com"}),g.jsx(Tl,{label:"SMTP host",value:l.smtp_host||"",onChange:h=>i(a,{smtp_host:h}),placeholder:"smtp.example.com"}),g.jsx(Wy,{label:"SMTP port",value:l.smtp_port??587,onChange:h=>i(a,{smtp_port:h})}),g.jsx(Tl,{label:"Webhook URL",value:l.webhook_url||"",onChange:h=>i(a,{webhook_url:h}),placeholder:"https://..."})]})]},a)})})]})}function wet(){var B,Z,W;const[e,t]=H.useState(null),[r,n]=H.useState(null),[i,a]=H.useState([]),[o,s]=H.useState([]),[l,u]=H.useState(!0),[c,f]=H.useState(!1),[h,d]=H.useState(null),[v,m]=H.useState(null),[y,x]=H.useState(null),[_,b]=H.useState({open:!1,ruleIndex:-1,loading:!1,action:""}),[S,T]=H.useState(!1),[C,A]=H.useState(!1),P=H.useCallback(async()=>{try{const[G,Y,K]=await Promise.all([fetch("/api/config/notifications"),fetch("/api/notifications/categories"),fetch("/api/regions")]);if(!G.ok)throw new Error("Failed to fetch notifications config");const ee=await G.json(),le=await Y.json(),he=K.ok?await K.json():[];t(ee),n(JSON.parse(JSON.stringify(ee))),a(le),s(Array.isArray(he)?he:[]),A(!1),d(null)}catch(G){d(G instanceof Error?G.message:"Unknown error")}finally{u(!1)}},[]);H.useEffect(()=>{document.title="Notifications - MeshAI",P()},[P]),H.useEffect(()=>{e&&r&&A(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const I=async()=>{if(e){f(!0),d(null),m(null);try{const G=await fetch("/api/config/notifications",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),Y=await G.json();if(!G.ok)throw new Error(Y.detail||"Save failed");m("Notifications config saved successfully"),n(JSON.parse(JSON.stringify(e))),A(!1),setTimeout(()=>m(null),3e3)}catch(G){d(G instanceof Error?G.message:"Save failed")}finally{f(!1)}}},k=()=>{r&&(t(JSON.parse(JSON.stringify(r))),A(!1))},O=()=>({name:"",enabled:!0,trigger_type:"condition",categories:[],min_severity:"routine",schedule_frequency:"daily",schedule_time:"07:00",schedule_time_2:"19:00",schedule_days:["monday"],message_type:"mesh_health_summary",custom_message:"",delivery_type:"",broadcast_channel:0,node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{},cooldown_minutes:10,region_scope:[]}),D=()=>{e&&t({...e,rules:[...e.rules||[],O()]})},N=G=>{if(!e)return;const Y=a7.find(K=>K.id===G);Y&&(t({...e,rules:[...e.rules||[],{...O(),...Y.rule}]}),T(!1))},z=G=>{if(!e)return;const Y=e.rules[G],K={...JSON.parse(JSON.stringify(Y)),name:`${Y.name} (copy)`},ee=[...e.rules];ee.splice(G+1,0,K),t({...e,rules:ee})},V=async G=>{b({open:!0,ruleIndex:G,loading:!0,action:""});try{const K=await(await fetch(`/api/notifications/rules/${G}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"preview"})})).json();x(K),b(ee=>({...ee,loading:!1}))}catch{x({success:!1,message:"Failed to get preview"}),b(Y=>({...Y,loading:!1}))}},F=async G=>{const Y=_.ruleIndex;b(K=>({...K,loading:!0,action:G}));try{const ee=await(await fetch(`/api/notifications/rules/${Y}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:G})})).json();x(ee),b(le=>({...le,loading:!1}))}catch{x({success:!1,message:`Failed to ${G}`}),b(K=>({...K,loading:!1}))}},$=()=>{b({open:!1,ruleIndex:-1,loading:!1,action:""}),x(null)};return l?g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-slate-400",children:"Loading notifications config..."})}):e?g.jsxs("div",{className:"max-w-4xl mx-auto space-y-6",children:[_.open&&g.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:g.jsxs("div",{className:"bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl max-w-2xl w-full mx-4 max-h-[85vh] overflow-auto",children:[g.jsxs("div",{className:"p-4 border-b border-[#2a3a4a] flex items-center justify-between sticky top-0 bg-[#1a2332]",children:[g.jsx("h3",{className:"text-lg font-semibold",children:"Test Notification Rule"}),g.jsx("button",{onClick:$,className:"text-slate-500 hover:text-slate-300",children:g.jsx(Xa,{size:20})})]}),g.jsx("div",{className:"p-4 space-y-4",children:_.loading?g.jsxs("div",{className:"flex items-center justify-center py-8",children:[g.jsx(Pm,{size:20,className:"animate-spin text-slate-400 mr-2"}),g.jsx("div",{className:"text-slate-400",children:_.action?`${_.action.replace("_"," ").replace("send ","Sending ")}...`:"Loading current data..."})]}):y?g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"space-y-2",children:[g.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:"Current Data"}),y.live_data_summary&&y.live_data_summary.length>0?g.jsx("div",{className:"p-3 bg-slate-800/50 rounded space-y-1",children:y.live_data_summary.map((G,Y)=>g.jsx("div",{className:`text-sm font-mono ${G.startsWith("[!]")?"text-amber-400":""}`,children:G},Y))}):g.jsx("div",{className:"p-3 bg-slate-800/50 rounded text-sm text-slate-500",children:"No live data available for this rule's categories"})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:"Rule Matching"}),g.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[y.conditions_matched&&y.conditions_matched>0?g.jsxs("span",{className:"px-2 py-1 bg-green-500/20 text-green-400 rounded text-sm",children:[y.conditions_matched," condition",y.conditions_matched!==1?"s":""," match - this rule WOULD fire"]}):g.jsx("span",{className:"px-2 py-1 bg-slate-700 text-slate-400 rounded text-sm",children:"No conditions trigger this rule right now"}),y.conditions_below_threshold&&y.conditions_below_threshold>0&&g.jsxs("span",{className:"px-2 py-1 bg-yellow-500/20 text-yellow-400 rounded text-sm",children:[y.conditions_below_threshold," below threshold"]})]}),y.conditions_below_threshold&&y.conditions_below_threshold>0&&g.jsxs("div",{className:"p-3 bg-yellow-500/10 border border-yellow-500/30 rounded text-sm space-y-2",children:[g.jsx("div",{className:"text-yellow-300",children:y.below_threshold_summary}),y.below_threshold_events&&y.below_threshold_events.length>0&&g.jsx("div",{className:"space-y-1 text-yellow-200/80",children:y.below_threshold_events.slice(0,3).map((G,Y)=>g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("span",{className:"text-xs px-1.5 py-0.5 bg-yellow-500/20 rounded",children:G.severity}),g.jsx("span",{children:G.headline})]},Y))}),y.suggestion&&g.jsxs("div",{className:"text-yellow-400 text-xs mt-2",children:["Tip: ",y.suggestion]})]})]}),g.jsxs("div",{className:"space-y-2",children:[g.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:y.is_example?"Example Messages":"Messages That Would Fire"}),(B=y.preview_messages)==null?void 0:B.map((G,Y)=>g.jsx("div",{className:"p-3 bg-slate-800 rounded text-sm font-mono break-words",children:G},Y))]}),y.delivered!==void 0&&y.delivery_result&&g.jsx("div",{className:`p-3 rounded text-sm ${y.delivered?"bg-green-500/10 border border-green-500/30 text-green-400":"bg-red-500/10 border border-red-500/30 text-red-400"}`,children:g.jsxs("div",{className:"flex items-start gap-2",children:[y.delivered?g.jsx(zo,{size:16,className:"mt-0.5"}):g.jsx(Xa,{size:16,className:"mt-0.5"}),g.jsxs("div",{children:[g.jsx("div",{children:y.delivery_result}),y.delivery_error&&g.jsx("div",{className:"mt-1 text-red-300",children:y.delivery_error})]})]})}),y.message&&!y.preview_messages&&g.jsx("div",{className:`p-3 rounded text-sm ${y.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,children:y.message})]}):null}),g.jsxs("div",{className:"p-4 border-t border-[#2a3a4a] flex justify-between sticky bottom-0 bg-[#1a2332]",children:[g.jsx("button",{onClick:$,className:"px-4 py-2 text-slate-400 hover:text-slate-200",children:"Close"}),y&&!y.delivered&&g.jsx("div",{className:"flex gap-2",children:y.delivery_method?g.jsxs(g.Fragment,{children:[y.live_data_summary&&y.live_data_summary.length>0&&g.jsx("button",{onClick:()=>F("send_status"),disabled:_.loading,className:"px-3 py-2 bg-slate-700 hover:bg-slate-600 rounded text-sm disabled:opacity-50",title:"Send current conditions summary",children:"Send Current Conditions"}),g.jsx("button",{onClick:()=>F("send_test"),disabled:_.loading,className:"px-3 py-2 bg-slate-700 hover:bg-slate-600 rounded text-sm disabled:opacity-50",title:"Send example alert message",children:"Send Example Alert"}),y.can_send_live&&g.jsx("button",{onClick:()=>F("send_live"),disabled:_.loading,className:"px-3 py-2 bg-accent hover:bg-accent/80 rounded text-sm disabled:opacity-50",title:"Send actual live alert",children:"Send Live Alert"})]}):g.jsx("span",{className:"px-3 py-2 text-amber-400 text-sm",children:"Configure a delivery method to send test messages"})})]})]})}),g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsx("div",{children:g.jsx("p",{className:"text-sm text-slate-500",children:"Alert delivery and scheduled reports. Rules define what triggers a notification and where it gets sent."})}),g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("button",{onClick:P,className:"p-2 text-slate-400 hover:text-slate-200 hover:bg-bg-hover rounded transition-colors",title:"Refresh",children:g.jsx(Pm,{size:18})}),g.jsxs("button",{onClick:k,disabled:!C,className:"flex items-center gap-2 px-3 py-2 text-slate-400 hover:text-slate-200 disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:[g.jsx(DS,{size:16}),"Discard"]}),g.jsxs("button",{onClick:I,disabled:c||!C,className:"flex items-center gap-2 px-4 py-2 bg-accent hover:bg-accent/80 disabled:bg-slate-700 disabled:cursor-not-allowed rounded text-white transition-colors",children:[g.jsx(cD,{size:16}),c?"Saving...":"Save"]})]})]}),h&&g.jsx("div",{className:"p-3 rounded-lg text-sm bg-red-500/10 text-red-400 border border-red-500/20",children:h}),v&&g.jsxs("div",{className:"p-3 rounded-lg text-sm bg-green-500/10 text-green-400 border border-green-500/20",children:[g.jsx(zo,{size:14,className:"inline mr-2"}),v]}),g.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6 space-y-6",children:[g.jsx(fS,{label:"Enable Notifications",checked:e.enabled,onChange:G=>t({...e,enabled:G}),helper:"Master switch for all notification delivery",info:"When disabled, no alerts or scheduled messages will be delivered. Alerts still get recorded to history."}),e.enabled&&g.jsxs(g.Fragment,{children:[" ",g.jsxs("div",{className:"space-y-3 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[g.jsx("div",{className:"flex items-center gap-2",children:g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Cold-start grace"})}),g.jsx(Wy,{label:"Grace period (seconds)",value:e.cold_start_grace_seconds??60,onChange:G=>t({...e,cold_start_grace_seconds:G}),min:0,max:600,helper:"Suppress broadcasts for this many seconds after the first event arrives",info:"When meshai starts seeing events for the first time, suppress mesh broadcasts for this many seconds to absorb any JetStream backlog. Persistence rows still get written; only broadcasts are suppressed."})]}),g.jsxs("div",{className:"space-y-3 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[g.jsx("div",{className:"flex items-center gap-2",children:g.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Band Conditions (HF propagation)"})}),g.jsx(fS,{label:"Enable scheduled band-conditions broadcasts",checked:e.band_conditions_enabled??!0,onChange:G=>t({...e,band_conditions_enabled:G}),helper:"3x/day HF propagation summary (Day/Night ratings per band group). The daily fire digest (twice-daily LLM summary of active fires + the last 24h of growth/spotting) is configured separately under Adapter Config -> fires.digest_*. See Reference -> Fire Tracker (Fusion) and Reference -> Broadcast Types for the New/Update/Active prefix system.",info:"Source priority: (1) recent SWPC readings persisted locally; (2) HamQSL.com fallback; (3) silent skip if both fail. Persistence rows are written either way for an audit trail."}),(e.band_conditions_enabled??!0)&&g.jsxs("div",{className:"grid grid-cols-3 gap-3",children:[g.jsx(sm,{label:"Slot 1",value:(e.band_conditions_schedule??["06:00","14:00","22:00"])[0]||"06:00",onChange:G=>{const Y=[...e.band_conditions_schedule??["06:00","14:00","22:00"]];Y[0]=G,t({...e,band_conditions_schedule:Y})},helper:"Morning (default 06:00 MT)"}),g.jsx(sm,{label:"Slot 2",value:(e.band_conditions_schedule??["06:00","14:00","22:00"])[1]||"14:00",onChange:G=>{const Y=[...e.band_conditions_schedule??["06:00","14:00","22:00"]];Y[1]=G,t({...e,band_conditions_schedule:Y})},helper:"Afternoon (default 14:00 MT)"}),g.jsx(sm,{label:"Slot 3",value:(e.band_conditions_schedule??["06:00","14:00","22:00"])[2]||"22:00",onChange:G=>{const Y=[...e.band_conditions_schedule??["06:00","14:00","22:00"]];Y[2]=G,t({...e,band_conditions_schedule:Y})},helper:"Night (default 22:00 MT)"})]}),g.jsx("p",{className:"text-xs text-slate-600",children:"All times are Mountain Time (America/Boise). DST handled automatically."})]}),e.toggles&&g.jsx(bet,{toggles:e.toggles,onChange:G=>t({...e,toggles:G})}),g.jsxs("div",{className:"space-y-3",children:[g.jsxs("div",{className:"flex items-center justify-between",children:[g.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Notification Rules",g.jsx(ia,{info:"Each rule is self-contained: define what triggers it (condition or schedule), where to send it (mesh, email, webhook), and behavior settings."})]}),g.jsxs("span",{className:"text-xs text-slate-500",children:[((Z=e.rules)==null?void 0:Z.length)||0," rule",(((W=e.rules)==null?void 0:W.length)||0)!==1?"s":""]})]}),(e.rules||[]).map((G,Y)=>g.jsx(yet,{rule:G,ruleIndex:Y,categories:i,regions:o,onChange:K=>{const ee=[...e.rules||[]];ee[Y]=K,t({...e,rules:ee})},onDelete:()=>{confirm(`Delete rule "${G.name||"New Rule"}"?`)&&t({...e,rules:(e.rules||[]).filter((K,ee)=>ee!==Y)})},onDuplicate:()=>z(Y),onTest:()=>V(Y)},Y)),g.jsxs("div",{className:"flex gap-2",children:[g.jsxs("button",{onClick:D,className:"flex-1 py-3 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center justify-center gap-2 transition-colors",children:[g.jsx(yv,{size:16})," Add Rule"]}),g.jsxs("div",{className:"relative",children:[g.jsxs("button",{onClick:()=>T(!S),className:"py-3 px-4 border border-dashed border-[#1e2a3a] rounded-lg text-slate-500 hover:text-slate-300 hover:border-accent flex items-center gap-2 transition-colors",children:[g.jsx(FZ,{size:16})," Add from Template"]}),S&&g.jsxs(g.Fragment,{children:[g.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>T(!1)}),g.jsxs("div",{className:"absolute right-0 top-full mt-2 z-50 w-80 bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl overflow-hidden",children:[g.jsx("div",{className:"p-2 border-b border-[#2a3a4a] text-xs text-slate-500 uppercase",children:"Rule Templates"}),a7.map(G=>g.jsxs("button",{onClick:()=>N(G.id),className:"w-full p-3 text-left hover:bg-[#2a3a4a] transition-colors",children:[g.jsx("div",{className:"font-medium text-slate-200",children:G.name}),g.jsx("div",{className:"text-xs text-slate-500 mt-0.5",children:G.description})]},G.id))]})]})]})]})]})]})]})]}):g.jsx("div",{className:"flex items-center justify-center h-64",children:g.jsx("div",{className:"text-red-400",children:"Failed to load notifications config"})})}const s7=[{id:"stream-gauges",label:"Stream Gauges",icon:LS},{id:"wildfire",label:"Wildfire",icon:IS},{id:"firms",label:"Satellite Fire Detection (FIRMS)",icon:NS},{id:"fire-tracker",label:"Fire Tracker (Fusion)",icon:yce},{id:"weather-alerts",label:"Weather Alerts",icon:pce},{id:"solar",label:"Solar & Geomagnetic",icon:HZ},{id:"ducting",label:"Tropospheric Ducting",icon:Ya},{id:"avalanche",label:"Avalanche Danger",icon:OS},{id:"traffic",label:"Traffic Flow",icon:kS},{id:"roads-511",label:"Road Conditions (511)",icon:RZ},{id:"mesh-health",label:"Mesh Health",icon:gv},{id:"broadcast-types",label:"Broadcast Types",icon:wk},{id:"reminders",label:"Reminder System",icon:rf},{id:"notifications",label:"Notifications",icon:Mm},{id:"commands",label:"Commands",icon:UZ},{id:"llm-dm",label:"LLM DM Queries",icon:uD},{id:"or-not-and",label:"OR-not-AND Architecture",icon:GZ},{id:"adapter-config",label:"Adapter Config & CODE Rule",icon:fD},{id:"curation",label:"Curation: Gauges & Towns",icon:zZ},{id:"schema",label:"Schema Migrations",icon:_ce},{id:"api",label:"API Reference",icon:gce}];function ir({color:e}){const t={green:"bg-green-500",yellow:"bg-yellow-500",orange:"bg-orange-500",red:"bg-red-500",black:"bg-slate-800 border border-slate-600"};return g.jsx("span",{className:`inline-block w-3 h-3 rounded-full ${t[e]}`})}function St({headers:e,rows:t}){return g.jsx("div",{className:"overflow-x-auto my-4",children:g.jsxs("table",{className:"w-full text-sm",children:[g.jsx("thead",{children:g.jsx("tr",{className:"bg-[#1a2332] border-b border-[#2a3a4a]",children:e.map((r,n)=>g.jsx("th",{className:"px-4 py-2 text-left text-slate-400 font-medium",children:r},n))})}),g.jsx("tbody",{children:t.map((r,n)=>g.jsx("tr",{className:`border-b border-[#1e2a3a] ${n%2===0?"bg-[#0d1219]":"bg-[#0a0e17]"}`,children:r.map((i,a)=>g.jsx("td",{className:"px-4 py-2 text-slate-300",children:i},a))},n))})]})})}function Rt({href:e,children:t}){return g.jsxs("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:"text-accent hover:underline inline-flex items-center gap-1",children:[t," ",g.jsx(Sd,{size:12})]})}function ye({children:e}){return g.jsx("h3",{className:"text-lg font-semibold text-slate-200 mt-6 mb-3",children:e})}function pl({children:e}){return g.jsx("h4",{className:"text-base font-medium text-slate-300 mt-4 mb-2",children:e})}function ce({children:e}){return g.jsx("code",{className:"font-mono text-accent bg-[#1a2332] px-1 rounded",children:e})}function br({id:e,title:t,children:r}){return g.jsxs("section",{id:e,className:"mb-12 scroll-mt-6",children:[g.jsx("h2",{className:"text-2xl font-bold text-slate-100 mb-4 pb-2 border-b border-[#2a3a4a]",children:t}),g.jsx("div",{className:"text-slate-300 leading-relaxed space-y-4",children:r})]})}function Tet(){const e=pv(),[t,r]=H.useState(""),[n,i]=H.useState("stream-gauges"),a=H.useRef(null);H.useEffect(()=>{const l=e.hash.replace("#","");if(l&&s7.find(u=>u.id===l)){i(l);const u=document.getElementById(l);u&&u.scrollIntoView({behavior:"smooth"})}},[e.hash]);const o=s7.filter(l=>l.label.toLowerCase().includes(t.toLowerCase())),s=l=>{i(l);const u=document.getElementById(l);u&&u.scrollIntoView({behavior:"smooth"}),window.history.replaceState(null,"",`#${l}`)};return g.jsxs("div",{className:"flex h-full -m-6",children:[g.jsxs("aside",{className:"w-64 flex-shrink-0 bg-bg-card border-r border-border overflow-y-auto",children:[g.jsx("div",{className:"p-4 border-b border-border",children:g.jsxs("div",{className:"relative",children:[g.jsx(jS,{size:16,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),g.jsx("input",{type:"text",value:t,onChange:l=>r(l.target.value),placeholder:"Search topics...",className:"w-full pl-9 pr-3 py-2 bg-[#0a0e17] border border-[#1e2a3a] rounded text-sm text-slate-200 focus:outline-none focus:border-accent placeholder-slate-600"})]})}),g.jsx("nav",{className:"py-2",children:o.map(l=>{const u=l.icon,c=n===l.id;return g.jsxs("button",{onClick:()=>s(l.id),className:`w-full flex items-center gap-3 px-4 py-2.5 text-sm text-left transition-colors ${c?"text-accent bg-accent/10 border-l-2 border-accent":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover border-l-2 border-transparent"}`,children:[g.jsx(u,{size:16}),l.label]},l.id)})})]}),g.jsx("div",{ref:a,className:"flex-1 overflow-y-auto p-6",children:g.jsxs("div",{className:"max-w-4xl",children:[g.jsx("p",{className:"text-slate-400 mb-8",children:"Everything you need to understand and configure MeshAI's monitoring and alerting systems."}),g.jsxs(br,{id:"stream-gauges",title:"Stream Gauges",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"MeshAI watches river and stream levels at gauges you configure. Each gauge reports two things:"}),g.jsxs("p",{children:[g.jsx("strong",{children:"Water Level (Gage Height)"}),` — how high the water is, measured in feet. Important: this is NOT the depth of the river. It's the height above a fixed measuring point that's different at every gauge. A reading of "10 feet" at one gauge means something completely different than "10 feet" at another. You can only compare readings from the SAME gauge over time.`]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Flow (Discharge)"}),` — how much water is moving past the gauge, in cubic feet per second (CFS). Think of it as the river's "throughput." For scale:`]}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsx("li",{children:"A small creek: 50-200 CFS"}),g.jsx("li",{children:"A mid-size river: 1,000-5,000 CFS"}),g.jsx("li",{children:"A big river in spring runoff: 10,000+ CFS"})]}),g.jsx(ye,{children:"When Does It Flood?"}),g.jsxs("p",{children:["Flood levels are set by the ",g.jsx("strong",{children:"National Weather Service"}),', not USGS. NWS looks at each specific gauge location and decides "at what water level does the road flood? At what level do buildings get water?" Those levels are different everywhere.']}),g.jsxs("p",{children:[g.jsx("strong",{children:"Action Stage"})," — water is rising, time to start paying attention. Usually still inside the riverbanks."]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Minor Flood"})," — low-lying roads start getting water on them. NWS issues a Flood Advisory."]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Moderate Flood"})," — water in buildings near the river. Some people need to evacuate. NWS issues a Flood Warning."]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Major Flood"})," — widespread flooding. Many people evacuating. Serious property damage."]}),g.jsx("p",{children:"MeshAI automatically looks up the flood levels for your gauge from NWS when you add a site. Some remote gauges don't have flood levels assigned — for those, you set them manually if you know what water levels cause problems in your area."}),g.jsx(ye,{children:"Low Water / Drought"}),g.jsx("p",{children:`There's no official "drought stage" for most gauges. If you need to monitor low water (irrigation, fish habitat), set a manual low-water threshold based on what you know about your local river.`}),g.jsx(ye,{children:"Setting It Up"}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:["Find your gauge at ",g.jsx(Rt,{href:"https://waterdata.usgs.gov/nwis",children:"waterdata.usgs.gov/nwis"})]}),g.jsxs("li",{children:["Copy the site number (like ",g.jsx(ce,{children:"13090500"}),")"]}),g.jsx("li",{children:"Add it in Config → Environmental → USGS"}),g.jsx("li",{children:"MeshAI auto-fills the gauge name and flood levels from NWS"})]}),g.jsx("p",{children:"If NWS flood levels don't populate, your gauge may not have them. Set manual thresholds if you know your local conditions."}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://waterdata.usgs.gov/nwis",children:"USGS Water Data"})," — find gauges near you"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://water.noaa.gov",children:"NWS Water Prediction Service"})," — flood forecasts and thresholds"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.usgs.gov/special-topics/water-science-school/science/how-streamflow-measured",children:"Understanding Streamflow"})," — USGS explainer"]})]})]}),g.jsxs(br,{id:"wildfire",title:"Wildfire",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"MeshAI tracks active wildfire perimeters from the National Interagency Fire Center (NIFC). For each fire, you see the name, size, how much is contained, and how far it is from your mesh nodes."}),g.jsx(ye,{children:"Fire Size — How Big Is It?"}),g.jsx(St,{headers:["Size","What That Means"],rows:[["10 acres","Small fire. Usually handled quickly by initial crews."],["100 acres","Notable fire. Active firefighting effort."],["1,000 acres","Large fire. Major resources being deployed."],["10,000+ acres","Very large fire. Multiple teams, aircraft, heavy equipment."],["100,000+ acres","Mega-fire. These make the national news."]]}),g.jsx("p",{children:"For reference, 1,000 acres is about 1.5 square miles."}),g.jsx(ye,{children:"Containment — Is It Under Control?"}),g.jsx("p",{children:"Containment means the percentage of the fire's edge where firefighters have built a control line (a cleared strip to stop the fire from spreading further). It does NOT mean the fire is out inside that line."}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"0-30%"})," — Essentially uncontrolled. The fire goes where it wants."]}),g.jsxs("li",{children:[g.jsx("strong",{children:"50%"})," — Good progress, but half the edge can still grow."]}),g.jsxs("li",{children:[g.jsx("strong",{children:"80%+"})," — Well controlled. Major growth unlikely."]}),g.jsxs("li",{children:[g.jsx("strong",{children:"100%"}),' — The edge is fully controlled. But the fire may STILL be actively burning inside. "100% contained" does NOT mean "out."']})]}),g.jsx(ye,{children:"How Far Away Should I Worry?"}),g.jsx(St,{headers:["Distance","What To Do"],rows:[[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"red"})," Under 5 km (3 miles)"]}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Immediate threat."})," This is evacuation-order range. Embers can fly this far in wind."]})],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"orange"})," 5-15 km (3-10 miles)"]}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Prepare."})," The fire could reach you in hours under bad conditions. Have a plan."]})],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"yellow"})," 15-30 km (10-20 miles)"]}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Watch."})," Smoke is likely. Wind shifts could change things fast."]})],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"green"})," Over 30 km (20 miles)"]}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Awareness."})," Keep an eye on it, but no immediate threat."]})]]}),g.jsx("p",{children:"How fast can a fire travel? In grass with wind: up to 14 mph. In heavy timber: 1-6 mph. A fire 10 miles away could theoretically reach you in 1-2 hours under worst-case conditions, but typical spread is much slower."}),g.jsx(ye,{children:"Which Matters More — Size or Distance?"}),g.jsxs("p",{children:[g.jsx("strong",{children:"Distance is the immediate concern."})," A small uncontained fire 10 km away is more dangerous right now than a huge fire 50 km away. But big fires have more energy and can grow fast under wind shifts — keep watching them."]}),g.jsx(ye,{children:"Setting It Up"}),g.jsxs("p",{children:["Just configure your state code (like ",g.jsx(ce,{children:"US-ID"})," for Idaho) in Config → Environmental → Fires. MeshAI polls NIFC every 10 minutes for active fires in that state and computes the distance to your mesh nodes automatically."]}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://inciweb.nwcg.gov",children:"InciWeb"})," — detailed incident information"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://data-nifc.opendata.arcgis.com",children:"NIFC Fire Map"})," — raw perimeter data"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.ready.gov/wildfires",children:"Ready.gov Wildfires"})," — preparedness guide"]})]})]}),g.jsxs(br,{id:"firms",title:"Satellite Fire Detection (FIRMS)",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:`NASA's VIIRS satellites orbit the Earth and look for heat signatures on the ground. When they see something hot — a fire, a factory, a sunlit building — they flag it as a "hotspot." MeshAI checks these detections for your area.`}),g.jsxs("p",{children:[g.jsx("strong",{children:"Why this matters"}),": satellite hotspots show up ",g.jsx("strong",{children:"hours before"})," official fire perimeters are mapped. If a new fire starts near your mesh, the satellite might see it before anyone on the ground reports it."]}),g.jsx(ye,{children:"Confidence — Is It Really a Fire?"}),g.jsx("p",{children:"Each detection gets a confidence rating:"}),g.jsx(St,{headers:["Confidence","What It Means"],rows:[["High","Almost certainly a real fire. Strong heat signature."],["Nominal","Probably a real fire. Most actual fires get this rating."],["Low","Maybe a fire, maybe not. Could be a hot roof, sun reflecting off water, a factory, or a gas flare. Lots of false alarms."]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Recommendation"}),`: Set the filter to "Nominal + High." If you include "Low" you'll get alerts for every hot parking lot on a summer day.`]}),g.jsx(ye,{children:"FRP — How Intense Is It?"}),g.jsx("p",{children:'FRP (Fire Radiative Power) measures the heat output in megawatts. Think of it as "how hot is this thing":'}),g.jsx(St,{headers:["FRP","What It Probably Is"],rows:[["Under 5 MW","Hot surface, small agricultural burn, gas flare, or warm ground"],["5-50 MW","An actual fire — brush fire, grass fire, typical wildfire"],["50-300 MW","Intense fire — trees fully burning, active fire front"],["Over 300 MW","Extreme fire — major wildfire in full force"]]}),g.jsx("p",{children:"Setting the minimum FRP to 5 MW filters out most industrial and agricultural false alarms."}),g.jsx(ye,{children:"New Ignition Detection"}),g.jsxs("p",{children:["MeshAI cross-references satellite hotspots against known NIFC fire perimeters. If a hotspot is NOT near any known fire, it gets flagged as a ",g.jsx("strong",{children:"potential new ignition"})," — maybe a new fire just started. These get elevated priority regardless of confidence level."]}),g.jsx(ye,{children:"Timing"}),g.jsxs("p",{children:["Satellite data arrives ",g.jsx("strong",{children:"1-3 hours"})," after the satellite passes overhead. Each location gets observed about ",g.jsx("strong",{children:"6 times per day"}),` across all satellites, so there are multi-hour gaps. This is not real-time — it's "pretty recent."`]}),g.jsx(ye,{children:"Getting an API Key"}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:["Go to ",g.jsx(Rt,{href:"https://firms.modaps.eosdis.nasa.gov/api/area/",children:"FIRMS API page"})]}),g.jsx("li",{children:'Click "Get MAP_KEY"'}),g.jsx("li",{children:"Register for a free Earthdata account"}),g.jsx("li",{children:"Your key arrives by email"}),g.jsx("li",{children:"Enter it in Config → Environmental → FIRMS"})]}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://firms.modaps.eosdis.nasa.gov",children:"FIRMS Fire Map"})," — see hotspots on a map"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://earthdata.nasa.gov/data/tools/firms/faq",children:"FIRMS FAQ"})," — how it works"]})]})]}),g.jsxs(br,{id:"fire-tracker",title:"Fire Tracker (Fusion)",children:[g.jsx("p",{children:"FIRMS hotspots are fast but noisy; WFIGS incidents are accurate but slow. The Fire Tracker fuses both feeds and a per-pixel attribution graph so a single fire's name, declared acreage, real-time perimeter movement, and spotting events all land as separate broadcasts on the mesh."}),g.jsx(ye,{children:"What you'll see on the mesh"}),g.jsx("p",{children:"Six fire-family alert categories, in order of when they fire during an incident's lifecycle:"}),g.jsx(St,{headers:["Category","Severity","Trigger","Example broadcast"],rows:[[g.jsx(ce,{children:"unattributed_hotspot_cluster"}),"Priority","3+ FIRMS pixels within 1 mi over 60 min, no WFIGS match — possible new ignition before NIFC declares it",g.jsx("span",{className:"text-amber-300",children:"🔥 Possible new fire: 3 hotspots within 1 mi @ 42.93,-114.45 (combined 78 MW)"})],[g.jsx(ce,{children:"wildfire_declared"}),"Priority","WFIGS first-sight of a new IRWIN incident — the official 'this is a fire and here is its name' record",g.jsx("span",{className:"text-amber-300",children:"🔥 New: Cache Peak Fire (WF), 3 mi N of Almo: 250 ac, 0% contained"})],[g.jsx(ce,{children:"wildfire_growth"}),"Priority","Per-pass centroid drift >= 0.5 mi (configurable) between consecutive satellite passes — the fire's footprint moved",g.jsx("span",{className:"text-amber-300",children:"🔥 Cache Peak Fire moving NE 1.2 mi/h, ~3 mi from Almo"})],[g.jsx(ce,{children:"wildfire_spotting"}),"Immediate","FIRMS pixel attributed to a tracked fire but >= 1.5 mi (configurable) outside its prior-pass convex-hull perimeter — ember spread",g.jsx("span",{className:"text-amber-300",children:"🔥 Possible spotting 2.1 mi NE of Cache Peak Fire perimeter"})],[g.jsx(ce,{children:"wildfire_incident"}),"Priority","WFIGS acreage or containment increased on a fire already broadcast once (the Update path; the New path uses wildfire_declared)",g.jsx("span",{className:"text-amber-300",children:"🔥 Update: Cache Peak Fire: 1,847 ac, 23% contained"})],[g.jsx(ce,{children:"wildfire_halted"}),"Routine","No FIRMS pixels attributed for 12+ hours (configurable) — fire stalled or out",g.jsx("span",{className:"text-amber-300",children:"🔥 Cache Peak Fire no growth in 14h"})]]}),g.jsx(ye,{children:"Daily LLM digest"}),g.jsxs("p",{children:["Twice a day (default 06:00 and 18:00 Mountain Time) the bot runs an LLM summary across every active fire and the last 24 h of growth + spotting events, then broadcasts one terse line to the mesh. Shape:"," ",g.jsx("span",{className:"text-amber-300",children:'"Fires today: Cache Peak 1,847 ac +200 NE; Twin Peaks 320 ac stable; possible new fire 15 mi from Cache Peak."'})," ","Configure the schedule and timezone under ",g.jsx(ce,{children:"fires.digest_*"})," ","keys on the Adapter Config page."]}),g.jsx(ye,{children:"How attribution works"}),g.jsxs("p",{children:["When a FIRMS hotspot lands, the bot walks every active fire (those not yet tombstoned) and matches by Haversine distance to that fire's running centroid. If the pixel is within the fire's ",g.jsx(ce,{children:"spread_radius_mi"})," ","(default 5 mi, per-fire override available) the pixel is attributed and appended to that fire's growth history. The centroid then re-computes as the median of the last 24 h of attributed pixels, so single-pixel outliers don't drag the perimeter around."]}),g.jsxs("p",{children:["Pixels that match no fire feed the cluster detector instead: if at least"," ",g.jsx(ce,{children:"cluster_min_pixels"})," (default 3) lie within"," ",g.jsx(ce,{children:"cluster_max_radius_mi"})," (default 1.0) over"," ",g.jsx(ce,{children:"cluster_time_window_minutes"})," (default 60), the bot fires a single ",g.jsx(ce,{children:"unattributed_hotspot_cluster"})," broadcast and marks the member pixels so a fourth arrival doesn't re-fire the same cluster."]}),g.jsx(ye,{children:"How movement is computed"}),g.jsxs("p",{children:["Each VIIRS pass groups pixels into a ",g.jsx(ce,{children:"pass_id"})," (satellite + 90-min bucket). When a pixel from a different bucket arrives, the prior pass closes: its convex hull becomes the perimeter, its median centroid becomes the comparison anchor, and the bot computes drift (Haversine to the previous pass's centroid), an 8-way compass bearing, and a wall-clock mi/h speed. If drift ≥ ",g.jsx(ce,{children:"growth_drift_threshold_mi"})," the"," ",g.jsx(ce,{children:"wildfire_growth"})," broadcast fires."]}),g.jsx(ye,{children:"How spotting is detected"}),g.jsxs("p",{children:["Once a pass closes its perimeter (a GeoJSON polygon stored on the fire), every subsequent attributed pixel runs a point-in-polygon test. Pixels outside the polygon with a vertex distance ≥"," ",g.jsx(ce,{children:"spotting_distance_threshold_mi"})," (default 1.5) fire the"," ",g.jsx(ce,{children:"wildfire_spotting"})," broadcast at ",g.jsx("em",{children:"immediate"})," severity — spread beyond the existing perimeter is the most actionable fire signal we emit. A per-fire cooldown (",g.jsx(ce,{children:"spotting_cooldown_seconds"}),", default 1 h) prevents an ember burst in the same area from spamming the mesh."]}),g.jsx(ye,{children:"Tunable knobs (Adapter Config → fires)"}),g.jsx(St,{headers:["Key","Default","What it does"],rows:[[g.jsx(ce,{children:"spread_radius_mi_default"}),"5.0 mi","Attribution radius for FIRMS → fire matching. Per-fire override in the fires.spread_radius_mi column."],[g.jsx(ce,{children:"growth_drift_threshold_mi"}),"0.5 mi","Per-pass centroid drift at or above this fires wildfire_growth."],[g.jsx(ce,{children:"halt_passes_threshold"}),"2","Consecutive empty satellite passes before wildfire_halted (documented; the time gate below is the operational rule)."],[g.jsx(ce,{children:"halt_minimum_seconds"}),"43,200 (12 h)","Minimum elapsed seconds since the most recent attributed pixel before wildfire_halted can fire."],[g.jsx(ce,{children:"spotting_distance_threshold_mi"}),"1.5 mi","Distance from prior-pass perimeter that fires wildfire_spotting."],[g.jsx(ce,{children:"spotting_cooldown_seconds"}),"3,600 (1 h)","Minimum seconds between consecutive spotting broadcasts per fire."],[g.jsx(ce,{children:"digest_enabled"}),"true","Master toggle for the twice-daily digest."],[g.jsx(ce,{children:"digest_schedule"}),'["06:00","18:00"]',"Local-time slots for the digest."],[g.jsx(ce,{children:"digest_timezone"}),"America/Boise","IANA tz for digest_schedule."],[g.jsx(ce,{children:"digest_max_chars"}),"200","Hard cap on the digest wire (the LLM is told to fit; the chunker enforces)."]]})]}),g.jsxs(br,{id:"weather-alerts",title:"Weather Alerts",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"MeshAI watches for NWS (National Weather Service) alerts affecting your area — warnings, watches, and advisories."}),g.jsx(ye,{children:"Alert Severity — How Serious Is It?"}),g.jsx(St,{headers:["Severity","What It Means","Example"],rows:[["Extreme","Life-threatening. The most serious events.","Tornado Emergency, Hurricane Warning, Tsunami Warning"],["Severe","Dangerous. Take protective action.","Tornado Warning, Flash Flood Warning, Blizzard Warning, Red Flag Warning"],["Moderate","Be prepared. Could become dangerous.","Winter Weather Advisory, Wind Advisory, Flood Watch, Heat Advisory"],["Minor","Good to know. Probably won't hurt anyone.","Special Weather Statement, Air Quality Alert"]]}),g.jsx(ye,{children:"When Should I Act? (Urgency)"}),g.jsx(St,{headers:["Urgency","What It Means"],rows:[["Immediate","Do something NOW"],["Expected","Do something within the hour"],["Future","Coming in the next several hours"],["Past","It's over — NWS is clearing the alert"]]}),g.jsx(ye,{children:"How Sure Are They? (Certainty)"}),g.jsx(St,{headers:["Certainty","What It Means"],rows:[["Observed","It's happening right now. Verified."],["Likely","More than 50% chance"],["Possible","Could happen, but less than 50%"],["Unlikely","Probably won't, but mentioned for awareness"]]}),g.jsx(ye,{children:"These Are Separate Scales"}),g.jsx("p",{children:'A single alert has all three. A hurricane warning for next week is "Severe + Future + Likely." A tornado spotted on the ground is "Extreme + Immediate + Observed." An air quality advisory is "Minor + Expected + Possible."'}),g.jsx(ye,{children:"What Minimum Severity Should I Set?"}),g.jsx(St,{headers:["Setting","What You Get","What You Miss"],rows:[["Minor","Everything — high volume","Nothing"],[g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Moderate"})," ✓"]}),"Watches, Advisories, and Warnings","Special Weather Statements"],["Severe","Only Warnings — things happening NOW","Watches (which give you hours of advance warning)"],["Extreme","Only the rarest events","Most Tornado and Severe Thunderstorm Warnings"]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Moderate is recommended."})," It catches Watches (advance warning that conditions may worsen) and Advisories (conditions exist but aren't severe) while filtering out the informational stuff."]}),g.jsx(ye,{children:"Finding Your NWS Zone"}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:["Go to ",g.jsx(Rt,{href:"https://www.weather.gov",children:"weather.gov"})]}),g.jsx("li",{children:"Enter your location"}),g.jsxs("li",{children:["Find your zone code at ",g.jsx(Rt,{href:"https://www.weather.gov/pimar/PubZone",children:"NWS Zone Map"})]}),g.jsxs("li",{children:["Zone codes look like: ",g.jsx(ce,{children:"IDZ016"}),", ",g.jsx(ce,{children:"UTZ040"}),", etc."]})]}),g.jsx(ye,{children:"The User-Agent Field"}),g.jsx("p",{children:"NWS wants to know who's using their API — not for approval, just so they can contact you if something breaks. You make it up:"}),g.jsx("p",{children:g.jsx(ce,{children:"(meshai, you@email.com)"})}),g.jsx("p",{children:"No registration. No waiting. Just type it in."}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://alerts.weather.gov",children:"NWS Active Alerts"})," — see current alerts"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.weather.gov/documentation/services-web-api",children:"NWS API Docs"})," — technical details"]})]})]}),g.jsxs(br,{id:"solar",title:"Solar & Geomagnetic Conditions",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"MeshAI tracks space weather — solar activity and its effects on Earth's magnetic field. This matters for radio operators because the sun directly controls how well HF radio works, and major solar events can affect all radio communications."}),g.jsx(ye,{children:"Solar Flux Index (SFI)"}),g.jsx("p",{children:'Think of SFI as a "how active is the sun" number. Higher = better for HF radio, but also higher risk of solar flares.'}),g.jsx(St,{headers:["SFI","What It Means for You"],rows:[["Below 70","Quiet sun. Higher HF bands (10m, 15m) are probably dead. Stick to lower bands."],["70-90","Getting better. Some openings on 15m and above, but inconsistent."],["90-120","Good. Most HF bands work. Reliable contacts on 20m and 15m."],["120-170","Great. All HF bands open. 10m works for worldwide contacts."],["Above 170","Excellent. Best HF conditions — but watch for flares."]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Quick rule"}),": SFI above 90 and Kp below 4 = good day for HF radio."]}),g.jsx(ye,{children:"Kp Index"}),g.jsx("p",{children:"Kp measures how disturbed Earth's magnetic field is, on a 0-9 scale. Higher = more disturbance = worse for HF radio but better for aurora viewing."}),g.jsx(St,{headers:["Kp","What It Means for You"],rows:[["0-2","Quiet. Best HF conditions."],["3","Slightly unsettled. You probably won't notice."],["4","Active. Some noise and fading on HF, especially if you're at higher latitudes."],[g.jsx("strong",{children:"5"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Minor storm (G1)."})," HF noticeably degraded. Aurora visible at high latitudes (~60°N)."]})],[g.jsx("strong",{children:"6"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Moderate storm (G2)."})," HF getting rough. Aurora moving south (~55°N)."]})],[g.jsx("strong",{children:"7"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Strong storm (G3)."})," HF unreliable for 1-2 days. Aurora at mid-latitudes."]})],[g.jsx("strong",{children:"8-9"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Severe/Extreme storm."})," HF may black out completely. Aurora visible at very low latitudes. Power grid stress possible."]})]]}),g.jsx(ye,{children:"R / S / G Scales"}),g.jsx("p",{children:"NOAA's shorthand for three types of space weather events:"}),g.jsx(pl,{children:"R (Radio Blackouts) — from solar flares:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsx("li",{children:"R1-R2: Brief HF disruption. You might not notice."}),g.jsx("li",{children:"R3: HF goes out for about an hour on the sunlit side of Earth."}),g.jsx("li",{children:"R4-R5: HF dead for hours. Serious."})]}),g.jsx(pl,{children:"S (Solar Radiation Storms) — from energetic particles:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsx("li",{children:"Mostly affects polar regions and satellites"}),g.jsx("li",{children:"S3+: Polar HF goes out entirely"})]}),g.jsx(pl,{children:"G (Geomagnetic Storms) — from solar wind disturbances:"}),g.jsx("ul",{className:"list-disc list-inside ml-4 space-y-1",children:g.jsx("li",{children:"Same as the Kp scale: G1 = Kp 5, up to G5 = Kp 9"})}),g.jsx(ye,{children:"Bz — The Storm Predictor"}),g.jsx("p",{children:"Bz measures the direction of the solar wind's magnetic field. When it points south (negative values), the solar wind can dump energy into Earth's magnetic field, causing storms."}),g.jsx(St,{headers:["Bz","What It Means"],rows:[["Positive","All good. Solar wind bouncing off."],["0 to -5","Slight coupling. Nothing dramatic."],["-5 to -10","Things starting to pick up. Storm possible."],["Below -10","Storm likely. Kp will start climbing."],["Below -20","Severe storm probable."]]}),g.jsx("p",{children:"Bz can change fast — minute to minute. What matters is whether it stays negative for hours, not brief dips."}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.swpc.noaa.gov",children:"SWPC Space Weather Dashboard"})," — live data"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.swpc.noaa.gov/noaa-scales-explanation",children:"NOAA Space Weather Scales"})," — what R/S/G mean"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.hamqsl.com/solar.html",children:"HamQSL Solar Page"})," — ham-friendly display"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.swpc.noaa.gov/products/planetary-k-index",children:"Planetary K-Index"})," — live Kp"]})]})]}),g.jsxs(br,{id:"ducting",title:"Tropospheric Ducting",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:'Sometimes the atmosphere creates an invisible "pipe" that traps radio signals and carries them much farther than normal. This is called tropospheric ducting. It mostly affects VHF and UHF frequencies.'}),g.jsx("p",{children:"MeshAI watches for these conditions by analyzing weather data (temperature and humidity at different altitudes) over your mesh area."}),g.jsx(ye,{children:"How Do I Know If Ducting Is Happening?"}),g.jsx("p",{children:'MeshAI reports a "condition" based on the atmospheric profile:'}),g.jsx(St,{headers:["Condition","What It Means"],rows:[["Normal","Standard propagation. Nothing unusual."],["Super-refraction","Slightly enhanced range. You might hear a few more distant stations than usual."],["Surface Duct","Radio signals trapped near the ground. You may hear stations hundreds of km away that you've never heard before."],["Elevated Duct",'Same effect but the "pipe" is up in the atmosphere. Affects signals passing through that altitude.']]}),g.jsx(ye,{children:"What You'll Actually Notice"}),g.jsx("p",{children:"When ducting happens on your mesh:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsx("li",{children:"Distant repeaters you've never heard suddenly come in"}),g.jsx("li",{children:"Nodes appear from far outside your normal range"}),g.jsx("li",{children:"You hear FM radio stations from other cities"}),g.jsx("li",{children:"ADS-B flight tracking range gets much longer"}),g.jsx("li",{children:"There might be interference from distant stations on your frequency"})]}),g.jsx(ye,{children:"The dM/dz Number"}),g.jsx("p",{children:`The dashboard shows a "dM/dz" value in "M-units/km." You don't need to understand the math — just know:`}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"Around 118"})," = normal atmosphere"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Below 79"})," = enhanced propagation starting"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Below 0 (negative)"})," = ducting is happening"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Below -50"})," = strong ducting — classic VHF/UHF DX event"]})]}),g.jsx(ye,{children:"When Does Ducting Happen?"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsx("li",{children:"Under high-pressure weather systems (clear, stable air)"}),g.jsx("li",{children:"When warm air sits on top of cool air (temperature inversion)"}),g.jsx("li",{children:"Most common in late summer and early fall"}),g.jsx("li",{children:"Strongest along coastlines and over water"}),g.jsx("li",{children:"In mountain valleys: cold air pooling in fall/winter can create surface ducts"})]}),g.jsx(ye,{children:"Setting It Up"}),g.jsx("p",{children:"Just configure the latitude and longitude of the center of your mesh area in Config → Environmental → Ducting. MeshAI checks the atmospheric conditions there every 3 hours using free weather model data. No API key needed."}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://dxinfocentre.com/tropo.html",children:"Tropo Forecast Maps (Hepburn)"})," — 6-day tropo prediction"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://dxmaps.com",children:"DX Maps"})," — real-time VHF/UHF propagation reports"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://en.wikipedia.org/wiki/Tropospheric_propagation",children:"Wikipedia: Tropospheric Propagation"})," — background"]})]})]}),g.jsxs(br,{id:"avalanche",title:"Avalanche Danger",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"MeshAI pulls avalanche forecasts from your regional avalanche center during winter months. The danger scale has 5 levels and it's the same across all of North America."}),g.jsx(ye,{children:"The Danger Scale"}),g.jsx(St,{headers:["Level","Name","Color","What To Do"],rows:[["1","Low",g.jsx(ir,{color:"green"}),"Generally safe. Normal caution in steep terrain."],["2","Moderate",g.jsx(ir,{color:"yellow"}),"Be careful on specific terrain features. Evaluate conditions."],["3","Considerable",g.jsx(ir,{color:"orange"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"DANGEROUS."}),` This is where most people die in avalanches — they see "3 out of 5" and think it's fine. It's not. Use extreme caution.`]})],["4","High",g.jsx(ir,{color:"red"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Very dangerous."})," Stay off anything steep."]})],["5","Extreme",g.jsx(ir,{color:"black"}),g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Don't go out."})," Avalanches are happening on their own."]})]]}),g.jsx(ye,{children:"The Most Important Thing to Know"}),g.jsxs("p",{children:[g.jsx("strong",{children:"Level 3 (Considerable) kills more people than any other level."}),' People look at "3 out of 5" and think "middle of the road, probably okay." In reality, the risk roughly doubles at each step up the scale. Level 3 is where dangerous conditions overlap with people thinking they can handle it.']}),g.jsx(ye,{children:"Seasonal"}),g.jsx("p",{children:'MeshAI only checks avalanche conditions during winter months (configurable, default December through April). Outside season, it shows "off season" and saves API calls.'}),g.jsx(ye,{children:"Finding Your Avalanche Center"}),g.jsxs("p",{children:["Go to ",g.jsx(Rt,{href:"https://avalanche.org/avalanche-centers/",children:"avalanche.org/avalanche-centers/"})," for a map. Common center codes:"]}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"SNFAC"})," — Sawtooth (central Idaho)"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"UAC"})," — Utah"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"NWAC"})," — Cascades/Olympics (WA/OR)"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"CAIC"})," — Colorado"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"SAC"})," — Sierra Nevada (CA)"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GNFAC"})," — Gallatin (SW Montana)"]})]}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://avalanche.org",children:"Avalanche.org"})," — US forecasts"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://avalanche.org/avalanche-encyclopedia/human/resources/north-american-public-avalanche-danger-scale/",children:"Avalanche Danger Scale"})," — full scale explanation"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://kbyg.org",children:"Know Before You Go"})," — avalanche awareness"]})]})]}),g.jsxs(br,{id:"traffic",title:"Traffic Flow",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"MeshAI monitors traffic speed on road segments you configure, using data from TomTom (real vehicles with navigation apps reporting their speed)."}),g.jsx(ye,{children:"Speed Ratio — The Key Number"}),g.jsx("p",{children:'MeshAI compares current speed to "free-flow speed" (what traffic normally does when the road is empty). The ratio tells you how congested it is:'}),g.jsx(St,{headers:["Ratio","What It Means"],rows:[[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"green"})," Above 85%"]}),"Normal. Traffic flowing fine."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"yellow"})," 65-85%"]}),"Slow. Heavier than usual but moving."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"orange"})," 40-65%"]}),"Congested. Significant delays."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"red"})," Below 40%"]}),"Gridlock. Barely moving."]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Note"}),`: "free-flow speed" is NOT the speed limit. It's what traffic actually does on that road when nobody's in the way. Drivers often exceed speed limits on open highways.`]}),g.jsx(ye,{children:"Confidence — Can You Trust the Data?"}),g.jsx("p",{children:"TomTom's confidence score tells you how much of the reading comes from real vehicles right now vs historical averages:"}),g.jsx(St,{headers:["Confidence","What It Means"],rows:[["Above 0.9","Very reliable — lots of real-time probe data"],["0.7-0.9","Good — mix of real-time and historical"],["Below 0.7",g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Unreliable"})," — mostly guessing from historical patterns. Don't alert on this."]})]]}),g.jsx("p",{children:"Set minimum confidence to 0.7 to avoid false congestion alerts at night or on rural roads where few probe vehicles drive."}),g.jsx(ye,{children:"Setting Up Corridors"}),g.jsx("p",{children:'Each "corridor" is a point on a road you want to monitor. To add one:'}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsx("li",{children:"Go to Google Maps, find the road"}),g.jsx("li",{children:`Right-click the road → "What's here?" → copy the coordinates`}),g.jsx("li",{children:"Add the corridor in Config with a name and those coordinates"}),g.jsx("li",{children:"TomTom finds the nearest road segment automatically"})]}),g.jsx(ye,{children:"Getting an API Key"}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:["Sign up at ",g.jsx(Rt,{href:"https://developer.tomtom.com",children:"developer.tomtom.com"})," (free)"]}),g.jsx("li",{children:"Create an app → get your API key"}),g.jsx("li",{children:"Free tier: 2,500 requests/day (plenty for 5-10 corridors)"})]}),g.jsx(ye,{children:"Learn More"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(Rt,{href:"https://developer.tomtom.com",children:"TomTom Developer Portal"})," — API docs and key signup"]}),g.jsxs("li",{children:[g.jsx(Rt,{href:"https://www.tomtom.com/traffic-index/",children:"TomTom Traffic Index"})," — city congestion rankings"]})]})]}),g.jsxs(br,{id:"roads-511",title:"Road Conditions (511)",children:[g.jsx(ye,{children:"What You're Looking At"}),g.jsx("p",{children:"511 systems report road closures, construction, weather events, mountain pass conditions, and incidents. Every state runs their own 511 system — there is no national API."}),g.jsx(ye,{children:"Setting It Up"}),g.jsx("p",{children:"You need to find YOUR state's 511 developer API. MeshAI does not include a default URL because every state is different. Some states have free public APIs, some require registration, and some don't have developer APIs at all."}),g.jsx("p",{children:"Configure in Config → Environmental → 511:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"Base URL"})," — your state's API endpoint"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"API Key"})," — if required by your state"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Endpoints"})," — which data feeds to poll (varies by state)"]})]}),g.jsx(ye,{children:"Learn More"}),g.jsx("p",{children:"Check your state's 511 or DOT website for developer information."})]}),g.jsxs(br,{id:"mesh-health",title:"Mesh Health",children:[g.jsx(ye,{children:"Health Score"}),g.jsx("p",{children:"MeshAI computes a 0-100 health score for your mesh network by looking at five areas, each weighted differently:"}),g.jsx(St,{headers:["Pillar","Weight","What It Measures"],rows:[[g.jsx("strong",{children:"Infrastructure"}),"30%","Are your routers online?"],[g.jsx("strong",{children:"Utilization"}),"25%","Is the radio channel congested?"],[g.jsx("strong",{children:"Coverage"}),"20%","Do nodes have redundant paths to gateways?"],[g.jsx("strong",{children:"Behavior"}),"15%","Are any nodes flooding the channel?"],[g.jsx("strong",{children:"Power"}),"10%","Are battery-powered nodes running low?"]]}),g.jsx("p",{children:"The overall score is the weighted sum:"}),g.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"Score = (Infrastructure × 30%) + (Utilization × 25%) + (Coverage × 20%) + (Behavior × 15%) + (Power × 10%)"}),g.jsx(ye,{children:"How Each Pillar Is Calculated"}),g.jsx(pl,{children:"Infrastructure (30%)"}),g.jsx("p",{children:"This is the simplest pillar — what percentage of your infrastructure nodes are currently online?"}),g.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"(routers online ÷ total routers) × 100"}),g.jsxs("p",{children:["Only nodes with the ",g.jsx(ce,{children:"ROUTER"}),", ",g.jsx(ce,{children:"ROUTER_LATE"}),", or ",g.jsx(ce,{children:"ROUTER_CLIENT"})," role count as infrastructure. Regular client nodes going offline doesn't affect this score. If you have 5 routers and 3 are online, infrastructure scores 60."]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Special case:"})," If you have no routers at all (all clients), this pillar scores 100. You're not penalized for not having infrastructure — you just don't have any to track."]}),g.jsx(pl,{children:"Utilization (25%)"}),g.jsxs("p",{children:["MeshAI reads the channel utilization that each router reports in its telemetry — this is the firmware's own measurement of how busy the radio channel is. MeshAI uses the ",g.jsx("strong",{children:"highest"})," value from any infrastructure node because the busiest router is the bottleneck for the whole mesh."]}),g.jsx("p",{children:g.jsx("strong",{children:"How it works:"})}),g.jsxs("ol",{className:"list-decimal list-inside space-y-1 ml-4",children:[g.jsxs("li",{children:["Collect ",g.jsx(ce,{children:"channel_utilization"})," from all infrastructure nodes that report it"]}),g.jsx("li",{children:"If no infra nodes have telemetry, try all nodes"}),g.jsxs("li",{children:["Use the ",g.jsx("strong",{children:"maximum"})," value for scoring (busiest node = bottleneck)"]}),g.jsx("li",{children:"If no nodes report utilization (older firmware), fall back to packet count estimate"})]}),g.jsxs("p",{className:"mt-4",children:[g.jsx("strong",{children:"Fallback method"})," (when telemetry unavailable): estimates from packet counts using 200ms/packet airtime. This is less accurate — it assumes MediumFast preset and sums packets across all nodes."]}),g.jsx(St,{headers:["Channel Utilization","Score","What It Means"],rows:[["Under 20%","100","Channel is clear — this is the goal"],["20-25%","75-100","Slight degradation, occasional collisions"],["25-35%","50-75","Severe degradation — firmware throttling active"],["35-45%","25-50","Mesh struggling badly — reliability dropping"],["Over 45%","0-25","Mesh is effectively unusable"]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Special case:"})," If no utilization data is available (no telemetry and no packet data), this pillar scores 100. You're not penalized for missing data."]}),g.jsx(pl,{children:"Coverage (20%)"}),g.jsx("p",{children:'Measures gateway redundancy — how many of your data sources can "see" each node. A node reported by all 3 of your gateways has full coverage. A node only seen by 1 gateway is a single point of failure.'}),g.jsxs("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:["coverage_ratio = average_gateways_per_node ÷ total_sources",g.jsx("br",{}),"single_gw_penalty = (single_gateway_nodes ÷ total_nodes) × 40"]}),g.jsx("p",{children:"If a node is seen by 2 out of 3 sources, its coverage ratio is 0.67. Infrastructure nodes with only single-gateway coverage get an extra penalty — they're critical but have no backup path."}),g.jsx(St,{headers:["Coverage Ratio","Base Score","After Penalty"],rows:[["100% (all sources)","100","100 minus single-gw penalty"],["70-99%","90","Minus penalties"],["50-69%","70","Minus penalties"],["Under 50%","50 or less","Heavy penalty"]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Special case:"})," With only 1 data source, this pillar can't score well — there's no redundancy to measure. Coverage becomes meaningful when you have 2+ sources (MeshMonitor + MQTT, multiple gateways, etc.)."]}),g.jsx(pl,{children:"Behavior (15%)"}),g.jsx("p",{children:"Counts how many nodes are sending an unusually high number of non-text packets. This catches firmware bugs, stuck transmitters, and misconfigured nodes that are flooding the channel."}),g.jsxs("p",{children:[g.jsx("strong",{children:"What counts as flooding:"})," More than 500 non-text packets in 24 hours. Text messages don't count — the behavior pillar only flags telemetry, position, and routing packet floods."]}),g.jsx(St,{headers:["Flagged Nodes","Score"],rows:[["0","100"],["1","80"],["2-3","60"],["4-5","40"],["6+","20"]]}),g.jsx("p",{children:"A single misbehaving node only drops the score to 80. It takes multiple problem nodes to seriously hurt the behavior pillar."}),g.jsx(pl,{children:"Power (10%)"}),g.jsx("p",{children:"Measures what fraction of battery-powered nodes are below the warning threshold (default 20%)."}),g.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"100 × (1 − low_battery_nodes ÷ total_battery_nodes)"}),g.jsx("p",{children:"If 2 out of 10 battery nodes are below 20%, power scores 80."}),g.jsxs("p",{children:[g.jsx("strong",{children:"Important:"})," USB-powered nodes are excluded from this calculation. Many nodes report 100% battery even when running on wall power with no battery installed. Only nodes actually running on batteries affect this pillar."]}),g.jsx(ye,{children:"Health Tiers"}),g.jsx(St,{headers:["Score","Tier","What It Means"],rows:[["90-100",g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"green"})," Healthy"]}),"Everything's working well."],["75-89",g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"yellow"})," Slight degradation"]}),"Some issues but the mesh is functional."],["50-74",g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"orange"})," Unhealthy"]}),"Multiple problems. Reliability is affected."],["25-49",g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"red"})," Warning"]}),"Significant issues. The mesh is struggling."],["0-24",g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"black"})," Critical"]}),"Major failures. Barely functional."]]}),g.jsx(ye,{children:"Channel Utilization — Is the Radio Channel Full?"}),g.jsx("p",{children:"Meshtastic radios share one LoRa channel. If too many nodes are transmitting too often, they step on each other and messages get lost."}),g.jsx(St,{headers:["Utilization","What's Happening"],rows:[[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"green"})," Under 25%"]}),"Healthy. The firmware itself starts throttling above 25% to protect the channel — so under 25% is the target."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"yellow"})," 25-40%"]}),"Getting busy. Common on larger meshes. Worth watching."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"orange"})," 40-50%"]}),"Congested. The firmware throttles GPS updates above 40%. Messages are colliding and retrying."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"red"})," Over 50%"]}),"Serious problem. More time is spent retrying than communicating. Mesh reliability drops fast."],[g.jsxs(g.Fragment,{children:[g.jsx(ir,{color:"black"})," Over 65%"]}),"Documented failure point on busy LONG_FAST meshes. The mesh becomes unusable."]]}),g.jsx(ye,{children:"Packet Flooding"}),g.jsx("p",{className:"p-3 bg-yellow-500/10 border border-yellow-500/30 rounded text-yellow-200",children:g.jsx("strong",{children:'⚠️ "Packet flooding" means a node sending too many RADIO PACKETS. This has nothing to do with water flooding.'})}),g.jsx("p",{children:"A normal Meshtastic node sends a packet every few minutes (announcing itself, reporting telemetry, updating position). If a node starts blasting packets every few seconds, something is wrong — firmware bug, stuck transmitter, or misconfiguration."}),g.jsx(St,{headers:["Packets per Minute","What It Means"],rows:[["1-5","Normal"],["5-10","Elevated — might be someone chatting a lot"],["10-20","Suspicious — worth investigating"],["Over 30","Something is broken. This node is actively hurting the mesh."]]}),g.jsx(ye,{children:"Battery Levels"}),g.jsx("p",{children:"Most Meshtastic radios (T-Beam, RAK4631, Heltec V3) use a single lithium battery cell. The voltage tells you how much charge is left:"}),g.jsx(St,{headers:["Voltage","Charge","What To Do"],rows:[["4.20V","100%","Full"],["3.80V","~60%","Fine"],[g.jsx("strong",{children:"3.60V"}),g.jsx("strong",{children:"~30%"}),g.jsx(g.Fragment,{children:g.jsx("strong",{children:"⚠️ Warning — charge it soon"})})],[g.jsx("strong",{children:"3.50V"}),g.jsx("strong",{children:"~15%"}),g.jsx(g.Fragment,{children:g.jsx("strong",{children:"🔴 Low — charge it now"})})],[g.jsx("strong",{children:"3.40V"}),g.jsx("strong",{children:"~7%"}),g.jsx(g.Fragment,{children:g.jsx("strong",{children:"⚫ About to die"})})],["3.30V","~3%","Device shutting down"]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"USB-powered nodes"})," report 100% battery even if there's no battery installed. Battery alerts only matter for nodes actually running on battery power."]}),g.jsx(ye,{children:"Node Offline Detection"}),g.jsx("p",{children:`MeshAI marks a node as "offline" when it hasn't been heard for a configurable time period. Different node types need different thresholds:`}),g.jsx(St,{headers:["Node Type","Recommended Threshold","Why"],rows:[["Fixed infrastructure (wall power)",g.jsx("strong",{children:"2 hours"}),"These should always be transmitting. 2 hours of silence means something is wrong."],["Fixed client (wall power)","2-4 hours","Same logic, slightly more lenient."],["Mobile / vehicle","4-8 hours","They go behind mountains, into garages, out of range. Normal."],["Solar-powered","12-24 hours","May shut down at night when solar stops charging."]]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Rule of thumb"}),`: set the threshold to about 4× the node's beacon interval. Too tight and nodes will constantly flap "offline/online" from normal gaps. Too loose and real outages go unnoticed.`]})]}),g.jsxs(br,{id:"broadcast-types",title:"Broadcast Types",children:[g.jsx("p",{children:"Every broadcast the bot sends to the mesh carries a one-word prefix that tells you what kind of update it is. Three types:"}),g.jsx(St,{headers:["Prefix","What it means","When you see it"],rows:[[g.jsx(ce,{children:"New:"}),"The first time the bot has ever broadcast about this event","Cache Peak Fire's WFIGS first-sight; FIRMS cluster's first 3-pixel detection; first NWS warning for a CAP id"],[g.jsx(ce,{children:"Update:"}),"A material change on something the bot already announced","Cache Peak Fire's acreage grew; ITD 511 work zone's lane status changed; quake event's magnitude was revised"],[g.jsx(ce,{children:"Active:"}),"A clock-driven reminder that an already-announced event is still live","Cache Peak Fire is still burning 8 hours later; an SWPC G3 storm is still in progress"]]}),g.jsx("p",{children:"The bot tracks first-broadcast time and last-broadcast time separately on every event row, so a New: prefix is only emitted once even after a container restart. Update: respects per-adapter cooldowns (WFIGS is 8 h by default; ITD 511 is per-incident). Active: is the reminder system, covered in the next section."})]}),g.jsxs(br,{id:"reminders",title:"Reminder System",children:[g.jsxs("p",{children:["Some events stay live for days. A wildfire doesn't go out because WFIGS stopped publishing updates; a geomagnetic storm doesn't end because SWPC went quiet on the wire. The reminder system fires a clock-driven"," ",g.jsx(ce,{children:"Active:"}),"-prefixed re-broadcast on a human-scale cadence so an operator who came on shift after the original announcement still sees the event."]}),g.jsx(ye,{children:"Cadences"}),g.jsx(St,{headers:["Adapter","Reminder cadence","Termination"],rows:[[g.jsxs(g.Fragment,{children:[g.jsx(ce,{children:"wfigs"})," (wildfires)"]}),"Every 8 h while the fire is still active","WFIGS publishes a tombstone (incident closed) → fires.tombstoned_at is stamped → reminder loop stops"],[g.jsxs(g.Fragment,{children:[g.jsx(ce,{children:"swpc"})," (space weather)"]}),"Every 8 h while a Kp >= floor / X-class flare / proton-storm event is ongoing","The next SWPC envelope shows the storm has subsided"],[g.jsx(ce,{children:"itd_511_work_zone"}),"Per-zone, configurable in the rule UI","WZDx publishes the zone with end_date in the past"]]}),g.jsx(ye,{children:"The tombstone"}),g.jsxs("p",{children:["When a WFIGS update declares an incident closed, the bot stamps"," ",g.jsx(ce,{children:"fires.tombstoned_at"})," with the close time. The reminder scheduler treats ",g.jsx(ce,{children:"tombstoned_at IS NOT NULL"}),` as "stop broadcasting Active: for this fire," and the LLM context layer treats it as "this fire is in the closed-out archive." A subsequent FIRMS pixel inside that fire's spread radius does not re-open it — closure is authoritative from NIFC.`]}),g.jsx(ye,{children:"Turning reminders off"}),g.jsxs("p",{children:["Per-adapter on/off lives in ",g.jsx(ce,{children:"adapter_meta.reminder_enabled"})," ","and is exposed on the Adapter Config page. The reminders themselves flow through the same dispatcher gates as everything else, so they still respect cooldowns, the cold-start grace window, and your notification rules."]})]}),g.jsxs(br,{id:"notifications",title:"Notifications",children:[g.jsx(ye,{children:"How It Works"}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"Something happens"})," — a fire is detected, weather warning issued, node goes offline, etc."]}),g.jsxs("li",{children:[g.jsx("strong",{children:"MeshAI checks your rules"})," — does this event match any of your notification rules? Is it severe enough?"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"If a rule matches"})," — MeshAI sends the notification through whatever delivery method that rule is configured for."]})]}),g.jsx(ye,{children:"Building Rules"}),g.jsx("p",{children:"Each rule answers three questions:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"WHEN"})," does it trigger? (which categories, what severity)"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"WHERE"})," does it send? (mesh broadcast, email, webhook, etc.)"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"HOW OFTEN"})," at most? (cooldown period)"]})]}),g.jsx("p",{children:'Use "Add from Template" to start with a pre-built rule and customize it, or build from scratch with "Add Rule."'}),g.jsx(ye,{children:"Severity Levels — What Should I Set?"}),g.jsx(St,{headers:["Level","When It's Used","Notification Volume"],rows:[["Info","Routine stuff (ducting detected, new router appeared)","High — lots of messages"],["Advisory","Worth knowing (weather advisory, slow traffic, battery declining)","Moderate"],["Watch","Pay attention (fire within 50km, weather watch, stream rising)","Low-moderate"],[g.jsxs(g.Fragment,{children:[g.jsx("strong",{children:"Warning"})," ✓"]}),"Take action (fire within 15km, severe weather, critical battery)","Low — recommended for most rules"],["Emergency","Life safety (extreme weather, fire at infrastructure, total blackout)","Very rare"]]}),g.jsxs("p",{children:[g.jsx("strong",{children:'"Warning" is the sweet spot for most rules.'})," You get alerted when something actually needs your attention without being overwhelmed by every minor event."]}),g.jsx(ye,{children:"Webhook — The Swiss Army Knife"}),g.jsx("p",{children:"A webhook sends your alert as an HTTP POST to any URL. This one delivery method works with:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"Discord"})," — use a Discord webhook URL"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Slack"})," — use a Slack incoming webhook URL"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"ntfy.sh"})," — POST to ",g.jsx(ce,{children:"https://ntfy.sh/your-topic"})]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Pushover"})," — POST to the Pushover API"]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Home Assistant"})," — POST to an automation webhook URL"]}),g.jsx("li",{children:"Anything else that accepts HTTP POST"})]}),g.jsx("p",{children:"MeshAI doesn't need to know what's on the other end. Give it the URL and it works."})]}),g.jsxs(br,{id:"commands",title:"Commands",children:[g.jsxs("p",{children:["All commands use the ",g.jsx(ce,{children:"!"})," prefix (configurable). Send these as a direct message to MeshAI on your mesh."]}),g.jsx(ye,{children:"Basic Commands"}),g.jsx(St,{headers:["Command","What It Does"],rows:[[g.jsx(ce,{children:"!help"}),"Shows all available commands"],[g.jsx(ce,{children:"!ping"}),"Tests if the bot is alive"],[g.jsx(ce,{children:"!status"}),"Quick mesh summary (nodes online, health score)"],[g.jsx(ce,{children:"!health"}),"Detailed health report with pillar scores"],[g.jsx(ce,{children:"!weather"}),"Current weather for your area"]]}),g.jsx(ye,{children:"Environmental Commands"}),g.jsx(St,{headers:["Command","What It Does"],rows:[[g.jsx(ce,{children:"!alerts"}),"Active NWS weather alerts for your area"],[g.jsxs(g.Fragment,{children:[g.jsx(ce,{children:"!solar"})," (or ",g.jsx(ce,{children:"!hf"}),")"]}),"Current solar indices and RF conditions"],[g.jsx(ce,{children:"!fire"}),"Active wildfires near your mesh"],[g.jsx(ce,{children:"!avy"}),'Avalanche advisory (seasonal — shows "off season" in summer)'],[g.jsxs(g.Fragment,{children:[g.jsx(ce,{children:"!streams"})," (or ",g.jsx(ce,{children:"!gauges"}),")"]}),"Stream gauge readings"],[g.jsxs(g.Fragment,{children:[g.jsx(ce,{children:"!roads"})," (or ",g.jsx(ce,{children:"!traffic"}),")"]}),"Road conditions and traffic flow"],[g.jsx(ce,{children:"!hotspots"}),"Satellite fire detections"]]}),g.jsx(ye,{children:"Subscription Commands"}),g.jsx(St,{headers:["Command","What It Does"],rows:[[g.jsx(ce,{children:"!subscribe"}),"Lists all alert categories you can subscribe to"],[g.jsx(ce,{children:"!subscribe fire_proximity"}),"Subscribe to a specific category"],[g.jsx(ce,{children:"!subscribe all"}),"Subscribe to everything"],[g.jsx(ce,{children:"!unsubscribe fire_proximity"}),"Unsubscribe from a category"],[g.jsx(ce,{children:"!subscriptions"}),"Shows what you're currently subscribed to"]]}),g.jsx(ye,{children:"Conversational"}),g.jsxs("p",{children:[`Bang commands are the short, predictable interface. For anything that doesn't map cleanly to a single command — "how's the mesh doing?", "is there any ducting?", "why didn\\'t I hear about anything today?" — you can DM the bot in plain English. The LLM DM path covers the same data the commands cover, plus the dispatcher drop audit, with honest "no data" answers when a feed is quiet. Full catalog under`," ",g.jsx("a",{href:"#llm-dm",className:"text-accent hover:underline",children:"LLM DM Queries"}),"."]})]}),g.jsxs(br,{id:"llm-dm",title:"LLM DM (Natural-Language Queries)",children:[g.jsxs("p",{children:["Bang commands like ",g.jsx(ce,{children:"!fire"})," are short and predictable — the right tool on a mesh-constrained interface. For anything else, you can DM the bot in plain English and it will answer from the same live environmental data the broadcast pipeline uses. Both paths work; pick whichever fits the question."]}),g.jsx(ye,{children:"What it can answer"}),g.jsx("p",{children:"When you DM the bot a question, the env_reporter layer assembles up to seven data blocks and injects them into the LLM's system prompt. Each block maps to one adapter:"}),g.jsx(St,{headers:["Adapter block","Example question that hits it","What you get back"],rows:[[g.jsx(ce,{children:"build_fires_detail"}),'"are there any fires near me?"',"Active WFIGS-declared fires, acreage, containment, declared_at, county/state"],[g.jsx(ce,{children:"build_alerts_detail"}),'"any weather alerts?"',"Active NWS CAP alerts: type, severity, area, expiry"],[g.jsx(ce,{children:"build_quakes_detail"}),'"any earthquakes nearby?"',"USGS quakes in the last 24h: magnitude, depth, place"],[g.jsx(ce,{children:"build_traffic_detail"}),'"how is traffic on I-84?" / "any road closures?"',"TomTom + ITD 511 active incidents"],[g.jsx(ce,{children:"build_gauges_detail"}),'"what is the snake river level?"',"USGS NWIS latest readings + flood stages"],[g.jsx(ce,{children:"build_swpc_detail"}),'"what are the band conditions?" / "any space weather?"',"Recent SWPC events + band-conditions ratings"],[g.jsx(ce,{children:"build_drop_audit"}),`"why didn't I hear about anything today?"`,"Event log: what envelopes the dispatcher filtered, by adapter + category"]]}),g.jsx(ye,{children:"The grounding rule"}),g.jsxs("p",{children:["The bot is told to answer ",g.jsx("em",{children:"only"}),' from the blocks in the system prompt. If a block is empty (no recent quakes, no active NWS alerts), the response is honest about it: "No active weather alerts right now," not a fabricated "144 earthquakes worldwide in the past 24 hours." That clamp closes the failure mode where the LLM defaulted to its training data when local tables were quiet.']}),g.jsx(ye,{children:"Excluding an adapter from LLM context"}),g.jsxs("p",{children:["The ",g.jsx(ce,{children:"include_in_llm_context"})," toggle on each adapter's row in Adapter Config decides whether that adapter's ",g.jsx(ce,{children:"build_*"})," ","block lands in the system prompt. Turn an adapter off here if you don't want the bot's natural-language answers to draw on it (e.g. you ingest TomTom for situational awareness but don't want it cited in DM answers). Broadcasts are unaffected — this toggle gates LLM context only."]}),g.jsx(ye,{children:"What it can't answer"}),g.jsx("p",{children:`The bot has no general internet access. Questions that need data the env_reporter doesn't carry ("what's the weather forecast tomorrow", "who's the current president") fall back to whatever the configured LLM backend knows from training. The grounding clamp keeps the bot from inventing local data, but it can't keep the LLM from speculating about non-local topics.`})]}),g.jsxs(br,{id:"or-not-and",title:"OR-not-AND Architecture",children:[g.jsx("p",{children:"Every environmental adapter pulls its data from one of two places:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"Central"})," (canonical) — Central polls the upstream feed once on behalf of the whole fleet and re-publishes normalized envelopes over NATS JetStream. MeshAI subscribes. One Central poll, one canonical normalization, many subscribers."]}),g.jsxs("li",{children:[g.jsx("strong",{children:"Native"})," — MeshAI polls the upstream feed directly. Stays around for adapters Central doesn't carry yet (currently Tropospheric Ducting and Avalanche Center advisories) and for operators who don't run Central."]})]}),g.jsx(ye,{children:"Why mutually exclusive"}),g.jsxs("p",{children:["An adapter is set to ",g.jsx("strong",{children:"either"})," Central ",g.jsx("strong",{children:"or"})," ","native, never both. Running both at the same time is what the codebase calls the ",g.jsx("em",{children:"AND-mode anti-pattern"}),": two independent poll loops on the same upstream feed, duplicate broadcasts, duplicate cursor state, no shared dedup. The Spokane-class leak (cross-state broadcasts that escaped the bbox filter in May 2026) was caused by an inadvertent AND-mode on the traffic adapter; the fix made the gate enforce mutual exclusion at boot and on every config save."]}),g.jsx(ye,{children:"The per-adapter source toggle"}),g.jsxs("p",{children:["Set ",g.jsx(ce,{children:"feed_source"})," on each adapter's row in Environment:"]}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"central"})," — disable the native poll loop, subscribe to the matching Central subject pattern."]}),g.jsxs("li",{children:[g.jsx(ce,{children:"native"})," — disable the Central subscription for this adapter, run the native poller."]})]}),g.jsxs("p",{children:["On the GUI, adapters with ",g.jsx("em",{children:"no Central counterpart yet"}),` show their Central button disabled with a "native only" tooltip. That's not an AND state; the adapter is still single-source, just locked to native by upstream availability.`]}),g.jsx(ye,{children:"Where this surfaces in tooltips"}),g.jsxs("p",{children:[`You'll see "AND-model anti-pattern" referenced in two places: the USGS-lookup button on Gauge Sites (disabled when the USGS adapter is on Central, because doing a one-off direct USGS poll from the GUI while the runtime is on Central is precisely the AND-mode this rule forbids) and the env_routes 404 response on`," ",g.jsxs(ce,{children:["/api/env/usgs/lookup/","{site_id}"]})," in central-feed mode. Both surfaces refuse to fall back to a direct upstream call; the right answer is to enter values manually or source them from Central."]})]}),g.jsxs(br,{id:"adapter-config",title:"Adapter Config & the CODE Rule",children:[g.jsx("p",{children:"The Adapter Config page is the single hub for ~50 GUI-editable knobs across the 13 adapters that touch the broadcast pipeline. Changes take effect on the next handler call — no container restart needed for most keys."}),g.jsx(ye,{children:"The CONFIG-vs-CODE rule"}),g.jsx("p",{children:"Not everything tunable becomes a GUI row. The codebase splits along one rule:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx("strong",{children:"CONFIG"})," (lives on this page) — where you send (channels), how often (cadences, schedules), thresholds (magnitude floors, severity gates, distance radii, cooldown durations, freshness windows), curation data (which sites, states, codes), toggles (enabled, include_in_llm_context)."]}),g.jsxs("li",{children:[g.jsx("strong",{children:"CODE"})," (stays in the handlers, not on the GUI) — sentence templates, emoji choices, mapping / translation functions (TomTom icon_map, ITD sub_type_map, Central adapter_map and category_map), rendering logic (anchor priority order, expires-buckets formatting, threshold-state labels), heuristic logic (band_conditions Kp/SFI → Good/Fair/Poor function)."]})]}),g.jsx("p",{children:"If you find yourself wanting to add a wire-string template or an emoji to the GUI, stop — that's CODE. If you want to change a threshold or a curation list, the GUI is the right place."}),g.jsx(ye,{children:"Restart-required vs live"}),g.jsx("p",{children:"Most keys take effect on the next handler call (the env_store re-reads from the database). A short list requires a container restart, because they govern startup-only wiring:"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:["Anything under the ",g.jsx(ce,{children:"environmental"})," section on the Config page (feed_source, central URL, etc.). The Spokane-fix gate runs at env_store boot and at CentralConsumer subscribe — both happen only at startup."]}),g.jsx("li",{children:"The LLM backend swap (Google → Anthropic → OpenAI)."}),g.jsx("li",{children:"The dispatcher cold-start grace window."})]}),g.jsx("p",{children:`When you save one of those keys via the GUI, a yellow Restart-Required banner surfaces at the top of the page with a "Restart now" button. Until you click it, the on-disk config and the running config intentionally disagree — that's the OR-not-AND gate refusing to transition mid-flight.`}),g.jsxs(ye,{children:["The ",g.jsx(ce,{children:"include_in_llm_context"})," toggle"]}),g.jsxs("p",{children:[`Each adapter's card on Adapter Config carries a per-adapter "LLM context" switch. When off, that adapter's `,g.jsx(ce,{children:"build_*"})," ","env_reporter block is skipped during system-prompt assembly. Broadcasts are unaffected; this toggle is purely about what the LLM sees when you DM it. See the LLM DM section above for the seven adapter blocks this gates."]})]}),g.jsxs(br,{id:"curation",title:"Curation: Gauge Sites & Town Anchors",children:[g.jsx("p",{children:"Two curation tables drive the broadcast text the bot puts on the mesh. Both are CRUD UIs with per-row enable/disable; both fall through to fallback chains when a row is missing or disabled."}),g.jsx(ye,{children:"Gauge Sites"}),g.jsx("p",{children:"Stream gauge thresholds for the USGS NWIS handler. Each row pairs a USGS site_id with a human gauge name, lat/lon, and four NWS-AHPS flood thresholds in feet: Action, Minor, Moderate, Major. The handler compares an incoming gauge reading to those thresholds and emits the right broadcast severity."}),g.jsxs("p",{children:[g.jsx("strong",{children:"USGS lookup button"})," — when you add a new row in native-feed mode, the lookup queries the USGS Site Service plus NWS NWPS to auto-populate name, coordinates, and flood stages. In central-feed mode the button is disabled with a tooltip: a one-off direct USGS poll from the GUI while the runtime is on Central is the AND-mode anti-pattern the architecture forbids. Enter values manually or pull them from Central."]}),g.jsxs("p",{children:[g.jsx("strong",{children:"Disabled rows"})," are ignored at dispatch time. The corresponding gauge still ingests into ",g.jsx(ce,{children:"gauge_readings"})," ","(so historical queries still work), it just doesn't broadcast."]}),g.jsx(ye,{children:"Town Anchors"}),g.jsxs("p",{children:['Lookup table for the "X mi ',"<","bearing",">"," of ","<","town",">",'" suffix in broadcast text. When a fire or NWS alert renders, the bot walks an anchor chain to figure out where to say it is:']}),g.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[g.jsx("li",{children:'Photon nearest-town lookup (the WFIGS path uses this — produces "near Long Creek Summit Home" style anchors)'}),g.jsx("li",{children:"Town Anchors table (your curated list)"}),g.jsx("li",{children:"Landclass label (county / federal-land identifier)"}),g.jsx("li",{children:"County + state fallback"}),g.jsx("li",{children:"Bare lat/lon coords"})]}),g.jsx("p",{children:'Each row carries a name (lowercased on save), state, lat/lon, and an enable flag. The "lowercased on save" rule keeps "Almo" / "ALMO" / "almo" from being three distinct rows. Disabled rows fall through to the next anchor in the chain — the broadcast text still goes out, it just uses a different anchor.'}),g.jsxs("p",{children:["Example broadcast text rendered from a Town Anchors row:"," ",g.jsx("span",{className:"text-amber-300",children:'"🔥 New: Cache Peak Fire (WF), 3 mi N of Almo: 250 ac, 0% contained, @ 42.118,-113.643"'})]})]}),g.jsxs(br,{id:"schema",title:"Schema Migrations",children:[g.jsxs("p",{children:["MeshAI persists state in a single SQLite database (",g.jsx(ce,{children:"/data/meshai.sqlite"}),") with WAL journaling. Schema migrations live in ",g.jsx(ce,{children:"meshai/persistence/migrations/v*.sql"})," ","and apply automatically on container start. The runner reads the migrations directory, sorts by version, and applies anything past the current ",g.jsx(ce,{children:"schema_meta.version"})," in order. Idempotent re-runs are no-ops."]}),g.jsx(ye,{children:"v0.6 + v0.7 additions"}),g.jsx(St,{headers:["Migration","What it added"],rows:[[g.jsx(ce,{children:"v11"}),"first_broadcast_at + last_broadcast_at split + reminder_enabled per adapter (the schema basis for New / Update / Active)"],[g.jsx(ce,{children:"v12"}),"fires.tombstoned_at (WFIGS closure stamp; terminates the reminder loop)"],[g.jsx(ce,{children:"v13"}),"Fire Tracker Phase 1 — fire_pixels table + spread_radius_mi + current_centroid_lat/lon + last_hotspot_at; firms_pixels attributed_at + cluster_broadcast_at"],[g.jsx(ce,{children:"v14"}),"Fire Tracker Phase 2 — fire_passes table (per-satellite-pass centroid + drift) + last_pass_id + halt_broadcast_at on fires"],[g.jsx(ce,{children:"v15"}),"Fire Tracker Phase 3 — fire_passes.perimeter_geojson (convex hull) + fires.last_spotting_broadcast_at"],[g.jsx(ce,{children:"v16"}),"Fire Tracker Phase 4 — fire_digest_broadcasts table (idempotent twice-daily LLM digest)"]]}),g.jsx(ye,{children:"When migrations fail"}),g.jsxs("p",{children:["A migration failure leaves the database at the prior version and raises in the runner. Container logs surface the SQL error;"," ",g.jsx(ce,{children:"schema_meta.version"})," tells you where the last successful migration stopped. Re-running the container after the underlying issue is fixed picks up from there."]})]}),g.jsxs(br,{id:"api",title:"API Reference",children:[g.jsxs("p",{children:["MeshAI's REST API is available at ",g.jsx(ce,{children:"http://your-host:8080"}),". All endpoints return JSON."]}),g.jsx(ye,{children:"System"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/status"})," — version, uptime, node count"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/channels"})," — radio channel list"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"POST /api/restart"})," — restart the bot"]})]}),g.jsx(ye,{children:"Mesh Data"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/health"})," — health score and pillars"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/nodes"})," — all nodes with positions and telemetry"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/edges"})," — neighbor links with signal quality"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/regions"})," — region summaries"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/sources"})," — data source health"]})]}),g.jsx(ye,{children:"Configuration"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/config"})," — full config"]}),g.jsxs("li",{children:[g.jsxs(ce,{children:["GET /api/config/","{section}"]})," — one section"]}),g.jsxs("li",{children:[g.jsxs(ce,{children:["PUT /api/config/","{section}"]})," — update a section"]})]}),g.jsx(ye,{children:"Environmental"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/env/status"})," — per-feed health"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/env/active"})," — all active events"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/env/swpc"})," — solar/geomagnetic data"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/env/ducting"})," — atmospheric profile"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/env/fires"})," — wildfire perimeters"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/env/hotspots"})," — satellite fire detections"]})]}),g.jsx(ye,{children:"Alerts"}),g.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/alerts/active"})," — current alerts"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/alerts/history"})," — past alerts"]}),g.jsxs("li",{children:[g.jsx(ce,{children:"GET /api/notifications/categories"})," — available alert categories"]})]}),g.jsx(ye,{children:"Real-time"}),g.jsx("ul",{className:"list-disc list-inside ml-4 space-y-1",children:g.jsxs("li",{children:[g.jsx(ce,{children:"ws://your-host:8080/ws/live"})," — WebSocket for live updates"]})})]})]})})]})}const Cet=1500;function Aet(){const[e,t]=H.useState({}),[r,n]=H.useState({}),[i,a]=H.useState(!0),[o,s]=H.useState(null),[l,u]=H.useState({}),[c,f]=H.useState({}),[h,d]=H.useState({}),v=H.useCallback(async()=>{a(!0),s(null);try{const[S,T]=await Promise.all([fetch("/api/adapter-config"),fetch("/api/adapter-meta")]);if(!S.ok)throw new Error(`GET /adapter-config: ${S.status}`);if(!T.ok)throw new Error(`GET /adapter-meta: ${T.status}`);t(await S.json()),n(await T.json())}catch(S){s(String(S))}finally{a(!1)}},[]);H.useEffect(()=>{v()},[v]);const m=H.useCallback((S,T,C)=>{f(A=>({...A,[S]:T})),C&&d(A=>({...A,[S]:C})),T==="saved"&&setTimeout(()=>{f(A=>A[S]==="saved"?{...A,[S]:"idle"}:A)},Cet)},[]),y=H.useCallback(async(S,T,C)=>{const A=`${S}.${T}`;m(A,"saving");try{const P=await fetch(`/api/adapter-config/${S}/${T}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:C})});if(!P.ok){const O=(await P.json().catch(()=>({}))).detail||P.statusText;m(A,"error",String(O));return}const I=await P.json();t(k=>({...k,[S]:(k[S]||[]).map(O=>O.key===T?I:O)})),m(A,"saved")}catch(P){m(A,"error",String(P))}},[m]),x=H.useCallback(async(S,T)=>{const C=`${S}.${T}`;m(C,"saving");try{const A=await fetch(`/api/adapter-config/${S}/${T}/reset`,{method:"POST"});if(!A.ok){m(C,"error",`reset failed (${A.status})`);return}const P=await A.json();t(I=>({...I,[S]:(I[S]||[]).map(k=>k.key===T?P:k)})),m(C,"saved")}catch(A){m(C,"error",String(A))}},[m]),_=H.useCallback(async(S,T)=>{const C=`meta:${S}`;m(C,"saving");try{const A=await fetch(`/api/adapter-meta/${S}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(T)});if(!A.ok){const I=await A.json().catch(()=>({}));m(C,"error",String(I.detail||A.statusText));return}const P=await A.json();n(I=>({...I,[S]:P})),m(C,"saved")}catch(A){m(C,"error",String(A))}},[m]);if(i)return g.jsxs("div",{className:"p-6 flex items-center gap-2 text-slate-400",children:[g.jsx(Ky,{className:"w-5 h-5 animate-spin"})," Loading adapter config…"]});if(o)return g.jsxs("div",{className:"p-6 text-red-400",children:[g.jsx(su,{className:"w-5 h-5 inline mr-2"}),"Failed to load: ",o]});const b=Array.from(new Set([...Object.keys(r),...Object.keys(e)])).sort();return g.jsxs("div",{className:"p-6 space-y-4",children:[g.jsxs("div",{className:"flex items-center gap-2 text-slate-200",children:[g.jsx(fD,{className:"w-5 h-5"}),g.jsx("h1",{className:"text-xl font-semibold",children:"Adapter Config"}),g.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[Object.values(e).reduce((S,T)=>S+T.length,0)," settings across ",b.length," adapters"]})]}),g.jsxs("p",{className:"text-xs text-slate-400 max-w-3xl",children:["Per-adapter tunables (thresholds, freshness windows, toggles, curation lists). Changes take effect on the next handler call -- no container restart needed. Sentence templates, emoji, and translation maps live in code by design — see the CODE rule under ",g.jsx("a",{href:"/reference#adapter-config",className:"text-accent hover:underline",children:"Adapter Config & the CODE Rule"})," in Reference. The ",g.jsx("strong",{children:"LLM context"})," toggle on each card gates whether that adapter's data lands in the system prompt when you DM the bot; broadcasts are unaffected."]}),b.map(S=>{const T=r[S]||{display_name:S,include_in_llm_context:!0,description:""},C=e[S]||[],A=l[S]??!1,P=`meta:${S}`,I=c[P]||"idle";return g.jsxs("div",{className:"bg-slate-800/60 border border-slate-700 rounded-lg",children:[g.jsxs("div",{className:"p-4 flex items-start gap-4",children:[g.jsx("button",{onClick:()=>u(k=>({...k,[S]:!k[S]})),className:"text-slate-400 hover:text-white","aria-label":"toggle expand",children:A?g.jsx(yu,{className:"w-5 h-5"}):g.jsx(ou,{className:"w-5 h-5"})}),g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("h2",{className:"text-base font-semibold text-slate-100",children:T.display_name}),g.jsx("code",{className:"text-xs text-slate-500",children:S}),C.length>0&&g.jsxs("span",{className:"text-xs text-slate-400 ml-1",children:["(",C.length," settings)"]}),C.length===0&&g.jsx("span",{className:"text-xs text-slate-500 ml-1 italic",children:"(meta only)"})]}),T.description&&g.jsx("p",{className:"text-xs text-slate-400 mt-1",children:T.description})]}),g.jsxs("label",{className:"flex items-center gap-2 text-xs text-slate-300 select-none",children:[g.jsx("input",{type:"checkbox",checked:T.include_in_llm_context,onChange:k=>_(S,{include_in_llm_context:k.target.checked}),className:"w-4 h-4 accent-cyan-500"}),"LLM context",g.jsx(uae,{status:I,error:h[P]})]})]}),A&&C.length>0&&g.jsx("div",{className:"border-t border-slate-700 divide-y divide-slate-700/60",children:C.map(k=>g.jsx(Met,{row:k,status:c[`${S}.${k.key}`]||"idle",error:h[`${S}.${k.key}`],onCommit:O=>y(S,k.key,O),onReset:()=>x(S,k.key)},k.key))})]},S)})]})}function Met({row:e,status:t,error:r,onCommit:n,onReset:i}){const[a,o]=H.useState(SP(e));H.useEffect(()=>{o(SP(e))},[e.value,e.type]);const s=a!==SP(e),l=JSON.stringify(e.value)===JSON.stringify(e.default),u=()=>{const c=Pet(a,e.type);c.error||c.changed(e.value)&&n(c.value)};return g.jsxs("div",{className:"px-6 py-3 flex items-start gap-4",children:[g.jsxs("div",{className:"flex-1 min-w-0",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("code",{className:"text-sm font-mono text-cyan-300",children:e.key}),g.jsxs("span",{className:"text-xs text-slate-500",children:["[",e.type,"]"]}),!l&&g.jsx("span",{className:"text-xs text-amber-400",children:"edited"})]}),e.description&&g.jsx("p",{className:"text-xs text-slate-400 mt-1",children:e.description})]}),g.jsxs("div",{className:"flex items-center gap-2 min-w-[280px] justify-end",children:[e.type==="bool"?g.jsx("input",{type:"checkbox",checked:e.value===!0,onChange:c=>n(c.target.checked),className:"w-5 h-5 accent-cyan-500"}):e.type==="json"?g.jsx("textarea",{className:"w-72 h-20 bg-slate-900 border border-slate-700 rounded px-2 py-1 text-xs font-mono text-slate-100",value:a,onChange:c=>o(c.target.value),onBlur:u}):g.jsx("input",{type:e.type==="int"||e.type==="float"?"number":"text",step:e.type==="float"?"any":"1",className:"w-48 bg-slate-900 border border-slate-700 rounded px-2 py-1 text-sm text-slate-100",value:a,onChange:c=>o(c.target.value),onBlur:u,onKeyDown:c=>{c.key==="Enter"&&c.target.blur()}}),g.jsx(uae,{status:t,error:r,dirty:s}),g.jsx("button",{onClick:i,disabled:l,className:"text-slate-400 hover:text-white disabled:opacity-30 disabled:cursor-not-allowed",title:"Reset to default",children:g.jsx(DS,{className:"w-4 h-4"})})]})]})}function uae({status:e,error:t,dirty:r}){return e==="saving"?g.jsx(Ky,{className:"w-4 h-4 text-cyan-400 animate-spin"}):e==="saved"?g.jsx(zo,{className:"w-4 h-4 text-emerald-400"}):e==="error"?g.jsx("span",{title:t,className:"text-red-400 cursor-help",children:g.jsx(su,{className:"w-4 h-4"})}):r?g.jsx("span",{className:"w-2 h-2 bg-amber-400 rounded-full",title:"unsaved"}):g.jsx("span",{className:"w-4 h-4"})}function SP(e){return e.type==="bool"?String(e.value===!0):e.type==="json"?JSON.stringify(e.value,null,2):e.value===null||e.value===void 0?"":String(e.value)}function Pet(e,t){if(t==="int"){const r=Number(e);return!Number.isFinite(r)||!Number.isInteger(r)?{error:"expected integer",value:null,changed:()=>!1}:{error:null,value:r,changed:n=>n!==r}}if(t==="float"){const r=Number(e);return Number.isFinite(r)?{error:null,value:r,changed:n=>n!==r}:{error:"expected number",value:null,changed:()=>!1}}if(t==="str")return{error:null,value:e,changed:r=>r!==e};if(t==="json")try{const r=JSON.parse(e);return{error:null,value:r,changed:n=>JSON.stringify(n)!==JSON.stringify(r)}}catch{return{error:"invalid JSON",value:null,changed:()=>!1}}return{error:null,value:e,changed:()=>!0}}const TP={site_id:"",gauge_name:"",lat:0,lon:0,action_ft:null,flood_minor_ft:null,flood_moderate_ft:null,flood_major_ft:null,enabled:!0,updated_at:0};function ket(){const[e,t]=H.useState([]),[r,n]=H.useState(!0),[i,a]=H.useState(null),[o,s]=H.useState(null),[l,u]=H.useState(TP),[c,f]=H.useState(!1),[h,d]=H.useState("unknown"),v=H.useCallback(async()=>{n(!0),a(null);try{const S=await fetch("/api/gauge-sites");if(!S.ok)throw new Error(`GET: ${S.status}`);t(await S.json())}catch(S){a(String(S))}finally{n(!1)}},[]);H.useEffect(()=>{v()},[v]),H.useEffect(()=>{fetch("/api/config/environmental").then(S=>S.json()).then(S=>{var T;return d(((T=S==null?void 0:S.usgs)==null?void 0:T.feed_source)||"unknown")}).catch(()=>d("unknown"))},[]);const m=S=>{s(S.site_id),u({...S}),f(!1)},y=()=>{f(!0),s(null),u({...TP})},x=()=>{s(null),f(!1),u(TP)},_=async()=>{try{const S=c?"/api/gauge-sites":`/api/gauge-sites/${o}`,C=await fetch(S,{method:c?"POST":"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)});if(!C.ok){const A=await C.json().catch(()=>({}));alert(`save failed: ${A.detail||C.statusText}`);return}x(),v()}catch(S){alert(String(S))}},b=async S=>{if(!confirm(`Delete ${S}?`))return;const T=await fetch(`/api/gauge-sites/${S}`,{method:"DELETE"});if(!T.ok){alert(`delete failed: ${T.status}`);return}v()};return r?g.jsxs("div",{className:"p-6 text-slate-400",children:[g.jsx(Ky,{className:"w-5 h-5 animate-spin inline mr-2"}),"Loading…"]}):i?g.jsxs("div",{className:"p-6 text-red-400",children:["Load failed: ",i]}):g.jsxs("div",{className:"p-6 space-y-4",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx(LS,{className:"w-5 h-5 text-cyan-400"}),g.jsx("h1",{className:"text-xl font-semibold text-slate-100",children:"Gauge Sites"}),g.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[e.length," sites"]}),g.jsxs("button",{onClick:y,className:"ml-auto flex items-center gap-1 px-3 py-1 bg-cyan-700 hover:bg-cyan-600 rounded text-white text-sm",children:[g.jsx(yv,{className:"w-4 h-4"})," Add site"]})]}),g.jsx("p",{className:"text-xs text-slate-400 max-w-3xl",children:"NWS-AHPS stream gauge thresholds for the USGS NWIS handler. Each row pairs a USGS site_id with a human gauge name, lat/lon, and four flood thresholds (Action / Minor / Moderate / Major, all in feet). Disabled rows still ingest into gauge_readings -- they don't broadcast. The USGS lookup button auto-populates name + coords + thresholds from USGS Site Service + NWS NWPS when this adapter is on native feed_source; Central-feed mode disables it (see Reference → OR-not-AND for why). Changes take effect on the next event."}),c&&g.jsx(l7,{draft:l,setDraft:u,onSave:_,onCancel:x,adding:!0,feedSource:h}),g.jsx("div",{className:"bg-slate-800/60 border border-slate-700 rounded-lg overflow-x-auto",children:g.jsxs("table",{className:"w-full text-sm text-slate-200",children:[g.jsx("thead",{className:"bg-slate-900 text-xs text-slate-400 uppercase",children:g.jsxs("tr",{children:[g.jsx("th",{className:"px-3 py-2 text-left",children:"Site ID"}),g.jsx("th",{className:"px-3 py-2 text-left",children:"Name"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Lat,Lon"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Action"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Minor"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Moderate"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Major"}),g.jsx("th",{className:"px-3 py-2 text-center",children:"On"}),g.jsx("th",{className:"px-3 py-2"})]})}),g.jsx("tbody",{className:"divide-y divide-slate-700/60",children:e.map(S=>o===S.site_id?g.jsx("tr",{className:"bg-slate-900/40",children:g.jsx("td",{colSpan:9,className:"px-3 py-2",children:g.jsx(l7,{draft:l,setDraft:u,onSave:_,onCancel:x,feedSource:h})})},S.site_id):g.jsxs("tr",{className:"hover:bg-slate-800/50",children:[g.jsx("td",{className:"px-3 py-2 font-mono text-xs",children:S.site_id}),g.jsx("td",{className:"px-3 py-2",children:S.gauge_name}),g.jsxs("td",{className:"px-3 py-2 text-right text-xs",children:[S.lat.toFixed(3),",",S.lon.toFixed(3)]}),g.jsx("td",{className:"px-3 py-2 text-right",children:S.action_ft??"-"}),g.jsx("td",{className:"px-3 py-2 text-right",children:S.flood_minor_ft??"-"}),g.jsx("td",{className:"px-3 py-2 text-right",children:S.flood_moderate_ft??"-"}),g.jsx("td",{className:"px-3 py-2 text-right",children:S.flood_major_ft??"-"}),g.jsx("td",{className:"px-3 py-2 text-center",children:S.enabled?g.jsx(zo,{className:"w-4 h-4 text-emerald-400 inline"}):g.jsx(Xa,{className:"w-4 h-4 text-slate-500 inline"})}),g.jsxs("td",{className:"px-3 py-2 text-right",children:[g.jsx("button",{onClick:()=>m(S),className:"text-cyan-400 hover:text-cyan-300 text-xs mr-3",children:"Edit"}),g.jsx("button",{onClick:()=>b(S.site_id),className:"text-red-400 hover:text-red-300",children:g.jsx(Jy,{className:"w-4 h-4 inline"})})]})]},S.site_id))})]})})]})}function l7({draft:e,setDraft:t,onSave:r,onCancel:n,adding:i,feedSource:a}){const o=(v,m)=>t({...e,[v]:m}),[s,l]=H.useState(!1),[u,c]=H.useState(null),f=a!=="native"||!e.site_id.trim(),h=a!=="native"?"USGS lookup not available in central-feed mode (would be AND-model anti-pattern). Enter values manually.":e.site_id.trim()?"Auto-populate from USGS / NWS NWPS":"Enter a site_id first",d=async()=>{if(!f){l(!0),c(null);try{const v=e.site_id.replace(/^USGS-/i,""),m=await fetch(`/api/env/usgs/lookup/${encodeURIComponent(v)}`);if(m.status===404){const _=await m.json().catch(()=>({}));c(_.detail||"Lookup unavailable -- enter values manually"),l(!1);return}if(!m.ok){c(`Lookup failed (${m.status})`),l(!1);return}const y=await m.json(),x={...e};y.name&&!x.gauge_name&&(x.gauge_name=y.name),typeof y.lat=="number"&&(x.lat=y.lat),typeof y.lon=="number"&&(x.lon=y.lon),typeof y.action_ft=="number"&&(x.action_ft=y.action_ft),typeof y.flood_minor_ft=="number"&&(x.flood_minor_ft=y.flood_minor_ft),typeof y.flood_moderate_ft=="number"&&(x.flood_moderate_ft=y.flood_moderate_ft),typeof y.flood_major_ft=="number"&&(x.flood_major_ft=y.flood_major_ft),t(x)}catch(v){c(String(v))}finally{l(!1)}}};return g.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2 p-3 bg-slate-900/50 rounded",children:[g.jsxs("label",{className:"text-xs text-slate-400 col-span-2",children:["Site ID",g.jsxs("div",{className:"flex items-center gap-1 mt-1",children:[g.jsx("input",{className:"flex-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100 font-mono text-xs",value:e.site_id,onChange:v=>o("site_id",v.target.value),disabled:!i}),g.jsxs("button",{type:"button",onClick:d,disabled:f||s,title:h,className:"px-2 py-1 bg-slate-700 hover:bg-slate-600 disabled:opacity-30 disabled:cursor-not-allowed rounded text-xs text-slate-100 flex items-center gap-1",children:[s?g.jsx(Ky,{className:"w-3 h-3 animate-spin"}):g.jsx(jS,{className:"w-3 h-3"}),"USGS lookup"]})]}),u&&g.jsx("span",{className:"text-amber-400 text-xs mt-1 block",children:u})]}),g.jsxs("label",{className:"text-xs text-slate-400 col-span-2",children:["Gauge name",g.jsx("input",{className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.gauge_name,onChange:v=>o("gauge_name",v.target.value)})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Lat",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lat,onChange:v=>o("lat",parseFloat(v.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Lon",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lon,onChange:v=>o("lon",parseFloat(v.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Action ft",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.action_ft??"",onChange:v=>o("action_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Minor flood ft",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.flood_minor_ft??"",onChange:v=>o("flood_minor_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Moderate flood ft",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.flood_moderate_ft??"",onChange:v=>o("flood_moderate_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Major flood ft",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.flood_major_ft??"",onChange:v=>o("flood_major_ft",v.target.value===""?null:parseFloat(v.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-300 col-span-2 flex items-center gap-2 mt-2",children:[g.jsx("input",{type:"checkbox",checked:e.enabled,onChange:v=>o("enabled",v.target.checked),className:"accent-cyan-500"}),"Enabled"]}),g.jsxs("div",{className:"col-span-2 flex items-center justify-end gap-2 mt-2",children:[g.jsx("button",{onClick:n,className:"px-3 py-1 text-slate-300 hover:bg-slate-700 rounded text-sm",children:"Cancel"}),g.jsx("button",{onClick:r,className:"px-3 py-1 bg-cyan-700 hover:bg-cyan-600 text-white rounded text-sm",children:"Save"})]})]})}const CP={anchor_id:0,name:"",lat:0,lon:0,state:"ID",enabled:!0,updated_at:0};function Let(){const[e,t]=H.useState([]),[r,n]=H.useState(!0),[i,a]=H.useState(null),[o,s]=H.useState(null),[l,u]=H.useState(!1),[c,f]=H.useState(CP),h=H.useCallback(async()=>{n(!0),a(null);try{const _=await fetch("/api/town-anchors");if(!_.ok)throw new Error(`GET: ${_.status}`);t(await _.json())}catch(_){a(String(_))}finally{n(!1)}},[]);H.useEffect(()=>{h()},[h]);const d=_=>{s(_.anchor_id),f({..._}),u(!1)},v=()=>{u(!0),s(null),f({...CP})},m=()=>{s(null),u(!1),f(CP)},y=async()=>{const _=l?"/api/town-anchors":`/api/town-anchors/${o}`,S=await fetch(_,{method:l?"POST":"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});if(!S.ok){const T=await S.json().catch(()=>({}));alert(`save failed: ${T.detail||S.statusText}`);return}m(),h()},x=async _=>{if(!confirm(`Delete anchor ${_}?`))return;const b=await fetch(`/api/town-anchors/${_}`,{method:"DELETE"});if(!b.ok){alert(`delete failed: ${b.status}`);return}h()};return r?g.jsxs("div",{className:"p-6 text-slate-400",children:[g.jsx(Ky,{className:"w-5 h-5 animate-spin inline mr-2"}),"Loading…"]}):i?g.jsxs("div",{className:"p-6 text-red-400",children:["Load failed: ",i]}):g.jsxs("div",{className:"p-6 space-y-4",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx(mv,{className:"w-5 h-5 text-cyan-400"}),g.jsx("h1",{className:"text-xl font-semibold text-slate-100",children:"Town Anchors"}),g.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[e.length," towns"]}),g.jsxs("button",{onClick:v,className:"ml-auto flex items-center gap-1 px-3 py-1 bg-cyan-700 hover:bg-cyan-600 rounded text-white text-sm",children:[g.jsx(yv,{className:"w-4 h-4"})," Add town"]})]}),g.jsx("p",{className:"text-xs text-slate-400 max-w-3xl",children:`Lookup table for the "X mi of " suffix in the bot's broadcast text. When a fire or NWS alert renders, the bot walks: Photon nearest-town → this table → landclass → county/state → bare coords. Disabled rows fall through to the next anchor in the chain; the broadcast still goes out, it just uses a different anchor. Example: "3 mi N of Almo". See Reference → Curation: Gauges & Towns for the full chain.`}),l&&g.jsx(u7,{draft:c,setDraft:f,onSave:y,onCancel:m,adding:!0}),g.jsx("div",{className:"bg-slate-800/60 border border-slate-700 rounded-lg overflow-x-auto",children:g.jsxs("table",{className:"w-full text-sm text-slate-200",children:[g.jsx("thead",{className:"bg-slate-900 text-xs text-slate-400 uppercase",children:g.jsxs("tr",{children:[g.jsx("th",{className:"px-3 py-2 text-left",children:"Name"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Lat"}),g.jsx("th",{className:"px-3 py-2 text-right",children:"Lon"}),g.jsx("th",{className:"px-3 py-2 text-center",children:"State"}),g.jsx("th",{className:"px-3 py-2 text-center",children:"On"}),g.jsx("th",{className:"px-3 py-2"})]})}),g.jsx("tbody",{className:"divide-y divide-slate-700/60",children:e.map(_=>o===_.anchor_id?g.jsx("tr",{className:"bg-slate-900/40",children:g.jsx("td",{colSpan:6,className:"px-3 py-2",children:g.jsx(u7,{draft:c,setDraft:f,onSave:y,onCancel:m})})},_.anchor_id):g.jsxs("tr",{className:"hover:bg-slate-800/50",children:[g.jsx("td",{className:"px-3 py-2 capitalize",children:_.name}),g.jsx("td",{className:"px-3 py-2 text-right text-xs",children:_.lat.toFixed(4)}),g.jsx("td",{className:"px-3 py-2 text-right text-xs",children:_.lon.toFixed(4)}),g.jsx("td",{className:"px-3 py-2 text-center text-xs",children:_.state||"-"}),g.jsx("td",{className:"px-3 py-2 text-center",children:_.enabled?g.jsx(zo,{className:"w-4 h-4 text-emerald-400 inline"}):g.jsx(Xa,{className:"w-4 h-4 text-slate-500 inline"})}),g.jsxs("td",{className:"px-3 py-2 text-right",children:[g.jsx("button",{onClick:()=>d(_),className:"text-cyan-400 hover:text-cyan-300 text-xs mr-3",children:"Edit"}),g.jsx("button",{onClick:()=>x(_.anchor_id),className:"text-red-400 hover:text-red-300",children:g.jsx(Jy,{className:"w-4 h-4 inline"})})]})]},_.anchor_id))})]})})]})}function u7({draft:e,setDraft:t,onSave:r,onCancel:n,adding:i}){const a=(o,s)=>t({...e,[o]:s});return g.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-2 p-3 bg-slate-900/50 rounded",children:[g.jsxs("label",{className:"text-xs text-slate-400 col-span-2",children:["Name (lowercased on save)",g.jsx("input",{className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.name,onChange:o=>a("name",o.target.value),disabled:!i})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["State",g.jsx("input",{className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.state??"",onChange:o=>a("state",o.target.value)})]}),g.jsxs("label",{className:"text-xs text-slate-400 flex items-center gap-2",children:[g.jsx("input",{type:"checkbox",checked:e.enabled,onChange:o=>a("enabled",o.target.checked),className:"accent-cyan-500 mt-4"}),"Enabled"]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Lat",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lat,onChange:o=>a("lat",parseFloat(o.target.value))})]}),g.jsxs("label",{className:"text-xs text-slate-400",children:["Lon",g.jsx("input",{type:"number",step:"any",className:"block w-full mt-1 bg-slate-800 border border-slate-700 rounded px-2 py-1 text-slate-100",value:e.lon,onChange:o=>a("lon",parseFloat(o.target.value))})]}),g.jsxs("div",{className:"col-span-2 flex items-center justify-end gap-2 mt-2",children:[g.jsx("button",{onClick:n,className:"px-3 py-1 text-slate-300 hover:bg-slate-700 rounded text-sm",children:"Cancel"}),g.jsx("button",{onClick:r,className:"px-3 py-1 bg-cyan-700 hover:bg-cyan-600 text-white rounded text-sm",children:"Save"})]})]})}function Iet(){return g.jsx(Rce,{children:g.jsx(Vce,{children:g.jsxs(Yue,{children:[g.jsx(Ma,{path:"/",element:g.jsx(bNe,{})}),g.jsx(Ma,{path:"/mesh",element:g.jsx(BQe,{})}),g.jsx(Ma,{path:"/environment",element:g.jsx(uet,{})}),g.jsx(Ma,{path:"/config",element:g.jsx(iet,{})}),g.jsx(Ma,{path:"/alerts",element:g.jsx(met,{})}),g.jsx(Ma,{path:"/notifications",element:g.jsx(wet,{})}),g.jsx(Ma,{path:"/reference",element:g.jsx(Tet,{})}),g.jsx(Ma,{path:"/adapter-config",element:g.jsx(Aet,{})}),g.jsx(Ma,{path:"/gauge-sites",element:g.jsx(ket,{})}),g.jsx(Ma,{path:"/town-anchors",element:g.jsx(Let,{})})]})})})}AP.createRoot(document.getElementById("root")).render(g.jsx(Q.StrictMode,{children:g.jsx(tce,{children:g.jsx(Iet,{})})})); diff --git a/meshai/dashboard/static/index.html b/meshai/dashboard/static/index.html index 5cdbfb9..21c46e1 100644 --- a/meshai/dashboard/static/index.html +++ b/meshai/dashboard/static/index.html @@ -8,8 +8,8 @@ - - + +