From 95ec7d53516bd6fbffe0d66177e570290eec3a0c Mon Sep 17 00:00:00 2001 From: K7ZVX Date: Thu, 14 May 2026 06:02:08 +0000 Subject: [PATCH] fix: notification system improvements and threshold corrections MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix leftover severity references (info→routine in filter dropdown) - Fix node_id int handling in connector and channels (handle both int and string) - Add LLM-generated reports for notifications (replace raw data dumps) - Fix health.score.composite attribute path for RF reports - Add deterministic HF band conditions from SFI/Kp values - Remove max_tokens from LLM calls (character limits at delivery) - Weather feed improvements: show event_type + area, local events first - Fix is_online to use configured offline_threshold_hours in data store - Update stale defaults: offline 24→2h, battery_warning 20→30% - Add TODO comments for packet_threshold scale bug Co-Authored-By: Claude Opus 4.5 --- config.example.yaml | 8 +- meshai/config.py | 1 + meshai/dashboard/api/notification_routes.py | 610 +++++++++--------- .../dashboard/static/assets/index-BXyt_EfK.js | 513 --------------- .../dashboard/static/assets/index-Bildyb1E.js | 523 +++++++++++++++ .../static/assets/index-CtFYHJy4.css | 1 - .../static/assets/index-QhNRb-ap.css | 1 + meshai/dashboard/static/index.html | 4 +- meshai/mesh_data_store.py | 2 +- meshai/mesh_health.py | 1 + meshai/mesh_reporter.py | 2 +- meshai/notifications/categories.py | 484 +++++++------- meshai/notifications/summarizer.py | 128 ++-- 13 files changed, 1145 insertions(+), 1133 deletions(-) delete mode 100644 meshai/dashboard/static/assets/index-BXyt_EfK.js create mode 100644 meshai/dashboard/static/assets/index-Bildyb1E.js delete mode 100644 meshai/dashboard/static/assets/index-CtFYHJy4.css create mode 100644 meshai/dashboard/static/assets/index-QhNRb-ap.css diff --git a/config.example.yaml b/config.example.yaml index 6a68c1a..2585dde 100644 --- a/config.example.yaml +++ b/config.example.yaml @@ -119,18 +119,18 @@ mesh_sources: [] # enabled: true # region_radius_miles: 40.0 # Radius for region clustering # locality_radius_miles: 8.0 # Radius for locality clustering -# offline_threshold_hours: 24 # Hours before node considered offline +# offline_threshold_hours: 2 # Hours before node considered offline # packet_threshold: 500 # Non-text packets per 24h to flag -# battery_warning_percent: 20 # Battery level for warnings +# battery_warning_percent: 30 # Battery level for warnings # infra_overrides: [] # Node IDs to exclude from infrastructure # region_labels: {} # Override auto-names: {"Twin Falls": "Magic Valley"} mesh_intelligence: enabled: false region_radius_miles: 40.0 locality_radius_miles: 8.0 - offline_threshold_hours: 24 + offline_threshold_hours: 2 packet_threshold: 500 - battery_warning_percent: 20 + battery_warning_percent: 30 infra_overrides: [] region_labels: {} diff --git a/meshai/config.py b/meshai/config.py index 2c5538a..4225ae7 100644 --- a/meshai/config.py +++ b/meshai/config.py @@ -284,6 +284,7 @@ class MeshIntelligenceConfig: locality_radius_miles: float = 8.0 # Radius for locality clustering within regions offline_threshold_hours: int = 2 # Hours before node considered offline packet_threshold: int = 500 # Non-text packets per 24h to flag + # TODO: behavior pillar uses wrong scale - see meshai-v03-notification-handoff.md bug #2 battery_warning_percent: int = 30 # Battery level for warnings # Alert settings diff --git a/meshai/dashboard/api/notification_routes.py b/meshai/dashboard/api/notification_routes.py index a3f0e55..a5c0804 100644 --- a/meshai/dashboard/api/notification_routes.py +++ b/meshai/dashboard/api/notification_routes.py @@ -1,305 +1,305 @@ -"""Notification API routes with comprehensive testing.""" - -from fastapi import APIRouter, Request, HTTPException -from pydantic import BaseModel -from typing import Optional, List, Dict, Any - -router = APIRouter(prefix="/notifications", tags=["notifications"]) - - -class TestRequest(BaseModel): - """Request body for test endpoint.""" - send: bool = False # Legacy: True = send_test - action: str = "preview" # "preview", "send_test", "send_status", "send_live" - - -class ChannelTestRequest(BaseModel): - """Request body for channel connectivity test.""" - type: str # mesh_broadcast, mesh_dm, email, webhook - # Mesh broadcast - channel_index: Optional[int] = 0 - # Mesh DM - node_ids: Optional[List[str]] = [] - # Email - smtp_host: Optional[str] = "" - smtp_port: Optional[int] = 587 - smtp_user: Optional[str] = "" - smtp_password: Optional[str] = "" - smtp_tls: Optional[bool] = True - from_address: Optional[str] = "" - recipients: Optional[List[str]] = [] - # Webhook - url: Optional[str] = "" - headers: Optional[Dict[str, str]] = {} - - -class RuleSourcesRequest(BaseModel): - """Request body for rule sources health check.""" - categories: List[str] = [] - - -@router.get("/categories") -async def get_categories(): - """Get all alert categories with descriptions.""" - try: - from ...notifications.categories import list_categories - return list_categories() - except ImportError: - return [] - - -@router.get("/rules") -async def get_rules(request: Request): - """Get configured notification rules with stats.""" - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - return [] - - rules = notification_router.get_rules() - - # Enhance rules with stats - result = [] - for i, rule in enumerate(rules): - rule_copy = dict(rule) - stats = rule_copy.pop("_stats", {}) - rule_copy["stats"] = stats - rule_copy["index"] = i - result.append(rule_copy) - - return result - - -@router.get("/rules/{rule_index}/stats") -async def get_rule_stats(request: Request, rule_index: int): - """Get statistics for a specific rule.""" - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - rules_config = getattr(request.app.state, "config", None) - if rules_config: - rules_config = getattr(rules_config, "rules", []) - if rule_index < 0 or rule_index >= len(rules_config): - raise HTTPException(status_code=404, detail="Rule not found") - - rule = rules_config[rule_index] - if hasattr(rule, "__dict__"): - rule_dict = {k: v for k, v in rule.__dict__.items() if not k.startswith("_")} - else: - rule_dict = dict(rule) - - rule_name = rule_dict.get("name", f"Rule {rule_index}") - return notification_router.get_rule_stats(rule_name) - - return {"last_fired": None, "last_test": None, "fire_count": 0} - - -@router.post("/channels/test") -async def test_channel(request: Request, body: ChannelTestRequest): - """Test channel connectivity without sending actual alert content. - - Returns: - { - "success": bool, - "message": str, # Human-readable result - "error": str, # Detailed error if failed - "details": {} # Channel-specific details - } - """ - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - # Build channel config from request - channel_config = {"type": body.type} - - if body.type == "mesh_broadcast": - channel_config["channel_index"] = body.channel_index or 0 - elif body.type == "mesh_dm": - channel_config["node_ids"] = body.node_ids or [] - elif body.type == "email": - channel_config.update({ - "smtp_host": body.smtp_host or "", - "smtp_port": body.smtp_port or 587, - "smtp_user": body.smtp_user or "", - "smtp_password": body.smtp_password or "", - "smtp_tls": body.smtp_tls if body.smtp_tls is not None else True, - "from_address": body.from_address or "", - "recipients": body.recipients or [], - }) - elif body.type == "webhook": - channel_config.update({ - "url": body.url or "", - "headers": body.headers or {}, - }) - else: - return { - "success": False, - "message": "Unknown channel type", - "error": f"Channel type '{body.type}' is not supported", - "details": {} - } - - result = await notification_router.test_channel(channel_config) - return result - - -@router.post("/rules/{rule_index}/test") -async def test_rule(request: Request, rule_index: int, body: Optional[TestRequest] = None): - """Test a notification rule against current conditions. - - Returns comprehensive test result including: - - Live data from relevant environmental feeds - - Matching alerts (conditions that would fire) - - Near-misses (filtered by severity threshold) - - Preview messages and delivery status - - Source health (which feeds are enabled) - - Rule statistics (last fired, fire count) - """ - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - alert_engine = getattr(request.app.state, "alert_engine", None) - env_store = getattr(request.app.state, "env_store", None) - health_engine = getattr(request.app.state, "health_engine", None) - - action = body.action if body else "preview" - send = body.send if body else False - - # Legacy support - if send and action == "preview": - action = "send_test" - - result = await notification_router.test_rule_with_conditions( - rule_index, - alert_engine=alert_engine, - env_store=env_store, - health_engine=health_engine, - action=action, - ) - - return result - - -@router.post("/rules/{rule_index}/preview") -async def preview_rule(request: Request, rule_index: int): - """Preview what a rule would match right now (without sending).""" - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - alert_engine = getattr(request.app.state, "alert_engine", None) - env_store = getattr(request.app.state, "env_store", None) - health_engine = getattr(request.app.state, "health_engine", None) - - result = await notification_router.test_rule_with_conditions( - rule_index, - alert_engine=alert_engine, - env_store=env_store, - health_engine=health_engine, - action="preview", - ) - - return result - - -@router.post("/rules/sources") -async def get_rule_sources(request: Request, body: RuleSourcesRequest): - """Get data source health for a set of categories. - - Returns per-category source status: - { - "category_id": { - "enabled": true/false, - "active_events": number, - "source": "nws"/"swpc"/etc, - "status": "ok"/"disabled"/"no_data" - } - } - """ - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - env_store = getattr(request.app.state, "env_store", None) - - return notification_router.get_source_health(body.categories, env_store) - - -@router.post("/rules/{rule_index}/send-status") -async def send_rule_status(request: Request, rule_index: int): - """Send current conditions summary through a rule's channel. - - Formats current live data as a readable message and delivers - through the rule's configured channel with [STATUS] prefix. - """ - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - alert_engine = getattr(request.app.state, "alert_engine", None) - env_store = getattr(request.app.state, "env_store", None) - health_engine = getattr(request.app.state, "health_engine", None) - - result = await notification_router.test_rule_with_conditions( - rule_index, - alert_engine=alert_engine, - env_store=env_store, - health_engine=health_engine, - action="send_status", - ) - - return result - - -@router.post("/rules/{rule_index}/send-test") -async def send_rule_test(request: Request, rule_index: int): - """Send example alert message through a rule's channel. - - Sends the example_message from the rule's first category - through the configured channel with [TEST] prefix. - """ - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - alert_engine = getattr(request.app.state, "alert_engine", None) - env_store = getattr(request.app.state, "env_store", None) - health_engine = getattr(request.app.state, "health_engine", None) - - result = await notification_router.test_rule_with_conditions( - rule_index, - alert_engine=alert_engine, - env_store=env_store, - health_engine=health_engine, - action="send_test", - ) - - return result - - -@router.post("/rules/{rule_index}/send-live") -async def send_rule_live(request: Request, rule_index: int): - """Send actual live alert through a rule's channel. - - Only available when there are matching conditions. - Sends one of the actual matching alerts with [LIVE TEST] prefix. - """ - notification_router = getattr(request.app.state, "notification_router", None) - if not notification_router: - raise HTTPException(status_code=404, detail="Notification router not configured") - - alert_engine = getattr(request.app.state, "alert_engine", None) - env_store = getattr(request.app.state, "env_store", None) - health_engine = getattr(request.app.state, "health_engine", None) - - result = await notification_router.test_rule_with_conditions( - rule_index, - alert_engine=alert_engine, - env_store=env_store, - health_engine=health_engine, - action="send_live", - ) - - return result +"""Notification API routes with comprehensive testing.""" + +from fastapi import APIRouter, Request, HTTPException +from pydantic import BaseModel +from typing import Optional, List, Dict, Any + +router = APIRouter(prefix="/notifications", tags=["notifications"]) + + +class TestRequest(BaseModel): + """Request body for test endpoint.""" + send: bool = False # Legacy: True = send_test + action: str = "preview" # "preview", "send_test", "send_status", "send_live" + + +class ChannelTestRequest(BaseModel): + """Request body for channel connectivity test.""" + type: str # mesh_broadcast, mesh_dm, email, webhook + # Mesh broadcast + channel_index: Optional[int] = 0 + # Mesh DM + node_ids: Optional[List[str]] = [] + # Email + smtp_host: Optional[str] = "" + smtp_port: Optional[int] = 587 + smtp_user: Optional[str] = "" + smtp_password: Optional[str] = "" + smtp_tls: Optional[bool] = True + from_address: Optional[str] = "" + recipients: Optional[List[str]] = [] + # Webhook + url: Optional[str] = "" + headers: Optional[Dict[str, str]] = {} + + +class RuleSourcesRequest(BaseModel): + """Request body for rule sources health check.""" + categories: List[str] = [] + + +@router.get("/categories") +async def get_categories(): + """Get all alert categories with descriptions.""" + try: + from ...notifications.categories import list_categories + return list_categories() + except ImportError: + return [] + + +@router.get("/rules") +async def get_rules(request: Request): + """Get configured notification rules with stats.""" + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + return [] + + rules = notification_router.get_rules() + + # Enhance rules with stats + result = [] + for i, rule in enumerate(rules): + rule_copy = dict(rule) + stats = rule_copy.pop("_stats", {}) + rule_copy["stats"] = stats + rule_copy["index"] = i + result.append(rule_copy) + + return result + + +@router.get("/rules/{rule_index}/stats") +async def get_rule_stats(request: Request, rule_index: int): + """Get statistics for a specific rule.""" + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + rules_config = getattr(request.app.state, "config", None) + if rules_config: + rules_config = getattr(rules_config, "rules", []) + if rule_index < 0 or rule_index >= len(rules_config): + raise HTTPException(status_code=404, detail="Rule not found") + + rule = rules_config[rule_index] + if hasattr(rule, "__dict__"): + rule_dict = {k: v for k, v in rule.__dict__.items() if not k.startswith("_")} + else: + rule_dict = dict(rule) + + rule_name = rule_dict.get("name", f"Rule {rule_index}") + return notification_router.get_rule_stats(rule_name) + + return {"last_fired": None, "last_test": None, "fire_count": 0} + + +@router.post("/channels/test") +async def test_channel(request: Request, body: ChannelTestRequest): + """Test channel connectivity without sending actual alert content. + + Returns: + { + "success": bool, + "message": str, # Human-readable result + "error": str, # Detailed error if failed + "details": {} # Channel-specific details + } + """ + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + # Build channel config from request + channel_config = {"type": body.type} + + if body.type == "mesh_broadcast": + channel_config["channel_index"] = body.channel_index or 0 + elif body.type == "mesh_dm": + channel_config["node_ids"] = body.node_ids or [] + elif body.type == "email": + channel_config.update({ + "smtp_host": body.smtp_host or "", + "smtp_port": body.smtp_port or 587, + "smtp_user": body.smtp_user or "", + "smtp_password": body.smtp_password or "", + "smtp_tls": body.smtp_tls if body.smtp_tls is not None else True, + "from_address": body.from_address or "", + "recipients": body.recipients or [], + }) + elif body.type == "webhook": + channel_config.update({ + "url": body.url or "", + "headers": body.headers or {}, + }) + else: + return { + "success": False, + "message": "Unknown channel type", + "error": f"Channel type '{body.type}' is not supported", + "details": {} + } + + result = await notification_router.test_channel(channel_config) + return result + + +@router.post("/rules/{rule_index}/test") +async def test_rule(request: Request, rule_index: int, body: Optional[TestRequest] = None): + """Test a notification rule against current conditions. + + Returns comprehensive test result including: + - Live data from relevant environmental feeds + - Matching alerts (conditions that would fire) + - Near-misses (filtered by severity threshold) + - Preview messages and delivery status + - Source health (which feeds are enabled) + - Rule statistics (last fired, fire count) + """ + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + alert_engine = getattr(request.app.state, "alert_engine", None) + env_store = getattr(request.app.state, "env_store", None) + health_engine = getattr(request.app.state, "health_engine", None) + + action = body.action if body else "preview" + send = body.send if body else False + + # Legacy support + if send and action == "preview": + action = "send_test" + + result = await notification_router.test_rule_with_conditions( + rule_index, + alert_engine=alert_engine, + env_store=env_store, + health_engine=health_engine, + action=action, + ) + + return result + + +@router.post("/rules/{rule_index}/preview") +async def preview_rule(request: Request, rule_index: int): + """Preview what a rule would match right now (without sending).""" + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + alert_engine = getattr(request.app.state, "alert_engine", None) + env_store = getattr(request.app.state, "env_store", None) + health_engine = getattr(request.app.state, "health_engine", None) + + result = await notification_router.test_rule_with_conditions( + rule_index, + alert_engine=alert_engine, + env_store=env_store, + health_engine=health_engine, + action="preview", + ) + + return result + + +@router.post("/rules/sources") +async def get_rule_sources(request: Request, body: RuleSourcesRequest): + """Get data source health for a set of categories. + + Returns per-category source status: + { + "category_id": { + "enabled": true/false, + "active_events": number, + "source": "nws"/"swpc"/etc, + "status": "ok"/"disabled"/"no_data" + } + } + """ + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + env_store = getattr(request.app.state, "env_store", None) + + return notification_router.get_source_health(body.categories, env_store) + + +@router.post("/rules/{rule_index}/send-status") +async def send_rule_status(request: Request, rule_index: int): + """Send current conditions summary through a rule's channel. + + Formats current live data as a readable message and delivers + through the rule's configured channel with [STATUS] prefix. + """ + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + alert_engine = getattr(request.app.state, "alert_engine", None) + env_store = getattr(request.app.state, "env_store", None) + health_engine = getattr(request.app.state, "health_engine", None) + + result = await notification_router.test_rule_with_conditions( + rule_index, + alert_engine=alert_engine, + env_store=env_store, + health_engine=health_engine, + action="send_status", + ) + + return result + + +@router.post("/rules/{rule_index}/send-test") +async def send_rule_test(request: Request, rule_index: int): + """Send example alert message through a rule's channel. + + Sends the example_message from the rule's first category + through the configured channel with [TEST] prefix. + """ + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + alert_engine = getattr(request.app.state, "alert_engine", None) + env_store = getattr(request.app.state, "env_store", None) + health_engine = getattr(request.app.state, "health_engine", None) + + result = await notification_router.test_rule_with_conditions( + rule_index, + alert_engine=alert_engine, + env_store=env_store, + health_engine=health_engine, + action="send_test", + ) + + return result + + +@router.post("/rules/{rule_index}/send-live") +async def send_rule_live(request: Request, rule_index: int): + """Send actual live alert through a rule's channel. + + Only available when there are matching conditions. + Sends one of the actual matching alerts with [LIVE TEST] prefix. + """ + notification_router = getattr(request.app.state, "notification_router", None) + if not notification_router: + raise HTTPException(status_code=404, detail="Notification router not configured") + + alert_engine = getattr(request.app.state, "alert_engine", None) + env_store = getattr(request.app.state, "env_store", None) + health_engine = getattr(request.app.state, "health_engine", None) + + result = await notification_router.test_rule_with_conditions( + rule_index, + alert_engine=alert_engine, + env_store=env_store, + health_engine=health_engine, + action="send_live", + ) + + return result diff --git a/meshai/dashboard/static/assets/index-BXyt_EfK.js b/meshai/dashboard/static/assets/index-BXyt_EfK.js deleted file mode 100644 index b63ee52..0000000 --- a/meshai/dashboard/static/assets/index-BXyt_EfK.js +++ /dev/null @@ -1,513 +0,0 @@ -function uoe(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 ag=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ft(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var GU={exports:{}},iS={},WU={exports:{}},yt={};/** - * @license React - * react.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var By=Symbol.for("react.element"),coe=Symbol.for("react.portal"),foe=Symbol.for("react.fragment"),hoe=Symbol.for("react.strict_mode"),doe=Symbol.for("react.profiler"),voe=Symbol.for("react.provider"),poe=Symbol.for("react.context"),goe=Symbol.for("react.forward_ref"),moe=Symbol.for("react.suspense"),yoe=Symbol.for("react.memo"),xoe=Symbol.for("react.lazy"),V5=Symbol.iterator;function _oe(e){return e===null||typeof e!="object"?null:(e=V5&&e[V5]||e["@@iterator"],typeof e=="function"?e:null)}var HU={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},UU=Object.assign,ZU={};function lv(e,t,r){this.props=e,this.context=t,this.refs=ZU,this.updater=r||HU}lv.prototype.isReactComponent={};lv.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};lv.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function YU(){}YU.prototype=lv.prototype;function FO(e,t,r){this.props=e,this.context=t,this.refs=ZU,this.updater=r||HU}var VO=FO.prototype=new YU;VO.constructor=FO;UU(VO,lv.prototype);VO.isPureReactComponent=!0;var G5=Array.isArray,XU=Object.prototype.hasOwnProperty,GO={current:null},qU={key:!0,ref:!0,__self:!0,__source:!0};function KU(e,t,r){var n,i={},a=null,o=null;if(t!=null)for(n in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(a=""+t.key),t)XU.call(t,n)&&!qU.hasOwnProperty(n)&&(i[n]=t[n]);var s=arguments.length-2;if(s===1)i.children=r;else if(1>>1,Z=z[Y];if(0>>1;Yi(ce,W))gei(We,ce)?(z[Y]=We,z[ge]=W,Y=ge):(z[Y]=ce,z[ae]=W,Y=ae);else if(gei(We,W))z[Y]=We,z[ge]=W,Y=ge;else break e}}return V}function i(z,V){var W=z.sortIndex-V.sortIndex;return W!==0?W:z.id-V.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,y=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(z){for(var V=r(u);V!==null;){if(V.callback===null)n(u);else if(V.startTime<=z)n(u),V.sortIndex=V.expirationTime,t(l,V);else break;V=r(u)}}function S(z){if(g=!1,b(z),!v)if(r(l)!==null)v=!0,$(T);else{var V=r(u);V!==null&&U(S,V.startTime-z)}}function T(z,V){v=!1,g&&(g=!1,y(P),P=-1),d=!0;var W=h;try{for(b(V),f=r(l);f!==null&&(!(f.expirationTime>V)||z&&!O());){var Y=f.callback;if(typeof Y=="function"){f.callback=null,h=f.priorityLevel;var Z=Y(f.expirationTime<=V);V=e.unstable_now(),typeof Z=="function"?f.callback=Z:f===r(l)&&n(l),b(V)}else n(l);f=r(l)}if(f!==null)var J=!0;else{var ae=r(u);ae!==null&&U(S,ae.startTime-V),J=!1}return J}finally{f=null,h=W,d=!1}}var A=!1,M=null,P=-1,k=5,I=-1;function O(){return!(e.unstable_now()-Iz||125Y?(z.sortIndex=W,t(u,z),r(l)===null&&z===r(u)&&(g?(y(P),P=-1):g=!0,U(S,W-Y))):(z.sortIndex=Z,t(l,z),v||d||(v=!0,$(T))),z},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(z){var V=h;return function(){var W=h;h=V;try{return z.apply(this,arguments)}finally{h=W}}}})(r7);t7.exports=r7;var Ooe=t7.exports;/** - * @license React - * react-dom.production.min.js - * - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */var Eoe=H,Oi=Ooe;function me(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),oP=Object.prototype.hasOwnProperty,Doe=/^[: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]*$/,H5={},U5={};function Noe(e){return oP.call(U5,e)?!0:oP.call(H5,e)?!1:Doe.test(e)?U5[e]=!0:(H5[e]=!0,!1)}function joe(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 Roe(e,t,r,n){if(t===null||typeof t>"u"||joe(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 HO=/[\-:]([a-z])/g;function UO(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(HO,UO);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(HO,UO);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(HO,UO);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 ZO(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{kA=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?og(e):""}function Boe(e){switch(e.tag){case 5:return og(e.type);case 16:return og("Lazy");case 13:return og("Suspense");case 19:return og("SuspenseList");case 0:case 2:case 15:return e=IA(e.type,!1),e;case 11:return e=IA(e.type.render,!1),e;case 1:return e=IA(e.type,!0),e;default:return""}}function cP(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 Ah:return"Fragment";case Th:return"Portal";case sP:return"Profiler";case YO:return"StrictMode";case lP:return"Suspense";case uP:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case a7:return(e.displayName||"Context")+".Consumer";case i7:return(e._context.displayName||"Context")+".Provider";case XO:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case qO:return t=e.displayName||null,t!==null?t:cP(e.type)||"Memo";case pl:t=e._payload,e=e._init;try{return cP(e(t))}catch{}}return null}function zoe(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 cP(t);case 8:return t===YO?"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 Jl(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function s7(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function $oe(e){var t=s7(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 H0(e){e._valueTracker||(e._valueTracker=$oe(e))}function l7(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=s7(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 fP(e,t){var r=t.checked;return cr({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function Y5(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=Jl(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 u7(e,t){t=t.checked,t!=null&&ZO(e,"checked",t,!1)}function hP(e,t){u7(e,t);var r=Jl(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,Jl(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function X5(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 sg=Array.isArray;function Zh(e,t,r,n){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=U0.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function rm(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Tg={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},Foe=["Webkit","ms","Moz","O"];Object.keys(Tg).forEach(function(e){Foe.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Tg[t]=Tg[e]})});function d7(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Tg.hasOwnProperty(e)&&Tg[e]?(""+t).trim():t+"px"}function v7(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 Voe=cr({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 gP(e,t){if(t){if(Voe[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(me(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(me(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(me(61))}if(t.style!=null&&typeof t.style!="object")throw Error(me(62))}}function mP(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 yP=null;function KO(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var xP=null,Yh=null,Xh=null;function Q5(e){if(e=Fy(e)){if(typeof xP!="function")throw Error(me(280));var t=e.stateNode;t&&(t=uS(t),xP(e.stateNode,e.type,t))}}function p7(e){Yh?Xh?Xh.push(e):Xh=[e]:Yh=e}function g7(){if(Yh){var e=Yh,t=Xh;if(Xh=Yh=null,Q5(e),t)for(e=0;e>>=0,e===0?32:31-(Joe(e)/ese|0)|0}var Z0=64,Y0=4194304;function lg(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 bb(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=lg(s):(a&=o,a!==0&&(n=lg(a)))}else o=r&~i,o!==0?n=lg(o):a!==0&&(n=lg(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 zy(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-za(t),e[t]=r}function ise(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=Cg),sB=" ",lB=!1;function j7(e,t){switch(e){case"keyup":return Ose.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function R7(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Ch=!1;function Dse(e,t){switch(e){case"compositionend":return R7(t);case"keypress":return t.which!==32?null:(lB=!0,sB);case"textInput":return e=t.data,e===sB&&lB?null:e;default:return null}}function Nse(e,t){if(Ch)return e==="compositionend"||!aE&&j7(e,t)?(e=D7(),$_=rE=wl=null,Ch=!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=hB(r)}}function F7(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?F7(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function V7(){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 oE(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 Wse(e){var t=V7(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&F7(r.ownerDocument.documentElement,r)){if(n!==null&&oE(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=dB(r,a);var o=dB(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,Mh=null,AP=null,Pg=null,CP=!1;function vB(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;CP||Mh==null||Mh!==mb(n)||(n=Mh,"selectionStart"in n&&oE(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}),Pg&&lm(Pg,n)||(Pg=n,n=Tb(AP,"onSelect"),0kh||(e.current=OP[kh],OP[kh]=null,kh--)}function Yt(e,t){kh++,OP[kh]=e.current,e.current=t}var eu={},Nn=uu(eu),li=uu(!1),Gc=eu;function hd(e,t){var r=e.type.contextTypes;if(!r)return eu;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 ui(e){return e=e.childContextTypes,e!=null}function Cb(){Jt(li),Jt(Nn)}function bB(e,t,r){if(Nn.current!==eu)throw Error(me(168));Yt(Nn,t),Yt(li,r)}function K7(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(me(108,zoe(e)||"Unknown",i));return cr({},r,n)}function Mb(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||eu,Gc=Nn.current,Yt(Nn,e),Yt(li,li.current),!0}function wB(e,t,r){var n=e.stateNode;if(!n)throw Error(me(169));r?(e=K7(e,t,Gc),n.__reactInternalMemoizedMergedChildContext=e,Jt(li),Jt(Nn),Yt(Nn,e)):Jt(li),Yt(li,r)}var us=null,cS=!1,HA=!1;function Q7(e){us===null?us=[e]:us.push(e)}function rle(e){cS=!0,Q7(e)}function cu(){if(!HA&&us!==null){HA=!0;var e=0,t=Dt;try{var r=us;for(Dt=1;e>=o,i-=o,fs=1<<32-za(t)+i|r<P?(k=M,M=null):k=M.sibling;var I=h(y,M,b[P],S);if(I===null){M===null&&(M=k);break}e&&M&&I.alternate===null&&t(y,M),_=a(I,_,P),A===null?T=I:A.sibling=I,A=I,M=k}if(P===b.length)return r(y,M),er&&ec(y,P),T;if(M===null){for(;PP?(k=M,M=null):k=M.sibling;var O=h(y,M,I.value,S);if(O===null){M===null&&(M=k);break}e&&M&&O.alternate===null&&t(y,M),_=a(O,_,P),A===null?T=O:A.sibling=O,A=O,M=k}if(I.done)return r(y,M),er&&ec(y,P),T;if(M===null){for(;!I.done;P++,I=b.next())I=f(y,I.value,S),I!==null&&(_=a(I,_,P),A===null?T=I:A.sibling=I,A=I);return er&&ec(y,P),T}for(M=n(y,M);!I.done;P++,I=b.next())I=d(M,y,P,I.value,S),I!==null&&(e&&I.alternate!==null&&M.delete(I.key===null?P:I.key),_=a(I,_,P),A===null?T=I:A.sibling=I,A=I);return e&&M.forEach(function(D){return t(y,D)}),er&&ec(y,P),T}function m(y,_,b,S){if(typeof b=="object"&&b!==null&&b.type===Ah&&b.key===null&&(b=b.props.children),typeof b=="object"&&b!==null){switch(b.$$typeof){case W0:e:{for(var T=b.key,A=_;A!==null;){if(A.key===T){if(T=b.type,T===Ah){if(A.tag===7){r(y,A.sibling),_=i(A,b.props.children),_.return=y,y=_;break e}}else if(A.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===pl&&AB(T)===A.type){r(y,A.sibling),_=i(A,b.props),_.ref=vp(y,A,b),_.return=y,y=_;break e}r(y,A);break}else t(y,A);A=A.sibling}b.type===Ah?(_=Ic(b.props.children,y.mode,S,b.key),_.return=y,y=_):(S=Y_(b.type,b.key,b.props,null,y.mode,S),S.ref=vp(y,_,b),S.return=y,y=S)}return o(y);case Th:e:{for(A=b.key;_!==null;){if(_.key===A)if(_.tag===4&&_.stateNode.containerInfo===b.containerInfo&&_.stateNode.implementation===b.implementation){r(y,_.sibling),_=i(_,b.children||[]),_.return=y,y=_;break e}else{r(y,_);break}else t(y,_);_=_.sibling}_=JA(b,y.mode,S),_.return=y,y=_}return o(y);case pl:return A=b._init,m(y,_,A(b._payload),S)}if(sg(b))return v(y,_,b,S);if(up(b))return g(y,_,b,S);tx(y,b)}return typeof b=="string"&&b!==""||typeof b=="number"?(b=""+b,_!==null&&_.tag===6?(r(y,_.sibling),_=i(_,b),_.return=y,y=_):(r(y,_),_=QA(b,y.mode,S),_.return=y,y=_),o(y)):r(y,_)}return m}var vd=r9(!0),n9=r9(!1),kb=uu(null),Ib=null,Eh=null,cE=null;function fE(){cE=Eh=Ib=null}function hE(e){var t=kb.current;Jt(kb),e._currentValue=t}function NP(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 Kh(e,t){Ib=e,cE=Eh=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(oi=!0),e.firstContext=null)}function ua(e){var t=e._currentValue;if(cE!==e)if(e={context:e,memoizedValue:t,next:null},Eh===null){if(Ib===null)throw Error(me(308));Eh=e,Ib.dependencies={lanes:0,firstContext:e}}else Eh=Eh.next=e;return t}var gc=null;function dE(e){gc===null?gc=[e]:gc.push(e)}function i9(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,Os(e,n)}function Os(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 gl=!1;function vE(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 _s(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Bl(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,wt&2){var i=n.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),n.pending=t,Os(e,r)}return i=n.interleaved,i===null?(t.next=t,dE(n)):(t.next=i.next,i.next=t),n.interleaved=t,Os(e,r)}function V_(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,JO(e,r)}}function CB(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 Ob(e,t,r,n){var i=e.updateQueue;gl=!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=cr({},f,h);break e;case 2:gl=!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);Uc|=o,e.lanes=o,e.memoizedState=f}}function MB(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var n=ZA.transition;ZA.transition={};try{e(!1),t()}finally{Dt=r,ZA.transition=n}}function w9(){return ca().memoizedState}function ole(e,t,r){var n=$l(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},S9(e))T9(t,r);else if(r=i9(e,t,r,n),r!==null){var i=Wn();$a(r,e,n,i),A9(r,t,n)}}function sle(e,t,r){var n=$l(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(S9(e))T9(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,Ha(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=i9(e,t,i,n),r!==null&&(i=Wn(),$a(r,e,n,i),A9(r,t,n))}}function S9(e){var t=e.alternate;return e===sr||t!==null&&t===sr}function T9(e,t){Lg=Db=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function A9(e,t,r){if(r&4194240){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,JO(e,r)}}var Nb={readContext:ua,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},lle={readContext:ua,useCallback:function(e,t){return ho().memoizedState=[e,t===void 0?null:t],e},useContext:ua,useEffect:LB,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,W_(4194308,4,m9.bind(null,t,e),r)},useLayoutEffect:function(e,t){return W_(4194308,4,e,t)},useInsertionEffect:function(e,t){return W_(4,2,e,t)},useMemo:function(e,t){var r=ho();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=ho();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=ole.bind(null,sr,e),[n.memoizedState,e]},useRef:function(e){var t=ho();return e={current:e},t.memoizedState=e},useState:PB,useDebugValue:wE,useDeferredValue:function(e){return ho().memoizedState=e},useTransition:function(){var e=PB(!1),t=e[0];return e=ale.bind(null,e[1]),ho().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=sr,i=ho();if(er){if(r===void 0)throw Error(me(407));r=r()}else{if(r=t(),an===null)throw Error(me(349));Hc&30||u9(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,LB(f9.bind(null,n,a,e),[e]),n.flags|=2048,gm(9,c9.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=ho(),t=an.identifierPrefix;if(er){var r=hs,n=fs;r=(n&~(1<<32-za(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=vm++,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[po]=t,e[fm]=n,N9(e,t,!1,!1),t.stateNode=e;e:{switch(o=mP(r,n),r){case"dialog":qt("cancel",e),qt("close",e),i=n;break;case"iframe":case"object":case"embed":qt("load",e),i=n;break;case"video":case"audio":for(i=0;imd&&(t.flags|=128,n=!0,pp(a,!1),t.lanes=4194304)}else{if(!n)if(e=Eb(o),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),pp(a,!0),a.tail===null&&a.tailMode==="hidden"&&!o.alternate&&!er)return Tn(t),null}else 2*wr()-a.renderingStartTime>md&&r!==1073741824&&(t.flags|=128,n=!0,pp(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=or.current,Yt(or,n?r&1|2:r&1),t):(Tn(t),null);case 22:case 23:return PE(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?yi&1073741824&&(Tn(t),t.subtreeFlags&6&&(t.flags|=8192)):Tn(t),null;case 24:return null;case 25:return null}throw Error(me(156,t.tag))}function gle(e,t){switch(lE(t),t.tag){case 1:return ui(t.type)&&Cb(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return pd(),Jt(li),Jt(Nn),mE(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return gE(t),null;case 13:if(Jt(or),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(me(340));dd()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Jt(or),null;case 4:return pd(),null;case 10:return hE(t.type._context),null;case 22:case 23:return PE(),null;case 24:return null;default:return null}}var nx=!1,kn=!1,mle=typeof WeakSet=="function"?WeakSet:Set,Ne=null;function Dh(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){dr(e,t,n)}else r.current=null}function WP(e,t,r){try{r()}catch(n){dr(e,t,n)}}var $B=!1;function yle(e,t){if(MP=wb,e=V7(),oE(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(PP={focusedElem:e,selectionRange:r},wb=!1,Ne=t;Ne!==null;)if(t=Ne,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ne=e;else for(;Ne!==null;){t=Ne;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,y=t.stateNode,_=y.getSnapshotBeforeUpdate(t.elementType===t.type?g:La(t.type,g),m);y.__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(me(163))}}catch(S){dr(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,Ne=e;break}Ne=t.return}return v=$B,$B=!1,v}function kg(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&&WP(t,r,a)}i=i.next}while(i!==n)}}function dS(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 HP(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 B9(e){var t=e.alternate;t!==null&&(e.alternate=null,B9(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[po],delete t[fm],delete t[IP],delete t[ele],delete t[tle])),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 z9(e){return e.tag===5||e.tag===3||e.tag===4}function FB(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||z9(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 UP(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=Ab));else if(n!==4&&(e=e.child,e!==null))for(UP(e,t,r),e=e.sibling;e!==null;)UP(e,t,r),e=e.sibling}function ZP(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(ZP(e,t,r),e=e.sibling;e!==null;)ZP(e,t,r),e=e.sibling}var fn=null,Ia=!1;function tl(e,t,r){for(r=r.child;r!==null;)$9(e,t,r),r=r.sibling}function $9(e,t,r){if(Mo&&typeof Mo.onCommitFiberUnmount=="function")try{Mo.onCommitFiberUnmount(aS,r)}catch{}switch(r.tag){case 5:kn||Dh(r,t);case 6:var n=fn,i=Ia;fn=null,tl(e,t,r),fn=n,Ia=i,fn!==null&&(Ia?(e=fn,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):fn.removeChild(r.stateNode));break;case 18:fn!==null&&(Ia?(e=fn,r=r.stateNode,e.nodeType===8?WA(e.parentNode,r):e.nodeType===1&&WA(e,r),om(e)):WA(fn,r.stateNode));break;case 4:n=fn,i=Ia,fn=r.stateNode.containerInfo,Ia=!0,tl(e,t,r),fn=n,Ia=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)&&WP(r,t,o),i=i.next}while(i!==n)}tl(e,t,r);break;case 1:if(!kn&&(Dh(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){dr(r,t,s)}tl(e,t,r);break;case 21:tl(e,t,r);break;case 22:r.mode&1?(kn=(n=kn)||r.memoizedState!==null,tl(e,t,r),kn=n):tl(e,t,r);break;default:tl(e,t,r)}}function VB(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var r=e.stateNode;r===null&&(r=e.stateNode=new mle),t.forEach(function(n){var i=Mle.bind(null,e,n);r.has(n)||(r.add(n),n.then(i,i))})}}function Sa(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*_le(n/1960))-n,10e?16:e,Sl===null)var n=!1;else{if(e=Sl,Sl=null,Bb=0,wt&6)throw Error(me(331));var i=wt;for(wt|=4,Ne=e.current;Ne!==null;){var a=Ne,o=a.child;if(Ne.flags&16){var s=a.deletions;if(s!==null){for(var l=0;lwr()-CE?kc(e,0):AE|=r),ci(e,t)}function Y9(e,t){t===0&&(e.mode&1?(t=Y0,Y0<<=1,!(Y0&130023424)&&(Y0=4194304)):t=1);var r=Wn();e=Os(e,t),e!==null&&(zy(e,t,r),ci(e,r))}function Cle(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),Y9(e,r)}function Mle(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(me(314))}n!==null&&n.delete(t),Y9(e,r)}var X9;X9=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||li.current)oi=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return oi=!1,vle(e,t,r);oi=!!(e.flags&131072)}else oi=!1,er&&t.flags&1048576&&J7(t,Lb,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;H_(e,t),e=t.pendingProps;var i=hd(t,Nn.current);Kh(t,r),i=xE(null,t,n,e,i,r);var a=_E();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,ui(n)?(a=!0,Mb(t)):a=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,vE(t),i.updater=hS,t.stateNode=i,i._reactInternals=t,RP(t,n,e,r),t=$P(null,t,n,!0,a,r)):(t.tag=0,er&&a&&sE(t),zn(null,t,i,r),t=t.child),t;case 16:n=t.elementType;e:{switch(H_(e,t),e=t.pendingProps,i=n._init,n=i(n._payload),t.type=n,i=t.tag=Lle(n),e=La(n,e),i){case 0:t=zP(null,t,n,e,r);break e;case 1:t=RB(null,t,n,e,r);break e;case 11:t=NB(null,t,n,e,r);break e;case 14:t=jB(null,t,n,La(n.type,e),r);break e}throw Error(me(306,n,""))}return t;case 0:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:La(n,i),zP(e,t,n,i,r);case 1:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:La(n,i),RB(e,t,n,i,r);case 3:e:{if(O9(t),e===null)throw Error(me(387));n=t.pendingProps,a=t.memoizedState,i=a.element,a9(e,t),Ob(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=gd(Error(me(423)),t),t=BB(e,t,n,r,i);break e}else if(n!==i){i=gd(Error(me(424)),t),t=BB(e,t,n,r,i);break e}else for(Ai=Rl(t.stateNode.containerInfo.firstChild),ki=t,er=!0,Da=null,r=n9(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(dd(),n===i){t=Es(e,t,r);break e}zn(e,t,n,r)}t=t.child}return t;case 5:return o9(t),e===null&&DP(t),n=t.type,i=t.pendingProps,a=e!==null?e.memoizedProps:null,o=i.children,LP(n,i)?o=null:a!==null&&LP(n,a)&&(t.flags|=32),I9(e,t),zn(e,t,o,r),t.child;case 6:return e===null&&DP(t),null;case 13:return E9(e,t,r);case 4:return pE(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=vd(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:La(n,i),NB(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,Yt(kb,n._currentValue),n._currentValue=o,a!==null)if(Ha(a.value,o)){if(a.children===i.children&&!li.current){t=Es(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=_s(-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),NP(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(me(341));o.lanes|=r,s=o.alternate,s!==null&&(s.lanes|=r),NP(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,Kh(t,r),i=ua(i),n=n(i),t.flags|=1,zn(e,t,n,r),t.child;case 14:return n=t.type,i=La(n,t.pendingProps),i=La(n.type,i),jB(e,t,n,i,r);case 15:return L9(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:La(n,i),H_(e,t),t.tag=1,ui(n)?(e=!0,Mb(t)):e=!1,Kh(t,r),C9(t,n,i),RP(t,n,i,r),$P(null,t,n,!0,e,r);case 19:return D9(e,t,r);case 22:return k9(e,t,r)}throw Error(me(156,t.tag))};function q9(e,t){return S7(e,t)}function Ple(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 Ple(e,t,r,n)}function kE(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Lle(e){if(typeof e=="function")return kE(e)?1:0;if(e!=null){if(e=e.$$typeof,e===XO)return 11;if(e===qO)return 14}return 2}function Fl(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 Y_(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 Ah:return Ic(r.children,i,a,t);case YO:o=8,i|=8;break;case sP:return e=ra(12,r,t,i|2),e.elementType=sP,e.lanes=a,e;case lP:return e=ra(13,r,t,i),e.elementType=lP,e.lanes=a,e;case uP:return e=ra(19,r,t,i),e.elementType=uP,e.lanes=a,e;case o7:return pS(r,i,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case i7:o=10;break e;case a7:o=9;break e;case XO:o=11;break e;case qO:o=14;break e;case pl:o=16,n=null;break e}throw Error(me(130,e==null?e:typeof e,""))}return t=ra(o,r,t,i),t.elementType=e,t.type=n,t.lanes=a,t}function Ic(e,t,r,n){return e=ra(7,e,n,t),e.lanes=r,e}function pS(e,t,r,n){return e=ra(22,e,n,t),e.elementType=o7,e.lanes=r,e.stateNode={isHidden:!1},e}function QA(e,t,r){return e=ra(6,e,null,t),e.lanes=r,e}function JA(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=EA(0),this.expirationTimes=EA(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=EA(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function IE(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},vE(a),e}function Ile(e,t,r){var n=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(eZ)}catch(e){console.error(e)}}eZ(),e7.exports=Ei;var tZ=e7.exports,qB=tZ;aP.createRoot=qB.createRoot,aP.hydrateRoot=qB.hydrateRoot;/** - * @remix-run/router v1.23.2 - * - * Copyright (c) Remix Software Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE.md file in the root directory of this source tree. - * - * @license MIT - */function ym(){return ym=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function NE(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Rle(){return Math.random().toString(36).substr(2,8)}function QB(e,t){return{usr:e.state,key:e.key,idx:t}}function QP(e,t,r,n){return r===void 0&&(r=null),ym({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?fv(t):t,{state:r,key:t&&t.key||n||Rle()})}function Fb(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 fv(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 Ble(e,t,r,n){n===void 0&&(n={});let{window:i=document.defaultView,v5Compat:a=!1}=n,o=i.history,s=Tl.Pop,l=null,u=c();u==null&&(u=0,o.replaceState(ym({},o.state,{idx:u}),""));function c(){return(o.state||{idx:null}).idx}function f(){s=Tl.Pop;let m=c(),y=m==null?null:m-u;u=m,l&&l({action:s,location:g.location,delta:y})}function h(m,y){s=Tl.Push;let _=QP(g.location,m,y);u=c()+1;let b=QB(_,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,y){s=Tl.Replace;let _=QP(g.location,m,y);u=c();let b=QB(_,u),S=g.createHref(_);o.replaceState(b,"",S),a&&l&&l({action:s,location:g.location,delta:0})}function v(m){let y=i.location.origin!=="null"?i.location.origin:i.location.href,_=typeof m=="string"?m:Fb(m);return _=_.replace(/ $/,"%20"),Or(y,"No window.location.(origin|href) available to create URL for href: "+_),new URL(_,y)}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(KB,f),l=m,()=>{i.removeEventListener(KB,f),l=null}},createHref(m){return t(i,m)},createURL:v,encodeLocation(m){let y=v(m);return{pathname:y.pathname,search:y.search,hash:y.hash}},push:h,replace:d,go(m){return o.go(m)}};return g}var JB;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(JB||(JB={}));function zle(e,t,r){return r===void 0&&(r="/"),$le(e,t,r)}function $le(e,t,r,n){let i=typeof t=="string"?fv(t):t,a=jE(i.pathname||"/",r);if(a==null)return null;let o=rZ(e);Fle(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=Vl([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+'".')),rZ(a.children,t,c,u)),!(a.path==null&&!a.index)&&t.push({path:u,score:Yle(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 nZ(a.path))i(a,o,l)}),t}function nZ(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=nZ(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 Fle(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:Xle(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const Vle=/^:[\w-]+$/,Gle=3,Wle=2,Hle=1,Ule=10,Zle=-2,e3=e=>e==="*";function Yle(e,t){let r=e.split("/"),n=r.length;return r.some(e3)&&(n+=Zle),t&&(n+=Wle),r.filter(i=>!e3(i)).reduce((i,a)=>i+(Vle.test(a)?Gle:a===""?Hle:Ule),n)}function Xle(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 qle(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 Qle(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!0),NE(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 Jle(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return NE(!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 jE(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 eue=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,tue=e=>eue.test(e);function rue(e,t){t===void 0&&(t="/");let{pathname:r,search:n="",hash:i=""}=typeof e=="string"?fv(e):e,a;if(r)if(tue(r))a=r;else{if(r.includes("//")){let o=r;r=r.replace(/\/\/+/g,"/"),NE(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+r))}r.startsWith("/")?a=t3(r.substring(1),"/"):a=t3(r,t)}else a=t;return{pathname:a,search:aue(n),hash:oue(i)}}function t3(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 eC(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 nue(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function iZ(e,t){let r=nue(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=fv(e):(i=ym({},e),Or(!i.pathname||!i.pathname.includes("?"),eC("?","pathname","search",i)),Or(!i.pathname||!i.pathname.includes("#"),eC("#","pathname","hash",i)),Or(!i.search||!i.search.includes("#"),eC("#","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=rue(i,s),u=o&&o!=="/"&&o.endsWith("/"),c=(a||o===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(u||c)&&(l.pathname+="/"),l}const Vl=e=>e.join("/").replace(/\/\/+/g,"/"),iue=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),aue=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,oue=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function sue(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const oZ=["post","put","patch","delete"];new Set(oZ);const lue=["get",...oZ];new Set(lue);/** - * React Router v6.30.3 - * - * Copyright (c) Remix Software Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE.md file in the root directory of this source tree. - * - * @license MIT - */function xm(){return xm=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:Vl([t,f.pathname])),(c.replace?n.replace:n.push)(f,c.state,c)},[t,n,o,a,e])}function cZ(e,t){let{relative:r}=t===void 0?{}:t,{future:n}=H.useContext(vf),{matches:i}=H.useContext(pf),{pathname:a}=hv(),o=JSON.stringify(iZ(i,n.v7_relativeSplatPath));return H.useMemo(()=>aZ(e,JSON.parse(o),a,r==="path"),[e,o,a,r])}function hue(e,t){return due(e,t)}function due(e,t,r,n){Gy()||Or(!1);let{navigator:i}=H.useContext(vf),{matches:a}=H.useContext(pf),o=a[a.length-1],s=o?o.params:{};o&&o.pathname;let l=o?o.pathnameBase:"/";o&&o.route;let u=hv(),c;if(t){var f;let m=typeof t=="string"?fv(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=zle(e,{pathname:d}),g=yue(v&&v.map(m=>Object.assign({},m,{params:Object.assign({},s,m.params),pathname:Vl([l,i.encodeLocation?i.encodeLocation(m.pathname).pathname:m.pathname]),pathnameBase:m.pathnameBase==="/"?l:Vl([l,i.encodeLocation?i.encodeLocation(m.pathnameBase).pathname:m.pathnameBase])})),a,r,n);return t&&g?H.createElement(_S.Provider,{value:{location:xm({pathname:"/",search:"",hash:"",state:null,key:"default"},c),navigationType:Tl.Pop}},g):g}function vue(){let e=wue(),t=sue(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 pue=H.createElement(vue,null);class gue 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(pf.Provider,{value:this.props.routeContext},H.createElement(sZ.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function mue(e){let{routeContext:t,match:r,children:n}=e,i=H.useContext(RE);return i&&i.static&&i.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=r.route.id),H.createElement(pf.Provider,{value:t},n)}function yue(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||pue,l&&(u<0&&h===0?(Tue("route-fallback"),v=!0,m=null):u===h&&(v=!0,m=f.route.hydrateFallbackElement||null)));let y=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(mue,{match:f,routeContext:{outlet:c,matches:y,isDataRoute:r!=null},children:b})};return r&&(f.route.ErrorBoundary||f.route.errorElement||h===0)?H.createElement(gue,{location:r.location,revalidation:r.revalidation,component:g,error:d,children:_(),routeContext:{outlet:null,matches:y,isDataRoute:!0}}):_()},null)}var fZ=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(fZ||{}),hZ=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}(hZ||{});function xue(e){let t=H.useContext(RE);return t||Or(!1),t}function _ue(e){let t=H.useContext(uue);return t||Or(!1),t}function bue(e){let t=H.useContext(pf);return t||Or(!1),t}function dZ(e){let t=bue(),r=t.matches[t.matches.length-1];return r.route.id||Or(!1),r.route.id}function wue(){var e;let t=H.useContext(sZ),r=_ue(),n=dZ();return t!==void 0?t:(e=r.errors)==null?void 0:e[n]}function Sue(){let{router:e}=xue(fZ.UseNavigateStable),t=dZ(hZ.UseNavigateStable),r=H.useRef(!1);return lZ(()=>{r.current=!0}),H.useCallback(function(i,a){a===void 0&&(a={}),r.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,xm({fromRouteId:t},a)))},[e,t])}const r3={};function Tue(e,t,r){r3[e]||(r3[e]=!0)}function Aue(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function fl(e){Or(!1)}function Cue(e){let{basename:t="/",children:r=null,location:n,navigationType:i=Tl.Pop,navigator:a,static:o=!1,future:s}=e;Gy()&&Or(!1);let l=t.replace(/^\/*/,"/"),u=H.useMemo(()=>({basename:l,navigator:a,static:o,future:xm({v7_relativeSplatPath:!1},s)}),[l,s,a,o]);typeof n=="string"&&(n=fv(n));let{pathname:c="/",search:f="",hash:h="",state:d=null,key:v="default"}=n,g=H.useMemo(()=>{let m=jE(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(vf.Provider,{value:u},H.createElement(_S.Provider,{children:r,value:g}))}function Mue(e){let{children:t,location:r}=e;return hue(JP(t),r)}new Promise(()=>{});function JP(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,JP(n.props.children,a));return}n.type!==fl&&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=JP(n.props.children,a)),r.push(o)}),r}/** - * React Router DOM v6.30.3 - * - * Copyright (c) Remix Software Inc. - * - * This source code is licensed under the MIT license found in the - * LICENSE.md file in the root directory of this source tree. - * - * @license MIT - */function eL(){return eL=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(r[i]=e[i]);return r}function Lue(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function kue(e,t){return e.button===0&&(!t||t==="_self")&&!Lue(e)}const Iue=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],Oue="6";try{window.__reactRouterVersion=Oue}catch{}const Eue="startTransition",n3=Aoe[Eue];function Due(e){let{basename:t,children:r,future:n,window:i}=e,a=H.useRef();a.current==null&&(a.current=jle({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&&n3?n3(()=>l(f)):l(f)},[l,u]);return H.useLayoutEffect(()=>o.listen(c),[o,c]),H.useEffect(()=>Aue(n),[n]),H.createElement(Cue,{basename:t,children:r,location:s.location,navigationType:s.action,navigator:o,future:n})}const Nue=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",jue=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Rue=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=Pue(t,Iue),{basename:d}=H.useContext(vf),v,g=!1;if(typeof u=="string"&&jue.test(u)&&(v=u,Nue))try{let b=new URL(window.location.href),S=u.startsWith("//")?new URL(b.protocol+u):new URL(u),T=jE(S.pathname,d);S.origin===b.origin&&T!=null?u=T+S.search+S.hash:g=!0}catch{}let m=cue(u,{relative:i}),y=Bue(u,{replace:o,state:s,target:l,preventScrollReset:c,relative:i,viewTransition:f});function _(b){n&&n(b),b.defaultPrevented||y(b)}return H.createElement("a",eL({},h,{href:v||m,onClick:g||a?n:_,ref:r,target:l}))});var i3;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(i3||(i3={}));var a3;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(a3||(a3={}));function Bue(e,t){let{target:r,replace:n,state:i,preventScrollReset:a,relative:o,viewTransition:s}=t===void 0?{}:t,l=uZ(),u=hv(),c=cZ(e,{relative:o});return H.useCallback(f=>{if(kue(f,r)){f.preventDefault();let h=n!==void 0?n:Fb(u)===Fb(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 zue=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),vZ=(...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 $ue={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 Fue=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,...$ue,width:t,height:t,stroke:e,strokeWidth:n?Number(r)*24/Number(t):r,className:vZ("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 $e=(e,t)=>{const r=H.forwardRef(({className:n,...i},a)=>H.createElement(Fue,{ref:a,iconNode:t,className:vZ(`lucide-${zue(e)}`,n),...i}));return r.displayName=`${e}`,r};/** - * @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 Wy=$e("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** - * @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 tC=$e("Battery",[["rect",{width:"16",height:"10",x:"2",y:"7",rx:"2",ry:"2",key:"1w10f2"}],["line",{x1:"22",x2:"22",y1:"11",y2:"13",key:"4dh1rd"}]]);/** - * @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 Vue=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const _m=$e("Bell",[["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"}]]);/** - * @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 pZ=$e("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 Gue=$e("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 Wue=$e("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 Hue=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const BE=$e("Car",[["path",{d:"M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2",key:"5owen"}],["circle",{cx:"7",cy:"17",r:"2",key:"u2ysq9"}],["path",{d:"M9 17h6",key:"r8uit2"}],["circle",{cx:"17",cy:"17",r:"2",key:"axvx0g"}]]);/** - * @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 yd=$e("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** - * @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 Hy=$e("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/** - * @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 Uue=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const bm=$e("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** - * @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 Zue=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const Uy=$e("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/** - * @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 Jh=$e("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 xd=$e("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 Yue=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const Yc=$e("Cloud",[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]]);/** - * @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 Xue=$e("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 gZ=$e("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 que=$e("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 mZ=$e("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 Kue=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const zE=$e("Droplets",[["path",{d:"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z",key:"1ptgy4"}],["path",{d:"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97",key:"1sl1rz"}]]);/** - * @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 _d=$e("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);/** - * @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 yZ=$e("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 $E=$e("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 FE=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const VE=$e("Flame",[["path",{d:"M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z",key:"96xj49"}]]);/** - * @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 wm=$e("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 xZ=$e("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 _Z=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const bZ=$e("MapPin",[["path",{d:"M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z",key:"2oe9fu"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);/** - * @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 Que=$e("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 Jue=$e("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 ece=$e("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/** - * @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 GE=$e("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 tce=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const bS=$e("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/** - * @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 tu=$e("Radio",[["path",{d:"M4.9 19.1C1 15.2 1 8.8 4.9 4.9",key:"1vaf9d"}],["path",{d:"M7.8 16.2c-2.3-2.3-2.3-6.1 0-8.5",key:"u1ii0m"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5",key:"1j5fej"}],["path",{d:"M19.1 4.9C23 8.8 23 15.1 19.1 19",key:"10b0cb"}]]);/** - * @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=$e("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);/** - * @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 SZ=$e("RotateCcw",[["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"}]]);/** - * @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 WE=$e("Satellite",[["path",{d:"M13 7 9 3 5 7l4 4",key:"vyckw6"}],["path",{d:"m17 11 4 4-4 4-4-4",key:"rchckc"}],["path",{d:"m8 12 4 4 6-6-4-4Z",key:"1sshf7"}],["path",{d:"m16 8 3-3",key:"x428zp"}],["path",{d:"M9 21a6 6 0 0 0-6-6",key:"1iajcf"}]]);/** - * @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 TZ=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const HE=$e("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/** - * @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 o3=$e("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 AZ=$e("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 Vb=$e("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 CZ=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const rce=$e("Thermometer",[["path",{d:"M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z",key:"17jzev"}]]);/** - * @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 UE=$e("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/** - * @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 Ds=$e("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/** - * @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 nce=$e("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 ice=$e("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. - * See the LICENSE file in the root directory of this source tree. - */const MZ=$e("Wifi",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]]);/** - * @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 s3=$e("Wind",[["path",{d:"M17.7 7.7a2.5 2.5 0 1 1 1.8 4.3H2",key:"1k4u03"}],["path",{d:"M9.6 4.6A2 2 0 1 1 11 8H2",key:"b7d0fd"}],["path",{d:"M12.6 19.4A2 2 0 1 0 14 16H2",key:"1p5cb3"}]]);/** - * @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 Xc=$e("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);/** - * @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 Sm=$e("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 Zr(e){const t=await fetch(e);if(!t.ok)throw new Error(`API error: ${t.status} ${t.statusText}`);return t.json()}async function l3(){return Zr("/api/status")}async function ace(){return Zr("/api/health")}async function oce(){return Zr("/api/nodes")}async function sce(){return Zr("/api/edges")}async function lce(){return Zr("/api/sources")}async function PZ(){return Zr("/api/alerts/active")}async function u3(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),Zr(`/api/alerts/history?${i.toString()}`)}async function uce(){return Zr("/api/subscriptions")}async function LZ(){return Zr("/api/env/status")}async function kZ(){return Zr("/api/env/active")}async function IZ(){return Zr("/api/env/swpc")}async function OZ(){return Zr("/api/env/ducting")}async function cce(){return Zr("/api/env/fires")}async function fce(){return Zr("/api/env/avalanche")}async function hce(){return Zr("/api/env/streams")}async function dce(){return Zr("/api/env/traffic")}async function vce(){return Zr("/api/env/roads")}async function pce(){return Zr("/api/env/hotspots")}async function gce(){return Zr("/api/regions")}function ZE(){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=y=>{try{const _=JSON.parse(y.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 y=Math.min(c.current,3e4);u.current=window.setTimeout(()=>{c.current=Math.min(y*2,3e4),f()},y)},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 EZ=H.createContext(null);function mce(){const e=H.useContext(EZ);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}function yce(e){switch(e==null?void 0:e.toLowerCase()){case"critical":case"emergency":return{bg:"bg-red-500/10",border:"border-red-500",icon:Uy,iconColor:"text-red-500"};case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Ds,iconColor:"text-amber-500"};default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:wm,iconColor:"text-blue-500"}}}function xce({toast:e,onDismiss:t,onNavigate:r}){const n=yce(e.alert.severity),i=n.icon;return H.useEffect(()=>{const a=setTimeout(t,8e3);return()=>clearTimeout(a)},[t]),x.jsx("div",{className:`${n.bg} border ${n.border} rounded-lg shadow-lg overflow-hidden animate-slide-in cursor-pointer`,onClick:r,role:"alert",children:x.jsxs("div",{className:"flex items-start gap-3 p-4",children:[x.jsx("div",{className:`w-1 self-stretch -ml-4 -my-4 ${n.border.replace("border","bg")}`}),x.jsx(i,{size:18,className:n.iconColor}),x.jsxs("div",{className:"flex-1 min-w-0 pr-2",children:[x.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())}),x.jsx("div",{className:"text-sm text-slate-300 line-clamp-2",children:e.alert.message})]}),x.jsx("button",{onClick:a=>{a.stopPropagation(),t()},className:"text-slate-400 hover:text-slate-200 transition-colors",children:x.jsx(Xc,{size:16})})]})})}function _ce({children:e}){const[t,r]=H.useState([]),n=uZ(),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 x.jsxs(EZ.Provider,{value:{addToast:i},children:[e,x.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=>x.jsx("div",{className:"pointer-events-auto",children:x.jsx(xce,{toast:s,onDismiss:()=>a(s.id),onNavigate:o})},s.id))})]})}const DZ=[{path:"/",label:"Dashboard",icon:_Z},{path:"/mesh",label:"Mesh",icon:tu},{path:"/environment",label:"Environment",icon:Yc},{path:"/config",label:"Config",icon:AZ},{path:"/alerts",label:"Alerts",icon:_m},{path:"/notifications",label:"Notifications",icon:Vue},{path:"/reference",label:"Reference",icon:pZ}];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 wce(e){const t=DZ.find(r=>r.path===e);return(t==null?void 0:t.label)||"Dashboard"}function Sce({children:e}){var h;const t=hv(),{connected:r,lastAlert:n}=ZE(),{addToast:i}=mce(),[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(()=>{l3().then(o).catch(console.error);const d=setInterval(()=>{l3().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 x.jsxs("div",{className:"flex h-screen overflow-hidden bg-bg text-slate-200",children:[x.jsxs("aside",{className:"w-[220px] flex-shrink-0 bg-bg-card border-r border-border flex flex-col overflow-y-auto",children:[x.jsx("div",{className:"p-5 border-b border-border",children:x.jsxs("div",{className:"flex items-center gap-3",children:[x.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"}),x.jsxs("div",{children:[x.jsx("div",{className:"font-semibold text-lg",children:"MeshAI"}),x.jsxs("div",{className:"text-xs text-slate-500 font-mono",children:["v",(a==null?void 0:a.version)||"..."]})]})]})}),x.jsx("nav",{className:"flex-1 py-4",children:DZ.map(d=>{const v=t.pathname===d.path,g=d.icon;return x.jsxs(Rue,{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&&x.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-0.5 bg-blue-500"}),x.jsx(g,{size:18}),d.label]},d.path)})}),x.jsxs("div",{className:"p-5 border-t border-border",children:[x.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[x.jsx("div",{className:`w-2 h-2 rounded-full ${a!=null&&a.connected?"bg-green-500":"bg-red-500"}`}),x.jsx("span",{className:"text-xs text-slate-400",children:a!=null&&a.connected?"Connected":"Disconnected"})]}),x.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]}),x.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:["Uptime: ",a?bce(a.uptime_seconds):"..."]})]})]}),x.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[x.jsxs("header",{className:"h-14 flex-shrink-0 border-b border-border bg-bg-card flex items-center justify-between px-6",children:[x.jsx("h1",{className:"text-lg font-semibold",children:wce(t.pathname)}),x.jsxs("div",{className:"flex items-center gap-6",children:[x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx("div",{className:`w-2 h-2 rounded-full ${r?"bg-green-500 animate-pulse-slow":"bg-slate-500"}`}),x.jsx("span",{className:"text-xs text-slate-400",children:r?"Live":"Offline"})]}),x.jsxs("div",{className:"text-sm font-mono text-slate-400",children:[f," MT"]})]})]}),x.jsx("main",{className:"flex-1 overflow-y-auto p-6",children:e})]})]})}function NZ(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 whe=bhe,She=SS;function The(e,t){var r=this.__data__,n=She(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var Ahe=The,Che=lhe,Mhe=ghe,Phe=xhe,Lhe=whe,khe=Ahe;function gv(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0?1:-1},yc=function(t){return qc(t)&&t.indexOf("%")===t.length-1},we=function(t){return qde(t)&&!yv(t)},eve=function(t){return dt(t)},Vr=function(t){return we(t)||qc(t)},tve=0,xv=function(t){var r=++tve;return"".concat(t||"").concat(r)},Kc=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)&&!qc(t))return n;var a;if(yc(t)){var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return yv(a)&&(a=n),i&&a>r&&(a=r),a},xh=function(t){if(!t)return null;var r=Object.keys(t);return r&&r.length?t[r[0]]:null},rve=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 uve(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 rL(e){"@babel/helpers - typeof";return rL=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},rL(e)}var b3={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"},bs=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},w3=null,iC=null,aD=function e(t){if(t===w3&&Array.isArray(iC))return iC;var r=[];return H.Children.forEach(t,function(n){dt(n)||(Hde.isFragment(n)?r=r.concat(e(n.props.children)):r.push(n))}),iC=r,w3=t,r};function oa(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(function(i){return bs(i)}):n=[bs(t)],aD(e).forEach(function(i){var a=aa(i,"type.displayName")||aa(i,"type.name");n.indexOf(a)!==-1&&r.push(i)}),r}function xi(e,t){var r=oa(e,t);return r&&r[0]}var S3=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)},cve=["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"],fve=function(t){return t&&t.type&&qc(t.type)&&cve.indexOf(t.type)>=0},YZ=function(t){return t&&rL(t)==="object"&&"clipDot"in t},hve=function(t,r,n,i){var a,o=(a=nC==null?void 0:nC[i])!==null&&a!==void 0?a:[];return r.startsWith("data-")||!ft(t)&&(i&&o.includes(r)||ave.includes(r))||n&&iD.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),!vv(i))return null;var a={};return Object.keys(i).forEach(function(o){var s;hve((s=i)===null||s===void 0?void 0:s[o],o,r,n)&&(a[o]=i[o])}),a},nL=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 T3(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 mve(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 aL(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=gve(e,pve),c=i||{width:r,height:n,x:0,y:0},f=xt("recharts-surface",a);return Q.createElement("svg",iL({},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 yve=["children","className"];function oL(){return oL=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 _ve(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 Xt=Q.forwardRef(function(e,t){var r=e.children,n=e.className,i=xve(e,yve),a=xt("recharts-layer",n);return Q.createElement("g",oL({className:a},ct(i,!0),{ref:t}),r)}),Oc=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:Sve(e,t,r)}var Ave=Tve,Cve="\\ud800-\\udfff",Mve="\\u0300-\\u036f",Pve="\\ufe20-\\ufe2f",Lve="\\u20d0-\\u20ff",kve=Mve+Pve+Lve,Ive="\\ufe0e\\ufe0f",Ove="\\u200d",Eve=RegExp("["+Ove+Cve+kve+Ive+"]");function Dve(e){return Eve.test(e)}var XZ=Dve;function Nve(e){return e.split("")}var jve=Nve,qZ="\\ud800-\\udfff",Rve="\\u0300-\\u036f",Bve="\\ufe20-\\ufe2f",zve="\\u20d0-\\u20ff",$ve=Rve+Bve+zve,Fve="\\ufe0e\\ufe0f",Vve="["+qZ+"]",sL="["+$ve+"]",lL="\\ud83c[\\udffb-\\udfff]",Gve="(?:"+sL+"|"+lL+")",KZ="[^"+qZ+"]",QZ="(?:\\ud83c[\\udde6-\\uddff]){2}",JZ="[\\ud800-\\udbff][\\udc00-\\udfff]",Wve="\\u200d",eY=Gve+"?",tY="["+Fve+"]?",Hve="(?:"+Wve+"(?:"+[KZ,QZ,JZ].join("|")+")"+tY+eY+")*",Uve=tY+eY+Hve,Zve="(?:"+[KZ+sL+"?",sL,QZ,JZ,Vve].join("|")+")",Yve=RegExp(lL+"(?="+lL+")|"+Zve+Uve,"g");function Xve(e){return e.match(Yve)||[]}var qve=Xve,Kve=jve,Qve=XZ,Jve=qve;function epe(e){return Qve(e)?Jve(e):Kve(e)}var tpe=epe,rpe=Ave,npe=XZ,ipe=tpe,ape=VZ;function ope(e){return function(t){t=ape(t);var r=npe(t)?ipe(t):void 0,n=r?r[0]:t.charAt(0),i=r?rpe(r,1).join(""):t.slice(1);return n[e]()+i}}var spe=ope,lpe=spe,upe=lpe("toUpperCase"),cpe=upe;const RS=Ft(cpe);function Zt(e){return function(){return e}}const rY=Math.cos,Ub=Math.sin,Xa=Math.sqrt,Zb=Math.PI,BS=2*Zb,uL=Math.PI,cL=2*uL,rc=1e-6,fpe=cL-rc;function nY(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return nY;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;irc)if(!(Math.abs(f*l-u*c)>rc)||!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,y=Math.sqrt(g),_=Math.sqrt(h),b=a*Math.tan((uL-Math.acos((g+h-m)/(2*y*_)))/2),S=b/_,T=b/y;Math.abs(S-1)>rc&&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)>rc||Math.abs(this._y1-c)>rc)&&this._append`L${u},${c}`,n&&(h<0&&(h=h%cL+cL),h>fpe?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>rc&&this._append`A${n},${n},0,${+(h>=uL)},${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 oD(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 dpe(t)}function sD(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function iY(e){this._context=e}iY.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 zS(e){return new iY(e)}function aY(e){return e[0]}function oY(e){return e[1]}function sY(e,t){var r=Zt(!0),n=null,i=zS,a=null,o=oD(s);e=typeof e=="function"?e:e===void 0?aY:Zt(e),t=typeof t=="function"?t:t===void 0?oY:Zt(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()}y&&(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:Zt(+f),n=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:Zt(+f),u):e},u.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:Zt(+f),u):n},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:Zt(+f),r=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:Zt(+f),u):t},u.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:Zt(+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:Zt(!!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 lY{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 vpe(e){return new lY(e,!0)}function ppe(e){return new lY(e,!1)}const lD={draw(e,t){const r=Xa(t/Zb);e.moveTo(r,0),e.arc(0,0,r,0,BS)}},gpe={draw(e,t){const r=Xa(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()}},uY=Xa(1/3),mpe=uY*2,ype={draw(e,t){const r=Xa(t/mpe),n=r*uY;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},xpe={draw(e,t){const r=Xa(t),n=-r/2;e.rect(n,n,r,r)}},_pe=.8908130915292852,cY=Ub(Zb/10)/Ub(7*Zb/10),bpe=Ub(BS/10)*cY,wpe=-rY(BS/10)*cY,Spe={draw(e,t){const r=Xa(t*_pe),n=bpe*r,i=wpe*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=BS*a/5,s=rY(o),l=Ub(o);e.lineTo(l*r,-s*r),e.lineTo(s*n-l*i,l*n+s*i)}e.closePath()}},aC=Xa(3),Tpe={draw(e,t){const r=-Xa(t/(aC*3));e.moveTo(0,r*2),e.lineTo(-aC*r,-r),e.lineTo(aC*r,-r),e.closePath()}},$i=-.5,Fi=Xa(3)/2,fL=1/Xa(12),Ape=(fL/2+1)*3,Cpe={draw(e,t){const r=Xa(t/Ape),n=r/2,i=r*fL,a=n,o=r*fL+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 Mpe(e,t){let r=null,n=oD(i);e=typeof e=="function"?e:Zt(e||lD),t=typeof t=="function"?t:Zt(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:Zt(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Zt(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function Yb(){}function Xb(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 fY(e){this._context=e}fY.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:Xb(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:Xb(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Ppe(e){return new fY(e)}function hY(e){this._context=e}hY.prototype={areaStart:Yb,areaEnd:Yb,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:Xb(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Lpe(e){return new hY(e)}function dY(e){this._context=e}dY.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:Xb(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function kpe(e){return new dY(e)}function vY(e){this._context=e}vY.prototype={areaStart:Yb,areaEnd:Yb,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 Ipe(e){return new vY(e)}function C3(e){return e<0?-1:1}function M3(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(C3(a)+C3(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function P3(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function oC(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 qb(e){this._context=e}qb.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:oC(this,this._t0,P3(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,oC(this,P3(this,r=M3(this,e,t)),r);break;default:oC(this,this._t0,r=M3(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function pY(e){this._context=new gY(e)}(pY.prototype=Object.create(qb.prototype)).point=function(e,t){qb.prototype.point.call(this,t,e)};function gY(e){this._context=e}gY.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 Ope(e){return new qb(e)}function Epe(e){return new pY(e)}function mY(e){this._context=e}mY.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=L3(e),i=L3(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 Npe(e){return new $S(e,.5)}function jpe(e){return new $S(e,0)}function Rpe(e){return new $S(e,1)}function bd(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 Bpe(e,t){return e[t]}function zpe(e){const t=[];return t.key=e,t}function $pe(){var e=Zt([]),t=hL,r=bd,n=Bpe;function i(a){var o=Array.from(e.apply(this,arguments),zpe),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 Xpe(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 yY={symbolCircle:lD,symbolCross:gpe,symbolDiamond:ype,symbolSquare:xpe,symbolStar:Spe,symbolTriangle:Tpe,symbolWye:Cpe},qpe=Math.PI/180,Kpe=function(t){var r="symbol".concat(RS(t));return yY[r]||lD},Qpe=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*qpe;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}},Jpe=function(t,r){yY["symbol".concat(RS(t))]=r},uD=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=Ype(t,Wpe),u=I3(I3({},l),{},{type:n,size:a,sizeType:s}),c=function(){var m=Kpe(n),y=Mpe().type(m).size(Qpe(a,s,n));return y()},f=u.className,h=u.cx,d=u.cy,v=ct(u,!0);return h===+h&&d===+d&&a===+a?Q.createElement("path",dL({},v,{className:xt("recharts-symbols",f),transform:"translate(".concat(h,", ").concat(d,")"),d:c()})):null};uD.registerSymbol=Jpe;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 vL(){return vL=Object.assign?Object.assign.bind():function(e){for(var t=1;t`);var _=d.inactive?u:d.color;return Q.createElement("li",vL({className:m,style:f,key:"legend-item-".concat(v)},Hb(n.props,d,v)),Q.createElement(aL,{width:o,height:o,viewBox:c,style:h},n.renderIcon(d)),Q.createElement("span",{className:"recharts-legend-item-text",style:{color:_}},g?g(y,d,v):y))})}},{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);Am(cD,"displayName","Legend");Am(cD,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var uge=TS;function cge(){this.__data__=new uge,this.size=0}var fge=cge;function hge(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var dge=hge;function vge(e){return this.__data__.get(e)}var pge=vge;function gge(e){return this.__data__.has(e)}var mge=gge,yge=TS,xge=KE,_ge=QE,bge=200;function wge(e,t){var r=this.__data__;if(r instanceof yge){var n=r.__data__;if(!xge||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&Wge?new $ge:void 0;for(a.set(e,t),a.set(t,e);++f-1&&e%1==0&&e-1&&e%1==0&&e<=Yme}var vD=Xme,qme=Zs,Kme=vD,Qme=Ys,Jme="[object Arguments]",eye="[object Array]",tye="[object Boolean]",rye="[object Date]",nye="[object Error]",iye="[object Function]",aye="[object Map]",oye="[object Number]",sye="[object Object]",lye="[object RegExp]",uye="[object Set]",cye="[object String]",fye="[object WeakMap]",hye="[object ArrayBuffer]",dye="[object DataView]",vye="[object Float32Array]",pye="[object Float64Array]",gye="[object Int8Array]",mye="[object Int16Array]",yye="[object Int32Array]",xye="[object Uint8Array]",_ye="[object Uint8ClampedArray]",bye="[object Uint16Array]",wye="[object Uint32Array]",Kt={};Kt[vye]=Kt[pye]=Kt[gye]=Kt[mye]=Kt[yye]=Kt[xye]=Kt[_ye]=Kt[bye]=Kt[wye]=!0;Kt[Jme]=Kt[eye]=Kt[hye]=Kt[tye]=Kt[dye]=Kt[rye]=Kt[nye]=Kt[iye]=Kt[aye]=Kt[oye]=Kt[sye]=Kt[lye]=Kt[uye]=Kt[cye]=Kt[fye]=!1;function Sye(e){return Qme(e)&&Kme(e.length)&&!!Kt[qme(e)]}var Tye=Sye;function Aye(e){return function(t){return e(t)}}var LY=Aye,e1={exports:{}};e1.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})(e1,e1.exports);var Cye=e1.exports,Mye=Tye,Pye=LY,B3=Cye,z3=B3&&B3.isTypedArray,Lye=z3?Pye(z3):Mye,kY=Lye,kye=Eme,Iye=hD,Oye=di,Eye=PY,Dye=dD,Nye=kY,jye=Object.prototype,Rye=jye.hasOwnProperty;function Bye(e,t){var r=Oye(e),n=!r&&Iye(e),i=!r&&!n&&Eye(e),a=!r&&!n&&!i&&Nye(e),o=r||n||i||a,s=o?kye(e.length,String):[],l=s.length;for(var u in e)(t||Rye.call(e,u))&&!(o&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Dye(u,l)))&&s.push(u);return s}var zye=Bye,$ye=Object.prototype;function Fye(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||$ye;return e===r}var Vye=Fye;function Gye(e,t){return function(r){return e(t(r))}}var IY=Gye,Wye=IY,Hye=Wye(Object.keys,Object),Uye=Hye,Zye=Vye,Yye=Uye,Xye=Object.prototype,qye=Xye.hasOwnProperty;function Kye(e){if(!Zye(e))return Yye(e);var t=[];for(var r in Object(e))qye.call(e,r)&&r!="constructor"&&t.push(r);return t}var Qye=Kye,Jye=XE,e0e=vD;function t0e(e){return e!=null&&e0e(e.length)&&!Jye(e)}var FS=t0e,r0e=zye,n0e=Qye,i0e=FS;function a0e(e){return i0e(e)?r0e(e):n0e(e)}var pD=a0e,o0e=bme,s0e=Ime,l0e=pD;function u0e(e){return o0e(e,l0e,s0e)}var c0e=u0e,$3=c0e,f0e=1,h0e=Object.prototype,d0e=h0e.hasOwnProperty;function v0e(e,t,r,n,i,a){var o=r&f0e,s=$3(e),l=s.length,u=$3(t),c=u.length;if(l!=c&&!o)return!1;for(var f=l;f--;){var h=s[f];if(!(o?h in t:d0e.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 d_e=h_e;function v_e(e,t,r){for(var n=-1,i=e==null?0:e.length;++n=L_e){var u=t?null:M_e(e);if(u)return P_e(u);o=!1,i=C_e,l=new S_e}else l=t?[]:s;e:for(;++n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function H_e(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 U_e(e){return e.value}function Z_e(e,t){if(Q.isValidElement(e))return Q.cloneElement(e,t);if(typeof e=="function")return Q.createElement(e,t);t.ref;var r=W_e(t,j_e);return Q.createElement(cD,r)}var rz=1,td=function(e){function t(){var r;R_e(this,t);for(var n=arguments.length,i=new Array(n),a=0;arz||Math.abs(i.height-this.lastBoundingBox.height)>rz)&&(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?Jo({},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 Jo(Jo({},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=Jo(Jo({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}},Z_e(a,Jo(Jo({},this.props),{},{payload:RY(c,u,U_e)})))}}],[{key:"getWithHeight",value:function(n,i){var a=Jo(Jo({},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);VS(td,"displayName","Legend");VS(td,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var nz=Zy,Y_e=hD,X_e=di,iz=nz?nz.isConcatSpreadable:void 0;function q_e(e){return X_e(e)||Y_e(e)||!!(iz&&e&&e[iz])}var K_e=q_e,Q_e=CY,J_e=K_e;function $Y(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=J_e),i||(i=[]);++a0&&r(s)?t>1?$Y(s,t-1,r,n,i):Q_e(i,s):n||(i[i.length]=s)}return i}var FY=$Y;function ebe(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 tbe=ebe,rbe=tbe,nbe=rbe(),ibe=nbe,abe=ibe,obe=pD;function sbe(e,t){return e&&abe(e,t,obe)}var VY=sbe,lbe=FS;function ube(e,t){return function(r,n){if(r==null)return r;if(!lbe(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 Sbe=wbe,cC=eD,Tbe=tD,Abe=Sv,Cbe=GY,Mbe=ybe,Pbe=LY,Lbe=Sbe,kbe=wv,Ibe=di;function Obe(e,t,r){t.length?t=cC(t,function(a){return Ibe(a)?function(o){return Tbe(o,a.length===1?a[0]:a)}:a}):t=[kbe];var n=-1;t=cC(t,Pbe(Abe));var i=Cbe(e,function(a,o,s){var l=cC(t,function(u){return u(a)});return{criteria:l,index:++n,value:a}});return Mbe(i,function(a,o){return Lbe(a,o,r)})}var Ebe=Obe;function Dbe(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 Nbe=Dbe,jbe=Nbe,oz=Math.max;function Rbe(e,t,r){return t=oz(t===void 0?e.length-1:t,0),function(){for(var n=arguments,i=-1,a=oz(n.length-t,0),o=Array(a);++i0){if(++t>=Zbe)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var Kbe=qbe,Qbe=Ube,Jbe=Kbe,e1e=Jbe(Qbe),t1e=e1e,r1e=wv,n1e=Bbe,i1e=t1e;function a1e(e,t){return i1e(n1e(e,t,r1e),e+"")}var o1e=a1e,s1e=qE,l1e=FS,u1e=dD,c1e=fu;function f1e(e,t,r){if(!c1e(r))return!1;var n=typeof t;return(n=="number"?l1e(r)&&u1e(t,r.length):n=="string"&&t in r)?s1e(r[t],e):!1}var GS=f1e,h1e=FY,d1e=Ebe,v1e=o1e,lz=GS,p1e=v1e(function(e,t){if(e==null)return[];var r=t.length;return r>1&&lz(e,t[0],t[1])?t=[]:r>2&&lz(t[0],t[1],t[2])&&(t=[t[0]]),d1e(e,h1e(t,1),[])}),g1e=p1e;const yD=Ft(g1e);function Cm(e){"@babel/helpers - typeof";return Cm=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},Cm(e)}function wL(){return wL=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(yp,"-left"),we(r)&&t&&we(t.x)&&r=t.y),"".concat(yp,"-top"),we(n)&&t&&we(t.y)&&ng?Math.max(c,l[n]):Math.max(f,l[n])}function I1e(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 O1e(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=fz({allowEscapeViewBox:t,coordinate:r,key:"x",offsetTopLeft:n,position:i,reverseDirection:a,tooltipDimension:o.width,viewBox:l,viewBoxDimension:l.width}),f=fz({allowEscapeViewBox:t,coordinate:r,key:"y",offsetTopLeft:n,position:i,reverseDirection:a,tooltipDimension:o.height,viewBox:l,viewBoxDimension:l.height}),u=I1e({translateX:c,translateY:f,useTranslate3d:s})):u=L1e,{cssProperties:u,cssClasses:k1e({translateX:c,translateY:f,coordinate:r})}}function Td(e){"@babel/helpers - typeof";return Td=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},Td(e)}function hz(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 dz(e){for(var t=1;tvz||Math.abs(n.height-this.state.lastBoundingBox.height)>vz)&&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,y=i.viewBox,_=i.wrapperStyle,b=O1e({allowEscapeViewBox:o,coordinate:c,offsetTopLeft:d,position:v,reverseDirection:g,tooltipBox:this.state.lastBoundingBox,useTranslate3d:m,viewBox:y}),S=b.cssClasses,T=b.cssProperties,A=dz(dz({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:A,ref:function(P){n.wrapperNode=P}},u)}}])}(H.PureComponent),V1e=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},mf={isSsr:V1e()};function Ad(e){"@babel/helpers - typeof";return Ad=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},Ad(e)}function pz(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 gz(e){for(var t=1;t0;return Q.createElement(F1e,{allowEscapeViewBox:o,animationDuration:s,animationEasing:l,isAnimationActive:h,active:a,coordinate:c,hasPayload:A,offset:d,position:m,reverseDirection:y,useTranslate3d:_,viewBox:b,wrapperStyle:S},Q1e(u,gz(gz({},this.props),{},{payload:T})))}}])}(H.PureComponent);xD(os,"displayName","Tooltip");xD(os,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!mf.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 J1e=Ho,ewe=function(){return J1e.Date.now()},twe=ewe,rwe=/\s/;function nwe(e){for(var t=e.length;t--&&rwe.test(e.charAt(t)););return t}var iwe=nwe,awe=iwe,owe=/^\s+/;function swe(e){return e&&e.slice(0,awe(e)+1).replace(owe,"")}var lwe=swe,uwe=lwe,mz=fu,cwe=dv,yz=NaN,fwe=/^[-+]0x[0-9a-f]+$/i,hwe=/^0b[01]+$/i,dwe=/^0o[0-7]+$/i,vwe=parseInt;function pwe(e){if(typeof e=="number")return e;if(cwe(e))return yz;if(mz(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=mz(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=uwe(e);var r=hwe.test(e);return r||dwe.test(e)?vwe(e.slice(2),r?2:8):fwe.test(e)?yz:+e}var XY=pwe,gwe=fu,hC=twe,xz=XY,mwe="Expected a function",ywe=Math.max,xwe=Math.min;function _we(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(mwe);t=xz(t)||0,gwe(r)&&(c=!!r.leading,f="maxWait"in r,a=f?ywe(xz(r.maxWait)||0,t):a,h="trailing"in r?!!r.trailing:h);function d(A){var M=n,P=i;return n=i=void 0,u=A,o=e.apply(P,M),o}function v(A){return u=A,s=setTimeout(y,t),c?d(A):o}function g(A){var M=A-l,P=A-u,k=t-M;return f?xwe(k,a-P):k}function m(A){var M=A-l,P=A-u;return l===void 0||M>=t||M<0||f&&P>=a}function y(){var A=hC();if(m(A))return _(A);s=setTimeout(y,g(A))}function _(A){return s=void 0,h&&n?d(A):(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:_(hC())}function T(){var A=hC(),M=m(A);if(n=arguments,i=this,l=A,M){if(s===void 0)return v(l);if(f)return clearTimeout(s),s=setTimeout(y,t),d(l)}return s===void 0&&(s=setTimeout(y,t)),o}return T.cancel=b,T.flush=S,T}var bwe=_we,wwe=bwe,Swe=fu,Twe="Expected a function";function Awe(e,t,r){var n=!0,i=!0;if(typeof e!="function")throw new TypeError(Twe);return Swe(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),wwe(e,t,{leading:n,maxWait:t,trailing:i})}var Cwe=Awe;const qY=Ft(Cwe);function Pm(e){"@babel/helpers - typeof";return Pm=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},Pm(e)}function _z(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 ux(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&(N=qY(N,g,{trailing:!0,leading:!1}));var B=new ResizeObserver(N),F=T.current.getBoundingClientRect(),$=F.width,U=F.height;return O($,U),B.observe(T.current),function(){B.disconnect()}},[O,g]);var D=H.useMemo(function(){var N=k.containerWidth,B=k.containerHeight;if(N<0||B<0)return null;Oc(yc(o)||yc(l),`The width(%s) and height(%s) are both fixed numbers, - maybe you don't need to use a ResponsiveContainer.`,o,l),Oc(!r||r>0,"The aspect(%s) must be greater than zero.",r);var F=yc(o)?N:o,$=yc(l)?B:l;r&&r>0&&(F?$=F/r:$&&(F=$*r),h&&$>h&&($=h)),Oc(F>0||$>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.`,F,$,o,l,c,f,r);var U=!Array.isArray(d)&&bs(d.type).endsWith("Chart");return Q.Children.map(d,function(z){return Q.isValidElement(z)?H.cloneElement(z,ux({width:F,height:$},U?{style:ux({height:"100%",width:"100%",maxHeight:$,maxWidth:F},z.props.style)}:{})):z})},[r,d,l,h,f,c,k,o]);return Q.createElement("div",{id:m?"".concat(m):void 0,className:xt("recharts-responsive-container",y),style:ux(ux({},S),{},{width:o,height:l,minWidth:c,minHeight:f,maxHeight:h}),ref:T},D)}),QY=function(t){return null};QY.displayName="Cell";function Lm(e){"@babel/helpers - typeof";return Lm=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},Lm(e)}function wz(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 CL(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||mf.isSsr)return{width:0,height:0};var n=$we(r),i=JSON.stringify({text:t,copyStyle:n});if(Vf.widthCache[i])return Vf.widthCache[i];try{var a=document.getElementById(Sz);a||(a=document.createElement("span"),a.setAttribute("id",Sz),a.setAttribute("aria-hidden","true"),document.body.appendChild(a));var o=CL(CL({},zwe),n);Object.assign(a.style,o),a.textContent="".concat(t);var s=a.getBoundingClientRect(),l={width:s.width,height:s.height};return Vf.widthCache[i]=l,++Vf.cacheCount>Bwe&&(Vf.cacheCount=0,Vf.widthCache={}),l}catch{return{width:0,height:0}}},Fwe=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};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 i1(e,t){return Hwe(e)||Wwe(e,t)||Gwe(e,t)||Vwe()}function Vwe(){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 Gwe(e,t){if(e){if(typeof e=="string")return Tz(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 Tz(e,t)}}function Tz(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 aSe(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 kz(e,t){return uSe(e)||lSe(e,t)||sSe(e,t)||oSe()}function oSe(){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 sSe(e,t){if(e){if(typeof e=="string")return Iz(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 Iz(e,t)}}function Iz(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 F.reduce(function($,U){var z=U.word,V=U.width,W=$[$.length-1];if(W&&(i==null||a||W.width+V+nU.width?$:U})};if(!c)return d;for(var g="…",m=function(F){var $=f.slice(0,F),U=rX({breakAll:u,style:l,children:$+g}).wordsWithComputedWidth,z=h(U),V=z.length>o||v(z).width>Number(i);return[V,z]},y=0,_=f.length-1,b=0,S;y<=_&&b<=f.length-1;){var T=Math.floor((y+_)/2),A=T-1,M=m(A),P=kz(M,2),k=P[0],I=P[1],O=m(T),D=kz(O,1),N=D[0];if(!k&&!N&&(y=T+1),k&&N&&(_=T-1),!k&&N){S=I;break}b++}return S||d},Oz=function(t){var r=dt(t)?[]:t.toString().split(tX);return[{words:r}]},fSe=function(t){var r=t.width,n=t.scaleToFit,i=t.children,a=t.style,o=t.breakAll,s=t.maxLines;if((r||n)&&!mf.isSsr){var l,u,c=rX({breakAll:o,children:i,style:a});if(c){var f=c.wordsWithComputedWidth,h=c.spaceWidth;l=f,u=h}else return Oz(i);return cSe({breakAll:o,children:i,maxLines:s,style:a},l,u,r,n)}return Oz(i)},Ez="#808080",a1=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,y=m===void 0?Ez:m,_=Lz(t,nSe),b=H.useMemo(function(){return fSe({breakAll:_.breakAll,children:_.children,maxLines:_.maxLines,scaleToFit:f,style:_.style,width:_.width})},[_.breakAll,_.children,_.maxLines,f,_.style,_.width]),S=_.dx,T=_.dy,A=_.angle,M=_.className,P=_.breakAll,k=Lz(_,iSe);if(!Vr(n)||!Vr(a))return null;var I=n+(we(S)?S:0),O=a+(we(T)?T:0),D;switch(g){case"start":D=dC("calc(".concat(u,")"));break;case"middle":D=dC("calc(".concat((b.length-1)/2," * -").concat(s," + (").concat(u," / 2))"));break;default:D=dC("calc(".concat(b.length-1," * -").concat(s,")"));break}var N=[];if(f){var B=b[0].width,F=_.width;N.push("scale(".concat((we(F)?F/B:1)/B,")"))}return A&&N.push("rotate(".concat(A,", ").concat(I,", ").concat(O,")")),N.length&&(k.transform=N.join(" ")),Q.createElement("text",ML({},ct(k,!0),{x:I,y:O,className:xt("recharts-text",M),textAnchor:d,fill:y.includes("url")?Ez:y}),b.map(function($,U){var z=$.words.join(P?"":" ");return Q.createElement("tspan",{x:I,dy:U===0?D:s,key:"".concat(z,"-").concat(U)},z)}))};function Gl(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function hSe(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function _D(e){let t,r,n;e.length!==2?(t=Gl,r=(s,l)=>Gl(e(s),l),n=(s,l)=>e(s)-l):(t=e===Gl||e===hSe?e:dSe,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 dSe(){return 0}function nX(e){return e===null?NaN:+e}function*vSe(e,t){for(let r of e)r!=null&&(r=+r)>=r&&(yield r)}const pSe=_D(Gl),Yy=pSe.right;_D(nX).center;class Dz extends Map{constructor(t,r=ySe){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(Nz(this,t))}has(t){return super.has(Nz(this,t))}set(t,r){return super.set(gSe(this,t),r)}delete(t){return super.delete(mSe(this,t))}}function Nz({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):r}function gSe({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function mSe({_intern:e,_key:t},r){const n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function ySe(e){return e!==null&&typeof e=="object"?e.valueOf():e}function xSe(e=Gl){if(e===Gl)return iX;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 iX(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const _Se=Math.sqrt(50),bSe=Math.sqrt(10),wSe=Math.sqrt(2);function o1(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>=_Se?10:a>=bSe?5:a>=wSe?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 Rz(e,t){let r;for(const n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);return r}function aX(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?iX:xSe(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));aX(e,t,d,v,i)}const a=e[t];let o=r,s=n;for(xp(e,r,t),i(e[n],a)>0&&xp(e,r,n);o0;)--s}i(e[r],a)===0?xp(e,r,s):(++s,xp(e,s,n)),s<=t&&(r=s+1),t<=s&&(n=s-1)}return e}function xp(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function SSe(e,t,r){if(e=Float64Array.from(vSe(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return Rz(e);if(t>=1)return jz(e);var n,i=(n-1)*t,a=Math.floor(i),o=jz(aX(e,a).subarray(0,a+1)),s=Rz(e.subarray(a+1));return o+(s-o)*(i-a)}}function TSe(e,t,r=nX){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 ASe(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?fx(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?fx(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=MSe.exec(e))?new si(t[1],t[2],t[3],1):(t=PSe.exec(e))?new si(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=LSe.exec(e))?fx(t[1],t[2],t[3],t[4]):(t=kSe.exec(e))?fx(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=ISe.exec(e))?Wz(t[1],t[2]/100,t[3]/100,1):(t=OSe.exec(e))?Wz(t[1],t[2]/100,t[3]/100,t[4]):Bz.hasOwnProperty(e)?Fz(Bz[e]):e==="transparent"?new si(NaN,NaN,NaN,0):null}function Fz(e){return new si(e>>16&255,e>>8&255,e&255,1)}function fx(e,t,r,n){return n<=0&&(e=t=r=NaN),new si(e,t,r,n)}function NSe(e){return e instanceof Xy||(e=Dm(e)),e?(e=e.rgb(),new si(e.r,e.g,e.b,e.opacity)):new si}function OL(e,t,r,n){return arguments.length===1?NSe(e):new si(e,t,r,n??1)}function si(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}wD(si,OL,sX(Xy,{brighter(e){return e=e==null?s1:Math.pow(s1,e),new si(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Om:Math.pow(Om,e),new si(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new si(Ec(this.r),Ec(this.g),Ec(this.b),l1(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:Vz,formatHex:Vz,formatHex8:jSe,formatRgb:Gz,toString:Gz}));function Vz(){return`#${xc(this.r)}${xc(this.g)}${xc(this.b)}`}function jSe(){return`#${xc(this.r)}${xc(this.g)}${xc(this.b)}${xc((isNaN(this.opacity)?1:this.opacity)*255)}`}function Gz(){const e=l1(this.opacity);return`${e===1?"rgb(":"rgba("}${Ec(this.r)}, ${Ec(this.g)}, ${Ec(this.b)}${e===1?")":`, ${e})`}`}function l1(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ec(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function xc(e){return e=Ec(e),(e<16?"0":"")+e.toString(16)}function Wz(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Na(e,t,r,n)}function lX(e){if(e instanceof Na)return new Na(e.h,e.s,e.l,e.opacity);if(e instanceof Xy||(e=Dm(e)),!e)return new Na;if(e instanceof Na)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 Na(o,s,l,e.opacity)}function RSe(e,t,r,n){return arguments.length===1?lX(e):new Na(e,t,r,n??1)}function Na(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}wD(Na,RSe,sX(Xy,{brighter(e){return e=e==null?s1:Math.pow(s1,e),new Na(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Om:Math.pow(Om,e),new Na(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 si(vC(e>=240?e-240:e+120,i,n),vC(e,i,n),vC(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Na(Hz(this.h),hx(this.s),hx(this.l),l1(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=l1(this.opacity);return`${e===1?"hsl(":"hsla("}${Hz(this.h)}, ${hx(this.s)*100}%, ${hx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Hz(e){return e=(e||0)%360,e<0?e+360:e}function hx(e){return Math.max(0,Math.min(1,e||0))}function vC(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 SD=e=>()=>e;function BSe(e,t){return function(r){return e+r*t}}function zSe(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 $Se(e){return(e=+e)==1?uX:function(t,r){return r-t?zSe(t,r,e):SD(isNaN(t)?r:t)}}function uX(e,t){var r=t-e;return r?BSe(e,r):SD(isNaN(e)?t:e)}const Uz=function e(t){var r=$Se(t);function n(i,a){var o=r((i=OL(i)).r,(a=OL(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=uX(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 FSe(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:u1(n,i)})),r=pC.lastIndex;return rt&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function QSe(e,t,r){var n=e[0],i=e[1],a=t[0],o=t[1];return i2?JSe:QSe,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),u1)))(h)))},f.domain=function(h){return arguments.length?(e=Array.from(h,c1),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=TD,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 AD(){return WS()(Gn,Gn)}function eTe(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function f1(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 Cd(e){return e=f1(Math.abs(e)),e?e[1]:NaN}function tTe(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 rTe(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var nTe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Nm(e){if(!(t=nTe.exec(e)))throw new Error("invalid format: "+e);var t;return new CD({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]})}Nm.prototype=CD.prototype;function CD(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+""}CD.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 iTe(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 h1;function aTe(e,t){var r=f1(e,t);if(!r)return h1=void 0,e.toPrecision(t);var n=r[0],i=r[1],a=i-(h1=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")+f1(e,Math.max(0,t+a-1))[0]}function Yz(e,t){var r=f1(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 Xz={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:eTe,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)=>Yz(e*100,t),r:Yz,s:aTe,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function qz(e){return e}var Kz=Array.prototype.map,Qz=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function oTe(e){var t=e.grouping===void 0||e.thousands===void 0?qz:tTe(Kz.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?qz:rTe(Kz.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=Nm(f);var d=f.fill,v=f.align,g=f.sign,m=f.symbol,y=f.zero,_=f.width,b=f.comma,S=f.precision,T=f.trim,A=f.type;A==="n"?(b=!0,A="g"):Xz[A]||(S===void 0&&(S=12),T=!0,A="g"),(y||d==="0"&&v==="=")&&(y=!0,d="0",v="=");var M=(h&&h.prefix!==void 0?h.prefix:"")+(m==="$"?r:m==="#"&&/[boxX]/.test(A)?"0"+A.toLowerCase():""),P=(m==="$"?n:/[%p]/.test(A)?o:"")+(h&&h.suffix!==void 0?h.suffix:""),k=Xz[A],I=/[defgprs%]/.test(A);S=S===void 0?6:/[gprs]/.test(A)?Math.max(1,Math.min(21,S)):Math.max(0,Math.min(20,S));function O(D){var N=M,B=P,F,$,U;if(A==="c")B=k(D)+B,D="";else{D=+D;var z=D<0||1/D<0;if(D=isNaN(D)?l:k(Math.abs(D),S),T&&(D=iTe(D)),z&&+D==0&&g!=="+"&&(z=!1),N=(z?g==="("?g:s:g==="-"||g==="("?"":g)+N,B=(A==="s"&&!isNaN(D)&&h1!==void 0?Qz[8+h1/3]:"")+B+(z&&g==="("?")":""),I){for(F=-1,$=D.length;++F<$;)if(U=D.charCodeAt(F),48>U||U>57){B=(U===46?i+D.slice(F+1):D.slice(F))+B,D=D.slice(0,F);break}}}b&&!y&&(D=t(D,1/0));var V=N.length+D.length+B.length,W=V<_?new Array(_-V+1).join(d):"";switch(b&&y&&(D=t(W+D,W.length?_-B.length:1/0),W=""),v){case"<":D=N+D+B+W;break;case"=":D=N+W+D+B;break;case"^":D=W.slice(0,V=W.length>>1)+N+D+B+W.slice(V);break;default:D=W+N+D+B;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(Cd(h)/3)))*3,v=Math.pow(10,-d),g=u((f=Nm(f),f.type="f",f),{suffix:Qz[8+d/3]});return function(m){return g(v*m)}}return{format:u,formatPrefix:c}}var dx,MD,cX;sTe({thousands:",",grouping:[3],currency:["$",""]});function sTe(e){return dx=oTe(e),MD=dx.format,cX=dx.formatPrefix,dx}function lTe(e){return Math.max(0,-Cd(Math.abs(e)))}function uTe(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Cd(t)/3)))*3-Cd(Math.abs(e)))}function cTe(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Cd(t)-Cd(e))+1}function fX(e,t,r,n){var i=kL(e,t,r),a;switch(n=Nm(n??",f"),n.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=uTe(i,o))&&(n.precision=a),cX(n,o)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=cTe(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=lTe(i))&&(n.precision=a-(n.type==="%")*2);break}}return MD(n)}function hu(e){var t=e.domain;return e.ticks=function(r){var n=t();return PL(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return fX(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=LL(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 d1(){var e=AD();return e.copy=function(){return qy(e,d1())},ma.apply(e,arguments),hu(e)}function hX(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,c1),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return hX(e).unknown(t)},e=arguments.length?Array.from(e,c1):[0,1],hu(r)}function dX(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 pTe(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 t4(e){return(t,r)=>-e(-t,r)}function PD(e){const t=e(Jz,e4),r=t.domain;let n=10,i,a;function o(){return i=pTe(n),a=vTe(n),r()[0]<0?(i=t4(i),a=t4(a),e(fTe,hTe)):e(Jz,e4),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;y.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;y.push(g)}y.length*2{if(s==null&&(s=10),l==null&&(l=n===10?"s":","),typeof l!="function"&&(!(n%1)&&(l=Nm(l)).precision==null&&(l.trim=!0),l=MD(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(dX(r(),{floor:s=>a(Math.floor(i(s))),ceil:s=>a(Math.ceil(i(s)))})),t}function vX(){const e=PD(WS()).domain([1,10]);return e.copy=()=>qy(e,vX()).base(e.base()),ma.apply(e,arguments),e}function r4(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function n4(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function LD(e){var t=1,r=e(r4(t),n4(t));return r.constant=function(n){return arguments.length?e(r4(t=+n),n4(t)):t},hu(r)}function pX(){var e=LD(WS());return e.copy=function(){return qy(e,pX()).constant(e.constant())},ma.apply(e,arguments)}function i4(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function gTe(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function mTe(e){return e<0?-e*e:e*e}function kD(e){var t=e(Gn,Gn),r=1;function n(){return r===1?e(Gn,Gn):r===.5?e(gTe,mTe):e(i4(r),i4(1/r))}return t.exponent=function(i){return arguments.length?(r=+i,n()):r},hu(t)}function ID(){var e=kD(WS());return e.copy=function(){return qy(e,ID()).exponent(e.exponent())},ma.apply(e,arguments),e}function yTe(){return ID.apply(null,arguments).exponent(.5)}function a4(e){return Math.sign(e)*e*e}function xTe(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function gX(){var e=AD(),t=[0,1],r=!1,n;function i(a){var o=xTe(e(a));return isNaN(o)?n:r?Math.round(o):o}return i.invert=function(a){return e.invert(a4(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,c1)).map(a4)),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 gX(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},ma.apply(i,arguments),hu(i)}function mX(){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 yX().domain([e,t]).range(i).unknown(a)},ma.apply(hu(o),arguments)}function xX(){var e=[.5],t=[0,1],r,n=1;function i(a){return a!=null&&a<=a?t[Yy(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 xX().domain(e).range(t).unknown(r)},ma.apply(i,arguments)}const gC=new Date,mC=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)=>(gC.setTime(+a),mC.setTime(+o),e(gC),e(mC),Math.floor(r(gC,mC))),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 v1=Yr(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);v1.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):v1);v1.range;const ds=1e3,na=ds*60,vs=na*60,Ns=vs*24,OD=Ns*7,o4=Ns*30,yC=Ns*365,_c=Yr(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ds)},(e,t)=>(t-e)/ds,e=>e.getUTCSeconds());_c.range;const ED=Yr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ds)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getMinutes());ED.range;const DD=Yr(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getUTCMinutes());DD.range;const ND=Yr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ds-e.getMinutes()*na)},(e,t)=>{e.setTime(+e+t*vs)},(e,t)=>(t-e)/vs,e=>e.getHours());ND.range;const jD=Yr(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*vs)},(e,t)=>(t-e)/vs,e=>e.getUTCHours());jD.range;const Ky=Yr(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*na)/Ns,e=>e.getDate()-1);Ky.range;const HS=Yr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ns,e=>e.getUTCDate()-1);HS.range;const _X=Yr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ns,e=>Math.floor(e/Ns));_X.range;function yf(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)/OD)}const US=yf(0),p1=yf(1),_Te=yf(2),bTe=yf(3),Md=yf(4),wTe=yf(5),STe=yf(6);US.range;p1.range;_Te.range;bTe.range;Md.range;wTe.range;STe.range;function xf(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)/OD)}const ZS=xf(0),g1=xf(1),TTe=xf(2),ATe=xf(3),Pd=xf(4),CTe=xf(5),MTe=xf(6);ZS.range;g1.range;TTe.range;ATe.range;Pd.range;CTe.range;MTe.range;const RD=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());RD.range;const BD=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());BD.range;const js=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());js.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)});js.range;const Rs=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());Rs.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)});Rs.range;function bX(e,t,r,n,i,a){const o=[[_c,1,ds],[_c,5,5*ds],[_c,15,15*ds],[_c,30,30*ds],[a,1,na],[a,5,5*na],[a,15,15*na],[a,30,30*na],[i,1,vs],[i,3,3*vs],[i,6,6*vs],[i,12,12*vs],[n,1,Ns],[n,2,2*Ns],[r,1,OD],[t,1,o4],[t,3,3*o4],[e,1,yC]];function s(u,c,f){const h=cm).right(o,h);if(d===o.length)return e.every(kL(u/yC,c/yC,f));if(d===0)return v1.every(Math.max(kL(u,c,f),1));const[v,g]=o[h/o[d-1][2]53)return null;"w"in ee||(ee.w=1),"Z"in ee?(Se=_C(_p(ee.y,0,1)),Ve=Se.getUTCDay(),Se=Ve>4||Ve===0?g1.ceil(Se):g1(Se),Se=HS.offset(Se,(ee.V-1)*7),ee.y=Se.getUTCFullYear(),ee.m=Se.getUTCMonth(),ee.d=Se.getUTCDate()+(ee.w+6)%7):(Se=xC(_p(ee.y,0,1)),Ve=Se.getDay(),Se=Ve>4||Ve===0?p1.ceil(Se):p1(Se),Se=Ky.offset(Se,(ee.V-1)*7),ee.y=Se.getFullYear(),ee.m=Se.getMonth(),ee.d=Se.getDate()+(ee.w+6)%7)}else("W"in ee||"U"in ee)&&("w"in ee||(ee.w="u"in ee?ee.u%7:"W"in ee?1:0),Ve="Z"in ee?_C(_p(ee.y,0,1)).getUTCDay():xC(_p(ee.y,0,1)).getDay(),ee.m=0,ee.d="W"in ee?(ee.w+6)%7+ee.W*7-(Ve+5)%7:ee.w+ee.U*7-(Ve+6)%7);return"Z"in ee?(ee.H+=ee.Z/100|0,ee.M+=ee.Z%100,_C(ee)):xC(ee)}}function P(ne,fe,le,ee){for(var Fe=0,Se=fe.length,Ve=le.length,Ye,vt;Fe=Ve)return-1;if(Ye=fe.charCodeAt(Fe++),Ye===37){if(Ye=fe.charAt(Fe++),vt=T[Ye in s4?fe.charAt(Fe++):Ye],!vt||(ee=vt(ne,le,ee))<0)return-1}else if(Ye!=le.charCodeAt(ee++))return-1}return ee}function k(ne,fe,le){var ee=u.exec(fe.slice(le));return ee?(ne.p=c.get(ee[0].toLowerCase()),le+ee[0].length):-1}function I(ne,fe,le){var ee=d.exec(fe.slice(le));return ee?(ne.w=v.get(ee[0].toLowerCase()),le+ee[0].length):-1}function O(ne,fe,le){var ee=f.exec(fe.slice(le));return ee?(ne.w=h.get(ee[0].toLowerCase()),le+ee[0].length):-1}function D(ne,fe,le){var ee=y.exec(fe.slice(le));return ee?(ne.m=_.get(ee[0].toLowerCase()),le+ee[0].length):-1}function N(ne,fe,le){var ee=g.exec(fe.slice(le));return ee?(ne.m=m.get(ee[0].toLowerCase()),le+ee[0].length):-1}function B(ne,fe,le){return P(ne,t,fe,le)}function F(ne,fe,le){return P(ne,r,fe,le)}function $(ne,fe,le){return P(ne,n,fe,le)}function U(ne){return o[ne.getDay()]}function z(ne){return a[ne.getDay()]}function V(ne){return l[ne.getMonth()]}function W(ne){return s[ne.getMonth()]}function Y(ne){return i[+(ne.getHours()>=12)]}function Z(ne){return 1+~~(ne.getMonth()/3)}function J(ne){return o[ne.getUTCDay()]}function ae(ne){return a[ne.getUTCDay()]}function ce(ne){return l[ne.getUTCMonth()]}function ge(ne){return s[ne.getUTCMonth()]}function We(ne){return i[+(ne.getUTCHours()>=12)]}function xe(ne){return 1+~~(ne.getUTCMonth()/3)}return{format:function(ne){var fe=A(ne+="",b);return fe.toString=function(){return ne},fe},parse:function(ne){var fe=M(ne+="",!1);return fe.toString=function(){return ne},fe},utcFormat:function(ne){var fe=A(ne+="",S);return fe.toString=function(){return ne},fe},utcParse:function(ne){var fe=M(ne+="",!0);return fe.toString=function(){return ne},fe}}}var s4={"-":"",_:" ",0:"0"},ln=/^\s*\d+/,ETe=/^%/,DTe=/[\\^$*+?|[\]().{}]/g;function Ct(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function jTe(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function RTe(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function BTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function zTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function $Te(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function l4(e,t,r){var n=ln.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function u4(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 FTe(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 VTe(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 GTe(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 c4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function WTe(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 f4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function HTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function UTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function ZTe(e,t,r){var n=ln.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function YTe(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 XTe(e,t,r){var n=ETe.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function qTe(e,t,r){var n=ln.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function KTe(e,t,r){var n=ln.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function h4(e,t){return Ct(e.getDate(),t,2)}function QTe(e,t){return Ct(e.getHours(),t,2)}function JTe(e,t){return Ct(e.getHours()%12||12,t,2)}function eAe(e,t){return Ct(1+Ky.count(js(e),e),t,3)}function wX(e,t){return Ct(e.getMilliseconds(),t,3)}function tAe(e,t){return wX(e,t)+"000"}function rAe(e,t){return Ct(e.getMonth()+1,t,2)}function nAe(e,t){return Ct(e.getMinutes(),t,2)}function iAe(e,t){return Ct(e.getSeconds(),t,2)}function aAe(e){var t=e.getDay();return t===0?7:t}function oAe(e,t){return Ct(US.count(js(e)-1,e),t,2)}function SX(e){var t=e.getDay();return t>=4||t===0?Md(e):Md.ceil(e)}function sAe(e,t){return e=SX(e),Ct(Md.count(js(e),e)+(js(e).getDay()===4),t,2)}function lAe(e){return e.getDay()}function uAe(e,t){return Ct(p1.count(js(e)-1,e),t,2)}function cAe(e,t){return Ct(e.getFullYear()%100,t,2)}function fAe(e,t){return e=SX(e),Ct(e.getFullYear()%100,t,2)}function hAe(e,t){return Ct(e.getFullYear()%1e4,t,4)}function dAe(e,t){var r=e.getDay();return e=r>=4||r===0?Md(e):Md.ceil(e),Ct(e.getFullYear()%1e4,t,4)}function vAe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Ct(t/60|0,"0",2)+Ct(t%60,"0",2)}function d4(e,t){return Ct(e.getUTCDate(),t,2)}function pAe(e,t){return Ct(e.getUTCHours(),t,2)}function gAe(e,t){return Ct(e.getUTCHours()%12||12,t,2)}function mAe(e,t){return Ct(1+HS.count(Rs(e),e),t,3)}function TX(e,t){return Ct(e.getUTCMilliseconds(),t,3)}function yAe(e,t){return TX(e,t)+"000"}function xAe(e,t){return Ct(e.getUTCMonth()+1,t,2)}function _Ae(e,t){return Ct(e.getUTCMinutes(),t,2)}function bAe(e,t){return Ct(e.getUTCSeconds(),t,2)}function wAe(e){var t=e.getUTCDay();return t===0?7:t}function SAe(e,t){return Ct(ZS.count(Rs(e)-1,e),t,2)}function AX(e){var t=e.getUTCDay();return t>=4||t===0?Pd(e):Pd.ceil(e)}function TAe(e,t){return e=AX(e),Ct(Pd.count(Rs(e),e)+(Rs(e).getUTCDay()===4),t,2)}function AAe(e){return e.getUTCDay()}function CAe(e,t){return Ct(g1.count(Rs(e)-1,e),t,2)}function MAe(e,t){return Ct(e.getUTCFullYear()%100,t,2)}function PAe(e,t){return e=AX(e),Ct(e.getUTCFullYear()%100,t,2)}function LAe(e,t){return Ct(e.getUTCFullYear()%1e4,t,4)}function kAe(e,t){var r=e.getUTCDay();return e=r>=4||r===0?Pd(e):Pd.ceil(e),Ct(e.getUTCFullYear()%1e4,t,4)}function IAe(){return"+0000"}function v4(){return"%"}function p4(e){return+e}function g4(e){return Math.floor(+e/1e3)}var Gf,CX,MX;OAe({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 OAe(e){return Gf=OTe(e),CX=Gf.format,Gf.parse,MX=Gf.utcFormat,Gf.utcParse,Gf}function EAe(e){return new Date(e)}function DAe(e){return e instanceof Date?+e:+new Date(+e)}function zD(e,t,r,n,i,a,o,s,l,u){var c=AD(),f=c.invert,h=c.domain,d=u(".%L"),v=u(":%S"),g=u("%I:%M"),m=u("%I %p"),y=u("%a %d"),_=u("%b %d"),b=u("%B"),S=u("%Y");function T(A){return(l(A)t(i/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(i,a)=>SSe(e,a/n))},r.copy=function(){return IX(t).domain(e)},Xs.apply(r,arguments)}function XS(){var e=0,t=.5,r=1,n=1,i,a,o,s,l,u=Gn,c,f=!1,h;function d(g){return isNaN(g=+g)?h:(g=.5+((g=+c(g))-a)*(n*gt}var VAe=FAe,GAe=NX,WAe=VAe,HAe=wv;function UAe(e){return e&&e.length?GAe(e,HAe,WAe):void 0}var ZAe=UAe;const Al=Ft(ZAe);function YAe(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};je.decimalPlaces=je.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*Qt;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};je.dividedBy=je.div=function(e){return ws(this,new this.constructor(e))};je.dividedToIntegerBy=je.idiv=function(e){var t=this,r=t.constructor;return Gt(ws(t,new r(e),0,1),r.precision)};je.equals=je.eq=function(e){return!this.cmp(e)};je.exponent=function(){return Er(this)};je.greaterThan=je.gt=function(e){return this.cmp(e)>0};je.greaterThanOrEqualTo=je.gte=function(e){return this.cmp(e)>=0};je.isInteger=je.isint=function(){return this.e>this.d.length-2};je.isNegative=je.isneg=function(){return this.s<0};je.isPositive=je.ispos=function(){return this.s>0};je.isZero=function(){return this.s===0};je.lessThan=je.lt=function(e){return this.cmp(e)<0};je.lessThanOrEqualTo=je.lte=function(e){return this.cmp(e)<1};je.logarithm=je.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(wi))throw Error(fa+"NaN");if(r.s<1)throw Error(fa+(r.s?"NaN":"-Infinity"));return r.eq(wi)?new n(0):(rr=!1,t=ws(jm(r,a),jm(e,a),a),rr=!0,Gt(t,i))};je.minus=je.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?zX(t,e):RX(t,(e.s=-e.s,e))};je.modulo=je.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(fa+"NaN");return r.s?(rr=!1,t=ws(r,e,0,1).times(e),rr=!0,r.minus(t)):Gt(new n(r),i)};je.naturalExponential=je.exp=function(){return BX(this)};je.naturalLogarithm=je.ln=function(){return jm(this)};je.negated=je.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};je.plus=je.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?RX(t,e):zX(t,(e.s=-e.s,e))};je.precision=je.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Dc+e);if(t=Er(i)+1,n=i.d.length-1,r=n*Qt+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};je.squareRoot=je.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(fa+"NaN")}for(e=Er(s),rr=!1,i=Math.sqrt(+s),i==0||i==1/0?(t=xo(s.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Cv((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(ws(s,a,o+2)).times(.5),xo(a.d).slice(0,o)===(t=xo(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t=="4999"){if(Gt(a,r+1,0),a.times(a).eq(s)){n=a;break}}else if(t!="9999")break;o+=4}return rr=!0,Gt(n,r)};je.times=je.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,rr?Gt(e,f.precision):e};je.toDecimalPlaces=je.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(jo(e,0,Av),t===void 0?t=n.rounding:jo(t,0,8),Gt(r,e+Er(r)+1,t))};je.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Qc(n,!0):(jo(e,0,Av),t===void 0?t=i.rounding:jo(t,0,8),n=Gt(new i(n),e+1,t),r=Qc(n,!0,e+1)),r};je.toFixed=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?Qc(i):(jo(e,0,Av),t===void 0?t=a.rounding:jo(t,0,8),n=Gt(new a(i),e+Er(i)+1,t),r=Qc(n.abs(),!1,e+Er(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};je.toInteger=je.toint=function(){var e=this,t=e.constructor;return Gt(new t(e),Er(e)+1,t.rounding)};je.toNumber=function(){return+this};je.toPower=je.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(wi);if(s=new l(s),!s.s){if(e.s<1)throw Error(fa+"Infinity");return s}if(s.eq(wi))return s;if(n=l.precision,e.eq(wi))return Gt(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(wi),t=Math.ceil(n/Qt+4),rr=!1;r%2&&(i=i.times(s),x4(i.d,t)),r=Cv(r/2),r!==0;)s=s.times(s),x4(s.d,t);return rr=!0,e.s<0?new l(wi).div(i):Gt(i,n)}}else if(a<0)throw Error(fa+"NaN");return a=a<0&&e.d[Math.max(t,r)]&1?-1:1,s.s=1,rr=!1,i=e.times(jm(s,n+u)),rr=!0,i=BX(i),i.s=a,i};je.toPrecision=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?(r=Er(i),n=Qc(i,r<=a.toExpNeg||r>=a.toExpPos)):(jo(e,1,Av),t===void 0?t=a.rounding:jo(t,0,8),i=Gt(new a(i),e,t),r=Er(i),n=Qc(i,e<=r||r<=a.toExpNeg,e)),n};je.toSignificantDigits=je.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(jo(e,1,Av),t===void 0?t=n.rounding:jo(t,0,8)),Gt(new n(r),e,t)};je.toString=je.valueOf=je.val=je.toJSON=je[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Er(e),r=e.constructor;return Qc(e,t<=r.toExpNeg||t>=r.toExpPos)};function RX(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)),rr?Gt(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/Qt),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,rr?Gt(t,f):t}function jo(e,t,r){if(e!==~~e||er)throw Error(Dc+e)}function xo(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,y,_,b,S,T,A,M,P,k=n.constructor,I=n.s==i.s?1:-1,O=n.d,D=i.d;if(!n.s)return new k(n);if(!i.s)throw Error(fa+"Division by zero");for(l=n.e-i.e,M=D.length,T=O.length,d=new k(I),v=d.d=[],u=0;D[u]==(O[u]||0);)++u;if(D[u]>(O[u]||0)&&--l,a==null?_=a=k.precision:o?_=a+(Er(n)-Er(i))+1:_=a,_<0)return new k(0);if(_=_/Qt+2|0,u=0,M==1)for(c=0,D=D[0],_++;(u1&&(D=e(D,c),O=e(O,c),M=D.length,T=O.length),S=M,g=O.slice(0,M),m=g.length;m=en/2&&++A;do c=0,s=t(D,g,M,m),s<0?(y=g[0],M!=m&&(y=y*en+(g[1]||0)),c=y/A|0,c>1?(c>=en&&(c=en-1),f=e(D,c),h=f.length,m=g.length,s=t(f,g,h,m),s==1&&(c--,r(f,M16)throw Error(VD+Er(e));if(!e.s)return new c(wi);for(rr=!1,s=f,o=new c(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(n=Math.log(ic(2,u))/Math.LN10*2+5|0,s+=n,r=i=a=new c(wi),c.precision=s;;){if(i=Gt(i.times(e),s),r=r.times(++l),o=a.plus(ws(i,r,s)),xo(o.d).slice(0,s)===xo(a.d).slice(0,s)){for(;u--;)a=Gt(a.times(a),s);return c.precision=f,t==null?(rr=!0,Gt(a,f)):a}a=o}}function Er(e){for(var t=e.e*Qt,r=e.d[0];r>=10;r/=10)t++;return t}function bC(e,t,r){if(t>e.LN10.sd())throw rr=!0,r&&(e.precision=r),Error(fa+"LN10 precision limit exceeded");return Gt(new e(e.LN10),t)}function ml(e){for(var t="";e--;)t+="0";return t}function jm(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(fa+(d.s?"NaN":"-Infinity"));if(d.eq(wi))return new g(0);if(t==null?(rr=!1,u=m):u=t,d.eq(10))return t==null&&(rr=!0),bC(g,u);if(u+=h,g.precision=u,r=xo(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=xo(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=bC(g,u+2,m).times(a+""),d=jm(new g(n+"."+r.slice(1)),u-h).plus(l),g.precision=m,t==null?(rr=!0,Gt(d,m)):d;for(s=o=d=ws(d.minus(wi),d.plus(wi),u),c=Gt(d.times(d),u),i=3;;){if(o=Gt(o.times(c),u),l=s.plus(ws(o,new g(i),u)),xo(l.d).slice(0,u)===xo(s.d).slice(0,u))return s=s.times(2),a!==0&&(s=s.plus(bC(g,u+2,m).times(a+""))),s=ws(s,new g(f),u),g.precision=m,t==null?(rr=!0,Gt(s,m)):s;s=l,i+=2}}function y4(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=Cv(r/Qt),e.d=[],n=(r+1)%Qt,r<0&&(n+=Qt),nm1||e.e<-m1))throw Error(VD+r)}else e.s=0,e.e=0,e.d=[0];return e}function Gt(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+=Qt,i=t,u=f[c=0];else{if(c=Math.ceil((n+1)/Qt),a=f.length,c>=a)return e;for(u=a=f[c],o=1;a>=10;a/=10)o++;n%=Qt,i=n-Qt+o}if(r!==void 0&&(a=ic(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/ic(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]=ic(10,(Qt-t%Qt)%Qt),e.e=Cv(-t/Qt)||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=ic(10,Qt-n),f[c]=i>0?(u/ic(10,o-i)%ic(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(rr&&(e.e>m1||e.e<-m1))throw Error(VD+Er(e));return e}function zX(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),rr?Gt(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/Qt),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)+ml(n):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+ml(-i-1)+a,r&&(n=r-o)>0&&(a+=ml(n))):i>=o?(a+=ml(i+1-o),r&&(n=r-i-1)>0&&(a=a+"."+ml(n))):((n=i+1)0&&(i+1===o&&(a+="."),a+=ml(n))),e.s<0?"-"+a:a}function x4(e,t){if(e.length>t)return e.length=t,!0}function $X(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(Dc+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 y4(o,a.toString())}else if(typeof a!="string")throw Error(Dc+a);if(a.charCodeAt(0)===45?(a=a.slice(1),o.s=-1):o.s=1,gCe.test(a))y4(o,a);else throw Error(Dc+a)}if(i.prototype=je,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=$X,i.config=i.set=mCe,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(Dc+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Dc+r+": "+n);return this}var GD=$X(pCe);wi=new GD(1);const zt=GD;function yCe(e){return wCe(e)||bCe(e)||_Ce(e)||xCe()}function xCe(){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 _Ce(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 bCe(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function wCe(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,_4(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 RCe(e){if(Array.isArray(e))return e}function HX(e){var t=Rm(e,2),r=t[0],n=t[1],i=r,a=n;return r>n&&(i=n,a=r),[i,a]}function UX(e,t,r){if(e.lte(0))return new zt(0);var n=QS.getDigitCount(e.toNumber()),i=new zt(10).pow(n),a=e.div(i),o=n!==1?.05:.1,s=new zt(Math.ceil(a.div(o).toNumber())).add(r).mul(o),l=s.mul(i);return t?l:new zt(Math.ceil(l))}function BCe(e,t,r){var n=1,i=new zt(e);if(!i.isint()&&r){var a=Math.abs(e);a<1?(n=new zt(10).pow(QS.getDigitCount(e)-1),i=new zt(Math.floor(i.div(n).toNumber())).mul(n)):a>1&&(i=new zt(Math.floor(e)))}else e===0?i=new zt(Math.floor((t-1)/2)):r||(i=new zt(Math.floor(e)));var o=Math.floor((t-1)/2),s=CCe(ACe(function(l){return i.add(new zt(l-o).mul(n)).toNumber()}),jL);return s(0,t)}function ZX(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 zt(0),tickMin:new zt(0),tickMax:new zt(0)};var a=UX(new zt(t).sub(e).div(r-1),n,i),o;e<=0&&t>=0?o=new zt(0):(o=new zt(e).add(t).div(2),o=o.sub(new zt(o).mod(a)));var s=Math.ceil(o.sub(e).div(a).toNumber()),l=Math.ceil(new zt(t).sub(o).div(a).toNumber()),u=s+l+1;return u>r?ZX(e,t,r,n,i+1):(u0?l+(r-u):l,s=t>0?s:s+(r-u)),{step:a,tickMin:o.sub(new zt(s).mul(a)),tickMax:o.add(new zt(l).mul(a))})}function zCe(e){var t=Rm(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=HX([r,n]),l=Rm(s,2),u=l[0],c=l[1];if(u===-1/0||c===1/0){var f=c===1/0?[u].concat(BL(jL(0,i-1).map(function(){return 1/0}))):[].concat(BL(jL(0,i-1).map(function(){return-1/0})),[c]);return r>n?RL(f):f}if(u===c)return BCe(u,i,a);var h=ZX(u,c,o,a),d=h.step,v=h.tickMin,g=h.tickMax,m=QS.rangeStep(v,g.add(new zt(.1).mul(d)),d);return r>n?RL(m):m}function $Ce(e,t){var r=Rm(e,2),n=r[0],i=r[1],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=HX([n,i]),s=Rm(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=UX(new zt(u).sub(l).div(c-1),a,0),h=[].concat(BL(QS.rangeStep(new zt(l),new zt(u).sub(new zt(.99).mul(f)),f)),[u]);return n>i?RL(h):h}var FCe=GX(zCe),VCe=GX($Ce),GCe="Invariant failed";function Jc(e,t){throw new Error(GCe)}var WCe=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function kd(e){"@babel/helpers - typeof";return kd=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},kd(e)}function y1(){return y1=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 KCe(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 QCe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function JCe(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(ja(f-c)!==ja(h-f)){var v=[];if(ja(h-f)===ja(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 y=[Math.min(f,(d+f)/2),Math.max(f,(d+f)/2)];if(t>y[0]&&t<=y[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},WD=function(t){var r,n=t,i=n.type.displayName,a=(r=t.type)!==null&&r!==void 0&&r.defaultProps?pr(pr({},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},g2e=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(y&&y.length){var _=y[0].type.defaultProps,b=_!==void 0?pr(pr({},_),y[0].props):y[0].props,S=b.barSize,T=b[m];o[T]||(o[T]=[]);var A=dt(S)?r:S;o[T].push({item:y[0],stackList:y.slice(1),barSize:dt(A)?void 0:Kc(A,n,0)})}}return o},m2e=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=Kc(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 A={item:T.item,position:{offset:m.offset+m.size+u,size:h?d:T.barSize}},M=[].concat(S4(S),[A]);return m=M[M.length-1].position,T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){M.push({item:P,position:m})}),M},f)}else{var y=Kc(n,i,0,!0);i-2*y-(l-1)*u<=0&&(u=0);var _=(i-2*y-(l-1)*u)/l;_>1&&(_>>=0);var b=s===+s?Math.min(_,s):_;c=o.reduce(function(S,T,A){var M=[].concat(S4(S),[{item:T.item,position:{offset:y+(_+u)*A+(_-b)/2,size:b}}]);return T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){M.push({item:P,position:M[M.length-1].position})}),M},f)}return c},y2e=function(t,r,n,i){var a=n.children,o=n.width,s=n.margin,l=o-(s.left||0)-(s.right||0),u=KX({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 pr(pr({},t),{},nd({},d,t[d]+(f||0)));if((g==="horizontal"||g==="vertical"&&d==="center")&&v!=="middle"&&we(t[v]))return pr(pr({},t),{},nd({},v,t[v]+(h||0)))}return t},x2e=function(t,r,n){return dt(r)?!0:t==="horizontal"?r==="yAxis":t==="vertical"||n==="x"?r==="xAxis":n==="y"?r==="yAxis":!0},QX=function(t,r,n,i,a){var o=r.props.children,s=oa(o,Qy).filter(function(u){return x2e(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)?[qS(f),Al(f)]:[f,f],d=l.reduce(function(v,g){var m=Un(c,g,0),y=h[0]-Math.abs(Array.isArray(m)?m[0]:m),_=h[1]+Math.abs(Array.isArray(m)?m[1]:m);return[Math.min(y,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},_2e=function(t,r,n,i,a){var o=r.map(function(s){return QX(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},JX=function(t,r,n,i,a){var o=r.map(function(l){var u=l.props.dataKey;return n==="number"&&u&&QX(t,l,u,i)||Ng(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?ja(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!yv(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}})},wC=new WeakMap,vx=function(t,r){if(typeof r!="function")return t;wC.has(t)||wC.set(t,new WeakMap);var n=wC.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:Im(),realScaleType:"band"}:o==="radial"&&s==="angleAxis"?{scale:d1(),realScaleType:"linear"}:a==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!n)?{scale:Dg(),realScaleType:"point"}:a==="category"?{scale:Im(),realScaleType:"band"}:{scale:d1(),realScaleType:"linear"};if(qc(i)){var l="scale".concat(RS(i));return{scale:(m4[l]||Dg)(),realScaleType:m4[l]?l:"point"}}return ft(i)?{scale:i}:{scale:Dg(),realScaleType:"point"}},A4=1e-4,w2e=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])-A4,o=Math.max(i[0],i[1])+A4,s=t(r[0]),l=t(r[n-1]);(so||lo)&&t.domain([r[0],r[n-1]])}},S2e=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])}},C2e=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)}},M2e={sign:A2e,expand:Fpe,none:bd,silhouette:Vpe,wiggle:Gpe,positive:C2e},P2e=function(t,r,n){var i=r.map(function(s){return s.props.dataKey}),a=M2e[n],o=$pe().keys(i).value(function(s,l){return+Un(s,l,0)}).order(hL).offset(a);return o(t)},L2e=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?pr(pr({},h.type.defaultProps),h.props):h.props,g=v.stackId,m=v.hide;if(m)return f;var y=v[n],_=f[y]||{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[xv("_stackId_")]={numericAxisId:n,cateAxisId:i,items:[h]};return pr(pr({},f),{},nd({},y,_))},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 y=d.stackGroups[m];return pr(pr({},g),{},nd({},m,{numericAxisId:n,cateAxisId:i,items:y.items,stackedData:P2e(t,y.items,a)}))},v)}return pr(pr({},f),{},nd({},h,d))},c)},k2e=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=FCe(u,a,s);return t.domain([qS(c),Al(c)]),{niceTicks:c}}if(a&&i==="number"){var f=t.domain(),h=VCe(f,a,s);return{niceTicks:h}}return null};function _1(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=Gb(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 C4=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},I2e=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]},O2e=function(t,r){var n,i=(n=t.type)!==null&&n!==void 0&&n.defaultProps?pr(pr({},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},E2e=function(t){return t.reduce(function(r,n){return[qS(n.concat([r[0]]).filter(we)),Al(n.concat([r[1]]).filter(we))]},[1/0,-1/0])},tq=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=E2e(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})},M4=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,P4=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,VL=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(M4.test(t[0])){var a=+M4.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(P4.test(t[1])){var o=+P4.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},b1=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=yD(r,function(f){return f.coordinate}),o=1/0,s=1,l=a.length;so&&(u=2*Math.PI-u),{radius:s,angle:R2e(u),angleInRadian:u}},$2e=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}},F2e=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},O4=function(t,r){var n=t.x,i=t.y,a=z2e({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=$2e(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?I4(I4({},r),{},{radius:o,angle:F2e(d,r)}):null};function Fm(e){"@babel/helpers - typeof";return Fm=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},Fm(e)}var V2e=["offset"];function G2e(e){return Z2e(e)||U2e(e)||H2e(e)||W2e()}function W2e(){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 H2e(e,t){if(e){if(typeof e=="string")return GL(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 GL(e,t)}}function U2e(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Z2e(e){if(Array.isArray(e))return GL(e)}function GL(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 X2e(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 E4(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=y<=0?S:!S;var T=pn(u,c,m,b),A=pn(u,c,m,b+(S?1:-1)*359),M="M".concat(T.x,",").concat(T.y,` - A`).concat(m,",").concat(m,",0,1,").concat(S?0:1,`, - `).concat(A.x,",").concat(A.y),P=dt(t.id)?xv("recharts-radial-line-"):t.id;return Q.createElement("text",Vm({},n,{dominantBaseline:"central",className:xt("recharts-radial-bar-label",s)}),Q.createElement("defs",null,Q.createElement("path",{id:P,d:M})),Q.createElement("textPath",{xlinkHref:"#".concat(P)},r))},rMe=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,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,y=pn(o,s,m,h),_=y.x,b=y.y;return{x:_,y:b,textAnchor:"middle",verticalAnchor:"middle"}},nMe=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,y=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:y,verticalAnchor:"middle"};return Br(Br({},T),n?{width:Math.max(T.x-n.x,0),height:c}:{})}if(a==="right"){var A={x:s+u+m,y:l+c/2,textAnchor:_,verticalAnchor:"middle"};return Br(Br({},A),n?{width:Math.max(n.x+n.width-A.x,0),height:c}:{})}var M=n?{width:u,height:c}:{};return a==="insideLeft"?Br({x:s+m,y:l+c/2,textAnchor:_,verticalAnchor:"middle"},M):a==="insideRight"?Br({x:s+u-m,y:l+c/2,textAnchor:y,verticalAnchor:"middle"},M):a==="insideTop"?Br({x:s+u/2,y:l+h,textAnchor:"middle",verticalAnchor:v},M):a==="insideBottom"?Br({x:s+u/2,y:l+c-h,textAnchor:"middle",verticalAnchor:d},M):a==="insideTopLeft"?Br({x:s+m,y:l+h,textAnchor:_,verticalAnchor:v},M):a==="insideTopRight"?Br({x:s+u-m,y:l+h,textAnchor:y,verticalAnchor:v},M):a==="insideBottomLeft"?Br({x:s+m,y:l+c-h,textAnchor:_,verticalAnchor:d},M):a==="insideBottomRight"?Br({x:s+u-m,y:l+c-h,textAnchor:y,verticalAnchor:d},M):vv(a)&&(we(a.x)||yc(a.x))&&(we(a.y)||yc(a.y))?Br({x:s+Kc(a.x,u),y:l+Kc(a.y,c),textAnchor:"end",verticalAnchor:"end"},M):Br({x:s+u/2,y:l+c/2,textAnchor:"middle",verticalAnchor:"middle"},M)},iMe=function(t){return"cx"in t&&we(t.cx)};function In(e){var t=e.offset,r=t===void 0?5:t,n=Y2e(e,V2e),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=J2e(i);var v=iMe(a),g=ct(i,!0);if(v&&(o==="insideStart"||o==="insideEnd"||o==="end"))return tMe(i,d,g);var m=v?rMe(i):nMe(i);return Q.createElement(a1,Vm({className:xt("recharts-label",f)},g,m,{breakAll:h}),d)}In.displayName="Label";var nq=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,y=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:y}:t.viewBox?t.viewBox:{}},aMe=function(t,r){return t?t===!0?Q.createElement(In,{key:"label-implicit",viewBox:r}):Vr(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}):vv(t)?Q.createElement(In,Vm({viewBox:r},t,{key:"label-implicit"})):null:null},oMe=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=nq(t),o=oa(i,In).map(function(l,u){return H.cloneElement(l,{viewBox:r||a,key:"label-".concat(u)})});if(!n)return o;var s=aMe(t.label,r||a);return[s].concat(G2e(o))};In.parseViewBox=nq;In.renderCallByParent=oMe;function sMe(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var lMe=sMe;const uMe=Ft(lMe);function Gm(e){"@babel/helpers - typeof";return Gm=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},Gm(e)}var cMe=["valueAccessor"],fMe=["data","dataKey","clockWise","id","textBreakAll"];function hMe(e){return gMe(e)||pMe(e)||vMe(e)||dMe()}function dMe(){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 vMe(e,t){if(e){if(typeof e=="string")return WL(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 WL(e,t)}}function pMe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function gMe(e){if(Array.isArray(e))return WL(e)}function WL(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 _Me(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)?uMe(t.value):t.value};function Ss(e){var t=e.valueAccessor,r=t===void 0?bMe:t,n=j4(e,cMe),i=n.data,a=n.dataKey,o=n.clockWise,s=n.id,l=n.textBreakAll,u=j4(n,fMe);return!i||!i.length?null:Q.createElement(Xt,{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,S1({},ct(c,!0),u,d,{parentViewBox:c.parentViewBox,value:h,textBreakAll:l,viewBox:In.parseViewBox(dt(o)?c:N4(N4({},c),{},{clockWise:o})),key:"label-".concat(f),index:f}))}))}Ss.displayName="LabelList";function wMe(e,t){return e?e===!0?Q.createElement(Ss,{key:"labelList-implicit",data:t}):Q.isValidElement(e)||ft(e)?Q.createElement(Ss,{key:"labelList-implicit",data:t,content:e}):vv(e)?Q.createElement(Ss,S1({data:t},e,{key:"labelList-implicit"})):null:null}function SMe(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=oa(n,Ss).map(function(o,s){return H.cloneElement(o,{data:t,key:"labelList-".concat(s)})});if(!r)return i;var a=wMe(e.label,t);return[a].concat(hMe(i))}Ss.renderCallByParent=SMe;function Wm(e){"@babel/helpers - typeof";return Wm=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},Wm(e)}function HL(){return HL=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=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},PMe=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=ja(c-u),h=px({cx:r,cy:n,radius:a,angle:u,sign:f,cornerRadius:o,cornerIsExternal:l}),d=h.circleTangency,v=h.lineTangency,g=h.theta,m=px({cx:r,cy:n,radius:a,angle:c,sign:-f,cornerRadius:o,cornerIsExternal:l}),y=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,` - a`).concat(o,",").concat(o,",0,0,1,").concat(o*2,`,0 - a`).concat(o,",").concat(o,",0,0,1,").concat(-o*2,`,0 - `):iq({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(y.x,",").concat(y.y,` - A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(_.x,",").concat(_.y,` - `);if(i>0){var A=px({cx:r,cy:n,radius:i,angle:u,sign:f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),M=A.circleTangency,P=A.lineTangency,k=A.theta,I=px({cx:r,cy:n,radius:i,angle:c,sign:-f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),O=I.circleTangency,D=I.lineTangency,N=I.theta,B=l?Math.abs(u-c):Math.abs(u-c)-k-N;if(B<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(+(B>180),",").concat(+(f>0),",").concat(M.x,",").concat(M.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},LMe={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},aq=function(t){var r=B4(B4({},LMe),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=PMe({cx:n,cy:i,innerRadius:a,outerRadius:o,cornerRadius:Math.min(g,v/2),forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}):m=iq({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 Hm(e){"@babel/helpers - typeof";return Hm=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},Hm(e)}function UL(){return UL=Object.assign?Object.assign.bind():function(e){for(var t=1;tVMe.call(e,t));function _f(e,t){return e===t||!e&&!t&&e!==e&&t!==t}const HMe="__v",UMe="__o",ZMe="_owner",{getOwnPropertyDescriptor:G4,keys:W4}=Object;function YMe(e,t){return e.byteLength===t.byteLength&&T1(new Uint8Array(e),new Uint8Array(t))}function XMe(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 qMe(e,t){return e.byteLength===t.byteLength&&T1(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))}function KMe(e,t){return _f(e.getTime(),t.getTime())}function QMe(e,t){return e.name===t.name&&e.message===t.message&&e.cause===t.cause&&e.stack===t.stack}function JMe(e,t){return e===t}function H4(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 ePe=_f;function tPe(e,t,r){const n=W4(e);let i=n.length;if(W4(t).length!==i)return!1;for(;i-- >0;)if(!uq(e,t,r,n[i]))return!1;return!0}function Ap(e,t,r){const n=V4(e);let i=n.length;if(V4(t).length!==i)return!1;let a,o,s;for(;i-- >0;)if(a=n[i],!uq(e,t,r,a)||(o=G4(e,a),s=G4(t,a),(o||s)&&(!o||!s||o.configurable!==s.configurable||o.enumerable!==s.enumerable||o.writable!==s.writable)))return!1;return!0}function rPe(e,t){return _f(e.valueOf(),t.valueOf())}function nPe(e,t){return e.source===t.source&&e.flags===t.flags}function U4(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 T1(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 iPe(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 uq(e,t,r,n){return(n===ZMe||n===UMe||n===HMe)&&(e.$$typeof||t.$$typeof)?!0:WMe(t,n)&&r.equals(e[n],t[n],n,n,e,t,r)}const aPe="[object ArrayBuffer]",oPe="[object Arguments]",sPe="[object Boolean]",lPe="[object DataView]",uPe="[object Date]",cPe="[object Error]",fPe="[object Map]",hPe="[object Number]",dPe="[object Object]",vPe="[object RegExp]",pPe="[object Set]",gPe="[object String]",mPe={"[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},yPe="[object URL]",xPe=Object.prototype.toString;function _Pe({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,y,_){if(m===y)return!0;if(m==null||y==null)return!1;const b=typeof m;if(b!==typeof y)return!1;if(b!=="object")return b==="number"?s(m,y,_):b==="function"?a(m,y,_):!1;const S=m.constructor;if(S!==y.constructor)return!1;if(S===Object)return l(m,y,_);if(Array.isArray(m))return t(m,y,_);if(S===Date)return n(m,y,_);if(S===RegExp)return c(m,y,_);if(S===Map)return o(m,y,_);if(S===Set)return f(m,y,_);const T=xPe.call(m);if(T===uPe)return n(m,y,_);if(T===vPe)return c(m,y,_);if(T===fPe)return o(m,y,_);if(T===pPe)return f(m,y,_);if(T===dPe)return typeof m.then!="function"&&typeof y.then!="function"&&l(m,y,_);if(T===yPe)return d(m,y,_);if(T===cPe)return i(m,y,_);if(T===oPe)return l(m,y,_);if(mPe[T])return h(m,y,_);if(T===aPe)return e(m,y,_);if(T===lPe)return r(m,y,_);if(T===sPe||T===hPe||T===gPe)return u(m,y,_);if(v){let A=v[T];if(!A){const M=GMe(m);M&&(A=v[M])}if(A)return A(m,y,_)}return!1}}function bPe({circular:e,createCustomConfig:t,strict:r}){let n={areArrayBuffersEqual:YMe,areArraysEqual:r?Ap:XMe,areDataViewsEqual:qMe,areDatesEqual:KMe,areErrorsEqual:QMe,areFunctionsEqual:JMe,areMapsEqual:r?SC(H4,Ap):H4,areNumbersEqual:ePe,areObjectsEqual:r?Ap:tPe,arePrimitiveWrappersEqual:rPe,areRegExpsEqual:nPe,areSetsEqual:r?SC(U4,Ap):U4,areTypedArraysEqual:r?SC(T1,Ap):T1,areUrlsEqual:iPe,unknownTagComparators:void 0};if(t&&(n=Object.assign({},n,t(n))),e){const i=mx(n.areArraysEqual),a=mx(n.areMapsEqual),o=mx(n.areObjectsEqual),s=mx(n.areSetsEqual);n=Object.assign({},n,{areArraysEqual:i,areMapsEqual:a,areObjectsEqual:o,areSetsEqual:s})}return n}function wPe(e){return function(t,r,n,i,a,o,s){return e(t,r,s)}}function SPe({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 TPe=vu();vu({strict:!0});vu({circular:!0});vu({circular:!0,strict:!0});vu({createInternalComparator:()=>_f});vu({strict:!0,createInternalComparator:()=>_f});vu({circular:!0,createInternalComparator:()=>_f});vu({circular:!0,createInternalComparator:()=>_f,strict:!0});function vu(e={}){const{circular:t=!1,createInternalComparator:r,createState:n,strict:i=!1}=e,a=bPe(e),o=_Pe(a),s=r?r(o):wPe(o);return SPe({circular:t,comparator:o,createState:n,equals:s,strict:i})}function APe(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function Z4(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):APe(i)};requestAnimationFrame(n)}function ZL(e){"@babel/helpers - typeof";return ZL=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},ZL(e)}function CPe(e){return kPe(e)||LPe(e)||PPe(e)||MPe()}function MPe(){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 PPe(e,t){if(e){if(typeof e=="string")return Y4(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 Y4(e,t)}}function Y4(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:y<0?0:y},g=function(y){for(var _=y>1?1:y,b=_,S=0;S<8;++S){var T=f(b)-_,A=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 sLe(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 TC(e){return fLe(e)||cLe(e)||uLe(e)||lLe()}function lLe(){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 uLe(e,t){if(e){if(typeof e=="string")return QL(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 QL(e,t)}}function cLe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function fLe(e){if(Array.isArray(e))return QL(e)}function QL(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 M1(e){return M1=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},M1(e)}var Ro=function(e){gLe(r,e);var t=mLe(r);function r(n,i){var a;hLe(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(tk(a)),a.changeStyle=a.changeStyle.bind(tk(a)),!s||d<=0)return a.state={style:{}},typeof h=="function"&&(a.state={style:c}),ek(a);if(f&&f.length)a.state={style:f[0].style};else if(u){if(typeof h=="function")return a.state={style:u},ek(a);a.state={style:l?cg({},l,u):u}}else a.state={style:{}};return a}return vLe(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?cg({},l,c):c};this.state&&h&&(l&&h[l]!==c||!l&&h!==c)&&this.setState(d);return}if(!(TPe(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?cg({},l,g):g};(l&&h[l]!==g||!l&&h!==g)&&this.setState(m)}this.runAnimation(Ta(Ta({},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=iLe(o,s,ZPe(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,y){if(y===0)return g;var _=m.duration,b=m.easing,S=b===void 0?"ease":b,T=m.style,A=m.properties,M=m.onAnimationEnd,P=y>0?o[y-1]:m,k=A||Object.keys(T);if(typeof S=="function"||S==="spring")return[].concat(TC(g),[a.runJSAnimation.bind(a,{from:P.style,to:T,duration:_,easing:S}),_]);var I=K4(k,_,S),O=Ta(Ta(Ta({},P.style),T),{},{transition:I});return[].concat(TC(g),[O,_,M]).filter(NPe)};return this.manager.start([l].concat(TC(o.reduce(d,[c,Math.max(h,s)])),[i.onAnimationEnd]))}},{key:"runAnimation",value:function(i){this.manager||(this.manager=IPe());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?cg({},s,l):l,m=K4(Object.keys(g),o,u);v.start([c,a,Ta(Ta({},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=oLe(i,aLe),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,y=v.className,_=H.cloneElement(d,Ta(Ta({},l),{},{style:Ta(Ta({},m),c),className:y}));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);Ro.displayName="Animate";Ro.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Ro.propTypes={from:kt.oneOfType([kt.object,kt.string]),to:kt.oneOfType([kt.object,kt.string]),attributeName:kt.string,duration:kt.number,begin:kt.number,easing:kt.oneOfType([kt.string,kt.func]),steps:kt.arrayOf(kt.shape({duration:kt.number.isRequired,style:kt.object.isRequired,easing:kt.oneOfType([kt.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),kt.func]),properties:kt.arrayOf("string"),onAnimationEnd:kt.func})),children:kt.oneOfType([kt.node,kt.func]),isActive:kt.bool,canBegin:kt.bool,onAnimationEnd:kt.func,shouldReAnimate:kt.bool,onAnimationStart:kt.func,onAnimationReStart:kt.func};function Ym(e){"@babel/helpers - typeof";return Ym=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},Ym(e)}function P1(){return P1=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,` - A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t+l*v,",").concat(r,` - L `).concat(t+n-l*v,",").concat(r,` - A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t+n,",").concat(r+s*v,` - 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},MLe=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},PLe={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},HD=function(t){var r=a$(a$({},PLe),t),n=H.useRef(),i=H.useState(-1),a=xLe(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,y=r.isAnimationActive,_=r.isUpdateAnimationActive;if(l!==+l||u!==+u||c!==+c||f!==+f||c===0||f===0)return null;var b=xt("recharts-rectangle",d);return _?Q.createElement(Ro,{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,A=S.height,M=S.x,P=S.y;return Q.createElement(Ro,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:m,duration:g,isActive:y,easing:v},Q.createElement("path",P1({},ct(r,!0),{className:b,d:o$(M,P,T,A,h),ref:n})))}):Q.createElement("path",P1({},ct(r,!0),{className:b,d:o$(l,u,c,f,h)}))};function rk(){return rk=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 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}var jLe=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,g=DLe(t,LLe),m=kLe({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",nk({},ct(m,!0),{className:xt("recharts-cross",v),d:jLe(n,a,f,d,s,u)}))},BLe=IY,zLe=BLe(Object.getPrototypeOf,Object),$Le=zLe,FLe=Zs,VLe=$Le,GLe=Ys,WLe="[object Object]",HLe=Function.prototype,ULe=Object.prototype,gq=HLe.toString,ZLe=ULe.hasOwnProperty,YLe=gq.call(Object);function XLe(e){if(!GLe(e)||FLe(e)!=WLe)return!1;var t=VLe(e);if(t===null)return!0;var r=ZLe.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&gq.call(r)==YLe}var qLe=XLe;const KLe=Ft(qLe);var QLe=Zs,JLe=Ys,eke="[object Boolean]";function tke(e){return e===!0||e===!1||JLe(e)&&QLe(e)==eke}var rke=tke;const nke=Ft(rke);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 L1(){return L1=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:y},function(b){var S=b.upperWidth,T=b.lowerWidth,A=b.height,M=b.x,P=b.y;return Q.createElement(Ro,{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",L1({},ct(r,!0),{className:_,d:f$(M,P,S,T,A),ref:n})))}):Q.createElement("g",null,Q.createElement("path",L1({},ct(r,!0),{className:_,d:f$(l,u,c,f,h)})))},vke=["option","shapeType","propTransformer","activeClassName","isActive"];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 pke(e,t){if(e==null)return{};var r=gke(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 gke(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 h$(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 k1(e){for(var t=1;t0&&n.handleDrag(i.changedTouches[0])}),mi(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()}),mi(n,"handleLeaveWrapper",function(){(n.state.isTravellerMoving||n.state.isSlideMoving)&&(n.leaveTimer=window.setTimeout(n.handleDragEnd,n.props.leaveTimeOut))}),mi(n,"handleEnterSlideOrTraveller",function(){n.setState({isTextActive:!0})}),mi(n,"handleLeaveSlideOrTraveller",function(){n.setState({isTextActive:!1})}),mi(n,"handleSlideDragStart",function(i){var a=x$(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 tIe(t,e),Kke(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,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=x$(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,y={startX:this.state.startX,endX:this.state.endX},_=n.pageX-a;_>0?_=Math.min(_,f+h-d-u):_<0&&(_=Math.max(_,f-u)),y[o]=u+_;var b=this.getIndex(y),S=b.startIndex,T=b.endIndex,A=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(mi(mi({},o,u+_),"brushMoveStartX",n.pageX),function(){v&&A()&&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(mi({},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,y=Math.max(n,this.props.x),_=CC(CC({},ct(this.props,!1)),{},{x:y,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(Xt,{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(Xt,{className:"recharts-brush-texts"},Q.createElement(a1,O1({textAnchor:"end",verticalAnchor:"middle",x:Math.min(f,h)-d,y:o+s/2},v),this.getTextOfTick(i)),Q.createElement(a1,O1({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,y=h.isTravellerMoving,_=h.isTravellerFocused;if(!i||!i.length||!we(s)||!we(l)||!we(u)||!we(c)||u<=0||c<=0)return null;var b=xt("recharts-brush",a),S=Q.Children.count(o)===1,T=Xke("userSelect","none");return Q.createElement(Xt,{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||y||_||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 CC({prevData:a,prevTravellerWidth:l,prevUpdateId:u,prevX:s,prevWidth:o},a&&a.length?nIe({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);mi(Ed,"displayName","Brush");mi(Ed,"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 iIe=mD;function aIe(e,t){var r;return iIe(e,function(n,i,a){return r=t(n,i,a),!r}),!!r}var oIe=aIe,sIe=SY,lIe=Sv,uIe=oIe,cIe=di,fIe=GS;function hIe(e,t,r){var n=cIe(e)?sIe:uIe;return r&&fIe(e,t,r)&&(t=void 0),n(e,lIe(t))}var dIe=hIe;const vIe=Ft(dIe);var ko=function(t,r){var n=t.alwaysShow,i=t.ifOverflow;return n&&(i="extendDomain"),i===r},_$=WY;function pIe(e,t,r){t=="__proto__"&&_$?_$(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var gIe=pIe,mIe=gIe,yIe=VY,xIe=Sv;function _Ie(e,t){var r={};return t=xIe(t),yIe(e,function(n,i,a){mIe(r,i,t(n,i,a))}),r}var bIe=_Ie;const wIe=Ft(bIe);function SIe(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 FIe(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 VIe(e,t){var r=e.x,n=e.y,i=$Ie(e,jIe),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 Cp(Cp(Cp(Cp(Cp({},t),i),o?{x:o}:{}),l?{y:l}:{}),{},{height:c,width:h,name:t.name,radius:t.radius})}function w$(e){return Q.createElement(Ske,ak({shapeType:"rectangle",propTransformer:VIe,activeClassName:"recharts-active-bar"},e))}var GIe=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)||eve(n);return a?t(n,i):(a||Jc(),r)}},WIe=["value","background"],_q;function Dd(e){"@babel/helpers - typeof";return Dd=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},Dd(e)}function HIe(e,t){if(e==null)return{};var r=UIe(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 UIe(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 D1(){return D1=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&Math.abs(F)0&&Math.abs(B)0&&(N=Math.min((ae||0)-(B[ce-1]||0),N))}),Number.isFinite(N)){var F=N/D,$=g.layout==="vertical"?n.height:n.width;if(g.padding==="gap"&&(M=F*$/2),g.padding==="no-gap"){var U=Kc(t.barCategoryGap,F*$),z=F*$/2;M=z-U-(z-U)/$*U}}}i==="xAxis"?P=[n.left+(b.left||0)+(M||0),n.left+n.width-(b.right||0)-(M||0)]:i==="yAxis"?P=l==="horizontal"?[n.top+n.height-(b.bottom||0),n.top+(b.top||0)]:[n.top+(b.top||0)+(M||0),n.top+n.height-(b.bottom||0)-(M||0)]:P=g.range,T&&(P=[P[1],P[0]]);var V=b2e(g,a,h),W=V.scale,Y=V.realScaleType;W.domain(y).range(P),w2e(W);var Z=k2e(W,Oa(Oa({},g),{},{realScaleType:Y}));i==="xAxis"?(O=m==="top"&&!S||m==="bottom"&&S,k=n.left,I=f[A]-O*g.height):i==="yAxis"&&(O=m==="left"&&!S||m==="right"&&S,k=f[A]-O*g.width,I=n.top);var J=Oa(Oa(Oa({},g),Z),{},{realScaleType:Y,x:k,y:I,scale:W,width:i==="xAxis"?n.width:g.width,height:i==="yAxis"?n.height:g.height});return J.bandSize=b1(J,Z),!g.hide&&i==="xAxis"?f[A]+=(O?-1:1)*J.height:g.hide||(f[A]+=(O?-1:1)*J.width),Oa(Oa({},d),{},rT({},v,J))},{})},Aq=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)}},nOe=function(t){var r=t.x1,n=t.y1,i=t.x2,a=t.y2;return Aq({x:r,y:n},{x:i,y:a})},Cq=function(){function e(t){eOe(this,e),this.scale=t}return tOe(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)}}])}();rT(Cq,"EPS",1e-4);var UD=function(t){var r=Object.keys(t).reduce(function(n,i){return Oa(Oa({},n),{},rT({},i,Cq.create(t[i])))},{});return Oa(Oa({},r),{},{apply:function(i){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.bandAware,s=a.position;return wIe(i,function(l,u){return r[u].apply(l,{bandAware:o,position:s})})},isInRange:function(i){return NIe(i,function(a,o){return r[o].isInRange(a)})}})};function iOe(e){return(e%180+180)%180}var aOe=function(t){var r=t.width,n=t.height,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=iOe(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 UOe(e,t){return Gq(e,t+1)}function ZOe(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:Gq(n,u)};var g=l,m,y=function(){return m===void 0&&(m=r(v,g)),m},_=v.coordinate,b=l===0||z1(e,_,y,c,s);b||(l=0,c=o,u+=1),b&&(c=_+e*(y()/2+i),l+=u)},h;u<=a.length;)if(h=f(),h)return h.v;return[]}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 N$(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-m*e:d.coordinate})}else a[h]=d=Mn(Mn({},d),{},{tickCoord:d.coordinate});var y=z1(e,d.tickCoord,g,s,l);y&&(l=d.tickCoord-e*(g()/2+i),a[h]=Mn(Mn({},d),{},{isShow:!0}))},c=o-1;c>=0;c--)u(c);return a}function QOe(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=z1(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,g=function(_){var b=o[_],S,T=function(){return S===void 0&&(S=r(b,_)),S};if(_===0){var A=e*(b.coordinate-e*T()/2-l);o[_]=b=Mn(Mn({},b),{},{tickCoord:A<0?b.coordinate-A*e:b.coordinate})}else o[_]=b=Mn(Mn({},b),{},{tickCoord:b.coordinate});var M=z1(e,b.tickCoord,T,l,u);M&&(l=b.tickCoord+e*(T()/2+i),o[_]=Mn(Mn({},b),{},{isShow:!0}))},m=0;m=2?ja(i[1].coordinate-i[0].coordinate):1,y=HOe(a,m,d);return l==="equidistantPreserveStart"?ZOe(m,y,g,i,o):(l==="preserveStart"||l==="preserveStartEnd"?h=QOe(m,y,g,i,o,l==="preserveStartEnd"):h=KOe(m,y,g,i,o),h.filter(function(_){return _.isShow}))}var eEe=["viewBox"],tEe=["viewBox"],rEe=["ticks"];function Bd(e){"@babel/helpers - typeof";return Bd=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},Bd(e)}function Rh(){return Rh=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 nEe(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 iEe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function R$(e,t){for(var r=0;r0?l(this.props):l(d)),o<=0||s<=0||!v||!v.length?null:Q.createElement(Xt,{className:xt("recharts-cartesian-axis",u),ref:function(m){n.layerReference=m}},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=xt(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(a1,Rh({},i,{className:"recharts-cartesian-axis-tick-value"}),a),o}}])}(H.Component);YD(sT,"displayName","CartesianAxis");YD(sT,"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 fEe=["type","layout","connectNulls","ref"],hEe=["key"];function zd(e){"@babel/helpers - typeof";return zd=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},zd(e)}function B$(e,t){if(e==null)return{};var r=dEe(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 dEe(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 Rg(){return Rg=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(Wf(l.slice(0,v)),[f-g]);break}var m=d.length%2===0?[0,h]:[h];return[].concat(Wf(t.repeat(l,c)),Wf(d),m).map(function(y){return"".concat(y,"px")}).join(", ")}),Ea(r,"id",xv("recharts-line-")),Ea(r,"pathRef",function(o){r.mainCurve=o}),Ea(r,"handleAnimationEnd",function(){r.setState({isAnimationFinished:!0}),r.props.onAnimationEnd&&r.props.onAnimationEnd()}),Ea(r,"handleAnimationStart",function(){r.setState({isAnimationFinished:!1}),r.props.onAnimationStart&&r.props.onAnimationStart()}),r}return SEe(t,e),xEe(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=oa(c,Qy);if(!f)return null;var h=function(g,m){return{x:g.x,y:g.y,value:g.value,errorVal:Un(g.payload,m)}},d={clipPath:n?"url(#clipPath-".concat(i,")"):null};return Q.createElement(Xt,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 y=gi(gi(gi({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,y)}),v={clipPath:n?"url(#clipPath-".concat(i?"":"dots-").concat(a,")"):null};return Q.createElement(Xt,Rg({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=B$(s,fEe),h=gi(gi(gi({},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(id,Rg({},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,y=this.state,_=y.prevPoints,b=y.totalLength;return Q.createElement(Ro,{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 A=_.length/s.length,M=s.map(function(D,N){var B=Math.floor(N*A);if(_[B]){var F=_[B],$=vn(F.x,D.x),U=vn(F.y,D.y);return gi(gi({},D),{},{x:$(T),y:U(T)})}if(v){var z=vn(g*2,D.x),V=vn(m/2,D.y);return gi(gi({},D),{},{x:z(T),y:V(T)})}return gi(gi({},D),{},{x:D.x,y:D.y})});return a.renderCurveStatically(M,n,i)}var P=vn(0,b),k=P(T),I;if(l){var O="".concat(l).split(/[,\s]+/gim).map(function(D){return parseFloat(D)});I=a.getStrokeDasharray(k,b,O)}else I=a.generateSimpleStrokeDasharray(b,k);return a.renderCurveStatically(s,n,i,{strokeDasharray:I})})}},{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||!Ld(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 y=this.state.isAnimationFinished,_=s.length===1,b=xt("recharts-line",l),S=u&&u.allowDataOverflow,T=c&&c.allowDataOverflow,A=S||T,M=dt(m)?this.id:m,P=(n=ct(o,!1))!==null&&n!==void 0?n:{r:3,strokeWidth:2},k=P.r,I=k===void 0?3:k,O=P.strokeWidth,D=O===void 0?2:O,N=YZ(o)?o:{},B=N.clipDot,F=B===void 0?!0:B,$=I*2+D;return Q.createElement(Xt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(M)},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})),!F&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(M)},Q.createElement("rect",{x:h-$/2,y:f-$/2,width:d+$,height:v+$}))):null,!_&&this.renderCurve(A,M),this.renderErrorBar(A,M),(_||o)&&this.renderDots(A,F,M),(!g||y)&&Ss.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(Wf(n),[0]):n,o=[],s=0;s=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function MEe(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 wc(){return wc=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||!Ld(c,o)||!Ld(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 y=this.state.isAnimationFinished,_=s.length===1,b=xt("recharts-area",l),S=f&&f.allowDataOverflow,T=h&&h.allowDataOverflow,A=S||T,M=dt(m)?this.id:m,P=(n=ct(o,!1))!==null&&n!==void 0?n:{r:3,strokeWidth:2},k=P.r,I=k===void 0?3:k,O=P.strokeWidth,D=O===void 0?2:O,N=YZ(o)?o:{},B=N.clipDot,F=B===void 0?!0:B,$=I*2+D;return Q.createElement(Xt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(M)},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})),!F&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(M)},Q.createElement("rect",{x:c-$/2,y:u-$/2,width:d+$,height:v+$}))):null,_?null:this.renderArea(A,M),(o||_)&&this.renderDots(A,F,M),(!g||y)&&Ss.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);Yq=pu;_o(pu,"displayName","Area");_o(pu,"defaultProps",{stroke:"#3182bd",fill:"#3182bd",fillOpacity:.6,xAxisId:0,yAxisId:0,legendType:"line",connectNulls:!1,points:[],dot:!1,activeDot:!0,hide:!1,isAnimationActive:!mf.isSsr,animationBegin:0,animationDuration:1500,animationEasing:"ease"});_o(pu,"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]});_o(pu,"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=Yq.getBaseValue(t,r,n,i),m=d==="horizontal",y=!1,_=f.map(function(S,T){var A;v?A=u[c+T]:(A=Un(S,l),Array.isArray(A)?y=!0:A=[g,A]);var M=A[1]==null||v&&Un(S,l)==null;return m?{x:_1({axis:n,ticks:a,bandSize:s,entry:S,index:T}),y:M?null:i.scale(A[1]),value:A,payload:S}:{x:M?null:n.scale(A[1]),y:_1({axis:i,ticks:o,bandSize:s,entry:S,index:T}),value:A,payload:S}}),b;return v||y?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),hl({points:_,baseLine:b,layout:d,isRange:y},h)});_o(pu,"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=xt("recharts-area-dot",typeof e!="boolean"?e.className:""),i=t.key,a=Xq(t,CEe);r=Q.createElement(JS,wc({},a,{key:i,className:n}))}return r});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 NEe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function jEe(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 wDe(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 SDe(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);r0?o:t&&t.length&&we(i)&&we(a)?t.slice(i,a+1):[]};function fK(e){return e==="number"?[0,"auto"]:void 0}var Ak=function(t,r,n,i){var a=t.graphicalItems,o=t.tooltipAxis,s=lT(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=Gb(d,o.dataKey,i)}else h=f&&f[n]||s[n];return h?[].concat(Wd(l),[rq(u,h)]):l},[])},Y$=function(t,r,n,i){var a=i||{x:t.chartX,y:t.chartY},o=jDe(a,n),s=t.orderedTooltipTicks,l=t.tooltipAxis,u=t.tooltipTicks,c=p2e(o,s,u,l);if(c>=0&&u){var f=u[c]&&u[c].value,h=Ak(t,r,c,f),d=RDe(n,s,c,a);return{activeTooltipIndex:c,activeLabel:f,activePayload:h,activeCoordinate:d}}return null},BDe=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=eq(c,a);return n.reduce(function(v,g){var m,y=g.type.defaultProps!==void 0?ue(ue({},g.type.defaultProps),g.props):g.props,_=y.type,b=y.dataKey,S=y.allowDataOverflow,T=y.allowDuplicatedCategory,A=y.scale,M=y.ticks,P=y.includeHidden,k=y[o];if(v[k])return v;var I=lT(t.data,{graphicalItems:i.filter(function(Z){var J,ae=o in Z.props?Z.props[o]:(J=Z.type.defaultProps)===null||J===void 0?void 0:J[o];return ae===k}),dataStartIndex:l,dataEndIndex:u}),O=I.length,D,N,B;cDe(y.domain,S,_)&&(D=VL(y.domain,null,S),d&&(_==="number"||A!=="auto")&&(B=Ng(I,b,"category")));var F=fK(_);if(!D||D.length===0){var $,U=($=y.domain)!==null&&$!==void 0?$:F;if(b){if(D=Ng(I,b,_),_==="category"&&d){var z=rve(D);T&&z?(N=D,D=I1(0,O)):T||(D=L4(U,D,g).reduce(function(Z,J){return Z.indexOf(J)>=0?Z:[].concat(Wd(Z),[J])},[]))}else if(_==="category")T?D=D.filter(function(Z){return Z!==""&&!dt(Z)}):D=L4(U,D,g).reduce(function(Z,J){return Z.indexOf(J)>=0||J===""||dt(J)?Z:[].concat(Wd(Z),[J])},[]);else if(_==="number"){var V=_2e(I,i.filter(function(Z){var J,ae,ce=o in Z.props?Z.props[o]:(J=Z.type.defaultProps)===null||J===void 0?void 0:J[o],ge="hide"in Z.props?Z.props.hide:(ae=Z.type.defaultProps)===null||ae===void 0?void 0:ae.hide;return ce===k&&(P||!ge)}),b,a,c);V&&(D=V)}d&&(_==="number"||A!=="auto")&&(B=Ng(I,b,"category"))}else d?D=I1(0,O):s&&s[k]&&s[k].hasStack&&_==="number"?D=h==="expand"?[0,1]:tq(s[k].stackGroups,l,u):D=JX(I,i.filter(function(Z){var J=o in Z.props?Z.props[o]:Z.type.defaultProps[o],ae="hide"in Z.props?Z.props.hide:Z.type.defaultProps.hide;return J===k&&(P||!ae)}),_,c,!0);if(_==="number")D=wk(f,D,k,a,M),U&&(D=VL(U,D,S));else if(_==="category"&&U){var W=U,Y=D.every(function(Z){return W.indexOf(Z)>=0});Y&&(D=W)}}return ue(ue({},v),{},Ke({},k,ue(ue({},y),{},{axisType:a,domain:D,categoricalDomain:B,duplicateDomain:N,originalDomain:(m=y.domain)!==null&&m!==void 0?m:F,isCategorical:d,layout:c})))},{})},zDe=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=lT(t.data,{graphicalItems:n,dataStartIndex:l,dataEndIndex:u}),d=h.length,v=eq(c,a),g=-1;return n.reduce(function(m,y){var _=y.type.defaultProps!==void 0?ue(ue({},y.type.defaultProps),y.props):y.props,b=_[o],S=fK("number");if(!m[b]){g++;var T;return v?T=I1(0,d):s&&s[b]&&s[b].hasStack?(T=tq(s[b].stackGroups,l,u),T=wk(f,T,b,a)):(T=VL(S,JX(h,n.filter(function(A){var M,P,k=o in A.props?A.props[o]:(M=A.type.defaultProps)===null||M===void 0?void 0:M[o],I="hide"in A.props?A.props.hide:(P=A.type.defaultProps)===null||P===void 0?void 0:P.hide;return k===b&&!I}),"number",c),i.defaultProps.allowDataOverflow),T=wk(f,T,b,a)),ue(ue({},m),{},Ke({},b,ue(ue({axisType:a},i.defaultProps),{},{hide:!0,orientation:aa(DDe,"".concat(a,".").concat(g%2),null),domain:T,originalDomain:S,isCategorical:v,layout:c})))}return m},{})},$De=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=oa(c,a),d={};return h&&h.length?d=BDe(t,{axes:h,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u}):o&&o.length&&(d=zDe(t,{Axis:a,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u})),d},FDe=function(t){var r=xh(t),n=bc(r,!1,!0);return{tooltipTicks:n,orderedTooltipTicks:yD(n,function(i){return i.coordinate}),tooltipAxis:r,tooltipAxisBandSize:b1(r,n)}},X$=function(t){var r=t.children,n=t.defaultShowTooltip,i=xi(r,Ed),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}},VDe=function(t){return!t||!t.length?!1:t.some(function(r){var n=bs(r&&r.type);return n&&n.indexOf("Bar")>=0})},q$=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"}},GDe=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=xi(f,Ed),v=xi(f,td),g=Object.keys(l).reduce(function(T,A){var M=l[A],P=M.orientation;return!M.mirror&&!M.hide?ue(ue({},T),{},Ke({},P,T[P]+M.width)):T},{left:h.left||0,right:h.right||0}),m=Object.keys(o).reduce(function(T,A){var M=o[A],P=M.orientation;return!M.mirror&&!M.hide?ue(ue({},T),{},Ke({},P,aa(T,"".concat(P))+M.height)):T},{top:h.top||0,bottom:h.bottom||0}),y=ue(ue({},m),g),_=y.bottom;d&&(y.bottom+=d.props.height||Ed.defaultProps.height),v&&r&&(y=y2e(y,i,n,r));var b=u-y.left-y.right,S=c-y.top-y.bottom;return ue(ue({brushBottom:_},y),{},{width:Math.max(b,0),height:Math.max(S,0)})},WDe=function(t,r){if(r==="xAxis")return t[r].width;if(r==="yAxis")return t[r].height},hK=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(y,_){var b=_.graphicalItems,S=_.stackGroups,T=_.offset,A=_.updateId,M=_.dataStartIndex,P=_.dataEndIndex,k=y.barSize,I=y.layout,O=y.barGap,D=y.barCategoryGap,N=y.maxBarSize,B=q$(I),F=B.numericAxisName,$=B.cateAxisName,U=VDe(b),z=[];return b.forEach(function(V,W){var Y=lT(y.data,{graphicalItems:[V],dataStartIndex:M,dataEndIndex:P}),Z=V.type.defaultProps!==void 0?ue(ue({},V.type.defaultProps),V.props):V.props,J=Z.dataKey,ae=Z.maxBarSize,ce=Z["".concat(F,"Id")],ge=Z["".concat($,"Id")],We={},xe=l.reduce(function(qr,Jn){var If=_["".concat(Jn.axisType,"Map")],S0=Z["".concat(Jn.axisType,"Id")];If&&If[S0]||Jn.axisType==="zAxis"||Jc();var T0=If[S0];return ue(ue({},qr),{},Ke(Ke({},Jn.axisType,T0),"".concat(Jn.axisType,"Ticks"),bc(T0)))},We),ne=xe[$],fe=xe["".concat($,"Ticks")],le=S&&S[ce]&&S[ce].hasStack&&O2e(V,S[ce].stackGroups),ee=bs(V.type).indexOf("Bar")>=0,Fe=b1(ne,fe),Se=[],Ve=U&&g2e({barSize:k,stackGroups:S,totalSize:WDe(xe,$)});if(ee){var Ye,vt,Vt=dt(ae)?N:ae,nr=(Ye=(vt=b1(ne,fe,!0))!==null&&vt!==void 0?vt:Vt)!==null&&Ye!==void 0?Ye:0;Se=m2e({barGap:O,barCategoryGap:D,bandSize:nr!==Fe?nr:Fe,sizeList:Ve[ge],maxBarSize:Vt}),nr!==Fe&&(Se=Se.map(function(qr){return ue(ue({},qr),{},{position:ue(ue({},qr.position),{},{offset:qr.position.offset-nr/2})})}))}var jn=V&&V.type&&V.type.getComposedData;jn&&z.push({props:ue(ue({},jn(ue(ue({},xe),{},{displayedData:Y,props:y,dataKey:J,item:V,bandSize:Fe,barPosition:Se,offset:T,stackedData:le,layout:I,dataStartIndex:M,dataEndIndex:P}))),{},Ke(Ke(Ke({key:V.key||"item-".concat(W)},F,xe[F]),$,xe[$]),"animationId",A)),childIndex:vve(V,y.children),item:V})}),z},d=function(y,_){var b=y.props,S=y.dataStartIndex,T=y.dataEndIndex,A=y.updateId;if(!S3({props:b}))return null;var M=b.children,P=b.layout,k=b.stackOffset,I=b.data,O=b.reverseStackOrder,D=q$(P),N=D.numericAxisName,B=D.cateAxisName,F=oa(M,n),$=L2e(I,F,"".concat(N,"Id"),"".concat(B,"Id"),k,O),U=l.reduce(function(Z,J){var ae="".concat(J.axisType,"Map");return ue(ue({},Z),{},Ke({},ae,$De(b,ue(ue({},J),{},{graphicalItems:F,stackGroups:J.axisType===N&&$,dataStartIndex:S,dataEndIndex:T}))))},{}),z=GDe(ue(ue({},U),{},{props:b,graphicalItems:F}),_==null?void 0:_.legendBBox);Object.keys(U).forEach(function(Z){U[Z]=c(b,U[Z],z,Z.replace("Map",""),r)});var V=U["".concat(B,"Map")],W=FDe(V),Y=h(b,ue(ue({},U),{},{dataStartIndex:S,dataEndIndex:T,updateId:A,graphicalItems:F,stackGroups:$,offset:z}));return ue(ue({formattedGraphicalItems:Y,graphicalItems:F,offset:z,stackGroups:$},W),U)},v=function(m){function y(_){var b,S,T;return SDe(this,y),T=CDe(this,y,[_]),Ke(T,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),Ke(T,"accessibilityManager",new uDe),Ke(T,"handleLegendBBoxUpdate",function(A){if(A){var M=T.state,P=M.dataStartIndex,k=M.dataEndIndex,I=M.updateId;T.setState(ue({legendBBox:A},d({props:T.props,dataStartIndex:P,dataEndIndex:k,updateId:I},ue(ue({},T.state),{},{legendBBox:A}))))}}),Ke(T,"handleReceiveSyncEvent",function(A,M,P){if(T.props.syncId===A){if(P===T.eventEmitterSymbol&&typeof T.props.syncMethod!="function")return;T.applySyncEvent(M)}}),Ke(T,"handleBrushChange",function(A){var M=A.startIndex,P=A.endIndex;if(M!==T.state.dataStartIndex||P!==T.state.dataEndIndex){var k=T.state.updateId;T.setState(function(){return ue({dataStartIndex:M,dataEndIndex:P},d({props:T.props,dataStartIndex:M,dataEndIndex:P,updateId:k},T.state))}),T.triggerSyncEvent({dataStartIndex:M,dataEndIndex:P})}}),Ke(T,"handleMouseEnter",function(A){var M=T.getMouseInfo(A);if(M){var P=ue(ue({},M),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var k=T.props.onMouseEnter;ft(k)&&k(P,A)}}),Ke(T,"triggeredAfterMouseMove",function(A){var M=T.getMouseInfo(A),P=M?ue(ue({},M),{},{isTooltipActive:!0}):{isTooltipActive:!1};T.setState(P),T.triggerSyncEvent(P);var k=T.props.onMouseMove;ft(k)&&k(P,A)}),Ke(T,"handleItemMouseEnter",function(A){T.setState(function(){return{isTooltipActive:!0,activeItem:A,activePayload:A.tooltipPayload,activeCoordinate:A.tooltipPosition||{x:A.cx,y:A.cy}}})}),Ke(T,"handleItemMouseLeave",function(){T.setState(function(){return{isTooltipActive:!1}})}),Ke(T,"handleMouseMove",function(A){A.persist(),T.throttleTriggeredAfterMouseMove(A)}),Ke(T,"handleMouseLeave",function(A){T.throttleTriggeredAfterMouseMove.cancel();var M={isTooltipActive:!1};T.setState(M),T.triggerSyncEvent(M);var P=T.props.onMouseLeave;ft(P)&&P(M,A)}),Ke(T,"handleOuterEvent",function(A){var M=dve(A),P=aa(T.props,"".concat(M));if(M&&ft(P)){var k,I;/.*touch.*/i.test(M)?I=T.getMouseInfo(A.changedTouches[0]):I=T.getMouseInfo(A),P((k=I)!==null&&k!==void 0?k:{},A)}}),Ke(T,"handleClick",function(A){var M=T.getMouseInfo(A);if(M){var P=ue(ue({},M),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var k=T.props.onClick;ft(k)&&k(P,A)}}),Ke(T,"handleMouseDown",function(A){var M=T.props.onMouseDown;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"handleMouseUp",function(A){var M=T.props.onMouseUp;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"handleTouchMove",function(A){A.changedTouches!=null&&A.changedTouches.length>0&&T.throttleTriggeredAfterMouseMove(A.changedTouches[0])}),Ke(T,"handleTouchStart",function(A){A.changedTouches!=null&&A.changedTouches.length>0&&T.handleMouseDown(A.changedTouches[0])}),Ke(T,"handleTouchEnd",function(A){A.changedTouches!=null&&A.changedTouches.length>0&&T.handleMouseUp(A.changedTouches[0])}),Ke(T,"handleDoubleClick",function(A){var M=T.props.onDoubleClick;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"handleContextMenu",function(A){var M=T.props.onContextMenu;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"triggerSyncEvent",function(A){T.props.syncId!==void 0&&PC.emit(LC,T.props.syncId,A,T.eventEmitterSymbol)}),Ke(T,"applySyncEvent",function(A){var M=T.props,P=M.layout,k=M.syncMethod,I=T.state.updateId,O=A.dataStartIndex,D=A.dataEndIndex;if(A.dataStartIndex!==void 0||A.dataEndIndex!==void 0)T.setState(ue({dataStartIndex:O,dataEndIndex:D},d({props:T.props,dataStartIndex:O,dataEndIndex:D,updateId:I},T.state)));else if(A.activeTooltipIndex!==void 0){var N=A.chartX,B=A.chartY,F=A.activeTooltipIndex,$=T.state,U=$.offset,z=$.tooltipTicks;if(!U)return;if(typeof k=="function")F=k(z,A);else if(k==="value"){F=-1;for(var V=0;V=0){var le,ee;if(N.dataKey&&!N.allowDuplicatedCategory){var Fe=typeof N.dataKey=="function"?fe:"payload.".concat(N.dataKey.toString());le=Gb(V,Fe,F),ee=W&&Y&&Gb(Y,Fe,F)}else le=V==null?void 0:V[B],ee=W&&Y&&Y[B];if(ge||ce){var Se=A.props.activeIndex!==void 0?A.props.activeIndex:B;return[H.cloneElement(A,ue(ue(ue({},k.props),xe),{},{activeIndex:Se})),null,null]}if(!dt(le))return[ne].concat(Wd(T.renderActivePoints({item:k,activePoint:le,basePoint:ee,childIndex:B,isRange:W})))}else{var Ve,Ye=(Ve=T.getItemByXY(T.state.activeCoordinate))!==null&&Ve!==void 0?Ve:{graphicalItem:ne},vt=Ye.graphicalItem,Vt=vt.item,nr=Vt===void 0?A:Vt,jn=vt.childIndex,qr=ue(ue(ue({},k.props),xe),{},{activeIndex:jn});return[H.cloneElement(nr,qr),null,null]}return W?[ne,null,null]:[ne,null]}),Ke(T,"renderCustomized",function(A,M,P){return H.cloneElement(A,ue(ue({key:"recharts-customized-".concat(P)},T.props),T.state))}),Ke(T,"renderMap",{CartesianGrid:{handler:xx,once:!0},ReferenceArea:{handler:T.renderReferenceElement},ReferenceLine:{handler:xx},ReferenceDot:{handler:T.renderReferenceElement},XAxis:{handler:xx},YAxis:{handler:xx},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:xv("recharts"),"-clip"),T.throttleTriggeredAfterMouseMove=qY(T.triggeredAfterMouseMove,(S=_.throttleDelay)!==null&&S!==void 0?S:1e3/60),T.state={},T}return LDe(y,m),ADe(y,[{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,A=b.height,M=b.layout,P=xi(S,os);if(P){var k=P.props.defaultIndex;if(!(typeof k!="number"||k<0||k>this.state.tooltipTicks.length-1)){var I=this.state.tooltipTicks[k]&&this.state.tooltipTicks[k].value,O=Ak(this.state,T,k,I),D=this.state.tooltipTicks[k].coordinate,N=(this.state.offset.top+A)/2,B=M==="horizontal",F=B?{x:D,y:N}:{y:D,x:N},$=this.state.formattedGraphicalItems.find(function(z){var V=z.item;return V.type.name==="Scatter"});$&&(F=ue(ue({},F),$.props.points[k].tooltipPosition),O=$.props.points[k].tooltipPayload);var U={activeTooltipIndex:k,isTooltipActive:!0,activeLabel:I,activePayload:O,activeCoordinate:F};this.setState(U),this.renderCursor(P),this.accessibilityManager.setIndex(k)}}}},{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,A;this.accessibilityManager.setDetails({offset:{left:(T=this.props.margin.left)!==null&&T!==void 0?T:0,top:(A=this.props.margin.top)!==null&&A!==void 0?A:0}})}return null}},{key:"componentDidUpdate",value:function(b){nL([xi(b.children,os)],[xi(this.props.children,os)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var b=xi(this.props.children,os);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(),A=Fwe(T),M={chartX:Math.round(b.pageX-A.left),chartY:Math.round(b.pageY-A.top)},P=T.width/S.offsetWidth||1,k=this.inRange(M.chartX,M.chartY,P);if(!k)return null;var I=this.state,O=I.xAxisMap,D=I.yAxisMap,N=this.getTooltipEventType(),B=Y$(this.state,this.props.data,this.props.layout,k);if(N!=="axis"&&O&&D){var F=xh(O).scale,$=xh(D).scale,U=F&&F.invert?F.invert(M.chartX):null,z=$&&$.invert?$.invert(M.chartY):null;return ue(ue({},M),{},{xValue:U,yValue:z},B)}return B?ue(ue({},M),B):null}},{key:"inRange",value:function(b,S){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,A=this.props.layout,M=b/T,P=S/T;if(A==="horizontal"||A==="vertical"){var k=this.state.offset,I=M>=k.left&&M<=k.left+k.width&&P>=k.top&&P<=k.top+k.height;return I?{x:M,y:P}:null}var O=this.state,D=O.angleAxisMap,N=O.radiusAxisMap;if(D&&N){var B=xh(D);return O4({x:M,y:P},B)}return null}},{key:"parseEventsOfWrapper",value:function(){var b=this.props.children,S=this.getTooltipEventType(),T=xi(b,os),A={};T&&S==="axis"&&(T.props.trigger==="click"?A={onClick:this.handleClick}:A={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 M=Wb(this.props,this.handleOuterEvent);return ue(ue({},M),A)}},{key:"addListener",value:function(){PC.on(LC,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){PC.removeListener(LC,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(b,S,T){for(var A=this.state.formattedGraphicalItems,M=0,P=A.length;Ms>=80?"#22c55e":s>=60?"#f59e0b":"#ef4444")(t),a=2*Math.PI*45,o=t/100*a;return x.jsx("div",{className:"flex flex-col items-center",children:x.jsxs("svg",{width:"140",height:"140",viewBox:"0 0 100 100",children:[x.jsx("circle",{cx:"50",cy:"50",r:"45",fill:"none",stroke:"#1e2a3a",strokeWidth:"8"}),x.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"}),x.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)}),x.jsx("text",{x:"50",y:"62",textAnchor:"middle",className:"fill-slate-400 text-xs",style:{fontSize:"10px"},children:r})]})})}function _x({label:e,value:t}){const r=n=>n>=80?"bg-green-500":n>=60?"bg-amber-500":"bg-red-500";return x.jsxs("div",{className:"flex items-center gap-3",children:[x.jsx("div",{className:"w-24 text-xs text-slate-400 truncate",children:e}),x.jsx("div",{className:"flex-1 h-2 bg-border rounded-full overflow-hidden",children:x.jsx("div",{className:`h-full ${r(t)} transition-all duration-300`,style:{width:`${t}%`}})}),x.jsx("div",{className:"w-12 text-right text-xs font-mono text-slate-300",children:t.toFixed(1)})]})}function YDe({alert:e}){const r=(i=>{switch(i.toLowerCase()){case"critical":case"emergency":return{bg:"bg-red-500/10",border:"border-red-500",icon:Uy,iconColor:"text-red-500"};case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Ds,iconColor:"text-amber-500"};default:return{bg:"bg-green-500/10",border:"border-green-500",icon:wm,iconColor:"text-green-500"}}})(e.severity),n=r.icon;return x.jsxs("div",{className:`p-3 rounded-lg ${r.bg} border-l-2 ${r.border} flex items-start gap-3`,children:[x.jsx(n,{size:16,className:r.iconColor}),x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsx("div",{className:"text-sm text-slate-200",children:e.message}),x.jsx("div",{className:"text-xs text-slate-500 mt-1",children:e.timestamp||"Just now"})]})]})}function XDe({source:e}){const t=()=>e.is_loaded?e.last_error?"bg-amber-500":"bg-green-500":"bg-red-500";return x.jsxs("div",{className:"flex items-center gap-3 p-3 rounded-lg bg-bg-hover",children:[x.jsx("div",{className:`w-2 h-2 rounded-full ${t()}`}),x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsx("div",{className:"text-sm text-slate-200 truncate",children:e.name}),x.jsxs("div",{className:"text-xs text-slate-500",children:[e.node_count," nodes · ",e.type]})]})]})}function bx({icon:e,label:t,value:r,subvalue:n}){return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4",children:[x.jsxs("div",{className:"flex items-center gap-2 text-slate-400 mb-2",children:[x.jsx(e,{size:14}),x.jsx("span",{className:"text-xs",children:t})]}),x.jsx("div",{className:"font-mono text-xl text-slate-100",children:r}),n&&x.jsx("div",{className:"text-xs text-slate-500 mt-1",children:n})]})}function IC({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 x.jsxs("span",{className:`px-2 py-1 rounded text-xs font-mono font-medium border ${r()}`,children:[e,t]})}function K$({label:e,value:t,unit:r,getColor:n}){const i=t!==void 0?n(t):"text-slate-400";return x.jsxs("div",{className:"text-center",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:e}),x.jsx("div",{className:`font-mono text-3xl font-bold ${i}`,children:(t==null?void 0:t.toFixed(0))??"—"}),r&&x.jsx("div",{className:"text-xs text-slate-500",children:r})]})}function qDe({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 x.jsxs("div",{className:"h-20 w-full",children:[x.jsx(KY,{width:"100%",height:"100%",children:x.jsxs(UDe,{data:t,margin:{top:5,right:5,bottom:5,left:5},children:[x.jsxs("defs",{children:[x.jsxs("linearGradient",{id:"kpGradientGreen",x1:"0",y1:"0",x2:"0",y2:"1",children:[x.jsx("stop",{offset:"0%",stopColor:"#22c55e",stopOpacity:.4}),x.jsx("stop",{offset:"100%",stopColor:"#22c55e",stopOpacity:.05})]}),x.jsxs("linearGradient",{id:"kpGradientAmber",x1:"0",y1:"0",x2:"0",y2:"1",children:[x.jsx("stop",{offset:"0%",stopColor:"#f59e0b",stopOpacity:.4}),x.jsx("stop",{offset:"100%",stopColor:"#f59e0b",stopOpacity:.05})]}),x.jsxs("linearGradient",{id:"kpGradientRed",x1:"0",y1:"0",x2:"0",y2:"1",children:[x.jsx("stop",{offset:"0%",stopColor:"#ef4444",stopOpacity:.4}),x.jsx("stop",{offset:"100%",stopColor:"#ef4444",stopOpacity:.05})]})]}),x.jsx(Pv,{domain:[0,Math.ceil(r)],hide:!0}),x.jsx(Mv,{dataKey:"idx",hide:!0}),x.jsx(ry,{y:3,stroke:"#f59e0b",strokeDasharray:"3 3",strokeOpacity:.5}),x.jsx(ry,{y:5,stroke:"#ef4444",strokeDasharray:"3 3",strokeOpacity:.5}),x.jsx(pu,{type:"monotone",dataKey:"value",stroke:n>5?"#ef4444":n>3?"#f59e0b":"#22c55e",fill:`url(#${i()})`,strokeWidth:2})]})}),x.jsxs("div",{className:"flex justify-between text-xs text-slate-600 px-1",children:[x.jsx("span",{children:"48h ago"}),x.jsx("span",{children:"now"})]})]})}function KDe({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:x.jsxs("div",{className:"h-24 w-full",children:[x.jsx(KY,{width:"100%",height:"100%",children:x.jsxs(HDe,{data:t,margin:{top:5,right:10,bottom:5,left:5},children:[x.jsx(Mv,{dataKey:"M",type:"number",domain:["dataMin - 20","dataMax + 20"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"}}),x.jsx(Pv,{dataKey:"height",type:"number",domain:[0,"dataMax"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"},tickFormatter:r=>`${(r/1e3).toFixed(1)}k`}),x.jsx(e0,{type:"monotone",dataKey:"M",stroke:"#3b82f6",strokeWidth:2,dot:{r:3,fill:"#3b82f6"}})]})}),x.jsx("div",{className:"text-center text-xs text-slate-600",children:"M-units vs Height (km)"})]})}function QDe({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 x.jsx("span",{className:`px-2 py-1 rounded text-xs font-medium border ${o[a]||o.normal}`,children:s[a]||a})};return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4 flex flex-col h-full",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(Sm,{size:14}),"RF Propagation"]}),x.jsxs("div",{className:"flex justify-around mb-4",children:[x.jsx(K$,{label:"SFI",value:e==null?void 0:e.sfi,getColor:r}),x.jsx("div",{className:"w-px bg-border"}),x.jsx(K$,{label:"Kp",value:e==null?void 0:e.kp_current,getColor:n})]}),x.jsxs("div",{className:"flex justify-center gap-2 mb-4",children:[x.jsx(IC,{label:"R",value:(e==null?void 0:e.r_scale)??0}),x.jsx(IC,{label:"S",value:(e==null?void 0:e.s_scale)??0}),x.jsx(IC,{label:"G",value:(e==null?void 0:e.g_scale)??0})]}),(e==null?void 0:e.kp_history)&&e.kp_history.length>0&&x.jsxs("div",{className:"mb-4",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Kp Trend (48h)"}),x.jsx(qDe,{history:e.kp_history})]}),x.jsx("div",{className:"border-t border-border my-3"}),x.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[x.jsx(Yc,{size:14,className:"text-slate-400"}),x.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&&x.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&&x.jsx(KDe,{profile:t.profile}),(e==null?void 0:e.active_warnings)&&e.active_warnings.length>0&&x.jsxs("div",{className:"mt-auto pt-3 border-t border-border",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"SWPC Alerts"}),x.jsx("div",{className:"flex flex-wrap gap-1",children:e.active_warnings.slice(0,3).map((a,o)=>x.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 JDe={nws:{icon:Yc,color:"text-blue-400",label:"NWS"},swpc:{icon:Vb,color:"text-yellow-400",label:"SWPC"},ducting:{icon:tu,color:"text-cyan-400",label:"Tropo"},nifc:{icon:VE,color:"text-orange-400",label:"NIFC"},firms:{icon:WE,color:"text-red-400",label:"FIRMS"},avalanche:{icon:GE,color:"text-slate-300",label:"Avy"},usgs:{icon:zE,color:"text-blue-300",label:"USGS"},traffic:{icon:BE,color:"text-purple-400",label:"Traffic"},roads:{icon:gZ,color:"text-amber-400",label:"511"}},Q$={info:"bg-blue-500/20 text-blue-400 border-blue-500/30",advisory:"bg-amber-500/20 text-amber-400 border-amber-500/30",moderate:"bg-amber-500/20 text-amber-400 border-amber-500/30",watch:"bg-orange-500/20 text-orange-400 border-orange-500/30",warning:"bg-red-500/20 text-red-400 border-red-500/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 eNe({event:e}){var a;const t=JDe[e.source]||{icon:wm,color:"text-slate-400",label:e.source},r=t.icon,n=Q$[(a=e.severity)==null?void 0:a.toLowerCase()]||Q$.info,i=o=>{const s=new Date(o*1e3),u=new Date().getTime()-s.getTime(),c=Math.floor(u/6e4);return c<1?"just now":c<60?`${c}m ago`:c<1440?`${Math.floor(c/60)}h ago`:s.toLocaleDateString(void 0,{month:"short",day:"numeric"})};return x.jsxs("div",{className:"flex items-start gap-2 py-2 border-b border-border/50 last:border-0",children:[x.jsx(r,{size:14,className:`mt-0.5 flex-shrink-0 ${t.color}`}),x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsxs("div",{className:"flex items-center gap-2 mb-0.5",children:[x.jsx("span",{className:`px-1.5 py-0.5 rounded text-xs border ${n}`,children:e.severity||"info"}),x.jsx("span",{className:"text-xs text-slate-500",children:t.label}),x.jsx("span",{className:"text-xs text-slate-600 ml-auto",children:i(e.fetched_at)})]}),x.jsx("div",{className:"text-sm text-slate-200 truncate",children:e.headline})]})]})}function tNe({events:e,envStatus:t}){const r=H.useMemo(()=>[...e].sort((i,a)=>(a.fetched_at||0)-(i.fetched_at||0)),[e]),n=H.useMemo(()=>{if(!(t!=null&&t.feeds))return null;const i=t.feeds.length,a=t.feeds.filter(u=>u.is_loaded&&!u.last_error).length,o=t.feeds.filter(u=>u.last_error).map(u=>u.source),s=Math.max(...t.feeds.map(u=>u.last_fetch||0)),l=s?Math.floor(Date.now()/1e3-s):null;return{total:i,active:a,errors:o,secAgo:l}},[t]);return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-4 flex flex-col h-full",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-3 flex items-center gap-2",children:[x.jsx(Wy,{size:14}),"Live Event Feed"]}),r.length>0?x.jsx("div",{className:"flex-1 overflow-y-auto max-h-80 pr-1 -mr-1",children:r.map((i,a)=>x.jsx(eNe,{event:i},i.event_id||a))}):x.jsx("div",{className:"flex-1 flex items-center justify-center",children:x.jsxs("div",{className:"text-center py-8",children:[x.jsx(Jh,{size:24,className:"text-green-500 mx-auto mb-2"}),x.jsx("div",{className:"text-slate-400",children:"No active events"}),x.jsx("div",{className:"text-xs text-slate-500",children:"All clear"})]})}),n&&x.jsxs("div",{className:`text-xs mt-3 pt-3 border-t border-border ${n.errors.length>0?"text-amber-400":"text-slate-500"}`,children:[n.active," of ",n.total," feeds active",n.secAgo!==null&&` · Last update ${n.secAgo}s ago`,n.errors.length>0&&x.jsxs("span",{className:"text-amber-400",children:[" · ",n.errors.join(", "),": error"]})]})]})}function rNe(){var S,T,A,M,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,y]=H.useState(null),{lastHealth:_,lastMessage:b}=ZE();return H.useEffect(()=>{Promise.all([ace(),lce(),PZ(),LZ(),kZ().catch(()=>[]),IZ().catch(()=>null),OZ().catch(()=>null)]).then(([k,I,O,D,N,B,F])=>{t(k),n(I),a(O),s(D),u(N),f(B),d(F),g(!1),document.title="Dashboard — MeshAI"}).catch(k=>{y(k.message),g(!1),document.title="Dashboard — MeshAI"})},[]),H.useEffect(()=>{_&&t(_)},[_]),H.useEffect(()=>{(b==null?void 0:b.type)==="env_update"&&b.event&&u(k=>{const I=b.event,O=k.filter(D=>D.event_id!==I.event_id);return[I,...O].slice(0,100)})},[b]),v?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-slate-400",children:"Loading..."})}):m?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsxs("div",{className:"text-red-400",children:["Error: ",m]})}):x.jsxs("div",{className:"space-y-6",children:[x.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsx("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:"Mesh Health"}),e&&x.jsxs(x.Fragment,{children:[x.jsx(ZDe,{health:e}),x.jsxs("div",{className:"mt-6 space-y-3",children:[x.jsx(_x,{label:"Infrastructure",value:((S=e.pillars)==null?void 0:S.infrastructure)??0}),x.jsx(_x,{label:"Utilization",value:((T=e.pillars)==null?void 0:T.utilization)??0}),x.jsx(_x,{label:"Behavior",value:((A=e.pillars)==null?void 0:A.behavior)??0}),x.jsx(_x,{label:"Power",value:((M=e.pillars)==null?void 0:M.power)??0})]})]})]}),x.jsxs("div",{className:"lg:col-span-2 space-y-6",children:[x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsx("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:"Active Alerts"}),i.length>0?x.jsx("div",{className:"space-y-3 max-h-48 overflow-y-auto",children:i.map((k,I)=>x.jsx(YDe,{alert:k},I))}):x.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[x.jsx(Jh,{size:16,className:"text-green-500"}),x.jsx("span",{children:"No active alerts"})]})]}),x.jsxs("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4",children:[x.jsx(bx,{icon:tu,label:"Nodes Online",value:(e==null?void 0:e.total_nodes)||0,subvalue:`${(e==null?void 0:e.unlocated_count)||0} unlocated`}),x.jsx(bx,{icon:mZ,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"}),x.jsx(bx,{icon:Wy,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`}),x.jsx(bx,{icon:bZ,label:"Regions",value:(e==null?void 0:e.total_regions)||0,subvalue:`${(e==null?void 0:e.battery_warnings)||0} battery warnings`})]})]})]}),x.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-6",children:[x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4",children:["Mesh Sources (",r.length,")"]}),r.length>0?x.jsx("div",{className:"space-y-2",children:r.map((k,I)=>x.jsx(XDe,{source:k},I))}):x.jsx("div",{className:"text-slate-500 py-4",children:"No sources configured"})]}),x.jsx(QDe,{swpc:c,ducting:h}),x.jsx(tNe,{events:l,envStatus:o})]})]})}/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -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 Ck=function(e,t){return Ck=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])},Ck(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");Ck(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var Bg=function(){return Bg=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):oNe(navigator.userAgent,nt);function oNe(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 XD=12,dK="sans-serif",Bs=XD+"px "+dK,sNe=20,lNe=100,uNe="007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";function cNe(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 DNe(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?rF(s,o):rF(o,s))}function SK(e){return e.nodeName.toUpperCase()==="CANVAS"}var NNe=/([&<>"'])/g,jNe={"&":"&","<":"<",">":">",'"':""","'":"'"};function On(e){return e==null?"":(e+"").replace(NNe,function(t,r){return jNe[r]})}var RNe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,EC=[],BNe=nt.browser.firefox&&+nt.browser.version.split(".")[0]<39;function Ik(e,t,r,n){return r=r||{},n?nF(e,t,r):BNe&&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):nF(e,t,r),r}function nF(e,t,r){if(nt.domSupported&&e.getBoundingClientRect){var n=t.clientX,i=t.clientY;if(SK(e)){var a=e.getBoundingClientRect();r.zrX=n-a.left,r.zrY=i-a.top;return}else if(kk(EC,e,n,i)){r.zrX=EC[0],r.zrY=EC[1];return}}r.zrX=r.zrY=0}function rN(e){return e||window.event}function Zi(e,t,r){if(t=rN(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&&Ik(e,o,t,r)}else{Ik(e,t,t,r);var a=zNe(t);t.zrDelta=a?a/120:-(t.detail||0)/3}var s=t.button;return t.which==null&&s!==void 0&&RNe.test(t.type)&&(t.which=s&1?1:s&2?3:s&4?2:0),t}function zNe(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 Ok(e,t,r,n){e.addEventListener(t,r,n)}function $Ne(e,t,r,n){e.removeEventListener(t,r,n)}var zs=function(e){e.preventDefault(),e.stopPropagation(),e.cancelBubble=!0};function iF(e){return e.which===2||e.which===3}var FNe=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=aF(n)/aF(i);!isFinite(a)&&(a=1),t.pinchScale=a;var o=VNe(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 i0(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e}function a0(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 Fa(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 Ua(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 qs(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 vT(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 da(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 TK(e){var t=Wr();return a0(t,e),t}const GNe=Object.freeze(Object.defineProperty({__proto__:null,clone:TK,copy:a0,create:Wr,identity:i0,invert:da,mul:Fa,rotate:qs,scale:vT,translate:Ua},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}(),Sc=Math.min,zh=Math.max,Ek=Math.abs,oF=["x","y"],WNe=["width","height"],Pu=new Ie,Lu=new Ie,ku=new Ie,Iu=new Ie,bi=AK(),fg=bi.minTv,Dk=bi.maxTv,Vg=[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=Sc(t.x,this.x),n=Sc(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=zh(t.x+t.width,this.x+this.width)-r:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=zh(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 Ua(a,a,[-r.x,-r.y]),vT(a,a,[n,i]),Ua(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(HNe,t.x,t.y,t.width,t.height)),r instanceof e||(r=e.set(UNe,r.x,r.y,r.width,r.height));var s=!!n;bi.reset(i,s);var l=bi.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 y=!(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}Pu.x=ku.x=r.x,Pu.y=Iu.y=r.y,Lu.x=Iu.x=r.x+r.width,Lu.y=ku.y=r.y+r.height,Pu.transform(n),Iu.transform(n),Lu.transform(n),ku.transform(n),t.x=Sc(Pu.x,Lu.x,ku.x,Iu.x),t.y=Sc(Pu.y,Lu.y,ku.y,Iu.y);var l=zh(Pu.x,Lu.x,ku.x,Iu.x),u=zh(Pu.y,Lu.y,ku.y,Iu.y);t.width=l-t.x,t.height=u-t.y},e}(),HNe=new Oe(0,0,0,0),UNe=new Oe(0,0,0,0);function sF(e,t,r,n,i,a,o,s){var l=Ek(t-r),u=Ek(n-e),c=Sc(l,u),f=oF[i],h=oF[1-i],d=WNe[i];t=u||!bi.bidirectional)&&(fg[f]=-u,fg[h]=0,bi.useDir&&bi.calcDirMTV())))}function AK(){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=zh(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)&&(NC.copy(h.getBoundingRect()),h.transform&&NC.applyTransform(h.transform),NC.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 KNe(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?CK:!0}return!1}function lF(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=KNe(o,r,n))&&(!t.topTarget&&(t.topTarget=o),s!==CK)){t.target=o;break}}}function PK(e,t,r){var n=e.painter;return t<0||t>n.getWidth()||r<0||r>n.getHeight()}var LK=32,Pp=7;function QNe(e){for(var t=0;e>=LK;)t|=e&1,e>>=1;return e+t}function uF(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 JNe(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 jC(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 RC(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 eje(e,t){var r=Pp,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]=Pp||M>=Pp);if(P)break;T<0&&(T=0),T+=2}if(r=T,r<1&&(r=1),v===1){for(y=0;y=0;y--)e[A+y]=e[T+y];e[S]=o[b];return}for(var M=r;;){var P=0,k=0,I=!1;do if(t(o[b],e[_])<0){if(e[S--]=e[_--],P++,k=0,--v===0){I=!0;break}}else if(e[S--]=o[b--],k++,P=0,--m===1){I=!0;break}while((P|k)=0;y--)e[A+y]=e[T+y];if(v===0){I=!0;break}}if(e[S--]=o[b--],--m===1){I=!0;break}if(k=m-jC(e[_],o,0,m,m-1,t),k!==0){for(S-=k,b-=k,m-=k,A=S+1,T=b+1,y=0;y=Pp||k>=Pp);if(I)break;M<0&&(M=0),M+=2}if(r=M,r<1&&(r=1),m===1){for(S-=v,_-=v,A=S+1,T=_+1,y=v-1;y>=0;y--)e[A+y]=e[T+y];e[S]=o[b]}else{if(m===0)throw new Error;for(T=S-(m-1),y=0;ys&&(l=s),cF(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 Si=1,hg=2,_h=4,fF=!1;function BC(){fF||(fF=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function hF(e,t){return e.zlevel===t.zlevel?e.z===t.z?e.z2-t.z2:e.z-t.z:e.zlevel-t.zlevel}var tje=function(){function e(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=hF}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}(),q1;q1=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 Gg={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-Gg.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?Gg.bounceIn(e*2)*.5:Gg.bounceOut(e*2-1)*.5+.5}},Tx=Math.pow,Hl=Math.sqrt,K1=1e-8,kK=1e-4,dF=Hl(3),Ax=1/3,go=mu(),Ji=mu(),od=mu();function Pl(e){return e>-K1&&eK1||e<-K1}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 vF(e,t,r,n,i){var a=1-i;return 3*(((t-e)*a+2*(r-t)*i)*a+(n-r)*i*i)}function Q1(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(Pl(c)&&Pl(f))if(Pl(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(Pl(g)){var m=f/c,v=-s/o+m,y=-m/2;v>=0&&v<=1&&(a[d++]=v),y>=0&&y<=1&&(a[d++]=y)}else if(g>0){var _=Hl(g),b=c*s+1.5*o*(-f+_),S=c*s+1.5*o*(-f-_);b<0?b=-Tx(-b,Ax):b=Tx(b,Ax),S<0?S=-Tx(-S,Ax):S=Tx(S,Ax);var v=(-s-(b+S))/(3*o);v>=0&&v<=1&&(a[d++]=v)}else{var T=(2*c*s-3*o*f)/(2*Hl(c*c*c)),A=Math.acos(T)/3,M=Hl(c),P=Math.cos(A),v=(-s-2*M*P)/(3*o),y=(-s+M*(P+dF*Math.sin(A)))/(3*o),k=(-s+M*(P-dF*Math.sin(A)))/(3*o);v>=0&&v<=1&&(a[d++]=v),y>=0&&y<=1&&(a[d++]=y),k>=0&&k<=1&&(a[d++]=k)}}return d}function OK(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(Pl(o)){if(IK(a)){var u=-s/a;u>=0&&u<=1&&(i[l++]=u)}}else{var c=a*a-4*o*s;if(Pl(c))i[0]=-a/(2*o);else if(c>0){var f=Hl(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 ru(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 EK(e,t,r,n,i,a,o,s,l,u,c){var f,h=.005,d=1/0,v,g,m,y;go[0]=l,go[1]=u;for(var _=0;_<1;_+=.05)Ji[0]=$r(e,r,i,o,_),Ji[1]=$r(t,n,a,s,_),m=Wl(go,Ji),m=0&&m=0&&u<=1&&(i[l++]=u)}}else{var c=o*o-4*a*s;if(Pl(c)){var u=-o/(2*a);u>=0&&u<=1&&(i[l++]=u)}else if(c>0){var f=Hl(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 DK(e,t,r){var n=e+r-2*t;return n===0?.5:(e-t)/n}function ly(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 NK(e,t,r,n,i,a,o,s,l){var u,c=.005,f=1/0;go[0]=o,go[1]=s;for(var h=0;h<1;h+=.05){Ji[0]=rn(e,r,i,h),Ji[1]=rn(t,n,a,h);var d=Wl(go,Ji);d=0&&d=1?1:Q1(0,n,a,1,l,s)&&$r(0,i,o,1,s[0])}}}var oje=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||lr,this.ondestroy=t.ondestroy||lr,this.onrestart=t.onrestart||lr,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:Gg[t]||nN(t)},e}(),jK=function(){function e(t){this.value=t}return e}(),sje=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}(),Ud=function(){function e(t){this._list=new sje,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}(),pF={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 Va(e){return e=Math.round(e),e<0?0:e>255?255:e}function lje(e){return e=Math.round(e),e<0?0:e>360?360:e}function uy(e){return e<0?0:e>1?1:e}function q_(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?Va(parseFloat(t)/100*255):Va(parseInt(t,10))}function Ts(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?uy(parseFloat(t)/100):uy(parseFloat(t))}function zC(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 Ll(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 jk(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}var RK=new Ud(20),Cx=null;function Uf(e,t){Cx&&jk(Cx,t),Cx=RK.put(e,Cx||t.slice())}function En(e,t){if(e){t=t||[];var r=RK.get(e);if(r)return jk(t,r);e=e+"";var n=e.replace(/ /g,"").toLowerCase();if(n in pF)return jk(t,pF[n]),Uf(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),Uf(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),Uf(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=Ts(u.pop());case"rgb":if(u.length>=3)return Ui(t,q_(u[0]),q_(u[1]),q_(u[2]),u.length===3?c:Ts(u[3])),Uf(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]=Ts(u[3]),Rk(u,t),Uf(e,t),t;case"hsl":if(u.length!==3){Ui(t,0,0,0,1);return}return Rk(u,t),Uf(e,t),t;default:return}}Ui(t,0,0,0,1)}}function Rk(e,t){var r=(parseFloat(e[0])%360+360)%360/360,n=Ts(e[1]),i=Ts(e[2]),a=i<=.5?i*(n+1):i+n-i*n,o=i*2-a;return t=t||[],Ui(t,Va(zC(o,a,r+1/3)*255),Va(zC(o,a,r)*255),Va(zC(o,a,r-1/3)*255),1),e.length===4&&(t[3]=e[3]),t}function uje(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 J1(e,t){var r=En(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 sa(r,r.length===4?"rgba":"rgb")}}function cje(e){var t=En(e);if(t)return((1<<24)+(t[0]<<16)+(t[1]<<8)+ +t[2]).toString(16).slice(1)}function Wg(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]=Va(Ll(o[0],s[0],l)),r[1]=Va(Ll(o[1],s[1],l)),r[2]=Va(Ll(o[2],s[2],l)),r[3]=uy(Ll(o[3],s[3],l)),r}}var fje=Wg;function iN(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=En(t[i]),s=En(t[a]),l=n-i,u=sa([Va(Ll(o[0],s[0],l)),Va(Ll(o[1],s[1],l)),Va(Ll(o[2],s[2],l)),uy(Ll(o[3],s[3],l))],"rgba");return r?{color:u,leftIndex:i,rightIndex:a,value:n}:u}}var hje=iN;function As(e,t,r,n){var i=En(e);if(e)return i=uje(i),t!=null&&(i[0]=lje(Ae(t)?t(i[0]):t)),r!=null&&(i[1]=Ts(Ae(r)?r(i[1]):r)),n!=null&&(i[2]=Ts(Ae(n)?n(i[2]):n)),sa(Rk(i),"rgba")}function cy(e,t){var r=En(e);if(r&&t!=null)return r[3]=uy(t),sa(r,"rgba")}function sa(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 fy(e,t){var r=En(e);return r?(.299*r[0]+.587*r[1]+.114*r[2])*r[3]/255+(1-r[3])*t:0}function dje(){return sa([Math.round(Math.random()*255),Math.round(Math.random()*255),Math.round(Math.random()*255)],"rgb")}var gF=new Ud(100);function ew(e){if(ve(e)){var t=gF.get(e);return t||(t=J1(e,-.1),gF.put(e,t)),t}else if(t0(e)){var r=re({},e);return r.colorStops=se(e.colorStops,function(n){return{offset:n.offset,color:J1(n.color,-.1)}}),r}return e}const vje=Object.freeze(Object.defineProperty({__proto__:null,fastLerp:Wg,fastMapToColor:fje,lerp:iN,lift:J1,liftColor:ew,lum:fy,mapToColor:hje,modifyAlpha:cy,modifyHSL:As,parse:En,parseCssFloat:Ts,parseCssInt:q_,random:dje,stringify:sa,toHex:cje},Symbol.toStringTag,{value:"Module"}));var tw=Math.round;function hy(e){var t;if(!e||e==="transparent")e="none";else if(typeof e=="string"&&e.indexOf("rgba")>-1){var r=En(e);r&&(e="rgb("+r[0]+","+r[1]+","+r[2]+")",t=r[3])}return{color:e,opacity:t??1}}var mF=1e-4;function kl(e){return e-mF}function Mx(e){return tw(e*1e3)/1e3}function Bk(e){return tw(e*1e4)/1e4}function pje(e){return"matrix("+Mx(e[0])+","+Mx(e[1])+","+Mx(e[2])+","+Mx(e[3])+","+Bk(e[4])+","+Bk(e[5])+")"}var gje={left:"start",right:"end",center:"middle",middle:"middle"};function mje(e,t,r){return r==="top"?e+=t/2:r==="bottom"&&(e-=t/2),e}function yje(e){return e&&(e.shadowBlur||e.shadowOffsetX||e.shadowOffsetY)}function xje(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 BK(e){return e&&!!e.image}function _je(e){return e&&!!e.svgElement}function aN(e){return BK(e)||_je(e)}function zK(e){return e.type==="linear"}function $K(e){return e.type==="radial"}function FK(e){return e&&(e.type==="linear"||e.type==="radial")}function pT(e){return"url(#"+e+")"}function VK(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 GK(e){var t=e.x||0,r=e.y||0,n=(e.rotation||0)*zg,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("+tw(o*zg)+"deg, "+tw(s*zg)+"deg)"),l.join(" ")}var bje=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}}(),zk=Array.prototype.slice;function ss(e,t,r){return(t-e)*r+e}function $C(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=xF,l=r;if(xn(r)){var u=Aje(r);s=u,(u===1&&!ot(r[0])||u===2&&!ot(r[0][0]))&&(o=!0)}else if(ot(r)&&!mn(r))s=Lx;else if(ve(r))if(!isNaN(+r))s=Lx;else{var c=En(r);c&&(l=c,s=dg)}else if(t0(r)){var f=re({},l);f.colorStops=se(r.colorStops,function(d){return{offset:d.offset,color:En(d.color)}}),zK(r)?s=$k:$K(r)&&(s=Fk),l=f}a===0?this.valType=s:(s!==this.valType||s===xF)&&(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:Gg[n]||nN(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=kx(i),u=_F(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,y=m===0?1:h((r-d.percent)/m,1);v.easingFunc&&(y=v.easingFunc(y));var _=n?this._additiveValue:u?Lp:t[l];if((kx(a)||u)&&!_&&(_=this._additiveValue=[]),this.discrete)t[l]=y<1?d.rawValue:v.rawValue;else if(kx(a))a===Q_?$C(_,d[i],v[i],y):wje(_,d[i],v[i],y);else if(_F(a)){var b=d[i],S=v[i],T=a===$k;t[l]={type:T?"linear":"radial",x:ss(b.x,S.x,y),y:ss(b.y,S.y,y),colorStops:se(b.colorStops,function(M,P){var k=S.colorStops[P];return{offset:ss(M.offset,k.offset,y),color:K_($C([],M.color,k.color,y))}}),global:S.global},T?(t[l].x2=ss(b.x2,S.x2,y),t[l].y2=ss(b.y2,S.y2,y)):t[l].r=ss(b.r,S.r,y)}else if(u)$C(_,d[i],v[i],y),n||(t[l]=K_(_));else{var A=ss(d[i],v[i],y);n?this._additiveValue=A:t[l]=A}n&&this._addToTarget(t)}}},e.prototype._addToTarget=function(t){var r=this.valType,n=this.propName,i=this._additiveValue;r===Lx?t[n]=t[n]+i:r===dg?(En(t[n],Lp),Px(Lp,Lp,i,1),t[n]=K_(Lp)):r===Q_?Px(t[n],t[n],i,1):r===WK&&yF(t[n],t[n],i,1)},e}(),oN=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){cT("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,Hg(u),i),this._trackKeys.push(s)}l.addKeyframe(t,Hg(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 $h(){return new Date().getTime()}var Mje=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=$h()-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&&(q1(n),!r._paused&&r.update())}q1(n)},t.prototype.start=function(){this._running||(this._time=$h(),this._pausedTime=0,this._startLoop())},t.prototype.stop=function(){this._running=!1},t.prototype.pause=function(){this._paused||(this._pauseStart=$h(),this._paused=!0)},t.prototype.resume=function(){this._paused&&(this._pausedTime+=$h()-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 oN(r,n.loop);return this.addAnimator(i),i},t}(ya),Pje=300,FC=nt.domSupported,VC=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"]},wF=!1;function Vk(e){var t=e.pointerType;return t==="pen"||t==="touch"}function Lje(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 GC(e){e&&(e.zrByTouch=!0)}function kje(e,t){return Zi(e.dom,new Ije(e,t),!0)}function HK(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 Ije=function(){function e(t,r){this.stopPropagation=lr,this.stopImmediatePropagation=lr,this.preventDefault=lr,this.type=r.type,this.target=this.currentTarget=t.dom,this.pointerType=r.pointerType,this.clientX=r.clientX,this.clientY=r.clientY}return e}(),Ma={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;HK(this,t)||(this.__pointerCapturing&&(e.zrEventControl="no_globalout"),this.trigger("mouseout",e))},wheel:function(e){wF=!0,e=Zi(this.dom,e),this.trigger("mousewheel",e)},mousewheel:function(e){wF||(e=Zi(this.dom,e),this.trigger("mousewheel",e))},touchstart:function(e){e=Zi(this.dom,e),GC(e),this.__lastTouchMoment=new Date,this.handler.processGesture(e,"start"),Ma.mousemove.call(this,e),Ma.mousedown.call(this,e)},touchmove:function(e){e=Zi(this.dom,e),GC(e),this.handler.processGesture(e,"change"),Ma.mousemove.call(this,e)},touchend:function(e){e=Zi(this.dom,e),GC(e),this.handler.processGesture(e,"end"),Ma.mouseup.call(this,e),+new Date-+this.__lastTouchMomentAF||e<-AF}var Eu=[],Zf=[],HC=Wr(),UC=Math.abs,ys=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 Ou(this.rotation)||Ou(this.x)||Ou(this.y)||Ou(this.scaleX-1)||Ou(this.scaleY-1)||Ou(this.skewX)||Ou(this.skewY)},e.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,r=this.needLocalTransform(),n=this.transform;if(!(r||t)){n&&(TF(n),this.invTransform=null);return}n=n||Wr(),r?this.getLocalTransform(n):TF(n),t&&(r?Fa(n,t,n):a0(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)},e.prototype._resolveGlobalScaleRatio=function(t){var r=this.globalScaleRatio;if(r!=null&&r!==1){this.getGlobalScale(Eu);var n=Eu[0]<0?-1:1,i=Eu[1]<0?-1:1,a=((Eu[0]-n)*r+n)/Eu[0]||0,o=((Eu[1]-i)*r+i)/Eu[1]||0;t[0]*=a,t[1]*=a,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||Wr(),da(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(),Fa(Zf,t.invTransform,r),r=Zf);var n=this.originX,i=this.originY;(n||i)&&(HC[4]=n,HC[5]=i,Fa(Zf,r,HC),Zf[4]-=n,Zf[5]-=i,r=Zf),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&&ur(n,n,i),n},e.prototype.transformCoordToGlobal=function(t,r){var n=[t,r],i=this.transform;return i&&ur(n,n,i),n},e.prototype.getLineScale=function(){var t=this.transform;return t&&UC(t[0]-1)>1e-10&&UC(t[3]-1)>1e-10?Math.sqrt(UC(t[0]*t[3]-t[2]*t[1])):1},e.prototype.copyTransform=function(t){nw(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&&qs(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}(),Bo=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function nw(e,t){for(var r=0;r=CF)){e=e||Bs;for(var t=[],r=+new Date,n=0;n<=127;n++)t[n]=hi.measureText(String.fromCharCode(n),e).width;var i=+new Date-r;return i>16?ZC=CF:i>2&&ZC++,t}}var ZC=0,CF=5;function ZK(e,t){return e.asciiWidthMapTried||(e.asciiWidthMap=jje(e.font),e.asciiWidthMapTried=!0),0<=t&&t<=127?e.asciiWidthMap!=null?e.asciiWidthMap[t]:e.asciiCharWidth:e.stWideCharWidth}function Eo(e,t){var r=e.strWidthCache,n=r.get(t);return n==null&&(n=hi.measureText(t,e.font).width,r.put(t,n)),n}function MF(e,t,r,n){var i=Eo(Oo(t),e),a=o0(t),o=Zd(0,i,r),s=Nc(0,a,n),l=new Oe(o,s,i,a);return l}function gT(e,t,r,n){var i=((e||"")+"").split(` -`),a=i.length;if(a===1)return MF(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 iw(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+=Za(n[0],r.width),u+=Za(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 YC="__zr_normal__",XC=Bo.concat(["ignore"]),Rje=ha(Bo,function(e,t){return e[t]=!0,e},{ignore:!1}),Yf={},Bje=new Oe(0,0,0,0),Ox=[],mT=function(){function e(t){this.id=QD(),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=Bje,n.layoutRect?h.copy(n.layoutRect):h.copy(this.getBoundingRect()),i||h.applyTransform(this.transform)),c){this.calculateTextPosition?this.calculateTextPosition(Yf,n,h):iw(Yf,n,h),a.x=Yf.x,a.y=Yf.y,o=Yf.align,s=Yf.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=Za(d[0],h.width),g=Za(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 y=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={});if(f){var _=y.overflowRect=y.overflowRect||new Oe(0,0,0,0);a.getLocalTransform(Ox),da(Ox,Ox),Oe.copy(_,h),_.applyTransform(Ox)}else y.overflowRect=null;var b=n.inside==null?typeof n.position=="string"&&n.position.indexOf("inside")>=0:n.inside,S=void 0,T=void 0,A=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),A=!0)):(S=n.outsideFill,T=n.outsideStroke,(S==null||S==="auto")&&(S=this.getOutsideFill()),(T==null||T==="auto")&&(T=this.getOutsideStroke(S),A=!0)),S=S||"#000",(S!==y.fill||T!==y.stroke||A!==y.autoStroke||o!==y.align||s!==y.verticalAlign)&&(l=!0,y.fill=S,y.stroke=T,y.autoStroke=A,y.align=o,y.verticalAlign=s,r.setDefaultTextStyle(y)),r.__dirty|=Si,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()?Uk:Hk},e.prototype.getOutsideStroke=function(t){var r=this.__zr&&this.__zr.getBackgroundColor(),n=typeof r=="string"&&En(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,sa(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||{},re(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(YC,!1,t)},e.prototype.useState=function(t,r,n,i){var a=t===YC,o=this.hasState();if(!(!o&&a)){var s=this.currentStates,l=this.stateTransition;if(!(Ge(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){cT("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&=~Si),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&=~Si)}},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=Ge(i,t),o=Ge(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,k=void 0,I=void 0;if(s){k={},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=Ge(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=Ge(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 de=Qje;function Qje(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 aw(e,t,r)}function aw(e,t,r){return ve(e)?Kje(e).match(/%$/)?parseFloat(e)/100*t+(r||0):parseFloat(e):e==null?NaN:+e}function mr(e,t,r){return t==null&&(t=10),t=Math.min(Math.max(0,t),QK),e=(+e).toFixed(t),r?e:+e}function Mi(e){return e.sort(function(t,r){return t-r}),e}function Ra(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 JK(e)}function JK(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(bo(t[1]-t[0]))/n),o=Math.min(Math.max(-i+a,0),20);return isFinite(o)?o:20}function Jje(e,t,r){if(!e[t])return 0;var n=eQ(e,r);return n[t]||0}function eQ(e,t){var r=ha(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=ha(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 eRe(e,t){var r=Math.max(Ra(e),Ra(t)),n=e+t;return r>QK?n:mr(n,r)}var Xk=9007199254740991;function lN(e){var t=Math.PI*2;return(e%t+t)%t}function Yd(e){return e>-PF&&e=10&&t++,t}function uN(e,t){var r=yT(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 tb(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 qk(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 QC(e){e.option=e.parentModel=e.ecModel=null}var _Re=".",Du="___EC__COMPONENT__CONTAINER___",fQ="___EC__EXTENDED_CLASS___";function wo(e){var t={main:"",sub:""};if(e){var r=e.split(_Re);t.main=r[0]||"",t.sub=r[1]||""}return t}function bRe(e){_n(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(e),'componentType "'+e+'" illegal')}function wRe(e){return!!(e&&e[fQ])}function dN(e,t){e.$constructor=e,e.extend=function(r){var n=this,i;return SRe(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)},JD(i,this)),re(i.prototype,r),i[fQ]=!0,i.extend=this.extend,i.superCall=CRe,i.superApply=MRe,i.superClass=n,i}}function SRe(e){return Ae(e)&&/^class\s/.test(Function.prototype.toString.call(e))}function hQ(e,t){e.extend=t.extend}var TRe=Math.round(Math.random()*10);function ARe(e){var t=["__\0is_clz",TRe++].join("_");e.prototype[t]=!0,e.isInstance=function(r){return!!(r&&r[t])}}function CRe(e,t){for(var r=[],n=2;n=0||a&&Ge(a,l)<0)){var u=n.getShallow(l,t);u!=null&&(o[e[s][0]]=u)}}return o}}var PRe=[["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]],LRe=nf(PRe),kRe=function(){function e(){}return e.prototype.getAreaStyle=function(t,r){return LRe(this,t,r)},e}(),Qk=new Ud(50);function IRe(e){if(typeof e=="string"){var t=Qk.get(e);return t&&t.image}else return e}function vN(e,t,r,n,i){if(e)if(typeof e=="string"){if(t&&t.__zrImageSrc===e||!r)return t;var a=Qk.get(e),o={hostEl:r,cb:n,cbPayload:i};return a?(t=a.image,!_T(t)&&a.pending.push(o)):(t=hi.loadImage(e,OF,OF),t.__zrImageSrc=e,Qk.put(e,t.__cachedImgObj={image:t,pending:[o]})),t}else return e;else return t}function OF(){var e=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var t=0;t=s;u++)l-=s;var c=Eo(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 pQ(e,t,r){var n=r.containerWidth,i=r.contentWidth,a=r.fontMeasureInfo;if(!n){e.textLine="",e.isTruncated=!1;return}var o=Eo(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?ERe(t,i,a):o>0?Math.floor(t.length*i/o):0;t=t.substr(0,l),o=Eo(a,t)}t===""&&(t=r.placeholder),e.textLine=t,e.isTruncated=!0}function ERe(e,t,r){for(var n=0,i=0,a=e.length;im&&d){var b=Math.floor(m/h);v=v||y.length>b,y=y.slice(0,b),_=y.length*h}if(i&&c&&g!=null)for(var S=vQ(g,u,t.ellipsis,{minChar:t.truncateMinChar,placeholder:t.placeholder}),T={},A=0;Av&&e2(a,o.substring(v,m),t,d),e2(a,g[2],t,d,g[1]),v=JC.lastIndex}vf){var V=a.lines.length;D>0?(k.tokens=k.tokens.slice(0,D),M(k,O,I),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=gQ(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=Oo(l),y=0;y=32&&t<=591||t>=880&&t<=4351||t>=4608&&t<=5119||t>=7680&&t<=8303}var zRe=ha(",&?/;] ".split(""),function(e,t){return e[t]=!0,e},{});function $Re(e){return BRe(e)?!!zRe[e]:!0}function gQ(e,t,r,n,i){for(var a=[],o=[],s="",l="",u=0,c=0,f=Oo(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 DF(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(NF,Zd(r,o,i),Nc(n,s,a),o,s),Oe.intersect(t,NF,null,jF);var l=jF.outIntersectRect;e.outerWidth=l.width,e.outerHeight=l.height,e.baseX=Zd(l.x,l.width,i,!0),e.baseY=Nc(l.y,l.height,a,!0)}}var NF=new Oe(0,0,0,0),jF={outIntersectRect:{},clamp:!0};function pN(e){return e!=null?e+="":e=""}function FRe(e){var t=pN(e.text),r=e.font,n=Eo(Oo(r),t),i=o0(r);return Jk(e,n,i,null)}function Jk(e,t,r,n){var i=new Oe(Zd(e.x||0,t,e.textAlign),Nc(e.y||0,r,e.textBaseline),t,r),a=n??(mQ(e)?e.lineWidth:0);return a>0&&(i.x-=a/2,i.y-=a/2,i.width+=a,i.height+=a),i}function mQ(e){var t=e.stroke;return t!=null&&t!=="none"&&e.lineWidth>0}var eI="__zr_style_"+Math.round(Math.random()*10),jc={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}};jc[eI]=!0;var RF=["z","z2","invisible"],VRe=["invisible"],va=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(Ex[0]=i2(i)*r+e,Ex[1]=n2(i)*n+t,Dx[0]=i2(a)*r+e,Dx[1]=n2(a)*n+t,u(s,Ex,Dx),c(l,Ex,Dx),i=i%Nu,i<0&&(i=i+Nu),a=a%Nu,a<0&&(a=a+Nu),i>a&&!o?a+=Nu:ii&&(Nx[0]=i2(d)*r+e,Nx[1]=n2(d)*n+t,u(s,Nx,s),c(l,Nx,l))}var It={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},ju=[],Ru=[],no=[],rl=[],io=[],ao=[],a2=Math.min,o2=Math.max,Bu=Math.cos,zu=Math.sin,es=Math.abs,tI=Math.PI,dl=tI*2,s2=typeof Float32Array<"u",kp=[];function l2(e){var t=Math.round(e/tI*1e8)/1e8;return t%2*tI}function ST(e,t){var r=l2(e[0]);r<0&&(r+=dl);var n=r-e[0],i=e[1];i+=n,!t&&i-r>=dl?i=r+dl:t&&r-i>=dl?i=r-dl:!t&&r>i?i=r+(dl-l2(r-i)):t&&r0&&(this._ux=es(n/rw/t)||0,this._uy=es(n/rw/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=es(t-this._xi),i=es(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(),kp[0]=i,kp[1]=a,ST(kp,o),i=kp[0],a=kp[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=Bu(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)&&s2&&(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(){no[0]=no[1]=io[0]=io[1]=Number.MAX_VALUE,rl[0]=rl[1]=ao[0]=ao[1]=-Number.MAX_VALUE;var t=this.data,r=0,n=0,i=0,a=0,o;for(o=0;on||es(b)>i||h===r-1)&&(g=Math.sqrt(_*_+b*b),a=m,o=y);break}case It.C:{var S=t[h++],T=t[h++],m=t[h++],y=t[h++],A=t[h++],M=t[h++];g=rje(a,o,S,T,m,y,A,M,10),a=A,o=M;break}case It.Q:{var S=t[h++],T=t[h++],m=t[h++],y=t[h++];g=ije(a,o,S,T,m,y,10),a=m,o=y;break}case It.A:var P=t[h++],k=t[h++],I=t[h++],O=t[h++],D=t[h++],N=t[h++],B=N+D;h+=1,v&&(s=Bu(D)*I+P,l=zu(D)*O+k),g=o2(I,O)*a2(dl,Math.abs(N)),a=Bu(B)*I+P,o=zu(B)*O+k;break;case It.R:{s=a=t[h++],l=o=t[h++];var F=t[h++],$=t[h++];g=F*2+$*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,y=0,_,b=0,S,T;if(!(d&&(this._pathSegLen||this._calculateLength(),v=this._pathSegLen,g=this._pathLen,_=r*g,!_)))e:for(var A=0;A0&&(t.lineTo(S,T),b=0),M){case It.M:s=u=n[A++],l=c=n[A++],t.moveTo(u,c);break;case It.L:{f=n[A++],h=n[A++];var k=es(f-u),I=es(h-c);if(k>i||I>a){if(d){var O=v[y++];if(m+O>_){var D=(_-m)/O;t.lineTo(u*(1-D)+f*D,c*(1-D)+h*D);break e}m+=O}t.lineTo(f,h),u=f,c=h,b=0}else{var N=k*k+I*I;N>b&&(S=f,T=h,b=N)}break}case It.C:{var B=n[A++],F=n[A++],$=n[A++],U=n[A++],z=n[A++],V=n[A++];if(d){var O=v[y++];if(m+O>_){var D=(_-m)/O;ru(u,B,$,z,D,ju),ru(c,F,U,V,D,Ru),t.bezierCurveTo(ju[1],Ru[1],ju[2],Ru[2],ju[3],Ru[3]);break e}m+=O}t.bezierCurveTo(B,F,$,U,z,V),u=z,c=V;break}case It.Q:{var B=n[A++],F=n[A++],$=n[A++],U=n[A++];if(d){var O=v[y++];if(m+O>_){var D=(_-m)/O;ly(u,B,$,D,ju),ly(c,F,U,D,Ru),t.quadraticCurveTo(ju[1],Ru[1],ju[2],Ru[2]);break e}m+=O}t.quadraticCurveTo(B,F,$,U),u=$,c=U;break}case It.A:var W=n[A++],Y=n[A++],Z=n[A++],J=n[A++],ae=n[A++],ce=n[A++],ge=n[A++],We=!n[A++],xe=Z>J?Z:J,ne=es(Z-J)>.001,fe=ae+ce,le=!1;if(d){var O=v[y++];m+O>_&&(fe=ae+ce*(_-m)/O,le=!0),m+=O}if(ne&&t.ellipse?t.ellipse(W,Y,Z,J,ge,ae,fe,We):t.arc(W,Y,xe,ae,fe,We),le)break e;P&&(s=Bu(ae)*Z+W,l=zu(ae)*J+Y),u=Bu(fe)*Z+W,c=zu(fe)*J+Y;break;case It.R:s=u=n[A],l=c=n[A+1],f=n[A++],h=n[A++];var ee=n[A++],Fe=n[A++];if(d){var O=v[y++];if(m+O>_){var Se=_-m;t.moveTo(f,h),t.lineTo(f+a2(Se,ee),h),Se-=ee,Se>0&&t.lineTo(f+ee,h+a2(Se,Fe)),Se-=Fe,Se>0&&t.lineTo(f+o2(ee-Se,0),h+Fe),Se-=ee,Se>0&&t.lineTo(f,h+o2(Fe-Se,0));break e}m+=O}t.rect(f,h,ee,Fe);break;case It.Z:if(d){var O=v[y++];if(m+O>_){var D=(_-m)/O;t.lineTo(u*(1-D)+s*D,c*(1-D)+l*D);break e}m+=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=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 yl(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+=Ip);var h=Math.atan2(l,s);return h<0&&(h+=Ip),h>=n&&h<=i||h+Ip>=n&&h+Ip<=i}function ls(e,t,r,n,i,a){if(a>t&&a>n||ai?s:0}var nl=$o.CMD,$u=Math.PI*2,XRe=1e-4;function qRe(e,t){return Math.abs(e-t)t&&u>n&&u>a&&u>s||u1&&KRe(),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=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>=$u-1e-4){n=0,i=$u;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+=$u,i+=$u);for(var h=0,d=0;d<2;d++){var v=$n[d];if(v+e>o){var g=Math.atan2(s,v),c=a?1:-1;g<0&&(g=$u+g),(g>=n&&g<=i||g+$u>=n&&g+$u<=i)&&(g>Math.PI/2&&g1&&(r||(s+=ls(l,u,c,f,n,i))),m&&(l=a[v],u=a[v+1],c=l,f=u),g){case nl.M:c=a[v++],f=a[v++],l=c,u=f;break;case nl.L:if(r){if(yl(l,u,a[v],a[v+1],t,n,i))return!0}else s+=ls(l,u,a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case nl.C:if(r){if(ZRe(l,u,a[v++],a[v++],a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=QRe(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 nl.Q:if(r){if(yQ(l,u,a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=JRe(l,u,a[v++],a[v++],a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case nl.A:var y=a[v++],_=a[v++],b=a[v++],S=a[v++],T=a[v++],A=a[v++];v+=1;var M=!!(1-a[v++]);h=Math.cos(T)*b+y,d=Math.sin(T)*S+_,m?(c=h,f=d):s+=ls(l,u,h,d,n,i);var P=(n-y)*S/b+y;if(r){if(YRe(y,_,S,T,T+A,M,t,P,i))return!0}else s+=e5e(y,_,S,T,T+A,M,P,i);l=Math.cos(T+A)*b+y,u=Math.sin(T+A)*S+_;break;case nl.R:c=l=a[v++],f=u=a[v++];var k=a[v++],I=a[v++];if(h=c+k,d=f+I,r){if(yl(c,f,h,f,t,n,i)||yl(h,f,h,d,t,n,i)||yl(h,d,c,d,t,n,i)||yl(c,d,c,f,t,n,i))return!0}else s+=ls(h,f,h,d,n,i),s+=ls(c,d,c,f,n,i);break;case nl.Z:if(r){if(yl(l,u,c,f,t,n,i))return!0}else s+=ls(l,u,c,f,n,i);l=c,u=f;break}}return!r&&!qRe(u,f)&&(s+=ls(l,u,c,f,n,i)||0),s!==0}function t5e(e,t,r){return xQ(e,0,!1,t,r)}function r5e(e,t,r,n){return xQ(e,t,!0,r,n)}var ow=Pe({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},jc),n5e={style:Pe({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},bT.style)},u2=Bo.concat(["invisible","culling","z","z2","zlevel","parent"]),rt=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?Hk:n>.2?Nje:Uk}else if(r)return Uk}return Hk},t.prototype.getInsideTextStroke=function(r){var n=this.style.fill;if(ve(n)){var i=this.__zr,a=!!(i&&i.isDarkMode()),o=fy(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&_h)&&(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)),r5e(s,l/u,r,n)))return!0}if(this.hasFill())return t5e(s,r,n)}return!1},t.prototype.dirtyShape=function(){this.__dirty|=_h,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:re(i,r),this.dirtyShape(),this},t.prototype.shapeChanged=function(){return!!(this.__dirty&_h)},t.prototype.createStyle=function(r){return n0(ow,r)},t.prototype._innerSaveToNormal=function(r){e.prototype._innerSaveToNormal.call(this,r);var n=this._normalState;r.shape&&!n.shape&&(n.shape=re({},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=re({},i.shape),re(u,n.shape)):(u=re({},a?this.shape:i.shape),re(u,n.shape)):l&&(u=i.shape),u)if(o){this.shape=re({},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 Fh=Math.round;function TT(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&&(Fh(n*2)===Fh(i*2)&&(e.x1=e.x2=Li(n,s,!0)),Fh(a*2)===Fh(o*2)&&(e.y1=e.y2=Li(a,s,!0))),e}}function _Q(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=Li(n,s,!0),e.y=Li(i,s,!0),e.width=Math.max(Li(n+a,s,!1)-e.x,a===0?0:1),e.height=Math.max(Li(i+o,s,!1)-e.y,o===0?0:1)),e}}function Li(e,t,r){if(!t)return e;var n=Fh(e*2);return(n+Fh(t))%2===0?n/2:(n+(r?1:-1))/2}var u5e=function(){function e(){this.x=0,this.y=0,this.width=0,this.height=0}return e}(),c5e={},Xe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new u5e},t.prototype.buildPath=function(r,n){var i,a,o,s;if(this.subPixelOptimize){var l=_Q(c5e,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?l5e(r,n):r.rect(i,a,o,s)},t.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},t}(rt);Xe.prototype.type="rect";var VF={fill:"#000"},GF=2,oo={},f5e={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=VF,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&&(B=A[N],B.align==="right");)this._placeToken(B,r,P,y,D,"right",b),k-=B.width,D-=B.width,N--;for(O+=(c-(O-m)-(_-D)-k)/2;I<=N;)B=A[I],this._placeToken(B,r,P,y,O+B.width/2,"center",b),O+=B.width,I++;y+=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&&c2(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=XF(o,s,v),f-=r.height/2-v[0]-r.innerHeight/2);var g=this._getOrCreateChild(Xd),m=g.createStyle();g.useStyle(m);var y=this._defaultStyle,_=!1,b=0,S=!1,T=YF("fill"in u?u.fill:"fill"in n?n.fill:(_=!0,y.fill)),A=ZF("stroke"in u?u.stroke:"stroke"in n?n.stroke:!d&&!l&&(!y.autoStroke||_)?(b=GF,S=!0,y.stroke):null),M=u.textShadowBlur>0||n.textShadowBlur>0;m.text=r.text,m.x=o,m.y=f,M&&(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||Bs,m.opacity=fi(u.opacity,n.opacity,1),HF(m,u),A&&(m.lineWidth=fi(u.lineWidth,n.lineWidth,b),m.lineDash=be(u.lineDash,n.lineDash),m.lineDashOffset=n.lineDashOffset||0,m.stroke=A),T&&(m.fill=T),g.setBoundingRect(Jk(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 y=g.shape;y.x=i,y.y=a,y.width=o,y.height=s,y.r=d,g.dirtyShape()}if(h){var _=g.style;_.fill=l||null,_.fillOpacity=be(r.fillOpacity,1)}else if(f){m=this._getOrCreateChild(Xr),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=fi(r.opacity,n.opacity,1)},t.makeFont=function(r){var n="";return wQ(r)&&(n=[r.fontStyle,r.fontWeight,bQ(r.fontSize),r.fontFamily||"sans-serif"].join(" ")),n&&Ci(n)||r.textFont||r.font},t}(va),h5e={left:!0,right:1,center:1},d5e={top:1,bottom:1,middle:1},WF=["fontStyle","fontWeight","fontSize","fontFamily"];function bQ(e){return typeof e=="string"&&(e.indexOf("px")!==-1||e.indexOf("rem")!==-1||e.indexOf("em")!==-1)?e:isNaN(+e)?XD+"px":e+"px"}function HF(e,t){for(var r=0;r=0,a=!1;if(e instanceof rt){var o=SQ(e),s=i&&o.selectFill||o.normalFill,l=i&&o.selectStroke||o.normalStroke;if(Xf(s)||Xf(l)){n=n||{};var u=n.style||{};u.fill==="inherit"?(a=!0,n=re({},n),u=re({},u),u.fill=s):!Xf(u.fill)&&Xf(s)?(a=!0,n=re({},n),u=re({},u),u.fill=ew(s)):!Xf(u.stroke)&&Xf(l)&&(a||(n=re({},n),u=re({},u)),u.stroke=ew(l)),n.style=u}}if(n&&n.z2==null){a||(n=re({},n));var c=e.z2EmphasisLift;n.z2=e.z2+(c??Ov)}return n}function _5e(e,t,r){if(r&&r.z2==null){r=re({},r);var n=e.z2SelectLift;r.z2=e.z2+(n??p5e)}return r}function b5e(e,t,r){var n=Ge(e.currentStates,t)>=0,i=e.style.opacity,a=n?null:y5e(e,["opacity"],t,{opacity:1});r=r||{};var o=r.style||{};return o.opacity==null&&(r=re({},r),o=re({opacity:n?i:a.opacity*.1},o),r.style=o),r}function f2(e,t){var r=this.states[e];if(this.style){if(e==="emphasis")return x5e(this,e,t,r);if(e==="blur")return b5e(this,e,r);if(e==="select")return _5e(this,e,r)}return r}function af(e){e.stateProxy=f2;var t=e.getTextContent(),r=e.getTextGuideLine();t&&(t.stateProxy=f2),r&&(r.stateProxy=f2)}function eV(e,t){!kQ(e,t)&&!e.__highByOuter&&Ks(e,TQ)}function tV(e,t){!kQ(e,t)&&!e.__highByOuter&&Ks(e,AQ)}function $s(e,t){e.__highByOuter|=1<<(t||0),Ks(e,TQ)}function Fs(e,t){!(e.__highByOuter&=~(1<<(t||0)))&&Ks(e,AQ)}function MQ(e){Ks(e,xN)}function _N(e){Ks(e,CQ)}function PQ(e){Ks(e,g5e)}function LQ(e){Ks(e,m5e)}function kQ(e,t){return e.__highDownSilentOnTouch&&t.zrByTouch}function IQ(e){var t=e.getModel(),r=[],n=[];t.eachComponent(function(i,a){var o=gN(a),s=i==="series",l=s?e.getViewOfSeriesModel(a):e.getViewOfComponentModel(a);!s&&n.push(l),o.isBlured&&(l.group.traverse(function(u){CQ(u)}),s&&r.push(a)),o.isBlured=!1}),R(n,function(i){i&&i.toggleBlurSeries&&i.toggleBlurSeries(r,!1,t)})}function iI(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 Zl(e,t,r){Ac(e,!0),Ks(e,af),oI(e,t,r)}function M5e(e){Ac(e,!1)}function Wt(e,t,r,n){n?M5e(e):Zl(e,t,r)}function oI(e,t,r){var n=De(e);t!=null?(n.focus=t,n.blurScope=r):n.focus&&(n.focus=null)}var nV=["emphasis","blur","select"],P5e={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function Dr(e,t,r,n){r=r||"itemStyle";for(var i=0;i1&&(o*=h2(v),s*=h2(v));var g=(i===a?-1:1)*h2((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,y=g*-s*h/o,_=(e+r)/2+Rx(f)*m-jx(f)*y,b=(t+n)/2+jx(f)*m+Rx(f)*y,S=sV([1,0],[(h-m)/o,(d-y)/s]),T=[(h-m)/o,(d-y)/s],A=[(-1*h-m)/o,(-1*d-y)/s],M=sV(T,A);if(lI(T,A)<=-1&&(M=Op),lI(T,A)>=1&&(M=0),M<0){var P=Math.round(M/Op*1e6)/1e6;M=Op*2+P%2*Op}c.addData(u,_,b,o,s,S,M,f,a)}var D5e=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig,N5e=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function j5e(e){var t=new $o;if(!e)return t;var r=0,n=0,i=r,a=n,o,s=$o.CMD,l=e.match(D5e);if(!l)return t;for(var u=0;uB*B+F*F&&(P=I,k=O),{cx:P,cy:k,x0:-c,y0:-f,x1:P*(i/T-1),y1:k*(i/T-1)}}function G5e(e){var t;if(ie(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 W5e(e,t){var r,n=vg(t.r,0),i=vg(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=uV(u-l),v=d>d2&&d%d2;if(v>Ca&&(d=v),!(n>Ca))e.moveTo(c,f);else if(d>d2-Ca)e.moveTo(c+n*Kf(l),f+n*Fu(l)),e.arc(c,f,n,l,u,!h),i>Ca&&(e.moveTo(c+i*Kf(u),f+i*Fu(u)),e.arc(c,f,i,u,l,h));else{var g=void 0,m=void 0,y=void 0,_=void 0,b=void 0,S=void 0,T=void 0,A=void 0,M=void 0,P=void 0,k=void 0,I=void 0,O=void 0,D=void 0,N=void 0,B=void 0,F=n*Kf(l),$=n*Fu(l),U=i*Kf(u),z=i*Fu(u),V=d>Ca;if(V){var W=t.cornerRadius;W&&(r=G5e(W),g=r[0],m=r[1],y=r[2],_=r[3]);var Y=uV(n-i)/2;if(b=so(Y,y),S=so(Y,_),T=so(Y,g),A=so(Y,m),k=M=vg(b,S),I=P=vg(T,A),(M>Ca||P>Ca)&&(O=n*Kf(u),D=n*Fu(u),N=i*Kf(l),B=i*Fu(l),dCa){var ne=so(y,k),fe=so(_,k),le=Bx(N,B,F,$,n,ne,h),ee=Bx(O,D,U,z,n,fe,h);e.moveTo(c+le.cx+le.x0,f+le.cy+le.y0),k0&&e.arc(c+le.cx,f+le.cy,ne,An(le.y0,le.x0),An(le.y1,le.x1),!h),e.arc(c,f,n,An(le.cy+le.y1,le.cx+le.x1),An(ee.cy+ee.y1,ee.cx+ee.x1),!h),fe>0&&e.arc(c+ee.cx,f+ee.cy,fe,An(ee.y1,ee.x1),An(ee.y0,ee.x0),!h))}else e.moveTo(c+F,f+$),e.arc(c,f,n,l,u,!h);if(!(i>Ca)||!V)e.lineTo(c+U,f+z);else if(I>Ca){var ne=so(g,I),fe=so(m,I),le=Bx(U,z,O,D,i,-fe,h),ee=Bx(F,$,N,B,i,-ne,h);e.lineTo(c+le.cx+le.x0,f+le.cy+le.y0),I0&&e.arc(c+le.cx,f+le.cy,fe,An(le.y0,le.x0),An(le.y1,le.x1),!h),e.arc(c,f,i,An(le.cy+le.y1,le.cx+le.x1),An(ee.cy+ee.y1,ee.cx+ee.x1),h),ne>0&&e.arc(c+ee.cx,f+ee.cy,ne,An(ee.y1,ee.x1),An(ee.y0,ee.x0),!h))}else e.lineTo(c+U,f+z),e.arc(c,f,i,u,l,h)}e.closePath()}}}var H5e=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 H5e},t.prototype.buildPath=function(r,n){W5e(r,n)},t.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},t}(rt);bn.prototype.type="sector";var U5e=function(){function e(){this.cx=0,this.cy=0,this.r=0,this.r0=0}return e}(),Ev=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new U5e},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}(rt);Ev.prototype.type="ring";function Z5e(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=Z5e(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;sGu[1]){if(a=!1,Jr.negativeSize||n)return a;var l=zx(Gu[0]-Vu[1]),u=zx(Vu[0]-Gu[1]);v2(l,u)>Fx.len()&&(l=u||!Jr.bidirectional)&&(Ie.scale($x,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){TN("update",e,t,r,n,i,a)}function Nt(e,t,r,n,i,a){TN("enter",e,t,r,n,i,a)}function ld(e){if(!e.__zr)return!0;for(var t=0;tbo(a[1])?a[0]>0?"right":"left":a[1]>0?"bottom":"top"}function hV(e){return!e.isGroup}function aBe(e){return e.shape!=null}function f0(e,t,r){if(!e||!t)return;function n(o){var s={};return o.traverse(function(l){hV(l)&&l.anid&&(s[l.anid]=l)}),s}function i(o){var s={x:o.x,y:o.y,rotation:o.rotation};return aBe(o)&&(s.shape=Ce(o.shape)),s}var a=n(e);t.traverse(function(o){if(hV(o)&&o.anid){var s=a[o.anid];if(s){var l=i(o);o.attr(i(s)),lt(o,l,r,De(o).dataIndex)}}})}function MN(e,t){return se(e,function(r){var n=r[0];n=gr(n,t.x),n=Ii(n,t.x+t.width);var i=r[1];return i=gr(i,t.y),i=Ii(i,t.y+t.height),[n,i]})}function UQ(e,t){var r=gr(e.x,t.x),n=Ii(e.x+e.width,t.x+t.width),i=gr(e.y,t.y),a=Ii(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 jv(e,t,r){var n=re({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 Xr(n)):qd(e.replace("path://",""),n,r,"center")}function pg(e,t,r,n,i){for(var a=0,o=i[i.length-1];a1)return!1;var m=p2(d,v,c,f)/h;return!(m<0||m>1)}function p2(e,t,r,n){return e*n-r*t}function oBe(e){return e<=1e-6&&e>=-1e-6}function of(e,t,r,n,i){return t==null||(ot(t)?Ut[0]=Ut[1]=Ut[2]=Ut[3]=t:(Ut[0]=t[0],Ut[1]=t[1],Ut[2]=t[2],Ut[3]=t[3]),n&&(Ut[0]=gr(0,Ut[0]),Ut[1]=gr(0,Ut[1]),Ut[2]=gr(0,Ut[2]),Ut[3]=gr(0,Ut[3])),r&&(Ut[0]=-Ut[0],Ut[1]=-Ut[1],Ut[2]=-Ut[2],Ut[3]=-Ut[3]),dV(e,Ut,"x","width",3,1,i&&i[0]||0),dV(e,Ut,"y","height",0,2,i&&i[1]||0)),e}var Ut=[0,0,0,0];function dV(e,t,r,n,i,a,o){var s=t[a]+t[i],l=e[n];e[n]+=s,o=gr(0,Ii(o,l)),e[n]=0?-t[i]:t[a]>=0?l+t[a]:bo(s)>1e-8?(l-o)*t[i]/s:0):e[r]-=t[i]}function Qs(e){var t=e.itemTooltipOption,r=e.componentModel,n=e.itemName,i=ve(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){ye(s,c)||(s[c]=l[c],s.$vars.push(c))});var u=De(e.el);u.componentMainType=a,u.componentIndex=o,u.tooltipConfig={name:n,option:Pe({content:n,encodeHTMLContent:!0,formatterParams:s},i)}}function cI(e,t){var r;e.isGroup&&(r=t(e)),r||e.traverse(t)}function yu(e,t){if(e)if(ie(e))for(var r=0;rt&&(t=o),ot&&(r=t=0),{min:r,max:t}}function PT(e,t,r){XQ(e,t,r,-1/0)}function XQ(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 xu(e,t){return He(He({},e,!0),t,!0)}const yBe={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:". "}}}},xBe={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 fw="ZH",IN="EN",ud=IN,ib={},ON={},tJ=nt.domSupported?function(){var e=(document.documentElement.lang||navigator.language||navigator.browserLanguage||ud).toUpperCase();return e.indexOf(fw)>-1?fw:ud}():ud;function EN(e,t){e=e.toUpperCase(),ON[e]=new tt(t),ib[e]=t}function _Be(e){if(ve(e)){var t=ib[e.toUpperCase()]||{};return e===fw||e===IN?Ce(t):He(Ce(t),Ce(ib[ud]),!1)}else return He(Ce(e),Ce(ib[ud]),!1)}function hI(e){return ON[e]}function bBe(){return ON[ud]}EN(IN,yBe);EN(fw,xBe);var dI=null;function wBe(e){dI||(dI=e)}function Sr(){return dI}var DN=1e3,NN=DN*60,Yg=NN*60,ta=Yg*24,yV=ta*365,SBe={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})/},ab={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}"},TBe="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}",Gx="{yyyy}-{MM}-{dd}",xV={year:"{yyyy}",month:"{yyyy}-{MM}",day:Gx,hour:Gx+" "+ab.hour,minute:Gx+" "+ab.minute,second:Gx+" "+ab.second,millisecond:TBe},_i=["year","month","day","hour","minute","second","millisecond"],ABe=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function CBe(e){return!ve(e)&&!Ae(e)?MBe(e):e}function MBe(e){e=e||{};var t={},r=!0;return R(_i,function(n){r&&(r=e[n]==null)}),R(_i,function(n,i){var a=e[n];t[n]={};for(var o=null,s=i;s>=0;s--){var l=_i[s],u=Le(a)&&!ie(a)?a[l]:a,c=void 0;ie(u)?(c=u.slice(),o=c[0]||""):ve(u)?(o=u,c=[o]):(o==null?o=ab[n]:SBe[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 Xg(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 PBe(e){return e===Xg(e)}function LBe(e){switch(e){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}function h0(e,t,r,n){var i=Uo(e),a=i[rJ(r)](),o=i[jN(r)]()+1,s=Math.floor((o-1)/3)+1,l=i[RN(r)](),u=i["get"+(r?"UTC":"")+"Day"](),c=i[BN(r)](),f=(c-1)%12+1,h=i[zN(r)](),d=i[$N(r)](),v=i[FN(r)](),g=c>=12?"pm":"am",m=g.toUpperCase(),y=n instanceof tt?n:hI(n||tJ)||bBe(),_=y.getModel("time"),b=_.get("month"),S=_.get("monthAbbr"),T=_.get("dayOfWeek"),A=_.get("dayOfWeekAbbr");return(t||"").replace(/{a}/g,g+"").replace(/{A}/g,m+"").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,A[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 kBe(e,t,r,n,i){var a=null;if(ve(r))a=r;else if(Ae(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=Gh(e.value,i);a=r[c][c][0]}}return h0(new Date(e.value),a,i,n)}function Gh(e,t){var r=Uo(e),n=r[jN(t)]()+1,i=r[RN(t)](),a=r[BN(t)](),o=r[zN(t)](),s=r[$N(t)](),l=r[FN(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 hw(e,t,r){switch(t){case"year":e[nJ(r)](0);case"month":e[iJ(r)](1);case"day":e[aJ(r)](0);case"hour":e[oJ(r)](0);case"minute":e[sJ(r)](0);case"second":e[lJ(r)](0)}return e}function rJ(e){return e?"getUTCFullYear":"getFullYear"}function jN(e){return e?"getUTCMonth":"getMonth"}function RN(e){return e?"getUTCDate":"getDate"}function BN(e){return e?"getUTCHours":"getHours"}function zN(e){return e?"getUTCMinutes":"getMinutes"}function $N(e){return e?"getUTCSeconds":"getSeconds"}function FN(e){return e?"getUTCMilliseconds":"getMilliseconds"}function IBe(e){return e?"setUTCFullYear":"setFullYear"}function nJ(e){return e?"setUTCMonth":"setMonth"}function iJ(e){return e?"setUTCDate":"setDate"}function aJ(e){return e?"setUTCHours":"setHours"}function oJ(e){return e?"setUTCMinutes":"setMinutes"}function sJ(e){return e?"setUTCSeconds":"setSeconds"}function lJ(e){return e?"setUTCMilliseconds":"setMilliseconds"}function OBe(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 VN(e){if(!cN(e))return ve(e)?e:"-";var t=(e+"").split(".");return t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:"")}function GN(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 zv=r0;function vI(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?Uo(e):e;if(isNaN(+l)){if(s)return"-"}else return h0(l,n,r)}if(t==="ordinal")return U1(e)?i(e):ot(e)&&a(e)?e+"":"-";var u=zo(e);return a(u)?VN(u):U1(e)?i(e):typeof e=="boolean"?e+"":"-"}var _V=["a","b","c","d","e","f","g"],y2=function(e,t){return"{"+e+(t??"")+"}"};function WN(e,t,r){ie(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 DBe(e,t,r){(e==="week"||e==="month"||e==="quarter"||e==="half-year"||e==="year")&&(e=`MM-dd -yyyy`);var n=Uo(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 NBe(e){return e&&e.charAt(0).toUpperCase()+e.substr(1)}function lf(e,t){return t=t||"transparent",ve(e)?e:Le(e)&&e.colorStops&&(e.colorStops[0]||{}).color||t}function dw(e,t){if(t==="_blank"||t==="blank"){var r=window.open();r.opener=null,r.location.href=e}else window.open(e,t)}var ob={},x2={},$v=function(){function e(){this._normalMasterList=[],this._nonSeriesBoxMasterList=[]}return e.prototype.create=function(t,r){this._nonSeriesBoxMasterList=n(ob),this._normalMasterList=n(x2);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"){ob[t]=r;return}x2[t]=r},e.get=function(t){return x2[t]||ob[t]},e}();function jBe(e){return!!ob[e]}var pI={coord:1,coord2:2};function RBe(e){cJ.set(e.fullType,{getCoord2:void 0}).getCoord2=e.getCoord2}var cJ=_e();function BBe(e){var t=e.getShallow("coord",!0),r=pI.coord;if(t==null){var n=cJ.get(e.type);n&&n.getCoord2&&(r=pI.coord2,t=n.getCoord2(e))}return{coord:t,from:r}}var mo={none:0,dataCoordSys:1,boxCoordSys:2};function fJ(e,t){var r=e.getShallow("coordinateSystem"),n=e.getShallow("coordinateSystemUsage",!0),i=mo.none;if(r){var a=e.mainType==="series";n==null&&(n=a?"data":"box"),n==="data"?(i=mo.dataCoordSys,a||(i=mo.none)):n==="box"&&(i=mo.boxCoordSys,!a&&!jBe(r)&&(i=mo.none))}return{coordSysType:r,kind:i}}function d0(e){var t=e.targetModel,r=e.coordSysType,n=e.coordSysProvider,i=e.isDefaultDataCoordSys;e.allowNotFound;var a=fJ(t),o=a.kind,s=a.coordSysType;if(i&&o!==mo.dataCoordSys&&(o=mo.dataCoordSys,s=r),o===mo.none||s!==r)return!1;var l=n(r,t);return l?(o===mo.dataCoordSys?t.coordinateSystem=l:t.boxCoordinateSystem=l,!0):!1}var hJ=function(e,t){var r=t.getReferringComponents(e,tr).models[0];return r&&r.coordinateSystem},sb=R,dJ=["left","right","top","bottom","width","height"],Cc=[["width","left","right"],["height","top","bottom"]];function HN(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 Bc=HN;ze(HN,"vertical");ze(HN,"horizontal");function vJ(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 zBe(e,t){var r=jr(e,t,{enableLayoutOnlyByCenter:!0}),n=e.getBoxLayoutParams(),i,a;if(r.type===gg.point)a=r.refPoint,i=$t(n,{width:t.getWidth(),height:t.getHeight()});else{var o=e.get("center"),s=ie(o)?o:[o,o];i=$t(n,r.refContainer),a=r.boxCoordFrom===pI.coord2?r.refPoint:[de(s[0],i.width)+i.x,de(s[1],i.height)+i.y]}return{viewRect:i,center:a}}function pJ(e,t){var r=zBe(e,t),n=r.viewRect,i=r.center,a=e.get("radius");ie(a)||(a=[0,a]);var o=de(n.width,t.getWidth()),s=de(n.height,t.getHeight()),l=Math.min(o,s),u=de(a[0],l/2),c=de(a[1],l/2);return{cx:i[0],cy:i[1],r0:u,r:c,viewRect:n}}function $t(e,t,r){r=zv(r||0);var n=t.width,i=t.height,a=de(e.left,n),o=de(e.top,i),s=de(e.right,n),l=de(e.bottom,i),u=de(e.width,n),c=de(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 gJ(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 Iv(this.ecModel,r,{index:this.get(i,!0),id:this.get(a,!0)},n)},t.prototype.getBoxLayoutParams=function(){return vJ(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}(tt);hQ(Qe,tt);xT(Qe);gBe(Qe);mBe(Qe,VBe);function VBe(e){var t=[];return R(Qe.getClassesByMainType(e),function(r){t=t.concat(r.dependencies||r.prototype.dependencies||[])}),t=se(t,function(r){return wo(r).main}),e!=="dataset"&&Ge(t,"dataset")<=0&&t.unshift("dataset"),t}var K={color:{},darkColor:{},size:{}},hr=K.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)"};re(hr,{primary:hr.neutral80,secondary:hr.neutral70,tertiary:hr.neutral60,quaternary:hr.neutral50,disabled:hr.neutral20,border:hr.neutral30,borderTint:hr.neutral20,borderShade:hr.neutral40,background:hr.neutral05,backgroundTint:"rgba(234,237,245,0.5)",backgroundTransparent:"rgba(255,255,255,0)",backgroundShade:hr.neutral10,shadow:"rgba(0,0,0,0.2)",shadowTint:"rgba(129,130,136,0.2)",axisLine:hr.neutral70,axisLineTint:hr.neutral40,axisTick:hr.neutral70,axisTickMinor:hr.neutral60,axisLabel:hr.neutral70,axisSplitLine:hr.neutral15,axisMinorSplitLine:hr.neutral05});for(var Wu in hr)if(hr.hasOwnProperty(Wu)){var bV=hr[Wu];Wu==="theme"?K.darkColor.theme=hr.theme.slice():Wu==="highlight"?K.darkColor.highlight="rgba(255,231,130,0.4)":Wu.indexOf("accent")===0?K.darkColor[Wu]=As(bV,null,function(e){return e*.5},function(e){return Math.min(1,1.3-e)}):K.darkColor[Wu]=As(bV,null,function(e){return e*.9},function(e){return 1-Math.pow(e,1.5)})}K.size={xxs:2,xs:5,s:10,m:15,l:20,xl:30,xxl:40,xxxl:50};var yJ="";typeof navigator<"u"&&(yJ=navigator.platform||"");var Qf="rgba(0, 0, 0, 0.2)",xJ=K.color.theme[0],GBe=As(xJ,null,null,.9);const WBe={darkMode:"auto",colorBy:"series",color:K.color.theme,gradientColor:[GBe,xJ],aria:{decal:{decals:[{color:Qf,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Qf,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Qf,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Qf,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Qf,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Qf,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:yJ.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 _J=_e(["tooltip","label","itemName","itemId","itemGroupId","itemChildGroupId","seriesName"]),Ni="original",sn="arrayRows",ji="objectRows",qa="keyedColumns",Xl="typedArray",bJ="unknown",Wa="column",Af="row",hn={Must:1,Might:2,Not:3},wJ=Je();function HBe(e){wJ(e).datasetMap=_e()}function SJ(e,t,r){var n={},i=ZN(t);if(!i||!e)return n;var a=[],o=[],s=t.ecModel,l=wJ(s).datasetMap,u=i.uid+"_"+r.seriesLayoutBy,c,f;e=e.slice(),R(e,function(g,m){var y=Le(g)?g:e[m]={name:g};y.type==="ordinal"&&c==null&&(c=m,f=v(y)),n[y.name]=[]});var h=l.get(u)||l.set(u,{categoryWayDim:f,valueWayDim:0});R(e,function(g,m){var y=g.name,_=v(g);if(c==null){var b=h.valueWayDim;d(n[y],b,_),d(o,b,_),h.valueWayDim+=_}else if(c===m)d(n[y],0,_),d(a,0,_);else{var b=h.categoryWayDim;d(n[y],b,_),d(o,b,_),h.categoryWayDim+=_}});function d(g,m,y){for(var _=0;_t)return e[n];return e[r-1]}function CJ(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:qBe(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 KBe(e,t){t(e).paletteIdx=0,t(e).paletteNameMap={}}var Wx,Ep,SV,TV="\0_ec_inner",QBe=1,XN=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 tt(a),this._locale=new tt(o),this._optionManager=s},t.prototype.setOption=function(r,n,i){var a=MV(n);this._optionManager.setOption(r,i,a),this._resetOption(null,a)},t.prototype.resetOption=function(r,n){return this._resetOption(r,MV(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"?SV(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;HBe(this),R(r,function(f,h){f!=null&&(Qe.hasClass(h)?h&&(s.push(h),l.set(h,!0)):i[h]=i[h]==null?Ce(f):He(i[h],f,!0))}),u&&u.each(function(f,h){Qe.hasClass(h)&&!l.get(h)&&(s.push(h),l.set(h,!0))}),Qe.topologicalTravel(s,Qe.getAllClassMainTypes(),c,this);function c(f){var h=YBe(this,f,Pt(r[f])),d=a.get(f),v=d?u&&u.get(f)?"replaceMerge":"normalMerge":"replaceAll",g=sQ(d,h,v);dRe(g,f,Qe),i[f]=null,a.set(f,null),o.set(f,0);var m=[],y=[],_=0,b;R(g,function(S,T){var A=S.existing,M=S.newOption;if(!M)A&&(A.mergeOption({},this),A.optionUpdated({},!1));else{var P=f==="series",k=Qe.getClass(f,S.keyInfo.subType,!P);if(!k)return;if(f==="tooltip"){if(b)return;b=!0}if(A&&A.constructor===k)A.name=S.keyInfo.name,A.mergeOption(M,this),A.optionUpdated(M,!1);else{var I=re({componentIndex:T},S.keyInfo);A=new k(M,this,this,I),re(A,I),S.brandNew&&(A.__requireNewView=!0),A.init(M,this,this),A.optionUpdated(null,!0)}}A?(m.push(A.option),y.push(A),_++):(m.push(void 0),y.push(void 0))},this),i[f]=m,a.set(f,y),o.set(f,_),f==="series"&&Wx(this)}this._seriesIndices||Wx(this)},t.prototype.getOption=function(){var r=Ce(this.option);return R(r,function(n,i){if(Qe.hasClass(i)){for(var a=Pt(n),o=a.length,s=!1,l=o-1;l>=0;l--)a[l]&&!dy(a[l])?s=!0:(a[l]=null,!s&&o--);a.length=o,r[i]=a}}),delete r[TV],r},t.prototype.setTheme=function(r){this._theme=new tt(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 s3e(e,t){return e.join(",")===t.join(",")}var Aa=R,xy=Le,PV=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function _2(e){var t=e&&e.itemStyle;if(t)for(var r=0,n=PV.length;r0?r[o-1].seriesModel:null)}),g3e(r)}})}function g3e(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 y=e[m];if(s||(v=y.data.rawIndexOf(y.stackedByDimension,d)),v>=0){var _=y.data.getByRawIndex(y.stackResultDimension,v);if(l==="all"||l==="positive"&&_>0||l==="negative"&&_<0||l==="samesign"&&h>=0&&_>0||l==="samesign"&&h<=0&&_<0){h=eRe(h,_),g=_;break}}}return n[0]=h,n[1]=g,n})})}var IT=function(){function e(t){this.data=t.data||(t.sourceFormat===qa?{}:[]),this.sourceFormat=t.sourceFormat||bJ,this.seriesLayoutBy=t.seriesLayoutBy||Wa,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};NV=(t={},t[sn+"_"+Wa]={pure:!0,appendData:a},t[sn+"_"+Af]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t[ji]={pure:!0,appendData:a},t[qa]={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[Xl]={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 Qd(this.getData(r),t)},e.prototype.formatTooltip=function(t,r,n){},e}();function zV(e){var t,r;return Le(e)?e.type&&(r=e):t=e,{text:t,frag:r}}function qg(e){return new T3e(e)}var T3e=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}},C3e=function(){function e(t,r){if(!ot(r)){var n="";mt(n)}this._opFn=RJ[t],this._rvalFloat=zo(r)}return e.prototype.evaluate=function(t){return ot(t)?this._opFn(t,this._rvalFloat):this._opFn(zo(t),this._rvalFloat)},e}(),BJ=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:zo(t),i=ot(r)?r:zo(r),a=isNaN(n),o=isNaN(i);if(a&&(n=this._incomparable),o&&(i=this._incomparable),a&&o){var s=ve(t),l=ve(r);s&&(n=l?t:0),l&&(i=s?r:0)}return ni?-this._resultLT:0},e}(),M3e=function(){function e(t,r){this._rval=r,this._isEQ=t,this._rvalTypeof=typeof r,this._rvalFloat=zo(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=zo(t)===this._rvalFloat)}return this._isEQ?r:!r},e}();function P3e(e,t){return e==="eq"||e==="ne"?new M3e(e==="eq",t):ye(RJ,e)?new C3e(e,t):null}var L3e=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 ql(t,r)},e}();function k3e(e,t){var r=new L3e,n=e.data,i=r.sourceFormat=e.sourceFormat,a=e.startIndex,o="";e.seriesLayoutBy!==Wa&&mt(o);var s=[],l={},u=e.dimensionsDefine;if(u)R(u,function(g,m){var y=g.name,_={index:m,name:y,displayName:g.displayName};if(s.push(_),y!=null){var b="";ye(l,y)&&mt(b),l[y]=_}});else for(var c=0;c65535?B3e:z3e}function eh(){return[1/0,-1/0]}function $3e(e){var t=e.constructor;return t===Array?e.slice():new t(e)}function VV(e,t,r,n,i){var a=FJ[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;cy[1]&&(y[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],y=0;y=f&&_<=h||isNaN(_))&&(A>=S&&A<=T||isNaN(A))&&(l[u++]=g),g++}v=!0}}if(!v)if(a===1)for(var y=0;y=f&&_<=h||isNaN(_))&&(l[u++]=M)}else for(var y=0;yt[I][1])&&(P=!1)}P&&(l[u++]=r.getRawIndex(y))}return uy[1]&&(y[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(Jf(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&&(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]=y),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 ql(r[a],this._dimensions[a])}S2={arrayRows:t,objectRows:function(r,n,i,a){return ql(r[n],this._dimensions[a])},keyedColumns:t,original:function(r,n,i,a){var o=r&&(r.value==null?r:r.value);return ql(o instanceof Array?o[a]:o,this._dimensions[a])},typedArray:function(r,n,i,a){return r[a]}}}(),e}(),VJ=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(Ux(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)?Xl: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?[yI(s,{seriesLayoutBy:d,sourceHeader:v,dimensions:g},l)]:[]}else{var y=t;if(n){var _=this._applyTransform(r);i=_.sourceList,a=_.upstreamSignList}else{var b=y.get("source",!0);i=[yI(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&&WV(a)}var o,s=[],l=[];return R(t,function(u){u.prepareSource();var c=u.getSource(i||0),f="";i!=null&&!c&&WV(f),s.push(c),l.push(u._getVersionSign())}),n?o=j3e(n,s,{datasetIndex:r.componentIndex}):i!=null&&(o=[m3e(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=UJ(i);a>=t&&(t=a+ +(n&&(!a||_I(i)&&!i.noHeader)))}),t}return 0}function W3e(e,t,r,n){var i=t.noHeader,a=U3e(UJ(t)),o=[],s=t.blocks||[];_n(!s||ie(s)),s=s||[];var l=e.orderMode;if(t.sortBlocks&&l){s=s.slice();var u={valueAsc:"asc",valueDesc:"desc"};if(ye(u,l)){var c=new BJ(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 y=t.valueFormatter,_=HJ(g)(y?re(re({},e),{valueFormatter:y}):e,g,m>0?a.html:0,n);_!=null&&o.push(_)});var f=e.renderMode==="richText"?o.join(a.richText):bI(n,o.join(""),i?r:a.html);if(i)return f;var h=vI(t.header,"ordinal",e.useUTC),d=WJ(n,e.renderMode).nameStyle,v=GJ(n);return e.renderMode==="richText"?ZJ(e,h,d)+a.richText+f:bI(n,'
'+On(h)+"
"+f,r)}function H3e(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=ie(S)?S:[S],se(S,function(T,A){return vI(T,ie(d)?d[A]:d,u)})};if(!(a&&o)){var f=s?"":e.markupStyleCreator.makeTooltipMarker(t.markerType,t.markerColor||K.color.secondary,i),h=a?"":vI(l,"ordinal",u),d=t.valueType,v=o?[]:c(t.value,t.dataIndex),g=!s||!a,m=!s&&a,y=WJ(n,i),_=y.nameStyle,b=y.valueStyle;return i==="richText"?(s?"":f)+(a?"":ZJ(e,h,_))+(o?"":X3e(e,v,g,m,b)):bI(n,(s?"":f)+(a?"":Z3e(h,!s,_))+(o?"":Y3e(v,g,m,b)),r)}}function HV(e,t,r,n,i,a){if(e){var o=HJ(e),s={useUTC:i,renderMode:r,orderMode:n,markupStyleCreator:t,valueFormatter:e.valueFormatter};return o(s,e,0,a)}}function U3e(e){return{html:V3e[e],richText:G3e[e]}}function bI(e,t,r){var n='
',i="margin: "+r+"px 0 0",a=GJ(e);return'
'+t+n+"
"}function Z3e(e,t,r){var n=t?"margin-left:2px":"";return''+On(e)+""}function Y3e(e,t,r,n){var i=r?"10px":"20px",a=t?"float:right;margin-left:"+i:"";return e=ie(e)?e:[e],''+se(e,function(o){return On(o)}).join("  ")+""}function ZJ(e,t,r){return e.markupStyleCreator.wrapRichTextStyle(t,r)}function X3e(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(ie(t)?t.join(" "):t,a)}function YJ(e,t){var r=e.getData().getItemVisual(t,"style"),n=r[e.visualDrawType];return lf(n)}function XJ(e,t){var r=e.get("padding");return r??(t==="richText"?[8,10]:10)}var T2=function(){function e(){this.richTextStyles={},this._nextStyleNameId=rQ()}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=uJ({color:r,type:t,renderMode:n,markerId:i});return ve(a)?a:(this.richTextStyles[i]=a.style,a.content)},e.prototype.wrapRichTextStyle=function(t,r){var n={};ie(r)?R(r,function(a){return re(n,a)}):re(n,r);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},e}();function qJ(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=ie(s),u=YJ(t,r),c,f,h,d;if(o>1||l&&!o){var v=q3e(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=Qd(i,r,a[0]),f=g.type}else d=c=l?s[0]:s;var m=fN(t),y=m&&t.name||"",_=i.getName(r),b=n?y:_;return Ar("section",{header:y,noHeader:n||!m,sortParam:d,blocks:[Ar("nameValue",{markerType:"item",markerColor:u,name:b,noName:!Ci(b),value:c,valueType:f,dataIndex:r})].concat(h||[])})}function q3e(e,t,r,n,i){var a=t.getData(),o=ha(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(Qd(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 il=Je();function Zx(e,t){return e.getName(t)||e.getId(t)}var lb="__universalTransitionEnabled",St=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=qg({count:Q3e,reset:J3e}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(r,i);var a=il(this).sourceManager=new VJ(this);a.prepareSource();var o=this.getInitialData(r,i);ZV(o,this),this.dataTask.context.data=o,il(this).dataBeforeProcessed=o,UV(this),this._initSelectedMapFromData(o)},t.prototype.mergeDefaultAndTheme=function(r,n){var i=yy(this),a=i?Tf(r):{},o=this.subType;Qe.hasClass(o)&&(o+="Series"),He(r,n.getTheme().get(this.subType)),He(r,this.getDefaultOption()),tf(r,"label",["show"]),this.fillDataTextStyle(r.data),i&&Fo(r,a,i)},t.prototype.mergeOption=function(r,n){r=He(this.option,r,!0),this.fillDataTextStyle(r.data);var i=yy(this);i&&Fo(this.option,r,i);var a=il(this).sourceManager;a.dirty(),a.prepareSource();var o=this.getInitialData(r,n);ZV(o,this),this.dataTask.dirty(),this.dataTask.context.data=o,il(this).dataBeforeProcessed=o,UV(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=y,d=0),y===h&&(c[d++]=g))}),c.length=d,c},t.prototype.formatTooltip=function(r,n,i){return qJ({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=YN.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[Zx(a,r)])&&!a.getItemModel(r).get(["select","disabled"])},t.prototype.isUniversalTransitionEnabled=function(){if(this[lb])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 Qe.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}(Qe);fr(St,OT);fr(St,YN);hQ(St,Qe);function UV(e){var t=e.name;fN(e)||(e.name=K3e(e)||t)}function K3e(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 Q3e(e){return e.model.getRawData().count()}function J3e(e){var t=e.model;return t.setData(t.getRawData().cloneShallow()),eze}function eze(e,t){t.outputData&&e.end>t.outputData.count()&&t.model.getRawData().cloneShallow(t.outputData)}function ZV(e,t){R(Hd(e.CHANGABLE_METHODS,e.DOWNSAMPLE_METHODS),function(r){e.wrapMethod(r,ze(tze,t))})}function tze(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 Me,this.uid=Bv("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}();dN(Lt);xT(Lt);function Fv(){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 KJ=Je(),rze=Fv(),_t=function(){function e(){this.group=new Me,this.uid=Bv("viewChart"),this.renderTask=qg({plan:nze,reset:ize}),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&&XV(a,i,"emphasis")},e.prototype.downplay=function(t,r,n,i){var a=t.getData(i&&i.dataType);a&&XV(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){yu(this.group,t)},e.markUpdateMethod=function(t,r){KJ(t).updateMethod=r},e.protoInitialize=function(){var t=e.prototype;t.type="chart"}(),e}();function YV(e,t,r){e&&py(e)&&(t==="emphasis"?$s:Fs)(e,r)}function XV(e,t,r){var n=rf(e,t),i=t&&t.highlightKey!=null?k5e(t.highlightKey):null;n!=null?R(Pt(n),function(a){YV(e.getItemGraphicEl(a),r,i)}):e.eachItemGraphicEl(function(a){YV(a,r,i)})}dN(_t);xT(_t);function nze(e){return rze(e.model)}function ize(e){var t=e.model,r=e.ecModel,n=e.api,i=e.payload,a=t.pipelineContext.progressiveRender,o=e.view,s=i&&KJ(i).updateMethod,l=a?"incrementalPrepareRender":s&&o[s]?s:"render";return l!=="render"&&o[l](t,r,n,i),aze[l]}var aze={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)}}},vw="\0__throttleOriginMethod",qV="\0__throttleRate",KV="\0__throttleType";function DT(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 Vv(e,t,r,n){var i=e[t];if(i){var a=i[vw]||i,o=i[KV],s=i[qV];if(s!==r||o!==n){if(r==null||!n)return e[t]=a;i=e[t]=DT(a,r,n==="debounce"),i[vw]=a,i[KV]=n,i[qV]=r}return i}}function _y(e,t){var r=e[t];r&&r[vw]&&(r.clear&&r.clear(),e[t]=r[vw])}var QV=Je(),JV={itemStyle:nf(eJ,!0),lineStyle:nf(JQ,!0)},oze={lineStyle:"stroke",itemStyle:"fill"};function QJ(e,t){var r=e.visualStyleMapper||JV[t];return r||(console.warn("Unknown style type '"+t+"'."),JV.itemStyle)}function JJ(e,t){var r=e.visualDrawType||oze[t];return r||(console.warn("Unknown style type '"+t+"'."),"fill")}var sze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=e.getModel(n),a=QJ(e,n),o=a(i),s=i.getShallow("decal");s&&(r.setVisual("decal",s),s.dirty=!0);var l=JJ(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 g=e.getDataParams(v),m=re({},o);m[l]=c(g),d.setItemVisual(v,"style",m)}}}},Np=new tt,lze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){if(!(e.ignoreStyleOnData||t.isSeriesFiltered(e))){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=QJ(e,n),a=r.getVisual("drawType");return{dataEach:r.hasItemOption?function(o,s){var l=o.getRawDataItem(s);if(l&&l[n]){Np.option=l[n];var u=i(Np),c=o.ensureUniqueItemVisual(s,"style");re(c,u),Np.option.decal&&(o.setItemVisual(s,"decal",Np.option.decal),Np.option.decal.dirty=!0),a in u&&o.setItemVisual(s,"colorFromPalette",!1)}}:null}}}},uze={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)),QV(r).scope=a}}),e.eachSeries(function(r){if(!(r.isColorBySeries()||e.isSeriesFiltered(r))){var n=r.getRawData(),i={},a=r.getData(),o=QV(r).scope,s=r.visualStyleAccessPath||"itemStyle",l=JJ(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)}})}})}},Yx=Math.PI;function cze(e,t){t=t||{},Pe(t,{text:"loading",textColor:K.color.primary,fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255,255,255,0.8)",showSpinner:!0,color:K.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 u0({shape:{startAngle:-Yx/2,endAngle:-Yx/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:Yx*3/2}).start("circularInOut"),o.animateShape(!0).when(1e3,{startAngle:Yx*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 eee=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="";_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(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,y){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)||qg({plan:pze,reset:gze,count:yze}));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||qg({reset:fze});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="";_n(!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,y=l.set(m,s&&s.get(m)||(h=!0,qg({reset:hze,onDirty:vze})));y.context={model:g,overallProgress:f},y.agent=o,y.__block=f,a._pipe(g,y)}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:xze(t)}),t.uid=Bv("stageHandler"),r&&(t.visualType=r),t},e}();function fze(e){e.overallReset(e.ecModel,e.api,e.payload)}function hze(e){return e.overallProgress&&dze}function dze(){this.agent.dirty(),this.getDownstream().dirty()}function vze(){this.agent&&this.agent.dirty()}function pze(e){return e.plan?e.plan(e.model,e.ecModel,e.api,e.payload):null}function gze(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 tee(n)}):mze}var mze=tee(0);function tee(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}(),SI=["symbol","symbolSize","symbolRotate","symbolOffset"],t6=SI.concat(["symbolKeepAspect"]),wze={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&&Pc(l)?l:.5;var u=e.createRadialGradient(o,s,0,o,s,l);return u}function TI(e,t,r){for(var n=t.type==="radial"?Rze(e,t,r):jze(e,t,r),i=t.colorStops,a=0;a0)?null:e==="dashed"?[4*t,2*t]:e==="dotted"?[t]:ot(e)?[e]:ie(e)?e:null}function tj(e){var t=e.style,r=t.lineDash&&t.lineWidth>0&&zze(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 $ze=new $o(!0);function mw(e){var t=e.stroke;return!(t==null||t==="none"||!(e.lineWidth>0))}function r6(e){return typeof e=="string"&&e!=="none"}function yw(e){var t=e.fill;return t!=null&&t!=="none"}function n6(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 i6(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 AI(e,t,r){var n=vN(t.image,t.__image,r);if(_T(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)*zg),a.scaleSelf(t.scaleX||1,t.scaleY||1),i.setTransform(a)}return i}}function Fze(e,t,r,n){var i,a=mw(r),o=yw(r),s=r.strokePercent,l=s<1,u=!t.path;(!t.silent||l)&&u&&t.createPathProxy();var c=t.path||$ze,f=t.__dirty;if(!n){var h=r.fill,d=r.stroke,v=o&&!!h.colorStops,g=a&&!!d.colorStops,m=o&&!!h.image,y=a&&!!d.image,_=void 0,b=void 0,S=void 0,T=void 0,A=void 0;(v||g)&&(A=t.getBoundingRect()),v&&(_=f?TI(e,h,A):t.__canvasFillGradient,t.__canvasFillGradient=_),g&&(b=f?TI(e,d,A):t.__canvasStrokeGradient,t.__canvasStrokeGradient=b),m&&(S=f||!t.__canvasFillPattern?AI(e,h,t):t.__canvasFillPattern,t.__canvasFillPattern=S),y&&(T=f||!t.__canvasStrokePattern?AI(e,d,t):t.__canvasStrokePattern,t.__canvasStrokePattern=T),v?e.fillStyle=_:m&&(S?e.fillStyle=S:o=!1),g?e.strokeStyle=b:y&&(T?e.strokeStyle=T:a=!1)}var M=t.getGlobalScale();c.setScale(M[0],M[1],t.segmentIgnoreThreshold);var P,k;e.setLineDash&&r.lineDash&&(i=tj(t),P=i[0],k=i[1]);var I=!0;(u||f&_h)&&(c.setDPR(e.dpr),l?c.setContext(null):(c.setContext(e),I=!1),c.reset(),t.buildPath(c,t.shape,n),c.toStatic(),t.pathUpdated()),I&&c.rebuildPath(e,l?s:1),P&&(e.setLineDash(P),e.lineDashOffset=k),n||(r.strokeFirst?(a&&i6(e,r),o&&n6(e,r)):(o&&n6(e,r),a&&i6(e,r))),P&&e.setLineDash([])}function Vze(e,t,r){var n=t.__image=vN(r.image,t.__image,t,t.onload);if(!(!n||!_T(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 Gze(e,t,r){var n,i=r.text;if(i!=null&&(i+=""),i){e.font=r.font||Bs,e.textAlign=r.textAlign,e.textBaseline=r.textBaseline;var a=void 0,o=void 0;e.setLineDash&&r.lineDash&&(n=tj(t),a=n[0],o=n[1]),a&&(e.setLineDash(a),e.lineDashOffset=o),r.strokeFirst?(mw(r)&&e.strokeText(i,r.x,r.y),yw(r)&&e.fillText(i,r.x,r.y)):(yw(r)&&e.fillText(i,r.x,r.y),mw(r)&&e.strokeText(i,r.x,r.y)),a&&e.setLineDash([])}}var a6=["shadowBlur","shadowOffsetX","shadowOffsetY"],o6=[["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){ai(e,i),a=!0;var o=Math.max(Math.min(t.opacity,1),0);e.globalAlpha=isNaN(o)?jc.opacity:o}(n||t.blend!==r.blend)&&(a||(ai(e,i),a=!0),e.globalCompositeOperation=t.blend||jc.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(Le(n)&&(i=n.lazyUpdate,a=n.silent,o=n.replaceMerge,s=n.transition,n=n.notMerge),this[Pr]=!0,ih(this),!this._model||n){var l=new n3e(this._api),u=this._theme,c=this._model=new XN;c.scheduler=this._scheduler,c.ssr=this._ssr,c.init(null,null,null,u,this._locale,l)}this._model.setOption(r,{replaceMerge:o},LI);var f={seriesTransition:s,optionChanged:!0};if(i)this[Qr]={silent:a,updateParams:f},this[Pr]=!1,this.getZr().wakeUp();else{try{Xu(this),rs.update.call(this,null,f)}catch(h){throw this[Qr]=null,this[Pr]=!1,h}this._ssr||this._zr.flush(),this[Qr]=null,this[Pr]=!1,rh.call(this,a),nh.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[Qr]&&(a==null&&(a=this[Qr].silent),o=this[Qr].updateParams,this[Qr]=null),this[Pr]=!0,ih(this);try{this._updateTheme(r),i.setTheme(this._theme),Xu(this),rs.update.call(this,{type:"setTheme"},o)}catch(s){throw this[Pr]=!1,s}this[Pr]=!1,rh.call(this,a),nh.call(this,a)}}},t.prototype._updateTheme=function(r){ve(r)&&(r=Cee[r]),r&&(r=Ce(r),r&&LJ(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(ww[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(Ce(r)),A=b.getDom().getBoundingClientRect();l=a(A.left,l),u=a(A.top,u),c=o(A.right,c),f=o(A.bottom,f),h.push({dom:T,left:A.left,top:A.top})}}),l*=d,u*=d,c*=d,f*=d;var v=c-l,g=f-u,m=hi.createCanvas(),y=Zk(m,{renderer:n?"svg":"canvas"});if(y.resize({width:v,height:g}),n){var _="";return R(h,function(b){var S=b.left-l,T=b.top-u;_+=''+b.dom+""}),y.painter.getSvgRoot().innerHTML=_,r.connectedBackgroundColor&&y.painter.setBackgroundColor(r.connectedBackgroundColor),y.refreshImmediately(),y.painter.toDataURL()}else return r.connectedBackgroundColor&&y.add(new Xe({shape:{x:0,y:0,width:v,height:g},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}});y.add(S)}),y.refreshImmediately(),m.toDataURL("image/"+(r&&r.type||"png"))}else return this.getDataURL(r)},t.prototype.convertToPixel=function(r,n,i){return Qx(this,"convertToPixel",r,n,i)},t.prototype.convertToLayout=function(r,n,i){return Qx(this,"convertToLayout",r,n,i)},t.prototype.convertFromPixel=function(r,n,i){return Qx(this,"convertFromPixel",r,n,i)},t.prototype.containPixel=function(r,n){if(this._disposed){this.id;return}var i=this._model,a,o=sd(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=sd(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?ej(s,l,n):v0(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(p4e,function(i){var a=function(o){var s=r.getModel(),l=o.target,u,c=i==="globalout";if(c?u={}:l&&Mc(l,function(g){var m=De(g);if(m&&m.dataIndex!=null){var y=m.dataModel||s.getSeriesByIndex(m.seriesIndex);return u=y&&y.getDataParams(m.dataIndex,m.dataType,l)||{},!0}else if(m.eventData)return u=re({},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(MI,function(i,a){n.on(a,function(o){r.trigger(a,o)})}),Tze(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&&uQ(this.getDom(),aj,"");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[Qr]&&(a==null&&(a=this[Qr].silent),i=!0,this[Qr]=null),this[Pr]=!0,ih(this);try{i&&Xu(this),rs.update.call(this,{type:"resize",animation:re({duration:0},r&&r.animation)})}catch(o){throw this[Pr]=!1,o}this[Pr]=!1,rh.call(this,a),nh.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(),!!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=re({},r);return n.type=CI[r.type],n},t.prototype.dispatchAction=function(r,n){if(this._disposed){this.id;return}if(Le(n)||(n={silent:!!n}),!!_w[r.type]&&this._model){if(this[Pr]){this._pendingActions.push(r);return}var i=n.silent;k2.call(this,r,i);var a=n.flush;a?this._zr.flush():a!==!1&&nt.browser.weChat&&this._throttledZrFlush(),rh.call(this,i),nh.call(this,i)}},t.prototype.updateLabelLayout=function(){Pa.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(){Xu=function(f){var h=f._scheduler;h.restorePipelines(f._model),h.prepareStageTasks(),P2(f,!0),P2(f,!1),h.plan()},P2=function(f,h){for(var d=f._model,v=f._scheduler,g=h?f._componentsViews:f._chartsViews,m=h?f._componentsMap:f._chartsMap,y=f._zr,_=f._api,b=0;bh.get("hoverLayerThreshold")&&!nt.node&&!nt.worker&&h.eachSeries(function(m){if(!m.preventUsingHoverLayer){var y=f._chartsMap[m.__viewId];y.__alive&&y.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=sf(f);h.eachRendered(function(v){return PT(v,d.z,d.zlevel),!0})}}function u(f,h){h.eachRendered(function(d){if(!ld(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(y){if(y.states&&y.states.emphasis){if(ld(y))return;if(y instanceof rt&&I5e(y),y.__dirty){var _=y.prevStates;_&&y.useStates(_)}if(v){y.stateTransition=m;var b=y.getTextContent(),S=y.getTextGuideLine();b&&(b.stateTransition=m),S&&(S.stateTransition=m)}y.__dirty&&a(y)}})}x6=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){$s(v,g),Gi(f)},d.prototype.leaveEmphasis=function(v,g){Fs(v,g),Gi(f)},d.prototype.enterBlur=function(v){MQ(v),Gi(f)},d.prototype.leaveBlur=function(v){_N(v),Gi(f)},d.prototype.enterSelect=function(v){PQ(v),Gi(f)},d.prototype.leaveSelect=function(v){LQ(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[qx]},d}(MJ))(f)},Aee=function(f){function h(d,v){for(var g=0;g=0)){b6.push(r);var a=eee.wrapStageHandler(r,i);a.__prio=t,a.__raw=r,e.push(a)}}function fj(e,t){kI[e]=t}function A4e(e){vK({createCanvas:e})}function Oee(e,t,r){var n=dee("registerMap");n&&n(e,t,r)}function C4e(e){var t=dee("getMap");return t&&t(e)}var Eee=N3e;_u(nj,sze);_u(NT,lze);_u(NT,uze);_u(nj,wze);_u(NT,Sze);_u(yee,Kze);lj(LJ);uj(i4e,p3e);fj("default",cze);Ka({type:Rc,event:Rc,update:Rc},lr);Ka({type:rb,event:rb,update:rb},lr);Ka({type:sw,event:yN,update:sw,action:lr,refineEvent:hj,publishNonRefinedEvent:!0});Ka({type:nI,event:yN,update:nI,action:lr,refineEvent:hj,publishNonRefinedEvent:!0});Ka({type:lw,event:yN,update:lw,action:lr,refineEvent:hj,publishNonRefinedEvent:!0});function hj(e,t,r,n){return{eventContent:{selected:C5e(r),isFromClick:t.isFromClick||!1}}}sj("default",{});sj("dark",iee);var M4e={},w6=[],P4e={registerPreprocessor:lj,registerProcessor:uj,registerPostInit:Pee,registerPostUpdate:Lee,registerUpdateLifecycle:jT,registerAction:Ka,registerCoordinateSystem:kee,registerLayout:Iee,registerVisual:_u,registerTransform:Eee,registerLoading:fj,registerMap:Oee,registerImpl:Qze,PRIORITY:xee,ComponentModel:Qe,ComponentView:Lt,SeriesModel:St,ChartView:_t,registerComponentModel:function(e){Qe.registerClass(e)},registerComponentView:function(e){Lt.registerClass(e)},registerSeriesModel:function(e){St.registerClass(e)},registerChartView:function(e){_t.registerClass(e)},registerCustomSeries:function(e,t){pee(e,t)},registerSubTypeDefaulter:function(e,t){Qe.registerSubTypeDefaulter(e,t)},registerPainter:function(e,t){XK(e,t)}};function Ze(e){if(ie(e)){R(e,function(t){Ze(t)});return}Ge(w6,e)>=0||(w6.push(e),Ae(e)&&(e={install:e}),e.install(P4e))}function Rp(e){return e==null?0:e.length||1}function S6(e){return e}var Vs=function(){function e(t,r,n,i,a,o){this._old=t,this._new=r,this._oldKeyGetter=n||S6,this._newKeyGetter=i||S6,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 Bp=Le,al=se,D4e=typeof Int32Array>"u"?Array:Int32Array,N4e="e\0\0",T6=-1,j4e=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],R4e=["_approximateExtent"],A6,e_,zp,$p,E2,Fp,D2,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;Nee(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),ie(a)?a=a.slice():Bp(a)&&(a=re({},a)),i[r]=a),a},e.prototype.setItemVisual=function(t,r,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,Bp(r)?re(i,r):i[r]=n},e.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},e.prototype.setLayout=function(t,r){Bp(t)?re(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?re(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;rI(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:al(this.dimensions,this._getDimInfo,this),this.hostModel)),E2(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(hT(arguments)))})},e.internalField=function(){A6=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 D4e(o.categories.length);for(var l=0;l1&&(l+="__ec__"+c),i[r]=l}}}(),e}();function B4e(e,t){return Wv(e,t).dimensions}function Wv(e,t){qN(e)||(e=KN(e)),t=t||{};var r=t.coordDimensions||[],n=t.dimensionsDefine||e.dimensionsDefine||[],i=_e(),a=[],o=$4e(e,r,n,t.dimensionsCount),s=t.canOmitUnusedDimensions&&Bee(o),l=n===e.dimensionsDefine,u=l?Ree(e):jee(n),c=t.encodeDefine;!c&&t.encodeDefaulter&&(c=t.encodeDefaulter(e,o));for(var f=_e(c),h=new $J(o),d=0;d0&&(n.name=i+(a-1)),a++,t.set(i,a)}}function $4e(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 F4e(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 V4e=function(){function e(t){this.coordSysDims=[],this.axisMap=_e(),this.categoryAxisMap=_e(),this.coordSysName=t}return e}();function G4e(e){var t=e.get("coordinateSystem"),r=new V4e(t),n=W4e[t];if(n)return n(e,r,r.axisMap,r.categoryAxisMap),r}var W4e={cartesian2d:function(e,t,r,n){var i=e.getReferringComponents("xAxis",tr).models[0],a=e.getReferringComponents("yAxis",tr).models[0];t.coordSysDims=["x","y"],r.set("x",i),r.set("y",a),ah(i)&&(n.set("x",i),t.firstCategoryDimIndex=0),ah(a)&&(n.set("y",a),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},singleAxis:function(e,t,r,n){var i=e.getReferringComponents("singleAxis",tr).models[0];t.coordSysDims=["single"],r.set("single",i),ah(i)&&(n.set("single",i),t.firstCategoryDimIndex=0)},polar:function(e,t,r,n){var i=e.getReferringComponents("polar",tr).models[0],a=i.findAxisModel("radiusAxis"),o=i.findAxisModel("angleAxis");t.coordSysDims=["radius","angle"],r.set("radius",a),r.set("angle",o),ah(a)&&(n.set("radius",a),t.firstCategoryDimIndex=0),ah(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),ah(u)&&(n.set(c,u),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=l))})},matrix:function(e,t,r,n){var i=e.getReferringComponents("matrix",tr).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 ah(e){return e.get("type")==="category"}function zee(e,t,r){r=r||{};var n=r.byIndex,i=r.stackedCoordDimension,a,o,s;H4e(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){ve(_)&&(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},y={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),y.storeDimIndex=s.ensureCalculationDimension(f,v)),o.appendCalculationDimension(m),o.appendCalculationDimension(y)):(a.push(m),a.push(y))}return{stackedDimension:c&&c.name,stackedByDimension:u&&u.name,isStackedByIndex:n,stackedOverDimension:h,stackResultDimension:f}}function H4e(e){return!Nee(e.schema)}function Gs(e,t){return!!t&&t===e.getCalculationInfo("stackedDimension")}function dj(e,t){return Gs(e,t)?e.getCalculationInfo("stackResultDimension"):t}function U4e(e,t){var r=e.get("coordinateSystem"),n=$v.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=Sw(l)}return o})),i||(i=n&&(n.getDimensionsInfo?n.getDimensionsInfo():n.dimensions.slice())||["x","y"]),i}function Z4e(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 Yo(e,t,r){r=r||{};var n=t.getSourceManager(),i,a=!1;e?(a=!0,i=KN(e)):(i=n.getSource(),a=i.sourceFormat===Ni);var o=G4e(t),s=U4e(t,o),l=r.useEncodeDefaulter,u=Ae(l)?l:l?ze(SJ,s,t):null,c={coordDimensions:s,generateCoord:r.generateCoord,encodeDefine:t.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!a},f=Wv(i,c),h=Z4e(f.dimensions,r.createInvertedIndices,o),d=a?null:n.getSharedDataStore(f),v=zee(t,{schema:f,store:d}),g=new Dn(f,t);g.setCalculationInfo(v);var m=h!=null&&Y4e(i)?function(y,_,b,S){return S===h?b:this.defaultDimValueGetter(y,_,b,S)}:null;return g.hasItemOption=!1,g.initData(a?i:d,null,m),g}function Y4e(e){if(e.sourceFormat===Ni){var t=X4e(e.data||[]);return!ie(kv(t))}}function X4e(e){for(var t=0;ti&&(o=a.interval=i);var s=a.intervalPrecision=Sy(o),l=a.niceTickExtent=[mr(Math.ceil(e[0]/o)*o,s),mr(Math.floor(e[1]/o)*o,s)];return K4e(l,e),a}function N2(e){var t=Math.pow(10,yT(e)),r=e/t;return r?r===2?r=3:r===3?r=5:r*=2:r=1,mr(r*t)}function Sy(e){return Ra(e)+2}function C6(e,t,r){e[t]=Math.max(Math.min(e[t],r[1]),r[0])}function K4e(e,t){!isFinite(e[0])&&(e[0]=t[0]),!isFinite(e[1])&&(e[1]=t[1]),C6(e,0,t),C6(e,1,t),e[0]>e[1]&&(e[0]=e[1])}function vj(e,t){return e>=t[0]&&e<=t[1]}var Q4e=function(){function e(){this.normalize=M6,this.scale=P6}return e.prototype.updateMethods=function(t){t.hasBreaks()?(this.normalize=pe(t.normalize,t),this.scale=pe(t.scale,t)):(this.normalize=M6,this.scale=P6)},e}();function M6(e,t){return t[1]===t[0]?.5:(e-t[0])/(t[1]-t[0])}function P6(e,t){return e*(t[1]-t[0])+t[0]}function OI(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 bu=function(){function e(t){this._calculator=new Q4e,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,pe(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}();xT(bu);var J4e=0,Ty=function(){function e(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++J4e,this._onCollect=t.onCollect}return e.createByAxisModel=function(t){var r=t.option,n=r.data,i=n&&se(n,e$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(!ve(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 e$e(e){return Le(e)&&e.value!=null?e.value:e+""}var ev=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 Ty({})),ie(i)&&(i=new Ty({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:ve(r)?this._ordinalMeta.getOrdinal(r):Math.round(r)},t.prototype.contain=function(r){return vj(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}(bu);bu.registerClass(ev);var ol=mr,Ws=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 vj(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=Sy(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=ol(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:ol(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 Gee(e){var t=n$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=de(n.get("barWidth"),s),g=de(n.get("barMaxWidth"),s),m=de(n.get("barMinWidth")||(Yee(n)?.5:1),s),y=n.get("barGap"),_=n.get("barCategoryGap"),b=n.get("defaultBarGap");r.push({bandWidth:s,barWidth:v,barMaxWidth:g,barMinWidth:m,barGap:y,barCategoryGap:_,defaultBarGap:b,axisKey:pj(a),stackId:Fee(n)})}),Wee(r)}function Wee(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=de(s,o),c=de(n.gap,1),f=n.remainedWidth,h=n.autoWidthCount,d=(f-u)/(h+(h-1)*c);d=Math.max(d,0),R(a,function(y){var _=y.maxWidth,b=y.minWidth;if(y.width){var S=y.width;_&&(S=Math.min(S,_)),b&&(S=Math.max(S,b)),y.width=S,f-=S+c*S,h--}else{var S=d;_&&_S&&(S=b),S!==d&&(y.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(y,_){y.width||(y.width=d),g=y,v+=y.width*(1+c)}),g&&(v-=g.width*c);var m=-v/2;R(a,function(y,_){r[i][_]=r[i][_]||{bandWidth:o,offset:m,width:y.width},m+=y.width*(1+c)})}),r}function i$e(e,t,r){if(e&&t){var n=e[pj(t)];return n}}function Hee(e,t){var r=Vee(e,t),n=Gee(r);R(r,function(i){var a=i.getData(),o=i.coordinateSystem,s=o.getBaseAxis(),l=Fee(i),u=n[pj(s)][l],c=u.offset,f=u.width;a.setLayout({bandWidth:u.bandWidth,offset:c,size:f})})}function Uee(e){return{seriesType:e,plan:Fv(),reset:function(t){if(Zee(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=Gs(r,u)&&!!r.getCalculationInfo("stackedOnSeries"),h=a.isHorizontal(),d=a$e(i,a),v=Yee(t),g=t.get("barMinHeight")||0,m=c&&r.getDimensionIndex(c),y=r.getLayout("size"),_=r.getLayout("offset");return{progress:function(b,S){for(var T=b.count,A=v&&So(T*3),M=v&&l&&So(T*3),P=v&&So(T),k=n.master.getRect(),I=h?k.width:k.height,O,D=S.getStore(),N=0;(O=b.next())!=null;){var B=D.get(f?m:o,O),F=D.get(s,O),$=d,U=void 0;f&&(U=+B-D.get(o,O));var z=void 0,V=void 0,W=void 0,Y=void 0;if(h){var Z=n.dataToPoint([B,F]);if(f){var J=n.dataToPoint([U,F]);$=J[0]}z=$,V=Z[1]+_,W=Z[0]-$,Y=y,Math.abs(W)0?r:1:r))}var o$e=function(e,t,r,n){for(;r>>1;e[i][1]i&&(this._approxInterval=i);var o=t_.length,s=Math.min(o$e(t_,this._approxInterval,0,o),o-1);this._interval=t_[s][1],this._intervalPrecision=Sy(this._interval),this._minLevelUnit=t_[Math.max(s-1,0)][0]},t.prototype.parse=function(r){return ot(r)?r:+Uo(r)},t.prototype.contain=function(r){return vj(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}(Ws),t_=[["second",DN],["minute",NN],["hour",Yg],["quarter-day",Yg*6],["half-day",Yg*12],["day",ta*1.2],["half-week",ta*3.5],["week",ta*7],["month",ta*31],["quarter",ta*95],["half-year",yV/2],["year",yV]];function Xee(e,t,r,n){return hw(new Date(t),e,n).getTime()===hw(new Date(r),e,n).getTime()}function s$e(e,t){return e/=ta,e>16?16:e>7.5?7:e>3.5?4:e>1.5?2:1}function l$e(e){var t=30*ta;return e/=t,e>6?6:e>3?3:e>2?2:1}function u$e(e){return e/=Yg,e>12?12:e>6?6:e>3.5?4:e>2?2:1}function L6(e,t){return e/=t?NN:DN,e>30?30:e>20?20:e>15?15:e>10?10:e>5?5:e>2?2:1}function c$e(e){return uN(e,!0)}function f$e(e,t,r){var n=Math.max(0,Ge(_i,t)-1);return hw(new Date(e),_i[n],r).getTime()}function h$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 d$e(e,t,r,n,i,a){var o=1e4,s=ABe,l=0;function u(N,B,F,$,U,z,V){for(var W=h$e(U,N),Y=B,Z=new Date(Y);Yo));)if(Z[U](Z[$]()+N),Y=Z.getTime(),a){var J=a.calcNiceTickMultiple(Y,W);J>0&&(Z[U](Z[$]()+J*N),Y=Z.getTime())}V.push({value:Y,notAdd:!0})}function c(N,B,F){var $=[],U=!B.length;if(!Xee(Xg(N),n[0],n[1],r)){U&&(B=[{value:f$e(n[0],N,r)},{value:n[1]}]);for(var z=0;z=n[0]&&V<=n[1]&&u(Y,V,W,Z,J,ae,$),N==="year"&&F.length>1&&z===0&&F.unshift({value:F[0].value-Y})}}for(var z=0;z<$.length;z++)F.push($[z])}}for(var f=[],h=[],d=0,v=0,g=0;g=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 A=ht(se(f,function(N){return ht(N,function(B){return B.value>=n[0]&&B.value<=n[1]&&!B.notAdd})}),function(N){return N.length>0}),M=[],P=A.length-1,g=0;g0;)a*=10;var s=[DI(p$e(n[0]/a)*a),DI(v$e(n[1]/a)*a)];this._interval=a,this._intervalPrecision=Sy(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=n_(r)/n_(this.base),e.prototype.contain.call(this,r)},t.prototype.normalize=function(r){return r=n_(r)/n_(this.base),e.prototype.normalize.call(this,r)},t.prototype.scale=function(r){return r=e.prototype.scale.call(this,r),r_(this.base,r)},t.prototype.setBreaksFromOption=function(r){var n=Sr();if(n){var i=n.logarithmicParseBreaksFromOption(r,this.base,pe(this.parse,this)),a=i.parsedOriginal,o=i.parsedLogged;this._originalScale._innerSetBreak(a),this._innerSetBreak(o)}},t.type="log",t}(Ws);function i_(e,t){return DI(e,Ra(t))}bu.registerClass(qee);var g$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[y$e[t]]=r},e.prototype.setDeterminedMinMax=function(t,r){var n=m$e[t];this[n]=r},e.prototype.freeze=function(){this.frozen=!0},e}(),m$e={min:"_determinedMin",max:"_determinedMax"},y$e={min:"_dataMin",max:"_dataMax"};function Kee(e,t,r){var n=e.rawExtentInfo;return n||(n=new g$e(e,t,r),e.rawExtentInfo=n,n)}function a_(e,t){return t==null?null:mn(t)?NaN:e.parse(t)}function Qee(e,t){var r=e.type,n=Kee(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=Vee("bar",o),l=!1;if(R(s,function(f){l=l||f.getBaseAxis()===t.axis}),l){var u=Gee(s),c=x$e(i,a,t,u);i=c.min,a=c.max}}return{extent:[i,a],fixMin:n.minFixed,fixMax:n.maxFixed}}function x$e(e,t,r,n){var i=r.axis.getExtent(),a=Math.abs(i[1]-i[0]),o=i$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 uf(e,t){var r=t,n=Qee(e,r),i=n.extent,a=r.get("splitNumber");e instanceof qee&&(e.base=r.get("logBase"));var o=e.type,s=r.get("interval"),l=o==="interval"||o==="time";e.setBreaksFromOption(ete(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 p0(e,t){if(t=t||e.get("type"),t)switch(t){case"category":return new ev({ordinalMeta:e.getOrdinalMeta?e.getOrdinalMeta():e.getCategories(),extent:[1/0,-1/0]});case"time":return new gj({locale:e.ecModel.getLocaleModel(),useUTC:e.ecModel.get("useUTC")});default:return new(bu.getClass(t)||Ws)}}function _$e(e){var t=e.scale.getExtent(),r=t[0],n=t[1];return!(r>0&&n>0||r<0&&n<0)}function Hv(e){var t=e.getLabelModel().get("formatter");if(e.type==="time"){var r=CBe(t);return function(i,a){return e.scale.getFormattedLabel(i,a,r)}}else{if(ve(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(Tw(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(Tw(e,i),a,o)}}else return function(i){return e.scale.getLabel(i)}}}function Tw(e,t){return e.type==="category"?e.scale.getLabel(t):t.value}function mj(e){var t=e.get("interval");return t??"auto"}function Jee(e){return e.type==="category"&&mj(e.getLabelModel())===0}function Aw(e,t){var r={};return R(e.mapDimensionsAll(t),function(n){r[dj(e,n)]=!0}),it(r)}function b$e(e,t,r){t&&R(Aw(t,r),function(n){var i=t.getApproximateExtent(n);i[0]e[1]&&(e[1]=i[1])})}function tv(e){return e==="middle"||e==="center"}function Ay(e){return e.getShallow("show")}function ete(e){var t=e.get("breaks",!0);if(t!=null)return!Sr()||!w$e(e.axis)?void 0:t}function w$e(e){return(e.dim==="x"||e.dim==="y"||e.dim==="z"||e.dim==="single")&&e.type!=="category"}var Uv=function(){function e(){}return e.prototype.getNeedCrossZero=function(){var t=this.option;return!t.scale},e.prototype.getCoordSysModel=function(){},e}();function S$e(e){return Yo(null,e)}var T$e={isDimensionStacked:Gs,enableDataStack:zee,getStackedDimension:dj};function A$e(e,t){var r=t;t instanceof tt||(r=new tt(t));var n=p0(r);return n.setExtent(e[0],e[1]),uf(n,r),n}function C$e(e){fr(e,Uv)}function M$e(e,t){return t=t||{},Mt(e,null,null,t.state!=="normal")}const P$e=Object.freeze(Object.defineProperty({__proto__:null,createDimensions:B4e,createList:S$e,createScale:A$e,createSymbol:xr,createTextStyle:M$e,dataStack:T$e,enableHoverEmphasis:Zl,getECData:De,getLayoutRect:$t,mixinAxisModelCommonMethods:C$e},Symbol.toStringTag,{value:"Module"}));var L$e=1e-8;function k6(e,t){return Math.abs(e-t)i&&(n=o,i=l)}if(n)return I$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"?I6(s.exterior,i,a,r):R(s.points,function(l){I6(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 NI(e,t){return e=E$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 O6(o[0],o.slice(1)));break;case"MultiPolygon":R(i.coordinates,function(l){l[0]&&a.push(new O6(l[0],l.slice(1)))});break;case"LineString":a.push(new E6([i.coordinates]));break;case"MultiLineString":a.push(new E6(i.coordinates))}var s=new rte(n[t||"name"],a,n.cp);return s.properties=n,s})}const D$e=Object.freeze(Object.defineProperty({__proto__:null,MAX_SAFE_INTEGER:Xk,asc:Mi,getPercentWithPrecision:Jje,getPixelPrecision:sN,getPrecision:Ra,getPrecisionSafe:JK,isNumeric:cN,isRadianAroundZero:Yd,linearMap:gt,nice:uN,numericToNumber:zo,parseDate:Uo,parsePercent:de,quantile:tb,quantity:tQ,quantityExponent:yT,reformIntervals:qk,remRadian:lN,round:mr},Symbol.toStringTag,{value:"Module"})),N$e=Object.freeze(Object.defineProperty({__proto__:null,format:h0,parse:Uo,roundTime:hw},Symbol.toStringTag,{value:"Module"})),j$e=Object.freeze(Object.defineProperty({__proto__:null,Arc:u0,BezierCurve:Dv,BoundingRect:Oe,Circle:Zo,CompoundPath:c0,Ellipse:l0,Group:Me,Image:Xr,IncrementalDisplayable:FQ,Line:yr,LinearGradient:wf,Polygon:wn,Polyline:on,RadialGradient:SN,Rect:Xe,Ring:Ev,Sector:bn,Text:at,clipPointsByRect:MN,clipRectByRect:UQ,createIcon:jv,extendPath:WQ,extendShape:GQ,getShapeClass:gy,getTransform:Yl,initProps:Nt,makeImage:AN,makePath:qd,mergePath:Ti,registerShape:xa,resizePath:CN,updateProps:lt},Symbol.toStringTag,{value:"Module"})),R$e=Object.freeze(Object.defineProperty({__proto__:null,addCommas:VN,capitalFirst:NBe,encodeHTML:On,formatTime:DBe,formatTpl:WN,getTextRect:OBe,getTooltipMarker:uJ,normalizeCssArray:zv,toCamelCase:GN,truncateText:ORe},Symbol.toStringTag,{value:"Module"})),B$e=Object.freeze(Object.defineProperty({__proto__:null,bind:pe,clone:Ce,curry:ze,defaults:Pe,each:R,extend:re,filter:ht,indexOf:Ge,inherits:JD,isArray:ie,isFunction:Ae,isObject:Le,isString:ve,map:se,merge:He,reduce:ha},Symbol.toStringTag,{value:"Module"}));var z$e=Je(),Kg=Je(),Ya={estimate:1,determine:2};function Cw(e){return{out:{noPxChangeTryDetermine:[]},kind:e}}function ite(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 $$e(e,t){var r=e.getLabelModel().get("customValues");if(r){var n=Hv(e),i=e.scale.getExtent(),a=ite(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"?V$e(e,t):W$e(e)}function F$e(e,t,r){var n=e.getTickModel().get("customValues");if(n){var i=e.scale.getExtent(),a=ite(e,n);return{ticks:ht(a,function(o){return o>=i[0]&&o<=i[1]})}}return e.type==="category"?G$e(e,t):{ticks:se(e.scale.getTicks(r),function(o){return o.value})}}function V$e(e,t){var r=e.getLabelModel(),n=ate(e,r,t);return!r.get("show")||e.scale.isBlank()?{labels:[]}:n}function ate(e,t,r){var n=U$e(e),i=mj(t),a=r.kind===Ya.estimate;if(!a){var o=ste(n,i);if(o)return o}var s,l;Ae(i)?s=cte(e,i):(l=i==="auto"?Z$e(e,r):i,s=ute(e,l));var u={labels:s,labelCategoryInterval:l};return a?r.out.noPxChangeTryDetermine.push(function(){return jI(n,i,u),!0}):jI(n,i,u),u}function G$e(e,t){var r=H$e(e),n=mj(t),i=ste(r,n);if(i)return i;var a,o;if((!t.get("show")||e.scale.isBlank())&&(a=[]),Ae(n))a=cte(e,n,!0);else if(n==="auto"){var s=ate(e,e.getLabelModel(),Cw(Ya.determine));o=s.labelCategoryInterval,a=se(s.labels,function(l){return l.tickValue})}else o=n,a=ute(e,o,!0);return jI(r,n,{ticks:a,tickCategoryInterval:o})}function W$e(e){var t=e.scale.getTicks(),r=Hv(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 H$e=ote("axisTick"),U$e=ote("axisLabel");function ote(e){return function(r){return Kg(r)[e]||(Kg(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 y=0,_=0,b=gT(i({value:f}),n.font,"center","top");y=b.width*1.3,_=b.height*1.3,g=Math.max(g,y,7),m=Math.max(m,_,7)}var S=g/d,T=m/v;isNaN(S)&&(S=1/0),isNaN(T)&&(T=1/0);var A=Math.max(0,Math.floor(Math.min(S,T)));if(r===Ya.estimate)return t.out.noPxChangeTryDetermine.push(pe(X$e,null,e,A,l)),A;var M=lte(e,A,l);return M??A}function X$e(e,t,r){return lte(e,t,r)==null}function lte(e,t,r){var n=z$e(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 q$e(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 ute(e,t,r){var n=Hv(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=Jee(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 y={value:m};s.push(r?m:{formattedLabel:n(y),rawLabel:i.getLabel(y),tickValue:m,time:void 0,break:void 0})}return s}function cte(e,t,r){var n=e.scale,i=Hv(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 D6=[0,1],_a=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(),N6(n,i.count())),gt(t,D6,n,r)},e.prototype.coordToData=function(t,r){var n=this._extent,i=this.scale;this.onBand&&i.type==="ordinal"&&(n=n.slice(),N6(n,i.count()));var a=gt(t,n,D6,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=F$e(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 K$e(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||Cw(Ya.determine),$$e(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||Cw(Ya.determine),Y$e(this,t)},e}();function N6(e,t){var r=e[1]-e[0],n=t,i=r/n/2;e[0]+=i,e[1]-=i}function K$e(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=mr(d),v=mr(v),f?d>v:di&&(i+=Vp);var d=Math.atan2(s,o);if(d<0&&(d+=Vp),d>=n&&d<=i||d+Vp>=n&&d+Vp<=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,y=r*Math.sin(i)+t,_=(v-o)*(v-o)+(g-s)*(g-s),b=(m-o)*(m-o)+(y-s)*(y-s);return _0){t=t/180*Math.PI,Ba.fromArray(e[0]),Ot.fromArray(e[1]),vr.fromArray(e[2]),Ie.sub(To,Ba,Ot),Ie.sub(yo,vr,Ot);var r=To.len(),n=yo.len();if(!(r<.001||n<.001)){To.scale(1/r),yo.scale(1/n);var i=To.dot(yo),a=Math.cos(t);if(a1&&Ie.copy(Vn,vr),Vn.toArray(e[1])}}}}function sFe(e,t,r){if(r<=180&&r>0){r=r/180*Math.PI,Ba.fromArray(e[0]),Ot.fromArray(e[1]),vr.fromArray(e[2]),Ie.sub(To,Ot,Ba),Ie.sub(yo,vr,Ot);var n=To.len(),i=yo.len();if(!(n<.001||i<.001)){To.scale(1/n),yo.scale(1/i);var a=To.dot(t),o=Math.cos(r);if(a=l)Ie.copy(Vn,vr);else{Vn.scaleAndAdd(yo,s/Math.tan(Math.PI/2-c));var f=vr.x!==Ot.x?(Vn.x-Ot.x)/(vr.x-Ot.x):(Vn.y-Ot.y)/(vr.y-Ot.y);if(isNaN(f))return;f<0?Ie.copy(Vn,Ot):f>1&&Ie.copy(Vn,vr)}Vn.toArray(e[1])}}}}function B2(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 lFe(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=ps(n[0],n[1]),a=ps(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=Fg([],n[1],n[0],o/i),l=Fg([],n[1],n[2],o/a),u=Fg([],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(I*k,0,a);var O=I+M;O<0&&T(-O*k,1)}else T(-M*k,1)}}function S(M,P,k){M!==0&&(c=!0);for(var I=P;I0)for(var O=0;O0;O--){var F=k[O-1]*B;S(-F,O,a)}}}function A(M){var P=M<0?-1:1;M=Math.abs(M);for(var k=Math.ceil(M/(a-1)),I=0;I0?S(k,0,I+1):S(-k,a-I-1,a),M-=k,M<=0)return}return c}function fFe(e){for(var t=0;t=0&&n.attr(a.oldLayoutSelect),Ge(h,"emphasis")>=0&&n.attr(a.oldLayoutEmphasis)),lt(n,u,r,l)}else if(n.attr(u),!Rv(n).valueAnimation){var f=be(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={};o_(d,u,s_),o_(d,n.states.select,s_)}if(n.states.emphasis){var v=a.oldLayoutEmphasis={};o_(v,u,s_),o_(v,n.states.emphasis,s_)}QQ(n,l,c,r,r)}if(i&&!i.ignore&&!i.invisible){var a=vFe(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,Nt(i,{style:{strokePercent:1}},r)),a.oldLayout=g}},e}(),F2=Je();function gFe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){var i=F2(r).labelManager;i||(i=F2(r).labelManager=new pFe),i.clearLabels()}),e.registerUpdateLifecycle("series:layoutlabels",function(t,r,n){var i=F2(r).labelManager;n.updatedSeries.forEach(function(a){i.addLabelsOfSeries(r.getViewOfSeriesModel(a))}),i.updateLayoutConfig(r),i.layout(r),i.processLabelsOverall()})}var V2=Math.sin,G2=Math.cos,mte=Math.PI,Ku=Math.PI*2,mFe=180/mte,yte=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=kl(f-Ku)||(c?u>=Ku:-u>=Ku),d=u>0?u%Ku:u%Ku+Ku,v=!1;h?v=!0:kl(f)?v=!1:v=d>=mte==!!c;var g=t+n*G2(o),m=r+i*V2(o);this._start&&this._add("M",g,m);var y=Math.round(a*mFe);if(h){var _=1/this._p,b=(c?1:-1)*(Ku-_);this._add("A",n,i,y,1,+c,t+n*G2(o+b),r+i*V2(o+b)),_>.01&&this._add("A",n,i,y,0,+c,g,m)}else{var S=t+n*G2(s),T=r+i*V2(s);this._add("A",n,i,y,+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 CFe(e){return""}function bj(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 AFe(o,s)+(o!=="style"?On(l):l||"")+(a?""+r+se(a,function(u){return n(u)}).join(r)+r:"")+CFe(o)}return n(e)}function MFe(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 FI(e){return{zrId:e,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssStyleCache:{},cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function F6(e,t,r,n){return Gr("svg","root",{width:e,height:t,xmlns:xte,"xmlns:xlink":_te,version:"1.1",baseProfile:"full",viewBox:n?"0 0 "+e+" "+t:!1},r)}var PFe=0;function wte(){return PFe++}var V6={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"},ac="transform-origin";function LFe(e,t,r){var n=re({},e.shape);re(n,t),e.buildPath(r,n);var i=new yte;return i.reset(VK(e)),r.rebuildPath(i,1),i.generateStr(),i.getStr()}function kFe(e,t){var r=t.originX,n=t.originY;(r||n)&&(e[ac]=r+"px "+n+"px")}var IFe={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function Ste(e,t){var r=t.zrId+"-ani-"+t.cssAnimIdx++;return t.cssAnims[r]=e,r}function OFe(e,t,r){var n=e.shape.paths,i={},a,o;if(R(n,function(l){var u=FI(r.zrId);u.animation=!0,BT(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 y in f){var _=f[y].animation;_.indexOf(o)>=0&&(a=_)}}}),!!a){t.d=!1;var s=Ste(i,r);return a.replace(o,s)}}function G6(e){return ve(e)?V6[e]?"cubic-bezier("+V6[e]+")":nN(e)?e:"":""}function BT(e,t,r,n){var i=e.animators,a=i.length,o=[];if(e instanceof c0){var s=OFe(e,t,r);if(s)o.push(s);else if(!a)return}else if(!a)return;for(var l={},u=0;u0}).length){var We=Ste(M,r);return We+" "+_[0]+" both"}}for(var m in l){var s=g(l[m]);s&&o.push(s)}if(o.length){var y=r.zrId+"-cls-"+wte();r.cssNodes["."+y]={animation:o.join(",")},t.class=y}}function EFe(e,t,r){if(!e.ignore)if(e.isSilent()){var n={"pointer-events":"none"};W6(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=ew(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),W6(n,t,r)}}function W6(e,t,r,n){var i=JSON.stringify(e),a=r.cssStyleCache[i];a||(a=r.zrId+"-cls-"+wte(),r.cssStyleCache[i]=a,r.cssNodes["."+a+":hover"]=e),t.class=t.class?t.class+" "+a:a}var Cy=Math.round;function Tte(e){return e&&ve(e.src)}function Ate(e){return e&&Ae(e.toDataURL)}function wj(e,t,r,n){wFe(function(i,a){var o=i==="fill"||i==="stroke";o&&FK(a)?Mte(t,e,i,n):o&&aN(a)?Pte(r,e,i,n):e[i]=a,o&&n.ssr&&a==="none"&&(e["pointer-events"]="visible")},t,r,!1),$Fe(r,e,n)}function Sj(e,t){var r=qK(t);r&&(r.each(function(n,i){n!=null&&(e[($6+i).toLowerCase()]=n+"")}),t.isSilent()&&(e[$6+"silent"]="true"))}function H6(e){return kl(e[0]-1)&&kl(e[1])&&kl(e[2])&&kl(e[3]-1)}function DFe(e){return kl(e[4])&&kl(e[5])}function Tj(e,t,r){if(t&&!(DFe(t)&&H6(t))){var n=1e4;e.transform=H6(t)?"translate("+Cy(t[4]*n)/n+" "+Cy(t[5]*n)/n+")":pje(t)}}function U6(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.";_n(h,m),_n(d,m)}else if(h==null||d==null){var y=function(I,O){if(I){var D=I.elm,N=h||O.width,B=d||O.height;I.tag==="pattern"&&(u?(B=1,N/=a.width):c&&(N=1,B/=a.height)),I.attrs.width=N,I.attrs.height=B,D&&(D.setAttribute("width",N),D.setAttribute("height",B))}},_=vN(v,null,e,function(I){l||y(A,I),y(f,I)});_&&_.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=Ce(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=GK(i);T&&(o.patternTransform=T);var A=Gr("pattern","",o,[f]),M=bj(A),P=n.patternCache,k=P[M];k||(k=n.zrId+"-p"+n.patternIdx++,P[M]=k,o.id=k,A=n.defs[k]=Gr("pattern",k,o,[f])),t[r]=pT(k)}}function FFe(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,[Cte(e,r)])}t["clip-path"]=pT(a)}function X6(e){return document.createTextNode(e)}function hc(e,t,r){e.insertBefore(t,r)}function q6(e,t){e.removeChild(t)}function K6(e,t){e.appendChild(t)}function Lte(e){return e.parentNode}function kte(e){return e.nextSibling}function W2(e,t){e.textContent=t}var Q6=58,VFe=120,GFe=Gr("","");function VI(e){return e===void 0}function vo(e){return e!==void 0}function WFe(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 yg(e,t){var r=e.key===t.key,n=e.tag===t.tag;return n&&r}function My(e){var t,r=e.children,n=e.tag;if(vo(n)){var i=e.elm=bte(n);if(Aj(GFe,e),ie(r))for(t=0;ta?(v=r[l+1]==null?null:r[l+1].elm,Ite(e,v,r,i,l)):Iw(e,t,n,a))}function bh(e,t){var r=t.elm=e.elm,n=e.children,i=t.children;e!==t&&(Aj(e,t),VI(t.text)?vo(n)&&vo(i)?n!==i&&HFe(r,n,i):vo(i)?(vo(e.text)&&W2(r,""),Ite(r,null,i,0,i.length-1)):vo(n)?Iw(r,n,0,n.length-1):vo(e.text)&&W2(r,""):e.text!==t.text&&(vo(n)&&Iw(r,n,0,n.length-1),W2(r,t.text)))}function UFe(e,t){if(yg(e,t))bh(e,t);else{var r=e.elm,n=Lte(r);My(t),n!==null&&(hc(n,t.elm,kte(r)),Iw(n,[e],0,0))}return t}var ZFe=0,YFe=function(){function e(t,r,n){if(this.type="svg",this.refreshHover=J6(),this.configLayer=J6(),this.storage=r,this._opts=n=re({},n),this.root=t,this._id="zr"+ZFe++,this._oldVNode=F6(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=bte("svg");Aj(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",UFe(this._oldVNode,t),this._oldVNode=t}},e.prototype.renderOneToVNode=function(t){return Y6(t,FI(this._id))},e.prototype.renderToVNode=function(t){t=t||{};var r=this.storage.getDisplayList(!0),n=this._width,i=this._height,a=FI(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=XFe(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=MFe(a.cssNodes,a.cssAnims,{newline:!0});if(c){var f=Gr("style","stl",{},[],c);o.push(f)}}return F6(n,i,o,t.useViewBox)},e.prototype.renderToString=function(t){return t=t||{},bj(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 y=g+1;y=s)}}for(var f=this.__startIndex;f15)break}}B.prevElClipPaths&&y.restore()};if(_)if(_.length===0)P=m.__endIndex;else for(var I=d.dpr,O=0;O<_.length;++O){var D=_[O];y.save(),y.beginPath(),y.rect(D.x*I,D.y*I,D.width*I,D.height*I),y.clip(),k(D),y.restore()}else y.save(),k(),y.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?l_:0),this._needsManuallyCompositing),c.__builtin__||cT("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&Si&&!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=K.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}(St);function rv(e,t){var r=e.mapDimensionsAll("defaultedLabel"),n=r.length;if(n===1){var i=Qd(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 g0=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=nVe,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(){$s(this.childAt(0))},t.prototype.downplay=function(){Fs(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),pa(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,g,m,y;if(a&&(u=a.emphasisItemStyle,c=a.blurItemStyle,f=a.selectItemStyle,h=a.focus,d=a.blurScope,g=a.labelStatesModels,m=a.hoverScale,y=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"),y=_.getShallow("cursor")}var S=r.getItemVisual(n,"symbolRotate");s.attr("rotation",(S||0)*Math.PI/180||0);var T=Cf(r.getItemVisual(n,"symbolOffset"),i);T&&(s.x=T[0],s.y=T[1]),y&&s.attr("cursor",y);var A=r.getItemVisual(n,"style"),M=A.fill;if(s instanceof Xr){var P=s.style;s.useStyle(re({image:P.image,x:P.x,y:P.y,width:P.width,height:P.height},A))}else s.__isEmptyBrush?s.useStyle(re({},A)):s.useStyle(A),s.style.decal=null,s.setColor(M,o&&o.symbolInnerColor),s.style.strokeNoScale=!0;var k=r.getItemVisual(n,"liftZ"),I=this._z2;k!=null?I==null&&(this._z2=s.z2,s.z2+=k):I!=null&&(s.z2=I,this._z2=null);var O=o&&o.useNameLabel;Ur(s,g,{labelFetcher:l,labelDataIndex:n,defaultText:D,inheritColor:M,defaultOpacity:A.opacity});function D(F){return O?r.getName(F):rv(r,F)}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 B=m==null||m===!0?Math.max(1.1,3/this._sizeY):isFinite(m)&&m>0?+m:1;N.scaleX=this._sizeX*B,N.scaleY=this._sizeY*B,this.setSymbolScale(1),Wt(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=De(this).dataIndex,s=i&&i.animation;if(this.silent=a.silent=!0,i&&i.fadeLabel){var l=a.getTextContent();l&&nu(l,{style:{opacity:0}},n,{dataIndex:o,removeOpt:s,cb:function(){a.removeTextContent()}})}else a.removeTextContent();nu(a,{style:{opacity:0},scaleX:0,scaleY:0},n,{dataIndex:o,cb:r,removeOpt:s})},t.getSymbolSize=function(r,n){return Gv(r.getItemVisual(n,"symbolSize"))},t.getSymbolZ2=function(r,n){return r.getItemVisual(n,"z2")},t}(Me);function nVe(e,t){this.parent.drift(e,t)}function U2(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 rG(e){return e!=null&&!Le(e)&&(e={isIgnore:e}),e||{}}function nG(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 m0=function(){function e(t){this.group=new Me,this._SymbolCtor=t||g0}return e.prototype.updateData=function(t,r){this._progressiveEls=null,r=rG(r);var n=this.group,i=t.hostModel,a=this._data,o=this._SymbolCtor,s=r.disableAnimation,l=nG(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(U2(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(!U2(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 y={x:v[0],y:v[1]};s?d.attr(y):lt(d,y,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=nG(t),this._data=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r,n){this._progressiveEls=[],n=rG(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 Dte(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 aVe(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 oVe(e,t,r,n,i,a,o,s){for(var l=aVe(e,t),u=[],c=[],f=[],h=[],d=[],v=[],g=[],m=Ete(i,t,o),y=e.getLayout("points")||[],_=t.getLayout("points")||[],b=0;b=i||g<0)break;if($c(y,_)){if(l){g+=a;continue}break}if(g===r)e[a>0?"moveTo":"lineTo"](y,_),f=y,h=_;else{var b=y-u,S=_-c;if(b*b+S*S<.5){g+=a;continue}if(o>0){for(var T=g+a,A=t[T*2],M=t[T*2+1];A===y&&M===_&&m=n||$c(A,M))d=y,v=_;else{I=A-u,O=M-c;var B=y-u,F=A-y,$=_-c,U=M-_,z=void 0,V=void 0;if(s==="x"){z=Math.abs(B),V=Math.abs(F);var W=I>0?1:-1;d=y-W*z*o,v=_,D=y+W*V*o,N=_}else if(s==="y"){z=Math.abs($),V=Math.abs(U);var Y=O>0?1:-1;d=y,v=_-Y*z*o,D=y,N=_+Y*V*o}else z=Math.sqrt(B*B+$*$),V=Math.sqrt(F*F+U*U),k=V/(V+z),d=y-I*o*(1-k),v=_-O*o*(1-k),D=y+I*o*k,N=_+O*o*k,D=sl(D,ll(A,y)),N=sl(N,ll(M,_)),D=ll(D,sl(A,y)),N=ll(N,sl(M,_)),I=D-y,O=N-_,d=y-I*z/V,v=_-O*z/V,d=sl(d,ll(u,y)),v=sl(v,ll(c,_)),d=ll(d,sl(u,y)),v=ll(v,sl(c,_)),I=y-d,O=_-v,D=y+I*V/z,N=_+O*V/z}e.bezierCurveTo(f,h,d,v,y,_),f=D,h=N}else e.lineTo(y,_)}u=y,c=_,g+=a}return m}var Nte=function(){function e(){this.smooth=0,this.smoothConstraint=!0}return e}(),sVe=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:K.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new Nte},t.prototype.buildPath=function(r,n){var i=n.points,a=0,o=i.length/2;if(n.connectNulls){for(;o>0&&$c(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++],y=a[f++],_=a[f++];var T=u?Q1(s,d,g,y,r,c):Q1(l,v,m,_,r,c);if(T>0)for(var A=0;A=0){var S=u?$r(l,v,m,_,M):$r(s,d,g,y,M);return u?[r,S]:[S,r]}}s=y,l=_;break}}},t}(rt),lVe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(Nte),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 lVe},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&&$c(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 fVe(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=cVe(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,y=m-g;if(y<.001)return"transparent";R(h,function(b){b.offset=(b.coord-g)/y}),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 wf(0,0,0,0,h,!0);return _[i]=g,_[i+"2"]=m,_}}}function hVe(e,t,r){var n=e.get("showAllSymbol"),i=n==="auto";if(!(n&&!i)){var a=r.getAxesByScale("ordinal")[0];if(a&&!(i&&dVe(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 dVe(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 vVe(e,t){return isNaN(e)||isNaN(t)}function pVe(e){for(var t=e.length/2;t>0&&vVe(e[t*2-2],e[t*2-1]);t--);return t-1}function lG(e,t){return[e[t*2],e[t*2+1]]}function gVe(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 zte(e){if(e.get(["endLabel","show"]))return!0;for(var t=0;t0&&r.get(["emphasis","lineStyle","width"])==="bolder"){var V=v.getState("emphasis").style;V.lineWidth=+v.style.lineWidth+1}De(v).seriesIndex=r.seriesIndex,Wt(v,$,U,z);var W=sG(r.get("smooth")),Y=r.get("smoothMonotone");if(v.setShape({smooth:W,smoothMonotone:Y,connectNulls:M}),g){var Z=s.getCalculationInfo("stackedOnSeries"),J=0;g.useStyle(Pe(u.getAreaStyle(),{fill:D,opacity:.7,lineJoin:"bevel",decal:s.getVisual("style").decal})),Z&&(J=sG(Z.get("smooth"))),g.setShape({smooth:W,stackedOnSmooth:J,smoothMonotone:Y,connectNulls:M}),Dr(g,r,"areaStyle"),De(g).seriesIndex=r.seriesIndex,Wt(g,$,U,z)}var ae=this._changePolyState;s.eachItemGraphicEl(function(ce){ce&&(ce.onHoverStateChange=ae)}),this._polyline.onHoverStateChange=ae,this._data=s,this._coordSys=a,this._stackedOnPoints=T,this._points=c,this._step=I,this._valueOrigin=b,r.get("triggerLineEvent")&&(this.packEventData(r,v),g&&this.packEventData(r,g))},t.prototype.packEventData=function(r,n){De(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=rf(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 g0(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 _t.prototype.highlight.call(this,r,n,i,a)},t.prototype.downplay=function(r,n,i,a){var o=r.getData(),s=rf(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 _t.prototype.downplay.call(this,r,n,i,a)},t.prototype._changePolyState=function(r){var n=this._polygon;uw(this._polyline,r),n&&uw(n,r)},t.prototype._newPolyline=function(r){var n=this._polyline;return n&&this._lineGroup.remove(n),n=new sVe({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");Ae(c)&&(c=c(null));var f=u.get("animationDelay")||0,h=Ae(f)?f(null):f;r.eachItemGraphicEl(function(d,v){var g=d;if(g){var m=[d.x,d.y],y=void 0,_=void 0,b=void 0;if(i)if(o){var S=i,T=n.pointToCoord(m);a?(y=S.startAngle,_=S.endAngle,b=-T[1]/180*Math.PI):(y=S.r0,_=S.r,b=T[0])}else{var A=i;a?(y=A.x,_=A.x+A.width,b=d.x):(y=A.y+A.height,_=A.y,b=d.y)}var M=_===y?0:(b-y)/(_-y);l&&(M=1-M);var P=Ae(f)?f(v):c*M+h,k=g.getSymbolPath(),I=k.getTextContent();g.attr({scaleX:0,scaleY:0}),g.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:P}),I&&I.animateFrom({style:{opacity:0}},{duration:300,delay:P}),k.disableLabelAnimation=!0}})},t.prototype._initOrUpdateEndLabel=function(r,n,i){var a=r.getModel("endLabel");if(zte(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=pVe(l);c>=0&&(Ur(s,Nr(r,"endLabel"),{inheritColor:i,labelFetcher:r,labelDataIndex:c,defaultText:function(f,h,d){return d!=null?Ote(o,d):rv(o,f)},enableTextSetter:!0},mVe(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(),y=m.isHorizontal(),_=m.inverse,b=n.shape,S=_?y?b.x:b.y+b.height:y?b.x+b.width:b.y,T=(y?g:0)*(_?-1:1),A=(y?0:-g)*(_?-1:1),M=y?"x":"y",P=gVe(f,S,M),k=P.range,I=k[1]-k[0],O=void 0;if(I>=1){if(I>1&&!d){var D=lG(f,k[0]);u.attr({x:D[0]+T,y:D[1]+A}),o&&(O=h.getRawValue(k[0]))}else{var D=c.getPointOn(S,M);D&&u.attr({x:D[0]+T,y:D[1]+A});var N=h.getRawValue(k[0]),B=h.getRawValue(k[1]);o&&(O=cQ(i,v,N,B,P.t))}a.lastFrameIndex=k[0]}else{var F=r===1||a.lastFrameIndex>0?k[0]:0,D=lG(f,F);o&&(O=h.getRawValue(F)),u.attr({x:D[0]+T,y:D[1]+A})}if(o){var $=Rv(u);typeof $.setLabelText=="function"&&$.setLabelText(O)}}},t.prototype._doUpdateAnimation=function(r,n,i,a,o,s,l){var u=this._polyline,c=this._polygon,f=r.hostModel,h=oVe(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=ul(h.stackedOnCurrent,h.current,i,o,l),d=ul(h.current,null,i,o,l),m=ul(h.stackedOnNext,h.next,i,o,l),g=ul(h.next,null,i,o,l)),oG(d,g)>3e3||c&&oG(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 y={shape:{points:g}};h.current!==d&&(y.shape.__points=h.next),u.stopAnimation(),lt(u,y,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;ve(a)?v=xVe[a]:Ae(a)&&(v=a),v&&t.setData(i.downSample(i.mapDimension(u.dim),1/d,v,_Ve))}}}}}function bVe(e){e.registerChartView(yVe),e.registerSeriesModel(rVe),e.registerLayout(x0("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,$te("line"))}var Py=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 Yo(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],y=n[d]==="x1"||n[d]==="y1";if(y&&!g&&(m+=1),v.length<2)return;if(v.length===2){s[d]=h.toGlobalCoord(h.getExtent()[y?1:0]);return}for(var _=void 0,b=void 0,S=1,T=0;Tm){b=(A+_)/2;break}T===1&&(S=M-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}(St);St.registerClass(Py);var wVe=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 Yo(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=xu(Py.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:K.color.primary,borderWidth:2}},realtimeSort:!1}),t}(Py),SVe=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}(),Ow=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 SVe},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){Cs(a,r,De(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}(_t),uG={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=Y2(t.x,e.x),s=X2(t.x+t.width,i),l=Y2(t.y,e.y),u=X2(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=X2(t.r,e.r),a=Y2(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}},cG={cartesian2d:function(e,t,r,n,i,a,o,s,l){var u=new Xe({shape:re({},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?Ow:bn,c=new u({shape:n,z2:1});c.name="item";var f=Fte(i);if(c.calculateTextPosition=TVe(f,{isRoundCap:u===Ow}),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 PVe(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 fG(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 hG(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 IVe(e){return e.startAngle!=null&&e.endAngle!=null&&e.startAngle===e.endAngle}function Fte(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 vG(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=Ao(n.getModel("itemStyle"),c,!0);re(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:rv(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,AVe(e,m==="outside"?d:m,Fte(o),n.get(["label","rotate"]))}KQ(g,v,a.getRawValue(r),function(_){return Ote(t,_)});var y=n.getModel(["emphasis"]);Wt(e,y.get("focus"),y.get("blurScope"),y.get("disabled")),Dr(e,n),IVe(i)&&(e.style.fill="none",e.style.stroke="none",R(e.states,function(_){_.style&&(_.style.fill=_.style.stroke="none")}))}function OVe(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 EVe=function(){function e(){}return e}(),pG=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 EVe},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 DVe(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 Vte(e,t,r){if(iu(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 NVe(e,t,r){var n=e.type==="polar"?bn:Xe;return new n({shape:Vte(t,r,e),silent:!0,z2:0})}function jVe(e){e.registerChartView(MVe),e.registerSeriesModel(wVe),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,ze(Hee,"bar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Uee("bar")),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,$te("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 yG=Math.PI*2,h_=Math.PI/180;function RVe(e,t,r){t.eachSeriesByType(e,function(n){var i=n.getData(),a=i.mapDimension("value"),o=pJ(n,r),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=o.viewRect,h=-n.get("startAngle")*h_,d=n.get("endAngle"),v=n.get("padAngle")*h_;d=d==="auto"?h-yG:-d*h_;var g=n.get("minAngle")*h_,m=g+v,y=0;i.each(a,function(U){!isNaN(U)&&y++});var _=i.getSum(a),b=Math.PI/(_||y)*2,S=n.get("clockwise"),T=n.get("roseType"),A=n.get("stillShowZeroSum"),M=i.getDataExtent(a);M[0]=0;var P=S?1:-1,k=[h,d],I=P*v/2;ST(k,!S),h=k[0],d=k[1];var O=Gte(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,B=0,F=h;if(i.setLayout({viewRect:f,r:u}),i.each(a,function(U,z){var V;if(isNaN(U)){i.setItemLayout(z,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:S,cx:s,cy:l,r0:c,r:T?NaN:u});return}T!=="area"?V=_===0&&A?b:U*b:V=D/y,VV?(Y=F+P*V/2,Z=Y):(Y=F+I,Z=W-I),i.setItemLayout(z,{angle:V,startAngle:Y,endAngle:Z,clockwise:S,cx:s,cy:l,r0:c,r:T?gt(U,M,[c,u]):u}),F=W}),Nr?y:m,T=Math.abs(b.label.y-r);if(T>=S.maxY){var A=b.label.x-t-b.len2*i,M=n+b.len,P=Math.abs(A)e.unconstrainedWidth?null:h:null;n.setStyle("width",d)}Hte(a,n)}}}function Hte(e,t){_G.rect=e,pte(_G,t,$Ve)}var $Ve={minMarginForce:[null,0,null,0],marginDefault:[1,0,1,0]},_G={};function q2(e){return e.position==="center"}function FVe(e){var t=e.getData(),r=[],n,i,a=!1,o=(e.get("minShowLabelAngle")||0)*BVe,s=t.getLayout("viewRect"),l=t.getLayout("r"),u=s.width,c=s.x,f=s.y,h=s.height;function d(A){A.ignore=!0}function v(A){if(!A.ignore)return!0;for(var M in A.states)if(A.states[M].ignore===!1)return!0;return!1}t.each(function(A){var M=t.getItemGraphicEl(A),P=M.shape,k=M.getTextContent(),I=M.getTextGuideLine(),O=t.getItemModel(A),D=O.getModel("label"),N=D.get("position")||O.get(["emphasis","label","position"]),B=D.get("distanceToLabelLine"),F=D.get("alignTo"),$=de(D.get("edgeDistance"),u),U=D.get("bleedMargin");U==null&&(U=Math.min(u,h)>200?10:2);var z=O.getModel("labelLine"),V=z.get("length");V=de(V,u);var W=z.get("length2");if(W=de(W,u),Math.abs(P.endAngle-P.startAngle)0?"right":"left":Z>0?"left":"right"}var Ve=Math.PI,Ye=0,vt=D.get("rotate");if(ot(vt))Ye=vt*(Ve/180);else if(N==="center")Ye=0;else if(vt==="radial"||vt===!0){var Vt=Z<0?-Y+Ve:-Y;Ye=Vt}else if(vt==="tangential"&&N!=="outside"&&N!=="outer"){var nr=Math.atan2(Z,J);nr<0&&(nr=Ve*2+nr);var jn=J>0;jn&&(nr=Ve+nr),Ye=nr-Ve}if(a=!!Ye,k.x=ae,k.y=ce,k.rotation=Ye,k.setStyle({verticalAlign:"middle"}),xe){k.setStyle({align:We});var Jn=k.states.select;Jn&&(Jn.x+=k.x,Jn.y+=k.y)}else{var qr=new Oe(0,0,0,0);Hte(qr,k),r.push({label:k,labelLine:I,position:N,len:V,len2:W,minTurnAngle:z.get("minTurnAngle"),maxSurfaceAngle:z.get("maxSurfaceAngle"),surfaceNormal:new Ie(Z,J),linePoints:ge,textAlign:We,labelDistance:B,labelAlignTo:F,edgeDistance:$,bleedMargin:U,rect:qr,unconstrainedWidth:qr.width,labelStyleWidth:k.style.width})}M.setTextConfig({inside:xe})}}),!a&&e.get("avoidLabelOverlap")&&zVe(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}(_t);function Yv(e,t,r){t=ie(t)&&{coordDimensions:t}||re({encodeDefine:e.getEncode()},t);var n=e.getSource(),i=Wv(n,t).dimensions,a=new Dn(i,e);return a.initData(n,r),a}var Xv=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}(),WVe=Je(),Ute=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 Xv(pe(this.getData,this),pe(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.mergeOption=function(){e.prototype.mergeOption.apply(this,arguments)},t.prototype.getInitialData=function(){return Yv(this,{coordDimensions:["value"],encodeDefaulter:ze(UN,this)})},t.prototype.getDataParams=function(r){var n=this.getData(),i=WVe(n),a=i.seats;if(!a){var o=[];n.each(n.mapDimension("value"),function(l){o.push(l)}),a=i.seats=eQ(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){tf(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}(St);RBe({fullType:Ute.type,getCoord2:function(e){return e.getShallow("center")}});function HVe(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 UVe(e){e.registerChartView(GVe),e.registerSeriesModel(Ute),oee("pie",e.registerAction),e.registerLayout(ze(RVe,"pie")),e.registerProcessor(Zv("pie")),e.registerProcessor(HVe("pie"))}var ZVe=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 Yo(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:K.color.primary}},universalTransition:{divideShape:"clone"}},t}(St),Zte=4,YVe=function(){function e(){}return e}(),XVe=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 YVe},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}(),KVe=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=x0("").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 qVe:new m0,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}(_t),Yte={left:0,right:0,top:0,bottom:0},Ew=["25%","25%"],QVe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.mergeDefaultAndTheme=function(r,n){var i=Tf(r.outerBounds);e.prototype.mergeDefaultAndTheme.apply(this,arguments),i&&r.outerBounds&&Fo(r.outerBounds,i)},t.prototype.mergeOption=function(r,n){e.prototype.mergeOption.apply(this,arguments),this.option.outerBounds&&r.outerBounds&&Fo(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:Yte,outerBoundsContain:"all",outerBoundsClampWidth:Ew[0],outerBoundsClampHeight:Ew[1],backgroundColor:K.color.transparent,borderWidth:1,borderColor:K.color.neutral30},t}(Qe),WI=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",tr).models[0]},t.type="cartesian2dAxis",t}(Qe);fr(WI,Uv);var Xte={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:K.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:K.color.axisLabel,textMargin:[0,3]},splitLine:{show:!0,showMinLine:!0,showMaxLine:!0,lineStyle:{color:K.color.axisSplitLine,width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:[K.color.backgroundTint,K.color.backgroundTransparent]}},breakArea:{show:!0,itemStyle:{color:K.color.neutral00,borderColor:K.color.border,borderWidth:1,borderType:[3,3],opacity:.6},zigzagAmplitude:4,zigzagMinSpan:4,zigzagMaxSpan:20,zigzagZ:100,expandOnClick:!0},breakLabelLayout:{moveOverlap:"auto"}},JVe=He({boundaryGap:!0,deduplication:null,jitter:0,jitterOverlap:!0,jitterMargin:2,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto",show:"auto"},axisLabel:{interval:"auto"}},Xte),Cj=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:K.color.axisMinorSplitLine,width:1}}},Xte),e6e=He({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},Cj),t6e=Pe({logBase:10},Cj);const qte={category:JVe,value:Cj,time:e6e,log:t6e};var r6e={value:1,category:1,time:1,log:1},HI=null;function n6e(e){HI||(HI=e)}function _0(){return HI}function nv(e,t,r,n){R(r6e,function(i,a){var o=He(He({},qte[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=yy(this),d=h?Tf(c):{},v=f.getTheme();He(c,v.get(a+"Axis")),He(c,this.getDefaultOption()),c.type=bG(c),h&&Fo(c,d,h)},u.prototype.optionUpdated=function(){var c=this.option;c.type==="category"&&(this.__ordinalMeta=Ty.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=_0();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 i6e=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}(),UI=["x","y"];function wG(e){return(e.type==="interval"||e.type==="time")&&!e.hasBreaks()}var a6e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="cartesian2d",r.dimensions=UI,r}return t.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var r=this.getAxis("x").scale,n=this.getAxis("y").scale;if(!(!wG(r)||!wG(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=da([],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 ur(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 ur(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}(i6e),Kte=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}(_a),zT="expandAxisBreak",Qte="collapseAxisBreak",Jte="toggleAxisBreak",Mj="axisbreakchanged",o6e={type:zT,event:Mj,update:"update",refineEvent:Pj},s6e={type:Qte,event:Mj,update:"update",refineEvent:Pj},l6e={type:Jte,event:Mj,update:"update",refineEvent:Pj};function Pj(e,t,r,n){var i=[];return R(e,function(a){i=i.concat(a.eventBreaks)}),{eventContent:{breaks:i}}}function u6e(e){e.registerAction(o6e,t),e.registerAction(s6e,t),e.registerAction(l6e,t);function t(r,n){var i=[],a=sd(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 Il=Math.PI,c6e=[[1,2,1,2],[5,3,5,3],[8,3,8,3]],f6e=[[0,1,0,1],[0,3,0,3],[0,3,0,3]],iv=Je(),ere=Je(),tre=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 h6e(e,t,r,n){var i=r.axis,a=t.ensureRecord(r),o=[],s,l=Lj(e.axisName)&&tv(e.nameLocation);R(n,function(v){var g=Vo(v);if(!(!g||g.label.ignore)){o.push(g);var m=a.transGroup;l&&(m.transform?da(Gp,m.transform):i0(Gp),g.transform&&Fa(Gp,Gp,g.transform),Oe.copy(d_,g.localRect),d_.applyTransform(Gp),s?s.union(d_):Oe.copy(s=new Oe(0,0,0,0),d_))}});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 Gp=Wr(),d_=new Oe(0,0,0,0),rre=function(e,t,r,n,i,a){if(tv(e.nameLocation)){var o=a.stOccupiedRect;o&&nre(cFe({},o,a.transGroup.transform),n,i)}else ire(a.labelInfoList,a.dirVec,n,i)};function nre(e,t,r){var n=new Ie;RT(e,t,n,{direction:Math.atan2(r.y,r.x),bidirectional:!1,touchThreshold:.05})&&RI(t,n)}function ire(e,t,r,n){for(var i=Ie.dot(n,t)>=0,a=0,o=e.length;a0?"top":"bottom",a="center"):Yd(i-Il)?(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}(),d6e=["axisLine","axisTickLabelEstimate","axisTickLabelDetermine","axisName"],v6e={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&&(ur(c,c,u),ur(f,f,u));var d=re({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())_0().buildAxisBreakLine(n,i,a,v);else{var g=new yr(re({shape:{x1:c[0],y1:c[1],x2:f[0],y2:f[1]}},v));Kd(g.shape,g.style.lineWidth),g.anid="line",i.add(g)}var m=n.get(["axisLine","symbol"]);if(m!=null){var y=n.get(["axisLine","symbolSize"]);ve(m)&&(m=[m,m]),(ve(y)||ot(y))&&(y=[y,y]);var _=Cf(n.get(["axisLine","symbolOffset"])||0,y),b=y[0],S=y[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,A){if(m[A]!=="none"&&m[A]!=null){var M=xr(m[A],-b/2,-S/2,b,S,d.stroke,!0),P=T.r+T.offset,k=h?f:c;M.attr({rotation:T.rotate,x:k[0]+P*Math.cos(e.rotation),y:k[1]-P*Math.sin(e.rotation),silent:!0,z2:11}),i.add(M)}})}}},axisTickLabelEstimate:function(e,t,r,n,i,a,o,s){var l=TG(t,i,s);l&&SG(e,t,r,n,i,a,o,Ya.estimate)},axisTickLabelDetermine:function(e,t,r,n,i,a,o,s){var l=TG(t,i,s);l&&SG(e,t,r,n,i,a,o,Ya.determine);var u=y6e(e,i,a,n);m6e(e,t.labelLayoutList,u),x6e(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(Lj(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),y=new Ie(0,0);c==="start"?(m.x=v[0]-g*d,y.x=-g):c==="end"?(m.x=v[1]+g*d,y.x=g):(m.x=(v[0]+v[1])/2,m.y=e.labelOffset+f*d,y.y=f);var _=Wr();y.transform(qs(_,_,e.rotation));var b=n.get("nameRotate");b!=null&&(b=b*Il/180);var S,T;tv(c)?S=Hn.innerTextLayout(e.rotation,b??e.rotation,f):(S=p6e(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 A=h.getFont(),M=n.get("nameTruncate",!0)||{},P=M.ellipsis,k=nn(e.raw.nameTruncateMaxWidth,M.maxWidth,T),I=s.nameMarginLevel||0,O=new at({x:m.x,y:m.y,rotation:S.rotation,silent:Hn.isLabelSilent(n),style:Mt(h,{text:u,font:A,overflow:"truncate",width:k,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(Qs({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,De(O).eventData=D}a.add(O),O.updateTransform(),t.nameEl=O;var N=l.nameLayout=Vo({label:O,priority:O.z2,defaultAttr:{ignore:O.ignore},marginDefault:tv(c)?c6e[I]:f6e[I]});if(l.nameLocation=c,i.add(O),O.decomposeTransform(),e.shouldNameMoveOverlap&&N){var B=r.ensureRecord(n);r.resolveAxisNameOverlap(e,r,n,N,y,B)}}}};function SG(e,t,r,n,i,a,o,s){ore(t)||_6e(e,t,i,s,n,o);var l=t.labelLayoutList;b6e(e,n,l,a),T6e(n,e.rotation,l);var u=e.optionHideOverlap;g6e(n,l,u),u&>e(ht(l,function(c){return c&&!c.label.ignore})),h6e(e,r,n,l)}function p6e(e,t,r,n){var i=lN(r-e),a,o,s=n[0]>n[1],l=t==="start"&&!s||t!=="start"&&s;return Yd(i-Il/2)?(o=l?"bottom":"top",a="center"):Yd(i-Il*1.5)?(o=l?"top":"bottom",a="center"):(o="middle",iIl/2?a=l?"left":"right":a=l?"right":"left"),{rotation:i,textAlign:a,textVerticalAlign:o}}function g6e(e,t,r){if(Jee(e.axis))return;function n(s,l,u){var c=Vo(t[l]),f=Vo(t[u]);if(!(!c||!f)){if(s===!1||c.suggestIgnore){xg(c.label);return}if(f.suggestIgnore){xg(f.label);return}var h=.1;if(!r){var d=[0,0,0,0];c=BI({marginForce:d},c),f=BI({marginForce:d},f)}RT(c,f,null,{touchThreshold:h})&&xg(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 m6e(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=N2(d),v=u[1]-d*o;else{var m=e.getTicks().length-1;m>o&&(d=N2(d));var y=d*o;g=Math.ceil(u[1]/d)*d,v=mr(g-y),v<0&&u[0]>=0?(v=0,g=mr(y)):g>0&&u[1]<=0&&(g=0,v=-mr(y))}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 CG=[[3,1],[0,2]],P6e=function(){function e(t,r,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=UI,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;II(g)&&v.get("alignTicks")&&v.get("interval")==null?c.push(d):(uf(g,v),II(g)&&(s=d))}c.length&&(s||(s=c.pop(),uf(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){MG(n,"y",o,a)}),R(n.y,function(o){MG(n,"x",o,a)}),this.resize(this.model,r)},e.prototype.resize=function(t,r,n){var i=jr(t,r),a=this._rect=$t(t.getBoxLayoutParams(),i.refContainer),o=this._axesMap,s=this._coordsList,l=t.get("containLabel");if(YI(o,a),!n){var u=I6e(a,s,o,l,r),c=void 0;if(l)XI?(XI(this._axesList,a),YI(o,a)):c=kG(a.clone(),"axisLabel",null,a,o,u,i);else{var f=O6e(t,a,i),h=f.outerBoundsRect,d=f.parsedOuterBoundsContain,v=f.outerBoundsClamp;h&&(c=kG(h,d,v,a,o,u,i))}lre(a,o,Ya.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]}Le(t)&&(r=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,a=this._coordsList;i0})==null;return of(n,s,!0,!0,r),YI(i,n),l;function u(h){R(i[Re[h]],function(d){if(Ay(d.model)){var v=a.ensureRecord(d.model),g=v.labelInfoList;if(g)for(var m=0;m0&&!mn(d)&&d>1e-4&&(h/=d),h}}function I6e(e,t,r,n,i){var a=new tre(E6e);return R(r,function(o){return R(o,function(s){if(Ay(s.model)){var l=!n;s.axisBuilder=C6e(e,t,s.model,i,a,l)}})}),a}function lre(e,t,r,n,i,a){var o=r===Ya.determine;R(t,function(u){return R(u,function(c){Ay(c.model)&&(M6e(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[Re[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){Ay(f.model)&&((n==="all"||o)&&f.axisBuilder.build({axisName:!0},{nameMarginLevel:s[c]}),o&&f.axisBuilder.build({axisLine:!0}))})})}function O6e(e,t,r){var n,i=e.get("outerBoundsMode",!0);i==="same"?n=t.clone():(i==null||i==="auto")&&(n=$t(e.get("outerBounds",!0)||Yte,r.refContainer));var a=e.get("outerBoundsContain",!0),o;a==null||a==="auto"||Ge(["all","axisLabel"],a)<0?o="all":o=a;var s=[aw(be(e.get("outerBoundsClampWidth",!0),Ew[0]),t.width),aw(be(e.get("outerBoundsClampHeight",!0),Ew[1]),t.height)];return{outerBoundsRect:n,parsedOuterBoundsContain:o,outerBoundsClamp:s}}var E6e=function(e,t,r,n,i,a){var o=r.axis.dim==="x"?"y":"x";rre(e,t,r,n,i,a),tv(e.nameLocation)||R(t.recordMap[o],function(s){s&&s.labelInfoList&&s.dirVec&&ire(s.labelInfoList,s.dirVec,n,i)})};function D6e(e,t){var r={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return N6e(r,e,t),r.seriesInvolved&&R6e(r,e),r}function N6e(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=Ly(s.model),u=e.coordSysAxesInfo[l]={};e.coordSysMap[l]=s;var c=s.model,f=c.getModel("tooltip",n);if(R(s.getAxes(),ze(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,ze(g,d?"cross":!0,h)),d&&R(v.otherAxes,ze(g,"cross",!1))}function g(m,y,_){var b=_.model.getModel("axisPointer",i),S=b.get("show");if(!(!S||S==="auto"&&!m&&!qI(b))){y==null&&(y=b.get("triggerTooltip")),b=m?j6e(_,f,i,t,m,y):b;var T=b.get("snap"),A=b.get("triggerEmphasis"),M=Ly(_.model),P=y||T||_.type==="category",k=e.axesInfo[M]={key:M,axis:_,coordSys:s,axisPointerModel:b,triggerTooltip:y,triggerEmphasis:A,involveSeries:P,snap:T,useHandle:qI(b),seriesModels:[],linkGroup:null};u[M]=k,e.seriesInvolved=e.seriesInvolved||P;var I=B6e(a,_);if(I!=null){var O=o[I]||(o[I]={axesInfo:{}});O.axesInfo[M]=k,O.mapper=a[I].mapper,k.linkGroup=O}}}})}function j6e(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]=Ce(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 tt(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[Ly(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 B6e(e,t){for(var r=t.model,n=t.dim,i=0;i=0||e===t}function z6e(e){var t=kj(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=qI(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 U6e=Je();function EG(e,t,r,n){if(e instanceof Kte){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?vre(r,o,u,n):Z6e(e,t,r,n,o,l):r}function vre(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 Z6e(e,t,r,n,i,a){var o=U6e(e);o.items||(o.items=[]);var s=o.items,l=DG(s,t,r,n,i,a,1),u=DG(s,t,r,n,i,a,-1),c=Math.abs(l-r)i/2||f&&h>f/2-n?vre(r,i,f,n):(s.push({fixedCoord:t,floatCoord:c,r:n}),c)}function DG(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(Ce(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(ve(c)){var y=m.name;m.name=c.replace("{value}",y??"")}else Ae(c)&&(m.name=c(m.name,m));var _=new tt(m,null,this.ecModel);return fr(_,Uv.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:K.color.axisLabel},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:He({lineStyle:{color:K.color.neutral20}},Wp.axisLine),axisLabel:v_(Wp.axisLabel,!1),axisTick:v_(Wp.axisTick,!1),splitLine:v_(Wp.splitLine,!0),splitArea:v_(Wp.splitArea,!0),indicator:[]},t}(Qe),rGe=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=ie(h)?h:[h],g=ie(d)?d:[d],m=[],y=[];function _(F,$,U){var z=U%$.length;return F[z]=F[z]||[],z}if(a==="circle")for(var b=i[0].getTicksCoords(),S=n.cx,T=n.cy,A=0;A3?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(!(RG(this._zr,"globalPan")||Hp(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)&&(zs(a.event),a.__ecRoamConsumed=!0,BG(r,n,i,a,o))},t}(ya);function Hp(e){return e.__ecRoamConsumed}var cGe=Je();function $T(e){var t=cGe(e);return t.roam=t.roam||{},t.uniform=t.uniform||{},t}function Up(e,t,r,n){for(var i=$T(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=_re(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=J2[s];if(c&&ye(J2,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=VG[s];if(d&&ye(VG,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 Xd({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),vGe(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(){J2={g:function(t,r){var n=new Me;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 Zo;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 yr;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 l0;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=HG(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=HG(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 Me;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 Me;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=jQ(n);return Wi(r,i),vi(t,i,this._defsUsePending,!1,!1),i.silent=!0,i}}}(),e}(),VG={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 wf(t,r,n,i);return GG(e,a),WG(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 SN(t,r,n);return GG(e,i),WG(e,i),i}};function GG(e,t){var r=e.getAttribute("gradientUnits");r==="userSpaceOnUse"&&(t.global=!0)}function WG(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={};xre(r,a,a);var o=a.stopColor||r.getAttribute("stop-color")||"#000000",s=a.stopOpacity||r.getAttribute("stop-opacity");if(s){var l=En(o),u=l&&l[3];u&&(l[3]*=Ts(s),o=sa(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 HG(e){for(var t=VT(e),r=[],n=0;n0;a-=2){var o=n[a],s=n[a-1],l=VT(o);switch(i=i||Wr(),s){case"translate":Ua(i,i,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":vT(i,i,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":qs(i,i,-parseFloat(l[0])*eM,[parseFloat(l[1]||"0"),parseFloat(l[2]||"0")]);break;case"skewX":var u=Math.tan(parseFloat(l[0])*eM);Fa(i,[1,0,u,1,0,0],i);break;case"skewY":var c=Math.tan(parseFloat(l[0])*eM);Fa(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 ZG=/([^\s:;]+)\s*:\s*([^:;]+)/g;function xre(e,t,r){var n=e.getAttribute("style");if(n){ZG.lastIndex=0;for(var i;(i=ZG.exec(n))!=null;){var a=i[1],o=ye(Nw,a)?Nw[a]:null;o&&(t[o]=i[2]);var s=ye(jw,a)?jw[a]:null;s&&(r[s]=i[2])}}}function _Ge(e,t,r){for(var n=0;n<$G.length;n++){var i=$G[n],a=e.getAttribute(i);a!=null&&(t[Nw[i]]=a)}for(var n=0;n0,_={api:n,geo:l,mapOrGeoModel:t,data:s,isVisualEncodedByVisualMap:y,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&&(bre(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 QG(e,t,r,n,i,a){e.data?e.data.setItemGraphicEl(a,t):De(t).eventData={componentType:"geo",componentIndex:i.componentIndex,geoIndex:i.componentIndex,name:r,region:n&&n.option||{}}}function JG(e,t,r,n,i){e.data||Qs({el:t,componentModel:i,itemName:r,itemTooltipOption:n.get("tooltip")})}function eW(e,t,r,n,i){t.highDownSilentOnTouch=!!i.get("selectedMode");var a=n.getModel("emphasis"),o=a.get("focus");return Wt(t,o,a.get("blurScope"),a.get("disabled")),e.isGeo&&L5e(t,i,r),o}function tW(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=K.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:K.color.tertiary},itemStyle:{borderWidth:.5,borderColor:K.color.border,areaColor:K.color.background},emphasis:{label:{show:!0,color:K.color.primary},itemStyle:{areaColor:K.color.highlight}},select:{label:{show:!0,color:K.color.primary},itemStyle:{color:K.color.highlight}},nameProperty:"name"},t}(St);function $Ge(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=y[1]-b.height/2,b.x=y[0]-b.width/2;else{var S=e.getBoxLayoutParams();S.aspect=g,b=$t(S,v),b=gJ(e,b,g)}this.setViewRect(b.x,b.y,b.width,b.height),this.setCenter(e.get("center")),this.setZoom(e.get("zoom"))}function WGe(e,t){R(t.get("geoCoord"),function(r,n){e.addGeoCoord(n,r)})}var HGe=function(){function e(){this.dimensions=Sre}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 JI(l+s,l,re({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=aW,u.resize(o,r)}),t.eachSeries(function(o){d0({targetModel:o,coordSysType:"geo",coordSysProvider:function(){var s=o.subType==="map"?o.getHostGeoModel():o.getReferringComponents("geo",tr).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 JI(s,s,re({nameMap:fT(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=aW,u.resize(o[0],r),R(o,function(c){c.coordinateSystem=u,WGe(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 KGe(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){JGe(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=eWe(e,i,e.parentNode.hierNode.defaultAncestor||n[0],t)}function QGe(e){var t=e.hierNode.prelim+e.parentNode.hierNode.modifier;e.setLayout({x:t},!0),e.hierNode.modifier+=e.parentNode.hierNode.modifier}function oW(e){return arguments.length?e:nWe}function _g(e,t){return e-=Math.PI/2,{x:t*Math.cos(e),y:t*Math.sin(e)}}function JGe(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 eWe(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=tM(s),a=rM(a),s&&a;){i=tM(i),o=rM(o),i.hierNode.ancestor=e;var h=s.hierNode.prelim+f-a.hierNode.prelim-u+n(s,a);h>0&&(rWe(tWe(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&&!tM(i)&&(i.hierNode.thread=s,i.hierNode.modifier+=f-l),a&&!rM(o)&&(o.hierNode.thread=a,o.hierNode.modifier+=u-c,r=e)}return r}function tM(e){var t=e.children;return t.length&&e.isExpand?t[t.length-1]:e.hierNode.thread}function rM(e){var t=e.children;return t.length&&e.isExpand?t[0]:e.hierNode.thread}function tWe(e,t,r){return e.hierNode.ancestor.parentNode===t.parentNode?e.hierNode.ancestor:r}function rWe(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 nWe(e,t){return e.parentNode===t.parentNode?1:2}var iWe=function(){function e(){this.parentPoint=[],this.childPoints=[]}return e}(),aWe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultStyle=function(){return{stroke:K.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new iWe},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=de(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 M=T?"left":"right",P=s.getModel("label"),k=P.get("rotate"),I=k*(Math.PI/180),O=m.getTextContent();O&&(m.setTextConfig({position:P.get("position")||M,rotation:k==null?-S:I,origin:"center"}),O.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),N=D==="relative"?Hd(o.getAncestorsIndices(),o.getDescendantIndices()):D==="ancestor"?o.getAncestorsIndices():D==="descendant"?o.getDescendantIndices():null;N&&(De(r).focus=N),sWe(i,o,c,r,v,d,g,n),r.__edge&&(r.onHoverStateChange=function(B){if(B!=="blur"){var F=o.parentNode&&e.getItemGraphicEl(o.parentNode.dataIndex);F&&F.hoverState===s0||uw(r.__edge,B)}})}function sWe(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 Dv({shape:eO(c,f,h,i,i)})),lt(g,{shape:eO(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,y=[],_=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(ve(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 Lre(e){for(var t=[];e;)e=e.parentNode,e&&t.push(e);return t.reverse()}function Bj(e,t){var r=Lre(e);return Ge(r,t)>=0}function GT(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 gWe=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 tt(i,this,this.ecModel),o=Rj.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=GT(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:K.color.borderTint,width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t}(St);function mWe(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 yWe(e,t){e.eachSeriesByType("tree",function(r){xWe(r,t)})}function xWe(e,t){var r=jr(e,t).refContainer,n=$t(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=oW(function(S,T){return(S.parentNode===T.parentNode?1:2)/S.depth})):(a=n.width,o=n.height,s=oW());var l=e.getData().tree.root,u=l.children[0];if(u){qGe(l),mWe(u,KGe,s),l.hierNode.modifier=-u.hierNode.prelim,Xp(u,QGe);var c=u,f=u,h=u;Xp(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,y=0,_=0;if(i==="radial")g=a/(f.getLayout().x+d+v),m=o/(h.depth-1||1),Xp(u,function(S){y=(S.getLayout().x+v)*g,_=(S.depth-1)*m;var T=_g(y,_);S.setLayout({x:T.x,y:T.y,rawX:y,rawY:_},!0)});else{var b=e.getOrient();b==="RL"||b==="LR"?(m=o/(f.getLayout().x+d+v),g=a/(h.depth-1||1),Xp(u,function(S){_=(S.getLayout().x+v)*m,y=b==="LR"?(S.depth-1)*g:a-(S.depth-1)*g,S.setLayout({x:y,y:_},!0)})):(b==="TB"||b==="BT")&&(g=a/(f.getLayout().x+d+v),m=o/(h.depth-1||1),Xp(u,function(S){y=(S.getLayout().x+v)*g,_=b==="TB"?(S.depth-1)*m:o-(S.depth-1)*m,S.setLayout({x:y,y:_},!0)}))}}}function _We(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");re(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=FT(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}function wWe(e){e.registerChartView(oWe),e.registerSeriesModel(gWe),e.registerLayout(yWe),e.registerVisual(_We),bWe(e)}var fW=["treemapZoomToNode","treemapRender","treemapMove"];function SWe(e){for(var t=0;t1;)a=a.parentNode;var o=mI(e.ecModel,a.name||a.dataIndex+"",n);i.setVisual("decal",o)})}var TWe=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};Ire(i);var a=r.levels||[],o=this.designatedVisualItemStyle={},s=new tt({itemStyle:o},this,n);a=r.levels=AWe(a,n);var l=se(a||[],function(f){return new tt(f,s,n)},this),u=Rj.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 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=GT(i,this),n.treePathInfo=n.treeAncestors,n},t.prototype.setLayoutInfo=function(r){this.layoutInfo=this.layoutInfo||{},re(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(){kre(this)},t.type="series.treemap",t.layoutMode="box",t.defaultOption={progressive:0,coordinateSystemUsage:"box",left:K.size.l,top:K.size.xxxl,right:K.size.l,bottom:K.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:K.size.m,emptyItemWidth:25,itemStyle:{color:K.color.backgroundShade,textStyle:{color:K.color.secondary}},emphasis:{itemStyle:{color:K.color.background}}},label:{show:!0,distance:0,padding:5,position:"inside",color:K.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:K.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}(St);function Ire(e){var t=0;R(e.children,function(n){Ire(n);var i=n.value;ie(i)&&(i=i[0]),t+=i});var r=e.value;ie(r)&&(r=r[0]),(r==null||isNaN(r))&&(r=t),r<0&&(r=0),ie(e.value)?e.value[0]=r:e.value=r}function AWe(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 tt(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 CWe=8,hW=8,nM=5,MWe=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=$t(h,f);this._prepare(n,d,u),this._renderContent(t,d,v,s,l,u,c,i),kT(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+CWe*2,r.emptyItemWidth);r.totalWidth+=s+hW,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],y=m.node,_=m.width,b=m.text;h>n.width&&(h-=_-c,_=c,b=null);var S=new wn({shape:{points:PWe(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:Ov*1e4,onclick:ze(l,y)});S.disableLabelAnimation=!0,S.getTextContent().ensureState("emphasis").style=Mt(s,{text:b}),S.ensureState("emphasis").style=v,Wt(S,a.get("focus"),a.get("blurScope"),a.get("disabled")),this.group.add(S),LWe(S,t,y),u+=_+hW}},e.prototype.remove=function(){this.group.removeAll()},e}();function PWe(e,t,r,n,i,a){var o=[[i?e:e-nM,t],[e+r,t],[e+r,t+n],[i?e:e-nM,t+n]];return!a&&o.splice(2,0,[e+r+nM,t+n/2]),!i&&o.push([e,t+n/2]),o}function LWe(e,t,r){De(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&>(r,t)}}var kWe=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;ivW||Math.abs(r.dy)>vW)){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();Ua(m,m,[-n,-i]),vT(m,m,[v,v]),Ua(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&&dw(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 MWe(this.group))).render(r,n,i.node,function(o){a._state!=="animating"&&(Bj(r.getViewRoot(),o)?a._rootToNode({node:o}):a._zoomToNode({node:o}))})},t.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage=qp(),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}(_t);function qp(){return{nodeGroup:[],background:[],content:[]}}function jWe(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,y=o.getRawIndex(),_=s&&s.getRawIndex(),b=o.viewChildren,S=c.upperHeight,T=b&&b.length,A=h.getModel("itemStyle"),M=h.getModel(["emphasis","itemStyle"]),P=h.getModel(["blur","itemStyle"]),k=h.getModel(["select","itemStyle"]),I=A.get("borderRadius")||0,O=ce("nodeGroup",tO);if(!O)return;if(l.add(O),O.x=c.x||0,O.y=c.y||0,O.markRedraw(),Rw(O).nodeWidth=d,Rw(O).nodeHeight=v,c.isAboveViewRoot)return O;var D=ce("background",dW,u,EWe);D&&W(O,D,T&&c.upperLabelHeight);var N=h.getModel("emphasis"),B=N.get("focus"),F=N.get("blurScope"),$=N.get("disabled"),U=B==="ancestor"?o.getAncestorsIndices():B==="descendant"?o.getDescendantIndices():B;if(T)py(O)&&Ac(O,!1),D&&(Ac(D,!$),f.setItemGraphicEl(o.dataIndex,D),oI(D,U,F));else{var z=ce("content",dW,u,DWe);z&&Y(O,z),D.disableMorphing=!0,D&&py(D)&&Ac(D,!1),Ac(O,!$),f.setItemGraphicEl(o.dataIndex,O);var V=h.getShallow("cursor");V&&z.attr("cursor",V),oI(O,U,F)}return O;function W(xe,ne,fe){var le=De(ne);if(le.dataIndex=o.dataIndex,le.seriesIndex=e.seriesIndex,ne.setShape({x:0,y:0,width:d,height:v,r:I}),m)Z(ne);else{ne.invisible=!1;var ee=o.getVisual("style"),Fe=ee.stroke,Se=mW(A);Se.fill=Fe;var Ve=sc(M);Ve.fill=M.get("borderColor");var Ye=sc(P);Ye.fill=P.get("borderColor");var vt=sc(k);if(vt.fill=k.get("borderColor"),fe){var Vt=d-2*g;J(ne,Fe,ee.opacity,{x:g,y:0,width:Vt,height:S})}else ne.removeTextContent();ne.setStyle(Se),ne.ensureState("emphasis").style=Ve,ne.ensureState("blur").style=Ye,ne.ensureState("select").style=vt,af(ne)}xe.add(ne)}function Y(xe,ne){var fe=De(ne);fe.dataIndex=o.dataIndex,fe.seriesIndex=e.seriesIndex;var le=Math.max(d-2*g,0),ee=Math.max(v-2*g,0);if(ne.culling=!0,ne.setShape({x:g,y:g,width:le,height:ee,r:I}),m)Z(ne);else{ne.invisible=!1;var Fe=o.getVisual("style"),Se=Fe.fill,Ve=mW(A);Ve.fill=Se,Ve.decal=Fe.decal;var Ye=sc(M),vt=sc(P),Vt=sc(k);J(ne,Se,Fe.opacity,null),ne.setStyle(Ve),ne.ensureState("emphasis").style=Ye,ne.ensureState("blur").style=vt,ne.ensureState("select").style=Vt,af(ne)}xe.add(ne)}function Z(xe){!xe.invisible&&a.push(xe)}function J(xe,ne,fe,le){var ee=h.getModel(le?gW:pW),Fe=Ir(h.get("name"),null),Se=ee.getShallow("show");Ur(xe,Nr(h,le?gW:pW),{defaultText:Se?Fe:null,inheritColor:ne,defaultOpacity:fe,labelFetcher:e,labelDataIndex:o.dataIndex});var Ve=xe.getTextContent();if(Ve){var Ye=Ve.style,vt=r0(Ye.padding||0);le&&(xe.setTextConfig({layoutRect:le}),Ve.disableLabelLayout=!0),Ve.beforeUpdate=function(){var nr=Math.max((le?le.width:xe.shape.width)-vt[1]-vt[3],0),jn=Math.max((le?le.height:xe.shape.height)-vt[0]-vt[2],0);(Ye.width!==nr||Ye.height!==jn)&&Ve.setStyle({width:nr,height:jn})},Ye.truncateMinChar=2,Ye.lineOverflow="truncate",ae(Ye,le,c);var Vt=Ve.getState("emphasis");ae(Vt?Vt.style:null,le,c)}}function ae(xe,ne,fe){var le=xe?xe.text:null;if(!ne&&fe.isLeafRoot&&le!=null){var ee=e.get("drillDownIcon",!0);xe.text=ee?ee+" "+le:le}}function ce(xe,ne,fe,le){var ee=_!=null&&r[xe][_],Fe=i[xe];return ee?(r[xe][_]=null,ge(Fe,ee)):m||(ee=new ne,ee instanceof va&&(ee.z2=RWe(fe,le)),We(Fe,ee)),t[xe][y]=ee}function ge(xe,ne){var fe=xe[y]={};ne instanceof tO?(fe.oldX=ne.x,fe.oldY=ne.y):fe.oldShape=re({},ne.shape)}function We(xe,ne){var fe=xe[y]={},le=o.parentNode,ee=ne instanceof Me;if(le&&(!n||n.direction==="drillDown")){var Fe=0,Se=0,Ve=i.background[le.getRawIndex()];!n&&Ve&&Ve.oldShape&&(Fe=Ve.oldShape.width,Se=Ve.oldShape.height),ee?(fe.oldX=0,fe.oldY=Se):fe.oldShape={x:Fe,y:Se,width:0,height:0}}fe.fadein=!ee}}function RWe(e,t){return e*OWe+t}var Iy=R,BWe=Le,Bw=-1,Hr=function(){function e(t){var r=t.mappingMethod,n=t.type,i=this.option=Ce(t);this.type=n,this.mappingMethod=r,this._normalizeData=FWe[r];var a=e.visualHandlers[n];this.applyVisual=a.applyVisual,this.getColorMapper=a.getColorMapper,this._normalizedToVisual=a._normalizedToVisual[r],r==="piecewise"?(iM(i),zWe(i)):r==="category"?i.categories?$We(i):iM(i,!0):(_n(r!=="linear"||i.dataExtent),iM(i))}return e.prototype.mapValueToVisual=function(t){var r=this._normalizeData(t);return this._normalizedToVisual(r,t)},e.prototype.getNormalizer=function(){return pe(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=ie(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&&Iy(e.visualHandlers,function(i,a){t.hasOwnProperty(a)&&(r[a]=t[a],n=!0)}),n?r:null},e.prepareVisualTypes=function(t){if(ie(t))t=t.slice();else if(BWe(t)){var r=[];Iy(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 iM(e,t){var r=e.visual,n=[];Le(r)?Iy(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]),Ore(e,n)}function g_(e){return{applyVisual:function(t,r,n){var i=this.mapValueToVisual(t);n("color",e(r("color"),i))},_normalizedToVisual:rO([0,1])}}function yW(e){var t=this.option.visual;return t[Math.round(gt(e,[0,1],[0,t.length-1],!0))]||{}}function Kp(e){return function(t,r,n){n(e,this.mapValueToVisual(t))}}function bg(e){var t=this.option.visual;return t[this.option.loop&&e!==Bw?e%t.length:e]}function lc(){return this.option.visual[0]}function rO(e){return{linear:function(t){return gt(t,e,this.option.visual,!0)},category:bg,piecewise:function(t,r){var n=nO.call(this,r);return n==null&&(n=gt(t,e,this.option.visual,!0)),n},fixed:lc}}function nO(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 Ore(e,t){return e.visual=t,e.type==="color"&&(e.parsedVisual=se(t,function(r){var n=En(r);return n||[0,0,0,1]})),t}var FWe={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??Bw},fixed:lr};function m_(e,t,r){return e?t<=r:t=r.length||g===r[g.depth]){var y=ZWe(i,l,g,m,v,n);Dre(g,y,r,n)}})}}}function WWe(e,t,r){var n=re({},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 xW(e){var t=aM(e,"color");if(t){var r=aM(e,"colorAlpha"),n=aM(e,"colorSaturation");return n&&(t=As(t,null,null,n)),r&&(t=cy(t,r)),t}}function HWe(e,t){return t!=null?As(t,null,null,e):null}function aM(e,t){var r=e[t];if(r!=null&&r!=="none")return r}function UWe(e,t,r,n,i,a){if(!(!a||!a.length)){var o=oM(t,"color")||i.color!=null&&i.color!=="none"&&(oM(t,"colorAlpha")||oM(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 Ere(h).drColorMappingBy=c,h}}}function oM(e,t){var r=e.get(t);return ie(r)&&r.length?{name:t,range:r}:null}function ZWe(e,t,r,n,i,a){var o=re({},t);if(i){var s=i.type,l=s==="color"&&Ere(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 Oy=Math.max,zw=Math.min,_W=nn,zj=R,Nre=["itemStyle","borderWidth"],YWe=["itemStyle","gapWidth"],XWe=["upperLabel","show"],qWe=["upperLabel","height"];const KWe={seriesType:"treemap",reset:function(e,t,r,n){var i=e.option,a=jr(e,r).refContainer,o=$t(e.getBoxLayoutParams(),a),s=i.size||[],l=de(_W(o.width,s[0]),a.width),u=de(_W(o.height,s[1]),a.height),c=n&&n.type,f=["treemapZoomToNode","treemapRootToNode"],h=ky(n,f,e),d=c==="treemapRender"||c==="treemapMove"?n.rootRect:null,v=e.getViewRoot(),g=Lre(v);if(c!=="treemapMove"){var m=c==="treemapZoomToNode"?nHe(e,h,v,l,u):d?[d.width,d.height]:[l,u],y=i.sort;y&&y!=="asc"&&y!=="desc"&&(y="desc");var _={squareRatio:i.squareRatio,sort:y,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(),zj(g,function(T,A){var M=(g[A+1]||v).getValue();T.setLayout(re({dataExtent:[M,M],borderWidth:0,upperHeight:0},b))})}var S=e.getData().tree.root;S.setLayout(iHe(o,d,h),!0),e.setLayoutInfo(o),Rre(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(Nre),u=s.get(YWe)/2,c=Bre(s),f=Math.max(l,c),h=l-u,d=f-u;e.setLayout({borderWidth:l,upperHeight:f,upperLabelHeight:c},!0),i=Oy(i-2*h,0),a=Oy(a-h-d,0);var v=i*a,g=QWe(e,s,v,t,r,n);if(g.length){var m={x:h,y:d,width:i,height:a},y=zw(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 rHe(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?Oy(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;fXk&&(u=Xk),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 M=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]*y+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=y*M+c[0],a.y=c[1]+k,v=S[0]<0?"right":"left",a.originX=-y*M,a.originY=-k;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":a.x=A[0],a.y=A[1]+k,v="center",a.originY=-k;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":a.x=-y*M+f[0],a.y=f[1]+k,v=S[0]>=0?"right":"left",a.originX=y*M,a.originY=-k;break}a.scaleX=a.scaleY=o,a.setStyle({verticalAlign:a.__verticalAlign||g,align:a.__align||v})}},t}(Me),Wj=function(){function e(t){this.group=new Me,this._LineCtor=t||Gj}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=MW(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=MW(t),this._lineData=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r){this._progressiveEls=[];function n(s){!s.isGroup&&!bHe(s)&&(s.incremental=!0,s.ensureState("emphasis").hoverLayer=!0)}for(var i=t.start;i0}function MW(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 PW(e){return isNaN(e[0])||isNaN(e[1])}function fM(e){return e&&!PW(e[0])&&!PW(e[1])}var hM=[],dM=[],vM=[],lh=rn,pM=Wl,LW=Math.abs;function kW(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){hM[0]=lh(n[0],i[0],a[0],c),hM[1]=lh(n[1],i[1],a[1],c);var f=LW(pM(hM,t)-l);f=0?s=s+u:s=s-u:v>=0?s=s-u:s=s+u}return s}function gM(e,t){var r=[],n=ly,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=[Io(u[0]),Io(u[1])],u[2]&&u.__original.push(Io(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=Sg(s.node1),v=kW(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=Sg(s.node2),v=kW(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]),Ml(o,a[1],a[0]),bf(o,o),c&&c!=="none"){var d=Sg(s.node1);Z1(a[0],a[0],o,d*t)}if(f&&f!=="none"){var d=Sg(s.node2);Z1(a[1],a[1],o,-d*t)}Pn(u[0],a[0]),Pn(u[1],a[1])}})}var Hre=Je();function wHe(e){if(e)return Hre(e).bridge}function IW(e,t){e&&(Hre(e).bridge=t)}function OW(e){return e.type==="view"}var SHe=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 m0,a=new Wj,o=this.group,s=new Me;this._controller=new Pf(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(OW(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)}gM(r.getGraph(),wg(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,A=S.getGraphicEl(),M=S.getModel();if(A){A.off("drag").off("dragend");var P=M.get("draggable");P&&A.on("drag",function(I){switch(m){case"force":v.warmUp(),!a._layouting&&a._startForceLayoutIteration(v,i,g),v.setFixed(T),h.setItemLayout(T,[A.x,A.y]);break;case"circular":h.setItemLayout(T,[A.x,A.y]),S.setLayout({fixed:!0},!0),Vj(r,"symbolSize",S,[I.offsetX,I.offsetY]),a.updateLayout(r);break;case"none":default:h.setItemLayout(T,[A.x,A.y]),Fj(r.getGraph(),r),a.updateLayout(r);break}}).on("dragend",function(){v&&v.setUnfixed(T)}),A.setDraggable(P,!!M.get("cursor"));var k=M.get(["emphasis","focus"]);k==="adjacency"&&(De(A).focus=S.getAdjacentDataIndices())}}),h.graph.eachEdge(function(S){var T=S.getGraphicEl(),A=S.getModel().get(["emphasis","focus"]);T&&A==="adjacency"&&(De(T).focus={edge:[S.dataIndex],node:[S.node1.dataIndex,S.node2.dataIndex]})});var y=r.get("layout")==="circular"&&r.get(["circular","rotateLabel"]),_=h.getLayout("cx"),b=h.getLayout("cy");h.graph.eachNode(function(S){Vre(S,y,_,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(!OW(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&&(Oj(this._controllerHost,i.dx,i.dy),this._updateThumbnailWindow())},t.prototype.updateViewOnZoom=function(r,n,i){this._active&&(Ej(this._controllerHost,i.zoom,i.originX,i.originY),this._updateNodeAndLinkScale(),gM(r.getGraph(),wg(r)),this._lineDraw.updateLayout(),n.updateLabelLayout(),this._updateThumbnailWindow())},t.prototype._updateNodeAndLinkScale=function(){var r=this._model,n=r.getData(),i=wg(r);n.eachItemGraphicEl(function(a,o){a&&a.setSymbolScale(i)})},t.prototype.updateLayout=function(r){this._active&&(gM(r.getGraph(),wg(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=wHe(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 uc||(r=this._nodesMap[uh(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}(),Ure=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 Zre(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)}}}fr(uc,Zre("hostGraph","data"));fr(Ure,Zre("hostGraph","edgeData"));function Hj(e,t,r,n,i){for(var a=new THe(n),o=0;o "+h)),u++)}var d=r.get("coordinateSystem"),v;if(d==="cartesian2d"||d==="polar"||d==="matrix")v=Yo(e,r);else{var g=$v.get(d),m=g?g.dimensions||[]:[];Ge(m,"value")<0&&m.concat(["value"]);var y=Wv(e,{coordDimensions:m,encodeDefine:r.getEncode()}).dimensions;v=new Dn(y,r),v.initData(e)}var _=new Dn(["value"],r);return _.initData(l,s),i&&i(v,_),Mre({mainData:v,struct:a,structAttr:"graph",datas:{node:v,edge:_},datasAttr:{node:"data",edge:"edgeData"}}),a.update(),a}var AHe=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 Xv(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),tf(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){fHe(this);var s=Hj(a,i,this,!0,l);return R(s.edges,function(u){hHe(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"),y=g[m];return y&&(y.parentModel=v.parentModel,v.parentModel=y),v});var f=tt.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),Ar("nameValue",{name:c.join(" > "),value:o.value,noValue:o.value==null})}var f=qJ({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:re({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:K.color.neutral50,width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:K.color.primary}}},t}(St);function CHe(e){e.registerChartView(SHe),e.registerSeriesModel(AHe),e.registerProcessor(oHe),e.registerVisual(sHe),e.registerVisual(lHe),e.registerLayout(dHe),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,pHe),e.registerLayout(mHe),e.registerCoordinateSystem("graphView",{dimensions:Lf.dimensions,create:xHe}),e.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},lr),e.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},lr),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=FT(o,t,i.get("scaleLimit"));i.setCenter&&i.setCenter(s.center),i.setZoom&&i.setZoom(s.zoom)})})}var EW=function(e){q(t,e);function t(r,n,i){var a=e.call(this)||this;De(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=re(Ao(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=re(Ao(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");Wt(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,A,M){return r.getFormattedLabel(_,b,"node",T,fi(A,f.normal&&f.normal.get("formatter"),n.get("name")),M)}},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",y=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:y}})},t}(bn),MHe=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;return De(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=re(Ao(c.getModel("itemStyle"),u,!0),u),m=this;if(isNaN(g.sStartAngle)||isNaN(g.tStartAngle)){m.setShape(g);return}o?(m.setShape(g),DW(m,l,r,h)):(pa(m),DW(m,l,r,h),lt(m,{shape:g},s,i)),Wt(this,v==="adjacency"?l.getAdjacentDataIndices():v,d.get("blurScope"),d.get("disabled")),Dr(m,f,"lineStyle"),n.setItemGraphicEl(l.dataIndex,m)},t}(rt);function DW(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(ve(l)&&ve(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 wf(f,h,d,v,[{offset:0,color:l},{offset:1,color:u}],!0)}break}}var PHe=Math.PI/180,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,n){},t.prototype.render=function(r,n,i){var a=r.getData(),o=this._data,s=this.group,l=-r.get("startAngle")*PHe;if(a.diff(o).add(function(c){var f=a.getItemLayout(c);if(f){var h=new EW(a,c,l);De(h).dataIndex=c,s.add(h)}}).update(function(c,f){var h=o.getItemGraphicEl(f),d=a.getItemLayout(c);if(!d){h&&Cs(h,r,f);return}h?h.updateData(a,c,l):h=new EW(a,c,l),s.add(h)}).remove(function(c){var f=o.getItemGraphicEl(c);f&&Cs(f,r,c)}).execute(),!o){var u=r.get("center");this.group.scaleX=.01,this.group.scaleY=.01,this.group.originX=de(u[0],i.getWidth()),this.group.originY=de(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 MHe(i,a,l,n);De(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&&Cs(u,r,l)}).execute(),this._edgeData=a},t.prototype.dispose=function(){},t.type="chord",t}(_t),kHe=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 Xv(pe(this.getData,this),pe(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=Hj(a,i,this,!0,s);return o.data}function s(l,u){var c=tt.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),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}(St),mM=Math.PI/180;function IHe(e,t){e.eachSeriesByType("chord",function(r){OHe(r,t)})}function OHe(e,t){var r=e.getData(),n=r.graph,i=e.getEdgeData(),a=i.count();if(a){var o=pJ(e,t),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=Math.max((e.get("padAngle")||0)*mM,0),h=Math.max((e.get("minAngle")||0)*mM,0),d=-e.get("startAngle")*mM,v=d+Math.PI*2,g=e.get("clockwise"),m=g?1:-1,y=[d,v];ST(y,!g);var _=y[0],b=y[1],S=b-_,T=r.getSum("value")===0&&i.getSum("value")===0,A=[],M=0;n.eachEdge(function(z){var V=T?1:z.getValue("value");T&&(V>0||h)&&(M+=2);var W=z.node1.dataIndex,Y=z.node2.dataIndex;A[W]=(A[W]||0)+V,A[Y]=(A[Y]||0)+V});var P=0;if(n.eachNode(function(z){var V=z.getValue("value");isNaN(V)||(A[z.dataIndex]=Math.max(V,A[z.dataIndex]||0)),!T&&(A[z.dataIndex]>0||h)&&M++,P+=A[z.dataIndex]||0}),!(M===0||P===0)){f*M>=Math.abs(S)&&(f=Math.max(0,(Math.abs(S)-h*M)/M)),(f+h)*M>=Math.abs(S)&&(h=(Math.abs(S)-f*M)/M);var k=(S-f*M*m)/P,I=0,O=0,D=0;n.eachNode(function(z){var V=A[z.dataIndex]||0,W=k*(P?V:1)*m;Math.abs(W)O){var B=I/O;n.eachNode(function(z){var V=z.getLayout().angle;Math.abs(V)>=h?z.setLayout({angle:V*B,ratio:B},!0):z.setLayout({angle:h,ratio:h===0?1:V/h},!0)})}else n.eachNode(function(z){if(!N){var V=z.getLayout().angle,W=Math.min(V/D,1),Y=W*I;V-Yh&&h>0){var W=N?1:Math.min(V/D,1),Y=V-h,Z=Math.min(Y,Math.min(F,I*W));F-=Z,z.setLayout({angle:V-Z,ratio:(V-Z)/V},!0)}else h>0&&z.setLayout({angle:h,ratio:V===0?1:h/V},!0)}});var $=_,U=[];n.eachNode(function(z){var V=Math.max(z.getLayout().angle,h);z.setLayout({cx:s,cy:l,r0:c,r:u,startAngle:$,endAngle:$+V*m,clockwise:g},!0),U[z.dataIndex]=$,$+=(V+f)*m}),n.eachEdge(function(z){var V=T?1:z.getValue("value"),W=k*(P?V:1)*m,Y=z.node1.dataIndex,Z=U[Y]||0,J=Math.abs((z.node1.getLayout().ratio||1)*W),ae=Z+J*m,ce=[s+c*Math.cos(Z),l+c*Math.sin(Z)],ge=[s+c*Math.cos(ae),l+c*Math.sin(ae)],We=z.node2.dataIndex,xe=U[We]||0,ne=Math.abs((z.node2.getLayout().ratio||1)*W),fe=xe+ne*m,le=[s+c*Math.cos(xe),l+c*Math.sin(xe)],ee=[s+c*Math.cos(fe),l+c*Math.sin(fe)];z.setLayout({s1:ce,s2:ge,sStartAngle:Z,sEndAngle:ae,t1:le,t2:ee,tStartAngle:xe,tEndAngle:fe,cx:s,cy:l,r:c,value:V,clockwise:g}),U[Y]=ae,U[We]=fe})}}}function EHe(e){e.registerChartView(LHe),e.registerSeriesModel(kHe),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,IHe),e.registerProcessor(Zv("chord"))}var DHe=function(){function e(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0}return e}(),NHe=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 DHe},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}(rt);function jHe(e,t){var r=e.get("center"),n=t.getWidth(),i=t.getHeight(),a=Math.min(n,i),o=de(r[0],t.getWidth()),s=de(r[1],t.getHeight()),l=de(e.get("radius"),a/2);return{cx:o,cy:s,r:l}}function x_(e,t){var r=e==null?"":e+"";return t&&(ve(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=jHe(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?Ow:bn,v=f.get("show"),g=f.getModel("lineStyle"),m=g.get("width"),y=[u,c];ST(y,!l),u=y[0],c=y[1];for(var _=c-u,b=u,S=[],T=0;v&&T=k&&(I===0?0:a[I-1][0])Math.PI/2&&(ae+=Math.PI)):J==="tangential"?ae=-P-Math.PI/2:ot(J)&&(ae=J*Math.PI/180),ae===0?f.add(new at({style:Mt(b,{text:V,x:Y,y:Z,verticalAlign:F<-.8?"top":F>.8?"bottom":"middle",align:B<-.4?"left":B>.4?"right":"center"},{inheritColor:W}),silent:!0})):f.add(new at({style:Mt(b,{text:V,x:Y,y:Z,verticalAlign:"middle",align:"center"},{inheritColor:W}),silent:!0,originX:Y,originY:Z,rotation:ae}))}if(_.get("show")&&$!==S){var U=_.get("distance");U=U?U+c:c;for(var ce=0;ce<=T;ce++){B=Math.cos(P),F=Math.sin(P);var ge=new yr({shape:{x1:B*(v-U)+h,y1:F*(v-U)+d,x2:B*(v-M-U)+h,y2:F*(v-M-U)+d},silent:!0,style:D});D.stroke==="auto"&&ge.setStyle({stroke:a(($+ce/T)/S)}),f.add(ge),P+=I}P-=I}else P+=k}},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"),y=m.get("show"),_=r.getData(),b=_.mapDimension("value"),S=+r.get("min"),T=+r.get("max"),A=[S,T],M=[s,l];function P(I,O){var D=_.getItemModel(I),N=D.getModel("pointer"),B=de(N.get("width"),o.r),F=de(N.get("length"),o.r),$=r.get(["pointer","icon"]),U=N.get("offsetCenter"),z=de(U[0],o.r),V=de(U[1],o.r),W=N.get("keepAspect"),Y;return $?Y=xr($,z-B/2,V-F,B,F,null,W):Y=new NHe({shape:{angle:-Math.PI/2,width:B,r:F,x:z,y:V}}),Y.rotation=-(O+Math.PI/2),Y.x=o.cx,Y.y=o.cy,Y}function k(I,O){var D=m.get("roundCap"),N=D?Ow:bn,B=m.get("overlap"),F=B?m.get("width"):c/_.count(),$=B?o.r-F:o.r-(I+1)*F,U=B?o.r:o.r-I*F,z=new N({shape:{startAngle:s,endAngle:O,cx:o.cx,cy:o.cy,clockwise:u,r0:$,r:U}});return B&&(z.z2=gt(_.get(b,I),[S,T],[100,0],!0)),z}(y||g)&&(_.diff(h).add(function(I){var O=_.get(b,I);if(g){var D=P(I,s);Nt(D,{rotation:-((isNaN(+O)?M[0]:gt(O,A,M,!0))+Math.PI/2)},r),f.add(D),_.setItemGraphicEl(I,D)}if(y){var N=k(I,s),B=m.get("clip");Nt(N,{shape:{endAngle:gt(O,A,M,B)}},r),f.add(N),rI(r.seriesIndex,_.dataType,I,N),v[I]=N}}).update(function(I,O){var D=_.get(b,I);if(g){var N=h.getItemGraphicEl(O),B=N?N.rotation:s,F=P(I,B);F.rotation=B,lt(F,{rotation:-((isNaN(+D)?M[0]:gt(D,A,M,!0))+Math.PI/2)},r),f.add(F),_.setItemGraphicEl(I,F)}if(y){var $=d[O],U=$?$.shape.endAngle:s,z=k(I,U),V=m.get("clip");lt(z,{shape:{endAngle:gt(D,A,M,V)}},r),f.add(z),rI(r.seriesIndex,_.dataType,I,z),v[I]=z}}).execute(),_.each(function(I){var O=_.getItemModel(I),D=O.getModel("emphasis"),N=D.get("focus"),B=D.get("blurScope"),F=D.get("disabled");if(g){var $=_.getItemGraphicEl(I),U=_.getItemVisual(I,"style"),z=U.fill;if($ instanceof Xr){var V=$.style;$.useStyle(re({image:V.image,x:V.x,y:V.y,width:V.width,height:V.height},U))}else $.useStyle(U),$.type!=="pointer"&&$.setColor(z);$.setStyle(O.getModel(["pointer","itemStyle"]).getItemStyle()),$.style.fill==="auto"&&$.setStyle("fill",a(gt(_.get(b,I),A,[0,1],!0))),$.z2EmphasisLift=0,Dr($,O),Wt($,N,B,F)}if(y){var W=v[I];W.useStyle(_.getItemVisual(I,"style")),W.setStyle(O.getModel(["progress","itemStyle"]).getItemStyle()),W.z2EmphasisLift=0,Dr(W,O),Wt(W,N,B,F)}}),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+de(l[0],n.r),n.cy-o/2+de(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(y){d[y]=new at({silent:!0}),v[y]=new at({silent:!0})}).update(function(y,_){d[y]=s._titleEls[_],v[y]=s._detailEls[_]}).execute(),l.each(function(y){var _=l.getItemModel(y),b=l.get(u,y),S=new Me,T=a(gt(b,[c,f],[0,1],!0)),A=_.getModel("title");if(A.get("show")){var M=A.get("offsetCenter"),P=o.cx+de(M[0],o.r),k=o.cy+de(M[1],o.r),I=d[y];I.attr({z2:m?0:2,style:Mt(A,{x:P,y:k,text:l.getName(y),align:"center",verticalAlign:"middle"},{inheritColor:T})}),S.add(I)}var O=_.getModel("detail");if(O.get("show")){var D=O.get("offsetCenter"),N=o.cx+de(D[0],o.r),B=o.cy+de(D[1],o.r),F=de(O.get("width"),o.r),$=de(O.get("height"),o.r),U=r.get(["progress","show"])?l.getItemVisual(y,"style").fill:T,I=v[y],z=O.get("formatter");I.attr({z2:m?0:2,style:Mt(O,{x:N,y:B,text:x_(b,z),width:isNaN(F)?null:F,height:isNaN($)?null:$,align:"center",verticalAlign:"middle"},{inheritColor:U})}),KQ(I,{normal:O},b,function(W){return x_(W,z)}),g&&QQ(I,y,l,r,{getFormattedLabel:function(W,Y,Z,J,ae,ce){return x_(ce?ce.interpolatedValue:b,z)}}),S.add(I)}h.add(S)}),this.group.add(h),this._titleEls=d,this._detailEls=v},t.type="gauge",t}(_t),BHe=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 Yv(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,K.color.neutral10]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:K.color.axisTick,width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:K.color.axisTickMinor,width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:K.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:K.color.neutral00,borderWidth:0,borderColor:K.color.theme[0]}},title:{show:!0,offsetCenter:[0,"20%"],color:K.color.secondary,fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:K.color.transparent,borderWidth:0,borderColor:K.color.neutral40,width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:K.color.primary,fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},t}(St);function zHe(e){e.registerChartView(RHe),e.registerSeriesModel(BHe)}var $He=["itemStyle","opacity"],FHe=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($He);c=c??1,i||pa(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),Dr(a,s),this._updateLabel(r,n),Wt(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}),yj(i,xj(l),{stroke:h})},t}(wn),VHe=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 FHe(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);Cs(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}(_t),GHe=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 Xv(pe(this.getData,this),pe(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.getInitialData=function(r,n){return Yv(this,{coordDimensions:["value"],encodeDefaulter:ze(UN,this)})},t.prototype._defaultLabelLine=function(r){tf(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:K.color.neutral00,borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:K.color.primary}}},t}(St);function WHe(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();oo8e)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||!xM(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 xM(e,t){var r=e._model;return r.get("axisExpandable")&&r.get("axisExpandTriggerOn")===t}var 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(){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}(Qe),c8e=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}(_a);function au(e,t,r,n,i,a){e=e||0;var o=r[1]-r[0];if(i!=null&&(i=ch(i,[0,o])),a!=null&&(a=Math.max(a,i??0)),n==="all"){var s=Math.abs(t[1]-t[0]);s=ch(s,[0,o]),i=a=ch(s,[i,a]),n=0}t[0]=ch(t[0],r),t[1]=ch(t[1],r);var l=_M(t,n);t[n]+=e;var u=i||0,c=r.slice();l.sign<0?c[0]+=u:c[1]-=u,t[n]=ch(t[n],c);var f;return f=_M(t,n),i!=null&&(f.sign!==l.sign||f.spana&&(t[1-n]=t[n]+f.sign*a),t}function _M(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 ch(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,Xre=Math.min,qre=Math.max,RW=Math.floor,f8e=Math.ceil,BW=mr,h8e=Math.PI,d8e=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 c8e(o,p0(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)),uf(o.scale,o.model)},this)}},this)},e.prototype.resize=function(t,r){var n=jr(t,r).refContainer;this._rect=$t(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=__(t.get("axisExpandWidth"),l),f=__(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=__(d[1]-d[0],l),d[1]=d[0]+v;else{v=__(c*(f-1),l);var g=t.get("axisExpandCenter")||RW(u/2);d=[c*g-v/2],d[1]=d[0]+v}var m=(s-v)/(u-f);m<3&&(m=0);var y=[RW(BW(d[0]/c,1))+1,f8e(BW(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:y,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?p8e:v8e)(s,i),u={horizontal:{x:l.position,y:i.axisLength},vertical:{x:0,y:l.position}},c={horizontal:h8e/2,vertical:0},f=[u[a].x+t.x,u[a].y+t.y],h=c[a],d=Wr();qs(d,d,h),Ua(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?au(l,i,o,"all"):u="none";else{var d=i[1]-i[0],v=o[1]*s/d;i=[qre(0,v-d/2)],i[1]=Xre(o[1],i[0]+d),i[0]=i[1]-d}return{axisExpandWindow:i,behavior:u}},e}();function __(e,t){return Xre(qre(e,t[0]),t[1])}function v8e(e,t){var r=t.layoutLength/(t.axisCount-1);return{position:r*e,axisNameAvailableWidth:r,axisLabelShow:!0}}function p8e(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--)Mi(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;a_8e}function rne(e){var t=e.length-1;return t<0&&(t=0),[e[0],e[t]]}function nne(e,t,r,n){var i=new Me;return i.add(new Xe({name:"main",style:qj(r),silent:!0,draggable:!0,cursor:"move",drift:ze(FW,e,t,i,["n","s","w","e"]),ondragend:ze(ff,t,{isEnd:!0})})),R(n,function(a){i.add(new Xe({name:a.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:ze(FW,e,t,i,a),ondragend:ze(ff,t,{isEnd:!0})}))}),i}function ine(e,t,r,n){var i=n.brushStyle.lineWidth||0,a=av(i,b8e),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,y=g+i;is(e,t,"main",o,s,v,g),n.transformable&&(is(e,t,"w",l,u,a,y),is(e,t,"e",h,u,a,y),is(e,t,"n",l,u,m,a),is(e,t,"s",l,d,m,a),is(e,t,"nw",l,u,a,a),is(e,t,"ne",h,u,a,a),is(e,t,"sw",l,d,a,a),is(e,t,"se",h,d,a,a))}function uO(e,t){var r=t.__brushOption,n=r.transformable,i=t.childAt(0);i.useStyle(qj(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?cO(e,a[0]):M8e(e,a);o&&o.attr({silent:!n,invisible:!n,cursor:n?S8e[s]+"-resize":null})})}function is(e,t,r,n,i,a,o){var s=t.childOfName(r);s&&s.setShape(L8e(Kj(e,t,[[n,i],[n+a,i+o]])))}function qj(e){return Pe({strokeNoScale:!0},e.brushStyle)}function ane(e,t,r,n){var i=[Dy(e,r),Dy(t,n)],a=[av(e,r),av(t,n)];return[[i[0],a[0]],[i[1],a[1]]]}function C8e(e){return Yl(e.group)}function cO(e,t){var r={w:"left",e:"right",n:"top",s:"bottom"},n={left:"w",right:"e",top:"n",bottom:"s"},i=MT(r[t],C8e(e));return n[i]}function M8e(e,t){var r=[cO(e,t[0]),cO(e,t[1])];return(r[0]==="e"||r[0]==="w")&&r.reverse(),r.join("")}function FW(e,t,r,n,i,a){var o=r.__brushOption,s=e.toRectRange(o.range),l=one(t,i,a);R(n,function(u){var c=w8e[u];s[c[0]][c[1]]+=l[c[0]]}),o.range=e.fromRectRange(ane(s[0][0],s[1][0],s[0][1],s[1][1])),Zj(t,r),ff(t,{isEnd:!1})}function P8e(e,t,r,n){var i=t.__brushOption.range,a=one(e,r,n);R(i,function(o){o[0]+=a[0],o[1]+=a[1]}),Zj(e,t),ff(e,{isEnd:!1})}function one(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 Kj(e,t,r){var n=tne(e,t);return n&&n!==cf?n.clipPath(r,e._transform):Ce(r)}function L8e(e){var t=Dy(e[0][0],e[1][0]),r=Dy(e[0][1],e[1][1]),n=av(e[0][0],e[1][0]),i=av(e[0][1],e[1][1]);return{x:t,y:r,width:n-t,height:i-r}}function k8e(e,t,r){if(!(!e._brushType||O8e(e,t.offsetX,t.offsetY))){var n=e._zr,i=e._covers,a=Xj(e,t,r);if(!e._dragging)for(var o=0;on.getWidth()||r<0||r>n.getHeight()}var HT={lineX:WW(0),lineY:WW(1),rect:{createCover:function(e,t){function r(n){return n}return nne({toRectRange:r,fromRectRange:r},e,t,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(e){var t=rne(e);return ane(t[1][0],t[1][1],t[0][0],t[0][1])},updateCoverShape:function(e,t,r,n){ine(e,t,r,n)},updateCommon:uO,contain:hO},polygon:{createCover:function(e,t){var r=new Me;return r.add(new on({name:"main",style:qj(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:ze(P8e,e,t),ondragend:ze(ff,e,{isEnd:!0})}))},updateCoverShape:function(e,t,r,n){t.childAt(0).setShape({points:Kj(e,t,r)})},updateCommon:uO,contain:hO}};function WW(e){return{createCover:function(t,r){return nne({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=rne(t),n=Dy(r[0][e],r[1][e]),i=av(r[0][e],r[1][e]);return[n,i]},updateCoverShape:function(t,r,n,i){var a,o=tne(t,r);if(o!==cf&&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(),ine(t,r,l,i)},updateCommon:uO,contain:hO}}function lne(e){return e=Qj(e),function(t){return MN(t,e)}}function une(e,t){return e=Qj(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 cne(e,t,r){var n=Qj(e);return function(i,a){return n.contain(a[0],a[1])&&!pre(i,t,r)}}function Qj(e){return Oe.create(e)}var E8e=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 Uj(n.getZr())).on("brush",pe(this._onBrush,this))},t.prototype.render=function(r,n,i,a){if(!D8e(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=j8e(r,n),l=s.coordinateSystem,u=r.getAreaSelectStyle(),c=u.width,f=r.axis.dim,h=l.getAxisLayout(f),d=re({strokeContainThreshold:c},h),v=new Hn(r,i,d);v.build(),this._axisGroup.add(v.group),this._refreshBrushController(d,u,r,s,c,i),f0(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:lne(f),isTargetByCursor:cne(f,s,a),getLinearBrushOtherExtent:une(f,0)}]).enableBrush({brushType:"lineX",brushStyle:n,removeOnClick:!0}).updateCovers(N8e(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 D8e(e,t,r){return r&&r.type==="axisAreaSelect"&&t.findComponents({mainType:"parallelAxis",query:r})[0]===e}function N8e(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 j8e(e,t){return t.getComponent("parallel",e.get("parallelIndex"))}var R8e={type:"axisAreaSelect",event:"axisAreaSelected"};function B8e(e){e.registerAction(R8e,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 z8e={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function fne(e){e.registerComponentView(s8e),e.registerComponentModel(u8e),e.registerCoordinateSystem("parallel",m8e),e.registerPreprocessor(n8e),e.registerComponentModel(sO),e.registerComponentView(E8e),nv(e,"parallel",sO,z8e),B8e(e)}function $8e(e){Ze(fne),e.registerChartView(XHe),e.registerSeriesModel(QHe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,r8e)}var F8e=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}(),V8e=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new F8e},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(){$s(this)},t.prototype.downplay=function(){Fs(this)},t}(rt),G8e=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 Pf(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),gre(r,i,s,this._controller,this._controllerHost,null),o.eachEdge(function(v){var g=new V8e,m=De(g);m.dataIndex=v.dataIndex,m.seriesIndex=r.seriesIndex,m.dataType="edge";var y=v.getModel(),_=y.getModel("lineStyle"),b=_.get("curveness"),S=v.node1.getLayout(),T=v.node1.getModel(),A=T.get("localX"),M=T.get("localY"),P=v.node2.getLayout(),k=v.node2.getModel(),I=k.get("localX"),O=k.get("localY"),D=v.getLayout(),N,B,F,$,U,z,V,W;g.shape.extent=Math.max(1,D.dy),g.shape.orient=d,d==="vertical"?(N=(A!=null?A*u:S.x)+D.sy,B=(M!=null?M*c:S.y)+S.dy,F=(I!=null?I*u:P.x)+D.ty,$=O!=null?O*c:P.y,U=N,z=B*(1-b)+$*b,V=F,W=B*b+$*(1-b)):(N=(A!=null?A*u:S.x)+S.dx,B=(M!=null?M*c:S.y)+D.sy,F=I!=null?I*u:P.x,$=(O!=null?O*c:P.y)+D.ty,U=N*(1-b)+F*b,z=B,V=N*b+F*(1-b),W=$),g.setShape({x1:N,y1:B,x2:F,y2:$,cpx1:U,cpy1:z,cpx2:V,cpy2:W}),g.useStyle(_.getItemStyle()),HW(g.style,d,v);var Y=""+y.get("value"),Z=Nr(y,"edgeLabel");Ur(g,Z,{labelFetcher:{getFormattedLabel:function(ce,ge,We,xe,ne,fe){return r.getFormattedLabel(ce,ge,"edge",xe,fi(ne,Z.normal&&Z.normal.get("formatter"),Y),fe)}},labelDataIndex:v.dataIndex,defaultText:Y}),g.setTextConfig({position:"inside"});var J=y.getModel("emphasis");Dr(g,y,"lineStyle",function(ce){var ge=ce.getItemStyle();return HW(ge,d,v),ge}),s.add(g),h.setItemGraphicEl(v.dataIndex,g);var ae=J.get("focus");Wt(g,ae==="adjacency"?v.getAdjacentDataIndices():ae==="trajectory"?v.getTrajectoryDataIndices():ae,J.get("blurScope"),J.get("disabled"))}),o.eachNode(function(v){var g=v.getLayout(),m=v.getModel(),y=m.get("localX"),_=m.get("localY"),b=m.getModel("emphasis"),S=m.get(["itemStyle","borderRadius"])||0,T=new Xe({shape:{x:y!=null?y*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(M,P){return r.getFormattedLabel(M,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),De(T).dataType="node";var A=b.get("focus");Wt(T,A==="adjacency"?v.getAdjacentDataIndices():A==="trajectory"?v.getTrajectoryDataIndices():A,b.get("blurScope"),b.get("disabled"))}),f.eachItemGraphicEl(function(v,g){var m=f.getItemModel(g);m.get("draggable")&&(v.drift=function(y,_){a._focusAdjacencyDisabled=!0,this.shape.x+=y,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(W8e(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 Lf(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}(_t);function HW(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");ve(n)&&ve(i)&&(e.fill=new wf(0,0,+(t==="horizontal"),+(t==="vertical"),[{color:n,offset:0},{color:i,offset:1}]))}}function W8e(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 H8e=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 tt(o[l],this,n));var u=Hj(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 y=m.depth,_=g.levelModels[y];_&&(d.parentModel=_)}return d}),h.wrapMethod("getItemModel",function(d,v){var g=d.parentModel,m=g.getGraph().getEdgeByIndex(v),y=m.node1.getLayout();if(y){var _=y.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 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:K.color.neutral50,opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:K.color.primary}},animationEasing:"linear",animationDuration:1e3},t}(St);function U8e(e,t){e.eachSeriesByType("sankey",function(r){var n=r.get("nodeWidth"),i=r.get("nodeGap"),a=jr(r,t).refContainer,o=$t(r.getBoxLayoutParams(),a);r.layoutInfo=o;var s=o.width,l=o.height,u=r.getGraph(),c=u.nodes,f=u.edges;Y8e(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");Z8e(c,f,n,i,s,l,d,v,g)})}function Z8e(e,t,r,n,i,a,o,s,l){X8e(e,t,r,i,a,s,l),J8e(e,t,a,i,n,o,s),lUe(e,s)}function Y8e(e){R(e,function(t){var r=Kl(t.outEdges,$w),n=Kl(t.inEdges,$w),i=t.getValue()||0,a=Math.max(r,n,i);t.setLayout({value:a},!0)})}function X8e(e,t,r,n,i,a,o){for(var s=[],l=[],u=[],c=[],f=0,h=0;h=0;y&&m.depth>d&&(d=m.depth),g.setLayout({depth:y?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"&&q8e(e,o,a,M);var P=a==="vertical"?(i-r)/M:(n-r)/M;Q8e(e,P,a)}function hne(e){var t=e.hostGraph.data.getRawDataItem(e.dataIndex);return t.depth!=null&&t.depth>=0}function q8e(e,t,r,n){if(t==="right"){for(var i=[],a=e,o=0;a.length;){for(var s=0;s0;a--)l*=.99,rUe(s,l,o),wM(s,i,r,n,o),sUe(s,l,o),wM(s,i,r,n,o)}function eUe(e,t){var r=[],n=t==="vertical"?"y":"x",i=Kk(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 tUe(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 rUe(e,t,r){R(e.slice().reverse(),function(n){R(n,function(i){if(i.outEdges.length){var a=Kl(i.outEdges,nUe,r)/Kl(i.outEdges,$w);if(isNaN(a)){var o=i.outEdges.length;a=o?Kl(i.outEdges,iUe,r)/o:0}if(r==="vertical"){var s=i.getLayout().x+(a-ou(i,r))*t;i.setLayout({x:s},!0)}else{var l=i.getLayout().y+(a-ou(i,r))*t;i.setLayout({y:l},!0)}}})})}function nUe(e,t){return ou(e.node2,t)*e.getValue()}function iUe(e,t){return ou(e.node2,t)}function aUe(e,t){return ou(e.node1,t)*e.getValue()}function oUe(e,t){return ou(e.node1,t)}function ou(e,t){return t==="vertical"?e.getLayout().x+e.getLayout().dx/2:e.getLayout().y+e.getLayout().dy/2}function $w(e){return e.getValue()}function Kl(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 cUe(e){e.registerChartView(G8e),e.registerSeriesModel(H8e),e.registerLayout(U8e),e.registerVisual(uUe),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=FT(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}var dne=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 y=[];R(m,function(S,T){var A;ie(S)?(A=S.slice(),S.unshift(T)):ie(S.value)?(A=re({},S),A.value=A.value.slice(),S.value.unshift(T)):A=S,y.push(A)}),t.data=y}var _=this.defaultValueDimensions,b=[{name:f,type:Sw(v),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:h,type:Sw(g),dimsDef:_.slice()}];return Yv(this,{coordDimensions:b,dimensionsCount:_.length+1,encodeDefaulter:ze(SJ,b,this)})},e.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},e}(),vne=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:K.color.neutral00,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:K.color.shadow}},animationDuration:800},t}(St);fr(vne,dne,!0);var fUe=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=UW(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?(pa(f),pne(h,f,a,u)):f=UW(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}(_t),hUe=function(){function e(){}return e}(),dUe=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 hUe},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=[y,b];n.push(S)}}}return{boxData:r,outliers:n}}var _Ue={type:"echarts:boxplot",transform:function(t){var r=t.upstream;if(r.sourceFormat!==sn){var n="";mt(n)}var i=xUe(r.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};function bUe(e){e.registerSeriesModel(vne),e.registerChartView(fUe),e.registerLayout(pUe),e.registerTransform(_Ue)}var wUe=["itemStyle","borderColor"],SUe=["itemStyle","borderColor0"],TUe=["itemStyle","borderColorDoji"],AUe=["itemStyle","color"],CUe=["itemStyle","color0"];function Jj(e,t){return t.get(e>0?AUe:CUe)}function eR(e,t){return t.get(e===0?TUe:e>0?wUe:SUe)}var MUe={seriesType:"candlestick",plan:Fv(),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=Jj(s,o),l.stroke=eR(s,o)||l.fill;var u=i.ensureUniqueItemVisual(a,"style");re(u,l)}}}}}},PUe=["color","borderColor"],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){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){yu(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&&ZW(u,f))return;var h=SM(f,c,!0);Nt(h,{shape:{points:f.ends}},r,c),TM(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&&ZW(u,d)){a.remove(h);return}h?(lt(h,{shape:{points:d.ends}},r,c),pa(h)):h=SM(d),TM(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(),YW(r,this.group);var n=r.get("clip",!0)?y0(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=SM(s);TM(l,i,o,a),l.incremental=!0,this.group.add(l),this._progressiveEls.push(l)}},t.prototype._incrementalRenderLarge=function(r,n){YW(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}(_t),kUe=function(){function e(){}return e}(),IUe=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 kUe},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}(rt);function SM(e,t,r){var n=e.ends;return new IUe({shape:{points:r?OUe(n,e):n},z2:100})}function ZW(e,t){for(var r=!0,n=0;nT?O[a]:I[a],ends:B,brushRect:V(A,M,b)})}function U(Y,Z){var J=[];return J[i]=Z,J[a]=Y,isNaN(Z)||isNaN(Y)?[NaN,NaN]:t.dataToPoint(J)}function z(Y,Z,J){var ae=Z.slice(),ce=Z.slice();ae[i]=nb(ae[i]+n/2,1,!1),ce[i]=nb(ce[i]-n/2,1,!0),J?Y.push(ae,ce):Y.push(ce,ae)}function V(Y,Z,J){var ae=U(Y,J),ce=U(Z,J);return ae[i]-=n/2,ce[i]-=n/2,{x:ae[0],y:ae[1],width:n,height:ce[1]-ae[1]}}function W(Y){return Y[i]=nb(Y[i],1),Y}}function v(g,m){for(var y=So(g.count*4),_=0,b,S=[],T=[],A,M=m.getStore(),P=!!e.get(["itemStyle","borderColorDoji"]);(A=g.next())!=null;){var k=M.get(s,A),I=M.get(u,A),O=M.get(c,A),D=M.get(f,A),N=M.get(h,A);if(isNaN(k)||isNaN(D)||isNaN(N)){y[_++]=NaN,_+=3;continue}y[_++]=XW(M,A,I,O,c,P),S[i]=k,S[a]=D,b=t.dataToPoint(S,null,T),y[_++]=b?b[0]:NaN,y[_++]=b?b[1]:NaN,S[a]=N,b=t.dataToPoint(S,null,T),y[_++]=b?b[1]:NaN}m.setLayout("largePoints",y)}}};function XW(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 jUe(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=de(be(e.get("barMaxWidth"),i),i),o=de(be(e.get("barMinWidth"),1),i),s=e.get("barWidth");return s!=null?de(s,i):Math.max(Math.min(i/2,a),o)}function RUe(e){e.registerChartView(LUe),e.registerSeriesModel(gne),e.registerPreprocessor(DUe),e.registerVisual(MUe),e.registerLayout(NUe)}function qW(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 BUe=function(e){q(t,e);function t(r,n){var i=e.call(this)||this,a=new g0(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;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 ps(r.__p1,r.__cp1)+ps(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=Nk;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}(mne),GUe=function(){function e(){this.polyline=!1,this.curveness=0,this.segs=[]}return e}(),WUe=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:K.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new GUe},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,y=(h+g)/2-(v-f)*o;if(yQ(f,h,m,y,v,g,s,r,n))return l}else if(yl(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}(),xne={seriesType:"lines",plan:Fv(),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)&&y0(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=xne.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 HUe:new Wj(o?a?VUe:yne:a?mne:Gj),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}(_t),ZUe=typeof Uint32Array>"u"?Array:Uint32Array,YUe=typeof Float64Array>"u"?Array:Float64Array;function KW(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),fT([i,r[0],r[1]])}))}var XUe=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||[],KW(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(KW(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=Hd(this._flatCoords,n.flatCoords),this._flatCoordsOffset=Hd(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}(St);function b_(e){return e instanceof Array||(e=[e,e]),e}var qUe={seriesType:"lines",reset:function(e){var t=b_(e.get("symbol")),r=b_(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=b_(s.getShallow("symbol",!0)),u=b_(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 KUe(e){e.registerChartView(UUe),e.registerSeriesModel(XUe),e.registerLayout(xne),e.registerVisual(qUe)}var QUe=256,JUe=function(){function e(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=hi.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*I+P),T[A++]=D[O],T[A++]=D[O+1],T[A++]=D[O+2],T[A++]=D[O+3]*b*256}else A+=4}return h.putImageData(S,0,0),f},e.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=hi.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=K.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 e7e(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 QW(e){var t=e.dimensions;return t[0]==="lng"&&t[1]==="lat"}var r7e=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()):QW(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&&(QW(o)?this.render(n,i,a):(this._progressiveEls=[],this._renderOnGridLike(n,a,r.start,r.end,!0)))},t.prototype.eachRendered=function(r){yu(this._progressiveEls||this.group,r)},t.prototype._renderOnGridLike=function(r,n,i,a,o){var s=r.coordinateSystem,l=iu(s,"cartesian2d"),u=iu(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,y=r.getData(),_=r.getModel(["emphasis","itemStyle"]).getItemStyle(),b=r.getModel(["blur","itemStyle"]).getItemStyle(),S=r.getModel(["select","itemStyle"]).getItemStyle(),T=r.get(["itemStyle","borderRadius"]),A=Nr(r),M=r.getModel("emphasis"),P=M.get("focus"),k=M.get("blurScope"),I=M.get("disabled"),O=l||u?[y.mapDimension("x"),y.mapDimension("y"),y.mapDimension("value")]:[y.mapDimension("time"),y.mapDimension("value")],D=i;Dh[1]||$d[1])continue;var U=s.dataToPoint([F,$]);N=new Xe({shape:{x:U[0]-c/2,y:U[1]-f/2,width:c,height:f},style:B})}else if(u){var z=s.dataToLayout([y.get(O[0],D),y.get(O[1],D)]).rect;if(mn(z.x))continue;N=new Xe({z2:1,shape:z,style:B})}else{if(isNaN(y.get(O[1],D)))continue;var V=s.dataToLayout([y.get(O[0],D)]),z=V.contentRect||V.rect;if(mn(z.x)||mn(z.y))continue;N=new Xe({z2:1,shape:z,style:B})}if(y.hasItemOption){var W=y.getItemModel(D),Y=W.getModel("emphasis");_=Y.getModel("itemStyle").getItemStyle(),b=W.getModel(["blur","itemStyle"]).getItemStyle(),S=W.getModel(["select","itemStyle"]).getItemStyle(),T=W.get(["itemStyle","borderRadius"]),P=Y.get("focus"),k=Y.get("blurScope"),I=Y.get("disabled"),A=Nr(W)}N.shape.r=T;var Z=r.getRawValue(D),J="-";Z&&Z[2]!=null&&(J=Z[2]+""),Ur(N,A,{labelFetcher:r,labelDataIndex:D,defaultOpacity:B.opacity,defaultText:J}),N.ensureState("emphasis").style=_,N.ensureState("blur").style=b,N.ensureState("select").style=S,Wt(N,P,k,I),N.incremental=o,o&&(N.states.emphasis.hoverLayer=!0),m.add(N),y.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 JUe;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,y=g-d,_=[l.mapDimension("lng"),l.mapDimension("lat"),l.mapDimension("value")],b=l.mapArray(_,function(M,P,k){var I=r.dataToPoint([M,P]);return I[0]-=h,I[1]-=d,I.push(k),I}),S=i.getExtent(),T=i.type==="visualMap.continuous"?t7e(S,i.option.range):e7e(S,i.getPieceList(),i.option.selected);u.update(b,m,y,o.color.getNormalizer(),{inRange:o.color.getColorMapper(),outOfRange:s.color.getColorMapper()},T);var A=new Xr({style:{width:m,height:y,x:h,y:d,image:u.canvas},silent:!0});this.group.add(A)},t.type="heatmap",t}(_t),n7e=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 Yo(null,this,{generateCoord:"value"})},t.prototype.preventIncremental=function(){var r=$v.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:K.color.primary}}},t}(St);function i7e(e){e.registerChartView(r7e),e.registerSeriesModel(n7e)}var a7e=["itemStyle","borderWidth"],JW=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],MM=new Zo,o7e=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:JW[+c],categoryDim:JW[1-+c]};o.diff(s).add(function(v){if(o.hasValue(v)){var g=tH(o,v),m=eH(o,v,g,h),y=rH(o,h,m);o.setItemGraphicEl(v,y),a.add(y),iH(y,h,m)}}).update(function(v,g){var m=s.getItemGraphicEl(g);if(!o.hasValue(v)){a.remove(m);return}var y=tH(o,v),_=eH(o,v,y,h),b=Ane(o,_);m&&b!==m.__pictorialShapeStr&&(a.remove(m),o.setItemGraphicEl(v,null),m=null),m?d7e(m,h,_):m=rH(o,h,_,!0),o.setItemGraphicEl(v,m),m.__pictorialSymbolMeta=_,a.add(m),iH(m,h,_)}).remove(function(v){var g=s.getItemGraphicEl(v);g&&nH(s,v,g.__pictorialSymbolMeta.animationModel,g)}).execute();var d=r.get("clip",!0)?y0(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){nH(a,De(o).dataIndex,r,o)}):i.removeAll()},t.type="pictorialBar",t}(_t);function eH(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};s7e(r,a,i,n,h),l7e(e,t,i,a,o,h.boundingLength,h.pxSign,c,n,h),u7e(r,h.symbolScale,u,n,h);var d=h.symbolSize,v=Cf(r.get("symbolOffset"),d);return c7e(r,d,i,a,o,v,s,h.valueLineWidth,h.boundingLength,h.repeatCutLength,n,h),h}function s7e(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(ie(o)){var f=[PM(s,o[0])-l,PM(s,o[1])-l];f[1]=0?1:-1:c>0?1:-1}function PM(e,t){return e.toGlobalCoord(e.dataToCoord(e.scale.parse(t)))}function l7e(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;ie(d)?v=d.slice():d==null?v=["100%","100%"]:v=[d,d],v[f.index]=de(v[f.index],h),v[c.index]=de(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 u7e(e,t,r,n,i){var a=e.get(a7e)||0;a&&(MM.attr({scaleX:t[0],scaleY:t[1],rotation:r}),MM.updateTransform(),a/=MM.getLineScale(),a*=t[n.valueDim.index]),i.valueLineWidth=a||0}function c7e(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 y=Math.abs(l),_=nn(e.get("symbolMargin"),"15%")+"",b=!1;_.lastIndexOf("!")===_.length-1&&(b=!0,_=_.slice(0,_.length-1));var S=de(_,t[d.index]),T=Math.max(g+S*2,0),A=b?0:S*2,M=cN(n),P=M?n:aH((y+A)/T),k=y-P*g;S=k/2/(b?P:Math.max(P-1,1)),T=g+S*2,A=b?0:S*2,!M&&n!=="fixed"&&(P=u?aH((Math.abs(u)+A)/T):0),m=P*T-A,f.repeatTimes=P,f.symbolMargin=S}var I=v*(m/2),O=f.pathPosition=[];O[h.index]=r[h.wh]/2,O[d.index]=o==="start"?I:o==="end"?l-I: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=re({},r);N[d.wh]=v*Math.max(Math.abs(r[d.wh]),Math.abs(O[d.index]+I)),N[h.wh]=r[h.wh];var B=f.clipShape={};B[h.xy]=-r[h.xy],B[h.wh]=c.ecSize[h.wh],B[d.xy]=0,B[d.wh]=r[d.wh]}function _ne(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 bne(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(tR(e,function(g){g.__pictorialAnimationIndex=c,g.__pictorialRepeatTimes=u,c0:y<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 wne(e,t,r,n){var i=e.__pictorialBundle,a=e.__pictorialMainPath;a?cd(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=_ne(r),i.add(a),cd(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 Sne(e,t,r){var n=re({},t.barRectShape),i=e.__pictorialBarRect;i?cd(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 Tne(e,t,r,n){if(r.symbolClip){var i=e.__pictorialClipPath,a=re({},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],Sf[n?"updateProps":"initProps"](i,{shape:u},s,l)}}}function tH(e,t){var r=e.getItemModel(t);return r.getAnimationDelayParams=f7e,r.isAnimationEnabled=h7e,r}function f7e(e){return{index:e.__pictorialAnimationIndex,count:e.__pictorialRepeatTimes}}function h7e(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function rH(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?bne(i,t,r):wne(i,t,r),Sne(i,r,n),Tne(i,t,r,n),i.__pictorialShapeStr=Ane(e,r),i.__pictorialSymbolMeta=r,i}function d7e(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?bne(e,t,r,!0):wne(e,t,r,!0),Sne(e,r,!0),Tne(e,t,r,!0)}function nH(e,t,r,n){var i=n.__pictorialBarRect;i&&i.removeTextContent();var a=[];tR(n,function(o){a.push(o)}),n.__pictorialMainPath&&a.push(n.__pictorialMainPath),n.__pictorialClipPath&&(r=null),R(a,function(o){nu(o,{scaleX:0,scaleY:0},r,t,function(){n.parent&&n.parent.remove(n)})}),e.setItemGraphicEl(t,null)}function Ane(e,t){return[e.getItemVisual(t.dataIndex,"symbol")||"none",!!t.symbolRepeat,!!t.symbolClip].join(":")}function tR(e,t,r){R(e.__pictorialBundle.children(),function(n){n!==e.__pictorialBarRect&&t.call(r,n)})}function cd(e,t,r,n,i,a){t&&e.attr(t),n.symbolClip&&!i?r&&e.attr(r):r&&Sf[i?"updateProps":"initProps"](e,r,n.animationModel,n.dataIndex,a)}function iH(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");tR(e,function(g){if(g instanceof Xr){var m=g.style;g.useStyle(re({image:m.image,x:m.x,y:m.y,width:m.width,height:m.height},r.style))}else g.useStyle(r.style);var y=g.ensureState("emphasis");y.style=o,h&&(y.scaleX=g.scaleX*1.1,y.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:rv(t.seriesModel.getData(),n),inheritColor:r.style.fill,defaultOpacity:r.style.opacity,defaultOutsidePosition:d}),Wt(e,c,f,a.get("disabled"))}function aH(e){var t=Math.round(e);return Math.abs(e-t)<1e-4?t:Math.ceil(e)}var v7e=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=xu(Py.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:K.color.primary}}}),t}(Py);function p7e(e){e.registerChartView(o7e),e.registerSeriesModel(v7e),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,ze(Hee,"pictorialBar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,Uee("pictorialBar"))}var g7e=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 Vs(this._layersSeries||[],l,h,h),v=[];d.add(pe(g,this,"add")).update(pe(g,this,"update")).remove(pe(g,this,"remove")).execute();function g(m,y,_){var b=o._layers;if(m==="remove"){s.remove(b[y]);return}for(var S=[],T=[],A,M=l[y].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(g7e),e.registerSeriesModel(y7e),e.registerLayout(x7e),e.registerProcessor(Zv("themeRiver"))}var w7e=2,S7e=4,sH=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;o.z2=w7e,o.textConfig={inside:!0},De(o).seriesIndex=n.seriesIndex;var s=new at({z2:S7e,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;De(s).dataIndex=n.dataIndex;var l=n.getModel(),u=l.getModel("emphasis"),c=n.getLayout(),f=re({},c);f.label=null;var h=n.getVisual("style");h.lineJoin="bevel";var d=n.getVisual("decal");d&&(h.decal=Jd(d,o));var v=Ao(l.getModel("itemStyle"),f,!0);re(f,v),R(Yn,function(_){var b=s.ensureState(_),S=l.getModel([_,"itemStyle"]);b.style=S.getItemStyle();var T=Ao(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),pa(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"),y=m==="relative"?Hd(n.getAncestorsIndices(),n.getDescendantIndices()):m==="ancestor"?n.getAncestorsIndices():m==="descendant"?n.getDescendantIndices():m;Wt(this,y,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)B&&!Yd($-B)&&$0?(o.virtualPiece?o.virtualPiece.updateData(!1,_,r,n,i):(o.virtualPiece=new sH(_,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";dw(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}(_t),M7e=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};Cne(i);var a=this._levelModels=se(r.levels||[],function(l){return new tt(l,this,n)},this),o=Rj.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=GT(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(){kre(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}(St);function Cne(e){var t=0;R(e.children,function(n){Cne(n);var i=n.value;ie(i)&&(i=i[0]),t+=i});var r=e.value;ie(r)&&(r=r[0]),(r==null||isNaN(r))&&(r=t),r<0&&(r=0),ie(e.value)?e.value[0]=r:e.value=r}var uH=Math.PI/180;function P7e(e,t,r){t.eachSeriesByType(e,function(n){var i=n.get("center"),a=n.get("radius");ie(a)||(a=[0,a]),ie(i)||(i=[i,i]);var o=r.getWidth(),s=r.getHeight(),l=Math.min(o,s),u=de(i[0],o),c=de(i[1],s),f=de(a[0],l/2),h=de(a[1],l/2),d=-n.get("startAngle")*uH,v=n.get("minAngle")*uH,g=n.getData().tree.root,m=n.getViewRoot(),y=m.depth,_=n.get("sort");_!=null&&Mne(m,_);var b=0;R(m.children,function($){!isNaN($.getValue())&&b++});var S=m.getValue(),T=Math.PI/(S||b)*2,A=m.depth>0,M=m.height-(A?-1:1),P=(h-f)/(M||1),k=n.get("clockwise"),I=n.get("stillShowZeroSum"),O=k?1:-1,D=function($,U){if($){var z=U;if($!==g){var V=$.getValue(),W=S===0&&I?T:V*T;W1;)o=o.parentNode;var s=i.getColorFromPalette(o.name||o.dataIndex+"",t);return n.depth>1&&ve(s)&&(s=J1(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");re(u,l)})})}function I7e(e){e.registerChartView(C7e),e.registerSeriesModel(M7e),e.registerLayout(ze(P7e,"sunburst")),e.registerProcessor(ze(Zv,"sunburst")),e.registerVisual(k7e),A7e(e)}var cH={color:"fill",borderColor:"stroke"},O7e={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},Ms=Je(),E7e=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 Yo(null,this)},t.prototype.getDataParams=function(r,n,i){var a=e.prototype.getDataParams.call(this,r,n);return i&&(a.info=Ms(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}(St);function D7e(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 N7e(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:pe(D7e,e)}}}function j7e(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 R7e(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:pe(j7e,e)}}}function B7e(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 z7e(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:pe(B7e,e)}}}function $7e(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 F7e(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:pe($7e,e)}}}function V7e(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 G7e(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 Pne(e,t,r,n){return e&&(e.legacy||e.legacy!==!1&&!r&&!n&&t!=="tspan"&&(t==="text"||ye(e,"text")))}function Lne(e,t,r){var n=e,i,a,o;if(t==="text")o=n;else{o={},ye(n,"text")&&(o.text=n.text),ye(n,"rich")&&(o.rich=n.rich),ye(n,"textFill")&&(o.fill=n.textFill),ye(n,"textStroke")&&(o.stroke=n.textStroke),ye(n,"fontFamily")&&(o.fontFamily=n.fontFamily),ye(n,"fontSize")&&(o.fontSize=n.fontSize),ye(n,"fontStyle")&&(o.fontStyle=n.fontStyle),ye(n,"fontWeight")&&(o.fontWeight=n.fontWeight),a={type:"text",style:o,silent:!0},i={};var s=ye(n,"textPosition");r?i.position=s?n.textPosition:"inside":s&&(i.position=n.textPosition),ye(n,"textPosition")&&(i.position=n.textPosition),ye(n,"textOffset")&&(i.offset=n.textOffset),ye(n,"textRotation")&&(i.rotation=n.textRotation),ye(n,"textDistance")&&(i.distance=n.textDistance)}return fH(o,e),R(o.rich,function(l){fH(l,l)}),{textConfig:i,textContent:a}}function fH(e,t){t&&(t.font=t.textFont||t.font,ye(t,"textStrokeWidth")&&(e.lineWidth=t.textStrokeWidth),ye(t,"textAlign")&&(e.align=t.textAlign),ye(t,"textVerticalAlign")&&(e.verticalAlign=t.textVerticalAlign),ye(t,"textLineHeight")&&(e.lineHeight=t.textLineHeight),ye(t,"textWidth")&&(e.width=t.textWidth),ye(t,"textHeight")&&(e.height=t.textHeight),ye(t,"textBackgroundColor")&&(e.backgroundColor=t.textBackgroundColor),ye(t,"textPadding")&&(e.padding=t.textPadding),ye(t,"textBorderColor")&&(e.borderColor=t.textBorderColor),ye(t,"textBorderWidth")&&(e.borderWidth=t.textBorderWidth),ye(t,"textBorderRadius")&&(e.borderRadius=t.textBorderRadius),ye(t,"textBoxShadowColor")&&(e.shadowColor=t.textBoxShadowColor),ye(t,"textBoxShadowBlur")&&(e.shadowBlur=t.textBoxShadowBlur),ye(t,"textBoxShadowOffsetX")&&(e.shadowOffsetX=t.textBoxShadowOffsetX),ye(t,"textBoxShadowOffsetY")&&(e.shadowOffsetY=t.textBoxShadowOffsetY))}function hH(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||K.color.neutral99;dH(n,t);var o=n.textFill==null;return i?o&&(n.textFill=r.insideFill||K.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||K.color.neutral00),!n.textStroke&&r.outsideStroke&&(n.textStroke=r.outsideStroke)),n.text=t.text,n.rich=t.rich,R(t.rich,function(s){dH(s,s)}),n}function dH(e,t){t&&(ye(t,"fill")&&(e.textFill=t.fill),ye(t,"stroke")&&(e.textStroke=t.fill),ye(t,"lineWidth")&&(e.textStrokeWidth=t.lineWidth),ye(t,"font")&&(e.font=t.font),ye(t,"fontStyle")&&(e.fontStyle=t.fontStyle),ye(t,"fontWeight")&&(e.fontWeight=t.fontWeight),ye(t,"fontSize")&&(e.fontSize=t.fontSize),ye(t,"fontFamily")&&(e.fontFamily=t.fontFamily),ye(t,"align")&&(e.textAlign=t.align),ye(t,"verticalAlign")&&(e.textVerticalAlign=t.verticalAlign),ye(t,"lineHeight")&&(e.textLineHeight=t.lineHeight),ye(t,"width")&&(e.textWidth=t.width),ye(t,"height")&&(e.textHeight=t.height),ye(t,"backgroundColor")&&(e.textBackgroundColor=t.backgroundColor),ye(t,"padding")&&(e.textPadding=t.padding),ye(t,"borderColor")&&(e.textBorderColor=t.borderColor),ye(t,"borderWidth")&&(e.textBorderWidth=t.borderWidth),ye(t,"borderRadius")&&(e.textBorderRadius=t.borderRadius),ye(t,"shadowColor")&&(e.textBoxShadowColor=t.shadowColor),ye(t,"shadowBlur")&&(e.textBoxShadowBlur=t.shadowBlur),ye(t,"shadowOffsetX")&&(e.textBoxShadowOffsetX=t.shadowOffsetX),ye(t,"shadowOffsetY")&&(e.textBoxShadowOffsetY=t.shadowOffsetY),ye(t,"textShadowColor")&&(e.textShadowColor=t.textShadowColor),ye(t,"textShadowBlur")&&(e.textShadowBlur=t.textShadowBlur),ye(t,"textShadowOffsetX")&&(e.textShadowOffsetX=t.textShadowOffsetX),ye(t,"textShadowOffsetY")&&(e.textShadowOffsetY=t.textShadowOffsetY))}var kne={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},vH=it(kne);ha(Bo,function(e,t){return e[t]=1,e},{});Bo.join(", ");var Fw=["","style","shape","extra"],ov=Je();function rR(e,t,r,n,i){var a=e+"Animation",o=Nv(e,n,i)||{},s=ov(t).userDuring;return o.duration>0&&(o.during=s?pe(Y7e,{el:t,userDuring:s}):null,o.setToFinal=!0,o.scope=e),re(o,r[a]),o}function fb(e,t,r,n){n=n||{};var i=n.dataIndex,a=n.isInit,o=n.clearStyle,s=r.isAnimationEnabled(),l=ov(e),u=t.style;l.userDuring=t.during;var c={},f={};if(q7e(e,t,f),e.type==="compound")for(var h=e.shape.paths,d=t.shape.paths,v=0;v0&&e.animateFrom(m,y)}else H7e(e,t,i||0,r,c);Ine(e,t),u?e.dirty():e.markRedraw()}function Ine(e,t){for(var r=ov(e).leaveToProps,n=0;n0&&e.animateFrom(i,a)}}function U7e(e,t){ye(t,"silent")&&(e.silent=t.silent),ye(t,"ignore")&&(e.ignore=t.ignore),e instanceof va&&ye(t,"invisible")&&(e.invisible=t.invisible),e instanceof rt&&ye(t,"autoBatch")&&(e.autoBatch=t.autoBatch)}var co={},Z7e={setTransform:function(e,t){return co.el[e]=t,this},getTransform:function(e){return co.el[e]},setShape:function(e,t){var r=co.el,n=r.shape||(r.shape={});return n[e]=t,r.dirtyShape&&r.dirtyShape(),this},getShape:function(e){var t=co.el.shape;if(t)return t[e]},setStyle:function(e,t){var r=co.el,n=r.style;return n&&(n[e]=t,r.dirtyStyle&&r.dirtyStyle()),this},getStyle:function(e){var t=co.el.style;if(t)return t[e]},setExtra:function(e,t){var r=co.el.extra||(co.el.extra={});return r[e]=t,this},getExtra:function(e){var t=co.el.extra;if(t)return t[e]}};function Y7e(){var e=this,t=e.el;if(t){var r=ov(t).userDuring,n=e.userDuring;if(r!==n){e.el=e.userDuring=null;return}co.el=t,n(Z7e)}}function pH(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]={}),Fc(l))re(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(z,$):void 0}var V=t.get(U.name,$),W=U&&U.ordinalMeta;return W?W.categories[V]:V}function M(F,$){$==null&&($=c);var U=t.getItemVisual($,"style"),z=U&&U.fill,V=U&&U.opacity,W=b($,Ol).getItemStyle();z!=null&&(W.fill=z),V!=null&&(W.opacity=V);var Y={inheritColor:ve(z)?z:K.color.neutral99},Z=S($,Ol),J=Mt(Z,null,Y,!1,!0);J.text=Z.getShallow("show")?be(e.getFormattedLabel($,Ol),rv(t,$)):null;var ae=cw(Z,Y,!1);return I(F,W),W=hH(W,J,ae),F&&k(W,F),W.legacy=!0,W}function P(F,$){$==null&&($=c);var U=b($,Ps).getItemStyle(),z=S($,Ps),V=Mt(z,null,null,!0,!0);V.text=z.getShallow("show")?fi(e.getFormattedLabel($,Ps),e.getFormattedLabel($,Ol),rv(t,$)):null;var W=cw(z,null,!0);return I(F,U),U=hH(U,V,W),F&&k(U,F),U.legacy=!0,U}function k(F,$){for(var U in $)ye($,U)&&(F[U]=$[U])}function I(F,$){F&&(F.textFill&&($.textFill=F.textFill),F.textPosition&&($.textPosition=F.textPosition))}function O(F,$){if($==null&&($=c),ye(cH,F)){var U=t.getItemVisual($,"style");return U?U[cH[F]]:null}if(ye(O7e,F))return t.getItemVisual($,F)}function D(F){if(o.type==="cartesian2d"){var $=o.getBaseAxis();return r$e(Pe({axis:$},F))}}function N(){return r.getCurrentSeriesIndices()}function B(F){return kN(F,r)}}function s9e(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 EM(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&&Wt(s,n.focus,n.blurScope,n.emphasisDisabled),s}function sR(e,t,r,n,i,a){var o=-1,s=t;t&&Nne(t,n,i)&&(o=Ge(a.childrenRef(),t),t=null);var l=!t,u=t;u?u.clearStates():(u=aR(n),s&&n9e(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,u9e(u,r,n,i,l,Hi),l9e(u,r,n,i,l),oR(e,u,r,n,Hi,i,l),ye(n,"info")&&(Ms(u).info=n.info);for(var c=0;c=0?a.replaceAt(u,o):a.add(u),u}function Nne(e,t,r){var n=Ms(e),i=t.type,a=t.shape,o=t.style;return r.isUniversalTransitionEnabled()||i!=null&&i!==n.customGraphicType||i==="path"&&v9e(a)&&jne(a)!==n.customPathData||i==="image"&&ye(o,"image")&&o.image!==n.customImagePath}function l9e(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&&Nne(o,a,n)&&(o=null),o||(o=aR(a),e.setClipPath(o)),oR(null,o,t,a,null,n,i)}}function u9e(e,t,r,n,i,a){if(!(e.isGroup||e.type==="compoundPath")){mH(r,null,a),mH(r,Ps,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=aR(o),e.setTextContent(c)),oR(null,c,t,o,null,n,i);for(var f=o&&o.style,h=0;h=c;d--){var v=t.childAt(d);f9e(t,v,i)}}}function f9e(e,t,r){t&&UT(t,Ms(e).option,r)}function h9e(e){new Vs(e.oldChildren,e.newChildren,yH,yH,e).add(xH).update(xH).remove(d9e).execute()}function yH(e,t){var r=e&&e.name;return r??t9e+t}function xH(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 d9e(e){var t=this.context,r=t.oldChildren[e];r&&UT(r,Ms(r).option,t.seriesModel)}function jne(e){return e&&(e.pathData||e.d)}function v9e(e){return e&&(ye(e,"pathData")||ye(e,"d"))}function p9e(e){e.registerChartView(i9e),e.registerSeriesModel(E7e)}var dc=Je(),_H=Ce,DM=pe,uR=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=ze(bH,r,f);this.updatePointerEl(s,u,h),this.updateLabelEl(s,u,h,r)}SH(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=kj(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=dc(t).pointerEl=new Sf[a.type](_H(r.pointer));t.add(o)}},e.prototype.createLabelEl=function(t,r,n,i){if(r.label){var a=dc(t).labelEl=new at(_H(r.label));t.add(a),wH(a,i)}},e.prototype.updatePointerEl=function(t,r,n){var i=dc(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=dc(t).labelEl;a&&(a.setStyle(r.label.style),n(a,{x:r.label.x,y:r.label.y}),wH(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=jv(a.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(u){zs(u.event)},onmousedown:DM(this._onHandleDragMove,this,0,0),drift:DM(this._onHandleDragMove,this),ondragend:DM(this._onHandleDragEnd,this)}),n.add(i)),SH(i,r,!1),i.setStyle(a.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var l=a.get("size");ie(l)||(l=[l,l]),i.scaleX=l[0]/2,i.scaleY=l[1]/2,Vv(this,"_doDispatchAxisPointer",a.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,s)}},e.prototype._moveHandleToValue=function(t,r){bH(this._axisPointerModel,!r&&this._moveAnimation,this._handle,NM(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(NM(n),[t,r],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(NM(i)),dc(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),_y(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 bH(e,t,r,n){Rne(dc(r).lastProp,n)||(dc(r).lastProp=n,t?lt(r,n,e):(r.stopAnimation(),r.attr(n)))}function Rne(e,t){if(Le(e)&&Le(t)){var r=!0;return R(t,function(n,i){r=r&&Rne(e[i],n)}),!!r}else return e===t}function wH(e,t){e[t.get(["label","show"])?"show":"hide"]()}function NM(e){return{x:e.x||0,y:e.y||0,rotation:e.rotation||0}}function SH(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 cR(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 Bne(e,t,r,n,i){var a=r.get("value"),o=zne(a,t.axis,t.ecModel,r.get("seriesDataIndices"),{precision:r.get(["label","precision"]),formatter:r.get(["label","formatter"])}),s=r.getModel("label"),l=zv(s.get("padding")||0),u=s.getFont(),c=gT(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),g9e(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 g9e(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 zne(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:Tw(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)}),ve(o)?a=o.replace("{value}",a):Ae(o)&&(a=o(s))}return a}function fR(e,t,r){var n=Wr();return qs(n,n,r.rotation),Ua(n,n,r.position),Ga([e.dataToCoord(t),(r.labelOffset||0)+(r.labelDirection||1)*(r.labelMargin||0)],n)}function $ne(e,t,r,n,i,a){var o=Hn.innerTextLayout(r.rotation,0,r.labelDirection);r.labelMargin=i.get(["label","margin"]),Bne(t,n,i,a,{position:fR(n.axis,e,r),align:o.textAlign,verticalAlign:o.textVerticalAlign})}function hR(e,t,r){return r=r||0,{x1:e[r],y1:e[1-r],x2:t[r],y2:t[1-r]}}function Fne(e,t,r){return r=r||0,{x:e[r],y:e[1-r],width:t[r],height:t[1-r]}}function TH(e,t,r,n,i,a){return{cx:e,cy:t,r0:r,r:n,startAngle:i,endAngle:a,clockwise:!0}}var m9e=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=AH(l,s).getOtherAxis(s).getGlobalExtent(),f=s.toGlobalCoord(s.dataToCoord(n,!0));if(u&&u!=="none"){var h=cR(a),d=y9e[u](s,f,c);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=Dw(l.getRect(),i);$ne(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=Dw(n.axis.grid.getRect(),n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=fR(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=AH(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}(uR);function AH(e,t){var r={};return r[t.dim+"AxisIndex"]=t.index,e.getCartesian(r)}var y9e={line:function(e,t,r){var n=hR([t,r[0]],[t,r[1]],CH(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:Fne([t-n/2,r[0]],[n,i],CH(e))}}};function CH(e){return e.dim==="x"?0:1}var x9e=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:K.color.border,width:1,type:"dashed"},shadowStyle:{color:K.color.shadowTint},label:{show:!0,formatter:null,precision:"auto",margin:3,color:K.color.neutral00,padding:[5,7,5,7],backgroundColor:K.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:K.color.accent40,throttle:40}},t}(Qe),xs=Je(),_9e=R;function Vne(e,t,r){if(!nt.node){var n=t.getZr();xs(n).records||(xs(n).records={}),b9e(n,t);var i=xs(n).records[e]||(xs(n).records[e]={});i.handler=r}}function b9e(e,t){if(xs(e).initialized)return;xs(e).initialized=!0,r("click",ze(MH,"click")),r("mousemove",ze(MH,"mousemove")),r("globalout",S9e);function r(n,i){e.on(n,function(a){var o=T9e(t);_9e(xs(e).records,function(s){s&&i(s,a,o.dispatchAction)}),w9e(o.pendings,t)})}}function w9e(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 S9e(e,t,r){e.handler("leave",null,r)}function MH(e,t,r,n){t.handler(e,r,n)}function T9e(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 gO(e,t){if(!nt.node){var r=t.getZr(),n=(xs(r).records||{})[e];n&&(xs(r).records[e]=null)}}var A9e=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";Vne("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){gO("axisPointer",n)},t.prototype.dispose=function(r,n){gO("axisPointer",n)},t.type="axisPointer",t}(Lt);function Gne(e,t){var r=[],n=e.seriesIndex,i;if(n==null||!(i=t.getSeriesByIndex(n)))return{point:[]};var a=i.getData(),o=rf(a,e);if(o==null||o<0||ie(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(y){return a.mapDimension(y)}),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 PH=Je();function C9e(e,t,r){var n=e.currTrigger,i=[e.x,e.y],a=e,o=e.dispatchAction||pe(r.dispatchAction,r),s=t.getComponent("axisPointer").coordSysAxesInfo;if(s){hb(i)&&(i=Gne({seriesIndex:a.seriesIndex,dataIndex:a.dataIndex},t).point);var l=hb(i),u=a.axesInfo,c=s.axesInfo,f=n==="leave"||hb(i),h={},d={},v={list:[],map:{}},g={showPointer:ze(P9e,d),showTooltip:ze(L9e,v)};R(s.coordSysMap,function(y,_){var b=l||y.containPoint(i);R(s.coordSysAxesInfo[_],function(S,T){var A=S.axis,M=E9e(u,S);if(!f&&b&&(!u||M)){var P=M&&M.value;P==null&&!l&&(P=A.pointToData(i)),P!=null&&LH(S,P,g,!1,h)}})});var m={};return R(c,function(y,_){var b=y.linkGroup;b&&!d[_]&&R(b.axesInfo,function(S,T){var A=d[T];if(S!==y&&A){var M=A.value;b.mapper&&(M=y.axis.scale.parse(b.mapper(M,kH(S),kH(y)))),m[y.key]=M}})}),R(m,function(y,_){LH(c[_],y,g,!0,h)}),k9e(d,c,h),I9e(v,i,e,o),O9e(c,o,r),h}}function LH(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=M9e(t,e),s=o.payloadBatch,l=o.snapToValue;s[0]&&i.seriesIndex==null&&re(i,s[0]),!n&&e.snap&&a.containData(l)&&l!=null&&(t=l),r.showPointer(e,t,s),r.showTooltip(e,o,l)}}function M9e(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 P9e(e,t,r,n){e[t.key]={value:r,payloadBatch:n}}function L9e(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=Ly(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 k9e(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 I9e(e,t,r,n){if(hb(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 O9e(e,t,r){var n=r.getZr(),i="axisPointerLastHighlights",a=PH(n)[i]||{},o=PH(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 E9e(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 kH(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 hb(e){return!e||e[0]==null||isNaN(e[0])||e[1]==null||isNaN(e[1])}function b0(e){Mf.registerAxisPointerClass("CartesianAxisPointer",m9e),e.registerComponentModel(x9e),e.registerComponentView(A9e),e.registerPreprocessor(function(t){if(t){(!t.axisPointer||t.axisPointer.length===0)&&(t.axisPointer={});var r=t.axisPointer.link;r&&!ie(r)&&(t.axisPointer.link=[r])}}),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,function(t,r){t.getComponent("axisPointer").coordSysAxesInfo=D6e(t,r)}),e.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},C9e)}function D9e(e){Ze(dre),Ze(b0)}var N9e=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=cR(a),v=R9e[h](s,l,f,c);v.style=d,r.graphicKey=v.type,r.pointer=v}var g=a.get(["label","margin"]),m=j9e(n,i,a,l,g);Bne(r,i,a,o,m)},t}(uR);function j9e(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();qs(h,h,s),Ua(h,h,[n.cx,n.cy]),u=Ga([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 g=l[1];u=n.coordToPoint([g+i,o]);var m=n.cx,y=n.cy;c=Math.abs(u[0]-m)/g<.3?"center":u[0]>m?"left":"right",f=Math.abs(u[1]-y)/g<.3?"middle":u[1]>y?"top":"bottom"}return{position:u,align:c,verticalAlign:f}}var R9e={line:function(e,t,r,n){return e.dim==="angle"?{type:"Line",shape:hR(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:TH(t.cx,t.cy,n[0],n[1],(-r-i/2)*a,(-r+i/2)*a)}:{type:"Sector",shape:TH(t.cx,t.cy,r-i/2,r+i/2,0,Math.PI*2)}}},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.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}(Qe),dR=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",tr).models[0]},t.type="polarAxis",t}(Qe);fr(dR,Uv);var z9e=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}(dR),$9e=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}(dR),vR=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}(_a);vR.prototype.dataToRadius=_a.prototype.dataToCoord;vR.prototype.radiusToData=_a.prototype.coordToData;var F9e=Je(),pR=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=gT(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=F9e(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}(_a);pR.prototype.dataToAngle=_a.prototype.dataToCoord;pR.prototype.angleToData=_a.prototype.coordToData;var Wne=["radius","angle"],V9e=function(){function e(t){this.dimensions=Wne,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new vR,this._angleAxis=new pR,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=IH(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=IH(r);return i===this?this.pointToData(n):null},e}();function IH(e){var t=e.seriesModel,r=e.polarModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function G9e(e,t,r){var n=t.get("center"),i=jr(t,r).refContainer;e.cx=de(n[0],i.width)+i.x,e.cy=de(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%"]:ie(s)||(s=[0,s]);var l=[de(s[0],o),de(s[1],o)];a.inverse?a.setExtent(l[1],l[0]):a.setExtent(l[0],l[1])}function W9e(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(Aw(l,"radius"),function(u){i.scale.unionExtentFromData(l,u)}),R(Aw(l,"angle"),function(u){n.scale.unionExtentFromData(l,u)})}}),uf(n.scale,n.model),uf(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 H9e(e){return e.mainType==="angleAxis"}function OH(e,t){var r;if(e.type=t.get("type"),e.scale=p0(t),e.onBand=t.get("boundaryGap")&&e.type==="category",e.inverse=t.get("inverse"),H9e(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 U9e={dimensions:Wne,create:function(e,t){var r=[];return e.eachComponent("polar",function(n,i){var a=new V9e(i+"");a.update=W9e;var o=a.getRadiusAxis(),s=a.getAngleAxis(),l=n.findAxisModel("radiusAxis"),u=n.findAxisModel("angleAxis");OH(o,l),OH(s,u),G9e(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",tr).models[0];n.coordinateSystem=i.coordinateSystem}}),r}},Z9e=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function w_(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 S_(e){var t=e.getRadiusAxis();return t.inverse?0:1}function EH(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 Y9e=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=Ce(c);var f=i.scale,h=f.type==="ordinal"?f.getRawOrdinalNumber(c.tickValue):c.tickValue;return c.coord=i.dataToCoord(h),c});EH(u),EH(s),R(Z9e,function(c){r.get([c,"show"])&&(!i.scale.isBlank()||c==="axisLine")&&X9e[c](this.group,r,a,s,l,o,u)},this)}},t.type="angleAxis",t}(Mf),X9e={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=S_(r),f=c?0:1,h,d=Math.abs(u[1]-u[0])===360?"Circle":"Arc";a[f]===0?h=new Sf[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 Ev({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[S_(r)],u=se(n,function(c){return new yr({shape:w_(r,[l,l+s],c.coord)})});e.add(Ti(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[S_(r)],c=[],f=0;fy?"left":"right",S=Math.abs(m[1]-_)/g<.3?"middle":m[1]>_?"top":"bottom";if(s&&s[v]){var T=s[v];Le(T)&&T.textStyle&&(d=new tt(T.textStyle,l,l.ecModel))}var A=new at({silent:Hn.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(A),Qs({el:A,componentModel:t,itemName:f.formattedLabel,formatterParamsExtra:{isTruncated:function(){return A.isTruncated},value:f.rawLabel,tickIndex:h}}),c){var M=Hn.makeAxisEventDataBase(t);M.targetType="axisLabel",M.value=f.rawLabel,De(A).eventData=M}},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",F=k;T&&(n[c][N]||(n[c][N]={p:k,n:k}),F=n[c][N][B]);var $=void 0,U=void 0,z=void 0,V=void 0;if(v.dim==="radius"){var W=v.dataToCoord(D)-k,Y=l.dataToCoord(N);Math.abs(W)=V})}}})}function tZe(e){var t={};R(e,function(n,i){var a=n.getData(),o=n.coordinateSystem,s=o.getBaseAxis(),l=Une(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=Hne(n);h[d]||f.autoWidthCount++,h[d]=h[d]||{width:0,maxWidth:0};var v=de(n.get("barWidth"),c),g=de(n.get("barMaxWidth"),c),m=n.get("barGap"),y=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),y!=null&&(f.categoryGap=y)});var r={};return R(t,function(n,i){r[i]={};var a=n.stacks,o=n.bandWidth,s=de(n.categoryGap,o),l=de(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 y=g.maxWidth;y&&y=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=DH(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=DH(r);return i===this?this.pointToData(n):null},e}();function DH(e){var t=e.seriesModel,r=e.singleAxisModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function fZe(e,t){var r=[];return e.eachComponent("singleAxis",function(n,i){var a=new cZe(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",tr).models[0];n.coordinateSystem=i&&i.coordinateSystem}}),r}var hZe={create:fZe,dimensions:Zne},NH=["x","y"],dZe=["width","height"],vZe=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=jM(l,1-Ww(s)),c=l.dataToPoint(n)[0],f=a.get("type");if(f&&f!=="none"){var h=cR(a),d=pZe[f](s,c,u);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=mO(i);$ne(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=mO(n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=fR(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=Ww(o),u=jM(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=jM(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}(uR),pZe={line:function(e,t,r){var n=hR([t,r[0]],[t,r[1]],Ww(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:Fne([t-n/2,r[0]],[n,i],Ww(e))}}};function Ww(e){return e.isHorizontal()?0:1}function jM(e,t){var r=e.getRect();return[r[NH[t]],r[NH[t]]+r[dZe[t]]]}var gZe=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 mZe(e){Ze(b0),Mf.registerAxisPointerClass("SingleAxisPointer",vZe),e.registerComponentView(gZe),e.registerComponentView(sZe),e.registerComponentModel(db),nv(e,"single",db,db.defaultOption),e.registerCoordinateSystem("single",hZe)}var yZe=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=Tf(r);e.prototype.init.apply(this,arguments),jH(r,a)},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),jH(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:K.color.axisLine,width:1,type:"solid"}},itemStyle:{color:K.color.neutral00,borderWidth:1,borderColor:K.color.neutral10},dayLabel:{show:!0,firstDay:0,position:"start",margin:K.size.s,color:K.color.secondary},monthLabel:{show:!0,position:"start",margin:K.size.s,align:"center",formatter:null,color:K.color.secondary},yearLabel:{show:!0,position:null,margin:K.size.xl,formatter:null,color:K.color.quaternary,fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},t}(Qe);function jH(e,t){var r=e.cellSize,n;ie(r)?n=r:n=e.cellSize=[r,r],n.length===1&&(n[1]=n[0]);var i=se([0,1],function(a){return $Be(t,a)&&(n[a]="auto"),n[a]!=null&&n[a]!=="auto"});Fo(e,t,{type:"box",ignoreSize:i})}var xZe=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 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 ve(r)&&r?EBe(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 g=o.get("formatter"),m={start:n.start.y,end:n.end.y,nameMap:v},y=this._formatterLabel(g,m),_=new at({z2:30,style:Mt(o,{text:y}),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||ve(s))&&(s&&(n=hI(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/RM)-Math.floor(r[0].time/RM)+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){d0({targetModel:a,coordSysType:"calendar",coordSysProvider:hJ})}),n},e.dimensions=["time","value"],e}();function BM(e){var t=e.calendarModel,r=e.seriesModel,n=t?t.coordinateSystem:r?r.coordinateSystem:null;return n}function bZe(e){e.registerComponentModel(yZe),e.registerComponentView(xZe),e.registerCoordinateSystem("calendar",_Ze)}var cs={level:1,leaf:2,nonLeaf:3},Ls={none:0,all:1,body:2,corner:3};function yO(e,t,r){var n=t[Re[r]].getCell(e);return!n&&ot(e)&&e<0&&(n=t[Re[1-r]].getUnitLayoutInfo(r,Math.round(e))),n}function Yne(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 Xne(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=ie(o)?o:[o],l=s.length,u=!!r;if(l>=1?(BH(e,t,s,u,i,a,0),l>1&&BH(e,t,s,u,i,a,l-1)):e[0]=e[1]=NaN,u){var c=-i[Re[1-a]].getLocatorCount(a),f=i[Re[a]].getLocatorCount(a)-1;r===Ls.body?c=gr(0,c):r===Ls.corner&&(f=Ii(-1,f)),f=t[0]&&e[0]<=t[1]}function FH(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 TZe(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 VH(e,t,r,n){var i=yO(t[n][0],r,n),a=yO(t[n][1],r,n);e[Re[n]]=e[Tr[n]]=NaN,i&&a&&(e[Re[n]]=i.xy,e[Tr[n]]=a.xy+a.wh-i.xy)}function Qp(e,t,r,n){return e[Re[t]]=r,e[Re[1-t]]=n,e}function AZe(e){return e&&(e.type===cs.leaf||e.type===cs.nonLeaf)?e:null}function Hw(){return{x:NaN,y:NaN,width:NaN,height:NaN}}var GH=function(){function e(t,r){this._cells=[],this._levels=[],this.dim=t,this.dimIdx=t==="x"?0:1,this._model=r,this._uniqueValueGen=CZe(t);var n=r.get("data",!0);n!=null&&!ie(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;ve(d)?g={value:d}:Le(d)?(g=d,d.value!=null&&!ve(d.value)&&(g={value:null})):g={value:null};var m={type:cs.nonLeaf,ordinal:NaN,level:f,firstLeafLocator:c,id:new Ie,span:Qp(new Ie,r.dimIdx,1,1),option:g,xy:NaN,wh:NaN,dim:r,rect:Hw()};o++,(a[c]||(a[c]=[])).push(m),i[f]||(i[f]={type:cs.level,xy:NaN,wh:NaN,option:null,id:new Ie,dim:r});var y=s(g.children,c,f+1),_=Math.max(1,y);m.span[Re[r.dimIdx]]=_,h+=_,c+=_}),h}function l(){for(var u=[];n.length=1,b=r[Re[n]],S=a.getLocatorCount(n)-1,T=new Ul;for(o.resetLayoutIterator(T,n);T.next();)A(T.item);for(a.resetLayoutIterator(T,n);T.next();)A(T.item);function A(M){mn(M.wh)&&(M.wh=y),M.xy=b,M.id[Re[n]]===S&&!_&&(M.wh=r[Re[n]]+r[Tr[n]]-M.xy),b+=M.wh}}function qH(e,t){for(var r=t[Re[e]].resetCellIterator();r.next();){var n=r.item;Uw(n.rect,e,n.id,n.span,t),Uw(n.rect,1-e,n.id,n.span,t),n.type===cs.nonLeaf&&(n.xy=n.rect[Re[e]],n.wh=n.rect[Tr[e]])}}function KH(e,t){e.travelExistingCells(function(r){var n=r.span;if(n){var i=r.spanRect,a=r.id;Uw(i,0,a,n,t),Uw(i,1,a,n,t)}})}function Uw(e,t,r,n,i){e[Tr[t]]=0;var a=r[Re[t]],o=a<0?i[Re[1-t]]:i[Re[t]],s=o.getUnitLayoutInfo(t,r[Re[t]]);if(e[Re[t]]=s.xy,e[Tr[t]]=s.wh,n[Re[t]]>1){var l=o.getUnitLayoutInfo(t,r[Re[t]]+n[Re[t]]-1);e[Tr[t]]=l.xy+l.wh-s.xy}}function zZe(e,t,r){var n=aw(e,r[Tr[t]]);return _O(n,r[Tr[t]])}function _O(e,t){return Math.max(Math.min(e,be(t,1/0)),0)}function FM(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},lo={x:null,y:null,point:[]};function QH(e,t,r,n,i){var a=r[Re[t]],o=r[Re[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[Re[t]]=dn.outside;return}if(i===Ls.body){l?(e[Re[t]]=dn.inBody,f=Ii(s.xy+s.wh,gr(l.xy,f)),e.point[t]=f):e[Re[t]]=dn.outside;return}else if(i===Ls.corner){c?(e[Re[t]]=dn.inCorner,f=Ii(c.xy+c.wh,gr(u.xy,f)),e.point[t]=f):e[Re[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[Re[t]]=dn.outside;return}f=v}e.point[t]=f,e[Re[t]]=h<=f&&f<=v?dn.inBody:d<=f&&f<=h?dn.inCorner:dn.outside}function JH(e,t,r,n){var i=1-r;if(e[Re[r]]!==dn.outside)for(n[Re[r]].resetCellIterator($M);$M.next();){var a=$M.item;if(t8(e.point[r],a.rect,r)&&t8(e.point[i],a.rect,i)){t[r]=a.ordinal,t[i]=a.id[Re[i]];return}}}function e8(e,t,r,n){if(e[Re[r]]!==dn.outside){var i=e[Re[r]]===dn.inCorner?n[Re[1-r]]:n[Re[r]];for(i.resetLayoutIterator(P_,r);P_.next();)if($Ze(e.point[r],P_.item)){t[r]=P_.item.id[Re[r]];return}}}function $Ze(e,t){return t.xy<=e&&e<=t.xy+t.wh}function t8(e,t,r){return t[Re[r]]<=e&&e<=t[Re[r]]+t[Tr[r]]}function FZe(e){e.registerComponentModel(kZe),e.registerComponentView(NZe),e.registerCoordinateSystem("matrix",BZe)}function VZe(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 r8(e,t){var r;return R(t,function(n){e[n]!=null&&e[n]!=="auto"&&(r=!0)}),r}function GZe(e,t,r){var n=re({},r),i=e[t],a=r.$action||"merge";a==="merge"?i?(He(i,n,!0),Fo(i,n,{ignoreSize:!0}),mJ(r,i),L_(r,i),L_(r,i,"shape"),L_(r,i,"style"),L_(r,i,"extra"),r.clipPath=i.clipPath):e[t]=n:a==="replace"?e[t]=n:a==="remove"&&i&&(e[t]=null)}var Kne=["transition","enterFrom","leaveTo"],WZe=Kne.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function L_(e,t,r){if(r&&(!e[r]&&t[r]&&(e[r]={}),e=e[r],t=t[r]),!(!e||!t))for(var n=r?Kne:WZe,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,y=qi(v),_=v===a?{width:s,height:l}:{width:y.width,height:y.height},b={},S=kT(d,f,_,null,{hv:f.hv,boundingMode:f.bounding},b);if(!qi(d).isNew&&S){for(var T=f.transition,A={},M=0;M=0)?A[P]=k:d[P]=k}lt(d,A,r,0)}else d.attr(b)}}},t.prototype._clear=function(){var r=this,n=this._elMap;n.each(function(i){vb(i,qi(i).option,n,r._lastGraphicModel)}),this._elMap=_e()},t.prototype.dispose=function(){this._clear()},t.type="graphic",t}(Lt);function bO(e){var t=ye(n8,e)?n8[e]:gy(e),r=new t({});return qi(r).type=e,r}function i8(e,t,r,n){var i=bO(r);return t.add(i),n.set(e,i),qi(i).id=e,qi(i).isNew=!0,i}function vb(e,t,r,n){var i=e&&e.parent;i&&(e.type==="group"&&e.traverse(function(a){vb(a,t,r,n)}),UT(e,t,n),r.removeKey(qi(e).id))}function a8(e,t,r,n){e.isGroup||R([["cursor",va.prototype.cursor],["zlevel",n||0],["z",r||0],["z2",0]],function(i){var a=i[0];ye(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]=Ae(a)?a:null}}),ye(t,"draggable")&&(e.draggable=t.draggable),t.name!=null&&(e.name=t.name),t.id!=null&&(e.id=t.id)}function YZe(e){return e=re({},e),R(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(dJ),function(t){delete e[t]}),e}function XZe(e,t,r){var n=De(e).eventData;!e.silent&&!e.ignore&&!n&&(n=De(e).eventData={componentType:"graphic",componentIndex:t.componentIndex,name:e.name}),n&&(n.info=r.info)}function qZe(e){e.registerComponentModel(UZe),e.registerComponentView(ZZe),e.registerPreprocessor(function(t){var r=t.graphic;ie(r)?!r[0]||!r[0].elements?t.graphic=[{elements:r}]:t.graphic=[t.graphic[0]]:r&&!r.elements&&(t.graphic=[{elements:[r]}])})}var o8=["x","y","radius","angle","single"],KZe=["cartesian2d","polar","singleAxis"];function QZe(e){var t=e.get("coordinateSystem");return Ge(KZe,t)>=0}function El(e){return e+"Axis"}function JZe(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 Qne(e){var t=e.ecModel,r={infoList:[],infoMap:_e()};return e.eachTargetAxis(function(n,i){var a=t.getComponent(El(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 VM=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}(),Ny=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=s8(r);this.settledOption=a,this.mergeDefaultAndTheme(r,i),this._doInit(a)},t.prototype.mergeOption=function(r){var n=s8(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(o8,function(i){var a=this.getReferringComponents(El(i),mRe);if(a.specified){n=!0;var o=new VM;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 VM;if(h.add(f.componentIndex),r.set(c,h),a=!1,c==="x"||c==="y"){var d=f.getReferringComponents("grid",tr).models[0];d&&R(u,function(v){f.componentIndex!==v.componentIndex&&d===v.getReferringComponents("grid",tr).models[0]&&h.add(v.componentIndex)})}}}a&&R(o8,function(u){if(a){var c=i.findComponents({mainType:El(u),filter:function(h){return h.get("type",!0)==="category"}});if(c[0]){var f=new VM;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(El(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(El(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 wh(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)}});wh(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;wh(["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 nYe(e,t,r){var n=[1/0,-1/0];wh(r,function(o){b$e(n,o.getData(),t)});var i=e.getAxisModel(),a=Kee(i.axis.scale,i,n).calculate();return[a.min,a.max]}var iYe={getTargetSeries:function(e){function t(i){e.eachComponent("dataZoom",function(a){a.eachTargetAxis(function(o,s){var l=e.getComponent(El(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 rYe(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 aYe(e){e.registerAction("dataZoom",function(t,r){var n=JZe(r,t);R(n,function(i){i.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})})})}var u8=!1;function xR(e){u8||(u8=!0,e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,iYe),aYe(e),e.registerSubTypeDefaulter("dataZoom",function(){return"slider"}))}function oYe(e){e.registerComponentModel(eYe),e.registerComponentView(tYe),xR(e)}var ea=function(){function e(){}return e}(),Jne={};function Sh(e,t){Jne[e]=t}function eie(e){return Jne[e]}var sYe=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=eie(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:K.color.border,borderRadius:0,borderWidth:0,padding:K.size.m,itemSize:15,itemGap:K.size.s,showTitle:!0,iconStyle:{borderColor:K.color.accent50,color:"none"},emphasis:{iconStyle:{borderColor:K.color.accent50}},tooltip:{show:!1,position:"bottom"}},t}(Qe);function tie(e,t){var r=zv(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 lYe=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 Vs(this._featureNames||[],f).add(h).update(h).remove(ze(h,null)).execute(),this._featureNames=f;function h(_,b){var S=f[_],T=f[b],A=u[S],M=new tt(A,r,r.ecModel),P;if(a&&a.newTitle!=null&&a.featureName===S&&(A.title=a.newTitle),S&&!T){if(uYe(S))P={onclick:M.option.onclick,featureName:S};else{var k=eie(S);if(!k)return;P=new k}c[S]=P}else if(P=c[T],!P)return;P.uid=Bv("toolbox-feature"),P.model=M,P.ecModel=n,P.api=i;var I=P instanceof ea;if(!S&&T){I&&P.dispose&&P.dispose(n,i);return}if(!M.get("show")||I&&P.unusable){I&&P.remove&&P.remove(n,i);return}d(M,P,S),M.setIconStatus=function(O,D){var N=this.option,B=this.iconPaths;N.iconStatus=N.iconStatus||{},N.iconStatus[O]=D,B[O]&&(D==="emphasis"?$s:Fs)(B[O])},P instanceof ea&&P.render&&P.render(M,n,i,a)}function d(_,b,S){var T=_.getModel("iconStyle"),A=_.getModel(["emphasis","iconStyle"]),M=b instanceof ea&&b.getIcons?b.getIcons():_.get("icon"),P=_.get("title")||{},k,I;ve(M)?(k={},k[S]=M):k=M,ve(P)?(I={},I[S]=P):I=P;var O=_.iconPaths={};R(k,function(D,N){var B=jv(D,{},{x:-s/2,y:-s/2,width:s,height:s});B.setStyle(T.getItemStyle());var F=B.ensureState("emphasis");F.style=A.getItemStyle();var $=new at({style:{text:I[N],align:A.get("textAlign"),borderRadius:A.get("textBorderRadius"),padding:A.get("textPadding"),fill:null,font:kN({fontStyle:A.get("textFontStyle"),fontFamily:A.get("textFontFamily"),fontSize:A.get("textFontSize"),fontWeight:A.get("textFontWeight")},n)},ignore:!0});B.setTextContent($),Qs({el:B,componentModel:r,itemName:N,formatterParamsExtra:{title:I[N]}}),B.__title=I[N],B.on("mouseover",function(){var U=A.getItemStyle(),z=l?r.get("right")==null&&r.get("left")!=="right"?"right":"left":r.get("bottom")==null&&r.get("top")!=="bottom"?"bottom":"top";$.setStyle({fill:A.get("textFill")||U.fill||U.stroke||K.color.neutral99,backgroundColor:A.get("textBackgroundColor")}),B.setTextConfig({position:A.get("textPosition")||z}),$.ignore=!r.get("showTitle"),i.enterEmphasis(this)}).on("mouseout",function(){_.get(["iconStatus",N])!=="emphasis"&&i.leaveEmphasis(this),$.hide()}),(_.get(["iconStatus",N])==="emphasis"?$s:Fs)(B),o.add(B),B.on("click",pe(b.onclick,b,n,i,N)),O[N]=B})}var v=jr(r,i).refContainer,g=r.getBoxLayoutParams(),m=r.get("padding"),y=$t(g,v,m);Bc(r.get("orient"),o,r.get("itemGap"),y.width,y.height),kT(o,g,v,m),o.add(tie(o.getBoundingRect(),r)),l||o.eachChild(function(_){var b=_.__title,S=_.ensureState("emphasis"),T=S.textConfig||(S.textConfig={}),A=_.getTextContent(),M=A&&A.ensureState("emphasis");if(M&&!Ae(M)&&b){var P=M.style||(M.style={}),k=gT(b,at.makeFont(P)),I=_.x+o.x,O=_.y+o.y+s,D=!1;O+k.height>i.getHeight()&&(T.position="top",D=!0);var N=D?-5-k.height:s+10;I+k.width/2>i.getWidth()?(T.position=["100%",N],P.align="right"):I-k.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 uYe(e){return e.indexOf("my")===0}var cYe=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")||K.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,y=new Uint8Array(m);m--;)y[m]=v.charCodeAt(m);var _=new Blob([y]);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 A=i.get("lang"),M='',P=window.open();P.document.write(M),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:K.color.neutral00,name:"",excludeComponents:["toolbox"],lang:r.getLocaleModel().get(["toolbox","saveAsImage","lang"])};return n},t}(ea),c8="__ec_magicType_stack__",fYe=[["line","bar"],["stack"]],hYe=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(f8[i]){var s={series:[]},l=function(f){var h=f.subType,d=f.id,v=f8[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 y=m.dim,_=y+"Axis",b=f.getReferringComponents(_,tr).models[0],S=b.componentIndex;s[_]=s[_]||[];for(var T=0;T<=S;T++)s[_][S]=s[_][S]||{};s[_][S].boundaryGap=i==="bar"}}};R(fYe,function(f){Ge(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),f8={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")===c8;if(e==="line"||e==="bar")return n.setIconStatus("stack",i?"normal":"emphasis"),He({id:t,stack:i?"":c8},n.get(["option","stack"])||{},!0)}};Ka({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(e,t){t.mergeOption(e.newOption)});var ZT=new Array(60).join("-"),sv=" ";function dYe(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 vYe(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(sv)],c=0;c=0)return!0}var wO=new RegExp("["+sv+"]+","g");function yYe(e){for(var t=e.split(/\n+/g),r=Zw(t.shift()).split(wO),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 TYe(e){var t=_R(e),r=t[t.length-1];t.length>1&&t.pop();var n={};return rie(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 AYe(e){nie(e).snapshots=null}function CYe(e){return _R(e).length}function _R(e){var t=nie(e);return t.snapshots||(t.snapshots=[{}]),t.snapshots}var MYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){AYe(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);Ka({type:"restore",event:"restore",update:"prepareAndUpdate"},function(e,t){t.resetOption("recreate")});var PYe=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],bR=function(){function e(t,r,n){var i=this;this._targetInfoList=[];var a=h8(r,t);R(LYe,function(o,s){(!n||!n.include||Ge(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=GM[n.brushType](0,a,i);n.__rangeOffset={offset:g8[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=GM[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=GM[n.brushType](0,i.coordSys,n.coordRange),o=n.__rangeOffset;n.range=o?g8[n.brushType](a.values,o.offset,kYe(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:lne(i),isTargetByCursor:cne(i,t,n.coordSysModel),getLinearBrushOtherExtent:une(i)}})},e.prototype.controlSeries=function(t,r,n){var i=this.findTargetInfo(t,n);return i===!0||i&&Ge(i.coordSyses,r.coordinateSystem)>=0},e.prototype.findTargetInfo=function(t,r){for(var n=this._targetInfoList,i=h8(r,t),a=0;ae[1]&&e.reverse(),e}function h8(e,t){return sd(e,t,{includeMainTypes:PYe})}var LYe={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){(Ge(r,f.getAxis("x").model)>=0||Ge(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:v8.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:v8.geo})})}},d8=[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}],v8={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var e=this.coordSys,t=e.getBoundingRect().clone();return t.applyTransform(Yl(e)),t}},GM={lineX:ze(p8,0),lineY:ze(p8,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=[SO([i[0],a[0]]),SO([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 p8(e,t,r,n){var i=r.getAxis(["x","y"][e]),a=SO(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 g8={lineX:ze(m8,0),lineY:ze(m8,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 m8(e,t,r,n){return[t[0]-n[e]*r[0],t[1]-n[e]*r[1]]}function kYe(e,t){var r=y8(e),n=y8(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 y8(e){return e?[e[0][1]-e[0][0],e[1][1]-e[1][0]]:[NaN,NaN]}var TO=R,IYe=hRe("toolbox-dataZoom_"),OYe=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 Uj(i.getZr()),this._brushController.on("brush",pe(this._onBrush,this)).mount()),NYe(r,n,this,a,i),DYe(r,n)},t.prototype.onclick=function(r,n,i){EYe[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 bR(wR(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)}}),SYe(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=au(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=[];TO(r,function(i,a){n.push(Ce(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:K.color.backgroundTint}};return n},t}(ea),EYe={zoom:function(){var e=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:e})},back:function(){this._dispatchZoomAction(TYe(this.ecModel))}};function wR(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 DYe(e,t){e.setIconStatus("back",CYe(t)>1?"emphasis":"normal")}function NYe(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 bR(wR(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)}ZBe("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=wR(n),o=sd(e,a);TO(o.xAxisModels,function(l){return s(l,"xAxis","xAxisIndex")}),TO(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:IYe+u+f};h[c]=f,i.push(h)}return i});function jYe(e){e.registerComponentModel(sYe),e.registerComponentView(lYe),Sh("saveAsImage",cYe),Sh("magicType",hYe),Sh("dataView",bYe),Sh("dataZoom",OYe),Sh("restore",MYe),Ze(oYe)}var RYe=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:K.color.neutral00,shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,defaultBorderColor:K.color.border,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:K.color.borderShade,width:1,type:"dashed",textStyle:{}}},textStyle:{color:K.color.tertiary,fontSize:14}},t}(Qe);function iie(e){var t=e.get("confine");return t!=null?!!t:e.get("renderMode")==="richText"}function aie(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 WYe(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?""+SR+i:",left"+i+",top"+i)),$Ye+":"+a}function x8(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;"+SR+":"+o+";":[["top",0],["left",0],[oie,o]]}function HYe(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 UYe(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=XJ(e,"html"),d=u+"px "+c+"px "+s+"px "+l;return i.push("box-shadow:"+d),t&&a>0&&i.push(WYe(a,r,n)),o&&i.push("background-color:"+o),R(["width","color","radius"],function(v){var g="border-"+v,m=GN(g),y=e.get(m);y!=null&&i.push(g+":"+y+(v==="color"?"":"px"))}),i.push(HYe(f)),h!=null&&i.push("padding:"+zv(h).join("px ")+"px"),i.join(";")+";"}function _8(e,t,r,n,i){var a=t&&t.painter;if(r){var o=a&&a.getViewportRoot();o&&INe(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 ZYe=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&&(ve(a)?document.querySelector(a):ef(a)?a:Ae(a)&&a(t.getDom()));_8(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=zYe(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=FYe+UYe(t,!this._firstShow,this._longHide,this._enableDisplayTransition)+x8(a[0],a[1],!0)+("border-color:"+lf(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(ve(a)&&n.get("trigger")==="item"&&!iie(n)&&(s=GYe(n,i,a)),ve(t))o.innerHTML=t+s;else if(t){o.innerHTML="",ie(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=S8(a,i);this._ticket="";var s=a.dataByCoordSys,l=eXe(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=XYe;c.x=a.x,c.y=a.y,c.update(),De(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=Gne(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(S8(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=eg([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=De(i);if(s.ssrType==="legend")return;this._lastDataByCoordSys=null;var l,u;Mc(i,function(c){if(c.tooltipDisabled)return l=u=null,!0;l||u||(De(c).dataIndex!=null?l=c:De(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=pe(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=eg([n.tooltipOption],a),l=this._renderMode,u=[],c=Ar("section",{blocks:[],noHeader:!0}),f=[],h=new T2;R(r,function(_){R(_.dataByAxis,function(b){var S=i.getComponent(b.axisDim+"Axis",b.axisIndex),T=b.value;if(!(!S||T==null)){var A=zne(T,S.axis,i,b.seriesDataIndices,b.valueLabelOpt),M=Ar("section",{header:A,noHeader:!Ci(A),sortBlocks:!0,blocks:[]});c.blocks.push(M),R(b.seriesDataIndices,function(P){var k=i.getSeriesByIndex(P.seriesIndex),I=P.dataIndexInside,O=k.getDataParams(I);if(!(O.dataIndex<0)){O.axisDim=b.axisDim,O.axisIndex=b.axisIndex,O.axisType=b.axisType,O.axisId=b.axisId,O.axisValue=Tw(S.axis,{value:T}),O.axisValueLabel=A,O.marker=h.makeTooltipMarker("item",lf(O.color),l);var D=zV(k.formatTooltip(I,!0,null)),N=D.frag;if(N){var B=eg([k],a).get("valueFormatter");M.blocks.push(B?re({valueFormatter:B},N):N)}D.text&&f.push(D.text),u.push(O)}})}})}),c.blocks.reverse(),f.reverse();var d=n.position,v=s.get("order"),g=HV(c,h,l,v,i.get("useUTC"),s.get("textStyle"));g&&f.unshift(g);var m=l==="richText"?` - -`:"
",y=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,y,u,Math.random()+"",o[0],o[1],d,null,h)})},t.prototype._showSeriesItemTooltip=function(r,n,i){var a=this._ecModel,o=De(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=eg([h.getItemModel(c),u,l&&(l.coordinateSystem||{}).model],this._tooltipModel,v?{position:v}:null),m=g.get("trigger");if(!(m!=null&&m!=="item")){var y=u.getDataParams(c,f),_=new T2;y.marker=_.makeTooltipMarker("item",lf(y.color),d);var b=zV(u.formatTooltip(c,!1,f)),S=g.get("order"),T=g.get("valueFormatter"),A=b.frag,M=A?HV(T?re({valueFormatter:T},A):A,_,d,S,a.get("useUTC"),g.get("textStyle")):b.text,P="item_"+u.name+"_"+c;this._showOrMove(g,function(){this._showTooltipContent(g,M,y,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=De(n),s=o.tooltipConfig,l=s.option||{},u=l.encodeHTMLContent;if(ve(l)){var c=l;l={content:c,formatter:c},u=!0}u&&a&&l.content&&(l=Ce(l),l.content=On(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=eg(f,this._tooltipModel,d?{position:d}:null),g=v.get("content"),m=Math.random()+"",y=new T2;this._showOrMove(v,function(){var _=Ce(v.get("formatterParams")||{});this._showTooltipContent(v,g,_,m,r.offsetX,r.offsetY,r.position,n,y)}),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(ve(h)){var m=r.ecModel.get("useUTC"),y=ie(i)?i[0]:i,_=y&&y.axisType&&y.axisType.indexOf("time")>=0;d=h,_&&(d=h0(y.axisValue,d,m)),d=WN(d,i,!0)}else if(Ae(h)){var b=pe(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"||ie(n))return{color:a||o};if(!ie(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()})),ie(n))i=de(n[0],u),a=de(n[1],c);else if(Le(n)){var g=n;g.width=f[0],g.height=f[1];var m=$t(g,{width:u,height:c});i=m.x,a=m.y,h=null,d=null}else if(ve(n)&&l){var y=JYe(n,v,f,r.get("borderWidth"));i=y[0],a=y[1]}else{var y=KYe(i,a,o,u,c,h?null:20,d?null:20);i=y[0],a=y[1]}if(h&&(i-=T8(h)?f[0]/2:h==="right"?f[0]:0),d&&(a-=T8(d)?f[1]/2:d==="bottom"?f[1]:0),iie(r)){var y=QYe(i,a,o,u,c);i=y[0],a=y[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(y,_){var b=m[_];o=o&&y.seriesIndex===b.seriesIndex&&y.dataIndex===b.dataIndex}),a&&R(h.seriesDataIndices,function(y){var _=y.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()||(_y(this,"_updatePosition"),this._tooltipContent.dispose(),gO("itemTooltip",n))},t.type="tooltip",t}(Lt);function eg(e,t,r){var n=t.ecModel,i;r?(i=new tt(r,n,n),i=new tt(t.option,i,n)):i=t;for(var a=e.length-1;a>=0;a--){var o=e[a];o&&(o instanceof tt&&(o=o.get("tooltip",!0)),ve(o)&&(o={formatter:o}),o&&(i=new tt(o,i,n)))}return i}function S8(e,t){return e.dispatchAction||pe(t.dispatchAction,t)}function KYe(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 QYe(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 JYe(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 T8(e){return e==="center"||e==="middle"}function eXe(e,t,r){var n=hN(e).queryOptionMap,i=n.keys()[0];if(!(!i||i==="series")){var a=Iv(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=De(u).tooltipConfig;if(c&&c.name===e.name)return l=u,!0}),l)return{componentMainType:i,componentIndex:o.componentIndex,el:l}}}}function tXe(e){Ze(b0),e.registerComponentModel(RYe),e.registerComponentView(qYe),e.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},lr),e.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},lr)}var rXe=["rect","polygon","keep","clear"];function nXe(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;ie(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),iXe(s),t&&!s.length&&s.push.apply(s,rXe)}}function iXe(e){var t={};R(e,function(r){t[r]=1}),e.length=0,R(t,function(r,n){e.push(n)})}var A8=R;function C8(e){if(e){for(var t in e)if(e.hasOwnProperty(t))return!0}}function AO(e,t,r){var n={};return A8(t,function(a){var o=n[a]=i();A8(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=Ce(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 lie(e,t,r){var n;R(r,function(i){t.hasOwnProperty(i)&&C8(t[i])&&(n=!0)}),n&&R(r,function(i){t.hasOwnProperty(i)&&C8(t[i])?e[i]=Ce(t[i]):delete e[i]})}function aXe(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 ej(r,s,f)}function u(f,h){aee(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],y=0,_=m.length;y<_;y++){var b=m[y];g[b]&&g[b].applyVisual(f,l,u)}}}function oXe(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 ej(s,f,T)}function c(T,A){aee(s,f,T,A)}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],y=i[g],_=0,b=y.length;_t[0][1]&&(t[0][1]=a[0]),a[1]t[1][1]&&(t[1][1]=a[1])}return t&&I8(t)}};function I8(e){return new Oe(e[0][0],e[1][0],e[0][1]-e[0][0],e[1][1]-e[1][0])}var dXe=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 Uj(n.getZr())).on("brush",pe(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){uie(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:Ce(i),$from:n}),r.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:n,areas:Ce(i),$from:n})},t.type="brush",t}(Lt),vXe=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&&lie(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 O8(this.option,n)},this))},t.prototype.setBrushOption=function(r){this.brushOption=O8(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:K.color.backgroundTint,borderColor:K.color.borderTint},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4,defaultOutOfBrushColor:K.color.disabled},t}(Qe);function O8(e,t){return He({brushType:e.brushType,brushMode:e.brushMode,transformable:e.transformable,brushStyle:new tt(e.brushStyle).getItemStyle(),removeOnClick:e.removeOnClick,z:e.z},t,!0)}var pXe=["rect","polygon","lineX","lineY","keep","clear"],gXe=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:pXe.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 mXe(e){e.registerComponentView(dXe),e.registerComponentModel(vXe),e.registerPreprocessor(nXe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,lXe),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"},lr),e.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},lr),Sh("brush",gXe)}var yXe=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:K.size.m,backgroundColor:K.color.transparent,borderColor:K.color.primary,borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:K.color.primary},subtextStyle:{fontSize:12,color:K.color.quaternary}},t}(Qe),xXe=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(){dw(v,"_"+r.get("target"))}),g&&d.on("click",function(){dw(g,"_"+r.get("subtarget"))}),De(c).eventData=De(d).eventData=m?{componentType:"title",componentIndex:r.componentIndex}:null,a.add(c),h&&a.add(d);var y=a.getBoundingRect(),_=r.getBoxLayoutParams();_.width=y.width,_.height=y.height;var b=jr(r,i),S=$t(_,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),y=a.getBoundingRect();var A=S.margin,M=r.getItemStyle(["color","opacity"]);M.fill=r.get("backgroundColor");var P=new Xe({shape:{x:y.x-A[3],y:y.y-A[0],width:y.width+A[1]+A[3],height:y.height+A[0]+A[2],r:r.get("borderRadius")},style:M,subPixelOptimize:!0,silent:!0});a.add(P)}},t.type="title",t}(Lt);function _Xe(e){e.registerComponentModel(yXe),e.registerComponentView(xXe)}var E8=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(kv(u),""),h;Le(u)?(h=Ce(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:K.size.m,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:K.color.secondary},data:[]},t}(Qe),cie=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=xu(E8.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:K.color.border,borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:K.color.accent10},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:K.color.tertiary},itemStyle:{color:K.color.accent20,borderWidth:0},checkpointStyle:{symbol:"circle",symbolSize:15,color:K.color.accent50,borderColor:K.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:K.color.accent50,borderColor:K.color.accent50,borderWidth:0},emphasis:{label:{show:!0,color:K.color.accent60},itemStyle:{color:K.color.accent60,borderColor:K.color.accent60},controlStyle:{color:K.color.accent70,borderColor:K.color.accent70}},progress:{lineStyle:{color:K.color.accent30},itemStyle:{color:K.color.accent40}},data:[]}),t}(E8);fr(cie,OT.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}(Lt),wXe=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}(_a),HM=Math.PI,D8=Je(),SXe=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=AXe(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:HM/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,y=r.get(["label","rotate"])||0;y=y*HM/180;var _,b,S,T=h.get("position",!0),A=d&&h.get("showPlayBtn",!0),M=d&&h.get("showPrevBtn",!0),P=d&&h.get("showNextBtn",!0),k=0,I=f;T==="left"||T==="bottom"?(A&&(_=[0,0],k+=m),M&&(b=[k,0],k+=m),P&&(S=[I-v,0],I-=m)):(A&&(_=[I-v,0],I-=m),M&&(b=[0,0],k+=m),P&&(S=[I-v,0],I-=m));var O=[k,I];return r.get("inverse")&&O.reverse(),{viewRect:o,mainLength:f,orient:a,rotation:c[a],labelRotation:y,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: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;Ua(s,s,[-l,-u]),qs(s,s,-HM/2),Ua(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||ve(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,y(i),y(a);function y(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,A,M,P){S[M]+=A[M][P]-T[M][P]}},t.prototype._createAxis=function(r,n){var i=n.getData(),a=n.get("axisType"),o=TXe(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 wXe("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 yr({shape:{x1:o[0],y1:0,x2:o[1],y2:0},style:re({lineCap:"round"},a.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});n.add(s);var l=this._progressLine=new yr({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:pe(o._changeTimeline,o,u.value)},m=N8(f,h,n,g);m.ensureState("emphasis").style=d.getItemStyle(),m.ensureState("progress").style=v.getItemStyle(),Zl(m);var y=De(m);f.get("tooltip")?(y.dataIndex=u.value,y.dataModel=a):y.dataIndex=y.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),y=new at({x:m,y:0,rotation:r.labelRotation-r.rotation,onclick:pe(o._changeTimeline,o,f),silent:!1,style:Mt(d,{text:c.formattedLabel,align:r.labelAlign,verticalAlign:r.labelBaseline})});y.ensureState("emphasis").style=Mt(v),y.ensureState("progress").style=Mt(g),n.add(y),Zl(y),D8(y).dataIndex=f,o._tickLabels.push(y)})}},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",pe(this._changeTimeline,this,f?"-":"+")),h(r.prevBtnPosition,"prev",pe(this._changeTimeline,this,f?"+":"-")),h(r.playPosition,c?"stop":"play",pe(this._handlePlayClick,this,!c),!0);function h(d,v,g,m){if(d){var y=Za(be(a.get(["controlStyle",v+"BtnSize"]),o),o),_=[0,-y/2,y,y],b=CXe(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),Zl(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=pe(u._handlePointerDrag,u),f.ondragend=pe(u._handlePointerDragend,u),j8(f,u._progressLine,s,i,a,!0)},onUpdate:function(f){j8(f,u._progressLine,s,i,a)}};this._currentPointer=N8(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=Mi(a.getExtent().slice());i>o[1]&&(i=o[1]),i=0&&(s[o]=+s[o].toFixed(v)),[s,d]}var E_={min:ze(O_,"min"),max:ze(O_,"max"),average:ze(O_,"average"),median:ze(O_,"median")};function jy(e,t){if(t){var r=e.getData(),n=e.coordinateSystem,i=n&&n.dimensions;if(!OXe(t)&&!ie(t.coord)&&ie(i)){var a=fie(t,r,n,e);if(t=Ce(t),t.type&&E_[t.type]&&a.baseAxis&&a.valueAxis){var o=Ge(i,a.baseAxis.dim),s=Ge(i,a.valueAxis.dim),l=E_[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||!ie(i)){t.coord=[];var u=e.getBaseAxis();if(u&&t.type&&E_[t.type]){var c=n.getOtherAxis(u);c&&(t.value=Yw(r,r.mapDimension(c.dim),t.type))}}else for(var f=t.coord,h=0;h<2;h++)E_[f[h]]&&(f[h]=Yw(r,r.mapDimension(i[h]),f[h]));return t}}function fie(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(EXe(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 EXe(e,t){var r=e.getData().getDimensionInfo(t);return r&&r.coordDim}function Ry(e,t){return e&&e.containData&&t.coord&&!MO(t)?e.containData(t.coord):!0}function DXe(e,t,r){return e&&e.containZone&&t.coord&&r.coord&&!MO(t)&&!MO(r)?e.containZone(t.coord,r.coord):!0}function hie(e,t){return e?function(r,n,i,a){var o=a<2?r.coord&&r.coord[a]:r.value;return ql(o,t[a])}:function(r,n,i,a){return ql(r.value,t[a])}}function Yw(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 UM=Je(),AR=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){UM(s).keep=!1}),n.eachSeries(function(s){var l=Go.getMarkerModelFromSeries(s,a.type);l&&a.renderSeries(s,l,n,i)}),o.each(function(s){!UM(s).keep&&a.group.remove(s.group)}),NXe(n,o,this.type)},t.prototype.markKeep=function(r){UM(r).keep=!0},t.prototype.toggleBlurSeries=function(r,n){var i=this;R(r,function(a){var o=Go.getMarkerModelFromSeries(a,i.type);if(o){var s=o.getData();s.eachItemGraphicEl(function(l){l&&(n?MQ(l):_N(l))})}})},t.type="marker",t}(Lt);function NXe(e,t,r){e.eachSeries(function(n){var i=Go.getMarkerModelFromSeries(n,r),a=t.get(n.id);if(i&&a&&a.group){var o=sf(i),s=o.z,l=o.zlevel;PT(a.group,s,l)}})}function B8(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=de(l.get("x"),c)+h,m=de(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 y=e.get(n.dimensions[0],s),_=e.get(n.dimensions[1],s);v=n.dataToPoint([y,_])}isNaN(g)||(v[0]=g),isNaN(m)||(v[1]=m),e.setItemLayout(s,v)})}var 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.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Go.getMarkerModelFromSeries(a,"markPoint");o&&(B8(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 m0),f=RXe(o,r,n);n.setData(f),B8(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"),y=d.getShallow("symbolOffset"),_=d.getShallow("symbolKeepAspect");if(Ae(v)||Ae(g)||Ae(m)||Ae(y)){var b=n.getRawValue(h),S=n.getDataParams(h);Ae(v)&&(v=v(b,S)),Ae(g)&&(g=g(b,S)),Ae(m)&&(m=m(b,S)),Ae(y)&&(y=y(b,S))}var T=d.getModel("itemStyle").getItemStyle(),A=d.get("z2"),M=v0(l,"color");T.fill||(T.fill=M),f.setItemVisual(h,{z2:be(A,0),symbol:v,symbolSize:g,symbolRotate:m,symbolOffset:y,symbolKeepAspect:_,style:T})}),c.updateData(f),this.group.add(c.group),f.eachItemGraphicEl(function(h){h.traverse(function(d){De(d).dataModel=n})}),this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markPoint",t}(AR);function RXe(e,t,r){var n;e?n=se(e&&e.dimensions,function(s){var l=t.getData().getDimensionInfo(t.getData().mapDimension(s))||{};return re(re({},l),{name:s,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var i=new Dn(n,r),a=se(r.get("data"),ze(jy,t));e&&(a=ht(a,ze(Ry,e)));var o=hie(!!e,n);return i.initData(a,null,o),i}function BXe(e){e.registerComponentModel(IXe),e.registerComponentView(jXe),e.registerPreprocessor(function(t){TR(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})})}var zXe=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}(Go),D_=Je(),$Xe=function(e,t,r,n){var i=e.getData(),a;if(ie(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=fie(n,i,t,e);s=u.valueAxis;var c=dj(i,u.valueDataDim);l=Yw(i,c,o)}var f=s.dim==="x"?0:1,h=1-f,d=Ce(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=[jy(e,a[0]),jy(e,a[1]),re({},a[2])];return m[2].type=m[2].type||null,He(m[2],m[0]),He(m[2],m[1]),m};function Xw(e){return!isNaN(e)&&!isFinite(e)}function z8(e,t,r,n){var i=1-e,a=n.dimensions[e];return Xw(t[i])&&Xw(r[i])&&t[e]===r[e]&&n.getAxis(a).containData(t[e])}function FXe(e,t){if(e.type==="cartesian2d"){var r=t[0].coord,n=t[1].coord;if(r&&n&&(z8(1,r,n,e)||z8(0,r,n,e)))return!0}return Ry(e,t[0])&&Ry(e,t[1])}function ZM(e,t,r,n,i){var a=n.coordinateSystem,o=e.getItemModel(t),s,l=de(o.get("x"),i.getWidth()),u=de(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(iu(a,"cartesian2d")){var d=a.getAxis("x"),v=a.getAxis("y"),c=a.dimensions;Xw(e.get(c[0],t))?s[0]=d.toGlobalCoord(d.getExtent()[r?0:1]):Xw(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 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.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Go.getMarkerModelFromSeries(a,"markLine");if(o){var s=o.getData(),l=D_(o).from,u=D_(o).to;l.each(function(c){ZM(l,c,!0,a,i),ZM(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 Wj);this.group.add(c.group);var f=GXe(o,r,n),h=f.from,d=f.to,v=f.line;D_(n).from=h,D_(n).to=d,n.setData(v);var g=n.get("symbol"),m=n.get("symbolSize"),y=n.get("symbolRotate"),_=n.get("symbolOffset");ie(g)||(g=[g,g]),ie(m)||(m=[m,m]),ie(y)||(y=[y,y]),ie(_)||(_=[_,_]),f.from.each(function(S){b(h,S,!0),b(d,S,!1)}),v.each(function(S){var T=v.getItemModel(S),A=T.getModel("lineStyle").getLineStyle();v.setItemLayout(S,[h.getItemLayout(S),d.getItemLayout(S)]);var M=T.get("z2");A.stroke==null&&(A.stroke=h.getItemVisual(S,"style").fill),v.setItemVisual(S,{z2:be(M,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:A})}),c.updateData(v),f.line.eachItemGraphicEl(function(S){De(S).dataModel=n,S.traverse(function(T){De(T).dataModel=n})});function b(S,T,A){var M=S.getItemModel(T);ZM(S,T,A,r,a);var P=M.getModel("itemStyle").getItemStyle();P.fill==null&&(P.fill=v0(l,"color")),S.setItemVisual(T,{symbolKeepAspect:M.get("symbolKeepAspect"),symbolOffset:be(M.get("symbolOffset",!0),_[A?0:1]),symbolRotate:be(M.get("symbolRotate",!0),y[A?0:1]),symbolSize:be(M.get("symbolSize"),m[A?0:1]),symbol:be(M.get("symbol",!0),g[A?0:1]),style:P})}this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markLine",t}(AR);function GXe(e,t,r){var n;e?n=se(e&&e.dimensions,function(u){var c=t.getData().getDimensionInfo(t.getData().mapDimension(u))||{};return re(re({},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"),ze($Xe,t,e,r));e&&(s=ht(s,ze(FXe,e)));var l=hie(!!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 WXe(e){e.registerComponentModel(zXe),e.registerComponentView(VXe),e.registerPreprocessor(function(t){TR(t.series,"markLine")&&(t.markLine=t.markLine||{})})}var HXe=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}(Go),N_=Je(),UXe=function(e,t,r,n){var i=n[0],a=n[1];if(!(!i||!a)){var o=jy(e,i),s=jy(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=fT([{},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 qw(e){return!isNaN(e)&&!isFinite(e)}function $8(e,t,r,n){var i=1-e;return qw(t[i])&&qw(r[i])}function ZXe(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 iu(e,"cartesian2d")?r&&n&&($8(1,r,n)||$8(0,r,n))?!0:DXe(e,i,a):Ry(e,i)||Ry(e,a)}function F8(e,t,r,n,i){var a=n.coordinateSystem,o=e.getItemModel(t),s,l=de(o.get(r[0]),i.getWidth()),u=de(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),y=[g,m];a.clampData&&a.clampData(y,y),s=a.dataToPoint(y,!0)}if(iu(a,"cartesian2d")){var _=a.getAxis("x"),b=a.getAxis("y"),g=e.get(r[0],t),m=e.get(r[1],t);qw(g)?s[0]=_.toGlobalCoord(_.getExtent()[r[0]==="x0"?0:1]):qw(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 V8=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],YXe=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=Go.getMarkerModelFromSeries(a,"markArea");if(o){var s=o.getData();s.each(function(l){var u=se(V8,function(f){return F8(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=XXe(o,r,n);n.setData(f),f.each(function(h){var d=se(V8,function(I){return F8(f,h,I,r,a)}),v=o.getAxis("x").scale,g=o.getAxis("y").scale,m=v.getExtent(),y=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))];Mi(_),Mi(b);var S=!(m[0]>_[1]||m[1]<_[0]||y[0]>b[1]||y[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:K.size.m,align:"auto",backgroundColor:K.color.transparent,borderColor:K.color.border,borderRadius:0,borderWidth:0,padding:5,itemGap:8,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:K.color.disabled,inactiveBorderColor:K.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:K.color.disabled,inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:K.color.secondary},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:K.color.tertiary,borderWidth:1,borderColor:K.color.border},emphasis:{selectorLabel:{show:!0,color:K.color.quaternary}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1},triggerEvent:!1},t}(Qe),dh=ze,LO=R,j_=Me,die=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 j_),this.group.add(this._selectorGroup=new j_),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=$t(f,c,h),v=this.layoutInner(r,o,d,a,l,u),g=$t(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=tie(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)}),LO(n.getData(),function(v,g){var m=this,y=v.get("name");if(!this.newlineDisabled&&(y===""||y===` -`)){var _=new j_;_.newline=!0,u.add(_);return}var b=i.getSeriesByName(y)[0];if(!c.get(y))if(b){var S=b.getData(),T=S.getVisual("legendLineStyle")||{},A=S.getVisual("legendIcon"),M=S.getVisual("style"),P=this._createItem(b,y,g,v,n,r,T,M,A,f,a);P.on("click",dh(G8,y,null,a,d)).on("mouseover",dh(kO,b.name,null,a,d)).on("mouseout",dh(IO,b.name,null,a,d)),i.ssr&&P.eachChild(function(k){var I=De(k);I.seriesIndex=b.seriesIndex,I.dataIndex=g,I.ssrType="legend"}),h&&P.eachChild(function(k){m.packEventData(k,n,b,g,y)}),c.set(y,!0)}else i.eachRawSeries(function(k){var I=this;if(!c.get(y)&&k.legendVisualProvider){var O=k.legendVisualProvider;if(!O.containName(y))return;var D=O.indexOfName(y),N=O.getItemVisual(D,"style"),B=O.getItemVisual(D,"legendIcon"),F=En(N.fill);F&&F[3]===0&&(F[3]=.2,N=re(re({},N),{fill:sa(F,"rgba")}));var $=this._createItem(k,y,g,v,n,r,{},N,B,f,a);$.on("click",dh(G8,null,y,a,d)).on("mouseover",dh(kO,null,y,a,d)).on("mouseout",dh(IO,null,y,a,d)),i.ssr&&$.eachChild(function(U){var z=De(U);z.seriesIndex=k.seriesIndex,z.dataIndex=g,z.ssrType="legend"}),h&&$.eachChild(function(U){I.packEventData(U,n,k,g,y)}),c.set(y,!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};De(r).eventData=s},t.prototype._createSelector=function(r,n,i,a,o){var s=this.getSelectorGroup();LO(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}),Zl(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),y=a.get("symbolRotate"),_=a.get("symbolKeepAspect"),b=a.get("icon");c=b||c||"roundRect";var S=QXe(c,a,l,u,d,m,h),T=new j_,A=a.getModel("textStyle");if(Ae(r.getLegendIcon)&&(!b||b==="inherit"))T.add(r.getLegendIcon({itemWidth:v,itemHeight:g,icon:c,iconRotate:y,itemStyle:S.itemStyle,lineStyle:S.lineStyle,symbolKeepAspect:_}));else{var M=b==="inherit"&&r.getData().getVisual("symbol")?y==="inherit"?r.getData().getVisual("symbolRotate"):y:0;T.add(JXe({itemWidth:v,itemHeight:g,icon:c,iconRotate:M,itemStyle:S.itemStyle,symbolKeepAspect:_}))}var P=s==="left"?v+5:-5,k=s,I=o.get("formatter"),O=n;ve(I)&&I?O=I.replace("{name}",n??""):Ae(I)&&(O=I(n));var D=m?A.getTextColor():a.get("inactiveColor");T.add(new at({style:Mt(A,{text:O,x:P,y:g/2,fill:D,align:k,verticalAlign:"middle"},{inheritColor:D})}));var N=new Xe({shape:T.getBoundingRect(),style:{fill:"transparent"}}),B=a.getModel("tooltip");return B.get("show")&&Qs({el:N,componentModel:o,itemName:n,itemTooltipOption:B.option}),T.add(N),T.eachChild(function(F){F.silent=!0}),N.silent=!f,this.getContentGroup().add(T),Zl(T),T.__legendDataIndex=i,T},t.prototype.layoutInner=function(r,n,i,a,o,s){var l=this.getContentGroup(),u=this.getSelectorGroup();Bc(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){Bc("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",y=g===0?"height":"width",_=g===0?"y":"x";s==="end"?d[g]+=c[m]+v:f[g]+=h[m]+v,d[1-g]+=c[y]/2-h[y]/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[y]=Math.max(c[y],h[y]),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}(Lt);function QXe(e,t,r,n,i,a,o){function s(m,y){m.lineWidth==="auto"&&(m.lineWidth=y.lineWidth>0?2:0),LO(m,function(_,b){m[b]==="inherit"&&(m[b]=y[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:Jd(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 JXe(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=K.color.neutral00,r.style.lineWidth=2),r}function G8(e,t,r,n){IO(e,t,r,n),r.dispatchAction({type:"legendToggleSelect",name:e??t}),kO(e,t,r,n)}function vie(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 y=[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]:y[a]+=v[o]+b}_[1-a]+=d[s]/2-v[s]/2,c.setPosition(m),f.setPosition(y),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 A={x:0,y:0};A[o]=Math.max(i[o]-v[o]-b,0),A[s]=T[s],f.setClipPath(new Xe({shape:A})),f.__rectSize=A[o]}else h.eachChild(function(P){P.attr({invisible:!0,silent:!0})});var M=this._getPageInfo(r);return M.pageIndex!=null&<(c,{x:M.contentPosition[0],y:M.contentPosition[1]},g?r:null),this._updatePageInfoView(r,M),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",ve(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=YM[o],l=XM[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,y=g,_=g,b=null;m<=h;++m)b=S(c[m]),(!b&&_.e>y.s+a||b&&!T(b,y.s))&&(_.i>y.i?y=_:y=b,y&&(v.pageNextDataIndex==null&&(v.pageNextDataIndex=y.i),++v.pageCount)),_=b;for(var m=u-1,y=g,_=g,b=null;m>=-1;--m)b=S(c[m]),(!b||!T(_,b.s))&&y.i<_.i&&(_=y,v.pagePrevDataIndex==null&&(v.pagePrevDataIndex=y.i),++v.pageCount,++v.pageIndex),y=b;return v;function S(A){if(A){var M=A.getBoundingRect(),P=M[l]+A[l];return{s:P,e:P+M[s],i:A.__legendDataIndex}}}function T(A,M){return A.e>=M&&A.s<=M+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}(die);function iqe(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 aqe(e){Ze(pie),e.registerComponentModel(rqe),e.registerComponentView(nqe),iqe(e)}function oqe(e){Ze(pie),Ze(aqe)}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.type="dataZoom.inside",t.defaultOption=xu(Ny.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),t}(Ny),CR=Je();function lqe(e,t,r){CR(e).coordSysRecordMap.each(function(n){var i=n.dataZoomInfoMap.get(t.uid);i&&(i.getRange=r)})}function uqe(e,t){for(var r=CR(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 vqe(e){e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,function(t,r){var n=CR(r),i=n.coordSysRecordMap||(n.coordSysRecordMap=_e());i.each(function(a){a.dataZoomInfoMap=null}),t.eachComponent({mainType:"dataZoom",subType:"inside"},function(a){var o=Qne(a);R(o.infoList,function(s){var l=s.model.uid,u=i.get(l)||i.set(l,cqe(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){gie(i,a);return}var c=dqe(l,a,r);o.enable(c.controlType,c.opt),Vv(a,"dispatchAction",s.model.get("throttle",!0),"fixRate")})})}var pqe=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(),lqe(i,r,{pan:pe(qM.pan,this),zoom:pe(qM.zoom,this),scrollMove:pe(qM.scrollMove,this)})},t.prototype.dispose=function(){this._clear(),e.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){uqe(this.api,this.dataZoomModel),this.range=null},t.type="dataZoom.inside",t}(yR),qM={zoom:function(e,t,r,n){var i=this.range,a=i.slice(),o=e.axisModels[0];if(o){var s=KM[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(au(0,a,[0,100],0,c.minSpan,c.maxSpan),this.range=a,i[0]!==a[0]||i[1]!==a[1])return a}},pan:Z8(function(e,t,r,n,i,a){var o=KM[n]([a.oldX,a.oldY],[a.newX,a.newY],t,i,r);return o.signal*(e[1]-e[0])*o.pixel/o.pixelLength}),scrollMove:Z8(function(e,t,r,n,i,a){var o=KM[n]([0,0],[a.scrollDelta,a.scrollDelta],t,i,r);return o.signal*(e[1]-e[0])*a.scrollDelta})};function Z8(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(au(l,o,[0,100],"all"),this.range=o,a[0]!==o[0]||a[1]!==o[1])return o}}}var KM={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 mie(e){xR(e),e.registerComponentModel(sqe),e.registerComponentView(pqe),vqe(e)}var gqe=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=xu(Ny.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:K.color.accent10,borderRadius:0,backgroundColor:K.color.transparent,dataBackground:{lineStyle:{color:K.color.accent30,width:.5},areaStyle:{color:K.color.accent20,opacity:.2}},selectedDataBackground:{lineStyle:{color:K.color.accent40,width:.5},areaStyle:{color:K.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:K.color.neutral00,borderColor:K.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:K.color.accent40,opacity:.5},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:K.color.tertiary},brushSelect:!0,brushStyle:{color:K.color.accent30,opacity:.3},emphasis:{handleLabel:{show:!0},handleStyle:{borderColor:K.color.accent40},moveHandleStyle:{opacity:.8}},defaultLocationEdgeGap:15}),t}(Ny),ng=Xe,mqe=1,QM=30,yqe=7,ig="horizontal",Y8="vertical",xqe=5,_qe=["line","bar","candlestick","scatter"],bqe={easing:"cubicOut",duration:100,delay:0},wqe=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=pe(this._onBrush,this),this._onBrushEnd=pe(this._onBrushEnd,this)},t.prototype.render=function(r,n,i,a){if(e.prototype.render.apply(this,arguments),Vv(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(){_y(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?yqe:0,o=jr(r,n).refContainer,s=this._findCoordRect(),l=r.get("defaultLocationEdgeGap",!0)||0,u=this._orient===ig?{right:o.width-s.x-s.width,top:o.height-QM-l-a,width:s.width,height:QM}:{right:l,top:s.y,width:QM,height:s.height},c=Tf(r.option);R(["right","top","width","height"],function(h){c[h]==="ph"&&(c[h]=u[h])});var f=$t(c,o);this._location={x:f.x,y:f.y},this._size=[f.width,f.height],this._orient===Y8&&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===ig&&!o?{scaleY:l?1:-1,scaleX:1}:i===ig&&o?{scaleY:l?1:-1,scaleX:-1}:i===Y8&&!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 ng({silent:!0,shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:r.get("backgroundColor")},z2:-40}));var o=new ng({shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:"transparent"},z2:0,onclick:pe(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]],y=[],_=g[1]/Math.max(1,o.count()-1),b=n[0]/(f[1]-f[0]),S=r.thisAxis.type==="time",T=-_,A=Math.round(o.count()/n[0]),M;o.each([r.thisDim,l],function(D,N,B){if(A>0&&B%A){S||(T+=_);return}T=S?(+D-f[0])*b:T+_;var F=N==null||isNaN(N)||N==="",$=F?0:gt(N,h,v,!0);F&&!M&&B?(m.push([m[m.length-1][0],0]),y.push([y[y.length-1][0],0])):!F&&M&&(m.push([T,0]),y.push([T,0])),F||(m.push([T,$]),y.push([T,$])),M=F}),u=this._shadowPolygonPts=m,c=this._shadowPolylinePts=y}this._shadowData=o,this._shadowDim=l,this._shadowSize=[n[0],n[1]];var P=this.dataZoomModel;function k(D){var N=P.getModel(D?"selectedDataBackground":"dataBackground"),B=new Me,F=new wn({shape:{points:u},segmentIgnoreThreshold:1,style:N.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),$=new on({shape:{points:c},segmentIgnoreThreshold:1,style:N.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return B.add(F),B.add($),B}for(var I=0;I<3;I++){var O=k(I===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&&Ge(_qe,u.get("type"))<0)){var c=a.getComponent(El(o),s).axis,f=Sqe(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 ng({silent:f,style:{fill:l.get("fillerColor")},textConfig:{position:"inside"}});o.add(h),o.add(new ng({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:mqe,fill:K.color.transparent}})),R([0,1],function(b){var S=l.get("handleIcon");!gw[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:Tqe(this._orient),draggable:!0,drift:pe(this._onDragMove,this,b),ondragend:pe(this._onDragEnd,this),onmouseover:pe(this._showDataInfo,this,!0),onmouseout:pe(this._showDataInfo,this,!1),z2:5});var A=T.getBoundingRect(),M=l.get("handleSize");this._handleHeight=de(M,this._size[1]),this._handleWidth=A.width/A.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(),Zl(T);var P=l.get("handleColor");P!=null&&(T.style.fill=P),o.add(i[b]=T);var k=l.getModel("textStyle"),I=l.get("handleLabel")||{},O=I.show||!1;r.add(a[b]=new at({silent:!0,invisible:!O,style:Mt(k,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:k.getTextColor(),font:k.getFont()}),z2:10}))},this);var d=h;if(f){var v=de(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,y=n.moveHandleIcon=xr(l.get("moveHandleIcon"),-m/2,-m/2,m,m,K.color.neutral00,!0);y.silent=!0,y.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(y),o.add(d)}d.attr({draggable:!0,cursor:"default",drift:pe(this._onDragMove,this,"all"),ondragstart:pe(this._showDataInfo,this,!0),ondragend:pe(this._onDragEnd,this),onmouseover:pe(this._showDataInfo,this,!0),onmouseout:pe(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];au(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=Mi([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=Mi(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();au(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=Mi([gt(l[0],o,s,!0),gt(l[1],o,s,!0)]),this._updateView(),this._dispatchZoomAction(!1)}}}},t.prototype._onBrush=function(r){this._brushing&&(zs(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 ng({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=Qne(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}(yR);function Sqe(e){var t={x:"y",y:"x",radius:"angle",angle:"radius"};return t[e]}function Tqe(e){return e==="vertical"?"ns-resize":"ew-resize"}function yie(e){e.registerComponentModel(gqe),e.registerComponentView(wqe),xR(e)}function Aqe(e){Ze(mie),Ze(yie)}var xie={get:function(e,t,r){var n=Ce((Cqe[e]||{})[t]);return r&&ie(n)?n[n.length-1]:n}},Cqe={color:{active:["#006edd","#e0ffff"],inactive:[K.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]}},X8=Hr.mapVisual,Mqe=Hr.eachVisual,Pqe=ie,q8=R,Lqe=Mi,kqe=gt,Kw=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&&lie(i,r,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},t.prototype.resetVisual=function(r){var n=this.stateList;r=pe(r,this),this.controllerVisuals=AO(this.option.controller,n,r),this.targetVisuals=AO(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=Iv(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||["<",">"],ie(r)&&(r=r.slice(),u=!0);var c=n?r:u?[f(r[0]),f(r[1])]:f(r);if(ve(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=Lqe([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){Pqe(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]={},q8(v,function(m,y){if(Hr.isValidType(y)){var _=xie.get(y,"inactive",s);_!=null&&(g[y]=_,y==="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";q8(this.stateList,function(y){var _=this.itemSize,b=f[y];b||(b=f[y]={color:s?v:[v]}),b.symbol==null&&(b.symbol=h&&Ce(h)||(s?m:[m])),b.symbolSize==null&&(b.symbolSize=d&&Ce(d)||(s?_[0]:[_[0],_[0]])),b.symbol=X8(b.symbol,function(A){return A==="none"?m:A});var S=b.symbolSize;if(S!=null){var T=-1/0;Mqe(S,function(A){A>T&&(T=A)}),b.symbolSize=X8(S,function(A){return kqe(A,[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:K.color.transparent,borderColor:K.color.borderTint,contentColor:K.color.theme[0],inactiveColor:K.color.disabled,borderWidth:0,padding:K.size.m,textGap:10,precision:0,textStyle:{color:K.color.secondary}},t}(Qe),K8=[20,140],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.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]=K8[0]),(r[1]==null||isNaN(r[1]))&&(r[1]=K8[1])},t.prototype._resetRange=function(){var r=this.getExtent(),n=this.option.range;!n||n.auto?(r.auto=1,this.option.range=r):ie(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=Mi((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=Q8(this,"outOfRange",this.getExtent()),i=Q8(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);Oqe([0,1],function(f){var h=o[f];h.setStyle("fill",n.handlesColor[f]),h.y=r[f];var d=fo(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=Ga(i.handleLabelPoints[f],Yl(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=fo(r,s,u,!0),m=l[0]-v/2,y={x:f.x,y:f.y};f.y=g,f.x=m;var _=Ga(c.indicatorLabelPoint,Yl(f,this.group)),b=c.indicatorLabel;b.attr("invisible",!1);var S=this._applyTransform("left",c.mainGroup),T=this._orient,A=T==="horizontal";b.setStyle({text:(i||"")+o.formatValueText(n),verticalAlign:A?S:"middle",align:A?"center":S});var M={x:m,y:g,style:{fill:d}},P={style:{x:_[0],y:_[1]}};if(o.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var k={duration:100,easing:"cubicInOut",additive:!0};f.x=y.x,f.y=y.y,f.animateTo(M,k),b.animateTo(P,k)}else f.attr(M),b.attr(P);this._firstShowIndicator=!1;var I=this._shapes.handleLabels;if(I)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||rU(i))&&(d=this._hoverLinkDataIndices=i.findTargetDataIndices(f));var v=pRe(h,d);this._dispatchHighDown("downplay",pb(v[0],i)),this._dispatchHighDown("highlight",pb(v[1],i))}},t.prototype._hoverLinkFromSeriesMouseOver=function(r){var n;if(Mc(r.target,function(l){var u=De(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 $qe(e,t,r,n){for(var i=t.targetVisuals[n],a=Hr.prepareVisualTypes(i),o={color:v0(e.getData(),"color")},s=0,l=a.length;s0:t.splitNumber>0)||t.calculable)?"continuous":"piecewise"}),e.registerAction(Rqe,Bqe),R(zqe,function(t){e.registerVisual(e.PRIORITY.VISUAL.COMPONENT,t)}),e.registerPreprocessor(Fqe))}function Sie(e){e.registerComponentModel(Iqe),e.registerComponentView(Nqe),wie(e)}var Vqe=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=[],Gqe[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=Ce(a)):(o.dataExtent=this.getExtent(),o.mappingMethod="piecewise",o.pieceList=se(this._pieceList,function(l){return l=Ce(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]=xie.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=Ce(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=xu(Kw.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}(Kw),Gqe={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 oU(e,t){var r=e.inverse;(e.orient==="vertical"?!r:r)&&t.reverse()}var Wqe=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 Me;v.onclick=pe(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),y=a.get("align")||o;v.add(new at({style:Mt(a,{x:y==="right"?-i:s[0]+i,y:s[1]/2,text:d.text,verticalAlign:a.get("verticalAlign")||"middle",align:y,opacity:be(a.get("opacity"),m==="outOfRange"?.5:1)}),silent:f}))}r.add(v)},this),u&&this._renderEndsText(r,u[1],s,c,o),Bc(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:pb(s.findTargetDataIndices(n),s)})}},t.prototype._getItemAlign=function(){var r=this.visualMapModel,n=r.option;if(n.orient==="vertical")return bie(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=Ce(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}(_ie);function Tie(e){e.registerComponentModel(Vqe),e.registerComponentView(Wqe),wie(e)}function Hqe(e){Ze(Sie),Ze(Tie)}var Uqe=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:YQ(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}(),Zqe=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 Uqe(this);if(this._target=null,this.ecModel.eachSeries(function(i){IW(i,null)}),this.shouldShow()){var n=this.getTarget();IW(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:K.color.border,borderWidth:2},windowStyle:{borderWidth:1,color:K.color.neutral30,borderColor:K.color.neutral40,opacity:.3},z:10},t}(Qe),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.render=function(r,n,i){if(this._api=i,this._model=r,this._coordSys||(this._coordSys=new Lf),!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")||K.color.neutral00);var l=jr(r,i).refContainer,u=$t(vJ(r,!0),l),c=s.lineWidth||0,f=this._contentRect=of(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(),lU(r,this)},t.prototype.renderContent=function(r){this._bridgeRendered=r,this._isEnabled()&&(this._dealRenderContent(),this._dealUpdateWindow(),lU(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=$t({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=da([],r.targetTrans),i=Fa([],this._coordSys.transform,n);this._transThisToTarget=da([],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 Pf(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",pe(this._onPan,this)).on("zoom",pe(this._onZoom,this))},t.prototype._onPan=function(r){var n=this._transThisToTarget;if(!(!this._isEnabled()||!n)){var i=ur([],[r.oldX,r.oldY],n),a=ur([],[r.oldX-r.dx,r.oldY-r.dy],n);this._api.dispatchAction(sU(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=ur([],[r.originX,r.originY],n);this._api.dispatchAction(sU(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 sU(e,t){var r=e.mainType==="series"?e.subType+"Roam":e.mainType+"Roam",n={type:r};return n[e.mainType+"Id"]=e.id,re(n,t),n}function lU(e,t){var r=sf(e);PT(t.group,r.z,r.zlevel)}function Xqe(e){e.registerComponentModel(Zqe),e.registerComponentView(Yqe)}var qqe={label:{enabled:!0},decal:{show:!1}},uU=Je(),Kqe={};function Qqe(e,t){var r=e.getModel("aria");if(!r.get("enabled"))return;var n=Ce(qqe);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)),uU(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 _=mI(h.ecModel,h.name,Kqe,e.getSeriesCount()),b=d.getVisual("decal");d.setVisual("decal",S(b,_))}else{var v=h.getRawData(),g={},m=uU(h).scope;d.each(function(T){var A=d.getRawIndex(T);g[A]=T});var y=v.count();v.each(function(T){var A=g[T],M=v.getName(T)||T+"",P=mI(h.ecModel,M,m,y),k=d.getItemVisual(A,"decal");d.setItemVisual(A,"decal",S(k,P))})}function S(T,A){var M=T?re(re({},A),T):A;return M.dirty=!0,M}})}}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 y=s();if(y){var _=f.get(["general","withTitle"]);m=o(_,{title:y})}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,k){if(k1?f.get(["series","multiple",D]):f.get(["series","single",D]),I=o(I,{seriesId:P.seriesIndex,seriesName:P.get("name"),seriesType:l(P.subType)});var N=P.getData();if(N.count()>d){var B=f.get(["data","partialData"]);I+=o(B,{displayCnt:d})}else I+=f.get(["data","allData"]);for(var F=f.get(["data","separator","middle"]),$=f.get(["data","separator","end"]),U=f.get(["data","excludeDimensionId"]),z=[],V=0;V":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},tKe=function(){function e(t){var r=this._condVal=ve(t)?new RegExp(t):yK(t)?t:null;if(r==null){var n="";mt(n)}}return e.prototype.evaluate=function(t){var r=typeof t;return ve(r)?this._condVal.test(t):ot(r)?this._condVal.test(t+""):!1},e}(),rKe=function(){function e(){}return e.prototype.evaluate=function(){return this.value},e}(),nKe=function(){function e(){}return e.prototype.evaluate=function(){for(var t=this.children,r=0;r2&&n.push(i),i=[N,B]}function c(N,B,F,$){Hh(N,F)&&Hh(B,$)||i.push(N,B,F,$,F,$)}function f(N,B,F,$,U,z){var V=Math.abs(B-N),W=Math.tan(V/4)*4/3,Y=BP:O2&&n.push(i),n}function EO(e,t,r,n,i,a,o,s,l,u){if(Hh(e,r)&&Hh(t,n)&&Hh(i,o)&&Hh(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,y=i-o,_=a-s,b=g*g+m*m,S=y*y+_*_;if(b=0&&P=0){l.push(o,s);return}var k=[],I=[];ru(e,r,i,o,.5,k),ru(t,n,a,s,.5,I),EO(k[0],I[0],k[1],I[1],k[2],I[2],k[3],I[3],l,u),EO(k[4],I[4],k[5],I[5],k[6],I[6],k[7],I[7],l,u)}function mKe(e,t){var r=OO(e),n=[];t=t||1;for(var i=0;i0)for(var u=0;uMath.abs(u),f=Cie([l,u],c?0:1,t),h=(c?s:u)/f.length,d=0;di,o=Cie([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 _Ke(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 ph(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 Qw(e,t,r,n){if(r===1)n.push(t);else{var i=Math.floor(r/2),a=e(t);Qw(e,a[0],i,n),Qw(e,a[1],r-i,n)}return n}function wKe(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 tS(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:IKe(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 Lie(e){return AKe(e.path,e.count)}function DO(){return{fromIndividuals:[],toIndividuals:[],count:0}}function OKe(e,t,r){var n=[];function i(T){for(var A=0;A=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 DKe={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;yU(e)&&(u=e,c=t),yU(t)&&(u=t,c=e);function f(y,_,b,S,T){var A=y.many,M=y.one;if(A.length===1&&!T){var P=_?A[0]:M,k=_?M:A[0];if(Jw(P))f({many:[P],one:k},!0,b,S,!0);else{var I=s?Pe({delay:s(b,S)},l):l;PR(P,k,I),a(P,k,P,k,I)}}else for(var O=Pe({dividePath:DKe[r],individualDelay:s&&function(U,z,V,W){return s(U+b,S)}},l),D=_?OKe(A,M,O):EKe(M,A,O),N=D.fromIndividuals,B=D.toIndividuals,F=N.length,$=0;$t.length,d=u?xU(c,u):xU(h?t:e,[h?e:t]),v=0,g=0;gkie))for(var a=n.getIndices(),o=0;o0&&A.group.traverse(function(P){P instanceof rt&&!P.animators.length&&P.animateFrom({style:{opacity:0}},M)})})}function TU(e){var t=e.getModel("universalTransition").get("seriesKey");return t||e.id}function AU(e){return ie(e)?e.sort().join(","):e}function xl(e){if(e.hostModel)return e.hostModel.getModel("universalTransition").get("divideShape")}function FKe(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=TU(a),c=AU(u);n.set(c,{dataGroupId:s,data:l}),ie(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=TU(a),u=AU(l),c=n.get(u);if(c)r.set(u,{oldSeries:[{dataGroupId:c.dataGroupId,divide:xl(c.data),data:c.data}],newSeries:[{dataGroupId:o,divide:xl(s),data:s}]});else if(ie(l)){var f=[];R(l,function(v){var g=n.get(v);g.data&&f.push({dataGroupId:g.dataGroupId,divide:xl(g.data),data:g.data})}),f.length&&r.set(u,{oldSeries:f,newSeries:[{dataGroupId:o,data:s,divide:xl(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:xl(h.data)}],newSeries:[]},r.set(h.key,d)),d.newSeries.push({dataGroupId:o,data:s,divide:xl(s)})}}}}),r}function CU(e,t){for(var r=0;r=0&&i.push({dataGroupId:t.oldDataGroupIds[s],data:t.oldData[s],divide:xl(t.oldData[s]),groupIdDim:o.dimension})}),R(Pt(e.to),function(o){var s=CU(r.updatedSeries,o);if(s>=0){var l=r.updatedSeries[s].getData();a.push({dataGroupId:t.oldDataGroupIds[s],data:l,divide:xl(l),groupIdDim:o.dimension})}}),i.length>0&&a.length>0&&Iie(i,a,n)}function GKe(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=MU,n=PU,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 HKe(){return new WKe}var MU=0,PU=0;function UKe(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=LR(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 ZKe(e,t,r,n,i,a){e!=="no"&&R(r,function(o){var s=LR(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:Ce(o),vmin:t(o.start),vmax:t(o.end),gapParsed:{type:"tpAbs",val:0},gapReal:null};if(o.gap!=null){var l=!1;if(ve(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 kR(e,t){return jO(t)===jO(e)}function jO(e){return e.start+"_\0_"+e.end}function XKe(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=gu(n,function(u){return kR(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 qKe(e,t,r,n){var i,a;if(e.break){var o=e.break.parsedBreak,s=gu(r,function(f){return kR(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"?mr(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 KKe(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 QKe={vmin:"start",vmax:"end"};function JKe(e,t){return t&&(e=e||{},e.break={type:QKe[t.type],start:t.parsedBreak.vmin,end:t.parsedBreak.vmax}),e}function eQe(){wBe({createScaleBreakContext:HKe,pruneTicksByBreak:ZKe,addBreaksToTicks:YKe,parseAxisBreakOption:NO,identifyAxisBreak:kR,serializeAxisBreakIdentifier:jO,retrieveAxisBreakPairs:XKe,getTicksLogTransformBreak:qKe,logarithmicParseBreaksFromOption:KKe,makeAxisLabelFormatterParamBreak:JKe})}var LU=Je();function tQe(e,t){var r=gu(e,function(n){return Sr().identifyAxisBreak(n.parsedBreak.breakOption,t.breakOption)});return r||e.push(r={zigzagRandomList:[],parsedBreak:t,shouldRemove:!1}),r}function rQe(e){R(e,function(t){return t.shouldRemove=!0})}function nQe(e){for(var t=e.length-1;t>=0;t--)e[t].shouldRemove&&e.splice(t,1)}function iQe(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(k){return k.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,y=v.lineDash,_=v.fill,b=new Me({ignoreModelZ:!0}),S=a.isHorizontal(),T=LU(t).visualList||(LU(t).visualList=[]);rQe(T);for(var A=function(k){var I=o[k][0].break.parsedBreak,O=[];O[0]=a.toGlobalCoord(a.dataToCoord(I.vmin,!0)),O[1]=a.toGlobalCoord(a.dataToCoord(I.vmax,!0)),O[1]=z;ge&&(J=z);var We=[],xe=[];We[$]=O,xe[$]=D,!ce&&!ge&&(We[$]+=Z?-l:l,xe[$]-=Z?l:-l),We[U]=J,xe[U]=J,W.push(We),Y.push(xe);var ne=void 0;if(ae_[1]&&_.reverse(),{coordPair:_,brkId:Sr().serializeAxisBreakIdentifier(y.breakOption)}});l.sort(function(m,y){return m.coordPair[0]-y.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,y=new Ie;Ie.scale(m,n,-s),Ie.scale(y,n,1-s),RI(r[0],m),RI(r[1],y)}function sQe(e,t){var r={breaks:[]};return R(t.breaks,function(n){if(n){var i=gu(e.get("breaks",!0),function(s){return Sr().identifyAxisBreak(s,n)});if(i){var a=t.type,o={isExpanded:!!i.isExpanded};i.isExpanded=a===zT?!0:a===Qte?!1:a===Jte?!i.isExpanded:i.isExpanded,r.breaks.push({start:i.start,end:i.end,isExpanded:!!i.isExpanded,old:o})}}}),r}function lQe(){n6e({adjustBreakLabelPair:oQe,buildAxisBreakLine:aQe,rectCoordBuildBreakAxis:iQe,updateModelAxisBreak:sQe})}function uQe(e){u6e(e),eQe(),lQe()}function cQe(){k6e(fQe)}function fQe(e,t){R(e,function(r){if(!r.model.get(["axisLabel","inside"])){var n=hQe(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 hQe(e){var t=e.model,r=e.scale;if(!t.get(["axisLabel","show"])||r.isBlank())return;var n,i,a=r.getExtent();r instanceof ev?i=r.count():(n=r.getTicks(),i=n.length);var o=e.getLabelModel(),s=Hv(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 LQe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function kQe(e){return e==="ROUTER"||e==="ROUTER_LATE"?30:e==="REPEATER"||e==="TRACKER"?25:e==="CLIENT_MUTE"?7:e==="CLIENT_BASE"?12:15}function IQe({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(y=>{m.add(y.from_node),m.add(y.to_node)}),m},[t]),l=H.useMemo(()=>{let m=e;return a==="connected"?m=m.filter(y=>s.has(y.node_num)):a==="infra"&&(m=m.filter(y=>OU.includes(y.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(y=>{y.from_node===r&&m.add(y.to_node),y.to_node===r&&m.add(y.from_node)}),m},[r,c]),h=H.useMemo(()=>{const m=l.map(_=>{const b=LQe(_.latitude),S=IU[b%IU.length],T=OU.includes(_.role),A=_.node_num===r,M=f.has(_.node_num),P=r===null||A||M;return{id:String(_.node_num),name:_.short_name,value:_.node_num,symbolSize:kQe(_.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}}),y=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:PQe(_.snr),width:b&&r!==null?2:1,opacity:r===null?.4:b?.6:.04}}});return{nodes:m,links:y}},[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 y=m.data;return`${y.name}
${y.longName}
Role: ${y.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 y=m.data.nodeNum;n(r===y?null:y??null)}},[r,n]),g=H.useMemo(()=>({click:v}),[v]);return H.useEffect(()=>{var y;const m=(y=i.current)==null?void 0:y.getEchartsInstance();m&&m.setOption(d,{notMerge:!1,lazyUpdate:!0})},[d]),x.jsxs("div",{className:"relative bg-bg-card rounded-lg border border-border overflow-hidden",children:[x.jsx(MQe,{ref:i,option:d,style:{height:"540px",width:"100%"},onEvents:g,opts:{renderer:"canvas"}}),x.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:[x.jsx(FE,{size:14,className:"text-slate-500"}),x.jsx("div",{className:"flex gap-1",children:[{key:"connected",label:"Connected"},{key:"infra",label:"Infra"},{key:"all",label:"All"}].map(({key:m,label:y})=>x.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:y},m))}),x.jsxs("span",{className:"text-xs text-slate-500 ml-2",children:[l.length," nodes • ",c.length," edges"]})]}),x.jsxs("div",{className:"absolute bottom-4 left-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded p-3",children:[x.jsx("div",{className:"text-xs text-slate-400 font-medium mb-2",children:"Edge Quality (SNR)"}),x.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=>x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx("div",{className:"w-4 h-0.5",style:{backgroundColor:m.color}}),x.jsx("span",{className:"text-xs text-slate-500",children:m.label})]},m.label))})]}),x.jsxs("div",{className:"absolute bottom-4 right-4 bg-bg-card/90 backdrop-blur-sm border border-border rounded p-3",children:[x.jsx("div",{className:"text-xs text-slate-400 font-medium mb-2",children:"Node Type"}),x.jsxs("div",{className:"space-y-2",children:[x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx("div",{className:"w-3 h-3 rounded-full bg-blue-500"}),x.jsx("span",{className:"text-xs text-slate-500",children:"Infrastructure"})]}),x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx("div",{className:"w-3 h-3 rounded-full bg-gray-900 border-2 border-blue-500"}),x.jsx("span",{className:"text-xs text-slate-500",children:"Client"})]})]})]})]})}function Die(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 OQe(e,t,r){t.center!==r.center&&e.setLatLng(t.center),t.radius!=null&&t.radius!==r.radius&&e.setRadius(t.radius)}const EQe=1;function DQe(e){return Object.freeze({__version:EQe,map:e})}function Nie(e,t){return Object.freeze({...e,...t})}const jie=H.createContext(null),Rie=jie.Provider;function KT(){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 NQe(e){function t(r,n){const{instance:i,context:a}=e(r).current;return H.useImperativeHandle(n,()=>i),r.children==null?null:Q.createElement(Rie,{value:a},r.children)}return H.forwardRef(t)}function jQe(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?tZ.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 DR(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 QT(e,t){const r=e.pane??t.pane;return r?{...e,pane:r}:e}function BQe(e,t){return function(n,i){const a=KT(),o=e(QT(n,a),a);return Die(a.map,n.attribution),DR(o.current,n.eventHandlers),t(o.current,a,n,i),o}}var zO={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)})(ag,function(r){var n="1.9.4";function i(p){var w,C,E,j;for(C=1,E=arguments.length;C"u"||!L||!L.Mixin)){p=b(p)?p:[p];for(var w=0;w0?Math.floor(p):Math.ceil(p)};z.prototype={clone:function(){return new z(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 z(this.x*p.x,this.y*p.y)},unscaleBy:function(p){return new z(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=V(this.x),this.y=V(this.y),this},distanceTo:function(p){p=W(p);var w=p.x-this.x,C=p.y-this.y;return Math.sqrt(w*w+C*C)},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,C){return p instanceof z?p:b(p)?new z(p[0],p[1]):p==null?p:typeof p=="object"&&"x"in p&&"y"in p?new z(p.x,p.y):new z(p,w,C)}function Y(p,w){if(p)for(var C=w?[p,w]:p,E=0,j=C.length;E=this.min.x&&C.x<=this.max.x&&w.y>=this.min.y&&C.y<=this.max.y},intersects:function(p){p=Z(p);var w=this.min,C=this.max,E=p.min,j=p.max,G=j.x>=w.x&&E.x<=C.x,X=j.y>=w.y&&E.y<=C.y;return G&&X},overlaps:function(p){p=Z(p);var w=this.min,C=this.max,E=p.min,j=p.max,G=j.x>w.x&&E.xw.y&&E.y=w.lat&&j.lat<=C.lat&&E.lng>=w.lng&&j.lng<=C.lng},intersects:function(p){p=ae(p);var w=this._southWest,C=this._northEast,E=p.getSouthWest(),j=p.getNorthEast(),G=j.lat>=w.lat&&E.lat<=C.lat,X=j.lng>=w.lng&&E.lng<=C.lng;return G&&X},overlaps:function(p){p=ae(p);var w=this._southWest,C=this._northEast,E=p.getSouthWest(),j=p.getNorthEast(),G=j.lat>w.lat&&E.latw.lng&&E.lng1,Qie=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}(),Jie=function(){return!!document.createElement("canvas").getContext}(),tA=!!(document.createElementNS&&Ve("svg").createSVGRect),eae=!!tA&&function(){var p=document.createElement("div");return p.innerHTML="",(p.firstChild&&p.firstChild.namespaceURI)==="http://www.w3.org/2000/svg"}(),tae=!tA&&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}}(),rae=navigator.platform.indexOf("Mac")===0,nae=navigator.platform.indexOf("Linux")===0;function Qa(p){return navigator.userAgent.toLowerCase().indexOf(p)>=0}var Ue={ie:Vt,ielt9:nr,edge:jn,webkit:qr,android:Jn,android23:If,androidStock:T0,opera:JT,chrome:BR,gecko:zR,safari:Gie,phantom:$R,opera12:FR,win:Wie,ie3d:VR,webkit3d:eA,gecko3d:GR,any3d:Hie,mobile:qv,mobileWebkit:Uie,mobileWebkit3d:Zie,msPointer:WR,pointer:HR,touch:Yie,touchNative:UR,mobileOpera:Xie,mobileGecko:qie,retina:Kie,passiveEvents:Qie,canvas:Jie,svg:tA,vml:tae,inlineSvg:eae,mac:rae,linux:nae},ZR=Ue.msPointer?"MSPointerDown":"pointerdown",YR=Ue.msPointer?"MSPointerMove":"pointermove",XR=Ue.msPointer?"MSPointerUp":"pointerup",qR=Ue.msPointer?"MSPointerCancel":"pointercancel",rA={touchstart:ZR,touchmove:YR,touchend:XR,touchcancel:qR},KR={touchstart:uae,touchmove:A0,touchend:A0,touchcancel:A0},Of={},QR=!1;function iae(p,w,C){return w==="touchstart"&&lae(),KR[w]?(C=KR[w].bind(this,C),p.addEventListener(rA[w],C,!1),C):(console.warn("wrong event specified:",w),f)}function aae(p,w,C){if(!rA[w]){console.warn("wrong event specified:",w);return}p.removeEventListener(rA[w],C,!1)}function oae(p){Of[p.pointerId]=p}function sae(p){Of[p.pointerId]&&(Of[p.pointerId]=p)}function JR(p){delete Of[p.pointerId]}function lae(){QR||(document.addEventListener(ZR,oae,!0),document.addEventListener(YR,sae,!0),document.addEventListener(XR,JR,!0),document.addEventListener(qR,JR,!0),QR=!0)}function A0(p,w){if(w.pointerType!==(w.MSPOINTER_TYPE_MOUSE||"mouse")){w.touches=[];for(var C in Of)w.touches.push(Of[C]);w.changedTouches=[w],p(w)}}function uae(p,w){w.MSPOINTER_TYPE_TOUCH&&w.pointerType===w.MSPOINTER_TYPE_TOUCH&&un(w),A0(p,w)}function cae(p){var w={},C,E;for(E in p)C=p[E],w[E]=C&&C.bind?C.bind(p):C;return p=w,w.type="dblclick",w.detail=2,w.isTrusted=!1,w._simulated=!0,w}var fae=200;function hae(p,w){p.addEventListener("dblclick",w);var C=0,E;function j(G){if(G.detail!==1){E=G.detail;return}if(!(G.pointerType==="mouse"||G.sourceCapabilities&&!G.sourceCapabilities.firesTouchEvents)){var X=i5(G);if(!(X.some(function(oe){return oe instanceof HTMLLabelElement&&oe.attributes.for})&&!X.some(function(oe){return oe instanceof HTMLInputElement||oe instanceof HTMLSelectElement}))){var te=Date.now();te-C<=fae?(E++,E===2&&w(cae(G))):E=1,C=te}}}return p.addEventListener("click",j),{dblclick:w,simDblclick:j}}function dae(p,w){p.removeEventListener("dblclick",w.dblclick),p.removeEventListener("click",w.simDblclick)}var nA=P0(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),Kv=P0(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),e5=Kv==="webkitTransition"||Kv==="OTransition"?Kv+"End":"transitionend";function t5(p){return typeof p=="string"?document.getElementById(p):p}function Qv(p,w){var C=p.style[w]||p.currentStyle&&p.currentStyle[w];if((!C||C==="auto")&&document.defaultView){var E=document.defaultView.getComputedStyle(p,null);C=E?E[w]:null}return C==="auto"?null:C}function Tt(p,w,C){var E=document.createElement(p);return E.className=w||"",C&&C.appendChild(E),E}function ir(p){var w=p.parentNode;w&&w.removeChild(p)}function C0(p){for(;p.firstChild;)p.removeChild(p.firstChild)}function Ef(p){var w=p.parentNode;w&&w.lastChild!==p&&w.appendChild(p)}function Df(p){var w=p.parentNode;w&&w.firstChild!==p&&w.insertBefore(p,w.firstChild)}function iA(p,w){if(p.classList!==void 0)return p.classList.contains(w);var C=M0(p);return C.length>0&&new RegExp("(^|\\s)"+w+"(\\s|$)").test(C)}function ut(p,w){if(p.classList!==void 0)for(var C=v(w),E=0,j=C.length;E0?2*window.devicePixelRatio:1;function o5(p){return Ue.edge?p.wheelDeltaY/2:p.deltaY&&p.deltaMode===0?-p.deltaY/gae: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 gA(p,w){var C=w.relatedTarget;if(!C)return!0;try{for(;C&&C!==p;)C=C.parentNode}catch{return!1}return C!==p}var mae={__proto__:null,on:st,off:Ht,stopPropagation:Tu,disableScrollPropagation:pA,disableClickPropagation:rp,preventDefault:un,stop:Au,getPropagationPath:i5,getMousePosition:a5,getWheelDelta:o5,isExternalTarget:gA,addListener:st,removeListener:Ht},s5=U.extend({run:function(p,w,C,E){this.stop(),this._el=p,this._inProgress=!0,this._duration=C||.25,this._easeOutPower=1/Math.max(E||.5,.2),this._startPos=Su(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,C=this._duration*1e3;wthis.options.maxZoom)?this.setZoom(p):this},panInsideBounds:function(p,w){this._enforcingBounds=!0;var C=this.getCenter(),E=this._limitCenter(C,this._zoom,ae(p));return C.equals(E)||this.panTo(E,w),this._enforcingBounds=!1,this},panInside:function(p,w){w=w||{};var C=W(w.paddingTopLeft||w.padding||[0,0]),E=W(w.paddingBottomRight||w.padding||[0,0]),j=this.project(this.getCenter()),G=this.project(p),X=this.getPixelBounds(),te=Z([X.min.add(C),X.max.subtract(E)]),oe=te.getSize();if(!te.contains(G)){this._enforcingBounds=!0;var he=G.subtract(te.getCenter()),Ee=te.extend(G).getSize().subtract(oe);j.x+=he.x<0?-Ee.x:Ee.x,j.y+=he.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 C=this.getSize(),E=w.divideBy(2).round(),j=C.divideBy(2).round(),G=E.subtract(j);return!G.x&&!G.y?this:(p.animate&&p.pan?this.panBy(G):(p.pan&&this._rawPanBy(G),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:C}))},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),C=o(this._handleGeolocationError,this);return p.watch?this._locationWatchId=navigator.geolocation.watchPosition(w,C,p):navigator.geolocation.getCurrentPosition(w,C,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,C=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: "+C+"."})}},_handleGeolocationResponse:function(p){if(this._container._leaflet_id){var w=p.coords.latitude,C=p.coords.longitude,E=new ce(w,C),j=E.toBounds(p.coords.accuracy*2),G=this._locateOptions;if(G.setView){var X=this.getBoundsZoom(j);this.setView(E,G.maxZoom?Math.min(X,G.maxZoom):X)}var te={latlng:E,bounds:j,timestamp:p.timestamp};for(var oe in p.coords)typeof p.coords[oe]=="number"&&(te[oe]=p.coords[oe]);this.fire("locationfound",te)}},addHandler:function(p,w){if(!w)return this;var C=this[p]=new w(this);return this._handlers.push(C),this.options[p]&&C.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(),ir(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)ir(this._panes[p]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(p,w){var C="leaflet-pane"+(p?" leaflet-"+p.replace("Pane","")+"-pane":""),E=Tt("div",C,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()),C=this.unproject(p.getTopRight());return new J(w,C)},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,C){p=ae(p),C=W(C||[0,0]);var E=this.getZoom()||0,j=this.getMinZoom(),G=this.getMaxZoom(),X=p.getNorthWest(),te=p.getSouthEast(),oe=this.getSize().subtract(C),he=Z(this.project(te,E),this.project(X,E)).getSize(),Ee=Ue.any3d?this.options.zoomSnap:1,et=oe.x/he.x,pt=oe.y/he.y,Rn=w?Math.max(et,pt):Math.min(et,pt);return E=this.getScaleZoom(Rn,E),Ee&&(E=Math.round(E/(Ee/100))*(Ee/100),E=w?Math.ceil(E/Ee)*Ee:Math.floor(E/Ee)*Ee),Math.max(j,Math.min(G,E))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new z(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(p,w){var C=this._getTopLeftPoint(p,w);return new Y(C,C.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 C=this.options.crs;return w=w===void 0?this._zoom:w,C.scale(p)/C.scale(w)},getScaleZoom:function(p,w){var C=this.options.crs;w=w===void 0?this._zoom:w;var E=C.zoom(p*C.scale(w));return isNaN(E)?1/0:E},project:function(p,w){return w=w===void 0?this._zoom:w,this.options.crs.latLngToPoint(ge(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(ge(p))._round();return w._subtract(this.getPixelOrigin())},wrapLatLng:function(p){return this.options.crs.wrapLatLng(ge(p))},wrapLatLngBounds:function(p){return this.options.crs.wrapLatLngBounds(ae(p))},distance:function(p,w){return this.options.crs.distance(ge(p),ge(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(ge(p)))},mouseEventToContainerPoint:function(p){return a5(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=t5(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=Qv(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),Cr(this._mapPane,new z(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,C){Cr(this._mapPane,new z(0,0));var E=!this._loaded;this._loaded=!0,w=this._limitZoom(w),this.fire("viewprereset");var j=this._zoom!==w;this._moveStart(j,C)._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,C,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?C&&C.pinch&&this.fire("zoom",C):((j||C&&C.pinch)&&this.fire("zoom",C),this.fire("move",C)),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){Cr(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?Ht: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 C=[],E,j=w==="mouseout"||w==="mouseover",G=p.target||p.srcElement,X=!1;G;){if(E=this._targets[l(G)],E&&(w==="click"||w==="preclick")&&this._draggableMoved(E)){X=!0;break}if(E&&E.listens(w,!0)&&(j&&!gA(G,p)||(C.push(E),j))||G===this._container)break;G=G.parentNode}return!C.length&&!X&&!j&&this.listens(w,!0)&&(C=[this]),C},_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 C=p.type;C==="mousedown"&&cA(w),this._fireDOMEvent(p,C)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(p,w,C){if(p.type==="click"){var E=i({},p);E.type="preclick",this._fireDOMEvent(E,E.type,C)}var j=this._findEventTargets(p,w);if(C){for(var G=[],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(),C=this.getMaxZoom(),E=Ue.any3d?this.options.zoomSnap:1;return E&&(p=Math.round(p/E)*E),Math.max(w,Math.min(C,p))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){_r(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(p,w){var C=this._getCenterOffset(p)._trunc();return(w&&w.animate)!==!0&&!this.getSize().contains(C)?!1:(this.panBy(C,w),!0)},_createAnimProxy:function(){var p=this._proxy=Tt("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(p),this.on("zoomanim",function(w){var C=nA,E=this._proxy.style[C];wu(this._proxy,this.project(w.center,w.zoom),this.getZoomScale(w.zoom,1)),E===this._proxy.style[C]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){ir(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var p=this.getCenter(),w=this.getZoom();wu(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,C){if(this._animatingZoom)return!0;if(C=C||{},!this._zoomAnimated||C.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 C.animate!==!0&&!this.getSize().contains(j)?!1:(O(function(){this._moveStart(!0,C.noMoveStart||!1)._animateZoom(p,w,!0)},this),!0)},_animateZoom:function(p,w,C,E){this._mapPane&&(C&&(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 yae(p,w){return new bt(p,w)}var ba=B.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),C=this.getPosition(),E=p._controlCorners[C];return ut(w,"leaflet-control"),C.indexOf("bottom")!==-1?E.insertBefore(w,E.firstChild):E.appendChild(w),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(ir(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()}}),np=function(p){return new ba(p)};bt.include({addControl:function(p){return p.addTo(this),this},removeControl:function(p){return p.remove(),this},_initControlPos:function(){var p=this._controlCorners={},w="leaflet-",C=this._controlContainer=Tt("div",w+"control-container",this._container);function E(j,G){var X=w+j+" "+w+G;p[j+G]=Tt("div",X,C)}E("top","left"),E("top","right"),E("bottom","left"),E("bottom","right")},_clearControlPos:function(){for(var p in this._controlCorners)ir(this._controlCorners[p]);ir(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var l5=ba.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(p,w,C,E){return C1,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)),C=w.overlay?p.type==="add"?"overlayadd":"overlayremove":p.type==="add"?"baselayerchange":null;C&&this._map.fire(C,w)},_createRadioElement:function(p,w){var C='",E=document.createElement("div");return E.innerHTML=C,E.firstChild},_addItem:function(p){var w=document.createElement("label"),C=this._map.hasLayer(p.layer),E;p.overlay?(E=document.createElement("input"),E.type="checkbox",E.className="leaflet-control-layers-selector",E.defaultChecked=C):E=this._createRadioElement("leaflet-base-layers_"+l(this),C),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 G=document.createElement("span");w.appendChild(G),G.appendChild(E),G.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,C,E=[],j=[];this._handlingClick=!0;for(var G=p.length-1;G>=0;G--)w=p[G],C=this._getLayer(w.layerId).layer,w.checked?E.push(C):w.checked||j.push(C);for(G=0;G=0;j--)w=p[j],C=this._getLayer(w.layerId).layer,w.disabled=C.options.minZoom!==void 0&&EC.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(){Ht(p,"click",un),w._preventClick=!1})}}),xae=function(p,w,C){return new l5(p,w,C)},mA=ba.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(p){var w="leaflet-control-zoom",C=Tt("div",w+" leaflet-bar"),E=this.options;return this._zoomInButton=this._createButton(E.zoomInText,E.zoomInTitle,w+"-in",C,this._zoomIn),this._zoomOutButton=this._createButton(E.zoomOutText,E.zoomOutTitle,w+"-out",C,this._zoomOut),this._updateDisabled(),p.on("zoomend zoomlevelschange",this._updateDisabled,this),C},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,C,E,j){var G=Tt("a",C,E);return G.innerHTML=p,G.href="#",G.title=w,G.setAttribute("role","button"),G.setAttribute("aria-label",w),rp(G),st(G,"click",Au),st(G,"click",j,this),st(G,"click",this._refocusOnMap,this),G},_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"))}});bt.mergeOptions({zoomControl:!0}),bt.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new mA,this.addControl(this.zoomControl))});var _ae=function(p){return new mA(p)},u5=ba.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(p){var w="leaflet-control-scale",C=Tt("div",w),E=this.options;return this._addScales(E,w+"-line",C),p.on(E.updateWhenIdle?"moveend":"move",this._update,this),p.whenReady(this._update,this),C},onRemove:function(p){p.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(p,w,C){p.metric&&(this._mScale=Tt("div",w,C)),p.imperial&&(this._iScale=Tt("div",w,C))},_update:function(){var p=this._map,w=p.getSize().y/2,C=p.distance(p.containerPointToLatLng([0,w]),p.containerPointToLatLng([this.options.maxWidth,w]));this._updateScales(C)},_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),C=w<1e3?w+" m":w/1e3+" km";this._updateScale(this._mScale,C,w/p)},_updateImperial:function(p){var w=p*3.2808399,C,E,j;w>5280?(C=w/5280,E=this._getRoundNum(C),this._updateScale(this._iScale,E+" mi",E/C)):(j=this._getRoundNum(w),this._updateScale(this._iScale,j+" ft",j/w))},_updateScale:function(p,w,C){p.style.width=Math.round(this.options.maxWidth*C)+"px",p.innerHTML=w},_getRoundNum:function(p){var w=Math.pow(10,(Math.floor(p)+"").length-1),C=p/w;return C=C>=10?10:C>=5?5:C>=3?3:C>=2?2:1,w*C}}),bae=function(p){return new u5(p)},wae='',yA=ba.extend({options:{position:"bottomright",prefix:''+(Ue.inlineSvg?wae+" ":"")+"Leaflet"},initialize:function(p){g(this,p),this._attributions={}},onAdd:function(p){p.attributionControl=this,this._container=Tt("div","leaflet-control-attribution"),rp(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 C=[];this.options.prefix&&C.push(this.options.prefix),p.length&&C.push(p.join(", ")),this._container.innerHTML=C.join(' ')}}});bt.mergeOptions({attributionControl:!0}),bt.addInitHook(function(){this.options.attributionControl&&new yA().addTo(this)});var Sae=function(p){return new yA(p)};ba.Layers=l5,ba.Zoom=mA,ba.Scale=u5,ba.Attribution=yA,np.layers=xae,np.zoom=_ae,np.scale=bae,np.attribution=Sae;var eo=B.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}});eo.addTo=function(p,w){return p.addHandler(w,this),this};var Tae={Events:$},c5=Ue.touch?"touchstart mousedown":"mousedown",Js=U.extend({options:{clickTolerance:3},initialize:function(p,w,C,E){g(this,E),this._element=p,this._dragStartTarget=w||p,this._preventOutline=C},enable:function(){this._enabled||(st(this._dragStartTarget,c5,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(Js._dragging===this&&this.finishDrag(!0),Ht(this._dragStartTarget,c5,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(p){if(this._enabled&&(this._moved=!1,!iA(this._element,"leaflet-zoom-anim"))){if(p.touches&&p.touches.length!==1){Js._dragging===this&&this.finishDrag();return}if(!(Js._dragging||p.shiftKey||p.which!==1&&p.button!==1&&!p.touches)&&(Js._dragging=this,this._preventOutline&&cA(this._element),sA(),Jv(),!this._moving)){this.fire("down");var w=p.touches?p.touches[0]:p,C=r5(this._element);this._startPoint=new z(w.clientX,w.clientY),this._startPos=Su(this._element),this._parentScale=fA(C);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,C=new z(w.clientX,w.clientY)._subtract(this._startPoint);!C.x&&!C.y||Math.abs(C.x)+Math.abs(C.y)G&&(X=te,G=oe);G>C&&(w[X]=1,_A(p,w,C,E,X),_A(p,w,C,X,j))}function Pae(p,w){for(var C=[p[0]],E=1,j=0,G=p.length;Ew&&(C.push(p[E]),j=E);return jw.max.x&&(C|=2),p.yw.max.y&&(C|=8),C}function Lae(p,w){var C=w.x-p.x,E=w.y-p.y;return C*C+E*E}function ip(p,w,C,E){var j=w.x,G=w.y,X=C.x-j,te=C.y-G,oe=X*X+te*te,he;return oe>0&&(he=((p.x-j)*X+(p.y-G)*te)/oe,he>1?(j=C.x,G=C.y):he>0&&(j+=X*he,G+=te*he)),X=p.x-j,te=p.y-G,E?X*X+te*te:new z(j,G)}function Bi(p){return!b(p[0])||typeof p[0][0]!="object"&&typeof p[0][0]<"u"}function m5(p){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Bi(p)}function y5(p,w){var C,E,j,G,X,te,oe,he;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=ge([0,0]),et=ae(p),pt=et.getNorthWest().distanceTo(et.getSouthWest())*et.getNorthEast().distanceTo(et.getNorthWest());pt<1700&&(Ee=xA(p));var Rn=p.length,Kr=[];for(C=0;CE){oe=(G-E)/j,he=[te.x-oe*(te.x-X.x),te.y-oe*(te.y-X.y)];break}var ei=w.unproject(W(he));return ge([ei.lat+Ee.lat,ei.lng+Ee.lng])}var kae={__proto__:null,simplify:d5,pointToSegmentDistance:v5,closestPointOnSegment:Cae,clipSegment:g5,_getEdgeIntersection:I0,_getBitCode:Cu,_sqClosestPointOnSegment:ip,isFlat:Bi,_flat:m5,polylineCenter:y5},bA={project:function(p){return new z(p.lng,p.lat)},unproject:function(p){return new ce(p.y,p.x)},bounds:new Y([-180,-90],[180,90])},wA={R:6378137,R_MINOR:6356752314245179e-9,bounds:new Y([-2003750834279e-5,-1549657073972e-5],[2003750834279e-5,1876465623138e-5]),project:function(p){var w=Math.PI/180,C=this.R,E=p.lat*w,j=this.R_MINOR/C,G=Math.sqrt(1-j*j),X=G*Math.sin(E),te=Math.tan(Math.PI/4-E/2)/Math.pow((1-X)/(1+X),G/2);return E=-C*Math.log(Math.max(te,1e-10)),new z(p.lng*w*C,E)},unproject:function(p){for(var w=180/Math.PI,C=this.R,E=this.R_MINOR/C,j=Math.sqrt(1-E*E),G=Math.exp(-p.y/C),X=Math.PI/2-2*Math.atan(G),te=0,oe=.1,he;te<15&&Math.abs(oe)>1e-7;te++)he=j*Math.sin(X),he=Math.pow((1-he)/(1+he),j/2),oe=Math.PI/2-2*Math.atan(G*he)-X,X+=oe;return new ce(X*w,p.x*w/C)}},Iae={__proto__:null,LonLat:bA,Mercator:wA,SphericalMercator:fe},Oae=i({},xe,{code:"EPSG:3395",projection:wA,transformation:function(){var p=.5/(Math.PI*wA.R);return ee(p,.5,-p,.5)}()}),x5=i({},xe,{code:"EPSG:4326",projection:bA,transformation:ee(1/180,1,-1/180,.5)}),Eae=i({},We,{projection:bA,transformation:ee(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 C=w.lng-p.lng,E=w.lat-p.lat;return Math.sqrt(C*C+E*E)},infinite:!0});We.Earth=xe,We.EPSG3395=Oae,We.EPSG3857=Fe,We.EPSG900913=Se,We.EPSG4326=x5,We.Simple=Eae;var wa=U.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 C=this.getEvents();w.on(C,this),this.once("remove",function(){w.off(C,this)},this)}this.onAdd(w),this.fire("add"),w.fire("layeradd",{layer:this})}}});bt.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 C in this._layers)p.call(w,this._layers[C]);return this},_addLayers:function(p){p=p?b(p)?p:[p]:[];for(var w=0,C=p.length;wthis._layersMaxZoom&&this.setZoom(this._layersMaxZoom),this.options.minZoom===void 0&&this._layersMinZoom&&this.getZoom()=2&&w[0]instanceof ce&&w[0].equals(w[C-1])&&w.pop(),w},_setLatLngs:function(p){qo.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,C=new z(w,w);if(p=new Y(p.min.subtract(C),p.max.add(C)),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,G;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||qo.prototype._containsPoint.call(this,p,!0)}});function Fae(p,w){return new Rf(p,w)}var Ko=Xo.extend({initialize:function(p,w){g(this,w),this._layers={},p&&this.addData(p)},addData:function(p){var w=b(p)?p:p.features,C,E,j;if(w){for(C=0,E=w.length;C0&&j.push(j[0].slice()),j}function Bf(p,w){return p.feature?i({},p.feature,{geometry:w}):R0(w)}function R0(p){return p.type==="Feature"||p.type==="FeatureCollection"?p:{type:"Feature",properties:{},geometry:p}}var CA={toGeoJSON:function(p){return Bf(this,{type:"Point",coordinates:AA(this.getLatLng(),p)})}};O0.include(CA),SA.include(CA),E0.include(CA),qo.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),C=j0(this._latlngs,w?1:0,!1,p);return Bf(this,{type:(w?"Multi":"")+"LineString",coordinates:C})}}),Rf.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),C=w&&!Bi(this._latlngs[0]),E=j0(this._latlngs,C?2:w?1:0,!0,p);return w||(E=[E]),Bf(this,{type:(C?"Multi":"")+"Polygon",coordinates:E})}}),Nf.include({toMultiPoint:function(p){var w=[];return this.eachLayer(function(C){w.push(C.toGeoJSON(p).geometry.coordinates)}),Bf(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 C=w==="GeometryCollection",E=[];return this.eachLayer(function(j){if(j.toGeoJSON){var G=j.toGeoJSON(p);if(C)E.push(G.geometry);else{var X=R0(G);X.type==="FeatureCollection"?E.push.apply(E,X.features):E.push(X)}}}),C?Bf(this,{geometries:E,type:"GeometryCollection"}):{type:"FeatureCollection",features:E}}});function w5(p,w){return new Ko(p,w)}var Vae=w5,B0=wa.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(p,w,C){this._url=p,this._bounds=ae(w),g(this,C)},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(){ir(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&&Ef(this._image),this},bringToBack:function(){return this._map&&Df(this._image),this},setUrl:function(p){return this._url=p,this._image&&(this._image.src=p),this},setBounds:function(p){return this._bounds=ae(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:Tt("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),C=this._map._latLngBoundsToNewLayerBounds(this._bounds,p.zoom,p.center).min;wu(this._image,C,w)},_reset:function(){var p=this._image,w=new Y(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),C=w.getSize();Cr(p,w.min),p.style.width=C.x+"px",p.style.height=C.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()}}),Gae=function(p,w,C){return new B0(p,w,C)},S5=B0.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:Tt("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 C=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 G=0;Gj?(w.height=j+"px",ut(p,G)):_r(p,G),this._containerWidth=this._container.offsetWidth},_animateZoom:function(p){var w=this._map._latLngToNewLayerPoint(this._latlng,p.zoom,p.center),C=this._getAnchor();Cr(this._container,w.add(C))},_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(Qv(this._container,"marginBottom"),10)||0,C=this._container.offsetHeight+w,E=this._containerWidth,j=new z(this._containerLeft,-C-this._containerBottom);j._add(Su(this._container));var G=p.layerPointToContainerPoint(j),X=W(this.options.autoPanPadding),te=W(this.options.autoPanPaddingTopLeft||X),oe=W(this.options.autoPanPaddingBottomRight||X),he=p.getSize(),Ee=0,et=0;G.x+E+oe.x>he.x&&(Ee=G.x+E-he.x+oe.x),G.x-Ee-te.x<0&&(Ee=G.x-te.x),G.y+C+oe.y>he.y&&(et=G.y+C-he.y+oe.y),G.y-et-te.y<0&&(et=G.y-te.y),(Ee||et)&&(this.options.keepInView&&(this._autopanning=!0),p.fire("autopanstart").panBy([Ee,et]))}},_getAnchor:function(){return W(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),Uae=function(p,w){return new z0(p,w)};bt.mergeOptions({closePopupOnClick:!0}),bt.include({openPopup:function(p,w,C){return this._initOverlay(z0,p,w,C).openOn(this),this},closePopup:function(p){return p=arguments.length?p:this._popup,p&&p.close(),this}}),wa.include({bindPopup:function(p,w){return this._popup=this._initOverlay(z0,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 Xo||(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)){Au(p);var w=p.layer||p.target;if(this._popup._source===w&&!(w instanceof el)){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 $0=to.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(p){to.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){to.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=to.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=Tt("div",w),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+l(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(p){var w,C,E=this._map,j=this._container,G=E.latLngToContainerPoint(E.getCenter()),X=E.layerPointToContainerPoint(p),te=this.options.direction,oe=j.offsetWidth,he=j.offsetHeight,Ee=W(this.options.offset),et=this._getAnchor();te==="top"?(w=oe/2,C=he):te==="bottom"?(w=oe/2,C=0):te==="center"?(w=oe/2,C=he/2):te==="right"?(w=0,C=he/2):te==="left"?(w=oe,C=he/2):X.xthis.options.maxZoom||CE?this._retainParent(j,G,X,E):!1)},_retainChildren:function(p,w,C,E){for(var j=2*p;j<2*p+2;j++)for(var G=2*w;G<2*w+2;G++){var X=new z(j,G);X.z=C+1;var te=this._tileCoordsToKey(X),oe=this._tiles[te];if(oe&&oe.active){oe.retain=!0;continue}else oe&&oe.loaded&&(oe.retain=!0);C+1this.options.maxZoom||this.options.minZoom!==void 0&&j1){this._setView(p,C);return}for(var et=j.min.y;et<=j.max.y;et++)for(var pt=j.min.x;pt<=j.max.x;pt++){var Rn=new z(pt,et);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(ei,$f){return ei.distanceTo(G)-$f.distanceTo(G)}),X.length!==0){this._loading||(this._loading=!0,this.fire("loading"));var zi=document.createDocumentFragment();for(pt=0;ptC.max.x)||!w.wrapLat&&(p.yC.max.y))return!1}if(!this.options.bounds)return!0;var E=this._tileCoordsToBounds(p);return ae(this.options.bounds).overlaps(E)},_keyToBounds:function(p){return this._tileCoordsToBounds(this._keyToTileCoords(p))},_tileCoordsToNwSe:function(p){var w=this._map,C=this.getTileSize(),E=p.scaleBy(C),j=E.add(C),G=w.unproject(E,p.z),X=w.unproject(j,p.z);return[G,X]},_tileCoordsToBounds:function(p){var w=this._tileCoordsToNwSe(p),C=new J(w[0],w[1]);return this.options.noWrap||(C=this._map.wrapLatLngBounds(C)),C},_tileCoordsToKey:function(p){return p.x+":"+p.y+":"+p.z},_keyToTileCoords:function(p){var w=p.split(":"),C=new z(+w[0],+w[1]);return C.z=+w[2],C},_removeTile:function(p){var w=this._tiles[p];w&&(ir(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 C=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)),Cr(j,C),this._tiles[E]={el:j,coords:p,current:!0},w.appendChild(j),this.fire("tileloadstart",{tile:j,coords:p})},_tileReady:function(p,w,C){w&&this.fire("tileerror",{error:w,tile:C,coords:p});var E=this._tileCoordsToKey(p);C=this._tiles[E],C&&(C.loaded=+new Date,this._map._fadeAnimated?(Ri(C.el,0),D(this._fadeFrame),this._fadeFrame=O(this._updateOpacity,this)):(C.active=!0,this._pruneTiles()),w||(ut(C.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:C.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 z(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 Y(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 Xae(p){return new op(p)}var zf=op.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 C=document.createElement("img");return st(C,"load",o(this._tileOnLoad,this,w,C)),st(C,"error",o(this._tileOnError,this,w,C)),(this.options.crossOrigin||this.options.crossOrigin==="")&&(C.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),typeof this.options.referrerPolicy=="string"&&(C.referrerPolicy=this.options.referrerPolicy),C.alt="",C.src=this.getTileUrl(p),C},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 C=this._globalTileRange.max.y-p.y;this.options.tms&&(w.y=C),w["-y"]=C}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,C){var E=this.options.errorTileUrl;E&&w.getAttribute("src")!==E&&(w.src=E),p(C,w)},_onTileRemove:function(p){p.tile.onload=null},_getZoomForUrl:function(){var p=this._tileZoom,w=this.options.maxZoom,C=this.options.zoomReverse,E=this.options.zoomOffset;return C&&(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 C=this._tiles[p].coords;ir(w),delete this._tiles[p],this.fire("tileabort",{tile:w,coords:C})}},_removeTile:function(p){var w=this._tiles[p];if(w)return w.el.setAttribute("src",T),op.prototype._removeTile.call(this,p)},_tileReady:function(p,w,C){if(!(!this._map||C&&C.getAttribute("src")===T))return op.prototype._tileReady.call(this,p,w,C)}});function C5(p,w){return new zf(p,w)}var M5=zf.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 C=i({},this.defaultWmsParams);for(var E in w)E in this.options||(C[E]=w[E]);w=g(this,w);var j=w.detectRetina&&Ue.retina?2:1,G=this.getTileSize();C.width=G.x*j,C.height=G.y*j,this.wmsParams=C},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,zf.prototype.onAdd.call(this,p)},getTileUrl:function(p){var w=this._tileCoordsToNwSe(p),C=this._crs,E=Z(C.project(w[0]),C.project(w[1])),j=E.min,G=E.max,X=(this._wmsVersion>=1.3&&this._crs===x5?[j.y,j.x,G.y,G.x]:[j.x,j.y,G.x,G.y]).join(","),te=zf.prototype.getTileUrl.call(this,p);return te+m(this.wmsParams,te,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+X},setParams:function(p,w){return i(this.wmsParams,p),w||this.redraw(),this}});function qae(p,w){return new M5(p,w)}zf.WMS=M5,C5.wms=qae;var Qo=wa.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 C=this._map.getZoomScale(w,this._zoom),E=this._map.getSize().multiplyBy(.5+this.options.padding),j=this._map.project(this._center,w),G=E.multiplyBy(-C).add(j).subtract(this._map._getNewPixelOrigin(p,w));Ue.any3d?wu(this._container,G,C):Cr(this._container,G)},_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(),C=this._map.containerPointToLayerPoint(w.multiplyBy(-p)).round();this._bounds=new Y(C,C.add(w.multiplyBy(1+p*2)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),P5=Qo.extend({options:{tolerance:0},getEvents:function(){var p=Qo.prototype.getEvents.call(this);return p.viewprereset=this._onViewPreReset,p},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){Qo.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,ir(this._container),Ht(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)){Qo.prototype._update.call(this);var p=this._bounds,w=this._container,C=p.getSize(),E=Ue.retina?2:1;Cr(w,p.min),w.width=E*C.x,w.height=E*C.y,w.style.width=C.x+"px",w.style.height=C.y+"px",Ue.retina&&this._ctx.scale(2,2),this._ctx.translate(-p.min.x,-p.min.y),this.fire("update")}},_reset:function(){Qo.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,C=w.next,E=w.prev;C?C.prev=E:this._drawLast=E,E?E.next=C:this._drawFirst=C,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(/[, ]+/),C=[],E,j;for(j=0;j')}}catch{}return function(p){return document.createElement("<"+p+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),Kae={_initContainer:function(){this._container=Tt("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(Qo.prototype._update.call(this),this.fire("update"))},_initPath:function(p){var w=p._container=sp("shape");ut(w,"leaflet-vml-shape "+(this.options.className||"")),w.coordsize="1 1",p._path=sp("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;ir(w),p.removeInteractiveTarget(w),delete this._layers[l(p)]},_updateStyle:function(p){var w=p._stroke,C=p._fill,E=p.options,j=p._container;j.stroked=!!E.stroke,j.filled=!!E.fill,E.stroke?(w||(w=p._stroke=sp("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?(C||(C=p._fill=sp("fill")),j.appendChild(C),C.color=E.fillColor||E.color,C.opacity=E.fillOpacity):C&&(j.removeChild(C),p._fill=null)},_updateCircle:function(p){var w=p._point.round(),C=Math.round(p._radius),E=Math.round(p._radiusY||C);this._setPath(p,p._empty()?"M0 0":"AL "+w.x+","+w.y+" "+C+","+E+" 0,"+65535*360)},_setPath:function(p,w){p._path.v=w},_bringToFront:function(p){Ef(p._container)},_bringToBack:function(p){Df(p._container)}},F0=Ue.vml?sp:Ve,lp=Qo.extend({_initContainer:function(){this._container=F0("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=F0("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){ir(this._container),Ht(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){Qo.prototype._update.call(this);var p=this._bounds,w=p.getSize(),C=this._container;(!this._svgSize||!this._svgSize.equals(w))&&(this._svgSize=w,C.setAttribute("width",w.x),C.setAttribute("height",w.y)),Cr(C,p.min),C.setAttribute("viewBox",[p.min.x,p.min.y,w.x,w.y].join(" ")),this.fire("update")}},_initPath:function(p){var w=p._path=F0("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){ir(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,C=p.options;w&&(C.stroke?(w.setAttribute("stroke",C.color),w.setAttribute("stroke-opacity",C.opacity),w.setAttribute("stroke-width",C.weight),w.setAttribute("stroke-linecap",C.lineCap),w.setAttribute("stroke-linejoin",C.lineJoin),C.dashArray?w.setAttribute("stroke-dasharray",C.dashArray):w.removeAttribute("stroke-dasharray"),C.dashOffset?w.setAttribute("stroke-dashoffset",C.dashOffset):w.removeAttribute("stroke-dashoffset")):w.setAttribute("stroke","none"),C.fill?(w.setAttribute("fill",C.fillColor||C.color),w.setAttribute("fill-opacity",C.fillOpacity),w.setAttribute("fill-rule",C.fillRule||"evenodd")):w.setAttribute("fill","none"))},_updatePoly:function(p,w){this._setPath(p,Ye(p._parts,w))},_updateCircle:function(p){var w=p._point,C=Math.max(Math.round(p._radius),1),E=Math.max(Math.round(p._radiusY),1)||C,j="a"+C+","+E+" 0 1,0 ",G=p._empty()?"M0 0":"M"+(w.x-C)+","+w.y+j+C*2+",0 "+j+-C*2+",0 ";this._setPath(p,G)},_setPath:function(p,w){p._path.setAttribute("d",w)},_bringToFront:function(p){Ef(p._path)},_bringToBack:function(p){Df(p._path)}});Ue.vml&&lp.include(Kae);function k5(p){return Ue.svg||Ue.vml?new lp(p):null}bt.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&&L5(p)||k5(p)}});var I5=Rf.extend({initialize:function(p,w){Rf.prototype.initialize.call(this,this._boundsToLatLngs(p),w)},setBounds:function(p){return this.setLatLngs(this._boundsToLatLngs(p))},_boundsToLatLngs:function(p){return p=ae(p),[p.getSouthWest(),p.getNorthWest(),p.getNorthEast(),p.getSouthEast()]}});function Qae(p,w){return new I5(p,w)}lp.create=F0,lp.pointsToPath=Ye,Ko.geometryToLayer=D0,Ko.coordsToLatLng=TA,Ko.coordsToLatLngs=N0,Ko.latLngToCoords=AA,Ko.latLngsToCoords=j0,Ko.getFeature=Bf,Ko.asFeature=R0,bt.mergeOptions({boxZoom:!0});var O5=eo.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(){Ht(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){ir(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(),Jv(),sA(),this._startPoint=this._map.mouseEventToContainerPoint(p),st(document,{contextmenu:Au,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(p){this._moved||(this._moved=!0,this._box=Tt("div","leaflet-zoom-box",this._container),ut(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(p);var w=new Y(this._point,this._startPoint),C=w.getSize();Cr(this._box,w.min),this._box.style.width=C.x+"px",this._box.style.height=C.y+"px"},_finish:function(){this._moved&&(ir(this._box),_r(this._container,"leaflet-crosshair")),ep(),lA(),Ht(document,{contextmenu:Au,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 J(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())}});bt.addInitHook("addHandler","boxZoom",O5),bt.mergeOptions({doubleClickZoom:!0});var E5=eo.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,C=w.getZoom(),E=w.options.zoomDelta,j=p.originalEvent.shiftKey?C-E:C+E;w.options.doubleClickZoom==="center"?w.setZoom(j):w.setZoomAround(p.containerPoint,j)}});bt.addInitHook("addHandler","doubleClickZoom",E5),bt.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var D5=eo.extend({addHooks:function(){if(!this._draggable){var p=this._map;this._draggable=new Js(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=ae(this._map.options.maxBounds);this._offsetLimit=Z(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,C=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(C),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),C=this._initialWorldOffset,E=this._draggable._newPos.x,j=(E-w+C)%p+w-C,G=(E+w+C)%p-w-C,X=Math.abs(j+C)0?G:-G))-w;this._delta=0,this._startTime=null,X&&(p.options.scrollWheelZoom==="center"?p.setZoom(w+X):p.setZoomAround(this._lastMousePos,w+X))}});bt.addInitHook("addHandler","scrollWheelZoom",j5);var Jae=600;bt.mergeOptions({tapHold:Ue.touchNative&&Ue.safari&&Ue.mobile,tapTolerance:15});var R5=eo.extend({addHooks:function(){st(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Ht(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 z(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),Jae),st(document,"touchend touchcancel contextmenu",this._cancel,this),st(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function p(){Ht(document,"touchend",un),Ht(document,"touchend touchcancel",p)},_cancel:function(){clearTimeout(this._holdTimeout),Ht(document,"touchend touchcancel contextmenu",this._cancel,this),Ht(document,"touchmove",this._onMove,this)},_onMove:function(p){var w=p.touches[0];this._newPos=new z(w.clientX,w.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(p,w){var C=new MouseEvent(p,{bubbles:!0,cancelable:!0,view:window,screenX:w.screenX,screenY:w.screenY,clientX:w.clientX,clientY:w.clientY});C._simulated=!0,w.target.dispatchEvent(C)}});bt.addInitHook("addHandler","tapHold",R5),bt.mergeOptions({touchZoom:Ue.touch,bounceAtZoomLimits:!0});var B5=eo.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"),Ht(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 C=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(C.add(E)._divideBy(2))),this._startDist=C.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,C=w.mouseEventToContainerPoint(p.touches[0]),E=w.mouseEventToContainerPoint(p.touches[1]),j=C.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 G=C._add(E)._divideBy(2)._subtract(this._centerPoint);if(j===1&&G.x===0&&G.y===0)return;this._center=w.unproject(w.project(this._pinchStartLatLng,this._zoom).subtract(G),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),Ht(document,"touchmove",this._onTouchMove,this),Ht(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))}});bt.addInitHook("addHandler","touchZoom",B5),bt.BoxZoom=O5,bt.DoubleClickZoom=E5,bt.Drag=D5,bt.Keyboard=N5,bt.ScrollWheelZoom=j5,bt.TapHold=R5,bt.TouchZoom=B5,r.Bounds=Y,r.Browser=Ue,r.CRS=We,r.Canvas=P5,r.Circle=SA,r.CircleMarker=E0,r.Class=B,r.Control=ba,r.DivIcon=A5,r.DivOverlay=to,r.DomEvent=mae,r.DomUtil=pae,r.Draggable=Js,r.Evented=U,r.FeatureGroup=Xo,r.GeoJSON=Ko,r.GridLayer=op,r.Handler=eo,r.Icon=jf,r.ImageOverlay=B0,r.LatLng=ce,r.LatLngBounds=J,r.Layer=wa,r.LayerGroup=Nf,r.LineUtil=kae,r.Map=bt,r.Marker=O0,r.Mixin=Tae,r.Path=el,r.Point=z,r.PolyUtil=Aae,r.Polygon=Rf,r.Polyline=qo,r.Popup=z0,r.PosAnimation=s5,r.Projection=Iae,r.Rectangle=I5,r.Renderer=Qo,r.SVG=lp,r.SVGOverlay=T5,r.TileLayer=zf,r.Tooltip=$0,r.Transformation=le,r.Util=N,r.VideoOverlay=S5,r.bind=o,r.bounds=Z,r.canvas=L5,r.circle=zae,r.circleMarker=Bae,r.control=np,r.divIcon=Yae,r.extend=i,r.featureGroup=Nae,r.geoJSON=w5,r.geoJson=Vae,r.gridLayer=Xae,r.icon=jae,r.imageOverlay=Gae,r.latLng=ge,r.latLngBounds=ae,r.layerGroup=Dae,r.map=yae,r.marker=Rae,r.point=W,r.polygon=Fae,r.polyline=$ae,r.popup=Uae,r.rectangle=Qae,r.setOptions=g,r.stamp=l,r.svg=k5,r.svgOverlay=Hae,r.tileLayer=C5,r.tooltip=Zae,r.transformation=ee,r.version=n,r.videoOverlay=Wae;var eoe=window.L;r.noConflict=function(){return window.L=eoe,this},window.L=r})})(zO,zO.exports);var kf=zO.exports;const Bie=Ft(kf);function w0(e,t,r){return Object.freeze({instance:e,context:t,container:r})}function NR(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 zie(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 zQe(e){return function(r){const n=KT(),i=e(QT(r,n),n);return Die(n.map,r.attribution),DR(i.current,r.eventHandlers),zie(i.current,n),i}}function $Qe(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 FQe(e){return function(r){const n=KT(),i=e(QT(r,n),n);return DR(i.current,r.eventHandlers),zie(i.current,n),$Qe(i.current,r),i}}function $ie(e,t){const r=NR(e),n=BQe(r,t);return jQe(n)}function Fie(e,t){const r=NR(e,t),n=FQe(r);return NQe(n)}function VQe(e,t){const r=NR(e,t),n=zQe(r);return RQe(n)}function GQe(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 WQe(){return KT().map}const HQe=Fie(function({center:t,children:r,...n},i){const a=new kf.CircleMarker(t,n);return w0(a,Nie(i,{overlayContainer:a}))},OQe);function $O(){return $O=Object.assign||function(e){for(var t=1;t(d==null?void 0:d.map)??null,[d]);const g=H.useCallback(y=>{if(y!==null&&d===null){const _=new kf.Map(y,c);r!=null&&u!=null?_.setView(r,u):e!=null&&_.fitBounds(e,t),l!=null&&_.whenReady(l),v(DQe(_))}},[]);H.useEffect(()=>()=>{d==null||d.map.remove()},[d]);const m=d?Q.createElement(Rie,{value:d},n):o??null;return Q.createElement("div",$O({},h,{ref:g}),m)}const ZQe=H.forwardRef(UQe),YQe=Fie(function({positions:t,...r},n){const i=new kf.Polyline(t,r);return w0(i,Nie(n,{overlayContainer:i}))},function(t,r,n){r.positions!==n.positions&&t.setLatLngs(r.positions)}),XQe=$ie(function(t,r){const n=new kf.Popup(t,r.overlayContainer);return w0(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])}),qQe=VQe(function({url:t,...r},n){const i=new kf.TileLayer(t,QT(r,n));return w0(i,n)},function(t,r,n){GQe(t,r,n);const{url:i}=r;i!=null&&i!==n.url&&t.setUrl(i)}),KQe=$ie(function(t,r){const n=new kf.Tooltip(t,r.overlayContainer);return w0(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])}),QQe="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=",JQe="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==",eJe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAApCAQAAAACach9AAACMUlEQVR4Ae3ShY7jQBAE0Aoz/f9/HTMzhg1zrdKUrJbdx+Kd2nD8VNudfsL/Th///dyQN2TH6f3y/BGpC379rV+S+qqetBOxImNQXL8JCAr2V4iMQXHGNJxeCfZXhSRBcQMfvkOWUdtfzlLgAENmZDcmo2TVmt8OSM2eXxBp3DjHSMFutqS7SbmemzBiR+xpKCNUIRkdkkYxhAkyGoBvyQFEJEefwSmmvBfJuJ6aKqKWnAkvGZOaZXTUgFqYULWNSHUckZuR1HIIimUExutRxwzOLROIG4vKmCKQt364mIlhSyzAf1m9lHZHJZrlAOMMztRRiKimp/rpdJDc9Awry5xTZCte7FHtuS8wJgeYGrex28xNTd086Dik7vUMscQOa8y4DoGtCCSkAKlNwpgNtphjrC6MIHUkR6YWxxs6Sc5xqn222mmCRFzIt8lEdKx+ikCtg91qS2WpwVfBelJCiQJwvzixfI9cxZQWgiSJelKnwBElKYtDOb2MFbhmUigbReQBV0Cg4+qMXSxXSyGUn4UbF8l+7qdSGnTC0XLCmahIgUHLhLOhpVCtw4CzYXvLQWQbJNmxoCsOKAxSgBJno75avolkRw8iIAFcsdc02e9iyCd8tHwmeSSoKTowIgvscSGZUOA7PuCN5b2BX9mQM7S0wYhMNU74zgsPBj3HU7wguAfnxxjFQGBE6pwN+GjME9zHY7zGp8wVxMShYX9NXvEWD3HbwJf4giO4CFIQxXScH1/TM+04kkBiAAAAAElFTkSuQmCC";delete Bie.Icon.Default.prototype._getIconUrl;Bie.Icon.Default.mergeOptions({iconUrl:QQe,iconRetinaUrl:JQe,shadowUrl:eJe});const EU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],tJe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function rJe(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function nJe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function iJe(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 aJe({bounds:e}){const t=WQe();return H.useEffect(()=>{e&&t.fitBounds(e,{padding:[50,50]})},[t,e]),null}function oJe({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 x.jsxs("div",{className:"min-w-[200px]",children:[x.jsx("div",{className:"font-semibold text-slate-800",children:e.short_name}),x.jsx("div",{className:"text-xs text-slate-600 mb-2",children:e.long_name}),x.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-1 text-xs",children:[x.jsx("div",{className:"text-slate-500",children:"Role"}),x.jsx("div",{className:"text-slate-700 font-medium",children:e.role}),x.jsx("div",{className:"text-slate-500",children:"Hardware"}),x.jsx("div",{className:"text-slate-700",children:e.hardware||"Unknown"}),x.jsx("div",{className:"text-slate-500",children:"Battery"}),x.jsx("div",{className:"text-slate-700",children:r}),x.jsx("div",{className:"text-slate-500",children:"Last Heard"}),x.jsx("div",{className:"text-slate-700",children:iJe(e.last_heard)})]}),t&&x.jsxs("div",{className:"mt-3 pt-2 border-t border-slate-200 flex gap-2",children:[x.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:[x.jsx(_d,{size:10}),"Google Maps"]}),x.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:[x.jsx(_d,{size:10}),"OSM"]})]})]})}function sJe({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 x.jsxs("div",{className:"relative bg-bg-card rounded-lg border border-border overflow-hidden",children:[x.jsxs(ZQe,{center:u,zoom:7,style:{width:"100%",height:"540px"},className:"z-0",children:[x.jsx(qQe,{url:"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",attribution:'© OpenStreetMap, © CARTO'}),x.jsx(aJe,{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 x.jsx(YQe,{positions:[[d.latitude,d.longitude],[v.latitude,v.longitude]],color:rJe(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=tJe.includes(f.role),m=nJe(f.latitude),y=EU[m%EU.length];return x.jsxs(HQe,{center:[f.latitude,f.longitude],radius:g?8:5,fillColor:g?y:"#111827",fillOpacity:v?.9:.2,stroke:!0,color:h?"#ffffff":y,weight:h?3:g?0:2,opacity:v?1:.3,eventHandlers:{click:()=>n(h?null:f.node_num)},children:[x.jsx(KQe,{direction:"top",offset:[0,-8],children:x.jsx("span",{className:"font-mono text-xs",children:f.short_name})}),x.jsx(XQe,{children:x.jsx(oJe,{node:f})})]},f.node_num)})]}),x.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:[x.jsx(bZ,{size:12}),x.jsxs("span",{children:["Showing ",i.length," of ",e.length," nodes",a>0&&x.jsxs("span",{className:"text-slate-500",children:[" (",a," without coordinates)"]})]})]})]})}const DU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],lJe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function NU(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function uJe(e){return e>12?"excellent":e>8?"good":e>5?"fair":e>3?"marginal":"poor"}function cJe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function fJe(e){return["Northern ID","Central ID","SW Idaho","SC Idaho"][e]||"Unknown"}function hJe(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 dJe(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 vJe({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 x.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:[x.jsx("div",{className:"w-12 h-12 rounded-full bg-bg-hover border border-border flex items-center justify-center mb-3",children:x.jsx(tu,{size:24,className:"text-slate-500"})}),x.jsx("p",{className:"text-sm text-slate-500 text-center",children:"Click a node to inspect"})]});const a=lJe.includes(e.role),o=cJe(e.latitude),s=DU[o%DU.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 x.jsxs("div",{className:"w-[250px] flex-shrink-0 bg-bg-card border-l border-border flex flex-col h-[540px] overflow-hidden",children:[x.jsxs("div",{className:"p-4 border-b border-border",children:[x.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}),x.jsx("div",{className:"font-mono text-lg text-slate-100",children:e.short_name}),x.jsx("div",{className:"text-xs text-slate-500 truncate",children:e.long_name})]}),x.jsxs("div",{className:"p-4 border-b border-border grid grid-cols-2 gap-3",children:[x.jsxs("div",{children:[x.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Role"}),x.jsx("div",{className:`text-sm font-medium ${a?"text-cyan-400":"text-slate-300"}`,children:e.role})]}),x.jsxs("div",{children:[x.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Region"}),x.jsx("div",{className:"text-sm text-slate-300",children:fJe(o)})]}),x.jsxs("div",{children:[x.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Battery"}),x.jsxs("div",{className:"text-sm text-slate-300 flex items-center gap-1",children:[c&&x.jsx(Sm,{size:12,className:"text-amber-400"}),u]})]}),x.jsxs("div",{children:[x.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Status"}),x.jsxs("div",{className:"flex items-center gap-1.5",children:[x.jsx("div",{className:`w-2 h-2 rounded-full ${dJe(e.last_heard)}`}),x.jsx("span",{className:"text-sm text-slate-300",children:hJe(e.last_heard)})]})]}),x.jsxs("div",{className:"col-span-2",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-0.5",children:"Hardware"}),x.jsx("div",{className:"text-sm text-slate-300 font-mono truncate",children:e.hardware||"Unknown"})]})]}),l&&x.jsxs("div",{className:"px-4 py-3 border-b border-border flex gap-3",children:[x.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:[x.jsx(_d,{size:10}),"Google Maps"]}),x.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:[x.jsx(_d,{size:10}),"OSM"]})]}),x.jsxs("div",{className:"flex-1 overflow-y-auto",children:[x.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?x.jsx("div",{className:"divide-y divide-border",children:i.map(f=>x.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:NU(f.snr)},children:[x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsx("div",{className:"text-sm text-slate-200 font-mono truncate",children:f.node.short_name}),x.jsx("div",{className:"text-xs text-slate-500 truncate",children:f.node.long_name})]}),x.jsxs("div",{className:"text-right flex-shrink-0",children:[x.jsxs("div",{className:"text-xs font-mono",style:{color:NU(f.snr)},children:[f.snr.toFixed(1)," dB"]}),x.jsx("div",{className:"text-xs text-slate-500",children:uJe(f.snr)})]})]},f.node.node_num))}):x.jsx("div",{className:"px-4 py-6 text-center text-sm text-slate-500",children:"No known neighbors"})]})]})}const jU=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function pJe(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 gJe(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 mJe(e){return e.battery_level===null?"—":e.battery_level>100||e.voltage&&e.voltage>4.1?"USB ⚡":`${e.battery_level.toFixed(0)}%`}function RU(e){return e===null?"—":e>46?"Northern":e>44.5?"Central":e>43?"SW Idaho":"SC Idaho"}function yJe({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=>jU.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)||RU(m.latitude).toLowerCase().includes(g))}return v.sort((g,m)=>{let y="",_="";switch(a){case"short_name":y=g.short_name.toLowerCase(),_=m.short_name.toLowerCase();break;case"role":y=g.role,_=m.role;break;case"battery_level":y=g.battery_level??-1,_=m.battery_level??-1;break;case"last_heard":y=g.last_heard?new Date(g.last_heard).getTime():0,_=m.last_heard?new Date(m.last_heard).getTime():0;break;case"hardware":y=g.hardware.toLowerCase(),_=m.hardware.toLowerCase();break}return y<_?s==="asc"?-1:1:y>_?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"?x.jsx(Zue,{size:14,className:"inline ml-1"}):x.jsx(Hy,{size:14,className:"inline ml-1"});return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg overflow-hidden",children:[x.jsxs("div",{className:"p-3 border-b border-border flex items-center gap-3",children:[x.jsxs("div",{className:"relative flex-1 max-w-xs",children:[x.jsx(HE,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),x.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"})]}),x.jsxs("div",{className:"flex items-center gap-1",children:[x.jsx(FE,{size:14,className:"text-slate-500 mr-1"}),["all","infra","online"].map(v=>x.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))]}),x.jsxs("div",{className:"text-xs text-slate-500 ml-auto",children:[f.length," of ",e.length," nodes"]})]}),x.jsxs("div",{className:"overflow-x-auto",children:[x.jsxs("table",{className:"w-full text-sm",children:[x.jsx("thead",{children:x.jsxs("tr",{className:"bg-bg-hover text-slate-400 text-xs",children:[x.jsx("th",{className:"w-8 px-3 py-2"}),x.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("short_name"),children:["Name ",x.jsx(d,{field:"short_name"})]}),x.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("role"),children:["Role ",x.jsx(d,{field:"role"})]}),x.jsx("th",{className:"px-3 py-2 text-left",children:"Region"}),x.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("battery_level"),children:["Battery ",x.jsx(d,{field:"battery_level"})]}),x.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("last_heard"),children:["Last Heard ",x.jsx(d,{field:"last_heard"})]}),x.jsxs("th",{className:"px-3 py-2 text-left cursor-pointer hover:text-slate-200",onClick:()=>h("hardware"),children:["Hardware ",x.jsx(d,{field:"hardware"})]})]})}),x.jsx("tbody",{className:"divide-y divide-border",children:f.slice(0,100).map(v=>{const g=jU.includes(v.role),m=v.node_num===t;return x.jsxs("tr",{onClick:()=>r(v.node_num),className:`cursor-pointer transition-colors ${m?"bg-accent/10":"hover:bg-bg-hover"}`,children:[x.jsx("td",{className:"px-3 py-2",children:x.jsx("div",{className:`w-2 h-2 rounded-full ${pJe(v.last_heard)}`})}),x.jsxs("td",{className:"px-3 py-2",children:[x.jsx("div",{className:"font-mono text-slate-200",children:v.short_name}),x.jsx("div",{className:"text-xs text-slate-500 truncate max-w-[200px]",children:v.long_name})]}),x.jsx("td",{className:"px-3 py-2",children:x.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})}),x.jsx("td",{className:"px-3 py-2 text-slate-400",children:RU(v.latitude)}),x.jsx("td",{className:"px-3 py-2 font-mono text-slate-300",children:mJe(v)}),x.jsx("td",{className:"px-3 py-2 text-slate-400",children:gJe(v.last_heard)}),x.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&&x.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&&x.jsx("div",{className:"px-3 py-8 text-sm text-slate-500 text-center",children:"No nodes match your filters"})]})]})}function xJe(){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([oce(),sce(),gce()]).then(([m,y,_])=>{t(m),n(y),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?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-slate-400",children:"Loading mesh data..."})}):h?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsxs("div",{className:"text-red-400",children:["Error: ",h]})}):x.jsxs("div",{className:"space-y-6",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{className:"text-sm text-slate-400",children:[e.length," nodes • ",r.length," edges"]}),x.jsxs("div",{className:"flex items-center bg-bg-card border border-border rounded-lg p-1",children:[x.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:[x.jsx(tce,{size:14}),"Topology"]}),x.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:[x.jsx(Que,{size:14}),"Geographic"]})]})]}),x.jsxs("div",{className:"flex gap-0",children:[x.jsx("div",{className:"flex-1 min-w-0",children:l==="topo"?x.jsx(IQe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:g}):x.jsx(sJe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:g})}),x.jsx(vJe,{node:v,edges:r,nodes:e,onSelectNode:g})]}),x.jsx(yJe,{nodes:e,selectedNodeId:o,onSelectNode:g})]})}function _Je({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=i=>i?new Date(i*1e3).toLocaleTimeString():"Never";return x.jsxs("div",{className:"bg-bg-hover rounded-lg p-4",children:[x.jsxs("div",{className:"flex items-center justify-between mb-2",children:[x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx("div",{className:`w-2 h-2 rounded-full ${t()}`}),x.jsx("span",{className:"text-sm font-medium text-slate-200 uppercase",children:e.source})]}),x.jsx("span",{className:"text-xs text-slate-400",children:r()})]}),x.jsxs("div",{className:"text-xs text-slate-500 space-y-1",children:[x.jsxs("div",{children:["Events: ",e.event_count]}),x.jsxs("div",{children:["Last fetch: ",n(e.last_fetch)]}),e.last_error&&x.jsx("div",{className:"text-amber-500 truncate",children:e.last_error})]})]})}function bJe({event:e}){const r=(a=>{switch(a.toLowerCase()){case"extreme":case"severe":return{bg:"bg-red-500/10",border:"border-red-500",icon:Uy,iconColor:"text-red-500"};case"moderate":case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Ds,iconColor:"text-amber-500"};case"minor":return{bg:"bg-yellow-500/10",border:"border-yellow-500",icon:wm,iconColor:"text-yellow-500"};default:return{bg:"bg-slate-500/10",border:"border-slate-500",icon:wm,iconColor:"text-slate-400"}}})(e.severity),n=r.icon,i=a=>a?new Date(a*1e3).toLocaleString():null;return x.jsx("div",{className:`p-4 rounded-lg ${r.bg} border-l-2 ${r.border}`,children:x.jsxs("div",{className:"flex items-start gap-3",children:[x.jsx(n,{size:18,className:r.iconColor}),x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[x.jsx("span",{className:"text-sm font-medium text-slate-200",children:e.event_type}),x.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${r.bg} ${r.iconColor}`,children:e.severity})]}),x.jsx("div",{className:"text-sm text-slate-300 mb-2",children:e.headline}),e.description&&x.jsx("div",{className:"text-xs text-slate-400 mb-2 line-clamp-2",children:e.description}),x.jsxs("div",{className:"flex items-center gap-4 text-xs text-slate-500",children:[x.jsx("span",{className:"uppercase",children:e.source}),e.expires&&x.jsxs("span",{children:["Expires: ",i(e.expires)]})]})]})]})})}function wJe({swpc:e}){var n,i;if(!e||!e.enabled)return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(Vb,{size:14}),"Solar/Geomagnetic Indices"]}),x.jsx("div",{className:"text-slate-500",children:"Data not available"})]});const t=a=>a===void 0?"text-slate-400":a<=2?"text-green-500":a<=4?"text-amber-500":a<=6?"text-orange-500":"text-red-500",r=a=>a===void 0||a===0?"text-green-500":a<=2?"text-amber-500":a<=3?"text-orange-500":"text-red-500";return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(Vb,{size:14}),"Solar/Geomagnetic Indices"]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[x.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Solar Flux Index"}),x.jsx("div",{className:"text-2xl font-mono text-slate-100",children:((n=e.sfi)==null?void 0:n.toFixed(0))??"—"}),x.jsx("div",{className:"text-xs text-slate-500",children:"SFI (10.7 cm)"})]}),x.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Planetary K-Index"}),x.jsx("div",{className:`text-2xl font-mono ${t(e.kp_current)}`,children:((i=e.kp_current)==null?void 0:i.toFixed(1))??"—"}),x.jsx("div",{className:"text-xs text-slate-500",children:"Kp"})]})]}),x.jsxs("div",{className:"bg-bg-hover rounded-lg p-3 mb-4",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-2",children:"NOAA Space Weather Scales"}),x.jsxs("div",{className:"flex items-center gap-4",children:[x.jsxs("div",{className:"flex items-center gap-1",children:[x.jsx("span",{className:"text-xs text-slate-400",children:"R:"}),x.jsx("span",{className:`text-sm font-mono ${r(e.r_scale)}`,children:e.r_scale??0})]}),x.jsxs("div",{className:"flex items-center gap-1",children:[x.jsx("span",{className:"text-xs text-slate-400",children:"S:"}),x.jsx("span",{className:`text-sm font-mono ${r(e.s_scale)}`,children:e.s_scale??0})]}),x.jsxs("div",{className:"flex items-center gap-1",children:[x.jsx("span",{className:"text-xs text-slate-400",children:"G:"}),x.jsx("span",{className:`text-sm font-mono ${r(e.g_scale)}`,children:e.g_scale??0})]})]}),x.jsx("div",{className:"text-xs text-slate-500 mt-2",children:"Radio Blackout / Solar Radiation / Geomagnetic Storm"})]}),e.active_warnings&&e.active_warnings.length>0&&x.jsxs("div",{className:"space-y-2",children:[x.jsx("div",{className:"text-xs text-slate-500",children:"Active Warnings"}),e.active_warnings.slice(0,3).map((a,o)=>x.jsx("div",{className:"text-xs text-amber-400 bg-amber-500/10 rounded p-2",children:a},o))]})]})}function SJe({ducting:e}){if(!e||!e.enabled)return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(s3,{size:14}),"Tropospheric Ducting"]}),x.jsx("div",{className:"text-slate-500",children:"Data not available"})]});const t=n=>{switch(n){case"normal":return"text-green-500";case"super_refraction":return"text-amber-500";case"surface_duct":case"elevated_duct":return"text-blue-400";default:return"text-slate-400"}},r=n=>n?n.replace("_"," ").replace(/\b\w/g,i=>i.toUpperCase()):"Unknown";return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(s3,{size:14}),"Tropospheric Ducting"]}),x.jsxs("div",{className:"bg-bg-hover rounded-lg p-4 mb-4",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Condition"}),x.jsx("div",{className:`text-xl font-medium ${t(e.condition)}`,children:r(e.condition)})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[x.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Min Gradient"}),x.jsx("div",{className:"text-lg font-mono text-slate-100",children:e.min_gradient??"—"}),x.jsx("div",{className:"text-xs text-slate-500",children:"M-units/km"})]}),e.duct_thickness_m&&x.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Duct Thickness"}),x.jsx("div",{className:"text-lg font-mono text-slate-100",children:e.duct_thickness_m}),x.jsx("div",{className:"text-xs text-slate-500",children:"meters"})]}),e.duct_base_m&&x.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Duct Base"}),x.jsx("div",{className:"text-lg font-mono text-slate-100",children:e.duct_base_m}),x.jsx("div",{className:"text-xs text-slate-500",children:"meters AGL"})]})]}),x.jsxs("div",{className:"text-xs text-slate-500 bg-bg-hover rounded p-2",children:[x.jsx("div",{children:"dM/dz reference:"}),x.jsxs("div",{className:"mt-1 space-y-0.5",children:[x.jsx("div",{children:">79: Normal propagation"}),x.jsx("div",{children:"0–79: Super-refraction"}),x.jsx("div",{children:"<0: Ducting (trapping layer)"})]})]}),e.last_update&&x.jsxs("div",{className:"text-xs text-slate-500 mt-3",children:["Last update: ",e.last_update]})]})}function TJe(){var I;const[e,t]=H.useState(null),[r,n]=H.useState([]),[i,a]=H.useState(null),[o,s]=H.useState(null),[l,u]=H.useState([]),[c,f]=H.useState(null),[h,d]=H.useState([]),[v,g]=H.useState([]),[m,y]=H.useState([]),[_,b]=H.useState([]),[S,T]=H.useState(0),[A,M]=H.useState(!0),[P,k]=H.useState(null);return H.useEffect(()=>{document.title="Environment — MeshAI",Promise.all([LZ().catch(()=>null),kZ().catch(()=>[]),IZ().catch(()=>null),OZ().catch(()=>null),cce().catch(()=>[]),fce().catch(()=>null),hce().catch(()=>[]),dce().catch(()=>[]),vce().catch(()=>[]),pce().catch(()=>({hotspots:[],new_ignitions:0}))]).then(([O,D,N,B,F,$,U,z,V,W])=>{t(O),n(D),a(N),s(B),u(F),f($),d(U||[]),g(z||[]),y(V||[]),b((W==null?void 0:W.hotspots)||[]),T((W==null?void 0:W.new_ignitions)||0),M(!1)}).catch(O=>{k(O.message),M(!1)})},[]),A?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-slate-400",children:"Loading environmental data..."})}):P?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsxs("div",{className:"text-red-400",children:["Error: ",P]})}):e!=null&&e.enabled?x.jsxs("div",{className:"space-y-6",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsx("h1",{className:"text-xl font-semibold text-slate-200",children:"Environment"}),x.jsxs("div",{className:"text-xs text-slate-500",children:[r.length," active event",r.length!==1?"s":""]})]}),x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(Wy,{size:14}),"Feed Status"]}),x.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:e.feeds.map(O=>x.jsx(_Je,{feed:O},O.source))})]}),x.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[x.jsx(wJe,{swpc:i}),x.jsx(SJe,{ducting:o})]}),x.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(VE,{size:14}),"Active Wildfires (",l.length,")"]}),l.length>0?x.jsx("div",{className:"space-y-3",children:l.map(O=>x.jsxs("div",{className:`p-3 rounded-lg ${O.severity==="warning"?"bg-red-500/10 border-l-2 border-red-500":O.severity==="watch"?"bg-amber-500/10 border-l-2 border-amber-500":"bg-slate-500/10 border-l-2 border-slate-500"}`,children:[x.jsxs("div",{className:"flex items-center justify-between mb-1",children:[x.jsx("span",{className:"text-sm font-medium text-slate-200",children:O.name}),x.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${O.severity==="warning"?"bg-red-500/20 text-red-400":O.severity==="watch"?"bg-amber-500/20 text-amber-400":"bg-slate-500/20 text-slate-400"}`,children:O.severity})]}),x.jsxs("div",{className:"text-xs text-slate-400 space-y-1",children:[x.jsxs("div",{children:[O.acres.toLocaleString()," acres, ",O.pct_contained,"% contained"]}),O.distance_km&&O.nearest_anchor&&x.jsxs("div",{children:[Math.round(O.distance_km)," km from ",O.nearest_anchor]})]})]},O.event_id))}):x.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[x.jsx(Jh,{size:16,className:"text-green-500"}),x.jsx("span",{children:"No active wildfires in the area"})]})]}),x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(GE,{size:14}),"Avalanche Advisories"]}),c!=null&&c.off_season?x.jsx("div",{className:"text-slate-500 py-4",children:x.jsx("p",{children:"Off season - check back in December"})}):c&&c.advisories.length>0?x.jsxs("div",{className:"space-y-3",children:[c.advisories.map(O=>x.jsxs("div",{className:`p-3 rounded-lg ${O.danger_level>=4?"bg-red-500/10 border-l-2 border-red-500":O.danger_level>=3?"bg-amber-500/10 border-l-2 border-amber-500":O.danger_level>=2?"bg-yellow-500/10 border-l-2 border-yellow-500":"bg-green-500/10 border-l-2 border-green-500"}`,children:[x.jsxs("div",{className:"flex items-center justify-between mb-1",children:[x.jsx("span",{className:"text-sm font-medium text-slate-200",children:O.zone_name}),x.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${O.danger_level>=4?"bg-red-500/20 text-red-400":O.danger_level>=3?"bg-amber-500/20 text-amber-400":O.danger_level>=2?"bg-yellow-500/20 text-yellow-400":"bg-green-500/20 text-green-400"}`,children:O.danger_name})]}),x.jsx("div",{className:"text-xs text-slate-400",children:O.center}),O.travel_advice&&x.jsx("div",{className:"text-xs text-slate-500 mt-2 line-clamp-2",children:O.travel_advice})]},O.event_id)),((I=c.advisories[0])==null?void 0:I.center_link)&&x.jsx("a",{href:c.advisories[0].center_link,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-400 hover:underline",children:"View full forecast"})]}):x.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[x.jsx(Jh,{size:16,className:"text-green-500"}),x.jsx("span",{children:"No avalanche advisories"})]})]})]}),h.length>0&&x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(zE,{size:14}),"Stream Gauges (",h.length,")"]}),x.jsx("div",{className:"space-y-2",children:h.map(O=>{var D,N,B,F,$;return x.jsxs("div",{className:`p-3 rounded-lg ${O.severity==="warning"?"bg-amber-500/10 border-l-2 border-amber-500":"bg-blue-500/10 border-l-2 border-blue-500"}`,children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsx("span",{className:"text-sm text-slate-200",children:((D=O.properties)==null?void 0:D.site_name)||"Unknown Site"}),x.jsxs("span",{className:"text-sm font-mono text-slate-300",children:[(B=(N=O.properties)==null?void 0:N.value)==null?void 0:B.toLocaleString()," ",(F=O.properties)==null?void 0:F.unit]})]}),x.jsx("div",{className:"text-xs text-slate-500 mt-1",children:($=O.properties)==null?void 0:$.parameter})]},O.event_id)})})]}),(v.length>0||m.length>0)&&x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(BE,{size:14}),"Road Conditions"]}),v.length>0&&x.jsxs("div",{className:"mb-4",children:[x.jsx("div",{className:"text-xs text-slate-500 mb-2 uppercase",children:"Traffic Flow"}),x.jsx("div",{className:"space-y-2",children:v.map(O=>{var D,N,B,F,$,U,z,V,W;return x.jsxs("div",{className:`p-3 rounded-lg ${(D=O.properties)!=null&&D.roadClosure?"bg-red-500/10 border-l-2 border-red-500":((N=O.properties)==null?void 0:N.speedRatio)<.5?"bg-amber-500/10 border-l-2 border-amber-500":((B=O.properties)==null?void 0:B.speedRatio)<.8?"bg-yellow-500/10 border-l-2 border-yellow-500":"bg-green-500/10 border-l-2 border-green-500"}`,children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsx("span",{className:"text-sm text-slate-200",children:((F=O.properties)==null?void 0:F.corridor)||"Unknown"}),x.jsx("span",{className:"text-sm font-mono text-slate-300",children:($=O.properties)!=null&&$.roadClosure?"CLOSED":`${Math.round(((U=O.properties)==null?void 0:U.currentSpeed)||0)}mph`})]}),!((z=O.properties)!=null&&z.roadClosure)&&x.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:[Math.round((((V=O.properties)==null?void 0:V.speedRatio)||1)*100),"% of free flow (",Math.round(((W=O.properties)==null?void 0:W.freeFlowSpeed)||0),"mph)"]})]},O.event_id)})})]}),m.length>0&&x.jsxs("div",{children:[x.jsx("div",{className:"text-xs text-slate-500 mb-2 uppercase",children:"Road Events"}),x.jsx("div",{className:"space-y-2",children:m.map(O=>{var D,N;return x.jsxs("div",{className:`p-3 rounded-lg ${(D=O.properties)!=null&&D.is_closure?"bg-red-500/10 border-l-2 border-red-500":"bg-amber-500/10 border-l-2 border-amber-500"}`,children:[x.jsxs("div",{className:"flex items-center gap-2",children:[((N=O.properties)==null?void 0:N.is_closure)&&x.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-red-500/20 text-red-400",children:"CLOSURE"}),x.jsx("span",{className:"text-sm text-slate-200 line-clamp-1",children:O.headline})]}),x.jsx("div",{className:"text-xs text-slate-500 mt-1 uppercase",children:O.event_type})]},O.event_id)})})]})]}),_.length>0&&x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(WE,{size:14}),"Satellite Hotspots (",_.length,")",S>0&&x.jsxs("span",{className:"ml-2 px-2 py-0.5 text-xs rounded-full bg-red-500/20 text-red-400 animate-pulse",children:[S," NEW"]})]}),x.jsx("div",{className:"space-y-2",children:_.map(O=>{var D,N,B,F,$,U;return x.jsxs("div",{className:`p-3 rounded-lg ${(D=O.properties)!=null&&D.new_ignition?"bg-red-500/10 border-l-2 border-red-500":O.severity==="watch"?"bg-amber-500/10 border-l-2 border-amber-500":"bg-orange-500/10 border-l-2 border-orange-500"}`,children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{className:"flex items-center gap-2",children:[((N=O.properties)==null?void 0:N.new_ignition)&&x.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-red-500/20 text-red-400",children:"NEW"}),x.jsx("span",{className:"text-sm text-slate-200",children:O.headline})]}),((B=O.properties)==null?void 0:B.frp)&&x.jsxs("span",{className:"text-sm font-mono text-orange-400",children:[Math.round(O.properties.frp)," MW"]})]}),x.jsxs("div",{className:"text-xs text-slate-500 mt-1 flex items-center gap-3",children:[x.jsxs("span",{children:["Conf: ",((F=O.properties)==null?void 0:F.confidence)||"N/A"]}),(($=O.properties)==null?void 0:$.acq_time)&&x.jsxs("span",{children:["@",O.properties.acq_time,"Z"]}),((U=O.properties)==null?void 0:U.near_fire)&&x.jsxs("span",{children:["Near: ",O.properties.near_fire]})]})]},O.event_id)})})]}),x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(Ds,{size:14}),"Active Events (",r.length,")"]}),r.length>0?x.jsx("div",{className:"space-y-3",children:r.map(O=>x.jsx(bJe,{event:O},O.event_id))}):x.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[x.jsx(Jh,{size:16,className:"text-green-500"}),x.jsx("span",{children:"No active environmental events"})]})]})]}):x.jsxs("div",{className:"flex flex-col items-center justify-center h-[60vh] text-center",children:[x.jsx("div",{className:"w-16 h-16 rounded-full bg-bg-card border border-border flex items-center justify-center mb-6",children:x.jsx(Yc,{size:32,className:"text-slate-500"})}),x.jsx("h2",{className:"text-xl font-semibold text-slate-300 mb-2",children:"Environmental Feeds Disabled"}),x.jsx("p",{className:"text-slate-500 max-w-md",children:"Enable environmental feeds in config.yaml to see weather alerts, space weather indices, and tropospheric ducting data."})]})}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(A=>{var M,P,k,I;return((M=A.short_name)==null?void 0:M.toLowerCase().includes(T))||((P=A.long_name)==null?void 0:P.toLowerCase().includes(T))||((k=A.role)==null?void 0:k.toLowerCase().includes(T))||((I=A.node_id_hex)==null?void 0:I.toLowerCase().includes(T))})}return S.sort((T,A)=>(T.short_name||"").localeCompare(A.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)}},y=S=>{const T=m(S);return t.includes(T)},_=S=>{const T=m(S);t.includes(T)?r(t.filter(A=>A!==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?x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:n})]}):x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e}),t.length>0&&x.jsx("div",{className:"flex flex-wrap gap-2 mb-2",children:t.map(S=>{const T=s.find(A=>m(A)===S);return x.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,x.jsx("button",{type:"button",onClick:()=>r(t.filter(A=>A!==S)),className:"hover:text-white",children:x.jsx(Xc,{size:14})})]},S)})}),x.jsxs("div",{className:"relative",children:[x.jsxs("div",{className:"relative",children:[x.jsx(HE,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),x.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&&x.jsxs(x.Fragment,{children:[x.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>v(!1)}),x.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?x.jsx("div",{className:"p-3 text-sm text-slate-500 text-center",children:"No nodes found"}):g.map(S=>x.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] ${y(S)?"bg-accent/10":""}`,children:[x.jsx("div",{className:`w-4 h-4 rounded border flex items-center justify-center ${y(S)?"bg-accent border-accent":"border-slate-600"}`,children:y(S)&&x.jsx(yd,{size:12,className:"text-white"})}),x.jsx("span",{className:"text-slate-200",children:b(S)})]},S.node_num))})]})]}),n&&x.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function RR(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"?x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e.label}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:e.helper})]}):x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:e.label}),x.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&&x.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,y=t.filter(_=>_.enabled);return x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:v}),x.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&&x.jsx("option",{value:-1,children:"Disabled"}),y.map(_=>x.jsx("option",{value:_.index,children:a(_)},_.index))]}),g&&x.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 x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"block text-xs text-slate-500 uppercase tracking-wide",children:l}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-2 space-y-1",children:[c.map(h=>x.jsxs("label",{onClick:()=>f(h.index),className:"flex items-center gap-2 p-2 rounded hover:bg-[#0a0e17] cursor-pointer",children:[x.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)&&x.jsx(yd,{size:12,className:"text-white"})}),x.jsx("span",{className:"text-sm text-slate-200",children:a(h)})]},h.index)),c.length===0&&x.jsx("div",{className:"text-sm text-slate-500 p-2",children:"No channels available"})]}),u&&x.jsx("p",{className:"text-xs text-slate-600",children:u})]})}const BU=[{key:"bot",label:"Bot",icon:Gue},{key:"connection",label:"Connection",icon:MZ},{key:"response",label:"Response",icon:Jue},{key:"history",label:"History",icon:Kue},{key:"memory",label:"Memory",icon:Wue},{key:"context",label:"Context",icon:$E},{key:"commands",label:"Commands",icon:CZ},{key:"llm",label:"LLM",icon:mZ},{key:"weather",label:"Weather",icon:Yc},{key:"meshmonitor",label:"MeshMonitor",icon:tu},{key:"knowledge",label:"Knowledge",icon:pZ},{key:"mesh_sources",label:"Mesh Sources",icon:xZ},{key:"mesh_intelligence",label:"Intelligence",icon:Wy},{key:"environmental",label:"Environmental",icon:rce},{key:"dashboard",label:"Dashboard",icon:_Z}],Kn={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.",environmental:"Live environmental data feeds for situational awareness. Each feed polls a public or authenticated API for real-time conditions affecting your area.",dashboard:"Web dashboard settings. You're looking at it right now."},AJe=[{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"}],CJe=[{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 Wo({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]),x.jsxs("div",{className:"relative inline-block",ref:a,children:[x.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&&x.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:[x.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:x.jsx(Xc,{size:12})}),x.jsx("div",{className:"pr-4",children:e}),t&&x.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," ",x.jsx(_d,{size:10})]})]})]})}function Qn({text:e}){return x.jsx("p",{className:"text-sm text-slate-500 mb-6 pb-4 border-b border-[#1e2a3a]",children:e})}function At({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 x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,o&&x.jsx(Wo,{info:o,link:s})]}),x.jsxs("div",{className:"relative",children:[x.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&&x.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?x.jsx(yZ,{size:16}):x.jsx($E,{size:16})})]}),a&&x.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function qe({label:e,value:t,onChange:r,min:n,max:i,step:a=1,helper:o="",info:s="",infoLink:l=""}){return x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,s&&x.jsx(Wo,{info:s,link:l})]}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:o})]})}function Et({label:e,checked:t,onChange:r,helper:n="",info:i="",infoLink:a=""}){return x.jsxs("div",{className:"flex items-center justify-between py-2",children:[x.jsxs("div",{children:[x.jsxs("span",{className:"flex items-center text-sm text-slate-300",children:[e,i&&x.jsx(Wo,{info:i,link:a})]}),n&&x.jsx("p",{className:"text-xs text-slate-600",children:n})]}),x.jsx("button",{type:"button",onClick:()=>r(!t),className:`relative w-11 h-6 rounded-full transition-colors ${t?"bg-accent":"bg-[#1e2a3a]"}`,children:x.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${t?"translate-x-5":""}`})})]})}function Co({label:e,value:t,onChange:r,options:n,helper:i="",info:a="",infoLink:o=""}){return x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&x.jsx(Wo,{info:a,link:o})]}),x.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=>x.jsx("option",{value:s.value,children:s.label},s.value))}),i&&x.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function MJe({label:e,value:t,onChange:r,rows:n=4,helper:i="",info:a="",infoLink:o=""}){return x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&x.jsx(Wo,{info:a,link:o})]}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function Uh({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 x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&x.jsx(Wo,{info:i,link:a})]}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function PJe({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 x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&x.jsx(Wo,{info:i,link:a})]}),x.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&&x.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 x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-3 space-y-2",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{className:"flex-1",children:[x.jsx("span",{className:"text-sm text-slate-300",children:e}),x.jsx("p",{className:"text-xs text-slate-600",children:t})]}),x.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:x.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&&x.jsxs("div",{className:"flex items-center gap-2 pt-2 border-t border-[#1e2a3a]",children:[x.jsxs("span",{className:"text-xs text-slate-500",children:[o||"Threshold",":"]}),x.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&&x.jsx("span",{className:"text-xs text-slate-500",children:c})]})]})}function LJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.bot}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{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."}),x.jsx(At,{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."})]}),x.jsx(Et,{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."}),x.jsx(Et,{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 kJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.connection}),x.jsx(Co,{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"?x.jsx(At,{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."}):x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{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"}),x.jsx(qe,{label:"TCP Port",value:e.tcp_port,onChange:r=>t({...e,tcp_port:r}),min:1,max:65535,helper:"Default 4403 for meshtasticd"})]})]})}function IJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.response}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{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."}),x.jsx(qe,{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."})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{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."}),x.jsx(qe,{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 OJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.history}),x.jsx(At,{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."}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{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."}),x.jsx(qe,{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."})]}),x.jsx(Et,{label:"Auto Cleanup",checked:e.auto_cleanup,onChange:r=>t({...e,auto_cleanup:r}),helper:"Automatically prune old conversations"}),e.auto_cleanup&&x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{label:"Cleanup Interval (hours)",value:e.cleanup_interval_hours,onChange:r=>t({...e,cleanup_interval_hours:r}),min:1,helper:"Hours between cleanup runs"}),x.jsx(qe,{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 EJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.memory}),x.jsx(Et,{label:"Enable Memory",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Keep conversation context between messages"}),e.enabled&&x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{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."}),x.jsx(qe,{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 DJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.context}),x.jsx(Et,{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&&x.jsxs(x.Fragment,{children:[x.jsx(RR,{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"}),x.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."}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{label:"Max Age (sec)",value:e.max_age,onChange:r=>t({...e,max_age:r}),min:0,helper:"Ignore messages older than this"}),x.jsx(qe,{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 NJe({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 x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.commands}),x.jsx(Et,{label:"Enable Commands",checked:e.enabled,onChange:i=>t({...e,enabled:i}),helper:"Allow !commands on the mesh"}),e.enabled&&x.jsxs(x.Fragment,{children:[x.jsx(At,{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."}),x.jsxs("div",{className:"space-y-2",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Available Commands",x.jsx(Wo,{info:"Toggle commands on or off. Disabled commands won't respond when users invoke them."})]}),x.jsx("div",{className:"grid gap-1",children:AJe.map(i=>{const a=!r.has(i.name.toLowerCase());return x.jsxs("div",{className:"flex items-center justify-between p-2 bg-[#0a0e17] border border-[#1e2a3a] rounded hover:border-[#2a3a4a] transition-colors",children:[x.jsxs("div",{className:"flex items-center gap-3",children:[x.jsxs("code",{className:"text-accent text-sm",children:["!",i.name]}),x.jsx("span",{className:"text-xs text-slate-500",children:i.description})]}),x.jsx("button",{type:"button",onClick:()=>n(i.name),className:`relative w-9 h-5 rounded-full transition-colors ${a?"bg-accent":"bg-[#1e2a3a]"}`,children:x.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 jJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.llm}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(Co,{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."}),x.jsx(At,{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)."})]}),x.jsx(At,{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."}),x.jsx(At,{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."}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{label:"Timeout (sec)",value:e.timeout,onChange:r=>t({...e,timeout:r}),min:5,max:120,helper:"Maximum seconds to wait for response"}),x.jsx(qe,{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"})]}),x.jsx(Et,{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&&x.jsx(MJe,{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."}),x.jsx(Et,{label:"Web Search",checked:e.web_search,onChange:r=>t({...e,web_search:r}),helper:"Enable web search tool (Open WebUI feature)"}),x.jsx(Et,{label:"Google Grounding",checked:e.google_grounding,onChange:r=>t({...e,google_grounding:r}),helper:"Ground responses in web search (Gemini only)"})]})}function RJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.weather}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(Co,{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"}),x.jsx(Co,{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"})]}),x.jsx(At,{label:"Default Location",value:e.default_location,onChange:r=>t({...e,default_location:r}),placeholder:"Your city, state",helper:"Location when none specified"})]})}function BJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.meshmonitor}),x.jsx(Et,{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&&x.jsxs(x.Fragment,{children:[x.jsx(At,{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."}),x.jsx(Et,{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."}),x.jsx(qe,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:r=>t({...e,refresh_interval:r}),min:10,helper:"How often to fetch patterns"}),x.jsx(Et,{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 zJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.knowledge}),x.jsx(Et,{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&&x.jsxs(x.Fragment,{children:[x.jsx(Co,{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")&&x.jsxs(x.Fragment,{children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{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."}),x.jsx(qe,{label:"Qdrant Port",value:e.qdrant_port,onChange:r=>t({...e,qdrant_port:r}),helper:"Default 6333"})]}),x.jsx(At,{label:"Collection",value:e.qdrant_collection,onChange:r=>t({...e,qdrant_collection:r}),helper:"Qdrant collection name"}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{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."}),x.jsx(qe,{label:"TEI Port",value:e.tei_port,onChange:r=>t({...e,tei_port:r}),helper:"Default 8090"})]}),x.jsx(Et,{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."})]}),x.jsx(At,{label:"SQLite DB Path",value:e.db_path,onChange:r=>t({...e,db_path:r}),helper:"Local knowledge database file"}),x.jsx(qe,{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 $Je({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 x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg overflow-hidden",children:[x.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>i(!n),children:[x.jsxs("div",{className:"flex items-center gap-3",children:[n?x.jsx(Hy,{size:16}):x.jsx(bm,{size:16}),x.jsx("div",{className:`w-2 h-2 rounded-full ${e.enabled?"bg-green-500":"bg-slate-500"}`}),x.jsx("span",{className:"font-mono text-sm text-slate-200",children:e.name||"Unnamed Source"}),x.jsx("span",{className:"text-xs text-slate-500 bg-[#1e2a3a] px-2 py-0.5 rounded",children:e.type})]}),x.jsx("button",{onClick:o=>{o.stopPropagation(),r()},className:"p-1 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",children:x.jsx(UE,{size:14})})]}),n&&x.jsxs("div",{className:"p-4 space-y-4 border-t border-[#1e2a3a]",children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{label:"Name",value:e.name,onChange:o=>t({...e,name:o}),helper:"Friendly name for this source"}),x.jsx(Co,{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"&&x.jsx(At,{label:"URL",value:e.url,onChange:o=>t({...e,url:o}),helper:"Full URL including protocol"}),e.type==="meshmonitor"&&x.jsx(At,{label:"API Token",value:e.api_token,onChange:o=>t({...e,api_token:o}),type:"password",helper:"Bearer token for authentication"}),e.type==="mqtt"&&x.jsxs(x.Fragment,{children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{label:"Host",value:e.host||"",onChange:o=>t({...e,host:o}),helper:"MQTT broker hostname"}),x.jsx(qe,{label:"Port",value:e.port||1883,onChange:o=>t({...e,port:o}),min:1,max:65535,helper:"1883 plain, 8883 TLS"})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{label:"Username",value:e.username||"",onChange:o=>t({...e,username:o})}),x.jsx(At,{label:"Password",value:e.password||"",onChange:o=>t({...e,password:o}),type:"password"})]}),x.jsx(At,{label:"Topic Root",value:e.topic_root||"msh/US",onChange:o=>t({...e,topic_root:o}),helper:"Base topic to subscribe to"}),x.jsx(Et,{label:"Use TLS",checked:e.use_tls||!1,onChange:o=>t({...e,use_tls:o}),helper:"Encrypt MQTT connection"})]}),x.jsx(qe,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:o=>t({...e,refresh_interval:o}),min:10,helper:"Polling frequency"}),x.jsx(Et,{label:"Enabled",checked:e.enabled,onChange:o=>t({...e,enabled:o})}),x.jsx(Et,{label:"Polite Mode",checked:e.polite_mode,onChange:o=>t({...e,polite_mode:o}),helper:"Reduce polling for shared instances"})]})]})}function FJe({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 x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.mesh_sources}),e.map((n,i)=>x.jsx($Je,{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)),x.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:[x.jsx(bS,{size:16})," Add Source"]})]})}function VJe({data:e,onChange:t}){const[r,n]=H.useState(null);return x.jsxs("div",{className:"space-y-6",children:[x.jsx(Qn,{text:Kn.mesh_intelligence}),x.jsx(Et,{label:"Enable Mesh Intelligence",checked:e.enabled,onChange:i=>t({...e,enabled:i}),helper:"Activate health scoring and alerting"}),e.enabled&&x.jsxs(x.Fragment,{children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{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."}),x.jsx(qe,{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."})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{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."}),x.jsx(qe,{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"})]}),x.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"}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(RR,{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}),x.jsx(qe,{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)."})]}),x.jsxs("div",{className:"space-y-2",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Regions",x.jsx(Wo,{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)=>x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg overflow-hidden",children:[x.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>n(r===a?null:a),children:[x.jsxs("div",{className:"flex items-center gap-3",children:[r===a?x.jsx(Hy,{size:16}):x.jsx(bm,{size:16}),x.jsx("span",{className:"font-medium text-slate-200",children:i.name||"Unnamed Region"}),x.jsx("span",{className:"text-xs text-slate-500",children:i.local_name})]}),x.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:x.jsx(UE,{size:14})})]}),r===a&&x.jsxs("div",{className:"p-4 space-y-3 border-t border-[#1e2a3a]",children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{label:"Name",value:i.name,onChange:o=>{const s=[...e.regions];s[a]={...i,name:o},t({...e,regions:s})}}),x.jsx(At,{label:"Local Name",value:i.local_name,onChange:o=>{const s=[...e.regions];s[a]={...i,local_name:o},t({...e,regions:s})}})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{label:"Latitude",value:i.lat,onChange:o=>{const s=[...e.regions];s[a]={...i,lat:o},t({...e,regions:s})},step:1e-4}),x.jsx(qe,{label:"Longitude",value:i.lon,onChange:o=>{const s=[...e.regions];s[a]={...i,lon:o},t({...e,regions:s})},step:1e-4})]}),x.jsx(At,{label:"Description",value:i.description,onChange:o=>{const s=[...e.regions];s[a]={...i,description:o},t({...e,regions:s})}}),x.jsx(Uh,{label:"Aliases",value:i.aliases,onChange:o=>{const s=[...e.regions];s[a]={...i,aliases:o},t({...e,regions:s})}}),x.jsx(Uh,{label:"Cities",value:i.cities,onChange:o=>{const s=[...e.regions];s[a]={...i,cities:o},t({...e,regions:s})}})]})]},a)),x.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:[x.jsx(bS,{size:16})," Add Region"]})]}),x.jsxs("div",{className:"space-y-3",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Alert Rules",x.jsx(Wo,{info:"Configure which conditions trigger alerts. Each rule can have an optional threshold value."})]}),x.jsxs("div",{className:"space-y-2",children:[x.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Infrastructure"}),x.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}})}),x.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}})}),x.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}})}),x.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}})}),x.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}})}),x.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}})})]}),x.jsxs("div",{className:"space-y-2",children:[x.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Power"}),x.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:"%"}),x.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:"%"}),x.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:"%"}),x.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}})}),x.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}})}),x.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}})})]}),x.jsxs("div",{className:"space-y-2",children:[x.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Utilization"}),x.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`}),x.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"})]}),x.jsxs("div",{className:"space-y-2",children:[x.jsx("h4",{className:"text-xs text-slate-400 font-medium",children:"Health Scores"}),x.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"}),x.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 GJe({data:e,onChange:t}){var r,n,i,a,o,s,l,u,c,f,h,d,v,g,m,y;return x.jsxs("div",{className:"space-y-6",children:[x.jsx(Qn,{text:Kn.environmental}),x.jsx(Et,{label:"Enable Environmental Feeds",checked:e.enabled,onChange:_=>t({...e,enabled:_}),helper:"Activate live data polling"}),e.enabled&&x.jsxs(x.Fragment,{children:[x.jsx(Uh,{label:"NWS Zones",value:e.nws_zones,onChange:_=>t({...e,nws_zones:_}),helper:"Zone IDs like IDZ016, IDZ030",info:"NWS forecast zones covering your mesh area. Find yours at https://www.weather.gov/pimar/PubZone",infoLink:"https://www.weather.gov/pimar/PubZone"}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"NWS Weather Alerts"}),x.jsx(Et,{label:"",checked:e.nws.enabled,onChange:_=>t({...e,nws:{...e.nws,enabled:_}})})]}),e.nws.enabled&&x.jsxs(x.Fragment,{children:[x.jsx(At,{label:"User Agent",value:e.nws.user_agent,onChange:_=>t({...e,nws:{...e.nws,user_agent:_}}),placeholder:"(MeshAI, your@email.com)",helper:"Required format: (app_name, contact_email)",info:"Required by NWS. You make it up - just use the format (app_name, your_email). No signup needed."}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{label:"Tick Seconds",value:e.nws.tick_seconds,onChange:_=>t({...e,nws:{...e.nws,tick_seconds:_}}),min:30,helper:"Polling interval"}),x.jsx(Co,{label:"Min Severity",value:e.nws.severity_min,onChange:_=>t({...e,nws:{...e.nws,severity_min:_}}),options:[{value:"minor",label:"Minor"},{value:"moderate",label:"Moderate"},{value:"severe",label:"Severe"},{value:"extreme",label:"Extreme"}],helper:"Filter out lower severity alerts",info:"Minimum severity level to display. 'Moderate' filters out minor advisories. 'Severe' shows only serious warnings."})]})]})]}),x.jsx("div",{className:"border border-[#1e2a3a] rounded-lg p-4",children:x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"NOAA Space Weather (SWPC)"}),x.jsx("p",{className:"text-xs text-slate-600",children:"Solar indices, geomagnetic storms, HF propagation"})]}),x.jsx(Et,{label:"",checked:e.swpc.enabled,onChange:_=>t({...e,swpc:{...e.swpc,enabled:_}})})]})}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"Tropospheric Ducting"}),x.jsx("p",{className:"text-xs text-slate-600",children:"VHF/UHF extended range conditions"})]}),x.jsx(Et,{label:"",checked:e.ducting.enabled,onChange:_=>t({...e,ducting:{...e.ducting,enabled:_}})})]}),e.ducting.enabled&&x.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[x.jsx(qe,{label:"Tick Seconds",value:e.ducting.tick_seconds,onChange:_=>t({...e,ducting:{...e.ducting,tick_seconds:_}}),min:60}),x.jsx(qe,{label:"Latitude",value:e.ducting.latitude,onChange:_=>t({...e,ducting:{...e.ducting,latitude:_}}),step:.01,info:"Center point of your mesh coverage area. The ducting adapter checks atmospheric conditions at this location."}),x.jsx(qe,{label:"Longitude",value:e.ducting.longitude,onChange:_=>t({...e,ducting:{...e.ducting,longitude:_}}),step:.01})]})]}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"NIFC Fire Perimeters"}),x.jsx("p",{className:"text-xs text-slate-600",children:"Active wildfires from National Interagency Fire Center"})]}),x.jsx(Et,{label:"",checked:e.fires.enabled,onChange:_=>t({...e,fires:{...e.fires,enabled:_}})})]}),e.fires.enabled&&x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(qe,{label:"Tick Seconds",value:e.fires.tick_seconds,onChange:_=>t({...e,fires:{...e.fires,tick_seconds:_}}),min:60}),x.jsx(Co,{label:"State",value:e.fires.state,onChange:_=>t({...e,fires:{...e.fires,state:_}}),options:CJe,helper:"Filter fires by state",info:"Two-letter state code for NIFC wildfire filtering."})]})]}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"Avalanche Advisories"}),x.jsx("p",{className:"text-xs text-slate-600",children:"Backcountry avalanche danger ratings"})]}),x.jsx(Et,{label:"",checked:e.avalanche.enabled,onChange:_=>t({...e,avalanche:{...e.avalanche,enabled:_}})})]}),e.avalanche.enabled&&x.jsxs(x.Fragment,{children:[x.jsx(qe,{label:"Tick Seconds",value:e.avalanche.tick_seconds,onChange:_=>t({...e,avalanche:{...e.avalanche,tick_seconds:_}}),min:60}),x.jsx(Uh,{label:"Center IDs",value:e.avalanche.center_ids,onChange:_=>t({...e,avalanche:{...e.avalanche,center_ids:_}}),helper:"e.g., SNFAC, IPAC, FAC",info:"Find your local center at https://avalanche.org/avalanche-centers/",infoLink:"https://avalanche.org/avalanche-centers/"}),x.jsx(PJe,{label:"Season Months",value:e.avalanche.season_months,onChange:_=>t({...e,avalanche:{...e.avalanche,season_months:_}}),helper:"e.g., 12, 1, 2, 3, 4",info:"Months when avalanche forecasts are active. Default Dec-Apr. Adjust for your region's season."})]})]}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"USGS Stream Gauges"}),x.jsx("p",{className:"text-xs text-slate-600",children:"River and stream water levels"})]}),x.jsx(Et,{label:"",checked:((r=e.usgs)==null?void 0:r.enabled)||!1,onChange:_=>{var b,S;return t({...e,usgs:{...e.usgs,enabled:_,tick_seconds:((b=e.usgs)==null?void 0:b.tick_seconds)||900,sites:((S=e.usgs)==null?void 0:S.sites)||[]}})}})]}),((n=e.usgs)==null?void 0:n.enabled)&&x.jsxs(x.Fragment,{children:[x.jsx(qe,{label:"Tick Seconds",value:e.usgs.tick_seconds,onChange:_=>t({...e,usgs:{...e.usgs,tick_seconds:_}}),min:900,helper:"Minimum 15 min (900s)"}),x.jsx(Uh,{label:"Site IDs",value:e.usgs.sites,onChange:_=>t({...e,usgs:{...e.usgs,sites:_}}),helper:"USGS gauge site numbers",info:"Find site IDs at waterdata.usgs.gov/nwis",infoLink:"https://waterdata.usgs.gov/nwis"})]})]}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"TomTom Traffic"}),x.jsx("p",{className:"text-xs text-slate-600",children:"Traffic flow on monitored corridors"})]}),x.jsx(Et,{label:"",checked:((i=e.traffic)==null?void 0:i.enabled)||!1,onChange:_=>{var b,S,T;return t({...e,traffic:{...e.traffic,enabled:_,tick_seconds:((b=e.traffic)==null?void 0:b.tick_seconds)||300,api_key:((S=e.traffic)==null?void 0:S.api_key)||"",corridors:((T=e.traffic)==null?void 0:T.corridors)||[]}})}})]}),((a=e.traffic)==null?void 0:a.enabled)&&x.jsxs(x.Fragment,{children:[x.jsx(At,{label:"API Key",value:e.traffic.api_key,onChange:_=>t({...e,traffic:{...e.traffic,api_key:_}}),type:"password",helper:"Get key at developer.tomtom.com",infoLink:"https://developer.tomtom.com"}),x.jsx(qe,{label:"Tick Seconds",value:e.traffic.tick_seconds,onChange:_=>t({...e,traffic:{...e.traffic,tick_seconds:_}}),min:60}),x.jsx("div",{className:"text-xs text-slate-500 mt-2",children:"Corridors (each with name, lat, lon):"}),(e.traffic.corridors||[]).map((_,b)=>x.jsxs("div",{className:"grid grid-cols-4 gap-2 items-end",children:[x.jsx(At,{label:"Name",value:_.name,onChange:S=>{const T=[...e.traffic.corridors];T[b]={..._,name:S},t({...e,traffic:{...e.traffic,corridors:T}})}}),x.jsx(qe,{label:"Lat",value:_.lat,onChange:S=>{const T=[...e.traffic.corridors];T[b]={..._,lat:S},t({...e,traffic:{...e.traffic,corridors:T}})},step:.01}),x.jsx(qe,{label:"Lon",value:_.lon,onChange:S=>{const T=[...e.traffic.corridors];T[b]={..._,lon:S},t({...e,traffic:{...e.traffic,corridors:T}})},step:.01}),x.jsx("button",{onClick:()=>t({...e,traffic:{...e.traffic,corridors:e.traffic.corridors.filter((S,T)=>T!==b)}}),className:"px-2 py-2 text-xs text-red-400 hover:text-red-300 border border-red-400/30 rounded",children:"Remove"})]},b)),x.jsx("button",{onClick:()=>t({...e,traffic:{...e.traffic,corridors:[...e.traffic.corridors||[],{name:"",lat:0,lon:0}]}}),className:"text-xs text-accent hover:underline",children:"+ Add Corridor"})]})]}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"511 Road Conditions"}),x.jsx("p",{className:"text-xs text-slate-600",children:"State DOT road events and closures"})]}),x.jsx(Et,{label:"",checked:((o=e.roads511)==null?void 0:o.enabled)||!1,onChange:_=>{var b,S,T,A,M;return t({...e,roads511:{...e.roads511,enabled:_,tick_seconds:((b=e.roads511)==null?void 0:b.tick_seconds)||300,api_key:((S=e.roads511)==null?void 0:S.api_key)||"",base_url:((T=e.roads511)==null?void 0:T.base_url)||"",endpoints:((A=e.roads511)==null?void 0:A.endpoints)||["/get/event"],bbox:((M=e.roads511)==null?void 0:M.bbox)||[]}})}})]}),((s=e.roads511)==null?void 0:s.enabled)&&x.jsxs(x.Fragment,{children:[x.jsx(At,{label:"Base URL",value:e.roads511.base_url,onChange:_=>t({...e,roads511:{...e.roads511,base_url:_}}),placeholder:"https://511.yourstate.gov/api/v2",helper:"State 511 API endpoint"}),x.jsx(At,{label:"API Key",value:e.roads511.api_key,onChange:_=>t({...e,roads511:{...e.roads511,api_key:_}}),type:"password",helper:"Leave empty if not required"}),x.jsx(qe,{label:"Tick Seconds",value:e.roads511.tick_seconds,onChange:_=>t({...e,roads511:{...e.roads511,tick_seconds:_}}),min:60}),x.jsx(Uh,{label:"Endpoints",value:e.roads511.endpoints,onChange:_=>t({...e,roads511:{...e.roads511,endpoints:_}}),helper:"e.g., /get/event, /get/mountainpasses"}),x.jsxs("div",{className:"grid grid-cols-4 gap-2",children:[x.jsx(qe,{label:"West",value:((l=e.roads511.bbox)==null?void 0:l[0])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[0]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01}),x.jsx(qe,{label:"South",value:((u=e.roads511.bbox)==null?void 0:u[1])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[1]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01}),x.jsx(qe,{label:"East",value:((c=e.roads511.bbox)==null?void 0:c[2])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[2]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01}),x.jsx(qe,{label:"North",value:((f=e.roads511.bbox)==null?void 0:f[3])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[3]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01})]}),x.jsx("div",{className:"text-xs text-slate-500",children:"Bounding box filter (leave all 0 to disable)"})]})]}),x.jsxs("div",{className:"border border-[#1e2a3a] rounded-lg p-4 space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("div",{children:[x.jsx("span",{className:"text-sm font-medium text-slate-300",children:"NASA FIRMS Satellite Fire Detection"}),x.jsx("p",{className:"text-xs text-slate-600",children:"Near real-time thermal anomalies from satellites"})]}),x.jsx(Et,{label:"",checked:((h=e.firms)==null?void 0:h.enabled)||!1,onChange:_=>{var b,S,T,A,M,P,k;return t({...e,firms:{...e.firms,enabled:_,tick_seconds:((b=e.firms)==null?void 0:b.tick_seconds)||1800,map_key:((S=e.firms)==null?void 0:S.map_key)||"",source:((T=e.firms)==null?void 0:T.source)||"VIIRS_SNPP_NRT",bbox:((A=e.firms)==null?void 0:A.bbox)||[],day_range:((M=e.firms)==null?void 0:M.day_range)||1,confidence_min:((P=e.firms)==null?void 0:P.confidence_min)||"nominal",proximity_km:((k=e.firms)==null?void 0:k.proximity_km)||10}})}})]}),((d=e.firms)==null?void 0:d.enabled)&&x.jsxs(x.Fragment,{children:[x.jsx(At,{label:"MAP Key",value:e.firms.map_key,onChange:_=>t({...e,firms:{...e.firms,map_key:_}}),type:"password",helper:"Get key at firms.modaps.eosdis.nasa.gov/api/area/",infoLink:"https://firms.modaps.eosdis.nasa.gov/api/area/"}),x.jsx(qe,{label:"Tick Seconds",value:e.firms.tick_seconds,onChange:_=>t({...e,firms:{...e.firms,tick_seconds:_}}),min:300,helper:"Minimum 5 min (300s)"}),x.jsx(Co,{label:"Satellite Source",value:e.firms.source,onChange:_=>t({...e,firms:{...e.firms,source:_}}),options:[{value:"VIIRS_SNPP_NRT",label:"VIIRS SNPP (Near Real-Time)"},{value:"VIIRS_NOAA20_NRT",label:"VIIRS NOAA-20 (Near Real-Time)"},{value:"MODIS_NRT",label:"MODIS (Near Real-Time)"}]}),x.jsx(qe,{label:"Day Range",value:e.firms.day_range,onChange:_=>t({...e,firms:{...e.firms,day_range:_}}),min:1,max:10,helper:"1-10 days of data"}),x.jsx(Co,{label:"Minimum Confidence",value:e.firms.confidence_min,onChange:_=>t({...e,firms:{...e.firms,confidence_min:_}}),options:[{value:"low",label:"Low"},{value:"nominal",label:"Nominal"},{value:"high",label:"High"}]}),x.jsx(qe,{label:"Proximity (km)",value:e.firms.proximity_km,onChange:_=>t({...e,firms:{...e.firms,proximity_km:_}}),step:.5,helper:"Distance to match known fires"}),x.jsxs("div",{className:"grid grid-cols-4 gap-2",children:[x.jsx(qe,{label:"West",value:((v=e.firms.bbox)==null?void 0:v[0])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[0]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01}),x.jsx(qe,{label:"South",value:((g=e.firms.bbox)==null?void 0:g[1])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[1]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01}),x.jsx(qe,{label:"East",value:((m=e.firms.bbox)==null?void 0:m[2])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[2]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01}),x.jsx(qe,{label:"North",value:((y=e.firms.bbox)==null?void 0:y[3])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[3]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01})]}),x.jsx("div",{className:"text-xs text-slate-500",children:"Bounding box for monitoring area (required)"})]})]})]})]})}function WJe({data:e,onChange:t}){return x.jsxs("div",{className:"space-y-4",children:[x.jsx(Qn,{text:Kn.dashboard}),x.jsx(Et,{label:"Enable Dashboard",checked:e.enabled,onChange:r=>t({...e,enabled:r}),helper:"Run the web dashboard"}),e.enabled&&x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(At,{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."}),x.jsx(qe,{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 HJe(){var k;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,y]=H.useState(!1),_=H.useCallback(async()=>{try{const I=await fetch("/api/config");if(!I.ok)throw new Error("Failed to fetch config");const O=await I.json();t(O),n(JSON.parse(JSON.stringify(O))),y(!1),f(null)}catch(I){f(I instanceof Error?I.message:"Unknown error")}finally{s(!1)}},[]);H.useEffect(()=>{document.title="Config — MeshAI",_()},[_]),H.useEffect(()=>{e&&r&&y(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const b=async()=>{if(e){u(!0),f(null),d(null);try{const I=e[i],O=await fetch(`/api/config/${i}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(I)}),D=await O.json();if(!O.ok)throw new Error(D.detail||"Save failed");d(`${i} saved successfully`),n(JSON.parse(JSON.stringify(e))),y(!1),D.restart_required&&g(!0),setTimeout(()=>d(null),3e3)}catch(I){f(I instanceof Error?I.message:"Save failed")}finally{u(!1)}}},S=()=>{r&&(t(JSON.parse(JSON.stringify(r))),y(!1))},T=async()=>{try{await fetch("/api/restart",{method:"POST"}),g(!1),d("Restart initiated")}catch{f("Restart failed")}},A=(I,O)=>{e&&t({...e,[I]:O})};if(o)return x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-slate-400",children:"Loading configuration..."})});if(!e)return x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-red-400",children:"Failed to load configuration"})});const M=()=>{switch(i){case"bot":return x.jsx(LJe,{data:e.bot,onChange:I=>A("bot",I)});case"connection":return x.jsx(kJe,{data:e.connection,onChange:I=>A("connection",I)});case"response":return x.jsx(IJe,{data:e.response,onChange:I=>A("response",I)});case"history":return x.jsx(OJe,{data:e.history,onChange:I=>A("history",I)});case"memory":return x.jsx(EJe,{data:e.memory,onChange:I=>A("memory",I)});case"context":return x.jsx(DJe,{data:e.context,onChange:I=>A("context",I)});case"commands":return x.jsx(NJe,{data:e.commands,onChange:I=>A("commands",I)});case"llm":return x.jsx(jJe,{data:e.llm,onChange:I=>A("llm",I)});case"weather":return x.jsx(RJe,{data:e.weather,onChange:I=>A("weather",I)});case"meshmonitor":return x.jsx(BJe,{data:e.meshmonitor,onChange:I=>A("meshmonitor",I)});case"knowledge":return x.jsx(zJe,{data:e.knowledge,onChange:I=>A("knowledge",I)});case"mesh_sources":return x.jsx(FJe,{data:e.mesh_sources,onChange:I=>A("mesh_sources",I)});case"mesh_intelligence":return x.jsx(VJe,{data:e.mesh_intelligence,onChange:I=>A("mesh_intelligence",I)});case"environmental":return x.jsx(GJe,{data:e.environmental,onChange:I=>A("environmental",I)});case"dashboard":return x.jsx(WJe,{data:e.dashboard,onChange:I=>A("dashboard",I)});default:return null}},P=((k=BU.find(I=>I.key===i))==null?void 0:k.label)||i;return x.jsxs("div",{className:"flex gap-6 h-[calc(100vh-8rem)]",children:[x.jsx("div",{className:"w-48 flex-shrink-0 space-y-1",children:BU.map(({key:I,label:O,icon:D})=>x.jsxs("button",{onClick:()=>a(I),className:`w-full flex items-center gap-2 px-3 py-2 rounded text-sm transition-colors ${i===I?"bg-accent text-white":"text-slate-400 hover:text-slate-200 hover:bg-bg-hover"}`,children:[x.jsx(D,{size:16}),x.jsx("span",{children:O}),m&&i===I&&x.jsx("span",{className:"ml-auto w-2 h-2 bg-amber-500 rounded-full"})]},I))}),x.jsxs("div",{className:"flex-1 flex flex-col min-w-0",children:[x.jsxs("div",{className:"flex items-center justify-between mb-6",children:[x.jsxs("div",{className:"flex items-center gap-3",children:[x.jsx(AZ,{size:20,className:"text-slate-500"}),x.jsx("h2",{className:"text-lg font-semibold text-slate-200",children:P})]}),x.jsxs("div",{className:"flex items-center gap-2",children:[m&&x.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:[x.jsx(SZ,{size:14}),"Discard"]}),x.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?x.jsx(wZ,{size:14,className:"animate-spin"}):x.jsx(TZ,{size:14}),"Save"]})]})]}),v&&x.jsxs("div",{className:"flex items-center justify-between p-3 mb-4 bg-amber-500/10 border border-amber-500/30 rounded-lg",children:[x.jsxs("div",{className:"flex items-center gap-2 text-amber-400",children:[x.jsx(Ds,{size:16}),x.jsx("span",{className:"text-sm",children:"Restart required for changes to take effect"})]}),x.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&&x.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:[x.jsx(Xc,{size:16}),x.jsx("span",{className:"text-sm",children:c})]}),h&&x.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:[x.jsx(yd,{size:16}),x.jsx("span",{className:"text-sm",children:h})]}),x.jsx("div",{className:"flex-1 overflow-y-auto pr-2",children:x.jsx("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:M()})})]})]})}const zU={infra_offline:ice,infra_recovery:MZ,battery_warning:tC,battery_critical:tC,battery_emergency:tC,hf_blackout:Sm,uhf_ducting:tu,weather_warning:Yc,weather_watch:Yc,new_router:tu,packet_flood:Ds,sustained_high_util:Ds,region_blackout:Uy,default:_m};function UJe(e){return zU[e]||zU.default}function Vie(e){switch(e==null?void 0:e.toLowerCase()){case"critical":case"emergency":return{bg:"bg-red-500/10",border:"border-red-500",badge:"bg-red-500/20 text-red-400",iconColor:"text-red-500"};case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",badge:"bg-amber-500/20 text-amber-400",iconColor:"text-amber-500"};case"watch":return{bg:"bg-yellow-500/10",border:"border-yellow-500",badge:"bg-yellow-500/20 text-yellow-400",iconColor:"text-yellow-500"};case"advisory":case"info":default:return{bg:"bg-blue-500/10",border:"border-blue-500",badge:"bg-blue-500/20 text-blue-400",iconColor:"text-blue-500"}}}function ZJe(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 YJe(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 XJe(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 qJe({alert:e,onAcknowledge:t}){var i;const r=Vie(e.severity),n=UJe(e.type);return x.jsx("div",{className:`p-4 rounded-lg ${r.bg} border-l-4 ${r.border}`,children:x.jsxs("div",{className:"flex items-start gap-3",children:[x.jsx(n,{size:20,className:r.iconColor}),x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[x.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full ${r.badge}`,children:(i=e.severity)==null?void 0:i.toUpperCase()}),x.jsx("span",{className:"text-xs text-slate-500",children:e.type})]}),x.jsx("div",{className:"text-sm text-slate-200",children:e.message}),x.jsxs("div",{className:"flex items-center gap-4 mt-2 text-xs text-slate-500",children:[x.jsxs("span",{className:"flex items-center gap-1",children:[x.jsx(xd,{size:12}),e.timestamp?ZJe(e.timestamp):"Just now"]}),e.scope_value&&x.jsxs("span",{children:[e.scope_type,": ",e.scope_value]})]})]}),x.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 KJe({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","critical","warning","watch","info"];return x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg",children:[x.jsxs("div",{className:"p-4 border-b border-border flex items-center gap-4",children:[x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx(FE,{size:14,className:"text-slate-400"}),x.jsx("span",{className:"text-sm text-slate-400",children:"Filter:"})]}),x.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=>x.jsx("option",{value:c,children:c==="all"?"All Types":c.replace(/_/g," ")},c))}),x.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=>x.jsx("option",{value:c,children:c==="all"?"All Severities":c.charAt(0).toUpperCase()+c.slice(1)},c))})]}),x.jsx("div",{className:"overflow-x-auto",children:x.jsxs("table",{className:"w-full",children:[x.jsx("thead",{children:x.jsxs("tr",{className:"border-b border-border",children:[x.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Time"}),x.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Type"}),x.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Severity"}),x.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Message"}),x.jsx("th",{className:"text-left text-xs font-medium text-slate-400 p-4",children:"Duration"})]})}),x.jsx("tbody",{children:e.length>0?e.map((c,f)=>{const h=Vie(c.severity);return x.jsxs("tr",{className:"border-b border-border hover:bg-bg-hover",children:[x.jsx("td",{className:"p-4 text-sm text-slate-400 font-mono whitespace-nowrap",children:YJe(c.timestamp)}),x.jsx("td",{className:"p-4 text-sm text-slate-300",children:c.type.replace(/_/g," ")}),x.jsx("td",{className:"p-4",children:x.jsx("span",{className:`text-xs px-2 py-0.5 rounded-full ${h.badge}`,children:c.severity})}),x.jsx("td",{className:"p-4 text-sm text-slate-200 max-w-md truncate",children:c.message}),x.jsx("td",{className:"p-4 text-sm text-slate-400 font-mono",children:c.duration?XJe(c.duration):"-"})]},c.id||f)}):x.jsx("tr",{children:x.jsx("td",{colSpan:5,className:"p-8 text-center text-slate-500",children:"No alert history available"})})})]})}),o>1&&x.jsxs("div",{className:"p-4 border-t border-border flex items-center justify-between",children:[x.jsxs("span",{className:"text-sm text-slate-400",children:["Page ",a," of ",o]}),x.jsxs("div",{className:"flex items-center gap-2",children:[x.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:x.jsx(Uue,{size:16})}),x.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:x.jsx(bm,{size:16})})]})]})]})}function QJe({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 _m;case"daily":return xd;case"weekly":return xd;default:return _m}})();return x.jsx("div",{className:"p-4 rounded-lg bg-bg-hover border border-border",children:x.jsxs("div",{className:"flex items-center gap-3",children:[x.jsx("div",{className:"w-10 h-10 rounded-lg bg-blue-500/10 flex items-center justify-center",children:x.jsx(a,{size:18,className:"text-blue-400"})}),x.jsxs("div",{className:"flex-1",children:[x.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&&x.jsxs("span",{className:"text-slate-400 font-normal ml-2",children:["(",e.scope_type,": ",e.scope_value,")"]})]}),x.jsxs("div",{className:"text-xs text-slate-500 mt-0.5",children:[n()," • ",r(e.user_id)]})]}),x.jsx("div",{className:`w-2 h-2 rounded-full ${e.enabled?"bg-green-500":"bg-slate-500"}`})]})})}function JJe(){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,y]=H.useState(1),[_,b]=H.useState(1),S=20,[T,A]=H.useState(new Set),{lastAlert:M}=ZE();H.useEffect(()=>{document.title="Alerts — MeshAI"},[]),H.useEffect(()=>{Promise.all([PZ().catch(()=>[]),u3(S,0).catch(()=>({items:[],total:0})),uce().catch(()=>[]),fetch("/api/nodes").then(I=>I.json()).catch(()=>[])]).then(([I,O,D,N])=>{t(I),Array.isArray(O)?(n(O),b(1)):(n(O.items||[]),b(Math.ceil((O.total||0)/S))),a(D),s(N),u(!1)}).catch(I=>{f(I.message),u(!1)})},[]),H.useEffect(()=>{M&&t(I=>I.some(D=>D.type===M.type&&D.message===M.message)?I:[M,...I])},[M]),H.useEffect(()=>{const I=(m-1)*S;u3(S,I,h,v).then(O=>{Array.isArray(O)?(n(O),b(1)):(n(O.items||[]),b(Math.ceil((O.total||0)/S)))}).catch(()=>{})},[m,h,v]);const P=H.useCallback(I=>{const O=`${I.type}-${I.message}-${I.timestamp}`;A(D=>new Set([...D,O]))},[]),k=e.filter(I=>{const O=`${I.type}-${I.message}-${I.timestamp}`;return!T.has(O)});return l?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-slate-400",children:"Loading alerts..."})}):c?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsxs("div",{className:"text-red-400",children:["Error: ",c]})}):x.jsxs("div",{className:"space-y-6",children:[x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(Ds,{size:14}),"Active Alerts (",k.length,")"]}),k.length>0?x.jsx("div",{className:"space-y-3",children:k.map((I,O)=>x.jsx(qJe,{alert:I,onAcknowledge:P},`${I.type}-${I.timestamp}-${O}`))}):x.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-8",children:[x.jsx(Jh,{size:20,className:"text-green-500"}),x.jsx("span",{children:"No active alerts — all systems nominal"})]})]}),x.jsxs("div",{children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(xd,{size:14}),"Alert History"]}),x.jsx(KJe,{history:r,typeFilter:h,severityFilter:v,onTypeFilterChange:I=>{d(I),y(1)},onSeverityFilterChange:I=>{g(I),y(1)},page:m,totalPages:_,onPageChange:y})]}),x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6",children:[x.jsxs("h2",{className:"text-sm font-medium text-slate-400 mb-4 flex items-center gap-2",children:[x.jsx(nce,{size:14}),"Mesh Subscriptions (",i.length,")"]}),i.length>0?x.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-3",children:i.map(I=>x.jsx(QJe,{subscription:I,nodes:o},I.id))}):x.jsxs("div",{className:"text-slate-500 py-4",children:[x.jsx("p",{children:"No active subscriptions."}),x.jsxs("p",{className:"text-xs mt-2",children:["Manage subscriptions via ",x.jsx("code",{className:"text-blue-400",children:"!subscribe"})," on mesh"]})]})]})]})}const gb=[{value:"info",label:"Info",description:"Routine updates (ducting detected, new router appeared)"},{value:"advisory",label:"Advisory",description:"Worth knowing (weather advisory, traffic slow, battery declining)"},{value:"watch",label:"Watch",description:"Pay attention (fire within 50km, weather watch, stream rising)"},{value:"warning",label:"Warning",description:"Act now (fire within 25km, severe weather, critical battery)"},{value:"critical",label:"Critical",description:"Serious issue (critical node down, battery emergency)"},{value:"emergency",label:"Emergency",description:"Life safety (extreme weather, fire at infrastructure, total blackout)"}],$U=[{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:"advisory",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:30,override_quiet:!1,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:"warning",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:15,override_quiet:!1,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:"info",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:60,override_quiet:!1,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:"warning",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:30,override_quiet:!1,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:"emergency",delivery_type:"mesh_broadcast",broadcast_channel:0,cooldown_minutes:5,override_quiet:!0,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:"info",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,override_quiet:!1,node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}}];function No({info:e}){const[t,r]=H.useState(!1);return x.jsxs("div",{className:"relative inline-block",children:[x.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&&x.jsxs(x.Fragment,{children:[x.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>r(!1)}),x.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 yh({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 x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,o&&x.jsx(No,{info:o})]}),x.jsxs("div",{className:"relative",children:[x.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&&x.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?x.jsx(yZ,{size:16}):x.jsx($E,{size:16})})]}),a&&x.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function FU({label:e,value:t,onChange:r,min:n,max:i,step:a=1,helper:o="",info:s=""}){return x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,s&&x.jsx(No,{info:s})]}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:o})]})}function rS({label:e,checked:t,onChange:r,helper:n="",info:i=""}){return x.jsxs("div",{className:"flex items-center justify-between py-2",children:[x.jsxs("div",{children:[x.jsxs("span",{className:"flex items-center text-sm text-slate-300",children:[e,i&&x.jsx(No,{info:i})]}),n&&x.jsx("p",{className:"text-xs text-slate-600",children:n})]}),x.jsx("button",{type:"button",onClick:()=>r(!t),className:`relative w-11 h-6 rounded-full transition-colors ${t?"bg-accent":"bg-[#1e2a3a]"}`,children:x.jsx("span",{className:`absolute top-1 left-1 w-4 h-4 rounded-full bg-white transition-transform ${t?"translate-x-5":""}`})})]})}function nS({label:e,value:t,onChange:r,helper:n="",info:i=""}){return x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,i&&x.jsx(No,{info:i})]}),x.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&&x.jsx("p",{className:"text-xs text-slate-600",children:n})]})}function eet({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 x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:[e,a&&x.jsx(No,{info:a})]}),x.jsxs("div",{className:"flex gap-2",children:[x.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}),x.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:x.jsx(bS,{size:16})})]}),t.length>0&&x.jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:t.map((c,f)=>x.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-1 bg-[#1e2a3a] rounded text-sm text-slate-300",children:[c,x.jsx("button",{type:"button",onClick:()=>u(f),className:"text-slate-500 hover:text-red-400",children:x.jsx(Xc,{size:14})})]},f))}),i&&x.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function tet({value:e,onChange:t}){const[r,n]=H.useState(!1),i=gb.find(a=>a.value===e)||gb[3];return x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Severity Threshold",x.jsx(No,{info:"Only alerts at or above this severity trigger this rule. Lower threshold = more notifications. 'Warning' is recommended for most rules."})]}),x.jsxs("div",{className:"relative",children:[x.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:[x.jsxs("div",{children:[x.jsx("span",{className:"text-slate-200",children:i.label}),x.jsxs("span",{className:"text-slate-500 ml-2",children:["— ",i.description]})]}),x.jsx(Hy,{size:16,className:`text-slate-500 transition-transform ${r?"rotate-180":""}`})]}),r&&x.jsxs(x.Fragment,{children:[x.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>n(!1)}),x.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:gb.map(a=>x.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:[x.jsx("div",{className:"font-medium text-slate-200",children:a.label}),x.jsx("div",{className:"text-xs text-slate-500",children:a.description})]},a.value))})]})]}),x.jsx("p",{className:"text-xs text-slate-600",children:'Lower = more notifications. "Warning" recommended for most rules.'})]})}function ret({rule:e,categories:t,quietHoursEnabled:r,onChange:n,onDelete:i,onDuplicate:a,onTest:o}){var S,T,A,M;const[s,l]=H.useState(!e.name),[u,c]=H.useState(!1),f=[{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"}],h=[{value:"daily",label:"Daily"},{value:"twice_daily",label:"Twice Daily"},{value:"weekly",label:"Weekly"}],d=[{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"}],v=["monday","tuesday","wednesday","thursday","friday","saturday","sunday"],g=P=>{const k=e.categories||[];k.includes(P)?n({...e,categories:k.filter(I=>I!==P)}):n({...e,categories:[...k,P]})},m=P=>{const k=e.schedule_days||[];k.includes(P)?n({...e,schedule_days:k.filter(I=>I!==P)}):n({...e,schedule_days:[...k,P]})},y=async()=>{c(!0),await o(),c(!1)},_=()=>{if(e.trigger_type==="schedule")return"[Scheduled report preview would appear here]";const P=e.categories||[];if(P.length===0&&t.length>0)return t[0].example_message||"Alert notification";const k=t.find(I=>P.includes(I.id));return(k==null?void 0:k.example_message)||"Alert notification"},b=()=>{var k,I,O,D,N,B,F,$;const P=[];if(e.trigger_type==="schedule"){const U=((k=h.find(V=>V.value===e.schedule_frequency))==null?void 0:k.label)||e.schedule_frequency,z=((I=d.find(V=>V.value===e.message_type))==null?void 0:I.label)||e.message_type;P.push(`${U} at ${e.schedule_time||"??:??"}`),P.push(z)}else{const U=((O=e.categories)==null?void 0:O.length)||0,z=U===0?"All":t.filter(W=>{var Y;return(Y=e.categories)==null?void 0:Y.includes(W.id)}).map(W=>W.name).slice(0,2).join(", ")+(U>2?` +${U-2}`:""),V=((D=gb.find(W=>W.value===e.min_severity))==null?void 0:D.label)||e.min_severity;P.push(`${z} at ${V}+`)}if(!e.delivery_type)P.push("⚠️ No delivery");else{const U=((N=f.find(V=>V.value===e.delivery_type))==null?void 0:N.label)||e.delivery_type;let z="";if(e.delivery_type==="mesh_broadcast")z=`Ch ${e.broadcast_channel}`;else if(e.delivery_type==="mesh_dm")z=`${((B=e.node_ids)==null?void 0:B.length)||0} nodes`;else if(e.delivery_type==="email")z=(F=e.recipients)!=null&&F.length?e.recipients[0]+(e.recipients.length>1?` +${e.recipients.length-1}`:""):"no recipients";else if(e.delivery_type==="webhook")try{z=new URL(e.webhook_url).hostname}catch{z=(($=e.webhook_url)==null?void 0:$.slice(0,20))||"no URL"}P.push(`${U}${z?` (${z})`:""}`)}return P.join(" → ")};return x.jsxs("div",{className:`border rounded-lg overflow-hidden ${e.enabled?"border-[#1e2a3a]":"border-slate-700 opacity-60"}`,children:[x.jsxs("div",{className:"flex items-center justify-between p-3 bg-[#0a0e17] cursor-pointer",onClick:()=>l(!s),children:[x.jsxs("div",{className:"flex items-center gap-3 min-w-0 flex-1",children:[s?x.jsx(Hy,{size:16,className:"text-slate-500 flex-shrink-0"}):x.jsx(bm,{size:16,className:"text-slate-500 flex-shrink-0"}),x.jsx("button",{onClick:P=>{P.stopPropagation(),n({...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"?x.jsx(xd,{size:14,className:"text-blue-400 flex-shrink-0"}):x.jsx(Sm,{size:14,className:"text-yellow-400 flex-shrink-0"}),x.jsx("span",{className:"font-medium text-slate-200 truncate",children:e.name||"New Rule"}),!s&&x.jsx("span",{className:`text-xs truncate hidden sm:block ${e.delivery_type?"text-slate-500":"text-amber-400"}`,children:b()})]}),x.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[x.jsx("button",{onClick:P=>{P.stopPropagation(),y()},disabled:u||!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:x.jsx(o3,{size:14})}),x.jsx("button",{onClick:P=>{P.stopPropagation(),a()},className:"p-1.5 text-slate-400 hover:text-slate-200 hover:bg-slate-500/10 rounded",title:"Duplicate",children:x.jsx(que,{size:14})}),x.jsx("button",{onClick:P=>{P.stopPropagation(),i()},className:"p-1.5 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",title:"Delete",children:x.jsx(UE,{size:14})})]})]}),s&&x.jsxs("div",{className:"p-4 space-y-6 border-t border-[#1e2a3a]",children:[x.jsx(yh,{label:"Rule Name",value:e.name,onChange:P=>n({...e,name:P}),placeholder:"e.g., Emergency Broadcast, Daily Health Report",helper:"A descriptive name for this rule"}),x.jsxs("div",{className:"space-y-2",children:[x.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Trigger Type"}),x.jsxs("div",{className:"flex gap-2",children:[x.jsxs("button",{type:"button",onClick:()=>n({...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:[x.jsx(Sm,{size:16}),x.jsx("span",{children:"Condition"})]}),x.jsxs("button",{type:"button",onClick:()=>n({...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:[x.jsx(xd,{size:16}),x.jsx("span",{children:"Schedule"})]})]}),x.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"&&x.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[x.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[x.jsx(Ds,{size:14}),"WHEN (Condition)"]}),x.jsx(tet,{value:e.min_severity,onChange:P=>n({...e,min_severity:P})}),x.jsxs("div",{className:"space-y-2",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Alert Categories",x.jsx(No,{info:"Select which types of alerts trigger this rule. Leave all unchecked to match ALL categories."})]}),x.jsx("div",{className:"text-xs text-slate-500 mb-2",children:(((S=e.categories)==null?void 0:S.length)||0)===0?"All categories (none selected)":`${(T=e.categories)==null?void 0:T.length} selected`}),x.jsx("div",{className:"max-h-48 overflow-y-auto border border-[#1e2a3a] rounded-lg p-2 space-y-1",children:t.map(P=>{var k,I;return x.jsxs("label",{onClick:()=>g(P.id),className:"flex items-start gap-2 p-2 rounded hover:bg-[#1e2a3a]/50 cursor-pointer",children:[x.jsx("div",{className:`w-4 h-4 mt-0.5 rounded border flex items-center justify-center flex-shrink-0 ${(k=e.categories)!=null&&k.includes(P.id)?"bg-accent border-accent":"border-slate-600"}`,children:((I=e.categories)==null?void 0:I.includes(P.id))&&x.jsx(yd,{size:12,className:"text-white"})}),x.jsxs("div",{className:"flex-1 min-w-0",children:[x.jsx("div",{className:"text-sm text-slate-200",children:P.name}),x.jsx("div",{className:"text-xs text-slate-500",children:P.description})]})]},P.id)})})]})]}),e.trigger_type==="schedule"&&x.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[x.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[x.jsx(Hue,{size:14}),"WHEN (Schedule)"]}),x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Frequency"}),x.jsx("select",{value:e.schedule_frequency||"daily",onChange:P=>n({...e,schedule_frequency:P.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:h.map(P=>x.jsx("option",{value:P.value,children:P.label},P.value))})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(nS,{label:"Time",value:e.schedule_time||"07:00",onChange:P=>n({...e,schedule_time:P})}),e.schedule_frequency==="twice_daily"&&x.jsx(nS,{label:"Second Time",value:e.schedule_time_2||"19:00",onChange:P=>n({...e,schedule_time_2:P})})]}),e.schedule_frequency==="weekly"&&x.jsxs("div",{className:"space-y-2",children:[x.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Days"}),x.jsx("div",{className:"flex flex-wrap gap-2",children:v.map(P=>{var k;return x.jsx("button",{type:"button",onClick:()=>m(P),className:`px-3 py-1.5 rounded text-sm capitalize transition-colors ${(k=e.schedule_days)!=null&&k.includes(P)?"bg-accent text-white":"bg-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:P.slice(0,3)},P)})})]}),x.jsxs("div",{className:"space-y-1",children:[x.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Report Type"}),x.jsx("select",{value:e.message_type||"mesh_health_summary",onChange:P=>n({...e,message_type:P.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:d.map(P=>x.jsx("option",{value:P.value,children:P.label},P.value))}),x.jsx("p",{className:"text-xs text-slate-600",children:(A=d.find(P=>P.value===e.message_type))==null?void 0:A.description})]}),e.message_type==="custom"&&x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Custom Message",x.jsx(No,{info:"Available tokens: {MESH_SCORE}, {NODE_COUNT}, {NODES_ONLINE}, {ACTIVE_ALERTS}, {KP}, {SFI}, {DATE}, {TIME}"})]}),x.jsx("textarea",{value:e.custom_message||"",onChange:P=>n({...e,custom_message:P.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"})]})]}),x.jsxs("div",{className:"space-y-4 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[x.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium text-slate-300",children:[x.jsx(o3,{size:14}),"SEND VIA"]}),x.jsxs("div",{className:"space-y-1",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Delivery Method",x.jsx(No,{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."})]}),x.jsx("select",{value:e.delivery_type||"",onChange:P=>n({...e,delivery_type:P.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:f.map(P=>x.jsx("option",{value:P.value,children:P.label},P.value))}),x.jsx("p",{className:"text-xs text-slate-600",children:(M=f.find(P=>P.value===(e.delivery_type||"")))==null?void 0:M.description})]}),!e.delivery_type&&x.jsxs("div",{className:"flex items-start gap-2 p-3 bg-amber-500/10 border border-amber-500/20 rounded-lg",children:[x.jsx(Uy,{size:16,className:"text-amber-400 mt-0.5 flex-shrink-0"}),x.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"&&x.jsx(RR,{label:"Broadcast Channel",value:e.broadcast_channel??0,onChange:P=>n({...e,broadcast_channel:P}),helper:"Select the mesh radio channel",mode:"single"}),e.delivery_type==="mesh_dm"&&x.jsx(jR,{label:"Recipient Nodes",value:e.node_ids||[],onChange:P=>n({...e,node_ids:P}),helper:"Nodes that receive direct messages",valueType:"node_id_hex"}),e.delivery_type==="email"&&x.jsxs("div",{className:"space-y-4",children:[x.jsx(eet,{label:"Recipients",value:e.recipients||[],onChange:P=>n({...e,recipients:P}),placeholder:"email@example.com",helper:"Email addresses to receive alerts"}),x.jsxs("details",{className:"group",children:[x.jsxs("summary",{className:"flex items-center gap-2 cursor-pointer text-sm text-slate-400 hover:text-slate-200",children:[x.jsx(bm,{size:14,className:"group-open:rotate-90 transition-transform"}),"SMTP Configuration"]}),x.jsxs("div",{className:"mt-4 space-y-4 pl-6 border-l border-[#1e2a3a]",children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(yh,{label:"SMTP Host",value:e.smtp_host||"",onChange:P=>n({...e,smtp_host:P}),placeholder:"smtp.gmail.com"}),x.jsx(FU,{label:"SMTP Port",value:e.smtp_port??587,onChange:P=>n({...e,smtp_port:P}),min:1,max:65535})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(yh,{label:"Username",value:e.smtp_user||"",onChange:P=>n({...e,smtp_user:P})}),x.jsx(yh,{label:"Password",value:e.smtp_password||"",onChange:P=>n({...e,smtp_password:P}),type:"password",info:"Gmail users: use an App Password from myaccount.google.com/apppasswords"})]}),x.jsx(rS,{label:"Use TLS",checked:e.smtp_tls??!0,onChange:P=>n({...e,smtp_tls:P})}),x.jsx(yh,{label:"From Address",value:e.from_address||"",onChange:P=>n({...e,from_address:P}),placeholder:"alerts@yourdomain.com"})]})]})]}),e.delivery_type==="webhook"&&x.jsx(yh,{label:"Webhook URL",value:e.webhook_url||"",onChange:P=>n({...e,webhook_url:P}),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."})]}),x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(FU,{label:"Cooldown (minutes)",value:e.cooldown_minutes??10,onChange:P=>n({...e,cooldown_minutes:P}),min:0,helper:"Min time between repeat sends",info:"Prevents alert spam. Same condition won't re-trigger this rule within this window."}),r&&x.jsx("div",{className:"flex items-end pb-1",children:x.jsx(rS,{label:"Override Quiet Hours",checked:e.override_quiet??!1,onChange:P=>n({...e,override_quiet:P}),helper:"Deliver during quiet hours"})})]}),e.trigger_type!=="schedule"&&x.jsxs("div",{className:"space-y-2",children:[x.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Example Message"}),x.jsx("div",{className:"p-3 bg-[#1e2a3a]/50 rounded-lg border border-[#1e2a3a]",children:x.jsx("p",{className:"text-sm text-slate-300 font-mono",children:_()})}),x.jsx("p",{className:"text-xs text-slate-600",children:"This is an example of what this rule would send."})]})]})]})}function net(){var $,U,z;const[e,t]=H.useState(null),[r,n]=H.useState(null),[i,a]=H.useState([]),[o,s]=H.useState(!0),[l,u]=H.useState(!1),[c,f]=H.useState(null),[h,d]=H.useState(null),[v,g]=H.useState(null),[m,y]=H.useState({open:!1,ruleIndex:-1,loading:!1}),[_,b]=H.useState(!1),[S,T]=H.useState(!1),A=H.useCallback(async()=>{try{const[V,W]=await Promise.all([fetch("/api/config/notifications"),fetch("/api/notifications/categories")]);if(!V.ok)throw new Error("Failed to fetch notifications config");const Y=await V.json(),Z=await W.json();t(Y),n(JSON.parse(JSON.stringify(Y))),a(Z),T(!1),f(null)}catch(V){f(V instanceof Error?V.message:"Unknown error")}finally{s(!1)}},[]);H.useEffect(()=>{document.title="Notifications — MeshAI",A()},[A]),H.useEffect(()=>{e&&r&&T(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const M=async()=>{if(e){u(!0),f(null),d(null);try{const V=await fetch("/api/config/notifications",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),W=await V.json();if(!V.ok)throw new Error(W.detail||"Save failed");d("Notifications config saved successfully"),n(JSON.parse(JSON.stringify(e))),T(!1),setTimeout(()=>d(null),3e3)}catch(V){f(V instanceof Error?V.message:"Save failed")}finally{u(!1)}}},P=()=>{r&&(t(JSON.parse(JSON.stringify(r))),T(!1))},k=()=>({name:"",enabled:!0,trigger_type:"condition",categories:[],min_severity:"warning",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,override_quiet:!1}),I=()=>{e&&t({...e,rules:[...e.rules||[],k()]})},O=V=>{if(!e)return;const W=$U.find(Y=>Y.id===V);W&&(t({...e,rules:[...e.rules||[],{...W.rule}]}),b(!1))},D=V=>{if(!e)return;const W=e.rules[V],Y={...JSON.parse(JSON.stringify(W)),name:`${W.name} (copy)`},Z=[...e.rules];Z.splice(V+1,0,Y),t({...e,rules:Z})},N=async V=>{y({open:!0,ruleIndex:V,loading:!0});try{const Y=await(await fetch(`/api/notifications/rules/${V}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({send:!1})})).json();g(Y),y(Z=>({...Z,loading:!1}))}catch{g({success:!1,message:"Failed to get preview"}),y(W=>({...W,loading:!1}))}},B=async()=>{const V=m.ruleIndex;y(W=>({...W,loading:!0}));try{const Y=await(await fetch(`/api/notifications/rules/${V}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({send:!0})})).json();g(Y),y(Z=>({...Z,loading:!1}))}catch{g({success:!1,message:"Failed to send test"}),y(W=>({...W,loading:!1}))}},F=()=>{y({open:!1,ruleIndex:-1,loading:!1}),g(null)};return o?x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-slate-400",children:"Loading notifications config..."})}):e?x.jsxs("div",{className:"max-w-4xl mx-auto space-y-6",children:[m.open&&x.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/50",children:x.jsxs("div",{className:"bg-[#1a2332] border border-[#2a3a4a] rounded-lg shadow-xl max-w-lg w-full mx-4 max-h-[80vh] overflow-auto",children:[x.jsxs("div",{className:"p-4 border-b border-[#2a3a4a] flex items-center justify-between",children:[x.jsx("h3",{className:"text-lg font-semibold",children:"Test Notification Rule"}),x.jsx("button",{onClick:F,className:"text-slate-500 hover:text-slate-300",children:x.jsx(Xc,{size:20})})]}),x.jsx("div",{className:"p-4 space-y-4",children:m.loading?x.jsx("div",{className:"flex items-center justify-center py-8",children:x.jsx("div",{className:"text-slate-400",children:"Checking conditions..."})}):v?x.jsxs(x.Fragment,{children:[x.jsx("div",{className:"flex items-center gap-2",children:v.conditions_matched&&v.conditions_matched>0?x.jsxs("span",{className:"px-2 py-1 bg-green-500/20 text-green-400 rounded text-sm",children:[v.conditions_matched," condition",v.conditions_matched!==1?"s":""," match"]}):x.jsx("span",{className:"px-2 py-1 bg-yellow-500/20 text-yellow-400 rounded text-sm",children:"No current matches — showing examples"})}),x.jsxs("div",{className:"space-y-2",children:[x.jsx("div",{className:"text-sm text-slate-500",children:v.is_example?"Example messages:":"Current alerts that would fire:"}),($=v.preview_messages)==null?void 0:$.map((V,W)=>x.jsx("div",{className:"p-3 bg-slate-800 rounded text-sm font-mono break-words",children:V},W))]}),v.delivered&&x.jsxs("div",{className:"p-3 bg-green-500/10 border border-green-500/30 rounded text-green-400 text-sm",children:["✓ ",v.delivery_result]}),v.message&&!v.preview_messages&&x.jsx("div",{className:`p-3 rounded text-sm ${v.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,children:v.message})]}):null}),x.jsxs("div",{className:"p-4 border-t border-[#2a3a4a] flex justify-end gap-2",children:[x.jsx("button",{onClick:F,className:"px-4 py-2 text-slate-400 hover:text-slate-200",children:"Close"}),v&&!v.delivered&&v.delivery_method&&x.jsx("button",{onClick:B,disabled:m.loading,className:"px-4 py-2 bg-accent hover:bg-accent/80 rounded disabled:opacity-50",children:m.loading?"Sending...":"Send Test"})]})]})}),x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsx("div",{children:x.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."})}),x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx("button",{onClick:A,className:"p-2 text-slate-400 hover:text-slate-200 hover:bg-bg-hover rounded transition-colors",title:"Refresh",children:x.jsx(wZ,{size:18})}),x.jsxs("button",{onClick:P,disabled:!S,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:[x.jsx(SZ,{size:16}),"Discard"]}),x.jsxs("button",{onClick:M,disabled:l||!S,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:[x.jsx(TZ,{size:16}),l?"Saving...":"Save"]})]})]}),c&&x.jsx("div",{className:"p-3 rounded-lg text-sm bg-red-500/10 text-red-400 border border-red-500/20",children:c}),h&&x.jsxs("div",{className:"p-3 rounded-lg text-sm bg-green-500/10 text-green-400 border border-green-500/20",children:[x.jsx(yd,{size:14,className:"inline mr-2"}),h]}),v&&x.jsxs("div",{className:`p-3 rounded-lg text-sm ${v.success?"bg-green-500/10 text-green-400 border border-green-500/20":"bg-red-500/10 text-red-400 border border-red-500/20"}`,children:[v.success?x.jsx(yd,{size:14,className:"inline mr-2"}):x.jsx(Xc,{size:14,className:"inline mr-2"}),v.message]}),x.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6 space-y-6",children:[x.jsx(rS,{label:"Enable Notifications",checked:e.enabled,onChange:V=>t({...e,enabled:V}),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&&x.jsxs(x.Fragment,{children:[x.jsxs("div",{className:"space-y-3 p-4 bg-[#0a0e17] rounded-lg border border-[#1e2a3a]",children:[x.jsxs("div",{className:"flex items-center gap-2",children:[x.jsx(ece,{size:14,className:"text-slate-400"}),x.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Quiet Hours"})]}),x.jsx(rS,{label:"Enable Quiet Hours",checked:e.quiet_hours_enabled??!0,onChange:V=>t({...e,quiet_hours_enabled:V}),helper:"Suppress non-emergency alerts during sleeping hours",info:"When enabled, alerts below emergency severity are held during quiet hours. When disabled, all alerts deliver anytime."}),e.quiet_hours_enabled&&x.jsxs(x.Fragment,{children:[x.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[x.jsx(nS,{label:"Start Time",value:e.quiet_hours_start||"22:00",onChange:V=>t({...e,quiet_hours_start:V}),helper:"When quiet hours begin"}),x.jsx(nS,{label:"End Time",value:e.quiet_hours_end||"06:00",onChange:V=>t({...e,quiet_hours_end:V}),helper:"When quiet hours end"})]}),x.jsx("p",{className:"text-xs text-slate-600",children:'Emergency alerts and rules with "Override Quiet Hours" enabled always deliver.'})]})]}),x.jsxs("div",{className:"space-y-3",children:[x.jsxs("div",{className:"flex items-center justify-between",children:[x.jsxs("label",{className:"flex items-center text-xs text-slate-500 uppercase tracking-wide",children:["Notification Rules",x.jsx(No,{info:"Each rule is self-contained: define what triggers it (condition or schedule), where to send it (mesh, email, webhook), and behavior settings."})]}),x.jsxs("span",{className:"text-xs text-slate-500",children:[((U=e.rules)==null?void 0:U.length)||0," rule",(((z=e.rules)==null?void 0:z.length)||0)!==1?"s":""]})]}),(e.rules||[]).map((V,W)=>x.jsx(ret,{rule:V,categories:i,quietHoursEnabled:e.quiet_hours_enabled??!0,onChange:Y=>{const Z=[...e.rules||[]];Z[W]=Y,t({...e,rules:Z})},onDelete:()=>{confirm(`Delete rule "${V.name||"New Rule"}"?`)&&t({...e,rules:(e.rules||[]).filter((Y,Z)=>Z!==W)})},onDuplicate:()=>D(W),onTest:()=>N(W)},W)),x.jsxs("div",{className:"flex gap-2",children:[x.jsxs("button",{onClick:I,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:[x.jsx(bS,{size:16})," Add Rule"]}),x.jsxs("div",{className:"relative",children:[x.jsxs("button",{onClick:()=>b(!_),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:[x.jsx(xZ,{size:16})," Add from Template"]}),_&&x.jsxs(x.Fragment,{children:[x.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>b(!1)}),x.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:[x.jsx("div",{className:"p-2 border-b border-[#2a3a4a] text-xs text-slate-500 uppercase",children:"Rule Templates"}),$U.map(V=>x.jsxs("button",{onClick:()=>O(V.id),className:"w-full p-3 text-left hover:bg-[#2a3a4a] transition-colors",children:[x.jsx("div",{className:"font-medium text-slate-200",children:V.name}),x.jsx("div",{className:"text-xs text-slate-500 mt-0.5",children:V.description})]},V.id))]})]})]})]})]})]})]})]}):x.jsx("div",{className:"flex items-center justify-center h-64",children:x.jsx("div",{className:"text-red-400",children:"Failed to load notifications config"})})}const VU=[{id:"stream-gauges",label:"Stream Gauges",icon:zE},{id:"wildfire",label:"Wildfire",icon:VE},{id:"firms",label:"Satellite Fire Detection (FIRMS)",icon:WE},{id:"weather-alerts",label:"Weather Alerts",icon:Yue},{id:"solar",label:"Solar & Geomagnetic",icon:Vb},{id:"ducting",label:"Tropospheric Ducting",icon:tu},{id:"avalanche",label:"Avalanche Danger",icon:GE},{id:"traffic",label:"Traffic Flow",icon:BE},{id:"roads-511",label:"Road Conditions (511)",icon:gZ},{id:"mesh-health",label:"Mesh Health",icon:Wy},{id:"notifications",label:"Notifications",icon:_m},{id:"commands",label:"Commands",icon:CZ},{id:"api",label:"API Reference",icon:Xue}];function ar({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 x.jsx("span",{className:`inline-block w-3 h-3 rounded-full ${t[e]}`})}function Rt({headers:e,rows:t}){return x.jsx("div",{className:"overflow-x-auto my-4",children:x.jsxs("table",{className:"w-full text-sm",children:[x.jsx("thead",{children:x.jsx("tr",{className:"bg-[#1a2332] border-b border-[#2a3a4a]",children:e.map((r,n)=>x.jsx("th",{className:"px-4 py-2 text-left text-slate-400 font-medium",children:r},n))})}),x.jsx("tbody",{children:t.map((r,n)=>x.jsx("tr",{className:`border-b border-[#1e2a3a] ${n%2===0?"bg-[#0d1219]":"bg-[#0a0e17]"}`,children:r.map((i,a)=>x.jsx("td",{className:"px-4 py-2 text-slate-300",children:i},a))},n))})]})})}function Bt({href:e,children:t}){return x.jsxs("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:"text-accent hover:underline inline-flex items-center gap-1",children:[t," ",x.jsx(_d,{size:12})]})}function Te({children:e}){return x.jsx("h3",{className:"text-lg font-semibold text-slate-200 mt-6 mb-3",children:e})}function cl({children:e}){return x.jsx("h4",{className:"text-base font-medium text-slate-300 mt-4 mb-2",children:e})}function Be({children:e}){return x.jsx("code",{className:"font-mono text-accent bg-[#1a2332] px-1 rounded",children:e})}function pi({id:e,title:t,children:r}){return x.jsxs("section",{id:e,className:"mb-12 scroll-mt-6",children:[x.jsx("h2",{className:"text-2xl font-bold text-slate-100 mb-4 pb-2 border-b border-[#2a3a4a]",children:t}),x.jsx("div",{className:"text-slate-300 leading-relaxed space-y-4",children:r})]})}function iet(){const e=hv(),[t,r]=H.useState(""),[n,i]=H.useState("stream-gauges"),a=H.useRef(null);H.useEffect(()=>{const l=e.hash.replace("#","");if(l&&VU.find(u=>u.id===l)){i(l);const u=document.getElementById(l);u&&u.scrollIntoView({behavior:"smooth"})}},[e.hash]);const o=VU.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 x.jsxs("div",{className:"flex h-full -m-6",children:[x.jsxs("aside",{className:"w-64 flex-shrink-0 bg-bg-card border-r border-border overflow-y-auto",children:[x.jsx("div",{className:"p-4 border-b border-border",children:x.jsxs("div",{className:"relative",children:[x.jsx(HE,{size:16,className:"absolute left-3 top-1/2 -translate-y-1/2 text-slate-500"}),x.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"})]})}),x.jsx("nav",{className:"py-2",children:o.map(l=>{const u=l.icon,c=n===l.id;return x.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:[x.jsx(u,{size:16}),l.label]},l.id)})})]}),x.jsx("div",{ref:a,className:"flex-1 overflow-y-auto p-6",children:x.jsxs("div",{className:"max-w-4xl",children:[x.jsx("p",{className:"text-slate-400 mb-8",children:"Everything you need to understand and configure MeshAI's monitoring and alerting systems."}),x.jsxs(pi,{id:"stream-gauges",title:"Stream Gauges",children:[x.jsx(Te,{children:"What You're Looking At"}),x.jsx("p",{children:"MeshAI watches river and stream levels at gauges you configure. Each gauge reports two things:"}),x.jsxs("p",{children:[x.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.`]}),x.jsxs("p",{children:[x.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:`]}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsx("li",{children:"A small creek: 50-200 CFS"}),x.jsx("li",{children:"A mid-size river: 1,000-5,000 CFS"}),x.jsx("li",{children:"A big river in spring runoff: 10,000+ CFS"})]}),x.jsx(Te,{children:"When Does It Flood?"}),x.jsxs("p",{children:["Flood levels are set by the ",x.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.']}),x.jsxs("p",{children:[x.jsx("strong",{children:"Action Stage"})," — water is rising, time to start paying attention. Usually still inside the riverbanks."]}),x.jsxs("p",{children:[x.jsx("strong",{children:"Minor Flood"})," — low-lying roads start getting water on them. NWS issues a Flood Advisory."]}),x.jsxs("p",{children:[x.jsx("strong",{children:"Moderate Flood"})," — water in buildings near the river. Some people need to evacuate. NWS issues a Flood Warning."]}),x.jsxs("p",{children:[x.jsx("strong",{children:"Major Flood"})," — widespread flooding. Many people evacuating. Serious property damage."]}),x.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."}),x.jsx(Te,{children:"Low Water / Drought"}),x.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.`}),x.jsx(Te,{children:"Setting It Up"}),x.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:["Find your gauge at ",x.jsx(Bt,{href:"https://waterdata.usgs.gov/nwis",children:"waterdata.usgs.gov/nwis"})]}),x.jsxs("li",{children:["Copy the site number (like ",x.jsx(Be,{children:"13090500"}),")"]}),x.jsx("li",{children:"Add it in Config → Environmental → USGS"}),x.jsx("li",{children:"MeshAI auto-fills the gauge name and flood levels from NWS"})]}),x.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."}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://waterdata.usgs.gov/nwis",children:"USGS Water Data"})," — find gauges near you"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://water.noaa.gov",children:"NWS Water Prediction Service"})," — flood forecasts and thresholds"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.usgs.gov/special-topics/water-science-school/science/how-streamflow-measured",children:"Understanding Streamflow"})," — USGS explainer"]})]})]}),x.jsxs(pi,{id:"wildfire",title:"Wildfire",children:[x.jsx(Te,{children:"What You're Looking At"}),x.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."}),x.jsx(Te,{children:"Fire Size — How Big Is It?"}),x.jsx(Rt,{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."]]}),x.jsx("p",{children:"For reference, 1,000 acres is about 1.5 square miles."}),x.jsx(Te,{children:"Containment — Is It Under Control?"}),x.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."}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx("strong",{children:"0-30%"})," — Essentially uncontrolled. The fire goes where it wants."]}),x.jsxs("li",{children:[x.jsx("strong",{children:"50%"})," — Good progress, but half the edge can still grow."]}),x.jsxs("li",{children:[x.jsx("strong",{children:"80%+"})," — Well controlled. Major growth unlikely."]}),x.jsxs("li",{children:[x.jsx("strong",{children:"100%"}),' — The edge is fully controlled. But the fire may STILL be actively burning inside. "100% contained" does NOT mean "out."']})]}),x.jsx(Te,{children:"How Far Away Should I Worry?"}),x.jsx(Rt,{headers:["Distance","What To Do"],rows:[[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"red"})," Under 5 km (3 miles)"]}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Immediate threat."})," This is evacuation-order range. Embers can fly this far in wind."]})],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"orange"})," 5-15 km (3-10 miles)"]}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Prepare."})," The fire could reach you in hours under bad conditions. Have a plan."]})],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"yellow"})," 15-30 km (10-20 miles)"]}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Watch."})," Smoke is likely. Wind shifts could change things fast."]})],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"green"})," Over 30 km (20 miles)"]}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Awareness."})," Keep an eye on it, but no immediate threat."]})]]}),x.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."}),x.jsx(Te,{children:"Which Matters More — Size or Distance?"}),x.jsxs("p",{children:[x.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."]}),x.jsx(Te,{children:"Setting It Up"}),x.jsxs("p",{children:["Just configure your state code (like ",x.jsx(Be,{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."]}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://inciweb.nwcg.gov",children:"InciWeb"})," — detailed incident information"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://data-nifc.opendata.arcgis.com",children:"NIFC Fire Map"})," — raw perimeter data"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.ready.gov/wildfires",children:"Ready.gov Wildfires"})," — preparedness guide"]})]})]}),x.jsxs(pi,{id:"firms",title:"Satellite Fire Detection (FIRMS)",children:[x.jsx(Te,{children:"What You're Looking At"}),x.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.`}),x.jsxs("p",{children:[x.jsx("strong",{children:"Why this matters"}),": satellite hotspots show up ",x.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."]}),x.jsx(Te,{children:"Confidence — Is It Really a Fire?"}),x.jsx("p",{children:"Each detection gets a confidence rating:"}),x.jsx(Rt,{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."]]}),x.jsxs("p",{children:[x.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.`]}),x.jsx(Te,{children:"FRP — How Intense Is It?"}),x.jsx("p",{children:'FRP (Fire Radiative Power) measures the heat output in megawatts. Think of it as "how hot is this thing":'}),x.jsx(Rt,{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"]]}),x.jsx("p",{children:"Setting the minimum FRP to 5 MW filters out most industrial and agricultural false alarms."}),x.jsx(Te,{children:"New Ignition Detection"}),x.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 ",x.jsx("strong",{children:"potential new ignition"})," — maybe a new fire just started. These get elevated priority regardless of confidence level."]}),x.jsx(Te,{children:"Timing"}),x.jsxs("p",{children:["Satellite data arrives ",x.jsx("strong",{children:"1-3 hours"})," after the satellite passes overhead. Each location gets observed about ",x.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."`]}),x.jsx(Te,{children:"Getting an API Key"}),x.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:["Go to ",x.jsx(Bt,{href:"https://firms.modaps.eosdis.nasa.gov/api/area/",children:"FIRMS API page"})]}),x.jsx("li",{children:'Click "Get MAP_KEY"'}),x.jsx("li",{children:"Register for a free Earthdata account"}),x.jsx("li",{children:"Your key arrives by email"}),x.jsx("li",{children:"Enter it in Config → Environmental → FIRMS"})]}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://firms.modaps.eosdis.nasa.gov",children:"FIRMS Fire Map"})," — see hotspots on a map"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://earthdata.nasa.gov/data/tools/firms/faq",children:"FIRMS FAQ"})," — how it works"]})]})]}),x.jsxs(pi,{id:"weather-alerts",title:"Weather Alerts",children:[x.jsx(Te,{children:"What You're Looking At"}),x.jsx("p",{children:"MeshAI watches for NWS (National Weather Service) alerts affecting your area — warnings, watches, and advisories."}),x.jsx(Te,{children:"Alert Severity — How Serious Is It?"}),x.jsx(Rt,{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"]]}),x.jsx(Te,{children:"When Should I Act? (Urgency)"}),x.jsx(Rt,{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"]]}),x.jsx(Te,{children:"How Sure Are They? (Certainty)"}),x.jsx(Rt,{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"]]}),x.jsx(Te,{children:"These Are Separate Scales"}),x.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."'}),x.jsx(Te,{children:"What Minimum Severity Should I Set?"}),x.jsx(Rt,{headers:["Setting","What You Get","What You Miss"],rows:[["Minor","Everything — high volume","Nothing"],[x.jsxs(x.Fragment,{children:[x.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"]]}),x.jsxs("p",{children:[x.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."]}),x.jsx(Te,{children:"Finding Your NWS Zone"}),x.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:["Go to ",x.jsx(Bt,{href:"https://www.weather.gov",children:"weather.gov"})]}),x.jsx("li",{children:"Enter your location"}),x.jsxs("li",{children:["Find your zone code at ",x.jsx(Bt,{href:"https://www.weather.gov/pimar/PubZone",children:"NWS Zone Map"})]}),x.jsxs("li",{children:["Zone codes look like: ",x.jsx(Be,{children:"IDZ016"}),", ",x.jsx(Be,{children:"UTZ040"}),", etc."]})]}),x.jsx(Te,{children:"The User-Agent Field"}),x.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:"}),x.jsx("p",{children:x.jsx(Be,{children:"(meshai, you@email.com)"})}),x.jsx("p",{children:"No registration. No waiting. Just type it in."}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://alerts.weather.gov",children:"NWS Active Alerts"})," — see current alerts"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.weather.gov/documentation/services-web-api",children:"NWS API Docs"})," — technical details"]})]})]}),x.jsxs(pi,{id:"solar",title:"Solar & Geomagnetic Conditions",children:[x.jsx(Te,{children:"What You're Looking At"}),x.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."}),x.jsx(Te,{children:"Solar Flux Index (SFI)"}),x.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.'}),x.jsx(Rt,{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."]]}),x.jsxs("p",{children:[x.jsx("strong",{children:"Quick rule"}),": SFI above 90 and Kp below 4 = good day for HF radio."]}),x.jsx(Te,{children:"Kp Index"}),x.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."}),x.jsx(Rt,{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."],[x.jsx("strong",{children:"5"}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Minor storm (G1)."})," HF noticeably degraded. Aurora visible at high latitudes (~60°N)."]})],[x.jsx("strong",{children:"6"}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Moderate storm (G2)."})," HF getting rough. Aurora moving south (~55°N)."]})],[x.jsx("strong",{children:"7"}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Strong storm (G3)."})," HF unreliable for 1-2 days. Aurora at mid-latitudes."]})],[x.jsx("strong",{children:"8-9"}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Severe/Extreme storm."})," HF may black out completely. Aurora visible at very low latitudes. Power grid stress possible."]})]]}),x.jsx(Te,{children:"R / S / G Scales"}),x.jsx("p",{children:"NOAA's shorthand for three types of space weather events:"}),x.jsx(cl,{children:"R (Radio Blackouts) — from solar flares:"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsx("li",{children:"R1-R2: Brief HF disruption. You might not notice."}),x.jsx("li",{children:"R3: HF goes out for about an hour on the sunlit side of Earth."}),x.jsx("li",{children:"R4-R5: HF dead for hours. Serious."})]}),x.jsx(cl,{children:"S (Solar Radiation Storms) — from energetic particles:"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsx("li",{children:"Mostly affects polar regions and satellites"}),x.jsx("li",{children:"S3+: Polar HF goes out entirely"})]}),x.jsx(cl,{children:"G (Geomagnetic Storms) — from solar wind disturbances:"}),x.jsx("ul",{className:"list-disc list-inside ml-4 space-y-1",children:x.jsx("li",{children:"Same as the Kp scale: G1 = Kp 5, up to G5 = Kp 9"})}),x.jsx(Te,{children:"Bz — The Storm Predictor"}),x.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."}),x.jsx(Rt,{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."]]}),x.jsx("p",{children:"Bz can change fast — minute to minute. What matters is whether it stays negative for hours, not brief dips."}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.swpc.noaa.gov",children:"SWPC Space Weather Dashboard"})," — live data"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.swpc.noaa.gov/noaa-scales-explanation",children:"NOAA Space Weather Scales"})," — what R/S/G mean"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.hamqsl.com/solar.html",children:"HamQSL Solar Page"})," — ham-friendly display"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.swpc.noaa.gov/products/planetary-k-index",children:"Planetary K-Index"})," — live Kp"]})]})]}),x.jsxs(pi,{id:"ducting",title:"Tropospheric Ducting",children:[x.jsx(Te,{children:"What You're Looking At"}),x.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.'}),x.jsx("p",{children:"MeshAI watches for these conditions by analyzing weather data (temperature and humidity at different altitudes) over your mesh area."}),x.jsx(Te,{children:"How Do I Know If Ducting Is Happening?"}),x.jsx("p",{children:'MeshAI reports a "condition" based on the atmospheric profile:'}),x.jsx(Rt,{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.']]}),x.jsx(Te,{children:"What You'll Actually Notice"}),x.jsx("p",{children:"When ducting happens on your mesh:"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsx("li",{children:"Distant repeaters you've never heard suddenly come in"}),x.jsx("li",{children:"Nodes appear from far outside your normal range"}),x.jsx("li",{children:"You hear FM radio stations from other cities"}),x.jsx("li",{children:"ADS-B flight tracking range gets much longer"}),x.jsx("li",{children:"There might be interference from distant stations on your frequency"})]}),x.jsx(Te,{children:"The dM/dz Number"}),x.jsx("p",{children:`The dashboard shows a "dM/dz" value in "M-units/km." You don't need to understand the math — just know:`}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx("strong",{children:"Around 118"})," = normal atmosphere"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Below 79"})," = enhanced propagation starting"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Below 0 (negative)"})," = ducting is happening"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Below -50"})," = strong ducting — classic VHF/UHF DX event"]})]}),x.jsx(Te,{children:"When Does Ducting Happen?"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsx("li",{children:"Under high-pressure weather systems (clear, stable air)"}),x.jsx("li",{children:"When warm air sits on top of cool air (temperature inversion)"}),x.jsx("li",{children:"Most common in late summer and early fall"}),x.jsx("li",{children:"Strongest along coastlines and over water"}),x.jsx("li",{children:"In mountain valleys: cold air pooling in fall/winter can create surface ducts"})]}),x.jsx(Te,{children:"Setting It Up"}),x.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."}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://dxinfocentre.com/tropo.html",children:"Tropo Forecast Maps (Hepburn)"})," — 6-day tropo prediction"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://dxmaps.com",children:"DX Maps"})," — real-time VHF/UHF propagation reports"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://en.wikipedia.org/wiki/Tropospheric_propagation",children:"Wikipedia: Tropospheric Propagation"})," — background"]})]})]}),x.jsxs(pi,{id:"avalanche",title:"Avalanche Danger",children:[x.jsx(Te,{children:"What You're Looking At"}),x.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."}),x.jsx(Te,{children:"The Danger Scale"}),x.jsx(Rt,{headers:["Level","Name","Color","What To Do"],rows:[["1","Low",x.jsx(ar,{color:"green"}),"Generally safe. Normal caution in steep terrain."],["2","Moderate",x.jsx(ar,{color:"yellow"}),"Be careful on specific terrain features. Evaluate conditions."],["3","Considerable",x.jsx(ar,{color:"orange"}),x.jsxs(x.Fragment,{children:[x.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",x.jsx(ar,{color:"red"}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Very dangerous."})," Stay off anything steep."]})],["5","Extreme",x.jsx(ar,{color:"black"}),x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Don't go out."})," Avalanches are happening on their own."]})]]}),x.jsx(Te,{children:"The Most Important Thing to Know"}),x.jsxs("p",{children:[x.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.']}),x.jsx(Te,{children:"Seasonal"}),x.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.'}),x.jsx(Te,{children:"Finding Your Avalanche Center"}),x.jsxs("p",{children:["Go to ",x.jsx(Bt,{href:"https://avalanche.org/avalanche-centers/",children:"avalanche.org/avalanche-centers/"})," for a map. Common center codes:"]}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Be,{children:"SNFAC"})," — Sawtooth (central Idaho)"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"UAC"})," — Utah"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"NWAC"})," — Cascades/Olympics (WA/OR)"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"CAIC"})," — Colorado"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"SAC"})," — Sierra Nevada (CA)"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GNFAC"})," — Gallatin (SW Montana)"]})]}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://avalanche.org",children:"Avalanche.org"})," — US forecasts"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://avalanche.org/avalanche-encyclopedia/human/resources/north-american-public-avalanche-danger-scale/",children:"Avalanche Danger Scale"})," — full scale explanation"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://kbyg.org",children:"Know Before You Go"})," — avalanche awareness"]})]})]}),x.jsxs(pi,{id:"traffic",title:"Traffic Flow",children:[x.jsx(Te,{children:"What You're Looking At"}),x.jsx("p",{children:"MeshAI monitors traffic speed on road segments you configure, using data from TomTom (real vehicles with navigation apps reporting their speed)."}),x.jsx(Te,{children:"Speed Ratio — The Key Number"}),x.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:'}),x.jsx(Rt,{headers:["Ratio","What It Means"],rows:[[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"green"})," Above 85%"]}),"Normal. Traffic flowing fine."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"yellow"})," 65-85%"]}),"Slow. Heavier than usual but moving."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"orange"})," 40-65%"]}),"Congested. Significant delays."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"red"})," Below 40%"]}),"Gridlock. Barely moving."]]}),x.jsxs("p",{children:[x.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.`]}),x.jsx(Te,{children:"Confidence — Can You Trust the Data?"}),x.jsx("p",{children:"TomTom's confidence score tells you how much of the reading comes from real vehicles right now vs historical averages:"}),x.jsx(Rt,{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",x.jsxs(x.Fragment,{children:[x.jsx("strong",{children:"Unreliable"})," — mostly guessing from historical patterns. Don't alert on this."]})]]}),x.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."}),x.jsx(Te,{children:"Setting Up Corridors"}),x.jsx("p",{children:'Each "corridor" is a point on a road you want to monitor. To add one:'}),x.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[x.jsx("li",{children:"Go to Google Maps, find the road"}),x.jsx("li",{children:`Right-click the road → "What's here?" → copy the coordinates`}),x.jsx("li",{children:"Add the corridor in Config with a name and those coordinates"}),x.jsx("li",{children:"TomTom finds the nearest road segment automatically"})]}),x.jsx(Te,{children:"Getting an API Key"}),x.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:["Sign up at ",x.jsx(Bt,{href:"https://developer.tomtom.com",children:"developer.tomtom.com"})," (free)"]}),x.jsx("li",{children:"Create an app → get your API key"}),x.jsx("li",{children:"Free tier: 2,500 requests/day (plenty for 5-10 corridors)"})]}),x.jsx(Te,{children:"Learn More"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Bt,{href:"https://developer.tomtom.com",children:"TomTom Developer Portal"})," — API docs and key signup"]}),x.jsxs("li",{children:[x.jsx(Bt,{href:"https://www.tomtom.com/traffic-index/",children:"TomTom Traffic Index"})," — city congestion rankings"]})]})]}),x.jsxs(pi,{id:"roads-511",title:"Road Conditions (511)",children:[x.jsx(Te,{children:"What You're Looking At"}),x.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."}),x.jsx(Te,{children:"Setting It Up"}),x.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."}),x.jsx("p",{children:"Configure in Config → Environmental → 511:"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx("strong",{children:"Base URL"})," — your state's API endpoint"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"API Key"})," — if required by your state"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Endpoints"})," — which data feeds to poll (varies by state)"]})]}),x.jsx(Te,{children:"Learn More"}),x.jsx("p",{children:"Check your state's 511 or DOT website for developer information."})]}),x.jsxs(pi,{id:"mesh-health",title:"Mesh Health",children:[x.jsx(Te,{children:"Health Score"}),x.jsx("p",{children:"MeshAI computes a 0-100 health score for your mesh network by looking at five areas, each weighted differently:"}),x.jsx(Rt,{headers:["Pillar","Weight","What It Measures"],rows:[[x.jsx("strong",{children:"Infrastructure"}),"30%","Are your routers online?"],[x.jsx("strong",{children:"Utilization"}),"25%","Is the radio channel congested?"],[x.jsx("strong",{children:"Coverage"}),"20%","Do nodes have redundant paths to gateways?"],[x.jsx("strong",{children:"Behavior"}),"15%","Are any nodes flooding the channel?"],[x.jsx("strong",{children:"Power"}),"10%","Are battery-powered nodes running low?"]]}),x.jsx("p",{children:"The overall score is the weighted sum:"}),x.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%)"}),x.jsx(Te,{children:"How Each Pillar Is Calculated"}),x.jsx(cl,{children:"Infrastructure (30%)"}),x.jsx("p",{children:"This is the simplest pillar — what percentage of your infrastructure nodes are currently online?"}),x.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"(routers online ÷ total routers) × 100"}),x.jsxs("p",{children:["Only nodes with the ",x.jsx(Be,{children:"ROUTER"}),", ",x.jsx(Be,{children:"ROUTER_LATE"}),", or ",x.jsx(Be,{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."]}),x.jsxs("p",{children:[x.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."]}),x.jsx(cl,{children:"Utilization (25%)"}),x.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 ",x.jsx("strong",{children:"highest"})," value from any infrastructure node because the busiest router is the bottleneck for the whole mesh."]}),x.jsx("p",{children:x.jsx("strong",{children:"How it works:"})}),x.jsxs("ol",{className:"list-decimal list-inside space-y-1 ml-4",children:[x.jsxs("li",{children:["Collect ",x.jsx(Be,{children:"channel_utilization"})," from all infrastructure nodes that report it"]}),x.jsx("li",{children:"If no infra nodes have telemetry, try all nodes"}),x.jsxs("li",{children:["Use the ",x.jsx("strong",{children:"maximum"})," value for scoring (busiest node = bottleneck)"]}),x.jsx("li",{children:"If no nodes report utilization (older firmware), fall back to packet count estimate"})]}),x.jsxs("p",{className:"mt-4",children:[x.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."]}),x.jsx(Rt,{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"]]}),x.jsxs("p",{children:[x.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."]}),x.jsx(cl,{children:"Coverage (20%)"}),x.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.'}),x.jsxs("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:["coverage_ratio = average_gateways_per_node ÷ total_sources",x.jsx("br",{}),"single_gw_penalty = (single_gateway_nodes ÷ total_nodes) × 40"]}),x.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."}),x.jsx(Rt,{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"]]}),x.jsxs("p",{children:[x.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.)."]}),x.jsx(cl,{children:"Behavior (15%)"}),x.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."}),x.jsxs("p",{children:[x.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."]}),x.jsx(Rt,{headers:["Flagged Nodes","Score"],rows:[["0","100"],["1","80"],["2-3","60"],["4-5","40"],["6+","20"]]}),x.jsx("p",{children:"A single misbehaving node only drops the score to 80. It takes multiple problem nodes to seriously hurt the behavior pillar."}),x.jsx(cl,{children:"Power (10%)"}),x.jsx("p",{children:"Measures what fraction of battery-powered nodes are below the warning threshold (default 20%)."}),x.jsx("p",{className:"p-3 bg-slate-800 rounded font-mono text-sm",children:"100 × (1 − low_battery_nodes ÷ total_battery_nodes)"}),x.jsx("p",{children:"If 2 out of 10 battery nodes are below 20%, power scores 80."}),x.jsxs("p",{children:[x.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."]}),x.jsx(Te,{children:"Health Tiers"}),x.jsx(Rt,{headers:["Score","Tier","What It Means"],rows:[["90-100",x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"green"})," Healthy"]}),"Everything's working well."],["75-89",x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"yellow"})," Slight degradation"]}),"Some issues but the mesh is functional."],["50-74",x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"orange"})," Unhealthy"]}),"Multiple problems. Reliability is affected."],["25-49",x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"red"})," Warning"]}),"Significant issues. The mesh is struggling."],["0-24",x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"black"})," Critical"]}),"Major failures. Barely functional."]]}),x.jsx(Te,{children:"Channel Utilization — Is the Radio Channel Full?"}),x.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."}),x.jsx(Rt,{headers:["Utilization","What's Happening"],rows:[[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"green"})," Under 25%"]}),"Healthy. The firmware itself starts throttling above 25% to protect the channel — so under 25% is the target."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"yellow"})," 25-40%"]}),"Getting busy. Common on larger meshes. Worth watching."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"orange"})," 40-50%"]}),"Congested. The firmware throttles GPS updates above 40%. Messages are colliding and retrying."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"red"})," Over 50%"]}),"Serious problem. More time is spent retrying than communicating. Mesh reliability drops fast."],[x.jsxs(x.Fragment,{children:[x.jsx(ar,{color:"black"})," Over 65%"]}),"Documented failure point on busy LONG_FAST meshes. The mesh becomes unusable."]]}),x.jsx(Te,{children:"Packet Flooding"}),x.jsx("p",{className:"p-3 bg-yellow-500/10 border border-yellow-500/30 rounded text-yellow-200",children:x.jsx("strong",{children:'⚠️ "Packet flooding" means a node sending too many RADIO PACKETS. This has nothing to do with water flooding.'})}),x.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."}),x.jsx(Rt,{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."]]}),x.jsx(Te,{children:"Battery Levels"}),x.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:"}),x.jsx(Rt,{headers:["Voltage","Charge","What To Do"],rows:[["4.20V","100%","Full"],["3.80V","~60%","Fine"],[x.jsx("strong",{children:"3.60V"}),x.jsx("strong",{children:"~30%"}),x.jsx(x.Fragment,{children:x.jsx("strong",{children:"⚠️ Warning — charge it soon"})})],[x.jsx("strong",{children:"3.50V"}),x.jsx("strong",{children:"~15%"}),x.jsx(x.Fragment,{children:x.jsx("strong",{children:"🔴 Low — charge it now"})})],[x.jsx("strong",{children:"3.40V"}),x.jsx("strong",{children:"~7%"}),x.jsx(x.Fragment,{children:x.jsx("strong",{children:"⚫ About to die"})})],["3.30V","~3%","Device shutting down"]]}),x.jsxs("p",{children:[x.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."]}),x.jsx(Te,{children:"Node Offline Detection"}),x.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:`}),x.jsx(Rt,{headers:["Node Type","Recommended Threshold","Why"],rows:[["Fixed infrastructure (wall power)",x.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."]]}),x.jsxs("p",{children:[x.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.`]})]}),x.jsxs(pi,{id:"notifications",title:"Notifications",children:[x.jsx(Te,{children:"How It Works"}),x.jsxs("ol",{className:"list-decimal list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx("strong",{children:"Something happens"})," — a fire is detected, weather warning issued, node goes offline, etc."]}),x.jsxs("li",{children:[x.jsx("strong",{children:"MeshAI checks your rules"})," — does this event match any of your notification rules? Is it severe enough? Are we in quiet hours?"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"If a rule matches"})," — MeshAI sends the notification through whatever delivery method that rule is configured for."]})]}),x.jsx(Te,{children:"Building Rules"}),x.jsx("p",{children:"Each rule answers three questions:"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx("strong",{children:"WHEN"})," does it trigger? (which categories, what severity)"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"WHERE"})," does it send? (mesh broadcast, email, webhook, etc.)"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"HOW OFTEN"})," at most? (cooldown period)"]})]}),x.jsx("p",{children:'Use "Add from Template" to start with a pre-built rule and customize it, or build from scratch with "Add Rule."'}),x.jsx(Te,{children:"Severity Levels — What Should I Set?"}),x.jsx(Rt,{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"],[x.jsxs(x.Fragment,{children:[x.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"]]}),x.jsxs("p",{children:[x.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."]}),x.jsx(Te,{children:"Quiet Hours"}),x.jsx("p",{children:'When enabled, non-emergency notifications are held during sleeping hours (default 10pm-6am). Emergency alerts and rules marked "Override Quiet Hours" always get through.'}),x.jsx("p",{children:"You can turn quiet hours off entirely if you don't want them."}),x.jsx(Te,{children:"Webhook — The Swiss Army Knife"}),x.jsx("p",{children:"A webhook sends your alert as an HTTP POST to any URL. This one delivery method works with:"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx("strong",{children:"Discord"})," — use a Discord webhook URL"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Slack"})," — use a Slack incoming webhook URL"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"ntfy.sh"})," — POST to ",x.jsx(Be,{children:"https://ntfy.sh/your-topic"})]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Pushover"})," — POST to the Pushover API"]}),x.jsxs("li",{children:[x.jsx("strong",{children:"Home Assistant"})," — POST to an automation webhook URL"]}),x.jsx("li",{children:"Anything else that accepts HTTP POST"})]}),x.jsx("p",{children:"MeshAI doesn't need to know what's on the other end. Give it the URL and it works."})]}),x.jsxs(pi,{id:"commands",title:"Commands",children:[x.jsxs("p",{children:["All commands use the ",x.jsx(Be,{children:"!"})," prefix (configurable). Send these as a direct message to MeshAI on your mesh."]}),x.jsx(Te,{children:"Basic Commands"}),x.jsx(Rt,{headers:["Command","What It Does"],rows:[[x.jsx(Be,{children:"!help"}),"Shows all available commands"],[x.jsx(Be,{children:"!ping"}),"Tests if the bot is alive"],[x.jsx(Be,{children:"!status"}),"Quick mesh summary (nodes online, health score)"],[x.jsx(Be,{children:"!health"}),"Detailed health report with pillar scores"],[x.jsx(Be,{children:"!weather"}),"Current weather for your area"]]}),x.jsx(Te,{children:"Environmental Commands"}),x.jsx(Rt,{headers:["Command","What It Does"],rows:[[x.jsx(Be,{children:"!alerts"}),"Active NWS weather alerts for your area"],[x.jsxs(x.Fragment,{children:[x.jsx(Be,{children:"!solar"})," (or ",x.jsx(Be,{children:"!hf"}),")"]}),"Current solar indices and RF conditions"],[x.jsx(Be,{children:"!fire"}),"Active wildfires near your mesh"],[x.jsx(Be,{children:"!avy"}),'Avalanche advisory (seasonal — shows "off season" in summer)'],[x.jsxs(x.Fragment,{children:[x.jsx(Be,{children:"!streams"})," (or ",x.jsx(Be,{children:"!gauges"}),")"]}),"Stream gauge readings"],[x.jsxs(x.Fragment,{children:[x.jsx(Be,{children:"!roads"})," (or ",x.jsx(Be,{children:"!traffic"}),")"]}),"Road conditions and traffic flow"],[x.jsx(Be,{children:"!hotspots"}),"Satellite fire detections"]]}),x.jsx(Te,{children:"Subscription Commands"}),x.jsx(Rt,{headers:["Command","What It Does"],rows:[[x.jsx(Be,{children:"!subscribe"}),"Lists all alert categories you can subscribe to"],[x.jsx(Be,{children:"!subscribe fire_proximity"}),"Subscribe to a specific category"],[x.jsx(Be,{children:"!subscribe all"}),"Subscribe to everything"],[x.jsx(Be,{children:"!unsubscribe fire_proximity"}),"Unsubscribe from a category"],[x.jsx(Be,{children:"!subscriptions"}),"Shows what you're currently subscribed to"]]}),x.jsx(Te,{children:"Conversational"}),x.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.`})]}),x.jsxs(pi,{id:"api",title:"API Reference",children:[x.jsxs("p",{children:["MeshAI's REST API is available at ",x.jsx(Be,{children:"http://your-host:8080"}),". All endpoints return JSON."]}),x.jsx(Te,{children:"System"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/status"})," — version, uptime, node count"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/channels"})," — radio channel list"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"POST /api/restart"})," — restart the bot"]})]}),x.jsx(Te,{children:"Mesh Data"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/health"})," — health score and pillars"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/nodes"})," — all nodes with positions and telemetry"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/edges"})," — neighbor links with signal quality"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/regions"})," — region summaries"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/sources"})," — data source health"]})]}),x.jsx(Te,{children:"Configuration"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/config"})," — full config"]}),x.jsxs("li",{children:[x.jsxs(Be,{children:["GET /api/config/","{section}"]})," — one section"]}),x.jsxs("li",{children:[x.jsxs(Be,{children:["PUT /api/config/","{section}"]})," — update a section"]})]}),x.jsx(Te,{children:"Environmental"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/env/status"})," — per-feed health"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/env/active"})," — all active events"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/env/swpc"})," — solar/geomagnetic data"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/env/ducting"})," — atmospheric profile"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/env/fires"})," — wildfire perimeters"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/env/hotspots"})," — satellite fire detections"]})]}),x.jsx(Te,{children:"Alerts"}),x.jsxs("ul",{className:"list-disc list-inside ml-4 space-y-1",children:[x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/alerts/active"})," — current alerts"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/alerts/history"})," — past alerts"]}),x.jsxs("li",{children:[x.jsx(Be,{children:"GET /api/notifications/categories"})," — available alert categories"]})]}),x.jsx(Te,{children:"Real-time"}),x.jsx("ul",{className:"list-disc list-inside ml-4 space-y-1",children:x.jsxs("li",{children:[x.jsx(Be,{children:"ws://your-host:8080/ws/live"})," — WebSocket for live updates"]})})]})]})})]})}function aet(){return x.jsx(_ce,{children:x.jsx(Sce,{children:x.jsxs(Mue,{children:[x.jsx(fl,{path:"/",element:x.jsx(rNe,{})}),x.jsx(fl,{path:"/mesh",element:x.jsx(xJe,{})}),x.jsx(fl,{path:"/environment",element:x.jsx(TJe,{})}),x.jsx(fl,{path:"/config",element:x.jsx(HJe,{})}),x.jsx(fl,{path:"/alerts",element:x.jsx(JJe,{})}),x.jsx(fl,{path:"/notifications",element:x.jsx(net,{})}),x.jsx(fl,{path:"/reference",element:x.jsx(iet,{})})]})})})}aP.createRoot(document.getElementById("root")).render(x.jsx(Q.StrictMode,{children:x.jsx(Due,{children:x.jsx(aet,{})})})); diff --git a/meshai/dashboard/static/assets/index-Bildyb1E.js b/meshai/dashboard/static/assets/index-Bildyb1E.js new file mode 100644 index 0000000..ac0b9de --- /dev/null +++ b/meshai/dashboard/static/assets/index-Bildyb1E.js @@ -0,0 +1,523 @@ +function doe(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 og=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ft(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ZU={exports:{}},oS={},YU={exports:{}},yt={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var zy=Symbol.for("react.element"),voe=Symbol.for("react.portal"),poe=Symbol.for("react.fragment"),goe=Symbol.for("react.strict_mode"),moe=Symbol.for("react.profiler"),yoe=Symbol.for("react.provider"),xoe=Symbol.for("react.context"),_oe=Symbol.for("react.forward_ref"),boe=Symbol.for("react.suspense"),woe=Symbol.for("react.memo"),Soe=Symbol.for("react.lazy"),U5=Symbol.iterator;function Toe(e){return e===null||typeof e!="object"?null:(e=U5&&e[U5]||e["@@iterator"],typeof e=="function"?e:null)}var XU={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},qU=Object.assign,KU={};function uv(e,t,r){this.props=e,this.context=t,this.refs=KU,this.updater=r||XU}uv.prototype.isReactComponent={};uv.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};uv.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function QU(){}QU.prototype=uv.prototype;function HO(e,t,r){this.props=e,this.context=t,this.refs=KU,this.updater=r||XU}var UO=HO.prototype=new QU;UO.constructor=HO;qU(UO,uv.prototype);UO.isPureReactComponent=!0;var Z5=Array.isArray,JU=Object.prototype.hasOwnProperty,ZO={current:null},e7={key:!0,ref:!0,__self:!0,__source:!0};function t7(e,t,r){var n,i={},a=null,o=null;if(t!=null)for(n in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(a=""+t.key),t)JU.call(t,n)&&!e7.hasOwnProperty(n)&&(i[n]=t[n]);var s=arguments.length-2;if(s===1)i.children=r;else if(1>>1,Z=F[Y];if(0>>1;Yi(le,W))fei(ze,le)?(F[Y]=ze,F[fe]=W,Y=fe):(F[Y]=le,F[ne]=W,Y=ne);else if(fei(ze,W))F[Y]=ze,F[fe]=W,Y=fe;else break e}}return V}function i(F,V){var W=F.sortIndex-V.sortIndex;return W!==0?W:F.id-V.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(F){for(var V=r(u);V!==null;){if(V.callback===null)n(u);else if(V.startTime<=F)n(u),V.sortIndex=V.expirationTime,t(l,V);else break;V=r(u)}}function S(F){if(g=!1,b(F),!v)if(r(l)!==null)v=!0,$(T);else{var V=r(u);V!==null&&U(S,V.startTime-F)}}function T(F,V){v=!1,g&&(g=!1,x(P),P=-1),d=!0;var W=h;try{for(b(V),f=r(l);f!==null&&(!(f.expirationTime>V)||F&&!O());){var Y=f.callback;if(typeof Y=="function"){f.callback=null,h=f.priorityLevel;var Z=Y(f.expirationTime<=V);V=e.unstable_now(),typeof Z=="function"?f.callback=Z:f===r(l)&&n(l),b(V)}else n(l);f=r(l)}if(f!==null)var J=!0;else{var ne=r(u);ne!==null&&U(S,ne.startTime-V),J=!1}return J}finally{f=null,h=W,d=!1}}var A=!1,M=null,P=-1,I=5,k=-1;function O(){return!(e.unstable_now()-kF||125Y?(F.sortIndex=W,t(u,F),r(l)===null&&F===r(u)&&(g?(x(P),P=-1):g=!0,U(S,W-Y))):(F.sortIndex=Z,t(l,F),v||d||(v=!0,$(T))),F},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(F){var V=h;return function(){var W=h;h=V;try{return F.apply(this,arguments)}finally{h=W}}}})(o7);a7.exports=o7;var joe=a7.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var Roe=H,Oi=joe;function me(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),cP=Object.prototype.hasOwnProperty,Boe=/^[: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]*$/,X5={},q5={};function zoe(e){return cP.call(q5,e)?!0:cP.call(X5,e)?!1:Boe.test(e)?q5[e]=!0:(X5[e]=!0,!1)}function $oe(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 Foe(e,t,r,n){if(t===null||typeof t>"u"||$oe(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 XO=/[\-:]([a-z])/g;function qO(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(XO,qO);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(XO,qO);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(XO,qO);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 KO(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{EA=!1,Error.prepareStackTrace=r}return(e=e?e.displayName||e.name:"")?sg(e):""}function Voe(e){switch(e.tag){case 5:return sg(e.type);case 16:return sg("Lazy");case 13:return sg("Suspense");case 19:return sg("SuspenseList");case 0:case 2:case 15:return e=DA(e.type,!1),e;case 11:return e=DA(e.type.render,!1),e;case 1:return e=DA(e.type,!0),e;default:return""}}function vP(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 Ch:return"Fragment";case Ah:return"Portal";case fP:return"Profiler";case QO:return"StrictMode";case hP:return"Suspense";case dP:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case u7:return(e.displayName||"Context")+".Consumer";case l7:return(e._context.displayName||"Context")+".Provider";case JO:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case eE:return t=e.displayName||null,t!==null?t:vP(e.type)||"Memo";case gl:t=e._payload,e=e._init;try{return vP(e(t))}catch{}}return null}function Goe(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 vP(t);case 8:return t===QO?"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 eu(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function f7(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Woe(e){var t=f7(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 H0(e){e._valueTracker||(e._valueTracker=Woe(e))}function h7(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var r=t.getValue(),n="";return e&&(n=f7(e)?e.checked?"true":"false":e.value),e=n,e!==r?(t.setValue(e),!0):!1}function yb(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 pP(e,t){var r=t.checked;return cr({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??e._wrapperState.initialChecked})}function Q5(e,t){var r=t.defaultValue==null?"":t.defaultValue,n=t.checked!=null?t.checked:t.defaultChecked;r=eu(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 d7(e,t){t=t.checked,t!=null&&KO(e,"checked",t,!1)}function gP(e,t){d7(e,t);var r=eu(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")?mP(e,t.type,r):t.hasOwnProperty("defaultValue")&&mP(e,t.type,eu(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function J5(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 mP(e,t,r){(t!=="number"||yb(e.ownerDocument)!==e)&&(r==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+r&&(e.defaultValue=""+r))}var lg=Array.isArray;function Yh(e,t,r,n){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=U0.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function nm(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&r.nodeType===3){r.nodeValue=t;return}}e.textContent=t}var Ag={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},Hoe=["Webkit","ms","Moz","O"];Object.keys(Ag).forEach(function(e){Hoe.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Ag[t]=Ag[e]})});function m7(e,t,r){return t==null||typeof t=="boolean"||t===""?"":r||typeof t!="number"||t===0||Ag.hasOwnProperty(e)&&Ag[e]?(""+t).trim():t+"px"}function y7(e,t){e=e.style;for(var r in t)if(t.hasOwnProperty(r)){var n=r.indexOf("--")===0,i=m7(r,t[r],n);r==="float"&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}var Uoe=cr({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 _P(e,t){if(t){if(Uoe[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(me(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(me(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(me(61))}if(t.style!=null&&typeof t.style!="object")throw Error(me(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 wP=null;function tE(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var SP=null,Xh=null,qh=null;function rB(e){if(e=Vy(e)){if(typeof SP!="function")throw Error(me(280));var t=e.stateNode;t&&(t=fS(t),SP(e.stateNode,e.type,t))}}function x7(e){Xh?qh?qh.push(e):qh=[e]:Xh=e}function _7(){if(Xh){var e=Xh,t=qh;if(qh=Xh=null,rB(e),t)for(e=0;e>>=0,e===0?32:31-(nse(e)/ise|0)|0}var Z0=64,Y0=4194304;function ug(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 wb(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=ug(s):(a&=o,a!==0&&(n=ug(a)))}else o=r&~i,o!==0?n=ug(o):a!==0&&(n=ug(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 $y(e,t,r){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-za(t),e[t]=r}function lse(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=Mg),fB=" ",hB=!1;function $7(e,t){switch(e){case"keyup":return jse.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function F7(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Mh=!1;function Bse(e,t){switch(e){case"compositionend":return F7(t);case"keypress":return t.which!==32?null:(hB=!0,fB);case"textInput":return e=t.data,e===fB&&hB?null:e;default:return null}}function zse(e,t){if(Mh)return e==="compositionend"||!uE&&$7(e,t)?(e=B7(),F_=oE=Sl=null,Mh=!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=gB(r)}}function H7(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?H7(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function U7(){for(var e=window,t=yb();t instanceof e.HTMLIFrameElement;){try{var r=typeof t.contentWindow.location.href=="string"}catch{r=!1}if(r)e=t.contentWindow;else break;t=yb(e.document)}return t}function cE(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 Yse(e){var t=U7(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&H7(r.ownerDocument.documentElement,r)){if(n!==null&&cE(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=mB(r,a);var o=mB(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,Ph=null,LP=null,Lg=null,kP=!1;function yB(e,t,r){var n=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;kP||Ph==null||Ph!==yb(n)||(n=Ph,"selectionStart"in n&&cE(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}),Lg&&um(Lg,n)||(Lg=n,n=Ab(LP,"onSelect"),0Ih||(e.current=jP[Ih],jP[Ih]=null,Ih--)}function Yt(e,t){Ih++,jP[Ih]=e.current,e.current=t}var tu={},Nn=cu(tu),li=cu(!1),Wc=tu;function dd(e,t){var r=e.type.contextTypes;if(!r)return tu;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 ui(e){return e=e.childContextTypes,e!=null}function Mb(){Jt(li),Jt(Nn)}function AB(e,t,r){if(Nn.current!==tu)throw Error(me(168));Yt(Nn,t),Yt(li,r)}function t9(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(me(108,Goe(e)||"Unknown",i));return cr({},r,n)}function Pb(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||tu,Wc=Nn.current,Yt(Nn,e),Yt(li,li.current),!0}function CB(e,t,r){var n=e.stateNode;if(!n)throw Error(me(169));r?(e=t9(e,t,Wc),n.__reactInternalMemoizedMergedChildContext=e,Jt(li),Jt(Nn),Yt(Nn,e)):Jt(li),Yt(li,r)}var us=null,hS=!1,YA=!1;function r9(e){us===null?us=[e]:us.push(e)}function ole(e){hS=!0,r9(e)}function fu(){if(!YA&&us!==null){YA=!0;var e=0,t=Dt;try{var r=us;for(Dt=1;e>=o,i-=o,fs=1<<32-za(t)+i|r<P?(I=M,M=null):I=M.sibling;var k=h(x,M,b[P],S);if(k===null){M===null&&(M=I);break}e&&M&&k.alternate===null&&t(x,M),_=a(k,_,P),A===null?T=k:A.sibling=k,A=k,M=I}if(P===b.length)return r(x,M),er&&tc(x,P),T;if(M===null){for(;PP?(I=M,M=null):I=M.sibling;var O=h(x,M,k.value,S);if(O===null){M===null&&(M=I);break}e&&M&&O.alternate===null&&t(x,M),_=a(O,_,P),A===null?T=O:A.sibling=O,A=O,M=I}if(k.done)return r(x,M),er&&tc(x,P),T;if(M===null){for(;!k.done;P++,k=b.next())k=f(x,k.value,S),k!==null&&(_=a(k,_,P),A===null?T=k:A.sibling=k,A=k);return er&&tc(x,P),T}for(M=n(x,M);!k.done;P++,k=b.next())k=d(M,x,P,k.value,S),k!==null&&(e&&k.alternate!==null&&M.delete(k.key===null?P:k.key),_=a(k,_,P),A===null?T=k:A.sibling=k,A=k);return e&&M.forEach(function(D){return t(x,D)}),er&&tc(x,P),T}function m(x,_,b,S){if(typeof b=="object"&&b!==null&&b.type===Ch&&b.key===null&&(b=b.props.children),typeof b=="object"&&b!==null){switch(b.$$typeof){case W0:e:{for(var T=b.key,A=_;A!==null;){if(A.key===T){if(T=b.type,T===Ch){if(A.tag===7){r(x,A.sibling),_=i(A,b.props.children),_.return=x,x=_;break e}}else if(A.elementType===T||typeof T=="object"&&T!==null&&T.$$typeof===gl&&LB(T)===A.type){r(x,A.sibling),_=i(A,b.props),_.ref=pp(x,A,b),_.return=x,x=_;break e}r(x,A);break}else t(x,A);A=A.sibling}b.type===Ch?(_=Oc(b.props.children,x.mode,S,b.key),_.return=x,x=_):(S=X_(b.type,b.key,b.props,null,x.mode,S),S.ref=pp(x,_,b),S.return=x,x=S)}return o(x);case Ah:e:{for(A=b.key;_!==null;){if(_.key===A)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}_=rC(b,x.mode,S),_.return=x,x=_}return o(x);case gl:return A=b._init,m(x,_,A(b._payload),S)}if(lg(b))return v(x,_,b,S);if(cp(b))return g(x,_,b,S);tx(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,_),_=tC(b,x.mode,S),_.return=x,x=_),o(x)):r(x,_)}return m}var pd=o9(!0),s9=o9(!1),Ib=cu(null),Ob=null,Dh=null,vE=null;function pE(){vE=Dh=Ob=null}function gE(e){var t=Ib.current;Jt(Ib),e._currentValue=t}function zP(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 Qh(e,t){Ob=e,vE=Dh=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(oi=!0),e.firstContext=null)}function ua(e){var t=e._currentValue;if(vE!==e)if(e={context:e,memoizedValue:t,next:null},Dh===null){if(Ob===null)throw Error(me(308));Dh=e,Ob.dependencies={lanes:0,firstContext:e}}else Dh=Dh.next=e;return t}var mc=null;function mE(e){mc===null?mc=[e]:mc.push(e)}function l9(e,t,r,n){var i=t.interleaved;return i===null?(r.next=r,mE(t)):(r.next=i.next,i.next=r),t.interleaved=r,Os(e,n)}function Os(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 ml=!1;function yE(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function u9(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 _s(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function zl(e,t,r){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,wt&2){var i=n.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),n.pending=t,Os(e,r)}return i=n.interleaved,i===null?(t.next=t,mE(n)):(t.next=i.next,i.next=t),n.interleaved=t,Os(e,r)}function G_(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,nE(e,r)}}function kB(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 Eb(e,t,r,n){var i=e.updateQueue;ml=!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=cr({},f,h);break e;case 2:ml=!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);Zc|=o,e.lanes=o,e.memoizedState=f}}function IB(e,t,r){if(e=t.effects,t.effects=null,e!==null)for(t=0;tr?r:4,e(!0);var n=qA.transition;qA.transition={};try{e(!1),t()}finally{Dt=r,qA.transition=n}}function C9(){return ca().memoizedState}function cle(e,t,r){var n=Fl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},M9(e))P9(t,r);else if(r=l9(e,t,r,n),r!==null){var i=Wn();$a(r,e,n,i),L9(r,t,n)}}function fle(e,t,r){var n=Fl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(M9(e))P9(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,Ha(s,o)){var l=t.interleaved;l===null?(i.next=i,mE(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}r=l9(e,t,i,n),r!==null&&(i=Wn(),$a(r,e,n,i),L9(r,t,n))}}function M9(e){var t=e.alternate;return e===sr||t!==null&&t===sr}function P9(e,t){kg=Nb=!0;var r=e.pending;r===null?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function L9(e,t,r){if(r&4194240){var n=t.lanes;n&=e.pendingLanes,r|=n,t.lanes=r,nE(e,r)}}var jb={readContext:ua,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},hle={readContext:ua,useCallback:function(e,t){return ho().memoizedState=[e,t===void 0?null:t],e},useContext:ua,useEffect:EB,useImperativeHandle:function(e,t,r){return r=r!=null?r.concat([e]):null,H_(4194308,4,b9.bind(null,t,e),r)},useLayoutEffect:function(e,t){return H_(4194308,4,e,t)},useInsertionEffect:function(e,t){return H_(4,2,e,t)},useMemo:function(e,t){var r=ho();return t=t===void 0?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=ho();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,sr,e),[n.memoizedState,e]},useRef:function(e){var t=ho();return e={current:e},t.memoizedState=e},useState:OB,useDebugValue:CE,useDeferredValue:function(e){return ho().memoizedState=e},useTransition:function(){var e=OB(!1),t=e[0];return e=ule.bind(null,e[1]),ho().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=sr,i=ho();if(er){if(r===void 0)throw Error(me(407));r=r()}else{if(r=t(),an===null)throw Error(me(349));Uc&30||d9(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,EB(p9.bind(null,n,a,e),[e]),n.flags|=2048,mm(9,v9.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=ho(),t=an.identifierPrefix;if(er){var r=hs,n=fs;r=(n&~(1<<32-za(n)-1)).toString(32)+r,t=":"+t+"R"+r,r=pm++,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[po]=t,e[hm]=n,z9(e,t,!1,!1),t.stateNode=e;e:{switch(o=bP(r,n),r){case"dialog":qt("cancel",e),qt("close",e),i=n;break;case"iframe":case"object":case"embed":qt("load",e),i=n;break;case"video":case"audio":for(i=0;iyd&&(t.flags|=128,n=!0,gp(a,!1),t.lanes=4194304)}else{if(!n)if(e=Db(o),e!==null){if(t.flags|=128,n=!0,r=e.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),gp(a,!0),a.tail===null&&a.tailMode==="hidden"&&!o.alternate&&!er)return Tn(t),null}else 2*wr()-a.renderingStartTime>yd&&r!==1073741824&&(t.flags|=128,n=!0,gp(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=or.current,Yt(or,n?r&1|2:r&1),t):(Tn(t),null);case 22:case 23:return OE(),n=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==n&&(t.flags|=8192),n&&t.mode&1?yi&1073741824&&(Tn(t),t.subtreeFlags&6&&(t.flags|=8192)):Tn(t),null;case 24:return null;case 25:return null}throw Error(me(156,t.tag))}function _le(e,t){switch(hE(t),t.tag){case 1:return ui(t.type)&&Mb(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return gd(),Jt(li),Jt(Nn),bE(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return _E(t),null;case 13:if(Jt(or),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(me(340));vd()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Jt(or),null;case 4:return gd(),null;case 10:return gE(t.type._context),null;case 22:case 23:return OE(),null;case 24:return null;default:return null}}var nx=!1,kn=!1,ble=typeof WeakSet=="function"?WeakSet:Set,Ne=null;function Nh(e,t){var r=e.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(n){dr(e,t,n)}else r.current=null}function YP(e,t,r){try{r()}catch(n){dr(e,t,n)}}var WB=!1;function wle(e,t){if(IP=Sb,e=U7(),cE(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(OP={focusedElem:e,selectionRange:r},Sb=!1,Ne=t;Ne!==null;)if(t=Ne,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Ne=e;else for(;Ne!==null;){t=Ne;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:La(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(me(163))}}catch(S){dr(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,Ne=e;break}Ne=t.return}return v=WB,WB=!1,v}function Ig(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&&YP(t,r,a)}i=i.next}while(i!==n)}}function pS(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 XP(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 V9(e){var t=e.alternate;t!==null&&(e.alternate=null,V9(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[po],delete t[hm],delete t[NP],delete t[ile],delete t[ale])),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 G9(e){return e.tag===5||e.tag===3||e.tag===4}function HB(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||G9(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 qP(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=Cb));else if(n!==4&&(e=e.child,e!==null))for(qP(e,t,r),e=e.sibling;e!==null;)qP(e,t,r),e=e.sibling}function KP(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(KP(e,t,r),e=e.sibling;e!==null;)KP(e,t,r),e=e.sibling}var fn=null,Ia=!1;function rl(e,t,r){for(r=r.child;r!==null;)W9(e,t,r),r=r.sibling}function W9(e,t,r){if(Mo&&typeof Mo.onCommitFiberUnmount=="function")try{Mo.onCommitFiberUnmount(sS,r)}catch{}switch(r.tag){case 5:kn||Nh(r,t);case 6:var n=fn,i=Ia;fn=null,rl(e,t,r),fn=n,Ia=i,fn!==null&&(Ia?(e=fn,r=r.stateNode,e.nodeType===8?e.parentNode.removeChild(r):e.removeChild(r)):fn.removeChild(r.stateNode));break;case 18:fn!==null&&(Ia?(e=fn,r=r.stateNode,e.nodeType===8?ZA(e.parentNode,r):e.nodeType===1&&ZA(e,r),sm(e)):ZA(fn,r.stateNode));break;case 4:n=fn,i=Ia,fn=r.stateNode.containerInfo,Ia=!0,rl(e,t,r),fn=n,Ia=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)&&YP(r,t,o),i=i.next}while(i!==n)}rl(e,t,r);break;case 1:if(!kn&&(Nh(r,t),n=r.stateNode,typeof n.componentWillUnmount=="function"))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){dr(r,t,s)}rl(e,t,r);break;case 21:rl(e,t,r);break;case 22:r.mode&1?(kn=(n=kn)||r.memoizedState!==null,rl(e,t,r),kn=n):rl(e,t,r);break;default:rl(e,t,r)}}function UB(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=Ile.bind(null,e,n);r.has(n)||(r.add(n),n.then(i,i))})}}function Sa(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*Tle(n/1960))-n,10e?16:e,Tl===null)var n=!1;else{if(e=Tl,Tl=null,zb=0,wt&6)throw Error(me(331));var i=wt;for(wt|=4,Ne=e.current;Ne!==null;){var a=Ne,o=a.child;if(Ne.flags&16){var s=a.deletions;if(s!==null){for(var l=0;lwr()-kE?Ic(e,0):LE|=r),ci(e,t)}function Q9(e,t){t===0&&(e.mode&1?(t=Y0,Y0<<=1,!(Y0&130023424)&&(Y0=4194304)):t=1);var r=Wn();e=Os(e,t),e!==null&&($y(e,t,r),ci(e,r))}function kle(e){var t=e.memoizedState,r=0;t!==null&&(r=t.retryLane),Q9(e,r)}function Ile(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(me(314))}n!==null&&n.delete(t),Q9(e,r)}var J9;J9=function(e,t,r){if(e!==null)if(e.memoizedProps!==t.pendingProps||li.current)oi=!0;else{if(!(e.lanes&r)&&!(t.flags&128))return oi=!1,yle(e,t,r);oi=!!(e.flags&131072)}else oi=!1,er&&t.flags&1048576&&n9(t,kb,t.index);switch(t.lanes=0,t.tag){case 2:var n=t.type;U_(e,t),e=t.pendingProps;var i=dd(t,Nn.current);Qh(t,r),i=SE(null,t,n,e,i,r);var a=TE();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,ui(n)?(a=!0,Pb(t)):a=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,yE(t),i.updater=vS,t.stateNode=i,i._reactInternals=t,FP(t,n,e,r),t=WP(null,t,n,!0,a,r)):(t.tag=0,er&&a&&fE(t),zn(null,t,i,r),t=t.child),t;case 16:n=t.elementType;e:{switch(U_(e,t),e=t.pendingProps,i=n._init,n=i(n._payload),t.type=n,i=t.tag=Ele(n),e=La(n,e),i){case 0:t=GP(null,t,n,e,r);break e;case 1:t=FB(null,t,n,e,r);break e;case 11:t=zB(null,t,n,e,r);break e;case 14:t=$B(null,t,n,La(n.type,e),r);break e}throw Error(me(306,n,""))}return t;case 0:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:La(n,i),GP(e,t,n,i,r);case 1:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:La(n,i),FB(e,t,n,i,r);case 3:e:{if(j9(t),e===null)throw Error(me(387));n=t.pendingProps,a=t.memoizedState,i=a.element,u9(e,t),Eb(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=md(Error(me(423)),t),t=VB(e,t,n,r,i);break e}else if(n!==i){i=md(Error(me(424)),t),t=VB(e,t,n,r,i);break e}else for(Ai=Bl(t.stateNode.containerInfo.firstChild),ki=t,er=!0,Da=null,r=s9(t,null,n,r),t.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(vd(),n===i){t=Es(e,t,r);break e}zn(e,t,n,r)}t=t.child}return t;case 5:return c9(t),e===null&&BP(t),n=t.type,i=t.pendingProps,a=e!==null?e.memoizedProps:null,o=i.children,EP(n,i)?o=null:a!==null&&EP(n,a)&&(t.flags|=32),N9(e,t),zn(e,t,o,r),t.child;case 6:return e===null&&BP(t),null;case 13:return R9(e,t,r);case 4:return xE(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=pd(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:La(n,i),zB(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,Yt(Ib,n._currentValue),n._currentValue=o,a!==null)if(Ha(a.value,o)){if(a.children===i.children&&!li.current){t=Es(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=_s(-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),zP(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(me(341));o.lanes|=r,s=o.alternate,s!==null&&(s.lanes|=r),zP(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,Qh(t,r),i=ua(i),n=n(i),t.flags|=1,zn(e,t,n,r),t.child;case 14:return n=t.type,i=La(n,t.pendingProps),i=La(n.type,i),$B(e,t,n,i,r);case 15:return E9(e,t,t.type,t.pendingProps,r);case 17:return n=t.type,i=t.pendingProps,i=t.elementType===n?i:La(n,i),U_(e,t),t.tag=1,ui(n)?(e=!0,Pb(t)):e=!1,Qh(t,r),k9(t,n,i),FP(t,n,i,r),WP(null,t,n,!0,e,r);case 19:return B9(e,t,r);case 22:return D9(e,t,r)}throw Error(me(156,t.tag))};function eZ(e,t){return M7(e,t)}function Ole(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 Ole(e,t,r,n)}function DE(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Ele(e){if(typeof e=="function")return DE(e)?1:0;if(e!=null){if(e=e.$$typeof,e===JO)return 11;if(e===eE)return 14}return 2}function Vl(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 X_(e,t,r,n,i,a){var o=2;if(n=e,typeof e=="function")DE(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case Ch:return Oc(r.children,i,a,t);case QO:o=8,i|=8;break;case fP:return e=ra(12,r,t,i|2),e.elementType=fP,e.lanes=a,e;case hP:return e=ra(13,r,t,i),e.elementType=hP,e.lanes=a,e;case dP:return e=ra(19,r,t,i),e.elementType=dP,e.lanes=a,e;case c7:return mS(r,i,a,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case l7:o=10;break e;case u7:o=9;break e;case JO:o=11;break e;case eE:o=14;break e;case gl:o=16,n=null;break e}throw Error(me(130,e==null?e:typeof e,""))}return t=ra(o,r,t,i),t.elementType=e,t.type=n,t.lanes=a,t}function Oc(e,t,r,n){return e=ra(7,e,n,t),e.lanes=r,e}function mS(e,t,r,n){return e=ra(22,e,n,t),e.elementType=c7,e.lanes=r,e.stateNode={isHidden:!1},e}function tC(e,t,r){return e=ra(6,e,null,t),e.lanes=r,e}function rC(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 Dle(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=jA(0),this.expirationTimes=jA(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=jA(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function NE(e,t,r,n,i,a,o,s,l){return e=new Dle(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},yE(a),e}function Nle(e,t,r){var n=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(iZ)}catch(e){console.error(e)}}iZ(),i7.exports=Ei;var aZ=i7.exports,e3=aZ;uP.createRoot=e3.createRoot,uP.hydrateRoot=e3.hydrateRoot;/** + * @remix-run/router v1.23.2 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function xm(){return xm=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function zE(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Fle(){return Math.random().toString(36).substr(2,8)}function r3(e,t){return{usr:e.state,key:e.key,idx:t}}function rL(e,t,r,n){return r===void 0&&(r=null),xm({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?hv(t):t,{state:r,key:t&&t.key||n||Fle()})}function Vb(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 hv(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 Vle(e,t,r,n){n===void 0&&(n={});let{window:i=document.defaultView,v5Compat:a=!1}=n,o=i.history,s=Al.Pop,l=null,u=c();u==null&&(u=0,o.replaceState(xm({},o.state,{idx:u}),""));function c(){return(o.state||{idx:null}).idx}function f(){s=Al.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=Al.Push;let _=rL(g.location,m,x);u=c()+1;let b=r3(_,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=Al.Replace;let _=rL(g.location,m,x);u=c();let b=r3(_,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:Vb(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(t3,f),l=m,()=>{i.removeEventListener(t3,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 n3;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(n3||(n3={}));function Gle(e,t,r){return r===void 0&&(r="/"),Wle(e,t,r)}function Wle(e,t,r,n){let i=typeof t=="string"?hv(t):t,a=$E(i.pathname||"/",r);if(a==null)return null;let o=oZ(e);Hle(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=Gl([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+'".')),oZ(a.children,t,c,u)),!(a.path==null&&!a.index)&&t.push({path:u,score:Qle(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 sZ(a.path))i(a,o,l)}),t}function sZ(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=sZ(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 Hle(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:Jle(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const Ule=/^:[\w-]+$/,Zle=3,Yle=2,Xle=1,qle=10,Kle=-2,i3=e=>e==="*";function Qle(e,t){let r=e.split("/"),n=r.length;return r.some(i3)&&(n+=Kle),t&&(n+=Yle),r.filter(i=>!i3(i)).reduce((i,a)=>i+(Ule.test(a)?Zle:a===""?Xle:qle),n)}function Jle(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 eue(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 rue(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!0),zE(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 nue(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return zE(!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 $E(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 iue=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,aue=e=>iue.test(e);function oue(e,t){t===void 0&&(t="/");let{pathname:r,search:n="",hash:i=""}=typeof e=="string"?hv(e):e,a;if(r)if(aue(r))a=r;else{if(r.includes("//")){let o=r;r=r.replace(/\/\/+/g,"/"),zE(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+r))}r.startsWith("/")?a=a3(r.substring(1),"/"):a=a3(r,t)}else a=t;return{pathname:a,search:uue(n),hash:cue(i)}}function a3(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 nC(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 sue(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function lZ(e,t){let r=sue(e);return t?r.map((n,i)=>i===r.length-1?n.pathname:n.pathnameBase):r.map(n=>n.pathnameBase)}function uZ(e,t,r,n){n===void 0&&(n=!1);let i;typeof e=="string"?i=hv(e):(i=xm({},e),Or(!i.pathname||!i.pathname.includes("?"),nC("?","pathname","search",i)),Or(!i.pathname||!i.pathname.includes("#"),nC("#","pathname","hash",i)),Or(!i.search||!i.search.includes("#"),nC("#","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=oue(i,s),u=o&&o!=="/"&&o.endsWith("/"),c=(a||o===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(u||c)&&(l.pathname+="/"),l}const Gl=e=>e.join("/").replace(/\/\/+/g,"/"),lue=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),uue=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,cue=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function fue(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 hue=["get",...cZ];new Set(hue);/** + * React Router v6.30.3 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function _m(){return _m=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=uZ(u,JSON.parse(o),a,c.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Gl([t,f.pathname])),(c.replace?n.replace:n.push)(f,c.state,c)},[t,n,o,a,e])}function vZ(e,t){let{relative:r}=t===void 0?{}:t,{future:n}=H.useContext(pf),{matches:i}=H.useContext(gf),{pathname:a}=dv(),o=JSON.stringify(lZ(i,n.v7_relativeSplatPath));return H.useMemo(()=>uZ(e,JSON.parse(o),a,r==="path"),[e,o,a,r])}function gue(e,t){return mue(e,t)}function mue(e,t,r,n){Wy()||Or(!1);let{navigator:i}=H.useContext(pf),{matches:a}=H.useContext(gf),o=a[a.length-1],s=o?o.params:{};o&&o.pathname;let l=o?o.pathnameBase:"/";o&&o.route;let u=dv(),c;if(t){var f;let m=typeof t=="string"?hv(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=Gle(e,{pathname:d}),g=wue(v&&v.map(m=>Object.assign({},m,{params:Object.assign({},s,m.params),pathname:Gl([l,i.encodeLocation?i.encodeLocation(m.pathname).pathname:m.pathname]),pathnameBase:m.pathnameBase==="/"?l:Gl([l,i.encodeLocation?i.encodeLocation(m.pathnameBase).pathname:m.pathnameBase])})),a,r,n);return t&&g?H.createElement(wS.Provider,{value:{location:_m({pathname:"/",search:"",hash:"",state:null,key:"default"},c),navigationType:Al.Pop}},g):g}function yue(){let e=Cue(),t=fue(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 xue=H.createElement(yue,null);class _ue 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(gf.Provider,{value:this.props.routeContext},H.createElement(fZ.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(FE);return i&&i.static&&i.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=r.route.id),H.createElement(gf.Provider,{value:t},n)}function wue(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||xue,l&&(u<0&&h===0?(Pue("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(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(_ue,{location:r.location,revalidation:r.revalidation,component:g,error:d,children:_(),routeContext:{outlet:null,matches:x,isDataRoute:!0}}):_()},null)}var pZ=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(pZ||{}),gZ=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}(gZ||{});function Sue(e){let t=H.useContext(FE);return t||Or(!1),t}function Tue(e){let t=H.useContext(due);return t||Or(!1),t}function Aue(e){let t=H.useContext(gf);return t||Or(!1),t}function mZ(e){let t=Aue(),r=t.matches[t.matches.length-1];return r.route.id||Or(!1),r.route.id}function Cue(){var e;let t=H.useContext(fZ),r=Tue(),n=mZ();return t!==void 0?t:(e=r.errors)==null?void 0:e[n]}function Mue(){let{router:e}=Sue(pZ.UseNavigateStable),t=mZ(gZ.UseNavigateStable),r=H.useRef(!1);return hZ(()=>{r.current=!0}),H.useCallback(function(i,a){a===void 0&&(a={}),r.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,_m({fromRouteId:t},a)))},[e,t])}const o3={};function Pue(e,t,r){o3[e]||(o3[e]=!0)}function Lue(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function hl(e){Or(!1)}function kue(e){let{basename:t="/",children:r=null,location:n,navigationType:i=Al.Pop,navigator:a,static:o=!1,future:s}=e;Wy()&&Or(!1);let l=t.replace(/^\/*/,"/"),u=H.useMemo(()=>({basename:l,navigator:a,static:o,future:_m({v7_relativeSplatPath:!1},s)}),[l,s,a,o]);typeof n=="string"&&(n=hv(n));let{pathname:c="/",search:f="",hash:h="",state:d=null,key:v="default"}=n,g=H.useMemo(()=>{let m=$E(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(pf.Provider,{value:u},H.createElement(wS.Provider,{children:r,value:g}))}function Iue(e){let{children:t,location:r}=e;return gue(nL(t),r)}new Promise(()=>{});function nL(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,nL(n.props.children,a));return}n.type!==hl&&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=nL(n.props.children,a)),r.push(o)}),r}/** + * React Router DOM v6.30.3 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function iL(){return iL=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(r[i]=e[i]);return r}function Eue(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Due(e,t){return e.button===0&&(!t||t==="_self")&&!Eue(e)}const Nue=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],jue="6";try{window.__reactRouterVersion=jue}catch{}const Rue="startTransition",s3=Loe[Rue];function Bue(e){let{basename:t,children:r,future:n,window:i}=e,a=H.useRef();a.current==null&&(a.current=$le({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&&s3?s3(()=>l(f)):l(f)},[l,u]);return H.useLayoutEffect(()=>o.listen(c),[o,c]),H.useEffect(()=>Lue(n),[n]),H.createElement(kue,{basename:t,children:r,location:s.location,navigationType:s.action,navigator:o,future:n})}const zue=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",$ue=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Fue=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=Oue(t,Nue),{basename:d}=H.useContext(pf),v,g=!1;if(typeof u=="string"&&$ue.test(u)&&(v=u,zue))try{let b=new URL(window.location.href),S=u.startsWith("//")?new URL(b.protocol+u):new URL(u),T=$E(S.pathname,d);S.origin===b.origin&&T!=null?u=T+S.search+S.hash:g=!0}catch{}let m=vue(u,{relative:i}),x=Vue(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",iL({},h,{href:v||m,onClick:g||a?n:_,ref:r,target:l}))});var l3;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(l3||(l3={}));var u3;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(u3||(u3={}));function Vue(e,t){let{target:r,replace:n,state:i,preventScrollReset:a,relative:o,viewTransition:s}=t===void 0?{}:t,l=dZ(),u=dv(),c=vZ(e,{relative:o});return H.useCallback(f=>{if(Due(f,r)){f.preventDefault();let h=n!==void 0?n:Vb(u)===Vb(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 Gue=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),yZ=(...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 Wue={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 Hue=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,...Wue,width:t,height:t,stroke:e,strokeWidth:n?Number(r)*24/Number(t):r,className:yZ("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 Be=(e,t)=>{const r=H.forwardRef(({className:n,...i},a)=>H.createElement(Hue,{ref:a,iconNode:t,className:yZ(`lucide-${Gue(e)}`,n),...i}));return r.displayName=`${e}`,r};/** + * @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 Hy=Be("Activity",[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]]);/** + * @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 iC=Be("Battery",[["rect",{width:"16",height:"10",x:"2",y:"7",rx:"2",ry:"2",key:"1w10f2"}],["line",{x1:"22",x2:"22",y1:"11",y2:"13",key:"4dh1rd"}]]);/** + * @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 Uue=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const bm=Be("Bell",[["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"}]]);/** + * @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 xZ=Be("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 Zue=Be("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 Yue=Be("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 Xue=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const VE=Be("Car",[["path",{d:"M19 17h2c.6 0 1-.4 1-1v-3c0-.9-.7-1.7-1.5-1.9C18.7 10.6 16 10 16 10s-1.3-1.4-2.2-2.3c-.5-.4-1.1-.7-1.8-.7H5c-.6 0-1.1.4-1.4.9l-1.4 2.9A3.7 3.7 0 0 0 2 12v4c0 .6.4 1 1 1h2",key:"5owen"}],["circle",{cx:"7",cy:"17",r:"2",key:"u2ysq9"}],["path",{d:"M9 17h6",key:"r8uit2"}],["circle",{cx:"17",cy:"17",r:"2",key:"axvx0g"}]]);/** + * @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 Xc=Be("Check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);/** + * @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 Uy=Be("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);/** + * @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 que=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const wm=Be("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);/** + * @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 Kue=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const xd=Be("CircleAlert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);/** + * @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 ed=Be("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 _d=Be("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 Que=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const qc=Be("Cloud",[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]]);/** + * @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 Jue=Be("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 _Z=Be("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 ece=Be("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 bZ=Be("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 tce=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const GE=Be("Droplets",[["path",{d:"M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z",key:"1ptgy4"}],["path",{d:"M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97",key:"1sl1rz"}]]);/** + * @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 bd=Be("ExternalLink",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);/** + * @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=Be("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 WE=Be("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 HE=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const UE=Be("Flame",[["path",{d:"M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z",key:"96xj49"}]]);/** + * @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 rce=Be("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 Sm=Be("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 SZ=Be("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 TZ=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const nce=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const AZ=Be("MapPin",[["path",{d:"M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z",key:"2oe9fu"}],["circle",{cx:"12",cy:"10",r:"3",key:"ilqhr7"}]]);/** + * @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=Be("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 CZ=Be("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 ace=Be("Moon",[["path",{d:"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z",key:"a7tn18"}]]);/** + * @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=Be("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 oce=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const SS=Be("Plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);/** + * @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 Ds=Be("Radio",[["path",{d:"M4.9 19.1C1 15.2 1 8.8 4.9 4.9",key:"1vaf9d"}],["path",{d:"M7.8 16.2c-2.3-2.3-2.3-6.1 0-8.5",key:"u1ii0m"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}],["path",{d:"M16.2 7.8c2.3 2.3 2.3 6.1 0 8.5",key:"1j5fej"}],["path",{d:"M19.1 4.9C23 8.8 23 15.1 19.1 19",key:"10b0cb"}]]);/** + * @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 Gb=Be("RefreshCw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);/** + * @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 MZ=Be("RotateCcw",[["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"}]]);/** + * @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 YE=Be("Satellite",[["path",{d:"M13 7 9 3 5 7l4 4",key:"vyckw6"}],["path",{d:"m17 11 4 4-4 4-4-4",key:"rchckc"}],["path",{d:"m8 12 4 4 6-6-4-4Z",key:"1sshf7"}],["path",{d:"m16 8 3-3",key:"x428zp"}],["path",{d:"M9 21a6 6 0 0 0-6-6",key:"1iajcf"}]]);/** + * @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 PZ=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const XE=Be("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/** + * @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 c3=Be("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 LZ=Be("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 Wb=Be("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 kZ=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const sce=Be("Thermometer",[["path",{d:"M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z",key:"17jzev"}]]);/** + * @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 qE=Be("Trash2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]]);/** + * @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 Ns=Be("TriangleAlert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/** + * @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=Be("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 IZ=Be("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. + * See the LICENSE file in the root directory of this source tree. + */const TS=Be("Wifi",[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]]);/** + * @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 f3=Be("Wind",[["path",{d:"M17.7 7.7a2.5 2.5 0 1 1 1.8 4.3H2",key:"1k4u03"}],["path",{d:"M9.6 4.6A2 2 0 1 1 11 8H2",key:"b7d0fd"}],["path",{d:"M12.6 19.4A2 2 0 1 0 14 16H2",key:"1p5cb3"}]]);/** + * @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 ru=Be("X",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);/** + * @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 Tm=Be("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 Zr(e){const t=await fetch(e);if(!t.ok)throw new Error(`API error: ${t.status} ${t.statusText}`);return t.json()}async function h3(){return Zr("/api/status")}async function uce(){return Zr("/api/health")}async function cce(){return Zr("/api/nodes")}async function fce(){return Zr("/api/edges")}async function hce(){return Zr("/api/sources")}async function OZ(){return Zr("/api/alerts/active")}async function d3(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),Zr(`/api/alerts/history?${i.toString()}`)}async function dce(){return Zr("/api/subscriptions")}async function EZ(){return Zr("/api/env/status")}async function DZ(){return Zr("/api/env/active")}async function NZ(){return Zr("/api/env/swpc")}async function jZ(){return Zr("/api/env/ducting")}async function vce(){return Zr("/api/env/fires")}async function pce(){return Zr("/api/env/avalanche")}async function gce(){return Zr("/api/env/streams")}async function mce(){return Zr("/api/env/traffic")}async function yce(){return Zr("/api/env/roads")}async function xce(){return Zr("/api/env/hotspots")}async function _ce(){return Zr("/api/regions")}function KE(){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 RZ=H.createContext(null);function bce(){const e=H.useContext(RZ);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}function wce(e){switch(e==null?void 0:e.toLowerCase()){case"critical":case"emergency":return{bg:"bg-red-500/10",border:"border-red-500",icon:xd,iconColor:"text-red-500"};case"warning":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Ns,iconColor:"text-amber-500"};default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:Sm,iconColor:"text-blue-500"}}}function Sce({toast:e,onDismiss:t,onNavigate:r}){const n=wce(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(ru,{size:16})})]})})}function Tce({children:e}){const[t,r]=H.useState([]),n=dZ(),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(RZ.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(Sce,{toast:s,onDismiss:()=>a(s.id),onNavigate:o})},s.id))})]})}const BZ=[{path:"/",label:"Dashboard",icon:TZ},{path:"/mesh",label:"Mesh",icon:Ds},{path:"/environment",label:"Environment",icon:qc},{path:"/config",label:"Config",icon:LZ},{path:"/alerts",label:"Alerts",icon:bm},{path:"/notifications",label:"Notifications",icon:Uue},{path:"/reference",label:"Reference",icon:xZ}];function Ace(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 Cce(e){const t=BZ.find(r=>r.path===e);return(t==null?void 0:t.label)||"Dashboard"}function Mce({children:e}){var h;const t=dv(),{connected:r,lastAlert:n}=KE(),{addToast:i}=bce(),[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(()=>{h3().then(o).catch(console.error);const d=setInterval(()=>{h3().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:BZ.map(d=>{const v=t.pathname===d.path,g=d.icon;return y.jsxs(Fue,{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?Ace(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:Cce(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.jsx("main",{className:"flex-1 overflow-y-auto p-6",children:e})]})]})}function zZ(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 Che=Ahe,Mhe=CS;function Phe(e,t){var r=this.__data__,n=Mhe(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this}var Lhe=Phe,khe=hhe,Ihe=_he,Ohe=She,Ehe=Che,Dhe=Lhe;function mv(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t0?1:-1},xc=function(t){return Kc(t)&&t.indexOf("%")===t.length-1},we=function(t){return eve(t)&&!xv(t)},ive=function(t){return dt(t)},Vr=function(t){return we(t)||Kc(t)},ave=0,_v=function(t){var r=++ave;return"".concat(t||"").concat(r)},Qc=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)&&!Kc(t))return n;var a;if(xc(t)){var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return xv(a)&&(a=n),i&&a>r&&(a=r),a},_h=function(t){if(!t)return null;var r=Object.keys(t);return r&&r.length?t[r[0]]:null},ove=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 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 oL(e){"@babel/helpers - typeof";return oL=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},oL(e)}var A3={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"},bs=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},C3=null,sC=null,uD=function e(t){if(t===C3&&Array.isArray(sC))return sC;var r=[];return H.Children.forEach(t,function(n){dt(n)||(Xde.isFragment(n)?r=r.concat(e(n.props.children)):r.push(n))}),sC=r,C3=t,r};function oa(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(function(i){return bs(i)}):n=[bs(t)],uD(e).forEach(function(i){var a=aa(i,"type.displayName")||aa(i,"type.name");n.indexOf(a)!==-1&&r.push(i)}),r}function xi(e,t){var r=oa(e,t);return r&&r[0]}var M3=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)},vve=["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&&Kc(t.type)&&vve.indexOf(t.type)>=0},QZ=function(t){return t&&oL(t)==="object"&&"clipDot"in t},gve=function(t,r,n,i){var a,o=(a=oC==null?void 0:oC[i])!==null&&a!==void 0?a:[];return r.startsWith("data-")||!ft(t)&&(i&&o.includes(r)||uve.includes(r))||n&&lD.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),!pv(i))return null;var a={};return Object.keys(i).forEach(function(o){var s;gve((s=i)===null||s===void 0?void 0:s[o],o,r,n)&&(a[o]=i[o])}),a},sL=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 P3(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 bve(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 uL(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=_ve(e,xve),c=i||{width:r,height:n,x:0,y:0},f=xt("recharts-surface",a);return Q.createElement("svg",lL({},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 wve=["children","className"];function cL(){return cL=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 Tve(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 Xt=Q.forwardRef(function(e,t){var r=e.children,n=e.className,i=Sve(e,wve),a=xt("recharts-layer",n);return Q.createElement("g",cL({className:a},ct(i,!0),{ref:t}),r)}),Ec=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:Mve(e,t,r)}var Lve=Pve,kve="\\ud800-\\udfff",Ive="\\u0300-\\u036f",Ove="\\ufe20-\\ufe2f",Eve="\\u20d0-\\u20ff",Dve=Ive+Ove+Eve,Nve="\\ufe0e\\ufe0f",jve="\\u200d",Rve=RegExp("["+jve+kve+Dve+Nve+"]");function Bve(e){return Rve.test(e)}var JZ=Bve;function zve(e){return e.split("")}var $ve=zve,eY="\\ud800-\\udfff",Fve="\\u0300-\\u036f",Vve="\\ufe20-\\ufe2f",Gve="\\u20d0-\\u20ff",Wve=Fve+Vve+Gve,Hve="\\ufe0e\\ufe0f",Uve="["+eY+"]",fL="["+Wve+"]",hL="\\ud83c[\\udffb-\\udfff]",Zve="(?:"+fL+"|"+hL+")",tY="[^"+eY+"]",rY="(?:\\ud83c[\\udde6-\\uddff]){2}",nY="[\\ud800-\\udbff][\\udc00-\\udfff]",Yve="\\u200d",iY=Zve+"?",aY="["+Hve+"]?",Xve="(?:"+Yve+"(?:"+[tY,rY,nY].join("|")+")"+aY+iY+")*",qve=aY+iY+Xve,Kve="(?:"+[tY+fL+"?",fL,rY,nY,Uve].join("|")+")",Qve=RegExp(hL+"(?="+hL+")|"+Kve+qve,"g");function Jve(e){return e.match(Qve)||[]}var epe=Jve,tpe=$ve,rpe=JZ,npe=epe;function ipe(e){return rpe(e)?npe(e):tpe(e)}var ape=ipe,ope=Lve,spe=JZ,lpe=ape,upe=UZ;function cpe(e){return function(t){t=upe(t);var r=spe(t)?lpe(t):void 0,n=r?r[0]:t.charAt(0),i=r?ope(r,1).join(""):t.slice(1);return n[e]()+i}}var fpe=cpe,hpe=fpe,dpe=hpe("toUpperCase"),vpe=dpe;const $S=Ft(vpe);function Zt(e){return function(){return e}}const oY=Math.cos,Yb=Math.sin,Xa=Math.sqrt,Xb=Math.PI,FS=2*Xb,dL=Math.PI,vL=2*dL,nc=1e-6,ppe=vL-nc;function sY(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return sY;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;inc)if(!(Math.abs(f*l-u*c)>nc)||!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((dL-Math.acos((g+h-m)/(2*x*_)))/2),S=b/_,T=b/x;Math.abs(S-1)>nc&&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)>nc||Math.abs(this._y1-c)>nc)&&this._append`L${u},${c}`,n&&(h<0&&(h=h%vL+vL),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>nc&&this._append`A${n},${n},0,${+(h>=dL)},${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 mpe(t)}function fD(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function lY(e){this._context=e}lY.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 VS(e){return new lY(e)}function uY(e){return e[0]}function cY(e){return e[1]}function fY(e,t){var r=Zt(!0),n=null,i=VS,a=null,o=cD(s);e=typeof e=="function"?e:e===void 0?uY:Zt(e),t=typeof t=="function"?t:t===void 0?cY:Zt(t);function s(l){var u,c=(l=fD(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 fY().defined(i).curve(o).context(a)}return u.x=function(f){return arguments.length?(e=typeof f=="function"?f:Zt(+f),n=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:Zt(+f),u):e},u.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:Zt(+f),u):n},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:Zt(+f),r=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:Zt(+f),u):t},u.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:Zt(+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:Zt(!!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 hY{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 ype(e){return new hY(e,!0)}function xpe(e){return new hY(e,!1)}const hD={draw(e,t){const r=Xa(t/Xb);e.moveTo(r,0),e.arc(0,0,r,0,FS)}},_pe={draw(e,t){const r=Xa(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()}},dY=Xa(1/3),bpe=dY*2,wpe={draw(e,t){const r=Xa(t/bpe),n=r*dY;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},Spe={draw(e,t){const r=Xa(t),n=-r/2;e.rect(n,n,r,r)}},Tpe=.8908130915292852,vY=Yb(Xb/10)/Yb(7*Xb/10),Ape=Yb(FS/10)*vY,Cpe=-oY(FS/10)*vY,Mpe={draw(e,t){const r=Xa(t*Tpe),n=Ape*r,i=Cpe*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=FS*a/5,s=oY(o),l=Yb(o);e.lineTo(l*r,-s*r),e.lineTo(s*n-l*i,l*n+s*i)}e.closePath()}},lC=Xa(3),Ppe={draw(e,t){const r=-Xa(t/(lC*3));e.moveTo(0,r*2),e.lineTo(-lC*r,-r),e.lineTo(lC*r,-r),e.closePath()}},$i=-.5,Fi=Xa(3)/2,pL=1/Xa(12),Lpe=(pL/2+1)*3,kpe={draw(e,t){const r=Xa(t/Lpe),n=r/2,i=r*pL,a=n,o=r*pL+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 Ipe(e,t){let r=null,n=cD(i);e=typeof e=="function"?e:Zt(e||hD),t=typeof t=="function"?t:Zt(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:Zt(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:Zt(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function qb(){}function Kb(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 pY(e){this._context=e}pY.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:Kb(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:Kb(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Ope(e){return new pY(e)}function gY(e){this._context=e}gY.prototype={areaStart:qb,areaEnd:qb,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:Kb(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Epe(e){return new gY(e)}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(){(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:Kb(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function Dpe(e){return new mY(e)}function yY(e){this._context=e}yY.prototype={areaStart:qb,areaEnd:qb,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 Npe(e){return new yY(e)}function k3(e){return e<0?-1:1}function I3(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(k3(a)+k3(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function O3(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function uC(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 Qb(e){this._context=e}Qb.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:uC(this,this._t0,O3(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,uC(this,O3(this,r=I3(this,e,t)),r);break;default:uC(this,this._t0,r=I3(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function xY(e){this._context=new _Y(e)}(xY.prototype=Object.create(Qb.prototype)).point=function(e,t){Qb.prototype.point.call(this,t,e)};function _Y(e){this._context=e}_Y.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 jpe(e){return new Qb(e)}function Rpe(e){return new xY(e)}function bY(e){this._context=e}bY.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=E3(e),i=E3(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 zpe(e){return new GS(e,.5)}function $pe(e){return new GS(e,0)}function Fpe(e){return new GS(e,1)}function wd(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 Vpe(e,t){return e[t]}function Gpe(e){const t=[];return t.key=e,t}function Wpe(){var e=Zt([]),t=gL,r=wd,n=Vpe;function i(a){var o=Array.from(e.apply(this,arguments),Gpe),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 Jpe(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 wY={symbolCircle:hD,symbolCross:_pe,symbolDiamond:wpe,symbolSquare:Spe,symbolStar:Mpe,symbolTriangle:Ppe,symbolWye:kpe},ege=Math.PI/180,tge=function(t){var r="symbol".concat($S(t));return wY[r]||hD},rge=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*ege;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}},nge=function(t,r){wY["symbol".concat($S(t))]=r},dD=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=Qpe(t,Ype),u=N3(N3({},l),{},{type:n,size:a,sizeType:s}),c=function(){var m=tge(n),x=Ipe().type(m).size(rge(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",mL({},v,{className:xt("recharts-symbols",f),transform:"translate(".concat(h,", ").concat(d,")"),d:c()})):null};dD.registerSymbol=nge;function Sd(e){"@babel/helpers - typeof";return Sd=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},Sd(e)}function yL(){return yL=Object.assign?Object.assign.bind():function(e){for(var t=1;t`);var _=d.inactive?u:d.color;return Q.createElement("li",yL({className:m,style:f,key:"legend-item-".concat(v)},Zb(n.props,d,v)),Q.createElement(uL,{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);Cm(vD,"displayName","Legend");Cm(vD,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var dge=MS;function vge(){this.__data__=new dge,this.size=0}var pge=vge;function gge(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}var mge=gge;function yge(e){return this.__data__.get(e)}var xge=yge;function _ge(e){return this.__data__.has(e)}var bge=_ge,wge=MS,Sge=tD,Tge=rD,Age=200;function Cge(e,t){var r=this.__data__;if(r instanceof wge){var n=r.__data__;if(!Sge||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&Yge?new Wge:void 0;for(a.set(e,t),a.set(t,e);++f-1&&e%1==0&&e-1&&e%1==0&&e<=Qme}var yD=Jme,eye=Ys,tye=yD,rye=Xs,nye="[object Arguments]",iye="[object Array]",aye="[object Boolean]",oye="[object Date]",sye="[object Error]",lye="[object Function]",uye="[object Map]",cye="[object Number]",fye="[object Object]",hye="[object RegExp]",dye="[object Set]",vye="[object String]",pye="[object WeakMap]",gye="[object ArrayBuffer]",mye="[object DataView]",yye="[object Float32Array]",xye="[object Float64Array]",_ye="[object Int8Array]",bye="[object Int16Array]",wye="[object Int32Array]",Sye="[object Uint8Array]",Tye="[object Uint8ClampedArray]",Aye="[object Uint16Array]",Cye="[object Uint32Array]",Kt={};Kt[yye]=Kt[xye]=Kt[_ye]=Kt[bye]=Kt[wye]=Kt[Sye]=Kt[Tye]=Kt[Aye]=Kt[Cye]=!0;Kt[nye]=Kt[iye]=Kt[gye]=Kt[aye]=Kt[mye]=Kt[oye]=Kt[sye]=Kt[lye]=Kt[uye]=Kt[cye]=Kt[fye]=Kt[hye]=Kt[dye]=Kt[vye]=Kt[pye]=!1;function Mye(e){return rye(e)&&tye(e.length)&&!!Kt[eye(e)]}var Pye=Mye;function Lye(e){return function(t){return e(t)}}var EY=Lye,r1={exports:{}};r1.exports;(function(e,t){var r=$Z,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})(r1,r1.exports);var kye=r1.exports,Iye=Pye,Oye=EY,V3=kye,G3=V3&&V3.isTypedArray,Eye=G3?Oye(G3):Iye,DY=Eye,Dye=Rme,Nye=gD,jye=di,Rye=OY,Bye=mD,zye=DY,$ye=Object.prototype,Fye=$ye.hasOwnProperty;function Vye(e,t){var r=jye(e),n=!r&&Nye(e),i=!r&&!n&&Rye(e),a=!r&&!n&&!i&&zye(e),o=r||n||i||a,s=o?Dye(e.length,String):[],l=s.length;for(var u in e)(t||Fye.call(e,u))&&!(o&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Bye(u,l)))&&s.push(u);return s}var Gye=Vye,Wye=Object.prototype;function Hye(e){var t=e&&e.constructor,r=typeof t=="function"&&t.prototype||Wye;return e===r}var Uye=Hye;function Zye(e,t){return function(r){return e(t(r))}}var NY=Zye,Yye=NY,Xye=Yye(Object.keys,Object),qye=Xye,Kye=Uye,Qye=qye,Jye=Object.prototype,e0e=Jye.hasOwnProperty;function t0e(e){if(!Kye(e))return Qye(e);var t=[];for(var r in Object(e))e0e.call(e,r)&&r!="constructor"&&t.push(r);return t}var r0e=t0e,n0e=JE,i0e=yD;function a0e(e){return e!=null&&i0e(e.length)&&!n0e(e)}var WS=a0e,o0e=Gye,s0e=r0e,l0e=WS;function u0e(e){return l0e(e)?o0e(e):s0e(e)}var xD=u0e,c0e=Ame,f0e=Nme,h0e=xD;function d0e(e){return c0e(e,h0e,f0e)}var v0e=d0e,W3=v0e,p0e=1,g0e=Object.prototype,m0e=g0e.hasOwnProperty;function y0e(e,t,r,n,i,a){var o=r&p0e,s=W3(e),l=s.length,u=W3(t),c=u.length;if(l!=c&&!o)return!1;for(var f=l;f--;){var h=s[f];if(!(o?h in t:m0e.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 m_e=g_e;function y_e(e,t,r){for(var n=-1,i=e==null?0:e.length;++n=E_e){var u=t?null:I_e(e);if(u)return O_e(u);o=!1,i=k_e,l=new M_e}else l=t?[]:s;e:for(;++n=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function X_e(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 q_e(e){return e.value}function K_e(e,t){if(Q.isValidElement(e))return Q.cloneElement(e,t);if(typeof e=="function")return Q.createElement(e,t);t.ref;var r=Y_e(t,$_e);return Q.createElement(vD,r)}var oz=1,rd=function(e){function t(){var r;F_e(this,t);for(var n=arguments.length,i=new Array(n),a=0;aoz||Math.abs(i.height-this.lastBoundingBox.height)>oz)&&(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?Jo({},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 Jo(Jo({},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=Jo(Jo({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}},K_e(a,Jo(Jo({},this.props),{},{payload:FY(c,u,q_e)})))}}],[{key:"getWithHeight",value:function(n,i){var a=Jo(Jo({},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);HS(rd,"displayName","Legend");HS(rd,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var sz=Zy,Q_e=gD,J_e=di,lz=sz?sz.isConcatSpreadable:void 0;function ebe(e){return J_e(e)||Q_e(e)||!!(lz&&e&&e[lz])}var tbe=ebe,rbe=kY,nbe=tbe;function WY(e,t,r,n,i){var a=-1,o=e.length;for(r||(r=nbe),i||(i=[]);++a0&&r(s)?t>1?WY(s,t-1,r,n,i):rbe(i,s):n||(i[i.length]=s)}return i}var HY=WY;function ibe(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 abe=ibe,obe=abe,sbe=obe(),lbe=sbe,ube=lbe,cbe=xD;function fbe(e,t){return e&&ube(e,t,cbe)}var UY=fbe,hbe=WS;function dbe(e,t){return function(r,n){if(r==null)return r;if(!hbe(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 Mbe=Cbe,dC=iD,Pbe=aD,Lbe=Tv,kbe=ZY,Ibe=wbe,Obe=EY,Ebe=Mbe,Dbe=Sv,Nbe=di;function jbe(e,t,r){t.length?t=dC(t,function(a){return Nbe(a)?function(o){return Pbe(o,a.length===1?a[0]:a)}:a}):t=[Dbe];var n=-1;t=dC(t,Obe(Lbe));var i=kbe(e,function(a,o,s){var l=dC(t,function(u){return u(a)});return{criteria:l,index:++n,value:a}});return Ibe(i,function(a,o){return Ebe(a,o,r)})}var Rbe=jbe;function Bbe(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 zbe=Bbe,$be=zbe,cz=Math.max;function Fbe(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>=Kbe)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var t1e=e1e,r1e=qbe,n1e=t1e,i1e=n1e(r1e),a1e=i1e,o1e=Sv,s1e=Vbe,l1e=a1e;function u1e(e,t){return l1e(s1e(e,t,o1e),e+"")}var c1e=u1e,f1e=eD,h1e=WS,d1e=mD,v1e=hu;function p1e(e,t,r){if(!v1e(r))return!1;var n=typeof t;return(n=="number"?h1e(r)&&d1e(t,r.length):n=="string"&&t in r)?f1e(r[t],e):!1}var US=p1e,g1e=HY,m1e=Rbe,y1e=c1e,hz=US,x1e=y1e(function(e,t){if(e==null)return[];var r=t.length;return r>1&&hz(e,t[0],t[1])?t=[]:r>2&&hz(t[0],t[1],t[2])&&(t=[t[0]]),m1e(e,g1e(t,1),[])}),_1e=x1e;const wD=Ft(_1e);function Mm(e){"@babel/helpers - typeof";return Mm=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},Mm(e)}function CL(){return CL=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(xp,"-left"),we(r)&&t&&we(t.x)&&r=t.y),"".concat(xp,"-top"),we(n)&&t&&we(t.y)&&ng?Math.max(c,l[n]):Math.max(f,l[n])}function N1e(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 j1e(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=N1e({translateX:c,translateY:f,useTranslate3d:s})):u=E1e,{cssProperties:u,cssClasses:D1e({translateX:c,translateY:f,coordinate:r})}}function Ad(e){"@babel/helpers - typeof";return Ad=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},Ad(e)}function gz(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 mz(e){for(var t=1;tyz||Math.abs(n.height-this.state.lastBoundingBox.height)>yz)&&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=j1e({allowEscapeViewBox:o,coordinate:c,offsetTopLeft:d,position:v,reverseDirection:g,tooltipBox:this.state.lastBoundingBox,useTranslate3d:m,viewBox:x}),S=b.cssClasses,T=b.cssProperties,A=mz(mz({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:A,ref:function(P){n.wrapperNode=P}},u)}}])}(H.PureComponent),U1e=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},yf={isSsr:U1e()};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 xz(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 _z(e){for(var t=1;t0;return Q.createElement(H1e,{allowEscapeViewBox:o,animationDuration:s,animationEasing:l,isAnimationActive:h,active:a,coordinate:c,hasPayload:A,offset:d,position:m,reverseDirection:x,useTranslate3d:_,viewBox:b,wrapperStyle:S},rwe(u,_z(_z({},this.props),{},{payload:T})))}}])}(H.PureComponent);SD(os,"displayName","Tooltip");SD(os,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!yf.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 nwe=Ho,iwe=function(){return nwe.Date.now()},awe=iwe,owe=/\s/;function swe(e){for(var t=e.length;t--&&owe.test(e.charAt(t)););return t}var lwe=swe,uwe=lwe,cwe=/^\s+/;function fwe(e){return e&&e.slice(0,uwe(e)+1).replace(cwe,"")}var hwe=fwe,dwe=hwe,bz=hu,vwe=vv,wz=NaN,pwe=/^[-+]0x[0-9a-f]+$/i,gwe=/^0b[01]+$/i,mwe=/^0o[0-7]+$/i,ywe=parseInt;function xwe(e){if(typeof e=="number")return e;if(vwe(e))return wz;if(bz(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=bz(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=dwe(e);var r=gwe.test(e);return r||mwe.test(e)?ywe(e.slice(2),r?2:8):pwe.test(e)?wz:+e}var JY=xwe,_we=hu,pC=awe,Sz=JY,bwe="Expected a function",wwe=Math.max,Swe=Math.min;function Twe(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(bwe);t=Sz(t)||0,_we(r)&&(c=!!r.leading,f="maxWait"in r,a=f?wwe(Sz(r.maxWait)||0,t):a,h="trailing"in r?!!r.trailing:h);function d(A){var M=n,P=i;return n=i=void 0,u=A,o=e.apply(P,M),o}function v(A){return u=A,s=setTimeout(x,t),c?d(A):o}function g(A){var M=A-l,P=A-u,I=t-M;return f?Swe(I,a-P):I}function m(A){var M=A-l,P=A-u;return l===void 0||M>=t||M<0||f&&P>=a}function x(){var A=pC();if(m(A))return _(A);s=setTimeout(x,g(A))}function _(A){return s=void 0,h&&n?d(A):(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:_(pC())}function T(){var A=pC(),M=m(A);if(n=arguments,i=this,l=A,M){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 Awe=Twe,Cwe=Awe,Mwe=hu,Pwe="Expected a function";function Lwe(e,t,r){var n=!0,i=!0;if(typeof e!="function")throw new TypeError(Pwe);return Mwe(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),Cwe(e,t,{leading:n,maxWait:t,trailing:i})}var kwe=Lwe;const eX=Ft(kwe);function Lm(e){"@babel/helpers - typeof";return Lm=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},Lm(e)}function Tz(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 ux(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,n=new Array(t);r0&&(N=eX(N,g,{trailing:!0,leading:!1}));var j=new ResizeObserver(N),z=T.current.getBoundingClientRect(),$=z.width,U=z.height;return O($,U),j.observe(T.current),function(){j.disconnect()}},[O,g]);var D=H.useMemo(function(){var N=I.containerWidth,j=I.containerHeight;if(N<0||j<0)return null;Ec(xc(o)||xc(l),`The width(%s) and height(%s) are both fixed numbers, + maybe you don't need to use a ResponsiveContainer.`,o,l),Ec(!r||r>0,"The aspect(%s) must be greater than zero.",r);var z=xc(o)?N:o,$=xc(l)?j:l;r&&r>0&&(z?$=z/r:$&&(z=$*r),h&&$>h&&($=h)),Ec(z>0||$>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.`,z,$,o,l,c,f,r);var U=!Array.isArray(d)&&bs(d.type).endsWith("Chart");return Q.Children.map(d,function(F){return Q.isValidElement(F)?H.cloneElement(F,ux({width:z,height:$},U?{style:ux({height:"100%",width:"100%",maxHeight:$,maxWidth:z},F.props.style)}:{})):F})},[r,d,l,h,f,c,I,o]);return Q.createElement("div",{id:m?"".concat(m):void 0,className:xt("recharts-responsive-container",x),style:ux(ux({},S),{},{width:o,height:l,minWidth:c,minHeight:f,maxHeight:h}),ref:T},D)}),rX=function(t){return null};rX.displayName="Cell";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 Cz(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 kL(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||yf.isSsr)return{width:0,height:0};var n=Wwe(r),i=JSON.stringify({text:t,copyStyle:n});if(Gf.widthCache[i])return Gf.widthCache[i];try{var a=document.getElementById(Mz);a||(a=document.createElement("span"),a.setAttribute("id",Mz),a.setAttribute("aria-hidden","true"),document.body.appendChild(a));var o=kL(kL({},Gwe),n);Object.assign(a.style,o),a.textContent="".concat(t);var s=a.getBoundingClientRect(),l={width:s.width,height:s.height};return Gf.widthCache[i]=l,++Gf.cacheCount>Vwe&&(Gf.cacheCount=0,Gf.widthCache={}),l}catch{return{width:0,height:0}}},Hwe=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};function Im(e){"@babel/helpers - typeof";return Im=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},Im(e)}function o1(e,t){return Xwe(e)||Ywe(e,t)||Zwe(e,t)||Uwe()}function Uwe(){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 Zwe(e,t){if(e){if(typeof e=="string")return Pz(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 Pz(e,t)}}function Pz(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 uSe(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 Dz(e,t){return dSe(e)||hSe(e,t)||fSe(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 fSe(e,t){if(e){if(typeof e=="string")return Nz(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 Nz(e,t)}}function Nz(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 z.reduce(function($,U){var F=U.word,V=U.width,W=$[$.length-1];if(W&&(i==null||a||W.width+V+nU.width?$:U})};if(!c)return d;for(var g="…",m=function(z){var $=f.slice(0,z),U=oX({breakAll:u,style:l,children:$+g}).wordsWithComputedWidth,F=h(U),V=F.length>o||v(F).width>Number(i);return[V,F]},x=0,_=f.length-1,b=0,S;x<=_&&b<=f.length-1;){var T=Math.floor((x+_)/2),A=T-1,M=m(A),P=Dz(M,2),I=P[0],k=P[1],O=m(T),D=Dz(O,1),N=D[0];if(!I&&!N&&(x=T+1),I&&N&&(_=T-1),!I&&N){S=k;break}b++}return S||d},jz=function(t){var r=dt(t)?[]:t.toString().split(aX);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)&&!yf.isSsr){var l,u,c=oX({breakAll:o,children:i,style:a});if(c){var f=c.wordsWithComputedWidth,h=c.spaceWidth;l=f,u=h}else return jz(i);return vSe({breakAll:o,children:i,maxLines:s,style:a},l,u,r,n)}return jz(i)},Rz="#808080",s1=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?Rz:m,_=Ez(t,sSe),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,A=_.angle,M=_.className,P=_.breakAll,I=Ez(_,lSe);if(!Vr(n)||!Vr(a))return null;var k=n+(we(S)?S:0),O=a+(we(T)?T:0),D;switch(g){case"start":D=gC("calc(".concat(u,")"));break;case"middle":D=gC("calc(".concat((b.length-1)/2," * -").concat(s," + (").concat(u," / 2))"));break;default:D=gC("calc(".concat(b.length-1," * -").concat(s,")"));break}var N=[];if(f){var j=b[0].width,z=_.width;N.push("scale(".concat((we(z)?z/j:1)/j,")"))}return A&&N.push("rotate(".concat(A,", ").concat(k,", ").concat(O,")")),N.length&&(I.transform=N.join(" ")),Q.createElement("text",IL({},ct(I,!0),{x:k,y:O,className:xt("recharts-text",M),textAnchor:d,fill:x.includes("url")?Rz:x}),b.map(function($,U){var F=$.words.join(P?"":" ");return Q.createElement("tspan",{x:k,dy:U===0?D:s,key:"".concat(F,"-").concat(U)},F)}))};function Wl(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function gSe(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function TD(e){let t,r,n;e.length!==2?(t=Wl,r=(s,l)=>Wl(e(s),l),n=(s,l)=>e(s)-l):(t=e===Wl||e===gSe?e:mSe,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 mSe(){return 0}function sX(e){return e===null?NaN:+e}function*ySe(e,t){for(let r of e)r!=null&&(r=+r)>=r&&(yield r)}const xSe=TD(Wl),Yy=xSe.right;TD(sX).center;class Bz extends Map{constructor(t,r=wSe){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(zz(this,t))}has(t){return super.has(zz(this,t))}set(t,r){return super.set(_Se(this,t),r)}delete(t){return super.delete(bSe(this,t))}}function zz({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):r}function _Se({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function bSe({_intern:e,_key:t},r){const n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function wSe(e){return e!==null&&typeof e=="object"?e.valueOf():e}function SSe(e=Wl){if(e===Wl)return lX;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 lX(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const TSe=Math.sqrt(50),ASe=Math.sqrt(10),CSe=Math.sqrt(2);function l1(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>=TSe?10:a>=ASe?5:a>=CSe?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 Fz(e,t){let r;for(const n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);return r}function uX(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?lX:SSe(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));uX(e,t,d,v,i)}const a=e[t];let o=r,s=n;for(_p(e,r,t),i(e[n],a)>0&&_p(e,r,n);o0;)--s}i(e[r],a)===0?_p(e,r,s):(++s,_p(e,s,n)),s<=t&&(r=s+1),t<=s&&(n=s-1)}return e}function _p(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function MSe(e,t,r){if(e=Float64Array.from(ySe(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return Fz(e);if(t>=1)return $z(e);var n,i=(n-1)*t,a=Math.floor(i),o=$z(uX(e,a).subarray(0,a+1)),s=Fz(e.subarray(a+1));return o+(s-o)*(i-a)}}function PSe(e,t,r=sX){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 LSe(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?fx(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?fx(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=ISe.exec(e))?new si(t[1],t[2],t[3],1):(t=OSe.exec(e))?new si(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=ESe.exec(e))?fx(t[1],t[2],t[3],t[4]):(t=DSe.exec(e))?fx(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=NSe.exec(e))?Yz(t[1],t[2]/100,t[3]/100,1):(t=jSe.exec(e))?Yz(t[1],t[2]/100,t[3]/100,t[4]):Vz.hasOwnProperty(e)?Hz(Vz[e]):e==="transparent"?new si(NaN,NaN,NaN,0):null}function Hz(e){return new si(e>>16&255,e>>8&255,e&255,1)}function fx(e,t,r,n){return n<=0&&(e=t=r=NaN),new si(e,t,r,n)}function zSe(e){return e instanceof Xy||(e=Nm(e)),e?(e=e.rgb(),new si(e.r,e.g,e.b,e.opacity)):new si}function jL(e,t,r,n){return arguments.length===1?zSe(e):new si(e,t,r,n??1)}function si(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}CD(si,jL,fX(Xy,{brighter(e){return e=e==null?u1:Math.pow(u1,e),new si(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Em:Math.pow(Em,e),new si(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new si(Dc(this.r),Dc(this.g),Dc(this.b),c1(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:Uz,formatHex:Uz,formatHex8:$Se,formatRgb:Zz,toString:Zz}));function Uz(){return`#${_c(this.r)}${_c(this.g)}${_c(this.b)}`}function $Se(){return`#${_c(this.r)}${_c(this.g)}${_c(this.b)}${_c((isNaN(this.opacity)?1:this.opacity)*255)}`}function Zz(){const e=c1(this.opacity);return`${e===1?"rgb(":"rgba("}${Dc(this.r)}, ${Dc(this.g)}, ${Dc(this.b)}${e===1?")":`, ${e})`}`}function c1(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Dc(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function _c(e){return e=Dc(e),(e<16?"0":"")+e.toString(16)}function Yz(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Na(e,t,r,n)}function hX(e){if(e instanceof Na)return new Na(e.h,e.s,e.l,e.opacity);if(e instanceof Xy||(e=Nm(e)),!e)return new Na;if(e instanceof Na)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 Na(o,s,l,e.opacity)}function FSe(e,t,r,n){return arguments.length===1?hX(e):new Na(e,t,r,n??1)}function Na(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}CD(Na,FSe,fX(Xy,{brighter(e){return e=e==null?u1:Math.pow(u1,e),new Na(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Em:Math.pow(Em,e),new Na(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 si(mC(e>=240?e-240:e+120,i,n),mC(e,i,n),mC(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Na(Xz(this.h),hx(this.s),hx(this.l),c1(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=c1(this.opacity);return`${e===1?"hsl(":"hsla("}${Xz(this.h)}, ${hx(this.s)*100}%, ${hx(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Xz(e){return e=(e||0)%360,e<0?e+360:e}function hx(e){return Math.max(0,Math.min(1,e||0))}function mC(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 MD=e=>()=>e;function VSe(e,t){return function(r){return e+r*t}}function GSe(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 WSe(e){return(e=+e)==1?dX:function(t,r){return r-t?GSe(t,r,e):MD(isNaN(t)?r:t)}}function dX(e,t){var r=t-e;return r?VSe(e,r):MD(isNaN(e)?t:e)}const qz=function e(t){var r=WSe(t);function n(i,a){var o=r((i=jL(i)).r,(a=jL(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=dX(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 HSe(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:f1(n,i)})),r=yC.lastIndex;return rt&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function rTe(e,t,r){var n=e[0],i=e[1],a=t[0],o=t[1];return i2?nTe:rTe,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),f1)))(h)))},f.domain=function(h){return arguments.length?(e=Array.from(h,h1),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=PD,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 LD(){return ZS()(Gn,Gn)}function iTe(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function d1(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 Md(e){return e=d1(Math.abs(e)),e?e[1]:NaN}function aTe(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 oTe(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var sTe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function jm(e){if(!(t=sTe.exec(e)))throw new Error("invalid format: "+e);var t;return new kD({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]})}jm.prototype=kD.prototype;function kD(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+""}kD.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 lTe(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 v1;function uTe(e,t){var r=d1(e,t);if(!r)return v1=void 0,e.toPrecision(t);var n=r[0],i=r[1],a=i-(v1=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")+d1(e,Math.max(0,t+a-1))[0]}function Qz(e,t){var r=d1(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 Jz={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:iTe,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)=>Qz(e*100,t),r:Qz,s:uTe,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function e4(e){return e}var t4=Array.prototype.map,r4=["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?e4:aTe(t4.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?e4:oTe(t4.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=jm(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,A=f.type;A==="n"?(b=!0,A="g"):Jz[A]||(S===void 0&&(S=12),T=!0,A="g"),(x||d==="0"&&v==="=")&&(x=!0,d="0",v="=");var M=(h&&h.prefix!==void 0?h.prefix:"")+(m==="$"?r:m==="#"&&/[boxX]/.test(A)?"0"+A.toLowerCase():""),P=(m==="$"?n:/[%p]/.test(A)?o:"")+(h&&h.suffix!==void 0?h.suffix:""),I=Jz[A],k=/[defgprs%]/.test(A);S=S===void 0?6:/[gprs]/.test(A)?Math.max(1,Math.min(21,S)):Math.max(0,Math.min(20,S));function O(D){var N=M,j=P,z,$,U;if(A==="c")j=I(D)+j,D="";else{D=+D;var F=D<0||1/D<0;if(D=isNaN(D)?l:I(Math.abs(D),S),T&&(D=lTe(D)),F&&+D==0&&g!=="+"&&(F=!1),N=(F?g==="("?g:s:g==="-"||g==="("?"":g)+N,j=(A==="s"&&!isNaN(D)&&v1!==void 0?r4[8+v1/3]:"")+j+(F&&g==="("?")":""),k){for(z=-1,$=D.length;++z<$;)if(U=D.charCodeAt(z),48>U||U>57){j=(U===46?i+D.slice(z+1):D.slice(z))+j,D=D.slice(0,z);break}}}b&&!x&&(D=t(D,1/0));var V=N.length+D.length+j.length,W=V<_?new Array(_-V+1).join(d):"";switch(b&&x&&(D=t(W+D,W.length?_-j.length:1/0),W=""),v){case"<":D=N+D+j+W;break;case"=":D=N+W+D+j;break;case"^":D=W.slice(0,V=W.length>>1)+N+D+j+W.slice(V);break;default:D=W+N+D+j;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(Md(h)/3)))*3,v=Math.pow(10,-d),g=u((f=jm(f),f.type="f",f),{suffix:r4[8+d/3]});return function(m){return g(v*m)}}return{format:u,formatPrefix:c}}var dx,ID,vX;fTe({thousands:",",grouping:[3],currency:["$",""]});function fTe(e){return dx=cTe(e),ID=dx.format,vX=dx.formatPrefix,dx}function hTe(e){return Math.max(0,-Md(Math.abs(e)))}function dTe(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Md(t)/3)))*3-Md(Math.abs(e)))}function vTe(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Md(t)-Md(e))+1}function pX(e,t,r,n){var i=DL(e,t,r),a;switch(n=jm(n??",f"),n.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=dTe(i,o))&&(n.precision=a),vX(n,o)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=vTe(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=hTe(i))&&(n.precision=a-(n.type==="%")*2);break}}return ID(n)}function du(e){var t=e.domain;return e.ticks=function(r){var n=t();return OL(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return pX(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=EL(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 p1(){var e=LD();return e.copy=function(){return qy(e,p1())},ma.apply(e,arguments),du(e)}function gX(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,h1),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return gX(e).unknown(t)},e=arguments.length?Array.from(e,h1):[0,1],du(r)}function mX(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 xTe(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 a4(e){return(t,r)=>-e(-t,r)}function OD(e){const t=e(n4,i4),r=t.domain;let n=10,i,a;function o(){return i=xTe(n),a=yTe(n),r()[0]<0?(i=a4(i),a=a4(a),e(pTe,gTe)):e(n4,i4),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=jm(l)).precision==null&&(l.trim=!0),l=ID(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(mX(r(),{floor:s=>a(Math.floor(i(s))),ceil:s=>a(Math.ceil(i(s)))})),t}function yX(){const e=OD(ZS()).domain([1,10]);return e.copy=()=>qy(e,yX()).base(e.base()),ma.apply(e,arguments),e}function o4(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function s4(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function ED(e){var t=1,r=e(o4(t),s4(t));return r.constant=function(n){return arguments.length?e(o4(t=+n),s4(t)):t},du(r)}function xX(){var e=ED(ZS());return e.copy=function(){return qy(e,xX()).constant(e.constant())},ma.apply(e,arguments)}function l4(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function _Te(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function bTe(e){return e<0?-e*e:e*e}function DD(e){var t=e(Gn,Gn),r=1;function n(){return r===1?e(Gn,Gn):r===.5?e(_Te,bTe):e(l4(r),l4(1/r))}return t.exponent=function(i){return arguments.length?(r=+i,n()):r},du(t)}function ND(){var e=DD(ZS());return e.copy=function(){return qy(e,ND()).exponent(e.exponent())},ma.apply(e,arguments),e}function wTe(){return ND.apply(null,arguments).exponent(.5)}function u4(e){return Math.sign(e)*e*e}function STe(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function _X(){var e=LD(),t=[0,1],r=!1,n;function i(a){var o=STe(e(a));return isNaN(o)?n:r?Math.round(o):o}return i.invert=function(a){return e.invert(u4(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,h1)).map(u4)),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 _X(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},ma.apply(i,arguments),du(i)}function bX(){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 wX().domain([e,t]).range(i).unknown(a)},ma.apply(du(o),arguments)}function SX(){var e=[.5],t=[0,1],r,n=1;function i(a){return a!=null&&a<=a?t[Yy(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 SX().domain(e).range(t).unknown(r)},ma.apply(i,arguments)}const xC=new Date,_C=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)=>(xC.setTime(+a),_C.setTime(+o),e(xC),e(_C),Math.floor(r(xC,_C))),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 g1=Yr(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);g1.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):g1);g1.range;const ds=1e3,na=ds*60,vs=na*60,js=vs*24,jD=js*7,c4=js*30,bC=js*365,bc=Yr(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ds)},(e,t)=>(t-e)/ds,e=>e.getUTCSeconds());bc.range;const RD=Yr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ds)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getMinutes());RD.range;const BD=Yr(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*na)},(e,t)=>(t-e)/na,e=>e.getUTCMinutes());BD.range;const zD=Yr(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ds-e.getMinutes()*na)},(e,t)=>{e.setTime(+e+t*vs)},(e,t)=>(t-e)/vs,e=>e.getHours());zD.range;const $D=Yr(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*vs)},(e,t)=>(t-e)/vs,e=>e.getUTCHours());$D.range;const Ky=Yr(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*na)/js,e=>e.getDate()-1);Ky.range;const YS=Yr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/js,e=>e.getUTCDate()-1);YS.range;const TX=Yr(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/js,e=>Math.floor(e/js));TX.range;function xf(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)/jD)}const XS=xf(0),m1=xf(1),TTe=xf(2),ATe=xf(3),Pd=xf(4),CTe=xf(5),MTe=xf(6);XS.range;m1.range;TTe.range;ATe.range;Pd.range;CTe.range;MTe.range;function _f(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)/jD)}const qS=_f(0),y1=_f(1),PTe=_f(2),LTe=_f(3),Ld=_f(4),kTe=_f(5),ITe=_f(6);qS.range;y1.range;PTe.range;LTe.range;Ld.range;kTe.range;ITe.range;const FD=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());FD.range;const VD=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());VD.range;const Rs=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());Rs.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)});Rs.range;const Bs=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());Bs.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)});Bs.range;function AX(e,t,r,n,i,a){const o=[[bc,1,ds],[bc,5,5*ds],[bc,15,15*ds],[bc,30,30*ds],[a,1,na],[a,5,5*na],[a,15,15*na],[a,30,30*na],[i,1,vs],[i,3,3*vs],[i,6,6*vs],[i,12,12*vs],[n,1,js],[n,2,2*js],[r,1,jD],[t,1,c4],[t,3,3*c4],[e,1,bC]];function s(u,c,f){const h=cm).right(o,h);if(d===o.length)return e.every(DL(u/bC,c/bC,f));if(d===0)return g1.every(Math.max(DL(u,c,f),1));const[v,g]=o[h/o[d-1][2]53)return null;"w"in ee||(ee.w=1),"Z"in ee?(Se=SC(bp(ee.y,0,1)),Ge=Se.getUTCDay(),Se=Ge>4||Ge===0?y1.ceil(Se):y1(Se),Se=YS.offset(Se,(ee.V-1)*7),ee.y=Se.getUTCFullYear(),ee.m=Se.getUTCMonth(),ee.d=Se.getUTCDate()+(ee.w+6)%7):(Se=wC(bp(ee.y,0,1)),Ge=Se.getDay(),Se=Ge>4||Ge===0?m1.ceil(Se):m1(Se),Se=Ky.offset(Se,(ee.V-1)*7),ee.y=Se.getFullYear(),ee.m=Se.getMonth(),ee.d=Se.getDate()+(ee.w+6)%7)}else("W"in ee||"U"in ee)&&("w"in ee||(ee.w="u"in ee?ee.u%7:"W"in ee?1:0),Ge="Z"in ee?SC(bp(ee.y,0,1)).getUTCDay():wC(bp(ee.y,0,1)).getDay(),ee.m=0,ee.d="W"in ee?(ee.w+6)%7+ee.W*7-(Ge+5)%7:ee.w+ee.U*7-(Ge+6)%7);return"Z"in ee?(ee.H+=ee.Z/100|0,ee.M+=ee.Z%100,SC(ee)):wC(ee)}}function P(ie,he,ue,ee){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 f4?he.charAt(Ve++):Ye],!vt||(ee=vt(ie,ue,ee))<0)return-1}else if(Ye!=ue.charCodeAt(ee++))return-1}return ee}function I(ie,he,ue){var ee=u.exec(he.slice(ue));return ee?(ie.p=c.get(ee[0].toLowerCase()),ue+ee[0].length):-1}function k(ie,he,ue){var ee=d.exec(he.slice(ue));return ee?(ie.w=v.get(ee[0].toLowerCase()),ue+ee[0].length):-1}function O(ie,he,ue){var ee=f.exec(he.slice(ue));return ee?(ie.w=h.get(ee[0].toLowerCase()),ue+ee[0].length):-1}function D(ie,he,ue){var ee=x.exec(he.slice(ue));return ee?(ie.m=_.get(ee[0].toLowerCase()),ue+ee[0].length):-1}function N(ie,he,ue){var ee=g.exec(he.slice(ue));return ee?(ie.m=m.get(ee[0].toLowerCase()),ue+ee[0].length):-1}function j(ie,he,ue){return P(ie,t,he,ue)}function z(ie,he,ue){return P(ie,r,he,ue)}function $(ie,he,ue){return P(ie,n,he,ue)}function U(ie){return o[ie.getDay()]}function F(ie){return a[ie.getDay()]}function V(ie){return l[ie.getMonth()]}function W(ie){return s[ie.getMonth()]}function Y(ie){return i[+(ie.getHours()>=12)]}function Z(ie){return 1+~~(ie.getMonth()/3)}function J(ie){return o[ie.getUTCDay()]}function ne(ie){return a[ie.getUTCDay()]}function le(ie){return l[ie.getUTCMonth()]}function fe(ie){return s[ie.getUTCMonth()]}function ze(ie){return i[+(ie.getUTCHours()>=12)]}function xe(ie){return 1+~~(ie.getUTCMonth()/3)}return{format:function(ie){var he=A(ie+="",b);return he.toString=function(){return ie},he},parse:function(ie){var he=M(ie+="",!1);return he.toString=function(){return ie},he},utcFormat:function(ie){var he=A(ie+="",S);return he.toString=function(){return ie},he},utcParse:function(ie){var he=M(ie+="",!0);return he.toString=function(){return ie},he}}}var f4={"-":"",_:" ",0:"0"},ln=/^\s*\d+/,RTe=/^%/,BTe=/[\\^$*+?|[\]().{}]/g;function Ct(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function $Te(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function FTe(e,t,r){var n=ln.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function VTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function GTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function WTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function h4(e,t,r){var n=ln.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function d4(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 HTe(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 UTe(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 ZTe(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 v4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function YTe(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 p4(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function XTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function qTe(e,t,r){var n=ln.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function KTe(e,t,r){var n=ln.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function QTe(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 JTe(e,t,r){var n=RTe.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function eAe(e,t,r){var n=ln.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function tAe(e,t,r){var n=ln.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function g4(e,t){return Ct(e.getDate(),t,2)}function rAe(e,t){return Ct(e.getHours(),t,2)}function nAe(e,t){return Ct(e.getHours()%12||12,t,2)}function iAe(e,t){return Ct(1+Ky.count(Rs(e),e),t,3)}function CX(e,t){return Ct(e.getMilliseconds(),t,3)}function aAe(e,t){return CX(e,t)+"000"}function oAe(e,t){return Ct(e.getMonth()+1,t,2)}function sAe(e,t){return Ct(e.getMinutes(),t,2)}function lAe(e,t){return Ct(e.getSeconds(),t,2)}function uAe(e){var t=e.getDay();return t===0?7:t}function cAe(e,t){return Ct(XS.count(Rs(e)-1,e),t,2)}function MX(e){var t=e.getDay();return t>=4||t===0?Pd(e):Pd.ceil(e)}function fAe(e,t){return e=MX(e),Ct(Pd.count(Rs(e),e)+(Rs(e).getDay()===4),t,2)}function hAe(e){return e.getDay()}function dAe(e,t){return Ct(m1.count(Rs(e)-1,e),t,2)}function vAe(e,t){return Ct(e.getFullYear()%100,t,2)}function pAe(e,t){return e=MX(e),Ct(e.getFullYear()%100,t,2)}function gAe(e,t){return Ct(e.getFullYear()%1e4,t,4)}function mAe(e,t){var r=e.getDay();return e=r>=4||r===0?Pd(e):Pd.ceil(e),Ct(e.getFullYear()%1e4,t,4)}function yAe(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Ct(t/60|0,"0",2)+Ct(t%60,"0",2)}function m4(e,t){return Ct(e.getUTCDate(),t,2)}function xAe(e,t){return Ct(e.getUTCHours(),t,2)}function _Ae(e,t){return Ct(e.getUTCHours()%12||12,t,2)}function bAe(e,t){return Ct(1+YS.count(Bs(e),e),t,3)}function PX(e,t){return Ct(e.getUTCMilliseconds(),t,3)}function wAe(e,t){return PX(e,t)+"000"}function SAe(e,t){return Ct(e.getUTCMonth()+1,t,2)}function TAe(e,t){return Ct(e.getUTCMinutes(),t,2)}function AAe(e,t){return Ct(e.getUTCSeconds(),t,2)}function CAe(e){var t=e.getUTCDay();return t===0?7:t}function MAe(e,t){return Ct(qS.count(Bs(e)-1,e),t,2)}function LX(e){var t=e.getUTCDay();return t>=4||t===0?Ld(e):Ld.ceil(e)}function PAe(e,t){return e=LX(e),Ct(Ld.count(Bs(e),e)+(Bs(e).getUTCDay()===4),t,2)}function LAe(e){return e.getUTCDay()}function kAe(e,t){return Ct(y1.count(Bs(e)-1,e),t,2)}function IAe(e,t){return Ct(e.getUTCFullYear()%100,t,2)}function OAe(e,t){return e=LX(e),Ct(e.getUTCFullYear()%100,t,2)}function EAe(e,t){return Ct(e.getUTCFullYear()%1e4,t,4)}function DAe(e,t){var r=e.getUTCDay();return e=r>=4||r===0?Ld(e):Ld.ceil(e),Ct(e.getUTCFullYear()%1e4,t,4)}function NAe(){return"+0000"}function y4(){return"%"}function x4(e){return+e}function _4(e){return Math.floor(+e/1e3)}var Wf,kX,IX;jAe({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 jAe(e){return Wf=jTe(e),kX=Wf.format,Wf.parse,IX=Wf.utcFormat,Wf.utcParse,Wf}function RAe(e){return new Date(e)}function BAe(e){return e instanceof Date?+e:+new Date(+e)}function GD(e,t,r,n,i,a,o,s,l,u){var c=LD(),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(A){return(l(A)t(i/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(i,a)=>MSe(e,a/n))},r.copy=function(){return NX(t).domain(e)},qs.apply(r,arguments)}function QS(){var e=0,t=.5,r=1,n=1,i,a,o,s,l,u=Gn,c,f=!1,h;function d(g){return isNaN(g=+g)?h:(g=.5+((g=+c(g))-a)*(n*gt}var UAe=HAe,ZAe=zX,YAe=UAe,XAe=Sv;function qAe(e){return e&&e.length?ZAe(e,XAe,YAe):void 0}var KAe=qAe;const Cl=Ft(KAe);function QAe(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};je.decimalPlaces=je.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*Qt;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};je.dividedBy=je.div=function(e){return ws(this,new this.constructor(e))};je.dividedToIntegerBy=je.idiv=function(e){var t=this,r=t.constructor;return Gt(ws(t,new r(e),0,1),r.precision)};je.equals=je.eq=function(e){return!this.cmp(e)};je.exponent=function(){return Er(this)};je.greaterThan=je.gt=function(e){return this.cmp(e)>0};je.greaterThanOrEqualTo=je.gte=function(e){return this.cmp(e)>=0};je.isInteger=je.isint=function(){return this.e>this.d.length-2};je.isNegative=je.isneg=function(){return this.s<0};je.isPositive=je.ispos=function(){return this.s>0};je.isZero=function(){return this.s===0};je.lessThan=je.lt=function(e){return this.cmp(e)<0};je.lessThanOrEqualTo=je.lte=function(e){return this.cmp(e)<1};je.logarithm=je.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(wi))throw Error(fa+"NaN");if(r.s<1)throw Error(fa+(r.s?"NaN":"-Infinity"));return r.eq(wi)?new n(0):(rr=!1,t=ws(Rm(r,a),Rm(e,a),a),rr=!0,Gt(t,i))};je.minus=je.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?GX(t,e):FX(t,(e.s=-e.s,e))};je.modulo=je.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(fa+"NaN");return r.s?(rr=!1,t=ws(r,e,0,1).times(e),rr=!0,r.minus(t)):Gt(new n(r),i)};je.naturalExponential=je.exp=function(){return VX(this)};je.naturalLogarithm=je.ln=function(){return Rm(this)};je.negated=je.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};je.plus=je.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?FX(t,e):GX(t,(e.s=-e.s,e))};je.precision=je.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Nc+e);if(t=Er(i)+1,n=i.d.length-1,r=n*Qt+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};je.squareRoot=je.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(fa+"NaN")}for(e=Er(s),rr=!1,i=Math.sqrt(+s),i==0||i==1/0?(t=xo(s.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=Mv((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(ws(s,a,o+2)).times(.5),xo(a.d).slice(0,o)===(t=xo(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t=="4999"){if(Gt(a,r+1,0),a.times(a).eq(s)){n=a;break}}else if(t!="9999")break;o+=4}return rr=!0,Gt(n,r)};je.times=je.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,rr?Gt(e,f.precision):e};je.toDecimalPlaces=je.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(jo(e,0,Cv),t===void 0?t=n.rounding:jo(t,0,8),Gt(r,e+Er(r)+1,t))};je.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Jc(n,!0):(jo(e,0,Cv),t===void 0?t=i.rounding:jo(t,0,8),n=Gt(new i(n),e+1,t),r=Jc(n,!0,e+1)),r};je.toFixed=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?Jc(i):(jo(e,0,Cv),t===void 0?t=a.rounding:jo(t,0,8),n=Gt(new a(i),e+Er(i)+1,t),r=Jc(n.abs(),!1,e+Er(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};je.toInteger=je.toint=function(){var e=this,t=e.constructor;return Gt(new t(e),Er(e)+1,t.rounding)};je.toNumber=function(){return+this};je.toPower=je.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(wi);if(s=new l(s),!s.s){if(e.s<1)throw Error(fa+"Infinity");return s}if(s.eq(wi))return s;if(n=l.precision,e.eq(wi))return Gt(s,n);if(t=e.e,r=e.d.length-1,o=t>=r,a=s.s,o){if((r=c<0?-c:c)<=$X){for(i=new l(wi),t=Math.ceil(n/Qt+4),rr=!1;r%2&&(i=i.times(s),S4(i.d,t)),r=Mv(r/2),r!==0;)s=s.times(s),S4(s.d,t);return rr=!0,e.s<0?new l(wi).div(i):Gt(i,n)}}else if(a<0)throw Error(fa+"NaN");return a=a<0&&e.d[Math.max(t,r)]&1?-1:1,s.s=1,rr=!1,i=e.times(Rm(s,n+u)),rr=!0,i=VX(i),i.s=a,i};je.toPrecision=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?(r=Er(i),n=Jc(i,r<=a.toExpNeg||r>=a.toExpPos)):(jo(e,1,Cv),t===void 0?t=a.rounding:jo(t,0,8),i=Gt(new a(i),e,t),r=Er(i),n=Jc(i,e<=r||r<=a.toExpNeg,e)),n};je.toSignificantDigits=je.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(jo(e,1,Cv),t===void 0?t=n.rounding:jo(t,0,8)),Gt(new n(r),e,t)};je.toString=je.valueOf=je.val=je.toJSON=je[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Er(e),r=e.constructor;return Jc(e,t<=r.toExpNeg||t>=r.toExpPos)};function FX(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)),rr?Gt(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/Qt),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,rr?Gt(t,f):t}function jo(e,t,r){if(e!==~~e||er)throw Error(Nc+e)}function xo(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,A,M,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(fa+"Division by zero");for(l=n.e-i.e,M=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+(Er(n)-Er(i))+1:_=a,_<0)return new I(0);if(_=_/Qt+2|0,u=0,M==1)for(c=0,D=D[0],_++;(u1&&(D=e(D,c),O=e(O,c),M=D.length,T=O.length),S=M,g=O.slice(0,M),m=g.length;m=en/2&&++A;do c=0,s=t(D,g,M,m),s<0?(x=g[0],M!=m&&(x=x*en+(g[1]||0)),c=x/A|0,c>1?(c>=en&&(c=en-1),f=e(D,c),h=f.length,m=g.length,s=t(f,g,h,m),s==1&&(c--,r(f,M16)throw Error(UD+Er(e));if(!e.s)return new c(wi);for(rr=!1,s=f,o=new c(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(n=Math.log(ac(2,u))/Math.LN10*2+5|0,s+=n,r=i=a=new c(wi),c.precision=s;;){if(i=Gt(i.times(e),s),r=r.times(++l),o=a.plus(ws(i,r,s)),xo(o.d).slice(0,s)===xo(a.d).slice(0,s)){for(;u--;)a=Gt(a.times(a),s);return c.precision=f,t==null?(rr=!0,Gt(a,f)):a}a=o}}function Er(e){for(var t=e.e*Qt,r=e.d[0];r>=10;r/=10)t++;return t}function TC(e,t,r){if(t>e.LN10.sd())throw rr=!0,r&&(e.precision=r),Error(fa+"LN10 precision limit exceeded");return Gt(new e(e.LN10),t)}function yl(e){for(var t="";e--;)t+="0";return t}function Rm(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(fa+(d.s?"NaN":"-Infinity"));if(d.eq(wi))return new g(0);if(t==null?(rr=!1,u=m):u=t,d.eq(10))return t==null&&(rr=!0),TC(g,u);if(u+=h,g.precision=u,r=xo(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=xo(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=TC(g,u+2,m).times(a+""),d=Rm(new g(n+"."+r.slice(1)),u-h).plus(l),g.precision=m,t==null?(rr=!0,Gt(d,m)):d;for(s=o=d=ws(d.minus(wi),d.plus(wi),u),c=Gt(d.times(d),u),i=3;;){if(o=Gt(o.times(c),u),l=s.plus(ws(o,new g(i),u)),xo(l.d).slice(0,u)===xo(s.d).slice(0,u))return s=s.times(2),a!==0&&(s=s.plus(TC(g,u+2,m).times(a+""))),s=ws(s,new g(f),u),g.precision=m,t==null?(rr=!0,Gt(s,m)):s;s=l,i+=2}}function w4(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=Mv(r/Qt),e.d=[],n=(r+1)%Qt,r<0&&(n+=Qt),nx1||e.e<-x1))throw Error(UD+r)}else e.s=0,e.e=0,e.d=[0];return e}function Gt(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+=Qt,i=t,u=f[c=0];else{if(c=Math.ceil((n+1)/Qt),a=f.length,c>=a)return e;for(u=a=f[c],o=1;a>=10;a/=10)o++;n%=Qt,i=n-Qt+o}if(r!==void 0&&(a=ac(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/ac(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]=ac(10,(Qt-t%Qt)%Qt),e.e=Mv(-t/Qt)||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=ac(10,Qt-n),f[c]=i>0?(u/ac(10,o-i)%ac(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(rr&&(e.e>x1||e.e<-x1))throw Error(UD+Er(e));return e}function GX(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),rr?Gt(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/Qt),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)+yl(n):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+yl(-i-1)+a,r&&(n=r-o)>0&&(a+=yl(n))):i>=o?(a+=yl(i+1-o),r&&(n=r-i-1)>0&&(a=a+"."+yl(n))):((n=i+1)0&&(i+1===o&&(a+="."),a+=yl(n))),e.s<0?"-"+a:a}function S4(e,t){if(e.length>t)return e.length=t,!0}function WX(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(Nc+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 w4(o,a.toString())}else if(typeof a!="string")throw Error(Nc+a);if(a.charCodeAt(0)===45?(a=a.slice(1),o.s=-1):o.s=1,_Ce.test(a))w4(o,a);else throw Error(Nc+a)}if(i.prototype=je,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=WX,i.config=i.set=bCe,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(Nc+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Nc+r+": "+n);return this}var ZD=WX(xCe);wi=new ZD(1);const zt=ZD;function wCe(e){return CCe(e)||ACe(e)||TCe(e)||SCe()}function SCe(){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 TCe(e,t){if(e){if(typeof e=="string")return zL(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 zL(e,t)}}function ACe(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function CCe(e){if(Array.isArray(e))return zL(e)}function zL(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,T4(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 FCe(e){if(Array.isArray(e))return e}function XX(e){var t=Bm(e,2),r=t[0],n=t[1],i=r,a=n;return r>n&&(i=n,a=r),[i,a]}function qX(e,t,r){if(e.lte(0))return new zt(0);var n=tT.getDigitCount(e.toNumber()),i=new zt(10).pow(n),a=e.div(i),o=n!==1?.05:.1,s=new zt(Math.ceil(a.div(o).toNumber())).add(r).mul(o),l=s.mul(i);return t?l:new zt(Math.ceil(l))}function VCe(e,t,r){var n=1,i=new zt(e);if(!i.isint()&&r){var a=Math.abs(e);a<1?(n=new zt(10).pow(tT.getDigitCount(e)-1),i=new zt(Math.floor(i.div(n).toNumber())).mul(n)):a>1&&(i=new zt(Math.floor(e)))}else e===0?i=new zt(Math.floor((t-1)/2)):r||(i=new zt(Math.floor(e)));var o=Math.floor((t-1)/2),s=kCe(LCe(function(l){return i.add(new zt(l-o).mul(n)).toNumber()}),$L);return s(0,t)}function KX(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 zt(0),tickMin:new zt(0),tickMax:new zt(0)};var a=qX(new zt(t).sub(e).div(r-1),n,i),o;e<=0&&t>=0?o=new zt(0):(o=new zt(e).add(t).div(2),o=o.sub(new zt(o).mod(a)));var s=Math.ceil(o.sub(e).div(a).toNumber()),l=Math.ceil(new zt(t).sub(o).div(a).toNumber()),u=s+l+1;return u>r?KX(e,t,r,n,i+1):(u0?l+(r-u):l,s=t>0?s:s+(r-u)),{step:a,tickMin:o.sub(new zt(s).mul(a)),tickMax:o.add(new zt(l).mul(a))})}function GCe(e){var t=Bm(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=XX([r,n]),l=Bm(s,2),u=l[0],c=l[1];if(u===-1/0||c===1/0){var f=c===1/0?[u].concat(VL($L(0,i-1).map(function(){return 1/0}))):[].concat(VL($L(0,i-1).map(function(){return-1/0})),[c]);return r>n?FL(f):f}if(u===c)return VCe(u,i,a);var h=KX(u,c,o,a),d=h.step,v=h.tickMin,g=h.tickMax,m=tT.rangeStep(v,g.add(new zt(.1).mul(d)),d);return r>n?FL(m):m}function WCe(e,t){var r=Bm(e,2),n=r[0],i=r[1],a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=XX([n,i]),s=Bm(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=qX(new zt(u).sub(l).div(c-1),a,0),h=[].concat(VL(tT.rangeStep(new zt(l),new zt(u).sub(new zt(.99).mul(f)),f)),[u]);return n>i?FL(h):h}var HCe=ZX(GCe),UCe=ZX(WCe),ZCe="Invariant failed";function ef(e,t){throw new Error(ZCe)}var YCe=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function Id(e){"@babel/helpers - typeof";return Id=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},Id(e)}function _1(){return _1=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 t2e(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 r2e(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function n2e(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(ja(f-c)!==ja(h-f)){var v=[];if(ja(h-f)===ja(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},YD=function(t){var r,n=t,i=n.type.displayName,a=(r=t.type)!==null&&r!==void 0&&r.defaultProps?pr(pr({},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},_2e=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?pr(pr({},_),x[0].props):x[0].props,S=b.barSize,T=b[m];o[T]||(o[T]=[]);var A=dt(S)?r:S;o[T].push({item:x[0],stackList:x.slice(1),barSize:dt(A)?void 0:Qc(A,n,0)})}}return o},b2e=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=Qc(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 A={item:T.item,position:{offset:m.offset+m.size+u,size:h?d:T.barSize}},M=[].concat(M4(S),[A]);return m=M[M.length-1].position,T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){M.push({item:P,position:m})}),M},f)}else{var x=Qc(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,A){var M=[].concat(M4(S),[{item:T.item,position:{offset:x+(_+u)*A+(_-b)/2,size:b}}]);return T.stackList&&T.stackList.length&&T.stackList.forEach(function(P){M.push({item:P,position:M[M.length-1].position})}),M},f)}return c},w2e=function(t,r,n,i){var a=n.children,o=n.width,s=n.margin,l=o-(s.left||0)-(s.right||0),u=tq({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 pr(pr({},t),{},id({},d,t[d]+(f||0)));if((g==="horizontal"||g==="vertical"&&d==="center")&&v!=="middle"&&we(t[v]))return pr(pr({},t),{},id({},v,t[v]+(h||0)))}return t},S2e=function(t,r,n){return dt(r)?!0:t==="horizontal"?r==="yAxis":t==="vertical"||n==="x"?r==="xAxis":n==="y"?r==="yAxis":!0},rq=function(t,r,n,i,a){var o=r.props.children,s=oa(o,Qy).filter(function(u){return S2e(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)?[JS(f),Cl(f)]:[f,f],d=l.reduce(function(v,g){var m=Un(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},T2e=function(t,r,n,i,a){var o=r.map(function(s){return rq(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},nq=function(t,r,n,i,a){var o=r.map(function(l){var u=l.props.dataKey;return n==="number"&&u&&rq(t,l,u,i)||jg(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?ja(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!xv(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}})},AC=new WeakMap,vx=function(t,r){if(typeof r!="function")return t;AC.has(t)||AC.set(t,new WeakMap);var n=AC.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},A2e=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:Om(),realScaleType:"band"}:o==="radial"&&s==="angleAxis"?{scale:p1(),realScaleType:"linear"}:a==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!n)?{scale:Ng(),realScaleType:"point"}:a==="category"?{scale:Om(),realScaleType:"band"}:{scale:p1(),realScaleType:"linear"};if(Kc(i)){var l="scale".concat($S(i));return{scale:(b4[l]||Ng)(),realScaleType:b4[l]?l:"point"}}return ft(i)?{scale:i}:{scale:Ng(),realScaleType:"point"}},L4=1e-4,C2e=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])-L4,o=Math.max(i[0],i[1])+L4,s=t(r[0]),l=t(r[n-1]);(so||lo)&&t.domain([r[0],r[n-1]])}},M2e=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])}},k2e=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)}},I2e={sign:L2e,expand:Hpe,none:wd,silhouette:Upe,wiggle:Zpe,positive:k2e},O2e=function(t,r,n){var i=r.map(function(s){return s.props.dataKey}),a=I2e[n],o=Wpe().keys(i).value(function(s,l){return+Un(s,l,0)}).order(gL).offset(a);return o(t)},E2e=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?pr(pr({},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[_v("_stackId_")]={numericAxisId:n,cateAxisId:i,items:[h]};return pr(pr({},f),{},id({},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 pr(pr({},g),{},id({},m,{numericAxisId:n,cateAxisId:i,items:x.items,stackedData:O2e(t,x.items,a)}))},v)}return pr(pr({},f),{},id({},h,d))},c)},D2e=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=HCe(u,a,s);return t.domain([JS(c),Cl(c)]),{niceTicks:c}}if(a&&i==="number"){var f=t.domain(),h=UCe(f,a,s);return{niceTicks:h}}return null};function w1(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=Hb(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 k4=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},N2e=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]},j2e=function(t,r){var n,i=(n=t.type)!==null&&n!==void 0&&n.defaultProps?pr(pr({},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},R2e=function(t){return t.reduce(function(r,n){return[JS(n.concat([r[0]]).filter(we)),Cl(n.concat([r[1]]).filter(we))]},[1/0,-1/0])},aq=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=R2e(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})},I4=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,O4=/^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(I4.test(t[0])){var a=+I4.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(O4.test(t[1])){var o=+O4.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},S1=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=wD(r,function(f){return f.coordinate}),o=1/0,s=1,l=a.length;so&&(u=2*Math.PI-u),{radius:s,angle:F2e(u),angleInRadian:u}},W2e=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}},H2e=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},j4=function(t,r){var n=t.x,i=t.y,a=G2e({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=W2e(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?N4(N4({},r),{},{radius:o,angle:H2e(d,r)}):null};function Vm(e){"@babel/helpers - typeof";return Vm=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},Vm(e)}var U2e=["offset"];function Z2e(e){return K2e(e)||q2e(e)||X2e(e)||Y2e()}function Y2e(){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 X2e(e,t){if(e){if(typeof e=="string")return ZL(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 ZL(e,t)}}function q2e(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function K2e(e){if(Array.isArray(e))return ZL(e)}function ZL(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 J2e(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 R4(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=pn(u,c,m,b),A=pn(u,c,m,b+(S?1:-1)*359),M="M".concat(T.x,",").concat(T.y,` + A`).concat(m,",").concat(m,",0,1,").concat(S?0:1,`, + `).concat(A.x,",").concat(A.y),P=dt(t.id)?_v("recharts-radial-line-"):t.id;return Q.createElement("text",Gm({},n,{dominantBaseline:"central",className:xt("recharts-radial-bar-label",s)}),Q.createElement("defs",null,Q.createElement("path",{id:P,d:M})),Q.createElement("textPath",{xlinkHref:"#".concat(P)},r))},oMe=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,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=pn(o,s,m,h),_=x.x,b=x.y;return{x:_,y:b,textAnchor:"middle",verticalAnchor:"middle"}},sMe=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 A={x:s+u+m,y:l+c/2,textAnchor:_,verticalAnchor:"middle"};return Br(Br({},A),n?{width:Math.max(n.x+n.width-A.x,0),height:c}:{})}var M=n?{width:u,height:c}:{};return a==="insideLeft"?Br({x:s+m,y:l+c/2,textAnchor:_,verticalAnchor:"middle"},M):a==="insideRight"?Br({x:s+u-m,y:l+c/2,textAnchor:x,verticalAnchor:"middle"},M):a==="insideTop"?Br({x:s+u/2,y:l+h,textAnchor:"middle",verticalAnchor:v},M):a==="insideBottom"?Br({x:s+u/2,y:l+c-h,textAnchor:"middle",verticalAnchor:d},M):a==="insideTopLeft"?Br({x:s+m,y:l+h,textAnchor:_,verticalAnchor:v},M):a==="insideTopRight"?Br({x:s+u-m,y:l+h,textAnchor:x,verticalAnchor:v},M):a==="insideBottomLeft"?Br({x:s+m,y:l+c-h,textAnchor:_,verticalAnchor:d},M):a==="insideBottomRight"?Br({x:s+u-m,y:l+c-h,textAnchor:x,verticalAnchor:d},M):pv(a)&&(we(a.x)||xc(a.x))&&(we(a.y)||xc(a.y))?Br({x:s+Qc(a.x,u),y:l+Qc(a.y,c),textAnchor:"end",verticalAnchor:"end"},M):Br({x:s+u/2,y:l+c/2,textAnchor:"middle",verticalAnchor:"middle"},M)},lMe=function(t){return"cx"in t&&we(t.cx)};function In(e){var t=e.offset,r=t===void 0?5:t,n=Q2e(e,U2e),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=nMe(i);var v=lMe(a),g=ct(i,!0);if(v&&(o==="insideStart"||o==="insideEnd"||o==="end"))return aMe(i,d,g);var m=v?oMe(i):sMe(i);return Q.createElement(s1,Gm({className:xt("recharts-label",f)},g,m,{breakAll:h}),d)}In.displayName="Label";var sq=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:{}},uMe=function(t,r){return t?t===!0?Q.createElement(In,{key:"label-implicit",viewBox:r}):Vr(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}):pv(t)?Q.createElement(In,Gm({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=sq(t),o=oa(i,In).map(function(l,u){return H.cloneElement(l,{viewBox:r||a,key:"label-".concat(u)})});if(!n)return o;var s=uMe(t.label,r||a);return[s].concat(Z2e(o))};In.parseViewBox=sq;In.renderCallByParent=cMe;function fMe(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var hMe=fMe;const dMe=Ft(hMe);function Wm(e){"@babel/helpers - typeof";return Wm=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},Wm(e)}var vMe=["valueAccessor"],pMe=["data","dataKey","clockWise","id","textBreakAll"];function gMe(e){return _Me(e)||xMe(e)||yMe(e)||mMe()}function mMe(){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 yMe(e,t){if(e){if(typeof e=="string")return YL(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 YL(e,t)}}function xMe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function _Me(e){if(Array.isArray(e))return YL(e)}function YL(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 TMe(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 AMe=function(t){return Array.isArray(t.value)?dMe(t.value):t.value};function Ss(e){var t=e.valueAccessor,r=t===void 0?AMe:t,n=$4(e,vMe),i=n.data,a=n.dataKey,o=n.clockWise,s=n.id,l=n.textBreakAll,u=$4(n,pMe);return!i||!i.length?null:Q.createElement(Xt,{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,A1({},ct(c,!0),u,d,{parentViewBox:c.parentViewBox,value:h,textBreakAll:l,viewBox:In.parseViewBox(dt(o)?c:z4(z4({},c),{},{clockWise:o})),key:"label-".concat(f),index:f}))}))}Ss.displayName="LabelList";function CMe(e,t){return e?e===!0?Q.createElement(Ss,{key:"labelList-implicit",data:t}):Q.isValidElement(e)||ft(e)?Q.createElement(Ss,{key:"labelList-implicit",data:t,content:e}):pv(e)?Q.createElement(Ss,A1({data:t},e,{key:"labelList-implicit"})):null:null}function MMe(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=oa(n,Ss).map(function(o,s){return H.cloneElement(o,{data:t,key:"labelList-".concat(s)})});if(!r)return i;var a=CMe(e.label,t);return[a].concat(gMe(i))}Ss.renderCallByParent=MMe;function Hm(e){"@babel/helpers - typeof";return Hm=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},Hm(e)}function XL(){return XL=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=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},OMe=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=ja(c-u),h=px({cx:r,cy:n,radius:a,angle:u,sign:f,cornerRadius:o,cornerIsExternal:l}),d=h.circleTangency,v=h.lineTangency,g=h.theta,m=px({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,` + a`).concat(o,",").concat(o,",0,0,1,").concat(o*2,`,0 + a`).concat(o,",").concat(o,",0,0,1,").concat(-o*2,`,0 + `):lq({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 A=px({cx:r,cy:n,radius:i,angle:u,sign:f,isExternal:!0,cornerRadius:o,cornerIsExternal:l}),M=A.circleTangency,P=A.lineTangency,I=A.theta,k=px({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,j=l?Math.abs(u-c):Math.abs(u-c)-I-N;if(j<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(+(j>180),",").concat(+(f>0),",").concat(M.x,",").concat(M.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},EMe={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},uq=function(t){var r=V4(V4({},EMe),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=OMe({cx:n,cy:i,innerRadius:a,outerRadius:o,cornerRadius:Math.min(g,v/2),forceCornerRadius:l,cornerIsExternal:u,startAngle:c,endAngle:f}):m=lq({cx:n,cy:i,innerRadius:a,outerRadius:o,startAngle:c,endAngle:f}),Q.createElement("path",XL({},ct(r,!0),{className:d,d:m,role:"img"}))};function Um(e){"@babel/helpers - typeof";return Um=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},Um(e)}function qL(){return qL=Object.assign?Object.assign.bind():function(e){for(var t=1;tUMe.call(e,t));function bf(e,t){return e===t||!e&&!t&&e!==e&&t!==t}const XMe="__v",qMe="__o",KMe="_owner",{getOwnPropertyDescriptor:Z4,keys:Y4}=Object;function QMe(e,t){return e.byteLength===t.byteLength&&C1(new Uint8Array(e),new Uint8Array(t))}function JMe(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 ePe(e,t){return e.byteLength===t.byteLength&&C1(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))}function tPe(e,t){return bf(e.getTime(),t.getTime())}function rPe(e,t){return e.name===t.name&&e.message===t.message&&e.cause===t.cause&&e.stack===t.stack}function nPe(e,t){return e===t}function X4(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 iPe=bf;function aPe(e,t,r){const n=Y4(e);let i=n.length;if(Y4(t).length!==i)return!1;for(;i-- >0;)if(!dq(e,t,r,n[i]))return!1;return!0}function Cp(e,t,r){const n=U4(e);let i=n.length;if(U4(t).length!==i)return!1;let a,o,s;for(;i-- >0;)if(a=n[i],!dq(e,t,r,a)||(o=Z4(e,a),s=Z4(t,a),(o||s)&&(!o||!s||o.configurable!==s.configurable||o.enumerable!==s.enumerable||o.writable!==s.writable)))return!1;return!0}function oPe(e,t){return bf(e.valueOf(),t.valueOf())}function sPe(e,t){return e.source===t.source&&e.flags===t.flags}function q4(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 C1(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 lPe(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 dq(e,t,r,n){return(n===KMe||n===qMe||n===XMe)&&(e.$$typeof||t.$$typeof)?!0:YMe(t,n)&&r.equals(e[n],t[n],n,n,e,t,r)}const uPe="[object ArrayBuffer]",cPe="[object Arguments]",fPe="[object Boolean]",hPe="[object DataView]",dPe="[object Date]",vPe="[object Error]",pPe="[object Map]",gPe="[object Number]",mPe="[object Object]",yPe="[object RegExp]",xPe="[object Set]",_Pe="[object String]",bPe={"[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},wPe="[object URL]",SPe=Object.prototype.toString;function TPe({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=SPe.call(m);if(T===dPe)return n(m,x,_);if(T===yPe)return c(m,x,_);if(T===pPe)return o(m,x,_);if(T===xPe)return f(m,x,_);if(T===mPe)return typeof m.then!="function"&&typeof x.then!="function"&&l(m,x,_);if(T===wPe)return d(m,x,_);if(T===vPe)return i(m,x,_);if(T===cPe)return l(m,x,_);if(bPe[T])return h(m,x,_);if(T===uPe)return e(m,x,_);if(T===hPe)return r(m,x,_);if(T===fPe||T===gPe||T===_Pe)return u(m,x,_);if(v){let A=v[T];if(!A){const M=ZMe(m);M&&(A=v[M])}if(A)return A(m,x,_)}return!1}}function APe({circular:e,createCustomConfig:t,strict:r}){let n={areArrayBuffersEqual:QMe,areArraysEqual:r?Cp:JMe,areDataViewsEqual:ePe,areDatesEqual:tPe,areErrorsEqual:rPe,areFunctionsEqual:nPe,areMapsEqual:r?CC(X4,Cp):X4,areNumbersEqual:iPe,areObjectsEqual:r?Cp:aPe,arePrimitiveWrappersEqual:oPe,areRegExpsEqual:sPe,areSetsEqual:r?CC(q4,Cp):q4,areTypedArraysEqual:r?CC(C1,Cp):C1,areUrlsEqual:lPe,unknownTagComparators:void 0};if(t&&(n=Object.assign({},n,t(n))),e){const i=mx(n.areArraysEqual),a=mx(n.areMapsEqual),o=mx(n.areObjectsEqual),s=mx(n.areSetsEqual);n=Object.assign({},n,{areArraysEqual:i,areMapsEqual:a,areObjectsEqual:o,areSetsEqual:s})}return n}function CPe(e){return function(t,r,n,i,a,o,s){return e(t,r,s)}}function MPe({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 PPe=pu();pu({strict:!0});pu({circular:!0});pu({circular:!0,strict:!0});pu({createInternalComparator:()=>bf});pu({strict:!0,createInternalComparator:()=>bf});pu({circular:!0,createInternalComparator:()=>bf});pu({circular:!0,createInternalComparator:()=>bf,strict:!0});function pu(e={}){const{circular:t=!1,createInternalComparator:r,createState:n,strict:i=!1}=e,a=APe(e),o=TPe(a),s=r?r(o):CPe(o);return MPe({circular:t,comparator:o,createState:n,equals:s,strict:i})}function LPe(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function K4(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):LPe(i)};requestAnimationFrame(n)}function KL(e){"@babel/helpers - typeof";return KL=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},KL(e)}function kPe(e){return DPe(e)||EPe(e)||OPe(e)||IPe()}function IPe(){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 OPe(e,t){if(e){if(typeof e=="string")return Q4(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 Q4(e,t)}}function Q4(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)-_,A=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 fLe(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 MC(e){return pLe(e)||vLe(e)||dLe(e)||hLe()}function hLe(){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 dLe(e,t){if(e){if(typeof e=="string")return rk(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 rk(e,t)}}function vLe(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function pLe(e){if(Array.isArray(e))return rk(e)}function rk(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 L1(e){return L1=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},L1(e)}var Ro=function(e){_Le(r,e);var t=bLe(r);function r(n,i){var a;gLe(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(ak(a)),a.changeStyle=a.changeStyle.bind(ak(a)),!s||d<=0)return a.state={style:{}},typeof h=="function"&&(a.state={style:c}),ik(a);if(f&&f.length)a.state={style:f[0].style};else if(u){if(typeof h=="function")return a.state={style:u},ik(a);a.state={style:l?fg({},l,u):u}}else a.state={style:{}};return a}return yLe(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?fg({},l,c):c};this.state&&h&&(l&&h[l]!==c||!l&&h!==c)&&this.setState(d);return}if(!(PPe(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?fg({},l,g):g};(l&&h[l]!==g||!l&&h!==g)&&this.setState(m)}this.runAnimation(Ta(Ta({},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=lLe(o,s,KPe(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,A=m.properties,M=m.onAnimationEnd,P=x>0?o[x-1]:m,I=A||Object.keys(T);if(typeof S=="function"||S==="spring")return[].concat(MC(g),[a.runJSAnimation.bind(a,{from:P.style,to:T,duration:_,easing:S}),_]);var k=t$(I,_,S),O=Ta(Ta(Ta({},P.style),T),{},{transition:k});return[].concat(MC(g),[O,_,M]).filter(zPe)};return this.manager.start([l].concat(MC(o.reduce(d,[c,Math.max(h,s)])),[i.onAnimationEnd]))}},{key:"runAnimation",value:function(i){this.manager||(this.manager=NPe());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?fg({},s,l):l,m=t$(Object.keys(g),o,u);v.start([c,a,Ta(Ta({},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=cLe(i,uLe),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,Ta(Ta({},l),{},{style:Ta(Ta({},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);Ro.displayName="Animate";Ro.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Ro.propTypes={from:kt.oneOfType([kt.object,kt.string]),to:kt.oneOfType([kt.object,kt.string]),attributeName:kt.string,duration:kt.number,begin:kt.number,easing:kt.oneOfType([kt.string,kt.func]),steps:kt.arrayOf(kt.shape({duration:kt.number.isRequired,style:kt.object.isRequired,easing:kt.oneOfType([kt.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),kt.func]),properties:kt.arrayOf("string"),onAnimationEnd:kt.func})),children:kt.oneOfType([kt.node,kt.func]),isActive:kt.bool,canBegin:kt.bool,onAnimationEnd:kt.func,shouldReAnimate:kt.bool,onAnimationStart:kt.func,onAnimationReStart:kt.func};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)}function k1(){return k1=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,` + A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t+l*v,",").concat(r,` + L `).concat(t+n-l*v,",").concat(r,` + A `).concat(v,",").concat(v,",0,0,").concat(u,",").concat(t+n,",").concat(r+s*v,` + 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},ILe=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},OLe={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},XD=function(t){var r=u$(u$({},OLe),t),n=H.useRef(),i=H.useState(-1),a=SLe(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=xt("recharts-rectangle",d);return _?Q.createElement(Ro,{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,A=S.height,M=S.x,P=S.y;return Q.createElement(Ro,{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",k1({},ct(r,!0),{className:b,d:c$(M,P,T,A,h),ref:n})))}):Q.createElement("path",k1({},ct(r,!0),{className:b,d:c$(l,u,c,f,h)}))};function ok(){return ok=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 zLe(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 $Le=function(t,r,n,i,a,o){return"M".concat(t,",").concat(a,"v").concat(i,"M").concat(o,",").concat(r,"h").concat(n)},FLe=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=BLe(t,ELe),m=DLe({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",sk({},ct(m,!0),{className:xt("recharts-cross",v),d:$Le(n,a,f,d,s,u)}))},VLe=NY,GLe=VLe(Object.getPrototypeOf,Object),WLe=GLe,HLe=Ys,ULe=WLe,ZLe=Xs,YLe="[object Object]",XLe=Function.prototype,qLe=Object.prototype,_q=XLe.toString,KLe=qLe.hasOwnProperty,QLe=_q.call(Object);function JLe(e){if(!ZLe(e)||HLe(e)!=YLe)return!1;var t=ULe(e);if(t===null)return!0;var r=KLe.call(t,"constructor")&&t.constructor;return typeof r=="function"&&r instanceof r&&_q.call(r)==QLe}var eke=JLe;const tke=Ft(eke);var rke=Ys,nke=Xs,ike="[object Boolean]";function ake(e){return e===!0||e===!1||nke(e)&&rke(e)==ike}var oke=ake;const ske=Ft(oke);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 I1(){return I1=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,A=b.height,M=b.x,P=b.y;return Q.createElement(Ro,{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",I1({},ct(r,!0),{className:_,d:p$(M,P,S,T,A),ref:n})))}):Q.createElement("g",null,Q.createElement("path",I1({},ct(r,!0),{className:_,d:p$(l,u,c,f,h)})))},yke=["option","shapeType","propTransformer","activeClassName","isActive"];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 xke(e,t){if(e==null)return{};var r=_ke(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 _ke(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 g$(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 O1(e){for(var t=1;t0&&n.handleDrag(i.changedTouches[0])}),mi(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()}),mi(n,"handleLeaveWrapper",function(){(n.state.isTravellerMoving||n.state.isSlideMoving)&&(n.leaveTimer=window.setTimeout(n.handleDragEnd,n.props.leaveTimeOut))}),mi(n,"handleEnterSlideOrTraveller",function(){n.setState({isTextActive:!0})}),mi(n,"handleLeaveSlideOrTraveller",function(){n.setState({isTextActive:!1})}),mi(n,"handleSlideDragStart",function(i){var a=S$(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 aIe(t,e),tIe(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,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=S$(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,A=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(mi(mi({},o,u+_),"brushMoveStartX",n.pageX),function(){v&&A()&&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(mi({},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),_=LC(LC({},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(Xt,{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(Xt,{className:"recharts-brush-texts"},Q.createElement(s1,D1({textAnchor:"end",verticalAnchor:"middle",x:Math.min(f,h)-d,y:o+s/2},v),this.getTextOfTick(i)),Q.createElement(s1,D1({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=xt("recharts-brush",a),S=Q.Children.count(o)===1,T=Jke("userSelect","none");return Q.createElement(Xt,{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 LC({prevData:a,prevTravellerWidth:l,prevUpdateId:u,prevX:s,prevWidth:o},a&&a.length?sIe({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);mi(Dd,"displayName","Brush");mi(Dd,"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 lIe=bD;function uIe(e,t){var r;return lIe(e,function(n,i,a){return r=t(n,i,a),!r}),!!r}var cIe=uIe,fIe=MY,hIe=Tv,dIe=cIe,vIe=di,pIe=US;function gIe(e,t,r){var n=vIe(e)?fIe:dIe;return r&&pIe(e,t,r)&&(t=void 0),n(e,hIe(t))}var mIe=gIe;const yIe=Ft(mIe);var ko=function(t,r){var n=t.alwaysShow,i=t.ifOverflow;return n&&(i="extendDomain"),i===r},T$=YY;function xIe(e,t,r){t=="__proto__"&&T$?T$(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var _Ie=xIe,bIe=_Ie,wIe=UY,SIe=Tv;function TIe(e,t){var r={};return t=SIe(t),wIe(e,function(n,i,a){bIe(r,i,t(n,i,a))}),r}var AIe=TIe;const CIe=Ft(AIe);function MIe(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 HIe(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 UIe(e,t){var r=e.x,n=e.y,i=WIe(e,$Ie),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 Mp(Mp(Mp(Mp(Mp({},t),i),o?{x:o}:{}),l?{y:l}:{}),{},{height:c,width:h,name:t.name,radius:t.radius})}function C$(e){return Q.createElement(Mke,uk({shapeType:"rectangle",propTransformer:UIe,activeClassName:"recharts-active-bar"},e))}var ZIe=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)||ive(n);return a?t(n,i):(a||ef(),r)}},YIe=["value","background"],Tq;function Nd(e){"@babel/helpers - typeof";return Nd=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},Nd(e)}function XIe(e,t){if(e==null)return{};var r=qIe(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 qIe(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 j1(){return j1=Object.assign?Object.assign.bind():function(e){for(var t=1;t0&&Math.abs(z)0&&Math.abs(j)0&&(N=Math.min((ne||0)-(j[le-1]||0),N))}),Number.isFinite(N)){var z=N/D,$=g.layout==="vertical"?n.height:n.width;if(g.padding==="gap"&&(M=z*$/2),g.padding==="no-gap"){var U=Qc(t.barCategoryGap,z*$),F=z*$/2;M=F-U-(F-U)/$*U}}}i==="xAxis"?P=[n.left+(b.left||0)+(M||0),n.left+n.width-(b.right||0)-(M||0)]:i==="yAxis"?P=l==="horizontal"?[n.top+n.height-(b.bottom||0),n.top+(b.top||0)]:[n.top+(b.top||0)+(M||0),n.top+n.height-(b.bottom||0)-(M||0)]:P=g.range,T&&(P=[P[1],P[0]]);var V=A2e(g,a,h),W=V.scale,Y=V.realScaleType;W.domain(x).range(P),C2e(W);var Z=D2e(W,Oa(Oa({},g),{},{realScaleType:Y}));i==="xAxis"?(O=m==="top"&&!S||m==="bottom"&&S,I=n.left,k=f[A]-O*g.height):i==="yAxis"&&(O=m==="left"&&!S||m==="right"&&S,I=f[A]-O*g.width,k=n.top);var J=Oa(Oa(Oa({},g),Z),{},{realScaleType:Y,x:I,y:k,scale:W,width:i==="xAxis"?n.width:g.width,height:i==="yAxis"?n.height:g.height});return J.bandSize=S1(J,Z),!g.hide&&i==="xAxis"?f[A]+=(O?-1:1)*J.height:g.hide||(f[A]+=(O?-1:1)*J.width),Oa(Oa({},d),{},aT({},v,J))},{})},Lq=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)}},sOe=function(t){var r=t.x1,n=t.y1,i=t.x2,a=t.y2;return Lq({x:r,y:n},{x:i,y:a})},kq=function(){function e(t){iOe(this,e),this.scale=t}return aOe(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)}}])}();aT(kq,"EPS",1e-4);var qD=function(t){var r=Object.keys(t).reduce(function(n,i){return Oa(Oa({},n),{},aT({},i,kq.create(t[i])))},{});return Oa(Oa({},r),{},{apply:function(i){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=a.bandAware,s=a.position;return CIe(i,function(l,u){return r[u].apply(l,{bandAware:o,position:s})})},isInRange:function(i){return zIe(i,function(a,o){return r[o].isInRange(a)})}})};function lOe(e){return(e%180+180)%180}var uOe=function(t){var r=t.width,n=t.height,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=lOe(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 qOe(e,t){return Zq(e,t+1)}function KOe(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:Zq(n,u)};var g=l,m,x=function(){return m===void 0&&(m=r(v,g)),m},_=v.coordinate,b=l===0||F1(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 iy(e){"@babel/helpers - typeof";return iy=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},iy(e)}function z$(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-m*e:d.coordinate})}else a[h]=d=Mn(Mn({},d),{},{tickCoord:d.coordinate});var x=F1(e,d.tickCoord,g,s,l);x&&(l=d.tickCoord-e*(g()/2+i),a[h]=Mn(Mn({},d),{},{isShow:!0}))},c=o-1;c>=0;c--)u(c);return a}function rEe(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=F1(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,g=function(_){var b=o[_],S,T=function(){return S===void 0&&(S=r(b,_)),S};if(_===0){var A=e*(b.coordinate-e*T()/2-l);o[_]=b=Mn(Mn({},b),{},{tickCoord:A<0?b.coordinate-A*e:b.coordinate})}else o[_]=b=Mn(Mn({},b),{},{tickCoord:b.coordinate});var M=F1(e,b.tickCoord,T,l,u);M&&(l=b.tickCoord+e*(T()/2+i),o[_]=Mn(Mn({},b),{},{isShow:!0}))},m=0;m=2?ja(i[1].coordinate-i[0].coordinate):1,x=XOe(a,m,d);return l==="equidistantPreserveStart"?KOe(m,x,g,i,o):(l==="preserveStart"||l==="preserveStartEnd"?h=rEe(m,x,g,i,o,l==="preserveStartEnd"):h=tEe(m,x,g,i,o),h.filter(function(_){return _.isShow}))}var iEe=["viewBox"],aEe=["viewBox"],oEe=["ticks"];function zd(e){"@babel/helpers - typeof";return zd=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},zd(e)}function Bh(){return Bh=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 sEe(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 lEe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function F$(e,t){for(var r=0;r0?l(this.props):l(d)),o<=0||s<=0||!v||!v.length?null:Q.createElement(Xt,{className:xt("recharts-cartesian-axis",u),ref:function(m){n.layerReference=m}},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=xt(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(s1,Bh({},i,{className:"recharts-cartesian-axis-tick-value"}),a),o}}])}(H.Component);QD(cT,"displayName","CartesianAxis");QD(cT,"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"],gEe=["key"];function $d(e){"@babel/helpers - typeof";return $d=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},$d(e)}function V$(e,t){if(e==null)return{};var r=mEe(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 mEe(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 Bg(){return Bg=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(Hf(l.slice(0,v)),[f-g]);break}var m=d.length%2===0?[0,h]:[h];return[].concat(Hf(t.repeat(l,c)),Hf(d),m).map(function(x){return"".concat(x,"px")}).join(", ")}),Ea(r,"id",_v("recharts-line-")),Ea(r,"pathRef",function(o){r.mainCurve=o}),Ea(r,"handleAnimationEnd",function(){r.setState({isAnimationFinished:!0}),r.props.onAnimationEnd&&r.props.onAnimationEnd()}),Ea(r,"handleAnimationStart",function(){r.setState({isAnimationFinished:!1}),r.props.onAnimationStart&&r.props.onAnimationStart()}),r}return MEe(t,e),SEe(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=oa(c,Qy);if(!f)return null;var h=function(g,m){return{x:g.x,y:g.y,value:g.value,errorVal:Un(g.payload,m)}},d={clipPath:n?"url(#clipPath-".concat(i,")"):null};return Q.createElement(Xt,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=gi(gi(gi({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(Xt,Bg({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=V$(s,pEe),h=gi(gi(gi({},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(ad,Bg({},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(Ro,{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 A=_.length/s.length,M=s.map(function(D,N){var j=Math.floor(N*A);if(_[j]){var z=_[j],$=vn(z.x,D.x),U=vn(z.y,D.y);return gi(gi({},D),{},{x:$(T),y:U(T)})}if(v){var F=vn(g*2,D.x),V=vn(m/2,D.y);return gi(gi({},D),{},{x:F(T),y:V(T)})}return gi(gi({},D),{},{x:D.x,y:D.y})});return a.renderCurveStatically(M,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||!kd(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=xt("recharts-line",l),S=u&&u.allowDataOverflow,T=c&&c.allowDataOverflow,A=S||T,M=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,O=P.strokeWidth,D=O===void 0?2:O,N=QZ(o)?o:{},j=N.clipDot,z=j===void 0?!0:j,$=k*2+D;return Q.createElement(Xt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(M)},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})),!z&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(M)},Q.createElement("rect",{x:h-$/2,y:f-$/2,width:d+$,height:v+$}))):null,!_&&this.renderCurve(A,M),this.renderErrorBar(A,M),(_||o)&&this.renderDots(A,z,M),(!g||x)&&Ss.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(Hf(n),[0]):n,o=[],s=0;s=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}function IEe(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 Sc(){return Sc=Object.assign?Object.assign.bind():function(e){for(var t=1;t0||!kd(c,o)||!kd(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=xt("recharts-area",l),S=f&&f.allowDataOverflow,T=h&&h.allowDataOverflow,A=S||T,M=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,O=P.strokeWidth,D=O===void 0?2:O,N=QZ(o)?o:{},j=N.clipDot,z=j===void 0?!0:j,$=k*2+D;return Q.createElement(Xt,{className:b},S||T?Q.createElement("defs",null,Q.createElement("clipPath",{id:"clipPath-".concat(M)},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})),!z&&Q.createElement("clipPath",{id:"clipPath-dots-".concat(M)},Q.createElement("rect",{x:c-$/2,y:u-$/2,width:d+$,height:v+$}))):null,_?null:this.renderArea(A,M),(o||_)&&this.renderDots(A,z,M),(!g||x)&&Ss.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);Qq=gu;_o(gu,"displayName","Area");_o(gu,"defaultProps",{stroke:"#3182bd",fill:"#3182bd",fillOpacity:.6,xAxisId:0,yAxisId:0,legendType:"line",connectNulls:!1,points:[],dot:!1,activeDot:!0,hide:!1,isAnimationActive:!yf.isSsr,animationBegin:0,animationDuration:1500,animationEasing:"ease"});_o(gu,"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]});_o(gu,"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=Qq.getBaseValue(t,r,n,i),m=d==="horizontal",x=!1,_=f.map(function(S,T){var A;v?A=u[c+T]:(A=Un(S,l),Array.isArray(A)?x=!0:A=[g,A]);var M=A[1]==null||v&&Un(S,l)==null;return m?{x:w1({axis:n,ticks:a,bandSize:s,entry:S,index:T}),y:M?null:i.scale(A[1]),value:A,payload:S}:{x:M?null:n.scale(A[1]),y:w1({axis:i,ticks:o,bandSize:s,entry:S,index:T}),value:A,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),dl({points:_,baseLine:b,layout:d,isRange:x},h)});_o(gu,"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=xt("recharts-area-dot",typeof e!="boolean"?e.className:""),i=t.key,a=Jq(t,kEe);r=Q.createElement(rT,Sc({},a,{key:i,className:n}))}return r});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 zEe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function $Ee(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 CDe(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 MDe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function PDe(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 pK(e){return e==="number"?[0,"auto"]:void 0}var Lk=function(t,r,n,i){var a=t.graphicalItems,o=t.tooltipAxis,s=fT(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=Hb(d,o.dataKey,i)}else h=f&&f[n]||s[n];return h?[].concat(Hd(l),[oq(u,h)]):l},[])},Q$=function(t,r,n,i){var a=i||{x:t.chartX,y:t.chartY},o=$De(a,n),s=t.orderedTooltipTicks,l=t.tooltipAxis,u=t.tooltipTicks,c=x2e(o,s,u,l);if(c>=0&&u){var f=u[c]&&u[c].value,h=Lk(t,r,c,f),d=FDe(n,s,c,a);return{activeTooltipIndex:c,activeLabel:f,activePayload:h,activeCoordinate:d}}return null},VDe=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=iq(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,A=x.scale,M=x.ticks,P=x.includeHidden,I=x[o];if(v[I])return v;var k=fT(t.data,{graphicalItems:i.filter(function(Z){var J,ne=o in Z.props?Z.props[o]:(J=Z.type.defaultProps)===null||J===void 0?void 0:J[o];return ne===I}),dataStartIndex:l,dataEndIndex:u}),O=k.length,D,N,j;vDe(x.domain,S,_)&&(D=UL(x.domain,null,S),d&&(_==="number"||A!=="auto")&&(j=jg(k,b,"category")));var z=pK(_);if(!D||D.length===0){var $,U=($=x.domain)!==null&&$!==void 0?$:z;if(b){if(D=jg(k,b,_),_==="category"&&d){var F=ove(D);T&&F?(N=D,D=E1(0,O)):T||(D=E4(U,D,g).reduce(function(Z,J){return Z.indexOf(J)>=0?Z:[].concat(Hd(Z),[J])},[]))}else if(_==="category")T?D=D.filter(function(Z){return Z!==""&&!dt(Z)}):D=E4(U,D,g).reduce(function(Z,J){return Z.indexOf(J)>=0||J===""||dt(J)?Z:[].concat(Hd(Z),[J])},[]);else if(_==="number"){var V=T2e(k,i.filter(function(Z){var J,ne,le=o in Z.props?Z.props[o]:(J=Z.type.defaultProps)===null||J===void 0?void 0:J[o],fe="hide"in Z.props?Z.props.hide:(ne=Z.type.defaultProps)===null||ne===void 0?void 0:ne.hide;return le===I&&(P||!fe)}),b,a,c);V&&(D=V)}d&&(_==="number"||A!=="auto")&&(j=jg(k,b,"category"))}else d?D=E1(0,O):s&&s[I]&&s[I].hasStack&&_==="number"?D=h==="expand"?[0,1]:aq(s[I].stackGroups,l,u):D=nq(k,i.filter(function(Z){var J=o in Z.props?Z.props[o]:Z.type.defaultProps[o],ne="hide"in Z.props?Z.props.hide:Z.type.defaultProps.hide;return J===I&&(P||!ne)}),_,c,!0);if(_==="number")D=Ck(f,D,I,a,M),U&&(D=UL(U,D,S));else if(_==="category"&&U){var W=U,Y=D.every(function(Z){return W.indexOf(Z)>=0});Y&&(D=W)}}return ce(ce({},v),{},Ke({},I,ce(ce({},x),{},{axisType:a,domain:D,categoricalDomain:j,duplicateDomain:N,originalDomain:(m=x.domain)!==null&&m!==void 0?m:z,isCategorical:d,layout:c})))},{})},GDe=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=fT(t.data,{graphicalItems:n,dataStartIndex:l,dataEndIndex:u}),d=h.length,v=iq(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=pK("number");if(!m[b]){g++;var T;return v?T=E1(0,d):s&&s[b]&&s[b].hasStack?(T=aq(s[b].stackGroups,l,u),T=Ck(f,T,b,a)):(T=UL(S,nq(h,n.filter(function(A){var M,P,I=o in A.props?A.props[o]:(M=A.type.defaultProps)===null||M===void 0?void 0:M[o],k="hide"in A.props?A.props.hide:(P=A.type.defaultProps)===null||P===void 0?void 0:P.hide;return I===b&&!k}),"number",c),i.defaultProps.allowDataOverflow),T=Ck(f,T,b,a)),ce(ce({},m),{},Ke({},b,ce(ce({axisType:a},i.defaultProps),{},{hide:!0,orientation:aa(BDe,"".concat(a,".").concat(g%2),null),domain:T,originalDomain:S,isCategorical:v,layout:c})))}return m},{})},WDe=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=oa(c,a),d={};return h&&h.length?d=VDe(t,{axes:h,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u}):o&&o.length&&(d=GDe(t,{Axis:a,graphicalItems:o,axisType:i,axisIdKey:f,stackGroups:s,dataStartIndex:l,dataEndIndex:u})),d},HDe=function(t){var r=_h(t),n=wc(r,!1,!0);return{tooltipTicks:n,orderedTooltipTicks:wD(n,function(i){return i.coordinate}),tooltipAxis:r,tooltipAxisBandSize:S1(r,n)}},J$=function(t){var r=t.children,n=t.defaultShowTooltip,i=xi(r,Dd),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}},UDe=function(t){return!t||!t.length?!1:t.some(function(r){var n=bs(r&&r.type);return n&&n.indexOf("Bar")>=0})},eF=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"}},ZDe=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=xi(f,Dd),v=xi(f,rd),g=Object.keys(l).reduce(function(T,A){var M=l[A],P=M.orientation;return!M.mirror&&!M.hide?ce(ce({},T),{},Ke({},P,T[P]+M.width)):T},{left:h.left||0,right:h.right||0}),m=Object.keys(o).reduce(function(T,A){var M=o[A],P=M.orientation;return!M.mirror&&!M.hide?ce(ce({},T),{},Ke({},P,aa(T,"".concat(P))+M.height)):T},{top:h.top||0,bottom:h.bottom||0}),x=ce(ce({},m),g),_=x.bottom;d&&(x.bottom+=d.props.height||Dd.defaultProps.height),v&&r&&(x=w2e(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)})},YDe=function(t,r){if(r==="xAxis")return t[r].width;if(r==="yAxis")return t[r].height},gK=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,A=_.updateId,M=_.dataStartIndex,P=_.dataEndIndex,I=x.barSize,k=x.layout,O=x.barGap,D=x.barCategoryGap,N=x.maxBarSize,j=eF(k),z=j.numericAxisName,$=j.cateAxisName,U=UDe(b),F=[];return b.forEach(function(V,W){var Y=fT(x.data,{graphicalItems:[V],dataStartIndex:M,dataEndIndex:P}),Z=V.type.defaultProps!==void 0?ce(ce({},V.type.defaultProps),V.props):V.props,J=Z.dataKey,ne=Z.maxBarSize,le=Z["".concat(z,"Id")],fe=Z["".concat($,"Id")],ze={},xe=l.reduce(function(qr,Jn){var Of=_["".concat(Jn.axisType,"Map")],S0=Z["".concat(Jn.axisType,"Id")];Of&&Of[S0]||Jn.axisType==="zAxis"||ef();var T0=Of[S0];return ce(ce({},qr),{},Ke(Ke({},Jn.axisType,T0),"".concat(Jn.axisType,"Ticks"),wc(T0)))},ze),ie=xe[$],he=xe["".concat($,"Ticks")],ue=S&&S[le]&&S[le].hasStack&&j2e(V,S[le].stackGroups),ee=bs(V.type).indexOf("Bar")>=0,Ve=S1(ie,he),Se=[],Ge=U&&_2e({barSize:I,stackGroups:S,totalSize:YDe(xe,$)});if(ee){var Ye,vt,Vt=dt(ne)?N:ne,nr=(Ye=(vt=S1(ie,he,!0))!==null&&vt!==void 0?vt:Vt)!==null&&Ye!==void 0?Ye:0;Se=b2e({barGap:O,barCategoryGap:D,bandSize:nr!==Ve?nr:Ve,sizeList:Ge[fe],maxBarSize:Vt}),nr!==Ve&&(Se=Se.map(function(qr){return ce(ce({},qr),{},{position:ce(ce({},qr.position),{},{offset:qr.position.offset-nr/2})})}))}var jn=V&&V.type&&V.type.getComposedData;jn&&F.push({props:ce(ce({},jn(ce(ce({},xe),{},{displayedData:Y,props:x,dataKey:J,item:V,bandSize:Ve,barPosition:Se,offset:T,stackedData:ue,layout:k,dataStartIndex:M,dataEndIndex:P}))),{},Ke(Ke(Ke({key:V.key||"item-".concat(W)},z,xe[z]),$,xe[$]),"animationId",A)),childIndex:yve(V,x.children),item:V})}),F},d=function(x,_){var b=x.props,S=x.dataStartIndex,T=x.dataEndIndex,A=x.updateId;if(!M3({props:b}))return null;var M=b.children,P=b.layout,I=b.stackOffset,k=b.data,O=b.reverseStackOrder,D=eF(P),N=D.numericAxisName,j=D.cateAxisName,z=oa(M,n),$=E2e(k,z,"".concat(N,"Id"),"".concat(j,"Id"),I,O),U=l.reduce(function(Z,J){var ne="".concat(J.axisType,"Map");return ce(ce({},Z),{},Ke({},ne,WDe(b,ce(ce({},J),{},{graphicalItems:z,stackGroups:J.axisType===N&&$,dataStartIndex:S,dataEndIndex:T}))))},{}),F=ZDe(ce(ce({},U),{},{props:b,graphicalItems:z}),_==null?void 0:_.legendBBox);Object.keys(U).forEach(function(Z){U[Z]=c(b,U[Z],F,Z.replace("Map",""),r)});var V=U["".concat(j,"Map")],W=HDe(V),Y=h(b,ce(ce({},U),{},{dataStartIndex:S,dataEndIndex:T,updateId:A,graphicalItems:z,stackGroups:$,offset:F}));return ce(ce({formattedGraphicalItems:Y,graphicalItems:z,offset:F,stackGroups:$},W),U)},v=function(m){function x(_){var b,S,T;return MDe(this,x),T=kDe(this,x,[_]),Ke(T,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),Ke(T,"accessibilityManager",new dDe),Ke(T,"handleLegendBBoxUpdate",function(A){if(A){var M=T.state,P=M.dataStartIndex,I=M.dataEndIndex,k=M.updateId;T.setState(ce({legendBBox:A},d({props:T.props,dataStartIndex:P,dataEndIndex:I,updateId:k},ce(ce({},T.state),{},{legendBBox:A}))))}}),Ke(T,"handleReceiveSyncEvent",function(A,M,P){if(T.props.syncId===A){if(P===T.eventEmitterSymbol&&typeof T.props.syncMethod!="function")return;T.applySyncEvent(M)}}),Ke(T,"handleBrushChange",function(A){var M=A.startIndex,P=A.endIndex;if(M!==T.state.dataStartIndex||P!==T.state.dataEndIndex){var I=T.state.updateId;T.setState(function(){return ce({dataStartIndex:M,dataEndIndex:P},d({props:T.props,dataStartIndex:M,dataEndIndex:P,updateId:I},T.state))}),T.triggerSyncEvent({dataStartIndex:M,dataEndIndex:P})}}),Ke(T,"handleMouseEnter",function(A){var M=T.getMouseInfo(A);if(M){var P=ce(ce({},M),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var I=T.props.onMouseEnter;ft(I)&&I(P,A)}}),Ke(T,"triggeredAfterMouseMove",function(A){var M=T.getMouseInfo(A),P=M?ce(ce({},M),{},{isTooltipActive:!0}):{isTooltipActive:!1};T.setState(P),T.triggerSyncEvent(P);var I=T.props.onMouseMove;ft(I)&&I(P,A)}),Ke(T,"handleItemMouseEnter",function(A){T.setState(function(){return{isTooltipActive:!0,activeItem:A,activePayload:A.tooltipPayload,activeCoordinate:A.tooltipPosition||{x:A.cx,y:A.cy}}})}),Ke(T,"handleItemMouseLeave",function(){T.setState(function(){return{isTooltipActive:!1}})}),Ke(T,"handleMouseMove",function(A){A.persist(),T.throttleTriggeredAfterMouseMove(A)}),Ke(T,"handleMouseLeave",function(A){T.throttleTriggeredAfterMouseMove.cancel();var M={isTooltipActive:!1};T.setState(M),T.triggerSyncEvent(M);var P=T.props.onMouseLeave;ft(P)&&P(M,A)}),Ke(T,"handleOuterEvent",function(A){var M=mve(A),P=aa(T.props,"".concat(M));if(M&&ft(P)){var I,k;/.*touch.*/i.test(M)?k=T.getMouseInfo(A.changedTouches[0]):k=T.getMouseInfo(A),P((I=k)!==null&&I!==void 0?I:{},A)}}),Ke(T,"handleClick",function(A){var M=T.getMouseInfo(A);if(M){var P=ce(ce({},M),{},{isTooltipActive:!0});T.setState(P),T.triggerSyncEvent(P);var I=T.props.onClick;ft(I)&&I(P,A)}}),Ke(T,"handleMouseDown",function(A){var M=T.props.onMouseDown;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"handleMouseUp",function(A){var M=T.props.onMouseUp;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"handleTouchMove",function(A){A.changedTouches!=null&&A.changedTouches.length>0&&T.throttleTriggeredAfterMouseMove(A.changedTouches[0])}),Ke(T,"handleTouchStart",function(A){A.changedTouches!=null&&A.changedTouches.length>0&&T.handleMouseDown(A.changedTouches[0])}),Ke(T,"handleTouchEnd",function(A){A.changedTouches!=null&&A.changedTouches.length>0&&T.handleMouseUp(A.changedTouches[0])}),Ke(T,"handleDoubleClick",function(A){var M=T.props.onDoubleClick;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"handleContextMenu",function(A){var M=T.props.onContextMenu;if(ft(M)){var P=T.getMouseInfo(A);M(P,A)}}),Ke(T,"triggerSyncEvent",function(A){T.props.syncId!==void 0&&IC.emit(OC,T.props.syncId,A,T.eventEmitterSymbol)}),Ke(T,"applySyncEvent",function(A){var M=T.props,P=M.layout,I=M.syncMethod,k=T.state.updateId,O=A.dataStartIndex,D=A.dataEndIndex;if(A.dataStartIndex!==void 0||A.dataEndIndex!==void 0)T.setState(ce({dataStartIndex:O,dataEndIndex:D},d({props:T.props,dataStartIndex:O,dataEndIndex:D,updateId:k},T.state)));else if(A.activeTooltipIndex!==void 0){var N=A.chartX,j=A.chartY,z=A.activeTooltipIndex,$=T.state,U=$.offset,F=$.tooltipTicks;if(!U)return;if(typeof I=="function")z=I(F,A);else if(I==="value"){z=-1;for(var V=0;V=0){var ue,ee;if(N.dataKey&&!N.allowDuplicatedCategory){var Ve=typeof N.dataKey=="function"?he:"payload.".concat(N.dataKey.toString());ue=Hb(V,Ve,z),ee=W&&Y&&Hb(Y,Ve,z)}else ue=V==null?void 0:V[j],ee=W&&Y&&Y[j];if(fe||le){var Se=A.props.activeIndex!==void 0?A.props.activeIndex:j;return[H.cloneElement(A,ce(ce(ce({},I.props),xe),{},{activeIndex:Se})),null,null]}if(!dt(ue))return[ie].concat(Hd(T.renderActivePoints({item:I,activePoint:ue,basePoint:ee,childIndex:j,isRange:W})))}else{var Ge,Ye=(Ge=T.getItemByXY(T.state.activeCoordinate))!==null&&Ge!==void 0?Ge:{graphicalItem:ie},vt=Ye.graphicalItem,Vt=vt.item,nr=Vt===void 0?A:Vt,jn=vt.childIndex,qr=ce(ce(ce({},I.props),xe),{},{activeIndex:jn});return[H.cloneElement(nr,qr),null,null]}return W?[ie,null,null]:[ie,null]}),Ke(T,"renderCustomized",function(A,M,P){return H.cloneElement(A,ce(ce({key:"recharts-customized-".concat(P)},T.props),T.state))}),Ke(T,"renderMap",{CartesianGrid:{handler:xx,once:!0},ReferenceArea:{handler:T.renderReferenceElement},ReferenceLine:{handler:xx},ReferenceDot:{handler:T.renderReferenceElement},XAxis:{handler:xx},YAxis:{handler:xx},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:_v("recharts"),"-clip"),T.throttleTriggeredAfterMouseMove=eX(T.triggeredAfterMouseMove,(S=_.throttleDelay)!==null&&S!==void 0?S:1e3/60),T.state={},T}return EDe(x,m),LDe(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,A=b.height,M=b.layout,P=xi(S,os);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=Lk(this.state,T,I,k),D=this.state.tooltipTicks[I].coordinate,N=(this.state.offset.top+A)/2,j=M==="horizontal",z=j?{x:D,y:N}:{y:D,x:N},$=this.state.formattedGraphicalItems.find(function(F){var V=F.item;return V.type.name==="Scatter"});$&&(z=ce(ce({},z),$.props.points[I].tooltipPosition),O=$.props.points[I].tooltipPayload);var U={activeTooltipIndex:I,isTooltipActive:!0,activeLabel:k,activePayload:O,activeCoordinate:z};this.setState(U),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,A;this.accessibilityManager.setDetails({offset:{left:(T=this.props.margin.left)!==null&&T!==void 0?T:0,top:(A=this.props.margin.top)!==null&&A!==void 0?A:0}})}return null}},{key:"componentDidUpdate",value:function(b){sL([xi(b.children,os)],[xi(this.props.children,os)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var b=xi(this.props.children,os);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(),A=Hwe(T),M={chartX:Math.round(b.pageX-A.left),chartY:Math.round(b.pageY-A.top)},P=T.width/S.offsetWidth||1,I=this.inRange(M.chartX,M.chartY,P);if(!I)return null;var k=this.state,O=k.xAxisMap,D=k.yAxisMap,N=this.getTooltipEventType(),j=Q$(this.state,this.props.data,this.props.layout,I);if(N!=="axis"&&O&&D){var z=_h(O).scale,$=_h(D).scale,U=z&&z.invert?z.invert(M.chartX):null,F=$&&$.invert?$.invert(M.chartY):null;return ce(ce({},M),{},{xValue:U,yValue:F},j)}return j?ce(ce({},M),j):null}},{key:"inRange",value:function(b,S){var T=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,A=this.props.layout,M=b/T,P=S/T;if(A==="horizontal"||A==="vertical"){var I=this.state.offset,k=M>=I.left&&M<=I.left+I.width&&P>=I.top&&P<=I.top+I.height;return k?{x:M,y:P}:null}var O=this.state,D=O.angleAxisMap,N=O.radiusAxisMap;if(D&&N){var j=_h(D);return j4({x:M,y:P},j)}return null}},{key:"parseEventsOfWrapper",value:function(){var b=this.props.children,S=this.getTooltipEventType(),T=xi(b,os),A={};T&&S==="axis"&&(T.props.trigger==="click"?A={onClick:this.handleClick}:A={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 M=Ub(this.props,this.handleOuterEvent);return ce(ce({},M),A)}},{key:"addListener",value:function(){IC.on(OC,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){IC.removeListener(OC,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(b,S,T){for(var A=this.state.formattedGraphicalItems,M=0,P=A.length;Ms>=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 _x({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 QDe({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:xd,iconColor:"text-red-500"};case"warning":case"priority":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Ns,iconColor:"text-amber-500"};case"routine":default:return{bg:"bg-blue-500/10",border:"border-blue-500",icon:Sm,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 JDe({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 bx({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 DC({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 tF({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 eNe({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(tX,{width:"100%",height:"100%",children:y.jsxs(qDe,{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(Lv,{domain:[0,Math.ceil(r)],hide:!0}),y.jsx(Pv,{dataKey:"idx",hide:!0}),y.jsx(ny,{y:3,stroke:"#f59e0b",strokeDasharray:"3 3",strokeOpacity:.5}),y.jsx(ny,{y:5,stroke:"#ef4444",strokeDasharray:"3 3",strokeOpacity:.5}),y.jsx(gu,{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 tNe({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(tX,{width:"100%",height:"100%",children:y.jsxs(XDe,{data:t,margin:{top:5,right:10,bottom:5,left:5},children:[y.jsx(Pv,{dataKey:"M",type:"number",domain:["dataMin - 20","dataMax + 20"],tick:{fontSize:10,fill:"#64748b"},tickLine:!1,axisLine:{stroke:"#334155"}}),y.jsx(Lv,{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(e0,{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 rNe({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(Tm,{size:14}),"RF Propagation"]}),y.jsxs("div",{className:"flex justify-around mb-4",children:[y.jsx(tF,{label:"SFI",value:e==null?void 0:e.sfi,getColor:r}),y.jsx("div",{className:"w-px bg-border"}),y.jsx(tF,{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(DC,{label:"R",value:(e==null?void 0:e.r_scale)??0}),y.jsx(DC,{label:"S",value:(e==null?void 0:e.s_scale)??0}),y.jsx(DC,{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(eNe,{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(qc,{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(tNe,{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 nNe={nws:{icon:qc,color:"text-blue-400",label:"NWS"},swpc:{icon:Wb,color:"text-yellow-400",label:"SWPC"},ducting:{icon:Ds,color:"text-cyan-400",label:"Tropo"},nifc:{icon:UE,color:"text-orange-400",label:"NIFC"},firms:{icon:YE,color:"text-red-400",label:"FIRMS"},avalanche:{icon:ZE,color:"text-slate-300",label:"Avy"},usgs:{icon:GE,color:"text-blue-300",label:"USGS"},traffic:{icon:VE,color:"text-purple-400",label:"Traffic"},roads:{icon:_Z,color:"text-amber-400",label:"511"}},rF={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 iNe({event:e,isLocal:t}){var f;const r=nNe[e.source]||{icon:Sm,color:"text-slate-400",label:e.source},n=r.icon,i=rF[(f=e.severity)==null?void 0:f.toLowerCase()]||rF.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 aNe({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(Hy,{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(iNe,{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(ed,{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 oNe(){var S,T,A,M,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}=KE();return H.useEffect(()=>{Promise.all([uce(),hce(),OZ(),EZ(),DZ().catch(()=>[]),NZ().catch(()=>null),jZ().catch(()=>null)]).then(([I,k,O,D,N,j,z])=>{t(I),n(k),a(O),s(D),u(N),f(j),d(z),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,O=I.filter(D=>D.event_id!==k.event_id);return[k,...O].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(KDe,{health:e}),y.jsxs("div",{className:"mt-6 space-y-3",children:[y.jsx(_x,{label:"Infrastructure",value:((S=e.pillars)==null?void 0:S.infrastructure)??0}),y.jsx(_x,{label:"Utilization",value:((T=e.pillars)==null?void 0:T.utilization)??0}),y.jsx(_x,{label:"Behavior",value:((A=e.pillars)==null?void 0:A.behavior)??0}),y.jsx(_x,{label:"Power",value:((M=e.pillars)==null?void 0:M.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(QDe,{alert:I},k))}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[y.jsx(ed,{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(bx,{icon:Ds,label:"Nodes Online",value:(e==null?void 0:e.total_nodes)||0,subvalue:`${(e==null?void 0:e.unlocated_count)||0} unlocated`}),y.jsx(bx,{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"}),y.jsx(bx,{icon:Hy,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(bx,{icon:AZ,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(JDe,{source:I},k))}):y.jsx("div",{className:"text-slate-500 py-4",children:"No sources configured"})]}),y.jsx(rNe,{swpc:c,ducting:h}),y.jsx(aNe,{events:l,envStatus:o})]})]})}/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +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 kk=function(e,t){return kk=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])},kk(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");kk(e,t);function r(){this.constructor=e}e.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}var zg=function(){return zg=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):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 JD=12,mK="sans-serif",zs=JD+"px "+mK,fNe=20,hNe=100,dNe="007LLmW'55;N0500LLLLLLLLLL00NNNLzWW\\\\WQb\\0FWLg\\bWb\\WQ\\WrWWQ000CL5LLFLL0LL**F*gLLLL5F0LF\\FFF5.5N";function vNe(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(){B(r,function(c){c.parentNode&&c.parentNode.removeChild(c)})},r}function BNe(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?oF(s,o):oF(o,s))}function MK(e){return e.nodeName.toUpperCase()==="CANVAS"}var zNe=/([&<>"'])/g,$Ne={"&":"&","<":"<",">":">",'"':""","'":"'"};function On(e){return e==null?"":(e+"").replace(zNe,function(t,r){return $Ne[r]})}var FNe=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,jC=[],VNe=nt.browser.firefox&&+nt.browser.version.split(".")[0]<39;function Nk(e,t,r,n){return r=r||{},n?sF(e,t,r):VNe&&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):sF(e,t,r),r}function sF(e,t,r){if(nt.domSupported&&e.getBoundingClientRect){var n=t.clientX,i=t.clientY;if(MK(e)){var a=e.getBoundingClientRect();r.zrX=n-a.left,r.zrY=i-a.top;return}else if(Dk(jC,e,n,i)){r.zrX=jC[0],r.zrY=jC[1];return}}r.zrX=r.zrY=0}function oN(e){return e||window.event}function Zi(e,t,r){if(t=oN(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&&Nk(e,o,t,r)}else{Nk(e,t,t,r);var a=GNe(t);t.zrDelta=a?a/120:-(t.detail||0)/3}var s=t.button;return t.which==null&&s!==void 0&&FNe.test(t.type)&&(t.which=s&1?1:s&2?3:s&4?2:0),t}function GNe(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 jk(e,t,r,n){e.addEventListener(t,r,n)}function WNe(e,t,r,n){e.removeEventListener(t,r,n)}var $s=function(e){e.preventDefault(),e.stopPropagation(),e.cancelBubble=!0};function lF(e){return e.which===2||e.which===3}var HNe=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=uF(n)/uF(i);!isFinite(a)&&(a=1),t.pinchScale=a;var o=UNe(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 i0(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e}function a0(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 Fa(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 Ua(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 Ks(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 mT(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 da(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 PK(e){var t=Wr();return a0(t,e),t}const ZNe=Object.freeze(Object.defineProperty({__proto__:null,clone:PK,copy:a0,create:Wr,identity:i0,invert:da,mul:Fa,rotate:Ks,scale:mT,translate:Ua},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}(),Tc=Math.min,$h=Math.max,Rk=Math.abs,cF=["x","y"],YNe=["width","height"],Lu=new Ie,ku=new Ie,Iu=new Ie,Ou=new Ie,bi=LK(),hg=bi.minTv,Bk=bi.maxTv,Gg=[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=Tc(t.x,this.x),n=Tc(t.y,this.y);isFinite(this.x)&&isFinite(this.width)?this.width=$h(t.x+t.width,this.x+this.width)-r:this.width=t.width,isFinite(this.y)&&isFinite(this.height)?this.height=$h(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 Ua(a,a,[-r.x,-r.y]),mT(a,a,[n,i]),Ua(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(XNe,t.x,t.y,t.width,t.height)),r instanceof e||(r=e.set(qNe,r.x,r.y,r.width,r.height));var s=!!n;bi.reset(i,s);var l=bi.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}Lu.x=Iu.x=r.x,Lu.y=Ou.y=r.y,ku.x=Ou.x=r.x+r.width,ku.y=Iu.y=r.y+r.height,Lu.transform(n),Ou.transform(n),ku.transform(n),Iu.transform(n),t.x=Tc(Lu.x,ku.x,Iu.x,Ou.x),t.y=Tc(Lu.y,ku.y,Iu.y,Ou.y);var l=$h(Lu.x,ku.x,Iu.x,Ou.x),u=$h(Lu.y,ku.y,Iu.y,Ou.y);t.width=l-t.x,t.height=u-t.y},e}(),XNe=new Oe(0,0,0,0),qNe=new Oe(0,0,0,0);function fF(e,t,r,n,i,a,o,s){var l=Rk(t-r),u=Rk(n-e),c=Tc(l,u),f=cF[i],h=cF[1-i],d=YNe[i];t=u||!bi.bidirectional)&&(hg[f]=-u,hg[h]=0,bi.useDir&&bi.calcDirMTV())))}function LK(){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=$h(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)&&(BC.copy(h.getBoundingRect()),h.transform&&BC.applyTransform(h.transform),BC.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 tje(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?kK:!0}return!1}function hF(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=tje(o,r,n))&&(!t.topTarget&&(t.topTarget=o),s!==kK)){t.target=o;break}}}function OK(e,t,r){var n=e.painter;return t<0||t>n.getWidth()||r<0||r>n.getHeight()}var EK=32,Lp=7;function rje(e){for(var t=0;e>=EK;)t|=e&1,e>>=1;return e+t}function dF(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 nje(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 zC(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 $C(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 ije(e,t){var r=Lp,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]=Lp||M>=Lp);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[A+x]=e[T+x];e[S]=o[b];return}for(var M=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[A+x]=e[T+x];if(v===0){k=!0;break}}if(e[S--]=o[b--],--m===1){k=!0;break}if(I=m-zC(e[_],o,0,m,m-1,t),I!==0){for(S-=I,b-=I,m-=I,A=S+1,T=b+1,x=0;x=Lp||I>=Lp);if(k)break;M<0&&(M=0),M+=2}if(r=M,r<1&&(r=1),m===1){for(S-=v,_-=v,A=S+1,T=_+1,x=v-1;x>=0;x--)e[A+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),vF(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 Si=1,dg=2,bh=4,pF=!1;function FC(){pF||(pF=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function gF(e,t){return e.zlevel===t.zlevel?e.z===t.z?e.z2-t.z2:e.z-t.z:e.zlevel-t.zlevel}var aje=function(){function e(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=gF}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}(),Q1;Q1=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 Wg={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-Wg.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?Wg.bounceIn(e*2)*.5:Wg.bounceOut(e*2-1)*.5+.5}},Tx=Math.pow,Ul=Math.sqrt,J1=1e-8,DK=1e-4,mF=Ul(3),Ax=1/3,go=yu(),Ji=yu(),sd=yu();function Ll(e){return e>-J1&&eJ1||e<-J1}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 yF(e,t,r,n,i){var a=1-i;return 3*(((t-e)*a+2*(r-t)*i)*a+(n-r)*i*i)}function ew(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(Ll(c)&&Ll(f))if(Ll(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(Ll(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 _=Ul(g),b=c*s+1.5*o*(-f+_),S=c*s+1.5*o*(-f-_);b<0?b=-Tx(-b,Ax):b=Tx(b,Ax),S<0?S=-Tx(-S,Ax):S=Tx(S,Ax);var v=(-s-(b+S))/(3*o);v>=0&&v<=1&&(a[d++]=v)}else{var T=(2*c*s-3*o*f)/(2*Ul(c*c*c)),A=Math.acos(T)/3,M=Ul(c),P=Math.cos(A),v=(-s-2*M*P)/(3*o),x=(-s+M*(P+mF*Math.sin(A)))/(3*o),I=(-s+M*(P-mF*Math.sin(A)))/(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 jK(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(Ll(o)){if(NK(a)){var u=-s/a;u>=0&&u<=1&&(i[l++]=u)}}else{var c=a*a-4*o*s;if(Ll(c))i[0]=-a/(2*o);else if(c>0){var f=Ul(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 nu(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 RK(e,t,r,n,i,a,o,s,l,u,c){var f,h=.005,d=1/0,v,g,m,x;go[0]=l,go[1]=u;for(var _=0;_<1;_+=.05)Ji[0]=$r(e,r,i,o,_),Ji[1]=$r(t,n,a,s,_),m=Hl(go,Ji),m=0&&m=0&&u<=1&&(i[l++]=u)}}else{var c=o*o-4*a*s;if(Ll(c)){var u=-o/(2*a);u>=0&&u<=1&&(i[l++]=u)}else if(c>0){var f=Ul(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 BK(e,t,r){var n=e+r-2*t;return n===0?.5:(e-t)/n}function uy(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 zK(e,t,r,n,i,a,o,s,l){var u,c=.005,f=1/0;go[0]=o,go[1]=s;for(var h=0;h<1;h+=.05){Ji[0]=rn(e,r,i,h),Ji[1]=rn(t,n,a,h);var d=Hl(go,Ji);d=0&&d=1?1:ew(0,n,a,1,l,s)&&$r(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||lr,this.ondestroy=t.ondestroy||lr,this.onrestart=t.onrestart||lr,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:Wg[t]||sN(t)},e}(),$K=function(){function e(t){this.value=t}return e}(),fje=function(){function e(){this._len=0}return e.prototype.insert=function(t){var r=new $K(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}(),Zd=function(){function e(t){this._list=new fje,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 $K(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}(),xF={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 Va(e){return e=Math.round(e),e<0?0:e>255?255:e}function hje(e){return e=Math.round(e),e<0?0:e>360?360:e}function cy(e){return e<0?0:e>1?1:e}function K_(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?Va(parseFloat(t)/100*255):Va(parseInt(t,10))}function Ts(e){var t=e;return t.length&&t.charAt(t.length-1)==="%"?cy(parseFloat(t)/100):cy(parseFloat(t))}function VC(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 kl(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 $k(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}var FK=new Zd(20),Cx=null;function Zf(e,t){Cx&&$k(Cx,t),Cx=FK.put(e,Cx||t.slice())}function En(e,t){if(e){t=t||[];var r=FK.get(e);if(r)return $k(t,r);e=e+"";var n=e.replace(/ /g,"").toLowerCase();if(n in xF)return $k(t,xF[n]),Zf(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),Zf(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),Zf(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=Ts(u.pop());case"rgb":if(u.length>=3)return Ui(t,K_(u[0]),K_(u[1]),K_(u[2]),u.length===3?c:Ts(u[3])),Zf(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]=Ts(u[3]),Fk(u,t),Zf(e,t),t;case"hsl":if(u.length!==3){Ui(t,0,0,0,1);return}return Fk(u,t),Zf(e,t),t;default:return}}Ui(t,0,0,0,1)}}function Fk(e,t){var r=(parseFloat(e[0])%360+360)%360/360,n=Ts(e[1]),i=Ts(e[2]),a=i<=.5?i*(n+1):i+n-i*n,o=i*2-a;return t=t||[],Ui(t,Va(VC(o,a,r+1/3)*255),Va(VC(o,a,r)*255),Va(VC(o,a,r-1/3)*255),1),e.length===4&&(t[3]=e[3]),t}function dje(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 tw(e,t){var r=En(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 sa(r,r.length===4?"rgba":"rgb")}}function vje(e){var t=En(e);if(t)return((1<<24)+(t[0]<<16)+(t[1]<<8)+ +t[2]).toString(16).slice(1)}function Hg(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]=Va(kl(o[0],s[0],l)),r[1]=Va(kl(o[1],s[1],l)),r[2]=Va(kl(o[2],s[2],l)),r[3]=cy(kl(o[3],s[3],l)),r}}var pje=Hg;function lN(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=En(t[i]),s=En(t[a]),l=n-i,u=sa([Va(kl(o[0],s[0],l)),Va(kl(o[1],s[1],l)),Va(kl(o[2],s[2],l)),cy(kl(o[3],s[3],l))],"rgba");return r?{color:u,leftIndex:i,rightIndex:a,value:n}:u}}var gje=lN;function As(e,t,r,n){var i=En(e);if(e)return i=dje(i),t!=null&&(i[0]=hje(Ae(t)?t(i[0]):t)),r!=null&&(i[1]=Ts(Ae(r)?r(i[1]):r)),n!=null&&(i[2]=Ts(Ae(n)?n(i[2]):n)),sa(Fk(i),"rgba")}function fy(e,t){var r=En(e);if(r&&t!=null)return r[3]=cy(t),sa(r,"rgba")}function sa(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 hy(e,t){var r=En(e);return r?(.299*r[0]+.587*r[1]+.114*r[2])*r[3]/255+(1-r[3])*t:0}function mje(){return sa([Math.round(Math.random()*255),Math.round(Math.random()*255),Math.round(Math.random()*255)],"rgb")}var _F=new Zd(100);function rw(e){if(pe(e)){var t=_F.get(e);return t||(t=tw(e,-.1),_F.put(e,t)),t}else if(t0(e)){var r=re({},e);return r.colorStops=se(e.colorStops,function(n){return{offset:n.offset,color:tw(n.color,-.1)}}),r}return e}const yje=Object.freeze(Object.defineProperty({__proto__:null,fastLerp:Hg,fastMapToColor:pje,lerp:lN,lift:tw,liftColor:rw,lum:hy,mapToColor:gje,modifyAlpha:fy,modifyHSL:As,parse:En,parseCssFloat:Ts,parseCssInt:K_,random:mje,stringify:sa,toHex:vje},Symbol.toStringTag,{value:"Module"}));var nw=Math.round;function dy(e){var t;if(!e||e==="transparent")e="none";else if(typeof e=="string"&&e.indexOf("rgba")>-1){var r=En(e);r&&(e="rgb("+r[0]+","+r[1]+","+r[2]+")",t=r[3])}return{color:e,opacity:t??1}}var bF=1e-4;function Il(e){return e-bF}function Mx(e){return nw(e*1e3)/1e3}function Vk(e){return nw(e*1e4)/1e4}function xje(e){return"matrix("+Mx(e[0])+","+Mx(e[1])+","+Mx(e[2])+","+Mx(e[3])+","+Vk(e[4])+","+Vk(e[5])+")"}var _je={left:"start",right:"end",center:"middle",middle:"middle"};function bje(e,t,r){return r==="top"?e+=t/2:r==="bottom"&&(e-=t/2),e}function wje(e){return e&&(e.shadowBlur||e.shadowOffsetX||e.shadowOffsetY)}function Sje(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 VK(e){return e&&!!e.image}function Tje(e){return e&&!!e.svgElement}function uN(e){return VK(e)||Tje(e)}function GK(e){return e.type==="linear"}function WK(e){return e.type==="radial"}function HK(e){return e&&(e.type==="linear"||e.type==="radial")}function yT(e){return"url(#"+e+")"}function UK(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 ZK(e){var t=e.x||0,r=e.y||0,n=(e.rotation||0)*$g,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("+nw(o*$g)+"deg, "+nw(s*$g)+"deg)"),l.join(" ")}var Aje=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}}(),Gk=Array.prototype.slice;function ss(e,t,r){return(t-e)*r+e}function GC(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=SF,l=r;if(xn(r)){var u=Lje(r);s=u,(u===1&&!ot(r[0])||u===2&&!ot(r[0][0]))&&(o=!0)}else if(ot(r)&&!mn(r))s=Lx;else if(pe(r))if(!isNaN(+r))s=Lx;else{var c=En(r);c&&(l=c,s=vg)}else if(t0(r)){var f=re({},l);f.colorStops=se(r.colorStops,function(d){return{offset:d.offset,color:En(d.color)}}),GK(r)?s=Wk:WK(r)&&(s=Hk),l=f}a===0?this.valType=s:(s!==this.valType||s===SF)&&(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:Wg[n]||sN(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=kx(i),u=TF(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?kp:t[l];if((kx(a)||u)&&!_&&(_=this._additiveValue=[]),this.discrete)t[l]=x<1?d.rawValue:v.rawValue;else if(kx(a))a===J_?GC(_,d[i],v[i],x):Cje(_,d[i],v[i],x);else if(TF(a)){var b=d[i],S=v[i],T=a===Wk;t[l]={type:T?"linear":"radial",x:ss(b.x,S.x,x),y:ss(b.y,S.y,x),colorStops:se(b.colorStops,function(M,P){var I=S.colorStops[P];return{offset:ss(M.offset,I.offset,x),color:Q_(GC([],M.color,I.color,x))}}),global:S.global},T?(t[l].x2=ss(b.x2,S.x2,x),t[l].y2=ss(b.y2,S.y2,x)):t[l].r=ss(b.r,S.r,x)}else if(u)GC(_,d[i],v[i],x),n||(t[l]=Q_(_));else{var A=ss(d[i],v[i],x);n?this._additiveValue=A:t[l]=A}n&&this._addToTarget(t)}}},e.prototype._addToTarget=function(t){var r=this.valType,n=this.propName,i=this._additiveValue;r===Lx?t[n]=t[n]+i:r===vg?(En(t[n],kp),Px(kp,kp,i,1),t[n]=Q_(kp)):r===J_?Px(t[n],t[n],i,1):r===YK&&wF(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){dT("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,Ug(u),i),this._trackKeys.push(s)}l.addKeyframe(t,Ug(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 Fh(){return new Date().getTime()}var Ije=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=Fh()-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&&(Q1(n),!r._paused&&r.update())}Q1(n)},t.prototype.start=function(){this._running||(this._time=Fh(),this._pausedTime=0,this._startLoop())},t.prototype.stop=function(){this._running=!1},t.prototype.pause=function(){this._paused||(this._pauseStart=Fh(),this._paused=!0)},t.prototype.resume=function(){this._paused&&(this._pausedTime+=Fh()-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}(ya),Oje=300,WC=nt.domSupported,HC=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}}(),AF={mouse:["mousemove","mouseup"],pointer:["pointermove","pointerup"]},CF=!1;function Uk(e){var t=e.pointerType;return t==="pen"||t==="touch"}function Eje(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 UC(e){e&&(e.zrByTouch=!0)}function Dje(e,t){return Zi(e.dom,new Nje(e,t),!0)}function XK(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 Nje=function(){function e(t,r){this.stopPropagation=lr,this.stopImmediatePropagation=lr,this.preventDefault=lr,this.type=r.type,this.target=this.currentTarget=t.dom,this.pointerType=r.pointerType,this.clientX=r.clientX,this.clientY=r.clientY}return e}(),Ma={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;XK(this,t)||(this.__pointerCapturing&&(e.zrEventControl="no_globalout"),this.trigger("mouseout",e))},wheel:function(e){CF=!0,e=Zi(this.dom,e),this.trigger("mousewheel",e)},mousewheel:function(e){CF||(e=Zi(this.dom,e),this.trigger("mousewheel",e))},touchstart:function(e){e=Zi(this.dom,e),UC(e),this.__lastTouchMoment=new Date,this.handler.processGesture(e,"start"),Ma.mousemove.call(this,e),Ma.mousedown.call(this,e)},touchmove:function(e){e=Zi(this.dom,e),UC(e),this.handler.processGesture(e,"change"),Ma.mousemove.call(this,e)},touchend:function(e){e=Zi(this.dom,e),UC(e),this.handler.processGesture(e,"end"),Ma.mouseup.call(this,e),+new Date-+this.__lastTouchMomentLF||e<-LF}var Du=[],Yf=[],YC=Wr(),XC=Math.abs,ys=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 Eu(this.rotation)||Eu(this.x)||Eu(this.y)||Eu(this.scaleX-1)||Eu(this.scaleY-1)||Eu(this.skewX)||Eu(this.skewY)},e.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,r=this.needLocalTransform(),n=this.transform;if(!(r||t)){n&&(PF(n),this.invTransform=null);return}n=n||Wr(),r?this.getLocalTransform(n):PF(n),t&&(r?Fa(n,t,n):a0(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)},e.prototype._resolveGlobalScaleRatio=function(t){var r=this.globalScaleRatio;if(r!=null&&r!==1){this.getGlobalScale(Du);var n=Du[0]<0?-1:1,i=Du[1]<0?-1:1,a=((Du[0]-n)*r+n)/Du[0]||0,o=((Du[1]-i)*r+i)/Du[1]||0;t[0]*=a,t[1]*=a,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||Wr(),da(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(),Fa(Yf,t.invTransform,r),r=Yf);var n=this.originX,i=this.originY;(n||i)&&(YC[4]=n,YC[5]=i,Fa(Yf,r,YC),Yf[4]-=n,Yf[5]-=i,r=Yf),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&&ur(n,n,i),n},e.prototype.transformCoordToGlobal=function(t,r){var n=[t,r],i=this.transform;return i&&ur(n,n,i),n},e.prototype.getLineScale=function(){var t=this.transform;return t&&XC(t[0]-1)>1e-10&&XC(t[3]-1)>1e-10?Math.sqrt(XC(t[0]*t[3]-t[2]*t[1])):1},e.prototype.copyTransform=function(t){aw(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&&Ks(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}(),Bo=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function aw(e,t){for(var r=0;r=kF)){e=e||zs;for(var t=[],r=+new Date,n=0;n<=127;n++)t[n]=hi.measureText(String.fromCharCode(n),e).width;var i=+new Date-r;return i>16?qC=kF:i>2&&qC++,t}}var qC=0,kF=5;function KK(e,t){return e.asciiWidthMapTried||(e.asciiWidthMap=$je(e.font),e.asciiWidthMapTried=!0),0<=t&&t<=127?e.asciiWidthMap!=null?e.asciiWidthMap[t]:e.asciiCharWidth:e.stWideCharWidth}function Eo(e,t){var r=e.strWidthCache,n=r.get(t);return n==null&&(n=hi.measureText(t,e.font).width,r.put(t,n)),n}function IF(e,t,r,n){var i=Eo(Oo(t),e),a=o0(t),o=Yd(0,i,r),s=jc(0,a,n),l=new Oe(o,s,i,a);return l}function xT(e,t,r,n){var i=((e||"")+"").split(` +`),a=i.length;if(a===1)return IF(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 ow(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+=Za(n[0],r.width),u+=Za(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 KC="__zr_normal__",QC=Bo.concat(["ignore"]),Fje=ha(Bo,function(e,t){return e[t]=!0,e},{ignore:!1}),Xf={},Vje=new Oe(0,0,0,0),Ox=[],_T=function(){function e(t){this.id=rN(),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=Vje,n.layoutRect?h.copy(n.layoutRect):h.copy(this.getBoundingRect()),i||h.applyTransform(this.transform)),c){this.calculateTextPosition?this.calculateTextPosition(Xf,n,h):ow(Xf,n,h),a.x=Xf.x,a.y=Xf.y,o=Xf.align,s=Xf.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=Za(d[0],h.width),g=Za(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(Ox),da(Ox,Ox),Oe.copy(_,h),_.applyTransform(Ox)}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,A=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),A=!0)):(S=n.outsideFill,T=n.outsideStroke,(S==null||S==="auto")&&(S=this.getOutsideFill()),(T==null||T==="auto")&&(T=this.getOutsideStroke(S),A=!0)),S=S||"#000",(S!==x.fill||T!==x.stroke||A!==x.autoStroke||o!==x.align||s!==x.verticalAlign)&&(l=!0,x.fill=S,x.stroke=T,x.autoStroke=A,x.align=o,x.verticalAlign=s,r.setDefaultTextStyle(x)),r.__dirty|=Si,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()?qk:Xk},e.prototype.getOutsideStroke=function(t){var r=this.__zr&&this.__zr.getBackgroundColor(),n=typeof r=="string"&&En(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,sa(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||{},re(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(KC,!1,t)},e.prototype.useState=function(t,r,n,i){var a=t===KC,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){dT("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&=~Si),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&=~Si)}},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&&(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=rRe;function rRe(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 sw(e,t,r)}function sw(e,t,r){return pe(e)?tRe(e).match(/%$/)?parseFloat(e)/100*t+(r||0):parseFloat(e):e==null?NaN:+e}function mr(e,t,r){return t==null&&(t=10),t=Math.min(Math.max(0,t),rQ),e=(+e).toFixed(t),r?e:+e}function Mi(e){return e.sort(function(t,r){return t-r}),e}function Ra(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 nQ(e)}function nQ(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 fN(e,t){var r=Math.log,n=Math.LN10,i=Math.floor(r(e[1]-e[0])/n),a=Math.round(r(bo(t[1]-t[0]))/n),o=Math.min(Math.max(-i+a,0),20);return isFinite(o)?o:20}function nRe(e,t,r){if(!e[t])return 0;var n=iQ(e,r);return n[t]||0}function iQ(e,t){var r=ha(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=ha(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 iRe(e,t){var r=Math.max(Ra(e),Ra(t)),n=e+t;return r>rQ?n:mr(n,r)}var Jk=9007199254740991;function hN(e){var t=Math.PI*2;return(e%t+t)%t}function Xd(e){return e>-OF&&e=10&&t++,t}function dN(e,t){var r=bT(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 rb(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 eI(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 t2(e){e.option=e.parentModel=e.ecModel=null}var TRe=".",Nu="___EC__COMPONENT__CONTAINER___",pQ="___EC__EXTENDED_CLASS___";function wo(e){var t={main:"",sub:""};if(e){var r=e.split(TRe);t.main=r[0]||"",t.sub=r[1]||""}return t}function ARe(e){_n(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(e),'componentType "'+e+'" illegal')}function CRe(e){return!!(e&&e[pQ])}function mN(e,t){e.$constructor=e,e.extend=function(r){var n=this,i;return MRe(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)},nN(i,this)),re(i.prototype,r),i[pQ]=!0,i.extend=this.extend,i.superCall=kRe,i.superApply=IRe,i.superClass=n,i}}function MRe(e){return Ae(e)&&/^class\s/.test(Function.prototype.toString.call(e))}function gQ(e,t){e.extend=t.extend}var PRe=Math.round(Math.random()*10);function LRe(e){var t=["__\0is_clz",PRe++].join("_");e.prototype[t]=!0,e.isInstance=function(r){return!!(r&&r[t])}}function kRe(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 ORe=[["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]],ERe=af(ORe),DRe=function(){function e(){}return e.prototype.getAreaStyle=function(t,r){return ERe(this,t,r)},e}(),rI=new Zd(50);function NRe(e){if(typeof e=="string"){var t=rI.get(e);return t&&t.image}else return e}function yN(e,t,r,n,i){if(e)if(typeof e=="string"){if(t&&t.__zrImageSrc===e||!r)return t;var a=rI.get(e),o={hostEl:r,cb:n,cbPayload:i};return a?(t=a.image,!ST(t)&&a.pending.push(o)):(t=hi.loadImage(e,jF,jF),t.__zrImageSrc=e,rI.put(e,t.__cachedImgObj={image:t,pending:[o]})),t}else return e;else return t}function jF(){var e=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var t=0;t=s;u++)l-=s;var c=Eo(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 xQ(e,t,r){var n=r.containerWidth,i=r.contentWidth,a=r.fontMeasureInfo;if(!n){e.textLine="",e.isTruncated=!1;return}var o=Eo(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?RRe(t,i,a):o>0?Math.floor(t.length*i/o):0;t=t.substr(0,l),o=Eo(a,t)}t===""&&(t=r.placeholder),e.textLine=t,e.isTruncated=!0}function RRe(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=yQ(g,u,t.ellipsis,{minChar:t.truncateMinChar,placeholder:t.placeholder}),T={},A=0;Av&&n2(a,o.substring(v,m),t,d),n2(a,g[2],t,d,g[1]),v=r2.lastIndex}vf){var V=a.lines.length;D>0?(I.tokens=I.tokens.slice(0,D),M(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 g=_Q(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=Oo(l),x=0;x=32&&t<=591||t>=880&&t<=4351||t>=4608&&t<=5119||t>=7680&&t<=8303}var GRe=ha(",&?/;] ".split(""),function(e,t){return e[t]=!0,e},{});function WRe(e){return VRe(e)?!!GRe[e]:!0}function _Q(e,t,r,n,i){for(var a=[],o=[],s="",l="",u=0,c=0,f=Oo(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 BF(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(zF,Yd(r,o,i),jc(n,s,a),o,s),Oe.intersect(t,zF,null,$F);var l=$F.outIntersectRect;e.outerWidth=l.width,e.outerHeight=l.height,e.baseX=Yd(l.x,l.width,i,!0),e.baseY=jc(l.y,l.height,a,!0)}}var zF=new Oe(0,0,0,0),$F={outIntersectRect:{},clamp:!0};function xN(e){return e!=null?e+="":e=""}function HRe(e){var t=xN(e.text),r=e.font,n=Eo(Oo(r),t),i=o0(r);return nI(e,n,i,null)}function nI(e,t,r,n){var i=new Oe(Yd(e.x||0,t,e.textAlign),jc(e.y||0,r,e.textBaseline),t,r),a=n??(bQ(e)?e.lineWidth:0);return a>0&&(i.x-=a/2,i.y-=a/2,i.width+=a,i.height+=a),i}function bQ(e){var t=e.stroke;return t!=null&&t!=="none"&&e.lineWidth>0}var iI="__zr_style_"+Math.round(Math.random()*10),Rc={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},TT={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};Rc[iI]=!0;var FF=["z","z2","invisible"],URe=["invisible"],va=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(Ex[0]=s2(i)*r+e,Ex[1]=o2(i)*n+t,Dx[0]=s2(a)*r+e,Dx[1]=o2(a)*n+t,u(s,Ex,Dx),c(l,Ex,Dx),i=i%ju,i<0&&(i=i+ju),a=a%ju,a<0&&(a=a+ju),i>a&&!o?a+=ju:ii&&(Nx[0]=s2(d)*r+e,Nx[1]=o2(d)*n+t,u(s,Nx,s),c(l,Nx,l))}var It={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Ru=[],Bu=[],no=[],nl=[],io=[],ao=[],l2=Math.min,u2=Math.max,zu=Math.cos,$u=Math.sin,es=Math.abs,aI=Math.PI,vl=aI*2,c2=typeof Float32Array<"u",Ip=[];function f2(e){var t=Math.round(e/aI*1e8)/1e8;return t%2*aI}function CT(e,t){var r=f2(e[0]);r<0&&(r+=vl);var n=r-e[0],i=e[1];i+=n,!t&&i-r>=vl?i=r+vl:t&&r-i>=vl?i=r-vl:!t&&r>i?i=r+(vl-f2(r-i)):t&&r0&&(this._ux=es(n/iw/t)||0,this._uy=es(n/iw/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=es(t-this._xi),i=es(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(),Ip[0]=i,Ip[1]=a,CT(Ip,o),i=Ip[0],a=Ip[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=zu(a)*n+t,this._yi=$u(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)&&c2&&(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(){no[0]=no[1]=io[0]=io[1]=Number.MAX_VALUE,nl[0]=nl[1]=ao[0]=ao[1]=-Number.MAX_VALUE;var t=this.data,r=0,n=0,i=0,a=0,o;for(o=0;on||es(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++],A=t[h++],M=t[h++];g=oje(a,o,S,T,m,x,A,M,10),a=A,o=M;break}case It.Q:{var S=t[h++],T=t[h++],m=t[h++],x=t[h++];g=lje(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++],O=t[h++],D=t[h++],N=t[h++],j=N+D;h+=1,v&&(s=zu(D)*k+P,l=$u(D)*O+I),g=u2(k,O)*l2(vl,Math.abs(N)),a=zu(j)*k+P,o=$u(j)*O+I;break;case It.R:{s=a=t[h++],l=o=t[h++];var z=t[h++],$=t[h++];g=z*2+$*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 A=0;A0&&(t.lineTo(S,T),b=0),M){case It.M:s=u=n[A++],l=c=n[A++],t.moveTo(u,c);break;case It.L:{f=n[A++],h=n[A++];var I=es(f-u),k=es(h-c);if(I>i||k>a){if(d){var O=v[x++];if(m+O>_){var D=(_-m)/O;t.lineTo(u*(1-D)+f*D,c*(1-D)+h*D);break e}m+=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 It.C:{var j=n[A++],z=n[A++],$=n[A++],U=n[A++],F=n[A++],V=n[A++];if(d){var O=v[x++];if(m+O>_){var D=(_-m)/O;nu(u,j,$,F,D,Ru),nu(c,z,U,V,D,Bu),t.bezierCurveTo(Ru[1],Bu[1],Ru[2],Bu[2],Ru[3],Bu[3]);break e}m+=O}t.bezierCurveTo(j,z,$,U,F,V),u=F,c=V;break}case It.Q:{var j=n[A++],z=n[A++],$=n[A++],U=n[A++];if(d){var O=v[x++];if(m+O>_){var D=(_-m)/O;uy(u,j,$,D,Ru),uy(c,z,U,D,Bu),t.quadraticCurveTo(Ru[1],Bu[1],Ru[2],Bu[2]);break e}m+=O}t.quadraticCurveTo(j,z,$,U),u=$,c=U;break}case It.A:var W=n[A++],Y=n[A++],Z=n[A++],J=n[A++],ne=n[A++],le=n[A++],fe=n[A++],ze=!n[A++],xe=Z>J?Z:J,ie=es(Z-J)>.001,he=ne+le,ue=!1;if(d){var O=v[x++];m+O>_&&(he=ne+le*(_-m)/O,ue=!0),m+=O}if(ie&&t.ellipse?t.ellipse(W,Y,Z,J,fe,ne,he,ze):t.arc(W,Y,xe,ne,he,ze),ue)break e;P&&(s=zu(ne)*Z+W,l=$u(ne)*J+Y),u=zu(he)*Z+W,c=$u(he)*J+Y;break;case It.R:s=u=n[A],l=c=n[A+1],f=n[A++],h=n[A++];var ee=n[A++],Ve=n[A++];if(d){var O=v[x++];if(m+O>_){var Se=_-m;t.moveTo(f,h),t.lineTo(f+l2(Se,ee),h),Se-=ee,Se>0&&t.lineTo(f+ee,h+l2(Se,Ve)),Se-=Ve,Se>0&&t.lineTo(f+u2(ee-Se,0),h+Ve),Se-=ee,Se>0&&t.lineTo(f,h+u2(Ve-Se,0));break e}m+=O}t.rect(f,h,ee,Ve);break;case It.Z:if(d){var O=v[x++];if(m+O>_){var D=(_-m)/O;t.lineTo(u*(1-D)+s*D,c*(1-D)+l*D);break e}m+=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=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 xl(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+=Op);var h=Math.atan2(l,s);return h<0&&(h+=Op),h>=n&&h<=i||h+Op>=n&&h+Op<=i}function ls(e,t,r,n,i,a){if(a>t&&a>n||ai?s:0}var il=$o.CMD,Fu=Math.PI*2,JRe=1e-4;function e5e(e,t){return Math.abs(e-t)t&&u>n&&u>a&&u>s||u1&&t5e(),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=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>=Fu-1e-4){n=0,i=Fu;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+=Fu,i+=Fu);for(var h=0,d=0;d<2;d++){var v=$n[d];if(v+e>o){var g=Math.atan2(s,v),c=a?1:-1;g<0&&(g=Fu+g),(g>=n&&g<=i||g+Fu>=n&&g+Fu<=i)&&(g>Math.PI/2&&g1&&(r||(s+=ls(l,u,c,f,n,i))),m&&(l=a[v],u=a[v+1],c=l,f=u),g){case il.M:c=a[v++],f=a[v++],l=c,u=f;break;case il.L:if(r){if(xl(l,u,a[v],a[v+1],t,n,i))return!0}else s+=ls(l,u,a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case il.C:if(r){if(KRe(l,u,a[v++],a[v++],a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=r5e(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 il.Q:if(r){if(wQ(l,u,a[v++],a[v++],a[v],a[v+1],t,n,i))return!0}else s+=n5e(l,u,a[v++],a[v++],a[v],a[v+1],n,i)||0;l=a[v++],u=a[v++];break;case il.A:var x=a[v++],_=a[v++],b=a[v++],S=a[v++],T=a[v++],A=a[v++];v+=1;var M=!!(1-a[v++]);h=Math.cos(T)*b+x,d=Math.sin(T)*S+_,m?(c=h,f=d):s+=ls(l,u,h,d,n,i);var P=(n-x)*S/b+x;if(r){if(QRe(x,_,S,T,T+A,M,t,P,i))return!0}else s+=i5e(x,_,S,T,T+A,M,P,i);l=Math.cos(T+A)*b+x,u=Math.sin(T+A)*S+_;break;case il.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(xl(c,f,h,f,t,n,i)||xl(h,f,h,d,t,n,i)||xl(h,d,c,d,t,n,i)||xl(c,d,c,f,t,n,i))return!0}else s+=ls(h,f,h,d,n,i),s+=ls(c,d,c,f,n,i);break;case il.Z:if(r){if(xl(l,u,c,f,t,n,i))return!0}else s+=ls(l,u,c,f,n,i);l=c,u=f;break}}return!r&&!e5e(u,f)&&(s+=ls(l,u,c,f,n,i)||0),s!==0}function a5e(e,t,r){return SQ(e,0,!1,t,r)}function o5e(e,t,r,n){return SQ(e,t,!0,r,n)}var lw=Pe({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},Rc),s5e={style:Pe({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},TT.style)},h2=Bo.concat(["invisible","culling","z","z2","zlevel","parent"]),rt=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?Xk:n>.2?zje:qk}else if(r)return qk}return Xk},t.prototype.getInsideTextStroke=function(r){var n=this.style.fill;if(pe(n)){var i=this.__zr,a=!!(i&&i.isDarkMode()),o=hy(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&bh)&&(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)),o5e(s,l/u,r,n)))return!0}if(this.hasFill())return a5e(s,r,n)}return!1},t.prototype.dirtyShape=function(){this.__dirty|=bh,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:re(i,r),this.dirtyShape(),this},t.prototype.shapeChanged=function(){return!!(this.__dirty&bh)},t.prototype.createStyle=function(r){return n0(lw,r)},t.prototype._innerSaveToNormal=function(r){e.prototype._innerSaveToNormal.call(this,r);var n=this._normalState;r.shape&&!n.shape&&(n.shape=re({},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=re({},i.shape),re(u,n.shape)):(u=re({},a?this.shape:i.shape),re(u,n.shape)):l&&(u=i.shape),u)if(o){this.shape=re({},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 Vh=Math.round;function MT(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&&(Vh(n*2)===Vh(i*2)&&(e.x1=e.x2=Li(n,s,!0)),Vh(a*2)===Vh(o*2)&&(e.y1=e.y2=Li(a,s,!0))),e}}function TQ(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=Li(n,s,!0),e.y=Li(i,s,!0),e.width=Math.max(Li(n+a,s,!1)-e.x,a===0?0:1),e.height=Math.max(Li(i+o,s,!1)-e.y,o===0?0:1)),e}}function Li(e,t,r){if(!t)return e;var n=Vh(e*2);return(n+Vh(t))%2===0?n/2:(n+(r?1:-1))/2}var d5e=function(){function e(){this.x=0,this.y=0,this.width=0,this.height=0}return e}(),v5e={},Xe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new d5e},t.prototype.buildPath=function(r,n){var i,a,o,s;if(this.subPixelOptimize){var l=TQ(v5e,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?h5e(r,n):r.rect(i,a,o,s)},t.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},t}(rt);Xe.prototype.type="rect";var UF={fill:"#000"},ZF=2,oo={},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},TT.style)},at=function(e){q(t,e);function t(r){var n=e.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=UF,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&&(j=A[N],j.align==="right");)this._placeToken(j,r,P,x,D,"right",b),I-=j.width,D-=j.width,N--;for(O+=(c-(O-m)-(_-D)-I)/2;k<=N;)j=A[k],this._placeToken(j,r,P,x,O+j.width/2,"center",b),O+=j.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&&d2(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=JF(o,s,v),f-=r.height/2-v[0]-r.innerHeight/2);var g=this._getOrCreateChild(qd),m=g.createStyle();g.useStyle(m);var x=this._defaultStyle,_=!1,b=0,S=!1,T=QF("fill"in u?u.fill:"fill"in n?n.fill:(_=!0,x.fill)),A=KF("stroke"in u?u.stroke:"stroke"in n?n.stroke:!d&&!l&&(!x.autoStroke||_)?(b=ZF,S=!0,x.stroke):null),M=u.textShadowBlur>0||n.textShadowBlur>0;m.text=r.text,m.x=o,m.y=f,M&&(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||zs,m.opacity=fi(u.opacity,n.opacity,1),XF(m,u),A&&(m.lineWidth=fi(u.lineWidth,n.lineWidth,b),m.lineDash=be(u.lineDash,n.lineDash),m.lineDashOffset=n.lineDashOffset||0,m.stroke=A),T&&(m.fill=T),g.setBoundingRect(nI(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(Xr),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=fi(r.opacity,n.opacity,1)},t.makeFont=function(r){var n="";return CQ(r)&&(n=[r.fontStyle,r.fontWeight,AQ(r.fontSize),r.fontFamily||"sans-serif"].join(" ")),n&&Ci(n)||r.textFont||r.font},t}(va),g5e={left:!0,right:1,center:1},m5e={top:1,bottom:1,middle:1},YF=["fontStyle","fontWeight","fontSize","fontFamily"];function AQ(e){return typeof e=="string"&&(e.indexOf("px")!==-1||e.indexOf("rem")!==-1||e.indexOf("em")!==-1)?e:isNaN(+e)?JD+"px":e+"px"}function XF(e,t){for(var r=0;r=0,a=!1;if(e instanceof rt){var o=MQ(e),s=i&&o.selectFill||o.normalFill,l=i&&o.selectStroke||o.normalStroke;if(qf(s)||qf(l)){n=n||{};var u=n.style||{};u.fill==="inherit"?(a=!0,n=re({},n),u=re({},u),u.fill=s):!qf(u.fill)&&qf(s)?(a=!0,n=re({},n),u=re({},u),u.fill=rw(s)):!qf(u.stroke)&&qf(l)&&(a||(n=re({},n),u=re({},u)),u.stroke=rw(l)),n.style=u}}if(n&&n.z2==null){a||(n=re({},n));var c=e.z2EmphasisLift;n.z2=e.z2+(c??Ev)}return n}function T5e(e,t,r){if(r&&r.z2==null){r=re({},r);var n=e.z2SelectLift;r.z2=e.z2+(n??x5e)}return r}function A5e(e,t,r){var n=We(e.currentStates,t)>=0,i=e.style.opacity,a=n?null:w5e(e,["opacity"],t,{opacity:1});r=r||{};var o=r.style||{};return o.opacity==null&&(r=re({},r),o=re({opacity:n?i:a.opacity*.1},o),r.style=o),r}function v2(e,t){var r=this.states[e];if(this.style){if(e==="emphasis")return S5e(this,e,t,r);if(e==="blur")return A5e(this,e,r);if(e==="select")return T5e(this,e,r)}return r}function of(e){e.stateProxy=v2;var t=e.getTextContent(),r=e.getTextGuideLine();t&&(t.stateProxy=v2),r&&(r.stateProxy=v2)}function iV(e,t){!DQ(e,t)&&!e.__highByOuter&&Qs(e,PQ)}function aV(e,t){!DQ(e,t)&&!e.__highByOuter&&Qs(e,LQ)}function Fs(e,t){e.__highByOuter|=1<<(t||0),Qs(e,PQ)}function Vs(e,t){!(e.__highByOuter&=~(1<<(t||0)))&&Qs(e,LQ)}function IQ(e){Qs(e,SN)}function TN(e){Qs(e,kQ)}function OQ(e){Qs(e,_5e)}function EQ(e){Qs(e,b5e)}function DQ(e,t){return e.__highDownSilentOnTouch&&t.zrByTouch}function NQ(e){var t=e.getModel(),r=[],n=[];t.eachComponent(function(i,a){var o=_N(a),s=i==="series",l=s?e.getViewOfSeriesModel(a):e.getViewOfComponentModel(a);!s&&n.push(l),o.isBlured&&(l.group.traverse(function(u){kQ(u)}),s&&r.push(a)),o.isBlured=!1}),B(n,function(i){i&&i.toggleBlurSeries&&i.toggleBlurSeries(r,!1,t)})}function lI(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 Yl(e,t,r){Cc(e,!0),Qs(e,of),cI(e,t,r)}function I5e(e){Cc(e,!1)}function Wt(e,t,r,n){n?I5e(e):Yl(e,t,r)}function cI(e,t,r){var n=De(e);t!=null?(n.focus=t,n.blurScope=r):n.focus&&(n.focus=null)}var sV=["emphasis","blur","select"],O5e={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function Dr(e,t,r,n){r=r||"itemStyle";for(var i=0;i1&&(o*=p2(v),s*=p2(v));var g=(i===a?-1:1)*p2((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+Rx(f)*m-jx(f)*x,b=(t+n)/2+jx(f)*m+Rx(f)*x,S=fV([1,0],[(h-m)/o,(d-x)/s]),T=[(h-m)/o,(d-x)/s],A=[(-1*h-m)/o,(-1*d-x)/s],M=fV(T,A);if(hI(T,A)<=-1&&(M=Ep),hI(T,A)>=1&&(M=0),M<0){var P=Math.round(M/Ep*1e6)/1e6;M=Ep*2+P%2*Ep}c.addData(u,_,b,o,s,S,M,f,a)}var B5e=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/ig,z5e=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;function $5e(e){var t=new $o;if(!e)return t;var r=0,n=0,i=r,a=n,o,s=$o.CMD,l=e.match(B5e);if(!l)return t;for(var u=0;uj*j+z*z&&(P=k,I=O),{cx:P,cy:I,x0:-c,y0:-f,x1:P*(i/T-1),y1:I*(i/T-1)}}function Z5e(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 Y5e(e,t){var r,n=pg(t.r,0),i=pg(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=dV(u-l),v=d>g2&&d%g2;if(v>Ca&&(d=v),!(n>Ca))e.moveTo(c,f);else if(d>g2-Ca)e.moveTo(c+n*Qf(l),f+n*Vu(l)),e.arc(c,f,n,l,u,!h),i>Ca&&(e.moveTo(c+i*Qf(u),f+i*Vu(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,A=void 0,M=void 0,P=void 0,I=void 0,k=void 0,O=void 0,D=void 0,N=void 0,j=void 0,z=n*Qf(l),$=n*Vu(l),U=i*Qf(u),F=i*Vu(u),V=d>Ca;if(V){var W=t.cornerRadius;W&&(r=Z5e(W),g=r[0],m=r[1],x=r[2],_=r[3]);var Y=dV(n-i)/2;if(b=so(Y,x),S=so(Y,_),T=so(Y,g),A=so(Y,m),I=M=pg(b,S),k=P=pg(T,A),(M>Ca||P>Ca)&&(O=n*Qf(u),D=n*Vu(u),N=i*Qf(l),j=i*Vu(l),dCa){var ie=so(x,I),he=so(_,I),ue=Bx(N,j,z,$,n,ie,h),ee=Bx(O,D,U,F,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,An(ue.y0,ue.x0),An(ue.y1,ue.x1),!h),e.arc(c,f,n,An(ue.cy+ue.y1,ue.cx+ue.x1),An(ee.cy+ee.y1,ee.cx+ee.x1),!h),he>0&&e.arc(c+ee.cx,f+ee.cy,he,An(ee.y1,ee.x1),An(ee.y0,ee.x0),!h))}else e.moveTo(c+z,f+$),e.arc(c,f,n,l,u,!h);if(!(i>Ca)||!V)e.lineTo(c+U,f+F);else if(k>Ca){var ie=so(g,k),he=so(m,k),ue=Bx(U,F,O,D,i,-he,h),ee=Bx(z,$,N,j,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,An(ue.y0,ue.x0),An(ue.y1,ue.x1),!h),e.arc(c,f,i,An(ue.cy+ue.y1,ue.cx+ue.x1),An(ee.cy+ee.y1,ee.cx+ee.x1),h),ie>0&&e.arc(c+ee.cx,f+ee.cy,ie,An(ee.y1,ee.x1),An(ee.y0,ee.x0),!h))}else e.lineTo(c+U,f+F),e.arc(c,f,i,u,l,h)}e.closePath()}}}var X5e=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 X5e},t.prototype.buildPath=function(r,n){Y5e(r,n)},t.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},t}(rt);bn.prototype.type="sector";var q5e=function(){function e(){this.cx=0,this.cy=0,this.r=0,this.r0=0}return e}(),Dv=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new q5e},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}(rt);Dv.prototype.type="ring";function K5e(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=K5e(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;sWu[1]){if(a=!1,Jr.negativeSize||n)return a;var l=zx(Wu[0]-Gu[1]),u=zx(Gu[0]-Wu[1]);m2(l,u)>Fx.len()&&(l=u||!Jr.bidirectional)&&(Ie.scale($x,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){PN("update",e,t,r,n,i,a)}function Nt(e,t,r,n,i,a){PN("enter",e,t,r,n,i,a)}function ud(e){if(!e.__zr)return!0;for(var t=0;tbo(a[1])?a[0]>0?"right":"left":a[1]>0?"bottom":"top"}function gV(e){return!e.isGroup}function uBe(e){return e.shape!=null}function f0(e,t,r){if(!e||!t)return;function n(o){var s={};return o.traverse(function(l){gV(l)&&l.anid&&(s[l.anid]=l)}),s}function i(o){var s={x:o.x,y:o.y,rotation:o.rotation};return uBe(o)&&(s.shape=Ce(o.shape)),s}var a=n(e);t.traverse(function(o){if(gV(o)&&o.anid){var s=a[o.anid];if(s){var l=i(o);o.attr(i(s)),lt(o,l,r,De(o).dataIndex)}}})}function IN(e,t){return se(e,function(r){var n=r[0];n=gr(n,t.x),n=Ii(n,t.x+t.width);var i=r[1];return i=gr(i,t.y),i=Ii(i,t.y+t.height),[n,i]})}function qQ(e,t){var r=gr(e.x,t.x),n=Ii(e.x+e.width,t.x+t.width),i=gr(e.y,t.y),a=Ii(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 Rv(e,t,r){var n=re({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 Xr(n)):Kd(e.replace("path://",""),n,r,"center")}function gg(e,t,r,n,i){for(var a=0,o=i[i.length-1];a1)return!1;var m=y2(d,v,c,f)/h;return!(m<0||m>1)}function y2(e,t,r,n){return e*n-r*t}function cBe(e){return e<=1e-6&&e>=-1e-6}function sf(e,t,r,n,i){return t==null||(ot(t)?Ut[0]=Ut[1]=Ut[2]=Ut[3]=t:(Ut[0]=t[0],Ut[1]=t[1],Ut[2]=t[2],Ut[3]=t[3]),n&&(Ut[0]=gr(0,Ut[0]),Ut[1]=gr(0,Ut[1]),Ut[2]=gr(0,Ut[2]),Ut[3]=gr(0,Ut[3])),r&&(Ut[0]=-Ut[0],Ut[1]=-Ut[1],Ut[2]=-Ut[2],Ut[3]=-Ut[3]),mV(e,Ut,"x","width",3,1,i&&i[0]||0),mV(e,Ut,"y","height",0,2,i&&i[1]||0)),e}var Ut=[0,0,0,0];function mV(e,t,r,n,i,a,o){var s=t[a]+t[i],l=e[n];e[n]+=s,o=gr(0,Ii(o,l)),e[n]=0?-t[i]:t[a]>=0?l+t[a]:bo(s)>1e-8?(l-o)*t[i]/s:0):e[r]-=t[i]}function Js(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&&B(it(l),function(c){ye(s,c)||(s[c]=l[c],s.$vars.push(c))});var u=De(e.el);u.componentMainType=a,u.componentIndex=o,u.tooltipConfig={name:n,option:Pe({content:n,encodeHTMLContent:!0,formatterParams:s},i)}}function vI(e,t){var r;e.isGroup&&(r=t(e)),r||e.traverse(t)}function xu(e,t){if(e)if(ae(e))for(var r=0;rt&&(t=o),ot&&(r=t=0),{min:r,max:t}}function IT(e,t,r){JQ(e,t,r,-1/0)}function JQ(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 _u(e,t){return He(He({},e,!0),t,!0)}const wBe={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:". "}}}},SBe={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 dw="ZH",NN="EN",cd=NN,ab={},jN={},aJ=nt.domSupported?function(){var e=(document.documentElement.lang||navigator.language||navigator.browserLanguage||cd).toUpperCase();return e.indexOf(dw)>-1?dw:cd}():cd;function RN(e,t){e=e.toUpperCase(),jN[e]=new tt(t),ab[e]=t}function TBe(e){if(pe(e)){var t=ab[e.toUpperCase()]||{};return e===dw||e===NN?Ce(t):He(Ce(t),Ce(ab[cd]),!1)}else return He(Ce(e),Ce(ab[cd]),!1)}function gI(e){return jN[e]}function ABe(){return jN[cd]}RN(NN,wBe);RN(dw,SBe);var mI=null;function CBe(e){mI||(mI=e)}function Sr(){return mI}var BN=1e3,zN=BN*60,Xg=zN*60,ta=Xg*24,wV=ta*365,MBe={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})/},ob={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}"},PBe="{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}",Gx="{yyyy}-{MM}-{dd}",SV={year:"{yyyy}",month:"{yyyy}-{MM}",day:Gx,hour:Gx+" "+ob.hour,minute:Gx+" "+ob.minute,second:Gx+" "+ob.second,millisecond:PBe},_i=["year","month","day","hour","minute","second","millisecond"],LBe=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function kBe(e){return!pe(e)&&!Ae(e)?IBe(e):e}function IBe(e){e=e||{};var t={},r=!0;return B(_i,function(n){r&&(r=e[n]==null)}),B(_i,function(n,i){var a=e[n];t[n]={};for(var o=null,s=i;s>=0;s--){var l=_i[s],u=Le(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=ob[n]:MBe[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 qg(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 OBe(e){return e===qg(e)}function EBe(e){switch(e){case"year":case"month":return"day";case"millisecond":return"millisecond";default:return"second"}}function h0(e,t,r,n){var i=Uo(e),a=i[oJ(r)](),o=i[$N(r)]()+1,s=Math.floor((o-1)/3)+1,l=i[FN(r)](),u=i["get"+(r?"UTC":"")+"Day"](),c=i[VN(r)](),f=(c-1)%12+1,h=i[GN(r)](),d=i[WN(r)](),v=i[HN(r)](),g=c>=12?"pm":"am",m=g.toUpperCase(),x=n instanceof tt?n:gI(n||aJ)||ABe(),_=x.getModel("time"),b=_.get("month"),S=_.get("monthAbbr"),T=_.get("dayOfWeek"),A=_.get("dayOfWeekAbbr");return(t||"").replace(/{a}/g,g+"").replace(/{A}/g,m+"").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,A[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 DBe(e,t,r,n,i){var a=null;if(pe(r))a=r;else if(Ae(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=Wh(e.value,i);a=r[c][c][0]}}return h0(new Date(e.value),a,i,n)}function Wh(e,t){var r=Uo(e),n=r[$N(t)]()+1,i=r[FN(t)](),a=r[VN(t)](),o=r[GN(t)](),s=r[WN(t)](),l=r[HN(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 vw(e,t,r){switch(t){case"year":e[sJ(r)](0);case"month":e[lJ(r)](1);case"day":e[uJ(r)](0);case"hour":e[cJ(r)](0);case"minute":e[fJ(r)](0);case"second":e[hJ(r)](0)}return e}function oJ(e){return e?"getUTCFullYear":"getFullYear"}function $N(e){return e?"getUTCMonth":"getMonth"}function FN(e){return e?"getUTCDate":"getDate"}function VN(e){return e?"getUTCHours":"getHours"}function GN(e){return e?"getUTCMinutes":"getMinutes"}function WN(e){return e?"getUTCSeconds":"getSeconds"}function HN(e){return e?"getUTCMilliseconds":"getMilliseconds"}function NBe(e){return e?"setUTCFullYear":"setFullYear"}function sJ(e){return e?"setUTCMonth":"setMonth"}function lJ(e){return e?"setUTCDate":"setDate"}function uJ(e){return e?"setUTCHours":"setHours"}function cJ(e){return e?"setUTCMinutes":"setMinutes"}function fJ(e){return e?"setUTCSeconds":"setSeconds"}function hJ(e){return e?"setUTCMilliseconds":"setMilliseconds"}function jBe(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 UN(e){if(!vN(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 ZN(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 $v=r0;function yI(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?Uo(e):e;if(isNaN(+l)){if(s)return"-"}else return h0(l,n,r)}if(t==="ordinal")return Y1(e)?i(e):ot(e)&&a(e)?e+"":"-";var u=zo(e);return a(u)?UN(u):Y1(e)?i(e):typeof e=="boolean"?e+"":"-"}var TV=["a","b","c","d","e","f","g"],b2=function(e,t){return"{"+e+(t??"")+"}"};function YN(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 BBe(e,t,r){(e==="week"||e==="month"||e==="quarter"||e==="half-year"||e==="year")&&(e=`MM-dd +yyyy`);var n=Uo(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 zBe(e){return e&&e.charAt(0).toUpperCase()+e.substr(1)}function uf(e,t){return t=t||"transparent",pe(e)?e:Le(e)&&e.colorStops&&(e.colorStops[0]||{}).color||t}function pw(e,t){if(t==="_blank"||t==="blank"){var r=window.open();r.opener=null,r.location.href=e}else window.open(e,t)}var sb={},w2={},Fv=function(){function e(){this._normalMasterList=[],this._nonSeriesBoxMasterList=[]}return e.prototype.create=function(t,r){this._nonSeriesBoxMasterList=n(sb),this._normalMasterList=n(w2);function n(i,a){var o=[];return B(i,function(s,l){var u=s.create(t,r);o=o.concat(u||[])}),o}},e.prototype.update=function(t,r){B(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"){sb[t]=r;return}w2[t]=r},e.get=function(t){return w2[t]||sb[t]},e}();function $Be(e){return!!sb[e]}var xI={coord:1,coord2:2};function FBe(e){vJ.set(e.fullType,{getCoord2:void 0}).getCoord2=e.getCoord2}var vJ=_e();function VBe(e){var t=e.getShallow("coord",!0),r=xI.coord;if(t==null){var n=vJ.get(e.type);n&&n.getCoord2&&(r=xI.coord2,t=n.getCoord2(e))}return{coord:t,from:r}}var mo={none:0,dataCoordSys:1,boxCoordSys:2};function pJ(e,t){var r=e.getShallow("coordinateSystem"),n=e.getShallow("coordinateSystemUsage",!0),i=mo.none;if(r){var a=e.mainType==="series";n==null&&(n=a?"data":"box"),n==="data"?(i=mo.dataCoordSys,a||(i=mo.none)):n==="box"&&(i=mo.boxCoordSys,!a&&!$Be(r)&&(i=mo.none))}return{coordSysType:r,kind:i}}function d0(e){var t=e.targetModel,r=e.coordSysType,n=e.coordSysProvider,i=e.isDefaultDataCoordSys;e.allowNotFound;var a=pJ(t),o=a.kind,s=a.coordSysType;if(i&&o!==mo.dataCoordSys&&(o=mo.dataCoordSys,s=r),o===mo.none||s!==r)return!1;var l=n(r,t);return l?(o===mo.dataCoordSys?t.coordinateSystem=l:t.boxCoordinateSystem=l,!0):!1}var gJ=function(e,t){var r=t.getReferringComponents(e,tr).models[0];return r&&r.coordinateSystem},lb=B,mJ=["left","right","top","bottom","width","height"],Mc=[["width","left","right"],["height","top","bottom"]];function XN(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 zc=XN;Fe(XN,"vertical");Fe(XN,"horizontal");function yJ(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 GBe(e,t){var r=jr(e,t,{enableLayoutOnlyByCenter:!0}),n=e.getBoxLayoutParams(),i,a;if(r.type===mg.point)a=r.refPoint,i=$t(n,{width:t.getWidth(),height:t.getHeight()});else{var o=e.get("center"),s=ae(o)?o:[o,o];i=$t(n,r.refContainer),a=r.boxCoordFrom===xI.coord2?r.refPoint:[ve(s[0],i.width)+i.x,ve(s[1],i.height)+i.y]}return{viewRect:i,center:a}}function xJ(e,t){var r=GBe(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 $t(e,t,r){r=$v(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 _J(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 Ov(this.ecModel,r,{index:this.get(i,!0),id:this.get(a,!0)},n)},t.prototype.getBoxLayoutParams=function(){return yJ(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}(tt);gQ(Qe,tt);wT(Qe);_Be(Qe);bBe(Qe,UBe);function UBe(e){var t=[];return B(Qe.getClassesByMainType(e),function(r){t=t.concat(r.dependencies||r.prototype.dependencies||[])}),t=se(t,function(r){return wo(r).main}),e!=="dataset"&&We(t,"dataset")<=0&&t.unshift("dataset"),t}var K={color:{},darkColor:{},size:{}},hr=K.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)"};re(hr,{primary:hr.neutral80,secondary:hr.neutral70,tertiary:hr.neutral60,quaternary:hr.neutral50,disabled:hr.neutral20,border:hr.neutral30,borderTint:hr.neutral20,borderShade:hr.neutral40,background:hr.neutral05,backgroundTint:"rgba(234,237,245,0.5)",backgroundTransparent:"rgba(255,255,255,0)",backgroundShade:hr.neutral10,shadow:"rgba(0,0,0,0.2)",shadowTint:"rgba(129,130,136,0.2)",axisLine:hr.neutral70,axisLineTint:hr.neutral40,axisTick:hr.neutral70,axisTickMinor:hr.neutral60,axisLabel:hr.neutral70,axisSplitLine:hr.neutral15,axisMinorSplitLine:hr.neutral05});for(var Hu in hr)if(hr.hasOwnProperty(Hu)){var AV=hr[Hu];Hu==="theme"?K.darkColor.theme=hr.theme.slice():Hu==="highlight"?K.darkColor.highlight="rgba(255,231,130,0.4)":Hu.indexOf("accent")===0?K.darkColor[Hu]=As(AV,null,function(e){return e*.5},function(e){return Math.min(1,1.3-e)}):K.darkColor[Hu]=As(AV,null,function(e){return e*.9},function(e){return 1-Math.pow(e,1.5)})}K.size={xxs:2,xs:5,s:10,m:15,l:20,xl:30,xxl:40,xxxl:50};var wJ="";typeof navigator<"u"&&(wJ=navigator.platform||"");var Jf="rgba(0, 0, 0, 0.2)",SJ=K.color.theme[0],ZBe=As(SJ,null,null,.9);const YBe={darkMode:"auto",colorBy:"series",color:K.color.theme,gradientColor:[ZBe,SJ],aria:{decal:{decals:[{color:Jf,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Jf,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Jf,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Jf,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Jf,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Jf,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:wJ.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 TJ=_e(["tooltip","label","itemName","itemId","itemGroupId","itemChildGroupId","seriesName"]),Ni="original",sn="arrayRows",ji="objectRows",qa="keyedColumns",ql="typedArray",AJ="unknown",Wa="column",Cf="row",hn={Must:1,Might:2,Not:3},CJ=Je();function XBe(e){CJ(e).datasetMap=_e()}function MJ(e,t,r){var n={},i=KN(t);if(!i||!e)return n;var a=[],o=[],s=t.ecModel,l=CJ(s).datasetMap,u=i.uid+"_"+r.seriesLayoutBy,c,f;e=e.slice(),B(e,function(g,m){var x=Le(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});B(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 kJ(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:e3e(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 t3e(e,t){t(e).paletteIdx=0,t(e).paletteNameMap={}}var Wx,Dp,MV,PV="\0_ec_inner",r3e=1,JN=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 tt(a),this._locale=new tt(o),this._optionManager=s},t.prototype.setOption=function(r,n,i){var a=IV(n);this._optionManager.setOption(r,i,a),this._resetOption(null,a)},t.prototype.resetOption=function(r,n){return this._resetOption(r,IV(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"?MV(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&&B(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;XBe(this),B(r,function(f,h){f!=null&&(Qe.hasClass(h)?h&&(s.push(h),l.set(h,!0)):i[h]=i[h]==null?Ce(f):He(i[h],f,!0))}),u&&u.each(function(f,h){Qe.hasClass(h)&&!l.get(h)&&(s.push(h),l.set(h,!0))}),Qe.topologicalTravel(s,Qe.getAllClassMainTypes(),c,this);function c(f){var h=QBe(this,f,Pt(r[f])),d=a.get(f),v=d?u&&u.get(f)?"replaceMerge":"normalMerge":"replaceAll",g=fQ(d,h,v);mRe(g,f,Qe),i[f]=null,a.set(f,null),o.set(f,0);var m=[],x=[],_=0,b;B(g,function(S,T){var A=S.existing,M=S.newOption;if(!M)A&&(A.mergeOption({},this),A.optionUpdated({},!1));else{var P=f==="series",I=Qe.getClass(f,S.keyInfo.subType,!P);if(!I)return;if(f==="tooltip"){if(b)return;b=!0}if(A&&A.constructor===I)A.name=S.keyInfo.name,A.mergeOption(M,this),A.optionUpdated(M,!1);else{var k=re({componentIndex:T},S.keyInfo);A=new I(M,this,this,k),re(A,k),S.brandNew&&(A.__requireNewView=!0),A.init(M,this,this),A.optionUpdated(null,!0)}}A?(m.push(A.option),x.push(A),_++):(m.push(void 0),x.push(void 0))},this),i[f]=m,a.set(f,x),o.set(f,_),f==="series"&&Wx(this)}this._seriesIndices||Wx(this)},t.prototype.getOption=function(){var r=Ce(this.option);return B(r,function(n,i){if(Qe.hasClass(i)){for(var a=Pt(n),o=a.length,s=!1,l=o-1;l>=0;l--)a[l]&&!vy(a[l])?s=!0:(a[l]=null,!s&&o--);a.length=o,r[i]=a}}),delete r[PV],r},t.prototype.setTheme=function(r){this._theme=new tt(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 f3e(e,t){return e.join(",")===t.join(",")}var Aa=B,_y=Le,OV=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function S2(e){var t=e&&e.itemStyle;if(t)for(var r=0,n=OV.length;r0?r[o-1].seriesModel:null)}),_3e(r)}})}function _3e(e){B(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=iRe(h,_),g=_;break}}}return n[0]=h,n[1]=g,n})})}var DT=function(){function e(t){this.data=t.data||(t.sourceFormat===qa?{}:[]),this.sourceFormat=t.sourceFormat||AJ,this.seriesLayoutBy=t.seriesLayoutBy||Wa,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};zV=(t={},t[sn+"_"+Wa]={pure:!0,appendData:a},t[sn+"_"+Cf]={pure:!0,appendData:function(){throw new Error('Do not support appendData when set seriesLayoutBy: "row".')}},t[ji]={pure:!0,appendData:a},t[qa]={pure:!0,appendData:function(o){var s=this._data;B(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[ql]={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 Jd(this.getData(r),t)},e.prototype.formatTooltip=function(t,r,n){},e}();function GV(e){var t,r;return Le(e)?e.type&&(r=e):t=e,{text:t,frag:r}}function Kg(e){return new P3e(e)}var P3e=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}},k3e=function(){function e(t,r){if(!ot(r)){var n="";mt(n)}this._opFn=FJ[t],this._rvalFloat=zo(r)}return e.prototype.evaluate=function(t){return ot(t)?this._opFn(t,this._rvalFloat):this._opFn(zo(t),this._rvalFloat)},e}(),VJ=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:zo(t),i=ot(r)?r:zo(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}(),I3e=function(){function e(t,r){this._rval=r,this._isEQ=t,this._rvalTypeof=typeof r,this._rvalFloat=zo(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=zo(t)===this._rvalFloat)}return this._isEQ?r:!r},e}();function O3e(e,t){return e==="eq"||e==="ne"?new I3e(e==="eq",t):ye(FJ,e)?new k3e(e,t):null}var E3e=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 Kl(t,r)},e}();function D3e(e,t){var r=new E3e,n=e.data,i=r.sourceFormat=e.sourceFormat,a=e.startIndex,o="";e.seriesLayoutBy!==Wa&&mt(o);var s=[],l={},u=e.dimensionsDefine;if(u)B(u,function(g,m){var x=g.name,_={index:m,name:x,displayName:g.displayName};if(s.push(_),x!=null){var b="";ye(l,x)&&mt(b),l[x]=_}});else for(var c=0;c65535?V3e:G3e}function th(){return[1/0,-1/0]}function W3e(e){var t=e.constructor;return t===Array?e.slice():new t(e)}function UV(e,t,r,n,i){var a=HJ[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(_))&&(A>=S&&A<=T||isNaN(A))&&(l[u++]=g),g++}v=!0}}if(!v)if(a===1)for(var x=0;x=f&&_<=h||isNaN(_))&&(l[u++]=M)}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(eh(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&&(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 Kl(r[a],this._dimensions[a])}C2={arrayRows:t,objectRows:function(r,n,i,a){return Kl(r[n],this._dimensions[a])},keyedColumns:t,original:function(r,n,i,a){var o=r&&(r.value==null?r:r.value);return Kl(o instanceof Array?o[a]:o,this._dimensions[a])},typedArray:function(r,n,i,a){return r[a]}}}(),e}(),UJ=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(Ux(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)?ql: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?[wI(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=[wI(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&&YV(a)}var o,s=[],l=[];return B(t,function(u){u.prepareSource();var c=u.getSource(i||0),f="";i!=null&&!c&&YV(f),s.push(c),l.push(u._getVersionSign())}),n?o=$3e(n,s,{datasetIndex:r.componentIndex}):i!=null&&(o=[b3e(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 B(e.blocks,function(i){var a=qJ(i);a>=t&&(t=a+ +(n&&(!a||TI(i)&&!i.noHeader)))}),t}return 0}function Y3e(e,t,r,n){var i=t.noHeader,a=q3e(qJ(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(ye(u,l)){var c=new VJ(u[l],null);s.sort(function(g,m){return c.evaluate(g.sortParam,m.sortParam)})}else l==="seriesDesc"&&s.reverse()}B(s,function(g,m){var x=t.valueFormatter,_=XJ(g)(x?re(re({},e),{valueFormatter:x}):e,g,m>0?a.html:0,n);_!=null&&o.push(_)});var f=e.renderMode==="richText"?o.join(a.richText):AI(n,o.join(""),i?r:a.html);if(i)return f;var h=yI(t.header,"ordinal",e.useUTC),d=YJ(n,e.renderMode).nameStyle,v=ZJ(n);return e.renderMode==="richText"?KJ(e,h,d)+a.richText+f:AI(n,'
'+On(h)+"
"+f,r)}function X3e(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,A){return yI(T,ae(d)?d[A]:d,u)})};if(!(a&&o)){var f=s?"":e.markupStyleCreator.makeTooltipMarker(t.markerType,t.markerColor||K.color.secondary,i),h=a?"":yI(l,"ordinal",u),d=t.valueType,v=o?[]:c(t.value,t.dataIndex),g=!s||!a,m=!s&&a,x=YJ(n,i),_=x.nameStyle,b=x.valueStyle;return i==="richText"?(s?"":f)+(a?"":KJ(e,h,_))+(o?"":J3e(e,v,g,m,b)):AI(n,(s?"":f)+(a?"":K3e(h,!s,_))+(o?"":Q3e(v,g,m,b)),r)}}function XV(e,t,r,n,i,a){if(e){var o=XJ(e),s={useUTC:i,renderMode:r,orderMode:n,markupStyleCreator:t,valueFormatter:e.valueFormatter};return o(s,e,0,a)}}function q3e(e){return{html:U3e[e],richText:Z3e[e]}}function AI(e,t,r){var n='
',i="margin: "+r+"px 0 0",a=ZJ(e);return'
'+t+n+"
"}function K3e(e,t,r){var n=t?"margin-left:2px":"";return''+On(e)+""}function Q3e(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 On(o)}).join("  ")+""}function KJ(e,t,r){return e.markupStyleCreator.wrapRichTextStyle(t,r)}function J3e(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 QJ(e,t){var r=e.getData().getItemVisual(t,"style"),n=r[e.visualDrawType];return uf(n)}function JJ(e,t){var r=e.get("padding");return r??(t==="richText"?[8,10]:10)}var M2=function(){function e(){this.richTextStyles={},this._nextStyleNameId=oQ()}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=dJ({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)?B(r,function(a){return re(n,a)}):re(n,r);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},e}();function eee(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=QJ(t,r),c,f,h,d;if(o>1||l&&!o){var v=eze(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=Jd(i,r,a[0]),f=g.type}else d=c=l?s[0]:s;var m=pN(t),x=m&&t.name||"",_=i.getName(r),b=n?x:_;return Ar("section",{header:x,noHeader:n||!m,sortParam:d,blocks:[Ar("nameValue",{markerType:"item",markerColor:u,name:b,noName:!Ci(b),value:c,valueType:f,dataIndex:r})].concat(h||[])})}function eze(e,t,r,n,i){var a=t.getData(),o=ha(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?B(n,function(f){c(Jd(a,r,f),f)}):B(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 al=Je();function Zx(e,t){return e.getName(t)||e.getId(t)}var ub="__universalTransitionEnabled",St=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=Kg({count:rze,reset:nze}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(r,i);var a=al(this).sourceManager=new UJ(this);a.prepareSource();var o=this.getInitialData(r,i);KV(o,this),this.dataTask.context.data=o,al(this).dataBeforeProcessed=o,qV(this),this._initSelectedMapFromData(o)},t.prototype.mergeDefaultAndTheme=function(r,n){var i=xy(this),a=i?Af(r):{},o=this.subType;Qe.hasClass(o)&&(o+="Series"),He(r,n.getTheme().get(this.subType)),He(r,this.getDefaultOption()),rf(r,"label",["show"]),this.fillDataTextStyle(r.data),i&&Fo(r,a,i)},t.prototype.mergeOption=function(r,n){r=He(this.option,r,!0),this.fillDataTextStyle(r.data);var i=xy(this);i&&Fo(this.option,r,i);var a=al(this).sourceManager;a.dirty(),a.prepareSource();var o=this.getInitialData(r,n);KV(o,this),this.dataTask.dirty(),this.dataTask.context.data=o,al(this).dataBeforeProcessed=o,qV(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++]=g))}),c.length=d,c},t.prototype.formatTooltip=function(r,n,i){return eee({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=QN.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[Zx(a,r)])&&!a.getItemModel(r).get(["select","disabled"])},t.prototype.isUniversalTransitionEnabled=function(){if(this[ub])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 Qe.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}(Qe);fr(St,NT);fr(St,QN);gQ(St,Qe);function qV(e){var t=e.name;pN(e)||(e.name=tze(e)||t)}function tze(e){var t=e.getRawData(),r=t.mapDimensionsAll("seriesName"),n=[];return B(r,function(i){var a=t.getDimensionInfo(i);a.displayName&&n.push(a.displayName)}),n.join(" ")}function rze(e){return e.model.getRawData().count()}function nze(e){var t=e.model;return t.setData(t.getRawData().cloneShallow()),ize}function ize(e,t){t.outputData&&e.end>t.outputData.count()&&t.model.getRawData().cloneShallow(t.outputData)}function KV(e,t){B(Ud(e.CHANGABLE_METHODS,e.DOWNSAMPLE_METHODS),function(r){e.wrapMethod(r,Fe(aze,t))})}function aze(e,t){var r=CI(e);return r&&r.setOutputEnd((t||this).count()),t}function CI(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 Me,this.uid=zv("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}();mN(Lt);wT(Lt);function Vv(){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 tee=Je(),oze=Vv(),_t=function(){function e(){this.group=new Me,this.uid=zv("viewChart"),this.renderTask=Kg({plan:sze,reset:lze}),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&&JV(a,i,"emphasis")},e.prototype.downplay=function(t,r,n,i){var a=t.getData(i&&i.dataType);a&&JV(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){xu(this.group,t)},e.markUpdateMethod=function(t,r){tee(t).updateMethod=r},e.protoInitialize=function(){var t=e.prototype;t.type="chart"}(),e}();function QV(e,t,r){e&&gy(e)&&(t==="emphasis"?Fs:Vs)(e,r)}function JV(e,t,r){var n=nf(e,t),i=t&&t.highlightKey!=null?D5e(t.highlightKey):null;n!=null?B(Pt(n),function(a){QV(e.getItemGraphicEl(a),r,i)}):e.eachItemGraphicEl(function(a){QV(a,r,i)})}mN(_t);wT(_t);function sze(e){return oze(e.model)}function lze(e){var t=e.model,r=e.ecModel,n=e.api,i=e.payload,a=t.pipelineContext.progressiveRender,o=e.view,s=i&&tee(i).updateMethod,l=a?"incrementalPrepareRender":s&&o[s]?s:"render";return l!=="render"&&o[l](t,r,n,i),uze[l]}var uze={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)}}},gw="\0__throttleOriginMethod",e6="\0__throttleRate",t6="\0__throttleType";function RT(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 Gv(e,t,r,n){var i=e[t];if(i){var a=i[gw]||i,o=i[t6],s=i[e6];if(s!==r||o!==n){if(r==null||!n)return e[t]=a;i=e[t]=RT(a,r,n==="debounce"),i[gw]=a,i[t6]=n,i[e6]=r}return i}}function by(e,t){var r=e[t];r&&r[gw]&&(r.clear&&r.clear(),e[t]=r[gw])}var r6=Je(),n6={itemStyle:af(iJ,!0),lineStyle:af(nJ,!0)},cze={lineStyle:"stroke",itemStyle:"fill"};function ree(e,t){var r=e.visualStyleMapper||n6[t];return r||(console.warn("Unknown style type '"+t+"'."),n6.itemStyle)}function nee(e,t){var r=e.visualDrawType||cze[t];return r||(console.warn("Unknown style type '"+t+"'."),"fill")}var fze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=e.getModel(n),a=ree(e,n),o=a(i),s=i.getShallow("decal");s&&(r.setVisual("decal",s),s.dirty=!0);var l=nee(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 g=e.getDataParams(v),m=re({},o);m[l]=c(g),d.setItemVisual(v,"style",m)}}}},jp=new tt,hze={createOnAllSeries:!0,performRawSeries:!0,reset:function(e,t){if(!(e.ignoreStyleOnData||t.isSeriesFiltered(e))){var r=e.getData(),n=e.visualStyleAccessPath||"itemStyle",i=ree(e,n),a=r.getVisual("drawType");return{dataEach:r.hasItemOption?function(o,s){var l=o.getRawDataItem(s);if(l&&l[n]){jp.option=l[n];var u=i(jp),c=o.ensureUniqueItemVisual(s,"style");re(c,u),jp.option.decal&&(o.setItemVisual(s,"decal",jp.option.decal),jp.option.decal.dirty=!0),a in u&&o.setItemVisual(s,"colorFromPalette",!1)}}:null}}}},dze={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)),r6(r).scope=a}}),e.eachSeries(function(r){if(!(r.isColorBySeries()||e.isSeriesFiltered(r))){var n=r.getRawData(),i={},a=r.getData(),o=r6(r).scope,s=r.visualStyleAccessPath||"itemStyle",l=nee(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)}})}})}},Yx=Math.PI;function vze(e,t){t=t||{},Pe(t,{text:"loading",textColor:K.color.primary,fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255,255,255,0.8)",showSpinner:!0,color:K.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 u0({shape:{startAngle:-Yx/2,endAngle:-Yx/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:Yx*3/2}).start("circularInOut"),o.animateShape(!0).when(1e3,{startAngle:Yx*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 iee=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;B(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;B(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)||Kg({plan:xze,reset:_ze,count:wze}));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||Kg({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="";_n(!t.createOnAllSeries,d),u?n.eachRawSeriesByType(u,v):c?c(n,i).each(v):(f=!1,B(n.getSeries(),v));function v(g){var m=g.uid,x=l.set(m,s&&s.get(m)||(h=!0,Kg({reset:gze,onDirty:yze})));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 Ae(t)&&(t={overallReset:t,seriesType:Sze(t)}),t.uid=zv("stageHandler"),r&&(t.visualType=r),t},e}();function pze(e){e.overallReset(e.ecModel,e.api,e.payload)}function gze(e){return e.overallProgress&&mze}function mze(){this.agent.dirty(),this.getDownstream().dirty()}function yze(){this.agent&&this.agent.dirty()}function xze(e){return e.plan?e.plan(e.model,e.ecModel,e.api,e.payload):null}function _ze(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 aee(n)}):bze}var bze=aee(0);function aee(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}(),MI=["symbol","symbolSize","symbolRotate","symbolOffset"],a6=MI.concat(["symbolKeepAspect"]),Cze={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&&Lc(l)?l:.5;var u=e.createRadialGradient(o,s,0,o,s,l);return u}function PI(e,t,r){for(var n=t.type==="radial"?Fze(e,t,r):$ze(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 aj(e){var t=e.style,r=t.lineDash&&t.lineWidth>0&&Gze(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 Wze=new $o(!0);function xw(e){var t=e.stroke;return!(t==null||t==="none"||!(e.lineWidth>0))}function o6(e){return typeof e=="string"&&e!=="none"}function _w(e){var t=e.fill;return t!=null&&t!=="none"}function s6(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 l6(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 LI(e,t,r){var n=yN(t.image,t.__image,r);if(ST(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)*$g),a.scaleSelf(t.scaleX||1,t.scaleY||1),i.setTransform(a)}return i}}function Hze(e,t,r,n){var i,a=xw(r),o=_w(r),s=r.strokePercent,l=s<1,u=!t.path;(!t.silent||l)&&u&&t.createPathProxy();var c=t.path||Wze,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,A=void 0;(v||g)&&(A=t.getBoundingRect()),v&&(_=f?PI(e,h,A):t.__canvasFillGradient,t.__canvasFillGradient=_),g&&(b=f?PI(e,d,A):t.__canvasStrokeGradient,t.__canvasStrokeGradient=b),m&&(S=f||!t.__canvasFillPattern?LI(e,h,t):t.__canvasFillPattern,t.__canvasFillPattern=S),x&&(T=f||!t.__canvasStrokePattern?LI(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 M=t.getGlobalScale();c.setScale(M[0],M[1],t.segmentIgnoreThreshold);var P,I;e.setLineDash&&r.lineDash&&(i=aj(t),P=i[0],I=i[1]);var k=!0;(u||f&bh)&&(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&&l6(e,r),o&&s6(e,r)):(o&&s6(e,r),a&&l6(e,r))),P&&e.setLineDash([])}function Uze(e,t,r){var n=t.__image=yN(r.image,t.__image,t,t.onload);if(!(!n||!ST(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 Zze(e,t,r){var n,i=r.text;if(i!=null&&(i+=""),i){e.font=r.font||zs,e.textAlign=r.textAlign,e.textBaseline=r.textBaseline;var a=void 0,o=void 0;e.setLineDash&&r.lineDash&&(n=aj(t),a=n[0],o=n[1]),a&&(e.setLineDash(a),e.lineDashOffset=o),r.strokeFirst?(xw(r)&&e.strokeText(i,r.x,r.y),_w(r)&&e.fillText(i,r.x,r.y)):(_w(r)&&e.fillText(i,r.x,r.y),xw(r)&&e.strokeText(i,r.x,r.y)),a&&e.setLineDash([])}}var u6=["shadowBlur","shadowOffsetX","shadowOffsetY"],c6=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function fee(e,t,r,n,i){var a=!1;if(!n&&(r=r||{},t===r))return!1;if(n||t.opacity!==r.opacity){ai(e,i),a=!0;var o=Math.max(Math.min(t.opacity,1),0);e.globalAlpha=isNaN(o)?Rc.opacity:o}(n||t.blend!==r.blend)&&(a||(ai(e,i),a=!0),e.globalCompositeOperation=t.blend||Rc.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(Le(n)&&(i=n.lazyUpdate,a=n.silent,o=n.replaceMerge,s=n.transition,n=n.notMerge),this[Pr]=!0,ah(this),!this._model||n){var l=new s3e(this._api),u=this._theme,c=this._model=new JN;c.scheduler=this._scheduler,c.ssr=this._ssr,c.init(null,null,null,u,this._locale,l)}this._model.setOption(r,{replaceMerge:o},EI);var f={seriesTransition:s,optionChanged:!0};if(i)this[Qr]={silent:a,updateParams:f},this[Pr]=!1,this.getZr().wakeUp();else{try{qu(this),rs.update.call(this,null,f)}catch(h){throw this[Qr]=null,this[Pr]=!1,h}this._ssr||this._zr.flush(),this[Qr]=null,this[Pr]=!1,nh.call(this,a),ih.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[Qr]&&(a==null&&(a=this[Qr].silent),o=this[Qr].updateParams,this[Qr]=null),this[Pr]=!0,ah(this);try{this._updateTheme(r),i.setTheme(this._theme),qu(this),rs.update.call(this,{type:"setTheme"},o)}catch(s){throw this[Pr]=!1,s}this[Pr]=!1,nh.call(this,a),ih.call(this,a)}}},t.prototype._updateTheme=function(r){pe(r)&&(r=kee[r]),r&&(r=Ce(r),r&&EJ(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 B(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;B(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 B(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(Tw[i]){var l=s,u=s,c=-s,f=-s,h=[],d=r&&r.pixelRatio||this.getDevicePixelRatio();B($c,function(b,S){if(b.group===i){var T=n?b.getZr().painter.getSvgDom().innerHTML:b.renderToCanvas(Ce(r)),A=b.getDom().getBoundingClientRect();l=a(A.left,l),u=a(A.top,u),c=o(A.right,c),f=o(A.bottom,f),h.push({dom:T,left:A.left,top:A.top})}}),l*=d,u*=d,c*=d,f*=d;var v=c-l,g=f-u,m=hi.createCanvas(),x=Kk(m,{renderer:n?"svg":"canvas"});if(x.resize({width:v,height:g}),n){var _="";return B(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}})),B(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(),m.toDataURL("image/"+(r&&r.type||"png"))}else return this.getDataURL(r)},t.prototype.convertToPixel=function(r,n,i){return Qx(this,"convertToPixel",r,n,i)},t.prototype.convertToLayout=function(r,n,i){return Qx(this,"convertToLayout",r,n,i)},t.prototype.convertFromPixel=function(r,n,i){return Qx(this,"convertFromPixel",r,n,i)},t.prototype.containPixel=function(r,n){if(this._disposed){this.id;return}var i=this._model,a,o=ld(i,r);return B(o,function(s,l){l.indexOf("Models")>=0&&B(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=ld(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?ij(s,l,n):v0(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;B(x4e,function(i){var a=function(o){var s=r.getModel(),l=o.target,u,c=i==="globalout";if(c?u={}:l&&Pc(l,function(g){var m=De(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=re({},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;B(II,function(i,a){n.on(a,function(o){r.trigger(a,o)})}),Pze(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&&dQ(this.getDom(),uj,"");var n=this,i=n._api,a=n._model;B(n._componentsViews,function(o){o.dispose(a,i)}),B(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 $c[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[Qr]&&(a==null&&(a=this[Qr].silent),i=!0,this[Qr]=null),this[Pr]=!0,ah(this);try{i&&qu(this),rs.update.call(this,{type:"resize",animation:re({duration:0},r&&r.animation)})}catch(o){throw this[Pr]=!1,o}this[Pr]=!1,nh.call(this,a),ih.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(),!!DI[r]){var i=DI[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=re({},r);return n.type=kI[r.type],n},t.prototype.dispatchAction=function(r,n){if(this._disposed){this.id;return}if(Le(n)||(n={silent:!!n}),!!ww[r.type]&&this._model){if(this[Pr]){this._pendingActions.push(r);return}var i=n.silent;E2.call(this,r,i);var a=n.flush;a?this._zr.flush():a!==!1&&nt.browser.weChat&&this._throttledZrFlush(),nh.call(this,i),ih.call(this,i)}},t.prototype.updateLabelLayout=function(){Pa.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(){qu=function(f){var h=f._scheduler;h.restorePipelines(f._model),h.prepareStageTasks(),I2(f,!0),I2(f,!1),h.plan()},I2=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=lf(f);h.eachRendered(function(v){return IT(v,d.z,d.zlevel),!0})}}function u(f,h){h.eachRendered(function(d){if(!ud(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(ud(x))return;if(x instanceof rt&&N5e(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)}})}S6=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){Fs(v,g),Gi(f)},d.prototype.leaveEmphasis=function(v,g){Vs(v,g),Gi(f)},d.prototype.enterBlur=function(v){IQ(v),Gi(f)},d.prototype.leaveBlur=function(v){TN(v),Gi(f)},d.prototype.enterSelect=function(v){OQ(v),Gi(f)},d.prototype.leaveSelect=function(v){EQ(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[qx]},d}(IJ))(f)},Lee=function(f){function h(d,v){for(var g=0;g=0)){A6.push(r);var a=iee.wrapStageHandler(r,i);a.__prio=t,a.__raw=r,e.push(a)}}function pj(e,t){DI[e]=t}function L4e(e){yK({createCanvas:e})}function jee(e,t,r){var n=mee("registerMap");n&&n(e,t,r)}function k4e(e){var t=mee("getMap");return t&&t(e)}var Ree=z3e;bu(sj,fze);bu(BT,hze);bu(BT,dze);bu(sj,Cze);bu(BT,Mze);bu(wee,t4e);hj(EJ);dj(l4e,x3e);pj("default",vze);Ka({type:Bc,event:Bc,update:Bc},lr);Ka({type:nb,event:nb,update:nb},lr);Ka({type:uw,event:wN,update:uw,action:lr,refineEvent:gj,publishNonRefinedEvent:!0});Ka({type:sI,event:wN,update:sI,action:lr,refineEvent:gj,publishNonRefinedEvent:!0});Ka({type:cw,event:wN,update:cw,action:lr,refineEvent:gj,publishNonRefinedEvent:!0});function gj(e,t,r,n){return{eventContent:{selected:k5e(r),isFromClick:t.isFromClick||!1}}}fj("default",{});fj("dark",lee);var I4e={},C6=[],O4e={registerPreprocessor:hj,registerProcessor:dj,registerPostInit:Oee,registerPostUpdate:Eee,registerUpdateLifecycle:zT,registerAction:Ka,registerCoordinateSystem:Dee,registerLayout:Nee,registerVisual:bu,registerTransform:Ree,registerLoading:pj,registerMap:jee,registerImpl:r4e,PRIORITY:See,ComponentModel:Qe,ComponentView:Lt,SeriesModel:St,ChartView:_t,registerComponentModel:function(e){Qe.registerClass(e)},registerComponentView:function(e){Lt.registerClass(e)},registerSeriesModel:function(e){St.registerClass(e)},registerChartView:function(e){_t.registerClass(e)},registerCustomSeries:function(e,t){xee(e,t)},registerSubTypeDefaulter:function(e,t){Qe.registerSubTypeDefaulter(e,t)},registerPainter:function(e,t){JK(e,t)}};function Ze(e){if(ae(e)){B(e,function(t){Ze(t)});return}We(C6,e)>=0||(C6.push(e),Ae(e)&&(e={install:e}),e.install(O4e))}function Bp(e){return e==null?0:e.length||1}function M6(e){return e}var Gs=function(){function e(t,r,n,i,a,o){this._old=t,this._new=r,this._oldKeyGetter=n||M6,this._newKeyGetter=i||M6,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 zp=Le,ol=se,B4e=typeof Int32Array>"u"?Array:Int32Array,z4e="e\0\0",P6=-1,$4e=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],F4e=["_approximateExtent"],L6,e_,$p,Fp,j2,Vp,R2,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;zee(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():zp(a)&&(a=re({},a)),i[r]=a),a},e.prototype.setItemVisual=function(t,r,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,zp(r)?re(i,r):i[r]=n},e.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},e.prototype.setLayout=function(t,r){zp(t)?re(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?re(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;oI(n,this.dataType,t,r),this._graphicEls[t]=r},e.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},e.prototype.eachItemGraphicEl=function(t,r){B(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:ol(this.dimensions,this._getDimInfo,this),this.hostModel)),j2(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(pT(arguments)))})},e.internalField=function(){L6=function(t){var r=t._invertedIndicesMap;B(r,function(n,i){var a=t._dimInfos[i],o=a.ordinalMeta,s=t._store;if(o){n=r[i]=new B4e(o.categories.length);for(var l=0;l1&&(l+="__ec__"+c),i[r]=l}}}(),e}();function V4e(e,t){return Hv(e,t).dimensions}function Hv(e,t){ej(e)||(e=tj(e)),t=t||{};var r=t.coordDimensions||[],n=t.dimensionsDefine||e.dimensionsDefine||[],i=_e(),a=[],o=W4e(e,r,n,t.dimensionsCount),s=t.canOmitUnusedDimensions&&Vee(o),l=n===e.dimensionsDefine,u=l?Fee(e):$ee(n),c=t.encodeDefine;!c&&t.encodeDefaulter&&(c=t.encodeDefaulter(e,o));for(var f=_e(c),h=new WJ(o),d=0;d0&&(n.name=i+(a-1)),a++,t.set(i,a)}}function W4e(e,t,r,n){var i=Math.max(e.dimensionsDetectedCount||1,t.length,r.length,n||0);return B(t,function(a){var o;Le(a)&&(o=a.dimsDef)&&(i=Math.max(i,o.length))}),i}function H4e(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 U4e=function(){function e(t){this.coordSysDims=[],this.axisMap=_e(),this.categoryAxisMap=_e(),this.coordSysName=t}return e}();function Z4e(e){var t=e.get("coordinateSystem"),r=new U4e(t),n=Y4e[t];if(n)return n(e,r,r.axisMap,r.categoryAxisMap),r}var Y4e={cartesian2d:function(e,t,r,n){var i=e.getReferringComponents("xAxis",tr).models[0],a=e.getReferringComponents("yAxis",tr).models[0];t.coordSysDims=["x","y"],r.set("x",i),r.set("y",a),oh(i)&&(n.set("x",i),t.firstCategoryDimIndex=0),oh(a)&&(n.set("y",a),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=1))},singleAxis:function(e,t,r,n){var i=e.getReferringComponents("singleAxis",tr).models[0];t.coordSysDims=["single"],r.set("single",i),oh(i)&&(n.set("single",i),t.firstCategoryDimIndex=0)},polar:function(e,t,r,n){var i=e.getReferringComponents("polar",tr).models[0],a=i.findAxisModel("radiusAxis"),o=i.findAxisModel("angleAxis");t.coordSysDims=["radius","angle"],r.set("radius",a),r.set("angle",o),oh(a)&&(n.set("radius",a),t.firstCategoryDimIndex=0),oh(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();B(a.parallelAxisIndex,function(s,l){var u=i.getComponent("parallelAxis",s),c=o[l];r.set(c,u),oh(u)&&(n.set(c,u),t.firstCategoryDimIndex==null&&(t.firstCategoryDimIndex=l))})},matrix:function(e,t,r,n){var i=e.getReferringComponents("matrix",tr).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 oh(e){return e.get("type")==="category"}function Gee(e,t,r){r=r||{};var n=r.byIndex,i=r.stackedCoordDimension,a,o,s;X4e(t)?a=t:(o=t.schema,a=o.dimensions,s=t.store);var l=!!(e&&e.get("stack")),u,c,f,h;if(B(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;B(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 X4e(e){return!zee(e.schema)}function Ws(e,t){return!!t&&t===e.getCalculationInfo("stackedDimension")}function mj(e,t){return Ws(e,t)?e.getCalculationInfo("stackResultDimension"):t}function q4e(e,t){var r=e.get("coordinateSystem"),n=Fv.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=Aw(l)}return o})),i||(i=n&&(n.getDimensionsInfo?n.getDimensionsInfo():n.dimensions.slice())||["x","y"]),i}function K4e(e,t,r){var n,i;return r&&B(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 Yo(e,t,r){r=r||{};var n=t.getSourceManager(),i,a=!1;e?(a=!0,i=tj(e)):(i=n.getSource(),a=i.sourceFormat===Ni);var o=Z4e(t),s=q4e(t,o),l=r.useEncodeDefaulter,u=Ae(l)?l:l?Fe(MJ,s,t):null,c={coordDimensions:s,generateCoord:r.generateCoord,encodeDefine:t.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!a},f=Hv(i,c),h=K4e(f.dimensions,r.createInvertedIndices,o),d=a?null:n.getSharedDataStore(f),v=Gee(t,{schema:f,store:d}),g=new Dn(f,t);g.setCalculationInfo(v);var m=h!=null&&Q4e(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 Q4e(e){if(e.sourceFormat===Ni){var t=J4e(e.data||[]);return!ae(Iv(t))}}function J4e(e){for(var t=0;ti&&(o=a.interval=i);var s=a.intervalPrecision=Ty(o),l=a.niceTickExtent=[mr(Math.ceil(e[0]/o)*o,s),mr(Math.floor(e[1]/o)*o,s)];return t$e(l,e),a}function B2(e){var t=Math.pow(10,bT(e)),r=e/t;return r?r===2?r=3:r===3?r=5:r*=2:r=1,mr(r*t)}function Ty(e){return Ra(e)+2}function k6(e,t,r){e[t]=Math.max(Math.min(e[t],r[1]),r[0])}function t$e(e,t){!isFinite(e[0])&&(e[0]=t[0]),!isFinite(e[1])&&(e[1]=t[1]),k6(e,0,t),k6(e,1,t),e[0]>e[1]&&(e[0]=e[1])}function yj(e,t){return e>=t[0]&&e<=t[1]}var r$e=function(){function e(){this.normalize=I6,this.scale=O6}return e.prototype.updateMethods=function(t){t.hasBreaks()?(this.normalize=ge(t.normalize,t),this.scale=ge(t.scale,t)):(this.normalize=I6,this.scale=O6)},e}();function I6(e,t){return t[1]===t[0]?.5:(e-t[0])/(t[1]-t[0])}function O6(e,t){return e*(t[1]-t[0])+t[0]}function jI(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 wu=function(){function e(t){this._calculator=new r$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}();wT(wu);var n$e=0,Ay=function(){function e(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++n$e,this._onCollect=t.onCollect}return e.createByAxisModel=function(t){var r=t.option,n=r.data,i=n&&se(n,i$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 i$e(e){return Le(e)&&e.value!=null?e.value:e+""}var tv=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 Ay({})),ae(i)&&(i=new Ay({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:pe(r)?this._ordinalMeta.getOrdinal(r):Math.round(r)},t.prototype.contain=function(r){return yj(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}(wu);wu.registerClass(tv);var sl=mr,Hs=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 yj(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=Ty(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=sl(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:sl(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 Zee(e){var t=s$e(e),r=[];return B(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")||(Qee(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:xj(a),stackId:Hee(n)})}),Yee(r)}function Yee(e){var t={};B(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 B(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),B(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;B(a,function(x,_){x.width||(x.width=d),g=x,v+=x.width*(1+c)}),g&&(v-=g.width*c);var m=-v/2;B(a,function(x,_){r[i][_]=r[i][_]||{bandWidth:o,offset:m,width:x.width},m+=x.width*(1+c)})}),r}function l$e(e,t,r){if(e&&t){var n=e[xj(t)];return n}}function Xee(e,t){var r=Uee(e,t),n=Zee(r);B(r,function(i){var a=i.getData(),o=i.coordinateSystem,s=o.getBaseAxis(),l=Hee(i),u=n[xj(s)][l],c=u.offset,f=u.width;a.setLayout({bandWidth:u.bandWidth,offset:c,size:f})})}function qee(e){return{seriesType:e,plan:Vv(),reset:function(t){if(Kee(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=Ws(r,u)&&!!r.getCalculationInfo("stackedOnSeries"),h=a.isHorizontal(),d=u$e(i,a),v=Qee(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,A=v&&So(T*3),M=v&&l&&So(T*3),P=v&&So(T),I=n.master.getRect(),k=h?I.width:I.height,O,D=S.getStore(),N=0;(O=b.next())!=null;){var j=D.get(f?m:o,O),z=D.get(s,O),$=d,U=void 0;f&&(U=+j-D.get(o,O));var F=void 0,V=void 0,W=void 0,Y=void 0;if(h){var Z=n.dataToPoint([j,z]);if(f){var J=n.dataToPoint([U,z]);$=J[0]}F=$,V=Z[1]+_,W=Z[0]-$,Y=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=t_.length,s=Math.min(c$e(t_,this._approxInterval,0,o),o-1);this._interval=t_[s][1],this._intervalPrecision=Ty(this._interval),this._minLevelUnit=t_[Math.max(s-1,0)][0]},t.prototype.parse=function(r){return ot(r)?r:+Uo(r)},t.prototype.contain=function(r){return yj(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}(Hs),t_=[["second",BN],["minute",zN],["hour",Xg],["quarter-day",Xg*6],["half-day",Xg*12],["day",ta*1.2],["half-week",ta*3.5],["week",ta*7],["month",ta*31],["quarter",ta*95],["half-year",wV/2],["year",wV]];function Jee(e,t,r,n){return vw(new Date(t),e,n).getTime()===vw(new Date(r),e,n).getTime()}function f$e(e,t){return e/=ta,e>16?16:e>7.5?7:e>3.5?4:e>1.5?2:1}function h$e(e){var t=30*ta;return e/=t,e>6?6:e>3?3:e>2?2:1}function d$e(e){return e/=Xg,e>12?12:e>6?6:e>3.5?4:e>2?2:1}function E6(e,t){return e/=t?zN:BN,e>30?30:e>20?20:e>15?15:e>10?10:e>5?5:e>2?2:1}function v$e(e){return dN(e,!0)}function p$e(e,t,r){var n=Math.max(0,We(_i,t)-1);return vw(new Date(e),_i[n],r).getTime()}function g$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 m$e(e,t,r,n,i,a){var o=1e4,s=LBe,l=0;function u(N,j,z,$,U,F,V){for(var W=g$e(U,N),Y=j,Z=new Date(Y);Yo));)if(Z[U](Z[$]()+N),Y=Z.getTime(),a){var J=a.calcNiceTickMultiple(Y,W);J>0&&(Z[U](Z[$]()+J*N),Y=Z.getTime())}V.push({value:Y,notAdd:!0})}function c(N,j,z){var $=[],U=!j.length;if(!Jee(qg(N),n[0],n[1],r)){U&&(j=[{value:p$e(n[0],N,r)},{value:n[1]}]);for(var F=0;F=n[0]&&V<=n[1]&&u(Y,V,W,Z,J,ne,$),N==="year"&&z.length>1&&F===0&&z.unshift({value:z[0].value-Y})}}for(var F=0;F<$.length;F++)z.push($[F])}}for(var f=[],h=[],d=0,v=0,g=0;g=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 A=ht(se(f,function(N){return ht(N,function(j){return j.value>=n[0]&&j.value<=n[1]&&!j.notAdd})}),function(N){return N.length>0}),M=[],P=A.length-1,g=0;g0;)a*=10;var s=[BI(x$e(n[0]/a)*a),BI(y$e(n[1]/a)*a)];this._interval=a,this._intervalPrecision=Ty(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=n_(r)/n_(this.base),e.prototype.contain.call(this,r)},t.prototype.normalize=function(r){return r=n_(r)/n_(this.base),e.prototype.normalize.call(this,r)},t.prototype.scale=function(r){return r=e.prototype.scale.call(this,r),r_(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}(Hs);function i_(e,t){return BI(e,Ra(t))}wu.registerClass(ete);var _$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[w$e[t]]=r},e.prototype.setDeterminedMinMax=function(t,r){var n=b$e[t];this[n]=r},e.prototype.freeze=function(){this.frozen=!0},e}(),b$e={min:"_determinedMin",max:"_determinedMax"},w$e={min:"_dataMin",max:"_dataMax"};function tte(e,t,r){var n=e.rawExtentInfo;return n||(n=new _$e(e,t,r),e.rawExtentInfo=n,n)}function a_(e,t){return t==null?null:mn(t)?NaN:e.parse(t)}function rte(e,t){var r=e.type,n=tte(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=Uee("bar",o),l=!1;if(B(s,function(f){l=l||f.getBaseAxis()===t.axis}),l){var u=Zee(s),c=S$e(i,a,t,u);i=c.min,a=c.max}}return{extent:[i,a],fixMin:n.minFixed,fixMax:n.maxFixed}}function S$e(e,t,r,n){var i=r.axis.getExtent(),a=Math.abs(i[1]-i[0]),o=l$e(n,r.axis);if(o===void 0)return{min:e,max:t};var s=1/0;B(o,function(d){s=Math.min(d.offset,s)});var l=-1/0;B(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 cf(e,t){var r=t,n=rte(e,r),i=n.extent,a=r.get("splitNumber");e instanceof ete&&(e.base=r.get("logBase"));var o=e.type,s=r.get("interval"),l=o==="interval"||o==="time";e.setBreaksFromOption(ite(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 p0(e,t){if(t=t||e.get("type"),t)switch(t){case"category":return new tv({ordinalMeta:e.getOrdinalMeta?e.getOrdinalMeta():e.getCategories(),extent:[1/0,-1/0]});case"time":return new _j({locale:e.ecModel.getLocaleModel(),useUTC:e.ecModel.get("useUTC")});default:return new(wu.getClass(t)||Hs)}}function T$e(e){var t=e.scale.getExtent(),r=t[0],n=t[1];return!(r>0&&n>0||r<0&&n<0)}function Uv(e){var t=e.getLabelModel().get("formatter");if(e.type==="time"){var r=kBe(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(Ae(t)){if(e.type==="category")return function(i,a){return t(Cw(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(Cw(e,i),a,o)}}else return function(i){return e.scale.getLabel(i)}}}function Cw(e,t){return e.type==="category"?e.scale.getLabel(t):t.value}function bj(e){var t=e.get("interval");return t??"auto"}function nte(e){return e.type==="category"&&bj(e.getLabelModel())===0}function Mw(e,t){var r={};return B(e.mapDimensionsAll(t),function(n){r[mj(e,n)]=!0}),it(r)}function A$e(e,t,r){t&&B(Mw(t,r),function(n){var i=t.getApproximateExtent(n);i[0]e[1]&&(e[1]=i[1])})}function rv(e){return e==="middle"||e==="center"}function Cy(e){return e.getShallow("show")}function ite(e){var t=e.get("breaks",!0);if(t!=null)return!Sr()||!C$e(e.axis)?void 0:t}function C$e(e){return(e.dim==="x"||e.dim==="y"||e.dim==="z"||e.dim==="single")&&e.type!=="category"}var Zv=function(){function e(){}return e.prototype.getNeedCrossZero=function(){var t=this.option;return!t.scale},e.prototype.getCoordSysModel=function(){},e}();function M$e(e){return Yo(null,e)}var P$e={isDimensionStacked:Ws,enableDataStack:Gee,getStackedDimension:mj};function L$e(e,t){var r=t;t instanceof tt||(r=new tt(t));var n=p0(r);return n.setExtent(e[0],e[1]),cf(n,r),n}function k$e(e){fr(e,Zv)}function I$e(e,t){return t=t||{},Mt(e,null,null,t.state!=="normal")}const O$e=Object.freeze(Object.defineProperty({__proto__:null,createDimensions:V4e,createList:M$e,createScale:L$e,createSymbol:xr,createTextStyle:I$e,dataStack:P$e,enableHoverEmphasis:Yl,getECData:De,getLayoutRect:$t,mixinAxisModelCommonMethods:k$e},Symbol.toStringTag,{value:"Module"}));var E$e=1e-8;function D6(e,t){return Math.abs(e-t)i&&(n=o,i=l)}if(n)return N$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 B(o,function(s){s.type==="polygon"?N6(s.exterior,i,a,r):B(s.points,function(l){N6(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 zI(e,t){return e=R$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 j6(o[0],o.slice(1)));break;case"MultiPolygon":B(i.coordinates,function(l){l[0]&&a.push(new j6(l[0],l.slice(1)))});break;case"LineString":a.push(new R6([i.coordinates]));break;case"MultiLineString":a.push(new R6(i.coordinates))}var s=new ote(n[t||"name"],a,n.cp);return s.properties=n,s})}const B$e=Object.freeze(Object.defineProperty({__proto__:null,MAX_SAFE_INTEGER:Jk,asc:Mi,getPercentWithPrecision:nRe,getPixelPrecision:fN,getPrecision:Ra,getPrecisionSafe:nQ,isNumeric:vN,isRadianAroundZero:Xd,linearMap:gt,nice:dN,numericToNumber:zo,parseDate:Uo,parsePercent:ve,quantile:rb,quantity:aQ,quantityExponent:bT,reformIntervals:eI,remRadian:hN,round:mr},Symbol.toStringTag,{value:"Module"})),z$e=Object.freeze(Object.defineProperty({__proto__:null,format:h0,parse:Uo,roundTime:vw},Symbol.toStringTag,{value:"Module"})),$$e=Object.freeze(Object.defineProperty({__proto__:null,Arc:u0,BezierCurve:Nv,BoundingRect:Oe,Circle:Zo,CompoundPath:c0,Ellipse:l0,Group:Me,Image:Xr,IncrementalDisplayable:HQ,Line:yr,LinearGradient:Sf,Polygon:wn,Polyline:on,RadialGradient:MN,Rect:Xe,Ring:Dv,Sector:bn,Text:at,clipPointsByRect:IN,clipRectByRect:qQ,createIcon:Rv,extendPath:YQ,extendShape:ZQ,getShapeClass:my,getTransform:Xl,initProps:Nt,makeImage:LN,makePath:Kd,mergePath:Ti,registerShape:xa,resizePath:kN,updateProps:lt},Symbol.toStringTag,{value:"Module"})),F$e=Object.freeze(Object.defineProperty({__proto__:null,addCommas:UN,capitalFirst:zBe,encodeHTML:On,formatTime:BBe,formatTpl:YN,getTextRect:jBe,getTooltipMarker:dJ,normalizeCssArray:$v,toCamelCase:ZN,truncateText:jRe},Symbol.toStringTag,{value:"Module"})),V$e=Object.freeze(Object.defineProperty({__proto__:null,bind:ge,clone:Ce,curry:Fe,defaults:Pe,each:B,extend:re,filter:ht,indexOf:We,inherits:nN,isArray:ae,isFunction:Ae,isObject:Le,isString:pe,map:se,merge:He,reduce:ha},Symbol.toStringTag,{value:"Module"}));var G$e=Je(),Qg=Je(),Ya={estimate:1,determine:2};function Pw(e){return{out:{noPxChangeTryDetermine:[]},kind:e}}function lte(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 W$e(e,t){var r=e.getLabelModel().get("customValues");if(r){var n=Uv(e),i=e.scale.getExtent(),a=lte(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"?U$e(e,t):Y$e(e)}function H$e(e,t,r){var n=e.getTickModel().get("customValues");if(n){var i=e.scale.getExtent(),a=lte(e,n);return{ticks:ht(a,function(o){return o>=i[0]&&o<=i[1]})}}return e.type==="category"?Z$e(e,t):{ticks:se(e.scale.getTicks(r),function(o){return o.value})}}function U$e(e,t){var r=e.getLabelModel(),n=ute(e,r,t);return!r.get("show")||e.scale.isBlank()?{labels:[]}:n}function ute(e,t,r){var n=q$e(e),i=bj(t),a=r.kind===Ya.estimate;if(!a){var o=fte(n,i);if(o)return o}var s,l;Ae(i)?s=vte(e,i):(l=i==="auto"?K$e(e,r):i,s=dte(e,l));var u={labels:s,labelCategoryInterval:l};return a?r.out.noPxChangeTryDetermine.push(function(){return $I(n,i,u),!0}):$I(n,i,u),u}function Z$e(e,t){var r=X$e(e),n=bj(t),i=fte(r,n);if(i)return i;var a,o;if((!t.get("show")||e.scale.isBlank())&&(a=[]),Ae(n))a=vte(e,n,!0);else if(n==="auto"){var s=ute(e,e.getLabelModel(),Pw(Ya.determine));o=s.labelCategoryInterval,a=se(s.labels,function(l){return l.tickValue})}else o=n,a=dte(e,o,!0);return $I(r,n,{ticks:a,tickCategoryInterval:o})}function Y$e(e){var t=e.scale.getTicks(),r=Uv(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 X$e=cte("axisTick"),q$e=cte("axisLabel");function cte(e){return function(r){return Qg(r)[e]||(Qg(r)[e]={list:[]})}}function fte(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=xT(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 A=Math.max(0,Math.floor(Math.min(S,T)));if(r===Ya.estimate)return t.out.noPxChangeTryDetermine.push(ge(J$e,null,e,A,l)),A;var M=hte(e,A,l);return M??A}function J$e(e,t,r){return hte(e,t,r)==null}function hte(e,t,r){var n=G$e(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 eFe(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 dte(e,t,r){var n=Uv(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=nte(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 vte(e,t,r){var n=e.scale,i=Uv(e),a=[];return B(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 B6=[0,1],_a=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 fN(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(),z6(n,i.count())),gt(t,B6,n,r)},e.prototype.coordToData=function(t,r){var n=this._extent,i=this.scale;this.onBand&&i.type==="ordinal"&&(n=n.slice(),z6(n,i.count()));var a=gt(t,n,B6,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=H$e(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 tFe(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||Pw(Ya.determine),W$e(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||Pw(Ya.determine),Q$e(this,t)},e}();function z6(e,t){var r=e[1]-e[0],n=t,i=r/n/2;e[0]+=i,e[1]-=i}function tFe(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;B(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=mr(d),v=mr(v),f?d>v:di&&(i+=Gp);var d=Math.atan2(s,o);if(d<0&&(d+=Gp),d>=n&&d<=i||d+Gp>=n&&d+Gp<=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,Ba.fromArray(e[0]),Ot.fromArray(e[1]),vr.fromArray(e[2]),Ie.sub(To,Ba,Ot),Ie.sub(yo,vr,Ot);var r=To.len(),n=yo.len();if(!(r<.001||n<.001)){To.scale(1/r),yo.scale(1/n);var i=To.dot(yo),a=Math.cos(t);if(a1&&Ie.copy(Vn,vr),Vn.toArray(e[1])}}}}function fFe(e,t,r){if(r<=180&&r>0){r=r/180*Math.PI,Ba.fromArray(e[0]),Ot.fromArray(e[1]),vr.fromArray(e[2]),Ie.sub(To,Ot,Ba),Ie.sub(yo,vr,Ot);var n=To.len(),i=yo.len();if(!(n<.001||i<.001)){To.scale(1/n),yo.scale(1/i);var a=To.dot(t),o=Math.cos(r);if(a=l)Ie.copy(Vn,vr);else{Vn.scaleAndAdd(yo,s/Math.tan(Math.PI/2-c));var f=vr.x!==Ot.x?(Vn.x-Ot.x)/(vr.x-Ot.x):(Vn.y-Ot.y)/(vr.y-Ot.y);if(isNaN(f))return;f<0?Ie.copy(Vn,Ot):f>1&&Ie.copy(Vn,vr)}Vn.toArray(e[1])}}}}function F2(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 hFe(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=ps(n[0],n[1]),a=ps(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=Vg([],n[1],n[0],o/i),l=Vg([],n[1],n[2],o/a),u=Vg([],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+M;O<0&&T(-O*I,1)}else T(-M*I,1)}}function S(M,P,I){M!==0&&(c=!0);for(var k=P;k0)for(var O=0;O0;O--){var z=I[O-1]*j;S(-z,O,a)}}}function A(M){var P=M<0?-1:1;M=Math.abs(M);for(var I=Math.ceil(M/(a-1)),k=0;k0?S(I,0,k+1):S(-I,a-k-1,a),M-=I,M<=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),!Bv(n).valueAnimation){var f=be(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={};o_(d,u,s_),o_(d,n.states.select,s_)}if(n.states.emphasis){var v=a.oldLayoutEmphasis={};o_(v,u,s_),o_(v,n.states.emphasis,s_)}rJ(n,l,c,r,r)}if(i&&!i.ignore&&!i.invisible){var a=yFe(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,Nt(i,{style:{strokePercent:1}},r)),a.oldLayout=g}},e}(),W2=Je();function _Fe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){var i=W2(r).labelManager;i||(i=W2(r).labelManager=new xFe),i.clearLabels()}),e.registerUpdateLifecycle("series:layoutlabels",function(t,r,n){var i=W2(r).labelManager;n.updatedSeries.forEach(function(a){i.addLabelsOfSeries(r.getViewOfSeriesModel(a))}),i.updateLayoutConfig(r),i.layout(r),i.processLabelsOverall()})}var H2=Math.sin,U2=Math.cos,bte=Math.PI,Qu=Math.PI*2,bFe=180/bte,wte=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=Il(f-Qu)||(c?u>=Qu:-u>=Qu),d=u>0?u%Qu:u%Qu+Qu,v=!1;h?v=!0:Il(f)?v=!1:v=d>=bte==!!c;var g=t+n*U2(o),m=r+i*H2(o);this._start&&this._add("M",g,m);var x=Math.round(a*bFe);if(h){var _=1/this._p,b=(c?1:-1)*(Qu-_);this._add("A",n,i,x,1,+c,t+n*U2(o+b),r+i*H2(o+b)),_>.01&&this._add("A",n,i,x,0,+c,g,m)}else{var S=t+n*U2(s),T=r+i*H2(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 kFe(e){return""}function Aj(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 LFe(o,s)+(o!=="style"?On(l):l||"")+(a?""+r+se(a,function(u){return n(u)}).join(r)+r:"")+kFe(o)}return n(e)}function IFe(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 HI(e){return{zrId:e,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssStyleCache:{},cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function H6(e,t,r,n){return Gr("svg","root",{width:e,height:t,xmlns:Ste,"xmlns:xlink":Tte,version:"1.1",baseProfile:"full",viewBox:n?"0 0 "+e+" "+t:!1},r)}var OFe=0;function Cte(){return OFe++}var U6={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"},oc="transform-origin";function EFe(e,t,r){var n=re({},e.shape);re(n,t),e.buildPath(r,n);var i=new wte;return i.reset(UK(e)),r.rebuildPath(i,1),i.generateStr(),i.getStr()}function DFe(e,t){var r=t.originX,n=t.originY;(r||n)&&(e[oc]=r+"px "+n+"px")}var NFe={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function Mte(e,t){var r=t.zrId+"-ani-"+t.cssAnimIdx++;return t.cssAnims[r]=e,r}function jFe(e,t,r){var n=e.shape.paths,i={},a,o;if(B(n,function(l){var u=HI(r.zrId);u.animation=!0,FT(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=Mte(i,r);return a.replace(o,s)}}function Z6(e){return pe(e)?U6[e]?"cubic-bezier("+U6[e]+")":sN(e)?e:"":""}function FT(e,t,r,n){var i=e.animators,a=i.length,o=[];if(e instanceof c0){var s=jFe(e,t,r);if(s)o.push(s);else if(!a)return}else if(!a)return;for(var l={},u=0;u0}).length){var ze=Mte(M,r);return ze+" "+_[0]+" both"}}for(var m in l){var s=g(l[m]);s&&o.push(s)}if(o.length){var x=r.zrId+"-cls-"+Cte();r.cssNodes["."+x]={animation:o.join(",")},t.class=x}}function RFe(e,t,r){if(!e.ignore)if(e.isSilent()){var n={"pointer-events":"none"};Y6(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=rw(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),Y6(n,t,r)}}function Y6(e,t,r,n){var i=JSON.stringify(e),a=r.cssStyleCache[i];a||(a=r.zrId+"-cls-"+Cte(),r.cssStyleCache[i]=a,r.cssNodes["."+a+":hover"]=e),t.class=t.class?t.class+" "+a:a}var My=Math.round;function Pte(e){return e&&pe(e.src)}function Lte(e){return e&&Ae(e.toDataURL)}function Cj(e,t,r,n){CFe(function(i,a){var o=i==="fill"||i==="stroke";o&&HK(a)?Ite(t,e,i,n):o&&uN(a)?Ote(r,e,i,n):e[i]=a,o&&n.ssr&&a==="none"&&(e["pointer-events"]="visible")},t,r,!1),WFe(r,e,n)}function Mj(e,t){var r=eQ(t);r&&(r.each(function(n,i){n!=null&&(e[(W6+i).toLowerCase()]=n+"")}),t.isSilent()&&(e[W6+"silent"]="true"))}function X6(e){return Il(e[0]-1)&&Il(e[1])&&Il(e[2])&&Il(e[3]-1)}function BFe(e){return Il(e[4])&&Il(e[5])}function Pj(e,t,r){if(t&&!(BFe(t)&&X6(t))){var n=1e4;e.transform=X6(t)?"translate("+My(t[4]*n)/n+" "+My(t[5]*n)/n+")":xje(t)}}function q6(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.";_n(h,m),_n(d,m)}else if(h==null||d==null){var x=function(k,O){if(k){var D=k.elm,N=h||O.width,j=d||O.height;k.tag==="pattern"&&(u?(j=1,N/=a.width):c&&(N=1,j/=a.height)),k.attrs.width=N,k.attrs.height=j,D&&(D.setAttribute("width",N),D.setAttribute("height",j))}},_=yN(v,null,e,function(k){l||x(A,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=Ce(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=ZK(i);T&&(o.patternTransform=T);var A=Gr("pattern","",o,[f]),M=Aj(A),P=n.patternCache,I=P[M];I||(I=n.zrId+"-p"+n.patternIdx++,P[M]=I,o.id=I,A=n.defs[I]=Gr("pattern",I,o,[f])),t[r]=yT(I)}}function HFe(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,[kte(e,r)])}t["clip-path"]=yT(a)}function J6(e){return document.createTextNode(e)}function dc(e,t,r){e.insertBefore(t,r)}function eG(e,t){e.removeChild(t)}function tG(e,t){e.appendChild(t)}function Ete(e){return e.parentNode}function Dte(e){return e.nextSibling}function Z2(e,t){e.textContent=t}var rG=58,UFe=120,ZFe=Gr("","");function UI(e){return e===void 0}function vo(e){return e!==void 0}function YFe(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 xg(e,t){var r=e.key===t.key,n=e.tag===t.tag;return n&&r}function Py(e){var t,r=e.children,n=e.tag;if(vo(n)){var i=e.elm=Ate(n);if(Lj(ZFe,e),ae(r))for(t=0;ta?(v=r[l+1]==null?null:r[l+1].elm,Nte(e,v,r,i,l)):Ew(e,t,n,a))}function wh(e,t){var r=t.elm=e.elm,n=e.children,i=t.children;e!==t&&(Lj(e,t),UI(t.text)?vo(n)&&vo(i)?n!==i&&XFe(r,n,i):vo(i)?(vo(e.text)&&Z2(r,""),Nte(r,null,i,0,i.length-1)):vo(n)?Ew(r,n,0,n.length-1):vo(e.text)&&Z2(r,""):e.text!==t.text&&(vo(n)&&Ew(r,n,0,n.length-1),Z2(r,t.text)))}function qFe(e,t){if(xg(e,t))wh(e,t);else{var r=e.elm,n=Ete(r);Py(t),n!==null&&(dc(n,t.elm,Dte(r)),Ew(n,[e],0,0))}return t}var KFe=0,QFe=function(){function e(t,r,n){if(this.type="svg",this.refreshHover=nG(),this.configLayer=nG(),this.storage=r,this._opts=n=re({},n),this.root=t,this._id="zr"+KFe++,this._oldVNode=H6(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=Ate("svg");Lj(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",qFe(this._oldVNode,t),this._oldVNode=t}},e.prototype.renderOneToVNode=function(t){return Q6(t,HI(this._id))},e.prototype.renderToVNode=function(t){t=t||{};var r=this.storage.getDisplayList(!0),n=this._width,i=this._height,a=HI(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=JFe(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=IFe(a.cssNodes,a.cssAnims,{newline:!0});if(c){var f=Gr("style","stl",{},[],c);o.push(f)}}return H6(n,i,o,t.useViewBox)},e.prototype.renderToString=function(t){return t=t||{},Aj(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}}j.prevElClipPaths&&x.restore()};if(_)if(_.length===0)P=m.__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();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?l_:0),this._needsManuallyCompositing),c.__builtin__||dT("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&Si&&!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,B(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=K.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}(St);function nv(e,t){var r=e.mapDimensionsAll("defaultedLabel"),n=r.length;if(n===1){var i=Jd(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 g0=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=sVe,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(){Fs(this.childAt(0))},t.prototype.downplay=function(){Vs(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),pa(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,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=Mf(r.getItemVisual(n,"symbolOffset"),i);T&&(s.x=T[0],s.y=T[1]),x&&s.attr("cursor",x);var A=r.getItemVisual(n,"style"),M=A.fill;if(s instanceof Xr){var P=s.style;s.useStyle(re({image:P.image,x:P.x,y:P.y,width:P.width,height:P.height},A))}else s.__isEmptyBrush?s.useStyle(re({},A)):s.useStyle(A),s.style.decal=null,s.setColor(M,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;Ur(s,g,{labelFetcher:l,labelDataIndex:n,defaultText:D,inheritColor:M,defaultOpacity:A.opacity});function D(z){return O?r.getName(z):nv(r,z)}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 j=m==null||m===!0?Math.max(1.1,3/this._sizeY):isFinite(m)&&m>0?+m:1;N.scaleX=this._sizeX*j,N.scaleY=this._sizeY*j,this.setSymbolScale(1),Wt(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=De(this).dataIndex,s=i&&i.animation;if(this.silent=a.silent=!0,i&&i.fadeLabel){var l=a.getTextContent();l&&iu(l,{style:{opacity:0}},n,{dataIndex:o,removeOpt:s,cb:function(){a.removeTextContent()}})}else a.removeTextContent();iu(a,{style:{opacity:0},scaleX:0,scaleY:0},n,{dataIndex:o,cb:r,removeOpt:s})},t.getSymbolSize=function(r,n){return Wv(r.getItemVisual(n,"symbolSize"))},t.getSymbolZ2=function(r,n){return r.getItemVisual(n,"z2")},t}(Me);function sVe(e,t){this.parent.drift(e,t)}function X2(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 oG(e){return e!=null&&!Le(e)&&(e={isIgnore:e}),e||{}}function sG(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 m0=function(){function e(t){this.group=new Me,this._SymbolCtor=t||g0}return e.prototype.updateData=function(t,r){this._progressiveEls=null,r=oG(r);var n=this.group,i=t.hostModel,a=this._data,o=this._SymbolCtor,s=r.disableAnimation,l=sG(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(X2(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(!X2(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=sG(t),this._data=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r,n){this._progressiveEls=[],n=oG(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 Bte(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 uVe(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=uVe(e,t),u=[],c=[],f=[],h=[],d=[],v=[],g=[],m=Rte(i,t,o),x=e.getLayout("points")||[],_=t.getLayout("points")||[],b=0;b=i||g<0)break;if(Fc(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,A=t[T*2],M=t[T*2+1];A===x&&M===_&&m=n||Fc(A,M))d=x,v=_;else{k=A-u,O=M-c;var j=x-u,z=A-x,$=_-c,U=M-_,F=void 0,V=void 0;if(s==="x"){F=Math.abs(j),V=Math.abs(z);var W=k>0?1:-1;d=x-W*F*o,v=_,D=x+W*V*o,N=_}else if(s==="y"){F=Math.abs($),V=Math.abs(U);var Y=O>0?1:-1;d=x,v=_-Y*F*o,D=x,N=_+Y*V*o}else F=Math.sqrt(j*j+$*$),V=Math.sqrt(z*z+U*U),I=V/(V+F),d=x-k*o*(1-I),v=_-O*o*(1-I),D=x+k*o*I,N=_+O*o*I,D=ll(D,ul(A,x)),N=ll(N,ul(M,_)),D=ul(D,ll(A,x)),N=ul(N,ll(M,_)),k=D-x,O=N-_,d=x-k*F/V,v=_-O*F/V,d=ll(d,ul(u,x)),v=ll(v,ul(c,_)),d=ul(d,ll(u,x)),v=ul(v,ll(c,_)),k=x-d,O=_-v,D=x+k*V/F,N=_+O*V/F}e.bezierCurveTo(f,h,d,v,x,_),f=D,h=N}else e.lineTo(x,_)}u=x,c=_,g+=a}return m}var zte=function(){function e(){this.smooth=0,this.smoothConstraint=!0}return e}(),fVe=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:K.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new zte},t.prototype.buildPath=function(r,n){var i=n.points,a=0,o=i.length/2;if(n.connectNulls){for(;o>0&&Fc(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?ew(s,d,g,x,r,c):ew(l,v,m,_,r,c);if(T>0)for(var A=0;A=0){var S=u?$r(l,v,m,_,M):$r(s,d,g,x,M);return u?[r,S]:[S,r]}}s=x,l=_;break}}},t}(rt),hVe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t}(zte),$te=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 hVe},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&&Fc(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=vVe(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";B(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 Sf(0,0,0,0,h,!0);return _[i]=g,_[i+"2"]=m,_}}}function gVe(e,t,r){var n=e.get("showAllSymbol"),i=n==="auto";if(!(n&&!i)){var a=r.getAxesByScale("ordinal")[0];if(a&&!(i&&mVe(a,t))){var o=t.mapDimension(a.dim),s={};return B(a.getViewLabels(),function(l){var u=a.scale.getRawOrdinalNumber(l.tickValue);s[u]=1}),function(l){return!s.hasOwnProperty(t.get(o,l))}}}}function mVe(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 yVe(e,t){return isNaN(e)||isNaN(t)}function xVe(e){for(var t=e.length/2;t>0&&yVe(e[t*2-2],e[t*2-1]);t--);return t-1}function hG(e,t){return[e[t*2],e[t*2+1]]}function _Ve(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 Gte(e){if(e.get(["endLabel","show"]))return!0;for(var t=0;t0&&r.get(["emphasis","lineStyle","width"])==="bolder"){var V=v.getState("emphasis").style;V.lineWidth=+v.style.lineWidth+1}De(v).seriesIndex=r.seriesIndex,Wt(v,$,U,F);var W=fG(r.get("smooth")),Y=r.get("smoothMonotone");if(v.setShape({smooth:W,smoothMonotone:Y,connectNulls:M}),g){var Z=s.getCalculationInfo("stackedOnSeries"),J=0;g.useStyle(Pe(u.getAreaStyle(),{fill:D,opacity:.7,lineJoin:"bevel",decal:s.getVisual("style").decal})),Z&&(J=fG(Z.get("smooth"))),g.setShape({smooth:W,stackedOnSmooth:J,smoothMonotone:Y,connectNulls:M}),Dr(g,r,"areaStyle"),De(g).seriesIndex=r.seriesIndex,Wt(g,$,U,F)}var ne=this._changePolyState;s.eachItemGraphicEl(function(le){le&&(le.onHoverStateChange=ne)}),this._polyline.onHoverStateChange=ne,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){De(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=nf(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 g0(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 _t.prototype.highlight.call(this,r,n,i,a)},t.prototype.downplay=function(r,n,i,a){var o=r.getData(),s=nf(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 _t.prototype.downplay.call(this,r,n,i,a)},t.prototype._changePolyState=function(r){var n=this._polygon;fw(this._polyline,r),n&&fw(n,r)},t.prototype._newPolyline=function(r){var n=this._polyline;return n&&this._lineGroup.remove(n),n=new fVe({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 $te({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 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 A=i;a?(x=A.x,_=A.x+A.width,b=d.x):(x=A.y+A.height,_=A.y,b=d.y)}var M=_===x?0:(b-x)/(_-x);l&&(M=1-M);var P=Ae(f)?f(v):c*M+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(Gte(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=xVe(l);c>=0&&(Ur(s,Nr(r,"endLabel"),{inheritColor:i,labelFetcher:r,labelDataIndex:c,defaultText:function(f,h,d){return d!=null?jte(o,d):nv(o,f)},enableTextSetter:!0},bVe(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),A=(x?0:-g)*(_?-1:1),M=x?"x":"y",P=_Ve(f,S,M),I=P.range,k=I[1]-I[0],O=void 0;if(k>=1){if(k>1&&!d){var D=hG(f,I[0]);u.attr({x:D[0]+T,y:D[1]+A}),o&&(O=h.getRawValue(I[0]))}else{var D=c.getPointOn(S,M);D&&u.attr({x:D[0]+T,y:D[1]+A});var N=h.getRawValue(I[0]),j=h.getRawValue(I[1]);o&&(O=vQ(i,v,N,j,P.t))}a.lastFrameIndex=I[0]}else{var z=r===1||a.lastFrameIndex>0?I[0]:0,D=hG(f,z);o&&(O=h.getRawValue(z)),u.attr({x:D[0]+T,y:D[1]+A})}if(o){var $=Bv(u);typeof $.setLabelText=="function"&&$.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,g=h.next,m=h.stackedOnNext;if(o&&(v=cl(h.stackedOnCurrent,h.current,i,o,l),d=cl(h.current,null,i,o,l),m=cl(h.stackedOnNext,h.next,i,o,l),g=cl(h.next,null,i,o,l)),cG(d,g)>3e3||c&&cG(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=SVe[a]:Ae(a)&&(v=a),v&&t.setData(i.downSample(i.mapDimension(u.dim),1/d,v,TVe))}}}}}function AVe(e){e.registerChartView(wVe),e.registerSeriesModel(oVe),e.registerLayout(x0("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,Wte("line"))}var Ly=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 Yo(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)B(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=(A+_)/2;break}T===1&&(S=M-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}(St);St.registerClass(Ly);var CVe=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 Yo(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=_u(Ly.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:K.color.primary,borderWidth:2}},realtimeSort:!1}),t}(Ly),MVe=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}(),Dw=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 MVe},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){Cs(a,r,De(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}(_t),dG={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=K2(t.x,e.x),s=Q2(t.x+t.width,i),l=K2(t.y,e.y),u=Q2(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=Q2(t.r,e.r),a=K2(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}},vG={cartesian2d:function(e,t,r,n,i,a,o,s,l){var u=new Xe({shape:re({},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?Dw:bn,c=new u({shape:n,z2:1});c.name="item";var f=Hte(i);if(c.calculateTextPosition=PVe(f,{isRoundCap:u===Dw}),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 OVe(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:Nt)(r,{shape:l},t,i,null);var c=t?e.baseAxis.model:null;(o?lt:Nt)(r,{shape:u},c,i)}function gG(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 NVe(e){return e.startAngle!=null&&e.endAngle!=null&&e.startAngle===e.endAngle}function Hte(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 yG(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=Ao(n.getModel("itemStyle"),c,!0);re(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:nv(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,LVe(e,m==="outside"?d:m,Hte(o),n.get(["label","rotate"]))}tJ(g,v,a.getRawValue(r),function(_){return jte(t,_)});var x=n.getModel(["emphasis"]);Wt(e,x.get("focus"),x.get("blurScope"),x.get("disabled")),Dr(e,n),NVe(i)&&(e.style.fill="none",e.style.stroke="none",B(e.states,function(_){_.style&&(_.style.fill=_.style.stroke="none")}))}function jVe(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 RVe=function(){function e(){}return e}(),xG=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 RVe},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 BVe(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 Ute(e,t,r){if(au(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 zVe(e,t,r){var n=e.type==="polar"?bn:Xe;return new n({shape:Ute(t,r,e),silent:!0,z2:0})}function $Ve(e){e.registerChartView(IVe),e.registerSeriesModel(CVe),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,Fe(Xee,"bar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,qee("bar")),e.registerProcessor(e.PRIORITY.PROCESSOR.STATISTIC,Wte("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 wG=Math.PI*2,h_=Math.PI/180;function FVe(e,t,r){t.eachSeriesByType(e,function(n){var i=n.getData(),a=i.mapDimension("value"),o=xJ(n,r),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=o.viewRect,h=-n.get("startAngle")*h_,d=n.get("endAngle"),v=n.get("padAngle")*h_;d=d==="auto"?h-wG:-d*h_;var g=n.get("minAngle")*h_,m=g+v,x=0;i.each(a,function(U){!isNaN(U)&&x++});var _=i.getSum(a),b=Math.PI/(_||x)*2,S=n.get("clockwise"),T=n.get("roseType"),A=n.get("stillShowZeroSum"),M=i.getDataExtent(a);M[0]=0;var P=S?1:-1,I=[h,d],k=P*v/2;CT(I,!S),h=I[0],d=I[1];var O=Zte(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,j=0,z=h;if(i.setLayout({viewRect:f,r:u}),i.each(a,function(U,F){var V;if(isNaN(U)){i.setItemLayout(F,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:S,cx:s,cy:l,r0:c,r:T?NaN:u});return}T!=="area"?V=_===0&&A?b:U*b:V=D/x,VV?(Y=z+P*V/2,Z=Y):(Y=z+k,Z=W-k),i.setItemLayout(F,{angle:V,startAngle:Y,endAngle:Z,clockwise:S,cx:s,cy:l,r0:c,r:T?gt(U,M,[c,u]):u}),z=W}),Nr?x:m,T=Math.abs(b.label.y-r);if(T>=S.maxY){var A=b.label.x-t-b.len2*i,M=n+b.len,P=Math.abs(A)e.unconstrainedWidth?null:h:null;n.setStyle("width",d)}Xte(a,n)}}}function Xte(e,t){TG.rect=e,xte(TG,t,WVe)}var WVe={minMarginForce:[null,0,null,0],marginDefault:[1,0,1,0]},TG={};function J2(e){return e.position==="center"}function HVe(e){var t=e.getData(),r=[],n,i,a=!1,o=(e.get("minShowLabelAngle")||0)*VVe,s=t.getLayout("viewRect"),l=t.getLayout("r"),u=s.width,c=s.x,f=s.y,h=s.height;function d(A){A.ignore=!0}function v(A){if(!A.ignore)return!0;for(var M in A.states)if(A.states[M].ignore===!1)return!0;return!1}t.each(function(A){var M=t.getItemGraphicEl(A),P=M.shape,I=M.getTextContent(),k=M.getTextGuideLine(),O=t.getItemModel(A),D=O.getModel("label"),N=D.get("position")||O.get(["emphasis","label","position"]),j=D.get("distanceToLabelLine"),z=D.get("alignTo"),$=ve(D.get("edgeDistance"),u),U=D.get("bleedMargin");U==null&&(U=Math.min(u,h)>200?10:2);var F=O.getModel("labelLine"),V=F.get("length");V=ve(V,u);var W=F.get("length2");if(W=ve(W,u),Math.abs(P.endAngle-P.startAngle)0?"right":"left":Z>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 Vt=Z<0?-Y+Ge:-Y;Ye=Vt}else if(vt==="tangential"&&N!=="outside"&&N!=="outer"){var nr=Math.atan2(Z,J);nr<0&&(nr=Ge*2+nr);var jn=J>0;jn&&(nr=Ge+nr),Ye=nr-Ge}if(a=!!Ye,I.x=ne,I.y=le,I.rotation=Ye,I.setStyle({verticalAlign:"middle"}),xe){I.setStyle({align:ze});var Jn=I.states.select;Jn&&(Jn.x+=I.x,Jn.y+=I.y)}else{var qr=new Oe(0,0,0,0);Xte(qr,I),r.push({label:I,labelLine:k,position:N,len:V,len2:W,minTurnAngle:F.get("minTurnAngle"),maxSurfaceAngle:F.get("maxSurfaceAngle"),surfaceNormal:new Ie(Z,J),linePoints:fe,textAlign:ze,labelDistance:j,labelAlignTo:z,edgeDistance:$,bleedMargin:U,rect:qr,unconstrainedWidth:qr.width,labelStyleWidth:I.style.width})}M.setTextConfig({inside:xe})}}),!a&&e.get("avoidLabelOverlap")&&GVe(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}(_t);function Xv(e,t,r){t=ae(t)&&{coordDimensions:t}||re({encodeDefine:e.getEncode()},t);var n=e.getSource(),i=Hv(n,t).dimensions,a=new Dn(i,e);return a.initData(n,r),a}var qv=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}(),YVe=Je(),qte=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 qv(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 Xv(this,{coordDimensions:["value"],encodeDefaulter:Fe(qN,this)})},t.prototype.getDataParams=function(r){var n=this.getData(),i=YVe(n),a=i.seats;if(!a){var o=[];n.each(n.mapDimension("value"),function(l){o.push(l)}),a=i.seats=iQ(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){rf(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}(St);FBe({fullType:qte.type,getCoord2:function(e){return e.getShallow("center")}});function XVe(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 qVe(e){e.registerChartView(ZVe),e.registerSeriesModel(qte),cee("pie",e.registerAction),e.registerLayout(Fe(FVe,"pie")),e.registerProcessor(Yv("pie")),e.registerProcessor(XVe("pie"))}var KVe=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 Yo(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:K.color.primary}},universalTransition:{divideShape:"clone"}},t}(St),Kte=4,QVe=function(){function e(){}return e}(),JVe=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 QVe},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}(),t6e=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=x0("").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 e6e:new m0,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}(_t),Qte={left:0,right:0,top:0,bottom:0},Nw=["25%","25%"],r6e=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.mergeDefaultAndTheme=function(r,n){var i=Af(r.outerBounds);e.prototype.mergeDefaultAndTheme.apply(this,arguments),i&&r.outerBounds&&Fo(r.outerBounds,i)},t.prototype.mergeOption=function(r,n){e.prototype.mergeOption.apply(this,arguments),this.option.outerBounds&&r.outerBounds&&Fo(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:Qte,outerBoundsContain:"all",outerBoundsClampWidth:Nw[0],outerBoundsClampHeight:Nw[1],backgroundColor:K.color.transparent,borderWidth:1,borderColor:K.color.neutral30},t}(Qe),YI=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",tr).models[0]},t.type="cartesian2dAxis",t}(Qe);fr(YI,Zv);var Jte={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:K.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:K.color.axisLabel,textMargin:[0,3]},splitLine:{show:!0,showMinLine:!0,showMaxLine:!0,lineStyle:{color:K.color.axisSplitLine,width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:[K.color.backgroundTint,K.color.backgroundTransparent]}},breakArea:{show:!0,itemStyle:{color:K.color.neutral00,borderColor:K.color.border,borderWidth:1,borderType:[3,3],opacity:.6},zigzagAmplitude:4,zigzagMinSpan:4,zigzagMaxSpan:20,zigzagZ:100,expandOnClick:!0},breakLabelLayout:{moveOverlap:"auto"}},n6e=He({boundaryGap:!0,deduplication:null,jitter:0,jitterOverlap:!0,jitterMargin:2,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto",show:"auto"},axisLabel:{interval:"auto"}},Jte),kj=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:K.color.axisMinorSplitLine,width:1}}},Jte),i6e=He({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},kj),a6e=Pe({logBase:10},kj);const ere={category:n6e,value:kj,time:i6e,log:a6e};var o6e={value:1,category:1,time:1,log:1},XI=null;function s6e(e){XI||(XI=e)}function _0(){return XI}function iv(e,t,r,n){B(o6e,function(i,a){var o=He(He({},ere[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=xy(this),d=h?Af(c):{},v=f.getTheme();He(c,v.get(a+"Axis")),He(c,this.getDefaultOption()),c.type=AG(c),h&&Fo(c,d,h)},u.prototype.optionUpdated=function(){var c=this.option;c.type==="category"&&(this.__ordinalMeta=Ay.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=_0();return f?f.updateModelAxisBreak(this,c):{breaks:[]}},u.type=t+"Axis."+a,u.defaultOption=o,u}(r);e.registerComponentModel(s)}),e.registerSubTypeDefaulter(t+"Axis",AG)}function AG(e){return e.type||(e.data?"category":"value")}var l6e=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}(),qI=["x","y"];function CG(e){return(e.type==="interval"||e.type==="time")&&!e.hasBreaks()}var u6e=function(e){q(t,e);function t(){var r=e!==null&&e.apply(this,arguments)||this;return r.type="cartesian2d",r.dimensions=qI,r}return t.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var r=this.getAxis("x").scale,n=this.getAxis("y").scale;if(!(!CG(r)||!CG(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=da([],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 ur(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 ur(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}(l6e),tre=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}(_a),VT="expandAxisBreak",rre="collapseAxisBreak",nre="toggleAxisBreak",Ij="axisbreakchanged",c6e={type:VT,event:Ij,update:"update",refineEvent:Oj},f6e={type:rre,event:Ij,update:"update",refineEvent:Oj},h6e={type:nre,event:Ij,update:"update",refineEvent:Oj};function Oj(e,t,r,n){var i=[];return B(e,function(a){i=i.concat(a.eventBreaks)}),{eventContent:{breaks:i}}}function d6e(e){e.registerAction(c6e,t),e.registerAction(f6e,t),e.registerAction(h6e,t);function t(r,n){var i=[],a=ld(n,r);function o(s,l){B(a[s],function(u){var c=u.updateAxisBreaks(r);B(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 Ol=Math.PI,v6e=[[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]],av=Je(),ire=Je(),are=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 g6e(e,t,r,n){var i=r.axis,a=t.ensureRecord(r),o=[],s,l=Ej(e.axisName)&&rv(e.nameLocation);B(n,function(v){var g=Vo(v);if(!(!g||g.label.ignore)){o.push(g);var m=a.transGroup;l&&(m.transform?da(Wp,m.transform):i0(Wp),g.transform&&Fa(Wp,Wp,g.transform),Oe.copy(d_,g.localRect),d_.applyTransform(Wp),s?s.union(d_):Oe.copy(s=new Oe(0,0,0,0),d_))}});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 Wp=Wr(),d_=new Oe(0,0,0,0),ore=function(e,t,r,n,i,a){if(rv(e.nameLocation)){var o=a.stOccupiedRect;o&&sre(vFe({},o,a.transGroup.transform),n,i)}else lre(a.labelInfoList,a.dirVec,n,i)};function sre(e,t,r){var n=new Ie;$T(e,t,n,{direction:Math.atan2(r.y,r.x),bidirectional:!1,touchThreshold:.05})&&FI(t,n)}function lre(e,t,r,n){for(var i=Ie.dot(n,t)>=0,a=0,o=e.length;a0?"top":"bottom",a="center"):Xd(i-Ol)?(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}(),m6e=["axisLine","axisTickLabelEstimate","axisTickLabelDetermine","axisName"],y6e={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&&(ur(c,c,u),ur(f,f,u));var d=re({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())_0().buildAxisBreakLine(n,i,a,v);else{var g=new yr(re({shape:{x1:c[0],y1:c[1],x2:f[0],y2:f[1]}},v));Qd(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 _=Mf(n.get(["axisLine","symbolOffset"])||0,x),b=x[0],S=x[1];B([{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,A){if(m[A]!=="none"&&m[A]!=null){var M=xr(m[A],-b/2,-S/2,b,S,d.stroke,!0),P=T.r+T.offset,I=h?f:c;M.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(M)}})}}},axisTickLabelEstimate:function(e,t,r,n,i,a,o,s){var l=PG(t,i,s);l&&MG(e,t,r,n,i,a,o,Ya.estimate)},axisTickLabelDetermine:function(e,t,r,n,i,a,o,s){var l=PG(t,i,s);l&&MG(e,t,r,n,i,a,o,Ya.determine);var u=w6e(e,i,a,n);b6e(e,t.labelLayoutList,u),S6e(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(Ej(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(Ks(_,_,e.rotation));var b=n.get("nameRotate");b!=null&&(b=b*Ol/180);var S,T;rv(c)?S=Hn.innerTextLayout(e.rotation,b??e.rotation,f):(S=x6e(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 A=h.getFont(),M=n.get("nameTruncate",!0)||{},P=M.ellipsis,I=nn(e.raw.nameTruncateMaxWidth,M.maxWidth,T),k=s.nameMarginLevel||0,O=new at({x:m.x,y:m.y,rotation:S.rotation,silent:Hn.isLabelSilent(n),style:Mt(h,{text:u,font:A,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(Js({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,De(O).eventData=D}a.add(O),O.updateTransform(),t.nameEl=O;var N=l.nameLayout=Vo({label:O,priority:O.z2,defaultAttr:{ignore:O.ignore},marginDefault:rv(c)?v6e[k]:p6e[k]});if(l.nameLocation=c,i.add(O),O.decomposeTransform(),e.shouldNameMoveOverlap&&N){var j=r.ensureRecord(n);r.resolveAxisNameOverlap(e,r,n,N,x,j)}}}};function MG(e,t,r,n,i,a,o,s){cre(t)||T6e(e,t,i,s,n,o);var l=t.labelLayoutList;A6e(e,n,l,a),P6e(n,e.rotation,l);var u=e.optionHideOverlap;_6e(n,l,u),u&&_te(ht(l,function(c){return c&&!c.label.ignore})),g6e(e,r,n,l)}function x6e(e,t,r,n){var i=hN(r-e),a,o,s=n[0]>n[1],l=t==="start"&&!s||t!=="start"&&s;return Xd(i-Ol/2)?(o=l?"bottom":"top",a="center"):Xd(i-Ol*1.5)?(o=l?"top":"bottom",a="center"):(o="middle",iOl/2?a=l?"left":"right":a=l?"right":"left"),{rotation:i,textAlign:a,textVerticalAlign:o}}function _6e(e,t,r){if(nte(e.axis))return;function n(s,l,u){var c=Vo(t[l]),f=Vo(t[u]);if(!(!c||!f)){if(s===!1||c.suggestIgnore){_g(c.label);return}if(f.suggestIgnore){_g(f.label);return}var h=.1;if(!r){var d=[0,0,0,0];c=VI({marginForce:d},c),f=VI({marginForce:d},f)}$T(c,f,null,{touchThreshold:h})&&_g(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 b6e(e,t,r){e.showMinorTicks||B(t,function(n){if(n&&n.label.ignore)for(var i=0;iu[0]&&isFinite(v)&&isFinite(u[0]);)d=B2(d),v=u[1]-d*o;else{var m=e.getTicks().length-1;m>o&&(d=B2(d));var x=d*o;g=Math.ceil(u[1]/d)*d,v=mr(g-x),v<0&&u[0]>=0?(v=0,g=mr(x)):g>0&&u[1]<=0&&(g=0,v=-mr(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 kG=[[3,1],[0,2]],O6e=function(){function e(t,r,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=qI,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;NI(g)&&v.get("alignTicks")&&v.get("interval")==null?c.push(d):(cf(g,v),NI(g)&&(s=d))}c.length&&(s||(s=c.pop(),cf(s.scale,s.model)),B(c,function(m){fre(m.scale,m.model,s.scale)}))}}i(n.x),i(n.y);var a={};B(n.x,function(o){IG(n,"y",o,a)}),B(n.y,function(o){IG(n,"x",o,a)}),this.resize(this.model,r)},e.prototype.resize=function(t,r,n){var i=jr(t,r),a=this._rect=$t(t.getBoxLayoutParams(),i.refContainer),o=this._axesMap,s=this._coordsList,l=t.get("containLabel");if(QI(o,a),!n){var u=N6e(a,s,o,l,r),c=void 0;if(l)JI?(JI(this._axesList,a),QI(o,a)):c=DG(a.clone(),"axisLabel",null,a,o,u,i);else{var f=j6e(t,a,i),h=f.outerBoundsRect,d=f.parsedOuterBoundsContain,v=f.outerBoundsClamp;h&&(c=DG(h,d,v,a,o,u,i))}hre(a,o,Ya.determine,null,c,i)}B(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]}Le(t)&&(r=t.yAxisIndex,t=t.xAxisIndex);for(var i=0,a=this._coordsList;i0})==null;return sf(n,s,!0,!0,r),QI(i,n),l;function u(h){B(i[Re[h]],function(d){if(Cy(d.model)){var v=a.ensureRecord(d.model),g=v.labelInfoList;if(g)for(var m=0;m0&&!mn(d)&&d>1e-4&&(h/=d),h}}function N6e(e,t,r,n,i){var a=new are(R6e);return B(r,function(o){return B(o,function(s){if(Cy(s.model)){var l=!n;s.axisBuilder=k6e(e,t,s.model,i,a,l)}})}),a}function hre(e,t,r,n,i,a){var o=r===Ya.determine;B(t,function(u){return B(u,function(c){Cy(c.model)&&(I6e(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[Re[1-u]]=e[Tr[u]]<=a.refContainer[Tr[u]]*.5?0:1-u===1?2:1}B(t,function(u,c){return B(u,function(f){Cy(f.model)&&((n==="all"||o)&&f.axisBuilder.build({axisName:!0},{nameMarginLevel:s[c]}),o&&f.axisBuilder.build({axisLine:!0}))})})}function j6e(e,t,r){var n,i=e.get("outerBoundsMode",!0);i==="same"?n=t.clone():(i==null||i==="auto")&&(n=$t(e.get("outerBounds",!0)||Qte,r.refContainer));var a=e.get("outerBoundsContain",!0),o;a==null||a==="auto"||We(["all","axisLabel"],a)<0?o="all":o=a;var s=[sw(be(e.get("outerBoundsClampWidth",!0),Nw[0]),t.width),sw(be(e.get("outerBoundsClampHeight",!0),Nw[1]),t.height)];return{outerBoundsRect:n,parsedOuterBoundsContain:o,outerBoundsClamp:s}}var R6e=function(e,t,r,n,i,a){var o=r.axis.dim==="x"?"y":"x";ore(e,t,r,n,i,a),rv(e.nameLocation)||B(t.recordMap[o],function(s){s&&s.labelInfoList&&s.dirVec&&lre(s.labelInfoList,s.dirVec,n,i)})};function B6e(e,t){var r={axesInfo:{},seriesInvolved:!1,coordSysAxesInfo:{},coordSysMap:{}};return z6e(r,e,t),r.seriesInvolved&&F6e(r,e),r}function z6e(e,t,r){var n=t.getComponent("tooltip"),i=t.getComponent("axisPointer"),a=i.get("link",!0)||[],o=[];B(r.getCoordinateSystems(),function(s){if(!s.axisPointerEnabled)return;var l=ky(s.model),u=e.coordSysAxesInfo[l]={};e.coordSysMap[l]=s;var c=s.model,f=c.getModel("tooltip",n);if(B(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)&&B(v.baseAxes,Fe(g,d?"cross":!0,h)),d&&B(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&&!eO(b))){x==null&&(x=b.get("triggerTooltip")),b=m?$6e(_,f,i,t,m,x):b;var T=b.get("snap"),A=b.get("triggerEmphasis"),M=ky(_.model),P=x||T||_.type==="category",I=e.axesInfo[M]={key:M,axis:_,coordSys:s,axisPointerModel:b,triggerTooltip:x,triggerEmphasis:A,involveSeries:P,snap:T,useHandle:eO(b),seriesModels:[],linkGroup:null};u[M]=I,e.seriesInvolved=e.seriesInvolved||P;var k=V6e(a,_);if(k!=null){var O=o[k]||(o[k]={axesInfo:{}});O.axesInfo[M]=I,O.mapper=a[k].mapper,I.linkGroup=O}}}})}function $6e(e,t,r,n,i,a){var o=t.getModel("axisPointer"),s=["type","snap","lineStyle","shadowStyle","label","animation","animationDurationUpdate","animationEasingUpdate","z"],l={};B(s,function(h){l[h]=Ce(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 tt(l,r,n))}function F6e(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||B(e.coordSysAxesInfo[ky(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 V6e(e,t){for(var r=t.model,n=t.dim,i=0;i=0||e===t}function G6e(e){var t=Dj(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=eO(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 q6e=Je();function RG(e,t,r,n){if(e instanceof tre){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?yre(r,o,u,n):K6e(e,t,r,n,o,l):r}function yre(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 K6e(e,t,r,n,i,a){var o=q6e(e);o.items||(o.items=[]);var s=o.items,l=BG(s,t,r,n,i,a,1),u=BG(s,t,r,n,i,a,-1),c=Math.abs(l-r)i/2||f&&h>f/2-n?yre(r,i,f,n):(s.push({fixedCoord:t,floatCoord:c,r:n}),c)}function BG(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(Ce(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 Ae(c)&&(m.name=c(m.name,m));var _=new tt(m,null,this.ecModel);return fr(_,Zv.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:K.color.axisLabel},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:He({lineStyle:{color:K.color.neutral20}},Hp.axisLine),axisLabel:v_(Hp.axisLabel,!1),axisTick:v_(Hp.axisTick,!1),splitLine:v_(Hp.splitLine,!0),splitArea:v_(Hp.splitArea,!0),indicator:[]},t}(Qe),oGe=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});B(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 _(z,$,U){var F=U%$.length;return z[F]=z[F]||[],F}if(a==="circle")for(var b=i[0].getTicksCoords(),S=n.cx,T=n.cy,A=0;A3?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(!(FG(this._zr,"globalPan")||Up(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)&&($s(a.event),a.__ecRoamConsumed=!0,VG(r,n,i,a,o))},t}(ya);function Up(e){return e.__ecRoamConsumed}var vGe=Je();function GT(e){var t=vGe(e);return t.roam=t.roam||{},t.uniform=t.uniform||{},t}function Zp(e,t,r,n){for(var i=GT(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=Tre(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=rM[s];if(c&&ye(rM,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=UG[s];if(d&&ye(UG,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 qd({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});Wi(r,n),vi(t,n,this._defsUsePending,!1,!1),yGe(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(){rM={g:function(t,r){var n=new Me;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 Zo;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 yr;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 l0;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=XG(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=XG(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 Me;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 Me;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=$Q(n);return Wi(r,i),vi(t,i,this._defsUsePending,!1,!1),i.silent=!0,i}}}(),e}(),UG={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 Sf(t,r,n,i);return ZG(e,a),YG(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 MN(t,r,n);return ZG(e,i),YG(e,i),i}};function ZG(e,t){var r=e.getAttribute("gradientUnits");r==="userSpaceOnUse"&&(t.global=!0)}function YG(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={};Sre(r,a,a);var o=a.stopColor||r.getAttribute("stop-color")||"#000000",s=a.stopOpacity||r.getAttribute("stop-opacity");if(s){var l=En(o),u=l&&l[3];u&&(l[3]*=Ts(s),o=sa(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 XG(e){for(var t=HT(e),r=[],n=0;n0;a-=2){var o=n[a],s=n[a-1],l=HT(o);switch(i=i||Wr(),s){case"translate":Ua(i,i,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":mT(i,i,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":Ks(i,i,-parseFloat(l[0])*nM,[parseFloat(l[1]||"0"),parseFloat(l[2]||"0")]);break;case"skewX":var u=Math.tan(parseFloat(l[0])*nM);Fa(i,[1,0,u,1,0,0],i);break;case"skewY":var c=Math.tan(parseFloat(l[0])*nM);Fa(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 KG=/([^\s:;]+)\s*:\s*([^:;]+)/g;function Sre(e,t,r){var n=e.getAttribute("style");if(n){KG.lastIndex=0;for(var i;(i=KG.exec(n))!=null;){var a=i[1],o=ye(Rw,a)?Rw[a]:null;o&&(t[o]=i[2]);var s=ye(Bw,a)?Bw[a]:null;s&&(r[s]=i[2])}}}function TGe(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&&(Are(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 rW(e,t,r,n,i,a){e.data?e.data.setItemGraphicEl(a,t):De(t).eventData={componentType:"geo",componentIndex:i.componentIndex,geoIndex:i.componentIndex,name:r,region:n&&n.option||{}}}function nW(e,t,r,n,i){e.data||Js({el:t,componentModel:i,itemName:r,itemTooltipOption:n.get("tooltip")})}function iW(e,t,r,n,i){t.highDownSilentOnTouch=!!i.get("selectedMode");var a=n.getModel("emphasis"),o=a.get("focus");return Wt(t,o,a.get("blurScope"),a.get("disabled")),e.isGeo&&E5e(t,i,r),o}function aW(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(),B(e,function(l){s.lineStart();for(var u=0;u-1&&(i.style.stroke=i.style.fill,i.style.fill=K.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:K.color.tertiary},itemStyle:{borderWidth:.5,borderColor:K.color.border,areaColor:K.color.background},emphasis:{label:{show:!0,color:K.color.primary},itemStyle:{areaColor:K.color.highlight}},select:{label:{show:!0,color:K.color.primary},itemStyle:{color:K.color.highlight}},nameProperty:"name"},t}(St);function WGe(e,t){var r={};return B(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=$t(S,v),b=_J(e,b,g)}this.setViewRect(b.x,b.y,b.width,b.height),this.setCenter(e.get("center")),this.setZoom(e.get("zoom"))}function YGe(e,t){B(t.get("geoCoord"),function(r,n){e.addGeoCoord(n,r)})}var XGe=function(){function e(){this.dimensions=Mre}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 nO(l+s,l,re({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=uW,u.resize(o,r)}),t.eachSeries(function(o){d0({targetModel:o,coordSysType:"geo",coordSysProvider:function(){var s=o.subType==="map"?o.getHostGeoModel():o.getReferringComponents("geo",tr).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)}}),B(a,function(o,s){var l=se(o,function(c){return c.get("nameMap")}),u=new nO(s,s,re({nameMap:vT(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=uW,u.resize(o[0],r),B(o,function(c){c.coordinateSystem=u,YGe(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 tWe(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){nWe(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=iWe(e,i,e.parentNode.hierNode.defaultAncestor||n[0],t)}function rWe(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:sWe}function bg(e,t){return e-=Math.PI/2,{x:t*Math.cos(e),y:t*Math.sin(e)}}function nWe(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 iWe(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=iM(s),a=aM(a),s&&a;){i=iM(i),o=aM(o),i.hierNode.ancestor=e;var h=s.hierNode.prelim+f-a.hierNode.prelim-u+n(s,a);h>0&&(oWe(aWe(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&&!iM(i)&&(i.hierNode.thread=s,i.hierNode.modifier+=f-l),a&&!aM(o)&&(o.hierNode.thread=a,o.hierNode.modifier+=u-c,r=e)}return r}function iM(e){var t=e.children;return t.length&&e.isExpand?t[t.length-1]:e.hierNode.thread}function aM(e){var t=e.children;return t.length&&e.isExpand?t[0]:e.hierNode.thread}function aWe(e,t,r){return e.hierNode.ancestor.parentNode===t.parentNode?e.hierNode.ancestor:r}function oWe(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 sWe(e,t){return e.parentNode===t.parentNode?1:2}var lWe=function(){function e(){this.parentPoint=[],this.childPoints=[]}return e}(),uWe=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultStyle=function(){return{stroke:K.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new lWe},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 M=T?"left":"right",P=s.getModel("label"),I=P.get("rotate"),k=I*(Math.PI/180),O=m.getTextContent();O&&(m.setTextConfig({position:P.get("position")||M,rotation:I==null?-S:k,origin:"center"}),O.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),N=D==="relative"?Ud(o.getAncestorsIndices(),o.getDescendantIndices()):D==="ancestor"?o.getAncestorsIndices():D==="descendant"?o.getDescendantIndices():null;N&&(De(r).focus=N),fWe(i,o,c,r,v,d,g,n),r.__edge&&(r.onHoverStateChange=function(j){if(j!=="blur"){var z=o.parentNode&&e.getItemGraphicEl(o.parentNode.dataIndex);z&&z.hoverState===s0||fw(r.__edge,j)}})}function fWe(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 Nv({shape:iO(c,f,h,i,i)})),lt(g,{shape:iO(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 Ere(e){for(var t=[];e;)e=e.parentNode,e&&t.push(e);return t.reverse()}function Vj(e,t){var r=Ere(e);return We(r,t)>=0}function UT(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 _We=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 tt(i,this,this.ecModel),o=Fj.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=UT(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:K.color.borderTint,width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},t}(St);function bWe(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 wWe(e,t){e.eachSeriesByType("tree",function(r){SWe(r,t)})}function SWe(e,t){var r=jr(e,t).refContainer,n=$t(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){eWe(l),bWe(u,tWe,s),l.hierNode.modifier=-u.hierNode.prelim,qp(u,rWe);var c=u,f=u,h=u;qp(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),qp(u,function(S){x=(S.getLayout().x+v)*g,_=(S.depth-1)*m;var T=bg(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),qp(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),qp(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 TWe(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");re(s,o)})})}function AWe(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=WT(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}function CWe(e){e.registerChartView(cWe),e.registerSeriesModel(_We),e.registerLayout(wWe),e.registerVisual(TWe),AWe(e)}var pW=["treemapZoomToNode","treemapRender","treemapMove"];function MWe(e){for(var t=0;t1;)a=a.parentNode;var o=bI(e.ecModel,a.name||a.dataIndex+"",n);i.setVisual("decal",o)})}var PWe=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};Nre(i);var a=r.levels||[],o=this.designatedVisualItemStyle={},s=new tt({itemStyle:o},this,n);a=r.levels=LWe(a,n);var l=se(a||[],function(f){return new tt(f,s,n)},this),u=Fj.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 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=UT(i,this),n.treePathInfo=n.treeAncestors,n},t.prototype.setLayoutInfo=function(r){this.layoutInfo=this.layoutInfo||{},re(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(){Dre(this)},t.type="series.treemap",t.layoutMode="box",t.defaultOption={progressive:0,coordinateSystemUsage:"box",left:K.size.l,top:K.size.xxxl,right:K.size.l,bottom:K.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:K.size.m,emptyItemWidth:25,itemStyle:{color:K.color.backgroundShade,textStyle:{color:K.color.secondary}},emphasis:{itemStyle:{color:K.color.background}}},label:{show:!0,distance:0,padding:5,position:"inside",color:K.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:K.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}(St);function Nre(e){var t=0;B(e.children,function(n){Nre(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 LWe(e,t){var r=Pt(t.get("color")),n=Pt(t.get(["aria","decal","decals"]));if(r){e=e||[];var i,a;B(e,function(s){var l=new tt(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 kWe=8,gW=8,oM=5,IWe=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=$t(h,f);this._prepare(n,d,u),this._renderContent(t,d,v,s,l,u,c,i),ET(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+kWe*2,r.emptyItemWidth);r.totalWidth+=s+gW,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 wn({shape:{points:OWe(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:Ev*1e4,onclick:Fe(l,x)});S.disableLabelAnimation=!0,S.getTextContent().ensureState("emphasis").style=Mt(s,{text:b}),S.ensureState("emphasis").style=v,Wt(S,a.get("focus"),a.get("blurScope"),a.get("disabled")),this.group.add(S),EWe(S,t,x),u+=_+gW}},e.prototype.remove=function(){this.group.removeAll()},e}();function OWe(e,t,r,n,i,a){var o=[[i?e:e-oM,t],[e+r,t],[e+r,t+n],[i?e:e-oM,t+n]];return!a&&o.splice(2,0,[e+r+oM,t+n/2]),!i&&o.push([e,t+n/2]),o}function EWe(e,t,r){De(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&&UT(r,t)}}var DWe=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;iyW||Math.abs(r.dy)>yW)){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();Ua(m,m,[-n,-i]),mT(m,m,[v,v]),Ua(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&&pw(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 IWe(this.group))).render(r,n,i.node,function(o){a._state!=="animating"&&(Vj(r.getViewRoot(),o)?a._rootToNode({node:o}):a._zoomToNode({node:o}))})},t.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage=Kp(),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}(_t);function Kp(){return{nodeGroup:[],background:[],content:[]}}function $We(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,A=h.getModel("itemStyle"),M=h.getModel(["emphasis","itemStyle"]),P=h.getModel(["blur","itemStyle"]),I=h.getModel(["select","itemStyle"]),k=A.get("borderRadius")||0,O=le("nodeGroup",aO);if(!O)return;if(l.add(O),O.x=c.x||0,O.y=c.y||0,O.markRedraw(),zw(O).nodeWidth=d,zw(O).nodeHeight=v,c.isAboveViewRoot)return O;var D=le("background",mW,u,RWe);D&&W(O,D,T&&c.upperLabelHeight);var N=h.getModel("emphasis"),j=N.get("focus"),z=N.get("blurScope"),$=N.get("disabled"),U=j==="ancestor"?o.getAncestorsIndices():j==="descendant"?o.getDescendantIndices():j;if(T)gy(O)&&Cc(O,!1),D&&(Cc(D,!$),f.setItemGraphicEl(o.dataIndex,D),cI(D,U,z));else{var F=le("content",mW,u,BWe);F&&Y(O,F),D.disableMorphing=!0,D&&gy(D)&&Cc(D,!1),Cc(O,!$),f.setItemGraphicEl(o.dataIndex,O);var V=h.getShallow("cursor");V&&F.attr("cursor",V),cI(O,U,z)}return O;function W(xe,ie,he){var ue=De(ie);if(ue.dataIndex=o.dataIndex,ue.seriesIndex=e.seriesIndex,ie.setShape({x:0,y:0,width:d,height:v,r:k}),m)Z(ie);else{ie.invisible=!1;var ee=o.getVisual("style"),Ve=ee.stroke,Se=bW(A);Se.fill=Ve;var Ge=lc(M);Ge.fill=M.get("borderColor");var Ye=lc(P);Ye.fill=P.get("borderColor");var vt=lc(I);if(vt.fill=I.get("borderColor"),he){var Vt=d-2*g;J(ie,Ve,ee.opacity,{x:g,y:0,width:Vt,height:S})}else ie.removeTextContent();ie.setStyle(Se),ie.ensureState("emphasis").style=Ge,ie.ensureState("blur").style=Ye,ie.ensureState("select").style=vt,of(ie)}xe.add(ie)}function Y(xe,ie){var he=De(ie);he.dataIndex=o.dataIndex,he.seriesIndex=e.seriesIndex;var ue=Math.max(d-2*g,0),ee=Math.max(v-2*g,0);if(ie.culling=!0,ie.setShape({x:g,y:g,width:ue,height:ee,r:k}),m)Z(ie);else{ie.invisible=!1;var Ve=o.getVisual("style"),Se=Ve.fill,Ge=bW(A);Ge.fill=Se,Ge.decal=Ve.decal;var Ye=lc(M),vt=lc(P),Vt=lc(I);J(ie,Se,Ve.opacity,null),ie.setStyle(Ge),ie.ensureState("emphasis").style=Ye,ie.ensureState("blur").style=vt,ie.ensureState("select").style=Vt,of(ie)}xe.add(ie)}function Z(xe){!xe.invisible&&a.push(xe)}function J(xe,ie,he,ue){var ee=h.getModel(ue?_W:xW),Ve=Ir(h.get("name"),null),Se=ee.getShallow("show");Ur(xe,Nr(h,ue?_W:xW),{defaultText:Se?Ve:null,inheritColor:ie,defaultOpacity:he,labelFetcher:e,labelDataIndex:o.dataIndex});var Ge=xe.getTextContent();if(Ge){var Ye=Ge.style,vt=r0(Ye.padding||0);ue&&(xe.setTextConfig({layoutRect:ue}),Ge.disableLabelLayout=!0),Ge.beforeUpdate=function(){var nr=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!==nr||Ye.height!==jn)&&Ge.setStyle({width:nr,height:jn})},Ye.truncateMinChar=2,Ye.lineOverflow="truncate",ne(Ye,ue,c);var Vt=Ge.getState("emphasis");ne(Vt?Vt.style:null,ue,c)}}function ne(xe,ie,he){var ue=xe?xe.text:null;if(!ie&&he.isLeafRoot&&ue!=null){var ee=e.get("drillDownIcon",!0);xe.text=ee?ee+" "+ue:ue}}function le(xe,ie,he,ue){var ee=_!=null&&r[xe][_],Ve=i[xe];return ee?(r[xe][_]=null,fe(Ve,ee)):m||(ee=new ie,ee instanceof va&&(ee.z2=FWe(he,ue)),ze(Ve,ee)),t[xe][x]=ee}function fe(xe,ie){var he=xe[x]={};ie instanceof aO?(he.oldX=ie.x,he.oldY=ie.y):he.oldShape=re({},ie.shape)}function ze(xe,ie){var he=xe[x]={},ue=o.parentNode,ee=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),ee?(he.oldX=0,he.oldY=Se):he.oldShape={x:Ve,y:Se,width:0,height:0}}he.fadein=!ee}}function FWe(e,t){return e*jWe+t}var Oy=B,VWe=Le,$w=-1,Hr=function(){function e(t){var r=t.mappingMethod,n=t.type,i=this.option=Ce(t);this.type=n,this.mappingMethod=r,this._normalizeData=HWe[r];var a=e.visualHandlers[n];this.applyVisual=a.applyVisual,this.getColorMapper=a.getColorMapper,this._normalizedToVisual=a._normalizedToVisual[r],r==="piecewise"?(sM(i),GWe(i)):r==="category"?i.categories?WWe(i):sM(i,!0):(_n(r!=="linear"||i.dataExtent),sM(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){Le(t)?B(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&&Oy(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(VWe(t)){var r=[];Oy(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 sM(e,t){var r=e.visual,n=[];Le(r)?Oy(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]),jre(e,n)}function g_(e){return{applyVisual:function(t,r,n){var i=this.mapValueToVisual(t);n("color",e(r("color"),i))},_normalizedToVisual:oO([0,1])}}function wW(e){var t=this.option.visual;return t[Math.round(gt(e,[0,1],[0,t.length-1],!0))]||{}}function Qp(e){return function(t,r,n){n(e,this.mapValueToVisual(t))}}function wg(e){var t=this.option.visual;return t[this.option.loop&&e!==$w?e%t.length:e]}function uc(){return this.option.visual[0]}function oO(e){return{linear:function(t){return gt(t,e,this.option.visual,!0)},category:wg,piecewise:function(t,r){var n=sO.call(this,r);return n==null&&(n=gt(t,e,this.option.visual,!0)),n},fixed:uc}}function sO(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 jre(e,t){return e.visual=t,e.type==="color"&&(e.parsedVisual=se(t,function(r){var n=En(r);return n||[0,0,0,1]})),t}var HWe={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??$w},fixed:lr};function m_(e,t,r){return e?t<=r:t=r.length||g===r[g.depth]){var x=KWe(i,l,g,m,v,n);Bre(g,x,r,n)}})}}}function YWe(e,t,r){var n=re({},t),i=r.designatedVisualItemStyle;return B(["color","colorAlpha","colorSaturation"],function(a){i[a]=t[a];var o=e.get(a);i[a]=null,o!=null&&(n[a]=o)}),n}function SW(e){var t=lM(e,"color");if(t){var r=lM(e,"colorAlpha"),n=lM(e,"colorSaturation");return n&&(t=As(t,null,null,n)),r&&(t=fy(t,r)),t}}function XWe(e,t){return t!=null?As(t,null,null,e):null}function lM(e,t){var r=e[t];if(r!=null&&r!=="none")return r}function qWe(e,t,r,n,i,a){if(!(!a||!a.length)){var o=uM(t,"color")||i.color!=null&&i.color!=="none"&&(uM(t,"colorAlpha")||uM(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 Rre(h).drColorMappingBy=c,h}}}function uM(e,t){var r=e.get(t);return ae(r)&&r.length?{name:t,range:r}:null}function KWe(e,t,r,n,i,a){var o=re({},t);if(i){var s=i.type,l=s==="color"&&Rre(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 Ey=Math.max,Fw=Math.min,TW=nn,Gj=B,zre=["itemStyle","borderWidth"],QWe=["itemStyle","gapWidth"],JWe=["upperLabel","show"],eHe=["upperLabel","height"];const tHe={seriesType:"treemap",reset:function(e,t,r,n){var i=e.option,a=jr(e,r).refContainer,o=$t(e.getBoxLayoutParams(),a),s=i.size||[],l=ve(TW(o.width,s[0]),a.width),u=ve(TW(o.height,s[1]),a.height),c=n&&n.type,f=["treemapZoomToNode","treemapRootToNode"],h=Iy(n,f,e),d=c==="treemapRender"||c==="treemapMove"?n.rootRect:null,v=e.getViewRoot(),g=Ere(v);if(c!=="treemapMove"){var m=c==="treemapZoomToNode"?sHe(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),$re(v,_,!1,0),b=v.getLayout(),Gj(g,function(T,A){var M=(g[A+1]||v).getValue();T.setLayout(re({dataExtent:[M,M],borderWidth:0,upperHeight:0},b))})}var S=e.getData().tree.root;S.setLayout(lHe(o,d,h),!0),e.setLayoutInfo(o),Fre(S,new Oe(-o.x,-o.y,r.getWidth(),r.getHeight()),g,v,0)}};function $re(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(zre),u=s.get(QWe)/2,c=Vre(s),f=Math.max(l,c),h=l-u,d=f-u;e.setLayout({borderWidth:l,upperHeight:f,upperLabelHeight:c},!0),i=Ey(i-2*h,0),a=Ey(a-h-d,0);var v=i*a,g=rHe(e,s,v,t,r,n);if(g.length){var m={x:h,y:d,width:i,height:a},x=Fw(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 oHe(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?Ey(u*n/l,l/(u*i)):1/0}function AW(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;fJk&&(u=Jk),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 M=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*M+c[0],a.y=c[1]+I,v=S[0]<0?"right":"left",a.originX=-x*M,a.originY=-I;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":a.x=A[0],a.y=A[1]+I,v="center",a.originY=-I;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":a.x=-x*M+f[0],a.y=f[1]+I,v=S[0]>=0?"right":"left",a.originX=x*M,a.originY=-I;break}a.scaleX=a.scaleY=o,a.setStyle({verticalAlign:a.__verticalAlign||g,align:a.__align||v})}},t}(Me),Yj=function(){function e(t){this.group=new Me,this._LineCtor=t||Zj}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=IW(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=IW(t),this._lineData=null,this.group.removeAll()},e.prototype.incrementalUpdate=function(t,r){this._progressiveEls=[];function n(s){!s.isGroup&&!AHe(s)&&(s.incremental=!0,s.ensureState("emphasis").hoverLayer=!0)}for(var i=t.start;i0}function IW(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 OW(e){return isNaN(e[0])||isNaN(e[1])}function vM(e){return e&&!OW(e[0])&&!OW(e[1])}var pM=[],gM=[],mM=[],uh=rn,yM=Hl,EW=Math.abs;function DW(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){pM[0]=uh(n[0],i[0],a[0],c),pM[1]=uh(n[1],i[1],a[1],c);var f=EW(yM(pM,t)-l);f=0?s=s+u:s=s-u:v>=0?s=s-u:s=s+u}return s}function xM(e,t){var r=[],n=uy,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=[Io(u[0]),Io(u[1])],u[2]&&u.__original.push(Io(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=Tg(s.node1),v=DW(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=Tg(s.node2),v=DW(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]),Pl(o,a[1],a[0]),wf(o,o),c&&c!=="none"){var d=Tg(s.node1);X1(a[0],a[0],o,d*t)}if(f&&f!=="none"){var d=Tg(s.node2);X1(a[1],a[1],o,-d*t)}Pn(u[0],a[0]),Pn(u[1],a[1])}})}var Xre=Je();function CHe(e){if(e)return Xre(e).bridge}function NW(e,t){e&&(Xre(e).bridge=t)}function jW(e){return e.type==="view"}var MHe=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 m0,a=new Yj,o=this.group,s=new Me;this._controller=new Lf(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(jW(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)}xM(r.getGraph(),Sg(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,A=S.getGraphicEl(),M=S.getModel();if(A){A.off("drag").off("dragend");var P=M.get("draggable");P&&A.on("drag",function(k){switch(m){case"force":v.warmUp(),!a._layouting&&a._startForceLayoutIteration(v,i,g),v.setFixed(T),h.setItemLayout(T,[A.x,A.y]);break;case"circular":h.setItemLayout(T,[A.x,A.y]),S.setLayout({fixed:!0},!0),Uj(r,"symbolSize",S,[k.offsetX,k.offsetY]),a.updateLayout(r);break;case"none":default:h.setItemLayout(T,[A.x,A.y]),Hj(r.getGraph(),r),a.updateLayout(r);break}}).on("dragend",function(){v&&v.setUnfixed(T)}),A.setDraggable(P,!!M.get("cursor"));var I=M.get(["emphasis","focus"]);I==="adjacency"&&(De(A).focus=S.getAdjacentDataIndices())}}),h.graph.eachEdge(function(S){var T=S.getGraphicEl(),A=S.getModel().get(["emphasis","focus"]);T&&A==="adjacency"&&(De(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){Ure(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(!jW(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&&(jj(this._controllerHost,i.dx,i.dy),this._updateThumbnailWindow())},t.prototype.updateViewOnZoom=function(r,n,i){this._active&&(Rj(this._controllerHost,i.zoom,i.originX,i.originY),this._updateNodeAndLinkScale(),xM(r.getGraph(),Sg(r)),this._lineDraw.updateLayout(),n.updateLabelLayout(),this._updateThumbnailWindow())},t.prototype._updateNodeAndLinkScale=function(){var r=this._model,n=r.getData(),i=Sg(r);n.eachItemGraphicEl(function(a,o){a&&a.setSymbolScale(i)})},t.prototype.updateLayout=function(r){this._active&&(xM(r.getGraph(),Sg(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=CHe(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 cc||(r=this._nodesMap[ch(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}(),qre=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 Kre(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)}}}fr(cc,Kre("hostGraph","data"));fr(qre,Kre("hostGraph","edgeData"));function Xj(e,t,r,n,i){for(var a=new PHe(n),o=0;o "+h)),u++)}var d=r.get("coordinateSystem"),v;if(d==="cartesian2d"||d==="polar"||d==="matrix")v=Yo(e,r);else{var g=Fv.get(d),m=g?g.dimensions||[]:[];We(m,"value")<0&&m.concat(["value"]);var x=Hv(e,{coordDimensions:m,encodeDefine:r.getEncode()}).dimensions;v=new Dn(x,r),v.initData(e)}var _=new Dn(["value"],r);return _.initData(l,s),i&&i(v,_),Ire({mainData:v,struct:a,structAttr:"graph",datas:{node:v,edge:_},datasAttr:{node:"data",edge:"edgeData"}}),a.update(),a}var LHe=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 qv(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),rf(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){pHe(this);var s=Xj(a,i,this,!0,l);return B(s.edges,function(u){gHe(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=tt.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),Ar("nameValue",{name:c.join(" > "),value:o.value,noValue:o.value==null})}var f=eee({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:re({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:K.color.neutral50,width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:K.color.primary}}},t}(St);function kHe(e){e.registerChartView(MHe),e.registerSeriesModel(LHe),e.registerProcessor(cHe),e.registerVisual(fHe),e.registerVisual(hHe),e.registerLayout(mHe),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,xHe),e.registerLayout(bHe),e.registerCoordinateSystem("graphView",{dimensions:kf.dimensions,create:SHe}),e.registerAction({type:"focusNodeAdjacency",event:"focusNodeAdjacency",update:"series:focusNodeAdjacency"},lr),e.registerAction({type:"unfocusNodeAdjacency",event:"unfocusNodeAdjacency",update:"series:unfocusNodeAdjacency"},lr),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=WT(o,t,i.get("scaleLimit"));i.setCenter&&i.setCenter(s.center),i.setZoom&&i.setZoom(s.zoom)})})}var RW=function(e){q(t,e);function t(r,n,i){var a=e.call(this)||this;De(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=re(Ao(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=re(Ao(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");Wt(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,A,M){return r.getFormattedLabel(_,b,"node",T,fi(A,f.normal&&f.normal.get("formatter"),n.get("name")),M)}},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}(bn),IHe=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;return De(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=re(Ao(c.getModel("itemStyle"),u,!0),u),m=this;if(isNaN(g.sStartAngle)||isNaN(g.tStartAngle)){m.setShape(g);return}o?(m.setShape(g),BW(m,l,r,h)):(pa(m),BW(m,l,r,h),lt(m,{shape:g},s,i)),Wt(this,v==="adjacency"?l.getAdjacentDataIndices():v,d.get("blurScope"),d.get("disabled")),Dr(m,f,"lineStyle"),n.setItemGraphicEl(l.dataIndex,m)},t}(rt);function BW(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 Sf(f,h,d,v,[{offset:0,color:l},{offset:1,color:u}],!0)}break}}var OHe=Math.PI/180,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.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")*OHe;if(a.diff(o).add(function(c){var f=a.getItemLayout(c);if(f){var h=new RW(a,c,l);De(h).dataIndex=c,s.add(h)}}).update(function(c,f){var h=o.getItemGraphicEl(f),d=a.getItemLayout(c);if(!d){h&&Cs(h,r,f);return}h?h.updateData(a,c,l):h=new RW(a,c,l),s.add(h)}).remove(function(c){var f=o.getItemGraphicEl(c);f&&Cs(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()),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 IHe(i,a,l,n);De(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&&Cs(u,r,l)}).execute(),this._edgeData=a},t.prototype.dispose=function(){},t.type="chord",t}(_t),DHe=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 qv(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=Xj(a,i,this,!0,s);return o.data}function s(l,u){var c=tt.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),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}(St),_M=Math.PI/180;function NHe(e,t){e.eachSeriesByType("chord",function(r){jHe(r,t)})}function jHe(e,t){var r=e.getData(),n=r.graph,i=e.getEdgeData(),a=i.count();if(a){var o=xJ(e,t),s=o.cx,l=o.cy,u=o.r,c=o.r0,f=Math.max((e.get("padAngle")||0)*_M,0),h=Math.max((e.get("minAngle")||0)*_M,0),d=-e.get("startAngle")*_M,v=d+Math.PI*2,g=e.get("clockwise"),m=g?1:-1,x=[d,v];CT(x,!g);var _=x[0],b=x[1],S=b-_,T=r.getSum("value")===0&&i.getSum("value")===0,A=[],M=0;n.eachEdge(function(F){var V=T?1:F.getValue("value");T&&(V>0||h)&&(M+=2);var W=F.node1.dataIndex,Y=F.node2.dataIndex;A[W]=(A[W]||0)+V,A[Y]=(A[Y]||0)+V});var P=0;if(n.eachNode(function(F){var V=F.getValue("value");isNaN(V)||(A[F.dataIndex]=Math.max(V,A[F.dataIndex]||0)),!T&&(A[F.dataIndex]>0||h)&&M++,P+=A[F.dataIndex]||0}),!(M===0||P===0)){f*M>=Math.abs(S)&&(f=Math.max(0,(Math.abs(S)-h*M)/M)),(f+h)*M>=Math.abs(S)&&(h=(Math.abs(S)-f*M)/M);var I=(S-f*M*m)/P,k=0,O=0,D=0;n.eachNode(function(F){var V=A[F.dataIndex]||0,W=I*(P?V:1)*m;Math.abs(W)O){var j=k/O;n.eachNode(function(F){var V=F.getLayout().angle;Math.abs(V)>=h?F.setLayout({angle:V*j,ratio:j},!0):F.setLayout({angle:h,ratio:h===0?1:V/h},!0)})}else n.eachNode(function(F){if(!N){var V=F.getLayout().angle,W=Math.min(V/D,1),Y=W*k;V-Yh&&h>0){var W=N?1:Math.min(V/D,1),Y=V-h,Z=Math.min(Y,Math.min(z,k*W));z-=Z,F.setLayout({angle:V-Z,ratio:(V-Z)/V},!0)}else h>0&&F.setLayout({angle:h,ratio:V===0?1:h/V},!0)}});var $=_,U=[];n.eachNode(function(F){var V=Math.max(F.getLayout().angle,h);F.setLayout({cx:s,cy:l,r0:c,r:u,startAngle:$,endAngle:$+V*m,clockwise:g},!0),U[F.dataIndex]=$,$+=(V+f)*m}),n.eachEdge(function(F){var V=T?1:F.getValue("value"),W=I*(P?V:1)*m,Y=F.node1.dataIndex,Z=U[Y]||0,J=Math.abs((F.node1.getLayout().ratio||1)*W),ne=Z+J*m,le=[s+c*Math.cos(Z),l+c*Math.sin(Z)],fe=[s+c*Math.cos(ne),l+c*Math.sin(ne)],ze=F.node2.dataIndex,xe=U[ze]||0,ie=Math.abs((F.node2.getLayout().ratio||1)*W),he=xe+ie*m,ue=[s+c*Math.cos(xe),l+c*Math.sin(xe)],ee=[s+c*Math.cos(he),l+c*Math.sin(he)];F.setLayout({s1:le,s2:fe,sStartAngle:Z,sEndAngle:ne,t1:ue,t2:ee,tStartAngle:xe,tEndAngle:he,cx:s,cy:l,r:c,value:V,clockwise:g}),U[Y]=ne,U[ze]=he})}}}function RHe(e){e.registerChartView(EHe),e.registerSeriesModel(DHe),e.registerLayout(e.PRIORITY.VISUAL.POST_CHART_LAYOUT,NHe),e.registerProcessor(Yv("chord"))}var BHe=function(){function e(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0}return e}(),zHe=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 BHe},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}(rt);function $He(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 x_(e,t){var r=e==null?"":e+"";return t&&(pe(t)?r=t.replace("{value}",r):Ae(t)&&(r=t(e))),r}var FHe=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=$He(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?Dw:bn,v=f.get("show"),g=f.getModel("lineStyle"),m=g.get("width"),x=[u,c];CT(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&&(ne+=Math.PI)):J==="tangential"?ne=-P-Math.PI/2:ot(J)&&(ne=J*Math.PI/180),ne===0?f.add(new at({style:Mt(b,{text:V,x:Y,y:Z,verticalAlign:z<-.8?"top":z>.8?"bottom":"middle",align:j<-.4?"left":j>.4?"right":"center"},{inheritColor:W}),silent:!0})):f.add(new at({style:Mt(b,{text:V,x:Y,y:Z,verticalAlign:"middle",align:"center"},{inheritColor:W}),silent:!0,originX:Y,originY:Z,rotation:ne}))}if(_.get("show")&&$!==S){var U=_.get("distance");U=U?U+c:c;for(var le=0;le<=T;le++){j=Math.cos(P),z=Math.sin(P);var fe=new yr({shape:{x1:j*(v-U)+h,y1:z*(v-U)+d,x2:j*(v-M-U)+h,y2:z*(v-M-U)+d},silent:!0,style:D});D.stroke==="auto"&&fe.setStyle({stroke:a(($+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"),A=[S,T],M=[s,l];function P(k,O){var D=_.getItemModel(k),N=D.getModel("pointer"),j=ve(N.get("width"),o.r),z=ve(N.get("length"),o.r),$=r.get(["pointer","icon"]),U=N.get("offsetCenter"),F=ve(U[0],o.r),V=ve(U[1],o.r),W=N.get("keepAspect"),Y;return $?Y=xr($,F-j/2,V-z,j,z,null,W):Y=new zHe({shape:{angle:-Math.PI/2,width:j,r:z,x:F,y:V}}),Y.rotation=-(O+Math.PI/2),Y.x=o.cx,Y.y=o.cy,Y}function I(k,O){var D=m.get("roundCap"),N=D?Dw:bn,j=m.get("overlap"),z=j?m.get("width"):c/_.count(),$=j?o.r-z:o.r-(k+1)*z,U=j?o.r:o.r-k*z,F=new N({shape:{startAngle:s,endAngle:O,cx:o.cx,cy:o.cy,clockwise:u,r0:$,r:U}});return j&&(F.z2=gt(_.get(b,k),[S,T],[100,0],!0)),F}(x||g)&&(_.diff(h).add(function(k){var O=_.get(b,k);if(g){var D=P(k,s);Nt(D,{rotation:-((isNaN(+O)?M[0]:gt(O,A,M,!0))+Math.PI/2)},r),f.add(D),_.setItemGraphicEl(k,D)}if(x){var N=I(k,s),j=m.get("clip");Nt(N,{shape:{endAngle:gt(O,A,M,j)}},r),f.add(N),oI(r.seriesIndex,_.dataType,k,N),v[k]=N}}).update(function(k,O){var D=_.get(b,k);if(g){var N=h.getItemGraphicEl(O),j=N?N.rotation:s,z=P(k,j);z.rotation=j,lt(z,{rotation:-((isNaN(+D)?M[0]:gt(D,A,M,!0))+Math.PI/2)},r),f.add(z),_.setItemGraphicEl(k,z)}if(x){var $=d[O],U=$?$.shape.endAngle:s,F=I(k,U),V=m.get("clip");lt(F,{shape:{endAngle:gt(D,A,M,V)}},r),f.add(F),oI(r.seriesIndex,_.dataType,k,F),v[k]=F}}).execute(),_.each(function(k){var O=_.getItemModel(k),D=O.getModel("emphasis"),N=D.get("focus"),j=D.get("blurScope"),z=D.get("disabled");if(g){var $=_.getItemGraphicEl(k),U=_.getItemVisual(k,"style"),F=U.fill;if($ instanceof Xr){var V=$.style;$.useStyle(re({image:V.image,x:V.x,y:V.y,width:V.width,height:V.height},U))}else $.useStyle(U),$.type!=="pointer"&&$.setColor(F);$.setStyle(O.getModel(["pointer","itemStyle"]).getItemStyle()),$.style.fill==="auto"&&$.setStyle("fill",a(gt(_.get(b,k),A,[0,1],!0))),$.z2EmphasisLift=0,Dr($,O),Wt($,N,j,z)}if(x){var W=v[k];W.useStyle(_.getItemVisual(k,"style")),W.setStyle(O.getModel(["progress","itemStyle"]).getItemStyle()),W.z2EmphasisLift=0,Dr(W,O),Wt(W,N,j,z)}}),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)),A=_.getModel("title");if(A.get("show")){var M=A.get("offsetCenter"),P=o.cx+ve(M[0],o.r),I=o.cy+ve(M[1],o.r),k=d[x];k.attr({z2:m?0:2,style:Mt(A,{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+ve(D[0],o.r),j=o.cy+ve(D[1],o.r),z=ve(O.get("width"),o.r),$=ve(O.get("height"),o.r),U=r.get(["progress","show"])?l.getItemVisual(x,"style").fill:T,k=v[x],F=O.get("formatter");k.attr({z2:m?0:2,style:Mt(O,{x:N,y:j,text:x_(b,F),width:isNaN(z)?null:z,height:isNaN($)?null:$,align:"center",verticalAlign:"middle"},{inheritColor:U})}),tJ(k,{normal:O},b,function(W){return x_(W,F)}),g&&rJ(k,x,l,r,{getFormattedLabel:function(W,Y,Z,J,ne,le){return x_(le?le.interpolatedValue:b,F)}}),S.add(k)}h.add(S)}),this.group.add(h),this._titleEls=d,this._detailEls=v},t.type="gauge",t}(_t),VHe=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 Xv(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,K.color.neutral10]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:K.color.axisTick,width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:K.color.axisTickMinor,width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:K.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:K.color.neutral00,borderWidth:0,borderColor:K.color.theme[0]}},title:{show:!0,offsetCenter:[0,"20%"],color:K.color.secondary,fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:K.color.transparent,borderWidth:0,borderColor:K.color.neutral40,width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:K.color.primary,fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},t}(St);function GHe(e){e.registerChartView(FHe),e.registerSeriesModel(VHe)}var WHe=["itemStyle","opacity"],HHe=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(WHe);c=c??1,i||pa(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),Dr(a,s),this._updateLabel(r,n),Wt(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}),wj(i,Sj(l),{stroke:h})},t}(wn),UHe=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 HHe(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);Cs(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}(_t),ZHe=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 qv(ge(this.getData,this),ge(this.getRawData,this)),this._defaultLabelLine(r)},t.prototype.getInitialData=function(r,n){return Xv(this,{coordDimensions:["value"],encodeDefaulter:Fe(qN,this)})},t.prototype._defaultLabelLine=function(r){rf(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:K.color.neutral00,borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:K.color.primary}}},t}(St);function YHe(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();oc8e)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||!wM(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 wM(e,t){var r=e._model;return r.get("axisExpandable")&&r.get("axisExpandTriggerOn")===t}var d8e=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){B(["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);B(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}(Qe),v8e=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}(_a);function ou(e,t,r,n,i,a){e=e||0;var o=r[1]-r[0];if(i!=null&&(i=fh(i,[0,o])),a!=null&&(a=Math.max(a,i??0)),n==="all"){var s=Math.abs(t[1]-t[0]);s=fh(s,[0,o]),i=a=fh(s,[i,a]),n=0}t[0]=fh(t[0],r),t[1]=fh(t[1],r);var l=SM(t,n);t[n]+=e;var u=i||0,c=r.slice();l.sign<0?c[0]+=u:c[1]-=u,t[n]=fh(t[n],c);var f;return f=SM(t,n),i!=null&&(f.sign!==l.sign||f.spana&&(t[1-n]=t[n]+f.sign*a),t}function SM(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 fh(e,t){return Math.min(t[1]!=null?t[1]:1/0,Math.max(t[0]!=null?t[0]:-1/0,e))}var TM=B,Jre=Math.min,ene=Math.max,FW=Math.floor,p8e=Math.ceil,VW=mr,g8e=Math.PI,m8e=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;TM(i,function(o,s){var l=a[s],u=r.getComponent("parallelAxis",l),c=this._axesMap.set(o,new v8e(o,p0(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();TM(this.dimensions,function(a){var o=this._axesMap.get(a);o.scale.unionExtentFromData(i,i.mapDimension(a)),cf(o.scale,o.model)},this)}},this)},e.prototype.resize=function(t,r){var n=jr(t,r).refContainer;this._rect=$t(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=__(t.get("axisExpandWidth"),l),f=__(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=__(d[1]-d[0],l),d[1]=d[0]+v;else{v=__(c*(f-1),l);var g=t.get("axisExpandCenter")||FW(u/2);d=[c*g-v/2],d[1]=d[0]+v}var m=(s-v)/(u-f);m<3&&(m=0);var x=[FW(VW(d[0]/c,1))+1,p8e(VW(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])}),TM(n,function(o,s){var l=(i.axisExpandable?x8e:y8e)(s,i),u={horizontal:{x:l.position,y:i.axisLength},vertical:{x:0,y:l.position}},c={horizontal:g8e/2,vertical:0},f=[u[a].x+t.x,u[a].y+t.y],h=c[a],d=Wr();Ks(d,d,h),Ua(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=[];B(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?ou(l,i,o,"all"):u="none";else{var d=i[1]-i[0],v=o[1]*s/d;i=[ene(0,v-d/2)],i[1]=Jre(o[1],i[0]+d),i[0]=i[1]-d}return{axisExpandWindow:i,behavior:u}},e}();function __(e,t){return Jre(ene(e,t[0]),t[1])}function y8e(e,t){var r=t.layoutLength/(t.axisCount-1);return{position:r*e,axisNameAvailableWidth:r,axisLabelShow:!0}}function x8e(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--)Mi(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;aT8e}function one(e){var t=e.length-1;return t<0&&(t=0),[e[0],e[t]]}function sne(e,t,r,n){var i=new Me;return i.add(new Xe({name:"main",style:eR(r),silent:!0,draggable:!0,cursor:"move",drift:Fe(HW,e,t,i,["n","s","w","e"]),ondragend:Fe(hf,t,{isEnd:!0})})),B(n,function(a){i.add(new Xe({name:a.join(""),style:{opacity:0},draggable:!0,silent:!0,invisible:!0,drift:Fe(HW,e,t,i,a),ondragend:Fe(hf,t,{isEnd:!0})}))}),i}function lne(e,t,r,n){var i=n.brushStyle.lineWidth||0,a=ov(i,A8e),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;is(e,t,"main",o,s,v,g),n.transformable&&(is(e,t,"w",l,u,a,x),is(e,t,"e",h,u,a,x),is(e,t,"n",l,u,m,a),is(e,t,"s",l,d,m,a),is(e,t,"nw",l,u,a,a),is(e,t,"ne",h,u,a,a),is(e,t,"sw",l,d,a,a),is(e,t,"se",h,d,a,a))}function dO(e,t){var r=t.__brushOption,n=r.transformable,i=t.childAt(0);i.useStyle(eR(r)),i.attr({silent:!n,cursor:n?"move":"default"}),B([["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]],function(a){var o=t.childOfName(a.join("")),s=a.length===1?vO(e,a[0]):I8e(e,a);o&&o.attr({silent:!n,invisible:!n,cursor:n?M8e[s]+"-resize":null})})}function is(e,t,r,n,i,a,o){var s=t.childOfName(r);s&&s.setShape(E8e(tR(e,t,[[n,i],[n+a,i+o]])))}function eR(e){return Pe({strokeNoScale:!0},e.brushStyle)}function une(e,t,r,n){var i=[Ny(e,r),Ny(t,n)],a=[ov(e,r),ov(t,n)];return[[i[0],a[0]],[i[1],a[1]]]}function k8e(e){return Xl(e.group)}function vO(e,t){var r={w:"left",e:"right",n:"top",s:"bottom"},n={left:"w",right:"e",top:"n",bottom:"s"},i=kT(r[t],k8e(e));return n[i]}function I8e(e,t){var r=[vO(e,t[0]),vO(e,t[1])];return(r[0]==="e"||r[0]==="w")&&r.reverse(),r.join("")}function HW(e,t,r,n,i,a){var o=r.__brushOption,s=e.toRectRange(o.range),l=cne(t,i,a);B(n,function(u){var c=C8e[u];s[c[0]][c[1]]+=l[c[0]]}),o.range=e.fromRectRange(une(s[0][0],s[1][0],s[0][1],s[1][1])),Kj(t,r),hf(t,{isEnd:!1})}function O8e(e,t,r,n){var i=t.__brushOption.range,a=cne(e,r,n);B(i,function(o){o[0]+=a[0],o[1]+=a[1]}),Kj(e,t),hf(e,{isEnd:!1})}function cne(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 tR(e,t,r){var n=ane(e,t);return n&&n!==ff?n.clipPath(r,e._transform):Ce(r)}function E8e(e){var t=Ny(e[0][0],e[1][0]),r=Ny(e[0][1],e[1][1]),n=ov(e[0][0],e[1][0]),i=ov(e[0][1],e[1][1]);return{x:t,y:r,width:n-t,height:i-r}}function D8e(e,t,r){if(!(!e._brushType||j8e(e,t.offsetX,t.offsetY))){var n=e._zr,i=e._covers,a=Jj(e,t,r);if(!e._dragging)for(var o=0;on.getWidth()||r<0||r>n.getHeight()}var YT={lineX:YW(0),lineY:YW(1),rect:{createCover:function(e,t){function r(n){return n}return sne({toRectRange:r,fromRectRange:r},e,t,[["w"],["e"],["n"],["s"],["s","e"],["s","w"],["n","e"],["n","w"]])},getCreatingRange:function(e){var t=one(e);return une(t[1][0],t[1][1],t[0][0],t[0][1])},updateCoverShape:function(e,t,r,n){lne(e,t,r,n)},updateCommon:dO,contain:gO},polygon:{createCover:function(e,t){var r=new Me;return r.add(new on({name:"main",style:eR(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(O8e,e,t),ondragend:Fe(hf,e,{isEnd:!0})}))},updateCoverShape:function(e,t,r,n){t.childAt(0).setShape({points:tR(e,t,r)})},updateCommon:dO,contain:gO}};function YW(e){return{createCover:function(t,r){return sne({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=one(t),n=Ny(r[0][e],r[1][e]),i=ov(r[0][e],r[1][e]);return[n,i]},updateCoverShape:function(t,r,n,i){var a,o=ane(t,r);if(o!==ff&&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(),lne(t,r,l,i)},updateCommon:dO,contain:gO}}function hne(e){return e=rR(e),function(t){return IN(t,e)}}function dne(e,t){return e=rR(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 vne(e,t,r){var n=rR(e);return function(i,a){return n.contain(a[0],a[1])&&!xre(i,t,r)}}function rR(e){return Oe.create(e)}var R8e=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 qj(n.getZr())).on("brush",ge(this._onBrush,this))},t.prototype.render=function(r,n,i,a){if(!B8e(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=$8e(r,n),l=s.coordinateSystem,u=r.getAreaSelectStyle(),c=u.width,f=r.axis.dim,h=l.getAxisLayout(f),d=re({strokeContainThreshold:c},h),v=new Hn(r,i,d);v.build(),this._axisGroup.add(v.group),this._refreshBrushController(d,u,r,s,c,i),f0(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:hne(f),isTargetByCursor:vne(f,s,a),getLinearBrushOtherExtent:dne(f,0)}]).enableBrush({brushType:"lineX",brushStyle:n,removeOnClick:!0}).updateCovers(z8e(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 B8e(e,t,r){return r&&r.type==="axisAreaSelect"&&t.findComponents({mainType:"parallelAxis",query:r})[0]===e}function z8e(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 $8e(e,t){return t.getComponent("parallel",e.get("parallelIndex"))}var F8e={type:"axisAreaSelect",event:"axisAreaSelected"};function V8e(e){e.registerAction(F8e,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 G8e={type:"value",areaSelectStyle:{width:20,borderWidth:1,borderColor:"rgba(160,197,232)",color:"rgba(160,197,232)",opacity:.3},realtime:!0,z:10};function pne(e){e.registerComponentView(f8e),e.registerComponentModel(d8e),e.registerCoordinateSystem("parallel",b8e),e.registerPreprocessor(s8e),e.registerComponentModel(fO),e.registerComponentView(R8e),iv(e,"parallel",fO,G8e),V8e(e)}function W8e(e){Ze(pne),e.registerChartView(JHe),e.registerSeriesModel(r8e),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,o8e)}var H8e=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}(),U8e=function(e){q(t,e);function t(r){return e.call(this,r)||this}return t.prototype.getDefaultShape=function(){return new H8e},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(){Fs(this)},t.prototype.downplay=function(){Vs(this)},t}(rt),Z8e=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 Lf(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),_re(r,i,s,this._controller,this._controllerHost,null),o.eachEdge(function(v){var g=new U8e,m=De(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(),A=T.get("localX"),M=T.get("localY"),P=v.node2.getLayout(),I=v.node2.getModel(),k=I.get("localX"),O=I.get("localY"),D=v.getLayout(),N,j,z,$,U,F,V,W;g.shape.extent=Math.max(1,D.dy),g.shape.orient=d,d==="vertical"?(N=(A!=null?A*u:S.x)+D.sy,j=(M!=null?M*c:S.y)+S.dy,z=(k!=null?k*u:P.x)+D.ty,$=O!=null?O*c:P.y,U=N,F=j*(1-b)+$*b,V=z,W=j*b+$*(1-b)):(N=(A!=null?A*u:S.x)+S.dx,j=(M!=null?M*c:S.y)+D.sy,z=k!=null?k*u:P.x,$=(O!=null?O*c:P.y)+D.ty,U=N*(1-b)+z*b,F=j,V=N*b+z*(1-b),W=$),g.setShape({x1:N,y1:j,x2:z,y2:$,cpx1:U,cpy1:F,cpx2:V,cpy2:W}),g.useStyle(_.getItemStyle()),XW(g.style,d,v);var Y=""+x.get("value"),Z=Nr(x,"edgeLabel");Ur(g,Z,{labelFetcher:{getFormattedLabel:function(le,fe,ze,xe,ie,he){return r.getFormattedLabel(le,fe,"edge",xe,fi(ie,Z.normal&&Z.normal.get("formatter"),Y),he)}},labelDataIndex:v.dataIndex,defaultText:Y}),g.setTextConfig({position:"inside"});var J=x.getModel("emphasis");Dr(g,x,"lineStyle",function(le){var fe=le.getItemStyle();return XW(fe,d,v),fe}),s.add(g),h.setItemGraphicEl(v.dataIndex,g);var ne=J.get("focus");Wt(g,ne==="adjacency"?v.getAdjacentDataIndices():ne==="trajectory"?v.getTrajectoryDataIndices():ne,J.get("blurScope"),J.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(M,P){return r.getFormattedLabel(M,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),De(T).dataType="node";var A=b.get("focus");Wt(T,A==="adjacency"?v.getAdjacentDataIndices():A==="trajectory"?v.getTrajectoryDataIndices():A,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(Y8e(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 kf(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}(_t);function XW(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 Sf(0,0,+(t==="horizontal"),+(t==="vertical"),[{color:n,offset:0},{color:i,offset:1}]))}}function Y8e(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 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.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 tt(o[l],this,n));var u=Xj(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 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:K.color.neutral50,opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:K.color.primary}},animationEasing:"linear",animationDuration:1e3},t}(St);function q8e(e,t){e.eachSeriesByType("sankey",function(r){var n=r.get("nodeWidth"),i=r.get("nodeGap"),a=jr(r,t).refContainer,o=$t(r.getBoxLayoutParams(),a);r.layoutInfo=o;var s=o.width,l=o.height,u=r.getGraph(),c=u.nodes,f=u.edges;Q8e(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");K8e(c,f,n,i,s,l,d,v,g)})}function K8e(e,t,r,n,i,a,o,s,l){J8e(e,t,r,i,a,s,l),nUe(e,t,a,i,n,o,s),hUe(e,s)}function Q8e(e){B(e,function(t){var r=Ql(t.outEdges,Vw),n=Ql(t.inEdges,Vw),i=t.getValue()||0,a=Math.max(r,n,i);t.setLayout({value:a},!0)})}function J8e(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"&&eUe(e,o,a,M);var P=a==="vertical"?(i-r)/M:(n-r)/M;rUe(e,P,a)}function gne(e){var t=e.hostGraph.data.getRawDataItem(e.dataIndex);return t.depth!=null&&t.depth>=0}function eUe(e,t,r,n){if(t==="right"){for(var i=[],a=e,o=0;a.length;){for(var s=0;s0;a--)l*=.99,oUe(s,l,o),AM(s,i,r,n,o),fUe(s,l,o),AM(s,i,r,n,o)}function iUe(e,t){var r=[],n=t==="vertical"?"y":"x",i=tI(e,function(a){return a.getLayout()[n]});return i.keys.sort(function(a,o){return a-o}),B(i.keys,function(a){r.push(i.buckets.get(a))}),r}function aUe(e,t,r,n,i,a){var o=1/0;B(e,function(s){var l=s.length,u=0;B(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 oUe(e,t,r){B(e.slice().reverse(),function(n){B(n,function(i){if(i.outEdges.length){var a=Ql(i.outEdges,sUe,r)/Ql(i.outEdges,Vw);if(isNaN(a)){var o=i.outEdges.length;a=o?Ql(i.outEdges,lUe,r)/o:0}if(r==="vertical"){var s=i.getLayout().x+(a-su(i,r))*t;i.setLayout({x:s},!0)}else{var l=i.getLayout().y+(a-su(i,r))*t;i.setLayout({y:l},!0)}}})})}function sUe(e,t){return su(e.node2,t)*e.getValue()}function lUe(e,t){return su(e.node2,t)}function uUe(e,t){return su(e.node1,t)*e.getValue()}function cUe(e,t){return su(e.node1,t)}function su(e,t){return t==="vertical"?e.getLayout().x+e.getLayout().dx/2:e.getLayout().y+e.getLayout().dy/2}function Vw(e){return e.getValue()}function Ql(e,t,r){for(var n=0,i=e.length,a=-1;++ao&&(o=l)}),B(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&&B(i,function(s){var l=s.getModel().get("lineStyle");s.setVisual("style",l)})})}function vUe(e){e.registerChartView(Z8e),e.registerSeriesModel(X8e),e.registerLayout(q8e),e.registerVisual(dUe),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=WT(a,t,i.get("scaleLimit"));i.setCenter(o.center),i.setZoom(o.zoom)})})}var mne=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=[];B(m,function(S,T){var A;ae(S)?(A=S.slice(),S.unshift(T)):ae(S.value)?(A=re({},S),A.value=A.value.slice(),S.value.unshift(T)):A=S,x.push(A)}),t.data=x}var _=this.defaultValueDimensions,b=[{name:f,type:Aw(v),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:h,type:Aw(g),dimsDef:_.slice()}];return Xv(this,{coordDimensions:b,dimensionsCount:_.length+1,encodeDefaulter:Fe(MJ,b,this)})},e.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},e}(),yne=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:K.color.neutral00,borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:K.color.shadow}},animationDuration:800},t}(St);fr(yne,mne,!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=qW(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?(pa(f),xne(h,f,a,u)):f=qW(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}(_t),gUe=function(){function e(){}return e}(),mUe=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 gUe},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 TUe={type:"echarts:boxplot",transform:function(t){var r=t.upstream;if(r.sourceFormat!==sn){var n="";mt(n)}var i=SUe(r.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};function AUe(e){e.registerSeriesModel(yne),e.registerChartView(pUe),e.registerLayout(xUe),e.registerTransform(TUe)}var CUe=["itemStyle","borderColor"],MUe=["itemStyle","borderColor0"],PUe=["itemStyle","borderColorDoji"],LUe=["itemStyle","color"],kUe=["itemStyle","color0"];function nR(e,t){return t.get(e>0?LUe:kUe)}function iR(e,t){return t.get(e===0?PUe:e>0?CUe:MUe)}var IUe={seriesType:"candlestick",plan:Vv(),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=nR(s,o),l.stroke=iR(s,o)||l.fill;var u=i.ensureUniqueItemVisual(a,"style");re(u,l)}}}}}},OUe=["color","borderColor"],EUe=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){xu(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&&KW(u,f))return;var h=CM(f,c,!0);Nt(h,{shape:{points:f.ends}},r,c),MM(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&&KW(u,d)){a.remove(h);return}h?(lt(h,{shape:{points:d.ends}},r,c),pa(h)):h=CM(d),MM(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(),QW(r,this.group);var n=r.get("clip",!0)?y0(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=CM(s);MM(l,i,o,a),l.incremental=!0,this.group.add(l),this._progressiveEls.push(l)}},t.prototype._incrementalRenderLarge=function(r,n){QW(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}(_t),DUe=function(){function e(){}return e}(),NUe=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 DUe},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}(rt);function CM(e,t,r){var n=e.ends;return new NUe({shape:{points:r?jUe(n,e):n},z2:100})}function KW(e,t){for(var r=!0,n=0;nT?O[a]:k[a],ends:j,brushRect:V(A,M,b)})}function U(Y,Z){var J=[];return J[i]=Z,J[a]=Y,isNaN(Z)||isNaN(Y)?[NaN,NaN]:t.dataToPoint(J)}function F(Y,Z,J){var ne=Z.slice(),le=Z.slice();ne[i]=ib(ne[i]+n/2,1,!1),le[i]=ib(le[i]-n/2,1,!0),J?Y.push(ne,le):Y.push(le,ne)}function V(Y,Z,J){var ne=U(Y,J),le=U(Z,J);return ne[i]-=n/2,le[i]-=n/2,{x:ne[0],y:ne[1],width:n,height:le[1]-ne[1]}}function W(Y){return Y[i]=ib(Y[i],1),Y}}function v(g,m){for(var x=So(g.count*4),_=0,b,S=[],T=[],A,M=m.getStore(),P=!!e.get(["itemStyle","borderColorDoji"]);(A=g.next())!=null;){var I=M.get(s,A),k=M.get(u,A),O=M.get(c,A),D=M.get(f,A),N=M.get(h,A);if(isNaN(I)||isNaN(D)||isNaN(N)){x[_++]=NaN,_+=3;continue}x[_++]=JW(M,A,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}m.setLayout("largePoints",x)}}};function JW(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 $Ue(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 FUe(e){e.registerChartView(EUe),e.registerSeriesModel(_ne),e.registerPreprocessor(BUe),e.registerVisual(IUe),e.registerLayout(zUe)}function eH(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 VUe=function(e){q(t,e);function t(r,n){var i=e.call(this)||this,a=new g0(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;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 ps(r.__p1,r.__cp1)+ps(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=zk;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}(bne),ZUe=function(){function e(){this.polyline=!1,this.curveness=0,this.segs=[]}return e}(),YUe=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:K.color.neutral99,fill:null}},t.prototype.getDefaultShape=function(){return new ZUe},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(wQ(f,h,m,x,v,g,s,r,n))return l}else if(xl(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}(),Sne={seriesType:"lines",plan:Vv(),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)&&y0(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=Sne.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 XUe:new Yj(o?a?UUe:wne:a?bne:Zj),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}(_t),KUe=typeof Uint32Array>"u"?Array:Uint32Array,QUe=typeof Float64Array>"u"?Array:Float64Array;function tH(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),vT([i,r[0],r[1]])}))}var JUe=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||[],tH(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(tH(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=Ud(this._flatCoords,n.flatCoords),this._flatCoordsOffset=Ud(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}(St);function b_(e){return e instanceof Array||(e=[e,e]),e}var e7e={seriesType:"lines",reset:function(e){var t=b_(e.get("symbol")),r=b_(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=b_(s.getShallow("symbol",!0)),u=b_(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 t7e(e){e.registerChartView(qUe),e.registerSeriesModel(JUe),e.registerLayout(Sne),e.registerVisual(e7e)}var r7e=256,n7e=function(){function e(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=hi.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[A++]=D[O],T[A++]=D[O+1],T[A++]=D[O+2],T[A++]=D[O+3]*b*256}else A+=4}return h.putImageData(S,0,0),f},e.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=hi.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=K.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 i7e(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 rH(e){var t=e.dimensions;return t[0]==="lng"&&t[1]==="lat"}var o7e=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()):rH(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&&(rH(o)?this.render(n,i,a):(this._progressiveEls=[],this._renderOnGridLike(n,a,r.start,r.end,!0)))},t.prototype.eachRendered=function(r){xu(this._progressiveEls||this.group,r)},t.prototype._renderOnGridLike=function(r,n,i,a,o){var s=r.coordinateSystem,l=au(s,"cartesian2d"),u=au(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"]),A=Nr(r),M=r.getModel("emphasis"),P=M.get("focus"),I=M.get("blurScope"),k=M.get("disabled"),O=l||u?[x.mapDimension("x"),x.mapDimension("y"),x.mapDimension("value")]:[x.mapDimension("time"),x.mapDimension("value")],D=i;Dh[1]||$d[1])continue;var U=s.dataToPoint([z,$]);N=new Xe({shape:{x:U[0]-c/2,y:U[1]-f/2,width:c,height:f},style:j})}else if(u){var F=s.dataToLayout([x.get(O[0],D),x.get(O[1],D)]).rect;if(mn(F.x))continue;N=new Xe({z2:1,shape:F,style:j})}else{if(isNaN(x.get(O[1],D)))continue;var V=s.dataToLayout([x.get(O[0],D)]),F=V.contentRect||V.rect;if(mn(F.x)||mn(F.y))continue;N=new Xe({z2:1,shape:F,style:j})}if(x.hasItemOption){var W=x.getItemModel(D),Y=W.getModel("emphasis");_=Y.getModel("itemStyle").getItemStyle(),b=W.getModel(["blur","itemStyle"]).getItemStyle(),S=W.getModel(["select","itemStyle"]).getItemStyle(),T=W.get(["itemStyle","borderRadius"]),P=Y.get("focus"),I=Y.get("blurScope"),k=Y.get("disabled"),A=Nr(W)}N.shape.r=T;var Z=r.getRawValue(D),J="-";Z&&Z[2]!=null&&(J=Z[2]+""),Ur(N,A,{labelFetcher:r,labelDataIndex:D,defaultOpacity:j.opacity,defaultText:J}),N.ensureState("emphasis").style=_,N.ensureState("blur").style=b,N.ensureState("select").style=S,Wt(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 n7e;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(M,P,I){var k=r.dataToPoint([M,P]);return k[0]-=h,k[1]-=d,k.push(I),k}),S=i.getExtent(),T=i.type==="visualMap.continuous"?a7e(S,i.option.range):i7e(S,i.getPieceList(),i.option.selected);u.update(b,m,x,o.color.getNormalizer(),{inRange:o.color.getColorMapper(),outOfRange:s.color.getColorMapper()},T);var A=new Xr({style:{width:m,height:x,x:h,y:d,image:u.canvas},silent:!0});this.group.add(A)},t.type="heatmap",t}(_t),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.getInitialData=function(r,n){return Yo(null,this,{generateCoord:"value"})},t.prototype.preventIncremental=function(){var r=Fv.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:K.color.primary}}},t}(St);function l7e(e){e.registerChartView(o7e),e.registerSeriesModel(s7e)}var u7e=["itemStyle","borderWidth"],nH=[{xy:"x",wh:"width",index:0,posDesc:["left","right"]},{xy:"y",wh:"height",index:1,posDesc:["top","bottom"]}],kM=new Zo,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:nH[+c],categoryDim:nH[1-+c]};o.diff(s).add(function(v){if(o.hasValue(v)){var g=aH(o,v),m=iH(o,v,g,h),x=oH(o,h,m);o.setItemGraphicEl(v,x),a.add(x),lH(x,h,m)}}).update(function(v,g){var m=s.getItemGraphicEl(g);if(!o.hasValue(v)){a.remove(m);return}var x=aH(o,v),_=iH(o,v,x,h),b=Lne(o,_);m&&b!==m.__pictorialShapeStr&&(a.remove(m),o.setItemGraphicEl(v,null),m=null),m?m7e(m,h,_):m=oH(o,h,_,!0),o.setItemGraphicEl(v,m),m.__pictorialSymbolMeta=_,a.add(m),lH(m,h,_)}).remove(function(v){var g=s.getItemGraphicEl(v);g&&sH(s,v,g.__pictorialSymbolMeta.animationModel,g)}).execute();var d=r.get("clip",!0)?y0(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){sH(a,De(o).dataIndex,r,o)}):i.removeAll()},t.type="pictorialBar",t}(_t);function iH(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};f7e(r,a,i,n,h),h7e(e,t,i,a,o,h.boundingLength,h.pxSign,c,n,h),d7e(r,h.symbolScale,u,n,h);var d=h.symbolSize,v=Mf(r.get("symbolOffset"),d);return v7e(r,d,i,a,o,v,s,h.valueLineWidth,h.boundingLength,h.repeatCutLength,n,h),h}function f7e(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=[IM(s,o[0])-l,IM(s,o[1])-l];f[1]=0?1:-1:c>0?1:-1}function IM(e,t){return e.toGlobalCoord(e.dataToCoord(e.scale.parse(t)))}function h7e(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 d7e(e,t,r,n,i){var a=e.get(u7e)||0;a&&(kM.attr({scaleX:t[0],scaleY:t[1],rotation:r}),kM.updateTransform(),a/=kM.getLineScale(),a*=t[n.valueDim.index]),i.valueLineWidth=a||0}function v7e(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),_=nn(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),A=b?0:S*2,M=vN(n),P=M?n:uH((x+A)/T),I=x-P*g;S=I/2/(b?P:Math.max(P-1,1)),T=g+S*2,A=b?0:S*2,!M&&n!=="fixed"&&(P=u?uH((Math.abs(u)+A)/T):0),m=P*T-A,f.repeatTimes=P,f.symbolMargin=S}var k=v*(m/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=re({},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 j=f.clipShape={};j[h.xy]=-r[h.xy],j[h.wh]=c.ecSize[h.wh],j[d.xy]=0,j[d.wh]=r[d.wh]}function Tne(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 Ane(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(aR(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 Cne(e,t,r,n){var i=e.__pictorialBundle,a=e.__pictorialMainPath;a?fd(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=Tne(r),i.add(a),fd(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 Mne(e,t,r){var n=re({},t.barRectShape),i=e.__pictorialBarRect;i?fd(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 Pne(e,t,r,n){if(r.symbolClip){var i=e.__pictorialClipPath,a=re({},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],Tf[n?"updateProps":"initProps"](i,{shape:u},s,l)}}}function aH(e,t){var r=e.getItemModel(t);return r.getAnimationDelayParams=p7e,r.isAnimationEnabled=g7e,r}function p7e(e){return{index:e.__pictorialAnimationIndex,count:e.__pictorialRepeatTimes}}function g7e(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function oH(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?Ane(i,t,r):Cne(i,t,r),Mne(i,r,n),Pne(i,t,r,n),i.__pictorialShapeStr=Lne(e,r),i.__pictorialSymbolMeta=r,i}function m7e(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?Ane(e,t,r,!0):Cne(e,t,r,!0),Mne(e,r,!0),Pne(e,t,r,!0)}function sH(e,t,r,n){var i=n.__pictorialBarRect;i&&i.removeTextContent();var a=[];aR(n,function(o){a.push(o)}),n.__pictorialMainPath&&a.push(n.__pictorialMainPath),n.__pictorialClipPath&&(r=null),B(a,function(o){iu(o,{scaleX:0,scaleY:0},r,t,function(){n.parent&&n.parent.remove(n)})}),e.setItemGraphicEl(t,null)}function Lne(e,t){return[e.getItemVisual(t.dataIndex,"symbol")||"none",!!t.symbolRepeat,!!t.symbolClip].join(":")}function aR(e,t,r){B(e.__pictorialBundle.children(),function(n){n!==e.__pictorialBarRect&&t.call(r,n)})}function fd(e,t,r,n,i,a){t&&e.attr(t),n.symbolClip&&!i?r&&e.attr(r):r&&Tf[i?"updateProps":"initProps"](e,r,n.animationModel,n.dataIndex,a)}function lH(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");aR(e,function(g){if(g instanceof Xr){var m=g.style;g.useStyle(re({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:nv(t.seriesModel.getData(),n),inheritColor:r.style.fill,defaultOpacity:r.style.opacity,defaultOutsidePosition:d}),Wt(e,c,f,a.get("disabled"))}function uH(e){var t=Math.round(e);return Math.abs(e-t)<1e-4?t:Math.ceil(e)}var y7e=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=_u(Ly.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:K.color.primary}}}),t}(Ly);function x7e(e){e.registerChartView(c7e),e.registerSeriesModel(y7e),e.registerLayout(e.PRIORITY.VISUAL.LAYOUT,Fe(Xee,"pictorialBar")),e.registerLayout(e.PRIORITY.VISUAL.PROGRESSIVE_LAYOUT,qee("pictorialBar"))}var _7e=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 Gs(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=[],A,M=l[x].indices,P=0;Pa&&(a=s),n.push(s)}for(var u=0;ua&&(a=f)}return{y0:i,max:a}}function A7e(e){e.registerChartView(_7e),e.registerSeriesModel(w7e),e.registerLayout(S7e),e.registerProcessor(Yv("themeRiver"))}var C7e=2,M7e=4,fH=function(e){q(t,e);function t(r,n,i,a){var o=e.call(this)||this;o.z2=C7e,o.textConfig={inside:!0},De(o).seriesIndex=n.seriesIndex;var s=new at({z2:M7e,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;De(s).dataIndex=n.dataIndex;var l=n.getModel(),u=l.getModel("emphasis"),c=n.getLayout(),f=re({},c);f.label=null;var h=n.getVisual("style");h.lineJoin="bevel";var d=n.getVisual("decal");d&&(h.decal=ev(d,o));var v=Ao(l.getModel("itemStyle"),f,!0);re(f,v),B(Yn,function(_){var b=s.ensureState(_),S=l.getModel([_,"itemStyle"]);b.style=S.getItemStyle();var T=Ao(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),pa(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"?Ud(n.getAncestorsIndices(),n.getDescendantIndices()):m==="ancestor"?n.getAncestorsIndices():m==="descendant"?n.getDescendantIndices():m;Wt(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)j&&!Xd($-j)&&$0?(o.virtualPiece?o.virtualPiece.updateData(!1,_,r,n,i):(o.virtualPiece=new fH(_,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";pw(u,c)}}i=!0}})})},t.prototype._rootToNode=function(r){r!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:mO,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}(_t),I7e=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};kne(i);var a=this._levelModels=se(r.levels||[],function(l){return new tt(l,this,n)},this),o=Fj.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=UT(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(){Dre(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}(St);function kne(e){var t=0;B(e.children,function(n){kne(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 dH=Math.PI/180;function O7e(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")*dH,v=n.get("minAngle")*dH,g=n.getData().tree.root,m=n.getViewRoot(),x=m.depth,_=n.get("sort");_!=null&&Ine(m,_);var b=0;B(m.children,function($){!isNaN($.getValue())&&b++});var S=m.getValue(),T=Math.PI/(S||b)*2,A=m.depth>0,M=m.height-(A?-1:1),P=(h-f)/(M||1),I=n.get("clockwise"),k=n.get("stillShowZeroSum"),O=I?1:-1,D=function($,U){if($){var F=U;if($!==g){var V=$.getValue(),W=S===0&&k?T:V*T;W1;)o=o.parentNode;var s=i.getColorFromPalette(o.name||o.dataIndex+"",t);return n.depth>1&&pe(s)&&(s=tw(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");re(u,l)})})}function N7e(e){e.registerChartView(k7e),e.registerSeriesModel(I7e),e.registerLayout(Fe(O7e,"sunburst")),e.registerProcessor(Fe(Yv,"sunburst")),e.registerVisual(D7e),L7e(e)}var vH={color:"fill",borderColor:"stroke"},j7e={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},Ms=Je(),R7e=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 Yo(null,this)},t.prototype.getDataParams=function(r,n,i){var a=e.prototype.getDataParams.call(this,r,n);return i&&(a.info=Ms(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}(St);function B7e(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 z7e(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(B7e,e)}}}function $7e(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 F7e(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($7e,e)}}}function V7e(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 G7e(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(V7e,e)}}}function W7e(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 H7e(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(W7e,e)}}}function U7e(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 Z7e(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 One(e,t,r,n){return e&&(e.legacy||e.legacy!==!1&&!r&&!n&&t!=="tspan"&&(t==="text"||ye(e,"text")))}function Ene(e,t,r){var n=e,i,a,o;if(t==="text")o=n;else{o={},ye(n,"text")&&(o.text=n.text),ye(n,"rich")&&(o.rich=n.rich),ye(n,"textFill")&&(o.fill=n.textFill),ye(n,"textStroke")&&(o.stroke=n.textStroke),ye(n,"fontFamily")&&(o.fontFamily=n.fontFamily),ye(n,"fontSize")&&(o.fontSize=n.fontSize),ye(n,"fontStyle")&&(o.fontStyle=n.fontStyle),ye(n,"fontWeight")&&(o.fontWeight=n.fontWeight),a={type:"text",style:o,silent:!0},i={};var s=ye(n,"textPosition");r?i.position=s?n.textPosition:"inside":s&&(i.position=n.textPosition),ye(n,"textPosition")&&(i.position=n.textPosition),ye(n,"textOffset")&&(i.offset=n.textOffset),ye(n,"textRotation")&&(i.rotation=n.textRotation),ye(n,"textDistance")&&(i.distance=n.textDistance)}return pH(o,e),B(o.rich,function(l){pH(l,l)}),{textConfig:i,textContent:a}}function pH(e,t){t&&(t.font=t.textFont||t.font,ye(t,"textStrokeWidth")&&(e.lineWidth=t.textStrokeWidth),ye(t,"textAlign")&&(e.align=t.textAlign),ye(t,"textVerticalAlign")&&(e.verticalAlign=t.textVerticalAlign),ye(t,"textLineHeight")&&(e.lineHeight=t.textLineHeight),ye(t,"textWidth")&&(e.width=t.textWidth),ye(t,"textHeight")&&(e.height=t.textHeight),ye(t,"textBackgroundColor")&&(e.backgroundColor=t.textBackgroundColor),ye(t,"textPadding")&&(e.padding=t.textPadding),ye(t,"textBorderColor")&&(e.borderColor=t.textBorderColor),ye(t,"textBorderWidth")&&(e.borderWidth=t.textBorderWidth),ye(t,"textBorderRadius")&&(e.borderRadius=t.textBorderRadius),ye(t,"textBoxShadowColor")&&(e.shadowColor=t.textBoxShadowColor),ye(t,"textBoxShadowBlur")&&(e.shadowBlur=t.textBoxShadowBlur),ye(t,"textBoxShadowOffsetX")&&(e.shadowOffsetX=t.textBoxShadowOffsetX),ye(t,"textBoxShadowOffsetY")&&(e.shadowOffsetY=t.textBoxShadowOffsetY))}function gH(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||K.color.neutral99;mH(n,t);var o=n.textFill==null;return i?o&&(n.textFill=r.insideFill||K.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||K.color.neutral00),!n.textStroke&&r.outsideStroke&&(n.textStroke=r.outsideStroke)),n.text=t.text,n.rich=t.rich,B(t.rich,function(s){mH(s,s)}),n}function mH(e,t){t&&(ye(t,"fill")&&(e.textFill=t.fill),ye(t,"stroke")&&(e.textStroke=t.fill),ye(t,"lineWidth")&&(e.textStrokeWidth=t.lineWidth),ye(t,"font")&&(e.font=t.font),ye(t,"fontStyle")&&(e.fontStyle=t.fontStyle),ye(t,"fontWeight")&&(e.fontWeight=t.fontWeight),ye(t,"fontSize")&&(e.fontSize=t.fontSize),ye(t,"fontFamily")&&(e.fontFamily=t.fontFamily),ye(t,"align")&&(e.textAlign=t.align),ye(t,"verticalAlign")&&(e.textVerticalAlign=t.verticalAlign),ye(t,"lineHeight")&&(e.textLineHeight=t.lineHeight),ye(t,"width")&&(e.textWidth=t.width),ye(t,"height")&&(e.textHeight=t.height),ye(t,"backgroundColor")&&(e.textBackgroundColor=t.backgroundColor),ye(t,"padding")&&(e.textPadding=t.padding),ye(t,"borderColor")&&(e.textBorderColor=t.borderColor),ye(t,"borderWidth")&&(e.textBorderWidth=t.borderWidth),ye(t,"borderRadius")&&(e.textBorderRadius=t.borderRadius),ye(t,"shadowColor")&&(e.textBoxShadowColor=t.shadowColor),ye(t,"shadowBlur")&&(e.textBoxShadowBlur=t.shadowBlur),ye(t,"shadowOffsetX")&&(e.textBoxShadowOffsetX=t.shadowOffsetX),ye(t,"shadowOffsetY")&&(e.textBoxShadowOffsetY=t.shadowOffsetY),ye(t,"textShadowColor")&&(e.textShadowColor=t.textShadowColor),ye(t,"textShadowBlur")&&(e.textShadowBlur=t.textShadowBlur),ye(t,"textShadowOffsetX")&&(e.textShadowOffsetX=t.textShadowOffsetX),ye(t,"textShadowOffsetY")&&(e.textShadowOffsetY=t.textShadowOffsetY))}var Dne={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},yH=it(Dne);ha(Bo,function(e,t){return e[t]=1,e},{});Bo.join(", ");var Gw=["","style","shape","extra"],sv=Je();function oR(e,t,r,n,i){var a=e+"Animation",o=jv(e,n,i)||{},s=sv(t).userDuring;return o.duration>0&&(o.during=s?ge(Q7e,{el:t,userDuring:s}):null,o.setToFinal=!0,o.scope=e),re(o,r[a]),o}function hb(e,t,r,n){n=n||{};var i=n.dataIndex,a=n.isInit,o=n.clearStyle,s=r.isAnimationEnabled(),l=sv(e),u=t.style;l.userDuring=t.during;var c={},f={};if(e9e(e,t,f),e.type==="compound")for(var h=e.shape.paths,d=t.shape.paths,v=0;v0&&e.animateFrom(m,x)}else X7e(e,t,i||0,r,c);Nne(e,t),u?e.dirty():e.markRedraw()}function Nne(e,t){for(var r=sv(e).leaveToProps,n=0;n0&&e.animateFrom(i,a)}}function q7e(e,t){ye(t,"silent")&&(e.silent=t.silent),ye(t,"ignore")&&(e.ignore=t.ignore),e instanceof va&&ye(t,"invisible")&&(e.invisible=t.invisible),e instanceof rt&&ye(t,"autoBatch")&&(e.autoBatch=t.autoBatch)}var co={},K7e={setTransform:function(e,t){return co.el[e]=t,this},getTransform:function(e){return co.el[e]},setShape:function(e,t){var r=co.el,n=r.shape||(r.shape={});return n[e]=t,r.dirtyShape&&r.dirtyShape(),this},getShape:function(e){var t=co.el.shape;if(t)return t[e]},setStyle:function(e,t){var r=co.el,n=r.style;return n&&(n[e]=t,r.dirtyStyle&&r.dirtyStyle()),this},getStyle:function(e){var t=co.el.style;if(t)return t[e]},setExtra:function(e,t){var r=co.el.extra||(co.el.extra={});return r[e]=t,this},getExtra:function(e){var t=co.el.extra;if(t)return t[e]}};function Q7e(){var e=this,t=e.el;if(t){var r=sv(t).userDuring,n=e.userDuring;if(r!==n){e.el=e.userDuring=null;return}co.el=t,n(K7e)}}function xH(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]={}),Vc(l))re(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(F,$):void 0}var V=t.get(U.name,$),W=U&&U.ordinalMeta;return W?W.categories[V]:V}function M(z,$){$==null&&($=c);var U=t.getItemVisual($,"style"),F=U&&U.fill,V=U&&U.opacity,W=b($,El).getItemStyle();F!=null&&(W.fill=F),V!=null&&(W.opacity=V);var Y={inheritColor:pe(F)?F:K.color.neutral99},Z=S($,El),J=Mt(Z,null,Y,!1,!0);J.text=Z.getShallow("show")?be(e.getFormattedLabel($,El),nv(t,$)):null;var ne=hw(Z,Y,!1);return k(z,W),W=gH(W,J,ne),z&&I(W,z),W.legacy=!0,W}function P(z,$){$==null&&($=c);var U=b($,Ps).getItemStyle(),F=S($,Ps),V=Mt(F,null,null,!0,!0);V.text=F.getShallow("show")?fi(e.getFormattedLabel($,Ps),e.getFormattedLabel($,El),nv(t,$)):null;var W=hw(F,null,!0);return k(z,U),U=gH(U,V,W),z&&I(U,z),U.legacy=!0,U}function I(z,$){for(var U in $)ye($,U)&&(z[U]=$[U])}function k(z,$){z&&(z.textFill&&($.textFill=z.textFill),z.textPosition&&($.textPosition=z.textPosition))}function O(z,$){if($==null&&($=c),ye(vH,z)){var U=t.getItemVisual($,"style");return U?U[vH[z]]:null}if(ye(j7e,z))return t.getItemVisual($,z)}function D(z){if(o.type==="cartesian2d"){var $=o.getBaseAxis();return o$e(Pe({axis:$},z))}}function N(){return r.getCurrentSeriesIndices()}function j(z){return DN(z,r)}}function f9e(e){var t={};return B(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 jM(e,t,r,n,i,a,o){if(!n){a.remove(t);return}var s=fR(e,t,r,n,i,a);return s&&o.setItemGraphicEl(r,s),s&&Wt(s,n.focus,n.blurScope,n.emphasisDisabled),s}function fR(e,t,r,n,i,a){var o=-1,s=t;t&&zne(t,n,i)&&(o=We(a.childrenRef(),t),t=null);var l=!t,u=t;u?u.clearStates():(u=uR(n),s&&s9e(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,d9e(u,r,n,i,l,Hi),h9e(u,r,n,i,l),cR(e,u,r,n,Hi,i,l),ye(n,"info")&&(Ms(u).info=n.info);for(var c=0;c=0?a.replaceAt(u,o):a.add(u),u}function zne(e,t,r){var n=Ms(e),i=t.type,a=t.shape,o=t.style;return r.isUniversalTransitionEnabled()||i!=null&&i!==n.customGraphicType||i==="path"&&y9e(a)&&$ne(a)!==n.customPathData||i==="image"&&ye(o,"image")&&o.image!==n.customImagePath}function h9e(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&&zne(o,a,n)&&(o=null),o||(o=uR(a),e.setClipPath(o)),cR(null,o,t,a,null,n,i)}}function d9e(e,t,r,n,i,a){if(!(e.isGroup||e.type==="compoundPath")){bH(r,null,a),bH(r,Ps,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=uR(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);p9e(t,v,i)}}}function p9e(e,t,r){t&&XT(t,Ms(e).option,r)}function g9e(e){new Gs(e.oldChildren,e.newChildren,wH,wH,e).add(SH).update(SH).remove(m9e).execute()}function wH(e,t){var r=e&&e.name;return r??a9e+t}function SH(e,t){var r=this.context,n=e!=null?r.newChildren[e]:null,i=t!=null?r.oldChildren[t]:null;fR(r.api,i,r.dataIndex,n,r.seriesModel,r.group)}function m9e(e){var t=this.context,r=t.oldChildren[e];r&&XT(r,Ms(r).option,t.seriesModel)}function $ne(e){return e&&(e.pathData||e.d)}function y9e(e){return e&&(ye(e,"pathData")||ye(e,"d"))}function x9e(e){e.registerChartView(l9e),e.registerSeriesModel(R7e)}var vc=Je(),TH=Ce,RM=ge,dR=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(AH,r,f);this.updatePointerEl(s,u,h),this.updateLabelEl(s,u,h,r)}MH(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=Dj(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=vc(t).pointerEl=new Tf[a.type](TH(r.pointer));t.add(o)}},e.prototype.createLabelEl=function(t,r,n,i){if(r.label){var a=vc(t).labelEl=new at(TH(r.label));t.add(a),CH(a,i)}},e.prototype.updatePointerEl=function(t,r,n){var i=vc(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=vc(t).labelEl;a&&(a.setStyle(r.label.style),n(a,{x:r.label.x,y:r.label.y}),CH(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=Rv(a.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(u){$s(u.event)},onmousedown:RM(this._onHandleDragMove,this,0,0),drift:RM(this._onHandleDragMove,this),ondragend:RM(this._onHandleDragEnd,this)}),n.add(i)),MH(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,Gv(this,"_doDispatchAxisPointer",a.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,s)}},e.prototype._moveHandleToValue=function(t,r){AH(this._axisPointerModel,!r&&this._moveAnimation,this._handle,BM(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(BM(n),[t,r],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(BM(i)),vc(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),by(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 AH(e,t,r,n){Fne(vc(r).lastProp,n)||(vc(r).lastProp=n,t?lt(r,n,e):(r.stopAnimation(),r.attr(n)))}function Fne(e,t){if(Le(e)&&Le(t)){var r=!0;return B(t,function(n,i){r=r&&Fne(e[i],n)}),!!r}else return e===t}function CH(e,t){e[t.get(["label","show"])?"show":"hide"]()}function BM(e){return{x:e.x||0,y:e.y||0,rotation:e.rotation||0}}function MH(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 vR(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 Vne(e,t,r,n,i){var a=r.get("value"),o=Gne(a,t.axis,t.ecModel,r.get("seriesDataIndices"),{precision:r.get(["label","precision"]),formatter:r.get(["label","formatter"])}),s=r.getModel("label"),l=$v(s.get("padding")||0),u=s.getFont(),c=xT(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),_9e(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 _9e(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 Gne(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:Cw(t,{value:e}),axisDimension:t.dim,axisIndex:t.index,seriesData:[]};B(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):Ae(o)&&(a=o(s))}return a}function pR(e,t,r){var n=Wr();return Ks(n,n,r.rotation),Ua(n,n,r.position),Ga([e.dataToCoord(t),(r.labelOffset||0)+(r.labelDirection||1)*(r.labelMargin||0)],n)}function Wne(e,t,r,n,i,a){var o=Hn.innerTextLayout(r.rotation,0,r.labelDirection);r.labelMargin=i.get(["label","margin"]),Vne(t,n,i,a,{position:pR(n.axis,e,r),align:o.textAlign,verticalAlign:o.textVerticalAlign})}function gR(e,t,r){return r=r||0,{x1:e[r],y1:e[1-r],x2:t[r],y2:t[1-r]}}function Hne(e,t,r){return r=r||0,{x:e[r],y:e[1-r],width:t[r],height:t[1-r]}}function PH(e,t,r,n,i,a){return{cx:e,cy:t,r0:r,r:n,startAngle:i,endAngle:a,clockwise:!0}}var b9e=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=LH(l,s).getOtherAxis(s).getGlobalExtent(),f=s.toGlobalCoord(s.dataToCoord(n,!0));if(u&&u!=="none"){var h=vR(a),d=w9e[u](s,f,c);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=jw(l.getRect(),i);Wne(n,r,v,i,a,o)},t.prototype.getHandleTransform=function(r,n,i){var a=jw(n.axis.grid.getRect(),n,{labelInside:!1});a.labelMargin=i.get(["handle","margin"]);var o=pR(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=LH(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}(dR);function LH(e,t){var r={};return r[t.dim+"AxisIndex"]=t.index,e.getCartesian(r)}var w9e={line:function(e,t,r){var n=gR([t,r[0]],[t,r[1]],kH(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:Hne([t-n/2,r[0]],[n,i],kH(e))}}};function kH(e){return e.dim==="x"?0:1}var S9e=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:K.color.border,width:1,type:"dashed"},shadowStyle:{color:K.color.shadowTint},label:{show:!0,formatter:null,precision:"auto",margin:3,color:K.color.neutral00,padding:[5,7,5,7],backgroundColor:K.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:K.color.accent40,throttle:40}},t}(Qe),xs=Je(),T9e=B;function Une(e,t,r){if(!nt.node){var n=t.getZr();xs(n).records||(xs(n).records={}),A9e(n,t);var i=xs(n).records[e]||(xs(n).records[e]={});i.handler=r}}function A9e(e,t){if(xs(e).initialized)return;xs(e).initialized=!0,r("click",Fe(IH,"click")),r("mousemove",Fe(IH,"mousemove")),r("globalout",M9e);function r(n,i){e.on(n,function(a){var o=P9e(t);T9e(xs(e).records,function(s){s&&i(s,a,o.dispatchAction)}),C9e(o.pendings,t)})}}function C9e(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 M9e(e,t,r){e.handler("leave",null,r)}function IH(e,t,r,n){t.handler(e,r,n)}function P9e(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 _O(e,t){if(!nt.node){var r=t.getZr(),n=(xs(r).records||{})[e];n&&(xs(r).records[e]=null)}}var L9e=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";Une("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){_O("axisPointer",n)},t.prototype.dispose=function(r,n){_O("axisPointer",n)},t.type="axisPointer",t}(Lt);function Zne(e,t){var r=[],n=e.seriesIndex,i;if(n==null||!(i=t.getSeriesByIndex(n)))return{point:[]};var a=i.getData(),o=nf(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 OH=Je();function k9e(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){db(i)&&(i=Zne({seriesIndex:a.seriesIndex,dataIndex:a.dataIndex},t).point);var l=db(i),u=a.axesInfo,c=s.axesInfo,f=n==="leave"||db(i),h={},d={},v={list:[],map:{}},g={showPointer:Fe(O9e,d),showTooltip:Fe(E9e,v)};B(s.coordSysMap,function(x,_){var b=l||x.containPoint(i);B(s.coordSysAxesInfo[_],function(S,T){var A=S.axis,M=R9e(u,S);if(!f&&b&&(!u||M)){var P=M&&M.value;P==null&&!l&&(P=A.pointToData(i)),P!=null&&EH(S,P,g,!1,h)}})});var m={};return B(c,function(x,_){var b=x.linkGroup;b&&!d[_]&&B(b.axesInfo,function(S,T){var A=d[T];if(S!==x&&A){var M=A.value;b.mapper&&(M=x.axis.scale.parse(b.mapper(M,DH(S),DH(x)))),m[x.key]=M}})}),B(m,function(x,_){EH(c[_],x,g,!0,h)}),D9e(d,c,h),N9e(v,i,e,o),j9e(c,o,r),h}}function EH(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=I9e(t,e),s=o.payloadBatch,l=o.snapToValue;s[0]&&i.seriesIndex==null&&re(i,s[0]),!n&&e.snap&&a.containData(l)&&l!=null&&(t=l),r.showPointer(e,t,s),r.showTooltip(e,o,l)}}function I9e(e,t){var r=t.axis,n=r.dim,i=e,a=[],o=Number.MAX_VALUE,s=-1;return B(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),B(h,function(m){a.push({seriesIndex:l.seriesIndex,dataIndexInside:m,dataIndex:l.getData().getRawIndex(m)})}))}}),{payloadBatch:a,snapToValue:i}}function O9e(e,t,r,n){e[t.key]={value:r,payloadBatch:n}}function E9e(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=ky(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 D9e(e,t,r){var n=r.axesInfo=[];B(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 N9e(e,t,r,n){if(db(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 j9e(e,t,r){var n=r.getZr(),i="axisPointerLastHighlights",a=OH(n)[i]||{},o=OH(n)[i]={};B(e,function(u,c){var f=u.axisPointerModel.option;f.status==="show"&&u.triggerEmphasis&&B(f.seriesDataIndices,function(h){var d=h.seriesIndex+" | "+h.dataIndex;o[d]=h})});var s=[],l=[];B(a,function(u,c){!o[c]&&l.push(u)}),B(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 R9e(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 DH(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 db(e){return!e||e[0]==null||isNaN(e[0])||e[1]==null||isNaN(e[1])}function b0(e){Pf.registerAxisPointerClass("CartesianAxisPointer",b9e),e.registerComponentModel(S9e),e.registerComponentView(L9e),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=B6e(t,r)}),e.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},k9e)}function B9e(e){Ze(mre),Ze(b0)}var z9e=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=vR(a),v=F9e[h](s,l,f,c);v.style=d,r.graphicKey=v.type,r.pointer=v}var g=a.get(["label","margin"]),m=$9e(n,i,a,l,g);Vne(r,i,a,o,m)},t}(dR);function $9e(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();Ks(h,h,s),Ua(h,h,[n.cx,n.cy]),u=Ga([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 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 F9e={line:function(e,t,r,n){return e.dim==="angle"?{type:"Line",shape:gR(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:PH(t.cx,t.cy,n[0],n[1],(-r-i/2)*a,(-r+i/2)*a)}:{type:"Sector",shape:PH(t.cx,t.cy,r-i/2,r+i/2,0,Math.PI*2)}}},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.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}(Qe),mR=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",tr).models[0]},t.type="polarAxis",t}(Qe);fr(mR,Zv);var G9e=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}(mR),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.type="radiusAxis",t}(mR),yR=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}(_a);yR.prototype.dataToRadius=_a.prototype.dataToCoord;yR.prototype.radiusToData=_a.prototype.coordToData;var H9e=Je(),xR=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=xT(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=H9e(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}(_a);xR.prototype.dataToAngle=_a.prototype.dataToCoord;xR.prototype.angleToData=_a.prototype.coordToData;var Yne=["radius","angle"],U9e=function(){function e(t){this.dimensions=Yne,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new yR,this._angleAxis=new xR,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=NH(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=NH(r);return i===this?this.pointToData(n):null},e}();function NH(e){var t=e.seriesModel,r=e.polarModel;return r&&r.coordinateSystem||t&&t.coordinateSystem}function Z9e(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 Y9e(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();B(Mw(l,"radius"),function(u){i.scale.unionExtentFromData(l,u)}),B(Mw(l,"angle"),function(u){n.scale.unionExtentFromData(l,u)})}}),cf(n.scale,n.model),cf(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 X9e(e){return e.mainType==="angleAxis"}function jH(e,t){var r;if(e.type=t.get("type"),e.scale=p0(t),e.onBand=t.get("boundaryGap")&&e.type==="category",e.inverse=t.get("inverse"),X9e(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 q9e={dimensions:Yne,create:function(e,t){var r=[];return e.eachComponent("polar",function(n,i){var a=new U9e(i+"");a.update=Y9e;var o=a.getRadiusAxis(),s=a.getAngleAxis(),l=n.findAxisModel("radiusAxis"),u=n.findAxisModel("angleAxis");jH(o,l),jH(s,u),Z9e(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",tr).models[0];n.coordinateSystem=i.coordinateSystem}}),r}},K9e=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function w_(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 S_(e){var t=e.getRadiusAxis();return t.inverse?0:1}function RH(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 Q9e=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=Ce(c);var f=i.scale,h=f.type==="ordinal"?f.getRawOrdinalNumber(c.tickValue):c.tickValue;return c.coord=i.dataToCoord(h),c});RH(u),RH(s),B(K9e,function(c){r.get([c,"show"])&&(!i.scale.isBlank()||c==="axisLine")&&J9e[c](this.group,r,a,s,l,o,u)},this)}},t.type="angleAxis",t}(Pf),J9e={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=S_(r),f=c?0:1,h,d=Math.abs(u[1]-u[0])===360?"Circle":"Arc";a[f]===0?h=new Tf[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 Dv({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[S_(r)],u=se(n,function(c){return new yr({shape:w_(r,[l,l+s],c.coord)})});e.add(Ti(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[S_(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];Le(T)&&T.textStyle&&(d=new tt(T.textStyle,l,l.ecModel))}var A=new at({silent:Hn.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(A),Js({el:A,componentModel:t,itemName:f.formattedLabel,formatterParamsExtra:{isTruncated:function(){return A.isTruncated},value:f.rawLabel,tickIndex:h}}),c){var M=Hn.makeAxisEventDataBase(t);M.targetType="axisLabel",M.value=f.rawLabel,De(A).eventData=M}},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",z=I;T&&(n[c][N]||(n[c][N]={p:I,n:I}),z=n[c][N][j]);var $=void 0,U=void 0,F=void 0,V=void 0;if(v.dim==="radius"){var W=v.dataToCoord(D)-I,Y=l.dataToCoord(N);Math.abs(W)=V})}}})}function aZe(e){var t={};B(e,function(n,i){var a=n.getData(),o=n.coordinateSystem,s=o.getBaseAxis(),l=qne(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=Xne(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 B(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),B(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=BH(r);return i===this?this.dataToPoint(n):null},e.prototype.convertFromPixel=function(t,r,n){var i=BH(r);return i===this?this.pointToData(n):null},e}();function BH(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 vZe(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",tr).models[0];n.coordinateSystem=i&&i.coordinateSystem}}),r}var gZe={create:pZe,dimensions:Kne},zH=["x","y"],mZe=["width","height"],yZe=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=zM(l,1-Uw(s)),c=l.dataToPoint(n)[0],f=a.get("type");if(f&&f!=="none"){var h=vR(a),d=xZe[f](s,c,u);d.style=h,r.graphicKey=d.type,r.pointer=d}var v=bO(i);Wne(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=pR(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=Uw(o),u=zM(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=zM(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}(dR),xZe={line:function(e,t,r){var n=gR([t,r[0]],[t,r[1]],Uw(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:Hne([t-n/2,r[0]],[n,i],Uw(e))}}};function Uw(e){return e.isHorizontal()?0:1}function zM(e,t){var r=e.getRect();return[r[zH[t]],r[zH[t]]+r[mZe[t]]]}var _Ze=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 bZe(e){Ze(b0),Pf.registerAxisPointerClass("SingleAxisPointer",yZe),e.registerComponentView(_Ze),e.registerComponentView(fZe),e.registerComponentModel(vb),iv(e,"single",vb,vb.defaultOption),e.registerCoordinateSystem("single",gZe)}var wZe=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=Af(r);e.prototype.init.apply(this,arguments),$H(r,a)},t.prototype.mergeOption=function(r){e.prototype.mergeOption.apply(this,arguments),$H(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:K.color.axisLine,width:1,type:"solid"}},itemStyle:{color:K.color.neutral00,borderWidth:1,borderColor:K.color.neutral10},dayLabel:{show:!0,firstDay:0,position:"start",margin:K.size.s,color:K.color.secondary},monthLabel:{show:!0,position:"start",margin:K.size.s,align:"center",formatter:null,color:K.color.secondary},yearLabel:{show:!0,position:null,margin:K.size.xl,formatter:null,color:K.color.quaternary,fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},t}(Qe);function $H(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 WBe(t,a)&&(n[a]="auto"),n[a]!=null&&n[a]!=="auto"});Fo(e,t,{type:"box",ignoreSize:i})}var SZe=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 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 pe(r)&&r?RBe(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 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=gI(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/$M)-Math.floor(r[0].time/$M)+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){d0({targetModel:a,coordSysType:"calendar",coordSysProvider:gJ})}),n},e.dimensions=["time","value"],e}();function FM(e){var t=e.calendarModel,r=e.seriesModel,n=t?t.coordinateSystem:r?r.coordinateSystem:null;return n}function AZe(e){e.registerComponentModel(wZe),e.registerComponentView(SZe),e.registerCoordinateSystem("calendar",TZe)}var cs={level:1,leaf:2,nonLeaf:3},Ls={none:0,all:1,body:2,corner:3};function wO(e,t,r){var n=t[Re[r]].getCell(e);return!n&&ot(e)&&e<0&&(n=t[Re[1-r]].getUnitLayoutInfo(r,Math.round(e))),n}function Qne(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 Jne(e,t,r,n,i){FH(e[0],t,i,r,n,0),FH(e[1],t,i,r,n,1)}function FH(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?(VH(e,t,s,u,i,a,0),l>1&&VH(e,t,s,u,i,a,l-1)):e[0]=e[1]=NaN,u){var c=-i[Re[1-a]].getLocatorCount(a),f=i[Re[a]].getLocatorCount(a)-1;r===Ls.body?c=gr(0,c):r===Ls.corner&&(f=Ii(-1,f)),f=t[0]&&e[0]<=t[1]}function HH(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 PZe(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 UH(e,t,r,n){var i=wO(t[n][0],r,n),a=wO(t[n][1],r,n);e[Re[n]]=e[Tr[n]]=NaN,i&&a&&(e[Re[n]]=i.xy,e[Tr[n]]=a.xy+a.wh-i.xy)}function Jp(e,t,r,n){return e[Re[t]]=r,e[Re[1-t]]=n,e}function LZe(e){return e&&(e.type===cs.leaf||e.type===cs.nonLeaf)?e:null}function Zw(){return{x:NaN,y:NaN,width:NaN,height:NaN}}var ZH=function(){function e(t,r){this._cells=[],this._levels=[],this.dim=t,this.dimIdx=t==="x"?0:1,this._model=r,this._uniqueValueGen=kZe(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&&B(u,function(d,v){var g;pe(d)?g={value:d}:Le(d)?(g=d,d.value!=null&&!pe(d.value)&&(g={value:null})):g={value:null};var m={type:cs.nonLeaf,ordinal:NaN,level:f,firstLeafLocator:c,id:new Ie,span:Jp(new Ie,r.dimIdx,1,1),option:g,xy:NaN,wh:NaN,dim:r,rect:Zw()};o++,(a[c]||(a[c]=[])).push(m),i[f]||(i[f]={type:cs.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[Re[r.dimIdx]]=_,h+=_,c+=_}),h}function l(){for(var u=[];n.length=1,b=r[Re[n]],S=a.getLocatorCount(n)-1,T=new Zl;for(o.resetLayoutIterator(T,n);T.next();)A(T.item);for(a.resetLayoutIterator(T,n);T.next();)A(T.item);function A(M){mn(M.wh)&&(M.wh=x),M.xy=b,M.id[Re[n]]===S&&!_&&(M.wh=r[Re[n]]+r[Tr[n]]-M.xy),b+=M.wh}}function e8(e,t){for(var r=t[Re[e]].resetCellIterator();r.next();){var n=r.item;Yw(n.rect,e,n.id,n.span,t),Yw(n.rect,1-e,n.id,n.span,t),n.type===cs.nonLeaf&&(n.xy=n.rect[Re[e]],n.wh=n.rect[Tr[e]])}}function t8(e,t){e.travelExistingCells(function(r){var n=r.span;if(n){var i=r.spanRect,a=r.id;Yw(i,0,a,n,t),Yw(i,1,a,n,t)}})}function Yw(e,t,r,n,i){e[Tr[t]]=0;var a=r[Re[t]],o=a<0?i[Re[1-t]]:i[Re[t]],s=o.getUnitLayoutInfo(t,r[Re[t]]);if(e[Re[t]]=s.xy,e[Tr[t]]=s.wh,n[Re[t]]>1){var l=o.getUnitLayoutInfo(t,r[Re[t]]+n[Re[t]]-1);e[Tr[t]]=l.xy+l.wh-s.xy}}function GZe(e,t,r){var n=sw(e,r[Tr[t]]);return TO(n,r[Tr[t]])}function TO(e,t){return Math.max(Math.min(e,be(t,1/0)),0)}function WM(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},lo={x:null,y:null,point:[]};function r8(e,t,r,n,i){var a=r[Re[t]],o=r[Re[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[Re[t]]=dn.outside;return}if(i===Ls.body){l?(e[Re[t]]=dn.inBody,f=Ii(s.xy+s.wh,gr(l.xy,f)),e.point[t]=f):e[Re[t]]=dn.outside;return}else if(i===Ls.corner){c?(e[Re[t]]=dn.inCorner,f=Ii(c.xy+c.wh,gr(u.xy,f)),e.point[t]=f):e[Re[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[Re[t]]=dn.outside;return}f=v}e.point[t]=f,e[Re[t]]=h<=f&&f<=v?dn.inBody:d<=f&&f<=h?dn.inCorner:dn.outside}function n8(e,t,r,n){var i=1-r;if(e[Re[r]]!==dn.outside)for(n[Re[r]].resetCellIterator(GM);GM.next();){var a=GM.item;if(a8(e.point[r],a.rect,r)&&a8(e.point[i],a.rect,i)){t[r]=a.ordinal,t[i]=a.id[Re[i]];return}}}function i8(e,t,r,n){if(e[Re[r]]!==dn.outside){var i=e[Re[r]]===dn.inCorner?n[Re[1-r]]:n[Re[r]];for(i.resetLayoutIterator(P_,r);P_.next();)if(WZe(e.point[r],P_.item)){t[r]=P_.item.id[Re[r]];return}}}function WZe(e,t){return t.xy<=e&&e<=t.xy+t.wh}function a8(e,t,r){return t[Re[r]]<=e&&e<=t[Re[r]]+t[Tr[r]]}function HZe(e){e.registerComponentModel(DZe),e.registerComponentView(zZe),e.registerCoordinateSystem("matrix",VZe)}function UZe(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 o8(e,t){var r;return B(t,function(n){e[n]!=null&&e[n]!=="auto"&&(r=!0)}),r}function ZZe(e,t,r){var n=re({},r),i=e[t],a=r.$action||"merge";a==="merge"?i?(He(i,n,!0),Fo(i,n,{ignoreSize:!0}),bJ(r,i),L_(r,i),L_(r,i,"shape"),L_(r,i,"style"),L_(r,i,"extra"),r.clipPath=i.clipPath):e[t]=n:a==="replace"?e[t]=n:a==="remove"&&i&&(e[t]=null)}var tie=["transition","enterFrom","leaveTo"],YZe=tie.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function L_(e,t,r){if(r&&(!e[r]&&t[r]&&(e[r]={}),e=e[r],t=t[r]),!(!e||!t))for(var n=r?tie:YZe,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=ET(d,f,_,null,{hv:f.hv,boundingMode:f.bounding},b);if(!qi(d).isNew&&S){for(var T=f.transition,A={},M=0;M=0)?A[P]=I:d[P]=I}lt(d,A,r,0)}else d.attr(b)}}},t.prototype._clear=function(){var r=this,n=this._elMap;n.each(function(i){pb(i,qi(i).option,n,r._lastGraphicModel)}),this._elMap=_e()},t.prototype.dispose=function(){this._clear()},t.type="graphic",t}(Lt);function AO(e){var t=ye(s8,e)?s8[e]:my(e),r=new t({});return qi(r).type=e,r}function l8(e,t,r,n){var i=AO(r);return t.add(i),n.set(e,i),qi(i).id=e,qi(i).isNew=!0,i}function pb(e,t,r,n){var i=e&&e.parent;i&&(e.type==="group"&&e.traverse(function(a){pb(a,t,r,n)}),XT(e,t,n),r.removeKey(qi(e).id))}function u8(e,t,r,n){e.isGroup||B([["cursor",va.prototype.cursor],["zlevel",n||0],["z",r||0],["z2",0]],function(i){var a=i[0];ye(t,a)?e[a]=be(t[a],i[1]):e[a]==null&&(e[a]=i[1])}),B(it(t),function(i){if(i.indexOf("on")===0){var a=t[i];e[i]=Ae(a)?a:null}}),ye(t,"draggable")&&(e.draggable=t.draggable),t.name!=null&&(e.name=t.name),t.id!=null&&(e.id=t.id)}function QZe(e){return e=re({},e),B(["id","parentId","$action","hv","bounding","textContent","clipPath"].concat(mJ),function(t){delete e[t]}),e}function JZe(e,t,r){var n=De(e).eventData;!e.silent&&!e.ignore&&!n&&(n=De(e).eventData={componentType:"graphic",componentIndex:t.componentIndex,name:e.name}),n&&(n.info=r.info)}function eYe(e){e.registerComponentModel(qZe),e.registerComponentView(KZe),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 c8=["x","y","radius","angle","single"],tYe=["cartesian2d","polar","singleAxis"];function rYe(e){var t=e.get("coordinateSystem");return We(tYe,t)>=0}function Dl(e){return e+"Axis"}function nYe(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 rie(e){var t=e.ecModel,r={infoList:[],infoMap:_e()};return e.eachTargetAxis(function(n,i){var a=t.getComponent(Dl(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 HM=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}(),jy=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=f8(r);this.settledOption=a,this.mergeDefaultAndTheme(r,i),this._doInit(a)},t.prototype.mergeOption=function(r){var n=f8(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;B([["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 B(c8,function(i){var a=this.getReferringComponents(Dl(i),bRe);if(a.specified){n=!0;var o=new HM;B(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 HM;if(h.add(f.componentIndex),r.set(c,h),a=!1,c==="x"||c==="y"){var d=f.getReferringComponents("grid",tr).models[0];d&&B(u,function(v){f.componentIndex!==v.componentIndex&&d===v.getReferringComponents("grid",tr).models[0]&&h.add(v.componentIndex)})}}}a&&B(c8,function(u){if(a){var c=i.findComponents({mainType:Dl(u),filter:function(h){return h.get("type",!0)==="category"}});if(c[0]){var f=new HM;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");B([["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(Dl(n),i))},this),r},t.prototype.eachTargetAxis=function(r,n){this._targetAxisInfoMap.each(function(i,a){B(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(Dl(r),n)},t.prototype.setRawRange=function(r){var n=this.option,i=this.settledOption;B([["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;B(["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 Sh(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)}});Sh(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;Sh(["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=fN(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 sYe(e,t,r){var n=[1/0,-1/0];Sh(r,function(o){A$e(n,o.getData(),t)});var i=e.getAxisModel(),a=tte(i.axis.scale,i,n).calculate();return[a.min,a.max]}var lYe={getTargetSeries:function(e){function t(i){e.eachComponent("dataZoom",function(a){a.eachTargetAxis(function(o,s){var l=e.getComponent(Dl(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 oYe(i,a,s,e),r.push(o.__dzAxisProxy))});var n=_e();return B(r,function(i){B(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 uYe(e){e.registerAction("dataZoom",function(t,r){var n=nYe(r,t);B(n,function(i){i.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})})})}var d8=!1;function SR(e){d8||(d8=!0,e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,lYe),uYe(e),e.registerSubTypeDefaulter("dataZoom",function(){return"slider"}))}function cYe(e){e.registerComponentModel(iYe),e.registerComponentView(aYe),SR(e)}var ea=function(){function e(){}return e}(),nie={};function Th(e,t){nie[e]=t}function iie(e){return nie[e]}var fYe=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;B(this.option.feature,function(n,i){var a=iie(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:K.color.border,borderRadius:0,borderWidth:0,padding:K.size.m,itemSize:15,itemGap:K.size.s,showTitle:!0,iconStyle:{borderColor:K.color.accent50,color:"none"},emphasis:{iconStyle:{borderColor:K.color.accent50}},tooltip:{show:!1,position:"bottom"}},t}(Qe);function aie(e,t){var r=$v(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 hYe=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=[];B(u,function(_,b){f.push(b)}),new Gs(this._featureNames||[],f).add(h).update(h).remove(Fe(h,null)).execute(),this._featureNames=f;function h(_,b){var S=f[_],T=f[b],A=u[S],M=new tt(A,r,r.ecModel),P;if(a&&a.newTitle!=null&&a.featureName===S&&(A.title=a.newTitle),S&&!T){if(dYe(S))P={onclick:M.option.onclick,featureName:S};else{var I=iie(S);if(!I)return;P=new I}c[S]=P}else if(P=c[T],!P)return;P.uid=zv("toolbox-feature"),P.model=M,P.ecModel=n,P.api=i;var k=P instanceof ea;if(!S&&T){k&&P.dispose&&P.dispose(n,i);return}if(!M.get("show")||k&&P.unusable){k&&P.remove&&P.remove(n,i);return}d(M,P,S),M.setIconStatus=function(O,D){var N=this.option,j=this.iconPaths;N.iconStatus=N.iconStatus||{},N.iconStatus[O]=D,j[O]&&(D==="emphasis"?Fs:Vs)(j[O])},P instanceof ea&&P.render&&P.render(M,n,i,a)}function d(_,b,S){var T=_.getModel("iconStyle"),A=_.getModel(["emphasis","iconStyle"]),M=b instanceof ea&&b.getIcons?b.getIcons():_.get("icon"),P=_.get("title")||{},I,k;pe(M)?(I={},I[S]=M):I=M,pe(P)?(k={},k[S]=P):k=P;var O=_.iconPaths={};B(I,function(D,N){var j=Rv(D,{},{x:-s/2,y:-s/2,width:s,height:s});j.setStyle(T.getItemStyle());var z=j.ensureState("emphasis");z.style=A.getItemStyle();var $=new at({style:{text:k[N],align:A.get("textAlign"),borderRadius:A.get("textBorderRadius"),padding:A.get("textPadding"),fill:null,font:DN({fontStyle:A.get("textFontStyle"),fontFamily:A.get("textFontFamily"),fontSize:A.get("textFontSize"),fontWeight:A.get("textFontWeight")},n)},ignore:!0});j.setTextContent($),Js({el:j,componentModel:r,itemName:N,formatterParamsExtra:{title:k[N]}}),j.__title=k[N],j.on("mouseover",function(){var U=A.getItemStyle(),F=l?r.get("right")==null&&r.get("left")!=="right"?"right":"left":r.get("bottom")==null&&r.get("top")!=="bottom"?"bottom":"top";$.setStyle({fill:A.get("textFill")||U.fill||U.stroke||K.color.neutral99,backgroundColor:A.get("textBackgroundColor")}),j.setTextConfig({position:A.get("textPosition")||F}),$.ignore=!r.get("showTitle"),i.enterEmphasis(this)}).on("mouseout",function(){_.get(["iconStatus",N])!=="emphasis"&&i.leaveEmphasis(this),$.hide()}),(_.get(["iconStatus",N])==="emphasis"?Fs:Vs)(j),o.add(j),j.on("click",ge(b.onclick,b,n,i,N)),O[N]=j})}var v=jr(r,i).refContainer,g=r.getBoxLayoutParams(),m=r.get("padding"),x=$t(g,v,m);zc(r.get("orient"),o,r.get("itemGap"),x.width,x.height),ET(o,g,v,m),o.add(aie(o.getBoundingRect(),r)),l||o.eachChild(function(_){var b=_.__title,S=_.ensureState("emphasis"),T=S.textConfig||(S.textConfig={}),A=_.getTextContent(),M=A&&A.ensureState("emphasis");if(M&&!Ae(M)&&b){var P=M.style||(M.style={}),I=xT(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){B(this._features,function(o){o instanceof ea&&o.updateView&&o.updateView(o.model,n,i,a)})},t.prototype.remove=function(r,n){B(this._features,function(i){i instanceof ea&&i.remove&&i.remove(r,n)}),this.group.removeAll()},t.prototype.dispose=function(r,n){B(this._features,function(i){i instanceof ea&&i.dispose&&i.dispose(r,n)})},t.type="toolbox",t}(Lt);function dYe(e){return e.indexOf("my")===0}var vYe=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")||K.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 A=i.get("lang"),M='',P=window.open();P.document.write(M),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:K.color.neutral00,name:"",excludeComponents:["toolbox"],lang:r.getLocaleModel().get(["toolbox","saveAsImage","lang"])};return n},t}(ea),v8="__ec_magicType_stack__",pYe=[["line","bar"],["stack"]],gYe=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 B(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(p8[i]){var s={series:[]},l=function(f){var h=f.subType,d=f.id,v=p8[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(_,tr).models[0],S=b.componentIndex;s[_]=s[_]||[];for(var T=0;T<=S;T++)s[_][S]=s[_][S]||{};s[_][S].boundaryGap=i==="bar"}}};B(pYe,function(f){We(f,i)>=0&&B(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),p8={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")===v8;if(e==="line"||e==="bar")return n.setIconStatus("stack",i?"normal":"emphasis"),He({id:t,stack:i?"":v8},n.get(["option","stack"])||{},!0)}};Ka({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},function(e,t){t.mergeOption(e.newOption)});var qT=new Array(60).join("-"),lv=" ";function mYe(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 yYe(e){var t=[];return B(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()];B(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(lv)],c=0;c=0)return!0}var CO=new RegExp("["+lv+"]+","g");function wYe(e){for(var t=e.split(/\n+/g),r=Xw(t.shift()).split(CO),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 PYe(e){var t=TR(e),r=t[t.length-1];t.length>1&&t.pop();var n={};return oie(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 LYe(e){sie(e).snapshots=null}function kYe(e){return TR(e).length}function TR(e){var t=sie(e);return t.snapshots||(t.snapshots=[{}]),t.snapshots}var IYe=function(e){q(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.onclick=function(r,n){LYe(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);Ka({type:"restore",event:"restore",update:"prepareAndUpdate"},function(e,t){t.resetOption("recreate")});var OYe=["grid","xAxis","yAxis","geo","graph","polar","radiusAxis","angleAxis","bmap"],AR=function(){function e(t,r,n){var i=this;this._targetInfoList=[];var a=g8(r,t);B(EYe,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=UM[n.brushType](0,a,i);n.__rangeOffset={offset:_8[n.brushType](o.values,n.range,[1,1]),xyMinMax:o.xyMinMax}}}),t},e.prototype.matchOutputRanges=function(t,r,n){B(t,function(i){var a=this.findTargetInfo(i,r);a&&a!==!0&&B(a.coordSyses,function(o){var s=UM[i.brushType](1,o,i.range,!0);n(i,s.values,o,r)})},this)},e.prototype.setInputRanges=function(t,r){B(t,function(n){var i=this.findTargetInfo(n,r);if(n.range=n.range||[],i&&i!==!0){n.panelId=i.panelId;var a=UM[n.brushType](0,i.coordSys,n.coordRange),o=n.__rangeOffset;n.range=o?_8[n.brushType](a.values,o.offset,DYe(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:hne(i),isTargetByCursor:vne(i,t,n.coordSysModel),getLinearBrushOtherExtent:dne(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=g8(r,t),a=0;ae[1]&&e.reverse(),e}function g8(e,t){return ld(e,t,{includeMainTypes:OYe})}var EYe={grid:function(e,t){var r=e.xAxisModels,n=e.yAxisModels,i=e.gridModels,a=_e(),o={},s={};!r&&!n&&!i||(B(r,function(l){var u=l.axis.grid.model;a.set(u.id,u),o[u.id]=!0}),B(n,function(l){var u=l.axis.grid.model;a.set(u.id,u),s[u.id]=!0}),B(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=[];B(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:y8.grid,xAxisDeclared:o[l.id],yAxisDeclared:s[l.id]})}))},geo:function(e,t){B(e.geoModels,function(r){var n=r.coordinateSystem;t.push({panelId:"geo--"+r.id,geoModel:r,coordSysModel:r,coordSys:n,coordSyses:[n],getPanelRect:y8.geo})})}},m8=[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}],y8={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var e=this.coordSys,t=e.getBoundingRect().clone();return t.applyTransform(Xl(e)),t}},UM={lineX:Fe(x8,0),lineY:Fe(x8,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=[MO([i[0],a[0]]),MO([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 x8(e,t,r,n){var i=r.getAxis(["x","y"][e]),a=MO(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 _8={lineX:Fe(b8,0),lineY:Fe(b8,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 b8(e,t,r,n){return[t[0]-n[e]*r[0],t[1]-n[e]*r[1]]}function DYe(e,t){var r=w8(e),n=w8(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 w8(e){return e?[e[0][1]-e[0][0],e[1][1]-e[1][0]]:[NaN,NaN]}var PO=B,NYe=gRe("toolbox-dataZoom_"),jYe=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 qj(i.getZr()),this._brushController.on("brush",ge(this._onBrush,this)).mount()),zYe(r,n,this,a,i),BYe(r,n)},t.prototype.onclick=function(r,n,i){RYe[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 AR(CR(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)}}),MYe(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=ou(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=[];PO(r,function(i,a){n.push(Ce(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:K.color.backgroundTint}};return n},t}(ea),RYe={zoom:function(){var e=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:e})},back:function(){this._dispatchZoomAction(PYe(this.ecModel))}};function CR(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 BYe(e,t){e.setIconStatus("back",kYe(t)>1?"emphasis":"normal")}function zYe(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 AR(CR(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)}KBe("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=CR(n),o=ld(e,a);PO(o.xAxisModels,function(l){return s(l,"xAxis","xAxisIndex")}),PO(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:NYe+u+f};h[c]=f,i.push(h)}return i});function $Ye(e){e.registerComponentModel(fYe),e.registerComponentView(hYe),Th("saveAsImage",vYe),Th("magicType",gYe),Th("dataView",AYe),Th("dataZoom",jYe),Th("restore",IYe),Ze(cYe)}var FYe=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:K.color.neutral00,shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,defaultBorderColor:K.color.border,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:K.color.borderShade,width:1,type:"dashed",textStyle:{}}},textStyle:{color:K.color.tertiary,fontSize:14}},t}(Qe);function lie(e){var t=e.get("confine");return t!=null?!!t:e.get("renderMode")==="richText"}function uie(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 YYe(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?""+MR+i:",left"+i+",top"+i)),WYe+":"+a}function S8(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;"+MR+":"+o+";":[["top",0],["left",0],[cie,o]]}function XYe(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),B(["decoration","align"],function(u){var c=e.get(u);c&&t.push("text-"+u+":"+c)}),t.join(";")}function qYe(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=JJ(e,"html"),d=u+"px "+c+"px "+s+"px "+l;return i.push("box-shadow:"+d),t&&a>0&&i.push(YYe(a,r,n)),o&&i.push("background-color:"+o),B(["width","color","radius"],function(v){var g="border-"+v,m=ZN(g),x=e.get(m);x!=null&&i.push(g+":"+x+(v==="color"?"":"px"))}),i.push(XYe(f)),h!=null&&i.push("padding:"+$v(h).join("px ")+"px"),i.join(";")+";"}function T8(e,t,r,n,i){var a=t&&t.painter;if(r){var o=a&&a.getViewportRoot();o&&NNe(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 KYe=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):tf(a)?a:Ae(a)&&a(t.getDom()));T8(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=GYe(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=HYe+qYe(t,!this._firstShow,this._longHide,this._enableDisplayTransition)+S8(a[0],a[1],!0)+("border-color:"+uf(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"&&!lie(n)&&(s=ZYe(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=M8(a,i);this._ticket="";var s=a.dataByCoordSys,l=iXe(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=JYe;c.x=a.x,c.y=a.y,c.update(),De(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=Zne(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(M8(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=tg([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=De(i);if(s.ssrType==="legend")return;this._lastDataByCoordSys=null;var l,u;Pc(i,function(c){if(c.tooltipDisabled)return l=u=null,!0;l||u||(De(c).dataIndex!=null?l=c:De(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=tg([n.tooltipOption],a),l=this._renderMode,u=[],c=Ar("section",{blocks:[],noHeader:!0}),f=[],h=new M2;B(r,function(_){B(_.dataByAxis,function(b){var S=i.getComponent(b.axisDim+"Axis",b.axisIndex),T=b.value;if(!(!S||T==null)){var A=Gne(T,S.axis,i,b.seriesDataIndices,b.valueLabelOpt),M=Ar("section",{header:A,noHeader:!Ci(A),sortBlocks:!0,blocks:[]});c.blocks.push(M),B(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=Cw(S.axis,{value:T}),O.axisValueLabel=A,O.marker=h.makeTooltipMarker("item",uf(O.color),l);var D=GV(I.formatTooltip(k,!0,null)),N=D.frag;if(N){var j=tg([I],a).get("valueFormatter");M.blocks.push(j?re({valueFormatter:j},N):N)}D.text&&f.push(D.text),u.push(O)}})}})}),c.blocks.reverse(),f.reverse();var d=n.position,v=s.get("order"),g=XV(c,h,l,v,i.get("useUTC"),s.get("textStyle"));g&&f.unshift(g);var m=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=De(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=tg([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 M2;x.marker=_.makeTooltipMarker("item",uf(x.color),d);var b=GV(u.formatTooltip(c,!1,f)),S=g.get("order"),T=g.get("valueFormatter"),A=b.frag,M=A?XV(T?re({valueFormatter:T},A):A,_,d,S,a.get("useUTC"),g.get("textStyle")):b.text,P="item_"+u.name+"_"+c;this._showOrMove(g,function(){this._showTooltipContent(g,M,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=De(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=Ce(l),l.content=On(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=tg(f,this._tooltipModel,d?{position:d}:null),g=v.get("content"),m=Math.random()+"",x=new M2;this._showOrMove(v,function(){var _=Ce(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=h0(x.axisValue,d,m)),d=YN(d,i,!0)}else if(Ae(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),Ae(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(Le(n)){var g=n;g.width=f[0],g.height=f[1];var m=$t(g,{width:u,height:c});i=m.x,a=m.y,h=null,d=null}else if(pe(n)&&l){var x=nXe(n,v,f,r.get("borderWidth"));i=x[0],a=x[1]}else{var x=tXe(i,a,o,u,c,h?null:20,d?null:20);i=x[0],a=x[1]}if(h&&(i-=P8(h)?f[0]/2:h==="right"?f[0]:0),d&&(a-=P8(d)?f[1]/2:d==="bottom"?f[1]:0),lie(r)){var x=rXe(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&&B(i,function(s,l){var u=s.dataByAxis||[],c=r[l]||{},f=c.dataByAxis||[];o=o&&u.length===f.length,o&&B(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&&B(g,function(x,_){var b=m[_];o=o&&x.seriesIndex===b.seriesIndex&&x.dataIndex===b.dataIndex}),a&&B(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()||(by(this,"_updatePosition"),this._tooltipContent.dispose(),_O("itemTooltip",n))},t.type="tooltip",t}(Lt);function tg(e,t,r){var n=t.ecModel,i;r?(i=new tt(r,n,n),i=new tt(t.option,i,n)):i=t;for(var a=e.length-1;a>=0;a--){var o=e[a];o&&(o instanceof tt&&(o=o.get("tooltip",!0)),pe(o)&&(o={formatter:o}),o&&(i=new tt(o,i,n)))}return i}function M8(e,t){return e.dispatchAction||ge(t.dispatchAction,t)}function tXe(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 rXe(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 nXe(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 P8(e){return e==="center"||e==="middle"}function iXe(e,t,r){var n=gN(e).queryOptionMap,i=n.keys()[0];if(!(!i||i==="series")){var a=Ov(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=De(u).tooltipConfig;if(c&&c.name===e.name)return l=u,!0}),l)return{componentMainType:i,componentIndex:o.componentIndex,el:l}}}}function aXe(e){Ze(b0),e.registerComponentModel(FYe),e.registerComponentView(eXe),e.registerAction({type:"showTip",event:"showTip",update:"tooltip:manuallyShowTip"},lr),e.registerAction({type:"hideTip",event:"hideTip",update:"tooltip:manuallyHideTip"},lr)}var oXe=["rect","polygon","keep","clear"];function sXe(e,t){var r=Pt(e?e.brush:[]);if(r.length){var n=[];B(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),lXe(s),t&&!s.length&&s.push.apply(s,oXe)}}function lXe(e){var t={};B(e,function(r){t[r]=1}),e.length=0,B(t,function(r,n){e.push(n)})}var L8=B;function k8(e){if(e){for(var t in e)if(e.hasOwnProperty(t))return!0}}function LO(e,t,r){var n={};return L8(t,function(a){var o=n[a]=i();L8(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=Ce(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 hie(e,t,r){var n;B(r,function(i){t.hasOwnProperty(i)&&k8(t[i])&&(n=!0)}),n&&B(r,function(i){t.hasOwnProperty(i)&&k8(t[i])?e[i]=Ce(t[i]):delete e[i]})}function uXe(e,t,r,n,i,a){var o={};B(e,function(f){var h=Hr.prepareVisualTypes(t[f]);o[f]=h});var s;function l(f){return ij(r,s,f)}function u(f,h){uee(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 cXe(e,t,r,n){var i={};return B(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 ij(s,f,T)}function c(T,A){uee(s,f,T,A)}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&&N8(t)}};function N8(e){return new Oe(e[0][0],e[1][0],e[0][1]-e[0][0],e[1][1]-e[1][0])}var mXe=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 qj(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){die(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:Ce(i),$from:n}),r.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:n,areas:Ce(i),$from:n})},t.type="brush",t}(Lt),yXe=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&&hie(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 j8(this.option,n)},this))},t.prototype.setBrushOption=function(r){this.brushOption=j8(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:K.color.backgroundTint,borderColor:K.color.borderTint},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4,defaultOutOfBrushColor:K.color.disabled},t}(Qe);function j8(e,t){return He({brushType:e.brushType,brushMode:e.brushMode,transformable:e.transformable,brushStyle:new tt(e.brushStyle).getItemStyle(),removeOnClick:e.removeOnClick,z:e.z},t,!0)}var xXe=["rect","polygon","lineX","lineY","keep","clear"],_Xe=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,B(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 B(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:xXe.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 bXe(e){e.registerComponentView(mXe),e.registerComponentModel(yXe),e.registerPreprocessor(sXe),e.registerVisual(e.PRIORITY.VISUAL.BRUSH,hXe),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"},lr),e.registerAction({type:"brushEnd",event:"brushEnd",update:"none"},lr),Th("brush",_Xe)}var wXe=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:K.size.m,backgroundColor:K.color.transparent,borderColor:K.color.primary,borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:K.color.primary},subtextStyle:{fontSize:12,color:K.color.quaternary}},t}(Qe),SXe=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(){pw(v,"_"+r.get("target"))}),g&&d.on("click",function(){pw(g,"_"+r.get("subtarget"))}),De(c).eventData=De(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=$t(_,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 A=S.margin,M=r.getItemStyle(["color","opacity"]);M.fill=r.get("backgroundColor");var P=new Xe({shape:{x:x.x-A[3],y:x.y-A[0],width:x.width+A[1]+A[3],height:x.height+A[0]+A[2],r:r.get("borderRadius")},style:M,subPixelOptimize:!0,silent:!0});a.add(P)}},t.type="title",t}(Lt);function TXe(e){e.registerComponentModel(wXe),e.registerComponentView(SXe)}var R8=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=[],B(n,function(u,c){var f=Ir(Iv(u),""),h;Le(u)?(h=Ce(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:K.size.m,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:K.color.secondary},data:[]},t}(Qe),vie=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=_u(R8.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:K.color.border,borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:K.color.accent10},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:K.color.tertiary},itemStyle:{color:K.color.accent20,borderWidth:0},checkpointStyle:{symbol:"circle",symbolSize:15,color:K.color.accent50,borderColor:K.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:K.color.accent50,borderColor:K.color.accent50,borderWidth:0},emphasis:{label:{show:!0,color:K.color.accent60},itemStyle:{color:K.color.accent60,borderColor:K.color.accent60},controlStyle:{color:K.color.accent70,borderColor:K.color.accent70}},progress:{lineStyle:{color:K.color.accent30},itemStyle:{color:K.color.accent40}},data:[]}),t}(R8);fr(vie,NT.prototype);var AXe=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),CXe=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}(_a),YM=Math.PI,B8=Je(),MXe=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})},B(["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=LXe(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:YM/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*YM/180;var _,b,S,T=h.get("position",!0),A=d&&h.get("showPlayBtn",!0),M=d&&h.get("showPrevBtn",!0),P=d&&h.get("showNextBtn",!0),I=0,k=f;T==="left"||T==="bottom"?(A&&(_=[0,0],I+=m),M&&(b=[I,0],I+=m),P&&(S=[k-v,0],k-=m)):(A&&(_=[k-v,0],k-=m),M&&(b=[0,0],I+=m),P&&(S=[k-v,0],k-=m));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: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;Ua(s,s,[-l,-u]),Ks(s,s,-YM/2),Ua(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,A,M,P){S[M]+=A[M][P]-T[M][P]}},t.prototype._createAxis=function(r,n){var i=n.getData(),a=n.get("axisType"),o=PXe(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 CXe("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 yr({shape:{x1:o[0],y1:0,x2:o[1],y2:0},style:re({lineCap:"round"},a.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});n.add(s);var l=this._progressLine=new yr({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=[],B(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=z8(f,h,n,g);m.ensureState("emphasis").style=d.getItemStyle(),m.ensureState("progress").style=v.getItemStyle(),Yl(m);var x=De(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=[],B(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),Yl(x),B8(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=Za(be(a.get(["controlStyle",v+"BtnSize"]),o),o),_=[0,-x/2,x,x],b=kXe(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),Yl(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),$8(f,u._progressLine,s,i,a,!0)},onUpdate:function(f){$8(f,u._progressLine,s,i,a)}};this._currentPointer=z8(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=Mi(a.getExtent().slice());i>o[1]&&(i=o[1]),i=0&&(s[o]=+s[o].toFixed(v)),[s,d]}var E_={min:Fe(O_,"min"),max:Fe(O_,"max"),average:Fe(O_,"average"),median:Fe(O_,"median")};function Ry(e,t){if(t){var r=e.getData(),n=e.coordinateSystem,i=n&&n.dimensions;if(!jXe(t)&&!ae(t.coord)&&ae(i)){var a=pie(t,r,n,e);if(t=Ce(t),t.type&&E_[t.type]&&a.baseAxis&&a.valueAxis){var o=We(i,a.baseAxis.dim),s=We(i,a.valueAxis.dim),l=E_[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&&E_[t.type]){var c=n.getOtherAxis(u);c&&(t.value=qw(r,r.mapDimension(c.dim),t.type))}}else for(var f=t.coord,h=0;h<2;h++)E_[f[h]]&&(f[h]=qw(r,r.mapDimension(i[h]),f[h]));return t}}function pie(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(RXe(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 RXe(e,t){var r=e.getData().getDimensionInfo(t);return r&&r.coordDim}function By(e,t){return e&&e.containData&&t.coord&&!IO(t)?e.containData(t.coord):!0}function BXe(e,t,r){return e&&e.containZone&&t.coord&&r.coord&&!IO(t)&&!IO(r)?e.containZone(t.coord,r.coord):!0}function gie(e,t){return e?function(r,n,i,a){var o=a<2?r.coord&&r.coord[a]:r.value;return Kl(o,t[a])}:function(r,n,i,a){return Kl(r.value,t[a])}}function qw(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 XM=Je(),LR=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){XM(s).keep=!1}),n.eachSeries(function(s){var l=Go.getMarkerModelFromSeries(s,a.type);l&&a.renderSeries(s,l,n,i)}),o.each(function(s){!XM(s).keep&&a.group.remove(s.group)}),zXe(n,o,this.type)},t.prototype.markKeep=function(r){XM(r).keep=!0},t.prototype.toggleBlurSeries=function(r,n){var i=this;B(r,function(a){var o=Go.getMarkerModelFromSeries(a,i.type);if(o){var s=o.getData();s.eachItemGraphicEl(function(l){l&&(n?IQ(l):TN(l))})}})},t.type="marker",t}(Lt);function zXe(e,t,r){e.eachSeries(function(n){var i=Go.getMarkerModelFromSeries(n,r),a=t.get(n.id);if(i&&a&&a.group){var o=lf(i),s=o.z,l=o.zlevel;IT(a.group,s,l)}})}function V8(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 $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.updateTransform=function(r,n,i){n.eachSeries(function(a){var o=Go.getMarkerModelFromSeries(a,"markPoint");o&&(V8(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 m0),f=FXe(o,r,n);n.setData(f),V8(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(Ae(v)||Ae(g)||Ae(m)||Ae(x)){var b=n.getRawValue(h),S=n.getDataParams(h);Ae(v)&&(v=v(b,S)),Ae(g)&&(g=g(b,S)),Ae(m)&&(m=m(b,S)),Ae(x)&&(x=x(b,S))}var T=d.getModel("itemStyle").getItemStyle(),A=d.get("z2"),M=v0(l,"color");T.fill||(T.fill=M),f.setItemVisual(h,{z2:be(A,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){De(d).dataModel=n})}),this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markPoint",t}(LR);function FXe(e,t,r){var n;e?n=se(e&&e.dimensions,function(s){var l=t.getData().getDimensionInfo(t.getData().mapDimension(s))||{};return re(re({},l),{name:s,ordinalMeta:null})}):n=[{name:"value",type:"float"}];var i=new Dn(n,r),a=se(r.get("data"),Fe(Ry,t));e&&(a=ht(a,Fe(By,e)));var o=gie(!!e,n);return i.initData(a,null,o),i}function VXe(e){e.registerComponentModel(NXe),e.registerComponentView($Xe),e.registerPreprocessor(function(t){PR(t.series,"markPoint")&&(t.markPoint=t.markPoint||{})})}var GXe=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}(Go),D_=Je(),WXe=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=pie(n,i,t,e);s=u.valueAxis;var c=mj(i,u.valueDataDim);l=qw(i,c,o)}var f=s.dim==="x"?0:1,h=1-f,d=Ce(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=[Ry(e,a[0]),Ry(e,a[1]),re({},a[2])];return m[2].type=m[2].type||null,He(m[2],m[0]),He(m[2],m[1]),m};function Kw(e){return!isNaN(e)&&!isFinite(e)}function G8(e,t,r,n){var i=1-e,a=n.dimensions[e];return Kw(t[i])&&Kw(r[i])&&t[e]===r[e]&&n.getAxis(a).containData(t[e])}function HXe(e,t){if(e.type==="cartesian2d"){var r=t[0].coord,n=t[1].coord;if(r&&n&&(G8(1,r,n,e)||G8(0,r,n,e)))return!0}return By(e,t[0])&&By(e,t[1])}function qM(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(au(a,"cartesian2d")){var d=a.getAxis("x"),v=a.getAxis("y"),c=a.dimensions;Kw(e.get(c[0],t))?s[0]=d.toGlobalCoord(d.getExtent()[r?0:1]):Kw(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 UXe=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=Go.getMarkerModelFromSeries(a,"markLine");if(o){var s=o.getData(),l=D_(o).from,u=D_(o).to;l.each(function(c){qM(l,c,!0,a,i),qM(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 Yj);this.group.add(c.group);var f=ZXe(o,r,n),h=f.from,d=f.to,v=f.line;D_(n).from=h,D_(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),A=T.getModel("lineStyle").getLineStyle();v.setItemLayout(S,[h.getItemLayout(S),d.getItemLayout(S)]);var M=T.get("z2");A.stroke==null&&(A.stroke=h.getItemVisual(S,"style").fill),v.setItemVisual(S,{z2:be(M,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:A})}),c.updateData(v),f.line.eachItemGraphicEl(function(S){De(S).dataModel=n,S.traverse(function(T){De(T).dataModel=n})});function b(S,T,A){var M=S.getItemModel(T);qM(S,T,A,r,a);var P=M.getModel("itemStyle").getItemStyle();P.fill==null&&(P.fill=v0(l,"color")),S.setItemVisual(T,{symbolKeepAspect:M.get("symbolKeepAspect"),symbolOffset:be(M.get("symbolOffset",!0),_[A?0:1]),symbolRotate:be(M.get("symbolRotate",!0),x[A?0:1]),symbolSize:be(M.get("symbolSize"),m[A?0:1]),symbol:be(M.get("symbol",!0),g[A?0:1]),style:P})}this.markKeep(c),c.group.silent=n.get("silent")||r.get("silent")},t.type="markLine",t}(LR);function ZXe(e,t,r){var n;e?n=se(e&&e.dimensions,function(u){var c=t.getData().getDimensionInfo(t.getData().mapDimension(u))||{};return re(re({},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(WXe,t,e,r));e&&(s=ht(s,Fe(HXe,e)));var l=gie(!!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 YXe(e){e.registerComponentModel(GXe),e.registerComponentView(UXe),e.registerPreprocessor(function(t){PR(t.series,"markLine")&&(t.markLine=t.markLine||{})})}var XXe=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}(Go),N_=Je(),qXe=function(e,t,r,n){var i=n[0],a=n[1];if(!(!i||!a)){var o=Ry(e,i),s=Ry(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=vT([{},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 Qw(e){return!isNaN(e)&&!isFinite(e)}function W8(e,t,r,n){var i=1-e;return Qw(t[i])&&Qw(r[i])}function KXe(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 au(e,"cartesian2d")?r&&n&&(W8(1,r,n)||W8(0,r,n))?!0:BXe(e,i,a):By(e,i)||By(e,a)}function H8(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(au(a,"cartesian2d")){var _=a.getAxis("x"),b=a.getAxis("y"),g=e.get(r[0],t),m=e.get(r[1],t);Qw(g)?s[0]=_.toGlobalCoord(_.getExtent()[r[0]==="x0"?0:1]):Qw(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 U8=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],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=Go.getMarkerModelFromSeries(a,"markArea");if(o){var s=o.getData();s.each(function(l){var u=se(U8,function(f){return H8(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=JXe(o,r,n);n.setData(f),f.each(function(h){var d=se(U8,function(k){return H8(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))];Mi(_),Mi(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:K.size.m,align:"auto",backgroundColor:K.color.transparent,borderColor:K.color.border,borderRadius:0,borderWidth:0,padding:5,itemGap:8,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:K.color.disabled,inactiveBorderColor:K.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:K.color.disabled,inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:K.color.secondary},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:K.color.tertiary,borderWidth:1,borderColor:K.color.border},emphasis:{selectorLabel:{show:!0,color:K.color.quaternary}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1},triggerEvent:!1},t}(Qe),vh=Fe,EO=B,j_=Me,mie=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 j_),this.group.add(this._selectorGroup=new j_),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=$t(f,c,h),v=this.layoutInner(r,o,d,a,l,u),g=$t(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=aie(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)}),EO(n.getData(),function(v,g){var m=this,x=v.get("name");if(!this.newlineDisabled&&(x===""||x===` +`)){var _=new j_;_.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")||{},A=S.getVisual("legendIcon"),M=S.getVisual("style"),P=this._createItem(b,x,g,v,n,r,T,M,A,f,a);P.on("click",vh(Z8,x,null,a,d)).on("mouseover",vh(DO,b.name,null,a,d)).on("mouseout",vh(NO,b.name,null,a,d)),i.ssr&&P.eachChild(function(I){var k=De(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 O=I.legendVisualProvider;if(!O.containName(x))return;var D=O.indexOfName(x),N=O.getItemVisual(D,"style"),j=O.getItemVisual(D,"legendIcon"),z=En(N.fill);z&&z[3]===0&&(z[3]=.2,N=re(re({},N),{fill:sa(z,"rgba")}));var $=this._createItem(I,x,g,v,n,r,{},N,j,f,a);$.on("click",vh(Z8,null,x,a,d)).on("mouseover",vh(DO,null,x,a,d)).on("mouseout",vh(NO,null,x,a,d)),i.ssr&&$.eachChild(function(U){var F=De(U);F.seriesIndex=I.seriesIndex,F.dataIndex=g,F.ssrType="legend"}),h&&$.eachChild(function(U){k.packEventData(U,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};De(r).eventData=s},t.prototype._createSelector=function(r,n,i,a,o){var s=this.getSelectorGroup();EO(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}),Yl(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=rqe(c,a,l,u,d,m,h),T=new j_,A=a.getModel("textStyle");if(Ae(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 M=b==="inherit"&&r.getData().getVisual("symbol")?x==="inherit"?r.getData().getVisual("symbolRotate"):x:0;T.add(nqe({itemWidth:v,itemHeight:g,icon:c,iconRotate:M,itemStyle:S.itemStyle,symbolKeepAspect:_}))}var P=s==="left"?v+5:-5,I=s,k=o.get("formatter"),O=n;pe(k)&&k?O=k.replace("{name}",n??""):Ae(k)&&(O=k(n));var D=m?A.getTextColor():a.get("inactiveColor");T.add(new at({style:Mt(A,{text:O,x:P,y:g/2,fill:D,align:I,verticalAlign:"middle"},{inheritColor:D})}));var N=new Xe({shape:T.getBoundingRect(),style:{fill:"transparent"}}),j=a.getModel("tooltip");return j.get("show")&&Js({el:N,componentModel:o,itemName:n,itemTooltipOption:j.option}),T.add(N),T.eachChild(function(z){z.silent=!0}),N.silent=!f,this.getContentGroup().add(T),Yl(T),T.__legendDataIndex=i,T},t.prototype.layoutInner=function(r,n,i,a,o,s){var l=this.getContentGroup(),u=this.getSelectorGroup();zc(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){zc("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}(Lt);function rqe(e,t,r,n,i,a,o){function s(m,x){m.lineWidth==="auto"&&(m.lineWidth=x.lineWidth>0?2:0),EO(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:ev(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 nqe(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=K.color.neutral00,r.style.lineWidth=2),r}function Z8(e,t,r,n){NO(e,t,r,n),r.dispatchAction({type:"legendToggleSelect",name:e??t}),DO(e,t,r,n)}function yie(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 A={x:0,y:0};A[o]=Math.max(i[o]-v[o]-b,0),A[s]=T[s],f.setClipPath(new Xe({shape:A})),f.__rectSize=A[o]}else h.eachChild(function(P){P.attr({invisible:!0,silent:!0})});var M=this._getPageInfo(r);return M.pageIndex!=null&<(c,{x:M.contentPosition[0],y:M.contentPosition[1]},g?r:null),this._updatePageInfoView(r,M),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;B(["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=KM[o],l=QM[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(A){if(A){var M=A.getBoundingRect(),P=M[l]+A[l];return{s:P,e:P+M[s],i:A.__legendDataIndex}}}function T(A,M){return A.e>=M&&A.s<=M+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}(mie);function lqe(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 uqe(e){Ze(xie),e.registerComponentModel(oqe),e.registerComponentView(sqe),lqe(e)}function cqe(e){Ze(xie),Ze(uqe)}var 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.type="dataZoom.inside",t.defaultOption=_u(jy.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),t}(jy),kR=Je();function hqe(e,t,r){kR(e).coordSysRecordMap.each(function(n){var i=n.dataZoomInfoMap.get(t.uid);i&&(i.getRange=r)})}function dqe(e,t){for(var r=kR(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 yqe(e){e.registerProcessor(e.PRIORITY.PROCESSOR.FILTER,function(t,r){var n=kR(r),i=n.coordSysRecordMap||(n.coordSysRecordMap=_e());i.each(function(a){a.dataZoomInfoMap=null}),t.eachComponent({mainType:"dataZoom",subType:"inside"},function(a){var o=rie(a);B(o.infoList,function(s){var l=s.model.uid,u=i.get(l)||i.set(l,vqe(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){_ie(i,a);return}var c=mqe(l,a,r);o.enable(c.controlType,c.opt),Gv(a,"dispatchAction",s.model.get("throttle",!0),"fixRate")})})}var xqe=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(),hqe(i,r,{pan:ge(JM.pan,this),zoom:ge(JM.zoom,this),scrollMove:ge(JM.scrollMove,this)})},t.prototype.dispose=function(){this._clear(),e.prototype.dispose.apply(this,arguments)},t.prototype._clear=function(){dqe(this.api,this.dataZoomModel),this.range=null},t.type="dataZoom.inside",t}(wR),JM={zoom:function(e,t,r,n){var i=this.range,a=i.slice(),o=e.axisModels[0];if(o){var s=eP[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(ou(0,a,[0,100],0,c.minSpan,c.maxSpan),this.range=a,i[0]!==a[0]||i[1]!==a[1])return a}},pan:K8(function(e,t,r,n,i,a){var o=eP[n]([a.oldX,a.oldY],[a.newX,a.newY],t,i,r);return o.signal*(e[1]-e[0])*o.pixel/o.pixelLength}),scrollMove:K8(function(e,t,r,n,i,a){var o=eP[n]([0,0],[a.scrollDelta,a.scrollDelta],t,i,r);return o.signal*(e[1]-e[0])*a.scrollDelta})};function K8(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(ou(l,o,[0,100],"all"),this.range=o,a[0]!==o[0]||a[1]!==o[1])return o}}}var eP={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 bie(e){SR(e),e.registerComponentModel(fqe),e.registerComponentView(xqe),yqe(e)}var _qe=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=_u(jy.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:K.color.accent10,borderRadius:0,backgroundColor:K.color.transparent,dataBackground:{lineStyle:{color:K.color.accent30,width:.5},areaStyle:{color:K.color.accent20,opacity:.2}},selectedDataBackground:{lineStyle:{color:K.color.accent40,width:.5},areaStyle:{color:K.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:K.color.neutral00,borderColor:K.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:K.color.accent40,opacity:.5},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:K.color.tertiary},brushSelect:!0,brushStyle:{color:K.color.accent30,opacity:.3},emphasis:{handleLabel:{show:!0},handleStyle:{borderColor:K.color.accent40},moveHandleStyle:{opacity:.8}},defaultLocationEdgeGap:15}),t}(jy),ig=Xe,bqe=1,tP=30,wqe=7,ag="horizontal",Q8="vertical",Sqe=5,Tqe=["line","bar","candlestick","scatter"],Aqe={easing:"cubicOut",duration:100,delay:0},Cqe=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),Gv(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(){by(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?wqe:0,o=jr(r,n).refContainer,s=this._findCoordRect(),l=r.get("defaultLocationEdgeGap",!0)||0,u=this._orient===ag?{right:o.width-s.x-s.width,top:o.height-tP-l-a,width:s.width,height:tP}:{right:l,top:s.y,width:tP,height:s.height},c=Af(r.option);B(["right","top","width","height"],function(h){c[h]==="ph"&&(c[h]=u[h])});var f=$t(c,o);this._location={x:f.x,y:f.y},this._size=[f.width,f.height],this._orient===Q8&&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===ag&&!o?{scaleY:l?1:-1,scaleX:1}:i===ag&&o?{scaleY:l?1:-1,scaleX:-1}:i===Q8&&!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 ig({silent:!0,shape:{x:0,y:0,width:n[0],height:n[1]},style:{fill:r.get("backgroundColor")},z2:-40}));var o=new ig({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=-_,A=Math.round(o.count()/n[0]),M;o.each([r.thisDim,l],function(D,N,j){if(A>0&&j%A){S||(T+=_);return}T=S?(+D-f[0])*b:T+_;var z=N==null||isNaN(N)||N==="",$=z?0:gt(N,h,v,!0);z&&!M&&j?(m.push([m[m.length-1][0],0]),x.push([x[x.length-1][0],0])):!z&&M&&(m.push([T,0]),x.push([T,0])),z||(m.push([T,$]),x.push([T,$])),M=z}),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"),j=new Me,z=new wn({shape:{points:u},segmentIgnoreThreshold:1,style:N.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),$=new on({shape:{points:c},segmentIgnoreThreshold:1,style:N.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return j.add(z),j.add($),j}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();B(l,function(u){if(!i&&!(n!==!0&&We(Tqe,u.get("type"))<0)){var c=a.getComponent(Dl(o),s).axis,f=Mqe(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 ig({silent:f,style:{fill:l.get("fillerColor")},textConfig:{position:"inside"}});o.add(h),o.add(new ig({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:bqe,fill:K.color.transparent}})),B([0,1],function(b){var S=l.get("handleIcon");!yw[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:Pqe(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 A=T.getBoundingRect(),M=l.get("handleSize");this._handleHeight=ve(M,this._size[1]),this._handleWidth=A.width/A.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(),Yl(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: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,K.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];ou(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=Mi([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=Mi(i.slice()),o=this._size;B([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();ou(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=Mi([gt(l[0],o,s,!0),gt(l[1],o,s,!0)]),this._updateView(),this._dispatchZoomAction(!1)}}}},t.prototype._onBrush=function(r){this._brushing&&($s(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 ig({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?Aqe:null,start:n[0],end:n[1]})},t.prototype._findCoordRect=function(){var r,n=rie(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}(wR);function Mqe(e){var t={x:"y",y:"x",radius:"angle",angle:"radius"};return t[e]}function Pqe(e){return e==="vertical"?"ns-resize":"ew-resize"}function wie(e){e.registerComponentModel(_qe),e.registerComponentView(Cqe),SR(e)}function Lqe(e){Ze(bie),Ze(wie)}var Sie={get:function(e,t,r){var n=Ce((kqe[e]||{})[t]);return r&&ae(n)?n[n.length-1]:n}},kqe={color:{active:["#006edd","#e0ffff"],inactive:[K.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]}},J8=Hr.mapVisual,Iqe=Hr.eachVisual,Oqe=ae,eU=B,Eqe=Mi,Dqe=gt,Jw=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&&hie(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=LO(this.option.controller,n,r),this.targetVisuals=LO(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=Ov(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){B(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(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=Eqe([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){Oqe(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]={},eU(v,function(m,x){if(Hr.isValidType(x)){var _=Sie.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";eU(this.stateList,function(x){var _=this.itemSize,b=f[x];b||(b=f[x]={color:s?v:[v]}),b.symbol==null&&(b.symbol=h&&Ce(h)||(s?m:[m])),b.symbolSize==null&&(b.symbolSize=d&&Ce(d)||(s?_[0]:[_[0],_[0]])),b.symbol=J8(b.symbol,function(A){return A==="none"?m:A});var S=b.symbolSize;if(S!=null){var T=-1/0;Iqe(S,function(A){A>T&&(T=A)}),b.symbolSize=J8(S,function(A){return Dqe(A,[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:K.color.transparent,borderColor:K.color.borderTint,contentColor:K.color.theme[0],inactiveColor:K.color.disabled,borderWidth:0,padding:K.size.m,textGap:10,precision:0,textStyle:{color:K.color.secondary}},t}(Qe),tU=[20,140],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.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]=tU[0]),(r[1]==null||isNaN(r[1]))&&(r[1]=tU[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),B(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=Mi((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=rU(this,"outOfRange",this.getExtent()),i=rU(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);jqe([0,1],function(f){var h=o[f];h.setStyle("fill",n.handlesColor[f]),h.y=r[f];var d=fo(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=Ga(i.handleLabelPoints[f],Xl(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=fo(r,s,u,!0),m=l[0]-v/2,x={x:f.x,y:f.y};f.y=g,f.x=m;var _=Ga(c.indicatorLabelPoint,Xl(f,this.group)),b=c.indicatorLabel;b.attr("invisible",!1);var S=this._applyTransform("left",c.mainGroup),T=this._orient,A=T==="horizontal";b.setStyle({text:(i||"")+o.formatValueText(n),verticalAlign:A?S:"middle",align:A?"center":S});var M={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(M,I),b.animateTo(P,I)}else f.attr(M),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||oU(i))&&(d=this._hoverLinkDataIndices=i.findTargetDataIndices(f));var v=xRe(h,d);this._dispatchHighDown("downplay",gb(v[0],i)),this._dispatchHighDown("highlight",gb(v[1],i))}},t.prototype._hoverLinkFromSeriesMouseOver=function(r){var n;if(Pc(r.target,function(l){var u=De(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 Wqe(e,t,r,n){for(var i=t.targetVisuals[n],a=Hr.prepareVisualTypes(i),o={color:v0(e.getData(),"color")},s=0,l=a.length;s0:t.splitNumber>0)||t.calculable)?"continuous":"piecewise"}),e.registerAction(Fqe,Vqe),B(Gqe,function(t){e.registerVisual(e.PRIORITY.VISUAL.COMPONENT,t)}),e.registerPreprocessor(Hqe))}function Mie(e){e.registerComponentModel(Nqe),e.registerComponentView(zqe),Cie(e)}var Uqe=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=[],Zqe[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=Ce(a)):(o.dataExtent=this.getExtent(),o.mappingMethod="piecewise",o.pieceList=se(this._pieceList,function(l){return l=Ce(l),s!=="inRange"&&(l.visual=null),l}))})},t.prototype.completeVisualOption=function(){var r=this.option,n={},i=Hr.listVisualTypes(),a=this.isCategory();B(r.pieces,function(s){B(i,function(l){s.hasOwnProperty(l)&&(n[l]=1)})}),B(n,function(s,l){var u=!1;B(this.stateList,function(c){u=u||o(r,c,l)||o(r.target,c,l)},this),!u&&B(this.stateList,function(c){(r[c]||(r[c]={}))[l]=Sie.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,B(a,function(l,u){var c=this.getSelectedMapKey(l);o.hasOwnProperty(c)||(o[c]=!0)},this),i.selectedMode==="single"){var s=!1;B(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=Ce(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 B(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=_u(Jw.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}(Jw),Zqe={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 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.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),B(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),zc(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:gb(s.findTargetDataIndices(n),s)})}},t.prototype._getItemAlign=function(){var r=this.visualMapModel,n=r.option;if(n.orient==="vertical")return Aie(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=Ce(i.selected),s=n.getSelectedMapKey(r);a==="single"||a===!0?(o[s]=!0,B(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}(Tie);function Pie(e){e.registerComponentModel(Uqe),e.registerComponentView(Yqe),Cie(e)}function Xqe(e){Ze(Mie),Ze(Pie)}var qqe=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:QQ(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}(),Kqe=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 qqe(this);if(this._target=null,this.ecModel.eachSeries(function(i){NW(i,null)}),this.shouldShow()){var n=this.getTarget();NW(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:K.color.border,borderWidth:2},windowStyle:{borderWidth:1,color:K.color.neutral30,borderColor:K.color.neutral40,opacity:.3},z:10},t}(Qe),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.render=function(r,n,i){if(this._api=i,this._model=r,this._coordSys||(this._coordSys=new kf),!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")||K.color.neutral00);var l=jr(r,i).refContainer,u=$t(yJ(r,!0),l),c=s.lineWidth||0,f=this._contentRect=sf(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(),hU(r,this)},t.prototype.renderContent=function(r){this._bridgeRendered=r,this._isEnabled()&&(this._dealRenderContent(),this._dealUpdateWindow(),hU(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=$t({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=da([],r.targetTrans),i=Fa([],this._coordSys.transform,n);this._transThisToTarget=da([],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 Lf(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=ur([],[r.oldX,r.oldY],n),a=ur([],[r.oldX-r.dx,r.oldY-r.dy],n);this._api.dispatchAction(fU(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=ur([],[r.originX,r.originY],n);this._api.dispatchAction(fU(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 fU(e,t){var r=e.mainType==="series"?e.subType+"Roam":e.mainType+"Roam",n={type:r};return n[e.mainType+"Id"]=e.id,re(n,t),n}function hU(e,t){var r=lf(e);IT(t.group,r.z,r.zlevel)}function Jqe(e){e.registerComponentModel(Kqe),e.registerComponentView(Qqe)}var eKe={label:{enabled:!0},decal:{show:!1}},dU=Je(),tKe={};function rKe(e,t){var r=e.getModel("aria");if(!r.get("enabled"))return;var n=Ce(eKe);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)),dU(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 _=bI(h.ecModel,h.name,tKe,e.getSeriesCount()),b=d.getVisual("decal");d.setVisual("decal",S(b,_))}else{var v=h.getRawData(),g={},m=dU(h).scope;d.each(function(T){var A=d.getRawIndex(T);g[A]=T});var x=v.count();v.each(function(T){var A=g[T],M=v.getName(T)||T+"",P=bI(h.ecModel,M,m,x),I=d.getItemVisual(A,"decal");d.setItemVisual(A,"decal",S(I,P))})}function S(T,A){var M=T?re(re({},A),T):A;return M.dirty=!0,M}})}}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 j=f.get(["data","partialData"]);k+=o(j,{displayCnt:d})}else k+=f.get(["data","allData"]);for(var z=f.get(["data","separator","middle"]),$=f.get(["data","separator","end"]),U=f.get(["data","excludeDimensionId"]),F=[],V=0;V":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},aKe=function(){function e(t){var r=this._condVal=pe(t)?new RegExp(t):wK(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}(),oKe=function(){function e(){}return e.prototype.evaluate=function(){return this.value},e}(),sKe=function(){function e(){}return e.prototype.evaluate=function(){for(var t=this.children,r=0;r2&&n.push(i),i=[N,j]}function c(N,j,z,$){Uh(N,z)&&Uh(j,$)||i.push(N,j,z,$,z,$)}function f(N,j,z,$,U,F){var V=Math.abs(j-N),W=Math.tan(V/4)*4/3,Y=jP:O2&&n.push(i),n}function RO(e,t,r,n,i,a,o,s,l,u){if(Uh(e,r)&&Uh(t,n)&&Uh(i,o)&&Uh(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=[];nu(e,r,i,o,.5,I),nu(t,n,a,s,.5,k),RO(I[0],k[0],I[1],k[1],I[2],k[2],I[3],k[3],l,u),RO(I[4],k[4],I[5],k[5],I[6],k[6],I[7],k[7],l,u)}function bKe(e,t){var r=jO(e),n=[];t=t||1;for(var i=0;i0)for(var u=0;uMath.abs(u),f=kie([l,u],c?0:1,t),h=(c?s:u)/f.length,d=0;di,o=kie([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 TKe(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 gh(e,t){var r=e[e.length-1];r&&r[0]===t[0]&&r[1]===t[1]||e.push(t)}function AKe(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),AKe(t,u,c)}function eS(e,t,r,n){if(r===1)n.push(t);else{var i=Math.floor(r/2),a=e(t);eS(e,a[0],i,n),eS(e,a[1],r-i,n)}return n}function CKe(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 nS(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:NKe(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 Eie(e){return LKe(e.path,e.count)}function BO(){return{fromIndividuals:[],toIndividuals:[],count:0}}function jKe(e,t,r){var n=[];function i(T){for(var A=0;A=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 BKe={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;wU(e)&&(u=e,c=t),wU(t)&&(u=t,c=e);function f(x,_,b,S,T){var A=x.many,M=x.one;if(A.length===1&&!T){var P=_?A[0]:M,I=_?M:A[0];if(tS(P))f({many:[P],one:I},!0,b,S,!0);else{var k=s?Pe({delay:s(b,S)},l):l;OR(P,I,k),a(P,I,P,I,k)}}else for(var O=Pe({dividePath:BKe[r],individualDelay:s&&function(U,F,V,W){return s(U+b,S)}},l),D=_?jKe(A,M,O):RKe(M,A,O),N=D.fromIndividuals,j=D.toIndividuals,z=N.length,$=0;$t.length,d=u?SU(c,u):SU(h?t:e,[h?e:t]),v=0,g=0;gDie))for(var a=n.getIndices(),o=0;o0&&A.group.traverse(function(P){P instanceof rt&&!P.animators.length&&P.animateFrom({style:{opacity:0}},M)})})}function PU(e){var t=e.getModel("universalTransition").get("seriesKey");return t||e.id}function LU(e){return ae(e)?e.sort().join(","):e}function _l(e){if(e.hostModel)return e.hostModel.getModel("universalTransition").get("divideShape")}function HKe(e,t){var r=_e(),n=_e(),i=_e();return B(e.oldSeries,function(a,o){var s=e.oldDataGroupIds[o],l=e.oldData[o],u=PU(a),c=LU(u);n.set(c,{dataGroupId:s,data:l}),ae(u)&&B(u,function(f){i.set(f,{key:c,dataGroupId:s,data:l})})}),B(t.updatedSeries,function(a){if(a.isUniversalTransitionEnabled()&&a.isAnimationEnabled()){var o=a.get("dataGroupId"),s=a.getData(),l=PU(a),u=LU(l),c=n.get(u);if(c)r.set(u,{oldSeries:[{dataGroupId:c.dataGroupId,divide:_l(c.data),data:c.data}],newSeries:[{dataGroupId:o,divide:_l(s),data:s}]});else if(ae(l)){var f=[];B(l,function(v){var g=n.get(v);g.data&&f.push({dataGroupId:g.dataGroupId,divide:_l(g.data),data:g.data})}),f.length&&r.set(u,{oldSeries:f,newSeries:[{dataGroupId:o,data:s,divide:_l(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:_l(h.data)}],newSeries:[]},r.set(h.key,d)),d.newSeries.push({dataGroupId:o,data:s,divide:_l(s)})}}}}),r}function kU(e,t){for(var r=0;r=0&&i.push({dataGroupId:t.oldDataGroupIds[s],data:t.oldData[s],divide:_l(t.oldData[s]),groupIdDim:o.dimension})}),B(Pt(e.to),function(o){var s=kU(r.updatedSeries,o);if(s>=0){var l=r.updatedSeries[s].getData();a.push({dataGroupId:t.oldDataGroupIds[s],data:l,divide:_l(l),groupIdDim:o.dimension})}}),i.length>0&&a.length>0&&Nie(i,a,n)}function ZKe(e){e.registerUpdateLifecycle("series:beforeupdate",function(t,r,n){B(Pt(n.seriesTransition),function(i){B(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=IU,n=OU,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 XKe(){return new YKe}var IU=0,OU=0;function qKe(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()}};B(e.breaks,function(s){var l=s.gapParsed;l.type==="tpPrct"&&(r+=l.val);var u=ER(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));B(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 KKe(e,t,r,n,i,a){e!=="no"&&B(r,function(o){var s=ER(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}B(e,function(o){if(!(!o||o.start==null||o.end==null)&&!o.isExpanded){var s={breakOption:Ce(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&&B(["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 B(n,function(o,s){a>o.vmin&&(n[s]=null),a=o.vmax}),{breaks:n.filter(function(o){return!!o})}}function DR(e,t){return $O(t)===$O(e)}function $O(e){return e.start+"_\0_"+e.end}function JKe(e,t,r){var n=[];B(e,function(a,o){var s=t(a);s&&s.type==="vmin"&&n.push([o])}),B(e,function(a,o){var s=t(a);if(s&&s.type==="vmax"){var l=mu(n,function(u){return DR(t(e[u[0]]).parsedBreak.breakOption,s.parsedBreak.breakOption)});l&&l.push(o)}});var i=[];return B(n,function(a){a.length===2&&i.push(r?a:[e[a[0]],e[a[1]]])}),i}function eQe(e,t,r,n){var i,a;if(e.break){var o=e.break.parsedBreak,s=mu(r,function(f){return DR(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"?mr(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 tQe(e,t,r){var n={noNegative:!0},i=zO(e,r,n),a=zO(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 rQe={vmin:"start",vmax:"end"};function nQe(e,t){return t&&(e=e||{},e.break={type:rQe[t.type],start:t.parsedBreak.vmin,end:t.parsedBreak.vmax}),e}function iQe(){CBe({createScaleBreakContext:XKe,pruneTicksByBreak:KKe,addBreaksToTicks:QKe,parseAxisBreakOption:zO,identifyAxisBreak:DR,serializeAxisBreakIdentifier:$O,retrieveAxisBreakPairs:JKe,getTicksLogTransformBreak:eQe,logarithmicParseBreaksFromOption:tQe,makeAxisLabelFormatterParamBreak:nQe})}var EU=Je();function aQe(e,t){var r=mu(e,function(n){return Sr().identifyAxisBreak(n.parsedBreak.breakOption,t.breakOption)});return r||e.push(r={zigzagRandomList:[],parsedBreak:t,shouldRemove:!1}),r}function oQe(e){B(e,function(t){return t.shouldRemove=!0})}function sQe(e){for(var t=e.length-1;t>=0;t--)e[t].shouldRemove&&e.splice(t,1)}function lQe(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=EU(t).visualList||(EU(t).visualList=[]);oQe(T);for(var A=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]=F;fe&&(J=F);var ze=[],xe=[];ze[$]=O,xe[$]=D,!le&&!fe&&(ze[$]+=Z?-l:l,xe[$]-=Z?l:-l),ze[U]=J,xe[U]=J,W.push(ze),Y.push(xe);var ie=void 0;if(ne_[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),FI(r[0],m),FI(r[1],x)}function fQe(e,t){var r={breaks:[]};return B(t.breaks,function(n){if(n){var i=mu(e.get("breaks",!0),function(s){return Sr().identifyAxisBreak(s,n)});if(i){var a=t.type,o={isExpanded:!!i.isExpanded};i.isExpanded=a===VT?!0:a===rre?!1:a===nre?!i.isExpanded:i.isExpanded,r.breaks.push({start:i.start,end:i.end,isExpanded:!!i.isExpanded,old:o})}}}),r}function hQe(){s6e({adjustBreakLabelPair:cQe,buildAxisBreakLine:uQe,rectCoordBuildBreakAxis:lQe,updateModelAxisBreak:fQe})}function dQe(e){d6e(e),iQe(),hQe()}function vQe(){D6e(pQe)}function pQe(e,t){B(e,function(r){if(!r.model.get(["axisLabel","inside"])){var n=gQe(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 gQe(e){var t=e.model,r=e.scale;if(!t.get(["axisLabel","show"])||r.isBlank())return;var n,i,a=r.getExtent();r instanceof tv?i=r.count():(n=r.getTicks(),i=n.length);var o=e.getLabelModel(),s=Uv(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 EQe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function DQe(e){return e==="ROUTER"||e==="ROUTER_LATE"?30:e==="REPEATER"||e==="TRACKER"?25:e==="CLIENT_MUTE"?7:e==="CLIENT_BASE"?12:15}function NQe({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=>jU.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=EQe(_.latitude),S=NU[b%NU.length],T=jU.includes(_.role),A=_.node_num===r,M=f.has(_.node_num),P=r===null||A||M;return{id:String(_.node_num),name:_.short_name,value:_.node_num,symbolSize:DQe(_.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:OQe(_.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(IQe,{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(HE,{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 Bie(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 jQe(e,t,r){t.center!==r.center&&e.setLatLng(t.center),t.radius!=null&&t.radius!==r.radius&&e.setRadius(t.radius)}const RQe=1;function BQe(e){return Object.freeze({__version:RQe,map:e})}function zie(e,t){return Object.freeze({...e,...t})}const $ie=H.createContext(null),Fie=$ie.Provider;function eA(){const e=H.useContext($ie);if(e==null)throw new Error("No context provided: useLeafletContext() can only be used in a descendant of ");return e}function zQe(e){function t(r,n){const{instance:i,context:a}=e(r).current;return H.useImperativeHandle(n,()=>i),r.children==null?null:Q.createElement(Fie,{value:a},r.children)}return H.forwardRef(t)}function $Qe(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?aZ.createPortal(r.children,s):null}return H.forwardRef(t)}function FQe(e){function t(r,n){const{instance:i}=e(r).current;return H.useImperativeHandle(n,()=>i),null}return H.forwardRef(t)}function BR(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 tA(e,t){const r=e.pane??t.pane;return r?{...e,pane:r}:e}function VQe(e,t){return function(n,i){const a=eA(),o=e(tA(n,a),a);return Bie(a.map,n.attribution),BR(o.current,n.eventHandlers),t(o.current,a,n,i),o}}var GO={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)})(og,function(r){var n="1.9.4";function i(p){var w,C,E,R;for(C=1,E=arguments.length;C"u"||!L||!L.Mixin)){p=b(p)?p:[p];for(var w=0;w0?Math.floor(p):Math.ceil(p)};F.prototype={clone:function(){return new F(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 F(this.x*p.x,this.y*p.y)},unscaleBy:function(p){return new F(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=V(this.x),this.y=V(this.y),this},distanceTo:function(p){p=W(p);var w=p.x-this.x,C=p.y-this.y;return Math.sqrt(w*w+C*C)},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,C){return p instanceof F?p:b(p)?new F(p[0],p[1]):p==null?p:typeof p=="object"&&"x"in p&&"y"in p?new F(p.x,p.y):new F(p,w,C)}function Y(p,w){if(p)for(var C=w?[p,w]:p,E=0,R=C.length;E=this.min.x&&C.x<=this.max.x&&w.y>=this.min.y&&C.y<=this.max.y},intersects:function(p){p=Z(p);var w=this.min,C=this.max,E=p.min,R=p.max,G=R.x>=w.x&&E.x<=C.x,X=R.y>=w.y&&E.y<=C.y;return G&&X},overlaps:function(p){p=Z(p);var w=this.min,C=this.max,E=p.min,R=p.max,G=R.x>w.x&&E.xw.y&&E.y=w.lat&&R.lat<=C.lat&&E.lng>=w.lng&&R.lng<=C.lng},intersects:function(p){p=ne(p);var w=this._southWest,C=this._northEast,E=p.getSouthWest(),R=p.getNorthEast(),G=R.lat>=w.lat&&E.lat<=C.lat,X=R.lng>=w.lng&&E.lng<=C.lng;return G&&X},overlaps:function(p){p=ne(p);var w=this._southWest,C=this._northEast,E=p.getSouthWest(),R=p.getNorthEast(),G=R.lat>w.lat&&E.latw.lng&&E.lng1,rae=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}(),nae=function(){return!!document.createElement("canvas").getContext}(),iA=!!(document.createElementNS&&Ge("svg").createSVGRect),iae=!!iA&&function(){var p=document.createElement("div");return p.innerHTML="",(p.firstChild&&p.firstChild.namespaceURI)==="http://www.w3.org/2000/svg"}(),aae=!iA&&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}}(),oae=navigator.platform.indexOf("Mac")===0,sae=navigator.platform.indexOf("Linux")===0;function Qa(p){return navigator.userAgent.toLowerCase().indexOf(p)>=0}var Ue={ie:Vt,ielt9:nr,edge:jn,webkit:qr,android:Jn,android23:Of,androidStock:T0,opera:rA,chrome:VR,gecko:GR,safari:Zie,phantom:WR,opera12:HR,win:Yie,ie3d:UR,webkit3d:nA,gecko3d:ZR,any3d:Xie,mobile:Kv,mobileWebkit:qie,mobileWebkit3d:Kie,msPointer:YR,pointer:XR,touch:Qie,touchNative:qR,mobileOpera:Jie,mobileGecko:eae,retina:tae,passiveEvents:rae,canvas:nae,svg:iA,vml:aae,inlineSvg:iae,mac:oae,linux:sae},KR=Ue.msPointer?"MSPointerDown":"pointerdown",QR=Ue.msPointer?"MSPointerMove":"pointermove",JR=Ue.msPointer?"MSPointerUp":"pointerup",e5=Ue.msPointer?"MSPointerCancel":"pointercancel",aA={touchstart:KR,touchmove:QR,touchend:JR,touchcancel:e5},t5={touchstart:dae,touchmove:A0,touchend:A0,touchcancel:A0},Ef={},r5=!1;function lae(p,w,C){return w==="touchstart"&&hae(),t5[w]?(C=t5[w].bind(this,C),p.addEventListener(aA[w],C,!1),C):(console.warn("wrong event specified:",w),f)}function uae(p,w,C){if(!aA[w]){console.warn("wrong event specified:",w);return}p.removeEventListener(aA[w],C,!1)}function cae(p){Ef[p.pointerId]=p}function fae(p){Ef[p.pointerId]&&(Ef[p.pointerId]=p)}function n5(p){delete Ef[p.pointerId]}function hae(){r5||(document.addEventListener(KR,cae,!0),document.addEventListener(QR,fae,!0),document.addEventListener(JR,n5,!0),document.addEventListener(e5,n5,!0),r5=!0)}function A0(p,w){if(w.pointerType!==(w.MSPOINTER_TYPE_MOUSE||"mouse")){w.touches=[];for(var C in Ef)w.touches.push(Ef[C]);w.changedTouches=[w],p(w)}}function dae(p,w){w.MSPOINTER_TYPE_TOUCH&&w.pointerType===w.MSPOINTER_TYPE_TOUCH&&un(w),A0(p,w)}function vae(p){var w={},C,E;for(E in p)C=p[E],w[E]=C&&C.bind?C.bind(p):C;return p=w,w.type="dblclick",w.detail=2,w.isTrusted=!1,w._simulated=!0,w}var pae=200;function gae(p,w){p.addEventListener("dblclick",w);var C=0,E;function R(G){if(G.detail!==1){E=G.detail;return}if(!(G.pointerType==="mouse"||G.sourceCapabilities&&!G.sourceCapabilities.firesTouchEvents)){var X=l5(G);if(!(X.some(function(oe){return oe instanceof HTMLLabelElement&&oe.attributes.for})&&!X.some(function(oe){return oe instanceof HTMLInputElement||oe instanceof HTMLSelectElement}))){var te=Date.now();te-C<=pae?(E++,E===2&&w(vae(G))):E=1,C=te}}}return p.addEventListener("click",R),{dblclick:w,simDblclick:R}}function mae(p,w){p.removeEventListener("dblclick",w.dblclick),p.removeEventListener("click",w.simDblclick)}var oA=P0(["transform","webkitTransform","OTransform","MozTransform","msTransform"]),Qv=P0(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),i5=Qv==="webkitTransition"||Qv==="OTransition"?Qv+"End":"transitionend";function a5(p){return typeof p=="string"?document.getElementById(p):p}function Jv(p,w){var C=p.style[w]||p.currentStyle&&p.currentStyle[w];if((!C||C==="auto")&&document.defaultView){var E=document.defaultView.getComputedStyle(p,null);C=E?E[w]:null}return C==="auto"?null:C}function Tt(p,w,C){var E=document.createElement(p);return E.className=w||"",C&&C.appendChild(E),E}function ir(p){var w=p.parentNode;w&&w.removeChild(p)}function C0(p){for(;p.firstChild;)p.removeChild(p.firstChild)}function Df(p){var w=p.parentNode;w&&w.lastChild!==p&&w.appendChild(p)}function Nf(p){var w=p.parentNode;w&&w.firstChild!==p&&w.insertBefore(p,w.firstChild)}function sA(p,w){if(p.classList!==void 0)return p.classList.contains(w);var C=M0(p);return C.length>0&&new RegExp("(^|\\s)"+w+"(\\s|$)").test(C)}function ut(p,w){if(p.classList!==void 0)for(var C=v(w),E=0,R=C.length;E0?2*window.devicePixelRatio:1;function c5(p){return Ue.edge?p.wheelDeltaY/2:p.deltaY&&p.deltaMode===0?-p.deltaY/_ae: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 xA(p,w){var C=w.relatedTarget;if(!C)return!0;try{for(;C&&C!==p;)C=C.parentNode}catch{return!1}return C!==p}var bae={__proto__:null,on:st,off:Ht,stopPropagation:Au,disableScrollPropagation:yA,disableClickPropagation:np,preventDefault:un,stop:Cu,getPropagationPath:l5,getMousePosition:u5,getWheelDelta:c5,isExternalTarget:xA,addListener:st,removeListener:Ht},f5=U.extend({run:function(p,w,C,E){this.stop(),this._el=p,this._inProgress=!0,this._duration=C||.25,this._easeOutPower=1/Math.max(E||.5,.2),this._startPos=Tu(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,C=this._duration*1e3;wthis.options.maxZoom)?this.setZoom(p):this},panInsideBounds:function(p,w){this._enforcingBounds=!0;var C=this.getCenter(),E=this._limitCenter(C,this._zoom,ne(p));return C.equals(E)||this.panTo(E,w),this._enforcingBounds=!1,this},panInside:function(p,w){w=w||{};var C=W(w.paddingTopLeft||w.padding||[0,0]),E=W(w.paddingBottomRight||w.padding||[0,0]),R=this.project(this.getCenter()),G=this.project(p),X=this.getPixelBounds(),te=Z([X.min.add(C),X.max.subtract(E)]),oe=te.getSize();if(!te.contains(G)){this._enforcingBounds=!0;var de=G.subtract(te.getCenter()),Ee=te.extend(G).getSize().subtract(oe);R.x+=de.x<0?-Ee.x:Ee.x,R.y+=de.y<0?-Ee.y:Ee.y,this.panTo(this.unproject(R),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 C=this.getSize(),E=w.divideBy(2).round(),R=C.divideBy(2).round(),G=E.subtract(R);return!G.x&&!G.y?this:(p.animate&&p.pan?this.panBy(G):(p.pan&&this._rawPanBy(G),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:C}))},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),C=o(this._handleGeolocationError,this);return p.watch?this._locationWatchId=navigator.geolocation.watchPosition(w,C,p):navigator.geolocation.getCurrentPosition(w,C,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,C=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: "+C+"."})}},_handleGeolocationResponse:function(p){if(this._container._leaflet_id){var w=p.coords.latitude,C=p.coords.longitude,E=new le(w,C),R=E.toBounds(p.coords.accuracy*2),G=this._locateOptions;if(G.setView){var X=this.getBoundsZoom(R);this.setView(E,G.maxZoom?Math.min(X,G.maxZoom):X)}var te={latlng:E,bounds:R,timestamp:p.timestamp};for(var oe in p.coords)typeof p.coords[oe]=="number"&&(te[oe]=p.coords[oe]);this.fire("locationfound",te)}},addHandler:function(p,w){if(!w)return this;var C=this[p]=new w(this);return this._handlers.push(C),this.options[p]&&C.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(),ir(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)ir(this._panes[p]);return this._layers=[],this._panes=[],delete this._mapPane,delete this._renderer,this},createPane:function(p,w){var C="leaflet-pane"+(p?" leaflet-"+p.replace("Pane","")+"-pane":""),E=Tt("div",C,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()),C=this.unproject(p.getTopRight());return new J(w,C)},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,C){p=ne(p),C=W(C||[0,0]);var E=this.getZoom()||0,R=this.getMinZoom(),G=this.getMaxZoom(),X=p.getNorthWest(),te=p.getSouthEast(),oe=this.getSize().subtract(C),de=Z(this.project(te,E),this.project(X,E)).getSize(),Ee=Ue.any3d?this.options.zoomSnap:1,et=oe.x/de.x,pt=oe.y/de.y,Rn=w?Math.max(et,pt):Math.min(et,pt);return E=this.getScaleZoom(Rn,E),Ee&&(E=Math.round(E/(Ee/100))*(Ee/100),E=w?Math.ceil(E/Ee)*Ee:Math.floor(E/Ee)*Ee),Math.max(R,Math.min(G,E))},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new F(this._container.clientWidth||0,this._container.clientHeight||0),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(p,w){var C=this._getTopLeftPoint(p,w);return new Y(C,C.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 C=this.options.crs;return w=w===void 0?this._zoom:w,C.scale(p)/C.scale(w)},getScaleZoom:function(p,w){var C=this.options.crs;w=w===void 0?this._zoom:w;var E=C.zoom(p*C.scale(w));return isNaN(E)?1/0:E},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(ne(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 u5(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=a5(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=Jv(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),Cr(this._mapPane,new F(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,C){Cr(this._mapPane,new F(0,0));var E=!this._loaded;this._loaded=!0,w=this._limitZoom(w),this.fire("viewprereset");var R=this._zoom!==w;this._moveStart(R,C)._move(p,w)._moveEnd(R),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,C,E){w===void 0&&(w=this._zoom);var R=this._zoom!==w;return this._zoom=w,this._lastCenter=p,this._pixelOrigin=this._getNewPixelOrigin(p),E?C&&C.pinch&&this.fire("zoom",C):((R||C&&C.pinch)&&this.fire("zoom",C),this.fire("move",C)),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){Cr(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?Ht: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 C=[],E,R=w==="mouseout"||w==="mouseover",G=p.target||p.srcElement,X=!1;G;){if(E=this._targets[l(G)],E&&(w==="click"||w==="preclick")&&this._draggableMoved(E)){X=!0;break}if(E&&E.listens(w,!0)&&(R&&!xA(G,p)||(C.push(E),R))||G===this._container)break;G=G.parentNode}return!C.length&&!X&&!R&&this.listens(w,!0)&&(C=[this]),C},_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 C=p.type;C==="mousedown"&&dA(w),this._fireDOMEvent(p,C)}},_mouseEvents:["click","dblclick","mouseover","mouseout","contextmenu"],_fireDOMEvent:function(p,w,C){if(p.type==="click"){var E=i({},p);E.type="preclick",this._fireDOMEvent(E,E.type,C)}var R=this._findEventTargets(p,w);if(C){for(var G=[],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(),C=this.getMaxZoom(),E=Ue.any3d?this.options.zoomSnap:1;return E&&(p=Math.round(p/E)*E),Math.max(w,Math.min(C,p))},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){_r(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(p,w){var C=this._getCenterOffset(p)._trunc();return(w&&w.animate)!==!0&&!this.getSize().contains(C)?!1:(this.panBy(C,w),!0)},_createAnimProxy:function(){var p=this._proxy=Tt("div","leaflet-proxy leaflet-zoom-animated");this._panes.mapPane.appendChild(p),this.on("zoomanim",function(w){var C=oA,E=this._proxy.style[C];Su(this._proxy,this.project(w.center,w.zoom),this.getZoomScale(w.zoom,1)),E===this._proxy.style[C]&&this._animatingZoom&&this._onZoomTransitionEnd()},this),this.on("load moveend",this._animMoveEnd,this),this._on("unload",this._destroyAnimProxy,this)},_destroyAnimProxy:function(){ir(this._proxy),this.off("load moveend",this._animMoveEnd,this),delete this._proxy},_animMoveEnd:function(){var p=this.getCenter(),w=this.getZoom();Su(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,C){if(this._animatingZoom)return!0;if(C=C||{},!this._zoomAnimated||C.animate===!1||this._nothingToAnimate()||Math.abs(w-this._zoom)>this.options.zoomAnimationThreshold)return!1;var E=this.getZoomScale(w),R=this._getCenterOffset(p)._divideBy(1-1/E);return C.animate!==!0&&!this.getSize().contains(R)?!1:(O(function(){this._moveStart(!0,C.noMoveStart||!1)._animateZoom(p,w,!0)},this),!0)},_animateZoom:function(p,w,C,E){this._mapPane&&(C&&(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 wae(p,w){return new bt(p,w)}var ba=j.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),C=this.getPosition(),E=p._controlCorners[C];return ut(w,"leaflet-control"),C.indexOf("bottom")!==-1?E.insertBefore(w,E.firstChild):E.appendChild(w),this._map.on("unload",this.remove,this),this},remove:function(){return this._map?(ir(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()}}),ip=function(p){return new ba(p)};bt.include({addControl:function(p){return p.addTo(this),this},removeControl:function(p){return p.remove(),this},_initControlPos:function(){var p=this._controlCorners={},w="leaflet-",C=this._controlContainer=Tt("div",w+"control-container",this._container);function E(R,G){var X=w+R+" "+w+G;p[R+G]=Tt("div",X,C)}E("top","left"),E("top","right"),E("bottom","left"),E("bottom","right")},_clearControlPos:function(){for(var p in this._controlCorners)ir(this._controlCorners[p]);ir(this._controlContainer),delete this._controlCorners,delete this._controlContainer}});var h5=ba.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0,hideSingleBase:!1,sortLayers:!1,sortFunction:function(p,w,C,E){return C1,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)),C=w.overlay?p.type==="add"?"overlayadd":"overlayremove":p.type==="add"?"baselayerchange":null;C&&this._map.fire(C,w)},_createRadioElement:function(p,w){var C='",E=document.createElement("div");return E.innerHTML=C,E.firstChild},_addItem:function(p){var w=document.createElement("label"),C=this._map.hasLayer(p.layer),E;p.overlay?(E=document.createElement("input"),E.type="checkbox",E.className="leaflet-control-layers-selector",E.defaultChecked=C):E=this._createRadioElement("leaflet-base-layers_"+l(this),C),this._layerControlInputs.push(E),E.layerId=l(p.layer),st(E,"click",this._onInputClick,this);var R=document.createElement("span");R.innerHTML=" "+p.name;var G=document.createElement("span");w.appendChild(G),G.appendChild(E),G.appendChild(R);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,C,E=[],R=[];this._handlingClick=!0;for(var G=p.length-1;G>=0;G--)w=p[G],C=this._getLayer(w.layerId).layer,w.checked?E.push(C):w.checked||R.push(C);for(G=0;G=0;R--)w=p[R],C=this._getLayer(w.layerId).layer,w.disabled=C.options.minZoom!==void 0&&EC.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(){Ht(p,"click",un),w._preventClick=!1})}}),Sae=function(p,w,C){return new h5(p,w,C)},_A=ba.extend({options:{position:"topleft",zoomInText:'',zoomInTitle:"Zoom in",zoomOutText:'',zoomOutTitle:"Zoom out"},onAdd:function(p){var w="leaflet-control-zoom",C=Tt("div",w+" leaflet-bar"),E=this.options;return this._zoomInButton=this._createButton(E.zoomInText,E.zoomInTitle,w+"-in",C,this._zoomIn),this._zoomOutButton=this._createButton(E.zoomOutText,E.zoomOutTitle,w+"-out",C,this._zoomOut),this._updateDisabled(),p.on("zoomend zoomlevelschange",this._updateDisabled,this),C},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,C,E,R){var G=Tt("a",C,E);return G.innerHTML=p,G.href="#",G.title=w,G.setAttribute("role","button"),G.setAttribute("aria-label",w),np(G),st(G,"click",Cu),st(G,"click",R,this),st(G,"click",this._refocusOnMap,this),G},_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"))}});bt.mergeOptions({zoomControl:!0}),bt.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new _A,this.addControl(this.zoomControl))});var Tae=function(p){return new _A(p)},d5=ba.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0},onAdd:function(p){var w="leaflet-control-scale",C=Tt("div",w),E=this.options;return this._addScales(E,w+"-line",C),p.on(E.updateWhenIdle?"moveend":"move",this._update,this),p.whenReady(this._update,this),C},onRemove:function(p){p.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(p,w,C){p.metric&&(this._mScale=Tt("div",w,C)),p.imperial&&(this._iScale=Tt("div",w,C))},_update:function(){var p=this._map,w=p.getSize().y/2,C=p.distance(p.containerPointToLatLng([0,w]),p.containerPointToLatLng([this.options.maxWidth,w]));this._updateScales(C)},_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),C=w<1e3?w+" m":w/1e3+" km";this._updateScale(this._mScale,C,w/p)},_updateImperial:function(p){var w=p*3.2808399,C,E,R;w>5280?(C=w/5280,E=this._getRoundNum(C),this._updateScale(this._iScale,E+" mi",E/C)):(R=this._getRoundNum(w),this._updateScale(this._iScale,R+" ft",R/w))},_updateScale:function(p,w,C){p.style.width=Math.round(this.options.maxWidth*C)+"px",p.innerHTML=w},_getRoundNum:function(p){var w=Math.pow(10,(Math.floor(p)+"").length-1),C=p/w;return C=C>=10?10:C>=5?5:C>=3?3:C>=2?2:1,w*C}}),Aae=function(p){return new d5(p)},Cae='',bA=ba.extend({options:{position:"bottomright",prefix:''+(Ue.inlineSvg?Cae+" ":"")+"Leaflet"},initialize:function(p){g(this,p),this._attributions={}},onAdd:function(p){p.attributionControl=this,this._container=Tt("div","leaflet-control-attribution"),np(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 C=[];this.options.prefix&&C.push(this.options.prefix),p.length&&C.push(p.join(", ")),this._container.innerHTML=C.join(' ')}}});bt.mergeOptions({attributionControl:!0}),bt.addInitHook(function(){this.options.attributionControl&&new bA().addTo(this)});var Mae=function(p){return new bA(p)};ba.Layers=h5,ba.Zoom=_A,ba.Scale=d5,ba.Attribution=bA,ip.layers=Sae,ip.zoom=Tae,ip.scale=Aae,ip.attribution=Mae;var eo=j.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}});eo.addTo=function(p,w){return p.addHandler(w,this),this};var Pae={Events:$},v5=Ue.touch?"touchstart mousedown":"mousedown",el=U.extend({options:{clickTolerance:3},initialize:function(p,w,C,E){g(this,E),this._element=p,this._dragStartTarget=w||p,this._preventOutline=C},enable:function(){this._enabled||(st(this._dragStartTarget,v5,this._onDown,this),this._enabled=!0)},disable:function(){this._enabled&&(el._dragging===this&&this.finishDrag(!0),Ht(this._dragStartTarget,v5,this._onDown,this),this._enabled=!1,this._moved=!1)},_onDown:function(p){if(this._enabled&&(this._moved=!1,!sA(this._element,"leaflet-zoom-anim"))){if(p.touches&&p.touches.length!==1){el._dragging===this&&this.finishDrag();return}if(!(el._dragging||p.shiftKey||p.which!==1&&p.button!==1&&!p.touches)&&(el._dragging=this,this._preventOutline&&dA(this._element),cA(),ep(),!this._moving)){this.fire("down");var w=p.touches?p.touches[0]:p,C=o5(this._element);this._startPoint=new F(w.clientX,w.clientY),this._startPos=Tu(this._element),this._parentScale=vA(C);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,C=new F(w.clientX,w.clientY)._subtract(this._startPoint);!C.x&&!C.y||Math.abs(C.x)+Math.abs(C.y)G&&(X=te,G=oe);G>C&&(w[X]=1,SA(p,w,C,E,X),SA(p,w,C,X,R))}function Oae(p,w){for(var C=[p[0]],E=1,R=0,G=p.length;Ew&&(C.push(p[E]),R=E);return Rw.max.x&&(C|=2),p.yw.max.y&&(C|=8),C}function Eae(p,w){var C=w.x-p.x,E=w.y-p.y;return C*C+E*E}function ap(p,w,C,E){var R=w.x,G=w.y,X=C.x-R,te=C.y-G,oe=X*X+te*te,de;return oe>0&&(de=((p.x-R)*X+(p.y-G)*te)/oe,de>1?(R=C.x,G=C.y):de>0&&(R+=X*de,G+=te*de)),X=p.x-R,te=p.y-G,E?X*X+te*te:new F(R,G)}function Bi(p){return!b(p[0])||typeof p[0][0]!="object"&&typeof p[0][0]<"u"}function b5(p){return console.warn("Deprecated use of _flat, please use L.LineUtil.isFlat instead."),Bi(p)}function w5(p,w){var C,E,R,G,X,te,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]),et=ne(p),pt=et.getNorthWest().distanceTo(et.getSouthWest())*et.getNorthEast().distanceTo(et.getNorthWest());pt<1700&&(Ee=wA(p));var Rn=p.length,Kr=[];for(C=0;CE){oe=(G-E)/R,de=[te.x-oe*(te.x-X.x),te.y-oe*(te.y-X.y)];break}var ei=w.unproject(W(de));return fe([ei.lat+Ee.lat,ei.lng+Ee.lng])}var Dae={__proto__:null,simplify:m5,pointToSegmentDistance:y5,closestPointOnSegment:kae,clipSegment:_5,_getEdgeIntersection:I0,_getBitCode:Mu,_sqClosestPointOnSegment:ap,isFlat:Bi,_flat:b5,polylineCenter:w5},TA={project:function(p){return new F(p.lng,p.lat)},unproject:function(p){return new le(p.y,p.x)},bounds:new Y([-180,-90],[180,90])},AA={R:6378137,R_MINOR:6356752314245179e-9,bounds:new Y([-2003750834279e-5,-1549657073972e-5],[2003750834279e-5,1876465623138e-5]),project:function(p){var w=Math.PI/180,C=this.R,E=p.lat*w,R=this.R_MINOR/C,G=Math.sqrt(1-R*R),X=G*Math.sin(E),te=Math.tan(Math.PI/4-E/2)/Math.pow((1-X)/(1+X),G/2);return E=-C*Math.log(Math.max(te,1e-10)),new F(p.lng*w*C,E)},unproject:function(p){for(var w=180/Math.PI,C=this.R,E=this.R_MINOR/C,R=Math.sqrt(1-E*E),G=Math.exp(-p.y/C),X=Math.PI/2-2*Math.atan(G),te=0,oe=.1,de;te<15&&Math.abs(oe)>1e-7;te++)de=R*Math.sin(X),de=Math.pow((1-de)/(1+de),R/2),oe=Math.PI/2-2*Math.atan(G*de)-X,X+=oe;return new le(X*w,p.x*w/C)}},Nae={__proto__:null,LonLat:TA,Mercator:AA,SphericalMercator:he},jae=i({},xe,{code:"EPSG:3395",projection:AA,transformation:function(){var p=.5/(Math.PI*AA.R);return ee(p,.5,-p,.5)}()}),S5=i({},xe,{code:"EPSG:4326",projection:TA,transformation:ee(1/180,1,-1/180,.5)}),Rae=i({},ze,{projection:TA,transformation:ee(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 C=w.lng-p.lng,E=w.lat-p.lat;return Math.sqrt(C*C+E*E)},infinite:!0});ze.Earth=xe,ze.EPSG3395=jae,ze.EPSG3857=Ve,ze.EPSG900913=Se,ze.EPSG4326=S5,ze.Simple=Rae;var wa=U.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 C=this.getEvents();w.on(C,this),this.once("remove",function(){w.off(C,this)},this)}this.onAdd(w),this.fire("add"),w.fire("layeradd",{layer:this})}}});bt.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 C in this._layers)p.call(w,this._layers[C]);return this},_addLayers:function(p){p=p?b(p)?p:[p]:[];for(var w=0,C=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[C-1])&&w.pop(),w},_setLatLngs:function(p){qo.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,C=new F(w,w);if(p=new Y(p.min.subtract(C),p.max.add(C)),this._parts=[],!(!this._pxBounds||!this._pxBounds.intersects(p))){if(this.options.noClip){this._parts=this._rings;return}for(var E=0,R=this._rings.length,G;Ep.y!=R.y>p.y&&p.x<(R.x-E.x)*(p.y-E.y)/(R.y-E.y)+E.x&&(w=!w);return w||qo.prototype._containsPoint.call(this,p,!0)}});function Hae(p,w){return new Bf(p,w)}var Ko=Xo.extend({initialize:function(p,w){g(this,w),this._layers={},p&&this.addData(p)},addData:function(p){var w=b(p)?p:p.features,C,E,R;if(w){for(C=0,E=w.length;C0&&R.push(R[0].slice()),R}function zf(p,w){return p.feature?i({},p.feature,{geometry:w}):R0(w)}function R0(p){return p.type==="Feature"||p.type==="FeatureCollection"?p:{type:"Feature",properties:{},geometry:p}}var LA={toGeoJSON:function(p){return zf(this,{type:"Point",coordinates:PA(this.getLatLng(),p)})}};O0.include(LA),CA.include(LA),E0.include(LA),qo.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),C=j0(this._latlngs,w?1:0,!1,p);return zf(this,{type:(w?"Multi":"")+"LineString",coordinates:C})}}),Bf.include({toGeoJSON:function(p){var w=!Bi(this._latlngs),C=w&&!Bi(this._latlngs[0]),E=j0(this._latlngs,C?2:w?1:0,!0,p);return w||(E=[E]),zf(this,{type:(C?"Multi":"")+"Polygon",coordinates:E})}}),jf.include({toMultiPoint:function(p){var w=[];return this.eachLayer(function(C){w.push(C.toGeoJSON(p).geometry.coordinates)}),zf(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 C=w==="GeometryCollection",E=[];return this.eachLayer(function(R){if(R.toGeoJSON){var G=R.toGeoJSON(p);if(C)E.push(G.geometry);else{var X=R0(G);X.type==="FeatureCollection"?E.push.apply(E,X.features):E.push(X)}}}),C?zf(this,{geometries:E,type:"GeometryCollection"}):{type:"FeatureCollection",features:E}}});function C5(p,w){return new Ko(p,w)}var Uae=C5,B0=wa.extend({options:{opacity:1,alt:"",interactive:!1,crossOrigin:!1,errorOverlayUrl:"",zIndex:1,className:""},initialize:function(p,w,C){this._url=p,this._bounds=ne(w),g(this,C)},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(){ir(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&&Df(this._image),this},bringToBack:function(){return this._map&&Nf(this._image),this},setUrl:function(p){return this._url=p,this._image&&(this._image.src=p),this},setBounds:function(p){return this._bounds=ne(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:Tt("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),C=this._map._latLngBoundsToNewLayerBounds(this._bounds,p.zoom,p.center).min;Su(this._image,C,w)},_reset:function(){var p=this._image,w=new Y(this._map.latLngToLayerPoint(this._bounds.getNorthWest()),this._map.latLngToLayerPoint(this._bounds.getSouthEast())),C=w.getSize();Cr(p,w.min),p.style.width=C.x+"px",p.style.height=C.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()}}),Zae=function(p,w,C){return new B0(p,w,C)},M5=B0.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:Tt("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 C=w.getElementsByTagName("source"),E=[],R=0;R0?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 G=0;GR?(w.height=R+"px",ut(p,G)):_r(p,G),this._containerWidth=this._container.offsetWidth},_animateZoom:function(p){var w=this._map._latLngToNewLayerPoint(this._latlng,p.zoom,p.center),C=this._getAnchor();Cr(this._container,w.add(C))},_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(Jv(this._container,"marginBottom"),10)||0,C=this._container.offsetHeight+w,E=this._containerWidth,R=new F(this._containerLeft,-C-this._containerBottom);R._add(Tu(this._container));var G=p.layerPointToContainerPoint(R),X=W(this.options.autoPanPadding),te=W(this.options.autoPanPaddingTopLeft||X),oe=W(this.options.autoPanPaddingBottomRight||X),de=p.getSize(),Ee=0,et=0;G.x+E+oe.x>de.x&&(Ee=G.x+E-de.x+oe.x),G.x-Ee-te.x<0&&(Ee=G.x-te.x),G.y+C+oe.y>de.y&&(et=G.y+C-de.y+oe.y),G.y-et-te.y<0&&(et=G.y-te.y),(Ee||et)&&(this.options.keepInView&&(this._autopanning=!0),p.fire("autopanstart").panBy([Ee,et]))}},_getAnchor:function(){return W(this._source&&this._source._getPopupAnchor?this._source._getPopupAnchor():[0,0])}}),qae=function(p,w){return new z0(p,w)};bt.mergeOptions({closePopupOnClick:!0}),bt.include({openPopup:function(p,w,C){return this._initOverlay(z0,p,w,C).openOn(this),this},closePopup:function(p){return p=arguments.length?p:this._popup,p&&p.close(),this}}),wa.include({bindPopup:function(p,w){return this._popup=this._initOverlay(z0,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 Xo||(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)){Cu(p);var w=p.layer||p.target;if(this._popup._source===w&&!(w instanceof tl)){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 $0=to.extend({options:{pane:"tooltipPane",offset:[0,0],direction:"auto",permanent:!1,sticky:!1,opacity:.9},onAdd:function(p){to.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){to.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=to.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=Tt("div",w),this._container.setAttribute("role","tooltip"),this._container.setAttribute("id","leaflet-tooltip-"+l(this))},_updateLayout:function(){},_adjustPan:function(){},_setPosition:function(p){var w,C,E=this._map,R=this._container,G=E.latLngToContainerPoint(E.getCenter()),X=E.layerPointToContainerPoint(p),te=this.options.direction,oe=R.offsetWidth,de=R.offsetHeight,Ee=W(this.options.offset),et=this._getAnchor();te==="top"?(w=oe/2,C=de):te==="bottom"?(w=oe/2,C=0):te==="center"?(w=oe/2,C=de/2):te==="right"?(w=0,C=de/2):te==="left"?(w=oe,C=de/2):X.xthis.options.maxZoom||CE?this._retainParent(R,G,X,E):!1)},_retainChildren:function(p,w,C,E){for(var R=2*p;R<2*p+2;R++)for(var G=2*w;G<2*w+2;G++){var X=new F(R,G);X.z=C+1;var te=this._tileCoordsToKey(X),oe=this._tiles[te];if(oe&&oe.active){oe.retain=!0;continue}else oe&&oe.loaded&&(oe.retain=!0);C+1this.options.maxZoom||this.options.minZoom!==void 0&&R1){this._setView(p,C);return}for(var et=R.min.y;et<=R.max.y;et++)for(var pt=R.min.x;pt<=R.max.x;pt++){var Rn=new F(pt,et);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(ei,Ff){return ei.distanceTo(G)-Ff.distanceTo(G)}),X.length!==0){this._loading||(this._loading=!0,this.fire("loading"));var zi=document.createDocumentFragment();for(pt=0;ptC.max.x)||!w.wrapLat&&(p.yC.max.y))return!1}if(!this.options.bounds)return!0;var E=this._tileCoordsToBounds(p);return ne(this.options.bounds).overlaps(E)},_keyToBounds:function(p){return this._tileCoordsToBounds(this._keyToTileCoords(p))},_tileCoordsToNwSe:function(p){var w=this._map,C=this.getTileSize(),E=p.scaleBy(C),R=E.add(C),G=w.unproject(E,p.z),X=w.unproject(R,p.z);return[G,X]},_tileCoordsToBounds:function(p){var w=this._tileCoordsToNwSe(p),C=new J(w[0],w[1]);return this.options.noWrap||(C=this._map.wrapLatLngBounds(C)),C},_tileCoordsToKey:function(p){return p.x+":"+p.y+":"+p.z},_keyToTileCoords:function(p){var w=p.split(":"),C=new F(+w[0],+w[1]);return C.z=+w[2],C},_removeTile:function(p){var w=this._tiles[p];w&&(ir(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 C=this._getTilePos(p),E=this._tileCoordsToKey(p),R=this.createTile(this._wrapCoords(p),o(this._tileReady,this,p));this._initTile(R),this.createTile.length<2&&O(o(this._tileReady,this,p,null,R)),Cr(R,C),this._tiles[E]={el:R,coords:p,current:!0},w.appendChild(R),this.fire("tileloadstart",{tile:R,coords:p})},_tileReady:function(p,w,C){w&&this.fire("tileerror",{error:w,tile:C,coords:p});var E=this._tileCoordsToKey(p);C=this._tiles[E],C&&(C.loaded=+new Date,this._map._fadeAnimated?(Ri(C.el,0),D(this._fadeFrame),this._fadeFrame=O(this._updateOpacity,this)):(C.active=!0,this._pruneTiles()),w||(ut(C.el,"leaflet-tile-loaded"),this.fire("tileload",{tile:C.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 F(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 Y(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 Jae(p){return new sp(p)}var $f=sp.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 C=document.createElement("img");return st(C,"load",o(this._tileOnLoad,this,w,C)),st(C,"error",o(this._tileOnError,this,w,C)),(this.options.crossOrigin||this.options.crossOrigin==="")&&(C.crossOrigin=this.options.crossOrigin===!0?"":this.options.crossOrigin),typeof this.options.referrerPolicy=="string"&&(C.referrerPolicy=this.options.referrerPolicy),C.alt="",C.src=this.getTileUrl(p),C},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 C=this._globalTileRange.max.y-p.y;this.options.tms&&(w.y=C),w["-y"]=C}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,C){var E=this.options.errorTileUrl;E&&w.getAttribute("src")!==E&&(w.src=E),p(C,w)},_onTileRemove:function(p){p.tile.onload=null},_getZoomForUrl:function(){var p=this._tileZoom,w=this.options.maxZoom,C=this.options.zoomReverse,E=this.options.zoomOffset;return C&&(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 C=this._tiles[p].coords;ir(w),delete this._tiles[p],this.fire("tileabort",{tile:w,coords:C})}},_removeTile:function(p){var w=this._tiles[p];if(w)return w.el.setAttribute("src",T),sp.prototype._removeTile.call(this,p)},_tileReady:function(p,w,C){if(!(!this._map||C&&C.getAttribute("src")===T))return sp.prototype._tileReady.call(this,p,w,C)}});function k5(p,w){return new $f(p,w)}var I5=$f.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 C=i({},this.defaultWmsParams);for(var E in w)E in this.options||(C[E]=w[E]);w=g(this,w);var R=w.detectRetina&&Ue.retina?2:1,G=this.getTileSize();C.width=G.x*R,C.height=G.y*R,this.wmsParams=C},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,$f.prototype.onAdd.call(this,p)},getTileUrl:function(p){var w=this._tileCoordsToNwSe(p),C=this._crs,E=Z(C.project(w[0]),C.project(w[1])),R=E.min,G=E.max,X=(this._wmsVersion>=1.3&&this._crs===S5?[R.y,R.x,G.y,G.x]:[R.x,R.y,G.x,G.y]).join(","),te=$f.prototype.getTileUrl.call(this,p);return te+m(this.wmsParams,te,this.options.uppercase)+(this.options.uppercase?"&BBOX=":"&bbox=")+X},setParams:function(p,w){return i(this.wmsParams,p),w||this.redraw(),this}});function eoe(p,w){return new I5(p,w)}$f.WMS=I5,k5.wms=eoe;var Qo=wa.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 C=this._map.getZoomScale(w,this._zoom),E=this._map.getSize().multiplyBy(.5+this.options.padding),R=this._map.project(this._center,w),G=E.multiplyBy(-C).add(R).subtract(this._map._getNewPixelOrigin(p,w));Ue.any3d?Su(this._container,G,C):Cr(this._container,G)},_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(),C=this._map.containerPointToLayerPoint(w.multiplyBy(-p)).round();this._bounds=new Y(C,C.add(w.multiplyBy(1+p*2)).round()),this._center=this._map.getCenter(),this._zoom=this._map.getZoom()}}),O5=Qo.extend({options:{tolerance:0},getEvents:function(){var p=Qo.prototype.getEvents.call(this);return p.viewprereset=this._onViewPreReset,p},_onViewPreReset:function(){this._postponeUpdatePaths=!0},onAdd:function(){Qo.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,ir(this._container),Ht(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)){Qo.prototype._update.call(this);var p=this._bounds,w=this._container,C=p.getSize(),E=Ue.retina?2:1;Cr(w,p.min),w.width=E*C.x,w.height=E*C.y,w.style.width=C.x+"px",w.style.height=C.y+"px",Ue.retina&&this._ctx.scale(2,2),this._ctx.translate(-p.min.x,-p.min.y),this.fire("update")}},_reset:function(){Qo.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,C=w.next,E=w.prev;C?C.prev=E:this._drawLast=E,E?E.next=C:this._drawFirst=C,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(/[, ]+/),C=[],E,R;for(R=0;R')}}catch{}return function(p){return document.createElement("<"+p+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}(),toe={_initContainer:function(){this._container=Tt("div","leaflet-vml-container")},_update:function(){this._map._animatingZoom||(Qo.prototype._update.call(this),this.fire("update"))},_initPath:function(p){var w=p._container=lp("shape");ut(w,"leaflet-vml-shape "+(this.options.className||"")),w.coordsize="1 1",p._path=lp("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;ir(w),p.removeInteractiveTarget(w),delete this._layers[l(p)]},_updateStyle:function(p){var w=p._stroke,C=p._fill,E=p.options,R=p._container;R.stroked=!!E.stroke,R.filled=!!E.fill,E.stroke?(w||(w=p._stroke=lp("stroke")),R.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&&(R.removeChild(w),p._stroke=null),E.fill?(C||(C=p._fill=lp("fill")),R.appendChild(C),C.color=E.fillColor||E.color,C.opacity=E.fillOpacity):C&&(R.removeChild(C),p._fill=null)},_updateCircle:function(p){var w=p._point.round(),C=Math.round(p._radius),E=Math.round(p._radiusY||C);this._setPath(p,p._empty()?"M0 0":"AL "+w.x+","+w.y+" "+C+","+E+" 0,"+65535*360)},_setPath:function(p,w){p._path.v=w},_bringToFront:function(p){Df(p._container)},_bringToBack:function(p){Nf(p._container)}},F0=Ue.vml?lp:Ge,up=Qo.extend({_initContainer:function(){this._container=F0("svg"),this._container.setAttribute("pointer-events","none"),this._rootGroup=F0("g"),this._container.appendChild(this._rootGroup)},_destroyContainer:function(){ir(this._container),Ht(this._container),delete this._container,delete this._rootGroup,delete this._svgSize},_update:function(){if(!(this._map._animatingZoom&&this._bounds)){Qo.prototype._update.call(this);var p=this._bounds,w=p.getSize(),C=this._container;(!this._svgSize||!this._svgSize.equals(w))&&(this._svgSize=w,C.setAttribute("width",w.x),C.setAttribute("height",w.y)),Cr(C,p.min),C.setAttribute("viewBox",[p.min.x,p.min.y,w.x,w.y].join(" ")),this.fire("update")}},_initPath:function(p){var w=p._path=F0("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){ir(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,C=p.options;w&&(C.stroke?(w.setAttribute("stroke",C.color),w.setAttribute("stroke-opacity",C.opacity),w.setAttribute("stroke-width",C.weight),w.setAttribute("stroke-linecap",C.lineCap),w.setAttribute("stroke-linejoin",C.lineJoin),C.dashArray?w.setAttribute("stroke-dasharray",C.dashArray):w.removeAttribute("stroke-dasharray"),C.dashOffset?w.setAttribute("stroke-dashoffset",C.dashOffset):w.removeAttribute("stroke-dashoffset")):w.setAttribute("stroke","none"),C.fill?(w.setAttribute("fill",C.fillColor||C.color),w.setAttribute("fill-opacity",C.fillOpacity),w.setAttribute("fill-rule",C.fillRule||"evenodd")):w.setAttribute("fill","none"))},_updatePoly:function(p,w){this._setPath(p,Ye(p._parts,w))},_updateCircle:function(p){var w=p._point,C=Math.max(Math.round(p._radius),1),E=Math.max(Math.round(p._radiusY),1)||C,R="a"+C+","+E+" 0 1,0 ",G=p._empty()?"M0 0":"M"+(w.x-C)+","+w.y+R+C*2+",0 "+R+-C*2+",0 ";this._setPath(p,G)},_setPath:function(p,w){p._path.setAttribute("d",w)},_bringToFront:function(p){Df(p._path)},_bringToBack:function(p){Nf(p._path)}});Ue.vml&&up.include(toe);function D5(p){return Ue.svg||Ue.vml?new up(p):null}bt.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&&E5(p)||D5(p)}});var N5=Bf.extend({initialize:function(p,w){Bf.prototype.initialize.call(this,this._boundsToLatLngs(p),w)},setBounds:function(p){return this.setLatLngs(this._boundsToLatLngs(p))},_boundsToLatLngs:function(p){return p=ne(p),[p.getSouthWest(),p.getNorthWest(),p.getNorthEast(),p.getSouthEast()]}});function roe(p,w){return new N5(p,w)}up.create=F0,up.pointsToPath=Ye,Ko.geometryToLayer=D0,Ko.coordsToLatLng=MA,Ko.coordsToLatLngs=N0,Ko.latLngToCoords=PA,Ko.latLngsToCoords=j0,Ko.getFeature=zf,Ko.asFeature=R0,bt.mergeOptions({boxZoom:!0});var j5=eo.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(){Ht(this._container,"mousedown",this._onMouseDown,this)},moved:function(){return this._moved},_destroy:function(){ir(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(),ep(),cA(),this._startPoint=this._map.mouseEventToContainerPoint(p),st(document,{contextmenu:Cu,mousemove:this._onMouseMove,mouseup:this._onMouseUp,keydown:this._onKeyDown},this)},_onMouseMove:function(p){this._moved||(this._moved=!0,this._box=Tt("div","leaflet-zoom-box",this._container),ut(this._container,"leaflet-crosshair"),this._map.fire("boxzoomstart")),this._point=this._map.mouseEventToContainerPoint(p);var w=new Y(this._point,this._startPoint),C=w.getSize();Cr(this._box,w.min),this._box.style.width=C.x+"px",this._box.style.height=C.y+"px"},_finish:function(){this._moved&&(ir(this._box),_r(this._container,"leaflet-crosshair")),tp(),fA(),Ht(document,{contextmenu:Cu,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 J(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())}});bt.addInitHook("addHandler","boxZoom",j5),bt.mergeOptions({doubleClickZoom:!0});var R5=eo.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,C=w.getZoom(),E=w.options.zoomDelta,R=p.originalEvent.shiftKey?C-E:C+E;w.options.doubleClickZoom==="center"?w.setZoom(R):w.setZoomAround(p.containerPoint,R)}});bt.addInitHook("addHandler","doubleClickZoom",R5),bt.mergeOptions({dragging:!0,inertia:!0,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,easeLinearity:.2,worldCopyJump:!1,maxBoundsViscosity:0});var B5=eo.extend({addHooks:function(){if(!this._draggable){var p=this._map;this._draggable=new el(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=ne(this._map.options.maxBounds);this._offsetLimit=Z(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,C=this._lastPos=this._draggable._absPos||this._draggable._newPos;this._positions.push(C),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),C=this._initialWorldOffset,E=this._draggable._newPos.x,R=(E-w+C)%p+w-C,G=(E+w+C)%p-w-C,X=Math.abs(R+C)0?G:-G))-w;this._delta=0,this._startTime=null,X&&(p.options.scrollWheelZoom==="center"?p.setZoom(w+X):p.setZoomAround(this._lastMousePos,w+X))}});bt.addInitHook("addHandler","scrollWheelZoom",$5);var noe=600;bt.mergeOptions({tapHold:Ue.touchNative&&Ue.safari&&Ue.mobile,tapTolerance:15});var F5=eo.extend({addHooks:function(){st(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){Ht(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 F(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),noe),st(document,"touchend touchcancel contextmenu",this._cancel,this),st(document,"touchmove",this._onMove,this)}},_cancelClickPrevent:function p(){Ht(document,"touchend",un),Ht(document,"touchend touchcancel",p)},_cancel:function(){clearTimeout(this._holdTimeout),Ht(document,"touchend touchcancel contextmenu",this._cancel,this),Ht(document,"touchmove",this._onMove,this)},_onMove:function(p){var w=p.touches[0];this._newPos=new F(w.clientX,w.clientY)},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_simulateEvent:function(p,w){var C=new MouseEvent(p,{bubbles:!0,cancelable:!0,view:window,screenX:w.screenX,screenY:w.screenY,clientX:w.clientX,clientY:w.clientY});C._simulated=!0,w.target.dispatchEvent(C)}});bt.addInitHook("addHandler","tapHold",F5),bt.mergeOptions({touchZoom:Ue.touch,bounceAtZoomLimits:!0});var V5=eo.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"),Ht(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 C=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(C.add(E)._divideBy(2))),this._startDist=C.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,C=w.mouseEventToContainerPoint(p.touches[0]),E=w.mouseEventToContainerPoint(p.touches[1]),R=C.distanceTo(E)/this._startDist;if(this._zoom=w.getScaleZoom(R,this._startZoom),!w.options.bounceAtZoomLimits&&(this._zoomw.getMaxZoom()&&R>1)&&(this._zoom=w._limitZoom(this._zoom)),w.options.touchZoom==="center"){if(this._center=this._startLatLng,R===1)return}else{var G=C._add(E)._divideBy(2)._subtract(this._centerPoint);if(R===1&&G.x===0&&G.y===0)return;this._center=w.unproject(w.project(this._pinchStartLatLng,this._zoom).subtract(G),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),Ht(document,"touchmove",this._onTouchMove,this),Ht(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))}});bt.addInitHook("addHandler","touchZoom",V5),bt.BoxZoom=j5,bt.DoubleClickZoom=R5,bt.Drag=B5,bt.Keyboard=z5,bt.ScrollWheelZoom=$5,bt.TapHold=F5,bt.TouchZoom=V5,r.Bounds=Y,r.Browser=Ue,r.CRS=ze,r.Canvas=O5,r.Circle=CA,r.CircleMarker=E0,r.Class=j,r.Control=ba,r.DivIcon=L5,r.DivOverlay=to,r.DomEvent=bae,r.DomUtil=xae,r.Draggable=el,r.Evented=U,r.FeatureGroup=Xo,r.GeoJSON=Ko,r.GridLayer=sp,r.Handler=eo,r.Icon=Rf,r.ImageOverlay=B0,r.LatLng=le,r.LatLngBounds=J,r.Layer=wa,r.LayerGroup=jf,r.LineUtil=Dae,r.Map=bt,r.Marker=O0,r.Mixin=Pae,r.Path=tl,r.Point=F,r.PolyUtil=Lae,r.Polygon=Bf,r.Polyline=qo,r.Popup=z0,r.PosAnimation=f5,r.Projection=Nae,r.Rectangle=N5,r.Renderer=Qo,r.SVG=up,r.SVGOverlay=P5,r.TileLayer=$f,r.Tooltip=$0,r.Transformation=ue,r.Util=N,r.VideoOverlay=M5,r.bind=o,r.bounds=Z,r.canvas=E5,r.circle=Gae,r.circleMarker=Vae,r.control=ip,r.divIcon=Qae,r.extend=i,r.featureGroup=zae,r.geoJSON=C5,r.geoJson=Uae,r.gridLayer=Jae,r.icon=$ae,r.imageOverlay=Zae,r.latLng=fe,r.latLngBounds=ne,r.layerGroup=Bae,r.map=wae,r.marker=Fae,r.point=W,r.polygon=Hae,r.polyline=Wae,r.popup=qae,r.rectangle=roe,r.setOptions=g,r.stamp=l,r.svg=D5,r.svgOverlay=Xae,r.tileLayer=k5,r.tooltip=Kae,r.transformation=ee,r.version=n,r.videoOverlay=Yae;var ioe=window.L;r.noConflict=function(){return window.L=ioe,this},window.L=r})})(GO,GO.exports);var If=GO.exports;const Vie=Ft(If);function w0(e,t,r){return Object.freeze({instance:e,context:t,container:r})}function zR(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 Gie(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 GQe(e){return function(r){const n=eA(),i=e(tA(r,n),n);return Bie(n.map,r.attribution),BR(i.current,r.eventHandlers),Gie(i.current,n),i}}function WQe(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 HQe(e){return function(r){const n=eA(),i=e(tA(r,n),n);return BR(i.current,r.eventHandlers),Gie(i.current,n),WQe(i.current,r),i}}function Wie(e,t){const r=zR(e),n=VQe(r,t);return $Qe(n)}function Hie(e,t){const r=zR(e,t),n=HQe(r);return zQe(n)}function UQe(e,t){const r=zR(e,t),n=GQe(r);return FQe(n)}function ZQe(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 YQe(){return eA().map}const XQe=Hie(function({center:t,children:r,...n},i){const a=new If.CircleMarker(t,n);return w0(a,zie(i,{overlayContainer:a}))},jQe);function WO(){return WO=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 If.Map(x,c);r!=null&&u!=null?_.setView(r,u):e!=null&&_.fitBounds(e,t),l!=null&&_.whenReady(l),v(BQe(_))}},[]);H.useEffect(()=>()=>{d==null||d.map.remove()},[d]);const m=d?Q.createElement(Fie,{value:d},n):o??null;return Q.createElement("div",WO({},h,{ref:g}),m)}const KQe=H.forwardRef(qQe),QQe=Hie(function({positions:t,...r},n){const i=new If.Polyline(t,r);return w0(i,zie(n,{overlayContainer:i}))},function(t,r,n){r.positions!==n.positions&&t.setLatLngs(r.positions)}),JQe=Wie(function(t,r){const n=new If.Popup(t,r.overlayContainer);return w0(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])}),eJe=UQe(function({url:t,...r},n){const i=new If.TileLayer(t,tA(r,n));return w0(i,n)},function(t,r,n){ZQe(t,r,n);const{url:i}=r;i!=null&&i!==n.url&&t.setUrl(i)}),tJe=Wie(function(t,r){const n=new If.Tooltip(t,r.overlayContainer);return w0(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])}),rJe="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=",nJe="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==",iJe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAApCAQAAAACach9AAACMUlEQVR4Ae3ShY7jQBAE0Aoz/f9/HTMzhg1zrdKUrJbdx+Kd2nD8VNudfsL/Th///dyQN2TH6f3y/BGpC379rV+S+qqetBOxImNQXL8JCAr2V4iMQXHGNJxeCfZXhSRBcQMfvkOWUdtfzlLgAENmZDcmo2TVmt8OSM2eXxBp3DjHSMFutqS7SbmemzBiR+xpKCNUIRkdkkYxhAkyGoBvyQFEJEefwSmmvBfJuJ6aKqKWnAkvGZOaZXTUgFqYULWNSHUckZuR1HIIimUExutRxwzOLROIG4vKmCKQt364mIlhSyzAf1m9lHZHJZrlAOMMztRRiKimp/rpdJDc9Awry5xTZCte7FHtuS8wJgeYGrex28xNTd086Dik7vUMscQOa8y4DoGtCCSkAKlNwpgNtphjrC6MIHUkR6YWxxs6Sc5xqn222mmCRFzIt8lEdKx+ikCtg91qS2WpwVfBelJCiQJwvzixfI9cxZQWgiSJelKnwBElKYtDOb2MFbhmUigbReQBV0Cg4+qMXSxXSyGUn4UbF8l+7qdSGnTC0XLCmahIgUHLhLOhpVCtw4CzYXvLQWQbJNmxoCsOKAxSgBJno75avolkRw8iIAFcsdc02e9iyCd8tHwmeSSoKTowIgvscSGZUOA7PuCN5b2BX9mQM7S0wYhMNU74zgsPBj3HU7wguAfnxxjFQGBE6pwN+GjME9zHY7zGp8wVxMShYX9NXvEWD3HbwJf4giO4CFIQxXScH1/TM+04kkBiAAAAAElFTkSuQmCC";delete Vie.Icon.Default.prototype._getIconUrl;Vie.Icon.Default.mergeOptions({iconUrl:rJe,iconRetinaUrl:nJe,shadowUrl:iJe});const RU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],aJe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function oJe(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function sJe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function lJe(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 uJe({bounds:e}){const t=YQe();return H.useEffect(()=>{e&&t.fitBounds(e,{padding:[50,50]})},[t,e]),null}function cJe({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:lJe(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(bd,{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(bd,{size:10}),"OSM"]})]})]})}function fJe({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(KQe,{center:u,zoom:7,style:{width:"100%",height:"540px"},className:"z-0",children:[y.jsx(eJe,{url:"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png",attribution:'© OpenStreetMap, © CARTO'}),y.jsx(uJe,{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(QQe,{positions:[[d.latitude,d.longitude],[v.latitude,v.longitude]],color:oJe(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=aJe.includes(f.role),m=sJe(f.latitude),x=RU[m%RU.length];return y.jsxs(XQe,{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(tJe,{direction:"top",offset:[0,-8],children:y.jsx("span",{className:"font-mono text-xs",children:f.short_name})}),y.jsx(JQe,{children:y.jsx(cJe,{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(AZ,{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 BU=["#3b82f6","#a78bfa","#06b6d4","#f59e0b","#22c55e","#ec4899","#8b5cf6","#14b8a6"],hJe=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function zU(e){return e>12?"#22c55e":e>8?"#4ade80":e>5?"#f59e0b":e>3?"#f97316":"#ef4444"}function dJe(e){return e>12?"excellent":e>8?"good":e>5?"fair":e>3?"marginal":"poor"}function vJe(e){return e===null||e>46?0:e>44.5?1:e>43?2:3}function pJe(e){return["Northern ID","Central ID","SW Idaho","SC Idaho"][e]||"Unknown"}function gJe(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 mJe(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 yJe({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(Ds,{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=hJe.includes(e.role),o=vJe(e.latitude),s=BU[o%BU.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:pJe(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(Tm,{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 ${mJe(e.last_heard)}`}),y.jsx("span",{className:"text-sm text-slate-300",children:gJe(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(bd,{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(bd,{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:zU(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:zU(f.snr)},children:[f.snr.toFixed(1)," dB"]}),y.jsx("div",{className:"text-xs text-slate-500",children:dJe(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 $U=["ROUTER","ROUTER_LATE","REPEATER","TRACKER"];function xJe(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 _Je(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 bJe(e){return e.battery_level===null?"—":e.battery_level>100||e.voltage&&e.voltage>4.1?"USB ⚡":`${e.battery_level.toFixed(0)}%`}function FU(e){return e===null?"—":e>46?"Northern":e>44.5?"Central":e>43?"SW Idaho":"SC Idaho"}function wJe({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=>$U.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)||FU(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(Kue,{size:14,className:"inline ml-1"}):y.jsx(Uy,{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(XE,{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(HE,{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=$U.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 ${xJe(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:FU(v.latitude)}),y.jsx("td",{className:"px-3 py-2 font-mono text-slate-300",children:bJe(v)}),y.jsx("td",{className:"px-3 py-2 text-slate-400",children:_Je(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 SJe(){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(),fce(),_ce()]).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(oce,{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(ice,{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(NQe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:g}):y.jsx(fJe,{nodes:e,edges:r,selectedNodeId:o,onSelectNode:g})}),y.jsx(yJe,{node:v,edges:r,nodes:e,onSelectNode:g})]}),y.jsx(wJe,{nodes:e,selectedNodeId:o,onSelectNode:g})]})}function TJe({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=i=>i?new Date(i*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_fetch)]}),e.last_error&&y.jsx("div",{className:"text-amber-500 truncate",children:e.last_error})]})]})}function AJe({event:e}){const r=(a=>{switch(a.toLowerCase()){case"extreme":case"severe":case"immediate":return{bg:"bg-red-500/10",border:"border-red-500",icon:xd,iconColor:"text-red-500"};case"moderate":case"warning":case"priority":return{bg:"bg-amber-500/10",border:"border-amber-500",icon:Ns,iconColor:"text-amber-500"};case"minor":case"routine":return{bg:"bg-blue-500/10",border:"border-blue-500",icon:Sm,iconColor:"text-blue-500"};default:return{bg:"bg-slate-500/10",border:"border-slate-500",icon:Sm,iconColor:"text-slate-400"}}})(e.severity),n=r.icon,i=a=>a?new Date(a*1e3).toLocaleString():null;return y.jsx("div",{className:`p-4 rounded-lg ${r.bg} border-l-2 ${r.border}`,children:y.jsxs("div",{className:"flex items-start gap-3",children:[y.jsx(n,{size:18,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-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.iconColor}`,children:e.severity})]}),y.jsx("div",{className:"text-sm text-slate-300 mb-2",children:e.headline}),e.description&&y.jsx("div",{className:"text-xs text-slate-400 mb-2 line-clamp-2",children:e.description}),y.jsxs("div",{className:"flex items-center gap-4 text-xs text-slate-500",children:[y.jsx("span",{className:"uppercase",children:e.source}),e.expires&&y.jsxs("span",{children:["Expires: ",i(e.expires)]})]})]})]})})}function CJe({swpc:e}){var n,i;if(!e||!e.enabled)return 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(Wb,{size:14}),"Solar/Geomagnetic Indices"]}),y.jsx("div",{className:"text-slate-500",children:"Data not available"})]});const t=a=>a===void 0?"text-slate-400":a<=2?"text-green-500":a<=4?"text-amber-500":a<=6?"text-orange-500":"text-red-500",r=a=>a===void 0||a===0?"text-green-500":a<=2?"text-amber-500":a<=3?"text-orange-500":"text-red-500";return 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(Wb,{size:14}),"Solar/Geomagnetic Indices"]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[y.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Solar Flux Index"}),y.jsx("div",{className:"text-2xl font-mono text-slate-100",children:((n=e.sfi)==null?void 0:n.toFixed(0))??"—"}),y.jsx("div",{className:"text-xs text-slate-500",children:"SFI (10.7 cm)"})]}),y.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Planetary K-Index"}),y.jsx("div",{className:`text-2xl font-mono ${t(e.kp_current)}`,children:((i=e.kp_current)==null?void 0:i.toFixed(1))??"—"}),y.jsx("div",{className:"text-xs text-slate-500",children:"Kp"})]})]}),y.jsxs("div",{className:"bg-bg-hover rounded-lg p-3 mb-4",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-2",children:"NOAA Space Weather Scales"}),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-xs text-slate-400",children:"R:"}),y.jsx("span",{className:`text-sm font-mono ${r(e.r_scale)}`,children:e.r_scale??0})]}),y.jsxs("div",{className:"flex items-center gap-1",children:[y.jsx("span",{className:"text-xs text-slate-400",children:"S:"}),y.jsx("span",{className:`text-sm font-mono ${r(e.s_scale)}`,children:e.s_scale??0})]}),y.jsxs("div",{className:"flex items-center gap-1",children:[y.jsx("span",{className:"text-xs text-slate-400",children:"G:"}),y.jsx("span",{className:`text-sm font-mono ${r(e.g_scale)}`,children:e.g_scale??0})]})]}),y.jsx("div",{className:"text-xs text-slate-500 mt-2",children:"Radio Blackout / Solar Radiation / Geomagnetic Storm"})]}),e.active_warnings&&e.active_warnings.length>0&&y.jsxs("div",{className:"space-y-2",children:[y.jsx("div",{className:"text-xs text-slate-500",children:"Active Warnings"}),e.active_warnings.slice(0,3).map((a,o)=>y.jsx("div",{className:"text-xs text-amber-400 bg-amber-500/10 rounded p-2",children:a},o))]})]})}function MJe({ducting:e}){if(!e||!e.enabled)return 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(f3,{size:14}),"Tropospheric Ducting"]}),y.jsx("div",{className:"text-slate-500",children:"Data not available"})]});const t=n=>{switch(n){case"normal":return"text-green-500";case"super_refraction":return"text-amber-500";case"surface_duct":case"elevated_duct":return"text-blue-400";default:return"text-slate-400"}},r=n=>n?n.replace("_"," ").replace(/\b\w/g,i=>i.toUpperCase()):"Unknown";return 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(f3,{size:14}),"Tropospheric Ducting"]}),y.jsxs("div",{className:"bg-bg-hover rounded-lg p-4 mb-4",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Condition"}),y.jsx("div",{className:`text-xl font-medium ${t(e.condition)}`,children:r(e.condition)})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4 mb-4",children:[y.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Min Gradient"}),y.jsx("div",{className:"text-lg font-mono text-slate-100",children:e.min_gradient??"—"}),y.jsx("div",{className:"text-xs text-slate-500",children:"M-units/km"})]}),e.duct_thickness_m&&y.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Duct Thickness"}),y.jsx("div",{className:"text-lg font-mono text-slate-100",children:e.duct_thickness_m}),y.jsx("div",{className:"text-xs text-slate-500",children:"meters"})]}),e.duct_base_m&&y.jsxs("div",{className:"bg-bg-hover rounded-lg p-3",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-1",children:"Duct Base"}),y.jsx("div",{className:"text-lg font-mono text-slate-100",children:e.duct_base_m}),y.jsx("div",{className:"text-xs text-slate-500",children:"meters AGL"})]})]}),y.jsxs("div",{className:"text-xs text-slate-500 bg-bg-hover rounded p-2",children:[y.jsx("div",{children:"dM/dz reference:"}),y.jsxs("div",{className:"mt-1 space-y-0.5",children:[y.jsx("div",{children:">79: Normal propagation"}),y.jsx("div",{children:"0–79: Super-refraction"}),y.jsx("div",{children:"<0: Ducting (trapping layer)"})]})]}),e.last_update&&y.jsxs("div",{className:"text-xs text-slate-500 mt-3",children:["Last update: ",e.last_update]})]})}function PJe(){var k;const[e,t]=H.useState(null),[r,n]=H.useState([]),[i,a]=H.useState(null),[o,s]=H.useState(null),[l,u]=H.useState([]),[c,f]=H.useState(null),[h,d]=H.useState([]),[v,g]=H.useState([]),[m,x]=H.useState([]),[_,b]=H.useState([]),[S,T]=H.useState(0),[A,M]=H.useState(!0),[P,I]=H.useState(null);return H.useEffect(()=>{document.title="Environment — MeshAI",Promise.all([EZ().catch(()=>null),DZ().catch(()=>[]),NZ().catch(()=>null),jZ().catch(()=>null),vce().catch(()=>[]),pce().catch(()=>null),gce().catch(()=>[]),mce().catch(()=>[]),yce().catch(()=>[]),xce().catch(()=>({hotspots:[],new_ignitions:0}))]).then(([O,D,N,j,z,$,U,F,V,W])=>{t(O),n(D),a(N),s(j),u(z),f($),d(U||[]),g(F||[]),x(V||[]),b((W==null?void 0:W.hotspots)||[]),T((W==null?void 0:W.new_ignitions)||0),M(!1)}).catch(O=>{I(O.message),M(!1)})},[]),A?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsx("div",{className:"text-slate-400",children:"Loading environmental data..."})}):P?y.jsx("div",{className:"flex items-center justify-center h-64",children:y.jsxs("div",{className:"text-red-400",children:["Error: ",P]})}):e!=null&&e.enabled?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:"text-xs text-slate-500",children:[r.length," active event",r.length!==1?"s":""]})]}),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(Hy,{size:14}),"Feed Status"]}),y.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4",children:e.feeds.map(O=>y.jsx(TJe,{feed:O},O.source))})]}),y.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[y.jsx(CJe,{swpc:i}),y.jsx(MJe,{ducting:o})]}),y.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 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 flex items-center gap-2",children:[y.jsx(UE,{size:14}),"Active Wildfires (",l.length,")"]}),l.length>0?y.jsx("div",{className:"space-y-3",children:l.map(O=>y.jsxs("div",{className:`p-3 rounded-lg ${O.severity==="warning"?"bg-red-500/10 border-l-2 border-red-500":O.severity==="watch"?"bg-amber-500/10 border-l-2 border-amber-500":"bg-slate-500/10 border-l-2 border-slate-500"}`,children:[y.jsxs("div",{className:"flex items-center justify-between mb-1",children:[y.jsx("span",{className:"text-sm font-medium text-slate-200",children:O.name}),y.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${O.severity==="warning"?"bg-red-500/20 text-red-400":O.severity==="watch"?"bg-amber-500/20 text-amber-400":"bg-slate-500/20 text-slate-400"}`,children:O.severity})]}),y.jsxs("div",{className:"text-xs text-slate-400 space-y-1",children:[y.jsxs("div",{children:[O.acres.toLocaleString()," acres, ",O.pct_contained,"% contained"]}),O.distance_km&&O.nearest_anchor&&y.jsxs("div",{children:[Math.round(O.distance_km)," km from ",O.nearest_anchor]})]})]},O.event_id))}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[y.jsx(ed,{size:16,className:"text-green-500"}),y.jsx("span",{children:"No active wildfires in the area"})]})]}),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(ZE,{size:14}),"Avalanche Advisories"]}),c!=null&&c.off_season?y.jsx("div",{className:"text-slate-500 py-4",children:y.jsx("p",{children:"Off season - check back in December"})}):c&&c.advisories.length>0?y.jsxs("div",{className:"space-y-3",children:[c.advisories.map(O=>y.jsxs("div",{className:`p-3 rounded-lg ${O.danger_level>=4?"bg-red-500/10 border-l-2 border-red-500":O.danger_level>=3?"bg-amber-500/10 border-l-2 border-amber-500":O.danger_level>=2?"bg-yellow-500/10 border-l-2 border-yellow-500":"bg-green-500/10 border-l-2 border-green-500"}`,children:[y.jsxs("div",{className:"flex items-center justify-between mb-1",children:[y.jsx("span",{className:"text-sm font-medium text-slate-200",children:O.zone_name}),y.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded ${O.danger_level>=4?"bg-red-500/20 text-red-400":O.danger_level>=3?"bg-amber-500/20 text-amber-400":O.danger_level>=2?"bg-yellow-500/20 text-yellow-400":"bg-green-500/20 text-green-400"}`,children:O.danger_name})]}),y.jsx("div",{className:"text-xs text-slate-400",children:O.center}),O.travel_advice&&y.jsx("div",{className:"text-xs text-slate-500 mt-2 line-clamp-2",children:O.travel_advice})]},O.event_id)),((k=c.advisories[0])==null?void 0:k.center_link)&&y.jsx("a",{href:c.advisories[0].center_link,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-400 hover:underline",children:"View full forecast"})]}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[y.jsx(ed,{size:16,className:"text-green-500"}),y.jsx("span",{children:"No avalanche advisories"})]})]})]}),h.length>0&&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(GE,{size:14}),"Stream Gauges (",h.length,")"]}),y.jsx("div",{className:"space-y-2",children:h.map(O=>{var D,N,j,z,$;return y.jsxs("div",{className:`p-3 rounded-lg ${O.severity==="warning"?"bg-amber-500/10 border-l-2 border-amber-500":"bg-blue-500/10 border-l-2 border-blue-500"}`,children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsx("span",{className:"text-sm text-slate-200",children:((D=O.properties)==null?void 0:D.site_name)||"Unknown Site"}),y.jsxs("span",{className:"text-sm font-mono text-slate-300",children:[(j=(N=O.properties)==null?void 0:N.value)==null?void 0:j.toLocaleString()," ",(z=O.properties)==null?void 0:z.unit]})]}),y.jsx("div",{className:"text-xs text-slate-500 mt-1",children:($=O.properties)==null?void 0:$.parameter})]},O.event_id)})})]}),(v.length>0||m.length>0)&&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(VE,{size:14}),"Road Conditions"]}),v.length>0&&y.jsxs("div",{className:"mb-4",children:[y.jsx("div",{className:"text-xs text-slate-500 mb-2 uppercase",children:"Traffic Flow"}),y.jsx("div",{className:"space-y-2",children:v.map(O=>{var D,N,j,z,$,U,F,V,W;return y.jsxs("div",{className:`p-3 rounded-lg ${(D=O.properties)!=null&&D.roadClosure?"bg-red-500/10 border-l-2 border-red-500":((N=O.properties)==null?void 0:N.speedRatio)<.5?"bg-amber-500/10 border-l-2 border-amber-500":((j=O.properties)==null?void 0:j.speedRatio)<.8?"bg-yellow-500/10 border-l-2 border-yellow-500":"bg-green-500/10 border-l-2 border-green-500"}`,children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsx("span",{className:"text-sm text-slate-200",children:((z=O.properties)==null?void 0:z.corridor)||"Unknown"}),y.jsx("span",{className:"text-sm font-mono text-slate-300",children:($=O.properties)!=null&&$.roadClosure?"CLOSED":`${Math.round(((U=O.properties)==null?void 0:U.currentSpeed)||0)}mph`})]}),!((F=O.properties)!=null&&F.roadClosure)&&y.jsxs("div",{className:"text-xs text-slate-500 mt-1",children:[Math.round((((V=O.properties)==null?void 0:V.speedRatio)||1)*100),"% of free flow (",Math.round(((W=O.properties)==null?void 0:W.freeFlowSpeed)||0),"mph)"]})]},O.event_id)})})]}),m.length>0&&y.jsxs("div",{children:[y.jsx("div",{className:"text-xs text-slate-500 mb-2 uppercase",children:"Road Events"}),y.jsx("div",{className:"space-y-2",children:m.map(O=>{var D,N;return y.jsxs("div",{className:`p-3 rounded-lg ${(D=O.properties)!=null&&D.is_closure?"bg-red-500/10 border-l-2 border-red-500":"bg-amber-500/10 border-l-2 border-amber-500"}`,children:[y.jsxs("div",{className:"flex items-center gap-2",children:[((N=O.properties)==null?void 0:N.is_closure)&&y.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-red-500/20 text-red-400",children:"CLOSURE"}),y.jsx("span",{className:"text-sm text-slate-200 line-clamp-1",children:O.headline})]}),y.jsx("div",{className:"text-xs text-slate-500 mt-1 uppercase",children:O.event_type})]},O.event_id)})})]})]}),_.length>0&&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(YE,{size:14}),"Satellite Hotspots (",_.length,")",S>0&&y.jsxs("span",{className:"ml-2 px-2 py-0.5 text-xs rounded-full bg-red-500/20 text-red-400 animate-pulse",children:[S," NEW"]})]}),y.jsx("div",{className:"space-y-2",children:_.map(O=>{var D,N,j,z,$,U;return y.jsxs("div",{className:`p-3 rounded-lg ${(D=O.properties)!=null&&D.new_ignition?"bg-red-500/10 border-l-2 border-red-500":O.severity==="watch"?"bg-amber-500/10 border-l-2 border-amber-500":"bg-orange-500/10 border-l-2 border-orange-500"}`,children:[y.jsxs("div",{className:"flex items-center justify-between",children:[y.jsxs("div",{className:"flex items-center gap-2",children:[((N=O.properties)==null?void 0:N.new_ignition)&&y.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-red-500/20 text-red-400",children:"NEW"}),y.jsx("span",{className:"text-sm text-slate-200",children:O.headline})]}),((j=O.properties)==null?void 0:j.frp)&&y.jsxs("span",{className:"text-sm font-mono text-orange-400",children:[Math.round(O.properties.frp)," MW"]})]}),y.jsxs("div",{className:"text-xs text-slate-500 mt-1 flex items-center gap-3",children:[y.jsxs("span",{children:["Conf: ",((z=O.properties)==null?void 0:z.confidence)||"N/A"]}),(($=O.properties)==null?void 0:$.acq_time)&&y.jsxs("span",{children:["@",O.properties.acq_time,"Z"]}),((U=O.properties)==null?void 0:U.near_fire)&&y.jsxs("span",{children:["Near: ",O.properties.near_fire]})]})]},O.event_id)})})]}),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(Ns,{size:14}),"Active Events (",r.length,")"]}),r.length>0?y.jsx("div",{className:"space-y-3",children:r.map(O=>y.jsx(AJe,{event:O},O.event_id))}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-4",children:[y.jsx(ed,{size:16,className:"text-green-500"}),y.jsx("span",{children:"No active environmental events"})]})]})]}):y.jsxs("div",{className:"flex flex-col items-center justify-center h-[60vh] text-center",children:[y.jsx("div",{className:"w-16 h-16 rounded-full bg-bg-card border border-border flex items-center justify-center mb-6",children:y.jsx(qc,{size:32,className:"text-slate-500"})}),y.jsx("h2",{className:"text-xl font-semibold text-slate-300 mb-2",children:"Environmental Feeds Disabled"}),y.jsx("p",{className:"text-slate-500 max-w-md",children:"Enable environmental feeds in config.yaml to see weather alerts, space weather indices, and tropospheric ducting data."})]})}function $R({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(A=>{var M,P,I,k;return((M=A.short_name)==null?void 0:M.toLowerCase().includes(T))||((P=A.long_name)==null?void 0:P.toLowerCase().includes(T))||((I=A.role)==null?void 0:I.toLowerCase().includes(T))||((k=A.node_id_hex)==null?void 0:k.toLowerCase().includes(T))})}return S.sort((T,A)=>(T.short_name||"").localeCompare(A.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(A=>A!==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(A=>m(A)===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(A=>A!==S)),className:"hover:text-white",children:y.jsx(ru,{size:14})})]},S)})}),y.jsxs("div",{className:"relative",children:[y.jsxs("div",{className:"relative",children:[y.jsx(XE,{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(Xc,{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 FR(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(Xc,{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 VU=[{key:"bot",label:"Bot",icon:Zue},{key:"connection",label:"Connection",icon:TS},{key:"response",label:"Response",icon:CZ},{key:"history",label:"History",icon:tce},{key:"memory",label:"Memory",icon:Yue},{key:"context",label:"Context",icon:WE},{key:"commands",label:"Commands",icon:kZ},{key:"llm",label:"LLM",icon:bZ},{key:"weather",label:"Weather",icon:qc},{key:"meshmonitor",label:"MeshMonitor",icon:Ds},{key:"knowledge",label:"Knowledge",icon:xZ},{key:"mesh_sources",label:"Mesh Sources",icon:SZ},{key:"mesh_intelligence",label:"Intelligence",icon:Hy},{key:"environmental",label:"Environmental",icon:sce},{key:"dashboard",label:"Dashboard",icon:TZ}],Kn={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.",environmental:"Live environmental data feeds for situational awareness. Each feed polls a public or authenticated API for real-time conditions affecting your area.",dashboard:"Web dashboard settings. You're looking at it right now."},LJe=[{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"}],kJe=[{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 Wo({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(ru,{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(bd,{size:10})]})]})]})}function Qn({text:e}){return y.jsx("p",{className:"text-sm text-slate-500 mb-6 pb-4 border-b border-[#1e2a3a]",children:e})}function At({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(Wo,{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(wZ,{size:16}):y.jsx(WE,{size:16})})]}),a&&y.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function qe({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(Wo,{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 Et({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(Wo,{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 Co({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(Wo,{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 IJe({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(Wo,{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 Zh({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(Wo,{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 OJe({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(Wo,{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 EJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.bot}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(At,{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(At,{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(Et,{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(Et,{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 DJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.connection}),y.jsx(Co,{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(At,{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(At,{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(qe,{label:"TCP Port",value:e.tcp_port,onChange:r=>t({...e,tcp_port:r}),min:1,max:65535,helper:"Default 4403 for meshtasticd"})]})]})}function NJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.response}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(qe,{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(qe,{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(qe,{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(qe,{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 jJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.history}),y.jsx(At,{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(qe,{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(qe,{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(Et,{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(qe,{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(qe,{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 RJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.memory}),y.jsx(Et,{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(qe,{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(qe,{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 BJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.context}),y.jsx(Et,{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(FR,{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($R,{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(qe,{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(qe,{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 zJe({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(Qn,{text:Kn.commands}),y.jsx(Et,{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(At,{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(Wo,{info:"Toggle commands on or off. Disabled commands won't respond when users invoke them."})]}),y.jsx("div",{className:"grid gap-1",children:LJe.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 $Je({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.llm}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Co,{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(At,{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(At,{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(At,{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(qe,{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(qe,{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(Et,{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(IJe,{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(Et,{label:"Web Search",checked:e.web_search,onChange:r=>t({...e,web_search:r}),helper:"Enable web search tool (Open WebUI feature)"}),y.jsx(Et,{label:"Google Grounding",checked:e.google_grounding,onChange:r=>t({...e,google_grounding:r}),helper:"Ground responses in web search (Gemini only)"})]})}function FJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.weather}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(Co,{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(Co,{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(At,{label:"Default Location",value:e.default_location,onChange:r=>t({...e,default_location:r}),placeholder:"Your city, state",helper:"Location when none specified"})]})}function VJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.meshmonitor}),y.jsx(Et,{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(At,{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(Et,{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(qe,{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(Et,{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 GJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.knowledge}),y.jsx(Et,{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(Co,{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(At,{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(qe,{label:"Qdrant Port",value:e.qdrant_port,onChange:r=>t({...e,qdrant_port:r}),helper:"Default 6333"})]}),y.jsx(At,{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(At,{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(qe,{label:"TEI Port",value:e.tei_port,onChange:r=>t({...e,tei_port:r}),helper:"Default 8090"})]}),y.jsx(Et,{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(At,{label:"SQLite DB Path",value:e.db_path,onChange:r=>t({...e,db_path:r}),helper:"Local knowledge database file"}),y.jsx(qe,{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 WJe({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(Uy,{size:16}):y.jsx(wm,{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(qE,{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(At,{label:"Name",value:e.name,onChange:o=>t({...e,name:o}),helper:"Friendly name for this source"}),y.jsx(Co,{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(At,{label:"URL",value:e.url,onChange:o=>t({...e,url:o}),helper:"Full URL including protocol"}),e.type==="meshmonitor"&&y.jsx(At,{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(At,{label:"Host",value:e.host||"",onChange:o=>t({...e,host:o}),helper:"MQTT broker hostname"}),y.jsx(qe,{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(At,{label:"Username",value:e.username||"",onChange:o=>t({...e,username:o})}),y.jsx(At,{label:"Password",value:e.password||"",onChange:o=>t({...e,password:o}),type:"password"})]}),y.jsx(At,{label:"Topic Root",value:e.topic_root||"msh/US",onChange:o=>t({...e,topic_root:o}),helper:"Base topic to subscribe to"}),y.jsx(Et,{label:"Use TLS",checked:e.use_tls||!1,onChange:o=>t({...e,use_tls:o}),helper:"Encrypt MQTT connection"})]}),y.jsx(qe,{label:"Refresh Interval (sec)",value:e.refresh_interval,onChange:o=>t({...e,refresh_interval:o}),min:10,helper:"Polling frequency"}),y.jsx(Et,{label:"Enabled",checked:e.enabled,onChange:o=>t({...e,enabled:o})}),y.jsx(Et,{label:"Polite Mode",checked:e.polite_mode,onChange:o=>t({...e,polite_mode:o}),helper:"Reduce polling for shared instances"})]})]})}function HJe({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(Qn,{text:Kn.mesh_sources}),e.map((n,i)=>y.jsx(WJe,{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(SS,{size:16})," Add Source"]})]})}function UJe({data:e,onChange:t}){const[r,n]=H.useState(null);return y.jsxs("div",{className:"space-y-6",children:[y.jsx(Qn,{text:Kn.mesh_intelligence}),y.jsx(Et,{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(qe,{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(qe,{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(qe,{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(qe,{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($R,{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(FR,{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(qe,{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(Wo,{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(Uy,{size:16}):y.jsx(wm,{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(qE,{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(At,{label:"Name",value:i.name,onChange:o=>{const s=[...e.regions];s[a]={...i,name:o},t({...e,regions:s})}}),y.jsx(At,{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(qe,{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(qe,{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(At,{label:"Description",value:i.description,onChange:o=>{const s=[...e.regions];s[a]={...i,description:o},t({...e,regions:s})}}),y.jsx(Zh,{label:"Aliases",value:i.aliases,onChange:o=>{const s=[...e.regions];s[a]={...i,aliases:o},t({...e,regions:s})}}),y.jsx(Zh,{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(SS,{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(Wo,{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 ZJe({data:e,onChange:t}){var r,n,i,a,o,s,l,u,c,f,h,d,v,g,m,x;return y.jsxs("div",{className:"space-y-6",children:[y.jsx(Qn,{text:Kn.environmental}),y.jsx(Et,{label:"Enable Environmental Feeds",checked:e.enabled,onChange:_=>t({...e,enabled:_}),helper:"Activate live data polling"}),e.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(Zh,{label:"NWS Zones",value:e.nws_zones,onChange:_=>t({...e,nws_zones:_}),helper:"Zone IDs like IDZ016, IDZ030",info:"NWS forecast zones covering your mesh area. Find yours at https://www.weather.gov/pimar/PubZone",infoLink:"https://www.weather.gov/pimar/PubZone"}),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.jsx("span",{className:"text-sm font-medium text-slate-300",children:"NWS Weather Alerts"}),y.jsx(Et,{label:"",checked:e.nws.enabled,onChange:_=>t({...e,nws:{...e.nws,enabled:_}})})]}),e.nws.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(At,{label:"User Agent",value:e.nws.user_agent,onChange:_=>t({...e,nws:{...e.nws,user_agent:_}}),placeholder:"(MeshAI, your@email.com)",helper:"Required format: (app_name, contact_email)",info:"Required by NWS. You make it up - just use the format (app_name, your_email). No signup needed."}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(qe,{label:"Tick Seconds",value:e.nws.tick_seconds,onChange:_=>t({...e,nws:{...e.nws,tick_seconds:_}}),min:30,helper:"Polling interval"}),y.jsx(Co,{label:"Min Severity",value:e.nws.severity_min,onChange:_=>t({...e,nws:{...e.nws,severity_min:_}}),options:[{value:"minor",label:"Minor"},{value:"moderate",label:"Moderate"},{value:"severe",label:"Severe"},{value:"extreme",label:"Extreme"}],helper:"Filter out lower severity alerts",info:"Minimum severity level to display. 'Moderate' filters out minor advisories. 'Severe' shows only serious warnings."})]})]})]}),y.jsx("div",{className:"border border-[#1e2a3a] rounded-lg p-4",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:"NOAA Space Weather (SWPC)"}),y.jsx("p",{className:"text-xs text-slate-600",children:"Solar indices, geomagnetic storms, HF propagation"})]}),y.jsx(Et,{label:"",checked:e.swpc.enabled,onChange:_=>t({...e,swpc:{...e.swpc,enabled:_}})})]})}),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:"Tropospheric Ducting"}),y.jsx("p",{className:"text-xs text-slate-600",children:"VHF/UHF extended range conditions"})]}),y.jsx(Et,{label:"",checked:e.ducting.enabled,onChange:_=>t({...e,ducting:{...e.ducting,enabled:_}})})]}),e.ducting.enabled&&y.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[y.jsx(qe,{label:"Tick Seconds",value:e.ducting.tick_seconds,onChange:_=>t({...e,ducting:{...e.ducting,tick_seconds:_}}),min:60}),y.jsx(qe,{label:"Latitude",value:e.ducting.latitude,onChange:_=>t({...e,ducting:{...e.ducting,latitude:_}}),step:.01,info:"Center point of your mesh coverage area. The ducting adapter checks atmospheric conditions at this location."}),y.jsx(qe,{label:"Longitude",value:e.ducting.longitude,onChange:_=>t({...e,ducting:{...e.ducting,longitude:_}}),step:.01})]})]}),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:"NIFC Fire Perimeters"}),y.jsx("p",{className:"text-xs text-slate-600",children:"Active wildfires from National Interagency Fire Center"})]}),y.jsx(Et,{label:"",checked:e.fires.enabled,onChange:_=>t({...e,fires:{...e.fires,enabled:_}})})]}),e.fires.enabled&&y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(qe,{label:"Tick Seconds",value:e.fires.tick_seconds,onChange:_=>t({...e,fires:{...e.fires,tick_seconds:_}}),min:60}),y.jsx(Co,{label:"State",value:e.fires.state,onChange:_=>t({...e,fires:{...e.fires,state:_}}),options:kJe,helper:"Filter fires by state",info:"Two-letter state code for NIFC wildfire filtering."})]})]}),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:"Avalanche Advisories"}),y.jsx("p",{className:"text-xs text-slate-600",children:"Backcountry avalanche danger ratings"})]}),y.jsx(Et,{label:"",checked:e.avalanche.enabled,onChange:_=>t({...e,avalanche:{...e.avalanche,enabled:_}})})]}),e.avalanche.enabled&&y.jsxs(y.Fragment,{children:[y.jsx(qe,{label:"Tick Seconds",value:e.avalanche.tick_seconds,onChange:_=>t({...e,avalanche:{...e.avalanche,tick_seconds:_}}),min:60}),y.jsx(Zh,{label:"Center IDs",value:e.avalanche.center_ids,onChange:_=>t({...e,avalanche:{...e.avalanche,center_ids:_}}),helper:"e.g., SNFAC, IPAC, FAC",info:"Find your local center at https://avalanche.org/avalanche-centers/",infoLink:"https://avalanche.org/avalanche-centers/"}),y.jsx(OJe,{label:"Season Months",value:e.avalanche.season_months,onChange:_=>t({...e,avalanche:{...e.avalanche,season_months:_}}),helper:"e.g., 12, 1, 2, 3, 4",info:"Months when avalanche forecasts are active. Default Dec-Apr. Adjust for your region's season."})]})]}),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:"USGS Stream Gauges"}),y.jsx("p",{className:"text-xs text-slate-600",children:"River and stream water levels"})]}),y.jsx(Et,{label:"",checked:((r=e.usgs)==null?void 0:r.enabled)||!1,onChange:_=>{var b,S;return t({...e,usgs:{...e.usgs,enabled:_,tick_seconds:((b=e.usgs)==null?void 0:b.tick_seconds)||900,sites:((S=e.usgs)==null?void 0:S.sites)||[]}})}})]}),((n=e.usgs)==null?void 0:n.enabled)&&y.jsxs(y.Fragment,{children:[y.jsx(qe,{label:"Tick Seconds",value:e.usgs.tick_seconds,onChange:_=>t({...e,usgs:{...e.usgs,tick_seconds:_}}),min:900,helper:"Minimum 15 min (900s)"}),y.jsx(Zh,{label:"Site IDs",value:e.usgs.sites,onChange:_=>t({...e,usgs:{...e.usgs,sites:_}}),helper:"USGS gauge site numbers",info:"Find site IDs at waterdata.usgs.gov/nwis",infoLink:"https://waterdata.usgs.gov/nwis"})]})]}),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:"TomTom Traffic"}),y.jsx("p",{className:"text-xs text-slate-600",children:"Traffic flow on monitored corridors"})]}),y.jsx(Et,{label:"",checked:((i=e.traffic)==null?void 0:i.enabled)||!1,onChange:_=>{var b,S,T;return t({...e,traffic:{...e.traffic,enabled:_,tick_seconds:((b=e.traffic)==null?void 0:b.tick_seconds)||300,api_key:((S=e.traffic)==null?void 0:S.api_key)||"",corridors:((T=e.traffic)==null?void 0:T.corridors)||[]}})}})]}),((a=e.traffic)==null?void 0:a.enabled)&&y.jsxs(y.Fragment,{children:[y.jsx(At,{label:"API Key",value:e.traffic.api_key,onChange:_=>t({...e,traffic:{...e.traffic,api_key:_}}),type:"password",helper:"Get key at developer.tomtom.com",infoLink:"https://developer.tomtom.com"}),y.jsx(qe,{label:"Tick Seconds",value:e.traffic.tick_seconds,onChange:_=>t({...e,traffic:{...e.traffic,tick_seconds:_}}),min:60}),y.jsx("div",{className:"text-xs text-slate-500 mt-2",children:"Corridors (each with name, lat, lon):"}),(e.traffic.corridors||[]).map((_,b)=>y.jsxs("div",{className:"grid grid-cols-4 gap-2 items-end",children:[y.jsx(At,{label:"Name",value:_.name,onChange:S=>{const T=[...e.traffic.corridors];T[b]={..._,name:S},t({...e,traffic:{...e.traffic,corridors:T}})}}),y.jsx(qe,{label:"Lat",value:_.lat,onChange:S=>{const T=[...e.traffic.corridors];T[b]={..._,lat:S},t({...e,traffic:{...e.traffic,corridors:T}})},step:.01}),y.jsx(qe,{label:"Lon",value:_.lon,onChange:S=>{const T=[...e.traffic.corridors];T[b]={..._,lon:S},t({...e,traffic:{...e.traffic,corridors:T}})},step:.01}),y.jsx("button",{onClick:()=>t({...e,traffic:{...e.traffic,corridors:e.traffic.corridors.filter((S,T)=>T!==b)}}),className:"px-2 py-2 text-xs text-red-400 hover:text-red-300 border border-red-400/30 rounded",children:"Remove"})]},b)),y.jsx("button",{onClick:()=>t({...e,traffic:{...e.traffic,corridors:[...e.traffic.corridors||[],{name:"",lat:0,lon:0}]}}),className:"text-xs text-accent hover:underline",children:"+ Add Corridor"})]})]}),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:"511 Road Conditions"}),y.jsx("p",{className:"text-xs text-slate-600",children:"State DOT road events and closures"})]}),y.jsx(Et,{label:"",checked:((o=e.roads511)==null?void 0:o.enabled)||!1,onChange:_=>{var b,S,T,A,M;return t({...e,roads511:{...e.roads511,enabled:_,tick_seconds:((b=e.roads511)==null?void 0:b.tick_seconds)||300,api_key:((S=e.roads511)==null?void 0:S.api_key)||"",base_url:((T=e.roads511)==null?void 0:T.base_url)||"",endpoints:((A=e.roads511)==null?void 0:A.endpoints)||["/get/event"],bbox:((M=e.roads511)==null?void 0:M.bbox)||[]}})}})]}),((s=e.roads511)==null?void 0:s.enabled)&&y.jsxs(y.Fragment,{children:[y.jsx(At,{label:"Base URL",value:e.roads511.base_url,onChange:_=>t({...e,roads511:{...e.roads511,base_url:_}}),placeholder:"https://511.yourstate.gov/api/v2",helper:"State 511 API endpoint"}),y.jsx(At,{label:"API Key",value:e.roads511.api_key,onChange:_=>t({...e,roads511:{...e.roads511,api_key:_}}),type:"password",helper:"Leave empty if not required"}),y.jsx(qe,{label:"Tick Seconds",value:e.roads511.tick_seconds,onChange:_=>t({...e,roads511:{...e.roads511,tick_seconds:_}}),min:60}),y.jsx(Zh,{label:"Endpoints",value:e.roads511.endpoints,onChange:_=>t({...e,roads511:{...e.roads511,endpoints:_}}),helper:"e.g., /get/event, /get/mountainpasses"}),y.jsxs("div",{className:"grid grid-cols-4 gap-2",children:[y.jsx(qe,{label:"West",value:((l=e.roads511.bbox)==null?void 0:l[0])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[0]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01}),y.jsx(qe,{label:"South",value:((u=e.roads511.bbox)==null?void 0:u[1])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[1]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01}),y.jsx(qe,{label:"East",value:((c=e.roads511.bbox)==null?void 0:c[2])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[2]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01}),y.jsx(qe,{label:"North",value:((f=e.roads511.bbox)==null?void 0:f[3])||0,onChange:_=>{const b=[...e.roads511.bbox||[0,0,0,0]];b[3]=_,t({...e,roads511:{...e.roads511,bbox:b}})},step:.01})]}),y.jsx("div",{className:"text-xs text-slate-500",children:"Bounding box filter (leave all 0 to disable)"})]})]}),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:"NASA FIRMS Satellite Fire Detection"}),y.jsx("p",{className:"text-xs text-slate-600",children:"Near real-time thermal anomalies from satellites"})]}),y.jsx(Et,{label:"",checked:((h=e.firms)==null?void 0:h.enabled)||!1,onChange:_=>{var b,S,T,A,M,P,I;return t({...e,firms:{...e.firms,enabled:_,tick_seconds:((b=e.firms)==null?void 0:b.tick_seconds)||1800,map_key:((S=e.firms)==null?void 0:S.map_key)||"",source:((T=e.firms)==null?void 0:T.source)||"VIIRS_SNPP_NRT",bbox:((A=e.firms)==null?void 0:A.bbox)||[],day_range:((M=e.firms)==null?void 0:M.day_range)||1,confidence_min:((P=e.firms)==null?void 0:P.confidence_min)||"nominal",proximity_km:((I=e.firms)==null?void 0:I.proximity_km)||10}})}})]}),((d=e.firms)==null?void 0:d.enabled)&&y.jsxs(y.Fragment,{children:[y.jsx(At,{label:"MAP Key",value:e.firms.map_key,onChange:_=>t({...e,firms:{...e.firms,map_key:_}}),type:"password",helper:"Get key at firms.modaps.eosdis.nasa.gov/api/area/",infoLink:"https://firms.modaps.eosdis.nasa.gov/api/area/"}),y.jsx(qe,{label:"Tick Seconds",value:e.firms.tick_seconds,onChange:_=>t({...e,firms:{...e.firms,tick_seconds:_}}),min:300,helper:"Minimum 5 min (300s)"}),y.jsx(Co,{label:"Satellite Source",value:e.firms.source,onChange:_=>t({...e,firms:{...e.firms,source:_}}),options:[{value:"VIIRS_SNPP_NRT",label:"VIIRS SNPP (Near Real-Time)"},{value:"VIIRS_NOAA20_NRT",label:"VIIRS NOAA-20 (Near Real-Time)"},{value:"MODIS_NRT",label:"MODIS (Near Real-Time)"}]}),y.jsx(qe,{label:"Day Range",value:e.firms.day_range,onChange:_=>t({...e,firms:{...e.firms,day_range:_}}),min:1,max:10,helper:"1-10 days of data"}),y.jsx(Co,{label:"Minimum Confidence",value:e.firms.confidence_min,onChange:_=>t({...e,firms:{...e.firms,confidence_min:_}}),options:[{value:"low",label:"Low"},{value:"nominal",label:"Nominal"},{value:"high",label:"High"}]}),y.jsx(qe,{label:"Proximity (km)",value:e.firms.proximity_km,onChange:_=>t({...e,firms:{...e.firms,proximity_km:_}}),step:.5,helper:"Distance to match known fires"}),y.jsxs("div",{className:"grid grid-cols-4 gap-2",children:[y.jsx(qe,{label:"West",value:((v=e.firms.bbox)==null?void 0:v[0])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[0]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01}),y.jsx(qe,{label:"South",value:((g=e.firms.bbox)==null?void 0:g[1])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[1]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01}),y.jsx(qe,{label:"East",value:((m=e.firms.bbox)==null?void 0:m[2])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[2]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01}),y.jsx(qe,{label:"North",value:((x=e.firms.bbox)==null?void 0:x[3])||0,onChange:_=>{const b=[...e.firms.bbox||[0,0,0,0]];b[3]=_,t({...e,firms:{...e.firms,bbox:b}})},step:.01})]}),y.jsx("div",{className:"text-xs text-slate-500",children:"Bounding box for monitoring area (required)"})]})]})]})]})}function YJe({data:e,onChange:t}){return y.jsxs("div",{className:"space-y-4",children:[y.jsx(Qn,{text:Kn.dashboard}),y.jsx(Et,{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(At,{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(qe,{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 XJe(){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 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&&g(!0),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")}},A=(k,O)=>{e&&t({...e,[k]:O})};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 M=()=>{switch(i){case"bot":return y.jsx(EJe,{data:e.bot,onChange:k=>A("bot",k)});case"connection":return y.jsx(DJe,{data:e.connection,onChange:k=>A("connection",k)});case"response":return y.jsx(NJe,{data:e.response,onChange:k=>A("response",k)});case"history":return y.jsx(jJe,{data:e.history,onChange:k=>A("history",k)});case"memory":return y.jsx(RJe,{data:e.memory,onChange:k=>A("memory",k)});case"context":return y.jsx(BJe,{data:e.context,onChange:k=>A("context",k)});case"commands":return y.jsx(zJe,{data:e.commands,onChange:k=>A("commands",k)});case"llm":return y.jsx($Je,{data:e.llm,onChange:k=>A("llm",k)});case"weather":return y.jsx(FJe,{data:e.weather,onChange:k=>A("weather",k)});case"meshmonitor":return y.jsx(VJe,{data:e.meshmonitor,onChange:k=>A("meshmonitor",k)});case"knowledge":return y.jsx(GJe,{data:e.knowledge,onChange:k=>A("knowledge",k)});case"mesh_sources":return y.jsx(HJe,{data:e.mesh_sources,onChange:k=>A("mesh_sources",k)});case"mesh_intelligence":return y.jsx(UJe,{data:e.mesh_intelligence,onChange:k=>A("mesh_intelligence",k)});case"environmental":return y.jsx(ZJe,{data:e.environmental,onChange:k=>A("environmental",k)});case"dashboard":return y.jsx(YJe,{data:e.dashboard,onChange:k=>A("dashboard",k)});default:return null}},P=((I=VU.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:VU.map(({key:k,label:O,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:O}),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(LZ,{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(MZ,{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(Gb,{size:14,className:"animate-spin"}):y.jsx(PZ,{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(Ns,{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(ru,{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(Xc,{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:M()})})]})]})}const GU={infra_offline:IZ,infra_recovery:TS,battery_warning:iC,battery_critical:iC,battery_emergency:iC,hf_blackout:Tm,uhf_ducting:Ds,weather_warning:qc,weather_watch:qc,new_router:Ds,packet_flood:Ns,sustained_high_util:Ns,region_blackout:xd,default:bm};function qJe(e){return GU[e]||GU.default}function Uie(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 KJe(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 QJe(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 JJe(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 eet({alert:e,onAcknowledge:t}){var i;const r=Uie(e.severity),n=qJe(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(_d,{size:12}),e.timestamp?KJe(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 tet({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(HE,{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=Uie(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:QJe(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?JJe(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(que,{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(wm,{size:16})})]})]})]})}function ret({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 bm;case"daily":return _d;case"weekly":return _d;default:return bm}})();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 net(){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,A]=H.useState(new Set),{lastAlert:M}=KE();H.useEffect(()=>{document.title="Alerts — MeshAI"},[]),H.useEffect(()=>{Promise.all([OZ().catch(()=>[]),d3(S,0).catch(()=>({items:[],total:0})),dce().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(()=>{M&&t(k=>k.some(D=>D.type===M.type&&D.message===M.message)?k:[M,...k])},[M]),H.useEffect(()=>{const k=(m-1)*S;d3(S,k,h,v).then(O=>{Array.isArray(O)?(n(O),b(1)):(n(O.items||[]),b(Math.ceil((O.total||0)/S)))}).catch(()=>{})},[m,h,v]);const P=H.useCallback(k=>{const O=`${k.type}-${k.message}-${k.timestamp}`;A(D=>new Set([...D,O]))},[]),I=e.filter(k=>{const O=`${k.type}-${k.message}-${k.timestamp}`;return!T.has(O)});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(Ns,{size:14}),"Active Alerts (",I.length,")"]}),I.length>0?y.jsx("div",{className:"space-y-3",children:I.map((k,O)=>y.jsx(eet,{alert:k,onAcknowledge:P},`${k.type}-${k.timestamp}-${O}`))}):y.jsxs("div",{className:"flex items-center gap-2 text-slate-500 py-8",children:[y.jsx(ed,{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(_d,{size:14}),"Alert History"]}),y.jsx(tet,{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(lce,{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(ret,{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 mb=[{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)"}],WU=[{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,override_quiet:!1,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,override_quiet:!1,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,override_quiet:!1,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,override_quiet:!1,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,override_quiet:!0,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,override_quiet:!1,node_ids:[],smtp_host:"",smtp_port:587,smtp_user:"",smtp_password:"",smtp_tls:!0,from_address:"",recipients:[],webhook_url:"",webhook_headers:{}}}];function lP(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 No({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 xh({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(No,{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(wZ,{size:16}):y.jsx(WE,{size:16})})]}),a&&y.jsx("p",{className:"text-xs text-slate-600",children:a})]})}function HU({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(No,{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 iS({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(No,{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 aS({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(No,{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 iet({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(No,{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(SS,{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(ru,{size:14})})]},f))}),i&&y.jsx("p",{className:"text-xs text-slate-600",children:i})]})}function aet({value:e,onChange:t}){const[r,n]=H.useState(!1),i=mb.find(a=>a.value===e)||mb[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(No,{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(Uy,{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:mb.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 R_({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(Ds,{size:14}),mesh_dm:y.jsx(CZ,{size:14}),email:y.jsx(nce,{size:14}),webhook:y.jsx(rce,{size:14})}[e.delivery_type]||y.jsx(TS,{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(Gb,{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(Xc,{size:14,className:"mt-0.5 flex-shrink-0"}):y.jsx(ru,{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 oet({rule:e,ruleIndex:t,categories:r,quietHoursEnabled:n,onChange:i,onDelete:a,onDuplicate:o,onTest:s}){var k,O,D,N;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 j;e.name&&t>=0&&(fetch(`/api/notifications/rules/${t}/stats`).then(z=>z.json()).then(z=>d(z)).catch(()=>{}),(j=e.categories)!=null&&j.length&&fetch("/api/notifications/rules/sources",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({categories:e.categories})}).then(z=>z.json()).then(z=>g(z)).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=j=>{const z=e.categories||[];z.includes(j)?i({...e,categories:z.filter($=>$!==j)}):i({...e,categories:[...z,j]})},T=j=>{const z=e.schedule_days||[];z.includes(j)?i({...e,schedule_days:z.filter($=>$!==j)}):i({...e,schedule_days:[...z,j]})},A=async()=>{f(!0),await s(),f(!1)},M=()=>{if(e.trigger_type==="schedule")return"[Scheduled report preview would appear here]";const j=e.categories||[];if(j.length===0&&r.length>0)return r[0].example_message||"Alert notification";const z=r.find($=>j.includes($.id));return(z==null?void 0:z.example_message)||"Alert notification"},P=()=>{var z,$,U,F,V,W,Y,Z;const j=[];if(e.trigger_type==="schedule"){const J=((z=x.find(le=>le.value===e.schedule_frequency))==null?void 0:z.label)||e.schedule_frequency,ne=(($=_.find(le=>le.value===e.message_type))==null?void 0:$.label)||e.message_type;j.push(`${J} at ${e.schedule_time||"??:??"}`),j.push(ne)}else{const J=((U=e.categories)==null?void 0:U.length)||0,ne=J===0?"All":r.filter(fe=>{var ze;return(ze=e.categories)==null?void 0:ze.includes(fe.id)}).map(fe=>fe.name).slice(0,2).join(", ")+(J>2?` +${J-2}`:""),le=((F=mb.find(fe=>fe.value===e.min_severity))==null?void 0:F.label)||e.min_severity;j.push(`${ne} at ${le}+`)}if(!e.delivery_type)j.push("No delivery");else{const J=((V=m.find(le=>le.value===e.delivery_type))==null?void 0:V.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=`${((W=e.node_ids)==null?void 0:W.length)||0} nodes`;else if(e.delivery_type==="email")ne=(Y=e.recipients)!=null&&Y.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=((Z=e.webhook_url)==null?void 0:Z.slice(0,20))||"no URL"}j.push(`${J}${ne?` (${ne})`:""}`)}return j.join(" -> ")},I=()=>{var z;if(!v||!((z=e.categories)!=null&&z.length))return null;const j=new Map;for(const[,$]of Object.entries(v)){const U=j.get($.source);U?(U.events+=$.active_events,U.enabled=U.enabled&&$.enabled):j.set($.source,{enabled:$.enabled,events:$.active_events})}return Array.from(j.entries()).map(([$,{enabled:U,events:F}])=>y.jsxs("span",{className:`inline-flex items-center gap-1 px-1.5 py-0.5 rounded text-xs ${U?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,title:U?`${F} active`:"Not enabled",children:[U?y.jsx(TS,{size:10}):y.jsx(IZ,{size:10}),$.toUpperCase(),U&&F>0&&` (${F})`]},$))};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(Uy,{size:16,className:"text-slate-500 flex-shrink-0"}):y.jsx(wm,{size:16,className:"text-slate-500 flex-shrink-0"}),y.jsx("button",{onClick:j=>{j.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(_d,{size:14,className:"text-blue-400 flex-shrink-0"}):y.jsx(Tm,{size:14,className:"text-yellow-400 flex-shrink-0"}),y.jsx("span",{className:"font-medium text-slate-200 truncate",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:P()})]}),y.jsxs("div",{className:"flex items-center gap-1 flex-shrink-0",children:[h&&!l&&y.jsx("span",{className:"hidden sm:inline-flex items-center gap-1 px-2 py-0.5 bg-slate-800 rounded text-xs text-slate-400 mr-2",children:h.last_fired?lP(h.last_fired):"Never fired"}),!l&&y.jsx("div",{className:"hidden md:flex items-center gap-1 mr-2",children:I()}),y.jsx("button",{onClick:j=>{j.stopPropagation(),A()},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(c3,{size:14})}),y.jsx("button",{onClick:j=>{j.stopPropagation(),o()},className:"p-1.5 text-slate-400 hover:text-slate-200 hover:bg-slate-500/10 rounded",title:"Duplicate",children:y.jsx(ece,{size:14})}),y.jsx("button",{onClick:j=>{j.stopPropagation(),a()},className:"p-1.5 text-red-400 hover:text-red-300 hover:bg-red-500/10 rounded",title:"Delete",children:y.jsx(qE,{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(xd,{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(xh,{label:"Rule Name",value:e.name,onChange:j=>i({...e,name:j}),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(Tm,{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(_d,{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(Ns,{size:14}),"WHEN (Condition)"]}),y.jsx(aet,{value:e.min_severity,onChange:j=>i({...e,min_severity:j})}),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(No,{info:"Select which types of alerts trigger this rule. Leave all unchecked to match ALL categories."})]}),y.jsx("div",{className:"text-xs text-slate-500 mb-2",children:(((k=e.categories)==null?void 0:k.length)||0)===0?"All categories (none selected)":`${(O=e.categories)==null?void 0:O.length} selected`}),y.jsx("div",{className:"max-h-48 overflow-y-auto border border-[#1e2a3a] rounded-lg p-2 space-y-1",children:r.map(j=>{var z,$;return y.jsxs("label",{onClick:()=>S(j.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 ${(z=e.categories)!=null&&z.includes(j.id)?"bg-accent border-accent":"border-slate-600"}`,children:(($=e.categories)==null?void 0:$.includes(j.id))&&y.jsx(Xc,{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:j.name}),y.jsx("div",{className:"text-xs text-slate-500",children:j.description})]})]},j.id)})})]}),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:I()})]})]}),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(Xue,{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:j=>i({...e,schedule_frequency:j.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(j=>y.jsx("option",{value:j.value,children:j.label},j.value))})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(aS,{label:"Time",value:e.schedule_time||"07:00",onChange:j=>i({...e,schedule_time:j})}),e.schedule_frequency==="twice_daily"&&y.jsx(aS,{label:"Second Time",value:e.schedule_time_2||"19:00",onChange:j=>i({...e,schedule_time_2:j})})]}),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(j=>{var z;return y.jsx("button",{type:"button",onClick:()=>T(j),className:`px-3 py-1.5 rounded text-sm capitalize transition-colors ${(z=e.schedule_days)!=null&&z.includes(j)?"bg-accent text-white":"bg-[#1e2a3a] text-slate-400 hover:text-slate-200"}`,children:j.slice(0,3)},j)})})]}),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:j=>i({...e,message_type:j.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(j=>y.jsx("option",{value:j.value,children:j.label},j.value))}),y.jsx("p",{className:"text-xs text-slate-600",children:(D=_.find(j=>j.value===e.message_type))==null?void 0:D.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(No,{info:"Available tokens: {MESH_SCORE}, {NODE_COUNT}, {NODES_ONLINE}, {ACTIVE_ALERTS}, {KP}, {SFI}, {DATE}, {TIME}"})]}),y.jsx("textarea",{value:e.custom_message||"",onChange:j=>i({...e,custom_message:j.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-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(c3,{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(No,{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:j=>i({...e,delivery_type:j.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(j=>y.jsx("option",{value:j.value,children:j.label},j.value))}),y.jsx("p",{className:"text-xs text-slate-600",children:(N=m.find(j=>j.value===(e.delivery_type||"")))==null?void 0:N.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(xd,{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(FR,{label:"Broadcast Channel",value:e.broadcast_channel??0,onChange:j=>i({...e,broadcast_channel:j}),helper:"Select the mesh radio channel",mode:"single"}),y.jsx(R_,{rule:e})]}),e.delivery_type==="mesh_dm"&&y.jsxs(y.Fragment,{children:[y.jsx($R,{label:"Recipient Nodes",value:e.node_ids||[],onChange:j=>i({...e,node_ids:j}),helper:"Nodes that receive direct messages",valueType:"node_id_hex"}),y.jsx(R_,{rule:e})]}),e.delivery_type==="email"&&y.jsxs("div",{className:"space-y-4",children:[y.jsx(iet,{label:"Recipients",value:e.recipients||[],onChange:j=>i({...e,recipients:j}),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(wm,{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(xh,{label:"SMTP Host",value:e.smtp_host||"",onChange:j=>i({...e,smtp_host:j}),placeholder:"smtp.gmail.com"}),y.jsx(HU,{label:"SMTP Port",value:e.smtp_port??587,onChange:j=>i({...e,smtp_port:j}),min:1,max:65535})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(xh,{label:"Username",value:e.smtp_user||"",onChange:j=>i({...e,smtp_user:j})}),y.jsx(xh,{label:"Password",value:e.smtp_password||"",onChange:j=>i({...e,smtp_password:j}),type:"password",info:"Gmail users: use an App Password from myaccount.google.com/apppasswords"})]}),y.jsx(iS,{label:"Use TLS",checked:e.smtp_tls??!0,onChange:j=>i({...e,smtp_tls:j})}),y.jsx(xh,{label:"From Address",value:e.from_address||"",onChange:j=>i({...e,from_address:j}),placeholder:"alerts@yourdomain.com"})]})]}),y.jsx(R_,{rule:e})]}),e.delivery_type==="webhook"&&y.jsxs(y.Fragment,{children:[y.jsx(xh,{label:"Webhook URL",value:e.webhook_url||"",onChange:j=>i({...e,webhook_url:j}),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(R_,{rule:e})]})]}),y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(HU,{label:"Cooldown (minutes)",value:e.cooldown_minutes??10,onChange:j=>i({...e,cooldown_minutes:j}),min:0,helper:"Min time between repeat sends",info:"Prevents alert spam. Same condition won't re-trigger this rule within this window."}),n&&y.jsx("div",{className:"flex items-end pb-1",children:y.jsx(iS,{label:"Override Quiet Hours",checked:e.override_quiet??!1,onChange:j=>i({...e,override_quiet:j}),helper:"Deliver during quiet hours"})})]}),h&&y.jsxs("div",{className:"flex items-center gap-4 text-xs text-slate-500",children:[y.jsxs("span",{children:["Last fired: ",lP(h.last_fired)]}),y.jsxs("span",{children:["Last tested: ",lP(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:M()})}),y.jsx("p",{className:"text-xs text-slate-600",children:"This is an example of what this rule would send."})]})]})]})}function set(){var $,U,F;const[e,t]=H.useState(null),[r,n]=H.useState(null),[i,a]=H.useState([]),[o,s]=H.useState(!0),[l,u]=H.useState(!1),[c,f]=H.useState(null),[h,d]=H.useState(null),[v,g]=H.useState(null),[m,x]=H.useState({open:!1,ruleIndex:-1,loading:!1,action:""}),[_,b]=H.useState(!1),[S,T]=H.useState(!1),A=H.useCallback(async()=>{try{const[V,W]=await Promise.all([fetch("/api/config/notifications"),fetch("/api/notifications/categories")]);if(!V.ok)throw new Error("Failed to fetch notifications config");const Y=await V.json(),Z=await W.json();t(Y),n(JSON.parse(JSON.stringify(Y))),a(Z),T(!1),f(null)}catch(V){f(V instanceof Error?V.message:"Unknown error")}finally{s(!1)}},[]);H.useEffect(()=>{document.title="Notifications - MeshAI",A()},[A]),H.useEffect(()=>{e&&r&&T(JSON.stringify(e)!==JSON.stringify(r))},[e,r]);const M=async()=>{if(e){u(!0),f(null),d(null);try{const V=await fetch("/api/config/notifications",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),W=await V.json();if(!V.ok)throw new Error(W.detail||"Save failed");d("Notifications config saved successfully"),n(JSON.parse(JSON.stringify(e))),T(!1),setTimeout(()=>d(null),3e3)}catch(V){f(V instanceof Error?V.message:"Save failed")}finally{u(!1)}}},P=()=>{r&&(t(JSON.parse(JSON.stringify(r))),T(!1))},I=()=>({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,override_quiet:!1}),k=()=>{e&&t({...e,rules:[...e.rules||[],I()]})},O=V=>{if(!e)return;const W=WU.find(Y=>Y.id===V);W&&(t({...e,rules:[...e.rules||[],{...W.rule}]}),b(!1))},D=V=>{if(!e)return;const W=e.rules[V],Y={...JSON.parse(JSON.stringify(W)),name:`${W.name} (copy)`},Z=[...e.rules];Z.splice(V+1,0,Y),t({...e,rules:Z})},N=async V=>{x({open:!0,ruleIndex:V,loading:!0,action:""});try{const Y=await(await fetch(`/api/notifications/rules/${V}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"preview"})})).json();g(Y),x(Z=>({...Z,loading:!1}))}catch{g({success:!1,message:"Failed to get preview"}),x(W=>({...W,loading:!1}))}},j=async V=>{const W=m.ruleIndex;x(Y=>({...Y,loading:!0,action:V}));try{const Z=await(await fetch(`/api/notifications/rules/${W}/test`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:V})})).json();g(Z),x(J=>({...J,loading:!1}))}catch{g({success:!1,message:`Failed to ${V}`}),x(Y=>({...Y,loading:!1}))}},z=()=>{x({open:!1,ruleIndex:-1,loading:!1,action:""}),g(null)};return o?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:[m.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:z,className:"text-slate-500 hover:text-slate-300",children:y.jsx(ru,{size:20})})]}),y.jsx("div",{className:"p-4 space-y-4",children:m.loading?y.jsxs("div",{className:"flex items-center justify-center py-8",children:[y.jsx(Gb,{size:20,className:"animate-spin text-slate-400 mr-2"}),y.jsx("div",{className:"text-slate-400",children:m.action?`${m.action.replace("_"," ").replace("send ","Sending ")}...`:"Loading current data..."})]}):v?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"}),v.live_data_summary&&v.live_data_summary.length>0?y.jsx("div",{className:"p-3 bg-slate-800/50 rounded space-y-1",children:v.live_data_summary.map((V,W)=>y.jsx("div",{className:`text-sm font-mono ${V.startsWith("[!]")?"text-amber-400":""}`,children:V},W))}):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:[v.conditions_matched&&v.conditions_matched>0?y.jsxs("span",{className:"px-2 py-1 bg-green-500/20 text-green-400 rounded text-sm",children:[v.conditions_matched," condition",v.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"}),v.conditions_below_threshold&&v.conditions_below_threshold>0&&y.jsxs("span",{className:"px-2 py-1 bg-yellow-500/20 text-yellow-400 rounded text-sm",children:[v.conditions_below_threshold," below threshold"]})]}),v.conditions_below_threshold&&v.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:v.below_threshold_summary}),v.below_threshold_events&&v.below_threshold_events.length>0&&y.jsx("div",{className:"space-y-1 text-yellow-200/80",children:v.below_threshold_events.slice(0,3).map((V,W)=>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:V.severity}),y.jsx("span",{children:V.headline})]},W))}),v.suggestion&&y.jsxs("div",{className:"text-yellow-400 text-xs mt-2",children:["Tip: ",v.suggestion]})]})]}),y.jsxs("div",{className:"space-y-2",children:[y.jsx("div",{className:"text-sm font-medium text-slate-400 uppercase tracking-wide",children:v.is_example?"Example Messages":"Messages That Would Fire"}),($=v.preview_messages)==null?void 0:$.map((V,W)=>y.jsx("div",{className:"p-3 bg-slate-800 rounded text-sm font-mono break-words",children:V},W))]}),v.delivered!==void 0&&v.delivery_result&&y.jsx("div",{className:`p-3 rounded text-sm ${v.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:[v.delivered?y.jsx(Xc,{size:16,className:"mt-0.5"}):y.jsx(ru,{size:16,className:"mt-0.5"}),y.jsxs("div",{children:[y.jsx("div",{children:v.delivery_result}),v.delivery_error&&y.jsx("div",{className:"mt-1 text-red-300",children:v.delivery_error})]})]})}),v.message&&!v.preview_messages&&y.jsx("div",{className:`p-3 rounded text-sm ${v.success?"bg-green-500/10 text-green-400":"bg-red-500/10 text-red-400"}`,children:v.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:z,className:"px-4 py-2 text-slate-400 hover:text-slate-200",children:"Close"}),v&&!v.delivered&&y.jsx("div",{className:"flex gap-2",children:v.delivery_method?y.jsxs(y.Fragment,{children:[v.live_data_summary&&v.live_data_summary.length>0&&y.jsx("button",{onClick:()=>j("send_status"),disabled:m.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:()=>j("send_test"),disabled:m.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"}),v.can_send_live&&y.jsx("button",{onClick:()=>j("send_live"),disabled:m.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:A,className:"p-2 text-slate-400 hover:text-slate-200 hover:bg-bg-hover rounded transition-colors",title:"Refresh",children:y.jsx(Gb,{size:18})}),y.jsxs("button",{onClick:P,disabled:!S,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(MZ,{size:16}),"Discard"]}),y.jsxs("button",{onClick:M,disabled:l||!S,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(PZ,{size:16}),l?"Saving...":"Save"]})]})]}),c&&y.jsx("div",{className:"p-3 rounded-lg text-sm bg-red-500/10 text-red-400 border border-red-500/20",children:c}),h&&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(Xc,{size:14,className:"inline mr-2"}),h]}),y.jsxs("div",{className:"bg-bg-card border border-border rounded-lg p-6 space-y-6",children:[y.jsx(iS,{label:"Enable Notifications",checked:e.enabled,onChange:V=>t({...e,enabled:V}),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.jsxs("div",{className:"flex items-center gap-2",children:[y.jsx(ace,{size:14,className:"text-slate-400"}),y.jsx("label",{className:"text-xs text-slate-500 uppercase tracking-wide",children:"Quiet Hours"})]}),y.jsx(iS,{label:"Enable Quiet Hours",checked:e.quiet_hours_enabled??!0,onChange:V=>t({...e,quiet_hours_enabled:V}),helper:"Suppress non-emergency alerts during sleeping hours",info:"When enabled, ROUTINE alerts are suppressed during quiet hours. PRIORITY and IMMEDIATE always deliver."}),e.quiet_hours_enabled&&y.jsxs(y.Fragment,{children:[y.jsxs("div",{className:"grid grid-cols-2 gap-4",children:[y.jsx(aS,{label:"Start Time",value:e.quiet_hours_start||"22:00",onChange:V=>t({...e,quiet_hours_start:V}),helper:"When quiet hours begin"}),y.jsx(aS,{label:"End Time",value:e.quiet_hours_end||"06:00",onChange:V=>t({...e,quiet_hours_end:V}),helper:"When quiet hours end"})]}),y.jsx("p",{className:"text-xs text-slate-600",children:'Emergency alerts and rules with "Override Quiet Hours" enabled always deliver.'})]})]}),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(No,{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:[((U=e.rules)==null?void 0:U.length)||0," rule",(((F=e.rules)==null?void 0:F.length)||0)!==1?"s":""]})]}),(e.rules||[]).map((V,W)=>y.jsx(oet,{rule:V,ruleIndex:W,categories:i,quietHoursEnabled:e.quiet_hours_enabled??!0,onChange:Y=>{const Z=[...e.rules||[]];Z[W]=Y,t({...e,rules:Z})},onDelete:()=>{confirm(`Delete rule "${V.name||"New Rule"}"?`)&&t({...e,rules:(e.rules||[]).filter((Y,Z)=>Z!==W)})},onDuplicate:()=>D(W),onTest:()=>N(W)},W)),y.jsxs("div",{className:"flex gap-2",children:[y.jsxs("button",{onClick:k,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(SS,{size:16})," Add Rule"]}),y.jsxs("div",{className:"relative",children:[y.jsxs("button",{onClick:()=>b(!_),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(SZ,{size:16})," Add from Template"]}),_&&y.jsxs(y.Fragment,{children:[y.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>b(!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"}),WU.map(V=>y.jsxs("button",{onClick:()=>O(V.id),className:"w-full p-3 text-left hover:bg-[#2a3a4a] transition-colors",children:[y.jsx("div",{className:"font-medium text-slate-200",children:V.name}),y.jsx("div",{className:"text-xs text-slate-500 mt-0.5",children:V.description})]},V.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 UU=[{id:"stream-gauges",label:"Stream Gauges",icon:GE},{id:"wildfire",label:"Wildfire",icon:UE},{id:"firms",label:"Satellite Fire Detection (FIRMS)",icon:YE},{id:"weather-alerts",label:"Weather Alerts",icon:Que},{id:"solar",label:"Solar & Geomagnetic",icon:Wb},{id:"ducting",label:"Tropospheric Ducting",icon:Ds},{id:"avalanche",label:"Avalanche Danger",icon:ZE},{id:"traffic",label:"Traffic Flow",icon:VE},{id:"roads-511",label:"Road Conditions (511)",icon:_Z},{id:"mesh-health",label:"Mesh Health",icon:Hy},{id:"notifications",label:"Notifications",icon:bm},{id:"commands",label:"Commands",icon:kZ},{id:"api",label:"API Reference",icon:Jue}];function ar({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 Rt({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 Bt({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(bd,{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 fl({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 pi({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 uet(){const e=dv(),[t,r]=H.useState(""),[n,i]=H.useState("stream-gauges"),a=H.useRef(null);H.useEffect(()=>{const l=e.hash.replace("#","");if(l&&UU.find(u=>u.id===l)){i(l);const u=document.getElementById(l);u&&u.scrollIntoView({behavior:"smooth"})}},[e.hash]);const o=UU.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(XE,{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(pi,{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(Bt,{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(Bt,{href:"https://waterdata.usgs.gov/nwis",children:"USGS Water Data"})," — find gauges near you"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://water.noaa.gov",children:"NWS Water Prediction Service"})," — flood forecasts and thresholds"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://www.usgs.gov/special-topics/water-science-school/science/how-streamflow-measured",children:"Understanding Streamflow"})," — USGS explainer"]})]})]}),y.jsxs(pi,{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(Rt,{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(Rt,{headers:["Distance","What To Do"],rows:[[y.jsxs(y.Fragment,{children:[y.jsx(ar,{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(ar,{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(ar,{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(ar,{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(Bt,{href:"https://inciweb.nwcg.gov",children:"InciWeb"})," — detailed incident information"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://data-nifc.opendata.arcgis.com",children:"NIFC Fire Map"})," — raw perimeter data"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://www.ready.gov/wildfires",children:"Ready.gov Wildfires"})," — preparedness guide"]})]})]}),y.jsxs(pi,{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(Rt,{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(Rt,{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(Bt,{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(Bt,{href:"https://firms.modaps.eosdis.nasa.gov",children:"FIRMS Fire Map"})," — see hotspots on a map"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://earthdata.nasa.gov/data/tools/firms/faq",children:"FIRMS FAQ"})," — how it works"]})]})]}),y.jsxs(pi,{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(Rt,{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(Rt,{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(Rt,{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(Rt,{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(Bt,{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(Bt,{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(Bt,{href:"https://alerts.weather.gov",children:"NWS Active Alerts"})," — see current alerts"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://www.weather.gov/documentation/services-web-api",children:"NWS API Docs"})," — technical details"]})]})]}),y.jsxs(pi,{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(Rt,{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(Rt,{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(fl,{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(fl,{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(fl,{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(Rt,{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(Bt,{href:"https://www.swpc.noaa.gov",children:"SWPC Space Weather Dashboard"})," — live data"]}),y.jsxs("li",{children:[y.jsx(Bt,{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(Bt,{href:"https://www.hamqsl.com/solar.html",children:"HamQSL Solar Page"})," — ham-friendly display"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://www.swpc.noaa.gov/products/planetary-k-index",children:"Planetary K-Index"})," — live Kp"]})]})]}),y.jsxs(pi,{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(Rt,{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(Bt,{href:"https://dxinfocentre.com/tropo.html",children:"Tropo Forecast Maps (Hepburn)"})," — 6-day tropo prediction"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://dxmaps.com",children:"DX Maps"})," — real-time VHF/UHF propagation reports"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://en.wikipedia.org/wiki/Tropospheric_propagation",children:"Wikipedia: Tropospheric Propagation"})," — background"]})]})]}),y.jsxs(pi,{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(Rt,{headers:["Level","Name","Color","What To Do"],rows:[["1","Low",y.jsx(ar,{color:"green"}),"Generally safe. Normal caution in steep terrain."],["2","Moderate",y.jsx(ar,{color:"yellow"}),"Be careful on specific terrain features. Evaluate conditions."],["3","Considerable",y.jsx(ar,{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(ar,{color:"red"}),y.jsxs(y.Fragment,{children:[y.jsx("strong",{children:"Very dangerous."})," Stay off anything steep."]})],["5","Extreme",y.jsx(ar,{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(Bt,{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(Bt,{href:"https://avalanche.org",children:"Avalanche.org"})," — US forecasts"]}),y.jsxs("li",{children:[y.jsx(Bt,{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(Bt,{href:"https://kbyg.org",children:"Know Before You Go"})," — avalanche awareness"]})]})]}),y.jsxs(pi,{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(Rt,{headers:["Ratio","What It Means"],rows:[[y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"green"})," Above 85%"]}),"Normal. Traffic flowing fine."],[y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"yellow"})," 65-85%"]}),"Slow. Heavier than usual but moving."],[y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"orange"})," 40-65%"]}),"Congested. Significant delays."],[y.jsxs(y.Fragment,{children:[y.jsx(ar,{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(Rt,{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(Bt,{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(Bt,{href:"https://developer.tomtom.com",children:"TomTom Developer Portal"})," — API docs and key signup"]}),y.jsxs("li",{children:[y.jsx(Bt,{href:"https://www.tomtom.com/traffic-index/",children:"TomTom Traffic Index"})," — city congestion rankings"]})]})]}),y.jsxs(pi,{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(pi,{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(Rt,{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(fl,{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(fl,{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(Rt,{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(fl,{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(Rt,{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(fl,{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(Rt,{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(fl,{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(Rt,{headers:["Score","Tier","What It Means"],rows:[["90-100",y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"green"})," Healthy"]}),"Everything's working well."],["75-89",y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"yellow"})," Slight degradation"]}),"Some issues but the mesh is functional."],["50-74",y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"orange"})," Unhealthy"]}),"Multiple problems. Reliability is affected."],["25-49",y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"red"})," Warning"]}),"Significant issues. The mesh is struggling."],["0-24",y.jsxs(y.Fragment,{children:[y.jsx(ar,{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(Rt,{headers:["Utilization","What's Happening"],rows:[[y.jsxs(y.Fragment,{children:[y.jsx(ar,{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(ar,{color:"yellow"})," 25-40%"]}),"Getting busy. Common on larger meshes. Worth watching."],[y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"orange"})," 40-50%"]}),"Congested. The firmware throttles GPS updates above 40%. Messages are colliding and retrying."],[y.jsxs(y.Fragment,{children:[y.jsx(ar,{color:"red"})," Over 50%"]}),"Serious problem. More time is spent retrying than communicating. Mesh reliability drops fast."],[y.jsxs(y.Fragment,{children:[y.jsx(ar,{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(Rt,{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(Rt,{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(Rt,{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(pi,{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? Are we in quiet hours?"]}),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(Rt,{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:"Quiet Hours"}),y.jsx("p",{children:'When enabled, non-emergency notifications are held during sleeping hours (default 10pm-6am). Emergency alerts and rules marked "Override Quiet Hours" always get through.'}),y.jsx("p",{children:"You can turn quiet hours off entirely if you don't want them."}),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(pi,{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(Rt,{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(Rt,{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(Rt,{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(pi,{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"]})})]})]})})]})}function cet(){return y.jsx(Tce,{children:y.jsx(Mce,{children:y.jsxs(Iue,{children:[y.jsx(hl,{path:"/",element:y.jsx(oNe,{})}),y.jsx(hl,{path:"/mesh",element:y.jsx(SJe,{})}),y.jsx(hl,{path:"/environment",element:y.jsx(PJe,{})}),y.jsx(hl,{path:"/config",element:y.jsx(XJe,{})}),y.jsx(hl,{path:"/alerts",element:y.jsx(net,{})}),y.jsx(hl,{path:"/notifications",element:y.jsx(set,{})}),y.jsx(hl,{path:"/reference",element:y.jsx(uet,{})})]})})})}uP.createRoot(document.getElementById("root")).render(y.jsx(Q.StrictMode,{children:y.jsx(Bue,{children:y.jsx(cet,{})})})); diff --git a/meshai/dashboard/static/assets/index-CtFYHJy4.css b/meshai/dashboard/static/assets/index-CtFYHJy4.css deleted file mode 100644 index 57c2b52..0000000 --- a/meshai/dashboard/static/assets/index-CtFYHJy4.css +++ /dev/null @@ -1 +0,0 @@ -.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}.-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}.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-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.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-16{height:4rem}.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-\[540px\]{height:540px}.h-\[60vh\]{height:60vh}.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-\[80vh\]{max-height:80vh}.w-0\.5{width:.125rem}.w-1{width:.25rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.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}.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-lg{max-width:32rem}.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 pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.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-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.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))}.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-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{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/30{border-color:#22c55e4d}.border-green-500\/50{border-color:#22c55e80}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-orange-500\/30{border-color:#f973164d}.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-500{--tw-border-opacity: 1;border-color:rgb(100 116 139 / 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{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.border-yellow-500\/30{border-color:#eab3084d}.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-\[\#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-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-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-orange-500\/10{background-color:#f973161a}.bg-orange-500\/20{background-color:#f9731633}.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\/10{background-color:#64748b1a}.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-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-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-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-4{padding-bottom:1rem}.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-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-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}.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-400{--tw-text-opacity: 1;color:rgb(34 211 238 / 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-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / 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-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / 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))}.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\/80:hover{background-color:#3b82f6cc}.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-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\: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-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-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}}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.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-QhNRb-ap.css b/meshai/dashboard/static/assets/index-QhNRb-ap.css new file mode 100644 index 0000000..8ba7662 --- /dev/null +++ b/meshai/dashboard/static/assets/index-QhNRb-ap.css @@ -0,0 +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}.-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}.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-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.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-16{height:4rem}.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-\[540px\]{height:540px}.h-\[60vh\]{height:60vh}.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-\[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-16{width:4rem}.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}.max-w-2xl{max-width:42rem}.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 pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.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-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-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.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))}.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-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{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/30{border-color:#22c55e4d}.border-green-500\/50{border-color:#22c55e80}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.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-500{--tw-border-opacity: 1;border-color:rgb(100 116 139 / 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{--tw-border-opacity: 1;border-color:rgb(234 179 8 / var(--tw-border-opacity, 1))}.border-yellow-500\/30{border-color:#eab3084d}.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-\[\#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-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-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-orange-500\/10{background-color:#f973161a}.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\/10{background-color:#64748b1a}.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-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-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-1{padding-bottom:.25rem}.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-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-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}.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-400{--tw-text-opacity: 1;color:rgb(34 211 238 / 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-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / 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-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-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))}.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\/80:hover{background-color:#3b82f6cc}.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-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\: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-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-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-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.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/index.html b/meshai/dashboard/static/index.html index d783c87..e55d4b8 100644 --- a/meshai/dashboard/static/index.html +++ b/meshai/dashboard/static/index.html @@ -8,8 +8,8 @@ - - + +
diff --git a/meshai/mesh_data_store.py b/meshai/mesh_data_store.py index 4c4351f..bae95da 100644 --- a/meshai/mesh_data_store.py +++ b/meshai/mesh_data_store.py @@ -2116,7 +2116,7 @@ class MeshDataStore: infra_roles = {"ROUTER", "ROUTER_CLIENT", "ROUTER_LATE", "REPEATER"} return [n for n in self._nodes.values() if n.role in infra_roles] - def get_low_battery_nodes(self, threshold: float = 20.0) -> list[UnifiedNode]: + def get_low_battery_nodes(self, threshold: float = 30.0) -> list[UnifiedNode]: """Get nodes with low battery.""" return [ n diff --git a/meshai/mesh_health.py b/meshai/mesh_health.py index e0938ed..9b4b542 100644 --- a/meshai/mesh_health.py +++ b/meshai/mesh_health.py @@ -28,6 +28,7 @@ INFRASTRUCTURE_ROLES = {"ROUTER", "ROUTER_LATE", "ROUTER_CLIENT"} DEFAULT_LOCALITY_RADIUS_MILES = 8.0 DEFAULT_OFFLINE_THRESHOLD_HOURS = 2 # Hours before node considered offline DEFAULT_PACKET_THRESHOLD = 7200 # Non-text packets per 24h (5/min avg) +# TODO: behavior pillar uses wrong scale - see meshai-v03-notification-handoff.md bug #2 # NOTE: This is aligned with notification config's packet_flood threshold. # 5 packets/min avg × 60 min × 24 hr = 7,200 packets/day. # A node averaging 5+ non-text packets/min is misbehaving. diff --git a/meshai/mesh_reporter.py b/meshai/mesh_reporter.py index 6943d02..38f58fc 100644 --- a/meshai/mesh_reporter.py +++ b/meshai/mesh_reporter.py @@ -630,7 +630,7 @@ class MeshReporter: usb += 1 elif node.battery_percent >= 50: ok += 1 - elif node.battery_percent >= 20: + elif node.battery_percent >= 30: low += 1 else: critical += 1 diff --git a/meshai/notifications/categories.py b/meshai/notifications/categories.py index 0389199..2379a15 100644 --- a/meshai/notifications/categories.py +++ b/meshai/notifications/categories.py @@ -1,242 +1,242 @@ -"""Alert category registry. - -Defines all alertable conditions with human-readable names, descriptions, -and example messages showing what users will receive. - -Severity levels (military/intelligence precedence): - routine - Informational, no time pressure - priority - Needs attention soon - immediate - Act now, drop everything -""" - -ALERT_CATEGORIES = { - # Infrastructure alerts - "infra_offline": { - "name": "Infrastructure Node Offline", - "description": "An infrastructure node (router/repeater) stopped responding", - "default_severity": "priority", - "example_message": "⚠ Infrastructure Offline: MHR — Mountain Harrison Rptr has not been heard for 2 hours", - }, - "critical_node_down": { - "name": "Critical Node Down", - "description": "A node you marked as critical went offline", - "default_severity": "immediate", - "example_message": "🚨 Critical Node Down: HPR — Hayden Peak Rptr offline for 1 hour", - }, - "infra_recovery": { - "name": "Infrastructure Recovery", - "description": "An offline infrastructure node came back online", - "default_severity": "routine", - "example_message": "✅ Recovery: MHR — Mountain Harrison Rptr back online after 2h outage", - }, - "new_router": { - "name": "New Router", - "description": "A new router appeared on the mesh", - "default_severity": "routine", - "example_message": "📡 New Router: Snake River Relay appeared in Wood River Valley", - }, - - # Power alerts - "battery_warning": { - "name": "Battery Warning", - "description": "Infrastructure node battery below 30% (3.60V)", - "default_severity": "routine", - "example_message": "🔋 Battery Warning: BLD-MTN at 28% (3.58V), solar not charging", - }, - "battery_critical": { - "name": "Battery Critical", - "description": "Infrastructure node battery below 15% (3.50V)", - "default_severity": "priority", - "example_message": "🔋 Battery Critical: BLD-MTN at 12% (3.48V) — shutdown in hours", - }, - "battery_emergency": { - "name": "Battery Emergency", - "description": "Infrastructure node battery below 5% (3.40V) — shutdown imminent", - "default_severity": "immediate", - "example_message": "🚨 Battery Emergency: BLD-MTN at 4% (3.38V) — shutdown imminent", - }, - "battery_trend": { - "name": "Battery Declining", - "description": "Battery showing declining trend over 7 days — possible solar or charging issue", - "default_severity": "routine", - "example_message": "🔋 Battery Trend: HPR declining 85% → 62% over 7 days (-3.3%/day)", - }, - "power_source_change": { - "name": "Power Source Change", - "description": "Node switched from USB to battery — possible power outage at site", - "default_severity": "priority", - "example_message": "⚡ Power Source: MHR switched from USB to battery — possible outage", - }, - "solar_not_charging": { - "name": "Solar Not Charging", - "description": "Solar panel not charging during daylight hours — panel issue or obstruction", - "default_severity": "priority", - "example_message": "☀️ Solar Issue: BLD-MTN not charging during daylight (12:00 MDT)", - }, - - # Utilization alerts - "high_utilization": { - "name": "Channel Airtime High", - "description": "LoRa channel airtime exceeding threshold — mesh congestion", - "default_severity": "routine", - "example_message": "📊 Channel Airtime: 47% utilization (threshold: 40%). Reliability may degrade.", - }, - "sustained_high_util": { - "name": "Sustained High Utilization", - "description": "Channel airtime elevated for extended period — ongoing congestion", - "default_severity": "priority", - "example_message": "📊 Sustained Congestion: 45% channel utilization for 2+ hours. Consider reducing telemetry.", - }, - "packet_flood": { - "name": "Packet Flood", - "description": "A single node sending excessive radio packets (NOT water flooding) — possible firmware bug or stuck transmitter", - "default_severity": "priority", - "example_message": "📻 Packet Flood: Node 'BKBS' transmitting 42 packets/min (threshold: 10/min). Firmware bug?", - }, - - # Coverage alerts - "infra_single_gateway": { - "name": "Single Gateway", - "description": "Infrastructure node dropped to single gateway coverage — reduced redundancy", - "default_severity": "priority", - "example_message": "📶 Reduced Coverage: HPR dropped to single gateway. Previously had 3 paths.", - }, - "feeder_offline": { - "name": "Feeder Offline", - "description": "A feeder gateway stopped responding — coverage gap possible", - "default_severity": "priority", - "example_message": "📡 Feeder Offline: AIDA-N2 gateway not responding. 5 nodes may lose uplink.", - }, - "region_total_blackout": { - "name": "Region Blackout", - "description": "All infrastructure in a region is offline — complete coverage loss", - "default_severity": "immediate", - "example_message": "🚨 REGION BLACKOUT: All infrastructure in Magic Valley offline!", - }, - - # Health score alerts - "mesh_score_low": { - "name": "Mesh Health Low", - "description": "Overall mesh health score dropped below threshold — multiple issues likely", - "default_severity": "priority", - "example_message": "📉 Mesh Health: Score 62/100 (threshold: 65). Infrastructure: 71, Connectivity: 58.", - }, - "region_score_low": { - "name": "Region Health Low", - "description": "A region's health score below threshold — localized issues", - "default_severity": "priority", - "example_message": "📉 Region Health: Magic Valley at 55/100 (threshold: 60). 2 nodes offline.", - }, - - # Environmental - Weather - "weather_warning": { - "name": "Severe Weather", - "description": "NWS warning or advisory affecting your mesh area", - "default_severity": "priority", - "example_message": "⚠ Red Flag Warning — Twin Falls, Cassia counties. Gusty winds, low humidity. Until May 13 04:00Z", - }, - - # Environmental - Space Weather - "hf_blackout": { - "name": "HF Radio Blackout", - "description": "R3+ solar flare degrading HF propagation on sunlit side", - "default_severity": "priority", - "example_message": "⚠ R3 Strong Radio Blackout — X1.2 flare. Wide-area HF blackout ~1 hour on sunlit side.", - }, - "geomagnetic_storm": { - "name": "Geomagnetic Storm", - "description": "G2+ geomagnetic storm — HF degraded at higher latitudes, aurora possible", - "default_severity": "priority", - "example_message": "🌐 G2 Moderate Geomagnetic Storm — Kp=6. HF fades at high latitudes, aurora to ~55°.", - }, - - # Environmental - Tropospheric - "tropospheric_ducting": { - "name": "Tropospheric Ducting", - "description": "Atmospheric conditions trapping VHF/UHF signals — extended range", - "default_severity": "routine", - "example_message": "📡 Tropospheric Ducting: Surface duct detected, dM/dz -45 M-units/km, ~120m thick. VHF/UHF extended range.", - }, - - # Environmental - Fire - "fire_proximity": { - "name": "Fire Near Mesh", - "description": "Active wildfire within alert radius of mesh infrastructure", - "default_severity": "priority", - "example_message": "🔥 Fire Near Mesh: Rock Creek Fire — 1,240 ac, 15% contained, 12 km SSW of MHR. Monitor closely.", - }, - "wildfire_proximity": { - "name": "Fire Near Mesh", - "description": "Active wildfire within alert radius of mesh infrastructure", - "default_severity": "priority", - "example_message": "🔥 Fire Near Mesh: Rock Creek Fire — 1,240 ac, 15% contained, 12 km SSW of MHR.", - }, - "new_ignition": { - "name": "New Fire Ignition", - "description": "Satellite hotspot detected NOT near any known fire — potential new wildfire", - "default_severity": "priority", - "example_message": "🛰 New Ignition: Satellite fire at 42.32°N, 114.30°W — high confidence, 47 MW FRP. Not near any known fire.", - }, - - # Environmental - Flood - "stream_flood_warning": { - "name": "Stream Flood Warning", - "description": "River gauge exceeds NWS flood stage threshold", - "default_severity": "priority", - "example_message": "🌊 Stream Flood Warning: Snake River nr Twin Falls at 12.8 ft — Minor Flood Stage is 10.5 ft.", - }, - "stream_high_water": { - "name": "Stream High Water", - "description": "River gauge approaching flood stage — monitoring recommended", - "default_severity": "routine", - "example_message": "🌊 High Water: Snake River at 9.8 ft — Action Stage is 9.0 ft. Monitor conditions.", - }, - - # Environmental - Roads - "road_closure": { - "name": "Road Closure", - "description": "Full road closure on a monitored corridor", - "default_severity": "priority", - "example_message": "🚧 Road Closure: I-84 EB at MP 173 — full closure, construction. Detour via US-30.", - }, - "traffic_congestion": { - "name": "Traffic Congestion", - "description": "Traffic speed dropped below congestion threshold on a monitored corridor", - "default_severity": "routine", - "example_message": "🚗 Traffic Congestion: I-84 Twin Falls — 35 mph (free-flow 70 mph), 50% speed ratio", - }, - - # Environmental - Avalanche - "avalanche_warning": { - "name": "Avalanche Danger High", - "description": "Avalanche danger level 4 (High) or 5 (Extreme) in your area", - "default_severity": "priority", - "example_message": "⛷ Avalanche Danger HIGH: Sawtooth Zone — avoid avalanche terrain. Natural avalanches likely.", - }, - "avalanche_considerable": { - "name": "Avalanche Danger Considerable", - "description": "Avalanche danger level 3 (Considerable) — most fatalities occur at this level", - "default_severity": "routine", - "example_message": "⛷ Avalanche Danger CONSIDERABLE: Sawtooth Zone — dangerous conditions on steep slopes.", - }, -} - - -def get_category(category_id: str) -> dict: - """Get category info by ID, with fallback for unknown categories.""" - if category_id in ALERT_CATEGORIES: - return ALERT_CATEGORIES[category_id] - return { - "name": category_id.replace("_", " ").title(), - "description": f"Alert type: {category_id}", - "default_severity": "routine", - "example_message": f"Alert: {category_id}", - } - - -def list_categories() -> list[dict]: - """List all categories with their IDs.""" - return [ - {"id": cat_id, **cat_info} - for cat_id, cat_info in ALERT_CATEGORIES.items() - ] +"""Alert category registry. + +Defines all alertable conditions with human-readable names, descriptions, +and example messages showing what users will receive. + +Severity levels (military/intelligence precedence): + routine - Informational, no time pressure + priority - Needs attention soon + immediate - Act now, drop everything +""" + +ALERT_CATEGORIES = { + # Infrastructure alerts + "infra_offline": { + "name": "Infrastructure Node Offline", + "description": "An infrastructure node (router/repeater) stopped responding", + "default_severity": "priority", + "example_message": "⚠ Infrastructure Offline: MHR — Mountain Harrison Rptr has not been heard for 2 hours", + }, + "critical_node_down": { + "name": "Critical Node Down", + "description": "A node you marked as critical went offline", + "default_severity": "immediate", + "example_message": "🚨 Critical Node Down: HPR — Hayden Peak Rptr offline for 1 hour", + }, + "infra_recovery": { + "name": "Infrastructure Recovery", + "description": "An offline infrastructure node came back online", + "default_severity": "routine", + "example_message": "✅ Recovery: MHR — Mountain Harrison Rptr back online after 2h outage", + }, + "new_router": { + "name": "New Router", + "description": "A new router appeared on the mesh", + "default_severity": "routine", + "example_message": "📡 New Router: Snake River Relay appeared in Wood River Valley", + }, + + # Power alerts + "battery_warning": { + "name": "Battery Warning", + "description": "Infrastructure node battery below 30% (3.60V)", + "default_severity": "routine", + "example_message": "🔋 Battery Warning: BLD-MTN at 28% (3.58V), solar not charging", + }, + "battery_critical": { + "name": "Battery Critical", + "description": "Infrastructure node battery below 15% (3.50V)", + "default_severity": "priority", + "example_message": "🔋 Battery Critical: BLD-MTN at 12% (3.48V) — shutdown in hours", + }, + "battery_emergency": { + "name": "Battery Emergency", + "description": "Infrastructure node battery below 5% (3.40V) — shutdown imminent", + "default_severity": "immediate", + "example_message": "🚨 Battery Emergency: BLD-MTN at 4% (3.38V) — shutdown imminent", + }, + "battery_trend": { + "name": "Battery Declining", + "description": "Battery showing declining trend over 7 days — possible solar or charging issue", + "default_severity": "routine", + "example_message": "🔋 Battery Trend: HPR declining 85% → 62% over 7 days (-3.3%/day)", + }, + "power_source_change": { + "name": "Power Source Change", + "description": "Node switched from USB to battery — possible power outage at site", + "default_severity": "priority", + "example_message": "⚡ Power Source: MHR switched from USB to battery — possible outage", + }, + "solar_not_charging": { + "name": "Solar Not Charging", + "description": "Solar panel not charging during daylight hours — panel issue or obstruction", + "default_severity": "priority", + "example_message": "☀️ Solar Issue: BLD-MTN not charging during daylight (12:00 MDT)", + }, + + # Utilization alerts + "high_utilization": { + "name": "Channel Airtime High", + "description": "LoRa channel airtime exceeding threshold — mesh congestion", + "default_severity": "routine", + "example_message": "📊 Channel Airtime: 47% utilization (threshold: 40%). Reliability may degrade.", + }, + "sustained_high_util": { + "name": "Sustained High Utilization", + "description": "Channel airtime elevated for extended period — ongoing congestion", + "default_severity": "priority", + "example_message": "📊 Sustained Congestion: 45% channel utilization for 2+ hours. Consider reducing telemetry.", + }, + "packet_flood": { + "name": "Packet Flood", + "description": "A single node sending excessive radio packets (NOT water flooding) — possible firmware bug or stuck transmitter", + "default_severity": "priority", + "example_message": "📻 Packet Flood: Node 'BKBS' transmitting 42 packets/min (threshold: 10/min). Firmware bug?", + }, + + # Coverage alerts + "infra_single_gateway": { + "name": "Single Gateway", + "description": "Infrastructure node dropped to single gateway coverage — reduced redundancy", + "default_severity": "priority", + "example_message": "📶 Reduced Coverage: HPR dropped to single gateway. Previously had 3 paths.", + }, + "feeder_offline": { + "name": "Feeder Offline", + "description": "A feeder gateway stopped responding — coverage gap possible", + "default_severity": "priority", + "example_message": "📡 Feeder Offline: AIDA-N2 gateway not responding. 5 nodes may lose uplink.", + }, + "region_total_blackout": { + "name": "Region Blackout", + "description": "All infrastructure in a region is offline — complete coverage loss", + "default_severity": "immediate", + "example_message": "🚨 REGION BLACKOUT: All infrastructure in Magic Valley offline!", + }, + + # Health score alerts + "mesh_score_low": { + "name": "Mesh Health Low", + "description": "Overall mesh health score dropped below threshold — multiple issues likely", + "default_severity": "priority", + "example_message": "📉 Mesh Health: Score 62/100 (threshold: 65). Infrastructure: 71, Connectivity: 58.", + }, + "region_score_low": { + "name": "Region Health Low", + "description": "A region's health score below threshold — localized issues", + "default_severity": "priority", + "example_message": "📉 Region Health: Magic Valley at 55/100 (threshold: 60). 2 nodes offline.", + }, + + # Environmental - Weather + "weather_warning": { + "name": "Severe Weather", + "description": "NWS warning or advisory affecting your mesh area", + "default_severity": "priority", + "example_message": "⚠ Red Flag Warning — Twin Falls, Cassia counties. Gusty winds, low humidity. Until May 13 04:00Z", + }, + + # Environmental - Space Weather + "hf_blackout": { + "name": "HF Radio Blackout", + "description": "R3+ solar flare degrading HF propagation on sunlit side", + "default_severity": "priority", + "example_message": "⚠ R3 Strong Radio Blackout — X1.2 flare. Wide-area HF blackout ~1 hour on sunlit side.", + }, + "geomagnetic_storm": { + "name": "Geomagnetic Storm", + "description": "G2+ geomagnetic storm — HF degraded at higher latitudes, aurora possible", + "default_severity": "priority", + "example_message": "🌐 G2 Moderate Geomagnetic Storm — Kp=6. HF fades at high latitudes, aurora to ~55°.", + }, + + # Environmental - Tropospheric + "tropospheric_ducting": { + "name": "Tropospheric Ducting", + "description": "Atmospheric conditions trapping VHF/UHF signals — extended range", + "default_severity": "routine", + "example_message": "📡 Tropospheric Ducting: Surface duct detected, dM/dz -45 M-units/km, ~120m thick. VHF/UHF extended range.", + }, + + # Environmental - Fire + "fire_proximity": { + "name": "Fire Near Mesh", + "description": "Active wildfire within alert radius of mesh infrastructure", + "default_severity": "priority", + "example_message": "🔥 Fire Near Mesh: Rock Creek Fire — 1,240 ac, 15% contained, 12 km SSW of MHR. Monitor closely.", + }, + "wildfire_proximity": { + "name": "Fire Near Mesh", + "description": "Active wildfire within alert radius of mesh infrastructure", + "default_severity": "priority", + "example_message": "🔥 Fire Near Mesh: Rock Creek Fire — 1,240 ac, 15% contained, 12 km SSW of MHR.", + }, + "new_ignition": { + "name": "New Fire Ignition", + "description": "Satellite hotspot detected NOT near any known fire — potential new wildfire", + "default_severity": "priority", + "example_message": "🛰 New Ignition: Satellite fire at 42.32°N, 114.30°W — high confidence, 47 MW FRP. Not near any known fire.", + }, + + # Environmental - Flood + "stream_flood_warning": { + "name": "Stream Flood Warning", + "description": "River gauge exceeds NWS flood stage threshold", + "default_severity": "priority", + "example_message": "🌊 Stream Flood Warning: Snake River nr Twin Falls at 12.8 ft — Minor Flood Stage is 10.5 ft.", + }, + "stream_high_water": { + "name": "Stream High Water", + "description": "River gauge approaching flood stage — monitoring recommended", + "default_severity": "routine", + "example_message": "🌊 High Water: Snake River at 9.8 ft — Action Stage is 9.0 ft. Monitor conditions.", + }, + + # Environmental - Roads + "road_closure": { + "name": "Road Closure", + "description": "Full road closure on a monitored corridor", + "default_severity": "priority", + "example_message": "🚧 Road Closure: I-84 EB at MP 173 — full closure, construction. Detour via US-30.", + }, + "traffic_congestion": { + "name": "Traffic Congestion", + "description": "Traffic speed dropped below congestion threshold on a monitored corridor", + "default_severity": "routine", + "example_message": "🚗 Traffic Congestion: I-84 Twin Falls — 35 mph (free-flow 70 mph), 50% speed ratio", + }, + + # Environmental - Avalanche + "avalanche_warning": { + "name": "Avalanche Danger High", + "description": "Avalanche danger level 4 (High) or 5 (Extreme) in your area", + "default_severity": "priority", + "example_message": "⛷ Avalanche Danger HIGH: Sawtooth Zone — avoid avalanche terrain. Natural avalanches likely.", + }, + "avalanche_considerable": { + "name": "Avalanche Danger Considerable", + "description": "Avalanche danger level 3 (Considerable) — most fatalities occur at this level", + "default_severity": "routine", + "example_message": "⛷ Avalanche Danger CONSIDERABLE: Sawtooth Zone — dangerous conditions on steep slopes.", + }, +} + + +def get_category(category_id: str) -> dict: + """Get category info by ID, with fallback for unknown categories.""" + if category_id in ALERT_CATEGORIES: + return ALERT_CATEGORIES[category_id] + return { + "name": category_id.replace("_", " ").title(), + "description": f"Alert type: {category_id}", + "default_severity": "routine", + "example_message": f"Alert: {category_id}", + } + + +def list_categories() -> list[dict]: + """List all categories with their IDs.""" + return [ + {"id": cat_id, **cat_info} + for cat_id, cat_info in ALERT_CATEGORIES.items() + ] diff --git a/meshai/notifications/summarizer.py b/meshai/notifications/summarizer.py index f4b9f2b..1162e8c 100644 --- a/meshai/notifications/summarizer.py +++ b/meshai/notifications/summarizer.py @@ -1,64 +1,64 @@ -"""Message summarizer for mesh delivery.""" - -import logging -from typing import Optional, TYPE_CHECKING - -if TYPE_CHECKING: - from ..backends import LLMBackend - -logger = logging.getLogger(__name__) - - -class MessageSummarizer: - """Summarizes long messages for mesh delivery. - - Only used when: - - Delivering to mesh channels (broadcast or DM) - - Message exceeds max_chars (default 200) - - LLM backend is available - - Email and webhook channels receive full messages. - """ - - def __init__(self, llm_backend: Optional["LLMBackend"] = None): - self._llm = llm_backend - - async def summarize(self, message: str, max_chars: int = 195) -> str: - """Summarize a message to fit within max_chars. - - Args: - message: Original message text - max_chars: Maximum characters for summary - - Returns: - Summarized message, or truncated original if LLM unavailable - """ - if len(message) <= max_chars: - return message - - if not self._llm: - return message[:max_chars - 3] + "..." - - prompt = ( - "Summarize this alert in under %d characters. " - "Keep severity, location, and key facts. No preamble, just the summary:\n\n%s" - % (max_chars, message) - ) - - try: - # Use the LLM to generate a summary - response = await self._llm.generate( - prompt, - system_prompt="You are a concise alert summarizer. Output only the summary, no explanation.", - - ) - summary = response.strip() - - # Ensure it fits - if len(summary) <= max_chars: - return summary - return summary[:max_chars - 3] + "..." - - except Exception as e: - logger.debug("LLM summarization failed: %s", e) - return message[:max_chars - 3] + "..." +"""Message summarizer for mesh delivery.""" + +import logging +from typing import Optional, TYPE_CHECKING + +if TYPE_CHECKING: + from ..backends import LLMBackend + +logger = logging.getLogger(__name__) + + +class MessageSummarizer: + """Summarizes long messages for mesh delivery. + + Only used when: + - Delivering to mesh channels (broadcast or DM) + - Message exceeds max_chars (default 200) + - LLM backend is available + + Email and webhook channels receive full messages. + """ + + def __init__(self, llm_backend: Optional["LLMBackend"] = None): + self._llm = llm_backend + + async def summarize(self, message: str, max_chars: int = 195) -> str: + """Summarize a message to fit within max_chars. + + Args: + message: Original message text + max_chars: Maximum characters for summary + + Returns: + Summarized message, or truncated original if LLM unavailable + """ + if len(message) <= max_chars: + return message + + if not self._llm: + return message[:max_chars - 3] + "..." + + prompt = ( + "Summarize this alert in under %d characters. " + "Keep severity, location, and key facts. No preamble, just the summary:\n\n%s" + % (max_chars, message) + ) + + try: + # Use the LLM to generate a summary + response = await self._llm.generate( + prompt, + system_prompt="You are a concise alert summarizer. Output only the summary, no explanation.", + + ) + summary = response.strip() + + # Ensure it fits + if len(summary) <= max_chars: + return summary + return summary[:max_chars - 3] + "..." + + except Exception as e: + logger.debug("LLM summarization failed: %s", e) + return message[:max_chars - 3] + "..."