diff --git a/8095-lines.txt b/8095-lines.txt deleted file mode 100644 index 58bd893..0000000 --- a/8095-lines.txt +++ /dev/null @@ -1,2054 +0,0 @@ -aiimage-backend.log.2026-05-12.3:101:2026-05-12 09:15:22.102 [coze-task-2109] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638807590373277722 -aiimage-backend.log.2026-05-12.3:102:2026-05-12 09:15:22.110 [coze-task-2109] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31054 -aiimage-backend.log.2026-05-12.3:211:2026-05-12 09:15:32.710 [coze-task-2111] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53054 taskId=8095 executeId=7638807590373277722 -aiimage-backend.log.2026-05-12.3:212:2026-05-12 09:15:32.717 [coze-task-2111] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53054 executeId=7638807590373277722 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:214:2026-05-12 09:15:32.918 [coze-task-2111] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638807590373277722 status=200 OK body={"code":0,"msg":"","data":[{"bot_id":"0","is_output_trimmed":false,"execute_status":"Running","run_mode":2,"usage":{"token_count":0,"output_count":0,"input_count":0},"connector_id":"1024","create_time":1778548492,"token":"0","logid":"202605120914516BA35B4A7482F36C803C","execute_id":"7638807590373277722","update_time":1778548492,"error_code":"","connector_uid":"2939430754097600","debug_url":"https://www.coze.cn/work_flow?execute_id=7638807590373277722&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","output":"{\"node_status\":\"{}\",\"Output\":\"\"}","node_execute_status":{}}],"detail":{"logid":"202605120915321DCAD22B81CA5685C4CC"}} -aiimage-backend.log.2026-05-12.3:215:2026-05-12 09:15:32.918 [coze-task-2111] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53054 executeId=7638807590373277722 status=RUNNING -aiimage-backend.log.2026-05-12.3:539:2026-05-12 09:16:02.711 [coze-task-2112] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53054 taskId=8095 executeId=7638807590373277722 -aiimage-backend.log.2026-05-12.3:540:2026-05-12 09:16:02.713 [coze-task-2112] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53054 executeId=7638807590373277722 lastPolledAt=2026-05-12T09:15:33 -aiimage-backend.log.2026-05-12.3:857:2026-05-12 09:16:32.713 [coze-task-2113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53054 taskId=8095 executeId=7638807590373277722 -aiimage-backend.log.2026-05-12.3:858:2026-05-12 09:16:32.720 [coze-task-2113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53054 executeId=7638807590373277722 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:863:2026-05-12 09:16:33.019 [coze-task-2113] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638807590373277722 status=200 OK body={"code":0,"msg":"","data":[{"error_code":"0","execute_status":"Success","connector_uid":"2939430754097600","node_execute_status":{},"error_message":"","execute_id":"7638807590373277722","connector_id":"1024","is_output_trimmed":false,"run_mode":2,"create_time":1778548492,"logid":"202605120914516BA35B4A7482F36C803C","debug_url":"https://www.coze.cn/work_flow?execute_id=7638807590373277722&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","usage":{"token_count":0,"output_count":0,"input_count":0},"bot_id":"0","update_time":1778548551,"token":"0","output":"{\"node_status\":\"{}\",\"Output\":\"{\\\"data\\\":[{\\\"appearance\\\":\\\"高风险,外观极度相似\\\",\\\"appearance_reason\\\":\\\"该产品不仅包含了标志性的钥匙包(Clochette),还配套了特定的金属锁头,这套视觉组合是奢侈品牌(如Hermès)极其经典的标志性设计,极易被判定为外观设计专利侵权。\\\",\\\"asin\\\":\\\"B0CZJ3ZLTS\\\",\\\"patent\\\":\\\"高风险\\\",\\\"patent_reason\\\":\\\"该产品的核心设计旨在模仿特定奢华包袋的配件,在英国及欧盟市场,此类标志性配饰的结构与外观受到严格的知识产权保护,非授权生产的替代品面临极高的法律诉讼风险。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"中等风险\\\",\\\"title_reason\\\":\\\"标题使用了‘Clochette’及‘Handbag Accessories’等描述性词汇,虽未直接使用Hermès等大牌商标,但此类产品通常作为奢侈品配件售卖,存在诱导消费者产生品牌联想的关联侵权风险。\\\"},{\\\"appearance\\\":\\\"高风险,外观极度相似\\\",\\\"appearance_reason\\\":\\\"产品图片显示的钥匙皮套(Clochette)与锁头(Padlock)的组合,是国际知名奢侈品牌(如爱马仕)标志性的设计元素,在欧洲和英国地区受严密的知识产权保护,该产品属于典型的仿冒设计,极易触犯外观设计专利或版权法律。\\\",\\\"asin\\\":\\\"B0DBTDLXXG\\\",\\\"patent\\\":\\\"存在极高侵权风险\\\",\\\"patent_reason\\\":\\\"此类配件的物理结构和造型设计是知名奢侈品牌的经典设计语言,在欧洲及英国被视作核心知识产权受法律保护。销售此类模仿奢侈品标志性外观的产品,极易招致权利人的起诉或平台的下架处罚。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,关联性强\\\",\\\"title_reason\\\":\\\"虽然标题未直接使用爱马仕等奢侈品牌词,但‘Clochette’、‘Padlock’及‘Bag Charm’的关键词组合直接指向特定奢侈品包具的标志性配件,极易被认定为通过蹭名牌热度进行仿冒,存在侵犯商品外装(Trade Dress)权益的法律风险。\\\"},{\\\"appearance\\\":\\\"高风险,外观高度相似\\\",\\\"appearance_reason\\\":\\\"该产品形状与爱马仕经典包袋的配饰(钥匙套及挂锁)设计高度重合,在英国及欧盟地区,此类标志性外观受到严格的外观设计专利保护,直接销售此类仿制品存在极高的侵权风险。\\\",\\\"asin\\\":\\\"B0DBT8RPRJ\\\",\\\"patent\\\":\\\"高风险,存在外观设计专利侵权隐患\\\",\\\"patent_reason\\\":\\\"该产品核心在于其标志性的外形设计,而非功能性结构。该造型属于奢侈品牌的核心商业设计范畴,受国际及英国/欧盟外观专利法的广泛保护,未经授权生产销售存在严重的合规风险。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,具有侵权嫌疑\\\",\\\"title_reason\\\":\\\"标题中涉及“Clochette”、“Bag Charm”及“Padlock”等词汇,描述的是爱马仕(Hermès)品牌标志性的包袋配件,直接使用此类描述性关键词极易被判定为仿造知名品牌元素。\\\"},{\\\"appearance\\\":\\\"高风险,外观设计专利/贸易外观侵权\\\",\\\"appearance_reason\\\":\\\"该产品外观复刻了著名奢侈品牌(Hermès)的经典挂件(Clochette)与锁扣(Padlock)设计,该设计在欧洲及英国受外观设计权及贸易外观(Trade Dress)保护,极易引发侵权诉讼。\\\",\\\"asin\\\":\\\"B0CZJ597C9\\\",\\\"patent\\\":\\\"存在外观设计专利风险\\\",\\\"patent_reason\\\":\\\"此类标志性配件设计在欧洲已有大量相关外观专利布局。尽管不涉及复杂的发明专利,但其结构与外观表现形式与已受保护的设计高度重合,属于典型的仿冒款式。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,具有品牌联想侵权可能\\\",\\\"title_reason\\\":\\\"标题使用了“Clochette”等词汇,该词汇在皮具领域与特定奢侈品牌(Hermès)的设计语言高度关联,虽未直接使用品牌名,但在欧洲市场常被判定为利用品牌影响力进行搭售,存在侵权风险。\\\"},{\\\"appearance\\\":\\\"高风险,外观高度相似\\\",\\\"appearance_reason\\\":\\\"该产品设计为典型的钟形钥匙套(Clochette),其外观造型与奢侈品牌Hermès的经典包袋配件设计高度重合,在英国及欧洲地区极易触发外观设计专利侵权投诉。\\\",\\\"asin\\\":\\\"B0CZJ57NYZ\\\",\\\"patent\\\":\\\"高风险,存在外观/包装设计专利风险\\\",\\\"patent_reason\\\":\\\"该结构不仅作为功能性配件,更作为特定品牌包袋的标志性外观组成部分,受到相关的工业设计专利保护,未经授权生产销售此类仿制品存在较高的法律风险。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,含有侵权关联词汇\\\",\\\"title_reason\\\":\\\"标题中包含“Clochette”等与奢侈品牌(Hermès)标志性包袋配件紧密相关的词汇,在未经授权的情况下销售此类产品易被认定为利用品牌影响力进行侵权或混淆。\\\"},{\\\"appearance\\\":\\\"高风险,外观极度相似\\\",\\\"appearance_reason\\\":\\\"该产品外观设计明显模仿了Hermès(爱马仕)标志性的“钥匙皮套”(Clochette)款式,其独特的梯形结构、缝线工艺和配套挂锁样式在欧洲市场具有极高的品牌辨识度,极易被判定为外观设计专利侵权或仿冒知名品牌设计。\\\",\\\"asin\\\":\\\"B0DBTQMF3T\\\",\\\"patent\\\":\\\"存在较高侵权风险\\\",\\\"patent_reason\\\":\\\"该结构属于典型的奢侈品配件模仿品,虽然功能简单,但其独特的外观结构设计已构成知名品牌的特有设计语言,极易陷入外观专利侵权纠纷。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"含有侵权风险\\\",\\\"title_reason\\\":\\\"标题中虽未直接列出品牌名,但“Clochette”常与爱马仕(Hermès)的经典挂锁包配件关联,属于高风险敏感词汇,易被系统判定为仿冒或侵犯相关商标权的关联产品。\\\"},{\\\"appearance\\\":\\\"高风险,外观设计专利极高风险\\\",\\\"appearance_reason\\\":\\\"该产品外观是对爱马仕经典包袋配件“Clochette(钥匙皮套)”的直接模仿。该外观设计与爱马仕受保护的标志性配件高度相似。根据欧盟及英国知识产权法,对于此类具备高度辨识度且具有深厚品牌关联的外观设计,即便没有使用品牌Logo,也存在被指控为侵犯“外观设计权(Design Rights)”或“不正当竞争”的严重风险。\\\",\\\"asin\\\":\\\"B0CZJ4DQSQ\\\",\\\"patent\\\":\\\"存在结构专利侵权可能\\\",\\\"patent_reason\\\":\\\"该产品不仅模仿了皮套外观,还配套了挂锁和钥匙结构。爱马仕在全球范围内对其标志性的锁头及配套硬件设计持有大量知识产权,包括立体商标(3D Trade Mark)和设计专利。该产品的结构组合在欧洲市场极易被认定为模仿爱马仕产品的整体外观设计,存在被视为专利侵权的风险。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,含有侵权敏感词汇\\\",\\\"title_reason\\\":\\\"标题中包含“Clochette”一词,该词是奢侈品牌爱马仕(Hermès)标志性手袋(如Birkin/Kelly)配件的专用术语。在欧洲及英国市场,爱马仕对该特定外观设计、相关术语及锁头设计拥有极高的品牌认知度和知识产权保护力度,直接使用此类术语作为商品关键词极易触发商标侵权投诉。\\\"},{\\\"appearance\\\":\\\"高风险,外观与知名品牌设计高度相似\\\",\\\"appearance_reason\\\":\\\"该产品展示的是典型的“Clochette”(钟形钥匙套)外观,这是Hermès经典包袋配饰的标志性设计,在欧盟及英国拥有严密的外观设计保护,极易被判定为外观设计侵权。\\\",\\\"asin\\\":\\\"B0CZJ3VS5R\\\",\\\"patent\\\":\\\"中等风险,涉及特定风格的保护\\\",\\\"patent_reason\\\":\\\"虽然该类基础结构的物理功能单一,但由于其外观与奢侈品品牌的设计高度绑定,其作为配件的销售行为经常面临品牌方基于外观专利或不正当竞争的法律追诉。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,含有侵权关联词汇\\\",\\\"title_reason\\\":\\\"标题虽然未直接使用品牌名称,但此类产品常被关联至Hermès(爱马仕)的Kelly或Birkin包袋配饰。若在营销中使用暗示性词汇或作为相关配件销售,极易触碰品牌方的商标保护范围。\\\"},{\\\"appearance\\\":\\\"高风险,外观设计与奢侈品牌标志性设计高度相似\\\",\\\"appearance_reason\\\":\\\"产品图片展示的皮革钟形套(Clochette)配合金属小挂锁,在造型、结构及视觉特征上,与爱马仕受法律保护的“Birkin/Kelly”包袋标志性闭合系统及配件外观几乎完全一致。欧洲法院已多次判决确认爱马仕对该包袋形状及特定配件外观拥有注册的三维商标权及版权,即便未直接标注品牌名称,这种“高度相似”的视觉呈现亦足以构成侵权。\\\",\\\"asin\\\":\\\"B0DBTKL4RH\\\",\\\"patent\\\":\\\"高风险,存在三维外观专利保护风险\\\",\\\"patent_reason\\\":\\\"爱马仕在英国及欧洲地区针对其标志性配件(特别是钟形套与锁具组合)申请了严密的知识产权保护。该产品模仿了其标志性的物理结构与外观布局,不仅受商标法保护,还涉及在特定司法管辖区内的三维外观专利或设计权保护,通过结构模仿进行销售极易引发法律维权行动。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,包含极易引起混淆的敏感关键词\\\",\\\"title_reason\\\":\\\"标题中使用的“Clochette”及产品描述组合(钟形皮革挂饰+挂锁)是奢侈品牌爱马仕(Hermès)Birkin/Kelly包款标志性配件的统称。此类词汇与爱马仕的品牌形象紧密关联,在亚马逊欧洲及英国市场销售此类仿造其标志性配件设计的商品,极易被视为试图利用品牌声誉进行误导性销售,存在极高的商标与版权侵权风险。\\\"},{\\\"appearance\\\":\\\"高风险,外观设计高度疑似侵权\\\",\\\"appearance_reason\\\":\\\"该产品设计与奢侈品牌Hermès标志性的Clochette(钥匙套)及挂锁(Padlock)配件外观高度相似,在欧洲及英国,该类经典设计受品牌方严格的外观专利和商标权保护,直接销售此类复刻或高仿配件极易触发外观专利侵权指控。\\\",\\\"asin\\\":\\\"B0CZJ4GMP3\\\",\\\"patent\\\":\\\"存在较高结构专利与商标保护风险\\\",\\\"patent_reason\\\":\\\"虽然此类产品结构简单,但其作为特定奢侈品牌的视觉延伸产品,不仅涉及外观专利,更涉及商标权与不正当竞争的法律风险。品牌方通常对该类标志性配饰申请外观设计权,销售此类仿制配件属于高风险行为。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险,含有侵权暗示\\\",\\\"title_reason\\\":\\\"标题虽然未直接使用Hermès品牌词,但使用了“Clochette”并搭配标志性的“Padlock”描述,极易联想到爱马仕凯莉包(Kelly Bag)或铂金包(Birkin Bag)的经典配件设计,存在误导消费者及侵犯品牌形象的嫌疑。\\\"},{\\\"appearance\\\":\\\"高风险,外观高度疑似侵权\\\",\\\"appearance_reason\\\":\\\"产品设计直接仿制了国际奢侈品牌(如Hermès)标志性的钥匙套(Clochette)及挂锁组合,在英国及欧洲地区该设计通常受到严格的外观设计权及反不正当竞争法保护。\\\",\\\"asin\\\":\\\"B0CZJ5K717\\\",\\\"patent\\\":\\\"存在侵权风险\\\",\\\"patent_reason\\\":\\\"该商品的核心在于对经典奢侈品配饰外观的还原,在欧洲市场该设计类型普遍存在有效的外观专利保护,未经授权生产或销售此类仿品极易触发专利维权。\\\",\\\"result\\\":\\\"侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"高风险\\\",\\\"title_reason\\\":\\\"标题虽然未直接使用品牌名称,但‘Clochette’、‘Bag Charm’等词汇配合图片中的特定造型,具有明显的意图模仿奢侈品设计意图,易因构成商标混淆或不正当竞争被品牌方投诉。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品采用行业内常见的“免挂钩”结构与几何图案设计,属于通用样式。经初步排查,未发现其外观与英国/欧洲现行登记的独家外观设计专利存在直接冲突。\\\",\\\"asin\\\":\\\"B0BQRSZYHP\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该淋浴帘使用的“免挂钩”功能性结构在欧洲市场已是成熟的公开技术,相关早期核心专利多已过期。只要未非法复制特定的专利挂钩构造,风险较低。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题中的“Yiatn”为品牌名,其余均为“No Hook”、“Shower Curtain”、“Waterproof”等通用描述性词汇,未包含大型知名品牌商标或受版权保护的特定用语。\\\"},{\\\"appearance\\\":\\\"高风险\\\",\\\"appearance_reason\\\":\\\"该产品采用了极具辨识度的“Intrecciato”编织纹理(Woven pattern),这与奢侈品牌Bottega Veneta的标志性外观高度相似。在欧洲及英国市场,此类设计极易被认定为侵犯该品牌的外观设计权或造成不正当竞争。\\\",\\\"asin\\\":\\\"B0CP7D4MKW\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"纸巾盒的物理结构属于常规家居用品设计,未发现特殊的技术创新或复杂的专利结构,不涉及发明或实用新型专利风险。\\\",\\\"result\\\":\\\"有侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为通用产品描述,包含常见关键词如“Tissue Box Cover”、“PU Leather”,未发现涉及特定知名品牌的商标侵权或版权敏感词汇。\\\"},{\\\"appearance\\\":\\\"有侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品外观采用了类似于奢侈品牌(如Bottega Veneta)标志性的编织(Intrecciato)设计元素。在英国及欧盟地区,此类具有辨识度的纹理外观若被注册为外观设计专利或被视为特定品牌的商业外观(Trade Dress),存在被投诉侵权的潜在风险。\\\",\\\"asin\\\":\\\"B0BZXYKNKV\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该产品属于成熟的家居收纳类目,结构简单,主要体现为材料拼接,未发现涉及复杂机械结构、特定功能性技术发明或实用新型专利的风险。\\\",\\\"result\\\":\\\"有侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题均为描述性的通用词汇(如Tissue Box Cover, PU Leather等),未包含特定品牌的商标词、版权保护词或容易引起混淆的敏感关键词。\\\"},{\\\"appearance\\\":\\\"高风险\\\",\\\"appearance_reason\\\":\\\"产品外观使用了明显的皮革编织纹理(Intrecciato),该设计特征与奢侈品牌博特加·威尼塔(Bottega Veneta)的标志性外观高度相似,在欧洲及英国市场存在极高的外观设计专利或商业外观(Trade Dress)侵权风险。\\\",\\\"asin\\\":\\\"B0BZPSH2ZD\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"该产品为结构简单的纸巾盒套,未发现涉及独特功能性或结构性的发明/实用新型专利风险。\\\",\\\"result\\\":\\\"有侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题仅由通用产品描述词汇组成(如Tissue Box Cover, PU Leather等),未发现知名品牌名称、注册商标或版权词汇。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品采用的编织纹路虽具有一定的商业美学风格,但此类编织纹路在生活家居装饰品类中属于行业通用设计语言,且未发现针对该特定形状尺寸申请的有效外观专利,在英国/欧洲市场属于常见的通货款式。\\\",\\\"asin\\\":\\\"B09ZPMLSTT\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该产品为常见的PU皮革折叠式纸巾盒套,其结构设计简洁,功能上属于行业公知技术,未发现涉及复杂发明或新型结构的侵权可能。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中使用的“Tissue Box Cover”、“PU Leather”等均为通用描述性词汇,未发现指向特定知名品牌的违规商标或敏感词,不存在明显的商标侵权风险。\\\"},{\\\"appearance\\\":\\\"中等风险\\\",\\\"appearance_reason\\\":\\\"该产品采用常见的编织(Woven)纹理设计,属于家居收纳领域的通用工艺风格。虽然市面上存在此类外观产品,但因其设计元素较为普遍且基础,未见具有极高识别度、指向特定品牌的独创性外观专利风险。\\\",\\\"asin\\\":\\\"B0CP7D63H9\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该纸巾盒结构为传统的底部或侧边开口式套筒,属于成熟的现有技术(Prior Art),不涉及复杂的功能性机械结构或发明专利保护点。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为通用产品描述(Tissue Box Cover, PU Leather, etc.),未发现特定品牌词、侵权词汇或受版权保护的专有名词,风险较低。\\\"},{\\\"appearance\\\":\\\"中等风险\\\",\\\"appearance_reason\\\":\\\"产品外观设计采用了经典的编织纹理(Woven Pattern),此类设计在家具及家居装饰领域非常普遍,属于常见工艺,虽有外观相似的通用产品,但未构成对特定设计专利的单一直接侵权。\\\",\\\"asin\\\":\\\"B09ZPN6CQX\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"纸巾盒为基础生活用品,其物理结构(四面围挡+顶部开口)属于公共领域的设计,不涉及复杂的独创性功能技术,因此不存在发明或实用新型专利侵权风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为“Tissue Box Cover PU Leather”,属于通用描述词汇,未发现任何特定大牌商标、受限敏感词或受版权保护的专有词汇。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品属于圆柱形布艺收纳篮,外观结构通用且简约;表面图案由基础的心形与彩虹元素排列组成,属于常见的装饰性设计,未见明显的独特外观专利侵权特征。\\\",\\\"asin\\\":\\\"B0DB89QV28\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"产品属于普通家庭储物用品,其物理结构(布面材质及手提带设计)属行业成熟工艺,不涉及复杂的功能性发明或受保护的独家结构专利。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中的“MAIZMZ”为通用品牌名,未检测到涉及知名大牌商标、敏感侵权词或受版权保护的特定角色名称。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"产品外观设计属于常见的花卉纹样与闪光视觉效果组合,属于通用装饰风格,未发现与欧洲或英国市场上受保护的特定注册外观设计专利存在高度雷同情况。\\\",\\\"asin\\\":\\\"B0DJ89HKTT\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"淋浴帘属于传统的家居纺织品,结构简单,不涉及复杂的机械结构或独特的功能性创新,该类型产品在英国及欧洲地区极少存在被发明或实用新型专利覆盖的风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题中包含的均为“Pink Rose”、“Shower Curtain”、“Floral”等通用描述性词汇,未发现指向任何知名大牌的商标侵权使用,亦不包含受版权保护的特定文学艺术作品名称。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品为常见的粉色玫瑰花卉印花浴帘,属于通用装饰类目。虽然图案设计精美,但花卉印花图案通常难以获取独占性的外观设计专利,除非涉及特定艺术家的受版权保护作品,目前未发现高度雷同的垄断性外观设计。\\\",\\\"asin\\\":\\\"B0DJ893788\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品属于结构简单的家居布艺用品,浴帘通过挂钩悬挂属于行业基础技术,不涉及复杂的核心功能性结构或具备专利保护的创新机械原理,未发现存在发明或实用新型专利侵权风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为通用描述性词汇,如“Pink Roses Shower Curtain”、“Valentine's Day”、“Wedding Floral”,未检测到特定品牌名、知名IP或敏感商标词汇。但在欧洲销售时,需注意此类通用装饰词汇不能注册为排他性商标。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该类装饰性图案属于常见的家居设计,只要非直接盗用特定已注册版权的知名画作,其外观设计本身不具备侵犯外观专利的高风险属性。\\\",\\\"asin\\\":\\\"B0D1YK4PWZ\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"产品为普通的纺织品日用品,不涉及复杂的机械结构或技术创新,不存在发明或实用新型专利风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述词均为通用商品描述及品种名称(Highland Cattle),不涉及特定注册品牌词,亦无明显侵权敏感词。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于艺术印花类家居产品,图案设计为常见的趣味性装饰画,未检索到与英国/欧洲市场上已注册的特定外观设计专利高度雷同的记录。但建议核实该印花图案是否涉及未授权使用他人的原创艺术作品版权。\\\",\\\"asin\\\":\\\"B0D1YKSZNH\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"浴帘作为成熟的日用品,其基本结构(织物悬挂式)属于公共领域技术,该产品本身不涉及复杂的机械结构或技术发明,不存在发明或实用新型专利侵权风险。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题使用了通用描述词(如Shower Curtain, Lion, Toilet等),未包含国际知名品牌商标或受法律保护的特定版权词汇,不构成商标侵权。\\\"},{\\\"appearance\\\":\\\"高风险\\\",\\\"appearance_reason\\\":\\\"该产品属于装饰类用品,图案版权是核心风险点。若该“猴子在浴缸”的黑白图片未经原摄影师或艺术家合法授权,在英国及欧盟极易遭遇版权(著作权)投诉。\\\",\\\"asin\\\":\\\"B0CZ3FVXSC\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"产品属于结构简单的常规日用品,浴帘及挂钩组合未涉及复杂的发明或实用新型专利保护领域。\\\",\\\"result\\\":\\\"有侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题由描述性词汇组成,未检测到指向知名品牌或受保护商标的侵权词汇。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于创意类家居装饰,图案设计为狮子如厕的幽默插画。此类图案设计通常具有较强的独特性,在亚马逊常见外观设计专利库中未发现高度雷同的注册设计,属于原创或公共领域素材应用的概率较高。\\\",\\\"asin\\\":\\\"B0D1YJRL2F\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"该产品为普通淋浴帘,属于成熟的纺织品类目,不存在特殊的功能性物理结构或复杂技术方案,无需担心发明或实用新型专利侵权。\\\",\\\"result\\\":\\\"没有侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中包含的“Funny Lion”、“Shower Curtain”等词汇均为通用描述性词汇,未发现指向特定知名品牌的商标侵权风险或受版权保护的特定角色名称。\\\"},{\\\"appearance\\\":\\\"中等风险,存在版权隐患\\\",\\\"appearance_reason\\\":\\\"该产品核心在于其印刷图案设计。此类风格强烈的节日插画极易涉及第三方原创画作的版权(Copyright),若图案是从图库购买或自行AI生成且未经过版权查重,存在被权利人投诉图片侵权的风险,虽不构成外观设计专利侵权,但版权合规性需核实。\\\",\\\"asin\\\":\\\"B0FHKG5SGT\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"该产品属于常规家居纺织品,结构简单,主要由浴帘及配套地垫组成,不涉及任何创新性的发明或特殊的物理结构,不存在技术性专利侵权风险。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为节日类通用品名,未包含知名大牌商标或特定文学艺术作品的受版权保护名称,无明显敏感词汇。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"图案设计采用万圣节常见的幽灵、南瓜和蝙蝠素材,属于公共领域内的装饰性设计,未发现其与已知受保护的特定外观设计专利雷同。\\\",\\\"asin\\\":\\\"B0FHJ1LM8T\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该产品属于结构简单的日用家居品,不涉及独特的功能性发明或复杂的机械结构,无相关发明专利或实用新型专利侵权隐患。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题由万圣节节日描述词及产品通用属性词构成,不含特定品牌名称或受版权保护的文字作品,符合亚马逊合规规则。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"图案为常见的万圣节主题元素设计,属于通用的节庆装饰风格,未发现与特定已公开的外观设计专利有高度相似的特征。\\\",\\\"asin\\\":\\\"B0FHKJ11WD\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品为普通浴帘,属于成熟的商品品类,不存在涉及核心功能或复杂结构的专利保护风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题由通用描述词组成,如“Halloween”、“Shower Curtain”、“Horror”等,不包含特定大牌商标或受限词汇,未发现商标侵权风险。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于通用款浴帘,采用常见的抽象大理石纹路印花,属于行业通用的装饰图案,未发现指向单一特定外观设计专利的高辨识度结构特征。\\\",\\\"asin\\\":\\\"B09TXDQKJF\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"该产品为常规家纺类目,未涉及任何复杂的功能性结构或物理发明,属于成熟的通用工艺品,不存在核心技术专利侵权风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题主要包含“Luxury”、“Marble”、“Shower Curtain”等通用描述性词汇,未发现指向特定知名品牌的注册商标或具有版权争议的关键词。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"产品外观为常见的几何色块拼接设计,属于大众化的家纺纹样,缺乏特定品牌辨识度或独特的设计专利特征,被认定为外观侵权的风险极低。\\\",\\\"asin\\\":\\\"B09TXCXC68\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品为常规浴室纺织套装(浴帘+地垫),不涉及复杂或独特的物理结构,核心功能为日常家用,未发现存在发明或实用新型专利侵权隐患。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题主要由描述性词汇组成(如:几何、深蓝色、浴帘套装),未发现包含知名品牌名称或受版权保护的特定专有名词。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品为几何图形设计(黑白灰橙色块组合),属于通用现代简约风格。此类图案在纺织品行业非常普遍,且未发现具有显著独创性或特定品牌标识的保护性外观设计专利。\\\",\\\"asin\\\":\\\"B09TXD6W5P\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该淋浴帘及配套地垫属于常规家居用品,不存在复杂的技术结构或创新的物理功能组件,因此触发发明或实用新型专利侵权的可能性极低。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为“Orange Geometric Shower Curtain Set”,属于常规产品描述词汇,未发现涉及特定知名品牌商标、版权词或敏感侵权词汇。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品图案为基础的几何色块设计,属于通用的装饰风格,未发现涉及特定外观设计专利侵权的独创性图形限制。\\\",\\\"asin\\\":\\\"B09TXD4GGM\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该商品为普通家用纺织品组合,结构简单且无特殊功能性机械结构,不存在涉及发明或实用新型专利的侵权隐患。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题由描述性词汇组成,不包含任何大牌商标、品牌词或特定的版权受保护词汇,符合亚马逊标题命名规范。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品外观为通用的类大理石纹理搭配金色流线设计,属于家居装饰类目中极为常见的审美风格,此类通用纹样通常无法申请或获得排他性的外观设计专利保护。\\\",\\\"asin\\\":\\\"B0CY7QHGLQ\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"记忆棉厨房地垫属于成熟的产品类别,所展示的材质与结构均为行业通用标准技术,不存在独特的核心技术或物理结构专利,因此不存在专利侵权风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题主要由防疲劳、记忆棉、防水等描述性通用词汇组成,不包含任何特定品牌的商标词或受版权保护的用语,不存在明显的商标侵权风险。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品为典型的抽象几何纹理PVC地垫,属于市场上非常通用的家纺设计风格,无显著的独特性外观特征,难以被认定侵犯特定外观设计专利。\\\",\\\"asin\\\":\\\"B0CWD7KGZ2\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品属于厨房防疲劳地垫的成熟品类,其防滑垫结构及材料(PVC)为行业通用技术方案,未涉及具备发明创造性的独特功能专利。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中包含“Anti-Fatigue”、“Kitchen Rug”、“Ergonomic”等功能性描述词,未发现指向特定知名大牌的商标词汇或侵权高风险敏感词。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品外观为常见的长方形PVC防疲劳地垫,采用基础的抽象几何配色设计,属于市场上常见的通用款式,未发现显著的侵权独特性外观设计。\\\",\\\"asin\\\":\\\"B0D478LK2L\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品属于基于材料性能(PVC发泡)的常规防疲劳地垫,其物理结构和功能在行业内较为通用,未涉及独特的技术创新或受保护的结构性专利。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题包含大量通用描述词(如Anti-Fatigue, Kitchen Rug, Waterproof等),未发现涉及大牌商标、敏感词或特定版权用语。品牌名“Arttown”为常见装饰类品牌,暂无直接侵权嫌疑。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品外观为常见的长方形厨房防疲劳地垫,大理石纹路属于公有领域的装饰设计,未发现其外形设计具有极高辨识度的独创性外观设计专利特征。\\\",\\\"asin\\\":\\\"B0C5XK63V4\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"产品采用常规的PVC防疲劳泡沫结构,属于成熟的地垫制造工艺,目前未在该基础产品结构上发现具有垄断性的发明或实用新型专利风险。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中的词汇如“Marble”、“Anti-Fatigue”、“Kitchen Rug”、“Waterproof”、“Non-Slip”等均为描述产品材质和功能的通用行业术语;“Arttown”为疑似品牌词,未发现与知名大牌产生混淆的敏感词或版权侵权词汇。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品为常见的矩形防疲劳地垫,其抽象橘灰色调设计属于行业内常见的装饰风格,未见高度独创性或特定注册的外观设计保护特征,通常此类通用外观设计难以获得排他性的外观专利权。\\\",\\\"asin\\\":\\\"B0D4785BKT\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该产品属于成熟的居家消费品,采用常规的PVC发泡减震结构,未体现出具有独占性的核心发明或特殊物理结构,此类技术已在市场上普及,不存在显著的结构性专利侵权风险。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题中包含的“Anti-Fatigue Kitchen Rug”、“Waterproof”、“Non-Slip”等均为行业通用描述词汇,未发现涉及知名品牌商标或侵犯版权的特定词汇,“Arttown”虽作为品牌名,但在英国/欧盟商标数据库中不属于高风险大牌冲突词。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品为常见的PVC防疲劳地垫,外观设计采用通用的抽象几何图案与长方形结构,属于市场通用设计风格,未发现与欧洲/英国现有注册外观专利高度相似的特征。\\\",\\\"asin\\\":\\\"B0D477P8TN\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品属于成熟的厨用地垫品类,其防滑、防水及人体工学泡沫结构是此类产品的行业标准工艺,未涉及独特的新型结构或核心技术发明专利侵权风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题主要包含描述性词汇(如Anti-Fatigue, Kitchen Rug等),未发现针对特定知名品牌的侵权词汇或受版权保护的特定术语,Arttown为常见品牌词,合规性较高。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"产品属于常规厨房地垫款式,采用了通用的红酒与葡萄印花图案。此类装饰性图案具有高度随机性和普遍性,未发现特定且具垄断性的外观设计专利保护。\\\",\\\"asin\\\":\\\"B0CWCYFYH8\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该产品属于普通的PVC防疲劳地垫,其物理结构和材质应用属于行业内的成熟工艺,未涉及独特的新型技术发明或结构专利。\\\",\\\"result\\\":\\\"没有侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题描述为通用产品属性词(如anti-fatigue, kitchen rug, foam mat),未发现知名品牌词汇或特定受保护的版权词汇。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品采用常见的牛皮纹路印花,属于行业内广泛使用的通用外观设计,不存在特定的外观专利垄断性。\\\",\\\"asin\\\":\\\"B0DYV4J49M\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"PVC抗疲劳地垫属于成熟的民用产品,其材质与物理结构属于通用工艺,未涉及复杂的发明专利壁垒。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题主要包含产品属性描述词(如Anti-Fatigue, Kitchen Rug, PVC, Waterproof等),未见知名大牌商标,品牌名“Arttown”未发现明显侵权风险。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"产品外观采用常见的农舍木纹风格及地垫通用装饰图案,属于家纺领域常规视觉表达,未发现与欧洲/英国市场特定外观设计专利高度雷同的证据。\\\",\\\"asin\\\":\\\"B0F5V3RZJZ\\\",\\\"patent\\\":\\\"没有侵权风险\\\",\\\"patent_reason\\\":\\\"该产品属于成熟的PVC抗疲劳地垫产品,无复杂的机械结构或技术专利,未发现涉及核心功能性发明或实用新型专利的侵权风险。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题由通用描述词组成,未发现引用知名第三方商标或受版权保护的特定品牌名称,侵权风险较低。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于市面上极度常见的圆柱形折叠储物篮,其外形结构不具备突出的原创性设计特征。所展示的卡通猫爪、猫头鹰等图案属于装饰性元素,在市场上极为通用,不构成单一外观设计专利侵权。\\\",\\\"asin\\\":\\\"B071YJWSP1\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"折叠储物篮采用的是行业内非常成熟的布艺结构,该物理功能及结构设计已处于公有领域,未发现针对此类基础折叠结构存在有效且具有垄断性的发明或实用新型专利。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中使用的“Merdes”为品牌词,“Laundry Hamper”等均为行业通用名词,未发现标题中包含知名大牌商标或受版权保护的敏感词汇。需确保“Merdes”在英国及欧盟知识产权局无商标侵权争议。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品属于通用结构的家居纺织品套件,虽然使用了特定的排版和装饰图形(如蝴蝶和心形),但此类风格在欧洲家居市场十分普遍,且未发现具有独创性且已受外观设计专利保护的特定视觉设计。\\\",\\\"asin\\\":\\\"B0F38BL4X1\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该淋浴帘及配套地垫结构属于行业内成熟、基础的工艺设计,不涉及任何复杂的功能结构创新或发明专利保护。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题中的“Family”、“Bless this home”等词汇均为家居装饰类产品中极为常见的励志短语或描述性用语,不属于特定品牌的注册商标或具有排他性的版权词汇。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"产品属于基础圆柱形收纳篮,外观设计通用且无独创性外观特征;篮球印刷图案为常规商业艺术风格,未发现相关图案的注册外观设计专利纠纷。\\\",\\\"asin\\\":\\\"B0D1FVR9HG\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"该产品结构为行业内通用的可折叠收纳篮结构,不涉及核心技术或创新物理结构,属于成熟的市场公有领域产品,无明显发明专利侵权风险。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题由“3D Basketball”及“Laundry Basket”等功能性描述词组成,未提及NBA、Nike等受保护的体育品牌词汇或特定受版权保护的用语。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"U型卫浴地垫属于市场上的通用基础款式,该产品的外观设计(形状、材质)属于行业内常规设计,未发现针对此类常见设计的特定受保护外观专利冲突。\\\",\\\"asin\\\":\\\"B09YHHHNHY\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"产品结构为标准的雪尼尔/超细纤维地垫,属于成熟的基础消费品,不涉及特定核心发明专利或复杂的物理结构创新。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中包含的词汇均为描述性词汇(如U-Shaped, Shaggy, Non-Slip等),品牌名'FLOLEOPA'未见与欧洲大型卫浴品牌存在冲突,且无大牌敏感词或版权保护词汇。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于市场上常见的雪尼尔(Chenille)长绒防滑地垫,外观设计具有广泛的通用性,不属于特定设计创新的独有专利产品,未发现显著的侵权风险。\\\",\\\"asin\\\":\\\"B09V23QQZB\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"该类产品的防滑底部与吸水长绒结构属于成熟的公有领域技术,未见具有独特发明创造性的专利壁垒。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题中使用的是通用描述词(如Soft, Plush, Microfiber, Bath Rugs等),未发现针对特定知名品牌或受保护商标的侵权使用。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于市面上通用的长条纹理雪尼尔地垫,设计属于行业基础款式,在欧洲及英国市场已存在大量同类竞品,未发现显著的独特性外观专利风险。\\\",\\\"asin\\\":\\\"B0C6925935\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"雪尼尔地垫的织造结构及背部热熔胶防滑处理均为行业成熟的通用技术,不涉及独特的功能性结构发明,未发现明显的发明或实用新型专利侵权隐患。\\\",\\\"result\\\":\\\"结论:未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题均由描述性词汇组成,如“Non Slip”、“Shaggy Chenille”、“Bathroom Rug”,未包含任何特定的品牌商标、知名IP或敏感版权词汇。\\\"},{\\\"appearance\\\":\\\"未发现明显侵权风险\\\",\\\"appearance_reason\\\":\\\"该产品属于典型的雪尼尔(Chenille)超细纤维地垫,外形为行业通用设计,未发现针对此类基础地垫造型的独占性外观设计专利。\\\",\\\"asin\\\":\\\"B09V22SLGR\\\",\\\"patent\\\":\\\"未发现明显侵权风险\\\",\\\"patent_reason\\\":\\\"产品结构为常规的绒毛层与防滑底布复合工艺,属于成熟的公共领域生产技术,不涉及具备专利壁垒的核心结构或发明技术。\\\",\\\"result\\\":\\\"未发现明显侵权风险\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"未发现明显侵权风险\\\",\\\"title_reason\\\":\\\"标题中使用的FLOLEOPA为常规品牌名称,经排查未发现其涉及知名国际大牌商标或侵犯版权的敏感词汇。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于市场上广泛通用的陈尼尔(Chenille)材质条纹地垫,外观设计属于常规行业基础款式,未发现针对此类通用外观的特定外观设计专利垄断。\\\",\\\"asin\\\":\\\"B0CJPYC317\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"产品的物理结构(纤维绒面+热熔橡胶底)为行业通用工艺,未涉及复杂的创新结构或独特的技术发明,专利侵权风险较低。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题由描述性词汇组成(如Non Slip, Chenille, Bath Rugs等),未包含任何知名第三方商标或受版权保护的特定词汇,不构成商标侵权。\\\"},{\\\"appearance\\\":\\\"低风险\\\",\\\"appearance_reason\\\":\\\"该产品属于极度通用的长绒防滑地垫,外观设计高度普遍且属于基础类家居用品,未见独创性的外观专利保护特征。\\\",\\\"asin\\\":\\\"B0CJPXG8NT\\\",\\\"patent\\\":\\\"低风险\\\",\\\"patent_reason\\\":\\\"产品结构简单,属于常规的纺织品复合与防滑工艺,未涉及特殊功能结构或发明专利保护。\\\",\\\"result\\\":\\\"没有侵权\\\",\\\"status\\\":\\\"成功\\\",\\\"title\\\":\\\"低风险\\\",\\\"title_reason\\\":\\\"标题仅包含产品的通用描述词,如材质、功能与用途,未发现违规使用大牌商标或敏感侵权词汇。\\\"}]}\"}"}],"detail":{"logid":"20260512091632BC58254C01C905A6464B"}} -aiimage-backend.log.2026-05-12.3:864:2026-05-12 09:16:33.204 [coze-task-2113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53054 executeId=7638807590373277722 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:4186:2026-05-12 09:21:09.705 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:4187:2026-05-12 09:21:09.710 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:4188:2026-05-12 09:21:09.728 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:4189:2026-05-12 09:21:09.728 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:4198:2026-05-12 09:21:10.293 [coze-task-2122] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=34 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:4199:2026-05-12 09:21:10.299 [coze-task-2122] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=567 -aiimage-backend.log.2026-05-12.3:7337:2026-05-12 09:27:17.932 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:7338:2026-05-12 09:27:17.937 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:7339:2026-05-12 09:27:17.955 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:7340:2026-05-12 09:27:17.955 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:7536:2026-05-12 09:27:48.493 [coze-task-2131] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638810793543155763 -aiimage-backend.log.2026-05-12.3:7537:2026-05-12 09:27:48.500 [coze-task-2131] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30542 -aiimage-backend.log.2026-05-12.3:7607:2026-05-12 09:28:02.746 [coze-task-2133] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53057 taskId=8095 executeId=7638810793543155763 -aiimage-backend.log.2026-05-12.3:7608:2026-05-12 09:28:02.752 [coze-task-2133] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53057 executeId=7638810793543155763 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:7610:2026-05-12 09:28:02.889 [coze-task-2133] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53057 executeId=7638810793543155763 status=RUNNING -aiimage-backend.log.2026-05-12.3:7793:2026-05-12 09:28:32.747 [coze-task-2135] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53057 taskId=8095 executeId=7638810793543155763 -aiimage-backend.log.2026-05-12.3:7794:2026-05-12 09:28:32.749 [coze-task-2135] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53057 executeId=7638810793543155763 lastPolledAt=2026-05-12T09:28:03 -aiimage-backend.log.2026-05-12.3:7961:2026-05-12 09:29:02.749 [coze-task-2137] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53057 taskId=8095 executeId=7638810793543155763 -aiimage-backend.log.2026-05-12.3:7963:2026-05-12 09:29:02.755 [coze-task-2137] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53057 executeId=7638810793543155763 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:7967:2026-05-12 09:29:03.052 [coze-task-2137] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53057 executeId=7638810793543155763 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:11494:2026-05-12 09:33:25.726 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:11495:2026-05-12 09:33:25.731 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:11496:2026-05-12 09:33:25.748 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:11497:2026-05-12 09:33:25.748 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:11501:2026-05-12 09:33:26.603 [coze-task-2147] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=26 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:11502:2026-05-12 09:33:26.613 [coze-task-2147] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=862 -aiimage-backend.log.2026-05-12.3:13796:2026-05-12 09:39:40.051 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:13797:2026-05-12 09:39:40.057 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:13798:2026-05-12 09:39:40.075 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:13799:2026-05-12 09:39:40.075 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:13801:2026-05-12 09:39:40.356 [coze-task-2158] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=47 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:13802:2026-05-12 09:39:40.362 [coze-task-2158] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=284 -aiimage-backend.log.2026-05-12.3:18271:2026-05-12 09:45:58.848 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:18272:2026-05-12 09:45:58.853 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:18273:2026-05-12 09:45:58.870 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:18274:2026-05-12 09:45:58.870 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:18470:2026-05-12 09:46:29.618 [coze-task-2171] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638815613062053888 -aiimage-backend.log.2026-05-12.3:18471:2026-05-12 09:46:29.625 [coze-task-2171] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30752 -aiimage-backend.log.2026-05-12.3:18489:2026-05-12 09:46:32.795 [coze-task-2173] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53066 taskId=8095 executeId=7638815613062053888 -aiimage-backend.log.2026-05-12.3:18492:2026-05-12 09:46:32.801 [coze-task-2173] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53066 executeId=7638815613062053888 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:18494:2026-05-12 09:46:32.953 [coze-task-2173] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53066 executeId=7638815613062053888 status=RUNNING -aiimage-backend.log.2026-05-12.3:18675:2026-05-12 09:47:02.796 [coze-task-2175] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53066 taskId=8095 executeId=7638815613062053888 -aiimage-backend.log.2026-05-12.3:18677:2026-05-12 09:47:02.797 [coze-task-2175] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53066 executeId=7638815613062053888 lastPolledAt=2026-05-12T09:46:33 -aiimage-backend.log.2026-05-12.3:18862:2026-05-12 09:47:32.798 [coze-task-2177] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53066 taskId=8095 executeId=7638815613062053888 -aiimage-backend.log.2026-05-12.3:18863:2026-05-12 09:47:32.804 [coze-task-2177] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53066 executeId=7638815613062053888 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:18867:2026-05-12 09:47:33.139 [coze-task-2177] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53066 executeId=7638815613062053888 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:22148:2026-05-12 09:52:19.755 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:22149:2026-05-12 09:52:19.759 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:22150:2026-05-12 09:52:19.777 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:22151:2026-05-12 09:52:19.777 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:22154:2026-05-12 09:52:20.276 [coze-task-2189] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=39 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:22155:2026-05-12 09:52:20.281 [coze-task-2189] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=501 -aiimage-backend.log.2026-05-12.3:24714:2026-05-12 09:58:35.231 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:24715:2026-05-12 09:58:35.236 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:24716:2026-05-12 09:58:35.255 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:24717:2026-05-12 09:58:35.255 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:24905:2026-05-12 09:59:05.890 [coze-task-2224] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638818853016109066 -aiimage-backend.log.2026-05-12.3:24906:2026-05-12 09:59:05.897 [coze-task-2224] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30639 -aiimage-backend.log.2026-05-12.3:25069:2026-05-12 09:59:32.829 [coze-task-2227] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53076 taskId=8095 executeId=7638818853016109066 -aiimage-backend.log.2026-05-12.3:25071:2026-05-12 09:59:32.837 [coze-task-2227] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53076 executeId=7638818853016109066 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:25074:2026-05-12 09:59:32.981 [coze-task-2227] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53076 executeId=7638818853016109066 status=RUNNING -aiimage-backend.log.2026-05-12.3:25250:2026-05-12 10:00:02.830 [coze-task-2229] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53076 taskId=8095 executeId=7638818853016109066 -aiimage-backend.log.2026-05-12.3:25251:2026-05-12 10:00:02.831 [coze-task-2229] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53076 executeId=7638818853016109066 lastPolledAt=2026-05-12T09:59:33 -aiimage-backend.log.2026-05-12.3:25678:2026-05-12 10:00:32.832 [coze-task-2231] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53076 taskId=8095 executeId=7638818853016109066 -aiimage-backend.log.2026-05-12.3:25679:2026-05-12 10:00:32.838 [coze-task-2231] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53076 executeId=7638818853016109066 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:25683:2026-05-12 10:00:33.159 [coze-task-2231] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53076 executeId=7638818853016109066 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:28398:2026-05-12 10:04:56.434 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:28399:2026-05-12 10:04:56.439 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:28404:2026-05-12 10:04:56.666 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:28405:2026-05-12 10:04:56.666 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:28410:2026-05-12 10:04:58.118 [coze-task-2241] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=31 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:28411:2026-05-12 10:04:58.129 [coze-task-2241] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1459 -aiimage-backend.log.2026-05-12.3:31394:2026-05-12 10:11:18.028 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:31395:2026-05-12 10:11:18.033 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:31396:2026-05-12 10:11:18.052 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:31397:2026-05-12 10:11:18.052 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:31797:2026-05-12 10:11:48.923 [coze-task-2254] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638822134429532223 -aiimage-backend.log.2026-05-12.3:31798:2026-05-12 10:11:48.930 [coze-task-2254] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30875 -aiimage-backend.log.2026-05-12.3:31947:2026-05-12 10:12:02.864 [coze-task-2255] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53081 taskId=8095 executeId=7638822134429532223 -aiimage-backend.log.2026-05-12.3:31948:2026-05-12 10:12:02.871 [coze-task-2255] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53081 executeId=7638822134429532223 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:31950:2026-05-12 10:12:03.022 [coze-task-2255] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53081 executeId=7638822134429532223 status=RUNNING -aiimage-backend.log.2026-05-12.3:32353:2026-05-12 10:12:32.865 [coze-task-2256] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53081 taskId=8095 executeId=7638822134429532223 -aiimage-backend.log.2026-05-12.3:32354:2026-05-12 10:12:32.866 [coze-task-2256] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53081 executeId=7638822134429532223 lastPolledAt=2026-05-12T10:12:03 -aiimage-backend.log.2026-05-12.3:33358:2026-05-12 10:13:02.867 [coze-task-2258] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53081 taskId=8095 executeId=7638822134429532223 -aiimage-backend.log.2026-05-12.3:33362:2026-05-12 10:13:02.874 [coze-task-2258] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53081 executeId=7638822134429532223 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:33365:2026-05-12 10:13:03.347 [coze-task-2258] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53081 executeId=7638822134429532223 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:34980:2026-05-12 10:17:35.654 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:34981:2026-05-12 10:17:35.660 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:34982:2026-05-12 10:17:35.680 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:34983:2026-05-12 10:17:35.680 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:34990:2026-05-12 10:17:36.534 [coze-task-2271] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=23 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:34991:2026-05-12 10:17:36.544 [coze-task-2271] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=860 -aiimage-backend.log.2026-05-12.3:38659:2026-05-12 10:23:55.915 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:38660:2026-05-12 10:23:55.922 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:38661:2026-05-12 10:23:55.946 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:38662:2026-05-12 10:23:55.946 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:38664:2026-05-12 10:23:56.620 [coze-task-2288] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=44 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:38665:2026-05-12 10:23:56.634 [coze-task-2288] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=684 -aiimage-backend.log.2026-05-12.3:40950:2026-05-12 10:30:18.376 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:40951:2026-05-12 10:30:18.383 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:40952:2026-05-12 10:30:18.406 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:40953:2026-05-12 10:30:18.406 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:41354:2026-05-12 10:30:49.558 [coze-task-2305] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638827033095258147 -aiimage-backend.log.2026-05-12.3:41355:2026-05-12 10:30:49.569 [coze-task-2305] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31160 -aiimage-backend.log.2026-05-12.3:41506:2026-05-12 10:31:02.922 [coze-task-2307] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53092 taskId=8095 executeId=7638827033095258147 -aiimage-backend.log.2026-05-12.3:41508:2026-05-12 10:31:02.931 [coze-task-2307] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53092 executeId=7638827033095258147 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:41513:2026-05-12 10:31:03.056 [coze-task-2307] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53092 executeId=7638827033095258147 status=RUNNING -aiimage-backend.log.2026-05-12.3:41916:2026-05-12 10:31:32.923 [coze-task-2310] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53092 taskId=8095 executeId=7638827033095258147 -aiimage-backend.log.2026-05-12.3:41917:2026-05-12 10:31:32.926 [coze-task-2310] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53092 executeId=7638827033095258147 lastPolledAt=2026-05-12T10:31:03 -aiimage-backend.log.2026-05-12.3:42958:2026-05-12 10:32:02.925 [coze-task-2312] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53092 taskId=8095 executeId=7638827033095258147 -aiimage-backend.log.2026-05-12.3:42960:2026-05-12 10:32:02.934 [coze-task-2312] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53092 executeId=7638827033095258147 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:42966:2026-05-12 10:32:03.653 [coze-task-2312] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53092 executeId=7638827033095258147 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:44470:2026-05-12 10:36:35.085 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:44471:2026-05-12 10:36:35.092 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:44472:2026-05-12 10:36:35.116 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:44473:2026-05-12 10:36:35.116 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:44475:2026-05-12 10:36:36.093 [coze-task-2322] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=36 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:44476:2026-05-12 10:36:36.109 [coze-task-2322] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=988 -aiimage-backend.log.2026-05-12.3:48050:2026-05-12 10:42:41.522 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:48051:2026-05-12 10:42:41.528 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:48052:2026-05-12 10:42:41.548 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:48053:2026-05-12 10:42:41.548 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:48227:2026-05-12 10:43:12.756 [coze-task-2333] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638830228207042560 -aiimage-backend.log.2026-05-12.3:48228:2026-05-12 10:43:12.763 [coze-task-2333] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31211 -aiimage-backend.log.2026-05-12.3:48337:2026-05-12 10:43:32.963 [coze-task-2334] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53096 taskId=8095 executeId=7638830228207042560 -aiimage-backend.log.2026-05-12.3:48338:2026-05-12 10:43:32.970 [coze-task-2334] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53096 executeId=7638830228207042560 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:48345:2026-05-12 10:43:33.122 [coze-task-2334] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53096 executeId=7638830228207042560 status=RUNNING -aiimage-backend.log.2026-05-12.3:48515:2026-05-12 10:44:02.964 [coze-task-2336] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53096 taskId=8095 executeId=7638830228207042560 -aiimage-backend.log.2026-05-12.3:48516:2026-05-12 10:44:02.965 [coze-task-2336] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53096 executeId=7638830228207042560 lastPolledAt=2026-05-12T10:43:33 -aiimage-backend.log.2026-05-12.3:48688:2026-05-12 10:44:32.966 [coze-task-2337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53096 taskId=8095 executeId=7638830228207042560 -aiimage-backend.log.2026-05-12.3:48689:2026-05-12 10:44:32.972 [coze-task-2337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53096 executeId=7638830228207042560 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:48691:2026-05-12 10:44:33.392 [coze-task-2337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53096 executeId=7638830228207042560 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:50178:2026-05-12 10:48:44.935 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:50179:2026-05-12 10:48:44.940 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:50182:2026-05-12 10:48:44.960 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:50183:2026-05-12 10:48:44.960 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:50185:2026-05-12 10:48:45.594 [coze-task-2348] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=28 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:50186:2026-05-12 10:48:45.605 [coze-task-2348] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=641 -aiimage-backend.log.2026-05-12.3:54774:2026-05-12 10:55:39.891 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:54775:2026-05-12 10:55:39.896 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:54776:2026-05-12 10:55:39.914 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:54777:2026-05-12 10:55:39.914 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:54781:2026-05-12 10:55:40.359 [coze-task-2365] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=48 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:54782:2026-05-12 10:55:40.365 [coze-task-2365] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=448 -aiimage-backend.log.2026-05-12.3:58219:2026-05-12 11:01:44.880 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:58220:2026-05-12 11:01:44.886 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:58221:2026-05-12 11:01:44.906 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:58222:2026-05-12 11:01:44.906 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:58393:2026-05-12 11:02:15.926 [coze-task-2377] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638835140785045545 -aiimage-backend.log.2026-05-12.3:58394:2026-05-12 11:02:15.937 [coze-task-2377] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31028 -aiimage-backend.log.2026-05-12.3:58504:2026-05-12 11:02:33.023 [coze-task-2379] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53106 taskId=8095 executeId=7638835140785045545 -aiimage-backend.log.2026-05-12.3:58505:2026-05-12 11:02:33.032 [coze-task-2379] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53106 executeId=7638835140785045545 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:58507:2026-05-12 11:02:33.142 [coze-task-2379] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53106 executeId=7638835140785045545 status=RUNNING -aiimage-backend.log.2026-05-12.3:58653:2026-05-12 11:03:03.024 [coze-task-2381] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53106 taskId=8095 executeId=7638835140785045545 -aiimage-backend.log.2026-05-12.3:58655:2026-05-12 11:03:03.034 [coze-task-2381] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53106 executeId=7638835140785045545 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:58659:2026-05-12 11:03:03.488 [coze-task-2381] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53106 executeId=7638835140785045545 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:60190:2026-05-12 11:07:52.308 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:60191:2026-05-12 11:07:52.314 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:60192:2026-05-12 11:07:52.338 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:60193:2026-05-12 11:07:52.339 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:60195:2026-05-12 11:07:53.006 [coze-task-2391] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=40 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:60196:2026-05-12 11:07:53.021 [coze-task-2391] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=679 -aiimage-backend.log.2026-05-12.3:63638:2026-05-12 11:13:58.811 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:63639:2026-05-12 11:13:58.816 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:63640:2026-05-12 11:13:58.835 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:63641:2026-05-12 11:13:58.835 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:63810:2026-05-12 11:14:29.656 [coze-task-2401] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638838281279930377 -aiimage-backend.log.2026-05-12.3:63813:2026-05-12 11:14:29.664 [coze-task-2401] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30825 -aiimage-backend.log.2026-05-12.3:63854:2026-05-12 11:14:33.061 [coze-task-2404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53113 taskId=8095 executeId=7638838281279930377 -aiimage-backend.log.2026-05-12.3:63857:2026-05-12 11:14:33.070 [coze-task-2404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53113 executeId=7638838281279930377 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:63861:2026-05-12 11:14:33.290 [coze-task-2404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53113 executeId=7638838281279930377 status=RUNNING -aiimage-backend.log.2026-05-12.3:64007:2026-05-12 11:15:03.063 [coze-task-2408] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53113 taskId=8095 executeId=7638838281279930377 -aiimage-backend.log.2026-05-12.3:64009:2026-05-12 11:15:03.071 [coze-task-2408] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53113 executeId=7638838281279930377 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:64018:2026-05-12 11:15:04.008 [coze-task-2408] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53113 executeId=7638838281279930377 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:65868:2026-05-12 11:20:10.527 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:65869:2026-05-12 11:20:10.533 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:65870:2026-05-12 11:20:10.555 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:65871:2026-05-12 11:20:10.555 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:65879:2026-05-12 11:20:11.105 [coze-task-2416] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=32 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:65880:2026-05-12 11:20:11.111 [coze-task-2416] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=553 -aiimage-backend.log.2026-05-12.3:69236:2026-05-12 11:26:29.345 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:69237:2026-05-12 11:26:29.352 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:69238:2026-05-12 11:26:29.376 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:69239:2026-05-12 11:26:29.377 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:69446:2026-05-12 11:27:00.334 [coze-task-2424] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638841508490575923 -aiimage-backend.log.2026-05-12.3:69447:2026-05-12 11:27:00.345 [coze-task-2424] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30965 -aiimage-backend.log.2026-05-12.3:69464:2026-05-12 11:27:03.099 [coze-task-2427] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53117 taskId=8095 executeId=7638841508490575923 -aiimage-backend.log.2026-05-12.3:69465:2026-05-12 11:27:03.106 [coze-task-2427] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53117 executeId=7638841508490575923 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:69469:2026-05-12 11:27:03.255 [coze-task-2427] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53117 executeId=7638841508490575923 status=RUNNING -aiimage-backend.log.2026-05-12.3:69631:2026-05-12 11:27:33.101 [coze-task-2428] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53117 taskId=8095 executeId=7638841508490575923 -aiimage-backend.log.2026-05-12.3:69632:2026-05-12 11:27:33.109 [coze-task-2428] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53117 executeId=7638841508490575923 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:69634:2026-05-12 11:27:33.841 [coze-task-2428] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53117 executeId=7638841508490575923 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:72616:2026-05-12 11:32:36.890 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:72617:2026-05-12 11:32:36.895 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:72618:2026-05-12 11:32:36.915 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:72619:2026-05-12 11:32:36.915 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:72632:2026-05-12 11:32:37.695 [coze-task-2436] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=24 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:72633:2026-05-12 11:32:37.707 [coze-task-2436] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=788 -aiimage-backend.log.2026-05-12.3:75614:2026-05-12 11:38:48.974 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:75615:2026-05-12 11:38:48.980 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:75616:2026-05-12 11:38:48.999 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:75617:2026-05-12 11:38:48.999 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:75622:2026-05-12 11:38:49.950 [coze-task-2451] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=45 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:75623:2026-05-12 11:38:49.961 [coze-task-2451] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=958 -aiimage-backend.log.2026-05-12.3:79118:2026-05-12 11:44:59.437 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:79119:2026-05-12 11:44:59.443 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:79120:2026-05-12 11:44:59.464 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:79121:2026-05-12 11:44:59.464 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:79354:2026-05-12 11:45:30.856 [coze-task-2460] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638846278085034047 -aiimage-backend.log.2026-05-12.3:79355:2026-05-12 11:45:30.864 [coze-task-2460] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31395 -aiimage-backend.log.2026-05-12.3:79368:2026-05-12 11:45:33.154 [coze-task-2465] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53126 taskId=8095 executeId=7638846278085034047 -aiimage-backend.log.2026-05-12.3:79369:2026-05-12 11:45:33.161 [coze-task-2465] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53126 executeId=7638846278085034047 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:79372:2026-05-12 11:45:33.270 [coze-task-2465] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53126 executeId=7638846278085034047 status=RUNNING -aiimage-backend.log.2026-05-12.3:79535:2026-05-12 11:46:03.155 [coze-task-2468] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53126 taskId=8095 executeId=7638846278085034047 -aiimage-backend.log.2026-05-12.3:79538:2026-05-12 11:46:03.164 [coze-task-2468] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53126 executeId=7638846278085034047 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:79542:2026-05-12 11:46:03.293 [coze-task-2468] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53126 executeId=7638846278085034047 status=RUNNING -aiimage-backend.log.2026-05-12.3:79691:2026-05-12 11:46:33.157 [coze-task-2470] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53126 taskId=8095 executeId=7638846278085034047 -aiimage-backend.log.2026-05-12.3:79694:2026-05-12 11:46:33.164 [coze-task-2470] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53126 executeId=7638846278085034047 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:79701:2026-05-12 11:46:33.580 [coze-task-2470] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53126 executeId=7638846278085034047 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:81607:2026-05-12 11:51:02.500 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:81608:2026-05-12 11:51:02.507 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:81609:2026-05-12 11:51:02.530 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:81610:2026-05-12 11:51:02.530 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:81631:2026-05-12 11:51:03.989 [coze-task-2478] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=37 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:81632:2026-05-12 11:51:04.002 [coze-task-2478] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1468 -aiimage-backend.log.2026-05-12.3:84613:2026-05-12 11:57:11.998 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:84614:2026-05-12 11:57:12.005 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:84615:2026-05-12 11:57:12.028 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:84616:2026-05-12 11:57:12.028 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:84813:2026-05-12 11:57:43.487 [coze-task-2489] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638849428451033140 -aiimage-backend.log.2026-05-12.3:84814:2026-05-12 11:57:43.495 [coze-task-2489] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31464 -aiimage-backend.log.2026-05-12.3:84923:2026-05-12 11:58:03.192 [coze-task-2493] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53132 taskId=8095 executeId=7638849428451033140 -aiimage-backend.log.2026-05-12.3:84926:2026-05-12 11:58:03.200 [coze-task-2493] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53132 executeId=7638849428451033140 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:84931:2026-05-12 11:58:03.354 [coze-task-2493] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53132 executeId=7638849428451033140 status=RUNNING -aiimage-backend.log.2026-05-12.3:85106:2026-05-12 11:58:33.194 [coze-task-2497] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53132 taskId=8095 executeId=7638849428451033140 -aiimage-backend.log.2026-05-12.3:85108:2026-05-12 11:58:33.201 [coze-task-2497] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53132 executeId=7638849428451033140 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:85112:2026-05-12 11:58:33.298 [coze-task-2497] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53132 executeId=7638849428451033140 status=RUNNING -aiimage-backend.log.2026-05-12.3:85258:2026-05-12 11:59:03.195 [coze-task-2498] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53132 taskId=8095 executeId=7638849428451033140 -aiimage-backend.log.2026-05-12.3:85261:2026-05-12 11:59:03.203 [coze-task-2498] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53132 executeId=7638849428451033140 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:85265:2026-05-12 11:59:03.555 [coze-task-2498] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53132 executeId=7638849428451033140 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:88111:2026-05-12 12:03:26.091 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:88112:2026-05-12 12:03:26.095 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:88113:2026-05-12 12:03:26.114 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:88114:2026-05-12 12:03:26.114 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:88119:2026-05-12 12:03:27.073 [coze-task-2505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=29 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:88120:2026-05-12 12:03:27.085 [coze-task-2505] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=967 -aiimage-backend.log.2026-05-12.3:90317:2026-05-12 12:09:39.781 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:90318:2026-05-12 12:09:39.788 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:90319:2026-05-12 12:09:39.812 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:90320:2026-05-12 12:09:39.812 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:90594:2026-05-12 12:10:11.136 [coze-task-2526] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638852632124358690 -aiimage-backend.log.2026-05-12.3:90595:2026-05-12 12:10:11.143 [coze-task-2526] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31328 -aiimage-backend.log.2026-05-12.3:90845:2026-05-12 12:10:33.229 [coze-task-2529] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53138 taskId=8095 executeId=7638852632124358690 -aiimage-backend.log.2026-05-12.3:90848:2026-05-12 12:10:33.238 [coze-task-2529] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53138 executeId=7638852632124358690 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:90855:2026-05-12 12:10:33.361 [coze-task-2529] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53138 executeId=7638852632124358690 status=RUNNING -aiimage-backend.log.2026-05-12.3:91237:2026-05-12 12:11:03.230 [coze-task-2533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53138 taskId=8095 executeId=7638852632124358690 -aiimage-backend.log.2026-05-12.3:91239:2026-05-12 12:11:03.238 [coze-task-2533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53138 executeId=7638852632124358690 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:91244:2026-05-12 12:11:03.371 [coze-task-2533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53138 executeId=7638852632124358690 status=RUNNING -aiimage-backend.log.2026-05-12.3:91613:2026-05-12 12:11:33.231 [coze-task-2535] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53138 taskId=8095 executeId=7638852632124358690 -aiimage-backend.log.2026-05-12.3:91615:2026-05-12 12:11:33.240 [coze-task-2535] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53138 executeId=7638852632124358690 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:91632:2026-05-12 12:11:33.904 [coze-task-2535] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53138 executeId=7638852632124358690 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:94285:2026-05-12 12:15:55.172 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:94286:2026-05-12 12:15:55.177 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:94287:2026-05-12 12:15:55.196 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:94288:2026-05-12 12:15:55.196 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:94295:2026-05-12 12:15:56.162 [coze-task-2541] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=21 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:94296:2026-05-12 12:15:56.173 [coze-task-2541] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=974 -aiimage-backend.log.2026-05-12.3:97926:2026-05-12 12:22:07.126 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:97927:2026-05-12 12:22:07.131 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:97928:2026-05-12 12:22:07.150 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:97929:2026-05-12 12:22:07.150 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:97933:2026-05-12 12:22:08.258 [coze-task-2562] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=42 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:97934:2026-05-12 12:22:08.269 [coze-task-2562] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1116 -aiimage-backend.log.2026-05-12.3:99932:2026-05-12 12:28:22.003 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:99933:2026-05-12 12:28:22.010 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:99934:2026-05-12 12:28:22.034 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:99935:2026-05-12 12:28:22.034 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:100096:2026-05-12 12:28:53.051 [coze-task-2578] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638857452797149193 -aiimage-backend.log.2026-05-12.3:100097:2026-05-12 12:28:53.060 [coze-task-2578] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31022 -aiimage-backend.log.2026-05-12.3:100148:2026-05-12 12:29:03.286 [coze-task-2579] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53146 taskId=8095 executeId=7638857452797149193 -aiimage-backend.log.2026-05-12.3:100149:2026-05-12 12:29:03.294 [coze-task-2579] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53146 executeId=7638857452797149193 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:100151:2026-05-12 12:29:03.499 [coze-task-2579] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53146 executeId=7638857452797149193 status=RUNNING -aiimage-backend.log.2026-05-12.3:100298:2026-05-12 12:29:33.288 [coze-task-2580] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53146 taskId=8095 executeId=7638857452797149193 -aiimage-backend.log.2026-05-12.3:100299:2026-05-12 12:29:33.296 [coze-task-2580] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53146 executeId=7638857452797149193 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:100301:2026-05-12 12:29:33.424 [coze-task-2580] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53146 executeId=7638857452797149193 status=RUNNING -aiimage-backend.log.2026-05-12.3:100476:2026-05-12 12:30:03.290 [coze-task-2582] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53146 taskId=8095 executeId=7638857452797149193 -aiimage-backend.log.2026-05-12.3:100477:2026-05-12 12:30:03.296 [coze-task-2582] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53146 executeId=7638857452797149193 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:100486:2026-05-12 12:30:03.505 [coze-task-2582] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53146 executeId=7638857452797149193 status=RUNNING -aiimage-backend.log.2026-05-12.3:100880:2026-05-12 12:30:33.291 [coze-task-2585] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53146 taskId=8095 executeId=7638857452797149193 -aiimage-backend.log.2026-05-12.3:100881:2026-05-12 12:30:33.293 [coze-task-2585] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53146 executeId=7638857452797149193 lastPolledAt=2026-05-12T12:30:04 -aiimage-backend.log.2026-05-12.3:101277:2026-05-12 12:31:03.293 [coze-task-2589] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53146 taskId=8095 executeId=7638857452797149193 -aiimage-backend.log.2026-05-12.3:101280:2026-05-12 12:31:03.300 [coze-task-2589] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53146 executeId=7638857452797149193 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:101288:2026-05-12 12:31:03.790 [coze-task-2589] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53146 executeId=7638857452797149193 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:103485:2026-05-12 12:34:35.624 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:103486:2026-05-12 12:34:35.631 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:103487:2026-05-12 12:34:35.655 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:103488:2026-05-12 12:34:35.655 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:103490:2026-05-12 12:34:36.509 [coze-task-2606] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=34 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:103491:2026-05-12 12:34:36.522 [coze-task-2606] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=864 -aiimage-backend.log.2026-05-12.3:107463:2026-05-12 12:41:36.533 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:107464:2026-05-12 12:41:36.538 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:107465:2026-05-12 12:41:36.556 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:107466:2026-05-12 12:41:36.556 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:107621:2026-05-12 12:42:08.231 [coze-task-2619] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:107622:2026-05-12 12:42:08.241 [coze-task-2619] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31681 -aiimage-backend.log.2026-05-12.3:107774:2026-05-12 12:42:33.327 [coze-task-2621] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:107775:2026-05-12 12:42:33.333 [coze-task-2621] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:107777:2026-05-12 12:42:33.461 [coze-task-2621] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:107922:2026-05-12 12:43:03.328 [coze-task-2622] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:107923:2026-05-12 12:43:03.335 [coze-task-2622] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:107925:2026-05-12 12:43:03.492 [coze-task-2622] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:108101:2026-05-12 12:43:33.330 [coze-task-2625] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:108102:2026-05-12 12:43:33.337 [coze-task-2625] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:108104:2026-05-12 12:43:33.457 [coze-task-2625] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:108262:2026-05-12 12:44:03.332 [coze-task-2626] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:108263:2026-05-12 12:44:03.339 [coze-task-2626] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:108265:2026-05-12 12:44:03.486 [coze-task-2626] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:108429:2026-05-12 12:44:33.333 [coze-task-2628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:108430:2026-05-12 12:44:33.341 [coze-task-2628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:108432:2026-05-12 12:44:33.469 [coze-task-2628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:108581:2026-05-12 12:45:03.335 [coze-task-2629] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:108582:2026-05-12 12:45:03.342 [coze-task-2629] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:108584:2026-05-12 12:45:03.567 [coze-task-2629] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:108760:2026-05-12 12:45:33.337 [coze-task-2631] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:108761:2026-05-12 12:45:33.338 [coze-task-2631] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53152 executeId=7638860874304323624 lastPolledAt=2026-05-12T12:45:04 -aiimage-backend.log.2026-05-12.3:108915:2026-05-12 12:46:03.338 [coze-task-2633] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:108917:2026-05-12 12:46:03.347 [coze-task-2633] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:108919:2026-05-12 12:46:03.479 [coze-task-2633] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53152 executeId=7638860874304323624 status=RUNNING -aiimage-backend.log.2026-05-12.3:109080:2026-05-12 12:46:33.340 [coze-task-2634] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53152 taskId=8095 executeId=7638860874304323624 -aiimage-backend.log.2026-05-12.3:109083:2026-05-12 12:46:33.348 [coze-task-2634] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53152 executeId=7638860874304323624 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:109087:2026-05-12 12:46:33.741 [coze-task-2634] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53152 executeId=7638860874304323624 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:109430:2026-05-12 12:47:40.742 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:109431:2026-05-12 12:47:40.747 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:109432:2026-05-12 12:47:40.765 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:109433:2026-05-12 12:47:40.765 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:109461:2026-05-12 12:47:41.826 [coze-task-2638] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=25 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:109462:2026-05-12 12:47:41.836 [coze-task-2638] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1067 -aiimage-backend.log.2026-05-12.3:113370:2026-05-12 12:53:47.681 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:113371:2026-05-12 12:53:47.687 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:113372:2026-05-12 12:53:47.706 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:113373:2026-05-12 12:53:47.706 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:113379:2026-05-12 12:53:48.463 [coze-task-2661] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=46 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:113380:2026-05-12 12:53:48.469 [coze-task-2661] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=759 -aiimage-backend.log.2026-05-12.3:115368:2026-05-12 12:59:53.795 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:115369:2026-05-12 12:59:53.802 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:115370:2026-05-12 12:59:53.826 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:115371:2026-05-12 12:59:53.826 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:115696:2026-05-12 13:00:25.348 [coze-task-2681] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:115697:2026-05-12 13:00:25.358 [coze-task-2681] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31529 -aiimage-backend.log.2026-05-12.3:115828:2026-05-12 13:00:33.380 [coze-task-2683] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:115830:2026-05-12 13:00:33.388 [coze-task-2683] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53160 executeId=7638865587648774144 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:115832:2026-05-12 13:00:33.519 [coze-task-2683] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53160 executeId=7638865587648774144 status=RUNNING -aiimage-backend.log.2026-05-12.3:116209:2026-05-12 13:01:03.382 [coze-task-2685] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:116211:2026-05-12 13:01:03.385 [coze-task-2685] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53160 executeId=7638865587648774144 lastPolledAt=2026-05-12T13:00:34 -aiimage-backend.log.2026-05-12.3:116750:2026-05-12 13:01:33.384 [coze-task-2689] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:116752:2026-05-12 13:01:33.390 [coze-task-2689] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53160 executeId=7638865587648774144 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:116754:2026-05-12 13:01:33.512 [coze-task-2689] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53160 executeId=7638865587648774144 status=RUNNING -aiimage-backend.log.2026-05-12.3:117714:2026-05-12 13:02:03.386 [coze-task-2691] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:117716:2026-05-12 13:02:03.387 [coze-task-2691] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53160 executeId=7638865587648774144 lastPolledAt=2026-05-12T13:01:34 -aiimage-backend.log.2026-05-12.3:117912:2026-05-12 13:02:33.387 [coze-task-2696] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:117916:2026-05-12 13:02:33.395 [coze-task-2696] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53160 executeId=7638865587648774144 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:117918:2026-05-12 13:02:33.533 [coze-task-2696] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53160 executeId=7638865587648774144 status=RUNNING -aiimage-backend.log.2026-05-12.3:118081:2026-05-12 13:03:03.388 [coze-task-2698] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:118084:2026-05-12 13:03:03.389 [coze-task-2698] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53160 executeId=7638865587648774144 lastPolledAt=2026-05-12T13:02:34 -aiimage-backend.log.2026-05-12.3:118280:2026-05-12 13:03:33.389 [coze-task-2703] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53160 taskId=8095 executeId=7638865587648774144 -aiimage-backend.log.2026-05-12.3:118282:2026-05-12 13:03:33.397 [coze-task-2703] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53160 executeId=7638865587648774144 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:118288:2026-05-12 13:03:33.883 [coze-task-2703] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53160 executeId=7638865587648774144 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:119073:2026-05-12 13:05:59.459 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:119074:2026-05-12 13:05:59.465 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:119075:2026-05-12 13:05:59.488 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:119076:2026-05-12 13:05:59.488 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:119117:2026-05-12 13:06:01.316 [coze-task-2711] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=38 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:119118:2026-05-12 13:06:01.327 [coze-task-2711] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1835 -aiimage-backend.log.2026-05-12.3:122601:2026-05-12 13:12:03.623 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:122602:2026-05-12 13:12:03.628 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:122603:2026-05-12 13:12:03.648 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:122604:2026-05-12 13:12:03.648 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:122759:2026-05-12 13:12:35.112 [coze-task-2726] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638868716852002831 -aiimage-backend.log.2026-05-12.3:122760:2026-05-12 13:12:35.122 [coze-task-2726] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31471 -aiimage-backend.log.2026-05-12.3:122917:2026-05-12 13:13:03.418 [coze-task-2728] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53167 taskId=8095 executeId=7638868716852002831 -aiimage-backend.log.2026-05-12.3:122918:2026-05-12 13:13:03.425 [coze-task-2728] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53167 executeId=7638868716852002831 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:122920:2026-05-12 13:13:03.556 [coze-task-2728] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53167 executeId=7638868716852002831 status=RUNNING -aiimage-backend.log.2026-05-12.3:123077:2026-05-12 13:13:33.419 [coze-task-2729] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53167 taskId=8095 executeId=7638868716852002831 -aiimage-backend.log.2026-05-12.3:123078:2026-05-12 13:13:33.420 [coze-task-2729] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53167 executeId=7638868716852002831 lastPolledAt=2026-05-12T13:13:04 -aiimage-backend.log.2026-05-12.3:123232:2026-05-12 13:14:03.421 [coze-task-2730] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53167 taskId=8095 executeId=7638868716852002831 -aiimage-backend.log.2026-05-12.3:123233:2026-05-12 13:14:03.428 [coze-task-2730] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53167 executeId=7638868716852002831 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:123242:2026-05-12 13:14:04.717 [coze-task-2730] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53167 executeId=7638868716852002831 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:124558:2026-05-12 13:18:09.814 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:124559:2026-05-12 13:18:09.820 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:124560:2026-05-12 13:18:09.842 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:124561:2026-05-12 13:18:09.842 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:124563:2026-05-12 13:18:10.477 [coze-task-2738] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=30 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:124564:2026-05-12 13:18:10.485 [coze-task-2738] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=640 -aiimage-backend.log.2026-05-12.3:128396:2026-05-12 13:25:10.414 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:128397:2026-05-12 13:25:10.419 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:128398:2026-05-12 13:25:10.438 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:128399:2026-05-12 13:25:10.438 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:128591:2026-05-12 13:25:41.993 [coze-task-2755] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:128592:2026-05-12 13:25:42.003 [coze-task-2755] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31561 -aiimage-backend.log.2026-05-12.3:128707:2026-05-12 13:26:03.459 [coze-task-2756] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:128708:2026-05-12 13:26:03.466 [coze-task-2756] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53173 executeId=7638872096462716962 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:128711:2026-05-12 13:26:03.571 [coze-task-2756] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53173 executeId=7638872096462716962 status=RUNNING -aiimage-backend.log.2026-05-12.3:128879:2026-05-12 13:26:33.461 [coze-task-2757] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:128880:2026-05-12 13:26:33.463 [coze-task-2757] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53173 executeId=7638872096462716962 lastPolledAt=2026-05-12T13:26:04 -aiimage-backend.log.2026-05-12.3:129091:2026-05-12 13:27:03.462 [coze-task-2760] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:129092:2026-05-12 13:27:03.471 [coze-task-2760] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53173 executeId=7638872096462716962 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:129094:2026-05-12 13:27:03.607 [coze-task-2760] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53173 executeId=7638872096462716962 status=RUNNING -aiimage-backend.log.2026-05-12.3:129260:2026-05-12 13:27:33.464 [coze-task-2761] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:129261:2026-05-12 13:27:33.466 [coze-task-2761] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53173 executeId=7638872096462716962 lastPolledAt=2026-05-12T13:27:04 -aiimage-backend.log.2026-05-12.3:129427:2026-05-12 13:28:03.465 [coze-task-2763] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:129428:2026-05-12 13:28:03.473 [coze-task-2763] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53173 executeId=7638872096462716962 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:129431:2026-05-12 13:28:03.575 [coze-task-2763] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53173 executeId=7638872096462716962 status=RUNNING -aiimage-backend.log.2026-05-12.3:129626:2026-05-12 13:28:33.467 [coze-task-2765] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:129627:2026-05-12 13:28:33.469 [coze-task-2765] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53173 executeId=7638872096462716962 lastPolledAt=2026-05-12T13:28:04 -aiimage-backend.log.2026-05-12.3:129793:2026-05-12 13:29:03.469 [coze-task-2767] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53173 taskId=8095 executeId=7638872096462716962 -aiimage-backend.log.2026-05-12.3:129795:2026-05-12 13:29:03.477 [coze-task-2767] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53173 executeId=7638872096462716962 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:129799:2026-05-12 13:29:04.035 [coze-task-2767] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53173 executeId=7638872096462716962 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:131205:2026-05-12 13:31:26.234 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:131206:2026-05-12 13:31:26.240 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:131207:2026-05-12 13:31:26.264 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:131208:2026-05-12 13:31:26.264 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:131218:2026-05-12 13:31:27.479 [coze-task-2772] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=21 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:131219:2026-05-12 13:31:27.494 [coze-task-2772] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1226 -aiimage-backend.log.2026-05-12.3:134682:2026-05-12 13:37:31.326 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:134683:2026-05-12 13:37:31.332 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:134684:2026-05-12 13:37:31.353 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:134685:2026-05-12 13:37:31.353 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:134715:2026-05-12 13:37:32.842 [coze-task-2796] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=42 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:134716:2026-05-12 13:37:32.855 [coze-task-2796] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1498 -aiimage-backend.log.2026-05-12.3:138440:2026-05-12 13:43:37.710 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:138441:2026-05-12 13:43:37.716 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:138442:2026-05-12 13:43:37.737 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:138443:2026-05-12 13:43:37.737 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:138652:2026-05-12 13:44:09.172 [coze-task-2829] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638876851931414580 -aiimage-backend.log.2026-05-12.3:138653:2026-05-12 13:44:09.182 [coze-task-2829] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31442 -aiimage-backend.log.2026-05-12.3:138804:2026-05-12 13:44:33.517 [coze-task-2831] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53183 taskId=8095 executeId=7638876851931414580 -aiimage-backend.log.2026-05-12.3:138805:2026-05-12 13:44:33.524 [coze-task-2831] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53183 executeId=7638876851931414580 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:138807:2026-05-12 13:44:33.644 [coze-task-2831] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53183 executeId=7638876851931414580 status=RUNNING -aiimage-backend.log.2026-05-12.3:138983:2026-05-12 13:45:03.518 [coze-task-2833] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53183 taskId=8095 executeId=7638876851931414580 -aiimage-backend.log.2026-05-12.3:138984:2026-05-12 13:45:03.520 [coze-task-2833] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53183 executeId=7638876851931414580 lastPolledAt=2026-05-12T13:44:34 -aiimage-backend.log.2026-05-12.3:139170:2026-05-12 13:45:33.520 [coze-task-2835] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53183 taskId=8095 executeId=7638876851931414580 -aiimage-backend.log.2026-05-12.3:139171:2026-05-12 13:45:33.527 [coze-task-2835] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53183 executeId=7638876851931414580 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:139176:2026-05-12 13:45:33.646 [coze-task-2835] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53183 executeId=7638876851931414580 status=RUNNING -aiimage-backend.log.2026-05-12.3:139347:2026-05-12 13:46:03.522 [coze-task-2836] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53183 taskId=8095 executeId=7638876851931414580 -aiimage-backend.log.2026-05-12.3:139348:2026-05-12 13:46:03.523 [coze-task-2836] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53183 executeId=7638876851931414580 lastPolledAt=2026-05-12T13:45:34 -aiimage-backend.log.2026-05-12.3:139536:2026-05-12 13:46:33.524 [coze-task-2839] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53183 taskId=8095 executeId=7638876851931414580 -aiimage-backend.log.2026-05-12.3:139537:2026-05-12 13:46:33.530 [coze-task-2839] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53183 executeId=7638876851931414580 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:139541:2026-05-12 13:46:34.002 [coze-task-2839] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53183 executeId=7638876851931414580 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:140689:2026-05-12 13:50:04.684 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:140690:2026-05-12 13:50:04.689 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:140691:2026-05-12 13:50:04.708 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:140692:2026-05-12 13:50:04.708 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:140710:2026-05-12 13:50:06.629 [coze-task-2850] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=34 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:140711:2026-05-12 13:50:06.639 [coze-task-2850] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1927 -aiimage-backend.log.2026-05-12.3:143751:2026-05-12 13:56:09.390 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:143752:2026-05-12 13:56:09.396 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:143753:2026-05-12 13:56:09.418 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:143754:2026-05-12 13:56:09.418 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:143888:2026-05-12 13:56:40.849 [coze-task-2886] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:143889:2026-05-12 13:56:40.858 [coze-task-2886] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31436 -aiimage-backend.log.2026-05-12.3:143996:2026-05-12 13:57:03.559 [coze-task-2892] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144002:2026-05-12 13:57:03.567 [coze-task-2892] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:144005:2026-05-12 13:57:03.695 [coze-task-2892] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53190 executeId=7638880086539812864 status=RUNNING -aiimage-backend.log.2026-05-12.3:144122:2026-05-12 13:57:33.562 [coze-task-2897] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144126:2026-05-12 13:57:33.564 [coze-task-2897] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53190 executeId=7638880086539812864 lastPolledAt=2026-05-12T13:57:04 -aiimage-backend.log.2026-05-12.3:144392:2026-05-12 13:58:03.563 [coze-task-2905] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144396:2026-05-12 13:58:03.570 [coze-task-2905] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:144401:2026-05-12 13:58:03.691 [coze-task-2905] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53190 executeId=7638880086539812864 status=RUNNING -aiimage-backend.log.2026-05-12.3:144519:2026-05-12 13:58:33.565 [coze-task-2908] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144523:2026-05-12 13:58:33.566 [coze-task-2908] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53190 executeId=7638880086539812864 lastPolledAt=2026-05-12T13:58:04 -aiimage-backend.log.2026-05-12.3:144661:2026-05-12 13:59:03.567 [coze-task-2917] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144666:2026-05-12 13:59:03.574 [coze-task-2917] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:144671:2026-05-12 13:59:03.716 [coze-task-2917] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53190 executeId=7638880086539812864 status=RUNNING -aiimage-backend.log.2026-05-12.3:144791:2026-05-12 13:59:33.568 [coze-task-2920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144796:2026-05-12 13:59:33.570 [coze-task-2920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53190 executeId=7638880086539812864 lastPolledAt=2026-05-12T13:59:04 -aiimage-backend.log.2026-05-12.3:144987:2026-05-12 14:00:03.571 [coze-task-2931] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:144996:2026-05-12 14:00:03.578 [coze-task-2931] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:145004:2026-05-12 14:00:03.725 [coze-task-2931] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53190 executeId=7638880086539812864 status=RUNNING -aiimage-backend.log.2026-05-12.3:145369:2026-05-12 14:00:33.572 [coze-task-2933] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:145373:2026-05-12 14:00:33.574 [coze-task-2933] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53190 executeId=7638880086539812864 lastPolledAt=2026-05-12T14:00:04 -aiimage-backend.log.2026-05-12.3:145729:2026-05-12 14:01:03.574 [coze-task-2944] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:145738:2026-05-12 14:01:03.584 [coze-task-2944] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:145743:2026-05-12 14:01:03.728 [coze-task-2944] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53190 executeId=7638880086539812864 status=RUNNING -aiimage-backend.log.2026-05-12.3:146098:2026-05-12 14:01:33.575 [coze-task-2947] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:146103:2026-05-12 14:01:33.577 [coze-task-2947] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53190 executeId=7638880086539812864 lastPolledAt=2026-05-12T14:01:04 -aiimage-backend.log.2026-05-12.3:147035:2026-05-12 14:02:03.577 [coze-task-2959] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:147043:2026-05-12 14:02:03.584 [coze-task-2959] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:147050:2026-05-12 14:02:03.804 [coze-task-2959] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53190 executeId=7638880086539812864 status=RUNNING -aiimage-backend.log.2026-05-12.3:147094:2026-05-12 14:02:17.159 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:147095:2026-05-12 14:02:17.165 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:147096:2026-05-12 14:02:17.185 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:147097:2026-05-12 14:02:17.186 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:147101:2026-05-12 14:02:17.429 [coze-task-2961] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=239 -aiimage-backend.log.2026-05-12.3:147177:2026-05-12 14:02:33.579 [coze-task-2962] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:147187:2026-05-12 14:02:33.580 [coze-task-2962] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53190 executeId=7638880086539812864 lastPolledAt=2026-05-12T14:02:04 -aiimage-backend.log.2026-05-12.3:147343:2026-05-12 14:03:03.581 [coze-task-2978] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53190 taskId=8095 executeId=7638880086539812864 -aiimage-backend.log.2026-05-12.3:147352:2026-05-12 14:03:03.590 [coze-task-2978] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53190 executeId=7638880086539812864 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:147360:2026-05-12 14:03:04.638 [coze-task-2978] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53190 executeId=7638880086539812864 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.3:148858:2026-05-12 14:08:27.868 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:148859:2026-05-12 14:08:27.872 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:148860:2026-05-12 14:08:27.890 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:148861:2026-05-12 14:08:27.890 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:148868:2026-05-12 14:08:29.222 [coze-task-3030] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=47 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.3:148869:2026-05-12 14:08:29.232 [coze-task-3030] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1338 -aiimage-backend.log.2026-05-12.3:152797:2026-05-12 14:15:26.775 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:152798:2026-05-12 14:15:26.780 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.3:152799:2026-05-12 14:15:26.801 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:152800:2026-05-12 14:15:26.801 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.3:153230:2026-05-12 14:16:56.641 [coze-task-3113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.3:153231:2026-05-12 14:16:56.650 [coze-task-3113] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=89846 -aiimage-backend.log.2026-05-12.3:153283:2026-05-12 14:17:03.626 [coze-task-3138] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.3:153296:2026-05-12 14:17:03.633 [coze-task-3138] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:153306:2026-05-12 14:17:03.780 [coze-task-3138] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"code":0,"msg":"","data":[{"logid":"2026051214162662F3A773535CDEBC9DB8","output":"{\"node_status\":\"{}\",\"Output\":\"\"}","connector_id":"1024","update_time":1778566587,"is_output_trimmed":false,"token":"0","run_mode":2,"usage":{"token_count":0,"output_count":0,"input_count":0},"execute_id":"7638885308012085274","execute_status":"Running","node_execute_status":{},"bot_id":"0","create_time":1778566587,"connector_uid":"2939430754097600","error_code":"","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2"}],"detail":{"logid":"202605121417037D9A08381FC57DADE5FB"}} -aiimage-backend.log.2026-05-12.3:153307:2026-05-12 14:17:03.780 [coze-task-3138] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.3:153441:2026-05-12 14:17:33.628 [coze-task-3152] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.3:153449:2026-05-12 14:17:33.630 [coze-task-3152] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:17:04 -aiimage-backend.log.2026-05-12.3:153610:2026-05-12 14:18:03.630 [coze-task-3166] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.3:153618:2026-05-12 14:18:03.640 [coze-task-3166] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.3:153620:2026-05-12 14:18:03.756 [coze-task-3166] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"detail":{"logid":"20260512141803F811D537EF7B04BF2578"},"code":0,"msg":"","data":[{"is_output_trimmed":false,"run_mode":2,"debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","create_time":1778566587,"execute_status":"Running","output":"{\"node_status\":\"{}\",\"Output\":\"\"}","usage":{"input_count":0,"token_count":0,"output_count":0},"error_code":"","execute_id":"7638885308012085274","bot_id":"0","connector_id":"1024","logid":"2026051214162662F3A773535CDEBC9DB8","node_execute_status":{},"update_time":1778566587,"token":"0","connector_uid":"2939430754097600"}]} -aiimage-backend.log.2026-05-12.3:153621:2026-05-12 14:18:03.756 [coze-task-3166] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.3:153747:2026-05-12 14:18:33.631 [coze-task-3170] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.3:153754:2026-05-12 14:18:33.633 [coze-task-3170] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:18:04 -aiimage-backend.log.2026-05-12.4:79:2026-05-12 14:19:03.633 [coze-task-3182] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:88:2026-05-12 14:19:03.642 [coze-task-3182] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:92:2026-05-12 14:19:03.768 [coze-task-3182] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"code":0,"msg":"","data":[{"execute_id":"7638885308012085274","bot_id":"0","update_time":1778566587,"is_output_trimmed":false,"execute_status":"Running","logid":"2026051214162662F3A773535CDEBC9DB8","create_time":1778566587,"connector_id":"1024","run_mode":2,"usage":{"token_count":0,"output_count":0,"input_count":0},"error_code":"","token":"0","connector_uid":"2939430754097600","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","output":"{\"Output\":\"\",\"node_status\":\"{}\"}","node_execute_status":{}}],"detail":{"logid":"20260512141903E8BBE79D0821A2D93585"}} -aiimage-backend.log.2026-05-12.4:93:2026-05-12 14:19:03.768 [coze-task-3182] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:228:2026-05-12 14:19:33.635 [coze-task-3187] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:235:2026-05-12 14:19:33.637 [coze-task-3187] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:19:04 -aiimage-backend.log.2026-05-12.4:399:2026-05-12 14:20:03.636 [coze-task-3198] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:404:2026-05-12 14:20:03.644 [coze-task-3198] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:412:2026-05-12 14:20:03.754 [coze-task-3198] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"code":0,"msg":"","data":[{"debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","error_code":"","execute_status":"Running","connector_uid":"2939430754097600","run_mode":2,"node_execute_status":{},"bot_id":"0","connector_id":"1024","create_time":1778566587,"output":"{\"node_status\":\"{}\",\"Output\":\"\"}","execute_id":"7638885308012085274","is_output_trimmed":false,"token":"0","logid":"2026051214162662F3A773535CDEBC9DB8","usage":{"input_count":0,"token_count":0,"output_count":0},"update_time":1778566587}],"detail":{"logid":"2026051214200330D91EC9CEE929D77E81"}} -aiimage-backend.log.2026-05-12.4:413:2026-05-12 14:20:03.754 [coze-task-3198] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:777:2026-05-12 14:20:33.638 [coze-task-3203] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:785:2026-05-12 14:20:33.640 [coze-task-3203] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:20:04 -aiimage-backend.log.2026-05-12.4:1150:2026-05-12 14:21:03.640 [coze-task-3215] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:1162:2026-05-12 14:21:03.649 [coze-task-3215] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:1170:2026-05-12 14:21:03.773 [coze-task-3215] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"msg":"","data":[{"execute_id":"7638885308012085274","logid":"2026051214162662F3A773535CDEBC9DB8","node_execute_status":{},"error_code":"","create_time":1778566587,"is_output_trimmed":false,"usage":{"token_count":0,"output_count":0,"input_count":0},"connector_id":"1024","execute_status":"Running","connector_uid":"2939430754097600","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","bot_id":"0","update_time":1778566587,"token":"0","run_mode":2,"output":"{\"node_status\":\"{}\",\"Output\":\"\"}"}],"detail":{"logid":"20260512142103F981FB89CDFF99AA0C57"},"code":0} -aiimage-backend.log.2026-05-12.4:1171:2026-05-12 14:21:03.773 [coze-task-3215] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:2239:2026-05-12 14:21:33.641 [coze-task-3226] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:2250:2026-05-12 14:21:33.643 [coze-task-3226] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:21:04 -aiimage-backend.log.2026-05-12.4:2529:2026-05-12 14:21:46.767 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:2530:2026-05-12 14:21:46.772 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:2531:2026-05-12 14:21:46.791 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:2532:2026-05-12 14:21:46.792 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:2534:2026-05-12 14:21:47.042 [coze-task-3234] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=247 -aiimage-backend.log.2026-05-12.4:2624:2026-05-12 14:22:03.643 [coze-task-3243] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:2634:2026-05-12 14:22:03.651 [coze-task-3243] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:2640:2026-05-12 14:22:03.873 [coze-task-3243] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"data":[{"token":"0","logid":"2026051214162662F3A773535CDEBC9DB8","node_execute_status":{},"execute_id":"7638885308012085274","update_time":1778566587,"is_output_trimmed":false,"connector_uid":"2939430754097600","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","bot_id":"0","run_mode":2,"output":"{\"node_status\":\"{}\",\"Output\":\"\"}","usage":{"token_count":0,"output_count":0,"input_count":0},"connector_id":"1024","create_time":1778566587,"execute_status":"Running","error_code":""}],"detail":{"logid":"202605121422035A9F40175D253ED1AA21"},"code":0,"msg":""} -aiimage-backend.log.2026-05-12.4:2641:2026-05-12 14:22:03.873 [coze-task-3243] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:2775:2026-05-12 14:22:33.645 [coze-task-3251] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:2787:2026-05-12 14:22:33.646 [coze-task-3251] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:22:04 -aiimage-backend.log.2026-05-12.4:2934:2026-05-12 14:23:03.647 [coze-task-3268] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:2946:2026-05-12 14:23:03.658 [coze-task-3268] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:2954:2026-05-12 14:23:03.810 [coze-task-3268] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"data":[{"execute_id":"7638885308012085274","connector_uid":"2939430754097600","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","output":"{\"node_status\":\"{}\",\"Output\":\"\"}","usage":{"token_count":0,"output_count":0,"input_count":0},"update_time":1778566587,"token":"0","logid":"2026051214162662F3A773535CDEBC9DB8","bot_id":"0","create_time":1778566587,"node_execute_status":{},"error_code":"","connector_id":"1024","is_output_trimmed":false,"execute_status":"Running","run_mode":2}],"detail":{"logid":"20260512142303F2752B6857A427C79F33"},"code":0,"msg":""} -aiimage-backend.log.2026-05-12.4:2955:2026-05-12 14:23:03.810 [coze-task-3268] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:3094:2026-05-12 14:23:33.649 [coze-task-3279] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:3107:2026-05-12 14:23:33.651 [coze-task-3279] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:23:04 -aiimage-backend.log.2026-05-12.4:3254:2026-05-12 14:24:03.650 [coze-task-3297] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:3270:2026-05-12 14:24:03.659 [coze-task-3297] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:3273:2026-05-12 14:24:03.770 [coze-task-3297] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"code":0,"msg":"","data":[{"token":"0","execute_status":"Running","update_time":1778566587,"logid":"2026051214162662F3A773535CDEBC9DB8","output":"{\"Output\":\"\",\"node_status\":\"{}\"}","error_code":"","bot_id":"0","connector_id":"1024","connector_uid":"2939430754097600","execute_id":"7638885308012085274","create_time":1778566587,"run_mode":2,"debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","node_execute_status":{},"usage":{"token_count":0,"output_count":0,"input_count":0},"is_output_trimmed":false}],"detail":{"logid":"20260512142403F2FA39C10AE910ABAFCF"}} -aiimage-backend.log.2026-05-12.4:3274:2026-05-12 14:24:03.770 [coze-task-3297] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:3428:2026-05-12 14:24:33.652 [coze-task-3311] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:3446:2026-05-12 14:24:33.653 [coze-task-3311] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:24:04 -aiimage-backend.log.2026-05-12.4:3615:2026-05-12 14:25:03.653 [coze-task-3328] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:3630:2026-05-12 14:25:03.663 [coze-task-3328] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:3635:2026-05-12 14:25:03.800 [coze-task-3328] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"detail":{"logid":"202605121425033B107D547F9911CA7454"},"code":0,"msg":"","data":[{"execute_status":"Running","connector_uid":"2939430754097600","output":"{\"node_status\":\"{}\",\"Output\":\"\"}","node_execute_status":{},"error_code":"","create_time":1778566587,"run_mode":2,"debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","bot_id":"0","connector_id":"1024","logid":"2026051214162662F3A773535CDEBC9DB8","usage":{"token_count":0,"output_count":0,"input_count":0},"execute_id":"7638885308012085274","update_time":1778566587,"is_output_trimmed":false,"token":"0"}]} -aiimage-backend.log.2026-05-12.4:3636:2026-05-12 14:25:03.800 [coze-task-3328] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:3825:2026-05-12 14:25:33.655 [coze-task-3337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:3836:2026-05-12 14:25:33.656 [coze-task-3337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:25:04 -aiimage-backend.log.2026-05-12.4:3981:2026-05-12 14:26:03.657 [coze-task-3351] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:3996:2026-05-12 14:26:03.667 [coze-task-3351] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:3999:2026-05-12 14:26:03.797 [coze-task-3351] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"code":0,"msg":"","data":[{"logid":"2026051214162662F3A773535CDEBC9DB8","execute_id":"7638885308012085274","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","output":"{\"node_status\":\"{}\",\"Output\":\"\"}","update_time":1778566587,"token":"0","connector_uid":"2939430754097600","bot_id":"0","connector_id":"1024","create_time":1778566587,"is_output_trimmed":false,"execute_status":"Running","node_execute_status":{},"usage":{"token_count":0,"output_count":0,"input_count":0},"error_code":"","run_mode":2}],"detail":{"logid":"202605121426030E28FF60952041C972B8"}} -aiimage-backend.log.2026-05-12.4:4000:2026-05-12 14:26:03.797 [coze-task-3351] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53213 executeId=7638885308012085274 status=RUNNING -aiimage-backend.log.2026-05-12.4:4127:2026-05-12 14:26:33.658 [coze-task-3358] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:4140:2026-05-12 14:26:33.660 [coze-task-3358] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53213 executeId=7638885308012085274 lastPolledAt=2026-05-12T14:26:04 -aiimage-backend.log.2026-05-12.4:4271:2026-05-12 14:27:03.660 [coze-task-3370] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:4283:2026-05-12 14:27:03.667 [coze-task-3370] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53213 executeId=7638885308012085274 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:4293:2026-05-12 14:27:03.853 [coze-task-3370] INFO c.n.a.m.a.c.AppearancePatentCozeClient - [appearance-patent] coze history response executeId=7638885308012085274 status=200 OK body={"msg":"","data":[{"connector_uid":"2939430754097600","output":"{\"Output\":\"\",\"node_status\":\"{}\"}","execute_id":"7638885308012085274","bot_id":"0","connector_id":"1024","update_time":1778566587,"token":"0","run_mode":2,"create_time":1778566587,"execute_status":"Running","debug_url":"https://www.coze.cn/work_flow?execute_id=7638885308012085274&space_id=7519005192466022436&workflow_id=7632683471312355338&execute_mode=2","node_execute_status":{},"is_output_trimmed":false,"logid":"2026051214162662F3A773535CDEBC9DB8","usage":{"token_count":0,"output_count":0,"input_count":0},"error_code":""}],"detail":{"logid":"20260512142703504E0A4BCD37CEAF2872"},"code":0} -aiimage-backend.log.2026-05-12.4:4416:2026-05-12 14:27:33.661 [coze-task-3377] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:4425:2026-05-12 14:27:33.662 [coze-task-3377] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53213 -aiimage-backend.log.2026-05-12.4:4615:2026-05-12 14:28:03.663 [coze-task-3389] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:4620:2026-05-12 14:28:03.663 [coze-task-3390] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53213 taskId=8095 executeId=7638885308012085274 -aiimage-backend.log.2026-05-12.4:4622:2026-05-12 14:28:03.664 [coze-task-3389] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:4625:2026-05-12 14:28:03.664 [coze-task-3390] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53213 -aiimage-backend.log.2026-05-12.4:4642:2026-05-12 14:28:04.334 [coze-task-3370] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53213 chunk=null batch=1/1 parts=2 retry=1/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:4648:2026-05-12 14:28:09.015 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:4649:2026-05-12 14:28:09.022 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:4650:2026-05-12 14:28:09.046 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:4651:2026-05-12 14:28:09.046 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:4654:2026-05-12 14:28:09.295 [coze-task-3396] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=244 -aiimage-backend.log.2026-05-12.4:4768:2026-05-12 14:28:33.664 [coze-task-3400] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:4769:2026-05-12 14:28:33.664 [coze-task-3403] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:4775:2026-05-12 14:28:33.665 [coze-task-3400] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53229 -aiimage-backend.log.2026-05-12.4:4781:2026-05-12 14:28:33.671 [coze-task-3403] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53228 executeId=7638888038387646479 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:4787:2026-05-12 14:28:33.788 [coze-task-3403] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53228 executeId=7638888038387646479 status=RUNNING -aiimage-backend.log.2026-05-12.4:4925:2026-05-12 14:29:03.666 [coze-task-3414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:4928:2026-05-12 14:29:03.666 [coze-task-3410] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:4935:2026-05-12 14:29:03.668 [coze-task-3410] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:4940:2026-05-12 14:29:03.676 [coze-task-3414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:4946:2026-05-12 14:29:03.803 [coze-task-3414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:5076:2026-05-12 14:29:33.667 [coze-task-3421] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:5080:2026-05-12 14:29:33.667 [coze-task-3425] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:5086:2026-05-12 14:29:33.669 [coze-task-3421] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:29:04 -aiimage-backend.log.2026-05-12.4:5089:2026-05-12 14:29:33.669 [coze-task-3425] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:5257:2026-05-12 14:30:03.669 [coze-task-3434] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:5259:2026-05-12 14:30:03.669 [coze-task-3437] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:5263:2026-05-12 14:30:03.670 [coze-task-3437] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:5269:2026-05-12 14:30:03.679 [coze-task-3434] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:5276:2026-05-12 14:30:03.789 [coze-task-3434] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:5653:2026-05-12 14:30:33.670 [coze-task-3450] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:5659:2026-05-12 14:30:33.670 [coze-task-3445] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:5670:2026-05-12 14:30:33.672 [coze-task-3445] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:30:04 -aiimage-backend.log.2026-05-12.4:5671:2026-05-12 14:30:33.672 [coze-task-3450] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:6013:2026-05-12 14:31:03.672 [coze-task-3457] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:6020:2026-05-12 14:31:03.672 [coze-task-3461] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:6025:2026-05-12 14:31:03.673 [coze-task-3461] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:6032:2026-05-12 14:31:03.682 [coze-task-3457] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:6037:2026-05-12 14:31:03.790 [coze-task-3457] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:6421:2026-05-12 14:31:33.673 [coze-task-3467] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:6427:2026-05-12 14:31:33.674 [coze-task-3474] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:6434:2026-05-12 14:31:33.674 [coze-task-3467] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:31:04 -aiimage-backend.log.2026-05-12.4:6436:2026-05-12 14:31:33.675 [coze-task-3474] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:7350:2026-05-12 14:32:03.674 [coze-task-3480] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:7359:2026-05-12 14:32:03.674 [coze-task-3486] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:7364:2026-05-12 14:32:03.676 [coze-task-3486] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:7370:2026-05-12 14:32:03.685 [coze-task-3480] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:7386:2026-05-12 14:32:03.830 [coze-task-3480] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:7508:2026-05-12 14:32:33.676 [coze-task-3499] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:7510:2026-05-12 14:32:33.676 [coze-task-3491] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:7518:2026-05-12 14:32:33.677 [coze-task-3499] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:7523:2026-05-12 14:32:33.677 [coze-task-3491] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:32:04 -aiimage-backend.log.2026-05-12.4:8038:2026-05-12 14:33:03.678 [coze-task-3505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8047:2026-05-12 14:33:03.679 [coze-task-3513] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8053:2026-05-12 14:33:03.679 [coze-task-3513] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8057:2026-05-12 14:33:03.688 [coze-task-3505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:8061:2026-05-12 14:33:03.805 [coze-task-3505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:8190:2026-05-12 14:33:33.679 [coze-task-3516] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8200:2026-05-12 14:33:33.680 [coze-task-3527] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8208:2026-05-12 14:33:33.681 [coze-task-3516] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:33:04 -aiimage-backend.log.2026-05-12.4:8211:2026-05-12 14:33:33.681 [coze-task-3527] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8347:2026-05-12 14:34:03.681 [coze-task-3533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8348:2026-05-12 14:34:03.681 [coze-task-3542] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8355:2026-05-12 14:34:03.683 [coze-task-3542] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8360:2026-05-12 14:34:03.691 [coze-task-3533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:8377:2026-05-12 14:34:03.842 [coze-task-3533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:8451:2026-05-12 14:34:25.708 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:8452:2026-05-12 14:34:25.714 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:8453:2026-05-12 14:34:25.735 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:8454:2026-05-12 14:34:25.735 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:8457:2026-05-12 14:34:25.993 [coze-task-3543] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=254 -aiimage-backend.log.2026-05-12.4:8498:2026-05-12 14:34:33.683 [coze-task-3546] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8508:2026-05-12 14:34:33.683 [coze-task-3557] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8516:2026-05-12 14:34:33.684 [coze-task-3557] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8517:2026-05-12 14:34:33.684 [coze-task-3546] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:34:04 -aiimage-backend.log.2026-05-12.4:8677:2026-05-12 14:35:03.685 [coze-task-3563] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8681:2026-05-12 14:35:03.685 [coze-task-3572] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8690:2026-05-12 14:35:03.686 [coze-task-3572] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8694:2026-05-12 14:35:03.695 [coze-task-3563] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:8701:2026-05-12 14:35:03.833 [coze-task-3563] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:8822:2026-05-12 14:35:33.686 [coze-task-3574] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8831:2026-05-12 14:35:33.687 [coze-task-3586] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8835:2026-05-12 14:35:33.688 [coze-task-3574] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:35:04 -aiimage-backend.log.2026-05-12.4:8840:2026-05-12 14:35:33.688 [coze-task-3586] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8976:2026-05-12 14:36:03.688 [coze-task-3592] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:8983:2026-05-12 14:36:03.688 [coze-task-3601] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:8991:2026-05-12 14:36:03.690 [coze-task-3601] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:8993:2026-05-12 14:36:03.696 [coze-task-3592] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:9001:2026-05-12 14:36:03.905 [coze-task-3592] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:9124:2026-05-12 14:36:33.690 [coze-task-3603] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:9136:2026-05-12 14:36:33.690 [coze-task-3615] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:9143:2026-05-12 14:36:33.692 [coze-task-3603] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:36:04 -aiimage-backend.log.2026-05-12.4:9144:2026-05-12 14:36:33.692 [coze-task-3615] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:9405:2026-05-12 14:37:03.691 [coze-task-3621] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:9414:2026-05-12 14:37:03.692 [coze-task-3628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:9422:2026-05-12 14:37:03.693 [coze-task-3628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:9423:2026-05-12 14:37:03.699 [coze-task-3621] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:9435:2026-05-12 14:37:03.841 [coze-task-3621] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:9556:2026-05-12 14:37:33.693 [coze-task-3630] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:9557:2026-05-12 14:37:33.693 [coze-task-3641] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:9568:2026-05-12 14:37:33.694 [coze-task-3630] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:37:04 -aiimage-backend.log.2026-05-12.4:9569:2026-05-12 14:37:33.694 [coze-task-3641] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:9707:2026-05-12 14:38:03.695 [coze-task-3653] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:9708:2026-05-12 14:38:03.695 [coze-task-3645] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:9715:2026-05-12 14:38:03.696 [coze-task-3653] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:9722:2026-05-12 14:38:03.705 [coze-task-3645] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:9727:2026-05-12 14:38:03.836 [coze-task-3645] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53229 executeId=7638888176475570227 status=RUNNING -aiimage-backend.log.2026-05-12.4:9846:2026-05-12 14:38:33.696 [coze-task-3655] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:9848:2026-05-12 14:38:33.696 [coze-task-3664] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:9856:2026-05-12 14:38:33.697 [coze-task-3664] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:9859:2026-05-12 14:38:33.698 [coze-task-3655] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53229 executeId=7638888176475570227 lastPolledAt=2026-05-12T14:38:04 -aiimage-backend.log.2026-05-12.4:9993:2026-05-12 14:39:03.698 [coze-task-3670] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53229 taskId=8095 executeId=7638888176475570227 -aiimage-backend.log.2026-05-12.4:9998:2026-05-12 14:39:03.698 [coze-task-3676] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:10004:2026-05-12 14:39:03.700 [coze-task-3676] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:10006:2026-05-12 14:39:03.707 [coze-task-3670] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53229 executeId=7638888176475570227 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:10019:2026-05-12 14:39:04.224 [coze-task-3670] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53229 executeId=7638888176475570227 status=DONE batchRows=25 mergedRows=25 failure=- -aiimage-backend.log.2026-05-12.4:10141:2026-05-12 14:39:33.701 [coze-task-3686] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:10147:2026-05-12 14:39:33.708 [coze-task-3686] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53228 executeId=7638888038387646479 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:10313:2026-05-12 14:40:03.702 [coze-task-3688] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:10318:2026-05-12 14:40:03.703 [coze-task-3688] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:10699:2026-05-12 14:40:33.703 [coze-task-3700] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:10706:2026-05-12 14:40:33.704 [coze-task-3700] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:11075:2026-05-12 14:41:03.705 [coze-task-3705] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53251 taskId=8095 executeId=7638891459924246568 -aiimage-backend.log.2026-05-12.4:11078:2026-05-12 14:41:03.705 [coze-task-3711] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53228 taskId=8095 executeId=7638888038387646479 -aiimage-backend.log.2026-05-12.4:11079:2026-05-12 14:41:03.706 [coze-task-3705] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53251 -aiimage-backend.log.2026-05-12.4:11080:2026-05-12 14:41:03.706 [coze-task-3711] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53228 -aiimage-backend.log.2026-05-12.4:11306:2026-05-12 14:41:21.491 [coze-task-3686] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53228 chunk=null batch=1/2 parts=2 retry=2/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:11308:2026-05-12 14:41:21.579 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:11309:2026-05-12 14:41:21.584 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:11310:2026-05-12 14:41:21.602 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:11311:2026-05-12 14:41:21.602 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:11316:2026-05-12 14:41:21.849 [coze-task-3714] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=244 -aiimage-backend.log.2026-05-12.4:11317:2026-05-12 14:41:22.003 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] duplicate chunk ignored taskId=8095 scope=8095 chunk=2856 -aiimage-backend.log.2026-05-12.4:11318:2026-05-12 14:41:22.005 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:11319:2026-05-12 14:41:22.008 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:11320:2026-05-12 14:41:22.028 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:11321:2026-05-12 14:41:22.028 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:11350:2026-05-12 14:41:22.492 [coze-task-3715] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=460 -aiimage-backend.log.2026-05-12.4:12238:2026-05-12 14:41:33.707 [coze-task-3716] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:12243:2026-05-12 14:41:33.707 [coze-task-3718] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53251 taskId=8095 executeId=7638891459924246568 -aiimage-backend.log.2026-05-12.4:12248:2026-05-12 14:41:33.708 [coze-task-3716] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53252 -aiimage-backend.log.2026-05-12.4:12253:2026-05-12 14:41:33.716 [coze-task-3718] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53251 executeId=7638891459924246568 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:12260:2026-05-12 14:41:33.873 [coze-task-3718] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53251 executeId=7638891459924246568 status=RUNNING -aiimage-backend.log.2026-05-12.4:12370:2026-05-12 14:42:03.709 [coze-task-3727] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:12375:2026-05-12 14:42:03.709 [coze-task-3726] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53251 taskId=8095 executeId=7638891459924246568 -aiimage-backend.log.2026-05-12.4:12377:2026-05-12 14:42:03.710 [coze-task-3726] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53251 -aiimage-backend.log.2026-05-12.4:12381:2026-05-12 14:42:03.716 [coze-task-3727] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53252 executeId=7638891597505183796 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:12390:2026-05-12 14:42:03.854 [coze-task-3727] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53252 executeId=7638891597505183796 status=RUNNING -aiimage-backend.log.2026-05-12.4:12506:2026-05-12 14:42:33.710 [coze-task-3735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:12509:2026-05-12 14:42:33.711 [coze-task-3738] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53251 taskId=8095 executeId=7638891459924246568 -aiimage-backend.log.2026-05-12.4:12514:2026-05-12 14:42:33.712 [coze-task-3738] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53251 -aiimage-backend.log.2026-05-12.4:12515:2026-05-12 14:42:33.712 [coze-task-3735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53252 executeId=7638891597505183796 lastPolledAt=2026-05-12T14:42:04 -aiimage-backend.log.2026-05-12.4:12638:2026-05-12 14:43:03.712 [coze-task-3747] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53251 taskId=8095 executeId=7638891459924246568 -aiimage-backend.log.2026-05-12.4:12642:2026-05-12 14:43:03.712 [coze-task-3745] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:12644:2026-05-12 14:43:03.713 [coze-task-3745] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53252 -aiimage-backend.log.2026-05-12.4:12648:2026-05-12 14:43:03.720 [coze-task-3747] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53251 executeId=7638891459924246568 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:12658:2026-05-12 14:43:04.296 [coze-task-3747] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53251 executeId=7638891459924246568 status=DONE batchRows=12 mergedRows=12 failure=- -aiimage-backend.log.2026-05-12.4:12779:2026-05-12 14:43:33.714 [coze-task-3755] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:12786:2026-05-12 14:43:33.723 [coze-task-3755] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53252 executeId=7638891597505183796 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:12791:2026-05-12 14:43:33.873 [coze-task-3755] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53252 executeId=7638891597505183796 status=RUNNING -aiimage-backend.log.2026-05-12.4:12911:2026-05-12 14:44:03.716 [coze-task-3757] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:12919:2026-05-12 14:44:03.717 [coze-task-3757] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53252 executeId=7638891597505183796 lastPolledAt=2026-05-12T14:43:34 -aiimage-backend.log.2026-05-12.4:13052:2026-05-12 14:44:33.717 [coze-task-3769] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53252 taskId=8095 executeId=7638891597505183796 -aiimage-backend.log.2026-05-12.4:13061:2026-05-12 14:44:33.729 [coze-task-3769] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53252 executeId=7638891597505183796 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:13069:2026-05-12 14:44:34.392 [coze-task-3769] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53252 executeId=7638891597505183796 status=DONE batchRows=13 mergedRows=13 failure=- -aiimage-backend.log.2026-05-12.4:13778:2026-05-12 14:47:25.844 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:13779:2026-05-12 14:47:25.849 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:13780:2026-05-12 14:47:25.869 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:13781:2026-05-12 14:47:25.869 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:14096:2026-05-12 14:48:34.709 [coze-task-3808] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/2 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:14234:2026-05-12 14:49:03.733 [coze-task-3833] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:14242:2026-05-12 14:49:03.734 [coze-task-3833] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:14250:2026-05-12 14:49:04.968 [coze-task-3808] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=2/2 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:14251:2026-05-12 14:49:04.976 [coze-task-3808] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=99104 -aiimage-backend.log.2026-05-12.4:14357:2026-05-12 14:49:33.735 [coze-task-3839] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:14359:2026-05-12 14:49:33.735 [coze-task-3841] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:14366:2026-05-12 14:49:33.736 [coze-task-3841] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:14369:2026-05-12 14:49:33.744 [coze-task-3839] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:14374:2026-05-12 14:49:33.875 [coze-task-3839] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:14518:2026-05-12 14:50:03.736 [coze-task-3848] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:14521:2026-05-12 14:50:03.736 [coze-task-3850] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:14525:2026-05-12 14:50:03.737 [coze-task-3850] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:14526:2026-05-12 14:50:03.738 [coze-task-3848] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53262 executeId=7638893580417957894 lastPolledAt=2026-05-12T14:49:34 -aiimage-backend.log.2026-05-12.4:14852:2026-05-12 14:50:33.738 [coze-task-3857] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:14853:2026-05-12 14:50:33.738 [coze-task-3858] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:14857:2026-05-12 14:50:33.739 [coze-task-3857] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:14862:2026-05-12 14:50:33.748 [coze-task-3858] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:14868:2026-05-12 14:50:33.895 [coze-task-3858] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53261 executeId=7638893455112732691 status=RUNNING -aiimage-backend.log.2026-05-12.4:15199:2026-05-12 14:51:03.739 [coze-task-3864] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:15204:2026-05-12 14:51:03.739 [coze-task-3867] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:15208:2026-05-12 14:51:03.741 [coze-task-3867] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:15209:2026-05-12 14:51:03.741 [coze-task-3864] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53261 executeId=7638893455112732691 lastPolledAt=2026-05-12T14:50:34 -aiimage-backend.log.2026-05-12.4:15554:2026-05-12 14:51:33.741 [coze-task-3875] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:15557:2026-05-12 14:51:33.741 [coze-task-3877] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:15560:2026-05-12 14:51:33.742 [coze-task-3877] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:15565:2026-05-12 14:51:33.750 [coze-task-3875] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:15570:2026-05-12 14:51:33.969 [coze-task-3875] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53261 executeId=7638893455112732691 status=RUNNING -aiimage-backend.log.2026-05-12.4:15890:2026-05-12 14:52:03.743 [coze-task-3880] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:15891:2026-05-12 14:52:03.743 [coze-task-3886] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:15896:2026-05-12 14:52:03.744 [coze-task-3880] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:15902:2026-05-12 14:52:03.752 [coze-task-3886] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:15911:2026-05-12 14:52:03.981 [coze-task-3886] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:16256:2026-05-12 14:52:33.745 [coze-task-3889] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:16257:2026-05-12 14:52:33.745 [coze-task-3892] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:16262:2026-05-12 14:52:33.746 [coze-task-3889] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:16268:2026-05-12 14:52:33.752 [coze-task-3892] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:16275:2026-05-12 14:52:33.971 [coze-task-3892] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53261 executeId=7638893455112732691 status=RUNNING -aiimage-backend.log.2026-05-12.4:17211:2026-05-12 14:53:03.747 [coze-task-3899] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:17212:2026-05-12 14:53:03.747 [coze-task-3896] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:17218:2026-05-12 14:53:03.748 [coze-task-3896] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:17220:2026-05-12 14:53:03.754 [coze-task-3899] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:17234:2026-05-12 14:53:03.946 [coze-task-3899] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:17321:2026-05-12 14:53:31.439 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:17322:2026-05-12 14:53:31.444 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:17323:2026-05-12 14:53:31.465 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:17324:2026-05-12 14:53:31.465 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:17327:2026-05-12 14:53:31.753 [coze-task-3903] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=284 -aiimage-backend.log.2026-05-12.4:17356:2026-05-12 14:53:33.749 [coze-task-3910] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:17357:2026-05-12 14:53:33.749 [coze-task-3907] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:17362:2026-05-12 14:53:33.750 [coze-task-3910] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:17366:2026-05-12 14:53:33.750 [coze-task-3907] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53262 executeId=7638893580417957894 lastPolledAt=2026-05-12T14:53:04 -aiimage-backend.log.2026-05-12.4:17616:2026-05-12 14:54:03.750 [coze-task-3919] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:17617:2026-05-12 14:54:03.750 [coze-task-3917] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:17621:2026-05-12 14:54:03.751 [coze-task-3919] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:17625:2026-05-12 14:54:03.759 [coze-task-3917] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:17630:2026-05-12 14:54:03.883 [coze-task-3917] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:17753:2026-05-12 14:54:33.752 [coze-task-3929] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:17755:2026-05-12 14:54:33.752 [coze-task-3925] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:17760:2026-05-12 14:54:33.753 [coze-task-3925] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:17765:2026-05-12 14:54:33.761 [coze-task-3929] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:17770:2026-05-12 14:54:33.909 [coze-task-3929] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53261 executeId=7638893455112732691 status=RUNNING -aiimage-backend.log.2026-05-12.4:18145:2026-05-12 14:55:03.754 [coze-task-3938] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:18148:2026-05-12 14:55:03.754 [coze-task-3933] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:18156:2026-05-12 14:55:03.755 [coze-task-3933] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:18160:2026-05-12 14:55:03.763 [coze-task-3938] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:18172:2026-05-12 14:55:03.987 [coze-task-3938] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:18292:2026-05-12 14:55:33.755 [coze-task-3943] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:18293:2026-05-12 14:55:33.755 [coze-task-3948] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:18299:2026-05-12 14:55:33.756 [coze-task-3943] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:18302:2026-05-12 14:55:33.763 [coze-task-3948] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:18308:2026-05-12 14:55:33.972 [coze-task-3948] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53261 executeId=7638893455112732691 status=RUNNING -aiimage-backend.log.2026-05-12.4:18435:2026-05-12 14:56:03.756 [coze-task-3956] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:18441:2026-05-12 14:56:03.756 [coze-task-3960] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:18445:2026-05-12 14:56:03.757 [coze-task-3960] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:18449:2026-05-12 14:56:03.757 [coze-task-3956] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53261 executeId=7638893455112732691 lastPolledAt=2026-05-12T14:55:34 -aiimage-backend.log.2026-05-12.4:18576:2026-05-12 14:56:33.758 [coze-task-3972] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:18579:2026-05-12 14:56:33.758 [coze-task-3969] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:18585:2026-05-12 14:56:33.759 [coze-task-3972] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:18591:2026-05-12 14:56:33.767 [coze-task-3969] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:18594:2026-05-12 14:56:33.874 [coze-task-3969] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53261 executeId=7638893455112732691 status=RUNNING -aiimage-backend.log.2026-05-12.4:18837:2026-05-12 14:57:03.759 [coze-task-3975] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:18840:2026-05-12 14:57:03.759 [coze-task-3982] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:18849:2026-05-12 14:57:03.760 [coze-task-3982] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:18851:2026-05-12 14:57:03.760 [coze-task-3975] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53261 executeId=7638893455112732691 lastPolledAt=2026-05-12T14:56:34 -aiimage-backend.log.2026-05-12.4:18974:2026-05-12 14:57:33.761 [coze-task-3988] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:18976:2026-05-12 14:57:33.761 [coze-task-3992] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:18983:2026-05-12 14:57:33.762 [coze-task-3988] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:18988:2026-05-12 14:57:33.769 [coze-task-3992] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:18991:2026-05-12 14:57:33.901 [coze-task-3992] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:19104:2026-05-12 14:58:03.763 [coze-task-3995] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:19108:2026-05-12 14:58:03.763 [coze-task-4000] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:19117:2026-05-12 14:58:03.764 [coze-task-4000] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:19119:2026-05-12 14:58:03.764 [coze-task-3995] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53262 executeId=7638893580417957894 lastPolledAt=2026-05-12T14:57:34 -aiimage-backend.log.2026-05-12.4:19242:2026-05-12 14:58:33.764 [coze-task-4008] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:19245:2026-05-12 14:58:33.764 [coze-task-4011] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:19252:2026-05-12 14:58:33.766 [coze-task-4011] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:19258:2026-05-12 14:58:33.772 [coze-task-4008] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:19264:2026-05-12 14:58:33.882 [coze-task-4008] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53262 executeId=7638893580417957894 status=RUNNING -aiimage-backend.log.2026-05-12.4:19375:2026-05-12 14:59:03.766 [coze-task-4016] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:19383:2026-05-12 14:59:03.766 [coze-task-4022] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:19386:2026-05-12 14:59:03.768 [coze-task-4022] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:19390:2026-05-12 14:59:03.768 [coze-task-4016] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53262 executeId=7638893580417957894 lastPolledAt=2026-05-12T14:58:34 -aiimage-backend.log.2026-05-12.4:19509:2026-05-12 14:59:33.768 [coze-task-4032] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:19517:2026-05-12 14:59:33.768 [coze-task-4028] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:19522:2026-05-12 14:59:33.769 [coze-task-4028] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:19526:2026-05-12 14:59:33.775 [coze-task-4032] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53261 executeId=7638893455112732691 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:19670:2026-05-12 15:00:03.770 [coze-task-4036] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:19672:2026-05-12 15:00:03.770 [coze-task-4041] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:19680:2026-05-12 15:00:03.771 [coze-task-4036] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:19682:2026-05-12 15:00:03.771 [coze-task-4041] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:20024:2026-05-12 15:00:33.771 [coze-task-4051] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53261 taskId=8095 executeId=7638893455112732691 -aiimage-backend.log.2026-05-12.4:20025:2026-05-12 15:00:33.771 [coze-task-4050] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:20032:2026-05-12 15:00:33.771 [coze-task-4055] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:20033:2026-05-12 15:00:33.772 [coze-task-4051] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53261 -aiimage-backend.log.2026-05-12.4:20034:2026-05-12 15:00:33.772 [coze-task-4050] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:20039:2026-05-12 15:00:33.773 [coze-task-4055] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:20055:2026-05-12 15:00:34.522 [coze-task-4032] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53261 chunk=null batch=1/2 parts=2 retry=1/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:20056:2026-05-12 15:00:34.683 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:20057:2026-05-12 15:00:34.688 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:20058:2026-05-12 15:00:34.709 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:20059:2026-05-12 15:00:34.709 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:20064:2026-05-12 15:00:34.919 [coze-task-4058] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=207 -aiimage-backend.log.2026-05-12.4:20065:2026-05-12 15:00:35.116 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] duplicate chunk ignored taskId=8095 scope=8095 chunk=2919 -aiimage-backend.log.2026-05-12.4:20066:2026-05-12 15:00:35.118 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:20067:2026-05-12 15:00:35.121 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:20068:2026-05-12 15:00:35.140 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:20069:2026-05-12 15:00:35.140 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:20076:2026-05-12 15:00:35.362 [coze-task-4059] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=219 -aiimage-backend.log.2026-05-12.4:20388:2026-05-12 15:01:03.773 [coze-task-4061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:20391:2026-05-12 15:01:03.773 [coze-task-4069] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:20394:2026-05-12 15:01:03.773 [coze-task-4067] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:20399:2026-05-12 15:01:03.775 [coze-task-4061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:20400:2026-05-12 15:01:03.775 [coze-task-4069] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:20409:2026-05-12 15:01:03.783 [coze-task-4067] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53273 executeId=7638896417260339206 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:20413:2026-05-12 15:01:03.936 [coze-task-4067] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53273 executeId=7638896417260339206 status=RUNNING -aiimage-backend.log.2026-05-12.4:20756:2026-05-12 15:01:33.775 [coze-task-4075] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:20757:2026-05-12 15:01:33.775 [coze-task-4081] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:20759:2026-05-12 15:01:33.775 [coze-task-4076] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:20762:2026-05-12 15:01:33.776 [coze-task-4075] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:20767:2026-05-12 15:01:33.777 [coze-task-4076] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:20771:2026-05-12 15:01:33.784 [coze-task-4081] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53262 executeId=7638893580417957894 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:21855:2026-05-12 15:02:03.777 [coze-task-4085] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:21857:2026-05-12 15:02:03.777 [coze-task-4093] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:21864:2026-05-12 15:02:03.777 [coze-task-4092] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:21865:2026-05-12 15:02:03.778 [coze-task-4085] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:21867:2026-05-12 15:02:03.778 [coze-task-4093] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:21875:2026-05-12 15:02:03.778 [coze-task-4092] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:22025:2026-05-12 15:02:33.779 [coze-task-4099] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:22027:2026-05-12 15:02:33.779 [coze-task-4107] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22028:2026-05-12 15:02:33.779 [coze-task-4106] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22033:2026-05-12 15:02:33.780 [coze-task-4107] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:22037:2026-05-12 15:02:33.780 [coze-task-4106] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:22039:2026-05-12 15:02:33.781 [coze-task-4099] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:22167:2026-05-12 15:03:03.781 [coze-task-4120] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22169:2026-05-12 15:03:03.781 [coze-task-4121] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22171:2026-05-12 15:03:03.781 [coze-task-4116] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53262 taskId=8095 executeId=7638893580417957894 -aiimage-backend.log.2026-05-12.4:22175:2026-05-12 15:03:03.781 [coze-task-4110] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:22176:2026-05-12 15:03:03.782 [coze-task-4121] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:22178:2026-05-12 15:03:03.782 [coze-task-4120] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:22179:2026-05-12 15:03:03.782 [coze-task-4116] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53262 -aiimage-backend.log.2026-05-12.4:22183:2026-05-12 15:03:03.782 [coze-task-4110] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53278 -aiimage-backend.log.2026-05-12.4:22276:2026-05-12 15:03:31.556 [coze-task-4081] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53262 chunk=null batch=2/2 parts=2 retry=1/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:22305:2026-05-12 15:03:33.783 [coze-task-4124] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:22306:2026-05-12 15:03:33.783 [coze-task-4127] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:22312:2026-05-12 15:03:33.783 [coze-task-4136] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22318:2026-05-12 15:03:33.783 [coze-task-4135] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22321:2026-05-12 15:03:33.784 [coze-task-4127] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53278 -aiimage-backend.log.2026-05-12.4:22322:2026-05-12 15:03:33.784 [coze-task-4124] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:22326:2026-05-12 15:03:33.784 [coze-task-4135] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:22331:2026-05-12 15:03:33.793 [coze-task-4136] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53274 executeId=7638896544385744911 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:22340:2026-05-12 15:03:33.924 [coze-task-4136] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53274 executeId=7638896544385744911 status=RUNNING -aiimage-backend.log.2026-05-12.4:22451:2026-05-12 15:04:03.785 [coze-task-4141] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22452:2026-05-12 15:04:03.785 [coze-task-4143] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:22456:2026-05-12 15:04:03.785 [coze-task-4146] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:22462:2026-05-12 15:04:03.786 [coze-task-4151] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22465:2026-05-12 15:04:03.786 [coze-task-4143] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:22466:2026-05-12 15:04:03.786 [coze-task-4141] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:22469:2026-05-12 15:04:03.787 [coze-task-4151] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:22474:2026-05-12 15:04:03.792 [coze-task-4146] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53278 executeId=7638897179176157218 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:22481:2026-05-12 15:04:03.918 [coze-task-4146] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53278 executeId=7638897179176157218 status=RUNNING -aiimage-backend.log.2026-05-12.4:22596:2026-05-12 15:04:33.787 [coze-task-4154] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:22604:2026-05-12 15:04:33.787 [coze-task-4158] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22605:2026-05-12 15:04:33.787 [coze-task-4160] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:22608:2026-05-12 15:04:33.787 [coze-task-4165] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22612:2026-05-12 15:04:33.789 [coze-task-4160] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:22613:2026-05-12 15:04:33.789 [coze-task-4158] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:22614:2026-05-12 15:04:33.789 [coze-task-4165] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53273 -aiimage-backend.log.2026-05-12.4:22617:2026-05-12 15:04:33.789 [coze-task-4154] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53278 executeId=7638897179176157218 lastPolledAt=2026-05-12T15:04:04 -aiimage-backend.log.2026-05-12.4:22747:2026-05-12 15:05:03.789 [coze-task-4177] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:22748:2026-05-12 15:05:03.789 [coze-task-4180] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22756:2026-05-12 15:05:03.789 [coze-task-4172] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:22759:2026-05-12 15:05:03.789 [coze-task-4175] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22760:2026-05-12 15:05:03.790 [coze-task-4177] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:22766:2026-05-12 15:05:03.791 [coze-task-4175] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:22768:2026-05-12 15:05:03.791 [coze-task-4172] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53278 -aiimage-backend.log.2026-05-12.4:22772:2026-05-12 15:05:03.798 [coze-task-4180] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53273 executeId=7638896417260339206 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:22776:2026-05-12 15:05:03.939 [coze-task-4180] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53273 executeId=7638896417260339206 status=RUNNING -aiimage-backend.log.2026-05-12.4:22914:2026-05-12 15:05:33.791 [coze-task-4181] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:22922:2026-05-12 15:05:33.791 [coze-task-4189] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:22924:2026-05-12 15:05:33.791 [coze-task-4191] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:22926:2026-05-12 15:05:33.791 [coze-task-4193] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:22930:2026-05-12 15:05:33.792 [coze-task-4189] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53278 -aiimage-backend.log.2026-05-12.4:22932:2026-05-12 15:05:33.792 [coze-task-4193] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:22936:2026-05-12 15:05:33.792 [coze-task-4191] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:22938:2026-05-12 15:05:33.792 [coze-task-4181] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53273 executeId=7638896417260339206 lastPolledAt=2026-05-12T15:05:04 -aiimage-backend.log.2026-05-12.4:23064:2026-05-12 15:06:03.792 [coze-task-4197] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53273 taskId=8095 executeId=7638896417260339206 -aiimage-backend.log.2026-05-12.4:23069:2026-05-12 15:06:03.792 [coze-task-4202] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:23071:2026-05-12 15:06:03.793 [coze-task-4204] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:23072:2026-05-12 15:06:03.793 [coze-task-4206] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:23077:2026-05-12 15:06:03.794 [coze-task-4202] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53278 -aiimage-backend.log.2026-05-12.4:23078:2026-05-12 15:06:03.794 [coze-task-4204] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53274 -aiimage-backend.log.2026-05-12.4:23079:2026-05-12 15:06:03.794 [coze-task-4206] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:23086:2026-05-12 15:06:03.802 [coze-task-4197] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53273 executeId=7638896417260339206 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:23100:2026-05-12 15:06:04.249 [coze-task-4197] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53273 executeId=7638896417260339206 status=DONE batchRows=25 mergedRows=25 failure=- -aiimage-backend.log.2026-05-12.4:23221:2026-05-12 15:06:33.795 [coze-task-4215] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53274 taskId=8095 executeId=7638896544385744911 -aiimage-backend.log.2026-05-12.4:23223:2026-05-12 15:06:33.795 [coze-task-4217] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:23225:2026-05-12 15:06:33.795 [coze-task-4214] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:23228:2026-05-12 15:06:33.796 [coze-task-4217] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:23231:2026-05-12 15:06:33.796 [coze-task-4214] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53278 -aiimage-backend.log.2026-05-12.4:23234:2026-05-12 15:06:33.802 [coze-task-4215] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53274 executeId=7638896544385744911 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:23240:2026-05-12 15:06:35.393 [coze-task-4215] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53274 executeId=7638896544385744911 status=DONE batchRows=25 mergedRows=25 failure=- -aiimage-backend.log.2026-05-12.4:23279:2026-05-12 15:06:51.137 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:23280:2026-05-12 15:06:51.142 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:23281:2026-05-12 15:06:51.162 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:23282:2026-05-12 15:06:51.162 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:23284:2026-05-12 15:06:51.450 [coze-task-4220] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=284 -aiimage-backend.log.2026-05-12.4:23357:2026-05-12 15:07:03.796 [coze-task-4224] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53278 taskId=8095 executeId=7638897179176157218 -aiimage-backend.log.2026-05-12.4:23361:2026-05-12 15:07:03.796 [coze-task-4226] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:23363:2026-05-12 15:07:03.798 [coze-task-4226] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53279 -aiimage-backend.log.2026-05-12.4:23367:2026-05-12 15:07:03.805 [coze-task-4224] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53278 executeId=7638897179176157218 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:23378:2026-05-12 15:07:04.868 [coze-task-4224] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53278 executeId=7638897179176157218 status=DONE batchRows=25 mergedRows=25 failure=- -aiimage-backend.log.2026-05-12.4:23490:2026-05-12 15:07:33.798 [coze-task-4233] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53279 taskId=8095 executeId=7638897305106317346 -aiimage-backend.log.2026-05-12.4:23498:2026-05-12 15:07:33.805 [coze-task-4233] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53279 executeId=7638897305106317346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:23503:2026-05-12 15:07:35.104 [coze-task-4233] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53279 executeId=7638897305106317346 status=DONE batchRows=25 mergedRows=25 failure=- -aiimage-backend.log.2026-05-12.4:26280:2026-05-12 15:13:05.580 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:26281:2026-05-12 15:13:05.585 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:26282:2026-05-12 15:13:05.611 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:26283:2026-05-12 15:13:05.611 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:26472:2026-05-12 15:14:01.858 [coze-task-4260] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/2 executeId=7638900007257931811 -aiimage-backend.log.2026-05-12.4:26499:2026-05-12 15:14:03.819 [coze-task-4264] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53289 taskId=8095 executeId=7638900007257931811 -aiimage-backend.log.2026-05-12.4:26502:2026-05-12 15:14:03.820 [coze-task-4264] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53289 -aiimage-backend.log.2026-05-12.4:26584:2026-05-12 15:14:32.122 [coze-task-4260] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=2/2 executeId=7638900142922153990 -aiimage-backend.log.2026-05-12.4:26585:2026-05-12 15:14:32.129 [coze-task-4260] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=86514 -aiimage-backend.log.2026-05-12.4:26610:2026-05-12 15:14:33.821 [coze-task-4267] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53290 taskId=8095 executeId=7638900142922153990 -aiimage-backend.log.2026-05-12.4:26611:2026-05-12 15:14:33.821 [coze-task-4268] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53289 taskId=8095 executeId=7638900007257931811 -aiimage-backend.log.2026-05-12.4:26613:2026-05-12 15:14:33.822 [coze-task-4267] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53290 -aiimage-backend.log.2026-05-12.4:26614:2026-05-12 15:14:33.827 [coze-task-4268] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53289 executeId=7638900007257931811 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:26617:2026-05-12 15:14:33.970 [coze-task-4268] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53289 executeId=7638900007257931811 status=RUNNING -aiimage-backend.log.2026-05-12.4:26721:2026-05-12 15:15:03.822 [coze-task-4270] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53289 taskId=8095 executeId=7638900007257931811 -aiimage-backend.log.2026-05-12.4:26722:2026-05-12 15:15:03.822 [coze-task-4271] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53290 taskId=8095 executeId=7638900142922153990 -aiimage-backend.log.2026-05-12.4:26723:2026-05-12 15:15:03.824 [coze-task-4270] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53289 -aiimage-backend.log.2026-05-12.4:26724:2026-05-12 15:15:03.830 [coze-task-4271] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53290 executeId=7638900142922153990 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:26726:2026-05-12 15:15:03.987 [coze-task-4271] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53290 executeId=7638900142922153990 status=RUNNING -aiimage-backend.log.2026-05-12.4:26834:2026-05-12 15:15:33.824 [coze-task-4273] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53290 taskId=8095 executeId=7638900142922153990 -aiimage-backend.log.2026-05-12.4:26835:2026-05-12 15:15:33.824 [coze-task-4274] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53289 taskId=8095 executeId=7638900007257931811 -aiimage-backend.log.2026-05-12.4:26836:2026-05-12 15:15:33.825 [coze-task-4273] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53290 -aiimage-backend.log.2026-05-12.4:26837:2026-05-12 15:15:33.831 [coze-task-4274] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53289 executeId=7638900007257931811 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:26840:2026-05-12 15:15:34.340 [coze-task-4274] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53289 executeId=7638900007257931811 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:26944:2026-05-12 15:16:03.825 [coze-task-4276] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53290 taskId=8095 executeId=7638900142922153990 -aiimage-backend.log.2026-05-12.4:26945:2026-05-12 15:16:03.833 [coze-task-4276] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53290 executeId=7638900142922153990 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:26951:2026-05-12 15:16:04.566 [coze-task-4276] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53290 executeId=7638900142922153990 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:27931:2026-05-12 15:19:35.393 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:27932:2026-05-12 15:19:35.398 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:27933:2026-05-12 15:19:35.417 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:27934:2026-05-12 15:19:35.418 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:27940:2026-05-12 15:19:36.979 [coze-task-4281] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=27 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.4:27941:2026-05-12 15:19:36.990 [coze-task-4281] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1569 -aiimage-backend.log.2026-05-12.4:30817:2026-05-12 15:26:09.974 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:30818:2026-05-12 15:26:09.979 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:30819:2026-05-12 15:26:09.998 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:30820:2026-05-12 15:26:09.998 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:30823:2026-05-12 15:26:11.283 [coze-task-4293] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=48 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.4:30824:2026-05-12 15:26:11.294 [coze-task-4293] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1293 -aiimage-backend.log.2026-05-12.4:34234:2026-05-12 15:32:43.061 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:34235:2026-05-12 15:32:43.066 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:34236:2026-05-12 15:32:43.086 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:34237:2026-05-12 15:32:43.086 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:35140:2026-05-12 15:33:14.911 [coze-task-4304] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638904966128320554 -aiimage-backend.log.2026-05-12.4:35141:2026-05-12 15:33:14.921 [coze-task-4304] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31832 -aiimage-backend.log.2026-05-12.4:35212:2026-05-12 15:33:33.882 [coze-task-4306] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53294 taskId=8095 executeId=7638904966128320554 -aiimage-backend.log.2026-05-12.4:35213:2026-05-12 15:33:33.889 [coze-task-4306] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53294 executeId=7638904966128320554 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:35215:2026-05-12 15:33:34.105 [coze-task-4306] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53294 executeId=7638904966128320554 status=RUNNING -aiimage-backend.log.2026-05-12.4:35319:2026-05-12 15:34:03.884 [coze-task-4307] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53294 taskId=8095 executeId=7638904966128320554 -aiimage-backend.log.2026-05-12.4:35320:2026-05-12 15:34:03.885 [coze-task-4307] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53294 executeId=7638904966128320554 lastPolledAt=2026-05-12T15:33:34 -aiimage-backend.log.2026-05-12.4:35422:2026-05-12 15:34:33.885 [coze-task-4308] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53294 taskId=8095 executeId=7638904966128320554 -aiimage-backend.log.2026-05-12.4:35423:2026-05-12 15:34:33.893 [coze-task-4308] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53294 executeId=7638904966128320554 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:35426:2026-05-12 15:34:34.440 [coze-task-4308] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53294 executeId=7638904966128320554 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:36499:2026-05-12 15:39:04.724 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:36500:2026-05-12 15:39:04.731 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:36501:2026-05-12 15:39:04.755 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:36502:2026-05-12 15:39:04.755 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:36506:2026-05-12 15:39:06.357 [coze-task-4312] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=40 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.4:36507:2026-05-12 15:39:06.367 [coze-task-4312] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=1609 -aiimage-backend.log.2026-05-12.4:39443:2026-05-12 15:45:24.155 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:39444:2026-05-12 15:45:24.160 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:39445:2026-05-12 15:45:24.179 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:39446:2026-05-12 15:45:24.179 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:39566:2026-05-12 15:45:55.991 [coze-task-4317] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:39567:2026-05-12 15:45:56.000 [coze-task-4317] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31817 -aiimage-backend.log.2026-05-12.4:39609:2026-05-12 15:46:03.919 [coze-task-4318] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:39610:2026-05-12 15:46:03.926 [coze-task-4318] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:39612:2026-05-12 15:46:04.065 [coze-task-4318] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:39723:2026-05-12 15:46:33.921 [coze-task-4319] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:39724:2026-05-12 15:46:33.922 [coze-task-4319] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:46:04 -aiimage-backend.log.2026-05-12.4:39835:2026-05-12 15:47:03.922 [coze-task-4320] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:39836:2026-05-12 15:47:03.929 [coze-task-4320] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:39838:2026-05-12 15:47:04.080 [coze-task-4320] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:39955:2026-05-12 15:47:33.923 [coze-task-4321] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:39956:2026-05-12 15:47:33.925 [coze-task-4321] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:47:04 -aiimage-backend.log.2026-05-12.4:40066:2026-05-12 15:48:03.925 [coze-task-4322] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:40067:2026-05-12 15:48:03.931 [coze-task-4322] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:40069:2026-05-12 15:48:04.068 [coze-task-4322] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:40185:2026-05-12 15:48:33.926 [coze-task-4324] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:40186:2026-05-12 15:48:33.928 [coze-task-4324] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:48:04 -aiimage-backend.log.2026-05-12.4:40296:2026-05-12 15:49:03.928 [coze-task-4326] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:40298:2026-05-12 15:49:03.936 [coze-task-4326] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:40304:2026-05-12 15:49:04.083 [coze-task-4326] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:40430:2026-05-12 15:49:33.929 [coze-task-4328] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:40432:2026-05-12 15:49:33.931 [coze-task-4328] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:49:04 -aiimage-backend.log.2026-05-12.4:40577:2026-05-12 15:50:03.931 [coze-task-4330] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:40579:2026-05-12 15:50:03.938 [coze-task-4330] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:40582:2026-05-12 15:50:04.075 [coze-task-4330] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:40940:2026-05-12 15:50:33.933 [coze-task-4332] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:40943:2026-05-12 15:50:33.935 [coze-task-4332] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:50:04 -aiimage-backend.log.2026-05-12.4:41292:2026-05-12 15:51:03.934 [coze-task-4335] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:41294:2026-05-12 15:51:03.941 [coze-task-4335] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:41297:2026-05-12 15:51:04.078 [coze-task-4335] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:42121:2026-05-12 15:51:33.935 [coze-task-4337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:42124:2026-05-12 15:51:33.937 [coze-task-4337] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:51:04 -aiimage-backend.log.2026-05-12.4:42437:2026-05-12 15:51:41.969 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:42438:2026-05-12 15:51:41.974 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:42439:2026-05-12 15:51:41.993 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:42440:2026-05-12 15:51:41.993 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:42442:2026-05-12 15:51:42.318 [coze-task-4339] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=321 -aiimage-backend.log.2026-05-12.4:42552:2026-05-12 15:52:03.937 [coze-task-4340] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:42553:2026-05-12 15:52:03.944 [coze-task-4340] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:42560:2026-05-12 15:52:04.116 [coze-task-4340] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:42686:2026-05-12 15:52:33.939 [coze-task-4343] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:42687:2026-05-12 15:52:33.940 [coze-task-4343] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:52:04 -aiimage-backend.log.2026-05-12.4:42806:2026-05-12 15:53:03.941 [coze-task-4345] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:42807:2026-05-12 15:53:03.948 [coze-task-4345] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:42810:2026-05-12 15:53:04.075 [coze-task-4345] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:42942:2026-05-12 15:53:33.942 [coze-task-4347] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:42944:2026-05-12 15:53:33.944 [coze-task-4347] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:53:04 -aiimage-backend.log.2026-05-12.4:43063:2026-05-12 15:54:03.944 [coze-task-4349] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43066:2026-05-12 15:54:03.952 [coze-task-4349] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:43069:2026-05-12 15:54:04.111 [coze-task-4349] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:43214:2026-05-12 15:54:33.946 [coze-task-4354] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43216:2026-05-12 15:54:33.948 [coze-task-4354] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:54:04 -aiimage-backend.log.2026-05-12.4:43337:2026-05-12 15:55:03.948 [coze-task-4356] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43338:2026-05-12 15:55:03.955 [coze-task-4356] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:43341:2026-05-12 15:55:04.189 [coze-task-4356] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53298 executeId=7638908231767883786 status=RUNNING -aiimage-backend.log.2026-05-12.4:43472:2026-05-12 15:55:33.949 [coze-task-4358] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43475:2026-05-12 15:55:33.951 [coze-task-4358] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53298 executeId=7638908231767883786 lastPolledAt=2026-05-12T15:55:04 -aiimage-backend.log.2026-05-12.4:43638:2026-05-12 15:56:03.951 [coze-task-4362] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43641:2026-05-12 15:56:03.959 [coze-task-4362] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53298 executeId=7638908231767883786 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:43773:2026-05-12 15:56:33.953 [coze-task-4364] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43774:2026-05-12 15:56:33.954 [coze-task-4364] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53298 -aiimage-backend.log.2026-05-12.4:43943:2026-05-12 15:57:03.954 [coze-task-4367] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:43945:2026-05-12 15:57:03.954 [coze-task-4368] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53298 taskId=8095 executeId=7638908231767883786 -aiimage-backend.log.2026-05-12.4:43946:2026-05-12 15:57:03.956 [coze-task-4368] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53298 -aiimage-backend.log.2026-05-12.4:43947:2026-05-12 15:57:03.956 [coze-task-4367] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:43951:2026-05-12 15:57:04.613 [coze-task-4362] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53298 chunk=null batch=1/1 parts=2 retry=1/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:44076:2026-05-12 15:57:33.956 [coze-task-4370] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:44078:2026-05-12 15:57:33.956 [coze-task-4372] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:44079:2026-05-12 15:57:33.957 [coze-task-4372] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:44081:2026-05-12 15:57:33.962 [coze-task-4370] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53313 executeId=7638911109181325346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:44084:2026-05-12 15:57:34.094 [coze-task-4370] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53313 executeId=7638911109181325346 status=RUNNING -aiimage-backend.log.2026-05-12.4:44179:2026-05-12 15:58:00.453 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:44180:2026-05-12 15:58:00.458 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:44181:2026-05-12 15:58:00.476 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:44182:2026-05-12 15:58:00.476 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:44184:2026-05-12 15:58:00.693 [coze-task-4373] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=213 -aiimage-backend.log.2026-05-12.4:44213:2026-05-12 15:58:03.958 [coze-task-4374] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:44214:2026-05-12 15:58:03.958 [coze-task-4376] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:44215:2026-05-12 15:58:03.959 [coze-task-4376] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:44216:2026-05-12 15:58:03.959 [coze-task-4374] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53313 executeId=7638911109181325346 lastPolledAt=2026-05-12T15:57:34 -aiimage-backend.log.2026-05-12.4:44347:2026-05-12 15:58:33.959 [coze-task-4378] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:44348:2026-05-12 15:58:33.959 [coze-task-4379] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:44349:2026-05-12 15:58:33.960 [coze-task-4378] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:44351:2026-05-12 15:58:33.966 [coze-task-4379] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53310 executeId=7638910982386958363 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:44353:2026-05-12 15:58:34.105 [coze-task-4379] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53310 executeId=7638910982386958363 status=RUNNING -aiimage-backend.log.2026-05-12.4:44493:2026-05-12 15:59:03.961 [coze-task-4382] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:44495:2026-05-12 15:59:03.961 [coze-task-4384] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:44496:2026-05-12 15:59:03.962 [coze-task-4384] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:44497:2026-05-12 15:59:03.962 [coze-task-4382] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53310 executeId=7638910982386958363 lastPolledAt=2026-05-12T15:58:34 -aiimage-backend.log.2026-05-12.4:44626:2026-05-12 15:59:33.962 [coze-task-4386] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:44627:2026-05-12 15:59:33.962 [coze-task-4387] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:44629:2026-05-12 15:59:33.964 [coze-task-4386] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:44630:2026-05-12 15:59:33.969 [coze-task-4387] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53313 executeId=7638911109181325346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:44632:2026-05-12 15:59:34.205 [coze-task-4387] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53313 executeId=7638911109181325346 status=RUNNING -aiimage-backend.log.2026-05-12.4:44794:2026-05-12 16:00:03.964 [coze-task-4389] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:44796:2026-05-12 16:00:03.964 [coze-task-4392] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:44799:2026-05-12 16:00:03.965 [coze-task-4392] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:44801:2026-05-12 16:00:03.965 [coze-task-4389] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53313 executeId=7638911109181325346 lastPolledAt=2026-05-12T15:59:34 -aiimage-backend.log.2026-05-12.4:45168:2026-05-12 16:00:33.965 [coze-task-4394] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:45169:2026-05-12 16:00:33.965 [coze-task-4396] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:45171:2026-05-12 16:00:33.966 [coze-task-4394] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:45173:2026-05-12 16:00:33.972 [coze-task-4396] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53310 executeId=7638910982386958363 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:45180:2026-05-12 16:00:34.115 [coze-task-4396] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53310 executeId=7638910982386958363 status=RUNNING -aiimage-backend.log.2026-05-12.4:45548:2026-05-12 16:01:03.966 [coze-task-4399] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:45551:2026-05-12 16:01:03.966 [coze-task-4402] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:45552:2026-05-12 16:01:03.967 [coze-task-4402] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:45553:2026-05-12 16:01:03.967 [coze-task-4399] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53310 executeId=7638910982386958363 lastPolledAt=2026-05-12T16:00:34 -aiimage-backend.log.2026-05-12.4:45928:2026-05-12 16:01:33.967 [coze-task-4404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:45929:2026-05-12 16:01:33.967 [coze-task-4406] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:45933:2026-05-12 16:01:33.968 [coze-task-4404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:45934:2026-05-12 16:01:33.974 [coze-task-4406] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53313 executeId=7638911109181325346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:45979:2026-05-12 16:01:34.125 [coze-task-4406] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53313 executeId=7638911109181325346 status=RUNNING -aiimage-backend.log.2026-05-12.4:46860:2026-05-12 16:02:03.969 [coze-task-4410] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:46863:2026-05-12 16:02:03.969 [coze-task-4412] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:46864:2026-05-12 16:02:03.970 [coze-task-4410] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:46867:2026-05-12 16:02:03.976 [coze-task-4412] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53310 executeId=7638910982386958363 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:46869:2026-05-12 16:02:04.119 [coze-task-4412] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53310 executeId=7638910982386958363 status=RUNNING -aiimage-backend.log.2026-05-12.4:46995:2026-05-12 16:02:33.970 [coze-task-4416] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:46996:2026-05-12 16:02:33.970 [coze-task-4414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:46998:2026-05-12 16:02:33.971 [coze-task-4414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:47001:2026-05-12 16:02:33.977 [coze-task-4416] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53313 executeId=7638911109181325346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:47003:2026-05-12 16:02:34.092 [coze-task-4416] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53313 executeId=7638911109181325346 status=RUNNING -aiimage-backend.log.2026-05-12.4:47134:2026-05-12 16:03:03.972 [coze-task-4419] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:47135:2026-05-12 16:03:03.972 [coze-task-4420] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:47139:2026-05-12 16:03:03.973 [coze-task-4420] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:47140:2026-05-12 16:03:03.974 [coze-task-4419] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53313 executeId=7638911109181325346 lastPolledAt=2026-05-12T16:02:34 -aiimage-backend.log.2026-05-12.4:47316:2026-05-12 16:03:33.973 [coze-task-4428] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:47318:2026-05-12 16:03:33.973 [coze-task-4429] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:47322:2026-05-12 16:03:33.975 [coze-task-4429] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:47324:2026-05-12 16:03:33.982 [coze-task-4428] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53313 executeId=7638911109181325346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:47328:2026-05-12 16:03:34.168 [coze-task-4428] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53313 executeId=7638911109181325346 status=RUNNING -aiimage-backend.log.2026-05-12.4:47490:2026-05-12 16:04:03.975 [coze-task-4432] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:47491:2026-05-12 16:04:03.975 [coze-task-4435] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:47495:2026-05-12 16:04:03.976 [coze-task-4435] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:47496:2026-05-12 16:04:03.976 [coze-task-4432] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53313 executeId=7638911109181325346 lastPolledAt=2026-05-12T16:03:34 -aiimage-backend.log.2026-05-12.4:47559:2026-05-12 16:04:21.225 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:47560:2026-05-12 16:04:21.230 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:47561:2026-05-12 16:04:21.250 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:47562:2026-05-12 16:04:21.250 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:47565:2026-05-12 16:04:21.780 [coze-task-4437] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=527 -aiimage-backend.log.2026-05-12.4:47649:2026-05-12 16:04:33.977 [coze-task-4442] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:47651:2026-05-12 16:04:33.977 [coze-task-4440] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:47654:2026-05-12 16:04:33.978 [coze-task-4440] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:47658:2026-05-12 16:04:33.986 [coze-task-4442] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53310 executeId=7638910982386958363 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:47662:2026-05-12 16:04:34.145 [coze-task-4442] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53310 executeId=7638910982386958363 status=RUNNING -aiimage-backend.log.2026-05-12.4:47797:2026-05-12 16:05:03.978 [coze-task-4444] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:47800:2026-05-12 16:05:03.978 [coze-task-4448] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:47802:2026-05-12 16:05:03.980 [coze-task-4448] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:47805:2026-05-12 16:05:03.980 [coze-task-4444] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53310 executeId=7638910982386958363 lastPolledAt=2026-05-12T16:04:34 -aiimage-backend.log.2026-05-12.4:47947:2026-05-12 16:05:33.980 [coze-task-4453] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:47950:2026-05-12 16:05:33.980 [coze-task-4456] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:47954:2026-05-12 16:05:33.982 [coze-task-4456] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:47957:2026-05-12 16:05:33.989 [coze-task-4453] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53310 executeId=7638910982386958363 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:47960:2026-05-12 16:05:34.113 [coze-task-4453] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53310 executeId=7638910982386958363 status=RUNNING -aiimage-backend.log.2026-05-12.4:48101:2026-05-12 16:06:03.981 [coze-task-4458] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:48106:2026-05-12 16:06:03.981 [coze-task-4463] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:48107:2026-05-12 16:06:03.982 [coze-task-4463] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:48109:2026-05-12 16:06:03.982 [coze-task-4458] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53310 executeId=7638910982386958363 lastPolledAt=2026-05-12T16:05:34 -aiimage-backend.log.2026-05-12.4:48250:2026-05-12 16:06:33.983 [coze-task-4467] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:48252:2026-05-12 16:06:33.983 [coze-task-4470] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:48254:2026-05-12 16:06:33.984 [coze-task-4470] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:48257:2026-05-12 16:06:33.991 [coze-task-4467] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53310 executeId=7638910982386958363 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:48439:2026-05-12 16:07:03.985 [coze-task-4473] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:48442:2026-05-12 16:07:03.985 [coze-task-4479] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:48444:2026-05-12 16:07:03.986 [coze-task-4479] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:48446:2026-05-12 16:07:03.986 [coze-task-4473] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:48629:2026-05-12 16:07:33.987 [coze-task-4484] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53310 taskId=8095 executeId=7638910982386958363 -aiimage-backend.log.2026-05-12.4:48631:2026-05-12 16:07:33.987 [coze-task-4483] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:48633:2026-05-12 16:07:33.987 [coze-task-4488] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:48635:2026-05-12 16:07:33.988 [coze-task-4483] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:48636:2026-05-12 16:07:33.988 [coze-task-4488] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:48638:2026-05-12 16:07:33.989 [coze-task-4484] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53310 -aiimage-backend.log.2026-05-12.4:48647:2026-05-12 16:07:34.558 [coze-task-4467] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53310 chunk=null batch=1/2 parts=2 retry=2/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:48815:2026-05-12 16:08:03.989 [coze-task-4489] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:48817:2026-05-12 16:08:03.989 [coze-task-4494] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:48821:2026-05-12 16:08:03.989 [coze-task-4496] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:48824:2026-05-12 16:08:03.990 [coze-task-4494] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:48825:2026-05-12 16:08:03.990 [coze-task-4496] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:48830:2026-05-12 16:08:03.998 [coze-task-4489] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53327 executeId=7638913817128435753 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:48834:2026-05-12 16:08:04.197 [coze-task-4489] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53327 executeId=7638913817128435753 status=RUNNING -aiimage-backend.log.2026-05-12.4:48982:2026-05-12 16:08:33.990 [coze-task-4501] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:48987:2026-05-12 16:08:33.990 [coze-task-4506] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:48988:2026-05-12 16:08:33.990 [coze-task-4505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:48989:2026-05-12 16:08:33.992 [coze-task-4506] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:48990:2026-05-12 16:08:33.992 [coze-task-4501] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:48996:2026-05-12 16:08:34.000 [coze-task-4505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:49001:2026-05-12 16:08:34.130 [coze-task-4505] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:49153:2026-05-12 16:09:03.992 [coze-task-4516] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:49156:2026-05-12 16:09:03.992 [coze-task-4511] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:49159:2026-05-12 16:09:03.992 [coze-task-4515] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:49160:2026-05-12 16:09:03.993 [coze-task-4516] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:49163:2026-05-12 16:09:03.994 [coze-task-4515] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:49164:2026-05-12 16:09:03.994 [coze-task-4511] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53325 executeId=7638913676486049844 lastPolledAt=2026-05-12T16:08:34 -aiimage-backend.log.2026-05-12.4:49334:2026-05-12 16:09:33.994 [coze-task-4528] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:49337:2026-05-12 16:09:33.994 [coze-task-4525] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:49341:2026-05-12 16:09:33.994 [coze-task-4529] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:49342:2026-05-12 16:09:33.995 [coze-task-4528] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:49346:2026-05-12 16:09:33.995 [coze-task-4529] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:49351:2026-05-12 16:09:34.003 [coze-task-4525] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:49355:2026-05-12 16:09:34.122 [coze-task-4525] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:49677:2026-05-12 16:10:03.995 [coze-task-4533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:49678:2026-05-12 16:10:03.995 [coze-task-4538] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:49679:2026-05-12 16:10:03.995 [coze-task-4539] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:49681:2026-05-12 16:10:03.996 [coze-task-4538] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:49682:2026-05-12 16:10:03.996 [coze-task-4539] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:49684:2026-05-12 16:10:03.997 [coze-task-4533] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53325 executeId=7638913676486049844 lastPolledAt=2026-05-12T16:09:34 -aiimage-backend.log.2026-05-12.4:50055:2026-05-12 16:10:33.997 [coze-task-4547] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:50056:2026-05-12 16:10:33.997 [coze-task-4545] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:50057:2026-05-12 16:10:33.997 [coze-task-4548] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:50058:2026-05-12 16:10:33.998 [coze-task-4547] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:50059:2026-05-12 16:10:33.998 [coze-task-4548] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:50064:2026-05-12 16:10:34.006 [coze-task-4545] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:50068:2026-05-12 16:10:34.133 [coze-task-4545] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:50442:2026-05-12 16:11:03.998 [coze-task-4552] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:50443:2026-05-12 16:11:03.998 [coze-task-4556] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:50445:2026-05-12 16:11:03.998 [coze-task-4557] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:50448:2026-05-12 16:11:03.999 [coze-task-4556] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:50449:2026-05-12 16:11:03.999 [coze-task-4557] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:50454:2026-05-12 16:11:04.008 [coze-task-4552] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:50463:2026-05-12 16:11:04.141 [coze-task-4552] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:50466:2026-05-12 16:11:04.600 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:50467:2026-05-12 16:11:04.605 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:50468:2026-05-12 16:11:04.623 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:50469:2026-05-12 16:11:04.623 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:50474:2026-05-12 16:11:04.798 [coze-task-4558] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=172 -aiimage-backend.log.2026-05-12.4:50840:2026-05-12 16:11:34.000 [coze-task-4562] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:50842:2026-05-12 16:11:34.000 [coze-task-4568] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:50846:2026-05-12 16:11:34.000 [coze-task-4567] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:50847:2026-05-12 16:11:34.001 [coze-task-4567] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:50848:2026-05-12 16:11:34.001 [coze-task-4568] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:50849:2026-05-12 16:11:34.006 [coze-task-4562] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:50856:2026-05-12 16:11:34.118 [coze-task-4562] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:51243:2026-05-12 16:12:04.001 [coze-task-4577] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:51244:2026-05-12 16:12:04.001 [coze-task-4573] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:51247:2026-05-12 16:12:04.001 [coze-task-4576] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:51248:2026-05-12 16:12:04.002 [coze-task-4576] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:51249:2026-05-12 16:12:04.002 [coze-task-4577] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:51254:2026-05-12 16:12:04.011 [coze-task-4573] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:51270:2026-05-12 16:12:04.142 [coze-task-4573] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:51675:2026-05-12 16:12:34.003 [coze-task-4583] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:51680:2026-05-12 16:12:34.003 [coze-task-4587] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:51681:2026-05-12 16:12:34.003 [coze-task-4588] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:51682:2026-05-12 16:12:34.004 [coze-task-4587] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:51683:2026-05-12 16:12:34.004 [coze-task-4588] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:51684:2026-05-12 16:12:34.010 [coze-task-4583] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:51704:2026-05-12 16:12:34.177 [coze-task-4583] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53325 executeId=7638913676486049844 status=RUNNING -aiimage-backend.log.2026-05-12.4:52753:2026-05-12 16:13:04.005 [coze-task-4597] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:52754:2026-05-12 16:13:04.005 [coze-task-4598] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:52755:2026-05-12 16:13:04.005 [coze-task-4592] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:52761:2026-05-12 16:13:04.006 [coze-task-4592] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:52762:2026-05-12 16:13:04.006 [coze-task-4597] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:52764:2026-05-12 16:13:04.013 [coze-task-4598] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53313 executeId=7638911109181325346 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:52976:2026-05-12 16:13:34.006 [coze-task-4601] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:52979:2026-05-12 16:13:34.006 [coze-task-4608] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:52980:2026-05-12 16:13:34.006 [coze-task-4609] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:52982:2026-05-12 16:13:34.007 [coze-task-4601] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:52983:2026-05-12 16:13:34.007 [coze-task-4609] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:52984:2026-05-12 16:13:34.007 [coze-task-4608] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:53165:2026-05-12 16:14:04.008 [coze-task-4617] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53339 taskId=8095 executeId=7638915363518431272 -aiimage-backend.log.2026-05-12.4:53168:2026-05-12 16:14:04.008 [coze-task-4618] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53313 taskId=8095 executeId=7638911109181325346 -aiimage-backend.log.2026-05-12.4:53170:2026-05-12 16:14:04.008 [coze-task-4619] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:53171:2026-05-12 16:14:04.008 [coze-task-4620] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:53172:2026-05-12 16:14:04.008 [coze-task-4617] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53339 -aiimage-backend.log.2026-05-12.4:53173:2026-05-12 16:14:04.008 [coze-task-4618] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53313 -aiimage-backend.log.2026-05-12.4:53174:2026-05-12 16:14:04.009 [coze-task-4620] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:53175:2026-05-12 16:14:04.009 [coze-task-4619] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:53191:2026-05-12 16:14:04.560 [coze-task-4598] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53313 chunk=null batch=2/2 parts=2 retry=2/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:53337:2026-05-12 16:14:34.009 [coze-task-4622] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53341 taskId=8095 executeId=7638915493130207270 -aiimage-backend.log.2026-05-12.4:53338:2026-05-12 16:14:34.009 [coze-task-4627] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53339 taskId=8095 executeId=7638915363518431272 -aiimage-backend.log.2026-05-12.4:53343:2026-05-12 16:14:34.009 [coze-task-4629] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:53344:2026-05-12 16:14:34.009 [coze-task-4628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:53345:2026-05-12 16:14:34.010 [coze-task-4622] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53341 -aiimage-backend.log.2026-05-12.4:53346:2026-05-12 16:14:34.010 [coze-task-4628] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:53347:2026-05-12 16:14:34.010 [coze-task-4629] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:53348:2026-05-12 16:14:34.016 [coze-task-4627] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53339 executeId=7638915363518431272 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:53362:2026-05-12 16:14:34.421 [coze-task-4627] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53339 executeId=7638915363518431272 status=DONE batchRows=12 mergedRows=12 failure=- -aiimage-backend.log.2026-05-12.4:53509:2026-05-12 16:15:04.010 [coze-task-4635] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53341 taskId=8095 executeId=7638915493130207270 -aiimage-backend.log.2026-05-12.4:53510:2026-05-12 16:15:04.010 [coze-task-4636] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:53513:2026-05-12 16:15:04.010 [coze-task-4637] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:53515:2026-05-12 16:15:04.011 [coze-task-4635] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53341 -aiimage-backend.log.2026-05-12.4:53516:2026-05-12 16:15:04.011 [coze-task-4636] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:53519:2026-05-12 16:15:04.021 [coze-task-4637] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53327 executeId=7638913817128435753 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:53525:2026-05-12 16:15:04.179 [coze-task-4637] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53327 executeId=7638913817128435753 status=RUNNING -aiimage-backend.log.2026-05-12.4:53677:2026-05-12 16:15:34.012 [coze-task-4646] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:53679:2026-05-12 16:15:34.012 [coze-task-4640] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:53681:2026-05-12 16:15:34.012 [coze-task-4645] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53341 taskId=8095 executeId=7638915493130207270 -aiimage-backend.log.2026-05-12.4:53683:2026-05-12 16:15:34.013 [coze-task-4646] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:53685:2026-05-12 16:15:34.013 [coze-task-4640] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:53687:2026-05-12 16:15:34.020 [coze-task-4645] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53341 executeId=7638915493130207270 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:53703:2026-05-12 16:15:34.661 [coze-task-4645] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53341 executeId=7638915493130207270 status=DONE batchRows=13 mergedRows=13 failure=- -aiimage-backend.log.2026-05-12.4:53927:2026-05-12 16:16:04.013 [coze-task-4657] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:53929:2026-05-12 16:16:04.013 [coze-task-4659] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:53931:2026-05-12 16:16:04.014 [coze-task-4659] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:53933:2026-05-12 16:16:04.020 [coze-task-4657] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53327 executeId=7638913817128435753 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:53949:2026-05-12 16:16:04.302 [coze-task-4657] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53327 executeId=7638913817128435753 status=RUNNING -aiimage-backend.log.2026-05-12.4:54109:2026-05-12 16:16:34.015 [coze-task-4663] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:54113:2026-05-12 16:16:34.015 [coze-task-4670] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:54117:2026-05-12 16:16:34.024 [coze-task-4670] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:54123:2026-05-12 16:16:34.024 [coze-task-4663] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53327 executeId=7638913817128435753 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:54133:2026-05-12 16:16:34.163 [coze-task-4663] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53327 executeId=7638913817128435753 status=RUNNING -aiimage-backend.log.2026-05-12.4:54294:2026-05-12 16:17:04.017 [coze-task-4681] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:54301:2026-05-12 16:17:04.017 [coze-task-4673] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:54308:2026-05-12 16:17:04.025 [coze-task-4673] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:54309:2026-05-12 16:17:04.026 [coze-task-4681] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53325 executeId=7638913676486049844 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:54566:2026-05-12 16:17:34.018 [coze-task-4684] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:54574:2026-05-12 16:17:34.019 [coze-task-4693] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:54577:2026-05-12 16:17:34.019 [coze-task-4684] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:54579:2026-05-12 16:17:34.020 [coze-task-4693] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:54759:2026-05-12 16:18:04.020 [coze-task-4696] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:54762:2026-05-12 16:18:04.020 [coze-task-4705] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53325 taskId=8095 executeId=7638913676486049844 -aiimage-backend.log.2026-05-12.4:54764:2026-05-12 16:18:04.020 [coze-task-4707] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:54768:2026-05-12 16:18:04.021 [coze-task-4696] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:54773:2026-05-12 16:18:04.021 [coze-task-4707] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:54775:2026-05-12 16:18:04.022 [coze-task-4705] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53325 -aiimage-backend.log.2026-05-12.4:54881:2026-05-12 16:18:15.221 [coze-task-4681] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53325 chunk=null batch=1/2 parts=2 retry=3/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:54882:2026-05-12 16:18:15.335 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:54883:2026-05-12 16:18:15.340 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:54884:2026-05-12 16:18:15.360 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:54885:2026-05-12 16:18:15.360 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:54887:2026-05-12 16:18:15.736 [coze-task-4710] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=371 -aiimage-backend.log.2026-05-12.4:54985:2026-05-12 16:18:34.022 [coze-task-4711] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:54993:2026-05-12 16:18:34.022 [coze-task-4719] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:54995:2026-05-12 16:18:34.023 [coze-task-4722] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:54997:2026-05-12 16:18:34.023 [coze-task-4719] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:55002:2026-05-12 16:18:34.032 [coze-task-4722] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:55007:2026-05-12 16:18:34.032 [coze-task-4711] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53352 executeId=7638916560778756096 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:55012:2026-05-12 16:18:34.148 [coze-task-4711] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53352 executeId=7638916560778756096 status=RUNNING -aiimage-backend.log.2026-05-12.4:55182:2026-05-12 16:19:04.024 [coze-task-4732] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:55184:2026-05-12 16:19:04.024 [coze-task-4733] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:55185:2026-05-12 16:19:04.024 [coze-task-4735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:55191:2026-05-12 16:19:04.033 [coze-task-4733] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:55193:2026-05-12 16:19:04.033 [coze-task-4735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:55196:2026-05-12 16:19:04.034 [coze-task-4732] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53352 executeId=7638916560778756096 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:55201:2026-05-12 16:19:04.147 [coze-task-4732] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53352 executeId=7638916560778756096 status=RUNNING -aiimage-backend.log.2026-05-12.4:55387:2026-05-12 16:19:34.025 [coze-task-4747] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:55390:2026-05-12 16:19:34.025 [coze-task-4750] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:55393:2026-05-12 16:19:34.026 [coze-task-4751] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:55397:2026-05-12 16:19:34.026 [coze-task-4750] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:55399:2026-05-12 16:19:34.027 [coze-task-4751] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:55406:2026-05-12 16:19:34.035 [coze-task-4747] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53352 executeId=7638916560778756096 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:55416:2026-05-12 16:19:34.172 [coze-task-4747] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53352 executeId=7638916560778756096 status=RUNNING -aiimage-backend.log.2026-05-12.4:55655:2026-05-12 16:20:04.028 [coze-task-4767] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:55656:2026-05-12 16:20:04.028 [coze-task-4768] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:55658:2026-05-12 16:20:04.027 [coze-task-4762] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:55663:2026-05-12 16:20:04.028 [coze-task-4768] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:55664:2026-05-12 16:20:04.028 [coze-task-4762] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:55668:2026-05-12 16:20:04.036 [coze-task-4767] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:55676:2026-05-12 16:20:04.168 [coze-task-4767] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:56109:2026-05-12 16:20:34.029 [coze-task-4778] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:56114:2026-05-12 16:20:34.029 [coze-task-4781] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:56117:2026-05-12 16:20:34.029 [coze-task-4784] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:56124:2026-05-12 16:20:34.030 [coze-task-4781] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:56125:2026-05-12 16:20:34.030 [coze-task-4784] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:56127:2026-05-12 16:20:34.038 [coze-task-4778] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:56152:2026-05-12 16:20:34.270 [coze-task-4778] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:56548:2026-05-12 16:21:04.030 [coze-task-4794] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:56552:2026-05-12 16:21:04.031 [coze-task-4798] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:56555:2026-05-12 16:21:04.031 [coze-task-4801] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:56560:2026-05-12 16:21:04.039 [coze-task-4801] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:56561:2026-05-12 16:21:04.039 [coze-task-4798] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:56566:2026-05-12 16:21:04.041 [coze-task-4794] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:56585:2026-05-12 16:21:04.184 [coze-task-4794] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:57488:2026-05-12 16:21:34.032 [coze-task-4812] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:57490:2026-05-12 16:21:34.032 [coze-task-4817] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:57492:2026-05-12 16:21:34.032 [coze-task-4819] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:57498:2026-05-12 16:21:34.033 [coze-task-4817] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:57501:2026-05-12 16:21:34.040 [coze-task-4819] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:57506:2026-05-12 16:21:34.042 [coze-task-4812] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:57543:2026-05-12 16:21:34.167 [coze-task-4812] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:58306:2026-05-12 16:22:04.034 [coze-task-4827] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:58309:2026-05-12 16:22:04.034 [coze-task-4834] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:58311:2026-05-12 16:22:04.034 [coze-task-4835] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:58318:2026-05-12 16:22:04.044 [coze-task-4834] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:58321:2026-05-12 16:22:04.044 [coze-task-4835] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:58329:2026-05-12 16:22:04.051 [coze-task-4827] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:58338:2026-05-12 16:22:04.164 [coze-task-4827] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:58512:2026-05-12 16:22:34.035 [coze-task-4844] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:58514:2026-05-12 16:22:34.035 [coze-task-4853] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:58524:2026-05-12 16:22:34.035 [coze-task-4852] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:58526:2026-05-12 16:22:34.037 [coze-task-4853] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:58531:2026-05-12 16:22:34.044 [coze-task-4844] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:58535:2026-05-12 16:22:34.049 [coze-task-4852] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:58551:2026-05-12 16:22:34.177 [coze-task-4844] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:58849:2026-05-12 16:23:04.037 [coze-task-4861] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:58857:2026-05-12 16:23:04.037 [coze-task-4869] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:58861:2026-05-12 16:23:04.037 [coze-task-4870] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:58862:2026-05-12 16:23:04.046 [coze-task-4861] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:58872:2026-05-12 16:23:04.050 [coze-task-4869] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:58874:2026-05-12 16:23:04.050 [coze-task-4870] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:58894:2026-05-12 16:23:04.207 [coze-task-4861] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:59084:2026-05-12 16:23:34.039 [coze-task-4879] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:59096:2026-05-12 16:23:34.040 [coze-task-4889] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:59097:2026-05-12 16:23:34.040 [coze-task-4888] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:59104:2026-05-12 16:23:34.049 [coze-task-4879] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:59111:2026-05-12 16:23:34.052 [coze-task-4889] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:59112:2026-05-12 16:23:34.052 [coze-task-4888] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:59120:2026-05-12 16:23:34.163 [coze-task-4879] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53351 executeId=7638916423692582963 status=RUNNING -aiimage-backend.log.2026-05-12.4:59325:2026-05-12 16:24:04.042 [coze-task-4906] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:59326:2026-05-12 16:24:04.042 [coze-task-4907] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:59328:2026-05-12 16:24:04.041 [coze-task-4897] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:59342:2026-05-12 16:24:04.053 [coze-task-4906] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:59343:2026-05-12 16:24:04.054 [coze-task-4897] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:59345:2026-05-12 16:24:04.059 [coze-task-4907] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53327 executeId=7638913817128435753 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:59537:2026-05-12 16:24:34.043 [coze-task-4920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:59539:2026-05-12 16:24:34.043 [coze-task-4922] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:59543:2026-05-12 16:24:34.043 [coze-task-4926] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:59551:2026-05-12 16:24:34.053 [coze-task-4922] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:59553:2026-05-12 16:24:34.055 [coze-task-4926] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:59555:2026-05-12 16:24:34.055 [coze-task-4920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:59760:2026-05-12 16:25:04.045 [coze-task-4928] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:59770:2026-05-12 16:25:04.046 [coze-task-4940] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53327 taskId=8095 executeId=7638913817128435753 -aiimage-backend.log.2026-05-12.4:59771:2026-05-12 16:25:04.046 [coze-task-4941] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:59774:2026-05-12 16:25:04.046 [coze-task-4928] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:59778:2026-05-12 16:25:04.046 [coze-task-4945] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:59779:2026-05-12 16:25:04.047 [coze-task-4940] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53327 -aiimage-backend.log.2026-05-12.4:59780:2026-05-12 16:25:04.047 [coze-task-4941] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:59792:2026-05-12 16:25:04.056 [coze-task-4945] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:59821:2026-05-12 16:25:05.642 [coze-task-4907] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze split retry submitted taskId=8095 stateId=53327 chunk=null batch=2/2 parts=2 retry=3/5 failure=Coze async workflow poll timeout -aiimage-backend.log.2026-05-12.4:59823:2026-05-12 16:25:05.788 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:59824:2026-05-12 16:25:05.793 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:59825:2026-05-12 16:25:05.812 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:59826:2026-05-12 16:25:05.812 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:59829:2026-05-12 16:25:06.186 [coze-task-4946] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=370 -aiimage-backend.log.2026-05-12.4:59977:2026-05-12 16:25:34.047 [coze-task-4948] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:59992:2026-05-12 16:25:34.048 [coze-task-4965] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:59993:2026-05-12 16:25:34.048 [coze-task-4960] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:59994:2026-05-12 16:25:34.048 [coze-task-4961] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:59999:2026-05-12 16:25:34.058 [coze-task-4948] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:60003:2026-05-12 16:25:34.058 [coze-task-4961] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:60007:2026-05-12 16:25:34.058 [coze-task-4960] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:60008:2026-05-12 16:25:34.058 [coze-task-4965] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:60026:2026-05-12 16:25:34.197 [coze-task-4948] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:60221:2026-05-12 16:26:04.049 [coze-task-4969] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:60234:2026-05-12 16:26:04.050 [coze-task-4984] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:60236:2026-05-12 16:26:04.049 [coze-task-4979] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:60237:2026-05-12 16:26:04.049 [coze-task-4980] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:60246:2026-05-12 16:26:04.061 [coze-task-4984] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:60248:2026-05-12 16:26:04.061 [coze-task-4980] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:60249:2026-05-12 16:26:04.061 [coze-task-4979] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:60251:2026-05-12 16:26:04.060 [coze-task-4969] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:60275:2026-05-12 16:26:04.212 [coze-task-4969] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:60496:2026-05-12 16:26:34.050 [coze-task-4991] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:60503:2026-05-12 16:26:34.051 [coze-task-4999] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:60504:2026-05-12 16:26:34.051 [coze-task-5000] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:60508:2026-05-12 16:26:34.051 [coze-task-5004] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:60512:2026-05-12 16:26:34.060 [coze-task-5000] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:60513:2026-05-12 16:26:34.060 [coze-task-5004] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:60517:2026-05-12 16:26:34.061 [coze-task-4991] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:60521:2026-05-12 16:26:34.060 [coze-task-4999] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:60537:2026-05-12 16:26:34.198 [coze-task-4991] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:60725:2026-05-12 16:27:04.051 [coze-task-5009] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:60731:2026-05-12 16:27:04.052 [coze-task-5017] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:60733:2026-05-12 16:27:04.052 [coze-task-5018] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:60736:2026-05-12 16:27:04.052 [coze-task-5022] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:60744:2026-05-12 16:27:04.062 [coze-task-5018] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:60746:2026-05-12 16:27:04.062 [coze-task-5017] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:60747:2026-05-12 16:27:04.062 [coze-task-5022] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:60752:2026-05-12 16:27:04.062 [coze-task-5009] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:60768:2026-05-12 16:27:04.204 [coze-task-5009] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:60964:2026-05-12 16:27:34.053 [coze-task-5030] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:60972:2026-05-12 16:27:34.053 [coze-task-5038] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:60973:2026-05-12 16:27:34.053 [coze-task-5039] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:60978:2026-05-12 16:27:34.053 [coze-task-5043] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:60984:2026-05-12 16:27:34.064 [coze-task-5030] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:60989:2026-05-12 16:27:34.067 [coze-task-5039] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:60990:2026-05-12 16:27:34.067 [coze-task-5038] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:60994:2026-05-12 16:27:34.067 [coze-task-5043] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:61013:2026-05-12 16:27:34.227 [coze-task-5030] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:61233:2026-05-12 16:28:04.054 [coze-task-5053] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:61236:2026-05-12 16:28:04.054 [coze-task-5061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:61237:2026-05-12 16:28:04.054 [coze-task-5062] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:61240:2026-05-12 16:28:04.054 [coze-task-5066] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:61246:2026-05-12 16:28:04.062 [coze-task-5061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53366 -aiimage-backend.log.2026-05-12.4:61247:2026-05-12 16:28:04.062 [coze-task-5062] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:61251:2026-05-12 16:28:04.062 [coze-task-5066] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:61256:2026-05-12 16:28:04.064 [coze-task-5053] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:61272:2026-05-12 16:28:04.231 [coze-task-5053] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:61459:2026-05-12 16:28:34.056 [coze-task-5080] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53366 taskId=8095 executeId=7638918189733511203 -aiimage-backend.log.2026-05-12.4:61461:2026-05-12 16:28:34.056 [coze-task-5081] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:61464:2026-05-12 16:28:34.056 [coze-task-5084] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:61465:2026-05-12 16:28:34.055 [coze-task-5072] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:61472:2026-05-12 16:28:34.057 [coze-task-5081] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:61473:2026-05-12 16:28:34.057 [coze-task-5084] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:61476:2026-05-12 16:28:34.065 [coze-task-5072] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53367 -aiimage-backend.log.2026-05-12.4:61478:2026-05-12 16:28:34.065 [coze-task-5080] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53366 executeId=7638918189733511203 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:61503:2026-05-12 16:28:34.609 [coze-task-5080] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53366 executeId=7638918189733511203 status=DONE batchRows=6 mergedRows=6 failure=- -aiimage-backend.log.2026-05-12.4:61715:2026-05-12 16:29:04.057 [coze-task-5091] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:61719:2026-05-12 16:29:04.058 [coze-task-5096] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:61722:2026-05-12 16:29:04.058 [coze-task-5099] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:61729:2026-05-12 16:29:04.067 [coze-task-5096] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53351 -aiimage-backend.log.2026-05-12.4:61733:2026-05-12 16:29:04.067 [coze-task-5099] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:61735:2026-05-12 16:29:04.067 [coze-task-5091] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:61743:2026-05-12 16:29:04.208 [coze-task-5091] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:61943:2026-05-12 16:29:34.059 [coze-task-5113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53351 taskId=8095 executeId=7638916423692582963 -aiimage-backend.log.2026-05-12.4:61944:2026-05-12 16:29:34.058 [coze-task-5105] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:61945:2026-05-12 16:29:34.059 [coze-task-5116] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:61954:2026-05-12 16:29:34.060 [coze-task-5105] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53367 -aiimage-backend.log.2026-05-12.4:61955:2026-05-12 16:29:34.060 [coze-task-5116] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:61962:2026-05-12 16:29:34.069 [coze-task-5113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53351 executeId=7638916423692582963 jobId=2713 chunk=null batch=1/2 -aiimage-backend.log.2026-05-12.4:61984:2026-05-12 16:29:34.581 [coze-task-5113] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53351 executeId=7638916423692582963 status=DONE batchRows=6 mergedRows=6 failure=- -aiimage-backend.log.2026-05-12.4:62230:2026-05-12 16:30:04.060 [coze-task-5127] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:62240:2026-05-12 16:30:04.060 [coze-task-5133] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:62247:2026-05-12 16:30:04.062 [coze-task-5133] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:62256:2026-05-12 16:30:04.071 [coze-task-5127] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:62261:2026-05-12 16:30:04.182 [coze-task-5127] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:62661:2026-05-12 16:30:34.061 [coze-task-5138] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:62672:2026-05-12 16:30:34.062 [coze-task-5149] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:62684:2026-05-12 16:30:34.072 [coze-task-5149] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:62685:2026-05-12 16:30:34.072 [coze-task-5138] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:62694:2026-05-12 16:30:34.199 [coze-task-5138] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53367 executeId=7638918322369642511 status=RUNNING -aiimage-backend.log.2026-05-12.4:63144:2026-05-12 16:31:04.063 [coze-task-5154] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53367 taskId=8095 executeId=7638918322369642511 -aiimage-backend.log.2026-05-12.4:63154:2026-05-12 16:31:04.064 [coze-task-5165] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:63161:2026-05-12 16:31:04.065 [coze-task-5165] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53352 -aiimage-backend.log.2026-05-12.4:63168:2026-05-12 16:31:04.071 [coze-task-5154] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53367 executeId=7638918322369642511 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:63188:2026-05-12 16:31:04.628 [coze-task-5154] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53367 executeId=7638918322369642511 status=DONE batchRows=7 mergedRows=7 failure=- -aiimage-backend.log.2026-05-12.4:63635:2026-05-12 16:31:34.065 [coze-task-5182] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53352 taskId=8095 executeId=7638916560778756096 -aiimage-backend.log.2026-05-12.4:63649:2026-05-12 16:31:34.075 [coze-task-5182] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53352 executeId=7638916560778756096 jobId=2713 chunk=null batch=2/2 -aiimage-backend.log.2026-05-12.4:63669:2026-05-12 16:31:34.590 [coze-task-5182] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53352 executeId=7638916560778756096 status=DONE batchRows=6 mergedRows=6 failure=- -aiimage-backend.log.2026-05-12.4:63693:2026-05-12 16:31:36.414 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:63694:2026-05-12 16:31:36.423 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:63695:2026-05-12 16:31:36.446 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:63696:2026-05-12 16:31:36.446 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:65695:2026-05-12 16:32:44.951 [coze-task-5183] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/3 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:65846:2026-05-12 16:33:04.068 [coze-task-5219] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:65859:2026-05-12 16:33:04.070 [coze-task-5219] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:65942:2026-05-12 16:33:15.164 [coze-task-5183] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=2/3 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:66047:2026-05-12 16:33:34.070 [coze-task-5233] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:66054:2026-05-12 16:33:34.070 [coze-task-5240] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:66062:2026-05-12 16:33:34.071 [coze-task-5233] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53387 -aiimage-backend.log.2026-05-12.4:66064:2026-05-12 16:33:34.072 [coze-task-5240] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:66147:2026-05-12 16:33:45.427 [coze-task-5183] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=3/3 executeId=7638920553479503898 -aiimage-backend.log.2026-05-12.4:66148:2026-05-12 16:33:45.436 [coze-task-5183] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=128986 -aiimage-backend.log.2026-05-12.4:66289:2026-05-12 16:34:04.071 [coze-task-5249] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53388 taskId=8095 executeId=7638920553479503898 -aiimage-backend.log.2026-05-12.4:66296:2026-05-12 16:34:04.072 [coze-task-5256] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:66297:2026-05-12 16:34:04.072 [coze-task-5257] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:66305:2026-05-12 16:34:04.073 [coze-task-5256] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53387 -aiimage-backend.log.2026-05-12.4:66306:2026-05-12 16:34:04.073 [coze-task-5257] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:66318:2026-05-12 16:34:04.082 [coze-task-5249] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53388 executeId=7638920553479503898 jobId=2713 chunk=null batch=3/3 -aiimage-backend.log.2026-05-12.4:66323:2026-05-12 16:34:04.189 [coze-task-5249] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53388 executeId=7638920553479503898 status=RUNNING -aiimage-backend.log.2026-05-12.4:66521:2026-05-12 16:34:34.073 [coze-task-5270] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53388 taskId=8095 executeId=7638920553479503898 -aiimage-backend.log.2026-05-12.4:66527:2026-05-12 16:34:34.074 [coze-task-5276] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:66528:2026-05-12 16:34:34.074 [coze-task-5277] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:66537:2026-05-12 16:34:34.080 [coze-task-5276] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53387 -aiimage-backend.log.2026-05-12.4:66538:2026-05-12 16:34:34.080 [coze-task-5277] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:66546:2026-05-12 16:34:34.087 [coze-task-5270] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53388 executeId=7638920553479503898 jobId=2713 chunk=null batch=3/3 -aiimage-backend.log.2026-05-12.4:66569:2026-05-12 16:34:34.783 [coze-task-5270] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53388 executeId=7638920553479503898 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:66768:2026-05-12 16:35:04.075 [coze-task-5294] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:66771:2026-05-12 16:35:04.075 [coze-task-5295] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:66780:2026-05-12 16:35:04.084 [coze-task-5295] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:66783:2026-05-12 16:35:04.084 [coze-task-5294] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:66805:2026-05-12 16:35:04.232 [coze-task-5294] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:67040:2026-05-12 16:35:34.076 [coze-task-5308] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:67051:2026-05-12 16:35:34.076 [coze-task-5314] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:67060:2026-05-12 16:35:34.086 [coze-task-5314] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:67062:2026-05-12 16:35:34.087 [coze-task-5308] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:67083:2026-05-12 16:35:34.302 [coze-task-5308] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:67501:2026-05-12 16:36:04.077 [coze-task-5332] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:67502:2026-05-12 16:36:04.077 [coze-task-5338] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:67511:2026-05-12 16:36:04.088 [coze-task-5338] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:67514:2026-05-12 16:36:04.088 [coze-task-5332] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:67533:2026-05-12 16:36:04.314 [coze-task-5332] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:67902:2026-05-12 16:36:34.080 [coze-task-5352] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:67907:2026-05-12 16:36:34.080 [coze-task-5357] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:67914:2026-05-12 16:36:34.088 [coze-task-5357] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:67920:2026-05-12 16:36:34.090 [coze-task-5352] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:67941:2026-05-12 16:36:34.344 [coze-task-5352] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:68137:2026-05-12 16:37:04.081 [coze-task-5366] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:68144:2026-05-12 16:37:04.081 [coze-task-5373] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:68155:2026-05-12 16:37:04.091 [coze-task-5373] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:68159:2026-05-12 16:37:04.092 [coze-task-5366] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:68173:2026-05-12 16:37:04.326 [coze-task-5366] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:68370:2026-05-12 16:37:34.082 [coze-task-5382] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:68373:2026-05-12 16:37:34.083 [coze-task-5388] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:68381:2026-05-12 16:37:34.084 [coze-task-5388] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:68387:2026-05-12 16:37:34.093 [coze-task-5382] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:68394:2026-05-12 16:37:34.219 [coze-task-5382] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:68543:2026-05-12 16:38:00.547 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:68544:2026-05-12 16:38:00.554 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:68545:2026-05-12 16:38:00.575 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:68546:2026-05-12 16:38:00.575 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:68549:2026-05-12 16:38:00.963 [coze-task-5390] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=384 -aiimage-backend.log.2026-05-12.4:68586:2026-05-12 16:38:04.084 [coze-task-5396] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:68594:2026-05-12 16:38:04.085 [coze-task-5404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:68601:2026-05-12 16:38:04.085 [coze-task-5404] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:68609:2026-05-12 16:38:04.094 [coze-task-5396] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:68619:2026-05-12 16:38:04.233 [coze-task-5396] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:68850:2026-05-12 16:38:34.084 [coze-task-5414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:68859:2026-05-12 16:38:34.085 [coze-task-5421] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:68865:2026-05-12 16:38:34.094 [coze-task-5421] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:68871:2026-05-12 16:38:34.096 [coze-task-5414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:68886:2026-05-12 16:38:34.239 [coze-task-5414] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:69149:2026-05-12 16:39:04.086 [coze-task-5429] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:69155:2026-05-12 16:39:04.086 [coze-task-5436] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:69163:2026-05-12 16:39:04.087 [coze-task-5436] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:69166:2026-05-12 16:39:04.096 [coze-task-5429] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:69187:2026-05-12 16:39:04.325 [coze-task-5429] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:69387:2026-05-12 16:39:34.088 [coze-task-5444] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:69394:2026-05-12 16:39:34.088 [coze-task-5450] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:69398:2026-05-12 16:39:34.089 [coze-task-5450] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53385 -aiimage-backend.log.2026-05-12.4:69400:2026-05-12 16:39:34.095 [coze-task-5444] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:69411:2026-05-12 16:39:34.239 [coze-task-5444] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53387 executeId=7638920422151618610 status=RUNNING -aiimage-backend.log.2026-05-12.4:69673:2026-05-12 16:40:04.089 [coze-task-5456] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:69674:2026-05-12 16:40:04.089 [coze-task-5463] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53385 taskId=8095 executeId=7638920296989098047 -aiimage-backend.log.2026-05-12.4:69683:2026-05-12 16:40:04.090 [coze-task-5456] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped because task is locked taskId=8095 stateId=53387 -aiimage-backend.log.2026-05-12.4:69687:2026-05-12 16:40:04.096 [coze-task-5463] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53385 executeId=7638920296989098047 jobId=2713 chunk=null batch=1/3 -aiimage-backend.log.2026-05-12.4:69709:2026-05-12 16:40:04.724 [coze-task-5463] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53385 executeId=7638920296989098047 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:70360:2026-05-12 16:40:34.090 [coze-task-5472] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53387 taskId=8095 executeId=7638920422151618610 -aiimage-backend.log.2026-05-12.4:70371:2026-05-12 16:40:34.099 [coze-task-5472] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53387 executeId=7638920422151618610 jobId=2713 chunk=null batch=2/3 -aiimage-backend.log.2026-05-12.4:70382:2026-05-12 16:40:34.698 [coze-task-5472] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53387 executeId=7638920422151618610 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:73663:2026-05-12 16:44:20.481 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:73664:2026-05-12 16:44:20.486 [http-nio-18080-exec-1] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:73665:2026-05-12 16:44:20.505 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:73666:2026-05-12 16:44:20.505 [http-nio-18080-exec-1] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:74672:2026-05-12 16:45:23.283 [coze-task-5532] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638923553069547571 -aiimage-backend.log.2026-05-12.4:74673:2026-05-12 16:45:23.290 [coze-task-5532] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=62780 -aiimage-backend.log.2026-05-12.4:74800:2026-05-12 16:45:34.105 [coze-task-5555] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53421 taskId=8095 executeId=7638923553069547571 -aiimage-backend.log.2026-05-12.4:74805:2026-05-12 16:45:34.114 [coze-task-5555] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53421 executeId=7638923553069547571 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:74816:2026-05-12 16:45:34.239 [coze-task-5555] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53421 executeId=7638923553069547571 status=RUNNING -aiimage-backend.log.2026-05-12.4:75015:2026-05-12 16:46:04.106 [coze-task-5564] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53421 taskId=8095 executeId=7638923553069547571 -aiimage-backend.log.2026-05-12.4:75018:2026-05-12 16:46:04.115 [coze-task-5564] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53421 executeId=7638923553069547571 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:75023:2026-05-12 16:46:04.254 [coze-task-5564] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53421 executeId=7638923553069547571 status=RUNNING -aiimage-backend.log.2026-05-12.4:75234:2026-05-12 16:46:34.108 [coze-task-5570] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53421 taskId=8095 executeId=7638923553069547571 -aiimage-backend.log.2026-05-12.4:75240:2026-05-12 16:46:34.117 [coze-task-5570] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53421 executeId=7638923553069547571 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:75244:2026-05-12 16:46:34.232 [coze-task-5570] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53421 executeId=7638923553069547571 status=RUNNING -aiimage-backend.log.2026-05-12.4:75452:2026-05-12 16:47:04.109 [coze-task-5575] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53421 taskId=8095 executeId=7638923553069547571 -aiimage-backend.log.2026-05-12.4:75454:2026-05-12 16:47:04.117 [coze-task-5575] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53421 executeId=7638923553069547571 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.4:75465:2026-05-12 16:47:04.780 [coze-task-5575] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53421 executeId=7638923553069547571 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.4:77524:2026-05-12 16:50:36.640 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:77525:2026-05-12 16:50:36.646 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.4:77526:2026-05-12 16:50:36.665 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:77527:2026-05-12 16:50:36.665 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:77534:2026-05-12 16:50:37.364 [coze-task-5612] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=21 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.4:77535:2026-05-12 16:50:37.371 [coze-task-5612] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=703 -aiimage-backend.log.2026-05-12.4:80628:2026-05-12 16:53:35.676 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=true cozeDone=false -aiimage-backend.log.2026-05-12.4:80629:2026-05-12 16:53:35.681 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=true cozeDone=false -aiimage-backend.log.2026-05-12.4:80632:2026-05-12 16:53:36.124 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80633:2026-05-12 16:53:36.124 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80634:2026-05-12 16:53:36.143 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80635:2026-05-12 16:53:36.143 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80700:2026-05-12 16:53:46.150 [coze-task-5643] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80701:2026-05-12 16:53:46.150 [coze-task-5643] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80702:2026-05-12 16:53:46.150 [coze-task-5643] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:80763:2026-05-12 16:53:56.180 [coze-task-5646] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80764:2026-05-12 16:53:56.180 [coze-task-5646] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80765:2026-05-12 16:53:56.180 [coze-task-5646] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:80852:2026-05-12 16:54:06.209 [coze-task-5647] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80853:2026-05-12 16:54:06.209 [coze-task-5647] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80854:2026-05-12 16:54:06.210 [coze-task-5647] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:80913:2026-05-12 16:54:16.240 [coze-task-5651] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80914:2026-05-12 16:54:16.241 [coze-task-5651] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80915:2026-05-12 16:54:16.241 [coze-task-5651] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:80992:2026-05-12 16:54:26.271 [coze-task-5652] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80993:2026-05-12 16:54:26.271 [coze-task-5652] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:80994:2026-05-12 16:54:26.272 [coze-task-5652] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81112:2026-05-12 16:54:36.304 [coze-task-5656] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81113:2026-05-12 16:54:36.304 [coze-task-5656] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81114:2026-05-12 16:54:36.305 [coze-task-5656] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81232:2026-05-12 16:54:46.335 [coze-task-5661] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81233:2026-05-12 16:54:46.335 [coze-task-5661] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81234:2026-05-12 16:54:46.335 [coze-task-5661] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81300:2026-05-12 16:54:56.358 [coze-task-5664] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81301:2026-05-12 16:54:56.358 [coze-task-5664] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81302:2026-05-12 16:54:56.358 [coze-task-5664] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81388:2026-05-12 16:55:06.383 [coze-task-5665] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81389:2026-05-12 16:55:06.383 [coze-task-5665] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81390:2026-05-12 16:55:06.383 [coze-task-5665] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81454:2026-05-12 16:55:16.411 [coze-task-5669] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81455:2026-05-12 16:55:16.411 [coze-task-5669] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81456:2026-05-12 16:55:16.412 [coze-task-5669] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81522:2026-05-12 16:55:26.441 [coze-task-5671] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81523:2026-05-12 16:55:26.441 [coze-task-5671] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81524:2026-05-12 16:55:26.441 [coze-task-5671] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81625:2026-05-12 16:55:36.468 [coze-task-5673] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81626:2026-05-12 16:55:36.468 [coze-task-5673] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81627:2026-05-12 16:55:36.468 [coze-task-5673] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81690:2026-05-12 16:55:46.497 [coze-task-5678] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81691:2026-05-12 16:55:46.497 [coze-task-5678] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81692:2026-05-12 16:55:46.497 [coze-task-5678] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81761:2026-05-12 16:55:56.520 [coze-task-5679] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81762:2026-05-12 16:55:56.520 [coze-task-5679] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81763:2026-05-12 16:55:56.521 [coze-task-5679] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81863:2026-05-12 16:56:06.549 [coze-task-5680] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81864:2026-05-12 16:56:06.549 [coze-task-5680] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81865:2026-05-12 16:56:06.549 [coze-task-5680] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:81957:2026-05-12 16:56:16.574 [coze-task-5685] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81958:2026-05-12 16:56:16.574 [coze-task-5685] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:81959:2026-05-12 16:56:16.574 [coze-task-5685] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:82019:2026-05-12 16:56:26.599 [coze-task-5687] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:82020:2026-05-12 16:56:26.599 [coze-task-5687] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:82021:2026-05-12 16:56:26.599 [coze-task-5687] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:82107:2026-05-12 16:56:36.626 [coze-task-5688] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:82108:2026-05-12 16:56:36.626 [coze-task-5688] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.4:82109:2026-05-12 16:56:36.626 [coze-task-5688] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process requeued because task lock is busy jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 -aiimage-backend.log.2026-05-12.4:82123:2026-05-12 16:56:38.964 [coze-task-5644] WARN c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submit failed taskId=8095 jobId=2713 rows=31 batch=1/1 err=Coze submit throttle lock timeout -aiimage-backend.log.2026-05-12.4:82128:2026-05-12 16:56:39.697 [coze-task-5644] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] assemble workbook taskId=8095 parsedRows=3286 receivedRows=3286 resultRows=3286 resolvedRows=3286 reasonRows=3201 -aiimage-backend.log.2026-05-12.4:82138:2026-05-12 16:56:41.058 [coze-task-5644] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process success jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=184911 resultFileUrl=result/appearance_patent/3ebc303c-c675-48c2-8fb4-fd8e0141b03b/黄建彬查询专利3-8095-10731-bda913fc-215b-45a3-be9c-7c44aaa8c433-result.xlsx -aiimage-backend.log.2026-05-12.4:82143:2026-05-12 16:56:41.319 [coze-task-5691] WARN c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] read all rows failed taskId=8095 err=读取解析载荷失败 -aiimage-backend.log.2026-05-12.4:82144:2026-05-12 16:56:41.327 [coze-task-5691] WARN c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process failed jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 msg=读取解析载荷失败 -aiimage-backend.log.2026-05-12.2:898:2026-05-12 05:58:05.681 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:899:2026-05-12 05:58:05.686 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:900:2026-05-12 05:58:05.704 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:901:2026-05-12 05:58:05.704 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:925:2026-05-12 05:58:06.002 [coze-task-1556] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=41 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:926:2026-05-12 05:58:06.010 [coze-task-1556] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=303 -aiimage-backend.log.2026-05-12.2:6474:2026-05-12 06:04:12.031 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:6475:2026-05-12 06:04:12.035 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:6476:2026-05-12 06:04:12.055 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:6477:2026-05-12 06:04:12.055 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:6779:2026-05-12 06:04:42.811 [coze-task-1582] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638758408044871732 -aiimage-backend.log.2026-05-12.2:6780:2026-05-12 06:04:42.820 [coze-task-1582] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30761 -aiimage-backend.log.2026-05-12.2:6994:2026-05-12 06:05:02.171 [coze-task-1586] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52957 taskId=8095 executeId=7638758408044871732 -aiimage-backend.log.2026-05-12.2:6997:2026-05-12 06:05:02.179 [coze-task-1586] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52957 executeId=7638758408044871732 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:6999:2026-05-12 06:05:02.305 [coze-task-1586] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52957 executeId=7638758408044871732 status=RUNNING -aiimage-backend.log.2026-05-12.2:7305:2026-05-12 06:05:32.172 [coze-task-1589] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52957 taskId=8095 executeId=7638758408044871732 -aiimage-backend.log.2026-05-12.2:7306:2026-05-12 06:05:32.179 [coze-task-1589] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52957 executeId=7638758408044871732 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:7308:2026-05-12 06:05:32.468 [coze-task-1589] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=52957 executeId=7638758408044871732 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:10431:2026-05-12 06:10:21.133 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:10432:2026-05-12 06:10:21.139 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:10433:2026-05-12 06:10:21.159 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:10434:2026-05-12 06:10:21.159 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:10444:2026-05-12 06:10:21.387 [coze-task-1604] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=33 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:10445:2026-05-12 06:10:21.392 [coze-task-1604] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=230 -aiimage-backend.log.2026-05-12.2:15833:2026-05-12 06:16:30.076 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:15834:2026-05-12 06:16:30.082 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:15835:2026-05-12 06:16:30.100 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:15836:2026-05-12 06:16:30.100 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:16373:2026-05-12 06:17:29.087 [coze-task-1617] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638761683033243690 -aiimage-backend.log.2026-05-12.2:16374:2026-05-12 06:17:29.094 [coze-task-1617] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=58991 -aiimage-backend.log.2026-05-12.2:16417:2026-05-12 06:17:32.203 [coze-task-1619] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52963 taskId=8095 executeId=7638761683033243690 -aiimage-backend.log.2026-05-12.2:16419:2026-05-12 06:17:32.211 [coze-task-1619] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52963 executeId=7638761683033243690 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:16425:2026-05-12 06:17:32.334 [coze-task-1619] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52963 executeId=7638761683033243690 status=RUNNING -aiimage-backend.log.2026-05-12.2:16756:2026-05-12 06:18:02.205 [coze-task-1624] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52963 taskId=8095 executeId=7638761683033243690 -aiimage-backend.log.2026-05-12.2:16758:2026-05-12 06:18:02.211 [coze-task-1624] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52963 executeId=7638761683033243690 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:16764:2026-05-12 06:18:02.414 [coze-task-1624] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52963 executeId=7638761683033243690 status=RUNNING -aiimage-backend.log.2026-05-12.2:17041:2026-05-12 06:18:32.206 [coze-task-1626] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52963 taskId=8095 executeId=7638761683033243690 -aiimage-backend.log.2026-05-12.2:17043:2026-05-12 06:18:32.215 [coze-task-1626] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52963 executeId=7638761683033243690 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:17058:2026-05-12 06:18:32.705 [coze-task-1626] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=52963 executeId=7638761683033243690 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:21272:2026-05-12 06:22:39.066 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:21273:2026-05-12 06:22:39.071 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:21274:2026-05-12 06:22:39.089 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:21275:2026-05-12 06:22:39.089 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:21277:2026-05-12 06:22:39.669 [coze-task-1636] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=25 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:21278:2026-05-12 06:22:39.682 [coze-task-1636] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=590 -aiimage-backend.log.2026-05-12.2:24931:2026-05-12 06:28:47.178 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:24932:2026-05-12 06:28:47.183 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:24933:2026-05-12 06:28:47.202 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:24934:2026-05-12 06:28:47.202 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:24936:2026-05-12 06:28:47.527 [coze-task-1655] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=46 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:24937:2026-05-12 06:28:47.538 [coze-task-1655] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=333 -aiimage-backend.log.2026-05-12.2:30129:2026-05-12 06:34:54.041 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:30131:2026-05-12 06:34:54.045 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:30132:2026-05-12 06:34:54.064 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:30133:2026-05-12 06:34:54.064 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:30438:2026-05-12 06:35:26.121 [coze-task-1669] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638766309548163122 -aiimage-backend.log.2026-05-12.2:30439:2026-05-12 06:35:26.129 [coze-task-1669] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=32060 -aiimage-backend.log.2026-05-12.2:30507:2026-05-12 06:35:32.257 [coze-task-1672] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52974 taskId=8095 executeId=7638766309548163122 -aiimage-backend.log.2026-05-12.2:30510:2026-05-12 06:35:32.265 [coze-task-1672] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52974 executeId=7638766309548163122 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:30513:2026-05-12 06:35:32.377 [coze-task-1672] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52974 executeId=7638766309548163122 status=RUNNING -aiimage-backend.log.2026-05-12.2:30799:2026-05-12 06:36:02.258 [coze-task-1675] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52974 taskId=8095 executeId=7638766309548163122 -aiimage-backend.log.2026-05-12.2:30801:2026-05-12 06:36:02.265 [coze-task-1675] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52974 executeId=7638766309548163122 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:30806:2026-05-12 06:36:02.583 [coze-task-1675] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=52974 executeId=7638766309548163122 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:34266:2026-05-12 06:41:01.788 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:34267:2026-05-12 06:41:01.793 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:34268:2026-05-12 06:41:01.814 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:34269:2026-05-12 06:41:01.814 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:34277:2026-05-12 06:41:02.222 [coze-task-1684] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=38 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:34278:2026-05-12 06:41:02.228 [coze-task-1684] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=411 -aiimage-backend.log.2026-05-12.2:38991:2026-05-12 06:47:06.603 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:38992:2026-05-12 06:47:06.610 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:38993:2026-05-12 06:47:06.632 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:38994:2026-05-12 06:47:06.633 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:39507:2026-05-12 06:47:56.740 [coze-task-1703] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638769558660546595 -aiimage-backend.log.2026-05-12.2:39508:2026-05-12 06:47:56.751 [coze-task-1703] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=50115 -aiimage-backend.log.2026-05-12.2:39553:2026-05-12 06:48:02.293 [coze-task-1706] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52981 taskId=8095 executeId=7638769558660546595 -aiimage-backend.log.2026-05-12.2:39554:2026-05-12 06:48:02.301 [coze-task-1706] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52981 executeId=7638769558660546595 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:39561:2026-05-12 06:48:02.488 [coze-task-1706] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52981 executeId=7638769558660546595 status=RUNNING -aiimage-backend.log.2026-05-12.2:39848:2026-05-12 06:48:32.295 [coze-task-1709] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52981 taskId=8095 executeId=7638769558660546595 -aiimage-backend.log.2026-05-12.2:39850:2026-05-12 06:48:32.301 [coze-task-1709] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52981 executeId=7638769558660546595 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:39852:2026-05-12 06:48:32.503 [coze-task-1709] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52981 executeId=7638769558660546595 status=RUNNING -aiimage-backend.log.2026-05-12.2:40243:2026-05-12 06:49:02.296 [coze-task-1710] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52981 taskId=8095 executeId=7638769558660546595 -aiimage-backend.log.2026-05-12.2:40245:2026-05-12 06:49:02.297 [coze-task-1710] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=52981 executeId=7638769558660546595 lastPolledAt=2026-05-12T06:48:33 -aiimage-backend.log.2026-05-12.2:40593:2026-05-12 06:49:32.298 [coze-task-1715] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52981 taskId=8095 executeId=7638769558660546595 -aiimage-backend.log.2026-05-12.2:40594:2026-05-12 06:49:32.305 [coze-task-1715] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52981 executeId=7638769558660546595 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:40597:2026-05-12 06:49:32.784 [coze-task-1715] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=52981 executeId=7638769558660546595 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:44732:2026-05-12 06:53:15.037 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:44733:2026-05-12 06:53:15.042 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:44734:2026-05-12 06:53:15.061 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:44735:2026-05-12 06:53:15.061 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:44737:2026-05-12 06:53:15.440 [coze-task-1720] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=30 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:44738:2026-05-12 06:53:15.447 [coze-task-1720] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=382 -aiimage-backend.log.2026-05-12.2:48486:2026-05-12 06:59:21.574 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:48487:2026-05-12 06:59:21.579 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:48488:2026-05-12 06:59:21.603 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:48489:2026-05-12 06:59:21.603 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:48798:2026-05-12 06:59:52.206 [coze-task-1732] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638772641251606563 -aiimage-backend.log.2026-05-12.2:48799:2026-05-12 06:59:52.214 [coze-task-1732] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30607 -aiimage-backend.log.2026-05-12.2:48946:2026-05-12 07:00:02.326 [coze-task-1734] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52985 taskId=8095 executeId=7638772641251606563 -aiimage-backend.log.2026-05-12.2:48947:2026-05-12 07:00:02.335 [coze-task-1734] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52985 executeId=7638772641251606563 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:48949:2026-05-12 07:00:02.454 [coze-task-1734] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52985 executeId=7638772641251606563 status=RUNNING -aiimage-backend.log.2026-05-12.2:49472:2026-05-12 07:00:32.328 [coze-task-1735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52985 taskId=8095 executeId=7638772641251606563 -aiimage-backend.log.2026-05-12.2:49473:2026-05-12 07:00:32.336 [coze-task-1735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52985 executeId=7638772641251606563 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:49478:2026-05-12 07:00:32.669 [coze-task-1735] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=52985 executeId=7638772641251606563 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:53684:2026-05-12 07:05:26.983 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:53686:2026-05-12 07:05:26.988 [http-nio-18080-exec-10] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:53687:2026-05-12 07:05:27.007 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:53688:2026-05-12 07:05:27.007 [http-nio-18080-exec-10] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:53690:2026-05-12 07:05:27.363 [coze-task-1756] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=22 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:53691:2026-05-12 07:05:27.369 [coze-task-1756] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=359 -aiimage-backend.log.2026-05-12.2:58309:2026-05-12 07:11:31.034 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:58310:2026-05-12 07:11:31.039 [http-nio-18080-exec-7] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:58311:2026-05-12 07:11:31.057 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:58312:2026-05-12 07:11:31.057 [http-nio-18080-exec-7] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:58317:2026-05-12 07:11:31.333 [coze-task-1773] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=43 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:58318:2026-05-12 07:11:31.339 [coze-task-1773] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=279 -aiimage-backend.log.2026-05-12.2:63013:2026-05-12 07:17:36.959 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:63014:2026-05-12 07:17:36.964 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:63015:2026-05-12 07:17:36.983 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:63016:2026-05-12 07:17:36.983 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:63453:2026-05-12 07:18:07.803 [coze-task-1792] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638777334548512808 -aiimage-backend.log.2026-05-12.2:63454:2026-05-12 07:18:07.810 [coze-task-1792] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30824 -aiimage-backend.log.2026-05-12.2:63685:2026-05-12 07:18:32.381 [coze-task-1797] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52997 taskId=8095 executeId=7638777334548512808 -aiimage-backend.log.2026-05-12.2:63692:2026-05-12 07:18:32.389 [coze-task-1797] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52997 executeId=7638777334548512808 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:63696:2026-05-12 07:18:32.515 [coze-task-1797] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=52997 executeId=7638777334548512808 status=RUNNING -aiimage-backend.log.2026-05-12.2:63995:2026-05-12 07:19:02.383 [coze-task-1802] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52997 taskId=8095 executeId=7638777334548512808 -aiimage-backend.log.2026-05-12.2:63998:2026-05-12 07:19:02.384 [coze-task-1802] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=52997 executeId=7638777334548512808 lastPolledAt=2026-05-12T07:18:33 -aiimage-backend.log.2026-05-12.2:64308:2026-05-12 07:19:32.384 [coze-task-1806] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=52997 taskId=8095 executeId=7638777334548512808 -aiimage-backend.log.2026-05-12.2:64310:2026-05-12 07:19:32.392 [coze-task-1806] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=52997 executeId=7638777334548512808 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:64312:2026-05-12 07:19:32.902 [coze-task-1806] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=52997 executeId=7638777334548512808 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:68274:2026-05-12 07:23:43.374 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:68275:2026-05-12 07:23:43.379 [http-nio-18080-exec-6] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:68277:2026-05-12 07:23:43.398 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:68278:2026-05-12 07:23:43.398 [http-nio-18080-exec-6] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:68286:2026-05-12 07:23:43.986 [coze-task-1814] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=35 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:68287:2026-05-12 07:23:43.997 [coze-task-1814] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=595 -aiimage-backend.log.2026-05-12.2:71995:2026-05-12 07:29:50.259 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:71996:2026-05-12 07:29:50.264 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:71997:2026-05-12 07:29:50.282 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:71998:2026-05-12 07:29:50.282 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:72469:2026-05-12 07:30:20.715 [coze-task-1828] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638780497149100082 -aiimage-backend.log.2026-05-12.2:72470:2026-05-12 07:30:20.723 [coze-task-1828] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30438 -aiimage-backend.log.2026-05-12.2:72675:2026-05-12 07:30:32.414 [coze-task-1829] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53001 taskId=8095 executeId=7638780497149100082 -aiimage-backend.log.2026-05-12.2:72676:2026-05-12 07:30:32.420 [coze-task-1829] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53001 executeId=7638780497149100082 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:72682:2026-05-12 07:30:32.563 [coze-task-1829] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53001 executeId=7638780497149100082 status=RUNNING -aiimage-backend.log.2026-05-12.2:73174:2026-05-12 07:31:02.415 [coze-task-1831] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53001 taskId=8095 executeId=7638780497149100082 -aiimage-backend.log.2026-05-12.2:73175:2026-05-12 07:31:02.416 [coze-task-1831] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53001 executeId=7638780497149100082 lastPolledAt=2026-05-12T07:30:33 -aiimage-backend.log.2026-05-12.2:73708:2026-05-12 07:31:32.416 [coze-task-1832] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53001 taskId=8095 executeId=7638780497149100082 -aiimage-backend.log.2026-05-12.2:73709:2026-05-12 07:31:32.423 [coze-task-1832] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53001 executeId=7638780497149100082 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:73714:2026-05-12 07:31:32.748 [coze-task-1832] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53001 executeId=7638780497149100082 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:77821:2026-05-12 07:35:57.629 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:77822:2026-05-12 07:35:57.634 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:77823:2026-05-12 07:35:57.652 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:77824:2026-05-12 07:35:57.652 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:77830:2026-05-12 07:35:58.017 [coze-task-1842] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=27 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:77831:2026-05-12 07:35:58.023 [coze-task-1842] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=368 -aiimage-backend.log.2026-05-12.2:83252:2026-05-12 07:42:07.411 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:83253:2026-05-12 07:42:07.416 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:83254:2026-05-12 07:42:07.439 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:83255:2026-05-12 07:42:07.439 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:83260:2026-05-12 07:42:07.745 [coze-task-1870] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=48 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:83261:2026-05-12 07:42:07.756 [coze-task-1870] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=313 -aiimage-backend.log.2026-05-12.2:87680:2026-05-12 07:48:13.153 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:87681:2026-05-12 07:48:13.160 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:87682:2026-05-12 07:48:13.180 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:87683:2026-05-12 07:48:13.180 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:87958:2026-05-12 07:48:43.729 [coze-task-1879] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638785237577433098 -aiimage-backend.log.2026-05-12.2:87959:2026-05-12 07:48:43.736 [coze-task-1879] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30553 -aiimage-backend.log.2026-05-12.2:88142:2026-05-12 07:49:02.464 [coze-task-1881] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53011 taskId=8095 executeId=7638785237577433098 -aiimage-backend.log.2026-05-12.2:88144:2026-05-12 07:49:02.471 [coze-task-1881] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53011 executeId=7638785237577433098 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:88150:2026-05-12 07:49:02.592 [coze-task-1881] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53011 executeId=7638785237577433098 status=RUNNING -aiimage-backend.log.2026-05-12.2:88461:2026-05-12 07:49:32.465 [coze-task-1883] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53011 taskId=8095 executeId=7638785237577433098 -aiimage-backend.log.2026-05-12.2:88462:2026-05-12 07:49:32.467 [coze-task-1883] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53011 executeId=7638785237577433098 lastPolledAt=2026-05-12T07:49:03 -aiimage-backend.log.2026-05-12.2:88751:2026-05-12 07:50:02.467 [coze-task-1885] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53011 taskId=8095 executeId=7638785237577433098 -aiimage-backend.log.2026-05-12.2:88752:2026-05-12 07:50:02.474 [coze-task-1885] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53011 executeId=7638785237577433098 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:88763:2026-05-12 07:50:02.941 [coze-task-1885] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53011 executeId=7638785237577433098 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:92857:2026-05-12 07:54:17.964 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:92858:2026-05-12 07:54:17.970 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:92859:2026-05-12 07:54:17.990 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:92860:2026-05-12 07:54:17.990 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:92862:2026-05-12 07:54:18.428 [coze-task-1904] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=40 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:92863:2026-05-12 07:54:18.439 [coze-task-1904] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=446 -aiimage-backend.log.2026-05-12.2:96675:2026-05-12 08:00:26.842 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:96676:2026-05-12 08:00:26.848 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:96677:2026-05-12 08:00:26.869 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:96678:2026-05-12 08:00:26.869 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:97251:2026-05-12 08:00:57.580 [coze-task-1916] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638788406897917995 -aiimage-backend.log.2026-05-12.2:97252:2026-05-12 08:00:57.591 [coze-task-1916] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30718 -aiimage-backend.log.2026-05-12.2:97340:2026-05-12 08:01:02.500 [coze-task-1920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53019 taskId=8095 executeId=7638788406897917995 -aiimage-backend.log.2026-05-12.2:97345:2026-05-12 08:01:02.509 [coze-task-1920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53019 executeId=7638788406897917995 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:97350:2026-05-12 08:01:02.657 [coze-task-1920] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53019 executeId=7638788406897917995 status=RUNNING -aiimage-backend.log.2026-05-12.2:98108:2026-05-12 08:01:32.501 [coze-task-1923] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53019 taskId=8095 executeId=7638788406897917995 -aiimage-backend.log.2026-05-12.2:98111:2026-05-12 08:01:32.503 [coze-task-1923] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53019 executeId=7638788406897917995 lastPolledAt=2026-05-12T08:01:03 -aiimage-backend.log.2026-05-12.2:98940:2026-05-12 08:02:02.503 [coze-task-1925] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53019 taskId=8095 executeId=7638788406897917995 -aiimage-backend.log.2026-05-12.2:98941:2026-05-12 08:02:02.511 [coze-task-1925] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53019 executeId=7638788406897917995 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:98946:2026-05-12 08:02:02.967 [coze-task-1925] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53019 executeId=7638788406897917995 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:101742:2026-05-12 08:06:38.965 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:101743:2026-05-12 08:06:38.970 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:101744:2026-05-12 08:06:38.991 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:101745:2026-05-12 08:06:38.991 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:101748:2026-05-12 08:06:39.425 [coze-task-1935] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=32 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:101749:2026-05-12 08:06:39.431 [coze-task-1935] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=436 -aiimage-backend.log.2026-05-12.2:107403:2026-05-12 08:12:48.306 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:107404:2026-05-12 08:12:48.311 [http-nio-18080-exec-9] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:107405:2026-05-12 08:12:48.330 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:107406:2026-05-12 08:12:48.330 [http-nio-18080-exec-9] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:107735:2026-05-12 08:13:19.456 [coze-task-1950] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638791578316619811 -aiimage-backend.log.2026-05-12.2:107736:2026-05-12 08:13:19.466 [coze-task-1950] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=31132 -aiimage-backend.log.2026-05-12.2:107844:2026-05-12 08:13:32.535 [coze-task-1952] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53024 taskId=8095 executeId=7638791578316619811 -aiimage-backend.log.2026-05-12.2:107845:2026-05-12 08:13:32.543 [coze-task-1952] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53024 executeId=7638791578316619811 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:107847:2026-05-12 08:13:32.645 [coze-task-1952] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53024 executeId=7638791578316619811 status=RUNNING -aiimage-backend.log.2026-05-12.2:108129:2026-05-12 08:14:02.537 [coze-task-1953] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53024 taskId=8095 executeId=7638791578316619811 -aiimage-backend.log.2026-05-12.2:108130:2026-05-12 08:14:02.538 [coze-task-1953] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53024 executeId=7638791578316619811 lastPolledAt=2026-05-12T08:13:33 -aiimage-backend.log.2026-05-12.2:108427:2026-05-12 08:14:32.538 [coze-task-1954] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53024 taskId=8095 executeId=7638791578316619811 -aiimage-backend.log.2026-05-12.2:108428:2026-05-12 08:14:32.545 [coze-task-1954] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53024 executeId=7638791578316619811 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:108433:2026-05-12 08:14:32.952 [coze-task-1954] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53024 executeId=7638791578316619811 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:111121:2026-05-12 08:18:54.995 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:111122:2026-05-12 08:18:55.000 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:111123:2026-05-12 08:18:55.019 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:111124:2026-05-12 08:18:55.019 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:111126:2026-05-12 08:18:55.674 [coze-task-1964] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=24 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:111127:2026-05-12 08:18:55.685 [coze-task-1964] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=663 -aiimage-backend.log.2026-05-12.2:116269:2026-05-12 08:24:59.619 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:116270:2026-05-12 08:24:59.626 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:116271:2026-05-12 08:24:59.648 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:116272:2026-05-12 08:24:59.648 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:116286:2026-05-12 08:25:00.511 [coze-task-1989] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=45 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:116287:2026-05-12 08:25:00.524 [coze-task-1989] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=872 -aiimage-backend.log.2026-05-12.2:120437:2026-05-12 08:31:15.396 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:120438:2026-05-12 08:31:15.401 [http-nio-18080-exec-4] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:120439:2026-05-12 08:31:15.422 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:120440:2026-05-12 08:31:15.422 [http-nio-18080-exec-4] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:121725:2026-05-12 08:31:46.036 [coze-task-2002] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638796343398039561 -aiimage-backend.log.2026-05-12.2:121726:2026-05-12 08:31:46.043 [coze-task-2002] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30618 -aiimage-backend.log.2026-05-12.2:121901:2026-05-12 08:32:02.588 [coze-task-2004] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53033 taskId=8095 executeId=7638796343398039561 -aiimage-backend.log.2026-05-12.2:121902:2026-05-12 08:32:02.594 [coze-task-2004] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53033 executeId=7638796343398039561 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:121904:2026-05-12 08:32:02.718 [coze-task-2004] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53033 executeId=7638796343398039561 status=RUNNING -aiimage-backend.log.2026-05-12.2:122216:2026-05-12 08:32:32.589 [coze-task-2005] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53033 taskId=8095 executeId=7638796343398039561 -aiimage-backend.log.2026-05-12.2:122217:2026-05-12 08:32:32.590 [coze-task-2005] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53033 executeId=7638796343398039561 lastPolledAt=2026-05-12T08:32:03 -aiimage-backend.log.2026-05-12.2:122508:2026-05-12 08:33:02.591 [coze-task-2006] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53033 taskId=8095 executeId=7638796343398039561 -aiimage-backend.log.2026-05-12.2:122509:2026-05-12 08:33:02.598 [coze-task-2006] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53033 executeId=7638796343398039561 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:122514:2026-05-12 08:33:03.024 [coze-task-2006] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53033 executeId=7638796343398039561 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:125511:2026-05-12 08:37:35.205 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:125512:2026-05-12 08:37:35.212 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:125513:2026-05-12 08:37:35.233 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:125514:2026-05-12 08:37:35.233 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:125516:2026-05-12 08:37:35.581 [coze-task-2019] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=37 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:125517:2026-05-12 08:37:35.592 [coze-task-2019] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=355 -aiimage-backend.log.2026-05-12.2:130850:2026-05-12 08:43:52.884 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:130851:2026-05-12 08:43:52.889 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:130852:2026-05-12 08:43:52.910 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:130853:2026-05-12 08:43:52.910 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:131150:2026-05-12 08:44:23.666 [coze-task-2031] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638799601927241755 -aiimage-backend.log.2026-05-12.2:131151:2026-05-12 08:44:23.673 [coze-task-2031] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=30760 -aiimage-backend.log.2026-05-12.2:131253:2026-05-12 08:44:32.624 [coze-task-2033] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53040 taskId=8095 executeId=7638799601927241755 -aiimage-backend.log.2026-05-12.2:131256:2026-05-12 08:44:32.631 [coze-task-2033] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53040 executeId=7638799601927241755 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:131261:2026-05-12 08:44:32.732 [coze-task-2033] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53040 executeId=7638799601927241755 status=RUNNING -aiimage-backend.log.2026-05-12.2:131558:2026-05-12 08:45:02.626 [coze-task-2035] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53040 taskId=8095 executeId=7638799601927241755 -aiimage-backend.log.2026-05-12.2:131560:2026-05-12 08:45:02.627 [coze-task-2035] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53040 executeId=7638799601927241755 lastPolledAt=2026-05-12T08:44:33 -aiimage-backend.log.2026-05-12.2:131887:2026-05-12 08:45:32.627 [coze-task-2037] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53040 taskId=8095 executeId=7638799601927241755 -aiimage-backend.log.2026-05-12.2:131888:2026-05-12 08:45:32.634 [coze-task-2037] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53040 executeId=7638799601927241755 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:131893:2026-05-12 08:45:33.054 [coze-task-2037] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53040 executeId=7638799601927241755 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:134797:2026-05-12 08:50:10.773 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:134798:2026-05-12 08:50:10.779 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:134799:2026-05-12 08:50:10.797 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:134800:2026-05-12 08:50:10.797 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:134811:2026-05-12 08:50:11.436 [coze-task-2047] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=29 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:134812:2026-05-12 08:50:11.443 [coze-task-2047] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=639 -aiimage-backend.log.2026-05-12.2:140213:2026-05-12 08:56:21.587 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:140214:2026-05-12 08:56:21.592 [http-nio-18080-exec-3] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:140215:2026-05-12 08:56:21.609 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:140216:2026-05-12 08:56:21.609 [http-nio-18080-exec-3] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:140700:2026-05-12 08:57:10.187 [coze-task-2057] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze async submitted taskId=8095 jobId=2713 rows=50 batch=1/1 executeId=7638802886948667432 -aiimage-backend.log.2026-05-12.2:140701:2026-05-12 08:57:10.195 [coze-task-2057] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=48582 -aiimage-backend.log.2026-05-12.2:140919:2026-05-12 08:57:32.660 [coze-task-2061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53045 taskId=8095 executeId=7638802886948667432 -aiimage-backend.log.2026-05-12.2:140924:2026-05-12 08:57:32.668 [coze-task-2061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53045 executeId=7638802886948667432 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:140926:2026-05-12 08:57:32.787 [coze-task-2061] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll pending taskId=8095 stateId=53045 executeId=7638802886948667432 status=RUNNING -aiimage-backend.log.2026-05-12.2:141240:2026-05-12 08:58:02.661 [coze-task-2064] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53045 taskId=8095 executeId=7638802886948667432 -aiimage-backend.log.2026-05-12.2:141242:2026-05-12 08:58:02.662 [coze-task-2064] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll skipped by claim guard taskId=8095 stateId=53045 executeId=7638802886948667432 lastPolledAt=2026-05-12T08:57:33 -aiimage-backend.log.2026-05-12.2:141564:2026-05-12 08:58:32.663 [coze-task-2067] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll worker entered stateId=53045 taskId=8095 executeId=7638802886948667432 -aiimage-backend.log.2026-05-12.2:141565:2026-05-12 08:58:32.669 [coze-task-2067] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll start taskId=8095 stateId=53045 executeId=7638802886948667432 jobId=2713 chunk=null batch=1/1 -aiimage-backend.log.2026-05-12.2:141570:2026-05-12 08:58:33.013 [coze-task-2067] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze poll completed taskId=8095 stateId=53045 executeId=7638802886948667432 status=DONE batchRows=50 mergedRows=50 failure=- -aiimage-backend.log.2026-05-12.2:145540:2026-05-12 09:02:30.341 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:145541:2026-05-12 09:02:30.346 [http-nio-18080-exec-5] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:145542:2026-05-12 09:02:30.364 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:145543:2026-05-12 09:02:30.364 [http-nio-18080-exec-5] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:145549:2026-05-12 09:02:30.976 [coze-task-2076] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=21 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:145550:2026-05-12 09:02:30.986 [coze-task-2076] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=619 -aiimage-backend.log.2026-05-12.2:149475:2026-05-12 09:08:41.632 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:149476:2026-05-12 09:08:41.636 [http-nio-18080-exec-2] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:149477:2026-05-12 09:08:41.655 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:149478:2026-05-12 09:08:41.655 [http-nio-18080-exec-2] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:149483:2026-05-12 09:08:42.279 [coze-task-2093] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] coze batch waiting for more rows taskId=8095 jobId=2713 pendingRows=42 batchSize=50 finalUpload=false -aiimage-backend.log.2026-05-12.2:149484:2026-05-12 09:08:42.285 [coze-task-2093] INFO c.n.a.m.t.s.TaskResultFileJobWorker - [task-file-job] process deferred jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT resultId=10731 elapsedMs=627 -aiimage-backend.log.2026-05-12.2:155090:2026-05-12 09:14:51.029 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:155091:2026-05-12 09:14:51.035 [http-nio-18080-exec-8] INFO c.n.a.m.a.s.AppearancePatentTaskService - [appearance-patent] scope state updated taskId=8095 scope=8095 scopeHash=c40b15ca508f04649d16db6256bcbe09f2dd2fea63824d4e812a787d26c67ecd completed=false cozeDone=false -aiimage-backend.log.2026-05-12.2:155092:2026-05-12 09:14:51.052 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobPublisher - [task-file-job] mq disabled, fallback to local dispatcher/scheduled worker jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT -aiimage-backend.log.2026-05-12.2:155093:2026-05-12 09:14:51.052 [http-nio-18080-exec-8] INFO c.n.a.m.t.s.TaskFileJobDispatchCoordinator - [task-file-job] forced local async dispatch scheduled jobId=2713 taskId=8095 moduleType=APPEARANCE_PATENT diff --git a/app/.env b/app/.env index f106c81..49ccb5d 100644 --- a/app/.env +++ b/app/.env @@ -1,6 +1,6 @@ -base_url=http://8.136.19.173:15124 +base_url=http://47.110.241.161:15124 workflow_id=7608812635877900322 -mysql_host=8.136.19.173 +mysql_host=47.110.241.161 mysql_user=aiimage proxy_url=https://api.jikip.com/ip-get?num=1&minute=1&format=json&area=all&protocol=1&mode=2&key=t24g6gi44ubufd8 @@ -13,7 +13,7 @@ client_name=ShuFuAI # java_api_base=http://47.111.163.154:18080 -java_api_base=http://127.0.0.1:18080 -# java_api_base=http://121.196.149.225:18080 +# java_api_base=http://127.0.0.1:18080 +java_api_base=http://121.196.149.225:18080 diff --git a/app/.env copy b/app/.env copy index 0ff00cd..26fc410 100644 --- a/app/.env copy +++ b/app/.env copy @@ -1,6 +1,6 @@ -base_url=http://8.136.19.173:15124 +base_url=http://47.111.163.154:15124 workflow_id=7608812635877900322 -mysql_host=8.136.19.173 +mysql_host=47.111.163.154 mysql_user=aiimage proxy_url=https://api.jikip.com/ip-get?num=1&minute=1&format=json&area=all&protocol=1&mode=2&key=t24g6gi44ubufd8 @@ -10,6 +10,6 @@ client_name=ShuFuAI java_api_base=http://127.0.0.1:18080 -# java_api_base=http://8.136.19.173:18080 +# java_api_base=http://47.111.163.154:18080 diff --git a/app/.env.example b/app/.env.example index 3cadbd4..7de63f3 100644 --- a/app/.env.example +++ b/app/.env.example @@ -1,5 +1,5 @@ workflow_id=7608812635877900322 -mysql_host=8.136.19.173 +mysql_host=47.111.163.154 mysql_user=aiimage proxy_url=https://api.jikip.com/ip-get?num=1&minute=1&format=json&area=all&protocol=1&mode=2&key=t24g6gi44ubufd8 @@ -13,6 +13,6 @@ client_name=ShuFuAI java_api_base=http://47.111.163.154:18080 # java_api_base=http://127.0.0.1:18080 -# java_api_base=http://8.136.19.173:18080 +# java_api_base=http://47.111.163.154:18080 diff --git a/app/assets/appearance-patent--ibZ-SKG.css b/app/assets/appearance-patent--ibZ-SKG.css deleted file mode 100644 index 42c60fe..0000000 --- a/app/assets/appearance-patent--ibZ-SKG.css +++ /dev/null @@ -1 +0,0 @@ -.module-page[data-v-deab2989]{min-height:100vh;background:#1a1a1a}.main-content[data-v-deab2989]{display:flex;height:calc(100vh - 56px);min-height:calc(100vh - 56px)}.left-panel[data-v-deab2989]{width:400px;background:#1e1e1e;padding:20px;overflow-y:auto;border-right:1px solid #2a2a2a}.right-panel[data-v-deab2989]{flex:1;min-width:0;background:#1a1a1a;display:flex;flex-direction:column}.section-title[data-v-deab2989],.subsection-title[data-v-deab2989]{font-size:13px;color:#bbb;margin-bottom:10px}.upload-zone[data-v-deab2989]{border:1px dashed #3a3a3a;border-radius:10px;padding:18px;background:#252525;margin-bottom:18px}.hint[data-v-deab2989],.loading-msg[data-v-deab2989],.files[data-v-deab2989],.muted[data-v-deab2989]{color:#888;font-size:12px;line-height:1.5}.link[data-v-deab2989]{color:#6ea8fe;text-decoration:none}.link[data-v-deab2989]:hover{color:#9fc5ff}.btns[data-v-deab2989],.run-row[data-v-deab2989]{display:flex;gap:10px;flex-wrap:wrap}.opt-btn[data-v-deab2989],.btn-run[data-v-deab2989],.btn-delete[data-v-deab2989],.download[data-v-deab2989]{border:none;cursor:pointer;border-radius:7px}.opt-btn[data-v-deab2989]{padding:8px 14px;color:#ccc;background:#2a2a2a;border:1px solid #3a3a3a}.btn-run[data-v-deab2989]{padding:10px 18px;color:#fff;background:#3498db;font-weight:600}.btn-queue[data-v-deab2989]{background:#27ae60}.btn-run[data-v-deab2989]:disabled{opacity:.55;cursor:not-allowed}.selected-files[data-v-deab2989]{margin-top:14px;color:#999;font-size:12px;word-break:break-all}.selected-files span[data-v-deab2989]{display:block;margin:4px 0}.prompt-card[data-v-deab2989],.secret-card[data-v-deab2989]{margin-bottom:18px}.secret-card[data-v-deab2989]{display:none}.prompt-input[data-v-deab2989]{width:100%;box-sizing:border-box;resize:vertical;min-height:180px;padding:10px 12px;border:1px solid #333;border-radius:8px;background:#202020;color:#d8d8d8;font-size:12px;line-height:1.6;outline:none}.secret-input[data-v-deab2989]{width:100%;box-sizing:border-box;height:38px;padding:0 12px;border:1px solid #333;border-radius:8px;background:#202020;color:#d8d8d8;font-size:12px;outline:none}.prompt-input[data-v-deab2989]:focus,.secret-input[data-v-deab2989]:focus{border-color:#3498db}.prompt-default-label[data-v-deab2989]{margin-top:10px;color:#8d8d8d;font-size:12px}.prompt-preview[data-v-deab2989]{margin-top:10px;padding:12px;border:1px solid #2a2a2a;border-radius:8px;background:#202020;color:#9ea7b3;font-size:12px;line-height:1.6;white-space:pre-wrap}.parse-card[data-v-deab2989],.queue-payload[data-v-deab2989]{margin-top:14px;padding:12px;border:1px solid #2a2a2a;border-radius:8px;background:#202020;color:#b8c1cc;font-size:12px}.queue-payload[data-v-deab2989]{max-height:220px;overflow:auto;color:#8fd3ff;white-space:pre-wrap}.panel-header[data-v-deab2989]{padding:16px 20px;border-bottom:1px solid #2a2a2a;font-size:15px;font-weight:600;color:#ddd}.task-list-wrap[data-v-deab2989]{flex:1;padding:16px 20px;overflow:auto}.clean-result-summary[data-v-deab2989]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card[data-v-deab2989]{padding:14px 16px;border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e}.summary-card strong[data-v-deab2989]{display:block;margin-top:8px;color:#eaf4ff;font-size:22px}.summary-label[data-v-deab2989]{color:#8d8d8d;font-size:12px}.result-list-wrap[data-v-deab2989]{border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e;min-height:180px;margin:0 0 16px}.result-list-header[data-v-deab2989]{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #2a2a2a;color:#ddd;font-size:14px}.empty-tasks[data-v-deab2989]{color:#666;font-size:13px;padding:18px;text-align:center}.result-table[data-v-deab2989]{--el-table-bg-color: #222;--el-table-tr-bg-color: #222;--el-table-header-bg-color: #2a2a2a;--el-table-text-color: #ccc;--el-table-border-color: #333}.task-list[data-v-deab2989]{list-style:none;margin:0;padding:12px}.task-item[data-v-deab2989]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #2a2a2a;border-radius:8px;margin-bottom:8px;background:#222}.left[data-v-deab2989]{flex:1;min-width:0}.id[data-v-deab2989]{color:#e0e0e0;font-size:13px;font-weight:600}.task-right[data-v-deab2989]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status[data-v-deab2989]{padding:4px 10px;border-radius:6px;font-size:12px}.status.success[data-v-deab2989]{background:#2ecc712e;color:#2ecc71}.status.failed[data-v-deab2989]{background:#e74c3c2e;color:#ff6b6b}.status.running[data-v-deab2989]{background:#3498db2e;color:#3498db}.status.pending[data-v-deab2989]{background:#95a5a62e;color:#bdc3c7}.result-hint[data-v-deab2989]{margin-top:6px;color:#e0b96d}.file-progress[data-v-deab2989]{margin-top:8px;max-width:520px}.file-progress-meta[data-v-deab2989]{display:flex;justify-content:space-between;gap:12px;color:#d8c278;font-size:12px}.file-progress-track[data-v-deab2989]{margin-top:5px;height:8px;border-radius:999px;overflow:hidden;background:#303030;border:1px solid #3b3b3b}.file-progress-bar[data-v-deab2989]{height:100%;border-radius:inherit;background:linear-gradient(90deg,#4aa3ff,#f0c75e);transition:width .25s ease}.download[data-v-deab2989]{padding:6px 10px;color:#d6ecff;background:#3498db2e}.btn-delete[data-v-deab2989]{padding:6px 10px;color:#ff8f8f;background:#e74c3c1f}@media(max-width:1100px){.main-content[data-v-deab2989]{flex-direction:column;height:auto}.left-panel[data-v-deab2989]{width:100%;border-right:none;border-bottom:1px solid #2a2a2a}.clean-result-summary[data-v-deab2989]{grid-template-columns:repeat(2,minmax(0,1fr))}} diff --git a/app/assets/appearance-patent-CPFwc68H.css b/app/assets/appearance-patent-CPFwc68H.css new file mode 100644 index 0000000..8e75ae7 --- /dev/null +++ b/app/assets/appearance-patent-CPFwc68H.css @@ -0,0 +1 @@ +.module-page[data-v-515306ea]{min-height:100vh;background:#1a1a1a}.main-content[data-v-515306ea]{display:flex;height:calc(100vh - 56px);min-height:calc(100vh - 56px)}.left-panel[data-v-515306ea]{width:400px;background:#1e1e1e;padding:20px;overflow-y:auto;border-right:1px solid #2a2a2a}.right-panel[data-v-515306ea]{flex:1;min-width:0;background:#1a1a1a;display:flex;flex-direction:column}.section-title[data-v-515306ea],.subsection-title[data-v-515306ea]{font-size:13px;color:#bbb;margin-bottom:10px}.upload-zone[data-v-515306ea]{border:1px dashed #3a3a3a;border-radius:10px;padding:18px;background:#252525;margin-bottom:18px}.hint[data-v-515306ea],.loading-msg[data-v-515306ea],.files[data-v-515306ea],.muted[data-v-515306ea]{color:#888;font-size:12px;line-height:1.5}.link[data-v-515306ea]{color:#6ea8fe;text-decoration:none}.link[data-v-515306ea]:hover{color:#9fc5ff}.btns[data-v-515306ea],.run-row[data-v-515306ea]{display:flex;gap:10px;flex-wrap:wrap}.opt-btn[data-v-515306ea],.btn-run[data-v-515306ea],.btn-delete[data-v-515306ea],.download[data-v-515306ea]{border:none;cursor:pointer;border-radius:7px}.opt-btn[data-v-515306ea]{padding:8px 14px;color:#ccc;background:#2a2a2a;border:1px solid #3a3a3a}.btn-run[data-v-515306ea]{padding:10px 18px;color:#fff;background:#3498db;font-weight:600}.btn-queue[data-v-515306ea]{background:#27ae60}.btn-run[data-v-515306ea]:disabled{opacity:.55;cursor:not-allowed}.selected-files[data-v-515306ea]{margin-top:14px;color:#999;font-size:12px;word-break:break-all}.selected-files span[data-v-515306ea]{display:block;margin:4px 0}.prompt-card[data-v-515306ea],.secret-card[data-v-515306ea]{margin-bottom:18px}.secret-card[data-v-515306ea]{display:none}.prompt-input[data-v-515306ea]{width:100%;box-sizing:border-box;resize:vertical;min-height:180px;padding:10px 12px;border:1px solid #333;border-radius:8px;background:#202020;color:#d8d8d8;font-size:12px;line-height:1.6;outline:none}.secret-input[data-v-515306ea]{width:100%;box-sizing:border-box;height:38px;padding:0 12px;border:1px solid #333;border-radius:8px;background:#202020;color:#d8d8d8;font-size:12px;outline:none}.prompt-input[data-v-515306ea]:focus,.secret-input[data-v-515306ea]:focus{border-color:#3498db}.parse-card[data-v-515306ea],.queue-payload[data-v-515306ea]{margin-top:14px;padding:12px;border:1px solid #2a2a2a;border-radius:8px;background:#202020;color:#b8c1cc;font-size:12px}.queue-payload[data-v-515306ea]{max-height:220px;overflow:auto;color:#8fd3ff;white-space:pre-wrap}.panel-header[data-v-515306ea]{padding:16px 20px;border-bottom:1px solid #2a2a2a;font-size:15px;font-weight:600;color:#ddd}.task-list-wrap[data-v-515306ea]{flex:1;padding:16px 20px;overflow:auto}.clean-result-summary[data-v-515306ea]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card[data-v-515306ea]{padding:14px 16px;border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e}.summary-card strong[data-v-515306ea]{display:block;margin-top:8px;color:#eaf4ff;font-size:22px}.summary-label[data-v-515306ea]{color:#8d8d8d;font-size:12px}.result-list-wrap[data-v-515306ea]{border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e;min-height:180px;margin:0 0 16px}.result-list-header[data-v-515306ea]{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #2a2a2a;color:#ddd;font-size:14px}.empty-tasks[data-v-515306ea]{color:#666;font-size:13px;padding:18px;text-align:center}.result-table[data-v-515306ea]{--el-table-bg-color: #222;--el-table-tr-bg-color: #222;--el-table-header-bg-color: #2a2a2a;--el-table-text-color: #ccc;--el-table-border-color: #333}.task-list[data-v-515306ea]{list-style:none;margin:0;padding:12px}.task-item[data-v-515306ea]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #2a2a2a;border-radius:8px;margin-bottom:8px;background:#222}.left[data-v-515306ea]{flex:1;min-width:0}.id[data-v-515306ea]{color:#e0e0e0;font-size:13px;font-weight:600}.task-right[data-v-515306ea]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status[data-v-515306ea]{padding:4px 10px;border-radius:6px;font-size:12px}.status.success[data-v-515306ea]{background:#2ecc712e;color:#2ecc71}.status.failed[data-v-515306ea]{background:#e74c3c2e;color:#ff6b6b}.status.running[data-v-515306ea]{background:#3498db2e;color:#3498db}.status.pending[data-v-515306ea]{background:#95a5a62e;color:#bdc3c7}.result-hint[data-v-515306ea]{margin-top:6px;color:#e0b96d}.file-progress[data-v-515306ea]{margin-top:8px;max-width:520px}.file-progress-meta[data-v-515306ea]{display:flex;justify-content:space-between;gap:12px;color:#d8c278;font-size:12px}.file-progress-track[data-v-515306ea]{margin-top:5px;height:8px;border-radius:999px;overflow:hidden;background:#303030;border:1px solid #3b3b3b}.file-progress-bar[data-v-515306ea]{height:100%;border-radius:inherit;background:linear-gradient(90deg,#4aa3ff,#f0c75e);transition:width .25s ease}.download[data-v-515306ea]{padding:6px 10px;color:#d6ecff;background:#3498db2e}.btn-delete[data-v-515306ea]{padding:6px 10px;color:#ff8f8f;background:#e74c3c1f}@media(max-width:1100px){.main-content[data-v-515306ea]{flex-direction:column;height:auto}.left-panel[data-v-515306ea]{width:100%;border-right:none;border-bottom:1px solid #2a2a2a}.clean-result-summary[data-v-515306ea]{grid-template-columns:repeat(2,minmax(0,1fr))}} diff --git a/app/assets/appearance-patent.js b/app/assets/appearance-patent.js index 9be3522..fbac5a4 100644 --- a/app/assets/appearance-patent.js +++ b/app/assets/appearance-patent.js @@ -1,6 +1,9 @@ -import{d as Be,o as He,L as Ke,a as i,c,b as Je,B as qe,e as a,F as ee,r as se,t as r,w as je,G as Ve,f as k,N as ge,n as Oe,g as v,h as J,i as D,E as d,V as Xe,W as Qe,X as We,U as he,Y as Ye,Z as Ze,$ as es,a0 as ss,a1 as ts,a2 as as,a3 as ls,_ as ns,q as rs,s as os}from"./pywebview-ZMN052YE.js";import{e as us}from"./brand-DfxdJ4w6.js";import{c as is}from"./categorized-timers-JPA-olTr.js";const cs={class:"page-shell module-page"},ds={class:"main-content"},fs={class:"left-panel"},ps={class:"upload-zone"},vs={class:"selected-files"},gs={key:0},hs={class:"prompt-card"},ys={class:"run-row"},ks=["disabled"],Is=["disabled"],_s={key:0,class:"parse-card"},Ps={key:1,class:"queue-payload"},ws={class:"right-panel"},Cs={class:"task-list-wrap"},bs={class:"clean-result-summary"},ms={class:"summary-card"},Ss={class:"summary-card"},Fs={class:"summary-card"},Ns={class:"summary-card"},Ts={class:"result-list-wrap"},Rs={key:0,class:"empty-tasks"},Es={key:1,class:"task-list clean-result-list"},As={class:"left"},xs={class:"id"},Us={class:"files"},Ds={class:"files"},$s={key:0,class:"files result-hint"},zs={key:1,class:"file-progress"},Ms={class:"file-progress-meta"},Gs={class:"file-progress-track"},Ls={class:"task-right"},Bs={class:"status running"},Hs=["onClick"],Ks={class:"result-list-wrap"},Js={key:0,class:"empty-tasks"},qs={key:1,class:"task-list clean-result-list"},js={class:"left"},Vs={class:"id"},Os={class:"files"},Xs={key:0,class:"files"},Qs={key:1,class:"files result-hint"},Ws={key:2,class:"file-progress"},Ys={class:"file-progress-meta"},Zs={class:"file-progress-track"},et={key:3,class:"files"},st={class:"task-right"},tt=["onClick"],at=["onClick"],ye=`请帮我排查以下亚马逊商品在英国及欧洲地区是否存在知识产权侵权风险。 +import{d as Be,o as He,L as Ke,a as i,c,b as Je,B as qe,e as a,F as ee,r as se,t as r,w as je,G as Ve,f as k,N as ge,n as Oe,g as v,h as J,i as D,E as d,V as Xe,W as Qe,X as We,U as he,Y as Ye,Z as Ze,$ as es,a0 as ss,a1 as ts,a2 as as,a3 as ls,_ as ns,q as rs,s as os}from"./pywebview-84Lhn3TI.js";import{e as us}from"./brand-DIMFUl0j.js";import{c as is}from"./categorized-timers-JPA-olTr.js";const cs={class:"page-shell module-page"},ds={class:"main-content"},fs={class:"left-panel"},ps={class:"upload-zone"},vs={class:"selected-files"},gs={key:0},hs={class:"prompt-card"},ys={class:"run-row"},ks=["disabled"],Is=["disabled"],_s={key:0,class:"parse-card"},Ps={key:1,class:"queue-payload"},ws={class:"right-panel"},Cs={class:"task-list-wrap"},bs={class:"clean-result-summary"},ms={class:"summary-card"},Ss={class:"summary-card"},Fs={class:"summary-card"},Ns={class:"summary-card"},Ts={class:"result-list-wrap"},Rs={key:0,class:"empty-tasks"},Es={key:1,class:"task-list clean-result-list"},xs={class:"left"},As={class:"id"},Us={class:"files"},Ds={class:"files"},$s={key:0,class:"files result-hint"},zs={key:1,class:"file-progress"},Ms={class:"file-progress-meta"},Gs={class:"file-progress-track"},Ls={class:"task-right"},Bs={class:"status running"},Hs=["onClick"],Ks={class:"result-list-wrap"},Js={key:0,class:"empty-tasks"},qs={key:1,class:"task-list clean-result-list"},js={class:"left"},Vs={class:"id"},Os={class:"files"},Xs={key:0,class:"files"},Qs={key:1,class:"files result-hint"},Ws={key:2,class:"file-progress"},Ys={class:"file-progress-meta"},Zs={class:"file-progress-track"},et={key:3,class:"files"},st={class:"task-right"},tt=["onClick"],at=["onClick"],ye=`请帮我排查以下亚马逊商品在英国及欧洲地区是否存在知识产权侵权风险。 请直接给出明确结论(有侵权风险 或 未发现明显侵权风险),并严格按照以下三个维度提供精简的排查理由: 外观维度: 评估产品外形、图案设计是否与欧洲/英国常见外观专利雷同。 专利维度: 评估产品的核心技术或物理结构是否存在侵权可能。 标题维度: 排查标题中是否包含大牌商标、敏感词或版权保护词汇。 -结论:XX`,lt=3e3,nt=Be({__name:"BrandAppearancePatentTab",setup(ot){const $=v([]),N=v([]),P=v(null),T=v(null),q=v(""),z=v(!1),M=v(!1),C=v(""),f=v([]),u=v([]),h=v(null),j=v(!1);let R=null,te=0,E=!1;const A=is("appearance-patent"),x=v({pendingTaskCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),g=v([]),w=v({}),m=J(()=>P.value||T.value),V=J(()=>{const e=P.value;return!e?.taskId||g.value.some(t=>t.taskId===e.taskId)?null:{taskId:e.taskId,sourceFilename:e.sourceFilename,rowCount:e.acceptedRows,taskStatus:"PENDING",success:!1}}),ae=J(()=>{const e=new Set([...f.value,...u.value]),s=g.value.filter(n=>{const l=y(n);return n.taskId!=null&&(e.has(n.taskId)||l==="RUNNING"||l==="PENDING")}).map(n=>ne(n));for(const[n,l]of Object.entries(w.value)){const o=Number(n);!Number.isFinite(o)||o<=0||!e.has(o)&&y(l)!=="RUNNING"&&y(l)!=="PENDING"||s.some(p=>p.taskId===o)||s.push(ne(l))}return V.value?s.some(n=>n.taskId===V.value?.taskId)?s:[V.value,...s]:s}),le=J(()=>g.value.filter(e=>{const s=y(e);return s!=="RUNNING"&&s!=="PENDING"}));function ne(e){if(e.taskId==null)return e;const s=w.value[e.taskId];return s?{...e,...s,sourceFilename:s.sourceFilename||e.sourceFilename,resultFilename:s.resultFilename||e.resultFilename,rowCount:s.rowCount??e.rowCount,createdAt:s.createdAt||e.createdAt}:e}function re(){return q.value.trim()||ye}function G(){return as("appearance-patent").trim()}function ke(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function O(){return`appearance-patent:tasks:${ke()}`}function Ie(e){return{taskId:e.taskId,totalRows:e.totalRows,acceptedRows:e.acceptedRows,groupCount:e.groupCount,droppedRows:e.droppedRows}}function b(){if(typeof window>"u")return;const e=Array.from(new Set([...f.value,...u.value]));e.length?window.localStorage.setItem(O(),JSON.stringify(e)):window.localStorage.removeItem(O())}function _e(){if(!(typeof window>"u"))try{const e=window.localStorage.getItem(O()),s=e?JSON.parse(e):[];f.value=Array.isArray(s)?s.filter(t=>typeof t=="number"&&t>0):[]}catch{f.value=[]}}async function oe(e){const s=D();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传能力");const t=[];for(const n of e){const l=typeof n=="string"?n:n.absolutePath,o=typeof n=="string"?void 0:n.relativePath,p=await s.upload_file_to_java(l,o);if(!p?.success||!p.data)throw new Error(p?.error||p?.message||`上传失败:${l}`);t.push(p.data)}return t}async function Pe(){const e=D();if(!e?.select_brand_xlsx_files||!e.upload_file_to_java){d.warning("当前环境不支持文件选择或上传");return}const s=await e.select_brand_xlsx_files();if(!s?.length)return;const t=await oe(s);N.value=t,$.value=t.map(n=>n.relativePath||n.originalFilename||n.fileKey),P.value=null,T.value=null,C.value=""}async function we(){const e=D();if(!e?.select_brand_folder){d.warning("当前环境不支持文件夹选择,请在本地客户端中打开");return}try{const s=await e.select_brand_folder();if(!s)return;const t=await us(s);if(!t.success||!t.items?.length){d.warning(t.error||"该文件夹下没有可用的 xlsx 文件");return}const n=await oe(t.items);N.value=n,$.value=t.items.map(l=>l.relativePath||l.absolutePath),P.value=null,T.value=null,C.value="",d.success(`已选择文件夹内 ${t.items.length} 个 Excel 文件`)}catch(s){d.error(s instanceof Error?s.message:"选择失败")}}async function Ce(){if(!N.value.length){d.warning("请先选择 Excel");return}if(!G()){d.warning("请先在左上角设置中填写外观专利密钥");return}z.value=!0;try{const e=N.value.map(t=>({fileKey:t.fileKey,originalFilename:t.originalFilename,relativePath:t.relativePath})),s=await Xe(e,re(),G());P.value=s,T.value=null,C.value="",d.success(`解析完成,共 ${s.groupCount||0} 组 / ${s.acceptedRows} 条`)}catch(e){d.error(e instanceof Error?e.message:"解析失败")}finally{z.value=!1}}async function be(){const e=D(),s=P.value,t=s?.taskId;if(!t){d.warning("请先解析文件");return}if(!e?.enqueue_json){d.error("当前环境未启用 pywebview enqueue_json");return}if(!G()){d.warning("请先在左上角设置中填写外观专利密钥");return}M.value=!0;try{const n=await Qe(t),l=n.groups||[],o={type:"appearance-patent-run",ts:Date.now(),data:{taskId:t,prompt:n.aiPrompt||s.aiPrompt||re(),api_key:G(),sourceFileCount:s.sourceFileCount||0,totalRows:s.totalRows||0,acceptedRows:s.acceptedRows||0,groupCount:s.groupCount||0,groups:l.map(I=>({sourceFileKey:I.sourceFileKey||"",sourceFilename:I.sourceFilename||"",groupKey:I.groupKey||"",baseId:I.baseId||"",displayId:I.displayId||"",items:(I.items||[]).map(_=>({sourceFileKey:_.sourceFileKey||"",sourceFilename:_.sourceFilename||"",rowToken:_.rowToken||"",groupKey:_.groupKey||"",id:_.displayId,asin:_.asin,country:_.country,url:_.url||"",title:_.title||""}))}))}};C.value=`任务 ${t} 已准备推送,共 ${l.length} 组`,await We(t);const p=await e.enqueue_json(o);if(!p?.success){d.error(p?.error||"推送失败");return}T.value=Ie(s),Se(t),me(),await L(),await B({force:!0}),d.success("已推送到 Python 队列")}finally{M.value=!1}}function me(){P.value=null,C.value=""}function Se(e){f.value.includes(e)||(f.value=[...f.value,e],b()),S()}function X(e){if(f.value=f.value.filter(s=>s!==e),!u.value.includes(e)){const s={...w.value};delete s[e],w.value=s}b()}function Fe(e){u.value.includes(e)||(u.value=[...u.value,e],b()),S()}function Q(e){if(u.value=u.value.filter(s=>s!==e),!f.value.includes(e)){const s={...w.value};delete s[e],w.value=s}b()}function S(){E||h.value==null&&Ne(!0)}function ue(){h.value!=null&&(A.clearTimer("task-poll",h.value),h.value=null)}function Ne(e=!1){if(E)return;if(h.value!=null){if(!e)return;A.clearTimer("task-poll",h.value),h.value=null}const s=async()=>{h.value=null,!E&&(!f.value.length&&!u.value.length||(await Te(),!E&&h.value==null&&(f.value.length||u.value.length)&&(h.value=A.setTimeout("task-poll",s,he()))))};e?s():h.value=A.setTimeout("task-poll",s,he())}async function Te(){if(j.value||!f.value.length&&!u.value.length){!f.value.length&&!u.value.length&&ue();return}j.value=!0;try{let e=!1,s=!1;const t=Array.from(new Set([...f.value,...u.value]));if(t.length){const n=await ls(t,{force:u.value.length>0});for(const l of n.items||[]){const o=l.task;if(!o?.id)continue;const p=l.items?.[0];if(p&&(w.value={...w.value,[o.id]:p},Re(p)),(o.status==="SUCCESS"||o.status==="FAILED")&&(X(o.id),e=!0,o.status==="SUCCESS"?Fe(o.id):Q(o.id)),p&&o.status==="SUCCESS"&&u.value.includes(o.id)){const I=(p.fileStatus||"").toUpperCase();(p.fileReady||I==="SUCCESS"||I==="FAILED")&&(Q(o.id),e=!0,s=!0)}}n.missingTaskIds?.length&&(n.missingTaskIds.forEach(l=>{X(l),Q(l)}),s=!0,e=!0)}e&&await L(),s&&await B(),Ee()}finally{j.value=!1}}function Re(e){if(!e.taskId&&!e.resultId)return;const s=g.value.findIndex(t=>e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId);s>=0?g.value[s]={...g.value[s],...e}:g.value=[e,...g.value]}function Ee(){if(!u.value.length)return;const e=[];for(const s of u.value){const t=g.value.find(o=>o.taskId===s);if(!t){e.push(s);continue}const n=(t.taskStatus||"").toUpperCase(),l=(t.fileStatus||"").toUpperCase();n==="FAILED"||t.fileReady||l==="SUCCESS"||l==="FAILED"||n==="SUCCESS"&&e.push(s)}u.value=e,b(),u.value.length&&S()}function Ae(){const e=g.value.filter(s=>s.taskId!=null&&F(s)).map(s=>s.taskId);u.value=Array.from(new Set(e)),b(),u.value.length&&S()}function xe(){const e=g.value.filter(s=>s.taskId!=null&&y(s)==="RUNNING").map(s=>s.taskId);e.length&&(f.value=Array.from(new Set([...f.value,...e])),b(),S())}async function L(){x.value=await Ye()}async function B(e={}){const s=Date.now();if(!(!e.force&&g.value.length&&s-te{g.value=Ue(g.value,t.items||[]),te=Date.now()}).finally(()=>{R=null}),R)}function Ue(e,s){const t=new Map,n=new Map;for(const l of e||[])l.taskId!=null&&t.set(l.taskId,l),l.resultId!=null&&n.set(l.resultId,l);return(s||[]).map(l=>{const o=l.resultId!=null?n.get(l.resultId):l.taskId!=null?t.get(l.taskId):void 0;return De(o,l)})}function De(e,s){return!e||!((y(e)==="RUNNING"||F(e)||U(e))&&!U(s)&&!Z(s))?s:{...s,fileJobId:s.fileJobId??e.fileJobId,fileStatus:s.fileStatus||e.fileStatus,fileError:s.fileError||e.fileError,fileReady:s.fileReady||e.fileReady,fileProgressPercent:W(s.fileProgressPercent)?s.fileProgressPercent:e.fileProgressPercent,fileProgressCurrent:W(s.fileProgressCurrent)?s.fileProgressCurrent:e.fileProgressCurrent,fileProgressTotal:W(s.fileProgressTotal)?s.fileProgressTotal:e.fileProgressTotal,fileProgressMessage:(s.fileProgressMessage||"").trim()?s.fileProgressMessage:e.fileProgressMessage}}function W(e){const s=Number(e);return Number.isFinite(s)&&s>0}function ie(e){const s=y(e);return s==="RUNNING"?"执行中":s==="PENDING"?"已解析待推送":F(e)?"结果生成中":Y(e)?"结果生成失败":s==="SUCCESS"||e.success?"已完成":s==="FAILED"?"失败":"等待中"}function $e(e){const s=y(e);return s==="RUNNING"||F(e)?"running":Y(e)||s==="FAILED"?"failed":s==="SUCCESS"||e.success?"success":"pending"}function F(e){const s=y(e),t=(e.fileStatus||"").toUpperCase();return!(s!=="SUCCESS"||Z(e)||t==="FAILED"||t==="SUCCESS")}function y(e){return(e.taskStatus||"").toUpperCase()}function Y(e){return(e.fileStatus||"").toUpperCase()==="FAILED"}function H(e){if(Y(e))return e.fileError||"结果文件生成失败,请稍后重试或检查后端日志";if(U(e)||!F(e))return"";const s=(e.fileStatus||"").toUpperCase();return s==="RUNNING"?"任务已完成,正在等待 Coze 回流并组装结果文件,下载按钮稍后出现":s==="PENDING"?"任务已完成,结果文件已入队,正在等待后端开始处理":"任务已完成,正在生成结果文件,下载按钮稍后出现"}function Z(e){return!!(e.resultId&&(e.fileReady||e.downloadUrl))}function K(e){const s=Number(e.fileProgressPercent||0);return Number.isFinite(s)&&s>0?Math.max(0,Math.min(100,Math.round(s))):pe(e)?fe(e)==="PENDING"?6:10:0}function ce(e,s){const t=(e.fileProgressMessage||"").trim();return t?ze(t):s}function ze(e){const s=e.match(/^Coze submitted (\d+) batches, completed (\d+), waiting for results$/);if(s)return`已提交 Coze ${s[1]} 批,已完成 ${s[2]} 批,等待结果回流`;const t=e.match(/^Coze completed (\d+) batches, waiting for remaining Python data$/);return t?`Coze 已完成 ${t[1]} 批,等待 Python 继续回传数据`:{"Receiving Python data, waiting for 50 rows before Coze":"正在接收 Python 数据,累计 50 条后提交 Coze","Submitting Coze":"正在提交 Coze","Coze submitted, waiting for result":"Coze 已提交,等待结果回流","Waiting for Python upload":"等待 Python 继续回传数据","Coze results ready, assembling xlsx":"Coze 结果已回流,正在组装 xlsx","Assembling xlsx":"正在组装 xlsx","Uploading result file":"正在上传结果文件","Result file generated":"结果文件已生成"}[e]||e}function U(e){return(y(e)==="RUNNING"||F(e))&&(de(e)||pe(e))}function de(e){return Me(e)||Number(e.fileProgressPercent||0)>0||!!(e.fileProgressMessage||"").trim()}function Me(e){return(e.fileProgressTotal||0)>0}function fe(e){return(e.fileStatus||"").toUpperCase()}function Ge(e){const s=fe(e);return e.fileJobId!=null||s==="PENDING"||s==="RUNNING"}function pe(e){return Ge(e)&&!de(e)}async function Le(e){if(!e.resultId)return;const s=D();if(!s?.save_file_from_url_new){d.error("当前客户端未提供下载能力");return}const t=e.downloadUrl||es(e.resultId),n=e.resultFilename||`${e.sourceFilename||"appearance-patent"}.xlsx`,l=await s.save_file_from_url_new(t,n);l.success?d.success(`已保存: ${l.path||n}`):l.error&&l.error!=="用户取消"&&d.error(l.error)}async function ve(e){try{e.taskStatus==="RUNNING"&&e.taskId?(await ss(e.taskId),X(e.taskId)):e.resultId&&await ts(e.resultId),await L(),await B({force:!0}),d.success("已删除")}catch(s){d.error(s instanceof Error?s.message:"删除失败")}}return He(async()=>{_e(),await Promise.all([L().catch(()=>{}),B().catch(()=>{})]),xe(),Ae(),(f.value.length||u.value.length)&&S()}),Ke(()=>{E=!0,ue(),A.clearScope()}),(e,s)=>(i(),c("div",cs,[Je(qe,{active:"appearance-patent"}),a("div",ds,[a("aside",fs,[s[4]||(s[4]=a("div",{class:"section-title"},"上传文件",-1)),a("div",ps,[s[1]||(s[1]=a("div",{class:"hint"},"选择 Excel 后点击解析,后端会提取 id、ASIN、国家,并保留整数 id 与子数据的第一条。",-1)),a("div",{class:"btns"},[a("button",{type:"button",class:"opt-btn",onClick:Pe},"选择 Excel"),a("button",{type:"button",class:"opt-btn",onClick:we},"选择文件夹")]),a("div",vs,[$.value.length?(i(!0),c(ee,{key:1},se($.value,t=>(i(),c("span",{key:t},r(t),1))),128)):(i(),c("span",gs,"暂未选择文件"))])]),a("div",hs,[s[2]||(s[2]=a("div",{class:"section-title"},"AI 提示词",-1)),je(a("textarea",{"onUpdate:modelValue":s[0]||(s[0]=t=>q.value=t),class:"prompt-input",rows:"8",placeholder:"可选,留空时使用下方默认提示词"},null,512),[[Ve,q.value]]),s[3]||(s[3]=a("div",{class:"prompt-default-label"},"留空时默认使用以下提示词",-1)),a("div",{class:"prompt-preview"},r(ye))]),a("div",ys,[a("button",{type:"button",class:"btn-run",disabled:z.value||!N.value.length,onClick:Ce},r(z.value?"解析中...":"解析并创建任务"),9,ks),a("button",{type:"button",class:"btn-run btn-queue",disabled:M.value||!P.value?.taskId,onClick:be},r(M.value?"推送中...":"推送到 Python 队列"),9,Is)]),s[5]||(s[5]=a("p",{class:"loading-msg"},"Python 回传字段按 asin、国家、url、标题提交;后端接收分片后累计 50 条调用 Coze,当前任务区展示 Coze 回流和结果组装进度。",-1)),m.value?(i(),c("div",_s,[a("div",null,"任务 ID:"+r(m.value.taskId),1),a("div",null,"总行数:"+r(m.value.totalRows)+",有效:"+r(m.value.acceptedRows)+",分组:"+r(m.value.groupCount||0)+",过滤:"+r(m.value.droppedRows),1)])):k("",!0),C.value?(i(),c("pre",Ps,r(C.value),1)):k("",!0)]),a("section",ws,[s[13]||(s[13]=a("div",{class:"panel-header"},"外观专利检测",-1)),a("div",Cs,[a("div",bs,[a("div",ms,[s[6]||(s[6]=a("span",{class:"summary-label"},"运行中任务",-1)),a("strong",null,r(x.value.pendingTaskCount),1)]),a("div",Ss,[s[7]||(s[7]=a("span",{class:"summary-label"},"已结束任务",-1)),a("strong",null,r(x.value.processedTaskCount),1)]),a("div",Fs,[s[8]||(s[8]=a("span",{class:"summary-label"},"成功任务",-1)),a("strong",null,r(x.value.successTaskCount),1)]),a("div",Ns,[s[9]||(s[9]=a("span",{class:"summary-label"},"失败任务",-1)),a("strong",null,r(x.value.failedTaskCount),1)])]),s[12]||(s[12]=a("div",{class:"subsection-title"},"匹配任务",-1)),a("div",Ts,[s[10]||(s[10]=a("div",{class:"result-list-header"},[a("span",null,"当前任务")],-1)),ae.value.length?(i(),c("ul",Es,[(i(!0),c(ee,null,se(ae.value,t=>(i(),c("li",{key:`cur-${t.taskId}`,class:"task-item"},[a("div",As,[a("span",xs,r(t.sourceFilename||"外观专利检测"),1),a("div",Us,"任务 ID:"+r(t.taskId),1),a("div",Ds,"行数:"+r(t.rowCount??"-"),1),H(t)?(i(),c("div",$s,r(H(t)),1)):k("",!0),U(t)?(i(),c("div",zs,[a("div",Ms,[a("span",null,r(ce(t,"处理中")),1),a("span",null,r(K(t))+"%",1)]),a("div",Gs,[a("div",{class:"file-progress-bar",style:ge({width:`${K(t)}%`})},null,4)])])):k("",!0)]),a("div",Ls,[a("span",Bs,r(ie(t)),1),a("button",{type:"button",class:"btn-delete",onClick:n=>ve(t)},"删除",8,Hs)])]))),128))])):(i(),c("div",Rs,"暂无当前任务"))]),a("div",Ks,[s[11]||(s[11]=a("div",{class:"result-list-header"},[a("span",null,"历史记录")],-1)),le.value.length?(i(),c("ul",qs,[(i(!0),c(ee,null,se(le.value,t=>(i(),c("li",{key:`his-${t.resultId}-${t.taskId}`,class:"task-item"},[a("div",js,[a("span",Vs,r(t.sourceFilename||"外观专利检测"),1),a("div",Os,"任务 ID:"+r(t.taskId??"-"),1),t.resultFilename?(i(),c("div",Xs,r(t.resultFilename||"下载结果"),1)):k("",!0),H(t)?(i(),c("div",Qs,r(H(t)),1)):k("",!0),U(t)?(i(),c("div",Ws,[a("div",Ys,[a("span",null,r(ce(t,"结果生成中")),1),a("span",null,r(K(t))+"%",1)]),a("div",Zs,[a("div",{class:"file-progress-bar",style:ge({width:`${K(t)}%`})},null,4)])])):k("",!0),t.error?(i(),c("div",et,"错误:"+r(t.error),1)):k("",!0)]),a("div",st,[a("span",{class:Oe(["status",$e(t)])},r(ie(t)),3),Z(t)?(i(),c("button",{key:0,type:"button",class:"download",onClick:n=>Le(t)},"下载",8,tt)):k("",!0),t.resultId?(i(),c("button",{key:1,type:"button",class:"btn-delete",onClick:n=>ve(t)},"删除",8,at)):k("",!0)])]))),128))])):(i(),c("div",Js,"暂无历史记录"))])])])])]))}}),rt=ns(nt,[["__scopeId","data-v-deab2989"]]);rs(rt).use(os).mount("#app"); +结论:XX`,lt=3e3,nt=Be({__name:"BrandAppearancePatentTab",setup(ot){const $=v([]),N=v([]),P=v(null),T=v(null),q=v(""),z=v(!1),M=v(!1),C=v(""),f=v([]),u=v([]),h=v(null),j=v(!1);let R=null,te=0,E=!1;const x=is("appearance-patent"),A=v({pendingTaskCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),g=v([]),w=v({}),m=J(()=>P.value||T.value),V=J(()=>{const e=P.value;return!e?.taskId||g.value.some(t=>t.taskId===e.taskId)?null:{taskId:e.taskId,sourceFilename:e.sourceFilename,rowCount:e.acceptedRows,taskStatus:"PENDING",success:!1}}),ae=J(()=>{const e=new Set([...f.value,...u.value]),s=g.value.filter(n=>{const l=y(n);return n.taskId!=null&&(e.has(n.taskId)||l==="RUNNING"||l==="PENDING")}).map(n=>ne(n));for(const[n,l]of Object.entries(w.value)){const o=Number(n);!Number.isFinite(o)||o<=0||!e.has(o)&&y(l)!=="RUNNING"&&y(l)!=="PENDING"||s.some(p=>p.taskId===o)||s.push(ne(l))}return V.value?s.some(n=>n.taskId===V.value?.taskId)?s:[V.value,...s]:s}),le=J(()=>g.value.filter(e=>{const s=y(e);return s!=="RUNNING"&&s!=="PENDING"}));function ne(e){if(e.taskId==null)return e;const s=w.value[e.taskId];return s?{...e,...s,sourceFilename:s.sourceFilename||e.sourceFilename,resultFilename:s.resultFilename||e.resultFilename,rowCount:s.rowCount??e.rowCount,createdAt:s.createdAt||e.createdAt}:e}function re(){const e=q.value.trim();return e?`${ye} + +新增条件要求: +${e}`:ye}function G(){return as().trim()}function ke(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function O(){return`appearance-patent:tasks:${ke()}`}function Ie(e){return{taskId:e.taskId,totalRows:e.totalRows,acceptedRows:e.acceptedRows,groupCount:e.groupCount,droppedRows:e.droppedRows}}function b(){if(typeof window>"u")return;const e=Array.from(new Set([...f.value,...u.value]));e.length?window.localStorage.setItem(O(),JSON.stringify(e)):window.localStorage.removeItem(O())}function _e(){if(!(typeof window>"u"))try{const e=window.localStorage.getItem(O()),s=e?JSON.parse(e):[];f.value=Array.isArray(s)?s.filter(t=>typeof t=="number"&&t>0):[]}catch{f.value=[]}}async function oe(e){const s=D();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传能力");const t=[];for(const n of e){const l=typeof n=="string"?n:n.absolutePath,o=typeof n=="string"?void 0:n.relativePath,p=await s.upload_file_to_java(l,o);if(!p?.success||!p.data)throw new Error(p?.error||p?.message||`上传失败:${l}`);t.push(p.data)}return t}async function Pe(){const e=D();if(!e?.select_brand_xlsx_files||!e.upload_file_to_java){d.warning("当前环境不支持文件选择或上传");return}const s=await e.select_brand_xlsx_files();if(!s?.length)return;const t=await oe(s);N.value=t,$.value=t.map(n=>n.relativePath||n.originalFilename||n.fileKey),P.value=null,T.value=null,C.value=""}async function we(){const e=D();if(!e?.select_brand_folder){d.warning("当前环境不支持文件夹选择,请在本地客户端中打开");return}try{const s=await e.select_brand_folder();if(!s)return;const t=await us(s);if(!t.success||!t.items?.length){d.warning(t.error||"该文件夹下没有可用的 xlsx 文件");return}const n=await oe(t.items);N.value=n,$.value=t.items.map(l=>l.relativePath||l.absolutePath),P.value=null,T.value=null,C.value="",d.success(`已选择文件夹内 ${t.items.length} 个 Excel 文件`)}catch(s){d.error(s instanceof Error?s.message:"选择失败")}}async function Ce(){if(!N.value.length){d.warning("请先选择 Excel");return}if(!G()){d.warning("请先在左上角设置中填写外观专利密钥");return}z.value=!0;try{const e=N.value.map(t=>({fileKey:t.fileKey,originalFilename:t.originalFilename,relativePath:t.relativePath})),s=await Xe(e,re(),G());P.value=s,T.value=null,C.value="",d.success(`解析完成,共 ${s.groupCount||0} 组 / ${s.acceptedRows} 条`)}catch(e){d.error(e instanceof Error?e.message:"解析失败")}finally{z.value=!1}}async function be(){const e=D(),s=P.value,t=s?.taskId;if(!t){d.warning("请先解析文件");return}if(!e?.enqueue_json){d.error("当前环境未启用 pywebview enqueue_json");return}if(!G()){d.warning("请先在左上角设置中填写外观专利密钥");return}M.value=!0;try{const n=await Qe(t),l=n.groups||[],o={type:"appearance-patent-run",ts:Date.now(),data:{taskId:t,prompt:n.aiPrompt||s.aiPrompt||re(),api_key:G(),sourceFileCount:s.sourceFileCount||0,totalRows:s.totalRows||0,acceptedRows:s.acceptedRows||0,groupCount:s.groupCount||0,groups:l.map(I=>({sourceFileKey:I.sourceFileKey||"",sourceFilename:I.sourceFilename||"",groupKey:I.groupKey||"",baseId:I.baseId||"",displayId:I.displayId||"",items:(I.items||[]).map(_=>({sourceFileKey:_.sourceFileKey||"",sourceFilename:_.sourceFilename||"",rowToken:_.rowToken||"",groupKey:_.groupKey||"",id:_.displayId,asin:_.asin,country:_.country,url:_.url||"",title:_.title||""}))}))}};C.value=`任务 ${t} 已准备推送,共 ${l.length} 组`,await We(t);const p=await e.enqueue_json(o);if(!p?.success){d.error(p?.error||"推送失败");return}T.value=Ie(s),Se(t),me(),await L(),await B({force:!0}),d.success("已推送到 Python 队列")}finally{M.value=!1}}function me(){P.value=null,C.value=""}function Se(e){f.value.includes(e)||(f.value=[...f.value,e],b()),S()}function X(e){if(f.value=f.value.filter(s=>s!==e),!u.value.includes(e)){const s={...w.value};delete s[e],w.value=s}b()}function Fe(e){u.value.includes(e)||(u.value=[...u.value,e],b()),S()}function Q(e){if(u.value=u.value.filter(s=>s!==e),!f.value.includes(e)){const s={...w.value};delete s[e],w.value=s}b()}function S(){E||h.value==null&&Ne(!0)}function ue(){h.value!=null&&(x.clearTimer("task-poll",h.value),h.value=null)}function Ne(e=!1){if(E)return;if(h.value!=null){if(!e)return;x.clearTimer("task-poll",h.value),h.value=null}const s=async()=>{h.value=null,!E&&(!f.value.length&&!u.value.length||(await Te(),!E&&h.value==null&&(f.value.length||u.value.length)&&(h.value=x.setTimeout("task-poll",s,he()))))};e?s():h.value=x.setTimeout("task-poll",s,he())}async function Te(){if(j.value||!f.value.length&&!u.value.length){!f.value.length&&!u.value.length&&ue();return}j.value=!0;try{let e=!1,s=!1;const t=Array.from(new Set([...f.value,...u.value]));if(t.length){const n=await ls(t,{force:u.value.length>0});for(const l of n.items||[]){const o=l.task;if(!o?.id)continue;const p=l.items?.[0];if(p&&(w.value={...w.value,[o.id]:p},Re(p)),(o.status==="SUCCESS"||o.status==="FAILED")&&(X(o.id),e=!0,o.status==="SUCCESS"?Fe(o.id):Q(o.id)),p&&o.status==="SUCCESS"&&u.value.includes(o.id)){const I=(p.fileStatus||"").toUpperCase();(p.fileReady||I==="SUCCESS"||I==="FAILED")&&(Q(o.id),e=!0,s=!0)}}n.missingTaskIds?.length&&(n.missingTaskIds.forEach(l=>{X(l),Q(l)}),s=!0,e=!0)}e&&await L(),s&&await B(),Ee()}finally{j.value=!1}}function Re(e){if(!e.taskId&&!e.resultId)return;const s=g.value.findIndex(t=>e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId);s>=0?g.value[s]={...g.value[s],...e}:g.value=[e,...g.value]}function Ee(){if(!u.value.length)return;const e=[];for(const s of u.value){const t=g.value.find(o=>o.taskId===s);if(!t){e.push(s);continue}const n=(t.taskStatus||"").toUpperCase(),l=(t.fileStatus||"").toUpperCase();n==="FAILED"||t.fileReady||l==="SUCCESS"||l==="FAILED"||n==="SUCCESS"&&e.push(s)}u.value=e,b(),u.value.length&&S()}function xe(){const e=g.value.filter(s=>s.taskId!=null&&F(s)).map(s=>s.taskId);u.value=Array.from(new Set(e)),b(),u.value.length&&S()}function Ae(){const e=g.value.filter(s=>s.taskId!=null&&y(s)==="RUNNING").map(s=>s.taskId);e.length&&(f.value=Array.from(new Set([...f.value,...e])),b(),S())}async function L(){A.value=await Ye()}async function B(e={}){const s=Date.now();if(!(!e.force&&g.value.length&&s-te{g.value=Ue(g.value,t.items||[]),te=Date.now()}).finally(()=>{R=null}),R)}function Ue(e,s){const t=new Map,n=new Map;for(const l of e||[])l.taskId!=null&&t.set(l.taskId,l),l.resultId!=null&&n.set(l.resultId,l);return(s||[]).map(l=>{const o=l.resultId!=null?n.get(l.resultId):l.taskId!=null?t.get(l.taskId):void 0;return De(o,l)})}function De(e,s){return!e||!((y(e)==="RUNNING"||F(e)||U(e))&&!U(s)&&!Z(s))?s:{...s,fileJobId:s.fileJobId??e.fileJobId,fileStatus:s.fileStatus||e.fileStatus,fileError:s.fileError||e.fileError,fileReady:s.fileReady||e.fileReady,fileProgressPercent:W(s.fileProgressPercent)?s.fileProgressPercent:e.fileProgressPercent,fileProgressCurrent:W(s.fileProgressCurrent)?s.fileProgressCurrent:e.fileProgressCurrent,fileProgressTotal:W(s.fileProgressTotal)?s.fileProgressTotal:e.fileProgressTotal,fileProgressMessage:(s.fileProgressMessage||"").trim()?s.fileProgressMessage:e.fileProgressMessage}}function W(e){const s=Number(e);return Number.isFinite(s)&&s>0}function ie(e){const s=y(e);return s==="RUNNING"?"执行中":s==="PENDING"?"已解析待推送":F(e)?"结果生成中":Y(e)?"结果生成失败":s==="SUCCESS"||e.success?"已完成":s==="FAILED"?"失败":"等待中"}function $e(e){const s=y(e);return s==="RUNNING"||F(e)?"running":Y(e)||s==="FAILED"?"failed":s==="SUCCESS"||e.success?"success":"pending"}function F(e){const s=y(e),t=(e.fileStatus||"").toUpperCase();return!(s!=="SUCCESS"||Z(e)||t==="FAILED"||t==="SUCCESS")}function y(e){return(e.taskStatus||"").toUpperCase()}function Y(e){return(e.fileStatus||"").toUpperCase()==="FAILED"}function H(e){if(Y(e))return e.fileError||"结果文件生成失败,请稍后重试或检查后端日志";if(U(e)||!F(e))return"";const s=(e.fileStatus||"").toUpperCase();return s==="RUNNING"?"任务已完成,正在等待 Coze 回流并组装结果文件,下载按钮稍后出现":s==="PENDING"?"任务已完成,结果文件已入队,正在等待后端开始处理":"任务已完成,正在生成结果文件,下载按钮稍后出现"}function Z(e){return!!(e.resultId&&(e.fileReady||e.downloadUrl))}function K(e){const s=Number(e.fileProgressPercent||0);return Number.isFinite(s)&&s>0?Math.max(0,Math.min(100,Math.round(s))):pe(e)?fe(e)==="PENDING"?6:10:0}function ce(e,s){const t=(e.fileProgressMessage||"").trim();return t?ze(t):s}function ze(e){const s=e.match(/^Coze submitted (\d+) batches, completed (\d+), waiting for results$/);if(s)return`已提交 Coze ${s[1]} 批,已完成 ${s[2]} 批,等待结果回流`;const t=e.match(/^Coze completed (\d+) batches, waiting for remaining Python data$/);return t?`Coze 已完成 ${t[1]} 批,等待 Python 继续回传数据`:{"Receiving Python data, waiting for 50 rows before Coze":"正在接收 Python 数据,累计 50 条后提交 Coze","Submitting Coze":"正在提交 Coze","Coze submitted, waiting for result":"Coze 已提交,等待结果回流","Waiting for Python upload":"等待 Python 继续回传数据","Coze results ready, assembling xlsx":"Coze 结果已回流,正在组装 xlsx","Assembling xlsx":"正在组装 xlsx","Uploading result file":"正在上传结果文件","Result file generated":"结果文件已生成"}[e]||e}function U(e){return(y(e)==="RUNNING"||F(e))&&(de(e)||pe(e))}function de(e){return Me(e)||Number(e.fileProgressPercent||0)>0||!!(e.fileProgressMessage||"").trim()}function Me(e){return(e.fileProgressTotal||0)>0}function fe(e){return(e.fileStatus||"").toUpperCase()}function Ge(e){const s=fe(e);return e.fileJobId!=null||s==="PENDING"||s==="RUNNING"}function pe(e){return Ge(e)&&!de(e)}async function Le(e){if(!e.resultId)return;const s=D();if(!s?.save_file_from_url_new){d.error("当前客户端未提供下载能力");return}const t=e.downloadUrl||es(e.resultId),n=e.resultFilename||`${e.sourceFilename||"appearance-patent"}.xlsx`,l=await s.save_file_from_url_new(t,n);l.success?d.success(`已保存: ${l.path||n}`):l.error&&l.error!=="用户取消"&&d.error(l.error)}async function ve(e){try{e.taskStatus==="RUNNING"&&e.taskId?(await ss(e.taskId),X(e.taskId)):e.resultId&&await ts(e.resultId),await L(),await B({force:!0}),d.success("已删除")}catch(s){d.error(s instanceof Error?s.message:"删除失败")}}return He(async()=>{_e(),await Promise.all([L().catch(()=>{}),B().catch(()=>{})]),Ae(),xe(),(f.value.length||u.value.length)&&S()}),Ke(()=>{E=!0,ue(),x.clearScope()}),(e,s)=>(i(),c("div",cs,[Je(qe,{active:"appearance-patent"}),a("div",ds,[a("aside",fs,[s[3]||(s[3]=a("div",{class:"section-title"},"上传文件",-1)),a("div",ps,[s[1]||(s[1]=a("div",{class:"hint"},"选择 Excel 后点击解析,后端会提取 id、ASIN、国家,并保留整数 id 与子数据的第一条。",-1)),a("div",{class:"btns"},[a("button",{type:"button",class:"opt-btn",onClick:Pe},"选择 Excel"),a("button",{type:"button",class:"opt-btn",onClick:we},"选择文件夹")]),a("div",vs,[$.value.length?(i(!0),c(ee,{key:1},se($.value,t=>(i(),c("span",{key:t},r(t),1))),128)):(i(),c("span",gs,"暂未选择文件"))])]),a("div",hs,[s[2]||(s[2]=a("div",{class:"section-title"},"新增条件要求",-1)),je(a("textarea",{"onUpdate:modelValue":s[0]||(s[0]=t=>q.value=t),class:"prompt-input",rows:"8",placeholder:"可选,填写后会追加到默认检测提示词中"},null,512),[[Ve,q.value]])]),a("div",ys,[a("button",{type:"button",class:"btn-run",disabled:z.value||!N.value.length,onClick:Ce},r(z.value?"解析中...":"解析并创建任务"),9,ks),a("button",{type:"button",class:"btn-run btn-queue",disabled:M.value||!P.value?.taskId,onClick:be},r(M.value?"推送中...":"推送到 Python 队列"),9,Is)]),s[4]||(s[4]=a("p",{class:"loading-msg"},"Python 回传字段按 asin、国家、url、标题提交;后端接收分片后累计 50 条调用 Coze,当前任务区展示 Coze 回流和结果组装进度。",-1)),m.value?(i(),c("div",_s,[a("div",null,"任务 ID:"+r(m.value.taskId),1),a("div",null,"总行数:"+r(m.value.totalRows)+",有效:"+r(m.value.acceptedRows)+",分组:"+r(m.value.groupCount||0)+",过滤:"+r(m.value.droppedRows),1)])):k("",!0),C.value?(i(),c("pre",Ps,r(C.value),1)):k("",!0)]),a("section",ws,[s[12]||(s[12]=a("div",{class:"panel-header"},"外观专利检测",-1)),a("div",Cs,[a("div",bs,[a("div",ms,[s[5]||(s[5]=a("span",{class:"summary-label"},"运行中任务",-1)),a("strong",null,r(A.value.pendingTaskCount),1)]),a("div",Ss,[s[6]||(s[6]=a("span",{class:"summary-label"},"已结束任务",-1)),a("strong",null,r(A.value.processedTaskCount),1)]),a("div",Fs,[s[7]||(s[7]=a("span",{class:"summary-label"},"成功任务",-1)),a("strong",null,r(A.value.successTaskCount),1)]),a("div",Ns,[s[8]||(s[8]=a("span",{class:"summary-label"},"失败任务",-1)),a("strong",null,r(A.value.failedTaskCount),1)])]),s[11]||(s[11]=a("div",{class:"subsection-title"},"匹配任务",-1)),a("div",Ts,[s[9]||(s[9]=a("div",{class:"result-list-header"},[a("span",null,"当前任务")],-1)),ae.value.length?(i(),c("ul",Es,[(i(!0),c(ee,null,se(ae.value,t=>(i(),c("li",{key:`cur-${t.taskId}`,class:"task-item"},[a("div",xs,[a("span",As,r(t.sourceFilename||"外观专利检测"),1),a("div",Us,"任务 ID:"+r(t.taskId),1),a("div",Ds,"行数:"+r(t.rowCount??"-"),1),H(t)?(i(),c("div",$s,r(H(t)),1)):k("",!0),U(t)?(i(),c("div",zs,[a("div",Ms,[a("span",null,r(ce(t,"处理中")),1),a("span",null,r(K(t))+"%",1)]),a("div",Gs,[a("div",{class:"file-progress-bar",style:ge({width:`${K(t)}%`})},null,4)])])):k("",!0)]),a("div",Ls,[a("span",Bs,r(ie(t)),1),a("button",{type:"button",class:"btn-delete",onClick:n=>ve(t)},"删除",8,Hs)])]))),128))])):(i(),c("div",Rs,"暂无当前任务"))]),a("div",Ks,[s[10]||(s[10]=a("div",{class:"result-list-header"},[a("span",null,"历史记录")],-1)),le.value.length?(i(),c("ul",qs,[(i(!0),c(ee,null,se(le.value,t=>(i(),c("li",{key:`his-${t.resultId}-${t.taskId}`,class:"task-item"},[a("div",js,[a("span",Vs,r(t.sourceFilename||"外观专利检测"),1),a("div",Os,"任务 ID:"+r(t.taskId??"-"),1),t.resultFilename?(i(),c("div",Xs,r(t.resultFilename||"下载结果"),1)):k("",!0),H(t)?(i(),c("div",Qs,r(H(t)),1)):k("",!0),U(t)?(i(),c("div",Ws,[a("div",Ys,[a("span",null,r(ce(t,"结果生成中")),1),a("span",null,r(K(t))+"%",1)]),a("div",Zs,[a("div",{class:"file-progress-bar",style:ge({width:`${K(t)}%`})},null,4)])])):k("",!0),t.error?(i(),c("div",et,"错误:"+r(t.error),1)):k("",!0)]),a("div",st,[a("span",{class:Oe(["status",$e(t)])},r(ie(t)),3),Z(t)?(i(),c("button",{key:0,type:"button",class:"download",onClick:n=>Le(t)},"下载",8,tt)):k("",!0),t.resultId?(i(),c("button",{key:1,type:"button",class:"btn-delete",onClick:n=>ve(t)},"删除",8,at)):k("",!0)])]))),128))])):(i(),c("div",Js,"暂无历史记录"))])])])])]))}}),rt=ns(nt,[["__scopeId","data-v-515306ea"]]);rs(rt).use(os).mount("#app"); diff --git a/app/assets/brand-DfxdJ4w6.js b/app/assets/brand-DIMFUl0j.js similarity index 56% rename from app/assets/brand-DfxdJ4w6.js rename to app/assets/brand-DIMFUl0j.js index bcc10d5..368e08f 100644 --- a/app/assets/brand-DfxdJ4w6.js +++ b/app/assets/brand-DIMFUl0j.js @@ -1 +1 @@ -import{be as r}from"./pywebview-ZMN052YE.js";const n="";function s(e){return r(`${n}/api/brand/expand-folder-recursive`,{folder:e})}export{s as e}; +import{bb as r}from"./pywebview-84Lhn3TI.js";const n="";function s(e){return r(`${n}/api/brand/expand-folder-recursive`,{folder:e})}export{s as e}; diff --git a/app/assets/convert.js b/app/assets/convert.js index 080a772..fbbd139 100644 --- a/app/assets/convert.js +++ b/app/assets/convert.js @@ -1 +1 @@ -import{d as A,o as H,a as l,c as n,b as z,B as K,e as s,F as w,r as F,t as i,f as _,n as P,w as M,u as j,x as q,g as d,h as E,y as J,i as k,E as r,z as L,A as O,C as G,D as Q,_ as W,q as X,s as Y}from"./pywebview-ZMN052YE.js";import{e as Z}from"./brand-DfxdJ4w6.js";const ee={class:"page-shell module-page"},se={class:"main-content"},te={class:"left-panel"},ae={class:"upload-zone"},le={class:"selected-files clean-placeholder"},ne={key:0,class:"more-line"},oe={key:1},re={class:"option-group"},ie=["value"],ce={class:"template-item-content"},ue={class:"label"},de={key:0,class:"template-tag"},ve={key:1,class:"template-tag muted"},pe={key:2,class:"template-tag custom"},_e={class:"desc"},fe={key:0,class:"empty-option"},me={class:"option-group"},he={class:"radio-item active"},ye={class:"desc"},ge={class:"run-row"},be=["disabled"],we={class:"loading-msg"},ke={class:"right-panel"},Ce={class:"task-list-wrap"},xe={class:"clean-result-summary"},Fe={class:"summary-card"},Ie={class:"summary-card"},Pe={class:"summary-card"},Ee={class:"result-list-wrap"},Te={key:0,class:"empty-tasks"},Be={key:1,class:"task-list clean-result-list"},De={class:"left"},Ne=["title"],Re={key:0,class:"files"},$e={key:1,class:"files"},Se={class:"task-right"},Ue=["onClick"],Ve=["onClick"],Ae=A({__name:"BrandConvertTab",setup(ze){const p=d([]),g=d(""),f=d([]),m=d(!1),b=d([]),h=d({total:0,successCount:0,failedCount:0,items:[]}),v=d([]),u=d(""),C=E(()=>p.value.slice(0,8)),T=E(()=>v.value.find(a=>a.id===u.value)||null);async function I(a){const e=k();if(!e?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const o of a){const c=typeof o=="string"?o:o.absolutePath,V=typeof o=="string"?void 0:o.relativePath,y=await e.upload_file_to_java(c,V);if(!y?.success||!y.data)throw new Error(y?.error||y?.message||`上传失败:${c}`);t.push(y.data)}return t}async function B(a){const e=await J();v.value=e||[];const t=v.value.find(c=>c.id===u.value);if(t){u.value=t.id;return}const o=v.value.find(c=>c.isDefault);if(o){u.value=o.id;return}u.value=v.value[0]?.id||""}async function D(a,e){p.value=a,g.value="",f.value=await I(a),r.success(e)}async function N(){const a=k();if(!a?.select_brand_xlsx_files){r.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const e=await a.select_brand_xlsx_files();if(!e?.length)return;await D(e,`已选择 ${e.length} 个待转换文件`)}catch(e){r.error(e instanceof Error?e.message:"选择失败")}}async function R(){const a=k();if(!a?.select_brand_folder){r.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const e=await a.select_brand_folder();if(!e)return;g.value=e.split(/[/\\]/).filter(Boolean).pop()||"";const t=await Z(e);if(t.success&&t.items?.length){p.value=t.items.map(o=>o.relativePath),f.value=await I(t.items),r.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`);return}r.warning(t.error||"该文件夹下没有 xlsx 文件")}catch(e){r.error(e instanceof Error?e.message:"选择失败")}}async function $(){if(!f.value.length){r.warning("请先选择待转换 Excel 文件或文件夹");return}if(!u.value){r.warning("请先选择模板");return}try{m.value=!0;const a=await L({files:f.value.map(e=>({fileKey:e.fileKey,originalFilename:e.originalFilename,relativePath:e.relativePath})),templateId:u.value,archiveName:f.value.some(e=>!!e.relativePath)&&g.value?g.value:void 0});h.value=a,b.value=a.items||[],await x(),r.success("格式转换完成")}catch(a){r.error(a instanceof Error?a.message:"格式转换失败")}finally{m.value=!1}}async function x(){try{const a=await O();b.value=a.items||[],h.value={total:a.items?.length||0,successCount:a.items?.filter(e=>e.success).length||0,failedCount:a.items?.filter(e=>!e.success).length||0,items:a.items||[]}}catch{}}async function S(a){try{await G(a),await x(),r.success("已删除")}catch(e){r.error(e instanceof Error?e.message:"删除失败")}}async function U(a){const e=k(),t=a.downloadUrl||(a.resultId?Q(a.resultId):"");if(!t){r.warning("当前结果没有下载地址");return}const o=a.outputFilename||`${new Date().toISOString().slice(0,10).replace(/-/g,"")}.txt`;if(e?.save_file_from_url_new){const c=await e.save_file_from_url_new(t,o);c.success?r.success(`已保存:${c.path||o}`):c.error&&c.error!=="用户取消"&&r.error(c.error);return}}return H(()=>{B().catch(()=>{}),x().catch(()=>{})}),(a,e)=>(l(),n("div",ee,[z(K,{active:"convert"}),s("div",se,[s("aside",te,[e[5]||(e[5]=s("div",{class:"section-title"},"选择文件",-1)),s("div",ae,[e[1]||(e[1]=s("div",{class:"hint"},"选择需要转换的 Excel 文件或文件夹,将按所选模板生成 txt 文件。",-1)),s("div",{class:"btns"},[s("button",{type:"button",class:"opt-btn",onClick:N},"选择 Excel 文件"),s("button",{type:"button",class:"opt-btn",onClick:R},"选择文件夹")]),s("div",le,[p.value.length?(l(),n(w,{key:0},[(l(!0),n(w,null,F(C.value,t=>(l(),n("span",{key:t},i(t),1))),128)),p.value.length>C.value.length?(l(),n("span",ne," 还有 "+i(p.value.length-C.value.length)+" 个文件未展开显示 ",1)):_("",!0)],64)):(l(),n("span",oe,"暂未选择待转换文件"))])]),e[6]||(e[6]=s("div",{class:"section-title"},"模板选择",-1)),s("div",re,[(l(!0),n(w,null,F(v.value,t=>(l(),n("label",{key:t.id,class:P(["radio-item",{active:u.value===t.id}])},[M(s("input",{"onUpdate:modelValue":e[0]||(e[0]=o=>u.value=o),type:"radio",value:t.id,name:"convert-template"},null,8,ie),[[j,u.value]]),s("div",ce,[s("div",null,[s("span",ue,[q(i(t.templateName)+" ",1),t.isDefault?(l(),n("span",de,"默认")):t.builtIn?(l(),n("span",ve,"内置")):(l(),n("span",pe,"自定义"))]),s("div",_e,"输出文件:"+i(t.outputFilename),1)])])],2))),128)),v.value.length?_("",!0):(l(),n("div",fe,"暂无可用模板"))]),e[7]||(e[7]=s("div",{class:"section-title"},"转换说明",-1)),s("div",me,[s("label",he,[e[3]||(e[3]=s("input",{type:"checkbox",checked:"",disabled:""},null,-1)),s("div",null,[e[2]||(e[2]=s("span",{class:"label"},"按当前模板输出",-1)),s("div",ye,"当前模板:"+i(T.value?.templateName||"未加载模板"),1)])]),e[4]||(e[4]=s("label",{class:"radio-item active"},[s("input",{type:"checkbox",checked:"",disabled:""}),s("div",null,[s("span",{class:"label"},"SKU 使用雪花ID-序号"),s("div",{class:"desc"},"例如 1773816146796-1")])],-1))]),s("div",ge,[s("button",{type:"button",class:"btn-run",disabled:m.value,onClick:$},i(m.value?"转换中...":"开始转换"),9,be),s("span",we,i(m.value?"正在生成并上传结果,请稍候…":"选择文件后即可执行格式转换,结果会显示在右侧供下载"),1)])]),s("section",ke,[e[12]||(e[12]=s("div",{class:"panel-header"},"转换结果",-1)),s("div",Ce,[s("div",xe,[s("div",Fe,[e[8]||(e[8]=s("span",{class:"summary-label"},"已处理文件",-1)),s("strong",null,i(h.value.total),1)]),s("div",Ie,[e[9]||(e[9]=s("span",{class:"summary-label"},"成功结果",-1)),s("strong",null,i(h.value.successCount),1)]),s("div",Pe,[e[10]||(e[10]=s("span",{class:"summary-label"},"失败文件",-1)),s("strong",null,i(h.value.failedCount),1)])]),s("div",Ee,[e[11]||(e[11]=s("div",{class:"result-list-header"},[s("span",null,"生成的结果压缩包列表")],-1)),b.value.length===0?(l(),n("div",Te," 暂无转换结果,完成格式转换后会在这里展示结果压缩包 ")):(l(),n("ul",Be,[(l(!0),n(w,null,F(b.value,t=>(l(),n("li",{key:`${t.resultId||t.outputFilename||t.sourceFilename}`,class:"task-item"},[s("div",De,[s("span",{class:"id",title:t.sourceFilename},i(t.sourceFilename||"-"),9,Ne),t.outputFilename?(l(),n("div",Re,"压缩包文件:"+i(t.outputFilename),1)):_("",!0),t.error?(l(),n("div",$e,"错误信息:"+i(t.error),1)):_("",!0)]),s("div",Se,[s("span",{class:P(["status",t.success?"success":"failed"])},i(t.success?"已完成":"失败"),3),t.success&&(t.downloadUrl||t.resultId)?(l(),n("button",{key:0,type:"button",class:"download",onClick:o=>U(t)}," 下载压缩包 ",8,Ue)):_("",!0),t.resultId?(l(),n("button",{key:1,type:"button",class:"btn-delete",onClick:o=>S(t.resultId)}," 删除 ",8,Ve)):_("",!0)])]))),128))]))])])])])]))}}),He=W(Ae,[["__scopeId","data-v-0e58908e"]]);X(He).use(Y).mount("#app"); +import{d as A,o as H,a as l,c as n,b as z,B as K,e as s,F as w,r as F,t as i,f as _,n as P,w as M,u as j,x as q,g as d,h as E,y as J,i as k,E as r,z as L,A as O,C as G,D as Q,_ as W,q as X,s as Y}from"./pywebview-84Lhn3TI.js";import{e as Z}from"./brand-DIMFUl0j.js";const ee={class:"page-shell module-page"},se={class:"main-content"},te={class:"left-panel"},ae={class:"upload-zone"},le={class:"selected-files clean-placeholder"},ne={key:0,class:"more-line"},oe={key:1},re={class:"option-group"},ie=["value"],ce={class:"template-item-content"},ue={class:"label"},de={key:0,class:"template-tag"},ve={key:1,class:"template-tag muted"},pe={key:2,class:"template-tag custom"},_e={class:"desc"},fe={key:0,class:"empty-option"},me={class:"option-group"},he={class:"radio-item active"},ye={class:"desc"},ge={class:"run-row"},be=["disabled"],we={class:"loading-msg"},ke={class:"right-panel"},Ce={class:"task-list-wrap"},xe={class:"clean-result-summary"},Fe={class:"summary-card"},Ie={class:"summary-card"},Pe={class:"summary-card"},Ee={class:"result-list-wrap"},Te={key:0,class:"empty-tasks"},Be={key:1,class:"task-list clean-result-list"},De={class:"left"},Ne=["title"],Re={key:0,class:"files"},$e={key:1,class:"files"},Se={class:"task-right"},Ue=["onClick"],Ve=["onClick"],Ae=A({__name:"BrandConvertTab",setup(ze){const p=d([]),g=d(""),f=d([]),m=d(!1),b=d([]),h=d({total:0,successCount:0,failedCount:0,items:[]}),v=d([]),u=d(""),C=E(()=>p.value.slice(0,8)),T=E(()=>v.value.find(a=>a.id===u.value)||null);async function I(a){const e=k();if(!e?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const o of a){const c=typeof o=="string"?o:o.absolutePath,V=typeof o=="string"?void 0:o.relativePath,y=await e.upload_file_to_java(c,V);if(!y?.success||!y.data)throw new Error(y?.error||y?.message||`上传失败:${c}`);t.push(y.data)}return t}async function B(a){const e=await J();v.value=e||[];const t=v.value.find(c=>c.id===u.value);if(t){u.value=t.id;return}const o=v.value.find(c=>c.isDefault);if(o){u.value=o.id;return}u.value=v.value[0]?.id||""}async function D(a,e){p.value=a,g.value="",f.value=await I(a),r.success(e)}async function N(){const a=k();if(!a?.select_brand_xlsx_files){r.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const e=await a.select_brand_xlsx_files();if(!e?.length)return;await D(e,`已选择 ${e.length} 个待转换文件`)}catch(e){r.error(e instanceof Error?e.message:"选择失败")}}async function R(){const a=k();if(!a?.select_brand_folder){r.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const e=await a.select_brand_folder();if(!e)return;g.value=e.split(/[/\\]/).filter(Boolean).pop()||"";const t=await Z(e);if(t.success&&t.items?.length){p.value=t.items.map(o=>o.relativePath),f.value=await I(t.items),r.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`);return}r.warning(t.error||"该文件夹下没有 xlsx 文件")}catch(e){r.error(e instanceof Error?e.message:"选择失败")}}async function $(){if(!f.value.length){r.warning("请先选择待转换 Excel 文件或文件夹");return}if(!u.value){r.warning("请先选择模板");return}try{m.value=!0;const a=await L({files:f.value.map(e=>({fileKey:e.fileKey,originalFilename:e.originalFilename,relativePath:e.relativePath})),templateId:u.value,archiveName:f.value.some(e=>!!e.relativePath)&&g.value?g.value:void 0});h.value=a,b.value=a.items||[],await x(),r.success("格式转换完成")}catch(a){r.error(a instanceof Error?a.message:"格式转换失败")}finally{m.value=!1}}async function x(){try{const a=await O();b.value=a.items||[],h.value={total:a.items?.length||0,successCount:a.items?.filter(e=>e.success).length||0,failedCount:a.items?.filter(e=>!e.success).length||0,items:a.items||[]}}catch{}}async function S(a){try{await G(a),await x(),r.success("已删除")}catch(e){r.error(e instanceof Error?e.message:"删除失败")}}async function U(a){const e=k(),t=a.downloadUrl||(a.resultId?Q(a.resultId):"");if(!t){r.warning("当前结果没有下载地址");return}const o=a.outputFilename||`${new Date().toISOString().slice(0,10).replace(/-/g,"")}.txt`;if(e?.save_file_from_url_new){const c=await e.save_file_from_url_new(t,o);c.success?r.success(`已保存:${c.path||o}`):c.error&&c.error!=="用户取消"&&r.error(c.error);return}}return H(()=>{B().catch(()=>{}),x().catch(()=>{})}),(a,e)=>(l(),n("div",ee,[z(K,{active:"convert"}),s("div",se,[s("aside",te,[e[5]||(e[5]=s("div",{class:"section-title"},"选择文件",-1)),s("div",ae,[e[1]||(e[1]=s("div",{class:"hint"},"选择需要转换的 Excel 文件或文件夹,将按所选模板生成 txt 文件。",-1)),s("div",{class:"btns"},[s("button",{type:"button",class:"opt-btn",onClick:N},"选择 Excel 文件"),s("button",{type:"button",class:"opt-btn",onClick:R},"选择文件夹")]),s("div",le,[p.value.length?(l(),n(w,{key:0},[(l(!0),n(w,null,F(C.value,t=>(l(),n("span",{key:t},i(t),1))),128)),p.value.length>C.value.length?(l(),n("span",ne," 还有 "+i(p.value.length-C.value.length)+" 个文件未展开显示 ",1)):_("",!0)],64)):(l(),n("span",oe,"暂未选择待转换文件"))])]),e[6]||(e[6]=s("div",{class:"section-title"},"模板选择",-1)),s("div",re,[(l(!0),n(w,null,F(v.value,t=>(l(),n("label",{key:t.id,class:P(["radio-item",{active:u.value===t.id}])},[M(s("input",{"onUpdate:modelValue":e[0]||(e[0]=o=>u.value=o),type:"radio",value:t.id,name:"convert-template"},null,8,ie),[[j,u.value]]),s("div",ce,[s("div",null,[s("span",ue,[q(i(t.templateName)+" ",1),t.isDefault?(l(),n("span",de,"默认")):t.builtIn?(l(),n("span",ve,"内置")):(l(),n("span",pe,"自定义"))]),s("div",_e,"输出文件:"+i(t.outputFilename),1)])])],2))),128)),v.value.length?_("",!0):(l(),n("div",fe,"暂无可用模板"))]),e[7]||(e[7]=s("div",{class:"section-title"},"转换说明",-1)),s("div",me,[s("label",he,[e[3]||(e[3]=s("input",{type:"checkbox",checked:"",disabled:""},null,-1)),s("div",null,[e[2]||(e[2]=s("span",{class:"label"},"按当前模板输出",-1)),s("div",ye,"当前模板:"+i(T.value?.templateName||"未加载模板"),1)])]),e[4]||(e[4]=s("label",{class:"radio-item active"},[s("input",{type:"checkbox",checked:"",disabled:""}),s("div",null,[s("span",{class:"label"},"SKU 使用雪花ID-序号"),s("div",{class:"desc"},"例如 1773816146796-1")])],-1))]),s("div",ge,[s("button",{type:"button",class:"btn-run",disabled:m.value,onClick:$},i(m.value?"转换中...":"开始转换"),9,be),s("span",we,i(m.value?"正在生成并上传结果,请稍候…":"选择文件后即可执行格式转换,结果会显示在右侧供下载"),1)])]),s("section",ke,[e[12]||(e[12]=s("div",{class:"panel-header"},"转换结果",-1)),s("div",Ce,[s("div",xe,[s("div",Fe,[e[8]||(e[8]=s("span",{class:"summary-label"},"已处理文件",-1)),s("strong",null,i(h.value.total),1)]),s("div",Ie,[e[9]||(e[9]=s("span",{class:"summary-label"},"成功结果",-1)),s("strong",null,i(h.value.successCount),1)]),s("div",Pe,[e[10]||(e[10]=s("span",{class:"summary-label"},"失败文件",-1)),s("strong",null,i(h.value.failedCount),1)])]),s("div",Ee,[e[11]||(e[11]=s("div",{class:"result-list-header"},[s("span",null,"生成的结果压缩包列表")],-1)),b.value.length===0?(l(),n("div",Te," 暂无转换结果,完成格式转换后会在这里展示结果压缩包 ")):(l(),n("ul",Be,[(l(!0),n(w,null,F(b.value,t=>(l(),n("li",{key:`${t.resultId||t.outputFilename||t.sourceFilename}`,class:"task-item"},[s("div",De,[s("span",{class:"id",title:t.sourceFilename},i(t.sourceFilename||"-"),9,Ne),t.outputFilename?(l(),n("div",Re,"压缩包文件:"+i(t.outputFilename),1)):_("",!0),t.error?(l(),n("div",$e,"错误信息:"+i(t.error),1)):_("",!0)]),s("div",Se,[s("span",{class:P(["status",t.success?"success":"failed"])},i(t.success?"已完成":"失败"),3),t.success&&(t.downloadUrl||t.resultId)?(l(),n("button",{key:0,type:"button",class:"download",onClick:o=>U(t)}," 下载压缩包 ",8,Ue)):_("",!0),t.resultId?(l(),n("button",{key:1,type:"button",class:"btn-delete",onClick:o=>S(t.resultId)}," 删除 ",8,Ve)):_("",!0)])]))),128))]))])])])])]))}}),He=W(Ae,[["__scopeId","data-v-0e58908e"]]);X(He).use(Y).mount("#app"); diff --git a/app/assets/dedupe.js b/app/assets/dedupe.js index bc797a6..b45b697 100644 --- a/app/assets/dedupe.js +++ b/app/assets/dedupe.js @@ -1 +1 @@ -import{d as z,o as W,a,c as n,b as q,B as J,e as s,F as C,r as F,t as u,f as b,n as I,w as P,v as B,g as c,h as L,i as x,E as o,j as O,k as G,l as Q,m as X,p as Y,_ as Z,q as ee,s as se}from"./pywebview-ZMN052YE.js";import{e as te}from"./brand-DfxdJ4w6.js";const le={class:"page-shell module-page"},ae={class:"main-content"},ne={class:"left-panel"},oe={class:"upload-zone"},re={class:"selected-files clean-placeholder"},ie={key:0,class:"more-line"},ue={key:1},ce={class:"option-group column-option-group"},de={class:"column-toolbar"},ve={class:"column-count"},pe={key:0,class:"column-grid"},fe=["value"],_e={key:1,class:"empty-column-state"},me={class:"option-group"},he={class:"run-row"},ge=["disabled"],ye={class:"loading-msg"},be={class:"right-panel"},we={class:"task-list-wrap"},ke={class:"clean-result-summary"},Ce={class:"summary-card"},Ie={class:"summary-card"},xe={class:"summary-card"},De={class:"result-list-wrap"},Ee={key:0,class:"empty-tasks"},Fe={key:1,class:"task-list clean-result-list"},Pe={class:"left"},Be=["title"],Se={key:0,class:"files"},Ue={key:1,class:"files"},Ne={class:"task-right"},$e=["onClick"],Ae=["onClick"],He=z({__name:"BrandDedupeTab",setup(Re){const p=c([]),d=c([]),f=c([]),w=c(""),v=c([]),S=c(!1),_=c(!0),m=c(!0),h=c(!1),k=c([]),g=c({total:0,successCount:0,failedCount:0,items:[]}),D=L(()=>f.value.slice(0,8));function $(){d.value=[...p.value]}function A(){d.value=[]}async function U(l){const e=x();if(!e?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const r of l){const i=typeof r=="string"?r:r.absolutePath,j=typeof r=="string"?void 0:r.relativePath,y=await e.upload_file_to_java(i,j);if(!y?.success||!y.data)throw new Error(y?.error||y?.message||`上传失败:${i}`);t.push(y.data)}return t}async function N(l){const e=await Y(l);if(!e.headers?.length){o.error("读取 Excel 表头失败"),p.value=[],d.value=[];return}const t=["id","ASIN","国家","价格","卖家名称"],r=[...t.filter(i=>e.headers?.includes(i)),...(e.headers||[]).filter(i=>!t.includes(i))];p.value=r,d.value=t.filter(i=>r.includes(i))}async function H(l,e){f.value=l,w.value="",v.value=await U(l),v.value.length>0&&await N(v.value[0].fileKey),o.success(e)}async function K(){const l=x();if(!l?.select_brand_xlsx_files){o.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const e=await l.select_brand_xlsx_files();if(!e?.length)return;await H(e,`已选择 ${e.length} 个待清洗文件`)}catch(e){o.error(e instanceof Error?e.message:"选择失败")}}async function R(){const l=x();if(!l?.select_brand_folder){o.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const e=await l.select_brand_folder();if(!e)return;w.value=e.split(/[/\\]/).filter(Boolean).pop()||"";const t=await te(e);if(t.success&&t.items?.length){f.value=t.items.map(r=>r.relativePath),v.value=await U(t.items),v.value.length>0&&await N(v.value[0].fileKey),o.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`);return}o.warning(t.error||"该文件夹下没有 xlsx 文件")}catch(e){o.error(e instanceof Error?e.message:"选择失败")}}async function V(){if(!v.value.length){o.warning("请先选择待清洗 Excel 文件或文件夹");return}if(!d.value.length){o.warning("请至少选择一列保留列");return}if(!S.value&&!_.value&&!m.value){o.warning("请至少选择一种 ID 保留规则");return}try{h.value=!0;const l=await O({files:v.value.map(e=>({fileKey:e.fileKey,originalFilename:e.originalFilename,relativePath:e.relativePath})),selectedColumns:d.value,keepIntegerIds:S.value,keepUnderscoreIds:_.value,keepIntegerMainIdsWhenNoSubIds:m.value,archiveName:v.value.some(e=>!!e.relativePath)&&w.value?w.value:void 0});g.value=l,k.value=l.items||[],await E(),o.success("数据去重完成")}catch(l){o.error(l instanceof Error?l.message:"去重失败")}finally{h.value=!1}}async function E(){try{const l=await G();k.value=l.items||[],g.value={total:l.items?.length||0,successCount:l.items?.filter(e=>e.success).length||0,failedCount:l.items?.filter(e=>!e.success).length||0,items:l.items||[]}}catch{}}async function M(l){try{await Q(l),await E(),o.success("已删除")}catch(e){o.error(e instanceof Error?e.message:"删除失败")}}async function T(l){const e=x(),t=l.downloadUrl||(l.resultId?X(l.resultId):"");if(!t){o.warning("当前结果没有下载地址");return}const r=l.outputFilename||`${new Date().toISOString().slice(0,10).replace(/-/g,"")}_cleaned.xlsx`;if(e?.save_file_from_url_new){const i=await e.save_file_from_url_new(t,r);i.success?o.success(`已保存:${i.path||r}`):i.error&&i.error!=="用户取消"&&o.error(i.error);return}}return W(()=>{E().catch(()=>{})}),(l,e)=>(a(),n("div",le,[q(J,{active:"dedupe"}),s("div",ae,[s("aside",ne,[e[7]||(e[7]=s("div",{class:"section-title"},"选择文件",-1)),s("div",oe,[e[3]||(e[3]=s("div",{class:"hint"},"选择需要清洗的 Excel 文件或文件夹,后续将按所选规则输出处理结果。",-1)),s("div",{class:"btns"},[s("button",{type:"button",class:"opt-btn",onClick:K},"选择 Excel 文件"),s("button",{type:"button",class:"opt-btn",onClick:R},"选择文件夹")]),s("div",re,[f.value.length?(a(),n(C,{key:0},[(a(!0),n(C,null,F(D.value,t=>(a(),n("span",{key:t},u(t),1))),128)),f.value.length>D.value.length?(a(),n("span",ie," 还有 "+u(f.value.length-D.value.length)+" 个文件未展开显示 ",1)):b("",!0)],64)):(a(),n("span",ue,"暂未选择待清洗文件"))])]),e[8]||(e[8]=s("div",{class:"section-title"},"保留列设置",-1)),s("div",ce,[s("div",de,[s("span",ve,"已选择 "+u(d.value.length)+" / "+u(p.value.length)+" 列",1),s("div",{class:"column-actions"},[s("button",{type:"button",class:"opt-btn small",onClick:$},"全选"),s("button",{type:"button",class:"opt-btn small",onClick:A},"清空")])]),p.value.length?(a(),n("div",pe,[(a(!0),n(C,null,F(p.value,t=>(a(),n("label",{key:t,class:I(["column-item",{active:d.value.includes(t)}])},[P(s("input",{"onUpdate:modelValue":e[0]||(e[0]=r=>d.value=r),type:"checkbox",value:t},null,8,fe),[[B,d.value]]),s("span",null,u(t),1)],2))),128))])):(a(),n("div",_e,"请选择 Excel 文件后读取表头并填充可保留列")),e[4]||(e[4]=s("div",{class:"desc"},"读取首个 Excel 文件的第一行作为表头,用于动态选择需要保留的列。",-1))]),e[9]||(e[9]=s("div",{class:"section-title"},"ID 保留规则",-1)),s("div",me,[s("label",{class:I(["radio-item",{active:_.value}])},[P(s("input",{"onUpdate:modelValue":e[1]||(e[1]=t=>_.value=t),type:"checkbox"},null,512),[[B,_.value]]),e[5]||(e[5]=s("div",null,[s("span",{class:"label"},"保留子链接"),s("div",{class:"desc"},"例如 1_1、2_3 这种带下划线的子项 ID")],-1))],2),s("label",{class:I(["radio-item",{active:m.value}])},[P(s("input",{"onUpdate:modelValue":e[2]||(e[2]=t=>m.value=t),type:"checkbox"},null,512),[[B,m.value]]),e[6]||(e[6]=s("div",null,[s("span",{class:"label"},"仅剩主链接无子链接"),s("div",{class:"desc"},"当某个主链接只有 13 这类主 ID、没有 13_1 这类对应子 ID 时,自动保留该主 ID")],-1))],2)]),s("div",he,[s("button",{type:"button",class:"btn-run",disabled:h.value,onClick:V},u(h.value?"清洗中...":"开始清洗"),9,ge),s("span",ye,u(h.value?"正在处理文件并上传结果,请稍候…":"选择文件、列和 ID 规则后即可执行清洗,结果会显示在右侧供下载"),1)])]),s("section",be,[e[14]||(e[14]=s("div",{class:"panel-header"},"去重结果",-1)),s("div",we,[s("div",ke,[s("div",Ce,[e[10]||(e[10]=s("span",{class:"summary-label"},"已处理文件",-1)),s("strong",null,u(g.value.total),1)]),s("div",Ie,[e[11]||(e[11]=s("span",{class:"summary-label"},"成功结果",-1)),s("strong",null,u(g.value.successCount),1)]),s("div",xe,[e[12]||(e[12]=s("span",{class:"summary-label"},"失败文件",-1)),s("strong",null,u(g.value.failedCount),1)])]),s("div",De,[e[13]||(e[13]=s("div",{class:"result-list-header"},[s("span",null,"处理后的 Excel 列表")],-1)),k.value.length===0?(a(),n("div",Ee," 暂无去重结果,完成数据去重后会在这里展示输出文件 ")):(a(),n("ul",Fe,[(a(!0),n(C,null,F(k.value,t=>(a(),n("li",{key:`${t.resultId||t.outputFilename||t.sourceFilename}`,class:"task-item"},[s("div",Pe,[s("span",{class:"id",title:t.sourceFilename},u(t.sourceFilename||"-"),9,Be),t.outputFilename?(a(),n("div",Se,"输出文件:"+u(t.outputFilename),1)):b("",!0),t.error?(a(),n("div",Ue,"错误信息:"+u(t.error),1)):b("",!0)]),s("div",Ne,[s("span",{class:I(["status",t.success?"success":"failed"])},u(t.success?"已完成":"失败"),3),t.success&&(t.downloadUrl||t.resultId)?(a(),n("button",{key:0,type:"button",class:"download",onClick:r=>T(t)}," 下载文件 ",8,$e)):b("",!0),t.resultId?(a(),n("button",{key:1,type:"button",class:"btn-delete",onClick:r=>M(t.resultId)}," 删除 ",8,Ae)):b("",!0)])]))),128))]))])])])])]))}}),Ke=Z(He,[["__scopeId","data-v-c7e8afd4"]]);ee(Ke).use(se).mount("#app"); +import{d as z,o as W,a,c as n,b as q,B as J,e as s,F as C,r as F,t as u,f as b,n as I,w as P,v as B,g as c,h as L,i as x,E as o,j as O,k as G,l as Q,m as X,p as Y,_ as Z,q as ee,s as se}from"./pywebview-84Lhn3TI.js";import{e as te}from"./brand-DIMFUl0j.js";const le={class:"page-shell module-page"},ae={class:"main-content"},ne={class:"left-panel"},oe={class:"upload-zone"},re={class:"selected-files clean-placeholder"},ie={key:0,class:"more-line"},ue={key:1},ce={class:"option-group column-option-group"},de={class:"column-toolbar"},ve={class:"column-count"},pe={key:0,class:"column-grid"},fe=["value"],_e={key:1,class:"empty-column-state"},me={class:"option-group"},he={class:"run-row"},ge=["disabled"],ye={class:"loading-msg"},be={class:"right-panel"},we={class:"task-list-wrap"},ke={class:"clean-result-summary"},Ce={class:"summary-card"},Ie={class:"summary-card"},xe={class:"summary-card"},De={class:"result-list-wrap"},Ee={key:0,class:"empty-tasks"},Fe={key:1,class:"task-list clean-result-list"},Pe={class:"left"},Be=["title"],Se={key:0,class:"files"},Ue={key:1,class:"files"},Ne={class:"task-right"},$e=["onClick"],Ae=["onClick"],He=z({__name:"BrandDedupeTab",setup(Re){const p=c([]),d=c([]),f=c([]),w=c(""),v=c([]),S=c(!1),_=c(!0),m=c(!0),h=c(!1),k=c([]),g=c({total:0,successCount:0,failedCount:0,items:[]}),D=L(()=>f.value.slice(0,8));function $(){d.value=[...p.value]}function A(){d.value=[]}async function U(l){const e=x();if(!e?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const r of l){const i=typeof r=="string"?r:r.absolutePath,j=typeof r=="string"?void 0:r.relativePath,y=await e.upload_file_to_java(i,j);if(!y?.success||!y.data)throw new Error(y?.error||y?.message||`上传失败:${i}`);t.push(y.data)}return t}async function N(l){const e=await Y(l);if(!e.headers?.length){o.error("读取 Excel 表头失败"),p.value=[],d.value=[];return}const t=["id","ASIN","国家","价格","卖家名称"],r=[...t.filter(i=>e.headers?.includes(i)),...(e.headers||[]).filter(i=>!t.includes(i))];p.value=r,d.value=t.filter(i=>r.includes(i))}async function H(l,e){f.value=l,w.value="",v.value=await U(l),v.value.length>0&&await N(v.value[0].fileKey),o.success(e)}async function K(){const l=x();if(!l?.select_brand_xlsx_files){o.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const e=await l.select_brand_xlsx_files();if(!e?.length)return;await H(e,`已选择 ${e.length} 个待清洗文件`)}catch(e){o.error(e instanceof Error?e.message:"选择失败")}}async function R(){const l=x();if(!l?.select_brand_folder){o.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const e=await l.select_brand_folder();if(!e)return;w.value=e.split(/[/\\]/).filter(Boolean).pop()||"";const t=await te(e);if(t.success&&t.items?.length){f.value=t.items.map(r=>r.relativePath),v.value=await U(t.items),v.value.length>0&&await N(v.value[0].fileKey),o.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`);return}o.warning(t.error||"该文件夹下没有 xlsx 文件")}catch(e){o.error(e instanceof Error?e.message:"选择失败")}}async function V(){if(!v.value.length){o.warning("请先选择待清洗 Excel 文件或文件夹");return}if(!d.value.length){o.warning("请至少选择一列保留列");return}if(!S.value&&!_.value&&!m.value){o.warning("请至少选择一种 ID 保留规则");return}try{h.value=!0;const l=await O({files:v.value.map(e=>({fileKey:e.fileKey,originalFilename:e.originalFilename,relativePath:e.relativePath})),selectedColumns:d.value,keepIntegerIds:S.value,keepUnderscoreIds:_.value,keepIntegerMainIdsWhenNoSubIds:m.value,archiveName:v.value.some(e=>!!e.relativePath)&&w.value?w.value:void 0});g.value=l,k.value=l.items||[],await E(),o.success("数据去重完成")}catch(l){o.error(l instanceof Error?l.message:"去重失败")}finally{h.value=!1}}async function E(){try{const l=await G();k.value=l.items||[],g.value={total:l.items?.length||0,successCount:l.items?.filter(e=>e.success).length||0,failedCount:l.items?.filter(e=>!e.success).length||0,items:l.items||[]}}catch{}}async function M(l){try{await Q(l),await E(),o.success("已删除")}catch(e){o.error(e instanceof Error?e.message:"删除失败")}}async function T(l){const e=x(),t=l.downloadUrl||(l.resultId?X(l.resultId):"");if(!t){o.warning("当前结果没有下载地址");return}const r=l.outputFilename||`${new Date().toISOString().slice(0,10).replace(/-/g,"")}_cleaned.xlsx`;if(e?.save_file_from_url_new){const i=await e.save_file_from_url_new(t,r);i.success?o.success(`已保存:${i.path||r}`):i.error&&i.error!=="用户取消"&&o.error(i.error);return}}return W(()=>{E().catch(()=>{})}),(l,e)=>(a(),n("div",le,[q(J,{active:"dedupe"}),s("div",ae,[s("aside",ne,[e[7]||(e[7]=s("div",{class:"section-title"},"选择文件",-1)),s("div",oe,[e[3]||(e[3]=s("div",{class:"hint"},"选择需要清洗的 Excel 文件或文件夹,后续将按所选规则输出处理结果。",-1)),s("div",{class:"btns"},[s("button",{type:"button",class:"opt-btn",onClick:K},"选择 Excel 文件"),s("button",{type:"button",class:"opt-btn",onClick:R},"选择文件夹")]),s("div",re,[f.value.length?(a(),n(C,{key:0},[(a(!0),n(C,null,F(D.value,t=>(a(),n("span",{key:t},u(t),1))),128)),f.value.length>D.value.length?(a(),n("span",ie," 还有 "+u(f.value.length-D.value.length)+" 个文件未展开显示 ",1)):b("",!0)],64)):(a(),n("span",ue,"暂未选择待清洗文件"))])]),e[8]||(e[8]=s("div",{class:"section-title"},"保留列设置",-1)),s("div",ce,[s("div",de,[s("span",ve,"已选择 "+u(d.value.length)+" / "+u(p.value.length)+" 列",1),s("div",{class:"column-actions"},[s("button",{type:"button",class:"opt-btn small",onClick:$},"全选"),s("button",{type:"button",class:"opt-btn small",onClick:A},"清空")])]),p.value.length?(a(),n("div",pe,[(a(!0),n(C,null,F(p.value,t=>(a(),n("label",{key:t,class:I(["column-item",{active:d.value.includes(t)}])},[P(s("input",{"onUpdate:modelValue":e[0]||(e[0]=r=>d.value=r),type:"checkbox",value:t},null,8,fe),[[B,d.value]]),s("span",null,u(t),1)],2))),128))])):(a(),n("div",_e,"请选择 Excel 文件后读取表头并填充可保留列")),e[4]||(e[4]=s("div",{class:"desc"},"读取首个 Excel 文件的第一行作为表头,用于动态选择需要保留的列。",-1))]),e[9]||(e[9]=s("div",{class:"section-title"},"ID 保留规则",-1)),s("div",me,[s("label",{class:I(["radio-item",{active:_.value}])},[P(s("input",{"onUpdate:modelValue":e[1]||(e[1]=t=>_.value=t),type:"checkbox"},null,512),[[B,_.value]]),e[5]||(e[5]=s("div",null,[s("span",{class:"label"},"保留子链接"),s("div",{class:"desc"},"例如 1_1、2_3 这种带下划线的子项 ID")],-1))],2),s("label",{class:I(["radio-item",{active:m.value}])},[P(s("input",{"onUpdate:modelValue":e[2]||(e[2]=t=>m.value=t),type:"checkbox"},null,512),[[B,m.value]]),e[6]||(e[6]=s("div",null,[s("span",{class:"label"},"仅剩主链接无子链接"),s("div",{class:"desc"},"当某个主链接只有 13 这类主 ID、没有 13_1 这类对应子 ID 时,自动保留该主 ID")],-1))],2)]),s("div",he,[s("button",{type:"button",class:"btn-run",disabled:h.value,onClick:V},u(h.value?"清洗中...":"开始清洗"),9,ge),s("span",ye,u(h.value?"正在处理文件并上传结果,请稍候…":"选择文件、列和 ID 规则后即可执行清洗,结果会显示在右侧供下载"),1)])]),s("section",be,[e[14]||(e[14]=s("div",{class:"panel-header"},"去重结果",-1)),s("div",we,[s("div",ke,[s("div",Ce,[e[10]||(e[10]=s("span",{class:"summary-label"},"已处理文件",-1)),s("strong",null,u(g.value.total),1)]),s("div",Ie,[e[11]||(e[11]=s("span",{class:"summary-label"},"成功结果",-1)),s("strong",null,u(g.value.successCount),1)]),s("div",xe,[e[12]||(e[12]=s("span",{class:"summary-label"},"失败文件",-1)),s("strong",null,u(g.value.failedCount),1)])]),s("div",De,[e[13]||(e[13]=s("div",{class:"result-list-header"},[s("span",null,"处理后的 Excel 列表")],-1)),k.value.length===0?(a(),n("div",Ee," 暂无去重结果,完成数据去重后会在这里展示输出文件 ")):(a(),n("ul",Fe,[(a(!0),n(C,null,F(k.value,t=>(a(),n("li",{key:`${t.resultId||t.outputFilename||t.sourceFilename}`,class:"task-item"},[s("div",Pe,[s("span",{class:"id",title:t.sourceFilename},u(t.sourceFilename||"-"),9,Be),t.outputFilename?(a(),n("div",Se,"输出文件:"+u(t.outputFilename),1)):b("",!0),t.error?(a(),n("div",Ue,"错误信息:"+u(t.error),1)):b("",!0)]),s("div",Ne,[s("span",{class:I(["status",t.success?"success":"failed"])},u(t.success?"已完成":"失败"),3),t.success&&(t.downloadUrl||t.resultId)?(a(),n("button",{key:0,type:"button",class:"download",onClick:r=>T(t)}," 下载文件 ",8,$e)):b("",!0),t.resultId?(a(),n("button",{key:1,type:"button",class:"btn-delete",onClick:r=>M(t.resultId)}," 删除 ",8,Ae)):b("",!0)])]))),128))]))])])])])]))}}),Ke=Z(He,[["__scopeId","data-v-c7e8afd4"]]);ee(Ke).use(se).mount("#app"); diff --git a/app/assets/delete-brand.js b/app/assets/delete-brand.js index bb2d9fa..cca8ae2 100644 --- a/app/assets/delete-brand.js +++ b/app/assets/delete-brand.js @@ -1 +1 @@ -import{d as ns,o as ls,L as rs,a as d,c as f,b as os,B as us,e as o,F as z,r as ye,t as v,f as h,M as is,N as qe,n as Oe,g as y,h as V,O as cs,i as Q,E as p,P as ds,Q as fs,R as vs,S as hs,T as ps,U as _s,_ as ys,q as gs,s as ms}from"./pywebview-ZMN052YE.js";import{e as ks}from"./brand-DfxdJ4w6.js";import{c as ws}from"./categorized-timers-JPA-olTr.js";const Is={class:"page-shell module-page"},bs={class:"main-content"},Ss={class:"left-panel"},Ts={class:"upload-zone"},Cs={class:"selected-files clean-placeholder split-selected-files"},Rs={key:0,class:"more-line"},Ns={key:1},Es={class:"run-row"},Fs=["disabled"],Ps=["disabled"],xs={class:"loading-msg"},$s={key:0,class:"queue-debug-card"},As={key:0,class:"queue-debug-line"},Ds={key:1,class:"queue-debug-payload"},Ms={class:"right-panel"},Bs={class:"task-list-wrap"},Us={class:"clean-result-summary"},Ls={class:"summary-card"},qs={class:"summary-card"},Os={class:"summary-card"},Ks={class:"result-list-wrap"},Gs={key:0,class:"empty-tasks"},Hs={key:0,class:"result-subsection"},Js={class:"task-list clean-result-list"},js={class:"left split-result-main"},zs=["title"],Vs={class:"files"},Qs={class:"files"},Xs={key:0,class:"files"},Ws={key:1,class:"files"},Ys={key:2,class:"files"},Zs={key:3,class:"time"},et={key:4,class:"delete-brand-progress-block"},st={class:"delete-brand-progress-header"},tt={class:"delete-brand-progress-bar"},at={class:"files delete-brand-progress"},nt={key:5,class:"files split-entry-list delete-brand-preview"},lt={key:6,class:"files"},rt={class:"task-right split-result-actions"},ot=["onClick"],ut=["onClick"],it={key:1,class:"result-subsection"},ct={class:"task-list clean-result-list"},dt={class:"left split-result-main"},ft=["title"],vt={class:"files"},ht={class:"files"},pt={key:0,class:"files"},_t={key:1,class:"files"},yt={key:2,class:"time"},gt={key:3,class:"delete-brand-progress-block"},mt={class:"delete-brand-progress-header"},kt={class:"delete-brand-progress-bar"},wt={class:"files delete-brand-progress"},It={key:4,class:"files split-entry-list delete-brand-preview"},bt={key:5,class:"files"},St={class:"task-right split-result-actions"},Tt=["onClick"],Ct=["onClick"],Rt=ns({__name:"BrandDeleteBrandTab",setup(Et){function D(){return`delete-brand:current-tasks:${typeof window<"u"&&window.localStorage.getItem("uid")||"0"}`}const M=y([]),X=y([]),O=y(!1),ge=y([]),i=y([]),K=y([]),W=y({total:0,successCount:0,failedCount:0,items:[]}),b=y(""),S=y(""),m=y({}),T=y(null),le=y(!1),Y=y(!1),R=y(!1),B=y(""),Z=y(!1),G=y(null),re=y(!1);let U=!1;const L=ws("delete-brand"),oe=V(()=>M.value.slice(0,10)),N=V(()=>{const e=[...i.value].sort((t,a)=>(a.createdAt||0)-(t.createdAt||0)),s=[];return e.forEach(t=>{s.push(...t.items)}),s});function Ke(){try{const e=typeof window<"u"?window.localStorage.getItem(D()):null;if(e){if(i.value=JSON.parse(e),i.value.length>0){const s=i.value[i.value.length-1];b.value=s.queuePushResult||"",S.value=s.queuePayloadText||""}}else i.value=[]}catch{i.value=[]}}function ue(e,s,t,a){if(!s?.length)return;const r=i.value.findIndex(c=>c.taskId===e),l=r>=0?i.value[r]:null,n=s.map(c=>{const _=l?.items.find(as=>q(as,c)),k=Array.isArray(c.countries)?c.countries:void 0,g=Array.isArray(_?.countries)?_?.countries:void 0,w=k&&k.length>0?k:g&&g.length>0?g:k??g,I=Array.isArray(c.previewRows)?c.previewRows:void 0,C=Array.isArray(_?.previewRows)?_?.previewRows:void 0,_e=I&&I.length>0?I:C&&C.length>0?C:I??C;return{...c,countries:w,previewRows:_e,_pushed:_?._pushed??c._pushed??!1,_completed:_?._completed??c._completed??!1}}),u={taskId:e,items:n,createdAt:l?.createdAt||Date.now(),queuePushResult:t??l?.queuePushResult,queuePayloadText:a??l?.queuePayloadText};r>=0?i.value[r]=u:i.value.push(u),typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value))}function me(e){const s=i.value.length;i.value=i.value.filter(t=>t.taskId!==e),i.value.length!==s&&typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value))}function ke(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function Ge(e){if(!e?.length)return!1;const s=new Set;if(e.forEach(a=>{a.taskId&&ke(a.taskStatus)&&s.add(a.taskId)}),!s.size)return!1;const t=i.value.length;return i.value=i.value.filter(a=>!s.has(a.taskId)),i.value.length!==t?(ie(),!0):!1}const ee=V(()=>K.value.filter(e=>!N.value.some(s=>q(s,e)))),He=V(()=>N.value.length>0||ee.value.length>0),Je=V(()=>N.value.filter(e=>Me(e)&&E(e)==="未入队"));function ie(){typeof window<"u"&&(i.value.length===0?window.localStorage.removeItem(D()):window.localStorage.setItem(D(),JSON.stringify(i.value)))}function P(e){return e?(i.value.find(t=>t.taskId===e)?.items.length||0)>1:!1}function ce(e){return e&&i.value.find(s=>s.taskId===e)||null}function q(e,s){return!e||!s?!1:e.resultId!=null&&s.resultId!=null?e.resultId===s.resultId:e.fileKey&&s.fileKey?e.fileKey===s.fileKey:e.sourceFilename===s.sourceFilename}function x(e,s){const t=ce(e);return t&&t.items.find(a=>q(a,s))||null}function we(e){if(!e)return!1;const s=ce(e);if(!s)return!1;let t=!1;const a=m.value[e]?.line_progress?.info,r=P(e);if(a?.file_name&&a.current_line!=null&&a.total_lines!=null&&a.total_lines>0&&a.current_line>=a.total_lines){const l=s.items.find(n=>n.sourceFilename===a.file_name);l&&!l._completed&&(l._completed=!0,t=!0)}if(!r){const l=m.value[e]?.task?.status;if((l==="SUCCESS"||l==="FAILED")&&s.items.length===1){const n=s.items[0];n&&!n._completed&&(n._completed=!0,t=!0)}}return t&&ie(),t}function Ie(e){return e&&m.value[e]?.task?.status||""}function se(e){if(e.error)return e.error;if(e.matchStatus&&e.matchStatus!=="MATCHED")return e.matchMessage||"";const s=e.taskId;return s&&m.value[s]?.task?.errorMessage||""}function be(e){const s=e.taskId;if(!s)return!1;const t=m.value[s]?.line_progress,a=Ie(s),r=P(s),l=E(e);if(r){const n=x(s,e),u=j(e)===B.value,c=!!(t?.has_progress&&t?.info?.file_name===e.sourceFilename);return u||c||n?._pushed||(a==="RUNNING"||a==="PENDING"||!a)&&n?._completed?!0:{success:!1,retryable:!0}}return l==="本文件解析完毕"||l==="已被全局判定为终态"?!1:t?.has_progress||t?.info?!0:l==="已入队"||l==="处理中"}function Se(e){return e.map(s=>A(s)?{...s,matched:!0,_pushed:!1,_completed:!1}:{...s,matched:!1,openStoreUrl:void 0,error:s.error||void 0,_pushed:!1,_completed:!1})}function Te(e){return e.matchStatus==="INDEX_STALE"&&A(e)?`已匹配 ${e.shopId||""}(索引过期,可继续推送)`.trim():e.matchStatus==="MATCHED"||e.matched?`已匹配 ${e.shopId||""}`.trim():e.matchMessage?e.matchMessage:e.matchStatus==="CONFLICT"?"存在多个同名店铺,请人工确认":e.matchStatus==="PENDING"?"店铺索引暂未就绪":e.matchStatus?e.matchStatus:e.matched?`已匹配 ${e.shopId||""}`.trim():"待匹配"}function je(){ge.value=[...N.value,...ee.value]}function $(){je(),ze(ge.value)}function ze(e){W.value={total:e.length,successCount:e.filter(s=>s.success).length,failedCount:e.filter(s=>!s.success).length,items:e}}function de(e){const s=e.taskId;return s&&(m.value[s]?.fileProgress||[]).find(r=>r.fileKey&&e.fileKey?r.fileKey===e.fileKey:r.sourceFilename&&e.sourceFilename?r.sourceFilename===e.sourceFilename:!1)||null}function Ce(e){const s=e.taskId;if(!s)return"";const t=m.value[s],a=t?.line_progress?.info,r=de(e);if(P(s)){const u=x(s,e),c=t?.task?.status,_=!!(a?.file_name&&a.file_name===e.sourceFilename);let k=u?._completed?"COMPLETED":(u?._pushed,"PENDING"),g=0,w=Math.max(0,e.totalRows??r?.totalRows??0);c==="SUCCESS"||c==="FAILED"&&u?._completed?(k="COMPLETED",g=w):_?(k="RUNNING",g=Math.max(0,Math.min(w||Number.MAX_SAFE_INTEGER,a?.current_line??0)),!w&&a?.total_lines&&a.total_lines>0&&(w=a.total_lines)):u?._completed?(k="COMPLETED",g=w):u?._pushed&&(k="PENDING",g=0);const I=[];if(I.push(`文件状态:${k}`),I.push(`文件进度:${g}/${w}`),a?.finished_files!=null){const C=a.file_total&&a.file_total>0?`/${a.file_total}`:"";I.push(`已完成文件:${a.finished_files}${C}`)}return a?.phase&&I.push(`阶段:${a.phase}`),I.join("|")}if(r){const u=[],c=r.processedRows??0,_=r.totalRows??0;if(r.status&&u.push(`文件状态:${r.status}`),u.push(`文件进度:${c}/${_}`),a?.finished_files!=null){const k=a.file_total&&a.file_total>0?`/${a.file_total}`:"";u.push(`已完成文件:${a.finished_files}${k}`)}return a?.phase&&u.push(`阶段:${a.phase}`),u.join("|")}if(!t?.line_progress?.has_progress||!a){const u=t?.task?.status;return u?`任务状态:${u}`:""}const n=[];if(a.phase&&n.push(`阶段:${a.phase}`),a.file_index&&a.file_total&&n.push(`文件:${a.file_index}/${a.file_total}`),a.file_name&&n.push(`当前文件:${a.file_name}`),a.current_line!=null&&a.total_lines!=null&&n.push(`${P(s)?"当前文件进度":"进度"}:${a.current_line}/${a.total_lines}`),a.current_country&&n.push(`国家:${a.current_country}`),a.current_asin&&n.push(`ASIN:${a.current_asin}`),a.finished_files!=null){const u=a.file_total&&a.file_total>0?`/${a.file_total}`:"";n.push(`已完成文件:${a.finished_files}${u}`)}return n.join("|")}function te(e){const s=e.taskId;if(!s)return 0;const t=m.value[s]?.line_progress?.info;if(P(s)){const n=x(s,e);if(m.value[s]?.task?.status==="SUCCESS"||n?._completed)return 100;const c=Math.max(0,e.totalRows??de(e)?.totalRows??0);if(!!(t?.file_name&&t.file_name===e.sourceFilename)){if(t?.current_line!=null&&t?.total_lines&&t.total_lines>0)return Math.max(0,Math.min(100,Math.round(t.current_line/t.total_lines*100)));if(t?.current_line!=null&&c>0)return Math.max(0,Math.min(100,Math.round(t.current_line/c*100)))}return 0}const r=de(e);return r?Math.max(0,Math.min(100,r.percent??0)):t?t.current_line!=null&&t.total_lines&&t.total_lines>0?Math.max(0,Math.min(100,Math.round(t.current_line/t.total_lines*100))):t.finished_files!=null&&t.file_total&&t.file_total>0?Math.max(0,Math.min(100,Math.round(t.finished_files/t.file_total*100))):m.value[s]?.task?.status==="SUCCESS"?100:0:0}function Re(e){const s=m.value[e]?.task?.status;return ke(s)}function H(){const e=new Set;return i.value.forEach(s=>{s.items.some(t=>t._pushed)&&e.add(s.taskId)}),Array.from(e)}function E(e){const s=e.taskId;if(!s||!ce(s))return"";const a=x(s,e),r=Ie(s),l=m.value[s]?.line_progress,n=P(s);if(!n&&(r==="SUCCESS"||r==="FAILED"||e.taskStatus==="SUCCESS"||e.taskStatus==="FAILED"))return"已被全局判定为终态";if(ae(e)||ae(a)||a?._completed)return"本文件解析完毕";if(r==="RUNNING"&&l?.has_progress&&l?.info?.file_name===e.sourceFilename)return"处理中";if(n&&!a?._pushed&&!a?._completed)return"未入队";if(n&&r==="SUCCESS")return"本文件解析完毕";if(!n){const u=m.value[s];if(u?.items&&u.items.find(_=>q(_,e))&&r==="SUCCESS")return"本文件解析完毕"}return a?._pushed?"已入队":"未入队"}function Ne(e){return!!(e.downloadUrl||e.fileReady)}function ae(e){if(!e)return!1;const s=String(e.fileStatus||"").toUpperCase();return!!(e.fileReady||e.downloadUrl||s==="SUCCESS"||s==="COMPLETED")}function F(e,s){return e??s}function Ve(e){const s=e?.task?.id;if(!s)return!1;const t=i.value.find(n=>n.taskId===s);if(!t)return{success:!1,retryable:!1};const a=e?.items||[];let r=!1;const l=t.items.map(n=>{const u=a.find(_e=>q(_e,n));if(!u)return n;const c=Array.isArray(u.countries)?u.countries:void 0,_=Array.isArray(n.countries)?n.countries:void 0,k=c&&c.length>0?c:_&&_.length>0?_:c??_,g=Array.isArray(u.previewRows)?u.previewRows:void 0,w=Array.isArray(n.previewRows)?n.previewRows:void 0,I=g&&g.length>0?g:w&&w.length>0?w:g??w,C={...n,...u,shopName:F(u.shopName,n.shopName),companyName:F(u.companyName,n.companyName),shopId:F(u.shopId,n.shopId),platform:F(u.platform,n.platform),openStoreUrl:F(u.openStoreUrl,n.openStoreUrl),matchStatus:F(u.matchStatus,n.matchStatus),matchMessage:F(u.matchMessage,n.matchMessage),matched:A(n)||A(u),countryCount:F(u.countryCount,n.countryCount),countries:k,previewRows:I,_pushed:n._pushed,_completed:n._completed||ae(u)};return JSON.stringify(C)!==JSON.stringify(n)&&(r=!0),C});for(const n of a)l.some(u=>q(u,n))||(l.push({...n,_pushed:!1,_completed:ae(n)}),r=!0);return JSON.stringify(l)!==JSON.stringify(t.items)&&(t.items=l,r=!0),r&&ie(),r}async function fe(e){const s=e||H();if(s.length)try{const t=await cs(s);re.value&&R.value&&(b.value="后端已恢复,继续执行当前任务并自动衔接后续任务..."),re.value=!1;let a=!1;for(const r of t.items||[]){const l=r?.task?.id;typeof l=="number"&&l>0&&(m.value[l]=r,Ve(r)&&(a=!0),we(l)&&(a=!0))}a&&$()}catch(t){const a=(t instanceof Error?t.message:String(t||"")).toLowerCase();["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(l=>a.includes(l.toLowerCase()))&&R.value&&(re.value=!0,b.value="当前任务运行中,正在等待后端服务恢复...")}}function Qe(){return _s()}function ve(e=!1){if(U)return;if(T.value){if(!e)return;L.clearTimer("task-poll",T.value),T.value=null}const s=async()=>{if(T.value=null,U)return;if(le.value){ve();return}const t=H();if(!t.length)return;le.value=!0;let a=!1,r=!1;try{await fe(t),await Le();for(const l of t)Re(l)&&(me(l),a=!0,r=!0)}finally{le.value=!1}r?await J():a&&$(),!U&&H().length>0&&ve()};e?s():T.value=L.setTimeout("task-poll",s,Qe())}function he(e=!1){T.value&&!e||ve(e)}function ne(e){if(e.fileReady||e.downloadUrl)return{className:"success",text:"已完成"};const s=e.taskId?m.value[e.taskId]?.task?.status:null;return s==="SUCCESS"?{className:"success",text:"已完成"}:s==="FAILED"?{className:"failed",text:"失败"}:s==="RUNNING"?{className:"running",text:"执行中"}:e.taskStatus==="SUCCESS"?{className:"success",text:"已完成"}:e.taskStatus==="FAILED"?{className:"failed",text:"失败"}:e.taskStatus==="RUNNING"?{className:"running",text:"执行中"}:e.success?{className:"success",text:"已完成"}:{className:"failed",text:"失败"}}function Ee(){T.value&&(L.clearTimer("task-poll",T.value),T.value=null),pe()}async function Fe(e){const s=Q();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const a of e){const r=typeof a=="string"?a:a.absolutePath,l=typeof a=="string"?void 0:a.relativePath,n=await s.upload_file_to_java(r,l);if(!n?.success||!n.data)throw new Error(n?.error||n?.message||`上传失败:${r}`);t.push(n.data)}return t}async function Xe(){const e=Q();if(!e?.select_brand_xlsx_files){p.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const s=await e.select_brand_xlsx_files();if(!s?.length)return;M.value=s,X.value=await Fe(s),p.success(`已选择 ${s.length} 个删除品牌文件`)}catch(s){p.error(s instanceof Error?s.message:"选择失败")}}async function We(){const e=Q();if(!e?.select_brand_folder){p.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const s=await e.select_brand_folder();if(!s)return;const t=await ks(s);if(!t.success||!t.items?.length){p.warning(t.error||"该文件夹下没有 xlsx 文件");return}M.value=t.items.map(a=>a.relativePath||a.absolutePath),X.value=await Fe(t.items),p.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`)}catch(s){p.error(s instanceof Error?s.message:"选择失败")}}async function Ye(){if(!X.value.length){p.warning("请先选择待处理文件");return}try{O.value=!0;const e=await ds({files:X.value.map(l=>({fileKey:l.fileKey,originalFilename:l.originalFilename,relativePath:l.relativePath}))}),s=Se(e.items||[]),t=s.some(l=>A(l)),a=s.some(l=>l.matchStatus==="INDEX_STALE"&&l.matched),r=s.some(l=>!A(l));b.value=t?"解析完成,可在左侧点击“推送到 Python 队列”开始串行处理":"解析完成,当前没有可推送的文件",S.value="",s.length&&s[0].taskId&&ue(s[0].taskId,s,b.value,S.value),$(),r?p.warning("部分文件尚未命中可用店铺索引,已保留状态信息,请等待后台刷新后重试。"):a?p.warning("部分文件命中的是过期索引,仍可推送到 Python 队列;后台刷新后会自动重新匹配。"):t?p.success("删除品牌解析完成,请在左侧推送到 Python 队列"):p.warning("当前没有可推送的文件,请先等待店铺索引刷新。"),await J()}catch(e){p.error(e instanceof Error?e.message:"执行失败")}finally{O.value=!1}}async function Pe(e){const s=e.taskId;if(!s){p.warning("未找到任务ID");return}const t=Q(),a=e.resultId?fs(e.resultId):vs(s),r=e.outputFilename||e.sourceFilename||`delete-brand_${s}.xlsx`;if(t?.save_file_from_url_new){const l=await t.save_file_from_url_new(a,r);l.success?p.success(`已保存:${l.path||r}`):l.error&&l.error!=="用户取消"&&p.error(l.error);return}}async function J(){try{const e=await hs();K.value=Se(e.items||[]),Ge(K.value),$(),await fe(),he(!0)}catch(e){const s=(e instanceof Error?e.message:String(e||"")).toLowerCase();["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(a=>s.includes(a.toLowerCase()))||console.error("loadHistory error:",e)}}function xe(e){i.value.forEach(t=>{t.items=t.items.filter(a=>a.resultId!==e)});const s=i.value.length;i.value=i.value.filter(t=>t.items.length>0),i.value.length!==s&&typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value)),K.value=K.value.filter(t=>t.resultId!==e),$(),H().length===0&&Ee()}async function $e(e){try{await ps(e),xe(e),await J(),p.success("已删除")}catch(s){const t=s instanceof Error?s.message:"删除失败";if(typeof t=="string"&&t.includes("记录不存在")){xe(e),p.success("已删除");return}p.error(t)}}function Ae(e){const s=e.slice(0,5).map(a=>`${a.country}:${a.asin}${a.status?`(${a.status})`:""}`);return e.length-s.length>0?`${s.join("、")} 等 ${e.length} 条`:s.join("、")}function Ft(e,s){}function pe(){G.value&&(L.clearTimer("auto-retry",G.value),G.value=null)}function Ze(e=3e3){U||(pe(),G.value=L.setTimeout("auto-retry",()=>{G.value=null,U||Le().catch(()=>{})},e))}function es(e){return e.includes("当前店铺正在执行中")}function De(){for(const e of i.value)for(const s of e.items){const t=E(s);if(t==="已入队"||t==="处理中")return!0}return!1}function j(e){return e.resultId!=null?`result:${e.resultId}`:`task:${e.taskId||0}:${e.sourceFilename||""}`}function A(e){return!!(e.matched||e.matchStatus==="MATCHED"||e.matchStatus==="INDEX_STALE"&&e.shopId)}function ss(e){return!!(e.shopName&&Array.isArray(e.countries)&&e.countries.length>0)}function Me(e){return!!(e.taskId&&(A(e)||ss(e)))}function Be(){return N.value.find(e=>!Me(e)||j(e)===B.value||x(e.taskId,e)?._completed?!1:E(e)==="未入队")}async function Ue(e,s){if(s?.auto&&De())return e.taskId,e.sourceFilename,{success:!1,retryable:!0};const t=Q(),a=e.taskId;if(!a)return{success:!1,retryable:!1};const r=i.value.find(c=>c.taskId===a);if(!r)return{success:!1,retryable:!1};if(!t?.enqueue_json)return p.error("当前环境未启用 pywebview enqueue_json(浏览器环境不会推送)"),{success:!1,retryable:!1};const l={type:"delete-brand-run",ts:Date.now(),data:{taskId:a,items:[e]}};S.value=JSON.stringify(l,null,2);const n=await t.enqueue_json(l);let u="";if(n?.success){u=`已推送文件 ${e.sourceFilename},当前队列长度:${n.queue_size??"-"}`;const c=x(a,e);return c&&(c._pushed=!0,c._completed=!1),B.value=j(e),ue(a,r.items,u,S.value),he(!0),b.value=u,{success:!0,retryable:!1}}else{const c=n?.error||"未知错误";if(u=`推送到 Python 队列失败:${c}`,b.value=u,ue(a,r.items,u,S.value),s?.auto&&es(c))return{success:!1,retryable:!0}}return b.value=u,{success:!1,retryable:!1}}async function ts(){const e=Be();if(!e){p.warning("当前没有可推送的文件");return}Y.value=!0,R.value=!0,pe();const s=await Ue(e);if(Y.value=!1,!s.success){R.value=!1,B.value="";return}p.success("已开始按顺序推送到 Python 队列")}async function Le(){if(!R.value||Z.value){R.value,Z.value;return}if(De())return;const e=B.value;if(e){const t=N.value.find(a=>j(a)===e);if(t){const a=t.taskId,r=P(a);r&&(we(a),E(t),void 0);const l=E(t);if(l==="已入队"||l==="处理中"){t.sourceFilename;return}if(r){const n=x(a,t);if(n&&!n._completed){t.sourceFilename,n._pushed,n._completed;return}}}}const s=Be();if(!s){B.value="",R.value=!1;return}Z.value=!0;try{s.taskId,s.sourceFilename,j(s);const t=await Ue(s,{auto:!0});if(!t.success){if(t.retryable){s.taskId,s.sourceFilename,Ze();return}s.taskId,s.sourceFilename,R.value=!1}}finally{Z.value=!1}}return ls(()=>{Ke();const e=H();e.length>0?fe(e).then(async()=>{let s=!1,t=!1;for(const a of e)Re(a)&&(me(a),s=!0,t=!0);t?await J():s&&$(),he(!0)}):$(),J().catch(()=>{})}),rs(()=>{U=!0,Ee(),L.clearScope()}),(e,s)=>(d(),f("div",Is,[os(us,{active:"delete-brand"}),o("div",bs,[o("aside",Ss,[s[2]||(s[2]=o("div",{class:"section-title"},"选择文件",-1)),o("div",Ts,[s[0]||(s[0]=o("div",{class:"hint"},"上传删除品牌 Excel;无论是直接上传文件还是上传文件夹批量导入,都会按每个 Excel 文件名作为店铺名。",-1)),o("div",{class:"btns"},[o("button",{type:"button",class:"opt-btn",onClick:Xe},"选择 Excel 文件"),o("button",{type:"button",class:"opt-btn",onClick:We},"选择文件夹")]),o("div",Cs,[M.value.length?(d(),f(z,{key:0},[(d(!0),f(z,null,ye(oe.value,t=>(d(),f("span",{key:t},v(t),1))),128)),M.value.length>oe.value.length?(d(),f("span",Rs," 还有 "+v(M.value.length-oe.value.length)+" 个文件未展开显示 ",1)):h("",!0)],64)):(d(),f("span",Ns,"暂未选择删除品牌文件"))])]),s[3]||(s[3]=is('
执行说明
',2)),o("div",Es,[o("button",{type:"button",class:"btn-run",disabled:O.value,onClick:Ye},v(O.value?"解析中...":"开始解析"),9,Fs),o("button",{type:"button",class:"btn-run btn-queue",disabled:Y.value||!Je.value.length,onClick:ts},v(Y.value?"推送中...":"推送到 Python 队列"),9,Ps),o("span",xs,v(O.value?"正在读取删除品牌数据,请稍候…":"解析后会在右侧展示按国家分组的去重结果"),1)]),b.value||S.value?(d(),f("div",$s,[s[1]||(s[1]=o("div",{class:"section-title queue-debug-title"},"Python 队列推送结果",-1)),b.value?(d(),f("div",As,v(b.value),1)):h("",!0),S.value?(d(),f("pre",Ds,v(S.value),1)):h("",!0)])):h("",!0)]),o("section",Ms,[s[12]||(s[12]=o("div",{class:"panel-header"},"删除品牌结果",-1)),o("div",Bs,[o("div",Us,[o("div",Ls,[s[4]||(s[4]=o("span",{class:"summary-label"},"已处理文件",-1)),o("strong",null,v(W.value.total),1)]),o("div",qs,[s[5]||(s[5]=o("span",{class:"summary-label"},"成功结果",-1)),o("strong",null,v(W.value.successCount),1)]),o("div",Os,[s[6]||(s[6]=o("span",{class:"summary-label"},"失败文件",-1)),o("strong",null,v(W.value.failedCount),1)])]),o("div",Ks,[s[11]||(s[11]=o("div",{class:"result-list-header"},[o("span",null,"删除品牌结果列表")],-1)),He.value?(d(),f(z,{key:1},[N.value.length?(d(),f("div",Hs,[s[8]||(s[8]=o("div",{class:"result-subsection-title"},"当前任务",-1)),o("ul",Js,[(d(!0),f(z,null,ye(N.value,t=>(d(),f("li",{key:`current-${t.taskId||t.resultId||t.sourceFilename}`,class:"task-item split-result-item"},[o("div",js,[o("span",{class:"id",title:t.sourceFilename},v(t.sourceFilename||"-"),9,zs),o("div",Vs,"店铺名:"+v(t.shopName||"-"),1),o("div",Qs,"匹配结果:"+v(Te(t)),1),t.platform?(d(),f("div",Xs,"平台:"+v(t.platform),1)):h("",!0),E(t)?(d(),f("div",Ws,"队列状态:"+v(E(t)),1)):h("",!0),t.countryCount!==void 0&&t.matched?(d(),f("div",Ys,"国家数:"+v(t.countryCount),1)):h("",!0),t.totalRows!==void 0&&t.matched?(d(),f("div",Zs,"去重后 "+v(t.totalRows)+" 条 ",1)):h("",!0),be(t)?(d(),f("div",et,[o("div",st,[s[7]||(s[7]=o("span",null,"任务进度",-1)),o("span",null,v(te(t))+"%",1)]),o("div",tt,[o("div",{class:"delete-brand-progress-bar-fill",style:qe({width:`${te(t)}%`})},null,4)]),o("div",at,v(Ce(t)),1)])):h("",!0),t.previewRows?.length?(d(),f("div",nt,v(Ae(t.previewRows)),1)):h("",!0),se(t)?(d(),f("div",lt,"错误信息:"+v(se(t)),1)):h("",!0)]),o("div",rt,[o("span",{class:Oe(["status",ne(t).className])},v(ne(t).text),3),Ne(t)?(d(),f("button",{key:0,type:"button",class:"download",onClick:a=>Pe(t)}," 下载 ",8,ot)):h("",!0),t.resultId?(d(),f("button",{key:1,type:"button",class:"btn-delete",onClick:a=>$e(t.resultId)}," 删除 ",8,ut)):h("",!0)])]))),128))])])):h("",!0),ee.value.length?(d(),f("div",it,[s[10]||(s[10]=o("div",{class:"result-subsection-title"},"历史记录",-1)),o("ul",ct,[(d(!0),f(z,null,ye(ee.value,t=>(d(),f("li",{key:`history-${t.taskId||t.resultId||t.sourceFilename}`,class:"task-item split-result-item"},[o("div",dt,[o("span",{class:"id",title:t.sourceFilename},v(t.sourceFilename||"-"),9,ft),o("div",vt,"店铺名:"+v(t.shopName||"-"),1),o("div",ht,"匹配结果:"+v(Te(t)),1),t.platform?(d(),f("div",pt,"平台:"+v(t.platform),1)):h("",!0),t.countryCount!==void 0&&t.matched?(d(),f("div",_t,"国家数:"+v(t.countryCount),1)):h("",!0),t.totalRows!==void 0&&t.matched?(d(),f("div",yt,"去重后 "+v(t.totalRows)+" 条 ",1)):h("",!0),be(t)?(d(),f("div",gt,[o("div",mt,[s[9]||(s[9]=o("span",null,"任务进度",-1)),o("span",null,v(te(t))+"%",1)]),o("div",kt,[o("div",{class:"delete-brand-progress-bar-fill",style:qe({width:`${te(t)}%`})},null,4)]),o("div",wt,v(Ce(t)),1)])):h("",!0),t.previewRows?.length?(d(),f("div",It,v(Ae(t.previewRows)),1)):h("",!0),se(t)?(d(),f("div",bt,"错误信息:"+v(se(t)),1)):h("",!0)]),o("div",St,[o("span",{class:Oe(["status",ne(t).className])},v(ne(t).text),3),Ne(t)?(d(),f("button",{key:0,type:"button",class:"download",onClick:a=>Pe(t)}," 下载 ",8,Tt)):h("",!0),t.resultId?(d(),f("button",{key:1,type:"button",class:"btn-delete",onClick:a=>$e(t.resultId)}," 删除 ",8,Ct)):h("",!0)])]))),128))])])):h("",!0)],64)):(d(),f("div",Gs," 暂无删除品牌结果,完成解析后会在这里展示按国家分组的去重结果 "))])])])])]))}}),Nt=ys(Rt,[["__scopeId","data-v-ebc81d26"]]);gs(Nt).use(ms).mount("#app"); +import{d as ns,o as ls,L as rs,a as d,c as f,b as os,B as us,e as o,F as z,r as ye,t as v,f as h,M as is,N as qe,n as Oe,g as y,h as V,O as cs,i as Q,E as p,P as ds,Q as fs,R as vs,S as hs,T as ps,U as _s,_ as ys,q as gs,s as ms}from"./pywebview-84Lhn3TI.js";import{e as ks}from"./brand-DIMFUl0j.js";import{c as ws}from"./categorized-timers-JPA-olTr.js";const Is={class:"page-shell module-page"},bs={class:"main-content"},Ss={class:"left-panel"},Ts={class:"upload-zone"},Cs={class:"selected-files clean-placeholder split-selected-files"},Rs={key:0,class:"more-line"},Ns={key:1},Es={class:"run-row"},Fs=["disabled"],Ps=["disabled"],xs={class:"loading-msg"},$s={key:0,class:"queue-debug-card"},As={key:0,class:"queue-debug-line"},Ds={key:1,class:"queue-debug-payload"},Ms={class:"right-panel"},Bs={class:"task-list-wrap"},Us={class:"clean-result-summary"},Ls={class:"summary-card"},qs={class:"summary-card"},Os={class:"summary-card"},Ks={class:"result-list-wrap"},Gs={key:0,class:"empty-tasks"},Hs={key:0,class:"result-subsection"},Js={class:"task-list clean-result-list"},js={class:"left split-result-main"},zs=["title"],Vs={class:"files"},Qs={class:"files"},Xs={key:0,class:"files"},Ws={key:1,class:"files"},Ys={key:2,class:"files"},Zs={key:3,class:"time"},et={key:4,class:"delete-brand-progress-block"},st={class:"delete-brand-progress-header"},tt={class:"delete-brand-progress-bar"},at={class:"files delete-brand-progress"},nt={key:5,class:"files split-entry-list delete-brand-preview"},lt={key:6,class:"files"},rt={class:"task-right split-result-actions"},ot=["onClick"],ut=["onClick"],it={key:1,class:"result-subsection"},ct={class:"task-list clean-result-list"},dt={class:"left split-result-main"},ft=["title"],vt={class:"files"},ht={class:"files"},pt={key:0,class:"files"},_t={key:1,class:"files"},yt={key:2,class:"time"},gt={key:3,class:"delete-brand-progress-block"},mt={class:"delete-brand-progress-header"},kt={class:"delete-brand-progress-bar"},wt={class:"files delete-brand-progress"},It={key:4,class:"files split-entry-list delete-brand-preview"},bt={key:5,class:"files"},St={class:"task-right split-result-actions"},Tt=["onClick"],Ct=["onClick"],Rt=ns({__name:"BrandDeleteBrandTab",setup(Et){function D(){return`delete-brand:current-tasks:${typeof window<"u"&&window.localStorage.getItem("uid")||"0"}`}const M=y([]),X=y([]),O=y(!1),ge=y([]),i=y([]),K=y([]),W=y({total:0,successCount:0,failedCount:0,items:[]}),b=y(""),S=y(""),m=y({}),T=y(null),le=y(!1),Y=y(!1),R=y(!1),B=y(""),Z=y(!1),G=y(null),re=y(!1);let U=!1;const L=ws("delete-brand"),oe=V(()=>M.value.slice(0,10)),N=V(()=>{const e=[...i.value].sort((t,a)=>(a.createdAt||0)-(t.createdAt||0)),s=[];return e.forEach(t=>{s.push(...t.items)}),s});function Ke(){try{const e=typeof window<"u"?window.localStorage.getItem(D()):null;if(e){if(i.value=JSON.parse(e),i.value.length>0){const s=i.value[i.value.length-1];b.value=s.queuePushResult||"",S.value=s.queuePayloadText||""}}else i.value=[]}catch{i.value=[]}}function ue(e,s,t,a){if(!s?.length)return;const r=i.value.findIndex(c=>c.taskId===e),l=r>=0?i.value[r]:null,n=s.map(c=>{const _=l?.items.find(as=>q(as,c)),k=Array.isArray(c.countries)?c.countries:void 0,g=Array.isArray(_?.countries)?_?.countries:void 0,w=k&&k.length>0?k:g&&g.length>0?g:k??g,I=Array.isArray(c.previewRows)?c.previewRows:void 0,C=Array.isArray(_?.previewRows)?_?.previewRows:void 0,_e=I&&I.length>0?I:C&&C.length>0?C:I??C;return{...c,countries:w,previewRows:_e,_pushed:_?._pushed??c._pushed??!1,_completed:_?._completed??c._completed??!1}}),u={taskId:e,items:n,createdAt:l?.createdAt||Date.now(),queuePushResult:t??l?.queuePushResult,queuePayloadText:a??l?.queuePayloadText};r>=0?i.value[r]=u:i.value.push(u),typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value))}function me(e){const s=i.value.length;i.value=i.value.filter(t=>t.taskId!==e),i.value.length!==s&&typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value))}function ke(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function Ge(e){if(!e?.length)return!1;const s=new Set;if(e.forEach(a=>{a.taskId&&ke(a.taskStatus)&&s.add(a.taskId)}),!s.size)return!1;const t=i.value.length;return i.value=i.value.filter(a=>!s.has(a.taskId)),i.value.length!==t?(ie(),!0):!1}const ee=V(()=>K.value.filter(e=>!N.value.some(s=>q(s,e)))),He=V(()=>N.value.length>0||ee.value.length>0),Je=V(()=>N.value.filter(e=>Me(e)&&E(e)==="未入队"));function ie(){typeof window<"u"&&(i.value.length===0?window.localStorage.removeItem(D()):window.localStorage.setItem(D(),JSON.stringify(i.value)))}function P(e){return e?(i.value.find(t=>t.taskId===e)?.items.length||0)>1:!1}function ce(e){return e&&i.value.find(s=>s.taskId===e)||null}function q(e,s){return!e||!s?!1:e.resultId!=null&&s.resultId!=null?e.resultId===s.resultId:e.fileKey&&s.fileKey?e.fileKey===s.fileKey:e.sourceFilename===s.sourceFilename}function x(e,s){const t=ce(e);return t&&t.items.find(a=>q(a,s))||null}function we(e){if(!e)return!1;const s=ce(e);if(!s)return!1;let t=!1;const a=m.value[e]?.line_progress?.info,r=P(e);if(a?.file_name&&a.current_line!=null&&a.total_lines!=null&&a.total_lines>0&&a.current_line>=a.total_lines){const l=s.items.find(n=>n.sourceFilename===a.file_name);l&&!l._completed&&(l._completed=!0,t=!0)}if(!r){const l=m.value[e]?.task?.status;if((l==="SUCCESS"||l==="FAILED")&&s.items.length===1){const n=s.items[0];n&&!n._completed&&(n._completed=!0,t=!0)}}return t&&ie(),t}function Ie(e){return e&&m.value[e]?.task?.status||""}function se(e){if(e.error)return e.error;if(e.matchStatus&&e.matchStatus!=="MATCHED")return e.matchMessage||"";const s=e.taskId;return s&&m.value[s]?.task?.errorMessage||""}function be(e){const s=e.taskId;if(!s)return!1;const t=m.value[s]?.line_progress,a=Ie(s),r=P(s),l=E(e);if(r){const n=x(s,e),u=j(e)===B.value,c=!!(t?.has_progress&&t?.info?.file_name===e.sourceFilename);return u||c||n?._pushed||(a==="RUNNING"||a==="PENDING"||!a)&&n?._completed?!0:{success:!1,retryable:!0}}return l==="本文件解析完毕"||l==="已被全局判定为终态"?!1:t?.has_progress||t?.info?!0:l==="已入队"||l==="处理中"}function Se(e){return e.map(s=>A(s)?{...s,matched:!0,_pushed:!1,_completed:!1}:{...s,matched:!1,openStoreUrl:void 0,error:s.error||void 0,_pushed:!1,_completed:!1})}function Te(e){return e.matchStatus==="INDEX_STALE"&&A(e)?`已匹配 ${e.shopId||""}(索引过期,可继续推送)`.trim():e.matchStatus==="MATCHED"||e.matched?`已匹配 ${e.shopId||""}`.trim():e.matchMessage?e.matchMessage:e.matchStatus==="CONFLICT"?"存在多个同名店铺,请人工确认":e.matchStatus==="PENDING"?"店铺索引暂未就绪":e.matchStatus?e.matchStatus:e.matched?`已匹配 ${e.shopId||""}`.trim():"待匹配"}function je(){ge.value=[...N.value,...ee.value]}function $(){je(),ze(ge.value)}function ze(e){W.value={total:e.length,successCount:e.filter(s=>s.success).length,failedCount:e.filter(s=>!s.success).length,items:e}}function de(e){const s=e.taskId;return s&&(m.value[s]?.fileProgress||[]).find(r=>r.fileKey&&e.fileKey?r.fileKey===e.fileKey:r.sourceFilename&&e.sourceFilename?r.sourceFilename===e.sourceFilename:!1)||null}function Ce(e){const s=e.taskId;if(!s)return"";const t=m.value[s],a=t?.line_progress?.info,r=de(e);if(P(s)){const u=x(s,e),c=t?.task?.status,_=!!(a?.file_name&&a.file_name===e.sourceFilename);let k=u?._completed?"COMPLETED":(u?._pushed,"PENDING"),g=0,w=Math.max(0,e.totalRows??r?.totalRows??0);c==="SUCCESS"||c==="FAILED"&&u?._completed?(k="COMPLETED",g=w):_?(k="RUNNING",g=Math.max(0,Math.min(w||Number.MAX_SAFE_INTEGER,a?.current_line??0)),!w&&a?.total_lines&&a.total_lines>0&&(w=a.total_lines)):u?._completed?(k="COMPLETED",g=w):u?._pushed&&(k="PENDING",g=0);const I=[];if(I.push(`文件状态:${k}`),I.push(`文件进度:${g}/${w}`),a?.finished_files!=null){const C=a.file_total&&a.file_total>0?`/${a.file_total}`:"";I.push(`已完成文件:${a.finished_files}${C}`)}return a?.phase&&I.push(`阶段:${a.phase}`),I.join("|")}if(r){const u=[],c=r.processedRows??0,_=r.totalRows??0;if(r.status&&u.push(`文件状态:${r.status}`),u.push(`文件进度:${c}/${_}`),a?.finished_files!=null){const k=a.file_total&&a.file_total>0?`/${a.file_total}`:"";u.push(`已完成文件:${a.finished_files}${k}`)}return a?.phase&&u.push(`阶段:${a.phase}`),u.join("|")}if(!t?.line_progress?.has_progress||!a){const u=t?.task?.status;return u?`任务状态:${u}`:""}const n=[];if(a.phase&&n.push(`阶段:${a.phase}`),a.file_index&&a.file_total&&n.push(`文件:${a.file_index}/${a.file_total}`),a.file_name&&n.push(`当前文件:${a.file_name}`),a.current_line!=null&&a.total_lines!=null&&n.push(`${P(s)?"当前文件进度":"进度"}:${a.current_line}/${a.total_lines}`),a.current_country&&n.push(`国家:${a.current_country}`),a.current_asin&&n.push(`ASIN:${a.current_asin}`),a.finished_files!=null){const u=a.file_total&&a.file_total>0?`/${a.file_total}`:"";n.push(`已完成文件:${a.finished_files}${u}`)}return n.join("|")}function te(e){const s=e.taskId;if(!s)return 0;const t=m.value[s]?.line_progress?.info;if(P(s)){const n=x(s,e);if(m.value[s]?.task?.status==="SUCCESS"||n?._completed)return 100;const c=Math.max(0,e.totalRows??de(e)?.totalRows??0);if(!!(t?.file_name&&t.file_name===e.sourceFilename)){if(t?.current_line!=null&&t?.total_lines&&t.total_lines>0)return Math.max(0,Math.min(100,Math.round(t.current_line/t.total_lines*100)));if(t?.current_line!=null&&c>0)return Math.max(0,Math.min(100,Math.round(t.current_line/c*100)))}return 0}const r=de(e);return r?Math.max(0,Math.min(100,r.percent??0)):t?t.current_line!=null&&t.total_lines&&t.total_lines>0?Math.max(0,Math.min(100,Math.round(t.current_line/t.total_lines*100))):t.finished_files!=null&&t.file_total&&t.file_total>0?Math.max(0,Math.min(100,Math.round(t.finished_files/t.file_total*100))):m.value[s]?.task?.status==="SUCCESS"?100:0:0}function Re(e){const s=m.value[e]?.task?.status;return ke(s)}function H(){const e=new Set;return i.value.forEach(s=>{s.items.some(t=>t._pushed)&&e.add(s.taskId)}),Array.from(e)}function E(e){const s=e.taskId;if(!s||!ce(s))return"";const a=x(s,e),r=Ie(s),l=m.value[s]?.line_progress,n=P(s);if(!n&&(r==="SUCCESS"||r==="FAILED"||e.taskStatus==="SUCCESS"||e.taskStatus==="FAILED"))return"已被全局判定为终态";if(ae(e)||ae(a)||a?._completed)return"本文件解析完毕";if(r==="RUNNING"&&l?.has_progress&&l?.info?.file_name===e.sourceFilename)return"处理中";if(n&&!a?._pushed&&!a?._completed)return"未入队";if(n&&r==="SUCCESS")return"本文件解析完毕";if(!n){const u=m.value[s];if(u?.items&&u.items.find(_=>q(_,e))&&r==="SUCCESS")return"本文件解析完毕"}return a?._pushed?"已入队":"未入队"}function Ne(e){return!!(e.downloadUrl||e.fileReady)}function ae(e){if(!e)return!1;const s=String(e.fileStatus||"").toUpperCase();return!!(e.fileReady||e.downloadUrl||s==="SUCCESS"||s==="COMPLETED")}function F(e,s){return e??s}function Ve(e){const s=e?.task?.id;if(!s)return!1;const t=i.value.find(n=>n.taskId===s);if(!t)return{success:!1,retryable:!1};const a=e?.items||[];let r=!1;const l=t.items.map(n=>{const u=a.find(_e=>q(_e,n));if(!u)return n;const c=Array.isArray(u.countries)?u.countries:void 0,_=Array.isArray(n.countries)?n.countries:void 0,k=c&&c.length>0?c:_&&_.length>0?_:c??_,g=Array.isArray(u.previewRows)?u.previewRows:void 0,w=Array.isArray(n.previewRows)?n.previewRows:void 0,I=g&&g.length>0?g:w&&w.length>0?w:g??w,C={...n,...u,shopName:F(u.shopName,n.shopName),companyName:F(u.companyName,n.companyName),shopId:F(u.shopId,n.shopId),platform:F(u.platform,n.platform),openStoreUrl:F(u.openStoreUrl,n.openStoreUrl),matchStatus:F(u.matchStatus,n.matchStatus),matchMessage:F(u.matchMessage,n.matchMessage),matched:A(n)||A(u),countryCount:F(u.countryCount,n.countryCount),countries:k,previewRows:I,_pushed:n._pushed,_completed:n._completed||ae(u)};return JSON.stringify(C)!==JSON.stringify(n)&&(r=!0),C});for(const n of a)l.some(u=>q(u,n))||(l.push({...n,_pushed:!1,_completed:ae(n)}),r=!0);return JSON.stringify(l)!==JSON.stringify(t.items)&&(t.items=l,r=!0),r&&ie(),r}async function fe(e){const s=e||H();if(s.length)try{const t=await cs(s);re.value&&R.value&&(b.value="后端已恢复,继续执行当前任务并自动衔接后续任务..."),re.value=!1;let a=!1;for(const r of t.items||[]){const l=r?.task?.id;typeof l=="number"&&l>0&&(m.value[l]=r,Ve(r)&&(a=!0),we(l)&&(a=!0))}a&&$()}catch(t){const a=(t instanceof Error?t.message:String(t||"")).toLowerCase();["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(l=>a.includes(l.toLowerCase()))&&R.value&&(re.value=!0,b.value="当前任务运行中,正在等待后端服务恢复...")}}function Qe(){return _s()}function ve(e=!1){if(U)return;if(T.value){if(!e)return;L.clearTimer("task-poll",T.value),T.value=null}const s=async()=>{if(T.value=null,U)return;if(le.value){ve();return}const t=H();if(!t.length)return;le.value=!0;let a=!1,r=!1;try{await fe(t),await Le();for(const l of t)Re(l)&&(me(l),a=!0,r=!0)}finally{le.value=!1}r?await J():a&&$(),!U&&H().length>0&&ve()};e?s():T.value=L.setTimeout("task-poll",s,Qe())}function he(e=!1){T.value&&!e||ve(e)}function ne(e){if(e.fileReady||e.downloadUrl)return{className:"success",text:"已完成"};const s=e.taskId?m.value[e.taskId]?.task?.status:null;return s==="SUCCESS"?{className:"success",text:"已完成"}:s==="FAILED"?{className:"failed",text:"失败"}:s==="RUNNING"?{className:"running",text:"执行中"}:e.taskStatus==="SUCCESS"?{className:"success",text:"已完成"}:e.taskStatus==="FAILED"?{className:"failed",text:"失败"}:e.taskStatus==="RUNNING"?{className:"running",text:"执行中"}:e.success?{className:"success",text:"已完成"}:{className:"failed",text:"失败"}}function Ee(){T.value&&(L.clearTimer("task-poll",T.value),T.value=null),pe()}async function Fe(e){const s=Q();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const a of e){const r=typeof a=="string"?a:a.absolutePath,l=typeof a=="string"?void 0:a.relativePath,n=await s.upload_file_to_java(r,l);if(!n?.success||!n.data)throw new Error(n?.error||n?.message||`上传失败:${r}`);t.push(n.data)}return t}async function Xe(){const e=Q();if(!e?.select_brand_xlsx_files){p.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const s=await e.select_brand_xlsx_files();if(!s?.length)return;M.value=s,X.value=await Fe(s),p.success(`已选择 ${s.length} 个删除品牌文件`)}catch(s){p.error(s instanceof Error?s.message:"选择失败")}}async function We(){const e=Q();if(!e?.select_brand_folder){p.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const s=await e.select_brand_folder();if(!s)return;const t=await ks(s);if(!t.success||!t.items?.length){p.warning(t.error||"该文件夹下没有 xlsx 文件");return}M.value=t.items.map(a=>a.relativePath||a.absolutePath),X.value=await Fe(t.items),p.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`)}catch(s){p.error(s instanceof Error?s.message:"选择失败")}}async function Ye(){if(!X.value.length){p.warning("请先选择待处理文件");return}try{O.value=!0;const e=await ds({files:X.value.map(l=>({fileKey:l.fileKey,originalFilename:l.originalFilename,relativePath:l.relativePath}))}),s=Se(e.items||[]),t=s.some(l=>A(l)),a=s.some(l=>l.matchStatus==="INDEX_STALE"&&l.matched),r=s.some(l=>!A(l));b.value=t?"解析完成,可在左侧点击“推送到 Python 队列”开始串行处理":"解析完成,当前没有可推送的文件",S.value="",s.length&&s[0].taskId&&ue(s[0].taskId,s,b.value,S.value),$(),r?p.warning("部分文件尚未命中可用店铺索引,已保留状态信息,请等待后台刷新后重试。"):a?p.warning("部分文件命中的是过期索引,仍可推送到 Python 队列;后台刷新后会自动重新匹配。"):t?p.success("删除品牌解析完成,请在左侧推送到 Python 队列"):p.warning("当前没有可推送的文件,请先等待店铺索引刷新。"),await J()}catch(e){p.error(e instanceof Error?e.message:"执行失败")}finally{O.value=!1}}async function Pe(e){const s=e.taskId;if(!s){p.warning("未找到任务ID");return}const t=Q(),a=e.resultId?fs(e.resultId):vs(s),r=e.outputFilename||e.sourceFilename||`delete-brand_${s}.xlsx`;if(t?.save_file_from_url_new){const l=await t.save_file_from_url_new(a,r);l.success?p.success(`已保存:${l.path||r}`):l.error&&l.error!=="用户取消"&&p.error(l.error);return}}async function J(){try{const e=await hs();K.value=Se(e.items||[]),Ge(K.value),$(),await fe(),he(!0)}catch(e){const s=(e instanceof Error?e.message:String(e||"")).toLowerCase();["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(a=>s.includes(a.toLowerCase()))||console.error("loadHistory error:",e)}}function xe(e){i.value.forEach(t=>{t.items=t.items.filter(a=>a.resultId!==e)});const s=i.value.length;i.value=i.value.filter(t=>t.items.length>0),i.value.length!==s&&typeof window<"u"&&window.localStorage.setItem(D(),JSON.stringify(i.value)),K.value=K.value.filter(t=>t.resultId!==e),$(),H().length===0&&Ee()}async function $e(e){try{await ps(e),xe(e),await J(),p.success("已删除")}catch(s){const t=s instanceof Error?s.message:"删除失败";if(typeof t=="string"&&t.includes("记录不存在")){xe(e),p.success("已删除");return}p.error(t)}}function Ae(e){const s=e.slice(0,5).map(a=>`${a.country}:${a.asin}${a.status?`(${a.status})`:""}`);return e.length-s.length>0?`${s.join("、")} 等 ${e.length} 条`:s.join("、")}function Ft(e,s){}function pe(){G.value&&(L.clearTimer("auto-retry",G.value),G.value=null)}function Ze(e=3e3){U||(pe(),G.value=L.setTimeout("auto-retry",()=>{G.value=null,U||Le().catch(()=>{})},e))}function es(e){return e.includes("当前店铺正在执行中")}function De(){for(const e of i.value)for(const s of e.items){const t=E(s);if(t==="已入队"||t==="处理中")return!0}return!1}function j(e){return e.resultId!=null?`result:${e.resultId}`:`task:${e.taskId||0}:${e.sourceFilename||""}`}function A(e){return!!(e.matched||e.matchStatus==="MATCHED"||e.matchStatus==="INDEX_STALE"&&e.shopId)}function ss(e){return!!(e.shopName&&Array.isArray(e.countries)&&e.countries.length>0)}function Me(e){return!!(e.taskId&&(A(e)||ss(e)))}function Be(){return N.value.find(e=>!Me(e)||j(e)===B.value||x(e.taskId,e)?._completed?!1:E(e)==="未入队")}async function Ue(e,s){if(s?.auto&&De())return e.taskId,e.sourceFilename,{success:!1,retryable:!0};const t=Q(),a=e.taskId;if(!a)return{success:!1,retryable:!1};const r=i.value.find(c=>c.taskId===a);if(!r)return{success:!1,retryable:!1};if(!t?.enqueue_json)return p.error("当前环境未启用 pywebview enqueue_json(浏览器环境不会推送)"),{success:!1,retryable:!1};const l={type:"delete-brand-run",ts:Date.now(),data:{taskId:a,items:[e]}};S.value=JSON.stringify(l,null,2);const n=await t.enqueue_json(l);let u="";if(n?.success){u=`已推送文件 ${e.sourceFilename},当前队列长度:${n.queue_size??"-"}`;const c=x(a,e);return c&&(c._pushed=!0,c._completed=!1),B.value=j(e),ue(a,r.items,u,S.value),he(!0),b.value=u,{success:!0,retryable:!1}}else{const c=n?.error||"未知错误";if(u=`推送到 Python 队列失败:${c}`,b.value=u,ue(a,r.items,u,S.value),s?.auto&&es(c))return{success:!1,retryable:!0}}return b.value=u,{success:!1,retryable:!1}}async function ts(){const e=Be();if(!e){p.warning("当前没有可推送的文件");return}Y.value=!0,R.value=!0,pe();const s=await Ue(e);if(Y.value=!1,!s.success){R.value=!1,B.value="";return}p.success("已开始按顺序推送到 Python 队列")}async function Le(){if(!R.value||Z.value){R.value,Z.value;return}if(De())return;const e=B.value;if(e){const t=N.value.find(a=>j(a)===e);if(t){const a=t.taskId,r=P(a);r&&(we(a),E(t),void 0);const l=E(t);if(l==="已入队"||l==="处理中"){t.sourceFilename;return}if(r){const n=x(a,t);if(n&&!n._completed){t.sourceFilename,n._pushed,n._completed;return}}}}const s=Be();if(!s){B.value="",R.value=!1;return}Z.value=!0;try{s.taskId,s.sourceFilename,j(s);const t=await Ue(s,{auto:!0});if(!t.success){if(t.retryable){s.taskId,s.sourceFilename,Ze();return}s.taskId,s.sourceFilename,R.value=!1}}finally{Z.value=!1}}return ls(()=>{Ke();const e=H();e.length>0?fe(e).then(async()=>{let s=!1,t=!1;for(const a of e)Re(a)&&(me(a),s=!0,t=!0);t?await J():s&&$(),he(!0)}):$(),J().catch(()=>{})}),rs(()=>{U=!0,Ee(),L.clearScope()}),(e,s)=>(d(),f("div",Is,[os(us,{active:"delete-brand"}),o("div",bs,[o("aside",Ss,[s[2]||(s[2]=o("div",{class:"section-title"},"选择文件",-1)),o("div",Ts,[s[0]||(s[0]=o("div",{class:"hint"},"上传删除品牌 Excel;无论是直接上传文件还是上传文件夹批量导入,都会按每个 Excel 文件名作为店铺名。",-1)),o("div",{class:"btns"},[o("button",{type:"button",class:"opt-btn",onClick:Xe},"选择 Excel 文件"),o("button",{type:"button",class:"opt-btn",onClick:We},"选择文件夹")]),o("div",Cs,[M.value.length?(d(),f(z,{key:0},[(d(!0),f(z,null,ye(oe.value,t=>(d(),f("span",{key:t},v(t),1))),128)),M.value.length>oe.value.length?(d(),f("span",Rs," 还有 "+v(M.value.length-oe.value.length)+" 个文件未展开显示 ",1)):h("",!0)],64)):(d(),f("span",Ns,"暂未选择删除品牌文件"))])]),s[3]||(s[3]=is('
执行说明
',2)),o("div",Es,[o("button",{type:"button",class:"btn-run",disabled:O.value,onClick:Ye},v(O.value?"解析中...":"开始解析"),9,Fs),o("button",{type:"button",class:"btn-run btn-queue",disabled:Y.value||!Je.value.length,onClick:ts},v(Y.value?"推送中...":"推送到 Python 队列"),9,Ps),o("span",xs,v(O.value?"正在读取删除品牌数据,请稍候…":"解析后会在右侧展示按国家分组的去重结果"),1)]),b.value||S.value?(d(),f("div",$s,[s[1]||(s[1]=o("div",{class:"section-title queue-debug-title"},"Python 队列推送结果",-1)),b.value?(d(),f("div",As,v(b.value),1)):h("",!0),S.value?(d(),f("pre",Ds,v(S.value),1)):h("",!0)])):h("",!0)]),o("section",Ms,[s[12]||(s[12]=o("div",{class:"panel-header"},"删除品牌结果",-1)),o("div",Bs,[o("div",Us,[o("div",Ls,[s[4]||(s[4]=o("span",{class:"summary-label"},"已处理文件",-1)),o("strong",null,v(W.value.total),1)]),o("div",qs,[s[5]||(s[5]=o("span",{class:"summary-label"},"成功结果",-1)),o("strong",null,v(W.value.successCount),1)]),o("div",Os,[s[6]||(s[6]=o("span",{class:"summary-label"},"失败文件",-1)),o("strong",null,v(W.value.failedCount),1)])]),o("div",Ks,[s[11]||(s[11]=o("div",{class:"result-list-header"},[o("span",null,"删除品牌结果列表")],-1)),He.value?(d(),f(z,{key:1},[N.value.length?(d(),f("div",Hs,[s[8]||(s[8]=o("div",{class:"result-subsection-title"},"当前任务",-1)),o("ul",Js,[(d(!0),f(z,null,ye(N.value,t=>(d(),f("li",{key:`current-${t.taskId||t.resultId||t.sourceFilename}`,class:"task-item split-result-item"},[o("div",js,[o("span",{class:"id",title:t.sourceFilename},v(t.sourceFilename||"-"),9,zs),o("div",Vs,"店铺名:"+v(t.shopName||"-"),1),o("div",Qs,"匹配结果:"+v(Te(t)),1),t.platform?(d(),f("div",Xs,"平台:"+v(t.platform),1)):h("",!0),E(t)?(d(),f("div",Ws,"队列状态:"+v(E(t)),1)):h("",!0),t.countryCount!==void 0&&t.matched?(d(),f("div",Ys,"国家数:"+v(t.countryCount),1)):h("",!0),t.totalRows!==void 0&&t.matched?(d(),f("div",Zs,"去重后 "+v(t.totalRows)+" 条 ",1)):h("",!0),be(t)?(d(),f("div",et,[o("div",st,[s[7]||(s[7]=o("span",null,"任务进度",-1)),o("span",null,v(te(t))+"%",1)]),o("div",tt,[o("div",{class:"delete-brand-progress-bar-fill",style:qe({width:`${te(t)}%`})},null,4)]),o("div",at,v(Ce(t)),1)])):h("",!0),t.previewRows?.length?(d(),f("div",nt,v(Ae(t.previewRows)),1)):h("",!0),se(t)?(d(),f("div",lt,"错误信息:"+v(se(t)),1)):h("",!0)]),o("div",rt,[o("span",{class:Oe(["status",ne(t).className])},v(ne(t).text),3),Ne(t)?(d(),f("button",{key:0,type:"button",class:"download",onClick:a=>Pe(t)}," 下载 ",8,ot)):h("",!0),t.resultId?(d(),f("button",{key:1,type:"button",class:"btn-delete",onClick:a=>$e(t.resultId)}," 删除 ",8,ut)):h("",!0)])]))),128))])])):h("",!0),ee.value.length?(d(),f("div",it,[s[10]||(s[10]=o("div",{class:"result-subsection-title"},"历史记录",-1)),o("ul",ct,[(d(!0),f(z,null,ye(ee.value,t=>(d(),f("li",{key:`history-${t.taskId||t.resultId||t.sourceFilename}`,class:"task-item split-result-item"},[o("div",dt,[o("span",{class:"id",title:t.sourceFilename},v(t.sourceFilename||"-"),9,ft),o("div",vt,"店铺名:"+v(t.shopName||"-"),1),o("div",ht,"匹配结果:"+v(Te(t)),1),t.platform?(d(),f("div",pt,"平台:"+v(t.platform),1)):h("",!0),t.countryCount!==void 0&&t.matched?(d(),f("div",_t,"国家数:"+v(t.countryCount),1)):h("",!0),t.totalRows!==void 0&&t.matched?(d(),f("div",yt,"去重后 "+v(t.totalRows)+" 条 ",1)):h("",!0),be(t)?(d(),f("div",gt,[o("div",mt,[s[9]||(s[9]=o("span",null,"任务进度",-1)),o("span",null,v(te(t))+"%",1)]),o("div",kt,[o("div",{class:"delete-brand-progress-bar-fill",style:qe({width:`${te(t)}%`})},null,4)]),o("div",wt,v(Ce(t)),1)])):h("",!0),t.previewRows?.length?(d(),f("div",It,v(Ae(t.previewRows)),1)):h("",!0),se(t)?(d(),f("div",bt,"错误信息:"+v(se(t)),1)):h("",!0)]),o("div",St,[o("span",{class:Oe(["status",ne(t).className])},v(ne(t).text),3),Ne(t)?(d(),f("button",{key:0,type:"button",class:"download",onClick:a=>Pe(t)}," 下载 ",8,Tt)):h("",!0),t.resultId?(d(),f("button",{key:1,type:"button",class:"btn-delete",onClick:a=>$e(t.resultId)}," 删除 ",8,Ct)):h("",!0)])]))),128))])])):h("",!0)],64)):(d(),f("div",Gs," 暂无删除品牌结果,完成解析后会在这里展示按国家分组的去重结果 "))])])])])]))}}),Nt=ys(Rt,[["__scopeId","data-v-ebc81d26"]]);gs(Nt).use(ms).mount("#app"); diff --git a/app/assets/el-checkbox-CzNtyWdF.css b/app/assets/el-checkbox-CzNtyWdF.css deleted file mode 100644 index 586766b..0000000 --- a/app/assets/el-checkbox-CzNtyWdF.css +++ /dev/null @@ -1 +0,0 @@ -.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);color:var(--el-checkbox-text-color);font-weight:var(--el-checkbox-font-weight);font-size:var(--el-font-size-base);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;height:var(--el-checkbox-height,32px);align-items:center;margin-right:30px;display:inline-flex;position:relative}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox input:focus-visible+.el-checkbox__inner{outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px;border-radius:var(--el-checkbox-border-radius)}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:none;display:inline-flex;position:relative}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:var(--el-checkbox-disabled-icon-color);will-change:transform}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-checked-icon-color);transform:translate(-45%,-60%)rotate(45deg)scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";background-color:var(--el-checkbox-checked-icon-color);height:2px;display:block;position:absolute;top:5px;left:0;right:0;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;width:var(--el-checkbox-input-width);height:var(--el-checkbox-input-height);background-color:var(--el-checkbox-bg-color);z-index:var(--el-index-normal);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);display:inline-block;position:relative}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{box-sizing:content-box;content:"";transform-origin:50%;border:1px solid #0000;border-top:0;border-left:0;width:3px;height:7px;transition:transform .15s ease-in 50ms;position:absolute;top:50%;left:50%;transform:translate(-45%,-60%)rotate(45deg)scaleY(0)}.el-checkbox__original{opacity:0;z-index:-1;outline:none;width:0;height:0;margin:0;position:absolute}.el-checkbox__label{line-height:1;font-size:var(--el-checkbox-font-size);padding-left:8px;display:inline-block}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox:last-of-type{margin-right:0} diff --git a/app/assets/el-input-Cxc-k42P.css b/app/assets/el-input-Cxc-k42P.css new file mode 100644 index 0000000..b5a3e7f --- /dev/null +++ b/app/assets/el-input-Cxc-k42P.css @@ -0,0 +1 @@ +.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);height:100%;position:relative;overflow:hidden}.el-scrollbar__wrap{height:100%;overflow:auto}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{cursor:pointer;border-radius:inherit;background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));width:0;height:0;transition:var(--el-transition-duration) background-color;opacity:var(--el-scrollbar-opacity,.3);display:block;position:relative}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{z-index:1;border-radius:4px;position:absolute;bottom:2px;right:2px}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);--el-popper-bg-color-light:var(--el-bg-color-overlay);--el-popper-bg-color-dark:var(--el-text-color-primary);border-radius:var(--el-popper-border-radius);z-index:2000;overflow-wrap:break-word;word-break:normal;visibility:visible;min-width:10px;padding:5px 11px;font-size:12px;line-height:20px;position:absolute}.el-popper.is-dark{--el-fill-color-blank:var(--el-popper-bg-color-dark);color:var(--el-bg-color);background:var(--el-popper-bg-color-dark);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark>.el-popper__arrow:before{border:1px solid var(--el-text-color-primary);background:var(--el-popper-bg-color-dark);right:0}.el-popper.is-light{--el-fill-color-blank:var(--el-popper-bg-color-light);background:var(--el-popper-bg-color-light);border:1px solid var(--el-border-color-light)}.el-popper.is-light>.el-popper__arrow:before{border:1px solid var(--el-border-color-light);background:var(--el-popper-bg-color-light);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{z-index:-1;width:10px;height:10px;position:absolute}.el-popper__arrow:before{z-index:-1;content:" ";background:var(--el-text-color-primary);box-sizing:border-box;width:10px;height:10px;position:absolute;transform:rotate(45deg)}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-top-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-right-color:#0000!important}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-top-color:#0000!important;border-right-color:#0000!important}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);vertical-align:middle;height:24px;font-size:var(--el-tag-font-size);border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);border-style:solid;border-width:1px;justify-content:center;align-items:center;padding:0 9px;line-height:1;display:inline-flex}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color);flex-shrink:0}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag .el-icon{cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size);border-radius:50%;display:flex}.el-tag .el-tag__close{background-color:#0000;border:none;border-radius:50%;outline:none;margin-left:6px;padding:0;overflow:hidden}.el-tag .el-tag__close:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-tag--dark{--el-tag-text-color:var(--el-color-white);--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain,.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{--el-icon-size:16px;height:32px;padding:0 11px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{--el-icon-size:12px;height:20px;padding:0 7px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);color:var(--el-checkbox-text-color);font-weight:var(--el-checkbox-font-weight);font-size:var(--el-font-size-base);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;height:var(--el-checkbox-height,32px);align-items:center;margin-right:30px;display:inline-flex;position:relative}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox input:focus-visible+.el-checkbox__inner{outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px;border-radius:var(--el-checkbox-border-radius)}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:none;display:inline-flex;position:relative}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:var(--el-checkbox-disabled-icon-color);will-change:transform}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-checked-icon-color);transform:translate(-45%,-60%)rotate(45deg)scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";background-color:var(--el-checkbox-checked-icon-color);height:2px;display:block;position:absolute;top:5px;left:0;right:0;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;width:var(--el-checkbox-input-width);height:var(--el-checkbox-input-height);background-color:var(--el-checkbox-bg-color);z-index:var(--el-index-normal);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);display:inline-block;position:relative}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{box-sizing:content-box;content:"";transform-origin:50%;border:1px solid #0000;border-top:0;border-left:0;width:3px;height:7px;transition:transform .15s ease-in 50ms;position:absolute;top:50%;left:50%;transform:translate(-45%,-60%)rotate(45deg)scaleY(0)}.el-checkbox__original{opacity:0;z-index:-1;outline:none;width:0;height:0;margin:0;position:absolute}.el-checkbox__label{line-height:1;font-size:var(--el-checkbox-font-size);padding-left:8px;display:inline-block}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox:last-of-type{margin-right:0}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-fill-color-blank);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px #00000026;--el-table-fixed-right-column:inset -10px 0 10px -10px #00000026;--el-table-index:var(--el-index-normal);box-sizing:border-box;background-color:var(--el-table-bg-color);width:100%;max-width:100%;height:-moz-fit-content;height:fit-content;font-size:var(--el-font-size-base);color:var(--el-table-text-color);position:relative;overflow:hidden}.el-table__inner-wrapper{flex-direction:column;height:100%;display:flex;position:relative}.el-table__inner-wrapper:before{height:1px;bottom:0;left:0}.el-table tbody:focus-visible{outline:none}.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell,.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell{border-bottom-color:#0000}.el-table__empty-block{text-align:center;justify-content:center;align-items:center;width:100%;min-height:60px;display:flex;position:sticky;left:0}.el-table__empty-text{width:50%;color:var(--el-text-color-secondary);line-height:60px}.el-table__expand-column .cell{text-align:center;-webkit-user-select:none;user-select:none;padding:0}.el-table__expand-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__expand-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.el-table__expand-icon{color:var(--el-text-color-regular);width:min(23px,100%);height:23px;font-size:12px;line-height:12px}.el-table__expand-icon.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:#0000!important}.el-table__placeholder{width:20px;display:inline-block}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--fit .el-table__inner-wrapper:before{width:100%}.el-table thead{color:var(--el-table-header-text-color)}.el-table thead th{font-weight:600}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;text-align:left;min-width:0;z-index:var(--el-table-index);padding:8px 0;position:relative}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;width:15px;padding:0}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;text-overflow:ellipsis;white-space:normal;overflow-wrap:break-word;padding:0 12px;line-height:23px;overflow:hidden}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:var(--el-font-size-base)}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:var(--el-font-size-extra-small)}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table th.el-table__cell.is-leaf,.el-table td.el-table__cell{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{content:"";vertical-align:middle;background:#ff4d51;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table--border:after,.el-table--border:before,.el-table--border .el-table__inner-wrapper:after,.el-table__inner-wrapper:before{content:"";background-color:var(--el-table-border-color);z-index:calc(var(--el-table-index) + 2);position:absolute}.el-table--border .el-table__inner-wrapper:after{width:100%;height:1px;z-index:calc(var(--el-table-index) + 2);top:0;left:0}.el-table--border:before{width:1px;height:100%;top:-1px;left:0}.el-table--border:after{width:1px;height:100%;top:-1px;right:0}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__header-wrapper,.el-table__body-wrapper,.el-table__footer-wrapper{width:100%}.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right,.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right{background:inherit;z-index:calc(var(--el-table-index) + 1);position:sticky!important}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{content:"";width:10px;box-shadow:none;touch-action:none;pointer-events:none;position:absolute;top:0;bottom:0;overflow:hidden}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px}.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch,.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch{z-index:calc(var(--el-table-index) + 1);background:#fff;right:0;position:sticky!important}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__header,.el-table__body,.el-table__footer{table-layout:fixed;border-collapse:separate}.el-table__header-wrapper{overflow:hidden}.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__footer-wrapper{flex-shrink:0;overflow:hidden}.el-table__footer-wrapper tfoot td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__header-wrapper .el-table-column--selection>.cell,.el-table__body-wrapper .el-table-column--selection>.cell{align-items:center;height:23px;display:inline-flex}.el-table__header-wrapper .el-table-column--selection .el-checkbox,.el-table__body-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;position:relative;overflow:hidden}.el-table__body-wrapper .el-scrollbar__bar{z-index:calc(var(--el-table-index) + 2)}.el-table .caret-wrapper{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table .caret-wrapper:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table .caret-wrapper{vertical-align:middle;width:24px;height:14px;overflow:initial;flex-direction:column;align-items:center;display:inline-flex;position:relative}.el-table .sort-caret{border:5px solid #0000;width:0;height:0;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{visibility:hidden;z-index:-1;position:absolute}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row>td.el-table__cell,.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table.el-table--scrollable-y .el-table__body-header{z-index:calc(var(--el-table-index) + 2);position:sticky;top:0}.el-table.el-table--scrollable-y .el-table__body-footer{z-index:calc(var(--el-table-index) + 2);position:sticky;bottom:0}.el-table__column-resize-proxy{border-left:var(--el-table-border);width:0;z-index:calc(var(--el-table-index) + 9);position:absolute;top:0;bottom:0;left:200px}.el-table__column-filter-trigger{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__column-filter-trigger:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table__column-filter-trigger{display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);vertical-align:middle;font-size:14px}.el-table__border-left-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0;left:0}.el-table__border-bottom-patch{height:1px;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;left:0}.el-table__border-right-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{text-align:center;width:20px;display:inline-block}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:solid 1px var(--el-border-color-lighter);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;background-color:#fff;border-radius:2px}.el-table-filter__list{outline:none;min-width:100px;margin:0;padding:5px 0;list-style:none}.el-table-filter__list-item{cursor:pointer;line-height:36px;font-size:var(--el-font-size-base);outline:none;padding:0 10px}.el-table-filter__list-item:hover,.el-table-filter__list-item:focus{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__multiple{outline:none}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-filter__bottom button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-filter__bottom button{color:var(--el-text-color-regular);font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{height:unset;align-items:center;margin-bottom:12px;margin-left:5px;margin-right:5px;display:flex}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;vertical-align:bottom;width:100%;font-size:var(--el-font-size-base);display:inline-block;position:relative}.el-textarea__inner{resize:vertical;box-sizing:border-box;width:100%;line-height:1.5;font-size:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);background-image:none;border:none;padding:5px 11px;font-family:inherit;display:block;position:relative}.el-textarea__inner.is-clearable{padding:5px 26px 5px 11px}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:none}.el-textarea__clear{color:var(--el-input-icon-color);cursor:pointer;font-size:14px;position:absolute;top:15px;right:11px;transform:translateY(-50%)}.el-textarea__clear:hover{color:var(--el-input-clear-hover-color)}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);font-size:12px;line-height:14px;position:absolute;bottom:5px;right:10px}.el-textarea .el-input__count.is-outside{top:100%;right:0;bottom:unset;background:0 0;padding-top:2px;line-height:1;position:absolute}.el-textarea.is-disabled .el-textarea__inner{box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;--el-input-height:var(--el-component-size);font-size:var(--el-font-size-base);width:var(--el-input-width);line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle;display:inline-flex;position:relative}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;color:var(--el-color-info);align-items:center;font-size:12px;display:inline-flex}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;padding-left:8px;display:inline-block}.el-input .el-input__count.is-outside{height:unset;padding-top:2px;position:absolute;top:100%;right:0}.el-input .el-input__count.is-outside .el-input__count-inner{background:0 0;padding-left:0;line-height:1}.el-input__wrapper{background-color:var(--el-input-bg-color,var(--el-fill-color-blank));border-radius:var(--el-input-border-radius,var(--el-border-radius-base));cursor:text;transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;background-image:none;flex-grow:1;justify-content:center;align-items:center;padding:1px 11px;display:inline-flex;transform:translate(0)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input{--el-input-inner-height:calc(var(--el-input-height,32px) - 2px)}.el-input__inner{-webkit-appearance:none;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);box-sizing:border-box;background:0 0;border:none;outline:none;flex-grow:1;padding:0}.el-input__inner:focus{outline:none}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__inner[type=number]{line-height:1}.el-input__prefix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__prefix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__suffix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;transition:all var(--el-transition-duration);justify-content:center;align-items:center;margin-left:8px;display:flex}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color, ) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);cursor:not-allowed;box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-disabled .el-input__prefix-inner,.el-input.is-disabled .el-input__suffix-inner{pointer-events:none}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large{--el-input-inner-height:calc(var(--el-input-height,40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small{--el-input-inner-height:calc(var(--el-input-height,24px) - 2px)}.el-input-group{align-items:stretch;width:100%;display:inline-flex}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);border-radius:var(--el-input-border-radius);white-space:nowrap;justify-content:center;align-items:center;min-height:100%;padding:0 20px;display:inline-flex;position:relative}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:none}.el-input-group__append .el-select,.el-input-group__append .el-button,.el-input-group__prepend .el-select,.el-input-group__prepend .el-button{flex:1;margin:0 -20px;display:inline-block}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-select__wrapper,.el-input-group__append div.el-select:hover .el-select__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-select__wrapper,.el-input-group__prepend div.el-select:hover .el-select__wrapper{color:inherit;background-color:#0000;border-color:#0000}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-select__wrapper{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-select__wrapper{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-hidden{display:none!important} diff --git a/app/assets/el-input-DDf1iPG4.css b/app/assets/el-input-DDf1iPG4.css deleted file mode 100644 index 09200d9..0000000 --- a/app/assets/el-input-DDf1iPG4.css +++ /dev/null @@ -1 +0,0 @@ -.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);height:100%;position:relative;overflow:hidden}.el-scrollbar__wrap{height:100%;overflow:auto}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{cursor:pointer;border-radius:inherit;background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));width:0;height:0;transition:var(--el-transition-duration) background-color;opacity:var(--el-scrollbar-opacity,.3);display:block;position:relative}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{z-index:1;border-radius:4px;position:absolute;bottom:2px;right:2px}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);--el-popper-bg-color-light:var(--el-bg-color-overlay);--el-popper-bg-color-dark:var(--el-text-color-primary);border-radius:var(--el-popper-border-radius);z-index:2000;overflow-wrap:break-word;word-break:normal;visibility:visible;min-width:10px;padding:5px 11px;font-size:12px;line-height:20px;position:absolute}.el-popper.is-dark{--el-fill-color-blank:var(--el-popper-bg-color-dark);color:var(--el-bg-color);background:var(--el-popper-bg-color-dark);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark>.el-popper__arrow:before{border:1px solid var(--el-text-color-primary);background:var(--el-popper-bg-color-dark);right:0}.el-popper.is-light{--el-fill-color-blank:var(--el-popper-bg-color-light);background:var(--el-popper-bg-color-light);border:1px solid var(--el-border-color-light)}.el-popper.is-light>.el-popper__arrow:before{border:1px solid var(--el-border-color-light);background:var(--el-popper-bg-color-light);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{z-index:-1;width:10px;height:10px;position:absolute}.el-popper__arrow:before{z-index:-1;content:" ";background:var(--el-text-color-primary);box-sizing:border-box;width:10px;height:10px;position:absolute;transform:rotate(45deg)}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-top-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-right-color:#0000!important}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-top-color:#0000!important;border-right-color:#0000!important}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);vertical-align:middle;height:24px;font-size:var(--el-tag-font-size);border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);border-style:solid;border-width:1px;justify-content:center;align-items:center;padding:0 9px;line-height:1;display:inline-flex}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color);flex-shrink:0}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag .el-icon{cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size);border-radius:50%;display:flex}.el-tag .el-tag__close{background-color:#0000;border:none;border-radius:50%;outline:none;margin-left:6px;padding:0;overflow:hidden}.el-tag .el-tag__close:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-tag--dark{--el-tag-text-color:var(--el-color-white);--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain,.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{--el-icon-size:16px;height:32px;padding:0 11px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{--el-icon-size:12px;height:20px;padding:0 7px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-fill-color-blank);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px #00000026;--el-table-fixed-right-column:inset -10px 0 10px -10px #00000026;--el-table-index:var(--el-index-normal);box-sizing:border-box;background-color:var(--el-table-bg-color);width:100%;max-width:100%;height:-moz-fit-content;height:fit-content;font-size:var(--el-font-size-base);color:var(--el-table-text-color);position:relative;overflow:hidden}.el-table__inner-wrapper{flex-direction:column;height:100%;display:flex;position:relative}.el-table__inner-wrapper:before{height:1px;bottom:0;left:0}.el-table tbody:focus-visible{outline:none}.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell,.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell{border-bottom-color:#0000}.el-table__empty-block{text-align:center;justify-content:center;align-items:center;width:100%;min-height:60px;display:flex;position:sticky;left:0}.el-table__empty-text{width:50%;color:var(--el-text-color-secondary);line-height:60px}.el-table__expand-column .cell{text-align:center;-webkit-user-select:none;user-select:none;padding:0}.el-table__expand-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__expand-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.el-table__expand-icon{color:var(--el-text-color-regular);width:min(23px,100%);height:23px;font-size:12px;line-height:12px}.el-table__expand-icon.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:#0000!important}.el-table__placeholder{width:20px;display:inline-block}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--fit .el-table__inner-wrapper:before{width:100%}.el-table thead{color:var(--el-table-header-text-color)}.el-table thead th{font-weight:600}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;text-align:left;min-width:0;z-index:var(--el-table-index);padding:8px 0;position:relative}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;width:15px;padding:0}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;text-overflow:ellipsis;white-space:normal;overflow-wrap:break-word;padding:0 12px;line-height:23px;overflow:hidden}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:var(--el-font-size-base)}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:var(--el-font-size-extra-small)}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table th.el-table__cell.is-leaf,.el-table td.el-table__cell{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{content:"";vertical-align:middle;background:#ff4d51;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table--border:after,.el-table--border:before,.el-table--border .el-table__inner-wrapper:after,.el-table__inner-wrapper:before{content:"";background-color:var(--el-table-border-color);z-index:calc(var(--el-table-index) + 2);position:absolute}.el-table--border .el-table__inner-wrapper:after{width:100%;height:1px;z-index:calc(var(--el-table-index) + 2);top:0;left:0}.el-table--border:before{width:1px;height:100%;top:-1px;left:0}.el-table--border:after{width:1px;height:100%;top:-1px;right:0}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__header-wrapper,.el-table__body-wrapper,.el-table__footer-wrapper{width:100%}.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right,.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right{background:inherit;z-index:calc(var(--el-table-index) + 1);position:sticky!important}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{content:"";width:10px;box-shadow:none;touch-action:none;pointer-events:none;position:absolute;top:0;bottom:0;overflow:hidden}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px}.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch,.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch{z-index:calc(var(--el-table-index) + 1);background:#fff;right:0;position:sticky!important}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__header,.el-table__body,.el-table__footer{table-layout:fixed;border-collapse:separate}.el-table__header-wrapper{overflow:hidden}.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__footer-wrapper{flex-shrink:0;overflow:hidden}.el-table__footer-wrapper tfoot td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__header-wrapper .el-table-column--selection>.cell,.el-table__body-wrapper .el-table-column--selection>.cell{align-items:center;height:23px;display:inline-flex}.el-table__header-wrapper .el-table-column--selection .el-checkbox,.el-table__body-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;position:relative;overflow:hidden}.el-table__body-wrapper .el-scrollbar__bar{z-index:calc(var(--el-table-index) + 2)}.el-table .caret-wrapper{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table .caret-wrapper:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table .caret-wrapper{vertical-align:middle;width:24px;height:14px;overflow:initial;flex-direction:column;align-items:center;display:inline-flex;position:relative}.el-table .sort-caret{border:5px solid #0000;width:0;height:0;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{visibility:hidden;z-index:-1;position:absolute}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row>td.el-table__cell,.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table.el-table--scrollable-y .el-table__body-header{z-index:calc(var(--el-table-index) + 2);position:sticky;top:0}.el-table.el-table--scrollable-y .el-table__body-footer{z-index:calc(var(--el-table-index) + 2);position:sticky;bottom:0}.el-table__column-resize-proxy{border-left:var(--el-table-border);width:0;z-index:calc(var(--el-table-index) + 9);position:absolute;top:0;bottom:0;left:200px}.el-table__column-filter-trigger{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__column-filter-trigger:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table__column-filter-trigger{display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);vertical-align:middle;font-size:14px}.el-table__border-left-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0;left:0}.el-table__border-bottom-patch{height:1px;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;left:0}.el-table__border-right-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{text-align:center;width:20px;display:inline-block}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:solid 1px var(--el-border-color-lighter);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;background-color:#fff;border-radius:2px}.el-table-filter__list{outline:none;min-width:100px;margin:0;padding:5px 0;list-style:none}.el-table-filter__list-item{cursor:pointer;line-height:36px;font-size:var(--el-font-size-base);outline:none;padding:0 10px}.el-table-filter__list-item:hover,.el-table-filter__list-item:focus{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__multiple{outline:none}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-filter__bottom button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-filter__bottom button{color:var(--el-text-color-regular);font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{height:unset;align-items:center;margin-bottom:12px;margin-left:5px;margin-right:5px;display:flex}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;vertical-align:bottom;width:100%;font-size:var(--el-font-size-base);display:inline-block;position:relative}.el-textarea__inner{resize:vertical;box-sizing:border-box;width:100%;line-height:1.5;font-size:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);background-image:none;border:none;padding:5px 11px;font-family:inherit;display:block;position:relative}.el-textarea__inner.is-clearable{padding:5px 26px 5px 11px}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:none}.el-textarea__clear{color:var(--el-input-icon-color);cursor:pointer;font-size:14px;position:absolute;top:15px;right:11px;transform:translateY(-50%)}.el-textarea__clear:hover{color:var(--el-input-clear-hover-color)}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);font-size:12px;line-height:14px;position:absolute;bottom:5px;right:10px}.el-textarea .el-input__count.is-outside{top:100%;right:0;bottom:unset;background:0 0;padding-top:2px;line-height:1;position:absolute}.el-textarea.is-disabled .el-textarea__inner{box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;--el-input-height:var(--el-component-size);font-size:var(--el-font-size-base);width:var(--el-input-width);line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle;display:inline-flex;position:relative}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;color:var(--el-color-info);align-items:center;font-size:12px;display:inline-flex}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;padding-left:8px;display:inline-block}.el-input .el-input__count.is-outside{height:unset;padding-top:2px;position:absolute;top:100%;right:0}.el-input .el-input__count.is-outside .el-input__count-inner{background:0 0;padding-left:0;line-height:1}.el-input__wrapper{background-color:var(--el-input-bg-color,var(--el-fill-color-blank));border-radius:var(--el-input-border-radius,var(--el-border-radius-base));cursor:text;transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;background-image:none;flex-grow:1;justify-content:center;align-items:center;padding:1px 11px;display:inline-flex;transform:translate(0)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input{--el-input-inner-height:calc(var(--el-input-height,32px) - 2px)}.el-input__inner{-webkit-appearance:none;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);box-sizing:border-box;background:0 0;border:none;outline:none;flex-grow:1;padding:0}.el-input__inner:focus{outline:none}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__inner[type=number]{line-height:1}.el-input__prefix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__prefix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__suffix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;transition:all var(--el-transition-duration);justify-content:center;align-items:center;margin-left:8px;display:flex}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color, ) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);cursor:not-allowed;box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-disabled .el-input__prefix-inner,.el-input.is-disabled .el-input__suffix-inner{pointer-events:none}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large{--el-input-inner-height:calc(var(--el-input-height,40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small{--el-input-inner-height:calc(var(--el-input-height,24px) - 2px)}.el-input-group{align-items:stretch;width:100%;display:inline-flex}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);border-radius:var(--el-input-border-radius);white-space:nowrap;justify-content:center;align-items:center;min-height:100%;padding:0 20px;display:inline-flex;position:relative}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:none}.el-input-group__append .el-select,.el-input-group__append .el-button,.el-input-group__prepend .el-select,.el-input-group__prepend .el-button{flex:1;margin:0 -20px;display:inline-block}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-select__wrapper,.el-input-group__append div.el-select:hover .el-select__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-select__wrapper,.el-input-group__prepend div.el-select:hover .el-select__wrapper{color:inherit;background-color:#0000;border-color:#0000}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-select__wrapper{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-select__wrapper{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-hidden{display:none!important} diff --git a/app/assets/patrol-delete.js b/app/assets/patrol-delete.js index b554b95..ad97f41 100644 --- a/app/assets/patrol-delete.js +++ b/app/assets/patrol-delete.js @@ -1 +1 @@ -import{d as ue,o as ce,L as de,a as i,c as u,b as m,B as fe,e as a,ak as Mt,al as pe,t as r,a4 as S,am as he,an as me,F as W,r as ut,w as ve,v as ye,f as v,a5 as _e,n as ct,x as At,g as p,h as M,bf as we,bg as ke,bh as ge,bi as be,E as c,bj as Se,bk as Ie,bl as Te,bm as Ce,bn as Ee,i as Lt,bo as De,bp as Pe,bq as Ne,br as $e,bs as Re,U as X,bt as Me,_ as Ae,aV as Le,q as qe,s as Be}from"./pywebview-ZMN052YE.js";import{z as xe}from"./zh-cn-BXYgxART.js";/* empty css *//* empty css */import{c as Ue}from"./categorized-timers-JPA-olTr.js";const Fe={class:"page-shell module-page"},He={class:"main-content"},Oe={class:"left-panel"},Ve={class:"input-zone"},Qe={class:"input-row"},Ke=["disabled"],ze={key:0,class:"empty-candidates"},Ge={key:1,class:"candidate-table-scroll"},je=["onClick"],Je={class:"condition-panel"},We={class:"condition-input-row"},Xe=["disabled"],Ye={key:0,class:"empty-conditions"},Ze={key:1,class:"condition-list"},ts={class:"condition-check"},es=["value"],ss=["title"],as=["onClick"],ns={class:"run-row"},os=["disabled"],ls=["disabled"],rs={key:2,class:"queue-debug-card"},is={class:"queue-debug-line"},us={key:0,class:"queue-debug-payload"},cs={class:"right-panel"},ds={class:"task-list-wrap"},fs={class:"clean-result-summary"},ps={class:"summary-card"},hs={class:"summary-card"},ms={class:"summary-card"},vs={class:"summary-card"},ys={key:0,class:"empty-tasks narrow"},_s=["onClick"],ws={class:"result-list-wrap"},ks={key:0,class:"empty-tasks"},gs={key:0,class:"result-subsection"},bs={class:"task-list"},Ss={class:"left split-result-main"},Is=["title"],Ts={class:"files"},Cs={key:0,class:"files"},Es={key:1,class:"files"},Ds={key:2,class:"files"},Ps={class:"files"},Ns={class:"files"},$s={key:3,class:"files"},Rs={class:"task-right"},Ms=["onClick"],As={key:1,class:"result-subsection"},Ls={class:"task-list"},qs={class:"left split-result-main"},Bs=["title"],xs={class:"files"},Us={key:0,class:"files"},Fs={key:1,class:"files"},Hs={key:2,class:"files"},Os={class:"files"},Vs={key:3,class:"files"},Qs={class:"files"},Ks={key:4,class:"files"},zs={class:"task-right"},Gs=["onClick"],js=["onClick"],qt=30,Js=ue({__name:"BrandPatrolDeleteTab",setup(Xs){const dt=["德国","英国","法国","意大利","西班牙"],A=p(""),L=p(""),Y=p([]),q=p([]),D=p([]),_=p([]),w=p([]),g=p([]),P=p({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),B=p(!1),x=p(!1),U=p(!1),F=p(!1),y=p(""),Z=p(""),h=p(null),H=p(!1);let I=null;const T=Ue("patrol-delete"),tt=M(()=>w.value.filter(t=>t.matched)),ft=M(()=>Qt(g.value)),O=M(()=>ft.value.filter(t=>!kt(t.taskStatus))),et=M(()=>ft.value.filter(t=>kt(t.taskStatus))),V=M(()=>H.value||!!h.value);function st(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function pt(){return`patrol-delete:matched:${st()}`}function ht(){return`patrol-delete:queue-state:${st()}`}function N(t){return`${(t.shopName||"").trim()}::${t.shopId||""}`}function Q(t){return`${t.taskId??0}:${t.resultId??0}`}function mt(t){return`task:${t.taskId??t.resultId??0}`}let k=!1;function vt(t){return k?Promise.resolve():T.sleep("queue-wait",t)}function Bt(){T.clearCategory("queue-wait")}function yt(t){const e=t instanceof Error?t.message.toLowerCase():String(t||"").toLowerCase();return e.includes("network error")||e.includes("failed to fetch")||e.includes("timeout")||e.includes("503")||e.includes("502")||e.includes("504")||e.includes("500")||e.includes("load failed")}async function xt(t,e,n=20){let o=0;for(;;){if(k)throw new Error("component disposed");try{return await t()}catch(l){if(!yt(l)||o>=n-1)throw l;o+=1,e?.(o,n),await vt(X())}}}function Ut(t,e){return`patrol-delete:${t}:${e||"shop"}:${Date.now()}`}function at(t){if(!t)return"-";const e=new Date(t);if(Number.isNaN(e.getTime()))return t;const n=e.getFullYear(),o=String(e.getMonth()+1).padStart(2,"0"),l=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),f=String(e.getMinutes()).padStart(2,"0"),d=String(e.getSeconds()).padStart(2,"0");return`${n}-${o}-${l} ${s}:${f}:${d}`}function Ft(t){const e=(t||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[e]||e||"-"}function Ht(t){const e=(t.matchMessage||"").trim();return e||(t.matched&&t.matchStatus==="MATCHED"?"索引已命中,可推送到 Python 队列":t.matched?"已命中索引,请结合状态列确认":"未命中或未就绪,请检查店铺名")}function Ot(){return dt.map(t=>({country:t,rows:[{status:"全部",quantity:"",deleteQuantity:"",processStatus:""}]}))}function Vt(){return dt.map(t=>({country:t,ratio:""}))}function _t(t){const e=t.countrySections||[],n=t.cartRatios||[],o=Math.max(...e.map(l=>l.rows.length),1);return Array.from({length:o},(l,s)=>({shopName:s===0?t.shopName:"",countries:e.map(f=>{const d=f.rows[s];return{country:f.country,status:d?.status||"",quantity:d?.quantity||"",deleteQuantity:d?.deleteQuantity||"",processStatus:d?.processStatus||""}}),cartRatios:s===0?n.map(f=>({country:f.country,ratio:f.ratio})):[]}))}function wt(t){return`${new Set([...(t.countrySections||[]).map(n=>n.country).filter(Boolean),...(t.cartRatios||[]).map(n=>n.country).filter(Boolean)]).size||0} 个国家,含状态数据和购物车比例`}function b(t){return Array.from(new Set(t.map(e=>e==null?"":String(e).trim()).filter(Boolean))).join("、")}function Qt(t){const e=new Map;for(const n of t||[]){const o=String(n.taskId??`result:${n.resultId??Math.random()}`),l=e.get(o)||[];l.push(n),e.set(o,l)}return Array.from(e.values()).map(n=>{const o=n.find(s=>St(s))||n.find(s=>s.taskStatus)||n[0],l=b(n.map(s=>s.error));return{...o,shopName:b(n.map(s=>s.shopName))||o.shopName,shopId:b(n.map(s=>s.shopId))||o.shopId,error:l||o.error,__groupItems:n}})}function C(t){return t.__groupItems||[t]}function K(t){return b(C(t).map(e=>e.shopName))||"-"}function z(t){return b(C(t).map(e=>e.resultId))}function G(t){return b(C(t).map(e=>e.shopId))}function j(t){return b(C(t).map(e=>e.error))}function kt(t){return t==="SUCCESS"||t==="FAILED"||t==="COMPLETED"}function gt(t){return t==="SUCCESS"||t==="COMPLETED"?"已完成":t==="FAILED"?"失败":"执行中"}function bt(t){return t==="SUCCESS"||t==="COMPLETED"?"success":t==="FAILED"?"failed":"running"}function St(t){return C(t).some(e=>!!(e.resultId&&(e.fileReady||e.downloadUrl)))}function It(){typeof window>"u"||window.localStorage.setItem(pt(),JSON.stringify(w.value))}function Kt(){try{const t=typeof window<"u"?window.localStorage.getItem(pt()):null;w.value=t?JSON.parse(t):[]}catch{w.value=[]}}function nt(){if(typeof window>"u")return;const t={activeTaskId:h.value};window.localStorage.setItem(ht(),JSON.stringify(t))}function zt(){try{const t=typeof window<"u"?window.localStorage.getItem(ht()):null;if(!t)return;const e=JSON.parse(t);h.value=e.activeTaskId??null}catch{h.value=null}}function E(){h.value=null,nt()}function Gt(t){const e=t instanceof Error?t.message:String(t||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(e)}function ot(t){const e=N(t);w.value=w.value.filter(n=>N(n)!==e),It()}function Tt(t){g.value=g.value.filter(e=>!(t.resultId!=null&&e.resultId===t.resultId||t.taskId!=null&&e.taskId===t.taskId))}async function $(){Y.value=await we()}async function lt(){D.value=await ke();const t=new Set(D.value.map(e=>e.id));_.value=_.value.filter(e=>t.has(e))}async function R(){P.value=await ge()}async function rt(){const t=await be();g.value=t.items||[]}async function J(){await Promise.all([R(),rt()])}function Ct(t){if(!t.length)return;const e=new Map(t.map(o=>[Q(o),o])),n=g.value.map(o=>{const l=e.get(Q(o));return l?{...o,...l,countrySections:l.countrySections||o.countrySections||[],cartRatios:l.cartRatios||o.cartRatios||[]}:o});for(const o of t){const l=Q(o);n.some(s=>Q(s)===l)||n.push(o)}g.value=n}function jt(t){Ct(t)}async function Et(t){const e=Array.from(new Set((t&&t.length?t:O.value.map(o=>o.taskId??0)).filter(o=>Number.isFinite(o)&&o>0)));if(!e.length)return[];const n=await Me(e);return Ct(n.items||[]),(n.missingTaskIds||[]).length&&await rt(),n.missingTaskIds||[]}function Jt(){if(it(),k||!V.value)return;const t=async()=>{I=null,!(k||!V.value)&&(await Et(),!k&&V.value&&(I=T.setTimeout("history-poll",t,X()*2)))};I=T.setTimeout("history-poll",t,X()*2)}function it(){I&&(T.clearTimer("history-poll",I),I=null)}function Wt(t){q.value=t}async function Dt(){const t=A.value.trim();if(!t){c.warning("请输入店铺名");return}B.value=!0;try{await Se(t),A.value="",await Promise.all([$(),R()]),c.success("已加入备选区")}catch(e){c.error(e instanceof Error?e.message:"添加失败")}finally{B.value=!1}}async function Pt(){const t=L.value.trim();if(!t){c.warning("请输入删除条件");return}x.value=!0;try{const e=await Ie(t);L.value="",await lt(),e?.id&&!_.value.includes(e.id)&&(_.value=[..._.value,e.id]),c.success("删除条件已保存")}catch(e){c.error(e instanceof Error?e.message:"保存失败")}finally{x.value=!1}}async function Xt(t){try{await Te(t),_.value=_.value.filter(e=>e!==t),await lt(),c.success("删除条件已删除")}catch(e){c.error(e instanceof Error?e.message:"删除失败")}}async function Yt(t){try{await Ce(t),q.value=q.value.filter(e=>e.id!==t),await Promise.all([$(),R()]),c.success("已删除")}catch(e){c.error(e instanceof Error?e.message:"删除失败")}}function Zt(t,e){const n=new Map;for(const o of t)n.set(N(o),o);for(const o of e)n.set(N(o),o);return Array.from(n.values())}async function te(){const t=q.value.map(e=>e.shop_name).filter(Boolean);if(!t.length){c.warning("请先勾选备选区店铺");return}U.value=!0;try{const e=await Ee(t);w.value=Zt(w.value,e.items||[]),It(),c.success(`本次返回 ${e.items?.length||0} 条匹配结果`)}catch(e){c.error(e instanceof Error?e.message:"匹配失败")}finally{U.value=!1}}function ee(t){ot(t),c.success("已从匹配结果移除")}function se(t){return{shopName:t.shopName,matched:t.matched,shopId:t.shopId,platform:t.platform,companyName:t.companyName,matchStatus:t.matchStatus,matchMessage:t.matchMessage,countrySections:Ot(),cartRatios:Vt()}}function ae(){const t=new Set(_.value);return D.value.filter(e=>t.has(e.id)).map(e=>({id:e.id,conditionText:e.conditionText}))}function ne(t,e){const n=e[0],o=ae();return{type:"patrol-delete-run",ts:Date.now(),data:{taskId:t,user_id:Number(st())||0,source:"frontend-vue-patrol-delete",delete_conditions:o,deleteConditions:o,items:e.map(l=>({shopName:l.shopName,shopId:l.shopId,platform:l.platform,companyName:l.companyName,matched:l.matched,matchStatus:l.matchStatus,matchMessage:l.matchMessage,countrySections:l.countrySections||[],cartRatios:l.cartRatios||[]})),template_rows:n?_t(n):[],shop_template_rows:e.map(l=>({shopName:l.shopName,shopId:l.shopId,templateRows:_t(l)})),country_sections:n?.countrySections||[],cart_ratios:n?.cartRatios||[]}}}function oe(t){return g.value.find(e=>e.taskId===t)}async function Nt(t){let e=0;for(;;){if(k)return"STOPPED";if(h.value!==t)return"DELETED";try{if((await Et([t])).includes(t))return E(),"DELETED";if(h.value!==t)return"DELETED";e>0&&(y.value=`任务 ${t} 后端已恢复,继续等待执行结果...`),e=0;const l=oe(t)?.taskStatus||"";if(l==="SUCCESS"||l==="FAILED"||l==="COMPLETED")return l}catch(n){if(!yt(n))throw n;if(e+=1,e>=qt)throw new Error(`任务 ${t} 等待后端恢复超时,请稍后刷新查看状态`);y.value=`任务 ${t} 执行中,正在等待后端服务恢复(${e}/${qt})...`}await vt(X())}}async function $t(){if(!(k||H.value)){H.value=!0,F.value=!0,Jt();try{const t=Lt();if(!t?.enqueue_json)throw new Error("当前客户端未提供 enqueue_json");if(h.value){const d=await Nt(h.value);y.value=d==="DELETED"?"任务已删除":`任务 ${h.value} ${d==="SUCCESS"?"已完成":"执行失败"}`,E();return}const e=tt.value;if(!e.length){c.warning("请先匹配可用店铺");return}const n=await xt(()=>De(e.map(se)),(d,ie)=>{y.value=`后端服务暂时不可用,正在重试创建任务(${d}/${ie})...`}),o=n.items||[];if(!n.taskId||!o.length||o.some(d=>!d.taskId||!d.resultId))throw new Error("后端未返回有效任务标识");h.value=n.taskId,nt(),jt(o),R();const l=ne(n.taskId,o);Z.value=JSON.stringify(l,null,2);const s=await t.enqueue_json(l);if(!s?.success){await Pe(n.taskId,{shops:o.map(d=>({shopName:d.shopName||"",error:s?.error||`任务 ${n.taskId} 推送失败`,countrySections:d.countrySections||[],cartRatios:d.cartRatios||[],shopDone:!0,submissionId:Ut(n.taskId,d.shopName),chunkIndex:1,chunkTotal:1}))});for(const d of e)ot(d);await J(),y.value=`任务 ${n.taskId} 推送失败`,E();return}for(const d of e)ot(d);y.value=`任务 ${n.taskId} 已入队,共 ${o.length} 个店铺,等待执行完成`;const f=await Nt(n.taskId);y.value=`任务 ${n.taskId} ${f==="SUCCESS"?"已完成":f==="DELETED"?"已删除":"执行失败"}`,E(),await J(),c.success("巡店删除任务已完成")}catch(t){if(k)return;const e=t instanceof Error?t.message:"队列执行失败";y.value=e,c.error(e),await J()}finally{H.value=!1,F.value=!1,it(),nt()}}}async function le(){const t=tt.value;if(!t.length){c.warning("请先匹配可用店铺");return}y.value=`开始创建任务,共 ${t.length} 个店铺`,await $t()}async function re(t){const e=C(t).find(f=>!!(f.resultId&&(f.fileReady||f.downloadUrl)));if(!e?.resultId)return;const n=Lt();if(!n?.save_file_from_url_new){c.error("当前客户端未提供下载能力");return}const o=Ne(e.resultId),l=e.outputFilename||`${t.shopName||"patrol-delete-result"}.xlsx`,s=await n.save_file_from_url_new(o,l);s.success?c.success(`已保存: ${s.path||l}`):s.error&&s.error!=="用户取消"&&c.error(s.error)}async function Rt(t){try{if(t.taskId)await $e(t.taskId),h.value===t.taskId&&E();else if(t.resultId)await Re(t.resultId);else throw new Error("缺少可删除的任务标识");Tt(t),await Promise.allSettled([$(),J()]),c.success("已删除")}catch(e){if(Gt(e)){t.taskId&&h.value===t.taskId&&E(),Tt(t),await $(),c.success("后端记录已不存在,已同步移除本地记录");return}c.error(e instanceof Error?e.message:"删除失败")}}return ce(async()=>{Kt(),zt(),await Promise.all([$(),lt(),R(),rt()]),h.value&&(y.value=h.value!=null?`检测到未完成任务,继续等待任务 ${h.value} 完成`:"",$t())}),de(()=>{k=!0,it(),Bt(),T.clearScope()}),(t,e)=>{const n=pe,o=he,l=me;return i(),u("div",Fe,[m(fe,{active:"patrol-delete"}),a("div",He,[a("aside",Oe,[e[5]||(e[5]=a("div",{class:"section-title"},"店铺输入",-1)),a("div",Ve,[e[3]||(e[3]=a("div",{class:"hint"}," 左侧负责录入店铺并加入备选区,点击“匹配店铺”只会生成匹配结果;确认后需手动点击“推送到 Python 队列”才会创建并执行任务。 ",-1)),a("div",Qe,[m(n,{modelValue:A.value,"onUpdate:modelValue":e[0]||(e[0]=s=>A.value=s),clearable:"",placeholder:"请输入店铺名后回车或点击添加",onKeyup:Mt(Dt,["enter"])},null,8,["modelValue"]),a("button",{type:"button",class:"opt-btn",disabled:B.value,onClick:Dt},r(B.value?"添加中...":"添加"),9,Ke)])]),e[6]||(e[6]=a("div",{class:"section-title"},"备选区",-1)),Y.value.length?(i(),u("div",Ge,[m(l,{data:Y.value,"row-key":"id",height:"260",class:"candidate-table",onSelectionChange:Wt},{default:S(()=>[m(o,{type:"selection",width:"42"}),m(o,{prop:"shop_name",label:"店铺名","min-width":"140","show-overflow-tooltip":""}),m(o,{label:"操作",width:"72",align:"center"},{default:S(({row:s})=>[a("button",{type:"button",class:"link-danger",onClick:f=>Yt(s.id)}," 删除 ",8,je)]),_:1})]),_:1},8,["data"])])):(i(),u("div",ze," 暂无备选店铺,请先输入并添加 ")),e[7]||(e[7]=a("div",{class:"section-title condition-title"},[a("span",null,"删除条件"),a("span",{class:"condition-title-hint"}," 注意删除条件的描述需要和页面描述一致 ")],-1)),a("div",Je,[a("div",We,[m(n,{modelValue:L.value,"onUpdate:modelValue":e[1]||(e[1]=s=>L.value=s),clearable:"",placeholder:"请输入删除条件",onKeyup:Mt(Pt,["enter"])},null,8,["modelValue"]),a("button",{type:"button",class:"opt-btn",disabled:x.value,onClick:Pt},r(x.value?"保存中...":"保存"),9,Xe)]),D.value.length?(i(),u("ul",Ze,[(i(!0),u(W,null,ut(D.value,s=>(i(),u("li",{key:s.id,class:"condition-item"},[a("label",ts,[ve(a("input",{"onUpdate:modelValue":e[2]||(e[2]=f=>_.value=f),type:"checkbox",value:s.id},null,8,es),[[ye,_.value]]),a("span",{title:s.conditionText},r(s.conditionText),9,ss)]),a("button",{type:"button",class:"link-danger",onClick:f=>Xt(s.id)}," 删除 ",8,as)]))),128))])):(i(),u("div",Ye," 暂无删除条件,保存后可在推送任务时多选携带。 "))]),a("div",ns,[a("button",{type:"button",class:"btn-run",disabled:U.value||V.value,onClick:te},r(U.value?"匹配中...":"匹配店铺"),9,os),a("button",{type:"button",class:"btn-run btn-queue",disabled:F.value||!tt.value.length,onClick:le},r(F.value?"任务执行中...":"推送到 Python 队列"),9,ls)]),e[8]||(e[8]=a("p",{class:"loading-msg"}," 当前页面会把匹配结果合并为一个巡店删除任务推送;多个店铺会在同一个任务和同一个结果文件中汇总。 ",-1)),y.value?(i(),u("div",rs,[e[4]||(e[4]=a("div",{class:"section-title queue-debug-title"},"队列状态",-1)),a("div",is,r(y.value),1),Z.value?(i(),u("pre",us,r(Z.value),1)):v("",!0)])):v("",!0)]),a("section",cs,[e[17]||(e[17]=a("div",{class:"panel-header"},"匹配与任务",-1)),a("div",ds,[a("div",fs,[a("div",ps,[e[9]||(e[9]=a("span",{class:"summary-label"},"备选店铺",-1)),a("strong",null,r(P.value.candidateCount),1)]),a("div",hs,[e[10]||(e[10]=a("span",{class:"summary-label"},"已处理任务",-1)),a("strong",null,r(P.value.processedTaskCount),1)]),a("div",ms,[e[11]||(e[11]=a("span",{class:"summary-label"},"成功任务",-1)),a("strong",null,r(P.value.successTaskCount),1)]),a("div",vs,[e[12]||(e[12]=a("span",{class:"summary-label"},"失败任务",-1)),a("strong",null,r(P.value.failedTaskCount),1)])]),e[16]||(e[16]=a("div",{class:"subsection-title"},"匹配结果",-1)),w.value.length?(i(),_e(l,{key:1,data:w.value,"row-key":N,"highlight-current-row":!1,class:"result-table match-table"},{default:S(()=>[m(o,{prop:"shopName",label:"店铺名","min-width":"120"}),m(o,{label:"匹配",width:"72",align:"center"},{default:S(({row:s})=>[a("span",{class:ct(s.matched?"ok":"fail")},r(s.matched?"是":"否"),3)]),_:1}),m(o,{prop:"shopId",label:"店铺 ID","min-width":"120","show-overflow-tooltip":""}),m(o,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),m(o,{prop:"companyName",label:"公司","min-width":"120","show-overflow-tooltip":""}),m(o,{label:"状态",width:"110","show-overflow-tooltip":""},{default:S(({row:s})=>[At(r(Ft(s.matchStatus)),1)]),_:1}),m(o,{label:"说明","min-width":"180","show-overflow-tooltip":""},{default:S(({row:s})=>[At(r(Ht(s)),1)]),_:1}),m(o,{label:"操作",width:"72",align:"center"},{default:S(({row:s})=>[a("button",{type:"button",class:"link-danger",onClick:f=>ee(s)}," 删除 ",8,_s)]),_:1})]),_:1},8,["data"])):(i(),u("div",ys," 完成“匹配店铺”后,这里会展示匹配结果。 ")),a("div",ws,[e[15]||(e[15]=a("div",{class:"result-list-header"},[a("span",null,"任务记录")],-1)),!O.value.length&&!et.value.length?(i(),u("div",ks," 暂无任务记录。推送到 Python 队列后,这里会展示当前任务和历史任务。 ")):(i(),u(W,{key:1},[O.value.length?(i(),u("div",gs,[e[13]||(e[13]=a("div",{class:"result-subsection-title"},"当前任务",-1)),a("ul",bs,[(i(!0),u(W,null,ut(O.value,s=>(i(),u("li",{key:mt(s),class:"task-item"},[a("div",Ss,[a("span",{class:"id",title:K(s)},r(K(s)),9,Is),a("div",Ts,"任务 ID: "+r(s.taskId??"-"),1),z(s)?(i(),u("div",Cs," 结果 ID: "+r(z(s)),1)):v("",!0),G(s)?(i(),u("div",Es," 店铺 ID: "+r(G(s)),1)):v("",!0),s.platform?(i(),u("div",Ds," 平台: "+r(s.platform),1)):v("",!0),a("div",Ps," 创建时间: "+r(at(s.createdAt)),1),a("div",Ns," 模板: "+r(wt(s)),1),j(s)?(i(),u("div",$s," 错误: "+r(j(s)),1)):v("",!0)]),a("div",Rs,[a("span",{class:ct(["status",bt(s.taskStatus)])},r(gt(s.taskStatus)),3),a("button",{type:"button",class:"btn-delete",onClick:f=>Rt(s)}," 删除 ",8,Ms)])]))),128))])])):v("",!0),et.value.length?(i(),u("div",As,[e[14]||(e[14]=a("div",{class:"result-subsection-title"},"历史任务",-1)),a("ul",Ls,[(i(!0),u(W,null,ut(et.value,s=>(i(),u("li",{key:mt(s),class:"task-item"},[a("div",qs,[a("span",{class:"id",title:K(s)},r(K(s)),9,Bs),a("div",xs,"任务 ID: "+r(s.taskId??"-"),1),z(s)?(i(),u("div",Us," 结果 ID: "+r(z(s)),1)):v("",!0),G(s)?(i(),u("div",Fs," 店铺 ID: "+r(G(s)),1)):v("",!0),s.platform?(i(),u("div",Hs," 平台: "+r(s.platform),1)):v("",!0),a("div",Os," 创建时间: "+r(at(s.createdAt)),1),s.finishedAt?(i(),u("div",Vs," 完成时间: "+r(at(s.finishedAt)),1)):v("",!0),a("div",Qs," 模板: "+r(wt(s)),1),j(s)?(i(),u("div",Ks," 错误: "+r(j(s)),1)):v("",!0)]),a("div",zs,[a("span",{class:ct(["status",bt(s.taskStatus)])},r(gt(s.taskStatus)),3),St(s)?(i(),u("button",{key:0,type:"button",class:"archive",onClick:f=>re(s)}," 下载结果 ",8,Gs)):v("",!0),a("button",{type:"button",class:"btn-delete",onClick:f=>Rt(s)}," 删除 ",8,js)])]))),128))])])):v("",!0)],64))])])])])])}}}),Ws=Ae(Js,[["__scopeId","data-v-b982bd51"]]);Le.locale("zh-cn");qe(Ws).use(Be,{locale:xe}).mount("#app"); +import{d as ue,o as ce,L as de,a as i,c as u,b as m,B as fe,e as a,af as Mt,ag as pe,t as r,ah as S,ai as he,aj as me,F as W,r as ut,w as ve,v as ye,f as v,am as _e,n as ct,x as At,g as p,h as M,bc as we,bd as ge,be as ke,bf as be,E as c,bg as Se,bh as Ie,bi as Te,bj as Ce,bk as Ee,i as Lt,bl as De,bm as Pe,bn as Ne,bo as $e,bp as Re,U as X,bq as Me,_ as Ae,aS as Le,q as qe,s as Be}from"./pywebview-84Lhn3TI.js";import{z as xe}from"./zh-cn-BJtuqXkB.js";/* empty css */import{c as Ue}from"./categorized-timers-JPA-olTr.js";const Fe={class:"page-shell module-page"},He={class:"main-content"},Oe={class:"left-panel"},Ve={class:"input-zone"},Qe={class:"input-row"},Ke=["disabled"],je={key:0,class:"empty-candidates"},ze={key:1,class:"candidate-table-scroll"},Ge=["onClick"],Je={class:"condition-panel"},We={class:"condition-input-row"},Xe=["disabled"],Ye={key:0,class:"empty-conditions"},Ze={key:1,class:"condition-list"},ts={class:"condition-check"},es=["value"],ss=["title"],as=["onClick"],ns={class:"run-row"},os=["disabled"],ls=["disabled"],rs={key:2,class:"queue-debug-card"},is={class:"queue-debug-line"},us={key:0,class:"queue-debug-payload"},cs={class:"right-panel"},ds={class:"task-list-wrap"},fs={class:"clean-result-summary"},ps={class:"summary-card"},hs={class:"summary-card"},ms={class:"summary-card"},vs={class:"summary-card"},ys={key:0,class:"empty-tasks narrow"},_s=["onClick"],ws={class:"result-list-wrap"},gs={key:0,class:"empty-tasks"},ks={key:0,class:"result-subsection"},bs={class:"task-list"},Ss={class:"left split-result-main"},Is=["title"],Ts={class:"files"},Cs={key:0,class:"files"},Es={key:1,class:"files"},Ds={key:2,class:"files"},Ps={class:"files"},Ns={class:"files"},$s={key:3,class:"files"},Rs={class:"task-right"},Ms=["onClick"],As={key:1,class:"result-subsection"},Ls={class:"task-list"},qs={class:"left split-result-main"},Bs=["title"],xs={class:"files"},Us={key:0,class:"files"},Fs={key:1,class:"files"},Hs={key:2,class:"files"},Os={class:"files"},Vs={key:3,class:"files"},Qs={class:"files"},Ks={key:4,class:"files"},js={class:"task-right"},zs=["onClick"],Gs=["onClick"],qt=30,Js=ue({__name:"BrandPatrolDeleteTab",setup(Xs){const dt=["德国","英国","法国","意大利","西班牙"],A=p(""),L=p(""),Y=p([]),q=p([]),D=p([]),_=p([]),w=p([]),k=p([]),P=p({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),B=p(!1),x=p(!1),U=p(!1),F=p(!1),y=p(""),Z=p(""),h=p(null),H=p(!1);let I=null;const T=Ue("patrol-delete"),tt=M(()=>w.value.filter(t=>t.matched)),ft=M(()=>Qt(k.value)),O=M(()=>ft.value.filter(t=>!gt(t.taskStatus))),et=M(()=>ft.value.filter(t=>gt(t.taskStatus))),V=M(()=>H.value||!!h.value);function st(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function pt(){return`patrol-delete:matched:${st()}`}function ht(){return`patrol-delete:queue-state:${st()}`}function N(t){return`${(t.shopName||"").trim()}::${t.shopId||""}`}function Q(t){return`${t.taskId??0}:${t.resultId??0}`}function mt(t){return`task:${t.taskId??t.resultId??0}`}let g=!1;function vt(t){return g?Promise.resolve():T.sleep("queue-wait",t)}function Bt(){T.clearCategory("queue-wait")}function yt(t){const e=t instanceof Error?t.message.toLowerCase():String(t||"").toLowerCase();return e.includes("network error")||e.includes("failed to fetch")||e.includes("timeout")||e.includes("503")||e.includes("502")||e.includes("504")||e.includes("500")||e.includes("load failed")}async function xt(t,e,n=20){let o=0;for(;;){if(g)throw new Error("component disposed");try{return await t()}catch(l){if(!yt(l)||o>=n-1)throw l;o+=1,e?.(o,n),await vt(X())}}}function Ut(t,e){return`patrol-delete:${t}:${e||"shop"}:${Date.now()}`}function at(t){if(!t)return"-";const e=new Date(t);if(Number.isNaN(e.getTime()))return t;const n=e.getFullYear(),o=String(e.getMonth()+1).padStart(2,"0"),l=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),f=String(e.getMinutes()).padStart(2,"0"),d=String(e.getSeconds()).padStart(2,"0");return`${n}-${o}-${l} ${s}:${f}:${d}`}function Ft(t){const e=(t||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[e]||e||"-"}function Ht(t){const e=(t.matchMessage||"").trim();return e||(t.matched&&t.matchStatus==="MATCHED"?"索引已命中,可推送到 Python 队列":t.matched?"已命中索引,请结合状态列确认":"未命中或未就绪,请检查店铺名")}function Ot(){return dt.map(t=>({country:t,rows:[{status:"全部",quantity:"",deleteQuantity:"",processStatus:""}]}))}function Vt(){return dt.map(t=>({country:t,ratio:""}))}function _t(t){const e=t.countrySections||[],n=t.cartRatios||[],o=Math.max(...e.map(l=>l.rows.length),1);return Array.from({length:o},(l,s)=>({shopName:s===0?t.shopName:"",countries:e.map(f=>{const d=f.rows[s];return{country:f.country,status:d?.status||"",quantity:d?.quantity||"",deleteQuantity:d?.deleteQuantity||"",processStatus:d?.processStatus||""}}),cartRatios:s===0?n.map(f=>({country:f.country,ratio:f.ratio})):[]}))}function wt(t){return`${new Set([...(t.countrySections||[]).map(n=>n.country).filter(Boolean),...(t.cartRatios||[]).map(n=>n.country).filter(Boolean)]).size||0} 个国家,含状态数据和购物车比例`}function b(t){return Array.from(new Set(t.map(e=>e==null?"":String(e).trim()).filter(Boolean))).join("、")}function Qt(t){const e=new Map;for(const n of t||[]){const o=String(n.taskId??`result:${n.resultId??Math.random()}`),l=e.get(o)||[];l.push(n),e.set(o,l)}return Array.from(e.values()).map(n=>{const o=n.find(s=>St(s))||n.find(s=>s.taskStatus)||n[0],l=b(n.map(s=>s.error));return{...o,shopName:b(n.map(s=>s.shopName))||o.shopName,shopId:b(n.map(s=>s.shopId))||o.shopId,error:l||o.error,__groupItems:n}})}function C(t){return t.__groupItems||[t]}function K(t){return b(C(t).map(e=>e.shopName))||"-"}function j(t){return b(C(t).map(e=>e.resultId))}function z(t){return b(C(t).map(e=>e.shopId))}function G(t){return b(C(t).map(e=>e.error))}function gt(t){return t==="SUCCESS"||t==="FAILED"||t==="COMPLETED"}function kt(t){return t==="SUCCESS"||t==="COMPLETED"?"已完成":t==="FAILED"?"失败":"执行中"}function bt(t){return t==="SUCCESS"||t==="COMPLETED"?"success":t==="FAILED"?"failed":"running"}function St(t){return C(t).some(e=>!!(e.resultId&&(e.fileReady||e.downloadUrl)))}function It(){typeof window>"u"||window.localStorage.setItem(pt(),JSON.stringify(w.value))}function Kt(){try{const t=typeof window<"u"?window.localStorage.getItem(pt()):null;w.value=t?JSON.parse(t):[]}catch{w.value=[]}}function nt(){if(typeof window>"u")return;const t={activeTaskId:h.value};window.localStorage.setItem(ht(),JSON.stringify(t))}function jt(){try{const t=typeof window<"u"?window.localStorage.getItem(ht()):null;if(!t)return;const e=JSON.parse(t);h.value=e.activeTaskId??null}catch{h.value=null}}function E(){h.value=null,nt()}function zt(t){const e=t instanceof Error?t.message:String(t||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(e)}function ot(t){const e=N(t);w.value=w.value.filter(n=>N(n)!==e),It()}function Tt(t){k.value=k.value.filter(e=>!(t.resultId!=null&&e.resultId===t.resultId||t.taskId!=null&&e.taskId===t.taskId))}async function $(){Y.value=await we()}async function lt(){D.value=await ge();const t=new Set(D.value.map(e=>e.id));_.value=_.value.filter(e=>t.has(e))}async function R(){P.value=await ke()}async function rt(){const t=await be();k.value=t.items||[]}async function J(){await Promise.all([R(),rt()])}function Ct(t){if(!t.length)return;const e=new Map(t.map(o=>[Q(o),o])),n=k.value.map(o=>{const l=e.get(Q(o));return l?{...o,...l,countrySections:l.countrySections||o.countrySections||[],cartRatios:l.cartRatios||o.cartRatios||[]}:o});for(const o of t){const l=Q(o);n.some(s=>Q(s)===l)||n.push(o)}k.value=n}function Gt(t){Ct(t)}async function Et(t){const e=Array.from(new Set((t&&t.length?t:O.value.map(o=>o.taskId??0)).filter(o=>Number.isFinite(o)&&o>0)));if(!e.length)return[];const n=await Me(e);return Ct(n.items||[]),(n.missingTaskIds||[]).length&&await rt(),n.missingTaskIds||[]}function Jt(){if(it(),g||!V.value)return;const t=async()=>{I=null,!(g||!V.value)&&(await Et(),!g&&V.value&&(I=T.setTimeout("history-poll",t,X()*2)))};I=T.setTimeout("history-poll",t,X()*2)}function it(){I&&(T.clearTimer("history-poll",I),I=null)}function Wt(t){q.value=t}async function Dt(){const t=A.value.trim();if(!t){c.warning("请输入店铺名");return}B.value=!0;try{await Se(t),A.value="",await Promise.all([$(),R()]),c.success("已加入备选区")}catch(e){c.error(e instanceof Error?e.message:"添加失败")}finally{B.value=!1}}async function Pt(){const t=L.value.trim();if(!t){c.warning("请输入删除条件");return}x.value=!0;try{const e=await Ie(t);L.value="",await lt(),e?.id&&!_.value.includes(e.id)&&(_.value=[..._.value,e.id]),c.success("删除条件已保存")}catch(e){c.error(e instanceof Error?e.message:"保存失败")}finally{x.value=!1}}async function Xt(t){try{await Te(t),_.value=_.value.filter(e=>e!==t),await lt(),c.success("删除条件已删除")}catch(e){c.error(e instanceof Error?e.message:"删除失败")}}async function Yt(t){try{await Ce(t),q.value=q.value.filter(e=>e.id!==t),await Promise.all([$(),R()]),c.success("已删除")}catch(e){c.error(e instanceof Error?e.message:"删除失败")}}function Zt(t,e){const n=new Map;for(const o of t)n.set(N(o),o);for(const o of e)n.set(N(o),o);return Array.from(n.values())}async function te(){const t=q.value.map(e=>e.shop_name).filter(Boolean);if(!t.length){c.warning("请先勾选备选区店铺");return}U.value=!0;try{const e=await Ee(t);w.value=Zt(w.value,e.items||[]),It(),c.success(`本次返回 ${e.items?.length||0} 条匹配结果`)}catch(e){c.error(e instanceof Error?e.message:"匹配失败")}finally{U.value=!1}}function ee(t){ot(t),c.success("已从匹配结果移除")}function se(t){return{shopName:t.shopName,matched:t.matched,shopId:t.shopId,platform:t.platform,companyName:t.companyName,matchStatus:t.matchStatus,matchMessage:t.matchMessage,countrySections:Ot(),cartRatios:Vt()}}function ae(){const t=new Set(_.value);return D.value.filter(e=>t.has(e.id)).map(e=>({id:e.id,conditionText:e.conditionText}))}function ne(t,e){const n=e[0],o=ae();return{type:"patrol-delete-run",ts:Date.now(),data:{taskId:t,user_id:Number(st())||0,source:"frontend-vue-patrol-delete",delete_conditions:o,deleteConditions:o,items:e.map(l=>({shopName:l.shopName,shopId:l.shopId,platform:l.platform,companyName:l.companyName,matched:l.matched,matchStatus:l.matchStatus,matchMessage:l.matchMessage,countrySections:l.countrySections||[],cartRatios:l.cartRatios||[]})),template_rows:n?_t(n):[],shop_template_rows:e.map(l=>({shopName:l.shopName,shopId:l.shopId,templateRows:_t(l)})),country_sections:n?.countrySections||[],cart_ratios:n?.cartRatios||[]}}}function oe(t){return k.value.find(e=>e.taskId===t)}async function Nt(t){let e=0;for(;;){if(g)return"STOPPED";if(h.value!==t)return"DELETED";try{if((await Et([t])).includes(t))return E(),"DELETED";if(h.value!==t)return"DELETED";e>0&&(y.value=`任务 ${t} 后端已恢复,继续等待执行结果...`),e=0;const l=oe(t)?.taskStatus||"";if(l==="SUCCESS"||l==="FAILED"||l==="COMPLETED")return l}catch(n){if(!yt(n))throw n;if(e+=1,e>=qt)throw new Error(`任务 ${t} 等待后端恢复超时,请稍后刷新查看状态`);y.value=`任务 ${t} 执行中,正在等待后端服务恢复(${e}/${qt})...`}await vt(X())}}async function $t(){if(!(g||H.value)){H.value=!0,F.value=!0,Jt();try{const t=Lt();if(!t?.enqueue_json)throw new Error("当前客户端未提供 enqueue_json");if(h.value){const d=await Nt(h.value);y.value=d==="DELETED"?"任务已删除":`任务 ${h.value} ${d==="SUCCESS"?"已完成":"执行失败"}`,E();return}const e=tt.value;if(!e.length){c.warning("请先匹配可用店铺");return}const n=await xt(()=>De(e.map(se)),(d,ie)=>{y.value=`后端服务暂时不可用,正在重试创建任务(${d}/${ie})...`}),o=n.items||[];if(!n.taskId||!o.length||o.some(d=>!d.taskId||!d.resultId))throw new Error("后端未返回有效任务标识");h.value=n.taskId,nt(),Gt(o),R();const l=ne(n.taskId,o);Z.value=JSON.stringify(l,null,2);const s=await t.enqueue_json(l);if(!s?.success){await Pe(n.taskId,{shops:o.map(d=>({shopName:d.shopName||"",error:s?.error||`任务 ${n.taskId} 推送失败`,countrySections:d.countrySections||[],cartRatios:d.cartRatios||[],shopDone:!0,submissionId:Ut(n.taskId,d.shopName),chunkIndex:1,chunkTotal:1}))});for(const d of e)ot(d);await J(),y.value=`任务 ${n.taskId} 推送失败`,E();return}for(const d of e)ot(d);y.value=`任务 ${n.taskId} 已入队,共 ${o.length} 个店铺,等待执行完成`;const f=await Nt(n.taskId);y.value=`任务 ${n.taskId} ${f==="SUCCESS"?"已完成":f==="DELETED"?"已删除":"执行失败"}`,E(),await J(),c.success("巡店删除任务已完成")}catch(t){if(g)return;const e=t instanceof Error?t.message:"队列执行失败";y.value=e,c.error(e),await J()}finally{H.value=!1,F.value=!1,it(),nt()}}}async function le(){const t=tt.value;if(!t.length){c.warning("请先匹配可用店铺");return}y.value=`开始创建任务,共 ${t.length} 个店铺`,await $t()}async function re(t){const e=C(t).find(f=>!!(f.resultId&&(f.fileReady||f.downloadUrl)));if(!e?.resultId)return;const n=Lt();if(!n?.save_file_from_url_new){c.error("当前客户端未提供下载能力");return}const o=Ne(e.resultId),l=e.outputFilename||`${t.shopName||"patrol-delete-result"}.xlsx`,s=await n.save_file_from_url_new(o,l);s.success?c.success(`已保存: ${s.path||l}`):s.error&&s.error!=="用户取消"&&c.error(s.error)}async function Rt(t){try{if(t.taskId)await $e(t.taskId),h.value===t.taskId&&E();else if(t.resultId)await Re(t.resultId);else throw new Error("缺少可删除的任务标识");Tt(t),await Promise.allSettled([$(),J()]),c.success("已删除")}catch(e){if(zt(e)){t.taskId&&h.value===t.taskId&&E(),Tt(t),await $(),c.success("后端记录已不存在,已同步移除本地记录");return}c.error(e instanceof Error?e.message:"删除失败")}}return ce(async()=>{Kt(),jt(),await Promise.all([$(),lt(),R(),rt()]),h.value&&(y.value=h.value!=null?`检测到未完成任务,继续等待任务 ${h.value} 完成`:"",$t())}),de(()=>{g=!0,it(),Bt(),T.clearScope()}),(t,e)=>{const n=pe,o=he,l=me;return i(),u("div",Fe,[m(fe,{active:"patrol-delete"}),a("div",He,[a("aside",Oe,[e[5]||(e[5]=a("div",{class:"section-title"},"店铺输入",-1)),a("div",Ve,[e[3]||(e[3]=a("div",{class:"hint"}," 左侧负责录入店铺并加入备选区,点击“匹配店铺”只会生成匹配结果;确认后需手动点击“推送到 Python 队列”才会创建并执行任务。 ",-1)),a("div",Qe,[m(n,{modelValue:A.value,"onUpdate:modelValue":e[0]||(e[0]=s=>A.value=s),clearable:"",placeholder:"请输入店铺名后回车或点击添加",onKeyup:Mt(Dt,["enter"])},null,8,["modelValue"]),a("button",{type:"button",class:"opt-btn",disabled:B.value,onClick:Dt},r(B.value?"添加中...":"添加"),9,Ke)])]),e[6]||(e[6]=a("div",{class:"section-title"},"备选区",-1)),Y.value.length?(i(),u("div",ze,[m(l,{data:Y.value,"row-key":"id",height:"260",class:"candidate-table",onSelectionChange:Wt},{default:S(()=>[m(o,{type:"selection",width:"42"}),m(o,{prop:"shop_name",label:"店铺名","min-width":"140","show-overflow-tooltip":""}),m(o,{label:"操作",width:"72",align:"center"},{default:S(({row:s})=>[a("button",{type:"button",class:"link-danger",onClick:f=>Yt(s.id)}," 删除 ",8,Ge)]),_:1})]),_:1},8,["data"])])):(i(),u("div",je," 暂无备选店铺,请先输入并添加 ")),e[7]||(e[7]=a("div",{class:"section-title condition-title"},[a("span",null,"删除条件"),a("span",{class:"condition-title-hint"}," 注意删除条件的描述需要和页面描述一致 ")],-1)),a("div",Je,[a("div",We,[m(n,{modelValue:L.value,"onUpdate:modelValue":e[1]||(e[1]=s=>L.value=s),clearable:"",placeholder:"请输入删除条件",onKeyup:Mt(Pt,["enter"])},null,8,["modelValue"]),a("button",{type:"button",class:"opt-btn",disabled:x.value,onClick:Pt},r(x.value?"保存中...":"保存"),9,Xe)]),D.value.length?(i(),u("ul",Ze,[(i(!0),u(W,null,ut(D.value,s=>(i(),u("li",{key:s.id,class:"condition-item"},[a("label",ts,[ve(a("input",{"onUpdate:modelValue":e[2]||(e[2]=f=>_.value=f),type:"checkbox",value:s.id},null,8,es),[[ye,_.value]]),a("span",{title:s.conditionText},r(s.conditionText),9,ss)]),a("button",{type:"button",class:"link-danger",onClick:f=>Xt(s.id)}," 删除 ",8,as)]))),128))])):(i(),u("div",Ye," 暂无删除条件,保存后可在推送任务时多选携带。 "))]),a("div",ns,[a("button",{type:"button",class:"btn-run",disabled:U.value||V.value,onClick:te},r(U.value?"匹配中...":"匹配店铺"),9,os),a("button",{type:"button",class:"btn-run btn-queue",disabled:F.value||!tt.value.length,onClick:le},r(F.value?"任务执行中...":"推送到 Python 队列"),9,ls)]),e[8]||(e[8]=a("p",{class:"loading-msg"}," 当前页面会把匹配结果合并为一个巡店删除任务推送;多个店铺会在同一个任务和同一个结果文件中汇总。 ",-1)),y.value?(i(),u("div",rs,[e[4]||(e[4]=a("div",{class:"section-title queue-debug-title"},"队列状态",-1)),a("div",is,r(y.value),1),Z.value?(i(),u("pre",us,r(Z.value),1)):v("",!0)])):v("",!0)]),a("section",cs,[e[17]||(e[17]=a("div",{class:"panel-header"},"匹配与任务",-1)),a("div",ds,[a("div",fs,[a("div",ps,[e[9]||(e[9]=a("span",{class:"summary-label"},"备选店铺",-1)),a("strong",null,r(P.value.candidateCount),1)]),a("div",hs,[e[10]||(e[10]=a("span",{class:"summary-label"},"已处理任务",-1)),a("strong",null,r(P.value.processedTaskCount),1)]),a("div",ms,[e[11]||(e[11]=a("span",{class:"summary-label"},"成功任务",-1)),a("strong",null,r(P.value.successTaskCount),1)]),a("div",vs,[e[12]||(e[12]=a("span",{class:"summary-label"},"失败任务",-1)),a("strong",null,r(P.value.failedTaskCount),1)])]),e[16]||(e[16]=a("div",{class:"subsection-title"},"匹配结果",-1)),w.value.length?(i(),_e(l,{key:1,data:w.value,"row-key":N,"highlight-current-row":!1,class:"result-table match-table"},{default:S(()=>[m(o,{prop:"shopName",label:"店铺名","min-width":"120"}),m(o,{label:"匹配",width:"72",align:"center"},{default:S(({row:s})=>[a("span",{class:ct(s.matched?"ok":"fail")},r(s.matched?"是":"否"),3)]),_:1}),m(o,{prop:"shopId",label:"店铺 ID","min-width":"120","show-overflow-tooltip":""}),m(o,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),m(o,{prop:"companyName",label:"公司","min-width":"120","show-overflow-tooltip":""}),m(o,{label:"状态",width:"110","show-overflow-tooltip":""},{default:S(({row:s})=>[At(r(Ft(s.matchStatus)),1)]),_:1}),m(o,{label:"说明","min-width":"180","show-overflow-tooltip":""},{default:S(({row:s})=>[At(r(Ht(s)),1)]),_:1}),m(o,{label:"操作",width:"72",align:"center"},{default:S(({row:s})=>[a("button",{type:"button",class:"link-danger",onClick:f=>ee(s)}," 删除 ",8,_s)]),_:1})]),_:1},8,["data"])):(i(),u("div",ys," 完成“匹配店铺”后,这里会展示匹配结果。 ")),a("div",ws,[e[15]||(e[15]=a("div",{class:"result-list-header"},[a("span",null,"任务记录")],-1)),!O.value.length&&!et.value.length?(i(),u("div",gs," 暂无任务记录。推送到 Python 队列后,这里会展示当前任务和历史任务。 ")):(i(),u(W,{key:1},[O.value.length?(i(),u("div",ks,[e[13]||(e[13]=a("div",{class:"result-subsection-title"},"当前任务",-1)),a("ul",bs,[(i(!0),u(W,null,ut(O.value,s=>(i(),u("li",{key:mt(s),class:"task-item"},[a("div",Ss,[a("span",{class:"id",title:K(s)},r(K(s)),9,Is),a("div",Ts,"任务 ID: "+r(s.taskId??"-"),1),j(s)?(i(),u("div",Cs," 结果 ID: "+r(j(s)),1)):v("",!0),z(s)?(i(),u("div",Es," 店铺 ID: "+r(z(s)),1)):v("",!0),s.platform?(i(),u("div",Ds," 平台: "+r(s.platform),1)):v("",!0),a("div",Ps," 创建时间: "+r(at(s.createdAt)),1),a("div",Ns," 模板: "+r(wt(s)),1),G(s)?(i(),u("div",$s," 错误: "+r(G(s)),1)):v("",!0)]),a("div",Rs,[a("span",{class:ct(["status",bt(s.taskStatus)])},r(kt(s.taskStatus)),3),a("button",{type:"button",class:"btn-delete",onClick:f=>Rt(s)}," 删除 ",8,Ms)])]))),128))])])):v("",!0),et.value.length?(i(),u("div",As,[e[14]||(e[14]=a("div",{class:"result-subsection-title"},"历史任务",-1)),a("ul",Ls,[(i(!0),u(W,null,ut(et.value,s=>(i(),u("li",{key:mt(s),class:"task-item"},[a("div",qs,[a("span",{class:"id",title:K(s)},r(K(s)),9,Bs),a("div",xs,"任务 ID: "+r(s.taskId??"-"),1),j(s)?(i(),u("div",Us," 结果 ID: "+r(j(s)),1)):v("",!0),z(s)?(i(),u("div",Fs," 店铺 ID: "+r(z(s)),1)):v("",!0),s.platform?(i(),u("div",Hs," 平台: "+r(s.platform),1)):v("",!0),a("div",Os," 创建时间: "+r(at(s.createdAt)),1),s.finishedAt?(i(),u("div",Vs," 完成时间: "+r(at(s.finishedAt)),1)):v("",!0),a("div",Qs," 模板: "+r(wt(s)),1),G(s)?(i(),u("div",Ks," 错误: "+r(G(s)),1)):v("",!0)]),a("div",js,[a("span",{class:ct(["status",bt(s.taskStatus)])},r(kt(s.taskStatus)),3),St(s)?(i(),u("button",{key:0,type:"button",class:"archive",onClick:f=>re(s)}," 下载结果 ",8,zs)):v("",!0),a("button",{type:"button",class:"btn-delete",onClick:f=>Rt(s)}," 删除 ",8,Gs)])]))),128))])])):v("",!0)],64))])])])])])}}}),Ws=Ae(Js,[["__scopeId","data-v-b982bd51"]]);Le.locale("zh-cn");qe(Ws).use(Be,{locale:xe}).mount("#app"); diff --git a/app/assets/price-track.js b/app/assets/price-track.js index 64d3d4e..8635d97 100644 --- a/app/assets/price-track.js +++ b/app/assets/price-track.js @@ -1 +1 @@ -import{d as es,o as ts,L as ss,a as i,c,b as C,B as as,e as n,w as ct,u as dt,aW as ns,f as y,F as $,x as fe,r as pe,t as v,ak as os,al as ls,a4 as z,am as rs,an as us,ao as vt,n as _e,a5 as is,g as f,h as q,i as te,E as r,aX as cs,aY as ds,aZ as vs,a_ as fs,a$ as ps,b0 as ms,b1 as hs,b2 as ys,b3 as ks,b4 as ft,b5 as gs,b6 as ws,b7 as _s,b8 as bs,b9 as Is,U as Ss,ba as Cs,bb as Ts,bc as Ns,bd as pt,_ as Es,q as Ps,s as As}from"./pywebview-ZMN052YE.js";/* empty css *//* empty css */import{e as Rs}from"./brand-DfxdJ4w6.js";import{c as xs}from"./categorized-timers-JPA-olTr.js";const Ls={class:"page-shell module-page"},Ds={class:"main-content"},Ms={class:"left-panel"},$s={class:"mode-zone"},Fs={class:"mode-check-row"},Us=["checked"],Bs={class:"mode-check-row"},Os=["checked"],qs={class:"mode-zone"},js={class:"mode-check-row"},Js={class:"mode-check-row"},Ks={key:0,class:"loop-round-input"},Ws={class:"upload-zone"},Hs={class:"selected-files clean-placeholder"},Vs={key:1,class:"text-muted"},zs={class:"input-zone"},Gs={class:"input-row"},Qs=["disabled"],Xs={key:0,class:"empty-candidates"},Ys={key:1,class:"candidate-table-scroll"},Zs=["onClick"],ea={class:"country-pref-checks"},ta=["checked","disabled","onChange"],sa={class:"country-check-text"},aa={key:0,class:"country-order-panel"},na={class:"country-order-list"},oa=["onDragstart","onDrop"],la={class:"country-drag-label"},ra={key:1,class:"country-pref-status"},ua={key:3,class:"mode-status-bar"},ia={class:"run-row"},ca=["disabled"],da=["disabled"],va={key:4,class:"loop-status-card"},fa={class:"loop-status-line"},pa={class:"loop-status-line"},ma={class:"loop-status-line"},ha={class:"loop-status-line"},ya={key:0,class:"loop-status-line loop-error"},ka=["disabled"],ga={key:5,class:"queue-debug-card"},wa={class:"queue-debug-line"},_a={key:0,class:"queue-debug-payload"},ba={class:"right-panel"},Ia={class:"task-list-wrap"},Sa={class:"clean-result-summary pr-summary"},Ca={class:"summary-card"},Ta={class:"summary-card"},Na={class:"summary-card"},Ea={class:"summary-card"},Pa={key:0,class:"empty-tasks narrow"},Aa=["onClick"],Ra={class:"result-list-wrap"},xa={key:0,class:"empty-tasks"},La={key:0,class:"result-subsection"},Da={class:"task-list clean-result-list"},Ma={class:"left split-result-main"},$a={key:0,class:"files"},Fa=["title"],Ua={class:"files"},Ba={key:1,class:"files"},Oa={key:2,class:"files"},qa={class:"task-right split-result-actions"},ja=["onClick"],Ja=["onClick"],Ka={key:1,class:"result-subsection"},Wa={class:"task-list clean-result-list"},Ha={class:"left split-result-main"},Va={key:0,class:"files"},za=["title"],Ga={class:"files"},Qa={key:1,class:"files"},Xa={key:2,class:"files"},Ya={class:"task-right split-result-actions"},Za=["onClick"],en=["onClick"],tn=es({__name:"BrandPriceTrackTab",setup(an){const be=[{code:"DE",label:"德国"},{code:"UK",label:"英国"},{code:"FR",label:"法国"},{code:"IT",label:"意大利"},{code:"ES",label:"西班牙"}],se=f(""),Ie=f([]),qe=f([]),I=f([]),me=f(!1),he=f(!1),j=f(!1),Se=f(!1),je=f(!1),p=f(""),G=f(""),Ce=f({}),J=f("FINITE"),ye=f(1),m=f(null),k=f(null),Te=f(!1),ae=f(!1),A=f(!0),S=f(!1),R=f([]),ne=f([]),Ne=q(()=>A.value||S.value),mt=q(()=>{const e=k.value?.status||"";return e==="SUCCESS"||e==="FAILED"||e==="STOPPED"}),Ee=q(()=>!!m.value&&!mt.value),ht=q(()=>{const e=k.value;if(!e)return"";const t=e.currentRound||1;if(e.executionMode==="INFINITE")return`第 ${t} 轮(无限)`;const s=Math.max(1,e.targetRounds||ye.value||1);return`第 ${t}/${s} 轮`}),g=f(["DE","UK","FR","IT","ES"]),oe=f(null),Pe=f(!1),Je=f(!1);let Q=null;const le=f({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),K=f([]),w=f([]),N=f({}),_=f({}),L=f(null),Ae=f(!1);let b=!1;const x=xs("price-track");function X(e){return b?Promise.resolve():x.sleep("queue-wait",e)}function yt(){x.clearCategory("queue-wait")}function re(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function Ke(){return`price-track:tasks:${re()}`}function We(){return`price-track:task-status:${re()}`}function He(){return`price-track:tasks-batch-snapshot:${re()}`}function Ve(){return`price-track:matched-items:${re()}`}function ze(){return`price-track:active-loop:${re()}`}function ue(e,t,s){if(!(typeof window>"u"))try{s?window.localStorage.removeItem(e):window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function kt(){try{const e=typeof window<"u"?window.localStorage.getItem(Ke()):null;if(!e){w.value=[];return}const t=JSON.parse(e);w.value=Array.isArray(t)?t.filter(s=>typeof s=="number"&&s>0):[]}catch{w.value=[]}}function Ge(){ue(Ke(),w.value,w.value.length===0)}function gt(){try{const e=typeof window<"u"?window.localStorage.getItem(We()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const u=Number(l);u>0&&typeof o=="string"&&(s[u]=o)}N.value=s}catch{}}function ie(){ue(We(),N.value,Object.keys(N.value).length===0)}function wt(){try{const e=typeof window<"u"?window.localStorage.getItem(He()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const u=Number(l);u>0&&o&&typeof o=="object"&&(s[u]=o)}_.value=s}catch{}}function ce(){ue(He(),_.value,Object.keys(_.value).length===0)}function _t(){try{const e=typeof window<"u"?window.localStorage.getItem(Ve()):null;if(!e)return;const t=JSON.parse(e);Array.isArray(t)&&(I.value=t)}catch{}}function ke(){ue(Ve(),I.value,I.value.length===0)}function bt(){try{const e=typeof window<"u"?window.localStorage.getItem(ze()):null;if(!e){m.value=null;return}const t=Number(JSON.parse(e));m.value=Number.isFinite(t)&&t>0?t:null}catch{m.value=null}}function Y(){ue(ze(),m.value,!m.value)}async function It(){const e=te();if(e?.select_files){const t=await e.select_files({filters:[{name:"Excel/CSV",extensions:"xlsx,xls,csv"}],multiple:!0});t?.paths?.length&&(R.value=t.paths,ne.value=await Re(t.paths),r.success(`已选择 ${t.paths.length} 个ASIN文件`));return}if(e?.select_brand_xlsx_files){const t=await e.select_brand_xlsx_files();if(!t?.length)return;R.value=t,ne.value=await Re(t),r.success(`已选择 ${t.length} 个ASIN文件`);return}r.warning("当前环境不支持文件选择,请在本地客户端中打开")}async function St(){const e=te();if(!e?.select_brand_folder){r.warning("当前环境不支持文件夹选择,请在本地客户端中打开");return}try{const t=await e.select_brand_folder();if(!t)return;const s=await Rs(t);if(!s.success||!s.items?.length){r.warning(s.error||"该文件夹下没有可用的 xlsx 文件");return}R.value=s.items.map(l=>l.relativePath||l.absolutePath),ne.value=await Re(s.items),r.success(`已选择文件夹内 ${s.items.length} 个ASIN文件`)}catch(t){r.error(t instanceof Error?t.message:"选择失败")}}async function Re(e){const t=te();if(!t?.upload_file_to_java)return[];const s=[];for(const l of e){const o=typeof l=="string"?l:l.absolutePath,u=typeof l=="string"?void 0:l.relativePath,a=await t.upload_file_to_java(o,u);if(!a?.success||!a.data)throw new Error(a?.error||a?.message||`上传失败:${o}`);s.push(a.data)}return s}function xe(){return ne.value.length?ne.value.map(e=>e.localPath).filter(e=>!!e):R.value}function ge(){return S.value?be.map(e=>e.code):[...g.value]}function Le(e){A.value=e==="status",S.value=e==="asin"}function Qe(e){return be.find(s=>s.code===e)?.label??e}const Ct=q(()=>{const e=g.value,t=new Set(e),s=e.map(o=>({code:o,label:Qe(o)})),l=be.filter(o=>!t.has(o.code)).map(o=>({code:o.code,label:o.label}));return[...s,...l]});function Tt(e){return g.value.includes(e)}function Xe(e){return g.value.length===1&&g.value[0]===e}function Nt(e,t){const s=t.target;if(s){if(!s.checked&&Xe(e)){s.checked=!0,r.warning("至少保留 1 个国家");return}Et(e,s.checked)}}function Et(e,t){if(Je.value=!0,t)g.value.includes(e)||(g.value=[...g.value,e]);else{if(g.value.length<=1){r.warning("至少保留 1 个国家");return}g.value=g.value.filter(s=>s!==e)}Ye()}function Pt(e){oe.value=e}function At(){oe.value=null}function Rt(e){const t=oe.value;if(oe.value=null,t==null||t===e)return;Je.value=!0;const s=[...g.value],[l]=s.splice(t,1);s.splice(e,0,l),g.value=s,Ye()}function Ye(){Q&&x.clearTimer("preference-save",Q),Q=x.setTimeout("preference-save",()=>{Q=null,xt()},450)}async function xt(){if(!(g.value.length<1)){Pe.value=!0;try{await cs(g.value)}catch(e){r.error(e instanceof Error?e.message:"保存国家顺序失败")}finally{Pe.value=!1}}}async function Lt(){try{const e=await ds();e?.countryCodes?.length&&(g.value=[...e.countryCodes])}catch{}}async function De(){try{Ie.value=await vs()}catch(e){r.error(e instanceof Error?e.message:"加载备选失败")}}async function D(){try{le.value=await fs()}catch{}}async function F(){try{const e=await ps();K.value=e.items||[]}catch{K.value=[]}}function U(){for(const e of[...w.value])!K.value.some(s=>s.taskId===e)&&!_.value[e]&&H(e)}function Dt(e){qe.value=e||[]}async function Ze(){const e=se.value.trim();if(!e){r.warning("请输入店铺名称");return}me.value=!0;try{await ms(e),se.value="",await De(),r.success("已加入备选")}catch(t){r.error(t instanceof Error?t.message:"保存失败")}finally{me.value=!1}}async function Mt(e){try{await hs(e.id),await De(),I.value=[],ke(),r.success("已删除")}catch(t){r.error(t instanceof Error?t.message:"删除失败")}}function $t(){const e=new Set,t=se.value.trim();t&&e.add(t);for(const s of qe.value)s?.shopName?.trim()&&e.add(s.shopName.trim());if(S.value)for(const s of R.value){const l=(s||"").trim();if(!l)continue;const u=(l.split(/[/\\]/).filter(Boolean).pop()||"").replace(/\.[^.]+$/,"").trim();u&&e.add(u)}return[...e]}async function Ft(){const e=$t();if(!e.length){r.warning("请勾选备选店铺,或在输入框中填写店名");return}if(S.value&&!R.value.length){r.warning("请先选择 ASIN 文件");return}he.value=!0;try{const t=await ys(e,{asinFiles:S.value?xe():[],countryCodes:ge()}),s=t.items||[];Ce.value=t.asinRowsByCountry||{};const l=new Map(I.value.map(o=>[(o.shopName||"").trim(),o]));for(const o of s)l.set((o.shopName||"").trim(),o);I.value=[...l.values()],ke(),je.value&&Kt(),r.success(`匹配 ${s.length} 个店铺`)}catch(t){r.error(t instanceof Error?t.message:"匹配失败")}finally{he.value=!1}}function Ut(e){const t=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[t]||t||"—"}function Bt(e){const t=(e.matchMessage||"").trim();return t||(e.matched&&e.matchStatus==="MATCHED"?"紫鸟索引已命中,可推送队列":e.matched?"已关联索引,请结合状态列查看是否可推送":"未命中或未就绪,请检查店铺名与索引刷新")}function Me(e){return`${(e.shopName||"").trim()}${e.shopId??""}`}function et(e){const t=e instanceof Error?e.message:String(e||"");return/记录不存在|不存在|已删除|not\s*found|404/i.test(t)}function Ot(){const e=A.value&&!S.value;return{enabled:e,mode:e?"DELETE_WHEN_PRICE_BELOW_MINIMUM":"NONE",deleteWhenPriceBelowMinimum:e,compareField:"price",thresholdField:"minimumPrice",target:"skip_asin",source:"frontend-price-track"}}function W(e){if(!e.length)return;const t=new Set(e.map(l=>Me(l))),s=new Set(e.map(l=>(l.shopName||"").trim()).filter(l=>!!l));I.value=I.value.filter(l=>{const o=Me(l),u=(l.shopName||"").trim();return!t.has(o)&&(!u||!s.has(u))}),ke()}function qt(e){K.value=K.value.filter(t=>!(e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId))}async function jt(e){const t=[...I.value];W([e]);const s=(e.shopName||"").trim();if(!s){r.success("已从匹配结果中移除");return}try{(await ks(s))?.removed&&(await F(),await D(),U()),r.success("已从匹配结果中移除")}catch(l){if(et(l)){await F(),await D(),U(),r.success("后端记录已不存在,已同步移除本地记录");return}I.value=t,ke(),r.error(l instanceof Error?l.message:"同步后端失败")}}function tt(e,t){const s=e.items?.[0],l=(t.shopName||"").trim(),o=t.skipAsins||e.skipAsinsByCountry||{},u=e.skipAsinDetailsByCountry||{},a=e.minimumPriceByCountryAndAsin||{},d=Ot(),T=s?.resultId??null,O=s?.loopRunId??null,ee=s?.roundIndex??null,h=s?.taskStatus||"RUNNING",M=s?.success??!1,E=s?.error||null,P=s?.outputFilename||null,V=s?.downloadUrl||null;return{type:"price-track-run",ts:Date.now(),data:{task_id:e.taskId,result_id:T,shop_name:l,shop_id:t.shopId??null,platform:t.platform||"",company_name:t.companyName||"",shop_mall_name:t.shopMallName||"",matched:!!t.matched,match_status:t.matchStatus||"",match_message:t.matchMessage||null,success:M,error:E,output_filename:P,download_url:V,task_status:h,loop_run_id:O,round_index:ee,country_codes:ge(),mode:A.value?"status":"asin",skip_asins:o,skip_asins_by_country:o,skip_asin_details_by_country:u,minimum_price_by_country_and_asin:a,skip_asin_delete_policy:d,delete_skip_asin_when_price_below_minimum:d.deleteWhenPriceBelowMinimum,deleteSkipAsinWhenPriceBelowMinimum:d.deleteWhenPriceBelowMinimum,asin_rows_by_country:Object.keys(Ce.value).length?Ce.value:e.asinRowsByCountry||{},taskId:e.taskId,resultId:T,shopName:l,shopId:t.shopId??null,platformName:t.platform||"",companyName:t.companyName||"",shopMallName:t.shopMallName||"",matchStatus:t.matchStatus||"",matchMessage:t.matchMessage||null,outputFilename:P,downloadUrl:V,taskStatus:h,loopRunId:O,roundIndex:ee}}}async function st(e){let t=0;const s=30;for(;;){if(b)return"STOPPED";try{const l=await pt([e]);if(t>0&&(p.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),t=0,(l.missingTaskIds||[]).includes(e))return H(e),await F(),await D(),U(),"FAILED";const o=(l.items||[]).find(a=>a.task?.id===e),u=o?.task?.status||"";if(o){const a=_.value[e];_.value={..._.value,[e]:a?{...a,task:{...a.task||{},...o.task||{}}}:o},ce()}if(u&&(N.value={...N.value,[e]:u},ie()),u==="SUCCESS"||u==="FAILED")return H(e),await F(),await D(),U(),u}catch(l){const o=(l instanceof Error?l.message:String(l||"")).toLowerCase();if(!["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(a=>o.includes(a.toLowerCase())))throw l;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后手动刷新查看状态`);p.value=`任务 ${e} 运行中,正在等待后端服务恢复(${t}/${s})...`,(t===1||t%5===0)&&r.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await X(B());continue}await X(B())}}function Jt(){return I.value.find(e=>e.matched)}async function Kt(){if(b||Se.value)return;if(!Ne.value){r.warning("请至少选择一个跟价模式");return}if(S.value&&!R.value.length){r.warning("请先选择 ASIN 文件");return}const e=te();if(!e?.enqueue_json){r.error("当前环境未启用 pywebview enqueue_json");return}if(!I.value.filter(o=>o.matched).length){r.warning("无可用匹配店铺");return}Se.value=!0,j.value=!0,G.value="";let s=0,l=0;try{let o=0;for(;!b&&je.value;){const u=Jt();if(!u)break;o+=1;try{let a=0;const d=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await ft({userId:0,statusMode:A.value,asinMode:S.value,items:[u],asinFiles:xe(),countryCodes:ge()})}catch(h){const M=(h instanceof Error?h.message:String(h||"")).toLowerCase(),E=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(P=>M.includes(P.toLowerCase()));if(a+=1,!E||a>=10)throw h;p.value="后端服务暂时不可用,正在重试创建任务("+a+"/10)...",await X(B())}}})();_.value={..._.value,[d.taskId]:{task:{id:d.taskId,status:"RUNNING"},items:d.items}},N.value={...N.value,[d.taskId]:"RUNNING"},ce(),ie();const T=tt(d,u);G.value=JSON.stringify(T,null,2);const O=await e.enqueue_json(T);if(!O?.success){l+=1,p.value="任务 "+d.taskId+" 推送失败,已自动继续下一条:"+(O?.error||"未知错误"),r.error(p.value),W([u]);continue}if(we(d.taskId),Z(!0),W([u]),p.value="任务 "+d.taskId+" 已入队,等待执行完成",await st(d.taskId)!=="SUCCESS"){l+=1,p.value="任务 "+d.taskId+" 执行失败,已自动继续下一条",r.error(p.value);continue}s+=1,p.value="任务 "+d.taskId+" 已完成"}catch(a){if(b)break;l+=1,p.value="第 "+o+" 条任务处理失败,已自动继续下一条:"+(a instanceof Error?a.message:"未知错误"),r.error(p.value),W([u]);continue}}(s>0||l>0)&&r.success("店铺任务推送已完成:成功 "+s+" 条,失败 "+l+" 条")}catch(o){if(b)return;p.value=o instanceof Error?o.message:"推送异常",r.error(p.value)}finally{Se.value=!1,j.value=!1}}function de(e){k.value=e,m.value=e?.id??null,Y()}function ve(){if(!k.value)return;const e=k.value.status||"";(e==="SUCCESS"||e==="FAILED"||e==="STOPPED")&&(k.value=null,m.value=null,Y())}async function $e(){if(!m.value)return null;try{const e=await gs(m.value);return de(e),ve(),k.value}catch(e){const t=(e instanceof Error?e.message:String(e||"")).toLowerCase();return["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(l=>t.includes(l.toLowerCase()))?k.value:(k.value=null,m.value=null,Y(),null)}}function Wt(e){_.value={..._.value,[e.taskId]:{task:{id:e.taskId,status:"RUNNING"},items:e.items}},N.value={...N.value,[e.taskId]:"RUNNING"},ce(),ie()}async function Ht(){if(!(!m.value||ae.value)){ae.value=!0;try{const e=await ws(m.value);de(e),ve(),r.success(e.status==="STOPPED"?"循环已停止":"已请求停止,当前子任务完成后将收尾")}catch(e){r.error(e instanceof Error?e.message:"停止循环失败")}finally{ae.value=!1}}}async function Fe(e){if(b||Te.value||(e&&m.value!==e&&(m.value=e,Y()),!m.value))return;const t=te();if(!t?.enqueue_json)throw new Error("当前环境未启用 pywebview enqueue_json");Te.value=!0;try{for(;!b&&m.value;){const s=await $e();if(!s||s.status==="SUCCESS"||s.status==="FAILED"||s.status==="STOPPED")break;if(s.activeTaskId){const h=s.activeTaskId;we(h),Z(!0);const M=await st(h);let E=0;const P=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await _s(s.id,h)}catch(V){const Xt=(V instanceof Error?V.message:String(V||"")).toLowerCase(),Yt=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(Zt=>Xt.includes(Zt.toLowerCase()));if(E+=1,!Yt||E>=10)throw V;p.value=`循环任务 ${s.id} 等待后端恢复后确认子任务完成(${E}/10)...`,await X(B())}}})();if(de(P),await F(),await D(),U(),ve(),M!=="SUCCESS")throw new Error(P.errorMessage||`任务 ${s.activeTaskId} 执行失败`);continue}let l=0;const o=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await bs(s.id)}catch(h){const M=(h instanceof Error?h.message:String(h||"")).toLowerCase(),E=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(P=>M.includes(P.toLowerCase()));if(l+=1,!E||l>=10)throw h;p.value=`循环任务 ${s.id} 等待后端恢复后继续派发(${l}/10)...`,await X(B())}}})();if(de(o.loopRun||s),!o.childTaskRequest){ve();break}const u=o.childTaskRequest,a=u.items?.[0];if(!a)throw new Error("循环任务缺少待执行店铺");let d=0;const T=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await ft(u)}catch(h){const M=(h instanceof Error?h.message:String(h||"")).toLowerCase(),E=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(P=>M.includes(P.toLowerCase()));if(d+=1,!E||d>=10)throw h;p.value=`循环任务 ${s.id} 等待后端恢复后重试创建子任务(${d}/10)...`,await X(B())}}})();Wt(T);const O=tt(T,a);G.value=JSON.stringify(O,null,2);const ee=await t.enqueue_json(O);if(!ee?.success)throw new Error(ee?.error||`任务 ${T.taskId} 推送失败`);we(T.taskId),Z(!0),W([a]),p.value=`循环任务 ${s.id} 第 ${o.childTaskRequest.roundIndex||1} 轮已推送:${a.shopName||T.taskId}`}}finally{Te.value=!1}}async function Vt(){if(Ee.value){try{await Fe(m.value||void 0)}catch(t){t instanceof Error&&/子任务不存在|循环任务不存在|404/.test(t.message)&&(k.value=null,m.value=null,Y());const s=t instanceof Error?t.message:"循环执行失败";p.value=s,r.error(s)}return}if(!Ne.value){r.warning("请至少选择一个跟价模式");return}if(S.value&&!R.value.length){r.warning("请先选择 ASIN 文件");return}const e=I.value.filter(t=>t.matched);if(!e.length){r.warning("请先匹配可用店铺");return}j.value=!0,G.value="";try{const t=await Is({userId:0,statusMode:A.value,asinMode:S.value,items:e,asinFiles:xe(),countryCodes:ge(),executionMode:J.value,targetRounds:J.value==="FINITE"?Math.max(1,Number(ye.value)||1):void 0});de(t),p.value=`循环任务 ${t.id} 已创建`,await Fe(t.id),ve(),m.value||r.success("跟价循环已启动")}catch(t){const s=t instanceof Error?t.message:"启动循环失败";p.value=s,r.error(s)}finally{j.value=!1}}function B(){return Ss()}async function zt(){const e=w.value.filter(t=>t>0);if(e.length)try{const t=await pt(e);let s=!1;const l={..._.value};for(const o of t.missingTaskIds||[])H(o),delete l[o];for(const o of t.items||[]){const u=o.task?.id,a=o.task?.status;if(typeof u!="number"||u<=0)continue;const d=l[u];l[u]=d?{...d,task:{...d.task||{},...o.task||{}}}:o,a&&(N.value[u]=a,(a==="SUCCESS"||a==="FAILED")&&(H(u),s=!0))}_.value=l,ce(),ie(),await F(),U(),s&&await D()}catch{}}function Z(e=!1){if(b)return;if(L.value){if(!e)return;x.clearTimer("task-poll",L.value),L.value=null}const t=async()=>{if(L.value=null,!b){if(Ae.value){Z();return}if(w.value.length){Ae.value=!0;try{await zt()}finally{Ae.value=!1}!b&&w.value.length>0&&(L.value=x.setTimeout("task-poll",t,B()))}}};e?t():L.value=x.setTimeout("task-poll",t,B())}function Gt(){L.value&&(x.clearTimer("task-poll",L.value),L.value=null)}function we(e){w.value.includes(e)||(w.value=[...w.value,e],Ge())}function H(e){if(w.value=w.value.filter(t=>t!==e),Ge(),delete N.value[e],ie(),_.value[e]){const t={..._.value};delete t[e],_.value=t,ce()}}const Ue=q(()=>{const e=K.value.filter(s=>s.taskId&&w.value.includes(s.taskId)&&!nt(s.taskId)),t=new Set(e.map(s=>s.taskId).filter(s=>typeof s=="number"));for(const s of w.value){if(t.has(s))continue;const l=_.value[s]?.items?.[0];l&&e.push(l)}return e}),Be=q(()=>K.value.filter(e=>!e.taskId||!w.value.includes(e.taskId)||nt(e.taskId))),Qt=q(()=>Ue.value.length>0||Be.value.length>0);function at(e){return e&&(N.value[e]||_.value[e]?.task?.status)||""}function nt(e){const t=at(e);return t==="SUCCESS"||t==="FAILED"}function Oe(e){const t=e.taskId;return t?at(t)||e.taskStatus||"":e.taskStatus||""}function ot(e){const t=Oe(e);return t==="SUCCESS"?"已完成":t==="FAILED"?"失败":t==="RUNNING"?"执行中":e.success?"已完成":"等待中"}function lt(e){const t=Oe(e);return t==="SUCCESS"||e.success?"success":t==="FAILED"?"failed":"running"}function rt(e){return!e.resultId||!e.fileReady&&!e.downloadUrl?!1:Oe(e)==="SUCCESS"||e.success===!0}async function ut(e){if(!e.resultId)return;const t=te(),s=e.outputFilename||`${e.shopName||"result"}.xlsx`;if(!t?.save_file_from_url_new){r.error("当前客户端未提供 save_file_from_url_new,无法下载文件");return}const l=Cs(e.resultId),o=await t.save_file_from_url_new(l,s);o.success?r.success(`已保存:${o.path||s}`):o.error&&o.error!=="用户取消"&&r.error(o.error)}async function it(e){try{e.resultId!=null?await Ts(e.resultId):e.taskId!=null&&await Ns(e.taskId),k.value&&(e.loopRunId!=null&&e.loopRunId===k.value.id||e.taskId!=null&&e.taskId===k.value.activeTaskId)&&await $e(),e.taskId!=null&&H(e.taskId),W([e]),await F(),await D(),U(),r.success("已删除")}catch(t){if(et(t)){e.taskId!=null&&H(e.taskId),W([e]),qt(e),await D(),U(),r.success("后端记录已不存在,已同步移除本地记录");return}r.error(t instanceof Error?t.message:"删除失败")}}return ts(()=>{!A.value&&!S.value&&Le("status"),kt(),gt(),wt(),_t(),bt(),De().catch(()=>{}),Lt().catch(()=>{}),F().catch(()=>{}),D().catch(()=>{}),w.value.length&&Z(!0),m.value&&$e().then(e=>{e?.activeTaskId&&(we(e.activeTaskId),Z(!0)),e&&e.status!=="SUCCESS"&&e.status!=="FAILED"&&e.status!=="STOPPED"&&Fe(e.id)}).catch(()=>{m.value=null,Y()})}),ss(()=>{b=!0,Gt(),yt(),x.clearScope(),Q&&x.clearTimer("preference-save",Q)}),(e,t)=>{const s=ns,l=ls,o=rs,u=us;return i(),c("div",Ls,[C(as,{active:"pricing"}),n("div",Ds,[n("aside",Ms,[t[27]||(t[27]=n("div",{class:"section-title"},"跟价模式",-1)),n("div",$s,[n("label",Fs,[n("input",{type:"radio",name:"price-track-mode",class:"mode-check-input",checked:A.value,onChange:t[0]||(t[0]=a=>Le("status"))},null,40,Us),t[7]||(t[7]=n("span",{class:"mode-check-text"},"按商品状态(全量)",-1)),t[8]||(t[8]=n("span",{class:"mode-hint-inline"},"— 获取店铺所有在售ASIN跑跟价",-1))]),n("label",Bs,[n("input",{type:"radio",name:"price-track-mode",class:"mode-check-input",checked:S.value,onChange:t[1]||(t[1]=a=>Le("asin"))},null,40,Os),t[9]||(t[9]=n("span",{class:"mode-check-text"},"按指定ASIN文档(自定义)",-1)),t[10]||(t[10]=n("span",{class:"mode-hint-inline"},"— 上传ASIN表格,按文档内ASIN跑跟价",-1))])]),t[28]||(t[28]=n("div",{class:"section-title"},"执行配置",-1)),n("div",qs,[n("label",js,[ct(n("input",{"onUpdate:modelValue":t[2]||(t[2]=a=>J.value=a),type:"radio",class:"mode-check-input",value:"FINITE"},null,512),[[dt,J.value]]),t[11]||(t[11]=n("span",{class:"mode-check-text"},"执行固定轮次",-1)),t[12]||(t[12]=n("span",{class:"mode-hint-inline"},"按整批店铺重复执行指定次数",-1))]),n("label",Js,[ct(n("input",{"onUpdate:modelValue":t[3]||(t[3]=a=>J.value=a),type:"radio",class:"mode-check-input",value:"INFINITE"},null,512),[[dt,J.value]]),t[13]||(t[13]=n("span",{class:"mode-check-text"},"无限执行",-1)),t[14]||(t[14]=n("span",{class:"mode-hint-inline"},"上一轮全部成功后立即开始下一轮",-1))]),J.value==="FINITE"?(i(),c("div",Ks,[t[15]||(t[15]=n("span",{class:"hint"},"轮次",-1)),C(s,{modelValue:ye.value,"onUpdate:modelValue":t[4]||(t[4]=a=>ye.value=a),min:1,max:9999,disabled:Ee.value||j.value},null,8,["modelValue","disabled"])])):y("",!0)]),S.value?(i(),c($,{key:0},[t[17]||(t[17]=n("div",{class:"section-title"},[fe("ASIN文档 "),n("span",{class:"tag-badge"},"自定义模式")],-1)),n("div",Ws,[t[16]||(t[16]=n("div",{class:"hint"},"上传包含ASIN的表格文件,按文档内的ASIN进行跟价。",-1)),n("div",{class:"btns"},[n("button",{type:"button",class:"opt-btn",onClick:It},"选择ASIN文件"),n("button",{type:"button",class:"opt-btn",onClick:St},"选择文件夹")]),n("div",Hs,[R.value.length?(i(!0),c($,{key:0},pe(R.value,(a,d)=>(i(),c("span",{key:d},v(a),1))),128)):(i(),c("span",Vs,"暂未选择"))])])],64)):y("",!0),A.value?(i(),c($,{key:1},[t[19]||(t[19]=n("div",{class:"section-title"},"店铺名称",-1)),n("div",zs,[t[18]||(t[18]=n("div",{class:"hint"},"输入店铺名后点「确认」加入下方备选区。可同时配合上方模式使用。",-1)),n("div",Gs,[C(l,{modelValue:se.value,"onUpdate:modelValue":t[5]||(t[5]=a=>se.value=a),clearable:"",placeholder:"请输入店铺名称",onKeyup:os(Ze,["enter"])},null,8,["modelValue"]),n("button",{type:"button",class:"opt-btn",disabled:me.value,onClick:Ze},v(me.value?"保存中…":"确认"),9,Qs)])]),t[20]||(t[20]=n("div",{class:"section-title"},"备选店铺",-1)),Ie.value.length?(i(),c("div",Ys,[C(u,{data:Ie.value,"row-key":"id",height:"160",class:"candidate-table",onSelectionChange:Dt},{default:z(()=>[C(o,{type:"selection",width:"42"}),C(o,{prop:"shopName",label:"店铺名","min-width":"120","show-overflow-tooltip":""}),C(o,{label:"操作",width:"72",align:"center"},{default:z(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:d=>Mt(a)},"删除",8,Zs)]),_:1})]),_:1},8,["data"])])):(i(),c("div",Xs,"暂无备选店铺,请先输入并确认"))],64)):y("",!0),S.value?y("",!0):(i(),c($,{key:2},[t[23]||(t[23]=n("div",{class:"section-title"},"处理国家与顺序",-1)),t[24]||(t[24]=n("p",{class:"hint country-pref-hint"}," 勾选需要处理的站点;拖拽调整顺序。设置会按当前登录用户保存。 ",-1)),n("div",ea,[(i(!0),c($,null,pe(Ct.value,a=>(i(),c("label",{key:a.code,class:"country-check-row"},[n("input",{type:"checkbox",class:"country-check-input",checked:Tt(a.code),disabled:Xe(a.code),onChange:d=>Nt(a.code,d)},null,40,ta),n("span",sa,v(a.label)+"("+v(a.code)+")",1)]))),128))]),g.value.length?(i(),c("div",aa,[t[22]||(t[22]=n("div",{class:"country-order-caption"},"已选顺序(拖拽 ⋮⋮ 调整)",-1)),n("div",na,[(i(!0),c($,null,pe(g.value,(a,d)=>(i(),c("div",{key:a,class:_e(["country-drag-row",{dragging:oe.value===d}]),draggable:"true",onDragstart:T=>Pt(d),onDragend:At,onDragover:t[6]||(t[6]=vt(()=>{},["prevent"])),onDrop:vt(T=>Rt(d),["prevent"])},[t[21]||(t[21]=n("span",{class:"drag-handle",title:"拖动排序"},"⋮⋮",-1)),n("span",la,v(Qe(a))+"("+v(a)+")",1)],42,oa))),128))])])):y("",!0),Pe.value?(i(),c("div",ra,"保存中…")):y("",!0)],64)),A.value?(i(),c("div",ua,[...t[25]||(t[25]=[n("span",{class:"mode-status-dot active"},null,-1),n("span",{class:"mode-status-text"},"商品状态模式:将在售(Active)ASIN纳入跟价,跳过ASIN由后台配置的店铺维度数据提供",-1)])])):y("",!0),n("div",ia,[n("button",{type:"button",class:"btn-run",disabled:he.value,onClick:Ft},v(he.value?"匹配中…":"匹配店铺"),9,ca),n("button",{type:"button",class:"btn-run btn-queue",disabled:j.value||!Ne.value,onClick:Vt},v(j.value?"推送中…":"推送到 Python 队列"),9,da)]),t[29]||(t[29]=n("p",{class:"loading-msg"},[fe("上传ASIN文档和多选店铺"),n("strong",null,"可同时生效"),fe(",跟价结果合并输出。全量和自定义的区别仅在于ASIN来源不同。")],-1)),k.value?(i(),c("div",va,[n("div",fa,"循环任务 ID:"+v(k.value.id),1),n("div",pa,"状态:"+v(k.value.status||"-"),1),n("div",ma,"进度:"+v(ht.value),1),n("div",ha,"当前店铺:"+v((k.value.currentShopIndex||0)+1)+"/"+v(k.value.totalShopCount||0),1),k.value.errorMessage?(i(),c("div",ya,v(k.value.errorMessage),1)):y("",!0),n("button",{type:"button",class:"opt-btn loop-stop-btn",disabled:!Ee.value||ae.value,onClick:Ht},v(ae.value?"停止中...":"停止循环"),9,ka)])):y("",!0),p.value?(i(),c("div",ga,[t[26]||(t[26]=n("div",{class:"section-title queue-debug-title"},"推送结果",-1)),n("div",wa,v(p.value),1),G.value?(i(),c("pre",_a,v(G.value),1)):y("",!0)])):y("",!0)]),n("section",ba,[t[38]||(t[38]=n("div",{class:"panel-header"},"匹配与任务",-1)),n("div",Ia,[n("div",Sa,[n("div",Ca,[t[30]||(t[30]=n("span",{class:"summary-label"},"备选店铺数",-1)),n("strong",null,v(le.value.candidateCount),1)]),n("div",Ta,[t[31]||(t[31]=n("span",{class:"summary-label"},"已结束任务",-1)),n("strong",null,v(le.value.processedTaskCount),1)]),n("div",Na,[t[32]||(t[32]=n("span",{class:"summary-label"},"成功任务",-1)),n("strong",null,v(le.value.successTaskCount),1)]),n("div",Ea,[t[33]||(t[33]=n("span",{class:"summary-label"},"失败任务",-1)),n("strong",null,v(le.value.failedTaskCount),1)])]),t[37]||(t[37]=n("div",{class:"subsection-title"},"匹配结果",-1)),I.value.length?(i(),is(u,{key:1,data:I.value,"row-key":Me,"highlight-current-row":!1,class:"result-table match-table"},{default:z(()=>[C(o,{prop:"shopName",label:"店铺名","min-width":"100"}),C(o,{label:"匹配",width:"72",align:"center"},{default:z(({row:a})=>[n("span",{class:_e(a.matched?"ok":"fail")},v(a.matched?"是":"否"),3)]),_:1}),C(o,{prop:"shopId",label:"店铺ID","min-width":"120","show-overflow-tooltip":""}),C(o,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),C(o,{prop:"companyName",label:"公司","min-width":"100","show-overflow-tooltip":""}),C(o,{label:"状态",width:"100","show-overflow-tooltip":""},{default:z(({row:a})=>[fe(v(Ut(a.matchStatus)),1)]),_:1}),C(o,{label:"说明","min-width":"140","show-overflow-tooltip":""},{default:z(({row:a})=>[fe(v(Bt(a)),1)]),_:1}),C(o,{label:"操作",width:"72",align:"center"},{default:z(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:d=>jt(a)},"删除",8,Aa)]),_:1})]),_:1},8,["data"])):(i(),c("div",Pa,"完成「匹配店铺」后,在此展示紫鸟索引匹配结果,供核对后再推送队列。")),n("div",Ra,[t[36]||(t[36]=n("div",{class:"result-list-header"},[n("span",null,"处理记录")],-1)),Qt.value?(i(),c($,{key:1},[Ue.value.length?(i(),c("div",La,[t[34]||(t[34]=n("div",{class:"result-subsection-title"},"当前任务",-1)),n("ul",Da,[(i(!0),c($,null,pe(Ue.value,a=>(i(),c("li",{key:`cur-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",Ma,[a.roundIndex?(i(),c("div",$a,"轮次:第 "+v(a.roundIndex)+" 轮",1)):y("",!0),n("span",{class:"id",title:a.shopName||""},v(a.shopName||"-"),9,Fa),n("div",Ua,"任务 ID:"+v(a.taskId??"-"),1),a.platform?(i(),c("div",Ba,"平台:"+v(a.platform),1)):y("",!0),a.error?(i(),c("div",Oa,"错误:"+v(a.error),1)):y("",!0)]),n("div",qa,[n("span",{class:_e(["status",lt(a)])},v(ot(a)),3),rt(a)?(i(),c("button",{key:0,type:"button",class:"download",onClick:d=>ut(a)}," 下载 ",8,ja)):y("",!0),n("button",{type:"button",class:"btn-delete",onClick:d=>it(a)},"删除",8,Ja)])]))),128))])])):y("",!0),Be.value.length?(i(),c("div",Ka,[t[35]||(t[35]=n("div",{class:"result-subsection-title"},"历史记录",-1)),n("ul",Wa,[(i(!0),c($,null,pe(Be.value,a=>(i(),c("li",{key:`his-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",Ha,[a.roundIndex?(i(),c("div",Va,"轮次:第 "+v(a.roundIndex)+" 轮",1)):y("",!0),n("span",{class:"id",title:a.shopName||""},v(a.shopName||"-"),9,za),n("div",Ga,"任务 ID:"+v(a.taskId??"-"),1),a.outputFilename?(i(),c("div",Qa,"文件:"+v(a.outputFilename),1)):y("",!0),a.error?(i(),c("div",Xa,"错误:"+v(a.error),1)):y("",!0)]),n("div",Ya,[n("span",{class:_e(["status",lt(a)])},v(ot(a)),3),rt(a)?(i(),c("button",{key:0,type:"button",class:"download",onClick:d=>ut(a)}," 下载 ",8,Za)):y("",!0),n("button",{type:"button",class:"btn-delete",onClick:d=>it(a)},"删除",8,en)])]))),128))])])):y("",!0)],64)):(i(),c("div",xa,"暂无处理记录。推送队列并等待 Python 回传后,将在此显示下载链接。"))])])])])])}}}),sn=Es(tn,[["__scopeId","data-v-08a3fd7b"]]);Ps(sn).use(As).mount("#app"); +import{d as es,o as ts,L as ss,a as i,c,b as C,B as as,e as n,w as ct,u as dt,aT as ns,f as y,F as $,x as fe,r as pe,t as v,af as os,ag as ls,ah as z,ai as rs,aj as us,ak as vt,n as _e,am as is,g as f,h as q,i as te,E as r,aU as cs,aV as ds,aW as vs,aX as fs,aY as ps,aZ as ms,a_ as hs,a$ as ys,b0 as ks,b1 as ft,b2 as gs,b3 as ws,b4 as _s,b5 as bs,b6 as Is,U as Ss,b7 as Cs,b8 as Ts,b9 as Ns,ba as pt,_ as Es,q as Ps,s as As}from"./pywebview-84Lhn3TI.js";/* empty css */import{e as Rs}from"./brand-DIMFUl0j.js";import{c as xs}from"./categorized-timers-JPA-olTr.js";const Ls={class:"page-shell module-page"},Ds={class:"main-content"},Ms={class:"left-panel"},$s={class:"mode-zone"},Fs={class:"mode-check-row"},Us=["checked"],Bs={class:"mode-check-row"},Os=["checked"],qs={class:"mode-zone"},js={class:"mode-check-row"},Js={class:"mode-check-row"},Ks={key:0,class:"loop-round-input"},Vs={class:"upload-zone"},Ws={class:"selected-files clean-placeholder"},Hs={key:1,class:"text-muted"},zs={class:"input-zone"},Gs={class:"input-row"},Qs=["disabled"],Xs={key:0,class:"empty-candidates"},Ys={key:1,class:"candidate-table-scroll"},Zs=["onClick"],ea={class:"country-pref-checks"},ta=["checked","disabled","onChange"],sa={class:"country-check-text"},aa={key:0,class:"country-order-panel"},na={class:"country-order-list"},oa=["onDragstart","onDrop"],la={class:"country-drag-label"},ra={key:1,class:"country-pref-status"},ua={key:3,class:"mode-status-bar"},ia={class:"run-row"},ca=["disabled"],da=["disabled"],va={key:4,class:"loop-status-card"},fa={class:"loop-status-line"},pa={class:"loop-status-line"},ma={class:"loop-status-line"},ha={class:"loop-status-line"},ya={key:0,class:"loop-status-line loop-error"},ka=["disabled"],ga={key:5,class:"queue-debug-card"},wa={class:"queue-debug-line"},_a={key:0,class:"queue-debug-payload"},ba={class:"right-panel"},Ia={class:"task-list-wrap"},Sa={class:"clean-result-summary pr-summary"},Ca={class:"summary-card"},Ta={class:"summary-card"},Na={class:"summary-card"},Ea={class:"summary-card"},Pa={key:0,class:"empty-tasks narrow"},Aa=["onClick"],Ra={class:"result-list-wrap"},xa={key:0,class:"empty-tasks"},La={key:0,class:"result-subsection"},Da={class:"task-list clean-result-list"},Ma={class:"left split-result-main"},$a={key:0,class:"files"},Fa=["title"],Ua={class:"files"},Ba={key:1,class:"files"},Oa={key:2,class:"files"},qa={class:"task-right split-result-actions"},ja=["onClick"],Ja=["onClick"],Ka={key:1,class:"result-subsection"},Va={class:"task-list clean-result-list"},Wa={class:"left split-result-main"},Ha={key:0,class:"files"},za=["title"],Ga={class:"files"},Qa={key:1,class:"files"},Xa={key:2,class:"files"},Ya={class:"task-right split-result-actions"},Za=["onClick"],en=["onClick"],tn=es({__name:"BrandPriceTrackTab",setup(an){const be=[{code:"DE",label:"德国"},{code:"UK",label:"英国"},{code:"FR",label:"法国"},{code:"IT",label:"意大利"},{code:"ES",label:"西班牙"}],se=f(""),Ie=f([]),qe=f([]),I=f([]),me=f(!1),he=f(!1),j=f(!1),Se=f(!1),je=f(!1),p=f(""),G=f(""),Ce=f({}),J=f("FINITE"),ye=f(1),m=f(null),k=f(null),Te=f(!1),ae=f(!1),A=f(!0),S=f(!1),R=f([]),ne=f([]),Ne=q(()=>A.value||S.value),mt=q(()=>{const e=k.value?.status||"";return e==="SUCCESS"||e==="FAILED"||e==="STOPPED"}),Ee=q(()=>!!m.value&&!mt.value),ht=q(()=>{const e=k.value;if(!e)return"";const t=e.currentRound||1;if(e.executionMode==="INFINITE")return`第 ${t} 轮(无限)`;const s=Math.max(1,e.targetRounds||ye.value||1);return`第 ${t}/${s} 轮`}),g=f(["DE","UK","FR","IT","ES"]),oe=f(null),Pe=f(!1),Je=f(!1);let Q=null;const le=f({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),K=f([]),w=f([]),N=f({}),_=f({}),L=f(null),Ae=f(!1);let b=!1;const x=xs("price-track");function X(e){return b?Promise.resolve():x.sleep("queue-wait",e)}function yt(){x.clearCategory("queue-wait")}function re(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function Ke(){return`price-track:tasks:${re()}`}function Ve(){return`price-track:task-status:${re()}`}function We(){return`price-track:tasks-batch-snapshot:${re()}`}function He(){return`price-track:matched-items:${re()}`}function ze(){return`price-track:active-loop:${re()}`}function ue(e,t,s){if(!(typeof window>"u"))try{s?window.localStorage.removeItem(e):window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function kt(){try{const e=typeof window<"u"?window.localStorage.getItem(Ke()):null;if(!e){w.value=[];return}const t=JSON.parse(e);w.value=Array.isArray(t)?t.filter(s=>typeof s=="number"&&s>0):[]}catch{w.value=[]}}function Ge(){ue(Ke(),w.value,w.value.length===0)}function gt(){try{const e=typeof window<"u"?window.localStorage.getItem(Ve()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const u=Number(l);u>0&&typeof o=="string"&&(s[u]=o)}N.value=s}catch{}}function ie(){ue(Ve(),N.value,Object.keys(N.value).length===0)}function wt(){try{const e=typeof window<"u"?window.localStorage.getItem(We()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const u=Number(l);u>0&&o&&typeof o=="object"&&(s[u]=o)}_.value=s}catch{}}function ce(){ue(We(),_.value,Object.keys(_.value).length===0)}function _t(){try{const e=typeof window<"u"?window.localStorage.getItem(He()):null;if(!e)return;const t=JSON.parse(e);Array.isArray(t)&&(I.value=t)}catch{}}function ke(){ue(He(),I.value,I.value.length===0)}function bt(){try{const e=typeof window<"u"?window.localStorage.getItem(ze()):null;if(!e){m.value=null;return}const t=Number(JSON.parse(e));m.value=Number.isFinite(t)&&t>0?t:null}catch{m.value=null}}function Y(){ue(ze(),m.value,!m.value)}async function It(){const e=te();if(e?.select_files){const t=await e.select_files({filters:[{name:"Excel/CSV",extensions:"xlsx,xls,csv"}],multiple:!0});t?.paths?.length&&(R.value=t.paths,ne.value=await Re(t.paths),r.success(`已选择 ${t.paths.length} 个ASIN文件`));return}if(e?.select_brand_xlsx_files){const t=await e.select_brand_xlsx_files();if(!t?.length)return;R.value=t,ne.value=await Re(t),r.success(`已选择 ${t.length} 个ASIN文件`);return}r.warning("当前环境不支持文件选择,请在本地客户端中打开")}async function St(){const e=te();if(!e?.select_brand_folder){r.warning("当前环境不支持文件夹选择,请在本地客户端中打开");return}try{const t=await e.select_brand_folder();if(!t)return;const s=await Rs(t);if(!s.success||!s.items?.length){r.warning(s.error||"该文件夹下没有可用的 xlsx 文件");return}R.value=s.items.map(l=>l.relativePath||l.absolutePath),ne.value=await Re(s.items),r.success(`已选择文件夹内 ${s.items.length} 个ASIN文件`)}catch(t){r.error(t instanceof Error?t.message:"选择失败")}}async function Re(e){const t=te();if(!t?.upload_file_to_java)return[];const s=[];for(const l of e){const o=typeof l=="string"?l:l.absolutePath,u=typeof l=="string"?void 0:l.relativePath,a=await t.upload_file_to_java(o,u);if(!a?.success||!a.data)throw new Error(a?.error||a?.message||`上传失败:${o}`);s.push(a.data)}return s}function xe(){return ne.value.length?ne.value.map(e=>e.localPath).filter(e=>!!e):R.value}function ge(){return S.value?be.map(e=>e.code):[...g.value]}function Le(e){A.value=e==="status",S.value=e==="asin"}function Qe(e){return be.find(s=>s.code===e)?.label??e}const Ct=q(()=>{const e=g.value,t=new Set(e),s=e.map(o=>({code:o,label:Qe(o)})),l=be.filter(o=>!t.has(o.code)).map(o=>({code:o.code,label:o.label}));return[...s,...l]});function Tt(e){return g.value.includes(e)}function Xe(e){return g.value.length===1&&g.value[0]===e}function Nt(e,t){const s=t.target;if(s){if(!s.checked&&Xe(e)){s.checked=!0,r.warning("至少保留 1 个国家");return}Et(e,s.checked)}}function Et(e,t){if(Je.value=!0,t)g.value.includes(e)||(g.value=[...g.value,e]);else{if(g.value.length<=1){r.warning("至少保留 1 个国家");return}g.value=g.value.filter(s=>s!==e)}Ye()}function Pt(e){oe.value=e}function At(){oe.value=null}function Rt(e){const t=oe.value;if(oe.value=null,t==null||t===e)return;Je.value=!0;const s=[...g.value],[l]=s.splice(t,1);s.splice(e,0,l),g.value=s,Ye()}function Ye(){Q&&x.clearTimer("preference-save",Q),Q=x.setTimeout("preference-save",()=>{Q=null,xt()},450)}async function xt(){if(!(g.value.length<1)){Pe.value=!0;try{await cs(g.value)}catch(e){r.error(e instanceof Error?e.message:"保存国家顺序失败")}finally{Pe.value=!1}}}async function Lt(){try{const e=await ds();e?.countryCodes?.length&&(g.value=[...e.countryCodes])}catch{}}async function De(){try{Ie.value=await vs()}catch(e){r.error(e instanceof Error?e.message:"加载备选失败")}}async function D(){try{le.value=await fs()}catch{}}async function F(){try{const e=await ps();K.value=e.items||[]}catch{K.value=[]}}function U(){for(const e of[...w.value])!K.value.some(s=>s.taskId===e)&&!_.value[e]&&W(e)}function Dt(e){qe.value=e||[]}async function Ze(){const e=se.value.trim();if(!e){r.warning("请输入店铺名称");return}me.value=!0;try{await ms(e),se.value="",await De(),r.success("已加入备选")}catch(t){r.error(t instanceof Error?t.message:"保存失败")}finally{me.value=!1}}async function Mt(e){try{await hs(e.id),await De(),I.value=[],ke(),r.success("已删除")}catch(t){r.error(t instanceof Error?t.message:"删除失败")}}function $t(){const e=new Set,t=se.value.trim();t&&e.add(t);for(const s of qe.value)s?.shopName?.trim()&&e.add(s.shopName.trim());if(S.value)for(const s of R.value){const l=(s||"").trim();if(!l)continue;const u=(l.split(/[/\\]/).filter(Boolean).pop()||"").replace(/\.[^.]+$/,"").trim();u&&e.add(u)}return[...e]}async function Ft(){const e=$t();if(!e.length){r.warning("请勾选备选店铺,或在输入框中填写店名");return}if(S.value&&!R.value.length){r.warning("请先选择 ASIN 文件");return}he.value=!0;try{const t=await ys(e,{asinFiles:S.value?xe():[],countryCodes:ge()}),s=t.items||[];Ce.value=t.asinRowsByCountry||{};const l=new Map(I.value.map(o=>[(o.shopName||"").trim(),o]));for(const o of s)l.set((o.shopName||"").trim(),o);I.value=[...l.values()],ke(),je.value&&Kt(),r.success(`匹配 ${s.length} 个店铺`)}catch(t){r.error(t instanceof Error?t.message:"匹配失败")}finally{he.value=!1}}function Ut(e){const t=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[t]||t||"—"}function Bt(e){const t=(e.matchMessage||"").trim();return t||(e.matched&&e.matchStatus==="MATCHED"?"紫鸟索引已命中,可推送队列":e.matched?"已关联索引,请结合状态列查看是否可推送":"未命中或未就绪,请检查店铺名与索引刷新")}function Me(e){return`${(e.shopName||"").trim()}${e.shopId??""}`}function et(e){const t=e instanceof Error?e.message:String(e||"");return/记录不存在|不存在|已删除|not\s*found|404/i.test(t)}function Ot(){const e=A.value&&!S.value;return{enabled:e,mode:e?"DELETE_WHEN_PRICE_BELOW_MINIMUM":"NONE",deleteWhenPriceBelowMinimum:e,compareField:"price",thresholdField:"minimumPrice",target:"skip_asin",source:"frontend-price-track"}}function V(e){if(!e.length)return;const t=new Set(e.map(l=>Me(l))),s=new Set(e.map(l=>(l.shopName||"").trim()).filter(l=>!!l));I.value=I.value.filter(l=>{const o=Me(l),u=(l.shopName||"").trim();return!t.has(o)&&(!u||!s.has(u))}),ke()}function qt(e){K.value=K.value.filter(t=>!(e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId))}async function jt(e){const t=[...I.value];V([e]);const s=(e.shopName||"").trim();if(!s){r.success("已从匹配结果中移除");return}try{(await ks(s))?.removed&&(await F(),await D(),U()),r.success("已从匹配结果中移除")}catch(l){if(et(l)){await F(),await D(),U(),r.success("后端记录已不存在,已同步移除本地记录");return}I.value=t,ke(),r.error(l instanceof Error?l.message:"同步后端失败")}}function tt(e,t){const s=e.items?.[0],l=(t.shopName||"").trim(),o=t.skipAsins||e.skipAsinsByCountry||{},u=e.skipAsinDetailsByCountry||{},a=e.minimumPriceByCountryAndAsin||{},d=Ot(),T=s?.resultId??null,O=s?.loopRunId??null,ee=s?.roundIndex??null,h=s?.taskStatus||"RUNNING",M=s?.success??!1,E=s?.error||null,P=s?.outputFilename||null,H=s?.downloadUrl||null;return{type:"price-track-run",ts:Date.now(),data:{task_id:e.taskId,result_id:T,shop_name:l,shop_id:t.shopId??null,platform:t.platform||"",company_name:t.companyName||"",shop_mall_name:t.shopMallName||"",matched:!!t.matched,match_status:t.matchStatus||"",match_message:t.matchMessage||null,success:M,error:E,output_filename:P,download_url:H,task_status:h,loop_run_id:O,round_index:ee,country_codes:ge(),mode:A.value?"status":"asin",skip_asins:o,skip_asins_by_country:o,skip_asin_details_by_country:u,minimum_price_by_country_and_asin:a,skip_asin_delete_policy:d,delete_skip_asin_when_price_below_minimum:d.deleteWhenPriceBelowMinimum,deleteSkipAsinWhenPriceBelowMinimum:d.deleteWhenPriceBelowMinimum,asin_rows_by_country:Object.keys(Ce.value).length?Ce.value:e.asinRowsByCountry||{},taskId:e.taskId,resultId:T,shopName:l,shopId:t.shopId??null,platformName:t.platform||"",companyName:t.companyName||"",shopMallName:t.shopMallName||"",matchStatus:t.matchStatus||"",matchMessage:t.matchMessage||null,outputFilename:P,downloadUrl:H,taskStatus:h,loopRunId:O,roundIndex:ee}}}async function st(e){let t=0;const s=30;for(;;){if(b)return"STOPPED";try{const l=await pt([e]);if(t>0&&(p.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),t=0,(l.missingTaskIds||[]).includes(e))return W(e),await F(),await D(),U(),"FAILED";const o=(l.items||[]).find(a=>a.task?.id===e),u=o?.task?.status||"";if(o){const a=_.value[e];_.value={..._.value,[e]:a?{...a,task:{...a.task||{},...o.task||{}}}:o},ce()}if(u&&(N.value={...N.value,[e]:u},ie()),u==="SUCCESS"||u==="FAILED")return W(e),await F(),await D(),U(),u}catch(l){const o=(l instanceof Error?l.message:String(l||"")).toLowerCase();if(!["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(a=>o.includes(a.toLowerCase())))throw l;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后手动刷新查看状态`);p.value=`任务 ${e} 运行中,正在等待后端服务恢复(${t}/${s})...`,(t===1||t%5===0)&&r.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await X(B());continue}await X(B())}}function Jt(){return I.value.find(e=>e.matched)}async function Kt(){if(b||Se.value)return;if(!Ne.value){r.warning("请至少选择一个跟价模式");return}if(S.value&&!R.value.length){r.warning("请先选择 ASIN 文件");return}const e=te();if(!e?.enqueue_json){r.error("当前环境未启用 pywebview enqueue_json");return}if(!I.value.filter(o=>o.matched).length){r.warning("无可用匹配店铺");return}Se.value=!0,j.value=!0,G.value="";let s=0,l=0;try{let o=0;for(;!b&&je.value;){const u=Jt();if(!u)break;o+=1;try{let a=0;const d=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await ft({userId:0,statusMode:A.value,asinMode:S.value,items:[u],asinFiles:xe(),countryCodes:ge()})}catch(h){const M=(h instanceof Error?h.message:String(h||"")).toLowerCase(),E=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(P=>M.includes(P.toLowerCase()));if(a+=1,!E||a>=10)throw h;p.value="后端服务暂时不可用,正在重试创建任务("+a+"/10)...",await X(B())}}})();_.value={..._.value,[d.taskId]:{task:{id:d.taskId,status:"RUNNING"},items:d.items}},N.value={...N.value,[d.taskId]:"RUNNING"},ce(),ie();const T=tt(d,u);G.value=JSON.stringify(T,null,2);const O=await e.enqueue_json(T);if(!O?.success){l+=1,p.value="任务 "+d.taskId+" 推送失败,已自动继续下一条:"+(O?.error||"未知错误"),r.error(p.value),V([u]);continue}if(we(d.taskId),Z(!0),V([u]),p.value="任务 "+d.taskId+" 已入队,等待执行完成",await st(d.taskId)!=="SUCCESS"){l+=1,p.value="任务 "+d.taskId+" 执行失败,已自动继续下一条",r.error(p.value);continue}s+=1,p.value="任务 "+d.taskId+" 已完成"}catch(a){if(b)break;l+=1,p.value="第 "+o+" 条任务处理失败,已自动继续下一条:"+(a instanceof Error?a.message:"未知错误"),r.error(p.value),V([u]);continue}}(s>0||l>0)&&r.success("店铺任务推送已完成:成功 "+s+" 条,失败 "+l+" 条")}catch(o){if(b)return;p.value=o instanceof Error?o.message:"推送异常",r.error(p.value)}finally{Se.value=!1,j.value=!1}}function de(e){k.value=e,m.value=e?.id??null,Y()}function ve(){if(!k.value)return;const e=k.value.status||"";(e==="SUCCESS"||e==="FAILED"||e==="STOPPED")&&(k.value=null,m.value=null,Y())}async function $e(){if(!m.value)return null;try{const e=await gs(m.value);return de(e),ve(),k.value}catch(e){const t=(e instanceof Error?e.message:String(e||"")).toLowerCase();return["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(l=>t.includes(l.toLowerCase()))?k.value:(k.value=null,m.value=null,Y(),null)}}function Vt(e){_.value={..._.value,[e.taskId]:{task:{id:e.taskId,status:"RUNNING"},items:e.items}},N.value={...N.value,[e.taskId]:"RUNNING"},ce(),ie()}async function Wt(){if(!(!m.value||ae.value)){ae.value=!0;try{const e=await ws(m.value);de(e),ve(),r.success(e.status==="STOPPED"?"循环已停止":"已请求停止,当前子任务完成后将收尾")}catch(e){r.error(e instanceof Error?e.message:"停止循环失败")}finally{ae.value=!1}}}async function Fe(e){if(b||Te.value||(e&&m.value!==e&&(m.value=e,Y()),!m.value))return;const t=te();if(!t?.enqueue_json)throw new Error("当前环境未启用 pywebview enqueue_json");Te.value=!0;try{for(;!b&&m.value;){const s=await $e();if(!s||s.status==="SUCCESS"||s.status==="FAILED"||s.status==="STOPPED")break;if(s.activeTaskId){const h=s.activeTaskId;we(h),Z(!0);const M=await st(h);let E=0;const P=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await _s(s.id,h)}catch(H){const Xt=(H instanceof Error?H.message:String(H||"")).toLowerCase(),Yt=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(Zt=>Xt.includes(Zt.toLowerCase()));if(E+=1,!Yt||E>=10)throw H;p.value=`循环任务 ${s.id} 等待后端恢复后确认子任务完成(${E}/10)...`,await X(B())}}})();if(de(P),await F(),await D(),U(),ve(),M!=="SUCCESS")throw new Error(P.errorMessage||`任务 ${s.activeTaskId} 执行失败`);continue}let l=0;const o=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await bs(s.id)}catch(h){const M=(h instanceof Error?h.message:String(h||"")).toLowerCase(),E=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(P=>M.includes(P.toLowerCase()));if(l+=1,!E||l>=10)throw h;p.value=`循环任务 ${s.id} 等待后端恢复后继续派发(${l}/10)...`,await X(B())}}})();if(de(o.loopRun||s),!o.childTaskRequest){ve();break}const u=o.childTaskRequest,a=u.items?.[0];if(!a)throw new Error("循环任务缺少待执行店铺");let d=0;const T=await(async()=>{for(;;){if(b)throw new Error("component disposed");try{return await ft(u)}catch(h){const M=(h instanceof Error?h.message:String(h||"")).toLowerCase(),E=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"].some(P=>M.includes(P.toLowerCase()));if(d+=1,!E||d>=10)throw h;p.value=`循环任务 ${s.id} 等待后端恢复后重试创建子任务(${d}/10)...`,await X(B())}}})();Vt(T);const O=tt(T,a);G.value=JSON.stringify(O,null,2);const ee=await t.enqueue_json(O);if(!ee?.success)throw new Error(ee?.error||`任务 ${T.taskId} 推送失败`);we(T.taskId),Z(!0),V([a]),p.value=`循环任务 ${s.id} 第 ${o.childTaskRequest.roundIndex||1} 轮已推送:${a.shopName||T.taskId}`}}finally{Te.value=!1}}async function Ht(){if(Ee.value){try{await Fe(m.value||void 0)}catch(t){t instanceof Error&&/子任务不存在|循环任务不存在|404/.test(t.message)&&(k.value=null,m.value=null,Y());const s=t instanceof Error?t.message:"循环执行失败";p.value=s,r.error(s)}return}if(!Ne.value){r.warning("请至少选择一个跟价模式");return}if(S.value&&!R.value.length){r.warning("请先选择 ASIN 文件");return}const e=I.value.filter(t=>t.matched);if(!e.length){r.warning("请先匹配可用店铺");return}j.value=!0,G.value="";try{const t=await Is({userId:0,statusMode:A.value,asinMode:S.value,items:e,asinFiles:xe(),countryCodes:ge(),executionMode:J.value,targetRounds:J.value==="FINITE"?Math.max(1,Number(ye.value)||1):void 0});de(t),p.value=`循环任务 ${t.id} 已创建`,await Fe(t.id),ve(),m.value||r.success("跟价循环已启动")}catch(t){const s=t instanceof Error?t.message:"启动循环失败";p.value=s,r.error(s)}finally{j.value=!1}}function B(){return Ss()}async function zt(){const e=w.value.filter(t=>t>0);if(e.length)try{const t=await pt(e);let s=!1;const l={..._.value};for(const o of t.missingTaskIds||[])W(o),delete l[o];for(const o of t.items||[]){const u=o.task?.id,a=o.task?.status;if(typeof u!="number"||u<=0)continue;const d=l[u];l[u]=d?{...d,task:{...d.task||{},...o.task||{}}}:o,a&&(N.value[u]=a,(a==="SUCCESS"||a==="FAILED")&&(W(u),s=!0))}_.value=l,ce(),ie(),await F(),U(),s&&await D()}catch{}}function Z(e=!1){if(b)return;if(L.value){if(!e)return;x.clearTimer("task-poll",L.value),L.value=null}const t=async()=>{if(L.value=null,!b){if(Ae.value){Z();return}if(w.value.length){Ae.value=!0;try{await zt()}finally{Ae.value=!1}!b&&w.value.length>0&&(L.value=x.setTimeout("task-poll",t,B()))}}};e?t():L.value=x.setTimeout("task-poll",t,B())}function Gt(){L.value&&(x.clearTimer("task-poll",L.value),L.value=null)}function we(e){w.value.includes(e)||(w.value=[...w.value,e],Ge())}function W(e){if(w.value=w.value.filter(t=>t!==e),Ge(),delete N.value[e],ie(),_.value[e]){const t={..._.value};delete t[e],_.value=t,ce()}}const Ue=q(()=>{const e=K.value.filter(s=>s.taskId&&w.value.includes(s.taskId)&&!nt(s.taskId)),t=new Set(e.map(s=>s.taskId).filter(s=>typeof s=="number"));for(const s of w.value){if(t.has(s))continue;const l=_.value[s]?.items?.[0];l&&e.push(l)}return e}),Be=q(()=>K.value.filter(e=>!e.taskId||!w.value.includes(e.taskId)||nt(e.taskId))),Qt=q(()=>Ue.value.length>0||Be.value.length>0);function at(e){return e&&(N.value[e]||_.value[e]?.task?.status)||""}function nt(e){const t=at(e);return t==="SUCCESS"||t==="FAILED"}function Oe(e){const t=e.taskId;return t?at(t)||e.taskStatus||"":e.taskStatus||""}function ot(e){const t=Oe(e);return t==="SUCCESS"?"已完成":t==="FAILED"?"失败":t==="RUNNING"?"执行中":e.success?"已完成":"等待中"}function lt(e){const t=Oe(e);return t==="SUCCESS"||e.success?"success":t==="FAILED"?"failed":"running"}function rt(e){return!e.resultId||!e.fileReady&&!e.downloadUrl?!1:Oe(e)==="SUCCESS"||e.success===!0}async function ut(e){if(!e.resultId)return;const t=te(),s=e.outputFilename||`${e.shopName||"result"}.xlsx`;if(!t?.save_file_from_url_new){r.error("当前客户端未提供 save_file_from_url_new,无法下载文件");return}const l=Cs(e.resultId),o=await t.save_file_from_url_new(l,s);o.success?r.success(`已保存:${o.path||s}`):o.error&&o.error!=="用户取消"&&r.error(o.error)}async function it(e){try{e.resultId!=null?await Ts(e.resultId):e.taskId!=null&&await Ns(e.taskId),k.value&&(e.loopRunId!=null&&e.loopRunId===k.value.id||e.taskId!=null&&e.taskId===k.value.activeTaskId)&&await $e(),e.taskId!=null&&W(e.taskId),V([e]),await F(),await D(),U(),r.success("已删除")}catch(t){if(et(t)){e.taskId!=null&&W(e.taskId),V([e]),qt(e),await D(),U(),r.success("后端记录已不存在,已同步移除本地记录");return}r.error(t instanceof Error?t.message:"删除失败")}}return ts(()=>{!A.value&&!S.value&&Le("status"),kt(),gt(),wt(),_t(),bt(),De().catch(()=>{}),Lt().catch(()=>{}),F().catch(()=>{}),D().catch(()=>{}),w.value.length&&Z(!0),m.value&&$e().then(e=>{e?.activeTaskId&&(we(e.activeTaskId),Z(!0)),e&&e.status!=="SUCCESS"&&e.status!=="FAILED"&&e.status!=="STOPPED"&&Fe(e.id)}).catch(()=>{m.value=null,Y()})}),ss(()=>{b=!0,Gt(),yt(),x.clearScope(),Q&&x.clearTimer("preference-save",Q)}),(e,t)=>{const s=ns,l=ls,o=rs,u=us;return i(),c("div",Ls,[C(as,{active:"pricing"}),n("div",Ds,[n("aside",Ms,[t[27]||(t[27]=n("div",{class:"section-title"},"跟价模式",-1)),n("div",$s,[n("label",Fs,[n("input",{type:"radio",name:"price-track-mode",class:"mode-check-input",checked:A.value,onChange:t[0]||(t[0]=a=>Le("status"))},null,40,Us),t[7]||(t[7]=n("span",{class:"mode-check-text"},"按商品状态(全量)",-1)),t[8]||(t[8]=n("span",{class:"mode-hint-inline"},"— 获取店铺所有在售ASIN跑跟价",-1))]),n("label",Bs,[n("input",{type:"radio",name:"price-track-mode",class:"mode-check-input",checked:S.value,onChange:t[1]||(t[1]=a=>Le("asin"))},null,40,Os),t[9]||(t[9]=n("span",{class:"mode-check-text"},"按指定ASIN文档(自定义)",-1)),t[10]||(t[10]=n("span",{class:"mode-hint-inline"},"— 上传ASIN表格,按文档内ASIN跑跟价",-1))])]),t[28]||(t[28]=n("div",{class:"section-title"},"执行配置",-1)),n("div",qs,[n("label",js,[ct(n("input",{"onUpdate:modelValue":t[2]||(t[2]=a=>J.value=a),type:"radio",class:"mode-check-input",value:"FINITE"},null,512),[[dt,J.value]]),t[11]||(t[11]=n("span",{class:"mode-check-text"},"执行固定轮次",-1)),t[12]||(t[12]=n("span",{class:"mode-hint-inline"},"按整批店铺重复执行指定次数",-1))]),n("label",Js,[ct(n("input",{"onUpdate:modelValue":t[3]||(t[3]=a=>J.value=a),type:"radio",class:"mode-check-input",value:"INFINITE"},null,512),[[dt,J.value]]),t[13]||(t[13]=n("span",{class:"mode-check-text"},"无限执行",-1)),t[14]||(t[14]=n("span",{class:"mode-hint-inline"},"上一轮全部成功后立即开始下一轮",-1))]),J.value==="FINITE"?(i(),c("div",Ks,[t[15]||(t[15]=n("span",{class:"hint"},"轮次",-1)),C(s,{modelValue:ye.value,"onUpdate:modelValue":t[4]||(t[4]=a=>ye.value=a),min:1,max:9999,disabled:Ee.value||j.value},null,8,["modelValue","disabled"])])):y("",!0)]),S.value?(i(),c($,{key:0},[t[17]||(t[17]=n("div",{class:"section-title"},[fe("ASIN文档 "),n("span",{class:"tag-badge"},"自定义模式")],-1)),n("div",Vs,[t[16]||(t[16]=n("div",{class:"hint"},"上传包含ASIN的表格文件,按文档内的ASIN进行跟价。",-1)),n("div",{class:"btns"},[n("button",{type:"button",class:"opt-btn",onClick:It},"选择ASIN文件"),n("button",{type:"button",class:"opt-btn",onClick:St},"选择文件夹")]),n("div",Ws,[R.value.length?(i(!0),c($,{key:0},pe(R.value,(a,d)=>(i(),c("span",{key:d},v(a),1))),128)):(i(),c("span",Hs,"暂未选择"))])])],64)):y("",!0),A.value?(i(),c($,{key:1},[t[19]||(t[19]=n("div",{class:"section-title"},"店铺名称",-1)),n("div",zs,[t[18]||(t[18]=n("div",{class:"hint"},"输入店铺名后点「确认」加入下方备选区。可同时配合上方模式使用。",-1)),n("div",Gs,[C(l,{modelValue:se.value,"onUpdate:modelValue":t[5]||(t[5]=a=>se.value=a),clearable:"",placeholder:"请输入店铺名称",onKeyup:os(Ze,["enter"])},null,8,["modelValue"]),n("button",{type:"button",class:"opt-btn",disabled:me.value,onClick:Ze},v(me.value?"保存中…":"确认"),9,Qs)])]),t[20]||(t[20]=n("div",{class:"section-title"},"备选店铺",-1)),Ie.value.length?(i(),c("div",Ys,[C(u,{data:Ie.value,"row-key":"id",height:"160",class:"candidate-table",onSelectionChange:Dt},{default:z(()=>[C(o,{type:"selection",width:"42"}),C(o,{prop:"shopName",label:"店铺名","min-width":"120","show-overflow-tooltip":""}),C(o,{label:"操作",width:"72",align:"center"},{default:z(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:d=>Mt(a)},"删除",8,Zs)]),_:1})]),_:1},8,["data"])])):(i(),c("div",Xs,"暂无备选店铺,请先输入并确认"))],64)):y("",!0),S.value?y("",!0):(i(),c($,{key:2},[t[23]||(t[23]=n("div",{class:"section-title"},"处理国家与顺序",-1)),t[24]||(t[24]=n("p",{class:"hint country-pref-hint"}," 勾选需要处理的站点;拖拽调整顺序。设置会按当前登录用户保存。 ",-1)),n("div",ea,[(i(!0),c($,null,pe(Ct.value,a=>(i(),c("label",{key:a.code,class:"country-check-row"},[n("input",{type:"checkbox",class:"country-check-input",checked:Tt(a.code),disabled:Xe(a.code),onChange:d=>Nt(a.code,d)},null,40,ta),n("span",sa,v(a.label)+"("+v(a.code)+")",1)]))),128))]),g.value.length?(i(),c("div",aa,[t[22]||(t[22]=n("div",{class:"country-order-caption"},"已选顺序(拖拽 ⋮⋮ 调整)",-1)),n("div",na,[(i(!0),c($,null,pe(g.value,(a,d)=>(i(),c("div",{key:a,class:_e(["country-drag-row",{dragging:oe.value===d}]),draggable:"true",onDragstart:T=>Pt(d),onDragend:At,onDragover:t[6]||(t[6]=vt(()=>{},["prevent"])),onDrop:vt(T=>Rt(d),["prevent"])},[t[21]||(t[21]=n("span",{class:"drag-handle",title:"拖动排序"},"⋮⋮",-1)),n("span",la,v(Qe(a))+"("+v(a)+")",1)],42,oa))),128))])])):y("",!0),Pe.value?(i(),c("div",ra,"保存中…")):y("",!0)],64)),A.value?(i(),c("div",ua,[...t[25]||(t[25]=[n("span",{class:"mode-status-dot active"},null,-1),n("span",{class:"mode-status-text"},"商品状态模式:将在售(Active)ASIN纳入跟价,跳过ASIN由后台配置的店铺维度数据提供",-1)])])):y("",!0),n("div",ia,[n("button",{type:"button",class:"btn-run",disabled:he.value,onClick:Ft},v(he.value?"匹配中…":"匹配店铺"),9,ca),n("button",{type:"button",class:"btn-run btn-queue",disabled:j.value||!Ne.value,onClick:Ht},v(j.value?"推送中…":"推送到 Python 队列"),9,da)]),t[29]||(t[29]=n("p",{class:"loading-msg"},[fe("上传ASIN文档和多选店铺"),n("strong",null,"可同时生效"),fe(",跟价结果合并输出。全量和自定义的区别仅在于ASIN来源不同。")],-1)),k.value?(i(),c("div",va,[n("div",fa,"循环任务 ID:"+v(k.value.id),1),n("div",pa,"状态:"+v(k.value.status||"-"),1),n("div",ma,"进度:"+v(ht.value),1),n("div",ha,"当前店铺:"+v((k.value.currentShopIndex||0)+1)+"/"+v(k.value.totalShopCount||0),1),k.value.errorMessage?(i(),c("div",ya,v(k.value.errorMessage),1)):y("",!0),n("button",{type:"button",class:"opt-btn loop-stop-btn",disabled:!Ee.value||ae.value,onClick:Wt},v(ae.value?"停止中...":"停止循环"),9,ka)])):y("",!0),p.value?(i(),c("div",ga,[t[26]||(t[26]=n("div",{class:"section-title queue-debug-title"},"推送结果",-1)),n("div",wa,v(p.value),1),G.value?(i(),c("pre",_a,v(G.value),1)):y("",!0)])):y("",!0)]),n("section",ba,[t[38]||(t[38]=n("div",{class:"panel-header"},"匹配与任务",-1)),n("div",Ia,[n("div",Sa,[n("div",Ca,[t[30]||(t[30]=n("span",{class:"summary-label"},"备选店铺数",-1)),n("strong",null,v(le.value.candidateCount),1)]),n("div",Ta,[t[31]||(t[31]=n("span",{class:"summary-label"},"已结束任务",-1)),n("strong",null,v(le.value.processedTaskCount),1)]),n("div",Na,[t[32]||(t[32]=n("span",{class:"summary-label"},"成功任务",-1)),n("strong",null,v(le.value.successTaskCount),1)]),n("div",Ea,[t[33]||(t[33]=n("span",{class:"summary-label"},"失败任务",-1)),n("strong",null,v(le.value.failedTaskCount),1)])]),t[37]||(t[37]=n("div",{class:"subsection-title"},"匹配结果",-1)),I.value.length?(i(),is(u,{key:1,data:I.value,"row-key":Me,"highlight-current-row":!1,class:"result-table match-table"},{default:z(()=>[C(o,{prop:"shopName",label:"店铺名","min-width":"100"}),C(o,{label:"匹配",width:"72",align:"center"},{default:z(({row:a})=>[n("span",{class:_e(a.matched?"ok":"fail")},v(a.matched?"是":"否"),3)]),_:1}),C(o,{prop:"shopId",label:"店铺ID","min-width":"120","show-overflow-tooltip":""}),C(o,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),C(o,{prop:"companyName",label:"公司","min-width":"100","show-overflow-tooltip":""}),C(o,{label:"状态",width:"100","show-overflow-tooltip":""},{default:z(({row:a})=>[fe(v(Ut(a.matchStatus)),1)]),_:1}),C(o,{label:"说明","min-width":"140","show-overflow-tooltip":""},{default:z(({row:a})=>[fe(v(Bt(a)),1)]),_:1}),C(o,{label:"操作",width:"72",align:"center"},{default:z(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:d=>jt(a)},"删除",8,Aa)]),_:1})]),_:1},8,["data"])):(i(),c("div",Pa,"完成「匹配店铺」后,在此展示紫鸟索引匹配结果,供核对后再推送队列。")),n("div",Ra,[t[36]||(t[36]=n("div",{class:"result-list-header"},[n("span",null,"处理记录")],-1)),Qt.value?(i(),c($,{key:1},[Ue.value.length?(i(),c("div",La,[t[34]||(t[34]=n("div",{class:"result-subsection-title"},"当前任务",-1)),n("ul",Da,[(i(!0),c($,null,pe(Ue.value,a=>(i(),c("li",{key:`cur-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",Ma,[a.roundIndex?(i(),c("div",$a,"轮次:第 "+v(a.roundIndex)+" 轮",1)):y("",!0),n("span",{class:"id",title:a.shopName||""},v(a.shopName||"-"),9,Fa),n("div",Ua,"任务 ID:"+v(a.taskId??"-"),1),a.platform?(i(),c("div",Ba,"平台:"+v(a.platform),1)):y("",!0),a.error?(i(),c("div",Oa,"错误:"+v(a.error),1)):y("",!0)]),n("div",qa,[n("span",{class:_e(["status",lt(a)])},v(ot(a)),3),rt(a)?(i(),c("button",{key:0,type:"button",class:"download",onClick:d=>ut(a)}," 下载 ",8,ja)):y("",!0),n("button",{type:"button",class:"btn-delete",onClick:d=>it(a)},"删除",8,Ja)])]))),128))])])):y("",!0),Be.value.length?(i(),c("div",Ka,[t[35]||(t[35]=n("div",{class:"result-subsection-title"},"历史记录",-1)),n("ul",Va,[(i(!0),c($,null,pe(Be.value,a=>(i(),c("li",{key:`his-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",Wa,[a.roundIndex?(i(),c("div",Ha,"轮次:第 "+v(a.roundIndex)+" 轮",1)):y("",!0),n("span",{class:"id",title:a.shopName||""},v(a.shopName||"-"),9,za),n("div",Ga,"任务 ID:"+v(a.taskId??"-"),1),a.outputFilename?(i(),c("div",Qa,"文件:"+v(a.outputFilename),1)):y("",!0),a.error?(i(),c("div",Xa,"错误:"+v(a.error),1)):y("",!0)]),n("div",Ya,[n("span",{class:_e(["status",lt(a)])},v(ot(a)),3),rt(a)?(i(),c("button",{key:0,type:"button",class:"download",onClick:d=>ut(a)}," 下载 ",8,Za)):y("",!0),n("button",{type:"button",class:"btn-delete",onClick:d=>it(a)},"删除",8,en)])]))),128))])])):y("",!0)],64)):(i(),c("div",xa,"暂无处理记录。推送队列并等待 Python 回传后,将在此显示下载链接。"))])])])])])}}}),sn=Es(tn,[["__scopeId","data-v-08a3fd7b"]]);Ps(sn).use(As).mount("#app"); diff --git a/app/assets/product-risk.js b/app/assets/product-risk.js index b01aa17..51fc729 100644 --- a/app/assets/product-risk.js +++ b/app/assets/product-risk.js @@ -1 +1 @@ -import{d as mt,o as wt,L as _t,a as c,c as d,b as m,B as bt,e as n,ak as St,al as Ct,t as f,a4 as E,am as It,an as Tt,x as M,F as O,r as H,ao as Ae,n as Z,f as _,ap as Et,a5 as Be,aq as Pt,ar as Nt,g as v,h as ee,E as u,as as Rt,at as Dt,au as $t,av as Ft,aw as Mt,ax as Ot,ay as Ut,az as Lt,aA as xe,aB as qt,aC as At,aD as Bt,i as fe,aE as xt,aF as jt,U as Vt,_ as Kt,q as Jt,s as Ht}from"./pywebview-ZMN052YE.js";/* empty css */import{L as Qt}from"./listingFilters-BpGOU_pJ.js";/* empty css */import{c as zt}from"./categorized-timers-JPA-olTr.js";const Gt={class:"page-shell module-page"},Wt={class:"main-content"},Xt={class:"left-panel"},Yt={class:"input-zone"},Zt={class:"input-row"},es=["disabled"],ts={key:0,class:"empty-candidates"},ss={key:1,class:"candidate-table-scroll"},as=["onClick"],ns={class:"country-pref-checks"},os=["checked","disabled","onChange"],ls={class:"country-check-text"},rs={key:2,class:"country-order-panel"},us={class:"country-order-list"},is=["onDragstart","onDrop"],cs={class:"country-drag-label"},ds={key:3,class:"country-pref-status"},fs={class:"listing-filter-row"},vs={class:"run-row"},ps=["disabled"],hs=["disabled"],ys={key:4,class:"queue-debug-card"},ks={class:"queue-debug-line"},gs={key:0,class:"queue-debug-payload"},ms={class:"right-panel"},ws={class:"task-list-wrap"},_s={class:"clean-result-summary pr-summary"},bs={class:"summary-card"},Ss={class:"summary-card"},Cs={class:"summary-card"},Is={class:"summary-card"},Ts={key:0,class:"empty-tasks narrow"},Es=["onClick"],Ps={class:"result-list-wrap"},Ns={key:0,class:"empty-tasks"},Rs={key:0,class:"result-subsection"},Ds={class:"task-list clean-result-list"},$s={class:"left split-result-main"},Fs=["title"],Ms={class:"files"},Os={key:0,class:"files"},Us={key:1,class:"files"},Ls={class:"task-right split-result-actions"},qs=["onClick"],As=["onClick"],Bs={key:1,class:"result-subsection"},xs={class:"task-list clean-result-list"},js={class:"left split-result-main"},Vs=["title"],Ks={class:"files"},Js={key:0,class:"files"},Hs={key:1,class:"files"},Qs={class:"task-right split-result-actions"},zs=["onClick"],Gs=["onClick"],Ws=mt({__name:"BrandProductRiskTab",setup(Ys){const U=v(""),te=v([]),ve=v([]),p=v([]),Q=v(!1),z=v(!1),G=v(!1),se=v(!1),pe=v(!1),y=v(""),L=v(""),he=[{code:"DE",label:"德国"},{code:"UK",label:"英国"},{code:"FR",label:"法国"},{code:"IT",label:"意大利"},{code:"ES",label:"西班牙"}],h=v(["DE","UK","FR","IT","ES"]),D=v("SearchSuppressed"),q=v(null),ae=v(!1),ne=v(!1);let $=null;function ye(e){return he.find(s=>s.code===e)?.label??e}const je=ee(()=>{const e=h.value,t=new Set(e),s=e.map(o=>({code:o,label:ye(o)})),l=he.filter(o=>!t.has(o.code)).map(o=>({code:o.code,label:o.label}));return[...s,...l]});function Ve(e){return h.value.includes(e)}function ke(e){return h.value.length===1&&h.value[0]===e}function Ke(e,t){const s=t.target;if(s){if(!s.checked&&ke(e)){s.checked=!0,u.warning("至少保留 1 个国家");return}Je(e,s.checked)}}function Je(e,t){if(ne.value=!0,t)h.value.includes(e)||(h.value=[...h.value,e]);else{if(h.value.length<=1){u.warning("至少保留 1 个国家");return}h.value=h.value.filter(s=>s!==e)}ge()}function He(e){q.value=e}function Qe(){q.value=null}function ze(e){const t=q.value;if(q.value=null,t==null||t===e)return;ne.value=!0;const s=[...h.value],[l]=s.splice(t,1);s.splice(e,0,l),h.value=s,ge()}function ge(){$&&C.clearTimer("preference-save",$),$=C.setTimeout("preference-save",()=>{$=null,Ge()},450)}async function Ge(){if(!(h.value.length<1)){ae.value=!0;try{await Rt(h.value)}catch(e){u.error(e instanceof Error?e.message:"保存国家顺序失败")}finally{ae.value=!1}}}async function We(){try{const e=await Dt();if(ne.value)return;e?.country_codes?.length&&(h.value=[...e.country_codes])}catch{}}const A=v({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),P=v([]),k=v([]),N=v({}),g=v({}),S=v(null),oe=v(!1);let b=!1;const C=zt("product-risk");function W(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function me(){return`product-risk:tasks:${W()}`}function we(){return`product-risk:task-status:${W()}`}function _e(){return`product-risk:tasks-batch-snapshot:${W()}`}function be(){return`product-risk:matched-items:${W()}`}function X(e,t,s){if(!(typeof window>"u"))try{s?window.localStorage.removeItem(e):window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function Xe(){try{const e=typeof window<"u"?window.localStorage.getItem(we()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const r=Number(l);r>0&&typeof o=="string"&&(s[r]=o)}N.value=s}catch{}}function le(){X(we(),N.value,Object.keys(N.value).length===0)}function Ye(){try{const e=typeof window<"u"?window.localStorage.getItem(_e()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const r=Number(l);r>0&&o&&typeof o=="object"&&(s[r]=o)}g.value=s}catch{}}function B(){X(_e(),g.value,Object.keys(g.value).length===0)}function Ze(){try{const e=typeof window<"u"?window.localStorage.getItem(be()):null;if(!e)return;const t=JSON.parse(e);Array.isArray(t)&&(p.value=t)}catch{}}function x(){X(be(),p.value,p.value.length===0)}function j(e){const t=(e.shopName||"").trim(),s=e.shopId??"";return`${t}${s}`}function Se(e){const t=e instanceof Error?e.message:String(e||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(t)}function F(e){if(!e.length)return;const t=new Set(e.map(s=>j(s)));p.value=p.value.filter(s=>!t.has(j(s))),x()}function et(e){P.value=P.value.filter(t=>!(e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId))}async function tt(e){const t=j(e),s=[...p.value];p.value=p.value.filter(o=>j(o)!==t),x();const l=(e.shopName||"").trim();if(!l){u.success("已从匹配结果中移除");return}try{(await $t(l))?.removed&&(await T(),await I(),V()),u.success("已从匹配结果中移除")}catch(o){if(Se(o)){await T(),await I(),V(),u.success("后端记录已不存在,已同步移除本地记录");return}p.value=s,x(),u.error(o instanceof Error?o.message:"同步后端失败")}}function V(){for(const e of[...k.value])P.value.some(s=>s.taskId===e)||R(e)}async function Ce(e){try{if(e.resultId!=null&&e.resultId>0)await Ft(e.resultId);else if(e.taskId!=null&&e.taskId>0)await Mt(e.taskId);else{u.warning("无法删除:缺少记录标识");return}e.taskId!=null&&e.taskId>0&&R(e.taskId),F([e]),await T(),await I(),V(),u.success("已删除")}catch(t){if(Se(t)){e.taskId!=null&&e.taskId>0&&R(e.taskId),F([e]),et(e),await I(),V(),u.success("后端记录已不存在,已同步移除本地记录");return}u.error(t instanceof Error?t.message:"删除失败")}}function st(){try{const e=typeof window<"u"?window.localStorage.getItem(me()):null;if(!e){k.value=[];return}const t=JSON.parse(e);k.value=Array.isArray(t)?t.filter(s=>typeof s=="number"):[]}catch{k.value=[]}}function Ie(){X(me(),k.value,k.value.length===0)}function Te(e){k.value.includes(e)||(k.value=[...k.value,e],Ie())}function R(e){if(k.value=k.value.filter(t=>t!==e),Ie(),delete N.value[e],le(),g.value[e]){const t={...g.value};delete t[e],g.value=t,B()}}function at(e){ve.value=e||[]}async function I(){try{A.value=await Ot()}catch{}}async function re(){try{te.value=await Ut(),await I()}catch(e){u.error(e instanceof Error?e.message:"加载备选失败")}}async function T(){try{P.value=(await Lt()).items||[]}catch{P.value=[]}}function Ee(e){return e&&N.value[e]||""}function Pe(e){const t=Ee(e);return t==="SUCCESS"||t==="FAILED"}const ue=ee(()=>{const e=P.value.filter(s=>s.taskId&&k.value.includes(s.taskId)&&!Pe(s.taskId)),t=new Set(e.map(s=>s.taskId).filter(s=>typeof s=="number"));for(const s of k.value){if(t.has(s))continue;const r=(g.value[s]?.items||[])[0];r&&e.push(r)}return e}),ie=ee(()=>P.value.filter(e=>!e.taskId||!k.value.includes(e.taskId)||Pe(e.taskId))),nt=ee(()=>ue.value.length>0||ie.value.length>0),ot=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"];function ce(e){return b?Promise.resolve():C.sleep("queue-wait",e)}function lt(){C.clearCategory("queue-wait")}function Ne(e){const t=(e instanceof Error?e.message:String(e||"")).toLowerCase();return ot.some(s=>t.includes(s.toLowerCase()))}async function Re(e,t=10){let s=0;for(;;){if(b)throw new Error("component disposed");try{return await jt(e)}catch(l){if(s+=1,!Ne(l)||s>=t)throw l;y.value=`后端服务暂时不可用,正在重试创建任务(${s}/${t})...`,await ce(K())}}}async function De(){const e=k.value.filter(t=>t>0);if(e.length)try{const t=await xe(e);let s=!1;const l={...g.value};for(const o of t.items||[]){const r=o.task?.id,i=o.task?.status;if(typeof r=="number"&&r>0){const a=l[r];l[r]=a?{...a,task:{...a.task||{},...o.task||{}}}:o,i&&(N.value[r]=i,(i==="SUCCESS"||i==="FAILED")&&(R(r),s=!0))}}g.value=l,B(),le(),s&&(await T(),await I())}catch{}}function K(){return Vt()}function $e(e=!1){if(S.value){if(!e)return;C.clearTimer("task-poll",S.value),S.value=null}const t=async()=>{if(S.value=null,!b){if(oe.value){$e();return}if(k.value.length){oe.value=!0;try{await De()}finally{oe.value=!1}!b&&k.value.length>0&&(S.value=C.setTimeout("task-poll",t,K()))}}};b||(e?t():S.value=C.setTimeout("task-poll",t,K()))}function J(e=!1){S.value&&!e||$e(e)}function rt(){S.value&&(C.clearTimer("task-poll",S.value),S.value=null)}async function Fe(e){let t=0;const s=30;for(;;){if(b)return"STOPPED";try{const l=await xe([e]);t>0&&(y.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),t=0;const o=(l.items||[]).find(i=>i.task?.id===e),r=o?.task?.status||"";if(o){const i=g.value[e];g.value={...g.value,[e]:i?{...i,task:{...i.task||{},...o.task||{}}}:o},B()}if(r&&(N.value[e]=r,le()),r==="SUCCESS"||r==="FAILED")return R(e),await T(),await I(),r}catch(l){if(!Ne(l))throw l;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后手动刷新查看状态`);y.value=`任务 ${e} 运行中,正在等待后端服务恢复(${t}/${s})...`,(t===1||t%5===0)&&u.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await ce(K());continue}await ce(K())}}async function Me(){const e=U.value.trim();if(!e){u.warning("请输入店铺名称");return}Q.value=!0;try{await qt(e),U.value="",await re(),u.success("已加入备选")}catch(t){u.error(t instanceof Error?t.message:"保存失败")}finally{Q.value=!1}}async function ut(e){try{await At(e.id),await re(),p.value=[],x(),u.success("已删除")}catch(t){u.error(t instanceof Error?t.message:"删除失败")}}function it(){const e=new Set,t=U.value.trim();t&&e.add(t);for(const s of ve.value)s?.shop_name?.trim()&&e.add(s.shop_name.trim());return[...e]}function ct(e,t){const s=new Map;for(const r of t){const i=(r.shopName||"").trim();i&&s.set(i,r)}const l=new Set,o=[];for(const r of e){const i=(r.shopName||"").trim();i&&s.has(i)?(o.push(s.get(i)),l.add(i)):o.push(r)}for(const r of t){const i=(r.shopName||"").trim();if(!i){o.push(r);continue}l.has(i)||(o.push(r),l.add(i))}return o}async function dt(){const e=it();if(!e.length){u.warning("请勾选备选店铺,或在输入框中填写店名(可与勾选合并)");return}z.value=!0;try{const s=(await Bt(e)).items||[];p.value=ct(p.value,s),x(),s.length?u.success(`本次匹配 ${s.length} 个店铺名,表格共 ${p.value.length} 条`):u.warning("未返回匹配结果")}catch(t){u.error(t instanceof Error?t.message:"匹配失败")}finally{z.value=!1}}function de(e){const t=e.taskId;return t?Ee(t)||e.taskStatus||"":e.taskStatus||""}function Oe(e){const t=de(e);return t==="SUCCESS"?"已完成":t==="FAILED"?"失败":t==="RUNNING"?"执行中":e.success?"已完成":"等待中"}function Ue(e){const t=de(e);return t==="SUCCESS"||e.success?"success":t==="FAILED"?"failed":"running"}function Le(e){return!e.resultId||!e.fileReady&&!e.downloadUrl?!1:de(e)==="SUCCESS"||e.success===!0}async function qe(e){if(!e.resultId)return;const t=fe(),s=xt(e.resultId),l=e.outputFilename||`${e.shopName||"result"}.zip`;if(!t?.save_file_from_url_new){u.error("当前客户端未提供 save_file_from_url_new,无法下载文件");return}const o=await t.save_file_from_url_new(s,l);o.success?u.success(`已保存:${o.path||l}`):o.error&&o.error!=="用户取消"&&u.error(o.error)}function ft(e){const t=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[t]||t||"—"}function vt(e){const t=(e.matchMessage||"").trim();return t||(e.matched&&e.matchStatus==="MATCHED"?"紫鸟索引已命中,可推送队列;打开店铺地址由 Python 侧处理":e.matched?"已关联索引,请结合状态列查看是否可推送":"未命中或未就绪,请检查店铺名与索引刷新")}async function pt(){pe.value=!0,await gt()}function ht(){return p.value.find(e=>e.matched)}function yt(){return D.value==="SearchSuppressed"||D.value==="DetailPageRemoved"}async function kt(e){const t=fe();if(!t?.enqueue_json){u.error("当前环境未启用 pywebview enqueue_json");return}const s=await Re(e),l=s.taskId;g.value={...g.value,[l]:{task:{id:l,status:"RUNNING"},items:s.items}},B(),Te(l),J(!0);const o={type:"product-risk-resolve-run",ts:Date.now(),data:{taskId:l,items:e,country_codes:[...h.value],risk_listing_filter:D.value}};L.value=JSON.stringify(o,null,2);const r=await t.enqueue_json(o);if(!r?.success)throw R(l),new Error("任务 "+l+" 推送失败:"+(r?.error||"未知错误"));F(e),y.value="任务 "+l+" 已入队,共 "+e.length+" 个店铺,等待执行完成...";const i=await Fe(l);if(y.value="任务 "+l+(i==="SUCCESS"?" 已完成":" 执行失败"),i!=="SUCCESS")throw new Error(y.value)}async function gt(){if(b||se.value)return;if(!p.value.length){u.warning("请先匹配店铺");return}const e=fe();if(!e?.enqueue_json){u.error("当前环境未启用 pywebview enqueue_json");return}const t=p.value.filter(o=>o.matched);if(!t.length){u.warning("没有已匹配的店铺可推送");return}se.value=!0,G.value=!0,L.value="";let s=0,l=0;try{if(yt()){await kt(t),u.success("店铺推送已完成:成功 "+t.length+" 条,失败 0 条"),await T(),J(!0);return}let o=0;for(;!b&&pe.value;){const r=ht();if(!r)break;o+=1;try{const i=await Re([r]),a=i.taskId;g.value={...g.value,[a]:{task:{id:a,status:"RUNNING"},items:i.items}},B(),Te(a),J(!0);const w={type:"product-risk-resolve-run",ts:Date.now(),data:{taskId:a,items:[r],country_codes:[...h.value],risk_listing_filter:D.value}};L.value=JSON.stringify(w,null,2);const Y=await e.enqueue_json(w);if(!Y?.success){R(a),l+=1,y.value="第 "+o+" 条推送失败:"+(Y?.error||"未知错误")+",已自动继续下一条",u.error(y.value),F([r]);continue}if(F([r]),y.value="任务 "+a+" 已入队,等待执行完成...",await Fe(a)!=="SUCCESS"){l+=1,y.value="任务 "+a+" 执行失败,已自动继续下一条",u.error(y.value);continue}s+=1,y.value="任务 "+a+" 已完成"}catch(i){if(b)break;l+=1,y.value="第 "+o+" 条任务处理失败,已自动继续下一条:"+(i instanceof Error?i.message:"未知错误"),u.error(y.value),F([r]);continue}}(s>0||l>0)&&u.success("店铺推送已完成:成功 "+s+" 条,失败 "+l+" 条"),await T(),J(!0)}catch(o){if(b)return;y.value=o instanceof Error?o.message:"推送异常",u.error(y.value)}finally{se.value=!1,G.value=!1}}return wt(()=>{st(),Xe(),Ye(),Ze(),re().catch(()=>{}),We().catch(()=>{}),T().then(()=>(V(),De())).catch(()=>{}),I().catch(()=>{}),k.value.length&&J(!0)}),_t(()=>{b=!0,rt(),lt(),C.clearScope(),$&&C.clearTimer("preference-save",$)}),(e,t)=>{const s=Ct,l=It,o=Tt,r=Pt,i=Nt;return c(),d("div",Gt,[m(bt,{active:"product-risk"}),n("div",Wt,[n("aside",Xt,[t[7]||(t[7]=n("div",{class:"section-title"},"店铺名称",-1)),n("div",Yt,[t[3]||(t[3]=n("div",{class:"hint"},"输入店铺名后点「确认」加入下方备选区(按当前登录用户保存)。仅索引可命中的店铺可入库。勾选备选后点「匹配店铺」,再「推送到 Python 队列」。",-1)),n("div",Zt,[m(s,{modelValue:U.value,"onUpdate:modelValue":t[0]||(t[0]=a=>U.value=a),clearable:"",placeholder:"请输入店铺名称",onKeyup:St(Me,["enter"])},null,8,["modelValue"]),n("button",{type:"button",class:"opt-btn",disabled:Q.value,onClick:Me},f(Q.value?"保存中…":"确认"),9,es)])]),t[8]||(t[8]=n("div",{class:"section-title"},"备选区域",-1)),te.value.length?(c(),d("div",ss,[m(o,{data:te.value,"row-key":"id",height:"240",class:"candidate-table",onSelectionChange:at},{default:E(()=>[m(l,{type:"selection",width:"42"}),m(l,{prop:"shop_name",label:"店铺名","min-width":"120","show-overflow-tooltip":""}),m(l,{label:"操作",width:"72",align:"center"},{default:E(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:w=>ut(a)},"删除",8,as)]),_:1})]),_:1},8,["data"])])):(c(),d("div",ts,"暂无备选店铺,请先输入并确认")),t[9]||(t[9]=n("div",{class:"section-title"},"处理国家与顺序",-1)),t[10]||(t[10]=n("p",{class:"hint country-pref-hint"},[M(" 勾选需要处理的站点(可只选 2~3 国);上方勾选区"),n("strong",null,"先按已选顺序"),M("排列,其余未选国家排在后面。拖拽下方列表调整顺序后会与上方同步。设置会按当前登录用户保存。 ")],-1)),n("div",ns,[(c(!0),d(O,null,H(je.value,a=>(c(),d("label",{key:a.code,class:"country-check-row"},[n("input",{type:"checkbox",class:"country-check-input",checked:Ve(a.code),disabled:ke(a.code),onChange:w=>Ke(a.code,w)},null,40,os),n("span",ls,f(a.label)+"("+f(a.code)+")",1)]))),128))]),h.value.length?(c(),d("div",rs,[t[5]||(t[5]=n("div",{class:"country-order-caption"},"已选顺序(拖拽 ⋮⋮ 调整)",-1)),n("div",us,[(c(!0),d(O,null,H(h.value,(a,w)=>(c(),d("div",{key:a,class:Z(["country-drag-row",{dragging:q.value===w}]),draggable:"true",onDragstart:Y=>He(w),onDragend:Qe,onDragover:t[1]||(t[1]=Ae(()=>{},["prevent"])),onDrop:Ae(Y=>ze(w),["prevent"])},[t[4]||(t[4]=n("span",{class:"drag-handle",title:"拖动排序"},"⋮⋮",-1)),n("span",cs,f(ye(a))+"("+f(a)+")",1)],42,is))),128))])])):_("",!0),ae.value?(c(),d("div",ds,"保存中…")):_("",!0),t[11]||(t[11]=n("div",{class:"section-title"},"商品列表筛选",-1)),t[12]||(t[12]=n("p",{class:"hint listing-filter-hint"},"与「推送到 Python 队列」一并下发,供 Python 区分处理场景。",-1)),n("div",fs,[m(i,{modelValue:D.value,"onUpdate:modelValue":t[2]||(t[2]=a=>D.value=a),class:"listing-filter-select",teleported:"",placeholder:"选择筛选类型"},{default:E(()=>[(c(!0),d(O,null,H(Et(Qt),a=>(c(),Be(r,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),n("div",vs,[n("button",{type:"button",class:"btn-run",disabled:z.value,onClick:dt},f(z.value?"匹配中…":"匹配店铺"),9,ps),n("button",{type:"button",class:"btn-run btn-queue",disabled:G.value||!p.value.length,onClick:pt},f(G.value?"推送中…":"推送到 Python 队列"),9,hs)]),t[13]||(t[13]=n("p",{class:"loading-msg"},[M("在搜索结果中禁止显示、详情页面已删除会把匹配店铺合并为一个任务入队,避免同时打开多个紫鸟窗口;其它筛选仍按店铺逐条入队。Python 每处理完一店可 POST "),n("code",null,"/api/product-risk-resolve/tasks/{taskId}/result"),M("(可多次,每次可只含已完成的店铺);全部完成后任务结束。前端轮询任务状态。 ")],-1)),y.value?(c(),d("div",ys,[t[6]||(t[6]=n("div",{class:"section-title queue-debug-title"},"推送结果",-1)),n("div",ks,f(y.value),1),L.value?(c(),d("pre",gs,f(L.value),1)):_("",!0)])):_("",!0)]),n("section",ms,[t[22]||(t[22]=n("div",{class:"panel-header"},"匹配与任务",-1)),n("div",ws,[n("div",_s,[n("div",bs,[t[14]||(t[14]=n("span",{class:"summary-label"},"备选店铺数",-1)),n("strong",null,f(A.value.candidateCount),1)]),n("div",Ss,[t[15]||(t[15]=n("span",{class:"summary-label"},"已结束任务",-1)),n("strong",null,f(A.value.processedTaskCount),1)]),n("div",Cs,[t[16]||(t[16]=n("span",{class:"summary-label"},"成功任务",-1)),n("strong",null,f(A.value.successTaskCount),1)]),n("div",Is,[t[17]||(t[17]=n("span",{class:"summary-label"},"失败任务",-1)),n("strong",null,f(A.value.failedTaskCount),1)])]),t[21]||(t[21]=n("div",{class:"subsection-title"},"匹配结果",-1)),p.value.length?(c(),Be(o,{key:1,data:p.value,"row-key":j,"highlight-current-row":!1,class:"result-table match-table"},{default:E(()=>[m(l,{prop:"shopName",label:"店铺名","min-width":"100"}),m(l,{label:"匹配",width:"72",align:"center"},{default:E(({row:a})=>[n("span",{class:Z(a.matched?"ok":"fail")},f(a.matched?"是":"否"),3)]),_:1}),m(l,{prop:"shopId",label:"店铺ID","min-width":"120","show-overflow-tooltip":""}),m(l,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),m(l,{prop:"companyName",label:"公司","min-width":"100","show-overflow-tooltip":""}),m(l,{label:"状态",width:"100","show-overflow-tooltip":""},{default:E(({row:a})=>[M(f(ft(a.matchStatus)),1)]),_:1}),m(l,{label:"说明","min-width":"140","show-overflow-tooltip":""},{default:E(({row:a})=>[M(f(vt(a)),1)]),_:1}),m(l,{label:"操作",width:"72",align:"center"},{default:E(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:w=>tt(a)},"删除",8,Es)]),_:1})]),_:1},8,["data"])):(c(),d("div",Ts,"完成「匹配店铺」后,在此展示紫鸟索引匹配结果,供核对后再推送队列。")),n("div",Ps,[t[20]||(t[20]=n("div",{class:"result-list-header"},[n("span",null,"处理记录")],-1)),nt.value?(c(),d(O,{key:1},[ue.value.length?(c(),d("div",Rs,[t[18]||(t[18]=n("div",{class:"result-subsection-title"},"当前任务",-1)),n("ul",Ds,[(c(!0),d(O,null,H(ue.value,a=>(c(),d("li",{key:`cur-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",$s,[n("span",{class:"id",title:a.shopName||""},f(a.shopName||"-"),9,Fs),n("div",Ms,"任务 ID:"+f(a.taskId??"-"),1),a.platform?(c(),d("div",Os,"平台:"+f(a.platform),1)):_("",!0),a.error?(c(),d("div",Us,"错误:"+f(a.error),1)):_("",!0)]),n("div",Ls,[n("span",{class:Z(["status",Ue(a)])},f(Oe(a)),3),Le(a)?(c(),d("button",{key:0,type:"button",class:"download",onClick:w=>qe(a)}," 下载 ",8,qs)):_("",!0),n("button",{type:"button",class:"btn-delete",onClick:w=>Ce(a)},"删除",8,As)])]))),128))])])):_("",!0),ie.value.length?(c(),d("div",Bs,[t[19]||(t[19]=n("div",{class:"result-subsection-title"},"历史记录",-1)),n("ul",xs,[(c(!0),d(O,null,H(ie.value,a=>(c(),d("li",{key:`his-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",js,[n("span",{class:"id",title:a.shopName||""},f(a.shopName||"-"),9,Vs),n("div",Ks,"任务 ID:"+f(a.taskId??"-"),1),a.outputFilename?(c(),d("div",Js,"文件:"+f(a.outputFilename),1)):_("",!0),a.error?(c(),d("div",Hs,"错误:"+f(a.error),1)):_("",!0)]),n("div",Qs,[n("span",{class:Z(["status",Ue(a)])},f(Oe(a)),3),Le(a)?(c(),d("button",{key:0,type:"button",class:"download",onClick:w=>qe(a)}," 下载 ",8,zs)):_("",!0),n("button",{type:"button",class:"btn-delete",onClick:w=>Ce(a)},"删除",8,Gs)])]))),128))])])):_("",!0)],64)):(c(),d("div",Ns,"暂无处理记录。推送队列并等待 Python 回传后,将在此显示下载链接。"))])])])])])}}}),Xs=Kt(Ws,[["__scopeId","data-v-bde90137"]]);Jt(Xs).use(Ht).mount("#app"); +import{d as mt,o as wt,L as _t,a as c,c as d,b as m,B as bt,e as n,af as St,ag as Ct,t as f,ah as E,ai as It,aj as Tt,x as M,F as O,r as H,ak as Ae,n as Z,f as _,al as Et,am as Be,an as Pt,ao as Nt,g as v,h as ee,E as u,ap as Rt,aq as Dt,ar as $t,as as Ft,at as Mt,au as Ot,av as Ut,aw as Lt,ax as xe,ay as qt,az as At,aA as Bt,i as fe,aB as xt,aC as jt,U as Vt,_ as Kt,q as Jt,s as Ht}from"./pywebview-84Lhn3TI.js";/* empty css */import{L as Qt}from"./listingFilters-BpGOU_pJ.js";import{c as zt}from"./categorized-timers-JPA-olTr.js";const Gt={class:"page-shell module-page"},Wt={class:"main-content"},Xt={class:"left-panel"},Yt={class:"input-zone"},Zt={class:"input-row"},es=["disabled"],ts={key:0,class:"empty-candidates"},ss={key:1,class:"candidate-table-scroll"},as=["onClick"],ns={class:"country-pref-checks"},os=["checked","disabled","onChange"],ls={class:"country-check-text"},rs={key:2,class:"country-order-panel"},us={class:"country-order-list"},is=["onDragstart","onDrop"],cs={class:"country-drag-label"},ds={key:3,class:"country-pref-status"},fs={class:"listing-filter-row"},vs={class:"run-row"},ps=["disabled"],hs=["disabled"],ys={key:4,class:"queue-debug-card"},ks={class:"queue-debug-line"},gs={key:0,class:"queue-debug-payload"},ms={class:"right-panel"},ws={class:"task-list-wrap"},_s={class:"clean-result-summary pr-summary"},bs={class:"summary-card"},Ss={class:"summary-card"},Cs={class:"summary-card"},Is={class:"summary-card"},Ts={key:0,class:"empty-tasks narrow"},Es=["onClick"],Ps={class:"result-list-wrap"},Ns={key:0,class:"empty-tasks"},Rs={key:0,class:"result-subsection"},Ds={class:"task-list clean-result-list"},$s={class:"left split-result-main"},Fs=["title"],Ms={class:"files"},Os={key:0,class:"files"},Us={key:1,class:"files"},Ls={class:"task-right split-result-actions"},qs=["onClick"],As=["onClick"],Bs={key:1,class:"result-subsection"},xs={class:"task-list clean-result-list"},js={class:"left split-result-main"},Vs=["title"],Ks={class:"files"},Js={key:0,class:"files"},Hs={key:1,class:"files"},Qs={class:"task-right split-result-actions"},zs=["onClick"],Gs=["onClick"],Ws=mt({__name:"BrandProductRiskTab",setup(Ys){const U=v(""),te=v([]),ve=v([]),p=v([]),Q=v(!1),z=v(!1),G=v(!1),se=v(!1),pe=v(!1),y=v(""),L=v(""),he=[{code:"DE",label:"德国"},{code:"UK",label:"英国"},{code:"FR",label:"法国"},{code:"IT",label:"意大利"},{code:"ES",label:"西班牙"}],h=v(["DE","UK","FR","IT","ES"]),D=v("SearchSuppressed"),q=v(null),ae=v(!1),ne=v(!1);let $=null;function ye(e){return he.find(s=>s.code===e)?.label??e}const je=ee(()=>{const e=h.value,t=new Set(e),s=e.map(o=>({code:o,label:ye(o)})),l=he.filter(o=>!t.has(o.code)).map(o=>({code:o.code,label:o.label}));return[...s,...l]});function Ve(e){return h.value.includes(e)}function ke(e){return h.value.length===1&&h.value[0]===e}function Ke(e,t){const s=t.target;if(s){if(!s.checked&&ke(e)){s.checked=!0,u.warning("至少保留 1 个国家");return}Je(e,s.checked)}}function Je(e,t){if(ne.value=!0,t)h.value.includes(e)||(h.value=[...h.value,e]);else{if(h.value.length<=1){u.warning("至少保留 1 个国家");return}h.value=h.value.filter(s=>s!==e)}ge()}function He(e){q.value=e}function Qe(){q.value=null}function ze(e){const t=q.value;if(q.value=null,t==null||t===e)return;ne.value=!0;const s=[...h.value],[l]=s.splice(t,1);s.splice(e,0,l),h.value=s,ge()}function ge(){$&&C.clearTimer("preference-save",$),$=C.setTimeout("preference-save",()=>{$=null,Ge()},450)}async function Ge(){if(!(h.value.length<1)){ae.value=!0;try{await Rt(h.value)}catch(e){u.error(e instanceof Error?e.message:"保存国家顺序失败")}finally{ae.value=!1}}}async function We(){try{const e=await Dt();if(ne.value)return;e?.country_codes?.length&&(h.value=[...e.country_codes])}catch{}}const A=v({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),P=v([]),k=v([]),N=v({}),g=v({}),S=v(null),oe=v(!1);let b=!1;const C=zt("product-risk");function W(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function me(){return`product-risk:tasks:${W()}`}function we(){return`product-risk:task-status:${W()}`}function _e(){return`product-risk:tasks-batch-snapshot:${W()}`}function be(){return`product-risk:matched-items:${W()}`}function X(e,t,s){if(!(typeof window>"u"))try{s?window.localStorage.removeItem(e):window.localStorage.setItem(e,JSON.stringify(t))}catch{}}function Xe(){try{const e=typeof window<"u"?window.localStorage.getItem(we()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const r=Number(l);r>0&&typeof o=="string"&&(s[r]=o)}N.value=s}catch{}}function le(){X(we(),N.value,Object.keys(N.value).length===0)}function Ye(){try{const e=typeof window<"u"?window.localStorage.getItem(_e()):null;if(!e)return;const t=JSON.parse(e),s={};for(const[l,o]of Object.entries(t)){const r=Number(l);r>0&&o&&typeof o=="object"&&(s[r]=o)}g.value=s}catch{}}function B(){X(_e(),g.value,Object.keys(g.value).length===0)}function Ze(){try{const e=typeof window<"u"?window.localStorage.getItem(be()):null;if(!e)return;const t=JSON.parse(e);Array.isArray(t)&&(p.value=t)}catch{}}function x(){X(be(),p.value,p.value.length===0)}function j(e){const t=(e.shopName||"").trim(),s=e.shopId??"";return`${t}${s}`}function Se(e){const t=e instanceof Error?e.message:String(e||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(t)}function F(e){if(!e.length)return;const t=new Set(e.map(s=>j(s)));p.value=p.value.filter(s=>!t.has(j(s))),x()}function et(e){P.value=P.value.filter(t=>!(e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId))}async function tt(e){const t=j(e),s=[...p.value];p.value=p.value.filter(o=>j(o)!==t),x();const l=(e.shopName||"").trim();if(!l){u.success("已从匹配结果中移除");return}try{(await $t(l))?.removed&&(await T(),await I(),V()),u.success("已从匹配结果中移除")}catch(o){if(Se(o)){await T(),await I(),V(),u.success("后端记录已不存在,已同步移除本地记录");return}p.value=s,x(),u.error(o instanceof Error?o.message:"同步后端失败")}}function V(){for(const e of[...k.value])P.value.some(s=>s.taskId===e)||R(e)}async function Ce(e){try{if(e.resultId!=null&&e.resultId>0)await Ft(e.resultId);else if(e.taskId!=null&&e.taskId>0)await Mt(e.taskId);else{u.warning("无法删除:缺少记录标识");return}e.taskId!=null&&e.taskId>0&&R(e.taskId),F([e]),await T(),await I(),V(),u.success("已删除")}catch(t){if(Se(t)){e.taskId!=null&&e.taskId>0&&R(e.taskId),F([e]),et(e),await I(),V(),u.success("后端记录已不存在,已同步移除本地记录");return}u.error(t instanceof Error?t.message:"删除失败")}}function st(){try{const e=typeof window<"u"?window.localStorage.getItem(me()):null;if(!e){k.value=[];return}const t=JSON.parse(e);k.value=Array.isArray(t)?t.filter(s=>typeof s=="number"):[]}catch{k.value=[]}}function Ie(){X(me(),k.value,k.value.length===0)}function Te(e){k.value.includes(e)||(k.value=[...k.value,e],Ie())}function R(e){if(k.value=k.value.filter(t=>t!==e),Ie(),delete N.value[e],le(),g.value[e]){const t={...g.value};delete t[e],g.value=t,B()}}function at(e){ve.value=e||[]}async function I(){try{A.value=await Ot()}catch{}}async function re(){try{te.value=await Ut(),await I()}catch(e){u.error(e instanceof Error?e.message:"加载备选失败")}}async function T(){try{P.value=(await Lt()).items||[]}catch{P.value=[]}}function Ee(e){return e&&N.value[e]||""}function Pe(e){const t=Ee(e);return t==="SUCCESS"||t==="FAILED"}const ue=ee(()=>{const e=P.value.filter(s=>s.taskId&&k.value.includes(s.taskId)&&!Pe(s.taskId)),t=new Set(e.map(s=>s.taskId).filter(s=>typeof s=="number"));for(const s of k.value){if(t.has(s))continue;const r=(g.value[s]?.items||[])[0];r&&e.push(r)}return e}),ie=ee(()=>P.value.filter(e=>!e.taskId||!k.value.includes(e.taskId)||Pe(e.taskId))),nt=ee(()=>ue.value.length>0||ie.value.length>0),ot=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"];function ce(e){return b?Promise.resolve():C.sleep("queue-wait",e)}function lt(){C.clearCategory("queue-wait")}function Ne(e){const t=(e instanceof Error?e.message:String(e||"")).toLowerCase();return ot.some(s=>t.includes(s.toLowerCase()))}async function Re(e,t=10){let s=0;for(;;){if(b)throw new Error("component disposed");try{return await jt(e)}catch(l){if(s+=1,!Ne(l)||s>=t)throw l;y.value=`后端服务暂时不可用,正在重试创建任务(${s}/${t})...`,await ce(K())}}}async function De(){const e=k.value.filter(t=>t>0);if(e.length)try{const t=await xe(e);let s=!1;const l={...g.value};for(const o of t.items||[]){const r=o.task?.id,i=o.task?.status;if(typeof r=="number"&&r>0){const a=l[r];l[r]=a?{...a,task:{...a.task||{},...o.task||{}}}:o,i&&(N.value[r]=i,(i==="SUCCESS"||i==="FAILED")&&(R(r),s=!0))}}g.value=l,B(),le(),s&&(await T(),await I())}catch{}}function K(){return Vt()}function $e(e=!1){if(S.value){if(!e)return;C.clearTimer("task-poll",S.value),S.value=null}const t=async()=>{if(S.value=null,!b){if(oe.value){$e();return}if(k.value.length){oe.value=!0;try{await De()}finally{oe.value=!1}!b&&k.value.length>0&&(S.value=C.setTimeout("task-poll",t,K()))}}};b||(e?t():S.value=C.setTimeout("task-poll",t,K()))}function J(e=!1){S.value&&!e||$e(e)}function rt(){S.value&&(C.clearTimer("task-poll",S.value),S.value=null)}async function Fe(e){let t=0;const s=30;for(;;){if(b)return"STOPPED";try{const l=await xe([e]);t>0&&(y.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),t=0;const o=(l.items||[]).find(i=>i.task?.id===e),r=o?.task?.status||"";if(o){const i=g.value[e];g.value={...g.value,[e]:i?{...i,task:{...i.task||{},...o.task||{}}}:o},B()}if(r&&(N.value[e]=r,le()),r==="SUCCESS"||r==="FAILED")return R(e),await T(),await I(),r}catch(l){if(!Ne(l))throw l;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后手动刷新查看状态`);y.value=`任务 ${e} 运行中,正在等待后端服务恢复(${t}/${s})...`,(t===1||t%5===0)&&u.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await ce(K());continue}await ce(K())}}async function Me(){const e=U.value.trim();if(!e){u.warning("请输入店铺名称");return}Q.value=!0;try{await qt(e),U.value="",await re(),u.success("已加入备选")}catch(t){u.error(t instanceof Error?t.message:"保存失败")}finally{Q.value=!1}}async function ut(e){try{await At(e.id),await re(),p.value=[],x(),u.success("已删除")}catch(t){u.error(t instanceof Error?t.message:"删除失败")}}function it(){const e=new Set,t=U.value.trim();t&&e.add(t);for(const s of ve.value)s?.shop_name?.trim()&&e.add(s.shop_name.trim());return[...e]}function ct(e,t){const s=new Map;for(const r of t){const i=(r.shopName||"").trim();i&&s.set(i,r)}const l=new Set,o=[];for(const r of e){const i=(r.shopName||"").trim();i&&s.has(i)?(o.push(s.get(i)),l.add(i)):o.push(r)}for(const r of t){const i=(r.shopName||"").trim();if(!i){o.push(r);continue}l.has(i)||(o.push(r),l.add(i))}return o}async function dt(){const e=it();if(!e.length){u.warning("请勾选备选店铺,或在输入框中填写店名(可与勾选合并)");return}z.value=!0;try{const s=(await Bt(e)).items||[];p.value=ct(p.value,s),x(),s.length?u.success(`本次匹配 ${s.length} 个店铺名,表格共 ${p.value.length} 条`):u.warning("未返回匹配结果")}catch(t){u.error(t instanceof Error?t.message:"匹配失败")}finally{z.value=!1}}function de(e){const t=e.taskId;return t?Ee(t)||e.taskStatus||"":e.taskStatus||""}function Oe(e){const t=de(e);return t==="SUCCESS"?"已完成":t==="FAILED"?"失败":t==="RUNNING"?"执行中":e.success?"已完成":"等待中"}function Ue(e){const t=de(e);return t==="SUCCESS"||e.success?"success":t==="FAILED"?"failed":"running"}function Le(e){return!e.resultId||!e.fileReady&&!e.downloadUrl?!1:de(e)==="SUCCESS"||e.success===!0}async function qe(e){if(!e.resultId)return;const t=fe(),s=xt(e.resultId),l=e.outputFilename||`${e.shopName||"result"}.zip`;if(!t?.save_file_from_url_new){u.error("当前客户端未提供 save_file_from_url_new,无法下载文件");return}const o=await t.save_file_from_url_new(s,l);o.success?u.success(`已保存:${o.path||l}`):o.error&&o.error!=="用户取消"&&u.error(o.error)}function ft(e){const t=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[t]||t||"—"}function vt(e){const t=(e.matchMessage||"").trim();return t||(e.matched&&e.matchStatus==="MATCHED"?"紫鸟索引已命中,可推送队列;打开店铺地址由 Python 侧处理":e.matched?"已关联索引,请结合状态列查看是否可推送":"未命中或未就绪,请检查店铺名与索引刷新")}async function pt(){pe.value=!0,await gt()}function ht(){return p.value.find(e=>e.matched)}function yt(){return D.value==="SearchSuppressed"||D.value==="DetailPageRemoved"}async function kt(e){const t=fe();if(!t?.enqueue_json){u.error("当前环境未启用 pywebview enqueue_json");return}const s=await Re(e),l=s.taskId;g.value={...g.value,[l]:{task:{id:l,status:"RUNNING"},items:s.items}},B(),Te(l),J(!0);const o={type:"product-risk-resolve-run",ts:Date.now(),data:{taskId:l,items:e,country_codes:[...h.value],risk_listing_filter:D.value}};L.value=JSON.stringify(o,null,2);const r=await t.enqueue_json(o);if(!r?.success)throw R(l),new Error("任务 "+l+" 推送失败:"+(r?.error||"未知错误"));F(e),y.value="任务 "+l+" 已入队,共 "+e.length+" 个店铺,等待执行完成...";const i=await Fe(l);if(y.value="任务 "+l+(i==="SUCCESS"?" 已完成":" 执行失败"),i!=="SUCCESS")throw new Error(y.value)}async function gt(){if(b||se.value)return;if(!p.value.length){u.warning("请先匹配店铺");return}const e=fe();if(!e?.enqueue_json){u.error("当前环境未启用 pywebview enqueue_json");return}const t=p.value.filter(o=>o.matched);if(!t.length){u.warning("没有已匹配的店铺可推送");return}se.value=!0,G.value=!0,L.value="";let s=0,l=0;try{if(yt()){await kt(t),u.success("店铺推送已完成:成功 "+t.length+" 条,失败 0 条"),await T(),J(!0);return}let o=0;for(;!b&&pe.value;){const r=ht();if(!r)break;o+=1;try{const i=await Re([r]),a=i.taskId;g.value={...g.value,[a]:{task:{id:a,status:"RUNNING"},items:i.items}},B(),Te(a),J(!0);const w={type:"product-risk-resolve-run",ts:Date.now(),data:{taskId:a,items:[r],country_codes:[...h.value],risk_listing_filter:D.value}};L.value=JSON.stringify(w,null,2);const Y=await e.enqueue_json(w);if(!Y?.success){R(a),l+=1,y.value="第 "+o+" 条推送失败:"+(Y?.error||"未知错误")+",已自动继续下一条",u.error(y.value),F([r]);continue}if(F([r]),y.value="任务 "+a+" 已入队,等待执行完成...",await Fe(a)!=="SUCCESS"){l+=1,y.value="任务 "+a+" 执行失败,已自动继续下一条",u.error(y.value);continue}s+=1,y.value="任务 "+a+" 已完成"}catch(i){if(b)break;l+=1,y.value="第 "+o+" 条任务处理失败,已自动继续下一条:"+(i instanceof Error?i.message:"未知错误"),u.error(y.value),F([r]);continue}}(s>0||l>0)&&u.success("店铺推送已完成:成功 "+s+" 条,失败 "+l+" 条"),await T(),J(!0)}catch(o){if(b)return;y.value=o instanceof Error?o.message:"推送异常",u.error(y.value)}finally{se.value=!1,G.value=!1}}return wt(()=>{st(),Xe(),Ye(),Ze(),re().catch(()=>{}),We().catch(()=>{}),T().then(()=>(V(),De())).catch(()=>{}),I().catch(()=>{}),k.value.length&&J(!0)}),_t(()=>{b=!0,rt(),lt(),C.clearScope(),$&&C.clearTimer("preference-save",$)}),(e,t)=>{const s=Ct,l=It,o=Tt,r=Pt,i=Nt;return c(),d("div",Gt,[m(bt,{active:"product-risk"}),n("div",Wt,[n("aside",Xt,[t[7]||(t[7]=n("div",{class:"section-title"},"店铺名称",-1)),n("div",Yt,[t[3]||(t[3]=n("div",{class:"hint"},"输入店铺名后点「确认」加入下方备选区(按当前登录用户保存)。仅索引可命中的店铺可入库。勾选备选后点「匹配店铺」,再「推送到 Python 队列」。",-1)),n("div",Zt,[m(s,{modelValue:U.value,"onUpdate:modelValue":t[0]||(t[0]=a=>U.value=a),clearable:"",placeholder:"请输入店铺名称",onKeyup:St(Me,["enter"])},null,8,["modelValue"]),n("button",{type:"button",class:"opt-btn",disabled:Q.value,onClick:Me},f(Q.value?"保存中…":"确认"),9,es)])]),t[8]||(t[8]=n("div",{class:"section-title"},"备选区域",-1)),te.value.length?(c(),d("div",ss,[m(o,{data:te.value,"row-key":"id",height:"240",class:"candidate-table",onSelectionChange:at},{default:E(()=>[m(l,{type:"selection",width:"42"}),m(l,{prop:"shop_name",label:"店铺名","min-width":"120","show-overflow-tooltip":""}),m(l,{label:"操作",width:"72",align:"center"},{default:E(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:w=>ut(a)},"删除",8,as)]),_:1})]),_:1},8,["data"])])):(c(),d("div",ts,"暂无备选店铺,请先输入并确认")),t[9]||(t[9]=n("div",{class:"section-title"},"处理国家与顺序",-1)),t[10]||(t[10]=n("p",{class:"hint country-pref-hint"},[M(" 勾选需要处理的站点(可只选 2~3 国);上方勾选区"),n("strong",null,"先按已选顺序"),M("排列,其余未选国家排在后面。拖拽下方列表调整顺序后会与上方同步。设置会按当前登录用户保存。 ")],-1)),n("div",ns,[(c(!0),d(O,null,H(je.value,a=>(c(),d("label",{key:a.code,class:"country-check-row"},[n("input",{type:"checkbox",class:"country-check-input",checked:Ve(a.code),disabled:ke(a.code),onChange:w=>Ke(a.code,w)},null,40,os),n("span",ls,f(a.label)+"("+f(a.code)+")",1)]))),128))]),h.value.length?(c(),d("div",rs,[t[5]||(t[5]=n("div",{class:"country-order-caption"},"已选顺序(拖拽 ⋮⋮ 调整)",-1)),n("div",us,[(c(!0),d(O,null,H(h.value,(a,w)=>(c(),d("div",{key:a,class:Z(["country-drag-row",{dragging:q.value===w}]),draggable:"true",onDragstart:Y=>He(w),onDragend:Qe,onDragover:t[1]||(t[1]=Ae(()=>{},["prevent"])),onDrop:Ae(Y=>ze(w),["prevent"])},[t[4]||(t[4]=n("span",{class:"drag-handle",title:"拖动排序"},"⋮⋮",-1)),n("span",cs,f(ye(a))+"("+f(a)+")",1)],42,is))),128))])])):_("",!0),ae.value?(c(),d("div",ds,"保存中…")):_("",!0),t[11]||(t[11]=n("div",{class:"section-title"},"商品列表筛选",-1)),t[12]||(t[12]=n("p",{class:"hint listing-filter-hint"},"与「推送到 Python 队列」一并下发,供 Python 区分处理场景。",-1)),n("div",fs,[m(i,{modelValue:D.value,"onUpdate:modelValue":t[2]||(t[2]=a=>D.value=a),class:"listing-filter-select",teleported:"",placeholder:"选择筛选类型"},{default:E(()=>[(c(!0),d(O,null,H(Et(Qt),a=>(c(),Be(r,{key:a.value,label:a.label,value:a.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),n("div",vs,[n("button",{type:"button",class:"btn-run",disabled:z.value,onClick:dt},f(z.value?"匹配中…":"匹配店铺"),9,ps),n("button",{type:"button",class:"btn-run btn-queue",disabled:G.value||!p.value.length,onClick:pt},f(G.value?"推送中…":"推送到 Python 队列"),9,hs)]),t[13]||(t[13]=n("p",{class:"loading-msg"},[M("在搜索结果中禁止显示、详情页面已删除会把匹配店铺合并为一个任务入队,避免同时打开多个紫鸟窗口;其它筛选仍按店铺逐条入队。Python 每处理完一店可 POST "),n("code",null,"/api/product-risk-resolve/tasks/{taskId}/result"),M("(可多次,每次可只含已完成的店铺);全部完成后任务结束。前端轮询任务状态。 ")],-1)),y.value?(c(),d("div",ys,[t[6]||(t[6]=n("div",{class:"section-title queue-debug-title"},"推送结果",-1)),n("div",ks,f(y.value),1),L.value?(c(),d("pre",gs,f(L.value),1)):_("",!0)])):_("",!0)]),n("section",ms,[t[22]||(t[22]=n("div",{class:"panel-header"},"匹配与任务",-1)),n("div",ws,[n("div",_s,[n("div",bs,[t[14]||(t[14]=n("span",{class:"summary-label"},"备选店铺数",-1)),n("strong",null,f(A.value.candidateCount),1)]),n("div",Ss,[t[15]||(t[15]=n("span",{class:"summary-label"},"已结束任务",-1)),n("strong",null,f(A.value.processedTaskCount),1)]),n("div",Cs,[t[16]||(t[16]=n("span",{class:"summary-label"},"成功任务",-1)),n("strong",null,f(A.value.successTaskCount),1)]),n("div",Is,[t[17]||(t[17]=n("span",{class:"summary-label"},"失败任务",-1)),n("strong",null,f(A.value.failedTaskCount),1)])]),t[21]||(t[21]=n("div",{class:"subsection-title"},"匹配结果",-1)),p.value.length?(c(),Be(o,{key:1,data:p.value,"row-key":j,"highlight-current-row":!1,class:"result-table match-table"},{default:E(()=>[m(l,{prop:"shopName",label:"店铺名","min-width":"100"}),m(l,{label:"匹配",width:"72",align:"center"},{default:E(({row:a})=>[n("span",{class:Z(a.matched?"ok":"fail")},f(a.matched?"是":"否"),3)]),_:1}),m(l,{prop:"shopId",label:"店铺ID","min-width":"120","show-overflow-tooltip":""}),m(l,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),m(l,{prop:"companyName",label:"公司","min-width":"100","show-overflow-tooltip":""}),m(l,{label:"状态",width:"100","show-overflow-tooltip":""},{default:E(({row:a})=>[M(f(ft(a.matchStatus)),1)]),_:1}),m(l,{label:"说明","min-width":"140","show-overflow-tooltip":""},{default:E(({row:a})=>[M(f(vt(a)),1)]),_:1}),m(l,{label:"操作",width:"72",align:"center"},{default:E(({row:a})=>[n("button",{type:"button",class:"link-danger",onClick:w=>tt(a)},"删除",8,Es)]),_:1})]),_:1},8,["data"])):(c(),d("div",Ts,"完成「匹配店铺」后,在此展示紫鸟索引匹配结果,供核对后再推送队列。")),n("div",Ps,[t[20]||(t[20]=n("div",{class:"result-list-header"},[n("span",null,"处理记录")],-1)),nt.value?(c(),d(O,{key:1},[ue.value.length?(c(),d("div",Rs,[t[18]||(t[18]=n("div",{class:"result-subsection-title"},"当前任务",-1)),n("ul",Ds,[(c(!0),d(O,null,H(ue.value,a=>(c(),d("li",{key:`cur-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",$s,[n("span",{class:"id",title:a.shopName||""},f(a.shopName||"-"),9,Fs),n("div",Ms,"任务 ID:"+f(a.taskId??"-"),1),a.platform?(c(),d("div",Os,"平台:"+f(a.platform),1)):_("",!0),a.error?(c(),d("div",Us,"错误:"+f(a.error),1)):_("",!0)]),n("div",Ls,[n("span",{class:Z(["status",Ue(a)])},f(Oe(a)),3),Le(a)?(c(),d("button",{key:0,type:"button",class:"download",onClick:w=>qe(a)}," 下载 ",8,qs)):_("",!0),n("button",{type:"button",class:"btn-delete",onClick:w=>Ce(a)},"删除",8,As)])]))),128))])])):_("",!0),ie.value.length?(c(),d("div",Bs,[t[19]||(t[19]=n("div",{class:"result-subsection-title"},"历史记录",-1)),n("ul",xs,[(c(!0),d(O,null,H(ie.value,a=>(c(),d("li",{key:`his-${a.resultId}-${a.taskId}`,class:"task-item split-result-item"},[n("div",js,[n("span",{class:"id",title:a.shopName||""},f(a.shopName||"-"),9,Vs),n("div",Ks,"任务 ID:"+f(a.taskId??"-"),1),a.outputFilename?(c(),d("div",Js,"文件:"+f(a.outputFilename),1)):_("",!0),a.error?(c(),d("div",Hs,"错误:"+f(a.error),1)):_("",!0)]),n("div",Qs,[n("span",{class:Z(["status",Ue(a)])},f(Oe(a)),3),Le(a)?(c(),d("button",{key:0,type:"button",class:"download",onClick:w=>qe(a)}," 下载 ",8,zs)):_("",!0),n("button",{type:"button",class:"btn-delete",onClick:w=>Ce(a)},"删除",8,Gs)])]))),128))])])):_("",!0)],64)):(c(),d("div",Ns,"暂无处理记录。推送队列并等待 Python 回传后,将在此显示下载链接。"))])])])])])}}}),Xs=Kt(Ws,[["__scopeId","data-v-bde90137"]]);Jt(Xs).use(Ht).mount("#app"); diff --git a/app/assets/pywebview-84Lhn3TI.js b/app/assets/pywebview-84Lhn3TI.js new file mode 100644 index 0000000..33a740e --- /dev/null +++ b/app/assets/pywebview-84Lhn3TI.js @@ -0,0 +1,55 @@ +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const r of s.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&o(r)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerPolicy&&(s.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?s.credentials="include":a.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function o(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}})();function qh(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const cn={},Xr=[],Dt=()=>{},Tw=()=>!1,Ed=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Yh=e=>e.startsWith("onUpdate:"),Pn=Object.assign,Gh=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},qx=Object.prototype.hasOwnProperty,Nt=(e,t)=>qx.call(e,t),ye=Array.isArray,Jr=e=>Yi(e)==="[object Map]",xd=e=>Yi(e)==="[object Set]",As=e=>Yi(e)==="[object Date]",Ve=e=>typeof e=="function",Le=e=>typeof e=="string",Zo=e=>typeof e=="symbol",at=e=>e!==null&&typeof e=="object",mr=e=>(at(e)||Ve(e))&&Ve(e.then)&&Ve(e.catch),$w=Object.prototype.toString,Yi=e=>$w.call(e),Yx=e=>Yi(e).slice(8,-1),mi=e=>Yi(e)==="[object Object]",Td=e=>Le(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ei=qh(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),$d=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},Gx=/-\w/g,Fn=$d(e=>e.replace(Gx,t=>t.slice(1).toUpperCase())),Xx=/\B([A-Z])/g,cs=$d(e=>e.replace(Xx,"-$1").toLowerCase()),Gi=$d(e=>e.charAt(0).toUpperCase()+e.slice(1)),ti=$d(e=>e?`on${Gi(e)}`:""),Ca=(e,t)=>!Object.is(e,t),sc=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},Xh=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Jx=e=>{const t=Le(e)?Number(e):NaN;return isNaN(t)?e:t};let hg;const Od=()=>hg||(hg=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ke(e){if(ye(e)){const t={};for(let n=0;n{if(n){const o=n.split(Qx);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function T(e){let t="";if(Le(e))t=e;else if(ye(e))for(let n=0;ngr(n,t))}const Iw=e=>!!(e&&e.__v_isRef===!0),Se=e=>Le(e)?e:e==null?"":ye(e)||at(e)&&(e.toString===$w||!Ve(e.toString))?Iw(e)?Se(e.value):JSON.stringify(e,Pw,2):String(e),Pw=(e,t)=>Iw(t)?Pw(e,t.value):Jr(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,a],s)=>(n[Of(o,s)+" =>"]=a,n),{})}:xd(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Of(n))}:Zo(t)?Of(t):at(t)&&!ye(t)&&!mi(t)?String(t):t,Of=(e,t="")=>{var n;return Zo(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Yn;class Mw{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.__v_skip=!0,this.parent=Yn,!t&&Yn&&(this.index=(Yn.scopes||(Yn.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(Yn=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,o;for(n=0,o=this.effects.length;n0)return;if(oi){let t=oi;for(oi=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;ni;){let t=ni;for(ni=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function Fw(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Vw(e){let t,n=e.depsTail,o=n;for(;o;){const a=o.prevDep;o.version===-1?(o===n&&(n=a),Qh(o),rT(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=a}e.deps=t,e.depsTail=n}function Cp(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(zw(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function zw(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===gi)||(e.globalVersion=gi,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Cp(e))))return;e.flags|=2;const t=e.dep,n=hn,o=Yo;hn=e,Yo=!0;try{Fw(e);const a=e.fn(e._value);(t.version===0||Ca(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{hn=n,Yo=o,Vw(e),e.flags&=-3}}function Qh(e,t=!1){const{dep:n,prevSub:o,nextSub:a}=e;if(o&&(o.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)Qh(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function rT(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Yo=!0;const Hw=[];function ns(){Hw.push(Yo),Yo=!1}function os(){const e=Hw.pop();Yo=e===void 0?!0:e}function vg(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=hn;hn=void 0;try{t()}finally{hn=n}}}let gi=0;class lT{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ev{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!hn||!Yo||hn===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==hn)n=this.activeLink=new lT(hn,this),hn.deps?(n.prevDep=hn.depsTail,hn.depsTail.nextDep=n,hn.depsTail=n):hn.deps=hn.depsTail=n,Kw(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=hn.depsTail,n.nextDep=void 0,hn.depsTail.nextDep=n,hn.depsTail=n,hn.deps===n&&(hn.deps=o)}return n}trigger(t){this.version++,gi++,this.notify(t)}notify(t){Jh();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Zh()}}}function Kw(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)Kw(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Fc=new WeakMap,cr=Symbol(""),kp=Symbol(""),bi=Symbol("");function Xn(e,t,n){if(Yo&&hn){let o=Fc.get(e);o||Fc.set(e,o=new Map);let a=o.get(n);a||(o.set(n,a=new ev),a.map=o,a.key=n),a.track()}}function Ua(e,t,n,o,a,s){const r=Fc.get(e);if(!r){gi++;return}const l=u=>{u&&u.trigger()};if(Jh(),t==="clear")r.forEach(l);else{const u=ye(e),c=u&&Td(n);if(u&&n==="length"){const d=Number(o);r.forEach((f,v)=>{(v==="length"||v===bi||!Zo(v)&&v>=d)&&l(f)})}else switch((n!==void 0||r.has(void 0))&&l(r.get(n)),c&&l(r.get(bi)),t){case"add":u?c&&l(r.get("length")):(l(r.get(cr)),Jr(e)&&l(r.get(kp)));break;case"delete":u||(l(r.get(cr)),Jr(e)&&l(r.get(kp)));break;case"set":Jr(e)&&l(r.get(cr));break}}Zh()}function iT(e,t){const n=Fc.get(e);return n&&n.get(t)}function Lr(e){const t=qt(e);return t===e?t:(Xn(t,"iterate",bi),Ro(e)?t:t.map(Qo))}function Rd(e){return Xn(e=qt(e),"iterate",bi),e}function wa(e,t){return as(e)?il(dr(e)?Qo(t):t):Qo(t)}const uT={__proto__:null,[Symbol.iterator](){return Nf(this,Symbol.iterator,e=>wa(this,e))},concat(...e){return Lr(this).concat(...e.map(t=>ye(t)?Lr(t):t))},entries(){return Nf(this,"entries",e=>(e[1]=wa(this,e[1]),e))},every(e,t){return Ha(this,"every",e,t,void 0,arguments)},filter(e,t){return Ha(this,"filter",e,t,n=>n.map(o=>wa(this,o)),arguments)},find(e,t){return Ha(this,"find",e,t,n=>wa(this,n),arguments)},findIndex(e,t){return Ha(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ha(this,"findLast",e,t,n=>wa(this,n),arguments)},findLastIndex(e,t){return Ha(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ha(this,"forEach",e,t,void 0,arguments)},includes(...e){return If(this,"includes",e)},indexOf(...e){return If(this,"indexOf",e)},join(e){return Lr(this).join(e)},lastIndexOf(...e){return If(this,"lastIndexOf",e)},map(e,t){return Ha(this,"map",e,t,void 0,arguments)},pop(){return Fl(this,"pop")},push(...e){return Fl(this,"push",e)},reduce(e,...t){return mg(this,"reduce",e,t)},reduceRight(e,...t){return mg(this,"reduceRight",e,t)},shift(){return Fl(this,"shift")},some(e,t){return Ha(this,"some",e,t,void 0,arguments)},splice(...e){return Fl(this,"splice",e)},toReversed(){return Lr(this).toReversed()},toSorted(e){return Lr(this).toSorted(e)},toSpliced(...e){return Lr(this).toSpliced(...e)},unshift(...e){return Fl(this,"unshift",e)},values(){return Nf(this,"values",e=>wa(this,e))}};function Nf(e,t,n){const o=Rd(e),a=o[t]();return o!==e&&!Ro(e)&&(a._next=a.next,a.next=()=>{const s=a._next();return s.done||(s.value=n(s.value)),s}),a}const cT=Array.prototype;function Ha(e,t,n,o,a,s){const r=Rd(e),l=r!==e&&!Ro(e),u=r[t];if(u!==cT[t]){const f=u.apply(e,s);return l?Qo(f):f}let c=n;r!==e&&(l?c=function(f,v){return n.call(this,wa(e,f),v,e)}:n.length>2&&(c=function(f,v){return n.call(this,f,v,e)}));const d=u.call(r,c,o);return l&&a?a(d):d}function mg(e,t,n,o){const a=Rd(e),s=a!==e&&!Ro(e);let r=n,l=!1;a!==e&&(s?(l=o.length===0,r=function(c,d,f){return l&&(l=!1,c=wa(e,c)),n.call(this,c,wa(e,d),f,e)}):n.length>3&&(r=function(c,d,f){return n.call(this,c,d,f,e)}));const u=a[t](r,...o);return l?wa(e,u):u}function If(e,t,n){const o=qt(e);Xn(o,"iterate",bi);const a=o[t](...n);return(a===-1||a===!1)&&Nd(n[0])?(n[0]=qt(n[0]),o[t](...n)):a}function Fl(e,t,n=[]){ns(),Jh();const o=qt(e)[t].apply(e,n);return Zh(),os(),o}const dT=qh("__proto__,__v_isRef,__isVue"),Ww=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Zo));function fT(e){Zo(e)||(e=String(e));const t=qt(this);return Xn(t,"has",e),t.hasOwnProperty(e)}class jw{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const a=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!a;if(n==="__v_isReadonly")return a;if(n==="__v_isShallow")return s;if(n==="__v_raw")return o===(a?s?CT:Gw:s?Yw:qw).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=ye(t);if(!a){let u;if(r&&(u=uT[n]))return u;if(n==="hasOwnProperty")return fT}const l=Reflect.get(t,n,Jt(t)?t:o);if((Zo(n)?Ww.has(n):dT(n))||(a||Xn(t,"get",n),s))return l;if(Jt(l)){const u=r&&Td(n)?l:l.value;return a&&at(u)?br(u):u}return at(l)?a?br(l):At(l):l}}class Uw extends jw{constructor(t=!1){super(!1,t)}set(t,n,o,a){let s=t[n];const r=ye(t)&&Td(n);if(!this._isShallow){const c=as(s);if(!Ro(o)&&!as(o)&&(s=qt(s),o=qt(o)),!r&&Jt(s)&&!Jt(o))return c||(s.value=o),!0}const l=r?Number(n)e,_u=e=>Reflect.getPrototypeOf(e);function gT(e,t,n){return function(...o){const a=this.__v_raw,s=qt(a),r=Jr(s),l=e==="entries"||e===Symbol.iterator&&r,u=e==="keys"&&r,c=a[e](...o),d=n?Ep:t?il:Qo;return!t&&Xn(s,"iterate",u?kp:cr),Pn(Object.create(c),{next(){const{value:f,done:v}=c.next();return v?{value:f,done:v}:{value:l?[d(f[0]),d(f[1])]:d(f),done:v}}})}}function Au(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function bT(e,t){const n={get(a){const s=this.__v_raw,r=qt(s),l=qt(a);e||(Ca(a,l)&&Xn(r,"get",a),Xn(r,"get",l));const{has:u}=_u(r),c=t?Ep:e?il:Qo;if(u.call(r,a))return c(s.get(a));if(u.call(r,l))return c(s.get(l));s!==r&&s.get(a)},get size(){const a=this.__v_raw;return!e&&Xn(qt(a),"iterate",cr),a.size},has(a){const s=this.__v_raw,r=qt(s),l=qt(a);return e||(Ca(a,l)&&Xn(r,"has",a),Xn(r,"has",l)),a===l?s.has(a):s.has(a)||s.has(l)},forEach(a,s){const r=this,l=r.__v_raw,u=qt(l),c=t?Ep:e?il:Qo;return!e&&Xn(u,"iterate",cr),l.forEach((d,f)=>a.call(s,c(d),c(f),r))}};return Pn(n,e?{add:Au("add"),set:Au("set"),delete:Au("delete"),clear:Au("clear")}:{add(a){const s=qt(this),r=_u(s),l=qt(a),u=!t&&!Ro(a)&&!as(a)?l:a;return r.has.call(s,u)||Ca(a,u)&&r.has.call(s,a)||Ca(l,u)&&r.has.call(s,l)||(s.add(u),Ua(s,"add",u,u)),this},set(a,s){!t&&!Ro(s)&&!as(s)&&(s=qt(s));const r=qt(this),{has:l,get:u}=_u(r);let c=l.call(r,a);c||(a=qt(a),c=l.call(r,a));const d=u.call(r,a);return r.set(a,s),c?Ca(s,d)&&Ua(r,"set",a,s):Ua(r,"add",a,s),this},delete(a){const s=qt(this),{has:r,get:l}=_u(s);let u=r.call(s,a);u||(a=qt(a),u=r.call(s,a)),l&&l.call(s,a);const c=s.delete(a);return u&&Ua(s,"delete",a,void 0),c},clear(){const a=qt(this),s=a.size!==0,r=a.clear();return s&&Ua(a,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=gT(a,e,t)}),n}function tv(e,t){const n=bT(e,t);return(o,a,s)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?o:Reflect.get(Nt(n,a)&&a in o?n:o,a,s)}const yT={get:tv(!1,!1)},wT={get:tv(!1,!0)},ST={get:tv(!0,!1)};const qw=new WeakMap,Yw=new WeakMap,Gw=new WeakMap,CT=new WeakMap;function kT(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function ET(e){return e.__v_skip||!Object.isExtensible(e)?0:kT(Yx(e))}function At(e){return as(e)?e:ov(e,!1,hT,yT,qw)}function nv(e){return ov(e,!1,mT,wT,Yw)}function br(e){return ov(e,!0,vT,ST,Gw)}function ov(e,t,n,o,a){if(!at(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=ET(e);if(s===0)return e;const r=a.get(e);if(r)return r;const l=new Proxy(e,s===2?o:n);return a.set(e,l),l}function dr(e){return as(e)?dr(e.__v_raw):!!(e&&e.__v_isReactive)}function as(e){return!!(e&&e.__v_isReadonly)}function Ro(e){return!!(e&&e.__v_isShallow)}function Nd(e){return e?!!e.__v_raw:!1}function qt(e){const t=e&&e.__v_raw;return t?qt(t):e}function xa(e){return!Nt(e,"__v_skip")&&Object.isExtensible(e)&&Ow(e,"__v_skip",!0),e}const Qo=e=>at(e)?At(e):e,il=e=>at(e)?br(e):e;function Jt(e){return e?e.__v_isRef===!0:!1}function M(e){return Xw(e,!1)}function Xt(e){return Xw(e,!0)}function Xw(e,t){return Jt(e)?e:new xT(e,t)}class xT{constructor(t,n){this.dep=new ev,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:qt(t),this._value=n?t:Qo(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||Ro(t)||as(t);t=o?t:qt(t),Ca(t,n)&&(this._rawValue=t,this._value=o?t:Qo(t),this.dep.trigger())}}function rc(e){e.dep&&e.dep.trigger()}function i(e){return Jt(e)?e.value:e}function gg(e){return Ve(e)?e():i(e)}const TT={get:(e,t,n)=>t==="__v_raw"?e:i(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const a=e[t];return Jt(a)&&!Jt(n)?(a.value=n,!0):Reflect.set(e,t,n,o)}};function Jw(e){return dr(e)?e:new Proxy(e,TT)}function Mn(e){const t=ye(e)?new Array(e.length):{};for(const n in e)t[n]=Zw(e,n);return t}class $T{constructor(t,n,o){this._object=t,this._key=n,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._raw=qt(t);let a=!0,s=t;if(!ye(t)||!Td(String(n)))do a=!Nd(s)||Ro(s);while(a&&(s=s.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=i(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Jt(this._raw[this._key])){const n=this._object[this._key];if(Jt(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return iT(this._raw,this._key)}}class OT{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Vt(e,t,n){return Jt(e)?e:Ve(e)?new OT(e):at(e)&&arguments.length>1?Zw(e,t,n):M(e)}function Zw(e,t,n){return new $T(e,t,n)}class RT{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new ev(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=gi-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&hn!==this)return Bw(this,!0),!0}get value(){const t=this.dep.track();return zw(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function NT(e,t,n=!1){let o,a;return Ve(e)?o=e:(o=e.get,a=e.set),new RT(o,a,n)}const Lu={},Vc=new WeakMap;let Js;function IT(e,t=!1,n=Js){if(n){let o=Vc.get(n);o||Vc.set(n,o=[]),o.push(e)}}function PT(e,t,n=cn){const{immediate:o,deep:a,once:s,scheduler:r,augmentJob:l,call:u}=n,c=S=>a?S:Ro(S)||a===!1||a===0?qa(S,1):qa(S);let d,f,v,g,p=!1,h=!1;if(Jt(e)?(f=()=>e.value,p=Ro(e)):dr(e)?(f=()=>c(e),p=!0):ye(e)?(h=!0,p=e.some(S=>dr(S)||Ro(S)),f=()=>e.map(S=>{if(Jt(S))return S.value;if(dr(S))return c(S);if(Ve(S))return u?u(S,2):S()})):Ve(e)?t?f=u?()=>u(e,2):e:f=()=>{if(v){ns();try{v()}finally{os()}}const S=Js;Js=d;try{return u?u(e,3,[g]):e(g)}finally{Js=S}}:f=Dt,t&&a){const S=f,C=a===!0?1/0:a;f=()=>qa(S(),C)}const m=_w(),b=()=>{d.stop(),m&&m.active&&Gh(m.effects,d)};if(s&&t){const S=t;t=(...C)=>{S(...C),b()}}let k=h?new Array(e.length).fill(Lu):Lu;const y=S=>{if(!(!(d.flags&1)||!d.dirty&&!S))if(t){const C=d.run();if(a||p||(h?C.some((E,$)=>Ca(E,k[$])):Ca(C,k))){v&&v();const E=Js;Js=d;try{const $=[C,k===Lu?void 0:h&&k[0]===Lu?[]:k,g];k=C,u?u(t,3,$):t(...$)}finally{Js=E}}}else d.run()};return l&&l(y),d=new Lw(f),d.scheduler=r?()=>r(y,!1):y,g=S=>IT(S,!1,d),v=d.onStop=()=>{const S=Vc.get(d);if(S){if(u)u(S,4);else for(const C of S)C();Vc.delete(d)}},t?o?y(!0):k=d.run():r?r(y.bind(null,!0),!0):d.run(),b.pause=d.pause.bind(d),b.resume=d.resume.bind(d),b.stop=b,b}function qa(e,t=1/0,n){if(t<=0||!at(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Jt(e))qa(e.value,t,n);else if(ye(e))for(let o=0;o{qa(o,t,n)});else if(mi(e)){for(const o in e)qa(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&qa(e[o],t,n)}return e}function Xi(e,t,n,o){try{return o?e(...o):e()}catch(a){Id(a,t,n)}}function ea(e,t,n,o){if(Ve(e)){const a=Xi(e,t,n,o);return a&&mr(a)&&a.catch(s=>{Id(s,t,n)}),a}if(ye(e)){const a=[];for(let s=0;s>>1,a=lo[o],s=yi(a);s=yi(n)?lo.push(e):lo.splice(_T(t),0,e),e.flags|=1,e1()}}function e1(){zc||(zc=Qw.then(n1))}function AT(e){ye(e)?Zr.push(...e):xs&&e.id===-1?xs.splice(Wr+1,0,e):e.flags&1||(Zr.push(e),e.flags|=1),e1()}function bg(e,t,n=ba+1){for(;nyi(n)-yi(o));if(Zr.length=0,xs){xs.push(...t);return}for(xs=t,Wr=0;Wre.id==null?e.flags&2?-1:1/0:e.id;function n1(e){try{for(ba=0;ba{o._d&&jc(-1);const s=Hc(t);let r;try{r=e(...a)}finally{Hc(s),o._d&&jc(1)}return r};return o._n=!0,o._c=!0,o._d=!0,o}function ut(e,t){if(Kn===null)return e;const n=Ld(Kn),o=e.dirs||(e.dirs=[]);for(let a=0;a1)return n&&Ve(t)?t.call(o&&o.proxy):t}}const LT=Symbol.for("v-scx"),DT=()=>_e(LT);function So(e,t){return sv(e,null,t)}function le(e,t,n){return sv(e,t,n)}function sv(e,t,n=cn){const{immediate:o,deep:a,flush:s,once:r}=n,l=Pn({},n),u=t&&o||!t&&s!=="post";let c;if(Ci){if(s==="sync"){const g=DT();c=g.__watcherHandles||(g.__watcherHandles=[])}else if(!u){const g=()=>{};return g.stop=Dt,g.resume=Dt,g.pause=Dt,g}}const d=Jn;l.call=(g,p,h)=>ea(g,d,p,h);let f=!1;s==="post"?l.scheduler=g=>{qn(g,d&&d.suspense)}:s!=="sync"&&(f=!0,l.scheduler=(g,p)=>{p?g():av(g)}),l.augmentJob=g=>{t&&(g.flags|=4),f&&(g.flags|=2,d&&(g.id=d.uid,g.i=d))};const v=PT(e,t,l);return Ci&&(c?c.push(v):u&&v()),v}function BT(e,t,n){const o=this.proxy,a=Le(e)?e.includes(".")?a1(o,e):()=>o[e]:e.bind(o,o);let s;Ve(t)?s=t:(s=t.handler,n=t);const r=Zi(this),l=sv(a,s.bind(o),n);return r(),l}function a1(e,t){const n=t.split(".");return()=>{let o=e;for(let a=0;ae.__isTeleport,ai=e=>e&&(e.disabled||e.disabled===""),yg=e=>e&&(e.defer||e.defer===""),wg=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Sg=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,xp=(e,t)=>{const n=e&&e.to;return Le(n)?t?t(n):null:n},l1={name:"Teleport",__isTeleport:!0,process(e,t,n,o,a,s,r,l,u,c){const{mc:d,pc:f,pbc:v,o:{insert:g,querySelector:p,createText:h,createComment:m}}=c,b=ai(t.props);let{shapeFlag:k,children:y,dynamicChildren:S}=t;if(e==null){const C=t.el=h(""),E=t.anchor=h("");g(C,n,o),g(E,n,o);const $=(N,R)=>{k&16&&d(y,N,R,a,s,r,l,u)},O=()=>{const N=t.target=xp(t.props,p),R=Tp(N,t,h,g);N&&(r!=="svg"&&wg(N)?r="svg":r!=="mathml"&&Sg(N)&&(r="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add(N),b||($(N,R),lc(t,!1)))};b&&($(n,E),lc(t,!0)),yg(t.props)?(t.el.__isMounted=!1,qn(()=>{O(),delete t.el.__isMounted},s)):O()}else{if(yg(t.props)&&e.el.__isMounted===!1){qn(()=>{l1.process(e,t,n,o,a,s,r,l,u,c)},s);return}t.el=e.el,t.targetStart=e.targetStart;const C=t.anchor=e.anchor,E=t.target=e.target,$=t.targetAnchor=e.targetAnchor,O=ai(e.props),N=O?n:E,R=O?C:$;if(r==="svg"||wg(E)?r="svg":(r==="mathml"||Sg(E))&&(r="mathml"),S?(v(e.dynamicChildren,S,N,a,s,r,l),hv(e,t,!0)):u||f(e,t,N,R,a,s,r,l,!1),b)O?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Du(t,n,C,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const A=t.target=xp(t.props,p);A&&Du(t,A,null,c,0)}else O&&Du(t,E,$,c,1);lc(t,b)}},remove(e,t,n,{um:o,o:{remove:a}},s){const{shapeFlag:r,children:l,anchor:u,targetStart:c,targetAnchor:d,target:f,props:v}=e;if(f&&(a(c),a(d)),s&&a(u),r&16){const g=s||!ai(v);for(let p=0;p{e.isMounted=!0}),Bt(()=>{e.isUnmounting=!0}),e}const Mo=[Function,Array],u1={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Mo,onEnter:Mo,onAfterEnter:Mo,onEnterCancelled:Mo,onBeforeLeave:Mo,onLeave:Mo,onAfterLeave:Mo,onLeaveCancelled:Mo,onBeforeAppear:Mo,onAppear:Mo,onAfterAppear:Mo,onAppearCancelled:Mo},c1=e=>{const t=e.subTree;return t.component?c1(t.component):t},zT={name:"BaseTransition",props:u1,setup(e,{slots:t}){const n=ft(),o=i1();return()=>{const a=t.default&&rv(t.default(),!0);if(!a||!a.length)return;const s=d1(a),r=qt(e),{mode:l}=r;if(o.isLeaving)return Pf(s);const u=Cg(s);if(!u)return Pf(s);let c=wi(u,r,o,n,f=>c=f);u.type!==gn&&yr(u,c);let d=n.subTree&&Cg(n.subTree);if(d&&d.type!==gn&&!Qs(d,u)&&c1(n).type!==gn){let f=wi(d,r,o,n);if(yr(d,f),l==="out-in"&&u.type!==gn)return o.isLeaving=!0,f.afterLeave=()=>{o.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,d=void 0},Pf(s);l==="in-out"&&u.type!==gn?f.delayLeave=(v,g,p)=>{const h=f1(o,d);h[String(d.key)]=d,v[ya]=()=>{g(),v[ya]=void 0,delete c.delayedLeave,d=void 0},c.delayedLeave=()=>{p(),delete c.delayedLeave,d=void 0}}:d=void 0}else d&&(d=void 0);return s}}};function d1(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==gn){t=n;break}}return t}const HT=zT;function f1(e,t){const{leavingVNodes:n}=e;let o=n.get(t.type);return o||(o=Object.create(null),n.set(t.type,o)),o}function wi(e,t,n,o,a){const{appear:s,mode:r,persisted:l=!1,onBeforeEnter:u,onEnter:c,onAfterEnter:d,onEnterCancelled:f,onBeforeLeave:v,onLeave:g,onAfterLeave:p,onLeaveCancelled:h,onBeforeAppear:m,onAppear:b,onAfterAppear:k,onAppearCancelled:y}=t,S=String(e.key),C=f1(n,e),E=(N,R)=>{N&&ea(N,o,9,R)},$=(N,R)=>{const A=R[1];E(N,R),ye(N)?N.every(_=>_.length<=1)&&A():N.length<=1&&A()},O={mode:r,persisted:l,beforeEnter(N){let R=u;if(!n.isMounted)if(s)R=m||u;else return;N[ya]&&N[ya](!0);const A=C[S];A&&Qs(e,A)&&A.el[ya]&&A.el[ya](),E(R,[N])},enter(N){if(C[S]===e)return;let R=c,A=d,_=f;if(!n.isMounted)if(s)R=b||c,A=k||d,_=y||f;else return;let V=!1;N[Vl]=U=>{V||(V=!0,U?E(_,[N]):E(A,[N]),O.delayedLeave&&O.delayedLeave(),N[Vl]=void 0)};const H=N[Vl].bind(null,!1);R?$(R,[N,H]):H()},leave(N,R){const A=String(e.key);if(N[Vl]&&N[Vl](!0),n.isUnmounting)return R();E(v,[N]);let _=!1;N[ya]=H=>{_||(_=!0,R(),H?E(h,[N]):E(p,[N]),N[ya]=void 0,C[A]===e&&delete C[A])};const V=N[ya].bind(null,!1);C[A]=e,g?$(g,[N,V]):V()},clone(N){const R=wi(N,t,n,o,a);return a&&a(R),R}};return O}function Pf(e){if(Pd(e))return e=Ia(e),e.children=null,e}function Cg(e){if(!Pd(e))return r1(e.type)&&e.children?d1(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Ve(n.default))return n.default()}}function yr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,yr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function rv(e,t=!1,n){let o=[],a=0;for(let s=0;s1)for(let s=0;ssi(h,t&&(ye(t)?t[m]:t),n,o,a));return}if(Qr(o)&&!a){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&si(e,t,n,o.component.subTree);return}const s=o.shapeFlag&4?Ld(o.component):o.el,r=a?null:s,{i:l,r:u}=e,c=t&&t.r,d=l.refs===cn?l.refs={}:l.refs,f=l.setupState,v=qt(f),g=f===cn?Tw:h=>kg(d,h)?!1:Nt(v,h),p=(h,m)=>!(m&&kg(d,m));if(c!=null&&c!==u){if(Eg(t),Le(c))d[c]=null,g(c)&&(f[c]=null);else if(Jt(c)){const h=t;p(c,h.k)&&(c.value=null),h.k&&(d[h.k]=null)}}if(Ve(u))Xi(u,l,12,[r,d]);else{const h=Le(u),m=Jt(u);if(h||m){const b=()=>{if(e.f){const k=h?g(u)?f[u]:d[u]:p()||!e.k?u.value:d[e.k];if(a)ye(k)&&Gh(k,s);else if(ye(k))k.includes(s)||k.push(s);else if(h)d[u]=[s],g(u)&&(f[u]=d[u]);else{const y=[s];p(u,e.k)&&(u.value=y),e.k&&(d[e.k]=y)}}else h?(d[u]=r,g(u)&&(f[u]=r)):m&&(p(u,e.k)&&(u.value=r),e.k&&(d[e.k]=r))};if(r){const k=()=>{b(),Kc.delete(e)};k.id=-1,Kc.set(e,k),qn(k,n)}else Eg(e),b()}}}function Eg(e){const t=Kc.get(e);t&&(t.flags|=8,Kc.delete(e))}Od().requestIdleCallback;Od().cancelIdleCallback;const Qr=e=>!!e.type.__asyncLoader,Pd=e=>e.type.__isKeepAlive;function Ji(e,t){h1(e,"a",t)}function lv(e,t){h1(e,"da",t)}function h1(e,t,n=Jn){const o=e.__wdc||(e.__wdc=()=>{let a=n;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Md(t,o,n),n){let a=n.parent;for(;a&&a.parent;)Pd(a.parent.vnode)&&KT(o,t,n,a),a=a.parent}}function KT(e,t,n,o){const a=Md(t,e,o,!0);$l(()=>{Gh(o[t],a)},n)}function Md(e,t,n=Jn,o=!1){if(n){const a=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{ns();const l=Zi(n),u=ea(t,n,e,r);return l(),os(),u});return o?a.unshift(s):a.push(s),s}}const ds=e=>(t,n=Jn)=>{(!Ci||e==="sp")&&Md(e,(...o)=>t(...o),n)},_d=ds("bm"),ht=ds("m"),iv=ds("bu"),la=ds("u"),Bt=ds("bum"),$l=ds("um"),WT=ds("sp"),jT=ds("rtg"),UT=ds("rtc");function qT(e,t=Jn){Md("ec",e,t)}const uv="components",YT="directives";function It(e,t){return dv(uv,e,!0,t)||e}const v1=Symbol.for("v-ndc");function it(e){return Le(e)?dv(uv,e,!1)||e:e||v1}function cv(e){return dv(YT,e)}function dv(e,t,n=!0,o=!1){const a=Kn||Jn;if(a){const s=a.type;if(e===uv){const l=N$(s,!1);if(l&&(l===t||l===Fn(t)||l===Gi(Fn(t))))return s}const r=xg(a[e]||s[e],t)||xg(a.appContext[e],t);return!r&&o?s:r}}function xg(e,t){return e&&(e[t]||e[Fn(t)]||e[Gi(Fn(t))])}function yt(e,t,n,o){let a;const s=n,r=ye(e);if(r||Le(e)){const l=r&&dr(e);let u=!1,c=!1;l&&(u=!Ro(e),c=as(e),e=Rd(e)),a=new Array(e.length);for(let d=0,f=e.length;dt(l,u,void 0,s));else{const l=Object.keys(e);a=new Array(l.length);for(let u=0,c=l.length;u{const s=o.fn(...a);return s&&(s.key=o.key),s}:o.fn)}return e}function ee(e,t,n={},o,a){if(Kn.ce||Kn.parent&&Qr(Kn.parent)&&Kn.parent.ce){const c=Object.keys(n).length>0;return t!=="default"&&(n.name=t),x(),ae(Fe,null,[Y("slot",n,o&&o())],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1),x();const r=s&&m1(s(n)),l=n.key||r&&r.key,u=ae(Fe,{key:(l&&!Zo(l)?l:`_${t}`)+(!r&&o?"_fb":"")},r||(o?o():[]),r&&e._===1?64:-2);return u.scopeId&&(u.slotScopeIds=[u.scopeId+"-s"]),s&&s._c&&(s._d=!0),u}function m1(e){return e.some(t=>Ut(t)?!(t.type===gn||t.type===Fe&&!m1(t.children)):!0)?e:null}function GT(e,t){const n={};for(const o in e)n[ti(o)]=e[o];return n}const $p=e=>e?L1(e)?Ld(e):$p(e.parent):null,ri=Pn(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>$p(e.parent),$root:e=>$p(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>y1(e),$forceUpdate:e=>e.f||(e.f=()=>{av(e.update)}),$nextTick:e=>e.n||(e.n=Re.bind(e.proxy)),$watch:e=>BT.bind(e)}),Mf=(e,t)=>e!==cn&&!e.__isScriptSetup&&Nt(e,t),XT={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:a,props:s,accessCache:r,type:l,appContext:u}=e;if(t[0]!=="$"){const v=r[t];if(v!==void 0)switch(v){case 1:return o[t];case 2:return a[t];case 4:return n[t];case 3:return s[t]}else{if(Mf(o,t))return r[t]=1,o[t];if(a!==cn&&Nt(a,t))return r[t]=2,a[t];if(Nt(s,t))return r[t]=3,s[t];if(n!==cn&&Nt(n,t))return r[t]=4,n[t];Op&&(r[t]=0)}}const c=ri[t];let d,f;if(c)return t==="$attrs"&&Xn(e.attrs,"get",""),c(e);if((d=l.__cssModules)&&(d=d[t]))return d;if(n!==cn&&Nt(n,t))return r[t]=4,n[t];if(f=u.config.globalProperties,Nt(f,t))return f[t]},set({_:e},t,n){const{data:o,setupState:a,ctx:s}=e;return Mf(a,t)?(a[t]=n,!0):o!==cn&&Nt(o,t)?(o[t]=n,!0):Nt(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:a,props:s,type:r}},l){let u;return!!(n[l]||e!==cn&&l[0]!=="$"&&Nt(e,l)||Mf(t,l)||Nt(s,l)||Nt(o,l)||Nt(ri,l)||Nt(a.config.globalProperties,l)||(u=r.__cssModules)&&u[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Nt(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function vn(){return g1().slots}function fs(){return g1().attrs}function g1(e){const t=ft();return t.setupContext||(t.setupContext=B1(t))}function Tg(e){return ye(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Op=!0;function JT(e){const t=y1(e),n=e.proxy,o=e.ctx;Op=!1,t.beforeCreate&&$g(t.beforeCreate,e,"bc");const{data:a,computed:s,methods:r,watch:l,provide:u,inject:c,created:d,beforeMount:f,mounted:v,beforeUpdate:g,updated:p,activated:h,deactivated:m,beforeDestroy:b,beforeUnmount:k,destroyed:y,unmounted:S,render:C,renderTracked:E,renderTriggered:$,errorCaptured:O,serverPrefetch:N,expose:R,inheritAttrs:A,components:_,directives:V,filters:H}=t;if(c&&ZT(c,o,null),r)for(const P in r){const I=r[P];Ve(I)&&(o[P]=I.bind(n))}if(a){const P=a.call(n,n);at(P)&&(e.data=At(P))}if(Op=!0,s)for(const P in s){const I=s[P],L=Ve(I)?I.bind(n,n):Ve(I.get)?I.get.bind(n,n):Dt,D=!Ve(I)&&Ve(I.set)?I.set.bind(n):Dt,F=w({get:L,set:D});Object.defineProperty(o,P,{enumerable:!0,configurable:!0,get:()=>F.value,set:q=>F.value=q})}if(l)for(const P in l)b1(l[P],o,n,P);if(u){const P=Ve(u)?u.call(n):u;Reflect.ownKeys(P).forEach(I=>{St(I,P[I])})}d&&$g(d,e,"c");function W(P,I){ye(I)?I.forEach(L=>P(L.bind(n))):I&&P(I.bind(n))}if(W(_d,f),W(ht,v),W(iv,g),W(la,p),W(Ji,h),W(lv,m),W(qT,O),W(UT,E),W(jT,$),W(Bt,k),W($l,S),W(WT,N),ye(R))if(R.length){const P=e.exposed||(e.exposed={});R.forEach(I=>{Object.defineProperty(P,I,{get:()=>n[I],set:L=>n[I]=L,enumerable:!0})})}else e.exposed||(e.exposed={});C&&e.render===Dt&&(e.render=C),A!=null&&(e.inheritAttrs=A),_&&(e.components=_),V&&(e.directives=V),N&&p1(e)}function ZT(e,t,n=Dt){ye(e)&&(e=Rp(e));for(const o in e){const a=e[o];let s;at(a)?"default"in a?s=_e(a.from||o,a.default,!0):s=_e(a.from||o):s=_e(a),Jt(s)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>s.value,set:r=>s.value=r}):t[o]=s}}function $g(e,t,n){ea(ye(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function b1(e,t,n,o){let a=o.includes(".")?a1(n,o):()=>n[o];if(Le(e)){const s=t[e];Ve(s)&&le(a,s)}else if(Ve(e))le(a,e.bind(n));else if(at(e))if(ye(e))e.forEach(s=>b1(s,t,n,o));else{const s=Ve(e.handler)?e.handler.bind(n):t[e.handler];Ve(s)&&le(a,s,e)}}function y1(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:a,optionsCache:s,config:{optionMergeStrategies:r}}=e.appContext,l=s.get(t);let u;return l?u=l:!a.length&&!n&&!o?u=t:(u={},a.length&&a.forEach(c=>Wc(u,c,r,!0)),Wc(u,t,r)),at(t)&&s.set(t,u),u}function Wc(e,t,n,o=!1){const{mixins:a,extends:s}=t;s&&Wc(e,s,n,!0),a&&a.forEach(r=>Wc(e,r,n,!0));for(const r in t)if(!(o&&r==="expose")){const l=QT[r]||n&&n[r];e[r]=l?l(e[r],t[r]):t[r]}return e}const QT={data:Og,props:Rg,emits:Rg,methods:Xl,computed:Xl,beforeCreate:ro,created:ro,beforeMount:ro,mounted:ro,beforeUpdate:ro,updated:ro,beforeDestroy:ro,beforeUnmount:ro,destroyed:ro,unmounted:ro,activated:ro,deactivated:ro,errorCaptured:ro,serverPrefetch:ro,components:Xl,directives:Xl,watch:t$,provide:Og,inject:e$};function Og(e,t){return t?e?function(){return Pn(Ve(e)?e.call(this,this):e,Ve(t)?t.call(this,this):t)}:t:e}function e$(e,t){return Xl(Rp(e),Rp(t))}function Rp(e){if(ye(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Fn(t)}Modifiers`]||e[`${cs(t)}Modifiers`];function s$(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||cn;let a=n;const s=t.startsWith("update:"),r=s&&a$(o,t.slice(7));r&&(r.trim&&(a=n.map(d=>Le(d)?d.trim():d)),r.number&&(a=n.map(Xh)));let l,u=o[l=ti(t)]||o[l=ti(Fn(t))];!u&&s&&(u=o[l=ti(cs(t))]),u&&ea(u,e,6,a);const c=o[l+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,ea(c,e,6,a)}}const r$=new WeakMap;function S1(e,t,n=!1){const o=n?r$:t.emitsCache,a=o.get(e);if(a!==void 0)return a;const s=e.emits;let r={},l=!1;if(!Ve(e)){const u=c=>{const d=S1(c,t,!0);d&&(l=!0,Pn(r,d))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!s&&!l?(at(e)&&o.set(e,null),null):(ye(s)?s.forEach(u=>r[u]=null):Pn(r,s),at(e)&&o.set(e,r),r)}function Ad(e,t){return!e||!Ed(t)?!1:(t=t.slice(2).replace(/Once$/,""),Nt(e,t[0].toLowerCase()+t.slice(1))||Nt(e,cs(t))||Nt(e,t))}function Ng(e){const{type:t,vnode:n,proxy:o,withProxy:a,propsOptions:[s],slots:r,attrs:l,emit:u,render:c,renderCache:d,props:f,data:v,setupState:g,ctx:p,inheritAttrs:h}=e,m=Hc(e);let b,k;try{if(n.shapeFlag&4){const S=a||o,C=S;b=Sa(c.call(C,S,d,f,g,v,p)),k=l}else{const S=t;b=Sa(S.length>1?S(f,{attrs:l,slots:r,emit:u}):S(f,null)),k=t.props?l:l$(l)}}catch(S){li.length=0,Id(S,e,1),b=Y(gn)}let y=b;if(k&&h!==!1){const S=Object.keys(k),{shapeFlag:C}=y;S.length&&C&7&&(s&&S.some(Yh)&&(k=i$(k,s)),y=Ia(y,k,!1,!0))}return n.dirs&&(y=Ia(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition&&yr(y,n.transition),b=y,Hc(m),b}const l$=e=>{let t;for(const n in e)(n==="class"||n==="style"||Ed(n))&&((t||(t={}))[n]=e[n]);return t},i$=(e,t)=>{const n={};for(const o in e)(!Yh(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function u$(e,t,n){const{props:o,children:a,component:s}=e,{props:r,children:l,patchFlag:u}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return o?Ig(o,r,c):!!r;if(u&8){const d=t.dynamicProps;for(let f=0;fObject.create(k1),x1=e=>Object.getPrototypeOf(e)===k1;function d$(e,t,n,o=!1){const a={},s=E1();e.propsDefaults=Object.create(null),T1(e,t,a,s);for(const r in e.propsOptions[0])r in a||(a[r]=void 0);n?e.props=o?a:nv(a):e.type.props?e.props=a:e.props=s,e.attrs=s}function f$(e,t,n,o){const{props:a,attrs:s,vnode:{patchFlag:r}}=e,l=qt(a),[u]=e.propsOptions;let c=!1;if((o||r>0)&&!(r&16)){if(r&8){const d=e.vnode.dynamicProps;for(let f=0;f{u=!0;const[v,g]=$1(f,t,!0);Pn(r,v),g&&l.push(...g)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!s&&!u)return at(e)&&o.set(e,Xr),Xr;if(ye(s))for(let d=0;de==="_"||e==="_ctx"||e==="$stable",pv=e=>ye(e)?e.map(Sa):[Sa(e)],h$=(e,t,n)=>{if(t._n)return t;const o=J((...a)=>pv(t(...a)),n);return o._c=!1,o},O1=(e,t,n)=>{const o=e._ctx;for(const a in e){if(fv(a))continue;const s=e[a];if(Ve(s))t[a]=h$(a,s,o);else if(s!=null){const r=pv(s);t[a]=()=>r}}},R1=(e,t)=>{const n=pv(t);e.slots.default=()=>n},N1=(e,t,n)=>{for(const o in t)(n||!fv(o))&&(e[o]=t[o])},v$=(e,t,n)=>{const o=e.slots=E1();if(e.vnode.shapeFlag&32){const a=t._;a?(N1(o,t,n),n&&Ow(o,"_",a,!0)):O1(t,o)}else t&&R1(e,t)},m$=(e,t,n)=>{const{vnode:o,slots:a}=e;let s=!0,r=cn;if(o.shapeFlag&32){const l=t._;l?n&&l===1?s=!1:N1(a,t,n):(s=!t.$stable,O1(t,a)),r=t}else t&&(R1(e,t),r={default:1});if(s)for(const l in a)!fv(l)&&r[l]==null&&delete a[l]},qn=S$;function g$(e){return b$(e)}function b$(e,t){const n=Od();n.__VUE__=!0;const{insert:o,remove:a,patchProp:s,createElement:r,createText:l,createComment:u,setText:c,setElementText:d,parentNode:f,nextSibling:v,setScopeId:g=Dt,insertStaticContent:p}=e,h=(K,Z,re,ce=null,ve=null,ke=null,Ne=void 0,Ie=null,$e=!!Z.dynamicChildren)=>{if(K===Z)return;K&&!Qs(K,Z)&&(ce=ue(K),q(K,ve,ke,!0),K=null),Z.patchFlag===-2&&($e=!1,Z.dynamicChildren=null);const{type:pe,ref:Ee,shapeFlag:me}=Z;switch(pe){case Ol:m(K,Z,re,ce);break;case gn:b(K,Z,re,ce);break;case ic:K==null&&k(Z,re,ce,Ne);break;case Fe:_(K,Z,re,ce,ve,ke,Ne,Ie,$e);break;default:me&1?C(K,Z,re,ce,ve,ke,Ne,Ie,$e):me&6?V(K,Z,re,ce,ve,ke,Ne,Ie,$e):(me&64||me&128)&&pe.process(K,Z,re,ce,ve,ke,Ne,Ie,$e,oe)}Ee!=null&&ve?si(Ee,K&&K.ref,ke,Z||K,!Z):Ee==null&&K&&K.ref!=null&&si(K.ref,null,ke,K,!0)},m=(K,Z,re,ce)=>{if(K==null)o(Z.el=l(Z.children),re,ce);else{const ve=Z.el=K.el;Z.children!==K.children&&c(ve,Z.children)}},b=(K,Z,re,ce)=>{K==null?o(Z.el=u(Z.children||""),re,ce):Z.el=K.el},k=(K,Z,re,ce)=>{[K.el,K.anchor]=p(K.children,Z,re,ce,K.el,K.anchor)},y=({el:K,anchor:Z},re,ce)=>{let ve;for(;K&&K!==Z;)ve=v(K),o(K,re,ce),K=ve;o(Z,re,ce)},S=({el:K,anchor:Z})=>{let re;for(;K&&K!==Z;)re=v(K),a(K),K=re;a(Z)},C=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{if(Z.type==="svg"?Ne="svg":Z.type==="math"&&(Ne="mathml"),K==null)E(Z,re,ce,ve,ke,Ne,Ie,$e);else{const pe=K.el&&K.el._isVueCE?K.el:null;try{pe&&pe._beginPatch(),N(K,Z,ve,ke,Ne,Ie,$e)}finally{pe&&pe._endPatch()}}},E=(K,Z,re,ce,ve,ke,Ne,Ie)=>{let $e,pe;const{props:Ee,shapeFlag:me,transition:Me,dirs:We}=K;if($e=K.el=r(K.type,ke,Ee&&Ee.is,Ee),me&8?d($e,K.children):me&16&&O(K.children,$e,null,ce,ve,_f(K,ke),Ne,Ie),We&&Us(K,null,ce,"created"),$($e,K,K.scopeId,Ne,ce),Ee){for(const Pe in Ee)Pe!=="value"&&!ei(Pe)&&s($e,Pe,null,Ee[Pe],ke,ce);"value"in Ee&&s($e,"value",null,Ee.value,ke),(pe=Ee.onVnodeBeforeMount)&&ma(pe,ce,K)}We&&Us(K,null,ce,"beforeMount");const Ze=y$(ve,Me);Ze&&Me.beforeEnter($e),o($e,Z,re),((pe=Ee&&Ee.onVnodeMounted)||Ze||We)&&qn(()=>{pe&&ma(pe,ce,K),Ze&&Me.enter($e),We&&Us(K,null,ce,"mounted")},ve)},$=(K,Z,re,ce,ve)=>{if(re&&g(K,re),ce)for(let ke=0;ke{for(let pe=$e;pe{const Ie=Z.el=K.el;let{patchFlag:$e,dynamicChildren:pe,dirs:Ee}=Z;$e|=K.patchFlag&16;const me=K.props||cn,Me=Z.props||cn;let We;if(re&&qs(re,!1),(We=Me.onVnodeBeforeUpdate)&&ma(We,re,Z,K),Ee&&Us(Z,K,re,"beforeUpdate"),re&&qs(re,!0),(me.innerHTML&&Me.innerHTML==null||me.textContent&&Me.textContent==null)&&d(Ie,""),pe?R(K.dynamicChildren,pe,Ie,re,ce,_f(Z,ve),ke):Ne||I(K,Z,Ie,null,re,ce,_f(Z,ve),ke,!1),$e>0){if($e&16)A(Ie,me,Me,re,ve);else if($e&2&&me.class!==Me.class&&s(Ie,"class",null,Me.class,ve),$e&4&&s(Ie,"style",me.style,Me.style,ve),$e&8){const Ze=Z.dynamicProps;for(let Pe=0;Pe{We&&ma(We,re,Z,K),Ee&&Us(Z,K,re,"updated")},ce)},R=(K,Z,re,ce,ve,ke,Ne)=>{for(let Ie=0;Ie{if(Z!==re){if(Z!==cn)for(const ke in Z)!ei(ke)&&!(ke in re)&&s(K,ke,Z[ke],null,ve,ce);for(const ke in re){if(ei(ke))continue;const Ne=re[ke],Ie=Z[ke];Ne!==Ie&&ke!=="value"&&s(K,ke,Ie,Ne,ve,ce)}"value"in re&&s(K,"value",Z.value,re.value,ve)}},_=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{const pe=Z.el=K?K.el:l(""),Ee=Z.anchor=K?K.anchor:l("");let{patchFlag:me,dynamicChildren:Me,slotScopeIds:We}=Z;We&&(Ie=Ie?Ie.concat(We):We),K==null?(o(pe,re,ce),o(Ee,re,ce),O(Z.children||[],re,Ee,ve,ke,Ne,Ie,$e)):me>0&&me&64&&Me&&K.dynamicChildren&&K.dynamicChildren.length===Me.length?(R(K.dynamicChildren,Me,re,ve,ke,Ne,Ie),(Z.key!=null||ve&&Z===ve.subTree)&&hv(K,Z,!0)):I(K,Z,re,Ee,ve,ke,Ne,Ie,$e)},V=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{Z.slotScopeIds=Ie,K==null?Z.shapeFlag&512?ve.ctx.activate(Z,re,ce,Ne,$e):H(Z,re,ce,ve,ke,Ne,$e):U(K,Z,$e)},H=(K,Z,re,ce,ve,ke,Ne)=>{const Ie=K.component=T$(K,ce,ve);if(Pd(K)&&(Ie.ctx.renderer=oe),$$(Ie,!1,Ne),Ie.asyncDep){if(ve&&ve.registerDep(Ie,W,Ne),!K.el){const $e=Ie.subTree=Y(gn);b(null,$e,Z,re),K.placeholder=$e.el}}else W(Ie,K,Z,re,ve,ke,Ne)},U=(K,Z,re)=>{const ce=Z.component=K.component;if(u$(K,Z,re))if(ce.asyncDep&&!ce.asyncResolved){P(ce,Z,re);return}else ce.next=Z,ce.update();else Z.el=K.el,ce.vnode=Z},W=(K,Z,re,ce,ve,ke,Ne)=>{const Ie=()=>{if(K.isMounted){let{next:me,bu:Me,u:We,parent:Ze,vnode:Pe}=K;{const lt=I1(K);if(lt){me&&(me.el=Pe.el,P(K,me,Ne)),lt.asyncDep.then(()=>{qn(()=>{K.isUnmounted||pe()},ve)});return}}let Ae=me,je;qs(K,!1),me?(me.el=Pe.el,P(K,me,Ne)):me=Pe,Me&&sc(Me),(je=me.props&&me.props.onVnodeBeforeUpdate)&&ma(je,Ze,me,Pe),qs(K,!0);const Rt=Ng(K),Ue=K.subTree;K.subTree=Rt,h(Ue,Rt,f(Ue.el),ue(Ue),K,ve,ke),me.el=Rt.el,Ae===null&&c$(K,Rt.el),We&&qn(We,ve),(je=me.props&&me.props.onVnodeUpdated)&&qn(()=>ma(je,Ze,me,Pe),ve)}else{let me;const{el:Me,props:We}=Z,{bm:Ze,m:Pe,parent:Ae,root:je,type:Rt}=K,Ue=Qr(Z);qs(K,!1),Ze&&sc(Ze),!Ue&&(me=We&&We.onVnodeBeforeMount)&&ma(me,Ae,Z),qs(K,!0);{je.ce&&je.ce._hasShadowRoot()&&je.ce._injectChildStyle(Rt,K.parent?K.parent.type:void 0);const lt=K.subTree=Ng(K);h(null,lt,re,ce,K,ve,ke),Z.el=lt.el}if(Pe&&qn(Pe,ve),!Ue&&(me=We&&We.onVnodeMounted)){const lt=Z;qn(()=>ma(me,Ae,lt),ve)}(Z.shapeFlag&256||Ae&&Qr(Ae.vnode)&&Ae.vnode.shapeFlag&256)&&K.a&&qn(K.a,ve),K.isMounted=!0,Z=re=ce=null}};K.scope.on();const $e=K.effect=new Lw(Ie);K.scope.off();const pe=K.update=$e.run.bind($e),Ee=K.job=$e.runIfDirty.bind($e);Ee.i=K,Ee.id=K.uid,$e.scheduler=()=>av(Ee),qs(K,!0),pe()},P=(K,Z,re)=>{Z.component=K;const ce=K.vnode.props;K.vnode=Z,K.next=null,f$(K,Z.props,ce,re),m$(K,Z.children,re),ns(),bg(K),os()},I=(K,Z,re,ce,ve,ke,Ne,Ie,$e=!1)=>{const pe=K&&K.children,Ee=K?K.shapeFlag:0,me=Z.children,{patchFlag:Me,shapeFlag:We}=Z;if(Me>0){if(Me&128){D(pe,me,re,ce,ve,ke,Ne,Ie,$e);return}else if(Me&256){L(pe,me,re,ce,ve,ke,Ne,Ie,$e);return}}We&8?(Ee&16&&he(pe,ve,ke),me!==pe&&d(re,me)):Ee&16?We&16?D(pe,me,re,ce,ve,ke,Ne,Ie,$e):he(pe,ve,ke,!0):(Ee&8&&d(re,""),We&16&&O(me,re,ce,ve,ke,Ne,Ie,$e))},L=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{K=K||Xr,Z=Z||Xr;const pe=K.length,Ee=Z.length,me=Math.min(pe,Ee);let Me;for(Me=0;MeEe?he(K,ve,ke,!0,!1,me):O(Z,re,ce,ve,ke,Ne,Ie,$e,me)},D=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{let pe=0;const Ee=Z.length;let me=K.length-1,Me=Ee-1;for(;pe<=me&&pe<=Me;){const We=K[pe],Ze=Z[pe]=$e?Wa(Z[pe]):Sa(Z[pe]);if(Qs(We,Ze))h(We,Ze,re,null,ve,ke,Ne,Ie,$e);else break;pe++}for(;pe<=me&&pe<=Me;){const We=K[me],Ze=Z[Me]=$e?Wa(Z[Me]):Sa(Z[Me]);if(Qs(We,Ze))h(We,Ze,re,null,ve,ke,Ne,Ie,$e);else break;me--,Me--}if(pe>me){if(pe<=Me){const We=Me+1,Ze=WeMe)for(;pe<=me;)q(K[pe],ve,ke,!0),pe++;else{const We=pe,Ze=pe,Pe=new Map;for(pe=Ze;pe<=Me;pe++){const be=Z[pe]=$e?Wa(Z[pe]):Sa(Z[pe]);be.key!=null&&Pe.set(be.key,pe)}let Ae,je=0;const Rt=Me-Ze+1;let Ue=!1,lt=0;const mt=new Array(Rt);for(pe=0;pe=Rt){q(be,ve,ke,!0);continue}let ze;if(be.key!=null)ze=Pe.get(be.key);else for(Ae=Ze;Ae<=Me;Ae++)if(mt[Ae-Ze]===0&&Qs(be,Z[Ae])){ze=Ae;break}ze===void 0?q(be,ve,ke,!0):(mt[ze-Ze]=pe+1,ze>=lt?lt=ze:Ue=!0,h(be,Z[ze],re,null,ve,ke,Ne,Ie,$e),je++)}const kt=Ue?w$(mt):Xr;for(Ae=kt.length-1,pe=Rt-1;pe>=0;pe--){const be=Ze+pe,ze=Z[be],de=Z[be+1],Ge=be+1{const{el:ke,type:Ne,transition:Ie,children:$e,shapeFlag:pe}=K;if(pe&6){F(K.component.subTree,Z,re,ce);return}if(pe&128){K.suspense.move(Z,re,ce);return}if(pe&64){Ne.move(K,Z,re,oe);return}if(Ne===Fe){o(ke,Z,re);for(let me=0;me<$e.length;me++)F($e[me],Z,re,ce);o(K.anchor,Z,re);return}if(Ne===ic){y(K,Z,re);return}if(ce!==2&&pe&1&&Ie)if(ce===0)Ie.beforeEnter(ke),o(ke,Z,re),qn(()=>Ie.enter(ke),ve);else{const{leave:me,delayLeave:Me,afterLeave:We}=Ie,Ze=()=>{K.ctx.isUnmounted?a(ke):o(ke,Z,re)},Pe=()=>{ke._isLeaving&&ke[ya](!0),me(ke,()=>{Ze(),We&&We()})};Me?Me(ke,Ze,Pe):Pe()}else o(ke,Z,re)},q=(K,Z,re,ce=!1,ve=!1)=>{const{type:ke,props:Ne,ref:Ie,children:$e,dynamicChildren:pe,shapeFlag:Ee,patchFlag:me,dirs:Me,cacheIndex:We}=K;if(me===-2&&(ve=!1),Ie!=null&&(ns(),si(Ie,null,re,K,!0),os()),We!=null&&(Z.renderCache[We]=void 0),Ee&256){Z.ctx.deactivate(K);return}const Ze=Ee&1&&Me,Pe=!Qr(K);let Ae;if(Pe&&(Ae=Ne&&Ne.onVnodeBeforeUnmount)&&ma(Ae,Z,K),Ee&6)Q(K.component,re,ce);else{if(Ee&128){K.suspense.unmount(re,ce);return}Ze&&Us(K,null,Z,"beforeUnmount"),Ee&64?K.type.remove(K,Z,re,oe,ce):pe&&!pe.hasOnce&&(ke!==Fe||me>0&&me&64)?he(pe,Z,re,!1,!0):(ke===Fe&&me&384||!ve&&Ee&16)&&he($e,Z,re),ce&&j(K)}(Pe&&(Ae=Ne&&Ne.onVnodeUnmounted)||Ze)&&qn(()=>{Ae&&ma(Ae,Z,K),Ze&&Us(K,null,Z,"unmounted")},re)},j=K=>{const{type:Z,el:re,anchor:ce,transition:ve}=K;if(Z===Fe){X(re,ce);return}if(Z===ic){S(K);return}const ke=()=>{a(re),ve&&!ve.persisted&&ve.afterLeave&&ve.afterLeave()};if(K.shapeFlag&1&&ve&&!ve.persisted){const{leave:Ne,delayLeave:Ie}=ve,$e=()=>Ne(re,ke);Ie?Ie(K.el,ke,$e):$e()}else ke()},X=(K,Z)=>{let re;for(;K!==Z;)re=v(K),a(K),K=re;a(Z)},Q=(K,Z,re)=>{const{bum:ce,scope:ve,job:ke,subTree:Ne,um:Ie,m:$e,a:pe}=K;Mg($e),Mg(pe),ce&&sc(ce),ve.stop(),ke&&(ke.flags|=8,q(Ne,K,Z,re)),Ie&&qn(Ie,Z),qn(()=>{K.isUnmounted=!0},Z)},he=(K,Z,re,ce=!1,ve=!1,ke=0)=>{for(let Ne=ke;Ne{if(K.shapeFlag&6)return ue(K.component.subTree);if(K.shapeFlag&128)return K.suspense.next();const Z=v(K.anchor||K.el),re=Z&&Z[s1];return re?v(re):Z};let ge=!1;const ie=(K,Z,re)=>{let ce;K==null?Z._vnode&&(q(Z._vnode,null,null,!0),ce=Z._vnode.component):h(Z._vnode||null,K,Z,null,null,null,re),Z._vnode=K,ge||(ge=!0,bg(ce),t1(),ge=!1)},oe={p:h,um:q,m:F,r:j,mt:H,mc:O,pc:I,pbc:R,n:ue,o:e};return{render:ie,hydrate:void 0,createApp:o$(ie)}}function _f({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function qs({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function y$(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function hv(e,t,n=!1){const o=e.children,a=t.children;if(ye(o)&&ye(a))for(let s=0;s>1,e[n[l]]0&&(t[o]=n[s-1]),n[s]=o)}}for(s=n.length,r=n[s-1];s-- >0;)n[s]=r,r=t[r];return n}function I1(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:I1(t)}function Mg(e){if(e)for(let t=0;te.__isSuspense;function S$(e,t){t&&t.pendingBranch?ye(e)?t.effects.push(...e):t.effects.push(e):AT(e)}const Fe=Symbol.for("v-fgt"),Ol=Symbol.for("v-txt"),gn=Symbol.for("v-cmt"),ic=Symbol.for("v-stc"),li=[];let To=null;function x(e=!1){li.push(To=e?null:[])}function C$(){li.pop(),To=li[li.length-1]||null}let Si=1;function jc(e,t=!1){Si+=e,e<0&&To&&t&&(To.hasOnce=!0)}function _1(e){return e.dynamicChildren=Si>0?To||Xr:null,C$(),Si>0&&To&&To.push(e),e}function B(e,t,n,o,a,s){return _1(z(e,t,n,o,a,s,!0))}function ae(e,t,n,o,a){return _1(Y(e,t,n,o,a,!0))}function Ut(e){return e?e.__v_isVNode===!0:!1}function Qs(e,t){return e.type===t.type&&e.key===t.key}const A1=({key:e})=>e??null,uc=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Le(e)||Jt(e)||Ve(e)?{i:Kn,r:e,k:t,f:!!n}:e:null);function z(e,t=null,n=null,o=0,a=null,s=e===Fe?0:1,r=!1,l=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&A1(t),ref:t&&uc(t),scopeId:o1,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:o,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:Kn};return l?(vv(u,n),s&128&&e.normalize(u)):n&&(u.shapeFlag|=Le(n)?8:16),Si>0&&!r&&To&&(u.patchFlag>0||s&6)&&u.patchFlag!==32&&To.push(u),u}const Y=k$;function k$(e,t=null,n=null,o=0,a=null,s=!1){if((!e||e===v1)&&(e=gn),Ut(e)){const l=Ia(e,t,!0);return n&&vv(l,n),Si>0&&!s&&To&&(l.shapeFlag&6?To[To.indexOf(e)]=l:To.push(l)),l.patchFlag=-2,l}if(I$(e)&&(e=e.__vccOpts),t){t=Za(t);let{class:l,style:u}=t;l&&!Le(l)&&(t.class=T(l)),at(u)&&(Nd(u)&&!ye(u)&&(u=Pn({},u)),t.style=Ke(u))}const r=Le(e)?1:M1(e)?128:r1(e)?64:at(e)?4:Ve(e)?2:0;return z(e,t,n,o,a,r,s,!0)}function Za(e){return e?Nd(e)||x1(e)?Pn({},e):e:null}function Ia(e,t,n=!1,o=!1){const{props:a,ref:s,patchFlag:r,children:l,transition:u}=e,c=t?dt(a||{},t):a,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&A1(c),ref:t&&t.ref?n&&s?ye(s)?s.concat(uc(t)):[s,uc(t)]:uc(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Fe?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Ia(e.ssContent),ssFallback:e.ssFallback&&Ia(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return u&&o&&yr(d,u.clone(d)),d}function wt(e=" ",t=0){return Y(Ol,null,e,t)}function dte(e,t){const n=Y(ic,null,e);return n.staticCount=t,n}function te(e="",t=!1){return t?(x(),ae(gn,null,e)):Y(gn,null,e)}function Sa(e){return e==null||typeof e=="boolean"?Y(gn):ye(e)?Y(Fe,null,e.slice()):Ut(e)?Wa(e):Y(Ol,null,String(e))}function Wa(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Ia(e)}function vv(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(ye(t))n=16;else if(typeof t=="object")if(o&65){const a=t.default;a&&(a._c&&(a._d=!1),vv(e,a()),a._c&&(a._d=!0));return}else{n=32;const a=t._;!a&&!x1(t)?t._ctx=Kn:a===3&&Kn&&(Kn.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Ve(t)?(t={default:t,_ctx:Kn},n=32):(t=String(t),o&64?(n=16,t=[wt(t)]):n=8);e.children=t,e.shapeFlag|=n}function dt(...e){const t={};for(let n=0;nJn||Kn;let Uc,Ip;{const e=Od(),t=(n,o)=>{let a;return(a=e[n])||(a=e[n]=[]),a.push(o),s=>{a.length>1?a.forEach(r=>r(s)):a[0](s)}};Uc=t("__VUE_INSTANCE_SETTERS__",n=>Jn=n),Ip=t("__VUE_SSR_SETTERS__",n=>Ci=n)}const Zi=e=>{const t=Jn;return Uc(e),e.scope.on(),()=>{e.scope.off(),Uc(t)}},_g=()=>{Jn&&Jn.scope.off(),Uc(null)};function L1(e){return e.vnode.shapeFlag&4}let Ci=!1;function $$(e,t=!1,n=!1){t&&Ip(t);const{props:o,children:a}=e.vnode,s=L1(e);d$(e,o,s,t),v$(e,a,n||t);const r=s?O$(e,t):void 0;return t&&Ip(!1),r}function O$(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,XT);const{setup:o}=n;if(o){ns();const a=e.setupContext=o.length>1?B1(e):null,s=Zi(e),r=Xi(o,e,0,[e.props,a]),l=mr(r);if(os(),s(),(l||e.sp)&&!Qr(e)&&p1(e),l){if(r.then(_g,_g),t)return r.then(u=>{Ag(e,u)}).catch(u=>{Id(u,e,0)});e.asyncDep=r}else Ag(e,r)}else D1(e)}function Ag(e,t,n){Ve(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:at(t)&&(e.setupState=Jw(t)),D1(e)}function D1(e,t,n){const o=e.type;e.render||(e.render=o.render||Dt);{const a=Zi(e);ns();try{JT(e)}finally{os(),a()}}}const R$={get(e,t){return Xn(e,"get",""),e[t]}};function B1(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,R$),slots:e.slots,emit:e.emit,expose:t}}function Ld(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Jw(xa(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in ri)return ri[n](e)},has(t,n){return n in t||n in ri}})):e.proxy}function N$(e,t=!0){return Ve(e)?e.displayName||e.name:e.name||t&&e.__name}function I$(e){return Ve(e)&&"__vccOpts"in e}const w=(e,t)=>NT(e,t,Ci);function Ye(e,t,n){try{jc(-1);const o=arguments.length;return o===2?at(t)&&!ye(t)?Ut(t)?Y(e,null,[t]):Y(e,t):Y(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Ut(n)&&(n=[n]),Y(e,t,n))}finally{jc(1)}}const P$="3.5.30",M$=Dt;let Pp;const Lg=typeof window<"u"&&window.trustedTypes;if(Lg)try{Pp=Lg.createPolicy("vue",{createHTML:e=>e})}catch{}const F1=Pp?e=>Pp.createHTML(e):e=>e,_$="http://www.w3.org/2000/svg",A$="http://www.w3.org/1998/Math/MathML",Ka=typeof document<"u"?document:null,Dg=Ka&&Ka.createElement("template"),L$={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const a=t==="svg"?Ka.createElementNS(_$,e):t==="mathml"?Ka.createElementNS(A$,e):n?Ka.createElement(e,{is:n}):Ka.createElement(e);return e==="select"&&o&&o.multiple!=null&&a.setAttribute("multiple",o.multiple),a},createText:e=>Ka.createTextNode(e),createComment:e=>Ka.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ka.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,a,s){const r=n?n.previousSibling:t.lastChild;if(a&&(a===s||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),n),!(a===s||!(a=a.nextSibling)););else{Dg.innerHTML=F1(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const l=Dg.content;if(o==="svg"||o==="mathml"){const u=l.firstChild;for(;u.firstChild;)l.appendChild(u.firstChild);l.removeChild(u)}t.insertBefore(l,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ys="transition",zl="animation",ul=Symbol("_vtc"),V1={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},z1=Pn({},u1,V1),D$=e=>(e.displayName="Transition",e.props=z1,e),Vn=D$((e,{slots:t})=>Ye(HT,H1(e),t)),Ys=(e,t=[])=>{ye(e)?e.forEach(n=>n(...t)):e&&e(...t)},Bg=e=>e?ye(e)?e.some(t=>t.length>1):e.length>1:!1;function H1(e){const t={};for(const _ in e)_ in V1||(t[_]=e[_]);if(e.css===!1)return t;const{name:n="v",type:o,duration:a,enterFromClass:s=`${n}-enter-from`,enterActiveClass:r=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:u=s,appearActiveClass:c=r,appearToClass:d=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:v=`${n}-leave-active`,leaveToClass:g=`${n}-leave-to`}=e,p=B$(a),h=p&&p[0],m=p&&p[1],{onBeforeEnter:b,onEnter:k,onEnterCancelled:y,onLeave:S,onLeaveCancelled:C,onBeforeAppear:E=b,onAppear:$=k,onAppearCancelled:O=y}=t,N=(_,V,H,U)=>{_._enterCancelled=U,Ss(_,V?d:l),Ss(_,V?c:r),H&&H()},R=(_,V)=>{_._isLeaving=!1,Ss(_,f),Ss(_,g),Ss(_,v),V&&V()},A=_=>(V,H)=>{const U=_?$:k,W=()=>N(V,_,H);Ys(U,[V,W]),Fg(()=>{Ss(V,_?u:s),ga(V,_?d:l),Bg(U)||Vg(V,o,h,W)})};return Pn(t,{onBeforeEnter(_){Ys(b,[_]),ga(_,s),ga(_,r)},onBeforeAppear(_){Ys(E,[_]),ga(_,u),ga(_,c)},onEnter:A(!1),onAppear:A(!0),onLeave(_,V){_._isLeaving=!0;const H=()=>R(_,V);ga(_,f),_._enterCancelled?(ga(_,v),Mp(_)):(Mp(_),ga(_,v)),Fg(()=>{_._isLeaving&&(Ss(_,f),ga(_,g),Bg(S)||Vg(_,o,m,H))}),Ys(S,[_,H])},onEnterCancelled(_){N(_,!1,void 0,!0),Ys(y,[_])},onAppearCancelled(_){N(_,!0,void 0,!0),Ys(O,[_])},onLeaveCancelled(_){R(_),Ys(C,[_])}})}function B$(e){if(e==null)return null;if(at(e))return[Af(e.enter),Af(e.leave)];{const t=Af(e);return[t,t]}}function Af(e){return Jx(e)}function ga(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[ul]||(e[ul]=new Set)).add(t)}function Ss(e,t){t.split(/\s+/).forEach(o=>o&&e.classList.remove(o));const n=e[ul];n&&(n.delete(t),n.size||(e[ul]=void 0))}function Fg(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let F$=0;function Vg(e,t,n,o){const a=e._endId=++F$,s=()=>{a===e._endId&&o()};if(n!=null)return setTimeout(s,n);const{type:r,timeout:l,propCount:u}=K1(e,t);if(!r)return o();const c=r+"end";let d=0;const f=()=>{e.removeEventListener(c,v),s()},v=g=>{g.target===e&&++d>=u&&f()};setTimeout(()=>{d(n[p]||"").split(", "),a=o(`${ys}Delay`),s=o(`${ys}Duration`),r=zg(a,s),l=o(`${zl}Delay`),u=o(`${zl}Duration`),c=zg(l,u);let d=null,f=0,v=0;t===ys?r>0&&(d=ys,f=r,v=s.length):t===zl?c>0&&(d=zl,f=c,v=u.length):(f=Math.max(r,c),d=f>0?r>c?ys:zl:null,v=d?d===ys?s.length:u.length:0);const g=d===ys&&/\b(?:transform|all)(?:,|$)/.test(o(`${ys}Property`).toString());return{type:d,timeout:f,propCount:v,hasTransform:g}}function zg(e,t){for(;e.lengthHg(n)+Hg(e[o])))}function Hg(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Mp(e){return(e?e.ownerDocument:document).body.offsetHeight}function V$(e,t,n){const o=e[ul];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const qc=Symbol("_vod"),W1=Symbol("_vsh"),Pt={name:"show",beforeMount(e,{value:t},{transition:n}){e[qc]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Hl(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:o}){!t!=!n&&(o?t?(o.beforeEnter(e),Hl(e,!0),o.enter(e)):o.leave(e,()=>{Hl(e,!1)}):Hl(e,t))},beforeUnmount(e,{value:t}){Hl(e,t)}};function Hl(e,t){e.style.display=t?e[qc]:"none",e[W1]=!t}const z$=Symbol(""),H$=/(?:^|;)\s*display\s*:/;function K$(e,t,n){const o=e.style,a=Le(n);let s=!1;if(n&&!a){if(t)if(Le(t))for(const r of t.split(";")){const l=r.slice(0,r.indexOf(":")).trim();n[l]==null&&cc(o,l,"")}else for(const r in t)n[r]==null&&cc(o,r,"");for(const r in n)r==="display"&&(s=!0),cc(o,r,n[r])}else if(a){if(t!==n){const r=o[z$];r&&(n+=";"+r),o.cssText=n,s=H$.test(n)}}else t&&e.removeAttribute("style");qc in e&&(e[qc]=s?o.display:"",e[W1]&&(o.display="none"))}const Kg=/\s*!important$/;function cc(e,t,n){if(ye(n))n.forEach(o=>cc(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const o=W$(e,t);Kg.test(n)?e.setProperty(cs(o),n.replace(Kg,""),"important"):e[o]=n}}const Wg=["Webkit","Moz","ms"],Lf={};function W$(e,t){const n=Lf[t];if(n)return n;let o=Fn(t);if(o!=="filter"&&o in e)return Lf[t]=o;o=Gi(o);for(let a=0;aDf||(Y$.then(()=>Df=0),Df=Date.now());function X$(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;ea(J$(o,n.value),t,5,[o])};return n.value=e,n.attached=G$(),n}function J$(e,t){if(ye(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(o=>a=>!a._stopped&&o&&o(a))}else return t}const Xg=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Z$=(e,t,n,o,a,s)=>{const r=a==="svg";t==="class"?V$(e,o,r):t==="style"?K$(e,n,o):Ed(t)?Yh(t)||U$(e,t,n,o,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Q$(e,t,o,r))?(qg(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ug(e,t,o,r,s,t!=="value")):e._isVueCE&&(eO(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Le(o)))?qg(e,Fn(t),o,s,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Ug(e,t,o,r))};function Q$(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&Xg(t)&&Ve(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return Xg(t)&&Le(n)?!1:t in e}function eO(e,t){const n=e._def.props;if(!n)return!1;const o=Fn(t);return Array.isArray(n)?n.some(a=>Fn(a)===o):Object.keys(n).some(a=>Fn(a)===o)}const j1=new WeakMap,U1=new WeakMap,Yc=Symbol("_moveCb"),Jg=Symbol("_enterCb"),tO=e=>(delete e.props.mode,e),nO=tO({name:"TransitionGroup",props:Pn({},z1,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=ft(),o=i1();let a,s;return la(()=>{if(!a.length)return;const r=e.moveClass||`${e.name||"v"}-move`;if(!rO(a[0].el,n.vnode.el,r)){a=[];return}a.forEach(oO),a.forEach(aO);const l=a.filter(sO);Mp(n.vnode.el),l.forEach(u=>{const c=u.el,d=c.style;ga(c,r),d.transform=d.webkitTransform=d.transitionDuration="";const f=c[Yc]=v=>{v&&v.target!==c||(!v||v.propertyName.endsWith("transform"))&&(c.removeEventListener("transitionend",f),c[Yc]=null,Ss(c,r))};c.addEventListener("transitionend",f)}),a=[]}),()=>{const r=qt(e),l=H1(r);let u=r.tag||Fe;if(a=[],s)for(let c=0;c{l.split(/\s+/).forEach(u=>u&&o.classList.remove(u))}),n.split(/\s+/).forEach(l=>l&&o.classList.add(l)),o.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(o);const{hasTransform:r}=K1(o);return s.removeChild(o),r}const cl=e=>{const t=e.props["onUpdate:modelValue"]||!1;return ye(t)?n=>sc(t,n):t};function lO(e){e.target.composing=!0}function Zg(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Qa=Symbol("_assign");function Qg(e,t,n){return t&&(e=e.trim()),n&&(e=Xh(e)),e}const mv={created(e,{modifiers:{lazy:t,trim:n,number:o}},a){e[Qa]=cl(a);const s=o||a.props&&a.props.type==="number";Ts(e,t?"change":"input",r=>{r.target.composing||e[Qa](Qg(e.value,n,s))}),(n||s)&&Ts(e,"change",()=>{e.value=Qg(e.value,n,s)}),t||(Ts(e,"compositionstart",lO),Ts(e,"compositionend",Zg),Ts(e,"change",Zg))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:o,trim:a,number:s}},r){if(e[Qa]=cl(r),e.composing)return;const l=(s||e.type==="number")&&!/^0\d/.test(e.value)?Xh(e.value):e.value,u=t??"";l!==u&&(document.activeElement===e&&e.type!=="range"&&(o&&t===n||a&&e.value.trim()===u)||(e.value=u))}},G1={deep:!0,created(e,t,n){e[Qa]=cl(n),Ts(e,"change",()=>{const o=e._modelValue,a=X1(e),s=e.checked,r=e[Qa];if(ye(o)){const l=Nw(o,a),u=l!==-1;if(s&&!u)r(o.concat(a));else if(!s&&u){const c=[...o];c.splice(l,1),r(c)}}else if(xd(o)){const l=new Set(o);s?l.add(a):l.delete(a),r(l)}else r(J1(e,s))})},mounted:eb,beforeUpdate(e,t,n){e[Qa]=cl(n),eb(e,t,n)}};function eb(e,{value:t,oldValue:n},o){e._modelValue=t;let a;if(ye(t))a=Nw(t,o.props.value)>-1;else if(xd(t))a=t.has(o.props.value);else{if(t===n)return;a=gr(t,J1(e,!0))}e.checked!==a&&(e.checked=a)}const gv={created(e,{value:t},n){e.checked=gr(t,n.props.value),e[Qa]=cl(n),Ts(e,"change",()=>{e[Qa](X1(e))})},beforeUpdate(e,{value:t,oldValue:n},o){e[Qa]=cl(o),t!==n&&(e.checked=gr(t,o.props.value))}};function X1(e){return"_value"in e?e._value:e.value}function J1(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const iO=["ctrl","shift","alt","meta"],uO={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>iO.some(n=>e[`${n}Key`]&&!t.includes(n))},Xe=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),o=t.join(".");return n[o]||(n[o]=((a,...s)=>{for(let r=0;r{const n=e._withKeys||(e._withKeys={}),o=t.join(".");return n[o]||(n[o]=(a=>{if(!("key"in a))return;const s=cs(a.key);if(t.some(r=>r===s||cO[r]===s))return e(a)}))},dO=Pn({patchProp:Z$},L$);let tb;function Z1(){return tb||(tb=g$(dO))}const Ls=((...e)=>{Z1().render(...e)}),fO=((...e)=>{const t=Z1().createApp(...e),{mount:n}=t;return t.mount=o=>{const a=hO(o);if(!a)return;const s=t._component;!Ve(s)&&!s.render&&!s.template&&(s.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const r=n(a,!1,pO(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),r},t});function pO(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function hO(e){return Le(e)?document.querySelector(e):e}const we={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",backspace:"Backspace",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"},vO=["year","years","month","months","date","dates","week","datetime","datetimerange","daterange","monthrange","yearrange"],Bf=["sun","mon","tue","wed","thu","fri","sat"],ot="update:modelValue",bt="change",Sn="input",nb=Symbol("INSTALLED_KEY"),ia=["","default","small","large"],ob=["left","center","right"],Dd=11,Q1=2;var eS=typeof global=="object"&&global&&global.Object===Object&&global,mO=typeof self=="object"&&self&&self.Object===Object&&self,ua=eS||mO||Function("return this")(),Vo=ua.Symbol,tS=Object.prototype,gO=tS.hasOwnProperty,bO=tS.toString,Kl=Vo?Vo.toStringTag:void 0;function yO(e){var t=gO.call(e,Kl),n=e[Kl];try{e[Kl]=void 0;var o=!0}catch{}var a=bO.call(e);return o&&(t?e[Kl]=n:delete e[Kl]),a}var wO=Object.prototype,SO=wO.toString;function CO(e){return SO.call(e)}var kO="[object Null]",EO="[object Undefined]",ab=Vo?Vo.toStringTag:void 0;function Or(e){return e==null?e===void 0?EO:kO:ab&&ab in Object(e)?yO(e):CO(e)}function Pa(e){return e!=null&&typeof e=="object"}var xO="[object Symbol]";function Bd(e){return typeof e=="symbol"||Pa(e)&&Or(e)==xO}function bv(e,t){for(var n=-1,o=e==null?0:e.length,a=Array(o);++n0){if(++t>=QO)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function oR(e){return function(){return e}}var Gc=(function(){try{var e=Nr(Object,"defineProperty");return e({},"",{}),e}catch{}})(),aR=Gc?function(e,t){return Gc(e,"toString",{configurable:!0,enumerable:!1,value:oR(t),writable:!0})}:yv,aS=nR(aR);function sR(e,t){for(var n=-1,o=e==null?0:e.length;++n-1}var cR=9007199254740991,dR=/^(?:0|[1-9]\d*)$/;function Fd(e,t){var n=typeof e;return t=t??cR,!!t&&(n=="number"||n!="symbol"&&dR.test(e))&&e>-1&&e%1==0&&e-1&&e%1==0&&e<=hR}function Nl(e){return e!=null&&kv(e.length)&&!wv(e)}function vR(e,t,n){if(!fo(n))return!1;var o=typeof t;return(o=="number"?Nl(n)&&Fd(t,n.length):o=="string"&&t in n)?Qi(n[t],e):!1}function mR(e){return lS(function(t,n){var o=-1,a=n.length,s=a>1?n[a-1]:void 0,r=a>2?n[2]:void 0;for(s=e.length>3&&typeof s=="function"?(a--,s):void 0,r&&vR(n[0],n[1],r)&&(s=a<3?void 0:s,a=1),t=Object(t);++o-1}function TN(e,t){var n=this.__data__,o=Vd(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}function ps(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t0&&n(l)?t>1?nu(l,t-1,n,o,a):Ov(a,l):o||(a[a.length]=l)}return a}function Xc(e){var t=e==null?0:e.length;return t?nu(e,1):[]}function pS(e){return aS(rS(e,void 0,Xc),e+"")}var Rv=fS(Object.getPrototypeOf,Object),zN="[object Object]",HN=Function.prototype,KN=Object.prototype,hS=HN.toString,WN=KN.hasOwnProperty,jN=hS.call(Object);function Nv(e){if(!Pa(e)||Or(e)!=zN)return!1;var t=Rv(e);if(t===null)return!0;var n=WN.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&hS.call(n)==jN}function UN(e,t,n){var o=-1,a=e.length;t<0&&(t=-t>a?0:a+t),n=n>a?a:n,n<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(a);++o=t?e:t)),e}function or(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=ii(n),n=n===n?n:0),t!==void 0&&(t=ii(t),t=t===t?t:0),qN(ii(e),t,n)}function YN(){this.__data__=new ps,this.size=0}function GN(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function XN(e){return this.__data__.get(e)}function JN(e){return this.__data__.has(e)}var ZN=200;function QN(e,t){var n=this.__data__;if(n instanceof ps){var o=n.__data__;if(!Ti||o.lengthl))return!1;var c=s.get(e),d=s.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,g=n&$P?new $i:void 0;for(s.set(e,t),s.set(t,e);++f=t||$<0||f&&O>=s}function b(){var E=Hf();if(m(E))return k(E);l=setTimeout(b,h(E))}function k(E){return l=void 0,v&&o?g(E):(o=a=void 0,r)}function y(){l!==void 0&&clearTimeout(l),c=0,o=u=a=l=void 0}function S(){return l===void 0?r:k(Hf())}function C(){var E=Hf(),$=m(E);if(o=arguments,a=this,u=E,$){if(l===void 0)return p(u);if(f)return clearTimeout(l),l=setTimeout(b,t),g(u)}return l===void 0&&(l=setTimeout(b,t)),r}return C.cancel=y,C.flush=S,C}function Bp(e,t,n){(n!==void 0&&!Qi(e[t],n)||n===void 0&&!(t in e))&&Sv(e,t,n)}function MS(e){return Pa(e)&&Nl(e)}function Fp(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function mM(e){return Rl(e,tu(e))}function gM(e,t,n,o,a,s,r){var l=Fp(e,n),u=Fp(t,n),c=r.get(u);if(c){Bp(e,n,c);return}var d=s?s(l,u,n+"",e,t,r):void 0,f=d===void 0;if(f){var v=co(u),g=!v&&Ei(u),p=!v&&!g&&Tv(u);d=u,v||g||p?co(l)?d=l:MS(l)?d=oS(l):g?(f=!1,d=mS(u,!0)):p?(f=!1,d=SS(u,!0)):d=[]:Nv(u)||ki(u)?(d=l,ki(l)?d=mM(l):(!fo(l)||wv(l))&&(d=CS(u))):f=!1}f&&(r.set(u,d),a(d,u,o,s,r),r.delete(u)),Bp(e,n,d)}function _S(e,t,n,o,a){e!==t&&PS(t,function(s,r){if(a||(a=new Go),fo(s))gM(e,t,r,n,_S,o,a);else{var l=o?o(Fp(e,r),s,r+"",e,t,a):void 0;l===void 0&&(l=s),Bp(e,r,l)}},tu)}function bM(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function AS(e,t,n){var o=e==null?0:e.length;if(!o)return-1;var a=o-1;return sS(e,IS(t),a,!0)}function yM(e,t){var n=-1,o=Nl(e)?Array(e.length):[];return fM(e,function(a,s,r){o[++n]=t(a,s,r)}),o}function wM(e,t){var n=co(e)?bv:yM;return n(e,IS(t))}function LS(e,t){return nu(wM(e,t),1)}var SM=1/0;function CM(e){var t=e==null?0:e.length;return t?nu(e,SM):[]}function fl(e){for(var t=-1,n=e==null?0:e.length,o={};++t1),s}),Rl(e,wS(e),n),o&&(n=ci(n,RM|NM|IM,OM));for(var a=t.length;a--;)$M(n,t[a]);return n});function BS(e,t,n,o){if(!fo(e))return e;t=Il(t,e);for(var a=-1,s=t.length,r=s-1,l=e;l!=null&&++a=BM){var c=DM(e);if(c)return Mv(c);r=!1,a=TS,u=new $i}else u=l;e:for(;++oe===void 0,Ht=e=>typeof e=="boolean",He=e=>typeof e=="number",io=e=>!e&&e!==0||ye(e)&&e.length===0||at(e)&&!Object.keys(e).length,vo=e=>typeof Element>"u"?!1:e instanceof Element,mo=e=>bn(e),VM=e=>Le(e)?!Number.isNaN(Number(e)):!1,au=e=>e===window,Oi=e=>Object.keys(e),FS=e=>Object.entries(e),Ms=(e,t,n)=>({get value(){return wn(e,t,n)},set value(o){_M(e,t,o)}}),VS="__epPropKey",G=e=>e,zM=e=>at(e)&&!!e[VS],ca=(e,t)=>{if(!at(e)||zM(e))return e;const{values:n,required:o,default:a,type:s,validator:r}=e,l={type:s,required:!!o,validator:n||r?u=>{let c=!1,d=[];if(n&&(d=Array.from(n),Nt(e,"default")&&d.push(a),c||=d.includes(u)),r&&(c||=r(u)),!c&&d.length>0){const f=[...new Set(d)].map(v=>JSON.stringify(v)).join(", ");M$(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${f}], got value ${JSON.stringify(u)}.`)}return c}:void 0,[VS]:!0};return Nt(e,"default")&&(l.default=a),l},Ce=e=>fl(Object.entries(e).map(([t,n])=>[t,ca(n,t)])),su=Ce({to:{type:G([String,Object]),required:!0},disabled:Boolean}),HM=Ce({zIndex:{type:G([Number,String]),default:100},target:{type:String,default:""},offset:{type:Number,default:0},position:{type:String,values:["top","bottom"],default:"top"},teleported:Boolean,appendTo:{type:su.to.type,default:"body"}}),KM={scroll:({scrollTop:e,fixed:t})=>He(e)&&Ht(t),[bt]:e=>Ht(e)};var zS=class extends Error{constructor(e){super(e),this.name="ElementPlusError"}};function nn(e,t){throw new zS(`[${e}] ${t}`)}function pt(e,t){{const n=Le(e)?new zS(`[${e}] ${t}`):e;console.warn(n)}}const WM=["class","style"],jM=/^on[A-Z]/,Ud=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n}=e,o=w(()=>(n?.value||[]).concat(WM)),a=ft();return a?w(()=>fl(Object.entries(a.proxy?.$attrs).filter(([s])=>!o.value.includes(s)&&!(t&&jM.test(s))))):(pt("use-attrs","getCurrentInstance() returned null. useAttrs() must be called at the top of a setup function"),w(()=>({})))};function HS(e,t){var n;const o=Xt();return So(()=>{o.value=e()},{...t,flush:(n=void 0)!=null?n:"sync"}),br(o)}function Ir(e){return _w()?(Aw(e),!0):!1}function Wn(e){return typeof e=="function"?e():i(e)}function UM(e){if(!Jt(e))return At(e);const t=new Proxy({},{get(n,o,a){return i(Reflect.get(e.value,o,a))},set(n,o,a){return Jt(e.value[o])&&!Jt(a)?e.value[o].value=a:e.value[o]=a,!0},deleteProperty(n,o){return Reflect.deleteProperty(e.value,o)},has(n,o){return Reflect.has(e.value,o)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return At(t)}function qM(e){return UM(w(e))}const Mt=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const YM=e=>typeof e<"u",KS=e=>e!=null,GM=Object.prototype.toString,XM=e=>GM.call(e)==="[object Object]",WS=(e,t,n)=>Math.min(n,Math.max(t,e)),Xo=()=>{},Zc=JM();function JM(){var e,t;return Mt&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function jS(e,t){function n(...o){return new Promise((a,s)=>{Promise.resolve(e(()=>t.apply(this,o),{fn:t,thisArg:this,args:o})).then(a).catch(s)})}return n}function ZM(e,t={}){let n,o,a=Xo;const s=l=>{clearTimeout(l),a(),a=Xo};return l=>{const u=Wn(e),c=Wn(t.maxWait);return n&&s(n),u<=0||c!==void 0&&c<=0?(o&&(s(o),o=null),Promise.resolve(l())):new Promise((d,f)=>{a=t.rejectOnCancel?f:d,c&&!o&&(o=setTimeout(()=>{n&&s(n),o=null,d(l())},c)),n=setTimeout(()=>{o&&s(o),o=null,d(l())},u)})}}function QM(...e){let t=0,n,o=!0,a=Xo,s,r,l,u,c;!Jt(e[0])&&typeof e[0]=="object"?{delay:r,trailing:l=!0,leading:u=!0,rejectOnCancel:c=!1}=e[0]:[r,l=!0,u=!0,c=!1]=e;const d=()=>{n&&(clearTimeout(n),n=void 0,a(),a=Xo)};return v=>{const g=Wn(r),p=Date.now()-t,h=()=>s=v();return d(),g<=0?(t=Date.now(),h()):(p>g&&(u||!o)?(t=Date.now(),h()):l&&(s=new Promise((m,b)=>{a=c?b:m,n=setTimeout(()=>{t=Date.now(),o=!0,m(h()),d()},Math.max(0,g-p))})),!u&&!n&&(n=setTimeout(()=>o=!0,g)),o=!1,s)}}function e_(e){return ft()}function ru(e,t=200,n={}){return jS(ZM(t,n),e)}function t_(e,t=200,n={}){const o=M(e.value),a=ru(()=>{o.value=e.value},t,n);return le(e,()=>a()),o}function US(e,t=200,n=!1,o=!0,a=!1){return jS(QM(t,n,o,a),e)}function _v(e,t=!0,n){e_()?ht(e,n):t?e():Re(e)}function pl(e,t,n={}){const{immediate:o=!0}=n,a=M(!1);let s=null;function r(){s&&(clearTimeout(s),s=null)}function l(){a.value=!1,r()}function u(...c){r(),a.value=!0,s=setTimeout(()=>{a.value=!1,s=null,e(...c)},Wn(t))}return o&&(a.value=!0,Mt&&u()),Ir(l),{isPending:br(a),start:u,stop:l}}const da=Mt?window:void 0,n_=Mt?window.document:void 0;function xn(e){var t;const n=Wn(e);return(t=n?.$el)!=null?t:n}function Ft(...e){let t,n,o,a;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,o,a]=e,t=da):[t,n,o,a]=e,!t)return Xo;Array.isArray(n)||(n=[n]),Array.isArray(o)||(o=[o]);const s=[],r=()=>{s.forEach(d=>d()),s.length=0},l=(d,f,v,g)=>(d.addEventListener(f,v,g),()=>d.removeEventListener(f,v,g)),u=le(()=>[xn(t),Wn(a)],([d,f])=>{if(r(),!d)return;const v=XM(f)?{...f}:f;s.push(...n.flatMap(g=>o.map(p=>l(d,g,p,v))))},{immediate:!0,flush:"post"}),c=()=>{u(),r()};return Ir(c),c}let Mb=!1;function Av(e,t,n={}){const{window:o=da,ignore:a=[],capture:s=!0,detectIframe:r=!1}=n;if(!o)return Xo;Zc&&!Mb&&(Mb=!0,Array.from(o.document.body.children).forEach(h=>h.addEventListener("click",Xo)),o.document.documentElement.addEventListener("click",Xo));let l=!0;const u=h=>Wn(a).some(m=>{if(typeof m=="string")return Array.from(o.document.querySelectorAll(m)).some(b=>b===h.target||h.composedPath().includes(b));{const b=xn(m);return b&&(h.target===b||h.composedPath().includes(b))}});function c(h){const m=Wn(h);return m&&m.$.subTree.shapeFlag===16}function d(h,m){const b=Wn(h),k=b.$.subTree&&b.$.subTree.children;return k==null||!Array.isArray(k)?!1:k.some(y=>y.el===m.target||m.composedPath().includes(y.el))}const f=h=>{const m=xn(e);if(h.target!=null&&!(!(m instanceof Element)&&c(e)&&d(e,h))&&!(!m||m===h.target||h.composedPath().includes(m))){if(h.detail===0&&(l=!u(h)),!l){l=!0;return}t(h)}};let v=!1;const g=[Ft(o,"click",h=>{v||(v=!0,setTimeout(()=>{v=!1},0),f(h))},{passive:!0,capture:s}),Ft(o,"pointerdown",h=>{const m=xn(e);l=!u(h)&&!!(m&&!h.composedPath().includes(m))},{passive:!0}),r&&Ft(o,"blur",h=>{setTimeout(()=>{var m;const b=xn(e);((m=o.document.activeElement)==null?void 0:m.tagName)==="IFRAME"&&!b?.contains(o.document.activeElement)&&t(h)},0)})].filter(Boolean);return()=>g.forEach(h=>h())}function o_(){const e=M(!1),t=ft();return t&&ht(()=>{e.value=!0},t),e}function qd(e){const t=o_();return w(()=>(t.value,!!e()))}function lu(e,t,n={}){const{window:o=da,...a}=n;let s;const r=qd(()=>o&&"MutationObserver"in o),l=()=>{s&&(s.disconnect(),s=void 0)},u=w(()=>{const v=Wn(e),g=(Array.isArray(v)?v:[v]).map(xn).filter(KS);return new Set(g)}),c=le(()=>u.value,v=>{l(),r.value&&v.size&&(s=new MutationObserver(t),v.forEach(g=>s.observe(g,a)))},{immediate:!0,flush:"post"}),d=()=>s?.takeRecords(),f=()=>{c(),l()};return Ir(f),{isSupported:r,stop:f,takeRecords:d}}function a_(e={}){var t;const{window:n=da,deep:o=!0,triggerOnRemoval:a=!1}=e,s=(t=e.document)!=null?t:n?.document,r=()=>{var c;let d=s?.activeElement;if(o)for(;d?.shadowRoot;)d=(c=d?.shadowRoot)==null?void 0:c.activeElement;return d},l=M(),u=()=>{l.value=r()};return n&&(Ft(n,"blur",c=>{c.relatedTarget===null&&u()},!0),Ft(n,"focus",u,!0)),a&&lu(s,c=>{c.filter(d=>d.removedNodes.length).map(d=>Array.from(d.removedNodes)).flat().forEach(d=>{d===l.value&&u()})},{childList:!0,subtree:!0}),u(),l}function s_(e,t={}){const{window:n=da}=t,o=qd(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let a;const s=M(!1),r=c=>{s.value=c.matches},l=()=>{a&&("removeEventListener"in a?a.removeEventListener("change",r):a.removeListener(r))},u=So(()=>{o.value&&(l(),a=n.matchMedia(Wn(e)),"addEventListener"in a?a.addEventListener("change",r):a.addListener(r),s.value=a.matches)});return Ir(()=>{u(),l(),a=void 0}),s}function r_(e){return JSON.parse(JSON.stringify(e))}function l_(e,t,n={}){const{window:o=da,initialValue:a,observe:s=!1}=n,r=M(a),l=w(()=>{var c;return xn(t)||((c=o?.document)==null?void 0:c.documentElement)});function u(){var c;const d=Wn(e),f=Wn(l);if(f&&o&&d){const v=(c=o.getComputedStyle(f).getPropertyValue(d))==null?void 0:c.trim();r.value=v||a}}return s&&lu(l,u,{attributeFilter:["style","class"],window:o}),le([l,()=>Wn(e)],(c,d)=>{d[0]&&d[1]&&d[0].style.removeProperty(d[1]),u()},{immediate:!0}),le(r,c=>{var d;const f=Wn(e);(d=l.value)!=null&&d.style&&f&&(c==null?l.value.style.removeProperty(f):l.value.style.setProperty(f,c))}),r}function i_(e={}){const{document:t=n_}=e;if(!t)return M("visible");const n=M(t.visibilityState);return Ft(t,"visibilitychange",()=>{n.value=t.visibilityState}),n}function en(e,t,n={}){const{window:o=da,...a}=n;let s;const r=qd(()=>o&&"ResizeObserver"in o),l=()=>{s&&(s.disconnect(),s=void 0)},u=w(()=>{const f=Wn(e);return Array.isArray(f)?f.map(v=>xn(v)):[xn(f)]}),c=le(u,f=>{if(l(),r.value&&o){s=new ResizeObserver(t);for(const v of f)v&&s.observe(v,a)}},{immediate:!0,flush:"post"}),d=()=>{l(),c()};return Ir(d),{isSupported:r,stop:d}}function _b(e,t={}){const{reset:n=!0,windowResize:o=!0,windowScroll:a=!0,immediate:s=!0,updateTiming:r="sync"}=t,l=M(0),u=M(0),c=M(0),d=M(0),f=M(0),v=M(0),g=M(0),p=M(0);function h(){const b=xn(e);if(!b){n&&(l.value=0,u.value=0,c.value=0,d.value=0,f.value=0,v.value=0,g.value=0,p.value=0);return}const k=b.getBoundingClientRect();l.value=k.height,u.value=k.bottom,c.value=k.left,d.value=k.right,f.value=k.top,v.value=k.width,g.value=k.x,p.value=k.y}function m(){r==="sync"?h():r==="next-frame"&&requestAnimationFrame(()=>h())}return en(e,m),le(()=>xn(e),b=>!b&&m()),lu(e,m,{attributeFilter:["style","class"]}),a&&Ft("scroll",m,{capture:!0,passive:!0}),o&&Ft("resize",m,{passive:!0}),_v(()=>{s&&m()}),{height:l,bottom:u,left:c,right:d,top:f,width:v,x:g,y:p,update:m}}function Vp(e,t={width:0,height:0},n={}){const{window:o=da,box:a="content-box"}=n,s=w(()=>{var f,v;return(v=(f=xn(e))==null?void 0:f.namespaceURI)==null?void 0:v.includes("svg")}),r=M(t.width),l=M(t.height),{stop:u}=en(e,([f])=>{const v=a==="border-box"?f.borderBoxSize:a==="content-box"?f.contentBoxSize:f.devicePixelContentBoxSize;if(o&&s.value){const g=xn(e);if(g){const p=g.getBoundingClientRect();r.value=p.width,l.value=p.height}}else if(v){const g=Array.isArray(v)?v:[v];r.value=g.reduce((p,{inlineSize:h})=>p+h,0),l.value=g.reduce((p,{blockSize:h})=>p+h,0)}else r.value=f.contentRect.width,l.value=f.contentRect.height},n);_v(()=>{const f=xn(e);f&&(r.value="offsetWidth"in f?f.offsetWidth:t.width,l.value="offsetHeight"in f?f.offsetHeight:t.height)});const c=le(()=>xn(e),f=>{r.value=f?t.width:0,l.value=f?t.height:0});function d(){u(),c()}return{width:r,height:l,stop:d}}function u_(e,t,n={}){const{root:o,rootMargin:a="0px",threshold:s=0,window:r=da,immediate:l=!0}=n,u=qd(()=>r&&"IntersectionObserver"in r),c=w(()=>{const p=Wn(e);return(Array.isArray(p)?p:[p]).map(xn).filter(KS)});let d=Xo;const f=M(l),v=u.value?le(()=>[c.value,xn(o),f.value],([p,h])=>{if(d(),!f.value||!p.length)return;const m=new IntersectionObserver(t,{root:xn(h),rootMargin:a,threshold:s});p.forEach(b=>b&&m.observe(b)),d=()=>{m.disconnect(),d=Xo}},{immediate:l,flush:"post"}):Xo,g=()=>{d(),v(),f.value=!1};return Ir(g),{isSupported:u,isActive:f,pause(){d(),f.value=!1},resume(){f.value=!0},stop:g}}function qS(e,t,n,o={}){var a,s,r;const{clone:l=!1,passive:u=!1,eventName:c,deep:d=!1,defaultValue:f,shouldEmit:v}=o,g=ft(),p=n||g?.emit||((a=g?.$emit)==null?void 0:a.bind(g))||((r=(s=g?.proxy)==null?void 0:s.$emit)==null?void 0:r.bind(g?.proxy));let h=c;t||(t="modelValue"),h=h||`update:${t.toString()}`;const m=y=>l?typeof l=="function"?l(y):r_(y):y,b=()=>YM(e[t])?m(e[t]):f,k=y=>{v?v(y)&&p(h,y):p(h,y)};if(u){const y=b(),S=M(y);let C=!1;return le(()=>e[t],E=>{C||(C=!0,S.value=m(E),Re(()=>C=!1))}),le(S,E=>{!C&&(E!==e[t]||d)&&k(E)},{deep:d}),S}else return w({get(){return b()},set(y){k(y)}})}function c_(e={}){const{window:t=da}=e;if(!t)return M(!1);const n=M(t.document.hasFocus());return Ft(t,"blur",()=>{n.value=!1}),Ft(t,"focus",()=>{n.value=!0}),n}function Lv(e={}){const{window:t=da,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:o=Number.POSITIVE_INFINITY,listenOrientation:a=!0,includeScrollbar:s=!0,type:r="inner"}=e,l=M(n),u=M(o),c=()=>{t&&(r==="outer"?(l.value=t.outerWidth,u.value=t.outerHeight):s?(l.value=t.innerWidth,u.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,u.value=t.document.documentElement.clientHeight))};if(c(),_v(c),Ft("resize",c,{passive:!0}),a){const d=s_("(orientation: portrait)");le(d,()=>c())}return{width:l,height:u}}function Dv(){const e=Xt(),t=M(0),n=w(()=>({minWidth:`${Math.max(t.value,Dd)}px`}));return en(e,()=>{t.value=e.value?.getBoundingClientRect().width??0}),{calculatorRef:e,calculatorWidth:t,inputStyle:n}}const Ta=({from:e,replacement:t,scope:n,version:o,ref:a,type:s="API"},r)=>{le(()=>i(r),l=>{l&&pt(n,`[${s}] ${e} is about to be deprecated in version ${o}, please use ${t} instead. +For more detail, please visit: ${a} +`)},{immediate:!0})},d_='a[href],button:not([disabled]),button:not([hidden]),:not([tabindex="-1"]),input:not([disabled]),input:not([type="hidden"]),select:not([disabled]),textarea:not([disabled])',YS=e=>typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot,Ab=e=>typeof Element>"u"?!1:e instanceof Element,f_=e=>getComputedStyle(e).position==="fixed"?!1:e.offsetParent!==null,Lb=e=>Array.from(e.querySelectorAll(d_)).filter(t=>Ri(t)&&f_(t)),Ri=e=>{if(e.tabIndex>0||e.tabIndex===0&&e.getAttribute("tabIndex")!==null)return!0;if(e.tabIndex<0||e.hasAttribute("disabled")||e.getAttribute("aria-disabled")==="true")return!1;switch(e.nodeName){case"A":return!!e.href&&e.rel!=="ignore";case"INPUT":return!(e.type==="hidden"||e.type==="file");case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},dc=function(e,t,...n){let o;t.includes("mouse")||t.includes("click")?o="MouseEvents":t.includes("key")?o="KeyboardEvent":o="HTMLEvents";const a=document.createEvent(o);return a.initEvent(t,...n),e.dispatchEvent(a),e},GS=e=>!e.getAttribute("aria-owns"),XS=(e,t,n)=>{const{parentNode:o}=e;if(!o)return null;const a=o.querySelectorAll(n);return a[Array.prototype.indexOf.call(a,e)+t]||null},iu=(e,t)=>{if(!e||!e.focus)return;let n=!1;Ab(e)&&!Ri(e)&&!e.getAttribute("tabindex")&&(e.setAttribute("tabindex","-1"),n=!0),e.focus(t),Ab(e)&&n&&e.removeAttribute("tabindex")},fc=e=>{e&&(iu(e),!GS(e)&&e.click())},Yd=()=>Mt&&/firefox/i.test(window.navigator.userAgent),JS=()=>Mt&&/android/i.test(window.navigator.userAgent),Bv=(e="")=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),$s=e=>Gi(e),p_="utils/dom/style",ZS=(e="")=>e.split(" ").filter(t=>!!t.trim()),$a=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},Do=(e,t)=>{!e||!t.trim()||e.classList.add(...ZS(t))},to=(e,t)=>{!e||!t.trim()||e.classList.remove(...ZS(t))},Ya=(e,t)=>{if(!Mt||!e||!t||YS(e))return"";let n=Fn(t);n==="float"&&(n="cssFloat");try{const o=e.style[n];if(o)return o;const a=document.defaultView?.getComputedStyle(e,"");return a?a[n]:""}catch{return e.style[n]}},QS=(e,t,n)=>{if(!(!e||!t))if(at(t))FS(t).forEach(([o,a])=>QS(e,o,a));else{const o=Fn(t);e.style[o]=n}};function ln(e,t="px"){if(!e&&e!==0)return"";if(He(e)||VM(e))return`${e}${t}`;if(Le(e))return e;pt(p_,"binding value must be a string or number")}const eC=(e,t,n,o)=>{const a={offsetX:0,offsetY:0},s=M(!1),r=(v,g)=>{if(e.value){const{offsetX:p,offsetY:h}=a,m=e.value.getBoundingClientRect(),b=m.left,k=m.top,y=m.width,S=m.height,C=document.documentElement.clientWidth,E=document.documentElement.clientHeight,$=-b+p,O=-k+h,N=C-b-y+p,R=E-k-(S{const g=v.clientX,p=v.clientY,{offsetX:h,offsetY:m}=a,b=y=>{s.value||(s.value=!0),r(h+y.clientX-g,m+y.clientY-p)},k=()=>{s.value=!1,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",k)};document.addEventListener("mousemove",b),document.addEventListener("mouseup",k)},u=()=>{t.value&&e.value&&(t.value.addEventListener("mousedown",l),window.addEventListener("resize",f))},c=()=>{t.value&&e.value&&(t.value.removeEventListener("mousedown",l),window.removeEventListener("resize",f))},d=()=>{a.offsetX=0,a.offsetY=0,e.value&&(e.value.style.transform="")},f=()=>{const{offsetX:v,offsetY:g}=a;r(v,g)};return ht(()=>{So(()=>{n.value?u():c()})}),Bt(()=>{c()}),{isDragging:s,resetPosition:d,updatePosition:f}};var h_={name:"en",el:{breadcrumb:{label:"Breadcrumb"},colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color.",alphaLabel:"pick alpha value",alphaDescription:"alpha {alpha}, current color is {color}",hueLabel:"pick hue value",hueDescription:"hue {hue}, current color is {color}",svLabel:"pick saturation and brightness value",svDescription:"saturation {saturation}, brightness {brightness}, current color is {color}",predefineDescription:"select {value} as the color"},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},mention:{loading:"Loading"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum",selectAllLabel:"Select all rows",selectRowLabel:"Select this row",expandRowLabel:"Expand this row",collapseRowLabel:"Collapse this row",sortLabel:"Sort by {column}",filterLabel:"Filter by {column}"},tag:{close:"Close this tag"},tour:{next:"Next",previous:"Previous",finish:"Finish",close:"Close this dialog"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"},carousel:{leftArrow:"Carousel arrow left",rightArrow:"Carousel arrow right",indicator:"Carousel switch to index {index}"}}};const v_=e=>(t,n)=>m_(t,n,i(e)),m_=(e,t,n)=>wn(n,e,e).replace(/\{(\w+)\}/g,(o,a)=>`${t?.[a]??`{${a}}`}`),g_=e=>({lang:w(()=>i(e).name),locale:Jt(e)?e:M(e),t:v_(e)}),tC=Symbol("localeContextKey"),Ct=e=>{const t=e||_e(tC,M());return g_(w(()=>t.value||h_))},di="el",b_="is-",Gs=(e,t,n,o,a)=>{let s=`${e}-${t}`;return n&&(s+=`-${n}`),o&&(s+=`__${o}`),a&&(s+=`--${a}`),s},nC=Symbol("namespaceContextKey"),Fv=e=>{const t=e||(ft()?_e(nC,M(di)):M(di));return w(()=>i(t)||di)},fe=(e,t)=>{const n=Fv(t);return{namespace:n,b:(h="")=>Gs(n.value,e,h,"",""),e:h=>h?Gs(n.value,e,"",h,""):"",m:h=>h?Gs(n.value,e,"","",h):"",be:(h,m)=>h&&m?Gs(n.value,e,h,m,""):"",em:(h,m)=>h&&m?Gs(n.value,e,"",h,m):"",bm:(h,m)=>h&&m?Gs(n.value,e,h,"",m):"",bem:(h,m,b)=>h&&m&&b?Gs(n.value,e,h,m,b):"",is:(h,...m)=>{const b=m.length>=1?m[0]:!0;return h&&b?`${b_}${h}`:""},cssVar:h=>{const m={};for(const b in h)h[b]&&(m[`--${n.value}-${b}`]=h[b]);return m},cssVarName:h=>`--${n.value}-${h}`,cssVarBlock:h=>{const m={};for(const b in h)h[b]&&(m[`--${n.value}-${e}-${b}`]=h[b]);return m},cssVarBlockName:h=>`--${n.value}-${e}-${h}`}};function y_(e,t,n,o){const a=n-t;return e/=o/2,e<1?a/2*e*e*e+t:a/2*((e-=2)*e*e+2)+t}const ta=e=>Mt?window.requestAnimationFrame(e):setTimeout(e,16),rs=e=>Mt?window.cancelAnimationFrame(e):clearTimeout(e),w_=(e,t)=>{if(!Mt)return!1;const n={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],o=Ya(e,n);return["scroll","auto","overlay"].some(a=>o.includes(a))},Vv=(e,t)=>{if(!Mt)return;let n=e;for(;n;){if([window,document,document.documentElement].includes(n))return window;if(w_(n,t))return n;YS(n)?n=n.host:n=n.parentNode}return n};let Fu;const oC=e=>{if(!Mt)return 0;if(Fu!==void 0)return Fu;const t=document.createElement("div");t.className=`${e}-scrollbar__wrap`,t.style.visibility="hidden",t.style.width="100px",t.style.position="absolute",t.style.top="-9999px",document.body.appendChild(t);const n=t.offsetWidth;t.style.overflow="scroll";const o=document.createElement("div");o.style.width="100%",t.appendChild(o);const a=o.offsetWidth;return t.parentNode?.removeChild(t),Fu=n-a,Fu};function zv(e,t){if(!Mt)return;if(!t){e.scrollTop=0;return}const n=[];let o=t.offsetParent;for(;o!==null&&e!==o&&e.contains(o);)n.push(o),o=o.offsetParent;const a=t.offsetTop+n.reduce((u,c)=>u+c.offsetTop,0),s=a+t.offsetHeight,r=e.scrollTop,l=r+e.clientHeight;al&&(e.scrollTop=s-e.clientHeight)}function S_(e,t,n,o,a){const s=Date.now();let r;const l=()=>{const u=Date.now()-s,c=y_(u>o?o:u,t,n,o);au(e)?e.scrollTo(window.pageXOffset,c):e.scrollTop=c,u{r&&rs(r)}}const Db=(e,t)=>au(t)?e.ownerDocument.documentElement:t,Bb=e=>au(e)?window.scrollY:e.scrollTop,Gd=(e,t={})=>{Jt(e)||nn("[useLockscreen]","You need to pass a ref param to this function");const n=t.ns||fe("popup"),o=w(()=>n.bm("parent","hidden"));let a=0,s=!1,r="0",l=!1;const u=()=>{l||(l=!0,setTimeout(()=>{typeof document>"u"||s&&document&&(document.body.style.width=r,to(document.body,o.value))},200))};le(e,c=>{if(!c){u();return}l=!1,s=!$a(document.body,o.value),s&&(r=document.body.style.width,Do(document.body,o.value)),a=oC(n.namespace.value);const d=document.documentElement.clientHeight0&&(d||f==="scroll")&&s&&(document.body.style.width=`calc(100% - ${a}px)`)}),Aw(()=>u())},Rn=(e,t,{checkForDefaultPrevented:n=!0}={})=>a=>{const s=e?.(a);if(n===!1||!s)return t?.(a)},Fb=e=>t=>t.pointerType==="mouse"?e(t):void 0,jt=e=>{if(e.code&&e.code!=="Unidentified")return e.code;const t=aC(e);return t?Object.values(we).includes(t)?t:t===" "?we.space:"":""},aC=e=>{let t=e.key&&e.key!=="Unidentified"?e.key:"";if(!t&&e.type==="keyup"&&JS()){const n=e.target;t=n.value.charAt(n.selectionStart-1)}return t},C_=ca({type:G(Boolean),default:null}),k_=ca({type:G(Function)}),E_=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,o=[t],a={[e]:C_,[n]:k_};return{useModelToggle:({indicator:r,toggleReason:l,shouldHideWhenRouteChanges:u,shouldProceed:c,onShow:d,onHide:f})=>{const v=ft(),{emit:g}=v,p=v.props,h=w(()=>Ve(p[n])),m=w(()=>p[e]===null),b=$=>{r.value!==!0&&(r.value=!0,l&&(l.value=$),Ve(d)&&d($))},k=$=>{r.value!==!1&&(r.value=!1,l&&(l.value=$),Ve(f)&&f($))},y=$=>{if(p.disabled===!0||Ve(c)&&!c())return;const O=h.value&&Mt;O&&g(t,!0),(m.value||!O)&&b($)},S=$=>{if(p.disabled===!0||!Mt)return;const O=h.value&&Mt;O&&g(t,!1),(m.value||!O)&&k($)},C=$=>{Ht($)&&(p.disabled&&$?h.value&&g(t,!1):r.value!==$&&($?b():k()))},E=()=>{r.value?S():y()};return le(()=>p[e],C),u&&v.appContext.config.globalProperties.$route!==void 0&&le(()=>({...v.proxy.$route}),()=>{u.value&&r.value&&S()}),ht(()=>{C(p[e])}),{hide:S,show:y,toggle:E,hasUpdateHandler:h}},useModelToggleProps:a,useModelToggleEmits:o}},sC=e=>{const t=ft();return w(()=>t?.proxy?.$props?.[e])};var go="top",zo="bottom",Ho="right",bo="left",Hv="auto",uu=[go,zo,Ho,bo],hl="start",Ni="end",x_="clippingParents",rC="viewport",Wl="popper",T_="reference",Vb=uu.reduce(function(e,t){return e.concat([t+"-"+hl,t+"-"+Ni])},[]),Da=[].concat(uu,[Hv]).reduce(function(e,t){return e.concat([t,t+"-"+hl,t+"-"+Ni])},[]),$_="beforeRead",O_="read",R_="afterRead",N_="beforeMain",I_="main",P_="afterMain",M_="beforeWrite",__="write",A_="afterWrite",L_=[$_,O_,R_,N_,I_,P_,M_,__,A_];function _a(e){return e?(e.nodeName||"").toLowerCase():null}function Io(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Sr(e){var t=Io(e).Element;return e instanceof t||e instanceof Element}function Fo(e){var t=Io(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Kv(e){if(typeof ShadowRoot>"u")return!1;var t=Io(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function D_(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var o=t.styles[n]||{},a=t.attributes[n]||{},s=t.elements[n];!Fo(s)||!_a(s)||(Object.assign(s.style,o),Object.keys(a).forEach(function(r){var l=a[r];l===!1?s.removeAttribute(r):s.setAttribute(r,l===!0?"":l)}))})}function B_(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(o){var a=t.elements[o],s=t.attributes[o]||{},r=Object.keys(t.styles.hasOwnProperty(o)?t.styles[o]:n[o]),l=r.reduce(function(u,c){return u[c]="",u},{});!Fo(a)||!_a(a)||(Object.assign(a.style,l),Object.keys(s).forEach(function(u){a.removeAttribute(u)}))})}}var lC={name:"applyStyles",enabled:!0,phase:"write",fn:D_,effect:B_,requires:["computeStyles"]};function Oa(e){return e.split("-")[0]}var fr=Math.max,Qc=Math.min,vl=Math.round;function zp(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function iC(){return!/^((?!chrome|android).)*safari/i.test(zp())}function ml(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var o=e.getBoundingClientRect(),a=1,s=1;t&&Fo(e)&&(a=e.offsetWidth>0&&vl(o.width)/e.offsetWidth||1,s=e.offsetHeight>0&&vl(o.height)/e.offsetHeight||1);var r=Sr(e)?Io(e):window,l=r.visualViewport,u=!iC()&&n,c=(o.left+(u&&l?l.offsetLeft:0))/a,d=(o.top+(u&&l?l.offsetTop:0))/s,f=o.width/a,v=o.height/s;return{width:f,height:v,top:d,right:c+f,bottom:d+v,left:c,x:c,y:d}}function Wv(e){var t=ml(e),n=e.offsetWidth,o=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-o)<=1&&(o=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:o}}function uC(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Kv(n)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}function ls(e){return Io(e).getComputedStyle(e)}function F_(e){return["table","td","th"].indexOf(_a(e))>=0}function Ks(e){return((Sr(e)?e.ownerDocument:e.document)||window.document).documentElement}function Xd(e){return _a(e)==="html"?e:e.assignedSlot||e.parentNode||(Kv(e)?e.host:null)||Ks(e)}function zb(e){return!Fo(e)||ls(e).position==="fixed"?null:e.offsetParent}function V_(e){var t=/firefox/i.test(zp()),n=/Trident/i.test(zp());if(n&&Fo(e)){var o=ls(e);if(o.position==="fixed")return null}var a=Xd(e);for(Kv(a)&&(a=a.host);Fo(a)&&["html","body"].indexOf(_a(a))<0;){var s=ls(a);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||t&&s.willChange==="filter"||t&&s.filter&&s.filter!=="none")return a;a=a.parentNode}return null}function cu(e){for(var t=Io(e),n=zb(e);n&&F_(n)&&ls(n).position==="static";)n=zb(n);return n&&(_a(n)==="html"||_a(n)==="body"&&ls(n).position==="static")?t:n||V_(e)||t}function jv(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function fi(e,t,n){return fr(e,Qc(t,n))}function z_(e,t,n){var o=fi(e,t,n);return o>n?n:o}function cC(){return{top:0,right:0,bottom:0,left:0}}function dC(e){return Object.assign({},cC(),e)}function fC(e,t){return t.reduce(function(n,o){return n[o]=e,n},{})}var H_=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,dC(typeof e!="number"?e:fC(e,uu))};function K_(e){var t,n=e.state,o=e.name,a=e.options,s=n.elements.arrow,r=n.modifiersData.popperOffsets,l=Oa(n.placement),u=jv(l),c=[bo,Ho].indexOf(l)>=0,d=c?"height":"width";if(!(!s||!r)){var f=H_(a.padding,n),v=Wv(s),g=u==="y"?go:bo,p=u==="y"?zo:Ho,h=n.rects.reference[d]+n.rects.reference[u]-r[u]-n.rects.popper[d],m=r[u]-n.rects.reference[u],b=cu(s),k=b?u==="y"?b.clientHeight||0:b.clientWidth||0:0,y=h/2-m/2,S=f[g],C=k-v[d]-f[p],E=k/2-v[d]/2+y,$=fi(S,E,C),O=u;n.modifiersData[o]=(t={},t[O]=$,t.centerOffset=$-E,t)}}function W_(e){var t=e.state,n=e.options,o=n.element,a=o===void 0?"[data-popper-arrow]":o;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||uC(t.elements.popper,a)&&(t.elements.arrow=a))}var j_={name:"arrow",enabled:!0,phase:"main",fn:K_,effect:W_,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function gl(e){return e.split("-")[1]}var U_={top:"auto",right:"auto",bottom:"auto",left:"auto"};function q_(e,t){var n=e.x,o=e.y,a=t.devicePixelRatio||1;return{x:vl(n*a)/a||0,y:vl(o*a)/a||0}}function Hb(e){var t,n=e.popper,o=e.popperRect,a=e.placement,s=e.variation,r=e.offsets,l=e.position,u=e.gpuAcceleration,c=e.adaptive,d=e.roundOffsets,f=e.isFixed,v=r.x,g=v===void 0?0:v,p=r.y,h=p===void 0?0:p,m=typeof d=="function"?d({x:g,y:h}):{x:g,y:h};g=m.x,h=m.y;var b=r.hasOwnProperty("x"),k=r.hasOwnProperty("y"),y=bo,S=go,C=window;if(c){var E=cu(n),$="clientHeight",O="clientWidth";if(E===Io(n)&&(E=Ks(n),ls(E).position!=="static"&&l==="absolute"&&($="scrollHeight",O="scrollWidth")),E=E,a===go||(a===bo||a===Ho)&&s===Ni){S=zo;var N=f&&E===C&&C.visualViewport?C.visualViewport.height:E[$];h-=N-o.height,h*=u?1:-1}if(a===bo||(a===go||a===zo)&&s===Ni){y=Ho;var R=f&&E===C&&C.visualViewport?C.visualViewport.width:E[O];g-=R-o.width,g*=u?1:-1}}var A=Object.assign({position:l},c&&U_),_=d===!0?q_({x:g,y:h},Io(n)):{x:g,y:h};if(g=_.x,h=_.y,u){var V;return Object.assign({},A,(V={},V[S]=k?"0":"",V[y]=b?"0":"",V.transform=(C.devicePixelRatio||1)<=1?"translate("+g+"px, "+h+"px)":"translate3d("+g+"px, "+h+"px, 0)",V))}return Object.assign({},A,(t={},t[S]=k?h+"px":"",t[y]=b?g+"px":"",t.transform="",t))}function Y_(e){var t=e.state,n=e.options,o=n.gpuAcceleration,a=o===void 0?!0:o,s=n.adaptive,r=s===void 0?!0:s,l=n.roundOffsets,u=l===void 0?!0:l,c={placement:Oa(t.placement),variation:gl(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Hb(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:r,roundOffsets:u})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Hb(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var pC={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Y_,data:{}},Vu={passive:!0};function G_(e){var t=e.state,n=e.instance,o=e.options,a=o.scroll,s=a===void 0?!0:a,r=o.resize,l=r===void 0?!0:r,u=Io(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&c.forEach(function(d){d.addEventListener("scroll",n.update,Vu)}),l&&u.addEventListener("resize",n.update,Vu),function(){s&&c.forEach(function(d){d.removeEventListener("scroll",n.update,Vu)}),l&&u.removeEventListener("resize",n.update,Vu)}}var hC={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:G_,data:{}},X_={left:"right",right:"left",bottom:"top",top:"bottom"};function pc(e){return e.replace(/left|right|bottom|top/g,function(t){return X_[t]})}var J_={start:"end",end:"start"};function Kb(e){return e.replace(/start|end/g,function(t){return J_[t]})}function Uv(e){var t=Io(e),n=t.pageXOffset,o=t.pageYOffset;return{scrollLeft:n,scrollTop:o}}function qv(e){return ml(Ks(e)).left+Uv(e).scrollLeft}function Z_(e,t){var n=Io(e),o=Ks(e),a=n.visualViewport,s=o.clientWidth,r=o.clientHeight,l=0,u=0;if(a){s=a.width,r=a.height;var c=iC();(c||!c&&t==="fixed")&&(l=a.offsetLeft,u=a.offsetTop)}return{width:s,height:r,x:l+qv(e),y:u}}function Q_(e){var t,n=Ks(e),o=Uv(e),a=(t=e.ownerDocument)==null?void 0:t.body,s=fr(n.scrollWidth,n.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),r=fr(n.scrollHeight,n.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),l=-o.scrollLeft+qv(e),u=-o.scrollTop;return ls(a||n).direction==="rtl"&&(l+=fr(n.clientWidth,a?a.clientWidth:0)-s),{width:s,height:r,x:l,y:u}}function Yv(e){var t=ls(e),n=t.overflow,o=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+o)}function vC(e){return["html","body","#document"].indexOf(_a(e))>=0?e.ownerDocument.body:Fo(e)&&Yv(e)?e:vC(Xd(e))}function pi(e,t){var n;t===void 0&&(t=[]);var o=vC(e),a=o===((n=e.ownerDocument)==null?void 0:n.body),s=Io(o),r=a?[s].concat(s.visualViewport||[],Yv(o)?o:[]):o,l=t.concat(r);return a?l:l.concat(pi(Xd(r)))}function Hp(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function eA(e,t){var n=ml(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function Wb(e,t,n){return t===rC?Hp(Z_(e,n)):Sr(t)?eA(t,n):Hp(Q_(Ks(e)))}function tA(e){var t=pi(Xd(e)),n=["absolute","fixed"].indexOf(ls(e).position)>=0,o=n&&Fo(e)?cu(e):e;return Sr(o)?t.filter(function(a){return Sr(a)&&uC(a,o)&&_a(a)!=="body"}):[]}function nA(e,t,n,o){var a=t==="clippingParents"?tA(e):[].concat(t),s=[].concat(a,[n]),r=s[0],l=s.reduce(function(u,c){var d=Wb(e,c,o);return u.top=fr(d.top,u.top),u.right=Qc(d.right,u.right),u.bottom=Qc(d.bottom,u.bottom),u.left=fr(d.left,u.left),u},Wb(e,r,o));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function mC(e){var t=e.reference,n=e.element,o=e.placement,a=o?Oa(o):null,s=o?gl(o):null,r=t.x+t.width/2-n.width/2,l=t.y+t.height/2-n.height/2,u;switch(a){case go:u={x:r,y:t.y-n.height};break;case zo:u={x:r,y:t.y+t.height};break;case Ho:u={x:t.x+t.width,y:l};break;case bo:u={x:t.x-n.width,y:l};break;default:u={x:t.x,y:t.y}}var c=a?jv(a):null;if(c!=null){var d=c==="y"?"height":"width";switch(s){case hl:u[c]=u[c]-(t[d]/2-n[d]/2);break;case Ni:u[c]=u[c]+(t[d]/2-n[d]/2);break}}return u}function Ii(e,t){t===void 0&&(t={});var n=t,o=n.placement,a=o===void 0?e.placement:o,s=n.strategy,r=s===void 0?e.strategy:s,l=n.boundary,u=l===void 0?x_:l,c=n.rootBoundary,d=c===void 0?rC:c,f=n.elementContext,v=f===void 0?Wl:f,g=n.altBoundary,p=g===void 0?!1:g,h=n.padding,m=h===void 0?0:h,b=dC(typeof m!="number"?m:fC(m,uu)),k=v===Wl?T_:Wl,y=e.rects.popper,S=e.elements[p?k:v],C=nA(Sr(S)?S:S.contextElement||Ks(e.elements.popper),u,d,r),E=ml(e.elements.reference),$=mC({reference:E,element:y,placement:a}),O=Hp(Object.assign({},y,$)),N=v===Wl?O:E,R={top:C.top-N.top+b.top,bottom:N.bottom-C.bottom+b.bottom,left:C.left-N.left+b.left,right:N.right-C.right+b.right},A=e.modifiersData.offset;if(v===Wl&&A){var _=A[a];Object.keys(R).forEach(function(V){var H=[Ho,zo].indexOf(V)>=0?1:-1,U=[go,zo].indexOf(V)>=0?"y":"x";R[V]+=_[U]*H})}return R}function oA(e,t){t===void 0&&(t={});var n=t,o=n.placement,a=n.boundary,s=n.rootBoundary,r=n.padding,l=n.flipVariations,u=n.allowedAutoPlacements,c=u===void 0?Da:u,d=gl(o),f=d?l?Vb:Vb.filter(function(p){return gl(p)===d}):uu,v=f.filter(function(p){return c.indexOf(p)>=0});v.length===0&&(v=f);var g=v.reduce(function(p,h){return p[h]=Ii(e,{placement:h,boundary:a,rootBoundary:s,padding:r})[Oa(h)],p},{});return Object.keys(g).sort(function(p,h){return g[p]-g[h]})}function aA(e){if(Oa(e)===Hv)return[];var t=pc(e);return[Kb(e),t,Kb(t)]}function sA(e){var t=e.state,n=e.options,o=e.name;if(!t.modifiersData[o]._skip){for(var a=n.mainAxis,s=a===void 0?!0:a,r=n.altAxis,l=r===void 0?!0:r,u=n.fallbackPlacements,c=n.padding,d=n.boundary,f=n.rootBoundary,v=n.altBoundary,g=n.flipVariations,p=g===void 0?!0:g,h=n.allowedAutoPlacements,m=t.options.placement,b=Oa(m),k=b===m,y=u||(k||!p?[pc(m)]:aA(m)),S=[m].concat(y).reduce(function(X,Q){return X.concat(Oa(Q)===Hv?oA(t,{placement:Q,boundary:d,rootBoundary:f,padding:c,flipVariations:p,allowedAutoPlacements:h}):Q)},[]),C=t.rects.reference,E=t.rects.popper,$=new Map,O=!0,N=S[0],R=0;R=0,U=H?"width":"height",W=Ii(t,{placement:A,boundary:d,rootBoundary:f,altBoundary:v,padding:c}),P=H?V?Ho:bo:V?zo:go;C[U]>E[U]&&(P=pc(P));var I=pc(P),L=[];if(s&&L.push(W[_]<=0),l&&L.push(W[P]<=0,W[I]<=0),L.every(function(X){return X})){N=A,O=!1;break}$.set(A,L)}if(O)for(var D=p?3:1,F=function(X){var Q=S.find(function(he){var ue=$.get(he);if(ue)return ue.slice(0,X).every(function(ge){return ge})});if(Q)return N=Q,"break"},q=D;q>0;q--){var j=F(q);if(j==="break")break}t.placement!==N&&(t.modifiersData[o]._skip=!0,t.placement=N,t.reset=!0)}}var rA={name:"flip",enabled:!0,phase:"main",fn:sA,requiresIfExists:["offset"],data:{_skip:!1}};function jb(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Ub(e){return[go,Ho,zo,bo].some(function(t){return e[t]>=0})}function lA(e){var t=e.state,n=e.name,o=t.rects.reference,a=t.rects.popper,s=t.modifiersData.preventOverflow,r=Ii(t,{elementContext:"reference"}),l=Ii(t,{altBoundary:!0}),u=jb(r,o),c=jb(l,a,s),d=Ub(u),f=Ub(c);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:c,isReferenceHidden:d,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":f})}var iA={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:lA};function uA(e,t,n){var o=Oa(e),a=[bo,go].indexOf(o)>=0?-1:1,s=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,r=s[0],l=s[1];return r=r||0,l=(l||0)*a,[bo,Ho].indexOf(o)>=0?{x:l,y:r}:{x:r,y:l}}function cA(e){var t=e.state,n=e.options,o=e.name,a=n.offset,s=a===void 0?[0,0]:a,r=Da.reduce(function(d,f){return d[f]=uA(f,t.rects,s),d},{}),l=r[t.placement],u=l.x,c=l.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=c),t.modifiersData[o]=r}var dA={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:cA};function fA(e){var t=e.state,n=e.name;t.modifiersData[n]=mC({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}var gC={name:"popperOffsets",enabled:!0,phase:"read",fn:fA,data:{}};function pA(e){return e==="x"?"y":"x"}function hA(e){var t=e.state,n=e.options,o=e.name,a=n.mainAxis,s=a===void 0?!0:a,r=n.altAxis,l=r===void 0?!1:r,u=n.boundary,c=n.rootBoundary,d=n.altBoundary,f=n.padding,v=n.tether,g=v===void 0?!0:v,p=n.tetherOffset,h=p===void 0?0:p,m=Ii(t,{boundary:u,rootBoundary:c,padding:f,altBoundary:d}),b=Oa(t.placement),k=gl(t.placement),y=!k,S=jv(b),C=pA(S),E=t.modifiersData.popperOffsets,$=t.rects.reference,O=t.rects.popper,N=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,R=typeof N=="number"?{mainAxis:N,altAxis:N}:Object.assign({mainAxis:0,altAxis:0},N),A=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,_={x:0,y:0};if(E){if(s){var V,H=S==="y"?go:bo,U=S==="y"?zo:Ho,W=S==="y"?"height":"width",P=E[S],I=P+m[H],L=P-m[U],D=g?-O[W]/2:0,F=k===hl?$[W]:O[W],q=k===hl?-O[W]:-$[W],j=t.elements.arrow,X=g&&j?Wv(j):{width:0,height:0},Q=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:cC(),he=Q[H],ue=Q[U],ge=fi(0,$[W],X[W]),ie=y?$[W]/2-D-ge-he-R.mainAxis:F-ge-he-R.mainAxis,oe=y?-$[W]/2+D+ge+ue+R.mainAxis:q+ge+ue+R.mainAxis,ne=t.elements.arrow&&cu(t.elements.arrow),K=ne?S==="y"?ne.clientTop||0:ne.clientLeft||0:0,Z=(V=A?.[S])!=null?V:0,re=P+ie-Z-K,ce=P+oe-Z,ve=fi(g?Qc(I,re):I,P,g?fr(L,ce):L);E[S]=ve,_[S]=ve-P}if(l){var ke,Ne=S==="x"?go:bo,Ie=S==="x"?zo:Ho,$e=E[C],pe=C==="y"?"height":"width",Ee=$e+m[Ne],me=$e-m[Ie],Me=[go,bo].indexOf(b)!==-1,We=(ke=A?.[C])!=null?ke:0,Ze=Me?Ee:$e-$[pe]-O[pe]-We+R.altAxis,Pe=Me?$e+$[pe]+O[pe]-We-R.altAxis:me,Ae=g&&Me?z_(Ze,$e,Pe):fi(g?Ze:Ee,$e,g?Pe:me);E[C]=Ae,_[C]=Ae-$e}t.modifiersData[o]=_}}var vA={name:"preventOverflow",enabled:!0,phase:"main",fn:hA,requiresIfExists:["offset"]};function mA(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function gA(e){return e===Io(e)||!Fo(e)?Uv(e):mA(e)}function bA(e){var t=e.getBoundingClientRect(),n=vl(t.width)/e.offsetWidth||1,o=vl(t.height)/e.offsetHeight||1;return n!==1||o!==1}function yA(e,t,n){n===void 0&&(n=!1);var o=Fo(t),a=Fo(t)&&bA(t),s=Ks(t),r=ml(e,a,n),l={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(o||!o&&!n)&&((_a(t)!=="body"||Yv(s))&&(l=gA(t)),Fo(t)?(u=ml(t,!0),u.x+=t.clientLeft,u.y+=t.clientTop):s&&(u.x=qv(s))),{x:r.left+l.scrollLeft-u.x,y:r.top+l.scrollTop-u.y,width:r.width,height:r.height}}function wA(e){var t=new Map,n=new Set,o=[];e.forEach(function(s){t.set(s.name,s)});function a(s){n.add(s.name);var r=[].concat(s.requires||[],s.requiresIfExists||[]);r.forEach(function(l){if(!n.has(l)){var u=t.get(l);u&&a(u)}}),o.push(s)}return e.forEach(function(s){n.has(s.name)||a(s)}),o}function SA(e){var t=wA(e);return L_.reduce(function(n,o){return n.concat(t.filter(function(a){return a.phase===o}))},[])}function CA(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function kA(e){var t=e.reduce(function(n,o){var a=n[o.name];return n[o.name]=a?Object.assign({},a,o,{options:Object.assign({},a.options,o.options),data:Object.assign({},a.data,o.data)}):o,n},{});return Object.keys(t).map(function(n){return t[n]})}var qb={placement:"bottom",modifiers:[],strategy:"absolute"};function Yb(){for(var e=arguments.length,t=new Array(e),n=0;n{const o={name:"updateState",enabled:!0,phase:"write",fn:({state:u})=>{const c=OA(u);Object.assign(r.value,c)},requires:["computeStyles"]},a=w(()=>{const{onFirstUpdate:u,placement:c,strategy:d,modifiers:f}=i(n);return{onFirstUpdate:u,placement:c||"bottom",strategy:d||"absolute",modifiers:[...f||[],o,{name:"applyStyles",enabled:!1}]}}),s=Xt(),r=M({styles:{popper:{position:i(a).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),l=()=>{s.value&&(s.value.destroy(),s.value=void 0)};return le(a,u=>{const c=i(s);c&&c.setOptions(u)},{deep:!0}),le([e,t],([u,c])=>{l(),!(!u||!c)&&(s.value=TA(u,c,i(a)))}),Bt(()=>{l()}),{state:w(()=>({...i(s)?.state||{}})),styles:w(()=>i(r).styles),attributes:w(()=>i(r).attributes),update:()=>i(s)?.update(),forceUpdate:()=>i(s)?.forceUpdate(),instanceRef:w(()=>i(s))}};function OA(e){const t=Object.keys(e.elements);return{styles:fl(t.map(n=>[n,e.styles[n]||{}])),attributes:fl(t.map(n=>[n,e.attributes[n]]))}}const Xv=e=>{if(!e)return{onClick:Dt,onMousedown:Dt,onMouseup:Dt};let t=!1,n=!1;return{onClick:r=>{t&&n&&e(r),t=n=!1},onMousedown:r=>{t=r.target===r.currentTarget},onMouseup:r=>{n=r.target===r.currentTarget}}},RA=(e,t=0)=>{if(t===0)return e;const n=M(at(t)&&!!t.initVal);let o=null;const a=r=>{if(Tt(r)){n.value=e.value;return}o&&clearTimeout(o),o=setTimeout(()=>{n.value=e.value},r)},s=r=>{r==="leading"?He(t)?a(t):a(t.leading):at(t)?a(t.trailing):n.value=!1};return ht(()=>s("leading")),le(()=>e.value,r=>{s(r?"leading":"trailing")}),n};function Gb(){let e;const t=(o,a)=>{n(),e=window.setTimeout(o,a)},n=()=>window.clearTimeout(e);return Ir(()=>n()),{registerTimeout:t,cancelTimeout:n}}const Kp={prefix:Math.floor(Math.random()*1e4),current:0},NA=Symbol("elIdInjection"),Jv=()=>ft()?_e(NA,Kp):Kp,zn=e=>{const t=Jv();!Mt&&t===Kp&&pt("IdInjection",`Looks like you are using server rendering, you must provide a id provider to ensure the hydration process to be succeed +usage: app.provide(ID_INJECTION_KEY, { + prefix: number, + current: number, +})`);const n=Fv();return HS(()=>i(e)||`${n.value}-id-${t.prefix}-${t.current++}`)};let jr=[];const Xb=e=>{jt(e)===we.esc&&jr.forEach(t=>t(e))},IA=e=>{ht(()=>{jr.length===0&&document.addEventListener("keydown",Xb),Mt&&jr.push(e)}),Bt(()=>{jr=jr.filter(t=>t!==e),jr.length===0&&Mt&&document.removeEventListener("keydown",Xb)})},bC=()=>{const e=Fv(),t=Jv(),n=w(()=>`${e.value}-popper-container-${t.prefix}`);return{id:n,selector:w(()=>`#${n.value}`)}},PA=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},MA=()=>{const{id:e,selector:t}=bC();return _d(()=>{Mt&&(document.body.querySelector(t.value)||PA(e.value))}),{id:e,selector:t}},_A=Ce({showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0}}),AA=({showAfter:e,hideAfter:t,autoClose:n,open:o,close:a})=>{const{registerTimeout:s}=Gb(),{registerTimeout:r,cancelTimeout:l}=Gb();return{onOpen:(d,f=i(e))=>{s(()=>{o(d);const v=i(n);He(v)&&v>0&&r(()=>{a(d)},v)},f)},onClose:(d,f=i(t))=>{l(),s(()=>{a(d)},f)}}},yC=Symbol("elForwardRef"),LA=e=>{St(yC,{setForwardRef:(n=>{e.value=n})})},DA=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),Jb={current:0},Zb=M(0),wC=2e3,Qb=Symbol("elZIndexContextKey"),SC=Symbol("zIndexContextKey"),du=e=>{const t=ft()?_e(Qb,Jb):Jb,n=e||(ft()?_e(SC,void 0):void 0),o=w(()=>{const r=i(n);return He(r)?r:wC}),a=w(()=>o.value+Zb.value),s=()=>(t.current++,Zb.value=t.current,a.value);return!Mt&&!_e(Qb)&&pt("ZIndexInjection",`Looks like you are using server rendering, you must provide a z-index provider to ensure the hydration process to be succeed +usage: app.provide(ZINDEX_INJECTION_KEY, { current: 0 })`),{initialZIndex:o,currentZIndex:a,nextZIndex:s}},bl=Math.min,pr=Math.max,ed=Math.round,zu=Math.floor,Ra=e=>({x:e,y:e}),BA={left:"right",right:"left",bottom:"top",top:"bottom"};function Wp(e,t,n){return pr(e,bl(t,n))}function fu(e,t){return typeof e=="function"?e(t):e}function Cr(e){return e.split("-")[0]}function pu(e){return e.split("-")[1]}function CC(e){return e==="x"?"y":"x"}function Zv(e){return e==="y"?"height":"width"}function Ns(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function Qv(e){return CC(Ns(e))}function FA(e,t,n){n===void 0&&(n=!1);const o=pu(e),a=Qv(e),s=Zv(a);let r=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=td(r)),[r,td(r)]}function VA(e){const t=td(e);return[jp(e),t,jp(t)]}function jp(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const ey=["left","right"],ty=["right","left"],zA=["top","bottom"],HA=["bottom","top"];function KA(e,t,n){switch(e){case"top":case"bottom":return n?t?ty:ey:t?ey:ty;case"left":case"right":return t?zA:HA;default:return[]}}function WA(e,t,n,o){const a=pu(e);let s=KA(Cr(e),n==="start",o);return a&&(s=s.map(r=>r+"-"+a),t&&(s=s.concat(s.map(jp)))),s}function td(e){const t=Cr(e);return BA[t]+e.slice(t.length)}function jA(e){return{top:0,right:0,bottom:0,left:0,...e}}function kC(e){return typeof e!="number"?jA(e):{top:e,right:e,bottom:e,left:e}}function nd(e){const{x:t,y:n,width:o,height:a}=e;return{width:o,height:a,top:n,left:t,right:t+o,bottom:n+a,x:t,y:n}}function ny(e,t,n){let{reference:o,floating:a}=e;const s=Ns(t),r=Qv(t),l=Zv(r),u=Cr(t),c=s==="y",d=o.x+o.width/2-a.width/2,f=o.y+o.height/2-a.height/2,v=o[l]/2-a[l]/2;let g;switch(u){case"top":g={x:d,y:o.y-a.height};break;case"bottom":g={x:d,y:o.y+o.height};break;case"right":g={x:o.x+o.width,y:f};break;case"left":g={x:o.x-a.width,y:f};break;default:g={x:o.x,y:o.y}}switch(pu(t)){case"start":g[r]-=v*(n&&c?-1:1);break;case"end":g[r]+=v*(n&&c?-1:1);break}return g}async function EC(e,t){var n;t===void 0&&(t={});const{x:o,y:a,platform:s,rects:r,elements:l,strategy:u}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:f="floating",altBoundary:v=!1,padding:g=0}=fu(t,e),p=kC(g),m=l[v?f==="floating"?"reference":"floating":f],b=nd(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(m)))==null||n?m:m.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(l.floating)),boundary:c,rootBoundary:d,strategy:u})),k=f==="floating"?{x:o,y:a,width:r.floating.width,height:r.floating.height}:r.reference,y=await(s.getOffsetParent==null?void 0:s.getOffsetParent(l.floating)),S=await(s.isElement==null?void 0:s.isElement(y))?await(s.getScale==null?void 0:s.getScale(y))||{x:1,y:1}:{x:1,y:1},C=nd(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:k,offsetParent:y,strategy:u}):k);return{top:(b.top-C.top+p.top)/S.y,bottom:(C.bottom-b.bottom+p.bottom)/S.y,left:(b.left-C.left+p.left)/S.x,right:(C.right-b.right+p.right)/S.x}}const UA=50,qA=async(e,t,n)=>{const{placement:o="bottom",strategy:a="absolute",middleware:s=[],platform:r}=n,l=r.detectOverflow?r:{...r,detectOverflow:EC},u=await(r.isRTL==null?void 0:r.isRTL(t));let c=await r.getElementRects({reference:e,floating:t,strategy:a}),{x:d,y:f}=ny(c,o,u),v=o,g=0;const p={};for(let h=0;h({name:"arrow",options:e,async fn(t){const{x:n,y:o,placement:a,rects:s,platform:r,elements:l,middlewareData:u}=t,{element:c,padding:d=0}=fu(e,t)||{};if(c==null)return{};const f=kC(d),v={x:n,y:o},g=Qv(a),p=Zv(g),h=await r.getDimensions(c),m=g==="y",b=m?"top":"left",k=m?"bottom":"right",y=m?"clientHeight":"clientWidth",S=s.reference[p]+s.reference[g]-v[g]-s.floating[p],C=v[g]-s.reference[g],E=await(r.getOffsetParent==null?void 0:r.getOffsetParent(c));let $=E?E[y]:0;(!$||!await(r.isElement==null?void 0:r.isElement(E)))&&($=l.floating[y]||s.floating[p]);const O=S/2-C/2,N=$/2-h[p]/2-1,R=bl(f[b],N),A=bl(f[k],N),_=R,V=$-h[p]-A,H=$/2-h[p]/2+O,U=Wp(_,H,V),W=!u.arrow&&pu(a)!=null&&H!==U&&s.reference[p]/2-(H<_?R:A)-h[p]/2<0,P=W?H<_?H-_:H-V:0;return{[g]:v[g]+P,data:{[g]:U,centerOffset:H-U-P,...W&&{alignmentOffset:P}},reset:W}}}),GA=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,o;const{placement:a,middlewareData:s,rects:r,initialPlacement:l,platform:u,elements:c}=t,{mainAxis:d=!0,crossAxis:f=!0,fallbackPlacements:v,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:h=!0,...m}=fu(e,t);if((n=s.arrow)!=null&&n.alignmentOffset)return{};const b=Cr(a),k=Ns(l),y=Cr(l)===l,S=await(u.isRTL==null?void 0:u.isRTL(c.floating)),C=v||(y||!h?[td(l)]:VA(l)),E=p!=="none";!v&&E&&C.push(...WA(l,h,p,S));const $=[l,...C],O=await u.detectOverflow(t,m),N=[];let R=((o=s.flip)==null?void 0:o.overflows)||[];if(d&&N.push(O[b]),f){const H=FA(a,r,S);N.push(O[H[0]],O[H[1]])}if(R=[...R,{placement:a,overflows:N}],!N.every(H=>H<=0)){var A,_;const H=(((A=s.flip)==null?void 0:A.index)||0)+1,U=$[H];if(U&&(!(f==="alignment"?k!==Ns(U):!1)||R.every(I=>Ns(I.placement)===k?I.overflows[0]>0:!0)))return{data:{index:H,overflows:R},reset:{placement:U}};let W=(_=R.filter(P=>P.overflows[0]<=0).sort((P,I)=>P.overflows[1]-I.overflows[1])[0])==null?void 0:_.placement;if(!W)switch(g){case"bestFit":{var V;const P=(V=R.filter(I=>{if(E){const L=Ns(I.placement);return L===k||L==="y"}return!0}).map(I=>[I.placement,I.overflows.filter(L=>L>0).reduce((L,D)=>L+D,0)]).sort((I,L)=>I[1]-L[1])[0])==null?void 0:V[0];P&&(W=P);break}case"initialPlacement":W=l;break}if(a!==W)return{reset:{placement:W}}}return{}}}},XA=new Set(["left","top"]);async function JA(e,t){const{placement:n,platform:o,elements:a}=e,s=await(o.isRTL==null?void 0:o.isRTL(a.floating)),r=Cr(n),l=pu(n),u=Ns(n)==="y",c=XA.has(r)?-1:1,d=s&&u?-1:1,f=fu(t,e);let{mainAxis:v,crossAxis:g,alignmentAxis:p}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return l&&typeof p=="number"&&(g=l==="end"?p*-1:p),u?{x:g*d,y:v*c}:{x:v*c,y:g*d}}const ZA=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,o;const{x:a,y:s,placement:r,middlewareData:l}=t,u=await JA(t,e);return r===((n=l.offset)==null?void 0:n.placement)&&(o=l.arrow)!=null&&o.alignmentOffset?{}:{x:a+u.x,y:s+u.y,data:{...u,placement:r}}}}},QA=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:o,placement:a,platform:s}=t,{mainAxis:r=!0,crossAxis:l=!1,limiter:u={fn:b=>{let{x:k,y}=b;return{x:k,y}}},...c}=fu(e,t),d={x:n,y:o},f=await s.detectOverflow(t,c),v=Ns(Cr(a)),g=CC(v);let p=d[g],h=d[v];if(r){const b=g==="y"?"top":"left",k=g==="y"?"bottom":"right",y=p+f[b],S=p-f[k];p=Wp(y,p,S)}if(l){const b=v==="y"?"top":"left",k=v==="y"?"bottom":"right",y=h+f[b],S=h-f[k];h=Wp(y,h,S)}const m=u.fn({...t,[g]:p,[v]:h});return{...m,data:{x:m.x-n,y:m.y-o,enabled:{[g]:r,[v]:l}}}}}};function Jd(){return typeof window<"u"}function Ml(e){return xC(e)?(e.nodeName||"").toLowerCase():"#document"}function No(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Ba(e){var t;return(t=(xC(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function xC(e){return Jd()?e instanceof Node||e instanceof No(e).Node:!1}function na(e){return Jd()?e instanceof Element||e instanceof No(e).Element:!1}function vs(e){return Jd()?e instanceof HTMLElement||e instanceof No(e).HTMLElement:!1}function oy(e){return!Jd()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof No(e).ShadowRoot}function hu(e){const{overflow:t,overflowX:n,overflowY:o,display:a}=oa(e);return/auto|scroll|overlay|hidden|clip/.test(t+o+n)&&a!=="inline"&&a!=="contents"}function e4(e){return/^(table|td|th)$/.test(Ml(e))}function Zd(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const t4=/transform|translate|scale|rotate|perspective|filter/,n4=/paint|layout|strict|content/,Xs=e=>!!e&&e!=="none";let Wf;function em(e){const t=na(e)?oa(e):e;return Xs(t.transform)||Xs(t.translate)||Xs(t.scale)||Xs(t.rotate)||Xs(t.perspective)||!tm()&&(Xs(t.backdropFilter)||Xs(t.filter))||t4.test(t.willChange||"")||n4.test(t.contain||"")}function o4(e){let t=Ds(e);for(;vs(t)&&!yl(t);){if(em(t))return t;if(Zd(t))return null;t=Ds(t)}return null}function tm(){return Wf==null&&(Wf=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Wf}function yl(e){return/^(html|body|#document)$/.test(Ml(e))}function oa(e){return No(e).getComputedStyle(e)}function Qd(e){return na(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Ds(e){if(Ml(e)==="html")return e;const t=e.assignedSlot||e.parentNode||oy(e)&&e.host||Ba(e);return oy(t)?t.host:t}function TC(e){const t=Ds(e);return yl(t)?e.ownerDocument?e.ownerDocument.body:e.body:vs(t)&&hu(t)?t:TC(t)}function Pi(e,t,n){var o;t===void 0&&(t=[]),n===void 0&&(n=!0);const a=TC(e),s=a===((o=e.ownerDocument)==null?void 0:o.body),r=No(a);if(s){const l=Up(r);return t.concat(r,r.visualViewport||[],hu(a)?a:[],l&&n?Pi(l):[])}else return t.concat(a,Pi(a,[],n))}function Up(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function $C(e){const t=oa(e);let n=parseFloat(t.width)||0,o=parseFloat(t.height)||0;const a=vs(e),s=a?e.offsetWidth:n,r=a?e.offsetHeight:o,l=ed(n)!==s||ed(o)!==r;return l&&(n=s,o=r),{width:n,height:o,$:l}}function nm(e){return na(e)?e:e.contextElement}function nl(e){const t=nm(e);if(!vs(t))return Ra(1);const n=t.getBoundingClientRect(),{width:o,height:a,$:s}=$C(t);let r=(s?ed(n.width):n.width)/o,l=(s?ed(n.height):n.height)/a;return(!r||!Number.isFinite(r))&&(r=1),(!l||!Number.isFinite(l))&&(l=1),{x:r,y:l}}const a4=Ra(0);function OC(e){const t=No(e);return!tm()||!t.visualViewport?a4:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function s4(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==No(e)?!1:t}function kr(e,t,n,o){t===void 0&&(t=!1),n===void 0&&(n=!1);const a=e.getBoundingClientRect(),s=nm(e);let r=Ra(1);t&&(o?na(o)&&(r=nl(o)):r=nl(e));const l=s4(s,n,o)?OC(s):Ra(0);let u=(a.left+l.x)/r.x,c=(a.top+l.y)/r.y,d=a.width/r.x,f=a.height/r.y;if(s){const v=No(s),g=o&&na(o)?No(o):o;let p=v,h=Up(p);for(;h&&o&&g!==p;){const m=nl(h),b=h.getBoundingClientRect(),k=oa(h),y=b.left+(h.clientLeft+parseFloat(k.paddingLeft))*m.x,S=b.top+(h.clientTop+parseFloat(k.paddingTop))*m.y;u*=m.x,c*=m.y,d*=m.x,f*=m.y,u+=y,c+=S,p=No(h),h=Up(p)}}return nd({width:d,height:f,x:u,y:c})}function ef(e,t){const n=Qd(e).scrollLeft;return t?t.left+n:kr(Ba(e)).left+n}function RC(e,t){const n=e.getBoundingClientRect(),o=n.left+t.scrollLeft-ef(e,n),a=n.top+t.scrollTop;return{x:o,y:a}}function r4(e){let{elements:t,rect:n,offsetParent:o,strategy:a}=e;const s=a==="fixed",r=Ba(o),l=t?Zd(t.floating):!1;if(o===r||l&&s)return n;let u={scrollLeft:0,scrollTop:0},c=Ra(1);const d=Ra(0),f=vs(o);if((f||!f&&!s)&&((Ml(o)!=="body"||hu(r))&&(u=Qd(o)),f)){const g=kr(o);c=nl(o),d.x=g.x+o.clientLeft,d.y=g.y+o.clientTop}const v=r&&!f&&!s?RC(r,u):Ra(0);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-u.scrollLeft*c.x+d.x+v.x,y:n.y*c.y-u.scrollTop*c.y+d.y+v.y}}function l4(e){return Array.from(e.getClientRects())}function i4(e){const t=Ba(e),n=Qd(e),o=e.ownerDocument.body,a=pr(t.scrollWidth,t.clientWidth,o.scrollWidth,o.clientWidth),s=pr(t.scrollHeight,t.clientHeight,o.scrollHeight,o.clientHeight);let r=-n.scrollLeft+ef(e);const l=-n.scrollTop;return oa(o).direction==="rtl"&&(r+=pr(t.clientWidth,o.clientWidth)-a),{width:a,height:s,x:r,y:l}}const ay=25;function u4(e,t){const n=No(e),o=Ba(e),a=n.visualViewport;let s=o.clientWidth,r=o.clientHeight,l=0,u=0;if(a){s=a.width,r=a.height;const d=tm();(!d||d&&t==="fixed")&&(l=a.offsetLeft,u=a.offsetTop)}const c=ef(o);if(c<=0){const d=o.ownerDocument,f=d.body,v=getComputedStyle(f),g=d.compatMode==="CSS1Compat"&&parseFloat(v.marginLeft)+parseFloat(v.marginRight)||0,p=Math.abs(o.clientWidth-f.clientWidth-g);p<=ay&&(s-=p)}else c<=ay&&(s+=c);return{width:s,height:r,x:l,y:u}}function c4(e,t){const n=kr(e,!0,t==="fixed"),o=n.top+e.clientTop,a=n.left+e.clientLeft,s=vs(e)?nl(e):Ra(1),r=e.clientWidth*s.x,l=e.clientHeight*s.y,u=a*s.x,c=o*s.y;return{width:r,height:l,x:u,y:c}}function sy(e,t,n){let o;if(t==="viewport")o=u4(e,n);else if(t==="document")o=i4(Ba(e));else if(na(t))o=c4(t,n);else{const a=OC(e);o={x:t.x-a.x,y:t.y-a.y,width:t.width,height:t.height}}return nd(o)}function NC(e,t){const n=Ds(e);return n===t||!na(n)||yl(n)?!1:oa(n).position==="fixed"||NC(n,t)}function d4(e,t){const n=t.get(e);if(n)return n;let o=Pi(e,[],!1).filter(l=>na(l)&&Ml(l)!=="body"),a=null;const s=oa(e).position==="fixed";let r=s?Ds(e):e;for(;na(r)&&!yl(r);){const l=oa(r),u=em(r);!u&&l.position==="fixed"&&(a=null),(s?!u&&!a:!u&&l.position==="static"&&!!a&&(a.position==="absolute"||a.position==="fixed")||hu(r)&&!u&&NC(e,r))?o=o.filter(d=>d!==r):a=l,r=Ds(r)}return t.set(e,o),o}function f4(e){let{element:t,boundary:n,rootBoundary:o,strategy:a}=e;const r=[...n==="clippingAncestors"?Zd(t)?[]:d4(t,this._c):[].concat(n),o],l=sy(t,r[0],a);let u=l.top,c=l.right,d=l.bottom,f=l.left;for(let v=1;v{r(!1,1e-7)},1e3)}$===1&&!PC(c,e.getBoundingClientRect())&&r(),S=!1}try{n=new IntersectionObserver(C,{...y,root:a.ownerDocument})}catch{n=new IntersectionObserver(C,y)}n.observe(e)}return r(!0),s}function y4(e,t,n,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:s=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:u=!1}=o,c=nm(e),d=a||s?[...c?Pi(c):[],...t?Pi(t):[]]:[];d.forEach(b=>{a&&b.addEventListener("scroll",n,{passive:!0}),s&&b.addEventListener("resize",n)});const f=c&&l?b4(c,n):null;let v=-1,g=null;r&&(g=new ResizeObserver(b=>{let[k]=b;k&&k.target===c&&g&&t&&(g.unobserve(t),cancelAnimationFrame(v),v=requestAnimationFrame(()=>{var y;(y=g)==null||y.observe(t)})),n()}),c&&!u&&g.observe(c),t&&g.observe(t));let p,h=u?kr(e):null;u&&m();function m(){const b=kr(e);h&&!PC(h,b)&&n(),h=b,p=requestAnimationFrame(m)}return n(),()=>{var b;d.forEach(k=>{a&&k.removeEventListener("scroll",n),s&&k.removeEventListener("resize",n)}),f?.(),(b=g)==null||b.disconnect(),g=null,u&&cancelAnimationFrame(p)}}const w4=EC,S4=ZA,C4=QA,k4=GA,E4=YA,x4=(e,t,n)=>{const o=new Map,a={platform:g4,...n},s={...a.platform,_c:o};return qA(e,t,{...a,platform:s})};function T4(e){let t;function n(){if(e.value==null)return;const{selectionStart:a,selectionEnd:s,value:r}=e.value;a==null||s==null||(t={selectionStart:a,selectionEnd:s,value:r,beforeTxt:r.slice(0,Math.max(0,a)),afterTxt:r.slice(Math.max(0,s))})}function o(){if(e.value==null||t==null)return;const{value:a}=e.value,{beforeTxt:s,afterTxt:r,selectionStart:l}=t;if(s==null||r==null||l==null)return;let u=a.length;if(a.endsWith(r))u=a.length-r.length;else if(a.startsWith(s))u=s.length;else{const c=s[l-1],d=a.indexOf(c,l-1);d!==-1&&(u=d+1)}e.value.setSelectionRange(u,u)}return[n,o]}const $4="utils/vue/vnode";let Uo=(function(e){return e[e.TEXT=1]="TEXT",e[e.CLASS=2]="CLASS",e[e.STYLE=4]="STYLE",e[e.PROPS=8]="PROPS",e[e.FULL_PROPS=16]="FULL_PROPS",e[e.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",e[e.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",e[e.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",e[e.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",e[e.NEED_PATCH=512]="NEED_PATCH",e[e.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",e[e.HOISTED=-1]="HOISTED",e[e.BAIL=-2]="BAIL",e})({});function qp(e){return Ut(e)&&e.type===Fe}function MC(e){return Ut(e)&&e.type===gn}function O4(e){return Ut(e)&&!qp(e)&&!MC(e)}const R4=e=>{if(!Ut(e))return pt($4,"[getNormalizedProps] must be a VNode"),{};const t=e.props||{},n=(Ut(e.type)?e.type.props:void 0)||{},o={};return Object.keys(n).forEach(a=>{Nt(n[a],"default")&&(o[a]=n[a].default)}),Object.keys(t).forEach(a=>{o[Fn(a)]=t[a]}),o},$o=e=>{const t=ye(e)?e:[e],n=[];return t.forEach(o=>{ye(o)?n.push(...$o(o)):Ut(o)&&o.component?.subTree?n.push(o,...$o(o.component.subTree)):Ut(o)&&ye(o.children)?n.push(...$o(o.children)):Ut(o)&&o.shapeFlag===2?n.push(...$o(o.type())):n.push(o)}),n},N4=(e,t,n)=>$o(e.subTree).filter(o=>Ut(o)&&o.type?.name===t&&!!o.component).map(o=>o.component.uid).map(o=>n[o]).filter(o=>!!o),tf=(e,t)=>{const n=Xt({}),o=Xt([]),a=new WeakMap,s=c=>{n.value[c.uid]=c,rc(n),ht(()=>{const d=c.getVnode().el,f=d.parentNode;if(!a.has(f)){a.set(f,[]);const v=f.insertBefore.bind(f);f.insertBefore=(g,p)=>(a.get(f).some(h=>g===h||p===h)&&rc(n),v(g,p))}a.get(f).push(d)})},r=c=>{delete n.value[c.uid],rc(n);const d=c.getVnode().el,f=d.parentNode,v=a.get(f),g=v.indexOf(d);v.splice(g,1)},l=()=>{o.value=N4(e,t,n.value)},u=c=>c.render();return{children:o,addChild:s,removeChild:r,ChildrenSorter:se({setup(c,{slots:d}){return()=>(l(),d.default?Ye(u,{render:d.default}):null)}})}},Tn=ca({type:String,values:ia,required:!1}),_C=Symbol("size"),AC=()=>{const e=_e(_C,{});return w(()=>i(e.size)||"")};function ms(e,{disabled:t,beforeFocus:n,afterFocus:o,beforeBlur:a,afterBlur:s}={}){const{emit:r}=ft(),l=Xt(),u=M(!1),c=v=>{const g=Ve(n)?n(v):!1;i(t)||u.value||g||(u.value=!0,r("focus",v),o?.())},d=v=>{const g=Ve(a)?a(v):!1;i(t)||v.relatedTarget&&l.value?.contains(v.relatedTarget)||g||(u.value=!1,r("blur",v),s?.())},f=v=>{i(t)||Ri(v.target)||l.value?.contains(document.activeElement)&&l.value!==document.activeElement||e.value?.focus()};return le([l,()=>i(t)],([v,g])=>{v&&(g?v.removeAttribute("tabindex"):v.setAttribute("tabindex","-1"))}),Ft(l,"focus",c,!0),Ft(l,"blur",d,!0),Ft(l,"click",f,!0),{isFocused:u,wrapperRef:l,handleFocus:c,handleBlur:d}}const I4=e=>/([\uAC00-\uD7AF\u3130-\u318F])+/gi.test(e);function vu({afterComposition:e,emit:t}){const n=M(!1),o=l=>{t?.("compositionstart",l),n.value=!0},a=l=>{t?.("compositionupdate",l);const u=l.target?.value;n.value=!I4(u[u.length-1]||"")},s=l=>{t?.("compositionend",l),n.value&&(n.value=!1,Re(()=>e(l)))};return{isComposing:n,handleComposition:l=>{l.type==="compositionend"?s(l):a(l)},handleCompositionStart:o,handleCompositionUpdate:a,handleCompositionEnd:s}}const LC=Symbol("emptyValuesContextKey"),P4="use-empty-values",M4=["",void 0,null],_4=void 0,Pr=Ce({emptyValues:Array,valueOnClear:{type:G([String,Number,Boolean,Function]),default:void 0,validator:e=>(e=Ve(e)?e():e,ye(e)?e.every(t=>!t):!e)}}),mu=(e,t)=>{const n=ft()?_e(LC,M({})):M({}),o=w(()=>e.emptyValues||n.value.emptyValues||M4),a=w(()=>Ve(e.valueOnClear)?e.valueOnClear():e.valueOnClear!==void 0?e.valueOnClear:Ve(n.value.valueOnClear)?n.value.valueOnClear():n.value.valueOnClear!==void 0?n.value.valueOnClear:t!==void 0?t:_4),s=r=>{let l=!0;return ye(r)?l=o.value.some(u=>sn(r,u)):l=o.value.includes(r),l};return s(a.value)||pt(P4,"value-on-clear should be a value of empty-values"),{emptyValues:o,valueOnClear:a,isEmptyValue:s}},A4=Ce({ariaLabel:String,ariaOrientation:{type:String,values:["horizontal","vertical","undefined"]},ariaControls:String}),oo=e=>ss(A4,e),DC=e=>{const t=e.props,n=ye(t)?fl(t.map(o=>[o,{}])):t;e.setPropsDefaults=o=>{if(n){for(const[a,s]of Object.entries(o)){const r=n[a];if(Nt(n,a)){if(Nv(r)){n[a]={...r,default:s};continue}n[a]={type:r,default:s}}}e.props=n}}},rt=(e,t)=>{if(e.install=n=>{for(const o of[e,...Object.values(t??{})])n.component(o.name,o)},t)for(const[n,o]of Object.entries(t))e[n]=o;return DC(e),e},BC=(e,t)=>(e.install=n=>{e._context=n._context,n.config.globalProperties[t]=e},e),L4=(e,t)=>(e.install=n=>{n.directive(t,e)},e),on=e=>(e.install=Dt,DC(e),e);var D4=se({__name:"teleport",props:su,setup(e){return(t,n)=>t.disabled?ee(t.$slots,"default",{key:0}):(x(),ae(VT,{key:1,to:t.to},[ee(t.$slots,"default")],8,["to"]))}}),B4=D4;const _l=rt(B4),ly="ElAffix";var F4=se({name:ly,__name:"affix",props:HM,emits:KM,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("affix"),r=Xt(),l=Xt(),u=Xt(),{height:c}=Lv(),{height:d,width:f,top:v,bottom:g,left:p,update:h}=_b(l,{windowScroll:!1}),m=_b(r),b=M(!1),k=M(0),y=M(0),S=w(()=>!o.teleported||!b.value),C=w(()=>({display:"flow-root",height:b.value?`${d.value}px`:"",width:b.value?`${f.value}px`:""})),E=w(()=>{if(!b.value)return{};const R=ln(o.offset);return{height:`${d.value}px`,width:`${f.value}px`,top:o.position==="top"?R:"",bottom:o.position==="bottom"?R:"",left:o.teleported?`${p.value}px`:"",transform:y.value?`translateY(${y.value}px)`:"",zIndex:o.zIndex}}),$=()=>{if(!u.value)return;k.value=u.value instanceof Window?document.documentElement.scrollTop:u.value.scrollTop||0;const{position:R,target:A,offset:_}=o,V=_+d.value;if(R==="top")if(A){const H=m.bottom.value-V;b.value=_>v.value&&m.bottom.value>0,y.value=H<0?H:0}else b.value=_>v.value;else if(A){const H=c.value-m.top.value-V;b.value=c.value-_m.top.value,y.value=H<0?-H:0}else b.value=c.value-_{if(!b.value){h();return}b.value=!1,await Re(),h(),b.value=!0},N=async()=>{h(),await Re(),a("scroll",{scrollTop:k.value,fixed:b.value})};return le(b,R=>a(bt,R)),ht(()=>{o.target?(r.value=document.querySelector(o.target)??void 0,r.value||nn(ly,`Target does not exist: ${o.target}`)):r.value=document.documentElement,u.value=Vv(l.value,!0),h()}),Ji(()=>{Re(O)}),lv(()=>{b.value=!1}),Ft(u,"scroll",N),So($),t({update:$,updateRoot:O}),(R,A)=>(x(),B("div",{ref_key:"root",ref:l,class:T(i(s).b()),style:Ke(C.value)},[Y(i(_l),{disabled:S.value,to:e.appendTo},{default:J(()=>[z("div",{class:T({[i(s).m("fixed")]:b.value}),style:Ke(E.value)},[ee(R.$slots,"default")],6)]),_:3},8,["disabled","to"])],6))}}),V4=F4;const z4=rt(V4);var H4=se({name:"ArrowDown",__name:"arrow-down",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.59 30.59 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.59 30.59 0 0 0-42.752 0z"})]))}}),Fa=H4,K4=se({name:"ArrowLeft",__name:"arrow-left",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.59 30.59 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.59 30.59 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0"})]))}}),is=K4,W4=se({name:"ArrowRight",__name:"arrow-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M340.864 149.312a30.59 30.59 0 0 0 0 42.752L652.736 512 340.864 831.872a30.59 30.59 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"})]))}}),no=W4,j4=se({name:"ArrowUp",__name:"arrow-up",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m488.832 344.32-339.84 356.672a32 32 0 0 0 0 44.16l.384.384a29.44 29.44 0 0 0 42.688 0l320-335.872 319.872 335.872a29.44 29.44 0 0 0 42.688 0l.384-.384a32 32 0 0 0 0-44.16L535.168 344.32a32 32 0 0 0-46.336 0"})]))}}),nf=j4,U4=se({name:"Back",__name:"back",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64"}),z("path",{fill:"currentColor",d:"m237.248 512 265.408 265.344a32 32 0 0 1-45.312 45.312l-288-288a32 32 0 0 1 0-45.312l288-288a32 32 0 1 1 45.312 45.312z"})]))}}),q4=U4,Y4=se({name:"Calendar",__name:"calendar",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M128 384v512h768V192H768v32a32 32 0 1 1-64 0v-32H320v32a32 32 0 0 1-64 0v-32H128v128h768v64zm192-256h384V96a32 32 0 1 1 64 0v32h160a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h160V96a32 32 0 0 1 64 0zm-32 384h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64"})]))}}),G4=Y4,X4=se({name:"CaretRight",__name:"caret-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M384 192v640l384-320.064z"})]))}}),FC=X4,J4=se({name:"CaretTop",__name:"caret-top",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 320 192 704h639.936z"})]))}}),Z4=J4,Q4=se({name:"Check",__name:"check",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"})]))}}),gu=Q4,e3=se({name:"CircleCheckFilled",__name:"circle-check-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.27 38.27 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),t3=e3,n3=se({name:"CircleCheck",__name:"circle-check",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),z("path",{fill:"currentColor",d:"M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752z"})]))}}),om=n3,o3=se({name:"CircleCloseFilled",__name:"circle-close-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336z"})]))}}),am=o3,a3=se({name:"CircleClose",__name:"circle-close",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248z"}),z("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"})]))}}),Va=a3,s3=se({name:"Clock",__name:"clock",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),z("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"}),z("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32"})]))}}),VC=s3,r3=se({name:"Close",__name:"close",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"})]))}}),Ko=r3,l3=se({name:"DArrowLeft",__name:"d-arrow-left",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L197.76 534.272a32 32 0 0 1 0-44.672zm256 0a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L453.76 534.272a32 32 0 0 1 0-44.672z"})]))}}),Bs=l3,i3=se({name:"DArrowRight",__name:"d-arrow-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M452.864 149.312a29.12 29.12 0 0 1 41.728.064L826.24 489.664a32 32 0 0 1 0 44.672L494.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L764.736 512 452.864 192a30.59 30.59 0 0 1 0-42.688m-256 0a29.12 29.12 0 0 1 41.728.064L570.24 489.664a32 32 0 0 1 0 44.672L238.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L508.736 512 196.864 192a30.59 30.59 0 0 1 0-42.688"})]))}}),Fs=i3,u3=se({name:"Delete",__name:"delete",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),c3=u3,d3=se({name:"Document",__name:"document",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m160 448h384v64H320zm0-192h160v64H320zm0 384h384v64H320z"})]))}}),f3=d3,p3=se({name:"FullScreen",__name:"full-screen",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m160 96.064 192 .192a32 32 0 0 1 0 64l-192-.192V352a32 32 0 0 1-64 0V96h64zm0 831.872V928H96V672a32 32 0 1 1 64 0v191.936l192-.192a32 32 0 1 1 0 64zM864 96.064V96h64v256a32 32 0 1 1-64 0V160.064l-192 .192a32 32 0 1 1 0-64zm0 831.872-192-.192a32 32 0 0 1 0-64l192 .192V672a32 32 0 1 1 64 0v256h-64z"})]))}}),h3=p3,v3=se({name:"Hide",__name:"hide",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4s-12.8-9.6-22.4-9.6-16 3.2-22.4 9.6L736 220.8c-64-32-137.6-51.2-224-60.8-160 16-288 73.6-377.6 176S0 496 0 512s48 73.6 134.4 176c22.4 25.6 44.8 48 73.6 67.2l-86.4 89.6c-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4 12.8 9.6 22.4 9.6 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4m-646.4 528Q115.2 579.2 76.8 512q43.2-72 153.6-172.8C304 272 400 230.4 512 224c64 3.2 124.8 19.2 176 44.8l-54.4 54.4C598.4 300.8 560 288 512 288c-64 0-115.2 22.4-160 64s-64 96-64 160c0 48 12.8 89.6 35.2 124.8L256 707.2c-9.6-6.4-19.2-16-25.6-22.4m140.8-96Q352 555.2 352 512c0-44.8 16-83.2 48-112s67.2-48 112-48c28.8 0 54.4 6.4 73.6 19.2zM889.599 336c-12.8-16-28.8-28.8-41.6-41.6l-48 48c73.6 67.2 124.8 124.8 150.4 169.6q-43.2 72-153.6 172.8c-73.6 67.2-172.8 108.8-284.8 115.2-51.2-3.2-99.2-12.8-140.8-28.8l-48 48c57.6 22.4 118.4 38.4 188.8 44.8 160-16 288-73.6 377.6-176S1024 528 1024 512s-48.001-73.6-134.401-176"}),z("path",{fill:"currentColor",d:"M511.998 672c-12.8 0-25.6-3.2-38.4-6.4l-51.2 51.2c28.8 12.8 57.6 19.2 89.6 19.2 64 0 115.2-22.4 160-64 41.6-41.6 64-96 64-160 0-32-6.4-64-19.2-89.6l-51.2 51.2c3.2 12.8 6.4 25.6 6.4 38.4 0 44.8-16 83.2-48 112s-67.2 48-112 48"})]))}}),m3=v3,g3=se({name:"InfoFilled",__name:"info-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64m67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344M590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.99 12.99 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"})]))}}),Mi=g3,b3=se({name:"Loading",__name:"loading",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248m452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248M828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0"})]))}}),Aa=b3,y3=se({name:"Minus",__name:"minus",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64"})]))}}),w3=y3,S3=se({name:"MoreFilled",__name:"more-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224"})]))}}),iy=S3,C3=se({name:"More",__name:"more",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M176 416a112 112 0 1 0 0 224 112 112 0 0 0 0-224m0 64a48 48 0 1 1 0 96 48 48 0 0 1 0-96m336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224m0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96m336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224m0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96"})]))}}),k3=C3,E3=se({name:"PictureFilled",__name:"picture-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M96 896a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h832a32 32 0 0 1 32 32v704a32 32 0 0 1-32 32zm315.52-228.48-68.928-68.928a32 32 0 0 0-45.248 0L128 768.064h778.688l-242.112-290.56a32 32 0 0 0-49.216 0L458.752 665.408a32 32 0 0 1-47.232 2.112M256 384a96 96 0 1 0 192.064-.064A96 96 0 0 0 256 384"})]))}}),x3=E3,T3=se({name:"Plus",__name:"plus",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),zC=T3,$3=se({name:"QuestionFilled",__name:"question-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592q0-64.416-42.24-101.376c-28.16-25.344-65.472-37.312-111.232-37.312m-12.672 406.208a54.27 54.27 0 0 0-38.72 14.784 49.4 49.4 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.85 54.85 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.97 51.97 0 0 0-15.488-38.016 55.94 55.94 0 0 0-39.424-14.784"})]))}}),O3=$3,R3=se({name:"RefreshLeft",__name:"refresh-left",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M289.088 296.704h92.992a32 32 0 0 1 0 64H232.96a32 32 0 0 1-32-32V179.712a32 32 0 0 1 64 0v50.56a384 384 0 0 1 643.84 282.88 384 384 0 0 1-383.936 384 384 384 0 0 1-384-384h64a320 320 0 1 0 640 0 320 320 0 0 0-555.712-216.448z"})]))}}),N3=R3,I3=se({name:"RefreshRight",__name:"refresh-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M784.512 230.272v-50.56a32 32 0 1 1 64 0v149.056a32 32 0 0 1-32 32H667.52a32 32 0 1 1 0-64h92.992A320 320 0 1 0 524.8 833.152a320 320 0 0 0 320-320h64a384 384 0 0 1-384 384 384 384 0 0 1-384-384 384 384 0 0 1 643.712-282.88"})]))}}),P3=I3,M3=se({name:"ScaleToOriginal",__name:"scale-to-original",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M813.176 180.706a60.235 60.235 0 0 1 60.236 60.235v481.883a60.235 60.235 0 0 1-60.236 60.235H210.824a60.235 60.235 0 0 1-60.236-60.235V240.94a60.235 60.235 0 0 1 60.236-60.235h602.352zm0-60.235H210.824A120.47 120.47 0 0 0 90.353 240.94v481.883a120.47 120.47 0 0 0 120.47 120.47h602.353a120.47 120.47 0 0 0 120.471-120.47V240.94a120.47 120.47 0 0 0-120.47-120.47zm-120.47 180.705a30.12 30.12 0 0 0-30.118 30.118v301.177a30.118 30.118 0 0 0 60.236 0V331.294a30.12 30.12 0 0 0-30.118-30.118m-361.412 0a30.12 30.12 0 0 0-30.118 30.118v301.177a30.118 30.118 0 1 0 60.236 0V331.294a30.12 30.12 0 0 0-30.118-30.118M512 361.412a30.12 30.12 0 0 0-30.118 30.117v30.118a30.118 30.118 0 0 0 60.236 0V391.53A30.12 30.12 0 0 0 512 361.412M512 512a30.12 30.12 0 0 0-30.118 30.118v30.117a30.118 30.118 0 0 0 60.236 0v-30.117A30.12 30.12 0 0 0 512 512"})]))}}),_3=M3,A3=se({name:"Search",__name:"search",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),L3=A3,D3=se({name:"SortDown",__name:"sort-down",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M576 96v709.568L333.312 562.816A32 32 0 1 0 288 608l297.408 297.344A32 32 0 0 0 640 882.688V96a32 32 0 0 0-64 0"})]))}}),B3=D3,F3=se({name:"SortUp",__name:"sort-up",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M384 141.248V928a32 32 0 1 0 64 0V218.56l242.688 242.688A32 32 0 1 0 736 416L438.592 118.656A32 32 0 0 0 384 141.248"})]))}}),V3=F3,z3=se({name:"StarFilled",__name:"star-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M313.6 924.48a70.4 70.4 0 0 1-74.152-5.365 70.4 70.4 0 0 1-27.992-68.875l37.888-220.928L88.96 472.96a70.4 70.4 0 0 1 3.788-104.225A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 100.246-28.595 70.4 70.4 0 0 1 25.962 28.595l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),Hu=z3,H3=se({name:"Star",__name:"star",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),K3=H3,W3=se({name:"SuccessFilled",__name:"success-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.27 38.27 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),HC=W3,j3=se({name:"View",__name:"view",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),U3=j3,q3=se({name:"WarningFilled",__name:"warning-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 192a58.43 58.43 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.43 58.43 0 0 0 512 256m0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4"})]))}}),of=q3,Y3=se({name:"ZoomIn",__name:"zoom-in",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704m-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64z"})]))}}),KC=Y3,G3=se({name:"ZoomOut",__name:"zoom-out",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704M352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64"})]))}}),X3=G3;const Kt=G([String,Object,Function]),WC={Close:Ko},sm={Close:Ko,SuccessFilled:HC,InfoFilled:Mi,WarningFilled:of,CircleCloseFilled:am},Vs={primary:Mi,success:HC,warning:of,error:am,info:Mi},af={validating:Aa,success:om,error:Va},J3=["light","dark"],Z3=Ce({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:Oi(Vs),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:J3,default:"light"}}),Q3={close:e=>e instanceof MouseEvent},eL=Ce({size:{type:G([Number,String])},color:{type:String}});var tL=se({name:"ElIcon",inheritAttrs:!1,__name:"icon",props:eL,setup(e){const t=e,n=fe("icon"),o=w(()=>{const{size:a,color:s}=t,r=ln(a);return!r&&!s?{}:{fontSize:r,"--color":s}});return(a,s)=>(x(),B("i",dt({class:i(n).b(),style:o.value},a.$attrs),[ee(a.$slots,"default")],16))}}),nL=tL;const De=rt(nL);var oL=se({name:"ElAlert",__name:"alert",props:Z3,emits:Q3,setup(e,{emit:t}){const{Close:n}=sm,o=e,a=t,s=vn(),r=fe("alert"),l=M(!0),u=w(()=>Vs[o.type]),c=w(()=>{if(o.description)return!0;const f=s.default?.();return f?$o(f).some(v=>!MC(v)):!1}),d=f=>{l.value=!1,a("close",f)};return(f,v)=>(x(),ae(Vn,{name:i(r).b("fade"),persisted:""},{default:J(()=>[ut(z("div",{class:T([i(r).b(),i(r).m(e.type),i(r).is("center",e.center),i(r).is(e.effect)]),role:"alert"},[e.showIcon&&(f.$slots.icon||u.value)?(x(),ae(i(De),{key:0,class:T([i(r).e("icon"),i(r).is("big",c.value)])},{default:J(()=>[ee(f.$slots,"icon",{},()=>[(x(),ae(it(u.value)))])]),_:3},8,["class"])):te("v-if",!0),z("div",{class:T(i(r).e("content"))},[e.title||f.$slots.title?(x(),B("span",{key:0,class:T([i(r).e("title"),{"with-description":c.value}])},[ee(f.$slots,"title",{},()=>[wt(Se(e.title),1)])],2)):te("v-if",!0),c.value?(x(),B("p",{key:1,class:T(i(r).e("description"))},[ee(f.$slots,"default",{},()=>[wt(Se(e.description),1)])],2)):te("v-if",!0),e.closable?(x(),B(Fe,{key:2},[e.closeText?(x(),B("div",{key:0,class:T([i(r).e("close-btn"),i(r).is("customed")]),onClick:d},Se(e.closeText),3)):(x(),ae(i(De),{key:1,class:T(i(r).e("close-btn")),onClick:d},{default:J(()=>[Y(i(n))]),_:1},8,["class"]))],64)):te("v-if",!0)],2)],2),[[Pt,l.value]])]),_:3},8,["name"]))}}),aL=oL;const sL=rt(aL),jC=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],UC=Ce({role:{type:String,values:jC,default:"tooltip"}}),rm=Symbol("popper"),qC=Symbol("popperContent");var rL=se({name:"ElPopperArrow",inheritAttrs:!1,__name:"arrow",setup(e,{expose:t}){const n=fe("popper"),{arrowRef:o,arrowStyle:a}=_e(qC,void 0);return Bt(()=>{o.value=void 0}),t({arrowRef:o}),(s,r)=>(x(),B("span",{ref_key:"arrowRef",ref:o,class:T(i(n).e("arrow")),style:Ke(i(a)),"data-popper-arrow":""},null,6))}}),lL=rL;const YC=Ce({virtualRef:{type:G(Object)},virtualTriggering:Boolean,onMouseenter:{type:G(Function)},onMouseleave:{type:G(Function)},onClick:{type:G(Function)},onKeydown:{type:G(Function)},onFocus:{type:G(Function)},onBlur:{type:G(Function)},onContextmenu:{type:G(Function)},id:String,open:Boolean}),Uf="ElOnlyChild",GC=se({name:Uf,setup(e,{slots:t,attrs:n}){const o=DA(_e(yC)?.setForwardRef??Dt);return()=>{const a=t.default?.(n);if(!a)return null;const[s,r]=XC(a);return s?(r>1&&pt(Uf,"requires exact only one valid child."),ut(Ia(s,n),[[o]])):(pt(Uf,"no valid child node found"),null)}}});function XC(e){if(!e)return[null,0];const t=e,n=t.filter(o=>o.type!==gn).length;for(const o of t){if(at(o))switch(o.type){case gn:continue;case Ol:case"svg":return[uy(o),n];case Fe:return XC(o.children);default:return[o,n]}return[uy(o),n]}return[null,0]}function uy(e){const t=fe("only-child");return Y("span",{class:t.e("content")},[e])}var iL=se({name:"ElPopperTrigger",inheritAttrs:!1,__name:"trigger",props:YC,setup(e,{expose:t}){const n=e,{role:o,triggerRef:a}=_e(rm,void 0);LA(a);const s=w(()=>l.value?n.id:void 0),r=w(()=>{if(o&&o.value==="tooltip")return n.open&&n.id?n.id:void 0}),l=w(()=>{if(o&&o.value!=="tooltip")return o.value}),u=w(()=>l.value?`${n.open}`:void 0);let c;const d=["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"];return ht(()=>{le(()=>n.virtualRef,f=>{f&&(a.value=xn(f))},{immediate:!0}),le(a,(f,v)=>{c?.(),c=void 0,vo(v)&&d.forEach(g=>{const p=n[g];p&&v.removeEventListener(g.slice(2).toLowerCase(),p,["onFocus","onBlur"].includes(g))}),vo(f)&&(d.forEach(g=>{const p=n[g];p&&f.addEventListener(g.slice(2).toLowerCase(),p,["onFocus","onBlur"].includes(g))}),Ri(f)&&(c=le([s,r,l,u],g=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((p,h)=>{bn(g[h])?f.removeAttribute(p):f.setAttribute(p,g[h])})},{immediate:!0}))),vo(v)&&Ri(v)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(g=>v.removeAttribute(g))},{immediate:!0})}),Bt(()=>{if(c?.(),c=void 0,a.value&&vo(a.value)){const f=a.value;d.forEach(v=>{const g=n[v];g&&f.removeEventListener(v.slice(2).toLowerCase(),g,["onFocus","onBlur"].includes(v))}),a.value=void 0}}),t({triggerRef:a}),(f,v)=>e.virtualTriggering?te("v-if",!0):(x(),ae(i(GC),dt({key:0},f.$attrs,{"aria-controls":s.value,"aria-describedby":r.value,"aria-expanded":u.value,"aria-haspopup":l.value}),{default:J(()=>[ee(f.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}}),uL=iL;const JC=Ce({arrowOffset:{type:Number,default:5}}),cL=["fixed","absolute"],dL=Ce({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:G(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:Da,default:"bottom"},popperOptions:{type:G(Object),default:()=>({})},strategy:{type:String,values:cL,default:"absolute"}}),ZC=Ce({...dL,...JC,id:String,style:{type:G([String,Array,Object])},className:{type:G([String,Array,Object])},effect:{type:G(String),default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:Boolean,trapping:Boolean,popperClass:{type:G([String,Array,Object])},popperStyle:{type:G([String,Array,Object])},referenceEl:{type:G(Object)},triggerTargetEl:{type:G(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},virtualTriggering:Boolean,zIndex:Number,...oo(["ariaLabel"]),loop:Boolean}),fL={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},pL=Ce({size:{type:String,values:ia},disabled:Boolean}),hL=Ce({...pL,model:Object,rules:{type:G(Object)},labelPosition:{type:String,values:["left","right","top"],default:"right"},requireAsteriskPosition:{type:String,values:["left","right"],default:"left"},labelWidth:{type:[String,Number],default:""},labelSuffix:{type:String,default:""},inline:Boolean,inlineMessage:Boolean,statusIcon:Boolean,showMessage:{type:Boolean,default:!0},validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:Boolean,scrollToError:Boolean,scrollIntoViewOptions:{type:G([Object,Boolean]),default:!0}}),vL={validate:(e,t,n)=>(ye(e)||Le(e))&&Ht(t)&&Le(n)},Mr=Symbol("formContextKey"),La=Symbol("formItemContextKey"),Cn=(e,t={})=>{const n=M(void 0),o=t.prop?n:sC("size"),a=t.global?n:AC(),s=t.form?{size:void 0}:_e(Mr,void 0),r=t.formItem?{size:void 0}:_e(La,void 0);return w(()=>o.value||i(e)||r?.size||s?.size||a.value||"")},un=e=>{const t=sC("disabled"),n=_e(Mr,void 0);return w(()=>t.value??i(e)??n?.disabled??!1)},Dn=()=>({form:_e(Mr,void 0),formItem:_e(La,void 0)}),Po=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:o})=>{n||(n=M(!1)),o||(o=M(!1));const a=ft(),s=()=>{let c=a?.parent;for(;c;){if(c.type.name==="ElFormItem")return!1;if(c.type.name==="ElLabelWrap")return!0;c=c.parent}return!1},r=M();let l;const u=w(()=>!!(!(e.label||e.ariaLabel)&&t&&t.inputIds&&t.inputIds?.length<=1));return ht(()=>{l=le([Vt(e,"id"),n],([c,d])=>{const f=c??(d?void 0:zn().value);f!==r.value&&(t?.removeInputId&&!s()&&(r.value&&t.removeInputId(r.value),!o?.value&&!d&&f&&t.addInputId(f)),r.value=f)},{immediate:!0})}),$l(()=>{l&&l(),t?.removeInputId&&r.value&&t.removeInputId(r.value)}),{isLabeledByFormItem:u,inputId:r}},mL=["","error","validating","success"],gL=Ce({label:String,labelWidth:{type:[String,Number]},labelPosition:{type:String,values:["left","right","top",""],default:""},prop:{type:G([String,Array])},required:{type:Boolean,default:void 0},rules:{type:G([Object,Array])},error:String,validateStatus:{type:String,values:mL},for:String,inlineMessage:{type:Boolean,default:void 0},showMessage:{type:Boolean,default:!0},size:{type:String,values:ia}}),cy=e=>[...new Set(e)],jl=e=>ye(e)?e[0]:e,Zn=e=>!e&&e!==0?[]:ye(e)?e:[e],bL="ElForm";function yL(){const e=M([]),t=w(()=>{if(!e.value.length)return"0";const s=Math.max(...e.value);return s?`${s}px`:""});function n(s){const r=e.value.indexOf(s);return r===-1&&t.value==="0"&&pt(bL,`unexpected width ${s}`),r}function o(s,r){if(s&&r){const l=n(r);e.value.splice(l,1,s)}else s&&e.value.push(s)}function a(s){const r=n(s);r>-1&&e.value.splice(r,1)}return{autoLabelWidth:t,registerLabelWidth:o,deregisterLabelWidth:a}}const Ku=(e,t)=>{const n=Nn(t).map(o=>ye(o)?o.join("."):o);return n.length>0?e.filter(o=>o.propString&&n.includes(o.propString)):e},Dr="ElForm";var wL=se({name:Dr,__name:"form",props:hL,emits:vL,setup(e,{expose:t,emit:n}){const o=e,a=n,s=M(),r=At([]),l=new Map,u=Cn(),c=fe("form"),d=w(()=>{const{labelPosition:$,inline:O}=o;return[c.b(),c.m(u.value||"default"),{[c.m(`label-${$}`)]:$,[c.m("inline")]:O}]}),f=$=>Ku(r,[$])[0],v=$=>{r.push($),$.propString&&(l.has($.propString)?$.setInitialValue(l.get($.propString)):l.set($.propString,es($.fieldValue)))},g=$=>{$.prop&&r.splice(r.indexOf($),1)},p=$=>{if(!o.model){pt(Dr,"model is required for setInitialValues to work.");return}if(!$){pt(Dr,"initModel is required for setInitialValues to work.");return}for(const O of l.keys())l.set(O,es(Ms($,O).value));r.forEach(O=>{O.prop&&O.setInitialValue(Ms($,O.prop).value)})},h=($=[])=>{if(!o.model){pt(Dr,"model is required for resetFields to work.");return}Ku(r,$).forEach(R=>R.resetField());const O=new Set(r.map(R=>R.propString).filter(Boolean)),N=$.length>0?Nn($).map(R=>ye(R)?R.join("."):R):[...l.keys()];for(const R of N)!O.has(R)&&l.has(R)&&(Ms(o.model,R).value=es(l.get(R)))},m=($=[])=>{Ku(r,$).forEach(O=>O.clearValidate())},b=w(()=>{const $=!!o.model;return $||pt(Dr,"model is required for validate to work."),$}),k=$=>{if(r.length===0)return[];const O=Ku(r,$);return O.length?O:(pt(Dr,"please pass correct props!"),[])},y=async $=>C(void 0,$),S=async($=[])=>{if(!b.value)return!1;const O=k($);if(O.length===0)return!0;let N={};for(const R of O)try{await R.validate(""),R.validateState==="error"&&!R.error&&R.resetField()}catch(A){N={...N,...A}}return Object.keys(N).length===0?!0:Promise.reject(N)},C=async($=[],O)=>{let N=!1;const R=!Ve(O);try{return N=await S($),N===!0&&await O?.(N),N}catch(A){if(A instanceof Error)throw A;const _=A;return o.scrollToError&&s.value&&s.value.querySelector(`.${c.b()}-item.is-error`)?.scrollIntoView(o.scrollIntoViewOptions),!N&&await O?.(!1,_),R&&Promise.reject(_)}},E=$=>{const O=f($);O&&O.$el?.scrollIntoView(o.scrollIntoViewOptions)};return le(()=>o.rules,()=>{o.validateOnRuleChange&&y().catch($=>pt($))},{deep:!0,flush:"post"}),St(Mr,At({...Mn(o),emit:a,resetFields:h,clearValidate:m,validateField:C,getField:f,addField:v,removeField:g,setInitialValues:p,...yL()})),t({validate:y,validateField:C,resetFields:h,clearValidate:m,scrollToField:E,getField:f,fields:r,setInitialValues:p}),($,O)=>(x(),B("form",{ref_key:"formRef",ref:s,class:T(d.value)},[ee($.$slots,"default")],2))}}),SL=wL;const dy="ElLabelWrap";var CL=se({name:dy,props:{isAutoWidth:Boolean,updateAll:Boolean},setup(e,{slots:t}){const n=_e(Mr,void 0),o=_e(La);o||nn(dy,"usage: ");const a=fe("form"),s=M(),r=M(0),l=()=>{if(s.value?.firstElementChild){const d=window.getComputedStyle(s.value.firstElementChild).width;return Math.ceil(Number.parseFloat(d))}else return 0},u=(d="update")=>{Re(()=>{t.default&&e.isAutoWidth&&(d==="update"?r.value=l():d==="remove"&&n?.deregisterLabelWidth(r.value))})},c=()=>u("update");return ht(()=>{c()}),Bt(()=>{u("remove")}),la(()=>c()),le(r,(d,f)=>{e.updateAll&&n?.registerLabelWidth(d,f)}),en(w(()=>s.value?.firstElementChild??null),c),()=>{if(!t)return null;const{isAutoWidth:d}=e;if(d){const f=n?.autoLabelWidth,v=o?.hasLabel,g={};if(v&&f&&f!=="auto"){const p=Math.max(0,Number.parseInt(f,10)-r.value),h=(o.labelPosition||n.labelPosition)==="left"?"marginRight":"marginLeft";p&&(g[h]=`${p}px`)}return Y("div",{ref:s,class:[a.be("item","label-wrap")],style:g},[t.default?.()])}else return Y(Fe,{ref:s},[t.default?.()])}}});function ar(){return ar=Object.assign?Object.assign.bind():function(e){for(var t=1;t"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 hc(e,t,n){return EL()?hc=Reflect.construct.bind():hc=function(a,s,r){var l=[null];l.push.apply(l,s);var u=Function.bind.apply(a,l),c=new u;return r&&_i(c,r.prototype),c},hc.apply(null,arguments)}function xL(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function Gp(e){var t=typeof Map=="function"?new Map:void 0;return Gp=function(o){if(o===null||!xL(o))return o;if(typeof o!="function")throw new TypeError("Super expression must either be null or a function");if(typeof t<"u"){if(t.has(o))return t.get(o);t.set(o,a)}function a(){return hc(o,arguments,Yp(this).constructor)}return a.prototype=Object.create(o.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),_i(a,o)},Gp(e)}var TL=/%[sdj%]/g,$L=function(){};function Xp(e){if(!e||!e.length)return null;var t={};return e.forEach(function(n){var o=n.field;t[o]=t[o]||[],t[o].push(n)}),t}function Oo(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o=s)return l;switch(l){case"%s":return String(n[a++]);case"%d":return Number(n[a++]);case"%j":try{return JSON.stringify(n[a++])}catch{return"[Circular]"}break;default:return l}});return r}return e}function OL(e){return e==="string"||e==="url"||e==="hex"||e==="email"||e==="date"||e==="pattern"}function An(e,t){return!!(e==null||t==="array"&&Array.isArray(e)&&!e.length||OL(t)&&typeof e=="string"&&!e)}function RL(e,t,n){var o=[],a=0,s=e.length;function r(l){o.push.apply(o,l||[]),a++,a===s&&n(o)}e.forEach(function(l){t(l,r)})}function fy(e,t,n){var o=0,a=e.length;function s(r){if(r&&r.length){n(r);return}var l=o;o=o+1,l()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},Jl={integer:function(t){return Jl.number(t)&&parseInt(t,10)===t},float:function(t){return Jl.number(t)&&!Jl.integer(t)},array:function(t){return Array.isArray(t)},regexp:function(t){if(t instanceof RegExp)return!0;try{return!!new RegExp(t)}catch{return!1}},date:function(t){return typeof t.getTime=="function"&&typeof t.getMonth=="function"&&typeof t.getYear=="function"&&!isNaN(t.getTime())},number:function(t){return isNaN(t)?!1:typeof t=="number"},object:function(t){return typeof t=="object"&&!Jl.array(t)},method:function(t){return typeof t=="function"},email:function(t){return typeof t=="string"&&t.length<=320&&!!t.match(my.email)},url:function(t){return typeof t=="string"&&t.length<=2048&&!!t.match(AL())},hex:function(t){return typeof t=="string"&&!!t.match(my.hex)}},LL=function(t,n,o,a,s){if(t.required&&n===void 0){QC(t,n,o,a,s);return}var r=["integer","float","array","regexp","object","method","email","number","date","url","hex"],l=t.type;r.indexOf(l)>-1?Jl[l](n)||a.push(Oo(s.messages.types[l],t.fullField,t.type)):l&&typeof n!==t.type&&a.push(Oo(s.messages.types[l],t.fullField,t.type))},DL=function(t,n,o,a,s){var r=typeof t.len=="number",l=typeof t.min=="number",u=typeof t.max=="number",c=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,d=n,f=null,v=typeof n=="number",g=typeof n=="string",p=Array.isArray(n);if(v?f="number":g?f="string":p&&(f="array"),!f)return!1;p&&(d=n.length),g&&(d=n.replace(c,"_").length),r?d!==t.len&&a.push(Oo(s.messages[f].len,t.fullField,t.len)):l&&!u&&dt.max?a.push(Oo(s.messages[f].max,t.fullField,t.max)):l&&u&&(dt.max)&&a.push(Oo(s.messages[f].range,t.fullField,t.min,t.max))},Br="enum",BL=function(t,n,o,a,s){t[Br]=Array.isArray(t[Br])?t[Br]:[],t[Br].indexOf(n)===-1&&a.push(Oo(s.messages[Br],t.fullField,t[Br].join(", ")))},FL=function(t,n,o,a,s){if(t.pattern){if(t.pattern instanceof RegExp)t.pattern.lastIndex=0,t.pattern.test(n)||a.push(Oo(s.messages.pattern.mismatch,t.fullField,n,t.pattern));else if(typeof t.pattern=="string"){var r=new RegExp(t.pattern);r.test(n)||a.push(Oo(s.messages.pattern.mismatch,t.fullField,n,t.pattern))}}},Gt={required:QC,whitespace:_L,type:LL,range:DL,enum:BL,pattern:FL},VL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n,"string")&&!t.required)return o();Gt.required(t,n,a,r,s,"string"),An(n,"string")||(Gt.type(t,n,a,r,s),Gt.range(t,n,a,r,s),Gt.pattern(t,n,a,r,s),t.whitespace===!0&&Gt.whitespace(t,n,a,r,s))}o(r)},zL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&Gt.type(t,n,a,r,s)}o(r)},HL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(n===""&&(n=void 0),An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&(Gt.type(t,n,a,r,s),Gt.range(t,n,a,r,s))}o(r)},KL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&Gt.type(t,n,a,r,s)}o(r)},WL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),An(n)||Gt.type(t,n,a,r,s)}o(r)},jL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&(Gt.type(t,n,a,r,s),Gt.range(t,n,a,r,s))}o(r)},UL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&(Gt.type(t,n,a,r,s),Gt.range(t,n,a,r,s))}o(r)},qL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(n==null&&!t.required)return o();Gt.required(t,n,a,r,s,"array"),n!=null&&(Gt.type(t,n,a,r,s),Gt.range(t,n,a,r,s))}o(r)},YL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&Gt.type(t,n,a,r,s)}o(r)},GL="enum",XL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s),n!==void 0&&Gt[GL](t,n,a,r,s)}o(r)},JL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n,"string")&&!t.required)return o();Gt.required(t,n,a,r,s),An(n,"string")||Gt.pattern(t,n,a,r,s)}o(r)},ZL=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n,"date")&&!t.required)return o();if(Gt.required(t,n,a,r,s),!An(n,"date")){var u;n instanceof Date?u=n:u=new Date(n),Gt.type(t,u,a,r,s),u&&Gt.range(t,u.getTime(),a,r,s)}}o(r)},QL=function(t,n,o,a,s){var r=[],l=Array.isArray(n)?"array":typeof n;Gt.required(t,n,a,r,s,l),o(r)},qf=function(t,n,o,a,s){var r=t.type,l=[],u=t.required||!t.required&&a.hasOwnProperty(t.field);if(u){if(An(n,r)&&!t.required)return o();Gt.required(t,n,a,l,s,r),An(n,r)||Gt.type(t,n,a,l,s)}o(l)},eD=function(t,n,o,a,s){var r=[],l=t.required||!t.required&&a.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return o();Gt.required(t,n,a,r,s)}o(r)},hi={string:VL,method:zL,number:HL,boolean:KL,regexp:WL,integer:jL,float:UL,array:qL,object:YL,enum:XL,pattern:JL,date:ZL,url:qf,hex:qf,email:qf,required:QL,any:eD};function Jp(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var t=JSON.parse(JSON.stringify(this));return t.clone=this.clone,t}}}var Zp=Jp(),bu=(function(){function e(n){this.rules=null,this._messages=Zp,this.define(n)}var t=e.prototype;return t.define=function(o){var a=this;if(!o)throw new Error("Cannot configure a schema with no rules");if(typeof o!="object"||Array.isArray(o))throw new Error("Rules must be an object");this.rules={},Object.keys(o).forEach(function(s){var r=o[s];a.rules[s]=Array.isArray(r)?r:[r]})},t.messages=function(o){return o&&(this._messages=vy(Jp(),o)),this._messages},t.validate=function(o,a,s){var r=this;a===void 0&&(a={}),s===void 0&&(s=function(){});var l=o,u=a,c=s;if(typeof u=="function"&&(c=u,u={}),!this.rules||Object.keys(this.rules).length===0)return c&&c(null,l),Promise.resolve(l);function d(h){var m=[],b={};function k(S){if(Array.isArray(S)){var C;m=(C=m).concat.apply(C,S)}else m.push(S)}for(var y=0;yn.labelPosition||a?.labelPosition),b=w(()=>m.value==="top"?{}:{width:ln(n.labelWidth??a?.labelWidth)}),k=w(()=>{if(m.value==="top"||a?.inline)return{};if(!n.label&&!n.labelWidth&&R)return{};const ie=ln(n.labelWidth??a?.labelWidth);return!n.label&&!o.label?{marginLeft:ie}:{}}),y=w(()=>[l.b(),l.m(r.value),l.is("error",d.value==="error"),l.is("validating",d.value==="validating"),l.is("success",d.value==="success"),l.is("required",U.value||n.required),l.is("no-asterisk",a?.hideRequiredAsterisk),a?.requireAsteriskPosition==="right"?"asterisk-right":"asterisk-left",{[l.m("feedback")]:a?.statusIcon,[l.m(`label-${m.value}`)]:m.value}]),S=w(()=>Ht(n.inlineMessage)?n.inlineMessage:a?.inlineMessage||!1),C=w(()=>[l.e("error"),{[l.em("error","inline")]:S.value}]),E=w(()=>n.prop?ye(n.prop)?n.prop.join("."):n.prop:""),$=w(()=>!!(n.label||o.label)),O=w(()=>n.for??(c.value.length===1?c.value[0]:void 0)),N=w(()=>!O.value&&$.value),R=!!s,A=w(()=>{const ie=a?.model;if(!(!ie||!n.prop))return Ms(ie,n.prop).value}),_=w(()=>{const{required:ie}=n,oe=[];n.rules&&oe.push(...Nn(n.rules));const ne=a?.rules;if(ne&&n.prop){const K=Ms(ne,n.prop).value;K&&oe.push(...Nn(K))}if(ie!==void 0){const K=oe.map((Z,re)=>[Z,re]).filter(([Z])=>"required"in Z);if(K.length>0)for(const[Z,re]of K)Z.required!==ie&&(oe[re]={...Z,required:ie});else oe.push({required:ie})}return oe}),V=w(()=>_.value.length>0),H=ie=>_.value.filter(oe=>!oe.trigger||!ie?!0:ye(oe.trigger)?oe.trigger.includes(ie):oe.trigger===ie).map(({trigger:oe,...ne})=>ne),U=w(()=>_.value.some(ie=>ie.required)),W=w(()=>f.value==="error"&&n.showMessage&&(a?.showMessage??!0)),P=w(()=>`${n.label||""}${a?.labelSuffix||""}`),I=ie=>{d.value=ie},L=ie=>{const{errors:oe,fields:ne}=ie;(!oe||!ne)&&console.error(ie),I("error"),v.value=oe?oe?.[0]?.message??`${n.prop} is required`:"",a?.emit("validate",n.prop,!1,v.value)},D=()=>{I("success"),a?.emit("validate",n.prop,!0,"")},F=async ie=>{const oe=E.value;return new bu({[oe]:ie}).validate({[oe]:A.value},{firstFields:!0}).then(()=>(D(),!0)).catch(ne=>(L(ne),Promise.reject(ne)))},q=async(ie,oe)=>{if(h||!n.prop)return!1;const ne=Ve(oe);if(!V.value)return oe?.(!1),!1;const K=H(ie);return K.length===0?(oe?.(!0),!0):(I("validating"),F(K).then(()=>(oe?.(!0),!0)).catch(Z=>{const{fields:re}=Z;return oe?.(!1,re),ne?!1:Promise.reject(re)}))},j=()=>{I(""),v.value="",h=!1},X=async()=>{const ie=a?.model;if(!ie||!n.prop)return;const oe=Ms(ie,n.prop);h=!0,oe.value=es(p),await Re(),j(),h=!1},Q=ie=>{c.value.includes(ie)||c.value.push(ie)},he=ie=>{c.value=c.value.filter(oe=>oe!==ie)},ue=ie=>{p=es(ie)};le(()=>n.error,ie=>{v.value=ie||"",I(ie?"error":"")},{immediate:!0}),le(()=>n.validateStatus,ie=>I(ie||""));const ge=At({...Mn(n),$el:g,size:r,validateMessage:v,validateState:d,labelId:u,inputIds:c,isGroup:N,hasLabel:$,fieldValue:A,addInputId:Q,removeInputId:he,resetField:X,clearValidate:j,validate:q,propString:E,setInitialValue:ue});return St(La,ge),ht(()=>{n.prop&&(ue(A.value),a?.addField(ge))}),Bt(()=>{a?.removeField(ge)}),t({size:r,validateMessage:v,validateState:d,validate:q,clearValidate:j,resetField:X,setInitialValue:ue}),(ie,oe)=>(x(),B("div",{ref_key:"formItemRef",ref:g,class:T(y.value),role:N.value?"group":void 0,"aria-labelledby":N.value?i(u):void 0},[Y(i(CL),{"is-auto-width":b.value.width==="auto","update-all":i(a)?.labelWidth==="auto"},{default:J(()=>[e.label||ie.$slots.label?(x(),ae(it(O.value?"label":"div"),{key:0,id:i(u),for:O.value,class:T(i(l).e("label")),style:Ke(b.value)},{default:J(()=>[ee(ie.$slots,"label",{label:P.value},()=>[wt(Se(P.value),1)])]),_:3},8,["id","for","class","style"])):te("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),z("div",{class:T(i(l).e("content")),style:Ke(k.value)},[ee(ie.$slots,"default"),Y(q1,{name:`${i(l).namespace.value}-zoom-in-top`},{default:J(()=>[W.value?ee(ie.$slots,"error",{key:0,error:v.value},()=>[z("div",{class:T(C.value)},Se(v.value),3)]):te("v-if",!0)]),_:3},8,["name"])],6)],10,tD))}}),ek=nD;const oD=rt(SL,{FormItem:ek}),aD=on(ek),Yf="focus-trap.focus-after-trapped",Gf="focus-trap.focus-after-released",sD="focus-trap.focusout-prevented",gy={cancelable:!0,bubbles:!1},rD={cancelable:!0,bubbles:!1},by="focusAfterTrapped",yy="focusAfterReleased",tk=Symbol("elFocusTrap"),lm=M(),sf=M(0),im=M(0);let ju=0;const nk=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:o=>{const a=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||a?NodeFilter.FILTER_SKIP:o.tabIndex>=0||o===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},wy=(e,t)=>{for(const n of e)if(!lD(n,t))return n},lD=(e,t)=>{if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1},iD=e=>{const t=nk(e);return[wy(t,e),wy(t.reverse(),e)]},uD=e=>e instanceof HTMLInputElement&&"select"in e,Cs=(e,t)=>{if(e){const n=document.activeElement;iu(e,{preventScroll:!0}),im.value=window.performance.now(),e!==n&&uD(e)&&t&&e.select()}};function Sy(e,t){const n=[...e],o=e.indexOf(t);return o!==-1&&n.splice(o,1),n}const cD=()=>{let e=[];return{push:o=>{const a=e[0];a&&o!==a&&a.pause(),e=Sy(e,o),e.unshift(o)},remove:o=>{e=Sy(e,o),e[0]?.resume?.()}}},dD=(e,t=!1)=>{const n=document.activeElement;for(const o of e)if(Cs(o,t),document.activeElement!==n)return},Cy=cD(),fD=()=>sf.value>im.value,Uu=()=>{lm.value="pointer",sf.value=window.performance.now()},ky=()=>{lm.value="keyboard",sf.value=window.performance.now()},pD=()=>(ht(()=>{ju===0&&(document.addEventListener("mousedown",Uu),document.addEventListener("touchstart",Uu),document.addEventListener("keydown",ky)),ju++}),Bt(()=>{ju--,ju<=0&&(document.removeEventListener("mousedown",Uu),document.removeEventListener("touchstart",Uu),document.removeEventListener("keydown",ky))}),{focusReason:lm,lastUserFocusTimestamp:sf,lastAutomatedFocusTimestamp:im}),qu=e=>new CustomEvent(sD,{...rD,detail:e});var hD=se({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[by,yy,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=M();let o,a;const{focusReason:s}=pD();IA(p=>{e.trapped&&!r.paused&&t("release-requested",p)});const r={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},l=p=>{if(!e.loop&&!e.trapped||r.paused)return;const{altKey:h,ctrlKey:m,metaKey:b,currentTarget:k,shiftKey:y}=p,{loop:S}=e,C=jt(p)===we.tab&&!h&&!m&&!b,E=document.activeElement;if(C&&E){const $=k,[O,N]=iD($);if(O&&N){if(!y&&E===N){const R=qu({focusReason:s.value});t("focusout-prevented",R),R.defaultPrevented||(p.preventDefault(),S&&Cs(O,!0))}else if(y&&[O,$].includes(E)){const R=qu({focusReason:s.value});t("focusout-prevented",R),R.defaultPrevented||(p.preventDefault(),S&&Cs(N,!0))}}else if(E===$){const R=qu({focusReason:s.value});t("focusout-prevented",R),R.defaultPrevented||p.preventDefault()}}};St(tk,{focusTrapRef:n,onKeydown:l}),le(()=>e.focusTrapEl,p=>{p&&(n.value=p)},{immediate:!0}),le([n],([p],[h])=>{p&&(p.addEventListener("keydown",l),p.addEventListener("focusin",d),p.addEventListener("focusout",f)),h&&(h.removeEventListener("keydown",l),h.removeEventListener("focusin",d),h.removeEventListener("focusout",f))});const u=p=>{t(by,p)},c=p=>t(yy,p),d=p=>{const h=i(n);if(!h)return;const m=p.target,b=p.relatedTarget,k=m&&h.contains(m);e.trapped||b&&h.contains(b)||(o=b),k&&t("focusin",p),!r.paused&&e.trapped&&(k?a=m:Cs(a,!0))},f=p=>{const h=i(n);if(!(r.paused||!h))if(e.trapped){const m=p.relatedTarget;!bn(m)&&!h.contains(m)&&setTimeout(()=>{if(!r.paused&&e.trapped){const b=qu({focusReason:s.value});t("focusout-prevented",b),b.defaultPrevented||Cs(a,!0)}},0)}else{const m=p.target;m&&h.contains(m)||t("focusout",p)}};async function v(){await Re();const p=i(n);if(p){Cy.push(r);const h=p.contains(document.activeElement)?o:document.activeElement;if(o=h,!p.contains(h)){const m=new Event(Yf,gy);p.addEventListener(Yf,u),p.dispatchEvent(m),m.defaultPrevented||Re(()=>{let b=e.focusStartEl;Le(b)||(Cs(b),document.activeElement!==b&&(b="first")),b==="first"&&dD(nk(p),!0),(document.activeElement===h||b==="container")&&Cs(p)})}}}function g(){const p=i(n);if(p){p.removeEventListener(Yf,u);const h=new CustomEvent(Gf,{...gy,detail:{focusReason:s.value}});p.addEventListener(Gf,c),p.dispatchEvent(h),!h.defaultPrevented&&(s.value=="keyboard"||!fD()||p.contains(document.activeElement))&&Cs(o??document.body),p.removeEventListener(Gf,c),Cy.remove(r),o=null,a=null}}return ht(()=>{e.trapped&&v(),le(()=>e.trapped,p=>{p?v():g()})}),Bt(()=>{e.trapped&&g(),n.value&&(n.value.removeEventListener("keydown",l),n.value.removeEventListener("focusin",d),n.value.removeEventListener("focusout",f),n.value=void 0),o=null,a=null}),{onKeydown:l}}}),$n=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n};function vD(e,t,n,o,a,s){return ee(e.$slots,"default",{handleKeydown:e.onKeydown})}var mD=$n(hD,[["render",vD]]),Al=mD;const gD=(e,t=[])=>{const{placement:n,strategy:o,popperOptions:a}=e,s={placement:n,strategy:o,...a,modifiers:[...yD(e),...t]};return wD(s,a?.modifiers),s},bD=e=>{if(Mt)return xn(e)};function yD(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:o}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:0,bottom:0,left:0,right:0}}},{name:"flip",options:{padding:5,fallbackPlacements:o}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function wD(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const SD=0,CD=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:o,role:a}=_e(rm,void 0),s=M(),r=w(()=>e.arrowOffset),l=w(()=>({name:"eventListeners",enabled:!!e.visible})),u=w(()=>{const b=i(s),k=i(r)??SD;return{name:"arrow",enabled:!EM(b),options:{element:b,padding:k}}}),c=w(()=>({onFirstUpdate:()=>{p()},...gD(e,[i(u),i(l)])})),d=w(()=>bD(e.referenceEl)||i(o)),{attributes:f,state:v,styles:g,update:p,forceUpdate:h,instanceRef:m}=$A(d,n,c);return le(m,b=>t.value=b,{flush:"sync"}),ht(()=>{le(()=>i(d)?.getBoundingClientRect?.(),()=>{p()})}),Bt(()=>{t.value=void 0}),{attributes:f,arrowRef:s,contentRef:n,instanceRef:m,state:v,styles:g,role:a,forceUpdate:h,update:p}},kD=(e,{attributes:t,styles:n,role:o})=>{const{nextZIndex:a}=du(),s=fe("popper"),r=w(()=>i(t).popper),l=M(He(e.zIndex)?e.zIndex:a()),u=w(()=>[s.b(),s.is("pure",e.pure),s.is(e.effect),e.popperClass]),c=w(()=>[{zIndex:i(l)},i(n).popper,e.popperStyle||{}]),d=w(()=>o.value==="dialog"?"false":void 0),f=w(()=>i(n).arrow||{});return{ariaModal:d,arrowStyle:f,contentAttrs:r,contentClass:u,contentStyle:c,contentZIndex:l,updateZIndex:()=>{l.value=He(e.zIndex)?e.zIndex:a()}}},ED=(e,t)=>{const n=M(!1),o=M(),a=()=>{t("focus")},s=c=>{c.detail?.focusReason!=="pointer"&&(o.value="first",t("blur"))},r=c=>{e.visible&&!n.value&&(c.target&&(o.value=c.target),n.value=!0)},l=c=>{e.trapping||(c.detail.focusReason==="pointer"&&c.preventDefault(),n.value=!1)},u=()=>{n.value=!1,t("close")};return Bt(()=>{o.value=void 0}),{focusStartRef:o,trapped:n,onFocusAfterReleased:s,onFocusAfterTrapped:a,onFocusInTrap:r,onFocusoutPrevented:l,onReleaseRequested:u}};var xD=se({name:"ElPopperContent",__name:"content",props:ZC,emits:fL,setup(e,{expose:t,emit:n}){const o=n,a=e,{focusStartRef:s,trapped:r,onFocusAfterReleased:l,onFocusAfterTrapped:u,onFocusInTrap:c,onFocusoutPrevented:d,onReleaseRequested:f}=ED(a,o),{attributes:v,arrowRef:g,contentRef:p,styles:h,instanceRef:m,role:b,update:k}=CD(a),{ariaModal:y,arrowStyle:S,contentAttrs:C,contentClass:E,contentStyle:$,updateZIndex:O}=kD(a,{styles:h,attributes:v,role:b}),N=_e(La,void 0);St(qC,{arrowStyle:S,arrowRef:g}),N&&St(La,{...N,addInputId:Dt,removeInputId:Dt});let R;const A=(V=!0)=>{k(),V&&O()},_=()=>{A(!1),a.visible&&a.focusOnShow?r.value=!0:a.visible===!1&&(r.value=!1)};return ht(()=>{le(()=>a.triggerTargetEl,(V,H)=>{R?.(),R=void 0;const U=i(V||p.value),W=i(H||p.value);vo(U)&&(R=le([b,()=>a.ariaLabel,y,()=>a.id],P=>{["role","aria-label","aria-modal","id"].forEach((I,L)=>{bn(P[L])?U.removeAttribute(I):U.setAttribute(I,P[L])})},{immediate:!0})),W!==U&&vo(W)&&["role","aria-label","aria-modal","id"].forEach(P=>{W.removeAttribute(P)})},{immediate:!0}),le(()=>a.visible,_,{immediate:!0})}),Bt(()=>{R?.(),R=void 0,p.value=void 0}),t({popperContentRef:p,popperInstanceRef:m,updatePopper:A,contentStyle:$}),(V,H)=>(x(),B("div",dt({ref_key:"contentRef",ref:p},i(C),{style:i($),class:i(E),tabindex:"-1",onMouseenter:H[0]||(H[0]=U=>V.$emit("mouseenter",U)),onMouseleave:H[1]||(H[1]=U=>V.$emit("mouseleave",U))}),[Y(i(Al),{loop:e.loop,trapped:i(r),"trap-on-focus-in":!0,"focus-trap-el":i(p),"focus-start-el":i(s),onFocusAfterTrapped:i(u),onFocusAfterReleased:i(l),onFocusin:i(c),onFocusoutPrevented:i(d),onReleaseRequested:i(f)},{default:J(()=>[ee(V.$slots,"default")]),_:3},8,["loop","trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16))}}),TD=xD,$D=se({name:"ElPopper",inheritAttrs:!1,__name:"popper",props:UC,setup(e,{expose:t}){const n=e,o={triggerRef:M(),popperInstanceRef:M(),contentRef:M(),referenceRef:M(),role:w(()=>n.role)};return t(o),St(rm,o),(a,s)=>ee(a.$slots,"default")}}),OD=$D;const ok=rt(OD),zt=Ce({..._A,...ZC,appendTo:{type:su.to.type},content:{type:String,default:""},rawContent:Boolean,persistent:Boolean,visible:{type:G(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean,...oo(["ariaLabel"])}),Na=Ce({...YC,disabled:Boolean,trigger:{type:G([String,Array]),default:"hover"},triggerKeys:{type:G(Array),default:()=>[we.enter,we.numpadEnter,we.space]},focusOnTarget:Boolean}),{useModelToggleProps:RD,useModelToggleEmits:ND,useModelToggle:ID}=E_("visible"),PD=Ce({...UC,...RD,...zt,...Na,...JC,showArrow:{type:Boolean,default:!0}}),MD=[...ND,"before-show","before-hide","show","hide","open","close"],um=Symbol("elTooltip"),Qp=(e,t)=>ye(e)?e.includes(t):e===t,Fr=(e,t,n)=>o=>{Qp(i(e),t)&&n(o)};var _D=se({name:"ElTooltipTrigger",__name:"trigger",props:Na,setup(e,{expose:t}){const n=e,o=fe("tooltip"),{controlled:a,id:s,open:r,onOpen:l,onClose:u,onToggle:c}=_e(um,void 0),d=M(null),f=()=>{if(i(a)||n.disabled)return!0},v=Vt(n,"trigger"),g=Rn(f,Fr(v,"hover",S=>{l(S),n.focusOnTarget&&S.target&&Re(()=>{iu(S.target,{preventScroll:!0})})})),p=Rn(f,Fr(v,"hover",u)),h=Rn(f,Fr(v,"click",S=>{S.button===0&&c(S)})),m=Rn(f,Fr(v,"focus",l)),b=Rn(f,Fr(v,"focus",u)),k=Rn(f,Fr(v,"contextmenu",S=>{S.preventDefault(),c(S)})),y=Rn(f,S=>{const C=jt(S);n.triggerKeys.includes(C)&&(S.preventDefault(),c(S))});return t({triggerRef:d}),(S,C)=>(x(),ae(i(uL),{id:i(s),"virtual-ref":e.virtualRef,open:i(r),"virtual-triggering":e.virtualTriggering,class:T(i(o).e("trigger")),onBlur:i(b),onClick:i(h),onContextmenu:i(k),onFocus:i(m),onMouseenter:i(g),onMouseleave:i(p),onKeydown:i(y)},{default:J(()=>[ee(S.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}}),AD=_D,LD=se({name:"ElTooltipContent",inheritAttrs:!1,__name:"content",props:zt,setup(e,{expose:t}){const n=e,{selector:o}=bC(),a=fe("tooltip"),s=M(),r=HS(()=>s.value?.popperContentRef);let l;const{controlled:u,id:c,open:d,trigger:f,onClose:v,onOpen:g,onShow:p,onHide:h,onBeforeShow:m,onBeforeHide:b}=_e(um,void 0),k=w(()=>n.transition||`${a.namespace.value}-fade-in-linear`),y=w(()=>n.persistent);Bt(()=>{l?.()});const S=w(()=>i(y)?!0:i(d)),C=w(()=>n.disabled?!1:i(d)),E=w(()=>n.appendTo||o.value),$=w(()=>n.style??{}),O=M(!0),N=()=>{h(),P()&&iu(document.body,{preventScroll:!0}),O.value=!0},R=()=>{if(i(u))return!0},A=Rn(R,()=>{n.enterable&&Qp(i(f),"hover")&&g()}),_=Rn(R,()=>{Qp(i(f),"hover")&&v()}),V=()=>{s.value?.updatePopper?.(),m?.()},H=()=>{b?.()},U=()=>{p()},W=()=>{n.virtualTriggering||v()},P=I=>{const L=s.value?.popperContentRef,D=I?.relatedTarget||document.activeElement;return L?.contains(D)};return le(()=>i(d),I=>{I?(O.value=!1,l=Av(r,()=>{i(u)||Zn(i(f)).every(L=>L!=="hover"&&L!=="focus")&&v()},{detectIframe:!0})):l?.()},{flush:"post"}),le(()=>n.content,()=>{s.value?.updatePopper?.()}),t({contentRef:s,isFocusInsideContent:P}),(I,L)=>(x(),ae(i(_l),{disabled:!e.teleported,to:E.value},{default:J(()=>[S.value||!O.value?(x(),ae(Vn,{key:0,name:k.value,appear:!y.value,onAfterLeave:N,onBeforeEnter:V,onAfterEnter:U,onBeforeLeave:H,persisted:""},{default:J(()=>[ut(Y(i(TD),dt({id:i(c),ref_key:"contentRef",ref:s},I.$attrs,{"aria-label":e.ariaLabel,"aria-hidden":O.value,"boundaries-padding":e.boundariesPadding,"fallback-placements":e.fallbackPlacements,"gpu-acceleration":e.gpuAcceleration,offset:e.offset,placement:e.placement,"popper-options":e.popperOptions,"arrow-offset":e.arrowOffset,strategy:e.strategy,effect:e.effect,enterable:e.enterable,pure:e.pure,"popper-class":e.popperClass,"popper-style":[e.popperStyle,$.value],"reference-el":e.referenceEl,"trigger-target-el":e.triggerTargetEl,visible:C.value,"z-index":e.zIndex,loop:e.loop,onMouseenter:i(A),onMouseleave:i(_),onBlur:W,onClose:i(v)}),{default:J(()=>[ee(I.$slots,"default")]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","arrow-offset","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","loop","onMouseenter","onMouseleave","onClose"]),[[Pt,C.value]])]),_:3},8,["name","appear"])):te("v-if",!0)]),_:3},8,["disabled","to"]))}}),DD=LD;const BD=["innerHTML"],FD={key:1};var VD=se({name:"ElTooltip",__name:"tooltip",props:PD,emits:MD,setup(e,{expose:t,emit:n}){const o=e,a=n;MA();const s=fe("tooltip"),r=zn(),l=M(),u=M(),c=()=>{const S=i(l);S&&S.popperInstanceRef?.update()},d=M(!1),f=M(),{show:v,hide:g,hasUpdateHandler:p}=ID({indicator:d,toggleReason:f}),{onOpen:h,onClose:m}=AA({showAfter:Vt(o,"showAfter"),hideAfter:Vt(o,"hideAfter"),autoClose:Vt(o,"autoClose"),open:v,close:g}),b=w(()=>Ht(o.visible)&&!p.value),k=w(()=>[s.b(),o.popperClass]);St(um,{controlled:b,id:r,open:br(d),trigger:Vt(o,"trigger"),onOpen:h,onClose:m,onToggle:S=>{i(d)?m(S):h(S)},onShow:()=>{a("show",f.value)},onHide:()=>{a("hide",f.value)},onBeforeShow:()=>{a("before-show",f.value)},onBeforeHide:()=>{a("before-hide",f.value)},updatePopper:c}),le(()=>o.disabled,S=>{S&&d.value&&(d.value=!1)});const y=S=>u.value?.isFocusInsideContent(S);return lv(()=>d.value&&g()),Bt(()=>{f.value=void 0}),t({popperRef:l,contentRef:u,isFocusInsideContent:y,updatePopper:c,onOpen:h,onClose:m,hide:g}),(S,C)=>(x(),ae(i(ok),{ref_key:"popperRef",ref:l,role:e.role},{default:J(()=>[Y(AD,{disabled:e.disabled,trigger:e.trigger,"trigger-keys":e.triggerKeys,"virtual-ref":e.virtualRef,"virtual-triggering":e.virtualTriggering,"focus-on-target":e.focusOnTarget},{default:J(()=>[S.$slots.default?ee(S.$slots,"default",{key:0}):te("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering","focus-on-target"]),Y(DD,{ref_key:"contentRef",ref:u,"aria-label":e.ariaLabel,"boundaries-padding":e.boundariesPadding,content:e.content,disabled:e.disabled,effect:e.effect,enterable:e.enterable,"fallback-placements":e.fallbackPlacements,"hide-after":e.hideAfter,"gpu-acceleration":e.gpuAcceleration,offset:e.offset,persistent:e.persistent,"popper-class":k.value,"popper-style":e.popperStyle,placement:e.placement,"popper-options":e.popperOptions,"arrow-offset":e.arrowOffset,pure:e.pure,"raw-content":e.rawContent,"reference-el":e.referenceEl,"trigger-target-el":e.triggerTargetEl,"show-after":e.showAfter,strategy:e.strategy,teleported:e.teleported,transition:e.transition,"virtual-triggering":e.virtualTriggering,"z-index":e.zIndex,"append-to":e.appendTo,loop:e.loop},{default:J(()=>[ee(S.$slots,"content",{},()=>[e.rawContent?(x(),B("span",{key:0,innerHTML:e.content},null,8,BD)):(x(),B("span",FD,Se(e.content),1))]),e.showArrow?(x(),ae(i(lL),{key:0})):te("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","arrow-offset","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to","loop"])]),_:3},8,["role"]))}}),zD=VD;const Ln=rt(zD),rn=e=>e,yu=Ce({id:{type:String,default:void 0},size:Tn,disabled:{type:Boolean,default:void 0},modelValue:{type:G([String,Number,Object]),default:""},modelModifiers:{type:G(Object),default:()=>({})},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},type:{type:G(String),default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:G([Boolean,Object]),default:!1},autocomplete:{type:G(String),default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:Boolean,clearable:Boolean,clearIcon:{type:Kt,default:Va},showPassword:Boolean,showWordLimit:Boolean,wordLimitPosition:{type:String,values:["inside","outside"],default:"inside"},suffixIcon:{type:Kt},prefixIcon:{type:Kt},containerRole:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:G([Object,Array,String]),default:()=>rn({})},autofocus:Boolean,rows:{type:Number,default:2},...oo(["ariaLabel"]),inputmode:{type:G(String),default:void 0},name:String}),HD={[ot]:e=>Le(e),input:e=>Le(e),change:(e,t)=>Le(e)&&(t instanceof Event||t===void 0),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:e=>e===void 0||e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,mouseenter:e=>e instanceof MouseEvent,keydown:e=>e instanceof Event,compositionstart:e=>e instanceof CompositionEvent,compositionupdate:e=>e instanceof CompositionEvent,compositionend:e=>e instanceof CompositionEvent};xa(Va);let _o;const KD={height:"0",visibility:"hidden",overflow:Yd()?"":"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},WD=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break"],Ey=e=>{const t=Number.parseFloat(e);return Number.isNaN(t)?e:t};function jD(e){const t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),o=Number.parseFloat(t.getPropertyValue("padding-bottom"))+Number.parseFloat(t.getPropertyValue("padding-top")),a=Number.parseFloat(t.getPropertyValue("border-bottom-width"))+Number.parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:WD.map(s=>[s,t.getPropertyValue(s)]),paddingSize:o,borderSize:a,boxSizing:n}}function xy(e,t=1,n){if(!_o){_o=document.createElement("textarea");let d=document.body;!Yd()&&e.parentNode&&(d=e.parentNode),d.appendChild(_o)}const{paddingSize:o,borderSize:a,boxSizing:s,contextStyle:r}=jD(e);r.forEach(([d,f])=>_o?.style.setProperty(d,f)),Object.entries(KD).forEach(([d,f])=>_o?.style.setProperty(d,f,"important")),_o.value=e.value||e.placeholder||"";let l=_o.scrollHeight;const u={};s==="border-box"?l=l+a:s==="content-box"&&(l=l-o),_o.value="";const c=_o.scrollHeight-o;if(He(t)){let d=c*t;s==="border-box"&&(d=d+o+a),l=Math.max(d,l),u.minHeight=`${d}px`}if(He(n)){let d=c*n;s==="border-box"&&(d=d+o+a),l=Math.min(d,l)}return u.height=`${l}px`,_o.parentNode?.removeChild(_o),_o=void 0,u}const UD=["id","name","minlength","maxlength","type","disabled","readonly","autocomplete","tabindex","aria-label","placeholder","form","autofocus","role","inputmode"],qD=["id","name","minlength","maxlength","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form","autofocus","rows","role"],Ty="ElInput";var YD=se({name:Ty,inheritAttrs:!1,__name:"input",props:yu,emits:HD,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fs(),r=Ud(),l=vn(),u=w(()=>[o.type==="textarea"?m.b():h.b(),h.m(g.value),h.is("disabled",p.value),h.is("exceed",j.value),{[h.b("group")]:l.prepend||l.append,[h.m("prefix")]:l.prefix||o.prefixIcon,[h.m("suffix")]:l.suffix||o.suffixIcon||o.clearable||o.showPassword,[h.bm("suffix","password-clear")]:L.value&&D.value,[h.b("hidden")]:o.type==="hidden"},s.class]),c=w(()=>[h.e("wrapper"),h.is("focus",N.value)]),{form:d,formItem:f}=Dn(),{inputId:v}=Po(o,{formItemContext:f}),g=Cn(),p=un(),h=fe("input"),m=fe("textarea"),b=Xt(),k=Xt(),y=M(!1),S=M(!1),C=M(),E=Xt(o.inputStyle),$=w(()=>b.value||k.value),{wrapperRef:O,isFocused:N,handleFocus:R,handleBlur:A}=ms($,{disabled:p,afterBlur(){o.validateEvent&&f?.validate?.("blur").catch(Pe=>pt(Pe))}}),_=w(()=>d?.statusIcon??!1),V=w(()=>f?.validateState||""),H=w(()=>V.value&&af[V.value]),U=w(()=>S.value?U3:m3),W=w(()=>[s.style]),P=w(()=>[o.inputStyle,E.value,{resize:o.resize}]),I=w(()=>bn(o.modelValue)?"":String(o.modelValue)),L=w(()=>o.clearable&&!p.value&&!o.readonly&&!!I.value&&(N.value||y.value)),D=w(()=>o.showPassword&&!p.value&&!!I.value),F=w(()=>o.showWordLimit&&!!o.maxlength&&(o.type==="text"||o.type==="textarea")&&!p.value&&!o.readonly&&!o.showPassword),q=w(()=>I.value.length),j=w(()=>!!F.value&&q.value>Number(o.maxlength)),X=w(()=>!!l.suffix||!!o.suffixIcon||L.value||o.showPassword||F.value||!!V.value&&_.value),Q=w(()=>!!Object.keys(o.modelModifiers).length),[he,ue]=T4(b);en(k,Pe=>{if(oe(),!F.value||o.resize!=="both"&&o.resize!=="horizontal")return;const{width:Ae}=Pe[0].contentRect;C.value={right:`calc(100% - ${Ae+22-10}px)`}});const ge=()=>{const{type:Pe,autosize:Ae}=o;if(!(!Mt||Pe!=="textarea"||!k.value))if(Ae){const je=at(Ae)?Ae.minRows:void 0,Rt=at(Ae)?Ae.maxRows:void 0,Ue=xy(k.value,je,Rt);E.value={overflowY:"hidden",...Ue},Re(()=>{k.value.offsetHeight,E.value=Ue})}else E.value={minHeight:xy(k.value).minHeight}},oe=(Pe=>{let Ae=!1;return()=>{Ae||!o.autosize||k.value?.offsetParent!==null&&(setTimeout(Pe),Ae=!0)}})(ge),ne=()=>{const Pe=$.value,Ae=o.formatter?o.formatter(I.value):I.value;!Pe||Pe.value===Ae||o.type==="file"||(Pe.value=Ae)},K=Pe=>{const{trim:Ae,number:je}=o.modelModifiers;return Ae&&(Pe=Pe.trim()),je&&(Pe=`${Ey(Pe)}`),o.formatter&&o.parser&&(Pe=o.parser(Pe)),Pe},Z=async Pe=>{if(ce.value)return;const{lazy:Ae}=o.modelModifiers;let{value:je}=Pe.target;if(Ae){a(Sn,je);return}if(je=K(je),String(je)===I.value){o.formatter&&ne();return}he(),a(ot,je),a(Sn,je),await Re(),(o.formatter&&o.parser||!Q.value)&&ne(),ue()},re=async Pe=>{let{value:Ae}=Pe.target;Ae=K(Ae),o.modelModifiers.lazy&&a(ot,Ae),a(bt,Ae,Pe),await Re(),ne()},{isComposing:ce,handleCompositionStart:ve,handleCompositionUpdate:ke,handleCompositionEnd:Ne}=vu({emit:a,afterComposition:Z}),Ie=()=>{S.value=!S.value},$e=()=>$.value?.focus(),pe=()=>$.value?.blur(),Ee=Pe=>{y.value=!1,a("mouseleave",Pe)},me=Pe=>{y.value=!0,a("mouseenter",Pe)},Me=Pe=>{a("keydown",Pe)},We=()=>{$.value?.select()},Ze=Pe=>{a(ot,""),a(bt,""),a("clear",Pe),a(Sn,"")};return le(()=>o.modelValue,()=>{Re(()=>ge()),o.validateEvent&&f?.validate?.("change").catch(Pe=>pt(Pe))}),le(I,Pe=>{if(!$.value)return;const{trim:Ae,number:je}=o.modelModifiers,Rt=$.value.value,Ue=(je||o.type==="number")&&!/^0\d/.test(Rt)?`${Ey(Rt)}`:Rt;Ue!==Pe&&(document.activeElement===$.value&&$.value.type!=="range"&&Ae&&Ue.trim()===Pe||ne())}),le(()=>o.type,async()=>{await Re(),ne(),ge()}),ht(()=>{!o.formatter&&o.parser&&pt(Ty,"If you set the parser, you also need to set the formatter."),ne(),Re(ge)}),t({input:b,textarea:k,ref:$,textareaStyle:P,autosize:Vt(o,"autosize"),isComposing:ce,focus:$e,blur:pe,select:We,clear:Ze,resizeTextarea:ge}),(Pe,Ae)=>(x(),B("div",{class:T([u.value,{[i(h).bm("group","append")]:Pe.$slots.append,[i(h).bm("group","prepend")]:Pe.$slots.prepend}]),style:Ke(W.value),onMouseenter:me,onMouseleave:Ee},[te(" input "),e.type!=="textarea"?(x(),B(Fe,{key:0},[te(" prepend slot "),Pe.$slots.prepend?(x(),B("div",{key:0,class:T(i(h).be("group","prepend"))},[ee(Pe.$slots,"prepend")],2)):te("v-if",!0),z("div",{ref_key:"wrapperRef",ref:O,class:T(c.value)},[te(" prefix slot "),Pe.$slots.prefix||e.prefixIcon?(x(),B("span",{key:0,class:T(i(h).e("prefix"))},[z("span",{class:T(i(h).e("prefix-inner"))},[ee(Pe.$slots,"prefix"),e.prefixIcon?(x(),ae(i(De),{key:0,class:T(i(h).e("icon"))},{default:J(()=>[(x(),ae(it(e.prefixIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)):te("v-if",!0),z("input",dt({id:i(v),ref_key:"input",ref:b,class:i(h).e("inner")},i(r),{name:e.name,minlength:e.minlength,maxlength:e.maxlength,type:e.showPassword?S.value?"text":"password":e.type,disabled:i(p),readonly:e.readonly,autocomplete:e.autocomplete,tabindex:e.tabindex,"aria-label":e.ariaLabel,placeholder:e.placeholder,style:e.inputStyle,form:e.form,autofocus:e.autofocus,role:e.containerRole,inputmode:e.inputmode,onCompositionstart:Ae[0]||(Ae[0]=(...je)=>i(ve)&&i(ve)(...je)),onCompositionupdate:Ae[1]||(Ae[1]=(...je)=>i(ke)&&i(ke)(...je)),onCompositionend:Ae[2]||(Ae[2]=(...je)=>i(Ne)&&i(Ne)(...je)),onInput:Z,onChange:re,onKeydown:Me}),null,16,UD),te(" suffix slot "),X.value?(x(),B("span",{key:1,class:T(i(h).e("suffix"))},[z("span",{class:T(i(h).e("suffix-inner"))},[!L.value||!D.value||!F.value?(x(),B(Fe,{key:0},[ee(Pe.$slots,"suffix"),e.suffixIcon?(x(),ae(i(De),{key:0,class:T(i(h).e("icon"))},{default:J(()=>[(x(),ae(it(e.suffixIcon)))]),_:1},8,["class"])):te("v-if",!0)],64)):te("v-if",!0),L.value?(x(),ae(i(De),{key:1,class:T([i(h).e("icon"),i(h).e("clear")]),onMousedown:Xe(i(Dt),["prevent"]),onClick:Ze},{default:J(()=>[(x(),ae(it(e.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0),D.value?(x(),ae(i(De),{key:2,class:T([i(h).e("icon"),i(h).e("password")]),onClick:Ie,onMousedown:Xe(i(Dt),["prevent"]),onMouseup:Xe(i(Dt),["prevent"])},{default:J(()=>[(x(),ae(it(U.value)))]),_:1},8,["class","onMousedown","onMouseup"])):te("v-if",!0),F.value?(x(),B("span",{key:3,class:T([i(h).e("count"),i(h).is("outside",e.wordLimitPosition==="outside")])},[z("span",{class:T(i(h).e("count-inner"))},Se(q.value)+" / "+Se(e.maxlength),3)],2)):te("v-if",!0),V.value&&H.value&&_.value?(x(),ae(i(De),{key:4,class:T([i(h).e("icon"),i(h).e("validateIcon"),i(h).is("loading",V.value==="validating")])},{default:J(()=>[(x(),ae(it(H.value)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)):te("v-if",!0)],2),te(" append slot "),Pe.$slots.append?(x(),B("div",{key:1,class:T(i(h).be("group","append"))},[ee(Pe.$slots,"append")],2)):te("v-if",!0)],64)):(x(),B(Fe,{key:1},[te(" textarea "),z("textarea",dt({id:i(v),ref_key:"textarea",ref:k,class:[i(m).e("inner"),i(h).is("focus",i(N)),i(m).is("clearable",e.clearable)]},i(r),{name:e.name,minlength:e.minlength,maxlength:e.maxlength,tabindex:e.tabindex,disabled:i(p),readonly:e.readonly,autocomplete:e.autocomplete,style:P.value,"aria-label":e.ariaLabel,placeholder:e.placeholder,form:e.form,autofocus:e.autofocus,rows:e.rows,role:e.containerRole,onCompositionstart:Ae[3]||(Ae[3]=(...je)=>i(ve)&&i(ve)(...je)),onCompositionupdate:Ae[4]||(Ae[4]=(...je)=>i(ke)&&i(ke)(...je)),onCompositionend:Ae[5]||(Ae[5]=(...je)=>i(Ne)&&i(Ne)(...je)),onInput:Z,onFocus:Ae[6]||(Ae[6]=(...je)=>i(R)&&i(R)(...je)),onBlur:Ae[7]||(Ae[7]=(...je)=>i(A)&&i(A)(...je)),onChange:re,onKeydown:Me}),null,16,qD),L.value?(x(),ae(i(De),{key:0,class:T([i(m).e("icon"),i(m).e("clear")]),onMousedown:Xe(i(Dt),["prevent"]),onClick:Ze},{default:J(()=>[(x(),ae(it(e.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0),F.value?(x(),B("span",{key:1,style:Ke(C.value),class:T([i(h).e("count"),i(h).is("outside",e.wordLimitPosition==="outside")])},Se(q.value)+" / "+Se(e.maxlength),7)):te("v-if",!0)],64))],38))}}),GD=YD;const eo=rt(GD),XD=Ce({...yu,valueKey:{type:String,default:"value"},modelValue:{type:[String,Number],default:""},debounce:{type:Number,default:300},placement:{type:G(String),values:["top","top-start","top-end","bottom","bottom-start","bottom-end"],default:"bottom-start"},fetchSuggestions:{type:G([Function,Array]),default:Dt},popperClass:zt.popperClass,popperStyle:zt.popperStyle,triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:zt.teleported,appendTo:zt.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean,loopNavigation:{type:Boolean,default:!0}}),JD={[ot]:e=>Le(e)||He(e),[Sn]:e=>Le(e)||He(e),[bt]:e=>Le(e)||He(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>at(e)},ZD=Ce({distance:{type:Number,default:0},height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:Boolean,wrapStyle:{type:G([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20},tabindex:{type:[String,Number],default:void 0},id:String,role:String,...oo(["ariaLabel","ariaOrientation"])}),ak={"end-reached":e=>["left","right","top","bottom"].includes(e),scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(He)},Vr=4,sk={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},QD=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),eB=Ce({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),cm=Symbol("scrollbarContextKey"),tB=Ce({always:{type:Boolean,default:!0},minSize:{type:Number,required:!0}}),nB="Thumb";var oB=se({__name:"thumb",props:eB,setup(e){const t=e,n=_e(cm),o=fe("scrollbar");n||nn(nB,"can not inject scrollbar context");const a=M(),s=M(),r=M({}),l=M(!1);let u=!1,c=!1,d=0,f=0,v=Mt?document.onselectstart:null;const g=w(()=>sk[t.vertical?"vertical":"horizontal"]),p=w(()=>QD({size:t.size,move:t.move,bar:g.value})),h=w(()=>a.value[g.value.offset]**2/n.wrapElement[g.value.scrollSize]/t.ratio/s.value[g.value.offset]),m=O=>{if(O.stopPropagation(),O.ctrlKey||[1,2].includes(O.button))return;window.getSelection()?.removeAllRanges(),k(O);const N=O.currentTarget;N&&(r.value[g.value.axis]=N[g.value.offset]-(O[g.value.client]-N.getBoundingClientRect()[g.value.direction]))},b=O=>{if(!s.value||!a.value||!n.wrapElement)return;const N=(Math.abs(O.target.getBoundingClientRect()[g.value.direction]-O[g.value.client])-s.value[g.value.offset]/2)*100*h.value/a.value[g.value.offset];n.wrapElement[g.value.scroll]=N*n.wrapElement[g.value.scrollSize]/100},k=O=>{O.stopImmediatePropagation(),u=!0,d=n.wrapElement.scrollHeight,f=n.wrapElement.scrollWidth,document.addEventListener("mousemove",y),document.addEventListener("mouseup",S),v=document.onselectstart,document.onselectstart=()=>!1},y=O=>{if(!a.value||!s.value||u===!1)return;const N=r.value[g.value.axis];if(!N)return;const R=((a.value.getBoundingClientRect()[g.value.direction]-O[g.value.client])*-1-(s.value[g.value.offset]-N))*100*h.value/a.value[g.value.offset];g.value.scroll==="scrollLeft"?n.wrapElement[g.value.scroll]=R*f/100:n.wrapElement[g.value.scroll]=R*d/100},S=()=>{u=!1,r.value[g.value.axis]=0,document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",S),$(),c&&(l.value=!1)},C=()=>{c=!1,l.value=!!t.size},E=()=>{c=!0,l.value=u};Bt(()=>{$(),document.removeEventListener("mouseup",S)});const $=()=>{document.onselectstart!==v&&(document.onselectstart=v)};return Ft(Vt(n,"scrollbarElement"),"mousemove",C),Ft(Vt(n,"scrollbarElement"),"mouseleave",E),(O,N)=>(x(),ae(Vn,{name:i(o).b("fade"),persisted:""},{default:J(()=>[ut(z("div",{ref_key:"instance",ref:a,class:T([i(o).e("bar"),i(o).is(g.value.key)]),onMousedown:b,onClick:N[0]||(N[0]=Xe(()=>{},["stop"]))},[z("div",{ref_key:"thumb",ref:s,class:T(i(o).e("thumb")),style:Ke(p.value),onMousedown:m},null,38)],34),[[Pt,e.always||l.value]])]),_:1},8,["name"]))}}),$y=oB,aB=se({__name:"bar",props:tB,setup(e,{expose:t}){const n=e,o=_e(cm),a=M(0),s=M(0),r=M(""),l=M(""),u=M(1),c=M(1);return t({handleScroll:v=>{if(v){const g=v.offsetHeight-Vr,p=v.offsetWidth-Vr;s.value=v.scrollTop*100/g*u.value,a.value=v.scrollLeft*100/p*c.value}},update:()=>{const v=o?.wrapElement;if(!v)return;const g=v.offsetHeight-Vr,p=v.offsetWidth-Vr,h=g**2/v.scrollHeight,m=p**2/v.scrollWidth,b=Math.max(h,n.minSize),k=Math.max(m,n.minSize);u.value=h/(g-h)/(b/(g-b)),c.value=m/(p-m)/(k/(p-k)),l.value=b+Vr(x(),B(Fe,null,[Y($y,{move:a.value,ratio:c.value,size:r.value,always:e.always},null,8,["move","ratio","size","always"]),Y($y,{move:s.value,ratio:u.value,size:l.value,vertical:"",always:e.always},null,8,["move","ratio","size","always"])],64))}}),sB=aB;const rB=["tabindex"],Xf="ElScrollbar";var lB=se({name:Xf,__name:"scrollbar",props:ZD,emits:ak,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("scrollbar");let r,l,u,c=0,d=0,f="";const v={bottom:!1,top:!1,right:!1,left:!1},g=M(),p=M(),h=M(),m=M(),b=w(()=>{const _={},V=ln(o.height),H=ln(o.maxHeight);return V&&(_.height=V),H&&(_.maxHeight=H),[o.wrapStyle,_]}),k=w(()=>[o.wrapClass,s.e("wrap"),{[s.em("wrap","hidden-default")]:!o.native}]),y=w(()=>[s.e("view"),o.viewClass]),S=_=>v[_]??!1,C={top:"bottom",bottom:"top",left:"right",right:"left"},E=_=>{const V=C[f];if(!V)return;const H=_[f],U=_[V];H&&!v[f]&&(v[f]=!0),!U&&v[V]&&(v[V]=!1)},$=()=>{if(p.value){m.value?.handleScroll(p.value);const _=c,V=d;c=p.value.scrollTop,d=p.value.scrollLeft;const H={bottom:c+p.value.clientHeight>=p.value.scrollHeight-o.distance,top:c<=o.distance&&_!==0,right:d+p.value.clientWidth>=p.value.scrollWidth-o.distance&&V!==d,left:d<=o.distance&&V!==0};if(a("scroll",{scrollTop:c,scrollLeft:d}),_!==c&&(f=c>_?"bottom":"top"),V!==d&&(f=d>V?"right":"left"),o.distance>0){if(S(f))return;E(H)}H[f]&&a("end-reached",f)}};function O(_,V){at(_)?p.value.scrollTo(_):He(_)&&He(V)&&p.value.scrollTo(_,V)}const N=_=>{if(!He(_)){pt(Xf,"value must be a number");return}p.value.scrollTop=_},R=_=>{if(!He(_)){pt(Xf,"value must be a number");return}p.value.scrollLeft=_},A=()=>{m.value?.update(),v[f]=!1};return le(()=>o.noresize,_=>{_?(r?.(),l?.(),u?.()):({stop:r}=en(h,A),{stop:l}=en(p,A),u=Ft("resize",A))},{immediate:!0}),le(()=>[o.maxHeight,o.height],()=>{o.native||Re(()=>{A(),p.value&&m.value?.handleScroll(p.value)})}),St(cm,At({scrollbarElement:g,wrapElement:p})),Ji(()=>{p.value&&(p.value.scrollTop=c,p.value.scrollLeft=d)}),ht(()=>{o.native||Re(()=>{A()})}),la(()=>A()),t({wrapRef:p,update:A,scrollTo:O,setScrollTop:N,setScrollLeft:R,handleScroll:$}),(_,V)=>(x(),B("div",{ref_key:"scrollbarRef",ref:g,class:T(i(s).b())},[z("div",{ref_key:"wrapRef",ref:p,class:T(k.value),style:Ke(b.value),tabindex:e.tabindex,onScroll:$},[(x(),ae(it(e.tag),{id:e.id,ref_key:"resizeRef",ref:h,class:T(y.value),style:Ke(e.viewStyle),role:e.role,"aria-label":e.ariaLabel,"aria-orientation":e.ariaOrientation},{default:J(()=>[ee(_.$slots,"default")]),_:3},8,["id","class","style","role","aria-label","aria-orientation"]))],46,rB),e.native?te("v-if",!0):(x(),ae(sB,{key:0,ref_key:"barRef",ref:m,always:e.always,"min-size":e.minSize},null,8,["always","min-size"]))],2))}}),iB=lB;const aa=rt(iB),uB=["aria-expanded","aria-owns"],cB={key:0},dB=["id","aria-selected","onClick"],Oy="ElAutocomplete";var fB=se({name:Oy,inheritAttrs:!1,__name:"autocomplete",props:XD,emits:JD,setup(e,{expose:t,emit:n}){const o=e,a=n,s=w(()=>ss(o,Object.keys(yu))),r=fs(),l=un(),u=fe("autocomplete"),c=M(),d=M(),f=M(),v=M();let g=!1,p=!1;const h=M([]),m=M(-1),b=M(""),k=M(!1),y=M(!1),S=M(!1),C=zn(),E=w(()=>r.style),$=w(()=>(h.value.length>0||S.value)&&k.value),O=w(()=>!o.hideLoading&&S.value),N=w(()=>c.value?Array.from(c.value.$el.querySelectorAll("input")):[]),R=()=>{$.value&&(b.value=`${c.value.$el.offsetWidth}px`)},A=()=>{m.value=-1},_=async oe=>{if(y.value)return;const ne=K=>{S.value=!1,!y.value&&(ye(K)?(h.value=K,m.value=o.highlightFirstItem?0:-1):nn(Oy,"autocomplete suggestions must be an array"))};if(S.value=!0,ye(o.fetchSuggestions))ne(o.fetchSuggestions);else{const K=await o.fetchSuggestions(oe,ne);ye(K)&&ne(K)}},V=ru(_,w(()=>o.debounce)),H=oe=>{const ne=!!oe;if(a(Sn,oe),a(ot,oe),y.value=!1,k.value||=ne,!o.triggerOnFocus&&!oe){y.value=!0,h.value=[];return}V(oe)},U=oe=>{l.value||(oe.target?.tagName!=="INPUT"||N.value.includes(document.activeElement))&&(k.value=!0)},W=oe=>{a(bt,oe)},P=oe=>{if(p)p=!1;else{k.value=!0,a("focus",oe);const ne=o.modelValue??"";o.triggerOnFocus&&!g&&V(String(ne))}},I=oe=>{setTimeout(()=>{if(f.value?.isFocusInsideContent()){p=!0;return}k.value&&q(),a("blur",oe)})},L=()=>{k.value=!1,a(ot,""),a("clear")},D=async()=>{c.value?.isComposing||($.value&&m.value>=0&&m.value{$.value&&(oe.preventDefault(),oe.stopPropagation(),q())},q=()=>{k.value=!1},j=()=>{c.value?.focus()},X=()=>{c.value?.blur()},Q=async oe=>{a(Sn,oe[o.valueKey]),a(ot,oe[o.valueKey]),a("select",oe),h.value=[],m.value=-1},he=oe=>{if(!$.value||S.value)return;if(oe<0){if(!o.loopNavigation){m.value=-1;return}oe=h.value.length-1}oe>=h.value.length&&(oe=o.loopNavigation?0:h.value.length-1);const[ne,K]=ue(),Z=K[oe],re=ne.scrollTop,{offsetTop:ce,scrollHeight:ve}=Z;ce+ve>re+ne.clientHeight&&(ne.scrollTop=ce+ve-ne.clientHeight),ce{const oe=d.value.querySelector(`.${u.be("suggestion","wrap")}`);return[oe,oe.querySelectorAll(`.${u.be("suggestion","list")} li`)]},ge=Av(v,oe=>{if(f.value?.isFocusInsideContent())return;const ne=p;p=!1,$.value&&(ne?I(new FocusEvent("blur",oe)):q())}),ie=oe=>{switch(jt(oe)){case we.up:oe.preventDefault(),he(m.value-1);break;case we.down:oe.preventDefault(),he(m.value+1);break;case we.enter:case we.numpadEnter:oe.preventDefault(),D();break;case we.tab:q();break;case we.esc:F(oe);break;case we.home:oe.preventDefault(),he(0);break;case we.end:oe.preventDefault(),he(h.value.length-1);break;case we.pageUp:oe.preventDefault(),he(Math.max(0,m.value-10));break;case we.pageDown:oe.preventDefault(),he(Math.min(h.value.length-1,m.value+10));break}};return Bt(()=>{ge?.()}),ht(()=>{const oe=c.value?.ref;oe&&([{key:"role",value:"textbox"},{key:"aria-autocomplete",value:"list"},{key:"aria-controls",value:C.value},{key:"aria-activedescendant",value:`${C.value}-item-${m.value}`}].forEach(({key:ne,value:K})=>oe.setAttribute(ne,K)),g=oe.hasAttribute("readonly"))}),t({highlightedIndex:m,activated:k,loading:S,inputRef:c,popperRef:f,suggestions:h,handleSelect:Q,handleKeyEnter:D,focus:j,blur:X,close:q,highlight:he,getData:_}),(oe,ne)=>(x(),ae(i(Ln),{ref_key:"popperRef",ref:f,visible:$.value,placement:e.placement,"fallback-placements":["bottom-start","top-start"],"popper-class":[i(u).e("popper"),e.popperClass],"popper-style":e.popperStyle,teleported:e.teleported,"append-to":e.appendTo,"gpu-acceleration":!1,pure:"","manual-mode":"",effect:"light",trigger:"click",transition:`${i(u).namespace.value}-zoom-in-top`,persistent:"",role:"listbox",onBeforeShow:R,onHide:A},{content:J(()=>[z("div",{ref_key:"regionRef",ref:d,class:T([i(u).b("suggestion"),i(u).is("loading",O.value)]),style:Ke({[e.fitInputWidth?"width":"minWidth"]:b.value,outline:"none"}),role:"region"},[oe.$slots.header?(x(),B("div",{key:0,class:T(i(u).be("suggestion","header")),onClick:ne[0]||(ne[0]=Xe(()=>{},["stop"]))},[ee(oe.$slots,"header")],2)):te("v-if",!0),Y(i(aa),{id:i(C),tag:"ul","wrap-class":i(u).be("suggestion","wrap"),"view-class":i(u).be("suggestion","list"),role:"listbox"},{default:J(()=>[O.value?(x(),B("li",cB,[ee(oe.$slots,"loading",{},()=>[Y(i(De),{class:T(i(u).is("loading"))},{default:J(()=>[Y(i(Aa))]),_:1},8,["class"])])])):(x(!0),B(Fe,{key:1},yt(h.value,(K,Z)=>(x(),B("li",{id:`${i(C)}-item-${Z}`,key:Z,class:T({highlighted:m.value===Z}),role:"option","aria-selected":m.value===Z,onClick:re=>Q(K)},[ee(oe.$slots,"default",{item:K},()=>[wt(Se(K[e.valueKey]),1)])],10,dB))),128))]),_:3},8,["id","wrap-class","view-class"]),oe.$slots.footer?(x(),B("div",{key:1,class:T(i(u).be("suggestion","footer")),onClick:ne[1]||(ne[1]=Xe(()=>{},["stop"]))},[ee(oe.$slots,"footer")],2)):te("v-if",!0)],6)]),default:J(()=>[z("div",{ref_key:"listboxRef",ref:v,class:T([i(u).b(),oe.$attrs.class]),style:Ke(E.value),role:"combobox","aria-haspopup":"listbox","aria-expanded":$.value,"aria-owns":i(C)},[Y(i(eo),dt({ref_key:"inputRef",ref:c},dt(s.value,oe.$attrs),{"model-value":e.modelValue,disabled:i(l),onInput:H,onChange:W,onFocus:P,onBlur:I,onClear:L,onKeydown:ie,onMousedown:U}),uo({_:2},[oe.$slots.prepend?{name:"prepend",fn:J(()=>[ee(oe.$slots,"prepend")]),key:"0"}:void 0,oe.$slots.append?{name:"append",fn:J(()=>[ee(oe.$slots,"append")]),key:"1"}:void 0,oe.$slots.prefix?{name:"prefix",fn:J(()=>[ee(oe.$slots,"prefix")]),key:"2"}:void 0,oe.$slots.suffix?{name:"suffix",fn:J(()=>[ee(oe.$slots,"suffix")]),key:"3"}:void 0]),1040,["model-value","disabled"])],14,uB)]),_:3},8,["visible","placement","popper-class","popper-style","teleported","append-to","transition"]))}}),pB=fB;const hB=rt(pB),vB=Ce({size:{type:[Number,String],values:ia,validator:e=>He(e)},shape:{type:String,values:["circle","square"]},icon:{type:Kt},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:G(String),default:"cover"}}),mB={error:e=>e instanceof Event},rk=Symbol("avatarGroupContextKey"),gB={size:{type:G([Number,String]),values:ia,validator:e=>He(e)},shape:{type:G(String),values:["circle","square"]},collapseAvatars:Boolean,collapseAvatarsTooltip:Boolean,maxCollapseAvatars:{type:Number,default:1},effect:{type:G(String),default:"light"},placement:{type:G(String),values:Da,default:"top"},popperClass:zt.popperClass,popperStyle:zt.popperStyle,collapseClass:String,collapseStyle:{type:G([String,Array,Object])}},bB=["src","alt","srcset"];var yB=se({name:"ElAvatar",__name:"avatar",props:vB,emits:mB,setup(e,{emit:t}){const n=e,o=t,a=_e(rk,void 0),s=fe("avatar"),r=M(!1),l=w(()=>n.size??a?.size),u=w(()=>n.shape??a?.shape??"circle"),c=w(()=>{const{icon:g}=n,p=[s.b()];return Le(l.value)&&p.push(s.m(l.value)),g&&p.push(s.m("icon")),u.value&&p.push(s.m(u.value)),p}),d=w(()=>He(l.value)?s.cssVarBlock({size:ln(l.value)}):void 0),f=w(()=>({objectFit:n.fit}));le(()=>[n.src,n.srcSet],()=>r.value=!1);function v(g){r.value=!0,o("error",g)}return(g,p)=>(x(),B("span",{class:T(c.value),style:Ke(d.value)},[(e.src||e.srcSet)&&!r.value?(x(),B("img",{key:0,src:e.src,alt:e.alt,srcset:e.srcSet,style:Ke(f.value),onError:v},null,44,bB)):e.icon?(x(),ae(i(De),{key:1},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1})):ee(g.$slots,"default",{key:2})],6))}}),lk=yB,ik=se({name:"ElAvatarGroup",props:gB,setup(e,{slots:t}){const n=fe("avatar-group");return St(rk,At({size:Vt(e,"size"),shape:Vt(e,"shape")})),()=>{const o=$o(t.default?.()??[]);let a=o;if(e.collapseAvatars&&o.length>e.maxCollapseAvatars){a=o.slice(0,e.maxCollapseAvatars);const s=o.slice(e.maxCollapseAvatars);a.push(Y(Ln,{popperClass:e.popperClass,popperStyle:e.popperStyle,placement:e.placement,effect:e.effect,disabled:!e.collapseAvatarsTooltip},{default:()=>Y(lk,{size:e.size,shape:e.shape,class:e.collapseClass,style:e.collapseStyle},{default:()=>[wt("+ "),s.length]}),content:()=>Y("div",{class:n.e("collapse-avatars")},[s.map((r,l)=>Ut(r)?Ia(r,{key:r.key??l}):r)])}))}return Y("div",{class:n.b()},[a])}}});const wB=rt(lk,{AvatarGroup:ik}),SB=on(ik),CB={visibilityHeight:{type:Number,default:200},target:{type:String,default:""},right:{type:Number,default:40},bottom:{type:Number,default:40}},kB={click:e=>e instanceof MouseEvent},EB=(e,t,n)=>{const o=Xt(),a=Xt(),s=M(!1),r=()=>{o.value&&(s.value=o.value.scrollTop>=e.visibilityHeight)},l=u=>{o.value?.scrollTo({top:0,behavior:"smooth"}),t("click",u)};return Ft(a,"scroll",US(r,300,!0)),ht(()=>{a.value=document,o.value=document.documentElement,e.target&&(o.value=document.querySelector(e.target)??void 0,o.value||nn(n,`target does not exist: ${e.target}`),a.value=o.value),r()}),{visible:s,handleClick:l}},Ry="ElBacktop";var xB=se({name:Ry,__name:"backtop",props:CB,emits:kB,setup(e,{emit:t}){const n=e,o=t,a=fe("backtop"),{handleClick:s,visible:r}=EB(n,o,Ry),l=w(()=>({right:`${n.right}px`,bottom:`${n.bottom}px`}));return(u,c)=>(x(),ae(Vn,{name:`${i(a).namespace.value}-fade-in`},{default:J(()=>[i(r)?(x(),B("div",{key:0,style:Ke(l.value),class:T(i(a).b()),onClick:c[0]||(c[0]=Xe((...d)=>i(s)&&i(s)(...d),["stop"]))},[ee(u.$slots,"default",{},()=>[Y(i(De),{class:T(i(a).e("icon"))},{default:J(()=>[Y(i(Z4))]),_:1},8,["class"])])],6)):te("v-if",!0)]),_:3},8,["name"]))}}),TB=xB;const $B=rt(TB),OB=Ce({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0},color:String,badgeStyle:{type:G([String,Object,Array])},offset:{type:G(Array),default:()=>[0,0]},badgeClass:{type:String}});var RB=se({name:"ElBadge",__name:"badge",props:OB,setup(e,{expose:t}){const n=e,o=fe("badge"),a=w(()=>n.isDot?"":He(n.value)&&He(n.max)?n.max[{backgroundColor:n.color,marginRight:ln(-n.offset[0]),marginTop:ln(n.offset[1])},n.badgeStyle??{}]);return t({content:a}),(r,l)=>(x(),B("div",{class:T(i(o).b())},[ee(r.$slots,"default"),Y(Vn,{name:`${i(o).namespace.value}-zoom-in-center`},{default:J(()=>[!e.hidden&&(a.value||e.isDot||r.$slots.content)?(x(),B("sup",{key:0,class:T([i(o).e("content"),i(o).em("content",e.type),i(o).is("fixed",!!r.$slots.default),i(o).is("dot",e.isDot),i(o).is("hide-zero",!e.showZero&&e.value===0),e.badgeClass]),style:Ke(s.value)},[ee(r.$slots,"content",{value:a.value},()=>[wt(Se(a.value),1)])],6)):te("v-if",!0)]),_:3},8,["name"])],2))}}),NB=RB;const uk=rt(NB),IB=Ce({separator:{type:String,default:"/"},separatorIcon:{type:Kt}}),ck=Symbol("breadcrumbKey"),PB=Ce({to:{type:G([String,Object]),default:""},replace:Boolean}),MB=["aria-label"];var _B=se({name:"ElBreadcrumb",__name:"breadcrumb",props:IB,setup(e){const{t}=Ct(),n=e,o=fe("breadcrumb"),a=M();return St(ck,n),ht(()=>{const s=a.value.querySelectorAll(`.${o.e("item")}`);s.length&&s[s.length-1].setAttribute("aria-current","page")}),(s,r)=>(x(),B("div",{ref_key:"breadcrumb",ref:a,class:T(i(o).b()),"aria-label":i(t)("el.breadcrumb.label"),role:"navigation"},[ee(s.$slots,"default")],10,MB))}}),AB=_B,LB=se({name:"ElBreadcrumbItem",__name:"breadcrumb-item",props:PB,setup(e){const t=e,n=ft(),o=_e(ck,void 0),a=fe("breadcrumb"),s=n.appContext.config.globalProperties.$router,r=()=>{!t.to||!s||(t.replace?s.replace(t.to):s.push(t.to))};return(l,u)=>(x(),B("span",{class:T(i(a).e("item"))},[z("span",{class:T([i(a).e("inner"),i(a).is("link",!!e.to)]),role:"link",onClick:r},[ee(l.$slots,"default")],2),i(o)?.separatorIcon?(x(),ae(i(De),{key:0,class:T(i(a).e("separator"))},{default:J(()=>[(x(),ae(it(i(o).separatorIcon)))]),_:1},8,["class"])):(x(),B("span",{key:1,class:T(i(a).e("separator")),role:"presentation"},Se(i(o)?.separator),3))],2))}}),dk=LB;const DB=rt(AB,{BreadcrumbItem:dk}),BB=on(dk),eh=["default","primary","success","warning","info","danger","text",""],FB=["button","submit","reset"],th=Ce({size:Tn,disabled:{type:Boolean,default:void 0},type:{type:String,values:eh,default:""},icon:{type:Kt},nativeType:{type:String,values:FB,default:"button"},loading:Boolean,loadingIcon:{type:Kt,default:()=>Aa},plain:{type:Boolean,default:void 0},text:{type:Boolean,default:void 0},link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,dashed:{type:Boolean,default:void 0},color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:G([String,Object]),default:"button"}}),VB={click:e=>e instanceof MouseEvent},fk=Symbol(),od=M();function gs(e,t=void 0){const n=ft()?_e(fk,od):od;return e?w(()=>n.value?.[e]??t):n}function rf(e,t){const n=gs(),o=fe(e,w(()=>n.value?.namespace||di)),a=Ct(w(()=>n.value?.locale)),s=du(w(()=>n.value?.zIndex||wC)),r=w(()=>i(t)||n.value?.size||"");return dm(w(()=>i(n)||{})),{ns:o,locale:a,zIndex:s,size:r}}const dm=(e,t,n=!1)=>{const o=!!ft(),a=o?gs():void 0,s=t?.provide??(o?St:void 0);if(!s){pt("provideGlobalConfig","provideGlobalConfig() can only be used inside setup().");return}const r=w(()=>{const l=i(e);return a?.value?zB(a.value,l):l});return s(fk,r),s(tC,w(()=>r.value.locale)),s(nC,w(()=>r.value.namespace)),s(SC,w(()=>r.value.zIndex)),s(_C,{size:w(()=>r.value.size||"")}),s(LC,w(()=>({emptyValues:r.value.emptyValues,valueOnClear:r.value.valueOnClear}))),(n||!od.value)&&(od.value=r.value),r},zB=(e,t)=>{const n=[...new Set([...Oi(e),...Oi(t)])],o={};for(const a of n)o[a]=t[a]!==void 0?t[a]:e[a];return o},HB=Ce({a11y:{type:Boolean,default:!0},locale:{type:G(Object)},size:Tn,button:{type:G(Object)},card:{type:G(Object)},dialog:{type:G(Object)},link:{type:G(Object)},experimentalFeatures:{type:G(Object)},keyboardNavigation:{type:Boolean,default:!0},message:{type:G(Object)},zIndex:Number,namespace:{type:String,default:"el"},table:{type:G(Object)},...Pr}),Gn={placement:"top"},KB=se({name:"ElConfigProvider",props:HB,setup(e,{slots:t}){const n=dm(e);return le(()=>e.message,o=>{Object.assign(Gn,n?.value?.message??{},o??{})},{immediate:!0,deep:!0}),()=>ee(t,"default",{config:n?.value})}}),WB=rt(KB),pk=Symbol("buttonGroupContextKey"),jB=(e,t)=>{Ta({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},w(()=>e.type==="text"));const n=_e(pk,void 0),o=gs("button"),{form:a}=Dn(),s=Cn(w(()=>n?.size)),r=un(),l=M(),u=vn(),c=w(()=>e.type||n?.type||o.value?.type||""),d=w(()=>e.autoInsertSpace??o.value?.autoInsertSpace??!1),f=w(()=>e.plain??o.value?.plain??!1),v=w(()=>e.round??o.value?.round??!1),g=w(()=>e.text??o.value?.text??!1),p=w(()=>e.dashed??o.value?.dashed??!1),h=w(()=>e.tag==="button"?{ariaDisabled:r.value||e.loading,disabled:r.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),m=w(()=>{const k=u.default?.();if(d.value&&k?.length===1){const y=k[0];if(y?.type===Ol){const S=y.children;return new RegExp("^\\p{Unified_Ideograph}{2}$","u").test(S.trim())}}return!1});return{_disabled:r,_size:s,_type:c,_ref:l,_props:h,_plain:f,_round:v,_text:g,_dashed:p,shouldAddSpace:m,handleClick:k=>{if(r.value||e.loading){k.stopPropagation();return}e.nativeType==="reset"&&a?.resetFields(),t("click",k)}}};function jn(e,t){UB(e)&&(e="100%");const n=qB(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(t===360?e=(e<0?e%t+t:e%t)/parseFloat(String(t)):e=e%t/parseFloat(String(t)),e)}function Yu(e){return Math.min(1,Math.max(0,e))}function UB(e){return typeof e=="string"&&e.indexOf(".")!==-1&&parseFloat(e)===1}function qB(e){return typeof e=="string"&&e.indexOf("%")!==-1}function hk(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function Gu(e){return Number(e)<=1?`${Number(e)*100}%`:e}function sr(e){return e.length===1?"0"+e:String(e)}function YB(e,t,n){return{r:jn(e,255)*255,g:jn(t,255)*255,b:jn(n,255)*255}}function Ny(e,t,n){e=jn(e,255),t=jn(t,255),n=jn(n,255);const o=Math.max(e,t,n),a=Math.min(e,t,n);let s=0,r=0;const l=(o+a)/2;if(o===a)r=0,s=0;else{const u=o-a;switch(r=l>.5?u/(2-o-a):u/(o+a),o){case e:s=(t-n)/u+(t1&&(n-=1),n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function GB(e,t,n){let o,a,s;if(e=jn(e,360),t=jn(t,100),n=jn(n,100),t===0)a=n,s=n,o=n;else{const r=n<.5?n*(1+t):n+t-n*t,l=2*n-r;o=Jf(l,r,e+1/3),a=Jf(l,r,e),s=Jf(l,r,e-1/3)}return{r:o*255,g:a*255,b:s*255}}function Iy(e,t,n){e=jn(e,255),t=jn(t,255),n=jn(n,255);const o=Math.max(e,t,n),a=Math.min(e,t,n);let s=0;const r=o,l=o-a,u=o===0?0:l/o;if(o===a)s=0;else{switch(o){case e:s=(t-n)/l+(t>16,g:(e&65280)>>8,b:e&255}}const nh={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function t8(e){let t={r:0,g:0,b:0},n=1,o=null,a=null,s=null,r=!1,l=!1;return typeof e=="string"&&(e=a8(e)),typeof e=="object"&&(ko(e.r)&&ko(e.g)&&ko(e.b)?(t=YB(e.r,e.g,e.b),r=!0,l=String(e.r).substr(-1)==="%"?"prgb":"rgb"):ko(e.h)&&ko(e.s)&&ko(e.v)?(o=Gu(e.s),a=Gu(e.v),t=XB(e.h,o,a),r=!0,l="hsv"):ko(e.h)&&ko(e.s)&&ko(e.l)?(o=Gu(e.s),s=Gu(e.l),t=GB(e.h,o,s),r=!0,l="hsl"):ko(e.c)&&ko(e.m)&&ko(e.y)&&ko(e.k)&&(t=ZB(e.c,e.m,e.y,e.k),r=!0,l="cmyk"),Object.prototype.hasOwnProperty.call(e,"a")&&(n=e.a)),n=hk(n),{ok:r,format:e.format||l,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}const n8="[-\\+]?\\d+%?",o8="[-\\+]?\\d*\\.\\d+%?",Is="(?:"+o8+")|(?:"+n8+")",Zf="[\\s|\\(]+("+Is+")[,|\\s]+("+Is+")[,|\\s]+("+Is+")\\s*\\)?",Xu="[\\s|\\(]+("+Is+")[,|\\s]+("+Is+")[,|\\s]+("+Is+")[,|\\s]+("+Is+")\\s*\\)?",Lo={CSS_UNIT:new RegExp(Is),rgb:new RegExp("rgb"+Zf),rgba:new RegExp("rgba"+Xu),hsl:new RegExp("hsl"+Zf),hsla:new RegExp("hsla"+Xu),hsv:new RegExp("hsv"+Zf),hsva:new RegExp("hsva"+Xu),cmyk:new RegExp("cmyk"+Xu),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function a8(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;let t=!1;if(nh[e])e=nh[e],t=!0;else if(e==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};let n=Lo.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=Lo.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=Lo.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=Lo.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=Lo.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=Lo.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=Lo.cmyk.exec(e),n?{c:n[1],m:n[2],y:n[3],k:n[4]}:(n=Lo.hex8.exec(e),n?{r:Eo(n[1]),g:Eo(n[2]),b:Eo(n[3]),a:_y(n[4]),format:t?"name":"hex8"}:(n=Lo.hex6.exec(e),n?{r:Eo(n[1]),g:Eo(n[2]),b:Eo(n[3]),format:t?"name":"hex"}:(n=Lo.hex4.exec(e),n?{r:Eo(n[1]+n[1]),g:Eo(n[2]+n[2]),b:Eo(n[3]+n[3]),a:_y(n[4]+n[4]),format:t?"name":"hex8"}:(n=Lo.hex3.exec(e),n?{r:Eo(n[1]+n[1]),g:Eo(n[2]+n[2]),b:Eo(n[3]+n[3]),format:t?"name":"hex"}:!1))))))))))}function ko(e){return typeof e=="number"?!Number.isNaN(e):Lo.CSS_UNIT.test(e)}class pn{constructor(t="",n={}){if(t instanceof pn)return t;typeof t=="number"&&(t=e8(t)),this.originalInput=t;const o=t8(t);this.originalInput=t,this.r=o.r,this.g=o.g,this.b=o.b,this.a=o.a,this.roundA=Math.round(100*this.a)/100,this.format=n.format??o.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=o.ok}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}getBrightness(){const t=this.toRgb();return(t.r*299+t.g*587+t.b*114)/1e3}getLuminance(){const t=this.toRgb();let n,o,a;const s=t.r/255,r=t.g/255,l=t.b/255;return s<=.03928?n=s/12.92:n=Math.pow((s+.055)/1.055,2.4),r<=.03928?o=r/12.92:o=Math.pow((r+.055)/1.055,2.4),l<=.03928?a=l/12.92:a=Math.pow((l+.055)/1.055,2.4),.2126*n+.7152*o+.0722*a}getAlpha(){return this.a}setAlpha(t){return this.a=hk(t),this.roundA=Math.round(100*this.a)/100,this}isMonochrome(){const{s:t}=this.toHsl();return t===0}toHsv(){const t=Iy(this.r,this.g,this.b);return{h:t.h*360,s:t.s,v:t.v,a:this.a}}toHsvString(){const t=Iy(this.r,this.g,this.b),n=Math.round(t.h*360),o=Math.round(t.s*100),a=Math.round(t.v*100);return this.a===1?`hsv(${n}, ${o}%, ${a}%)`:`hsva(${n}, ${o}%, ${a}%, ${this.roundA})`}toHsl(){const t=Ny(this.r,this.g,this.b);return{h:t.h*360,s:t.s,l:t.l,a:this.a}}toHslString(){const t=Ny(this.r,this.g,this.b),n=Math.round(t.h*360),o=Math.round(t.s*100),a=Math.round(t.l*100);return this.a===1?`hsl(${n}, ${o}%, ${a}%)`:`hsla(${n}, ${o}%, ${a}%, ${this.roundA})`}toHex(t=!1){return Py(this.r,this.g,this.b,t)}toHexString(t=!1){return"#"+this.toHex(t)}toHex8(t=!1){return JB(this.r,this.g,this.b,this.a,t)}toHex8String(t=!1){return"#"+this.toHex8(t)}toHexShortString(t=!1){return this.a===1?this.toHexString(t):this.toHex8String(t)}toRgb(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}}toRgbString(){const t=Math.round(this.r),n=Math.round(this.g),o=Math.round(this.b);return this.a===1?`rgb(${t}, ${n}, ${o})`:`rgba(${t}, ${n}, ${o}, ${this.roundA})`}toPercentageRgb(){const t=n=>`${Math.round(jn(n,255)*100)}%`;return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}}toPercentageRgbString(){const t=n=>Math.round(jn(n,255)*100);return this.a===1?`rgb(${t(this.r)}%, ${t(this.g)}%, ${t(this.b)}%)`:`rgba(${t(this.r)}%, ${t(this.g)}%, ${t(this.b)}%, ${this.roundA})`}toCmyk(){return{...My(this.r,this.g,this.b)}}toCmykString(){const{c:t,m:n,y:o,k:a}=My(this.r,this.g,this.b);return`cmyk(${t}, ${n}, ${o}, ${a})`}toName(){if(this.a===0)return"transparent";if(this.a<1)return!1;const t="#"+Py(this.r,this.g,this.b,!1);for(const[n,o]of Object.entries(nh))if(t===o)return n;return!1}toString(t){const n=!!t;t=t??this.format;let o=!1;const a=this.a<1&&this.a>=0;return!n&&a&&(t.startsWith("hex")||t==="name")?t==="name"&&this.a===0?this.toName():this.toRgbString():(t==="rgb"&&(o=this.toRgbString()),t==="prgb"&&(o=this.toPercentageRgbString()),(t==="hex"||t==="hex6")&&(o=this.toHexString()),t==="hex3"&&(o=this.toHexString(!0)),t==="hex4"&&(o=this.toHex8String(!0)),t==="hex8"&&(o=this.toHex8String()),t==="name"&&(o=this.toName()),t==="hsl"&&(o=this.toHslString()),t==="hsv"&&(o=this.toHsvString()),t==="cmyk"&&(o=this.toCmykString()),o||this.toHexString())}toNumber(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)}clone(){return new pn(this.toString())}lighten(t=10){const n=this.toHsl();return n.l+=t/100,n.l=Yu(n.l),new pn(n)}brighten(t=10){const n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new pn(n)}darken(t=10){const n=this.toHsl();return n.l-=t/100,n.l=Yu(n.l),new pn(n)}tint(t=10){return this.mix("white",t)}shade(t=10){return this.mix("black",t)}desaturate(t=10){const n=this.toHsl();return n.s-=t/100,n.s=Yu(n.s),new pn(n)}saturate(t=10){const n=this.toHsl();return n.s+=t/100,n.s=Yu(n.s),new pn(n)}greyscale(){return this.desaturate(100)}spin(t){const n=this.toHsl(),o=(n.h+t)%360;return n.h=o<0?360+o:o,new pn(n)}mix(t,n=50){const o=this.toRgb(),a=new pn(t).toRgb(),s=n/100,r={r:(a.r-o.r)*s+o.r,g:(a.g-o.g)*s+o.g,b:(a.b-o.b)*s+o.b,a:(a.a-o.a)*s+o.a};return new pn(r)}analogous(t=6,n=30){const o=this.toHsl(),a=360/n,s=[this];for(o.h=(o.h-(a*t>>1)+720)%360;--t;)o.h=(o.h+a)%360,s.push(new pn(o));return s}complement(){const t=this.toHsl();return t.h=(t.h+180)%360,new pn(t)}monochromatic(t=6){const n=this.toHsv(),{h:o}=n,{s:a}=n;let{v:s}=n;const r=[],l=1/t;for(;t--;)r.push(new pn({h:o,s:a,v:s})),s=(s+l)%1;return r}splitcomplement(){const t=this.toHsl(),{h:n}=t;return[this,new pn({h:(n+72)%360,s:t.s,l:t.l}),new pn({h:(n+216)%360,s:t.s,l:t.l})]}onBackground(t){const n=this.toRgb(),o=new pn(t).toRgb(),a=n.a+o.a*(1-n.a);return new pn({r:(n.r*n.a+o.r*o.a*(1-n.a))/a,g:(n.g*n.a+o.g*o.a*(1-n.a))/a,b:(n.b*n.a+o.b*o.a*(1-n.a))/a,a})}triad(){return this.polyad(3)}tetrad(){return this.polyad(4)}polyad(t){const n=this.toHsl(),{h:o}=n,a=[this],s=360/t;for(let r=1;r{let o={},a=e.color;if(a){const s=a.match(/var\((.*?)\)/);s&&(a=window.getComputedStyle(window.document.documentElement).getPropertyValue(s[1]));const r=new pn(a),l=e.dark?r.tint(20).toString():ws(r,20);if(e.plain)o=n.cssVarBlock({"bg-color":e.dark?ws(r,90):r.tint(90).toString(),"text-color":a,"border-color":e.dark?ws(r,50):r.tint(50).toString(),"hover-text-color":`var(${n.cssVarName("color-white")})`,"hover-bg-color":a,"hover-border-color":a,"active-bg-color":l,"active-text-color":`var(${n.cssVarName("color-white")})`,"active-border-color":l}),t.value&&(o[n.cssVarBlockName("disabled-bg-color")]=e.dark?ws(r,90):r.tint(90).toString(),o[n.cssVarBlockName("disabled-text-color")]=e.dark?ws(r,50):r.tint(50).toString(),o[n.cssVarBlockName("disabled-border-color")]=e.dark?ws(r,80):r.tint(80).toString());else{const u=e.dark?ws(r,30):r.tint(30).toString(),c=r.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(o=n.cssVarBlock({"bg-color":a,"text-color":c,"border-color":a,"hover-bg-color":u,"hover-text-color":c,"hover-border-color":u,"active-bg-color":l,"active-border-color":l}),t.value){const d=e.dark?ws(r,50):r.tint(50).toString();o[n.cssVarBlockName("disabled-bg-color")]=d,o[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,o[n.cssVarBlockName("disabled-border-color")]=d}}}return o})}var r8=se({name:"ElButton",__name:"button",props:th,emits:VB,setup(e,{expose:t,emit:n}){const o=e,a=n,s=s8(o),r=fe("button"),{_ref:l,_size:u,_type:c,_disabled:d,_props:f,_plain:v,_round:g,_text:p,_dashed:h,shouldAddSpace:m,handleClick:b}=jB(o,a),k=w(()=>[r.b(),r.m(c.value),r.m(u.value),r.is("disabled",d.value),r.is("loading",o.loading),r.is("plain",v.value),r.is("round",g.value),r.is("circle",o.circle),r.is("text",p.value),r.is("dashed",h.value),r.is("link",o.link),r.is("has-bg",o.bg)]);return t({ref:l,size:u,type:c,disabled:d,shouldAddSpace:m}),(y,S)=>(x(),ae(it(e.tag),dt({ref_key:"_ref",ref:l},i(f),{class:k.value,style:i(s),onClick:i(b)}),{default:J(()=>[e.loading?(x(),B(Fe,{key:0},[y.$slots.loading?ee(y.$slots,"loading",{key:0}):(x(),ae(i(De),{key:1,class:T(i(r).is("loading"))},{default:J(()=>[(x(),ae(it(e.loadingIcon)))]),_:1},8,["class"]))],64)):e.icon||y.$slots.icon?(x(),ae(i(De),{key:1},{default:J(()=>[e.icon?(x(),ae(it(e.icon),{key:0})):ee(y.$slots,"icon",{key:1})]),_:3})):te("v-if",!0),y.$slots.default?(x(),B("span",{key:2,class:T({[i(r).em("text","expand")]:i(m)})},[ee(y.$slots,"default")],2)):te("v-if",!0)]),_:3},16,["class","style","onClick"]))}}),l8=r8;const i8={size:th.size,type:th.type,direction:{type:G(String),values:["horizontal","vertical"],default:"horizontal"}};var u8=se({name:"ElButtonGroup",__name:"button-group",props:i8,setup(e){const t=e;St(pk,At({size:Vt(t,"size"),type:Vt(t,"type")}));const n=fe("button");return(o,a)=>(x(),B("div",{class:T([i(n).b("group"),i(n).bm("group",t.direction)])},[ee(o.$slots,"default")],2))}}),vk=u8;const In=rt(l8,{ButtonGroup:vk}),mk=on(vk),c8=e=>ye(e)&&e.length===2&&e.every(t=>As(t)),d8=Ce({modelValue:{type:Date},range:{type:G(Array),validator:c8},controllerType:{type:String,values:["button","select"],default:"button"},formatter:{type:G(Function)}}),f8={[ot]:e=>As(e),[Sn]:e=>As(e)},Ay=["hours","minutes","seconds"],sa="EP_PICKER_BASE",fm="ElPopperOptions",gk=Symbol("commonPickerContextKey"),wl="HH:mm:ss",Os="YYYY-MM-DD",p8={date:Os,dates:Os,week:"gggg[w]ww",year:"YYYY",years:"YYYY",month:"YYYY-MM",months:"YYYY-MM",datetime:`${Os} ${wl}`,monthrange:"YYYY-MM",yearrange:"YYYY",daterange:Os,datetimerange:`${Os} ${wl}`};function bs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var vc={exports:{}},h8=vc.exports,Ly;function v8(){return Ly||(Ly=1,(function(e,t){(function(n,o){e.exports=o()})(h8,(function(){var n=1e3,o=6e4,a=36e5,s="millisecond",r="second",l="minute",u="hour",c="day",d="week",f="month",v="quarter",g="year",p="date",h="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,k={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(H){var U=["th","st","nd","rd"],W=H%100;return"["+H+(U[(W-20)%10]||U[W]||U[0])+"]"}},y=function(H,U,W){var P=String(H);return!P||P.length>=U?H:""+Array(U+1-P.length).join(W)+H},S={s:y,z:function(H){var U=-H.utcOffset(),W=Math.abs(U),P=Math.floor(W/60),I=W%60;return(U<=0?"+":"-")+y(P,2,"0")+":"+y(I,2,"0")},m:function H(U,W){if(U.date()1)return H(D[0])}else{var F=U.name;E[F]=U,I=F}return!P&&I&&(C=I),I||!P&&C},R=function(H,U){if(O(H))return H.clone();var W=typeof U=="object"?U:{};return W.date=H,W.args=arguments,new _(W)},A=S;A.l=N,A.i=O,A.w=function(H,U){return R(H,{locale:U.$L,utc:U.$u,x:U.$x,$offset:U.$offset})};var _=(function(){function H(W){this.$L=N(W.locale,null,!0),this.parse(W),this.$x=this.$x||W.x||{},this[$]=!0}var U=H.prototype;return U.parse=function(W){this.$d=(function(P){var I=P.date,L=P.utc;if(I===null)return new Date(NaN);if(A.u(I))return new Date;if(I instanceof Date)return new Date(I);if(typeof I=="string"&&!/Z$/i.test(I)){var D=I.match(m);if(D){var F=D[2]-1||0,q=(D[7]||"0").substring(0,3);return L?new Date(Date.UTC(D[1],F,D[3]||1,D[4]||0,D[5]||0,D[6]||0,q)):new Date(D[1],F,D[3]||1,D[4]||0,D[5]||0,D[6]||0,q)}}return new Date(I)})(W),this.init()},U.init=function(){var W=this.$d;this.$y=W.getFullYear(),this.$M=W.getMonth(),this.$D=W.getDate(),this.$W=W.getDay(),this.$H=W.getHours(),this.$m=W.getMinutes(),this.$s=W.getSeconds(),this.$ms=W.getMilliseconds()},U.$utils=function(){return A},U.isValid=function(){return this.$d.toString()!==h},U.isSame=function(W,P){var I=R(W);return this.startOf(P)<=I&&I<=this.endOf(P)},U.isAfter=function(W,P){return R(W)[e>0?e-1:void 0,e,eArray.from(Array.from({length:e}).keys()),bk=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),yk=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),Dy=function(e,t){const n=As(e),o=As(t);return n&&o?e.getTime()===t.getTime():!n&&!o?e===t:!1},wk=function(e,t){const n=ye(e),o=ye(t);return n&&o?e.length!==t.length?!1:e.every((a,s)=>Dy(a,t[s])):!n&&!o?Dy(e,t):!1},By=function(e,t,n){const o=io(t)||t==="x"?st(e).locale(n):st(e,t).locale(n);return o.isValid()?o:void 0},Fy=function(e,t,n){return io(t)?e:t==="x"?+e:st(e).locale(n).format(t)},ep=(e,t)=>{const n=[],o=t?.();for(let a=0;aye(e)?e.map(t=>t.toDate()):e.toDate(),pm=Ce({disabledHours:{type:G(Function)},disabledMinutes:{type:G(Function)},disabledSeconds:{type:G(Function)}}),Sk=Ce({visible:Boolean,actualVisible:{type:Boolean,default:void 0},format:{type:String,default:""}}),hm=Ce({automaticDropdown:{type:Boolean,default:!0},id:{type:G([Array,String])},name:{type:G([Array,String])},popperClass:zt.popperClass,popperStyle:zt.popperStyle,format:String,valueFormat:String,dateFormat:String,timeFormat:String,type:{type:String,default:""},clearable:{type:Boolean,default:!0},clearIcon:{type:G([String,Object]),default:Va},editable:{type:Boolean,default:!0},saveOnBlur:{type:Boolean,default:!0},prefixIcon:{type:G([String,Object]),default:""},size:Tn,readonly:Boolean,disabled:{type:Boolean,default:void 0},placeholder:{type:String,default:""},popperOptions:{type:G(Object),default:()=>({})},modelValue:{type:G([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:G([Date,Array])},defaultTime:{type:G([Date,Array])},isRange:Boolean,...pm,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,tabindex:{type:G([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean,placement:{type:G(String),values:Da,default:"bottom"},fallbackPlacements:{type:G(Array),default:["bottom","top","right","left"]},...Pr,...oo(["ariaLabel"]),showNow:{type:Boolean,default:!0},showConfirm:{type:Boolean,default:!0},showFooter:{type:Boolean,default:!0},showWeekNumber:Boolean}),g8=Ce({id:{type:G(Array)},name:{type:G(Array)},modelValue:{type:G([Array,String])},startPlaceholder:String,endPlaceholder:String,disabled:Boolean}),Ck=(e,t)=>{const{lang:n}=Ct(),o=M(!1),a=M(!1),s=M(null),r=w(()=>{const{modelValue:p}=e;return!p||ye(p)&&!p.filter(Boolean).length}),l=p=>{if(!wk(e.modelValue,p)){let h;ye(p)?h=p.map(m=>Fy(m,e.valueFormat,n.value)):p&&(h=Fy(p,e.valueFormat,n.value)),t(ot,p&&h,n.value)}},u=w(()=>{let p;if(r.value?c.value.getDefaultValue&&(p=c.value.getDefaultValue()):ye(e.modelValue)?p=e.modelValue.map(h=>By(h,e.valueFormat,n.value)):p=By(e.modelValue??"",e.valueFormat,n.value),c.value.getRangeAvailableTime){const h=c.value.getRangeAvailableTime(p);sn(h,p)||(p=h,r.value||l(mc(p)))}return ye(p)&&p.some(h=>!h)&&(p=[]),p}),c=M({});return{parsedValue:u,pickerActualVisible:a,pickerOptions:c,pickerVisible:o,userInput:s,valueIsEmpty:r,emitInput:l,onCalendarChange:p=>{t("calendar-change",p)},onPanelChange:(p,h,m)=>{t("panel-change",p,h,m)},onPick:(p="",h=!1)=>{o.value=h;let m;ye(p)?m=p.map(b=>b.toDate()):m=p&&p.toDate(),s.value=null,l(m)},onSetPickerOption:p=>{c.value[p[0]]=p[1],c.value.panelReady=!0}}},b8=["id","name","placeholder","value","disabled"],y8=["id","name","placeholder","value","disabled"];var w8=se({name:"PickerRangeTrigger",inheritAttrs:!1,__name:"picker-range-trigger",props:g8,emits:["mouseenter","mouseleave","click","touchstart","focus","blur","startInput","endInput","startChange","endChange"],setup(e,{expose:t,emit:n}){const o=e,a=n,{formItem:s}=Dn(),{inputId:r}=Po(At({id:w(()=>o.id?.[0])}),{formItemContext:s}),l=Ud(),u=fe("date"),c=fe("range"),d=M(),f=M(),{wrapperRef:v,isFocused:g}=ms(d,{disabled:w(()=>o.disabled)}),p=O=>{a("click",O)},h=O=>{a("mouseenter",O)},m=O=>{a("mouseleave",O)},b=O=>{a("touchstart",O)},k=O=>{a("startInput",O)},y=O=>{a("endInput",O)},S=O=>{a("startChange",O)},C=O=>{a("endChange",O)};return t({focus:()=>{d.value?.focus()},blur:()=>{d.value?.blur(),f.value?.blur()}}),(O,N)=>(x(),B("div",{ref_key:"wrapperRef",ref:v,class:T([i(u).is("active",i(g)),O.$attrs.class]),style:Ke(O.$attrs.style),onClick:p,onMouseenter:h,onMouseleave:m,onTouchstartPassive:b},[ee(O.$slots,"prefix"),z("input",dt(i(l),{id:i(r),ref_key:"inputRef",ref:d,name:O.name&&O.name[0],placeholder:O.startPlaceholder,value:O.modelValue&&O.modelValue[0],class:i(c).b("input"),disabled:O.disabled,onInput:k,onChange:S}),null,16,b8),ee(O.$slots,"range-separator"),z("input",dt(i(l),{id:O.id&&O.id[1],ref_key:"endInputRef",ref:f,name:O.name&&O.name[1],placeholder:O.endPlaceholder,value:O.modelValue&&O.modelValue[1],class:i(c).b("input"),disabled:O.disabled,onInput:y,onChange:C}),null,16,y8),ee(O.$slots,"suffix")],38))}}),S8=w8,C8=se({name:"Picker",__name:"picker",props:hm,emits:[ot,bt,"focus","blur","clear","calendar-change","panel-change","visible-change","keydown"],setup(e,{expose:t,emit:n}){const o=e,a=n,s=fs(),r=fe("date"),l=fe("input"),u=fe("range"),{formItem:c}=Dn(),d=_e(fm,{}),f=mu(o,null),v=M(),g=M(),p=M(null);let h=!1;const m=un(),b=Ck(o,a),{parsedValue:k,pickerActualVisible:y,userInput:S,pickerVisible:C,pickerOptions:E,valueIsEmpty:$,emitInput:O,onPick:N,onSetPickerOption:R,onCalendarChange:A,onPanelChange:_}=b,{isFocused:V,handleFocus:H,handleBlur:U}=ms(g,{disabled:m,beforeFocus(){return o.readonly},afterFocus(){o.automaticDropdown&&(C.value=!0)},beforeBlur(de){return!h&&v.value?.isFocusInsideContent(de)},afterBlur(){oe.value&&!o.saveOnBlur?$.value||E.value.handleCancel?.():We(),C.value=!1,h=!1,o.validateEvent&&c?.validate("blur").catch(de=>pt(de))}}),W=M(!1),P=w(()=>[r.b("editor"),r.bm("editor",o.type),l.e("wrapper"),r.is("disabled",m.value),r.is("active",C.value),u.b("editor"),Ee?u.bm("editor",Ee.value):"",s.class]),I=w(()=>[l.e("icon"),u.e("close-icon"),ce.value?"":u.em("close-icon","hidden")]);le(C,de=>{de?Re(()=>{de&&(p.value=o.modelValue)}):(S.value=null,Re(()=>{L(o.modelValue)}))});const L=(de,Ge)=>{(Ge||!wk(de,p.value))&&(a(bt,de),Ge&&(p.value=de),o.validateEvent&&c?.validate("change").catch($t=>pt($t)))},D=de=>{a("keydown",de)},F=w(()=>g.value?Array.from(g.value.$el.querySelectorAll("input")):[]),q=(de,Ge,$t)=>{const tn=F.value;tn.length&&(!$t||$t==="min"?(tn[0].setSelectionRange(de,Ge),tn[0].focus()):$t==="max"&&(tn[1].setSelectionRange(de,Ge),tn[1].focus()))},j=()=>{y.value=!0},X=()=>{a("visible-change",!0)},Q=()=>{y.value=!1,C.value=!1,a("visible-change",!1)},he=()=>{C.value=!0},ue=()=>{C.value=!1},ge=w(()=>{const de=Pe(k.value);return ye(S.value)?[S.value[0]||de&&de[0]||"",S.value[1]||de&&de[1]||""]:S.value!==null?S.value:oe.value&&$.value&&!o.saveOnBlur||!oe.value&&$.value||!C.value&&$.value?"":de?ne.value||K.value||Z.value?de.join(", "):de:""}),ie=w(()=>o.type.includes("time")),oe=w(()=>o.type.startsWith("time")),ne=w(()=>o.type==="dates"),K=w(()=>o.type==="months"),Z=w(()=>o.type==="years"),re=w(()=>o.prefixIcon||(ie.value?VC:G4)),ce=w(()=>o.clearable&&!m.value&&!o.readonly&&!$.value&&(W.value||V.value)),ve=de=>{o.readonly||m.value||(ce.value&&(de?.stopPropagation(),E.value.handleClear?E.value.handleClear():O(f.valueOnClear.value),L(f.valueOnClear.value,!0),Q()),a("clear"))},ke=async de=>{o.readonly||m.value||(de.target?.tagName!=="INPUT"||V.value||!o.automaticDropdown)&&(C.value=!0)},Ne=()=>{o.readonly||m.value||!$.value&&o.clearable&&(W.value=!0)},Ie=()=>{W.value=!1},$e=de=>{o.readonly||m.value||(de.touches[0].target?.tagName!=="INPUT"||V.value||!o.automaticDropdown)&&(C.value=!0)},pe=w(()=>o.type.includes("range")),Ee=Cn(),me=w(()=>i(v)?.popperRef?.contentRef),Me=Av(g,de=>{const Ge=i(me),$t=xn(g);Ge&&(de.target===Ge||de.composedPath().includes(Ge))||de.target===$t||$t&&de.composedPath().includes($t)||(C.value=!1)});Bt(()=>{Me?.()});const We=()=>{if(!(oe.value&&!o.saveOnBlur)){if(S.value){const de=Ze(ge.value);de&&(Ae(de)&&O(mc(de)),S.value=null)}S.value===""&&(O(f.valueOnClear.value),L(f.valueOnClear.value,!0),S.value=null)}},Ze=de=>de?E.value.parseUserInput(de):null,Pe=de=>de?ye(de)?de.map(Ge=>Ge.format(o.format)):de.format(o.format):null,Ae=de=>E.value.isValidValue(de),je=async de=>{if(o.readonly||m.value)return;const Ge=jt(de);if(D(de),Ge===we.esc){C.value===!0&&(C.value=!1,de.preventDefault(),de.stopPropagation());return}if(Ge===we.down&&(E.value.handleFocusPicker&&(de.preventDefault(),de.stopPropagation()),C.value===!1&&(C.value=!0,await Re()),E.value.handleFocusPicker)){E.value.handleFocusPicker();return}if(Ge===we.tab){h=!0;return}if(Ge===we.enter||Ge===we.numpadEnter){C.value?(S.value===null||S.value===""||Ae(Ze(ge.value)))&&(We(),C.value=!1):C.value=!0,de.preventDefault(),de.stopPropagation();return}if(S.value){de.stopPropagation();return}E.value.handleKeydownInput&&E.value.handleKeydownInput(de)},Rt=de=>{S.value=de,C.value||(C.value=!0)},Ue=de=>{const Ge=de.target;S.value?S.value=[Ge.value,S.value[1]]:S.value=[Ge.value,null]},lt=de=>{const Ge=de.target;S.value?S.value=[S.value[0],Ge.value]:S.value=[null,Ge.value]},mt=()=>{const de=S.value,Ge=Ze(de&&de[0]),$t=i(k);if(Ge&&Ge.isValid()){S.value=[Pe(Ge),ge.value?.[1]||null];const tn=[Ge,$t&&($t[1]||null)];Ae(tn)&&(O(mc(tn)),S.value=null)}},kt=()=>{const de=i(S),Ge=Ze(de&&de[1]),$t=i(k);if(Ge&&Ge.isValid()){S.value=[i(ge)?.[0]||null,Pe(Ge)];const tn=[$t&&$t[0],Ge];Ae(tn)&&(O(mc(tn)),S.value=null)}},be=()=>{g.value?.focus()},ze=()=>{g.value?.blur()};return St(sa,{props:o,emptyValues:f}),St(gk,b),t({focus:be,blur:ze,handleOpen:he,handleClose:ue,onPick:N}),(de,Ge)=>(x(),ae(i(Ln),dt({ref_key:"refPopper",ref:v,visible:i(C),effect:"light",pure:"",trigger:"click"},de.$attrs,{role:"dialog",teleported:"",transition:`${i(r).namespace.value}-zoom-in-top`,"popper-class":[`${i(r).namespace.value}-picker__popper`,de.popperClass],"popper-style":de.popperStyle,"popper-options":i(d),"fallback-placements":de.fallbackPlacements,"gpu-acceleration":!1,placement:de.placement,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:j,onShow:X,onHide:Q}),{default:J(()=>[pe.value?(x(),ae(S8,{key:1,id:de.id,ref_key:"inputRef",ref:g,"model-value":ge.value,name:de.name,disabled:i(m),readonly:!de.editable||de.readonly,"start-placeholder":de.startPlaceholder,"end-placeholder":de.endPlaceholder,class:T(P.value),style:Ke(de.$attrs.style),"aria-label":de.ariaLabel,tabindex:de.tabindex,autocomplete:"off",role:"combobox",onClick:ke,onFocus:i(H),onBlur:i(U),onStartInput:Ue,onStartChange:mt,onEndInput:lt,onEndChange:kt,onMousedown:ke,onMouseenter:Ne,onMouseleave:Ie,onTouchstartPassive:$e,onKeydown:je},{prefix:J(()=>[re.value?(x(),ae(i(De),{key:0,class:T([i(l).e("icon"),i(u).e("icon")])},{default:J(()=>[(x(),ae(it(re.value)))]),_:1},8,["class"])):te("v-if",!0)]),"range-separator":J(()=>[ee(de.$slots,"range-separator",{},()=>[z("span",{class:T(i(u).b("separator"))},Se(de.rangeSeparator),3)])]),suffix:J(()=>[de.clearIcon?(x(),ae(i(De),{key:0,class:T(I.value),onMousedown:Xe(i(Dt),["prevent"]),onClick:ve},{default:J(()=>[(x(),ae(it(de.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0)]),_:3},8,["id","model-value","name","disabled","readonly","start-placeholder","end-placeholder","class","style","aria-label","tabindex","onFocus","onBlur"])):(x(),ae(i(eo),{key:0,id:de.id,ref_key:"inputRef",ref:g,"container-role":"combobox","model-value":ge.value,name:de.name,size:i(Ee),disabled:i(m),placeholder:de.placeholder,class:T([i(r).b("editor"),i(r).bm("editor",de.type),i(r).is("focus",i(C)),de.$attrs.class]),style:Ke(de.$attrs.style),readonly:!de.editable||de.readonly||ne.value||K.value||Z.value||de.type==="week","aria-label":de.ariaLabel,tabindex:de.tabindex,"validate-event":!1,onInput:Rt,onFocus:i(H),onBlur:i(U),onKeydown:je,onChange:We,onMousedown:ke,onMouseenter:Ne,onMouseleave:Ie,onTouchstartPassive:$e,onClick:Ge[0]||(Ge[0]=Xe(()=>{},["stop"]))},{prefix:J(()=>[re.value?(x(),ae(i(De),{key:0,class:T(i(l).e("icon")),onMousedown:Xe(ke,["prevent"]),onTouchstartPassive:$e},{default:J(()=>[(x(),ae(it(re.value)))]),_:1},8,["class"])):te("v-if",!0)]),suffix:J(()=>[ce.value&&de.clearIcon?(x(),ae(i(De),{key:0,class:T(`${i(l).e("icon")} clear-icon`),onMousedown:Xe(i(Dt),["prevent"]),onClick:ve},{default:J(()=>[(x(),ae(it(de.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","aria-label","tabindex","onFocus","onBlur"]))]),content:J(()=>[ee(de.$slots,"default",{visible:i(C),actualVisible:i(y),parsedValue:i(k),format:de.format,dateFormat:de.dateFormat,timeFormat:de.timeFormat,unlinkPanels:de.unlinkPanels,type:de.type,defaultValue:de.defaultValue,showNow:de.showNow,showConfirm:de.showConfirm,showFooter:de.showFooter,showWeekNumber:de.showWeekNumber,onPick:Ge[1]||(Ge[1]=(...$t)=>i(N)&&i(N)(...$t)),onSelectRange:q,onSetPickerOption:Ge[2]||(Ge[2]=(...$t)=>i(R)&&i(R)(...$t)),onCalendarChange:Ge[3]||(Ge[3]=(...$t)=>i(A)&&i(A)(...$t)),onClear:ve,onPanelChange:Ge[4]||(Ge[4]=(...$t)=>i(_)&&i(_)(...$t)),onMousedown:Ge[5]||(Ge[5]=Xe(()=>{},["stop"]))})]),_:3},16,["visible","transition","popper-class","popper-style","popper-options","fallback-placements","placement"]))}}),kk=C8;const ks=new Map;if(Mt){let e;document.addEventListener("mousedown",t=>e=t),document.addEventListener("mouseup",t=>{if(e){for(const n of ks.values())for(const{documentHandler:o}of n)o(t,e);e=void 0}})}function Vy(e,t){let n=[];return ye(t.arg)?n=t.arg:vo(t.arg)&&n.push(t.arg),function(o,a){const s=t.instance.popperRef,r=o.target,l=a?.target,u=!t||!t.instance,c=!r||!l,d=e.contains(r)||e.contains(l),f=e===r,v=n.length&&n.some(p=>p?.contains(r))||n.length&&n.includes(l),g=s&&(s.contains(r)||s.contains(l));u||c||d||f||v||g||t.value(o,a)}}const zs={beforeMount(e,t){ks.has(e)||ks.set(e,[]),ks.get(e).push({documentHandler:Vy(e,t),bindingFn:t.value})},updated(e,t){ks.has(e)||ks.set(e,[]);const n=ks.get(e),o=n.findIndex(s=>s.bindingFn===t.oldValue),a={documentHandler:Vy(e,t),bindingFn:t.value};o>=0?n.splice(o,1,a):n.push(a)},unmounted(e){ks.delete(e)}},k8=100,E8=600,Ju="_RepeatClick",ad={beforeMount(e,t){const n=t.value,{interval:o=k8,delay:a=E8}=Ve(n)?{}:n;let s,r;const l=()=>Ve(n)?n():n.handler(),u=()=>{r&&(clearTimeout(r),r=void 0),s&&(clearInterval(s),s=void 0)},c=d=>{d.button===0&&(u(),l(),document.addEventListener("mouseup",u,{once:!0}),r=setTimeout(()=>{s=setInterval(()=>{l()},o)},a))};e[Ju]={start:c,clear:u},e.addEventListener("mousedown",c)},unmounted(e){if(!e[Ju])return;const{start:t,clear:n}=e[Ju];t&&e.removeEventListener("mousedown",t),n&&(n(),document.removeEventListener("mouseup",n)),e[Ju]=null}},oh="_trap-focus-children",rr=[],zy=e=>{if(rr.length===0)return;const t=jt(e),n=rr[rr.length-1][oh];if(n.length>0&&t===we.tab){if(n.length===1){e.preventDefault(),document.activeElement!==n[0]&&n[0].focus();return}const o=e.shiftKey,a=e.target===n[0],s=e.target===n[n.length-1];a&&o&&(e.preventDefault(),n[n.length-1].focus()),s&&!o&&(e.preventDefault(),n[0].focus())}},x8={beforeMount(e){e[oh]=Lb(e),rr.push(e),rr.length<=1&&document.addEventListener("keydown",zy)},updated(e){Re(()=>{e[oh]=Lb(e)})},unmounted(){rr.shift(),rr.length===0&&document.removeEventListener("keydown",zy)}};var Hy=!1,er,ah,sh,gc,bc,Ek,yc,rh,lh,ih,xk,uh,ch,Tk,$k;function po(){if(!Hy){Hy=!0;var e=navigator.userAgent,t=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(e),n=/(Mac OS X)|(Windows)|(Linux)/.exec(e);if(uh=/\b(iPhone|iP[ao]d)/.exec(e),ch=/\b(iP[ao]d)/.exec(e),ih=/Android/i.exec(e),Tk=/FBAN\/\w+;/i.exec(e),$k=/Mobile/i.exec(e),xk=!!/Win64/.exec(e),t){er=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,er&&document&&document.documentMode&&(er=document.documentMode);var o=/(?:Trident\/(\d+.\d+))/.exec(e);Ek=o?parseFloat(o[1])+4:er,ah=t[2]?parseFloat(t[2]):NaN,sh=t[3]?parseFloat(t[3]):NaN,gc=t[4]?parseFloat(t[4]):NaN,gc?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),bc=t&&t[1]?parseFloat(t[1]):NaN):bc=NaN}else er=ah=sh=bc=gc=NaN;if(n){if(n[1]){var a=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);yc=a?parseFloat(a[1].replace("_",".")):!0}else yc=!1;rh=!!n[2],lh=!!n[3]}else yc=rh=lh=!1}}var dh={ie:function(){return po()||er},ieCompatibilityMode:function(){return po()||Ek>er},ie64:function(){return dh.ie()&&xk},firefox:function(){return po()||ah},opera:function(){return po()||sh},webkit:function(){return po()||gc},safari:function(){return dh.webkit()},chrome:function(){return po()||bc},windows:function(){return po()||rh},osx:function(){return po()||yc},linux:function(){return po()||lh},iphone:function(){return po()||uh},mobile:function(){return po()||uh||ch||ih||$k},nativeApp:function(){return po()||Tk},android:function(){return po()||ih},ipad:function(){return po()||ch}},T8=dh,$8=!!(typeof window<"u"&&window.document&&window.document.createElement),O8={canUseDOM:$8},Ok=O8,Rk;Ok.canUseDOM&&(Rk=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function R8(e,t){if(!Ok.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,o=n in document;if(!o){var a=document.createElement("div");a.setAttribute(n,"return;"),o=typeof a[n]=="function"}return!o&&Rk&&e==="wheel"&&(o=document.implementation.hasFeature("Events.wheel","3.0")),o}var N8=R8,Ky=10,Wy=40,jy=800;function Nk(e){var t=0,n=0,o=0,a=0;return"detail"in e&&(n=e.detail),"wheelDelta"in e&&(n=-e.wheelDelta/120),"wheelDeltaY"in e&&(n=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=n,n=0),o=t*Ky,a=n*Ky,"deltaY"in e&&(a=e.deltaY),"deltaX"in e&&(o=e.deltaX),(o||a)&&e.deltaMode&&(e.deltaMode==1?(o*=Wy,a*=Wy):(o*=jy,a*=jy)),o&&!t&&(t=o<1?-1:1),a&&!n&&(n=a<1?-1:1),{spinX:t,spinY:n,pixelX:o,pixelY:a}}Nk.getEventType=function(){return T8.firefox()?"DOMMouseScroll":N8("wheel")?"wheel":"mousewheel"};var I8=Nk;const wc="_Mousewheel",Uy=function(e,t){if(e&&e.addEventListener){Ik(e);const n=function(o){const a=I8(o);t&&Reflect.apply(t,this,[o,a])};e[wc]={wheelHandler:n},e.addEventListener("wheel",n,{passive:!0})}},Ik=e=>{e[wc]?.wheelHandler&&(e.removeEventListener("wheel",e[wc].wheelHandler),e[wc]=null)},P8={beforeMount(e,t){Uy(e,t.value)},unmounted(e){Ik(e)},updated(e,t){t.value!==t.oldValue&&Uy(e,t.value)}},M8=Ce({...Sk,datetimeRole:String,parsedValue:{type:G(Object)}}),Pk=({getAvailableHours:e,getAvailableMinutes:t,getAvailableSeconds:n})=>{const o=(r,l,u,c)=>{const d={hour:e,minute:t,second:n};let f=r;return["hour","minute","second"].forEach(v=>{if(d[v]){let g;const p=d[v];switch(v){case"minute":g=p(f.hour(),l,c);break;case"second":g=p(f.hour(),f.minute(),l,c);break;default:g=p(l,c);break}if(g?.length&&!g.includes(f[v]())){const h=u?0:g.length-1;f=f[v](g[h])}}}),f},a={};return{timePickerOptions:a,getAvailableTime:o,onSetOption:([r,l])=>{a[r]=l}}},tp=e=>{const t=(o,a)=>o||a,n=o=>o!==!0;return e.map(t).filter(n)},Mk=(e,t,n)=>({getHoursList:(r,l)=>ep(24,e&&(()=>e?.(r,l))),getMinutesList:(r,l,u)=>ep(60,t&&(()=>t?.(r,l,u))),getSecondsList:(r,l,u,c)=>ep(60,n&&(()=>n?.(r,l,u,c)))}),_k=(e,t,n)=>{const{getHoursList:o,getMinutesList:a,getSecondsList:s}=Mk(e,t,n);return{getAvailableHours:(c,d)=>tp(o(c,d)),getAvailableMinutes:(c,d,f)=>tp(a(c,d,f)),getAvailableSeconds:(c,d,f,v)=>tp(s(c,d,f,v))}},Ak=(e,t)=>{const n=M(e.parsedValue);return le(()=>e.visible,o=>{const a=gg(t.modelValue),s=gg(t.valueOnClear);if(o&&a===s){n.value=s;return}o||(n.value=e.parsedValue)}),n},_8=Ce({role:{type:String,required:!0},spinnerDate:{type:G(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:G(String),default:""},...pm}),A8=["onClick"],L8=["onMouseenter"];var D8=se({__name:"basic-time-spinner",props:_8,emits:[bt,"select-range","set-option"],setup(e,{emit:t}){const n=e,{isRange:o,format:a,saveOnBlur:s}=_e(sa).props,r=t,l=fe("time"),{getHoursList:u,getMinutesList:c,getSecondsList:d}=Mk(n.disabledHours,n.disabledMinutes,n.disabledSeconds);let f=!1;const v={hours:!1,minutes:!1,seconds:!1},g=M(),p={hours:M(),minutes:M(),seconds:M()},h=w(()=>n.showSeconds?Ay:Ay.slice(0,2)),m=w(()=>{const{spinnerDate:F}=n;return{hours:F.hour(),minutes:F.minute(),seconds:F.second()}}),b=w(()=>{const{hours:F,minutes:q}=i(m),{role:j,spinnerDate:X}=n,Q=o?void 0:X;return{hours:u(j,Q),minutes:c(F,j,Q),seconds:d(F,q,j,Q)}}),k=w(()=>{const{hours:F,minutes:q,seconds:j}=i(m);return{hours:Qf(F,23),minutes:Qf(q,59),seconds:Qf(j,59)}}),y=Ma(F=>{f=!1,E(F)},200),S=F=>{if(!n.amPmMode)return"";const q=n.amPmMode==="A";let j=F<12?" am":" pm";return q&&(j=j.toUpperCase()),j},C=F=>{let q=[0,0];const j=a||wl,X=j.indexOf("HH"),Q=j.indexOf("mm"),he=j.indexOf("ss");switch(F){case"hours":X!==-1&&(q=[X,X+2]);break;case"minutes":Q!==-1&&(q=[Q,Q+2]);break;case"seconds":he!==-1&&(q=[he,he+2]);break}const[ue,ge]=q;r("select-range",ue,ge),g.value=F},E=F=>{N(F,i(m)[F])},$=()=>{E("hours"),E("minutes"),E("seconds")},O=F=>F.querySelector(`.${l.namespace.value}-scrollbar__wrap`),N=(F,q)=>{if(n.arrowControl)return;const j=i(p[F]);j&&j.$el&&(s||(v[F]=!0,ta(()=>{v[F]=!1})),O(j.$el).scrollTop=Math.max(0,q*R(F)))},R=F=>{const q=i(p[F])?.$el.querySelector("li");return q&&Number.parseFloat(Ya(q,"height"))||0},A=()=>{V(1)},_=()=>{V(-1)},V=F=>{g.value||C("hours");const q=g.value,j=i(m)[q],X=H(q,j,F,g.value==="hours"?24:60);U(q,X),N(q,X),Re(()=>C(q))},H=(F,q,j,X)=>{let Q=(q+j+X)%X;const he=i(b)[F];for(;he[Q]&&Q!==q;)Q=(Q+j+X)%X;return Q},U=(F,q)=>{if(i(b)[F][q])return;const{hours:j,minutes:X,seconds:Q}=i(m);let he;switch(F){case"hours":he=n.spinnerDate.hour(q).minute(X).second(Q);break;case"minutes":he=n.spinnerDate.hour(j).minute(q).second(Q);break;case"seconds":he=n.spinnerDate.hour(j).minute(X).second(q);break}r(bt,he)},W=(F,{value:q,disabled:j})=>{j||(U(F,q),C(F),N(F,q))},P=F=>{if(!s&&v[F])return;const q=i(p[F]);q&&(f=!0,y(F),U(F,Math.min(Math.round((O(q.$el).scrollTop-(I(F)*.5-10)/R(F)+3)/R(F)),F==="hours"?23:59)))},I=F=>i(p[F]).$el.offsetHeight,L=()=>{const F=q=>{const j=i(p[q]);j&&j.$el&&(O(j.$el).onscroll=()=>{P(q)})};F("hours"),F("minutes"),F("seconds")};ht(()=>{Re(()=>{!n.arrowControl&&L(),$(),n.role==="start"&&C("hours")})});const D=(F,q)=>{p[q].value=F??void 0};return r("set-option",[`${n.role}_scrollDown`,V]),r("set-option",[`${n.role}_emitSelectRange`,C]),le(()=>n.spinnerDate,()=>{f||$()}),(F,q)=>(x(),B("div",{class:T([i(l).b("spinner"),{"has-seconds":F.showSeconds}])},[F.arrowControl?te("v-if",!0):(x(!0),B(Fe,{key:0},yt(h.value,j=>(x(),ae(i(aa),{key:j,ref_for:!0,ref:X=>D(X,j),class:T(i(l).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":i(l).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:X=>C(j),onMousemove:X=>E(j)},{default:J(()=>[(x(!0),B(Fe,null,yt(b.value[j],(X,Q)=>(x(),B("li",{key:Q,class:T([i(l).be("spinner","item"),i(l).is("active",Q===m.value[j]),i(l).is("disabled",X)]),onClick:he=>W(j,{value:Q,disabled:X})},[j==="hours"?(x(),B(Fe,{key:0},[wt(Se(("0"+(F.amPmMode?Q%12||12:Q)).slice(-2))+Se(S(Q)),1)],64)):(x(),B(Fe,{key:1},[wt(Se(("0"+Q).slice(-2)),1)],64))],10,A8))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),F.arrowControl?(x(!0),B(Fe,{key:1},yt(h.value,j=>(x(),B("div",{key:j,class:T([i(l).be("spinner","wrapper"),i(l).is("arrow")]),onMouseenter:X=>C(j)},[ut((x(),ae(i(De),{class:T(["arrow-up",i(l).be("spinner","arrow")])},{default:J(()=>[Y(i(nf))]),_:1},8,["class"])),[[i(ad),_]]),ut((x(),ae(i(De),{class:T(["arrow-down",i(l).be("spinner","arrow")])},{default:J(()=>[Y(i(Fa))]),_:1},8,["class"])),[[i(ad),A]]),z("ul",{class:T(i(l).be("spinner","list"))},[(x(!0),B(Fe,null,yt(k.value[j],(X,Q)=>(x(),B("li",{key:Q,class:T([i(l).be("spinner","item"),i(l).is("active",X===m.value[j]),i(l).is("disabled",b.value[j][X])])},[i(He)(X)?(x(),B(Fe,{key:0},[j==="hours"?(x(),B(Fe,{key:0},[wt(Se(("0"+(F.amPmMode?X%12||12:X)).slice(-2))+Se(S(X)),1)],64)):(x(),B(Fe,{key:1},[wt(Se(("0"+X).slice(-2)),1)],64))],64)):te("v-if",!0)],2))),128))],2)],42,L8))),128)):te("v-if",!0)],2))}}),fh=D8,B8=se({__name:"panel-time-pick",props:M8,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,o=t,a=_e(sa),{arrowControl:s,disabledHours:r,disabledMinutes:l,disabledSeconds:u,defaultValue:c}=a.props,{getAvailableHours:d,getAvailableMinutes:f,getAvailableSeconds:v}=_k(r,l,u),g=fe("time"),{t:p,lang:h}=Ct(),m=M([0,2]),b=Ak(n,{modelValue:w(()=>a.props.modelValue),valueOnClear:w(()=>a?.emptyValues?a.emptyValues.valueOnClear.value:null)}),k=w(()=>Tt(n.actualVisible)?`${g.namespace.value}-zoom-in-top`:""),y=w(()=>n.format.includes("ss")),S=w(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),C=I=>{const L=st(I).locale(h.value),D=U(L);return L.isSame(D)},E=()=>{const I=b.value;o("pick",I,!1),Re(()=>{b.value=I})},$=(I=!1,L=!1)=>{L||o("pick",n.parsedValue,I)},O=I=>{n.visible&&o("pick",U(I).millisecond(0),!0)},N=(I,L)=>{o("select-range",I,L),m.value=[I,L]},R=I=>{const L=n.format,D=L.indexOf("HH"),F=L.indexOf("mm"),q=L.indexOf("ss"),j=[],X=[];D!==-1&&(j.push(D),X.push("hours")),F!==-1&&(j.push(F),X.push("minutes")),q!==-1&&y.value&&(j.push(q),X.push("seconds"));const Q=(j.indexOf(m.value[0])+I+j.length)%j.length;_.start_emitSelectRange(X[Q])},A=I=>{const L=jt(I),{left:D,right:F,up:q,down:j}=we;if([D,F].includes(L)){R(L===D?-1:1),I.preventDefault();return}if([q,j].includes(L)){const X=L===q?-1:1;_.start_scrollDown(X),I.preventDefault();return}},{timePickerOptions:_,onSetOption:V,getAvailableTime:H}=Pk({getAvailableHours:d,getAvailableMinutes:f,getAvailableSeconds:v}),U=I=>H(I,n.datetimeRole||"",!0),W=I=>I?st(I,n.format).locale(h.value):null,P=()=>st(c).locale(h.value);return o("set-picker-option",["isValidValue",C]),o("set-picker-option",["parseUserInput",W]),o("set-picker-option",["handleKeydownInput",A]),o("set-picker-option",["getRangeAvailableTime",U]),o("set-picker-option",["getDefaultValue",P]),o("set-picker-option",["handleCancel",E]),(I,L)=>(x(),ae(Vn,{name:k.value},{default:J(()=>[I.actualVisible||I.visible?(x(),B("div",{key:0,class:T(i(g).b("panel"))},[z("div",{class:T([i(g).be("panel","content"),{"has-seconds":y.value}])},[Y(fh,{ref:"spinner",role:I.datetimeRole||"start","arrow-control":i(s),"show-seconds":y.value,"am-pm-mode":S.value,"spinner-date":I.parsedValue,"disabled-hours":i(r),"disabled-minutes":i(l),"disabled-seconds":i(u),onChange:O,onSetOption:i(V),onSelectRange:N},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),z("div",{class:T(i(g).be("panel","footer"))},[z("button",{type:"button",class:T([i(g).be("panel","btn"),"cancel"]),onClick:E},Se(i(p)("el.datepicker.cancel")),3),z("button",{type:"button",class:T([i(g).be("panel","btn"),"confirm"]),onClick:L[0]||(L[0]=D=>$())},Se(i(p)("el.datepicker.confirm")),3)],2)],2)):te("v-if",!0)]),_:1},8,["name"]))}}),sd=B8;const F8=Ce({...Sk,parsedValue:{type:G(Array)}}),V8=["disabled"];var z8=se({__name:"panel-time-range",props:F8,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,o=t,a=(ne,K)=>{const Z=[];for(let re=ne;re<=K;re++)Z.push(re);return Z},{t:s,lang:r}=Ct(),l=fe("time"),u=fe("picker"),c=_e(sa),{arrowControl:d,disabledHours:f,disabledMinutes:v,disabledSeconds:g,defaultValue:p}=c.props,h=w(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),C.value?"has-seconds":""]),m=w(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),C.value?"has-seconds":""]),b=w(()=>n.parsedValue[0]),k=w(()=>n.parsedValue[1]),y=Ak(n,{modelValue:w(()=>c.props.modelValue),valueOnClear:w(()=>c?.emptyValues?c.emptyValues.valueOnClear.value:null)}),S=()=>{const ne=y.value;o("pick",ne,!1),Re(()=>{y.value=ne})},C=w(()=>n.format.includes("ss")),E=w(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),$=(ne=!1)=>{o("pick",[b.value,k.value],ne)},O=ne=>{A(ne.millisecond(0),k.value)},N=ne=>{A(b.value,ne.millisecond(0))},R=ne=>{const K=ne.map(re=>st(re).locale(r.value)),Z=q(K);return K[0].isSame(Z[0])&&K[1].isSame(Z[1])},A=(ne,K)=>{n.visible&&o("pick",[ne,K],!0)},_=w(()=>b.value>k.value),V=M([0,2]),H=(ne,K)=>{o("select-range",ne,K,"min"),V.value=[ne,K]},U=w(()=>C.value?11:8),W=(ne,K)=>{o("select-range",ne,K,"max");const Z=i(U);V.value=[ne+Z,K+Z]},P=ne=>{const K=C.value?[0,3,6,11,14,17]:[0,3,8,11],Z=["hours","minutes"].concat(C.value?["seconds"]:[]),re=(K.indexOf(V.value[0])+ne+K.length)%K.length,ce=K.length/2;re{const K=jt(ne),{left:Z,right:re,up:ce,down:ve}=we;if([Z,re].includes(K)){P(K===Z?-1:1),ne.preventDefault();return}if([ce,ve].includes(K)){const ke=K===ce?-1:1;he[`${V.value[0]{const Z=f?f(ne):[],re=ne==="start",ce=(K||(re?k.value:b.value)).hour();return Kf(Z,re?a(ce+1,23):a(0,ce-1))},D=(ne,K,Z)=>{const re=v?v(ne,K):[],ce=K==="start",ve=Z||(ce?k.value:b.value);if(ne!==ve.hour())return re;const ke=ve.minute();return Kf(re,ce?a(ke+1,59):a(0,ke-1))},F=(ne,K,Z,re)=>{const ce=g?g(ne,K,Z):[],ve=Z==="start",ke=re||(ve?k.value:b.value),Ne=ke.hour(),Ie=ke.minute();if(ne!==Ne||K!==Ie)return ce;const $e=ke.second();return Kf(ce,ve?a($e+1,59):a(0,$e-1))},q=([ne,K])=>[ue(ne,"start",!0,K),ue(K,"end",!1,ne)],{getAvailableHours:j,getAvailableMinutes:X,getAvailableSeconds:Q}=_k(L,D,F),{timePickerOptions:he,getAvailableTime:ue,onSetOption:ge}=Pk({getAvailableHours:j,getAvailableMinutes:X,getAvailableSeconds:Q}),ie=ne=>ne?ye(ne)?ne.map(K=>st(K,n.format).locale(r.value)):st(ne,n.format).locale(r.value):null,oe=()=>{if(ye(p))return p.map(K=>st(K).locale(r.value));const ne=st(p).locale(r.value);return[ne,ne.add(60,"m")]};return o("set-picker-option",["parseUserInput",ie]),o("set-picker-option",["isValidValue",R]),o("set-picker-option",["handleKeydownInput",I]),o("set-picker-option",["getDefaultValue",oe]),o("set-picker-option",["getRangeAvailableTime",q]),o("set-picker-option",["handleCancel",S]),(ne,K)=>ne.actualVisible?(x(),B("div",{key:0,class:T([i(l).b("range-picker"),i(u).b("panel")])},[z("div",{class:T(i(l).be("range-picker","content"))},[z("div",{class:T(i(l).be("range-picker","cell"))},[z("div",{class:T(i(l).be("range-picker","header"))},Se(i(s)("el.datepicker.startTime")),3),z("div",{class:T(h.value)},[Y(fh,{ref:"minSpinner",role:"start","show-seconds":C.value,"am-pm-mode":E.value,"arrow-control":i(d),"spinner-date":b.value,"disabled-hours":L,"disabled-minutes":D,"disabled-seconds":F,onChange:O,onSetOption:i(ge),onSelectRange:H},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),z("div",{class:T(i(l).be("range-picker","cell"))},[z("div",{class:T(i(l).be("range-picker","header"))},Se(i(s)("el.datepicker.endTime")),3),z("div",{class:T(m.value)},[Y(fh,{ref:"maxSpinner",role:"end","show-seconds":C.value,"am-pm-mode":E.value,"arrow-control":i(d),"spinner-date":k.value,"disabled-hours":L,"disabled-minutes":D,"disabled-seconds":F,onChange:N,onSetOption:i(ge),onSelectRange:W},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),z("div",{class:T(i(l).be("panel","footer"))},[z("button",{type:"button",class:T([i(l).be("panel","btn"),"cancel"]),onClick:K[0]||(K[0]=Z=>S())},Se(i(s)("el.datepicker.cancel")),3),z("button",{type:"button",class:T([i(l).be("panel","btn"),"confirm"]),disabled:_.value,onClick:K[1]||(K[1]=Z=>$())},Se(i(s)("el.datepicker.confirm")),11,V8)],2)],2)):te("v-if",!0)}}),H8=z8,Sc={exports:{}},K8=Sc.exports,qy;function W8(){return qy||(qy=1,(function(e,t){(function(n,o){e.exports=o()})(K8,(function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},o=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,a=/\d/,s=/\d\d/,r=/\d\d?/,l=/\d*[^-_:/,()\s\d]+/,u={},c=function(m){return(m=+m)+(m>68?1900:2e3)},d=function(m){return function(b){this[m]=+b}},f=[/[+-]\d\d:?(\d\d)?|Z/,function(m){(this.zone||(this.zone={})).offset=(function(b){if(!b||b==="Z")return 0;var k=b.match(/([+-]|\d\d)/g),y=60*k[1]+(+k[2]||0);return y===0?0:k[0]==="+"?-y:y})(m)}],v=function(m){var b=u[m];return b&&(b.indexOf?b:b.s.concat(b.f))},g=function(m,b){var k,y=u.meridiem;if(y){for(var S=1;S<=24;S+=1)if(m.indexOf(y(S,0,b))>-1){k=S>12;break}}else k=m===(b?"pm":"PM");return k},p={A:[l,function(m){this.afternoon=g(m,!1)}],a:[l,function(m){this.afternoon=g(m,!0)}],Q:[a,function(m){this.month=3*(m-1)+1}],S:[a,function(m){this.milliseconds=100*+m}],SS:[s,function(m){this.milliseconds=10*+m}],SSS:[/\d{3}/,function(m){this.milliseconds=+m}],s:[r,d("seconds")],ss:[r,d("seconds")],m:[r,d("minutes")],mm:[r,d("minutes")],H:[r,d("hours")],h:[r,d("hours")],HH:[r,d("hours")],hh:[r,d("hours")],D:[r,d("day")],DD:[s,d("day")],Do:[l,function(m){var b=u.ordinal,k=m.match(/\d+/);if(this.day=k[0],b)for(var y=1;y<=31;y+=1)b(y).replace(/\[|\]/g,"")===m&&(this.day=y)}],w:[r,d("week")],ww:[s,d("week")],M:[r,d("month")],MM:[s,d("month")],MMM:[l,function(m){var b=v("months"),k=(v("monthsShort")||b.map((function(y){return y.slice(0,3)}))).indexOf(m)+1;if(k<1)throw new Error;this.month=k%12||k}],MMMM:[l,function(m){var b=v("months").indexOf(m)+1;if(b<1)throw new Error;this.month=b%12||b}],Y:[/[+-]?\d+/,d("year")],YY:[s,function(m){this.year=c(m)}],YYYY:[/\d{4}/,d("year")],Z:f,ZZ:f};function h(m){var b,k;b=m,k=u&&u.formats;for(var y=(m=b.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(R,A,_){var V=_&&_.toUpperCase();return A||k[_]||n[_]||k[V].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(H,U,W){return U||W.slice(1)}))}))).match(o),S=y.length,C=0;C-1)return new Date((I==="X"?1e3:1)*P);var F=h(I)(P),q=F.year,j=F.month,X=F.day,Q=F.hours,he=F.minutes,ue=F.seconds,ge=F.milliseconds,ie=F.zone,oe=F.week,ne=new Date,K=X||(q||j?1:ne.getDate()),Z=q||ne.getFullYear(),re=0;q&&!j||(re=j>0?j-1:ne.getMonth());var ce,ve=Q||0,ke=he||0,Ne=ue||0,Ie=ge||0;return ie?new Date(Date.UTC(Z,re,K,ve,ke,Ne,Ie+60*ie.offset*1e3)):L?new Date(Date.UTC(Z,re,K,ve,ke,Ne,Ie)):(ce=new Date(Z,re,K,ve,ke,Ne,Ie),oe&&(ce=D(ce).week(oe).toDate()),ce)}catch{return new Date("")}})(E,N,$,k),this.init(),V&&V!==!0&&(this.$L=this.locale(V).$L),_&&E!=this.format(N)&&(this.$d=new Date("")),u={}}else if(N instanceof Array)for(var H=N.length,U=1;U<=H;U+=1){O[1]=N[U-1];var W=k.apply(this,O);if(W.isValid()){this.$d=W.$d,this.$L=W.$L,this.init();break}U===H&&(this.$d=new Date(""))}else S.call(this,C)}}}))})(Sc)),Sc.exports}var j8=W8();const vm=bs(j8);st.extend(vm);var U8=se({name:"ElTimePicker",install:null,props:{...hm,isRange:Boolean},emits:[ot],setup(e,t){const n=M(),[o,a]=e.isRange?["timerange",H8]:["time",sd],s=r=>t.emit(ot,r);return St(fm,e.popperOptions),t.expose({focus:()=>{n.value?.focus()},blur:()=>{n.value?.blur()},handleOpen:()=>{n.value?.handleOpen()},handleClose:()=>{n.value?.handleClose()}}),()=>{const r=e.format??wl;return Y(kk,dt(e,{ref:n,type:o,format:r,"onUpdate:modelValue":s}),{default:l=>Y(a,l,null)})}}});const q8=rt(U8),us=Ce({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:ia},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),Y8={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},G8=["aria-label"],X8=["aria-label"];var J8=se({name:"ElTag",__name:"tag",props:us,emits:Y8,setup(e,{emit:t}){const n=e,o=t,a=Cn(),{t:s}=Ct(),r=fe("tag"),l=w(()=>{const{type:f,hit:v,effect:g,closable:p,round:h}=n;return[r.b(),r.is("closable",p),r.m(f||"primary"),r.m(a.value),r.m(g),r.is("hit",v),r.is("round",h)]}),u=f=>{o("close",f)},c=f=>{o("click",f)},d=f=>{f?.component?.subTree?.component?.bum&&(f.component.subTree.component.bum=null)};return(f,v)=>e.disableTransitions?(x(),B("span",{key:0,class:T(l.value),style:Ke({backgroundColor:e.color}),onClick:c},[z("span",{class:T(i(r).e("content"))},[ee(f.$slots,"default")],2),e.closable?(x(),B("button",{key:0,"aria-label":i(s)("el.tag.close"),class:T(i(r).e("close")),type:"button",onClick:Xe(u,["stop"])},[Y(i(De),null,{default:J(()=>[Y(i(Ko))]),_:1})],10,G8)):te("v-if",!0)],6)):(x(),ae(Vn,{key:1,name:`${i(r).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:d},{default:J(()=>[z("span",{class:T(l.value),style:Ke({backgroundColor:e.color}),onClick:c},[z("span",{class:T(i(r).e("content"))},[ee(f.$slots,"default")],2),e.closable?(x(),B("button",{key:0,"aria-label":i(s)("el.tag.close"),class:T(i(r).e("close")),type:"button",onClick:Xe(u,["stop"])},[Y(i(De),null,{default:J(()=>[Y(i(Ko))]),_:1})],10,X8)):te("v-if",!0)],6)]),_:3},8,["name"]))}}),Z8=J8;const ts=rt(Z8),Lk=Symbol("ElSelectGroup"),wu=Symbol("ElSelect"),rd={label:"label",value:"value",disabled:"disabled",options:"options"};function Su(e){const t=M({...rd,...e.props});let n={...e.props};return le(()=>e.props,l=>{sn(l,n)||(t.value={...rd,...l},n={...l})},{deep:!0}),{aliasProps:t,getLabel:l=>wn(l,t.value.label),getValue:l=>wn(l,t.value.value),getDisabled:l=>wn(l,t.value.disabled),getOptions:l=>wn(l,t.value.options)}}const Dk=Ce({name:String,id:String,modelValue:{type:G([Array,String,Number,Boolean,Object]),default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:Tn,effect:{type:G(String),default:"light"},disabled:{type:Boolean,default:void 0},clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},popperStyle:{type:G([String,Object])},popperOptions:{type:G(Object),default:()=>({})},remote:Boolean,debounce:{type:Number,default:300},loadingText:String,noMatchText:String,noDataText:String,remoteMethod:{type:G(Function)},filterMethod:{type:G(Function)},multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:Boolean,tagTooltip:{type:G(Object),default:()=>({})},maxCollapseTags:{type:Number,default:1},teleported:zt.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:Kt,default:Va},fitInputWidth:Boolean,suffixIcon:{type:Kt,default:Fa},tagType:{...us.type,default:"info"},tagEffect:{...us.effect,default:"light"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:G(String),values:Da,default:"bottom-start"},fallbackPlacements:{type:G(Array),default:["bottom-start","top-start","right","left"]},tabindex:{type:[String,Number],default:0},appendTo:zt.appendTo,options:{type:G(Array)},props:{type:G(Object),default:()=>rd},...Pr,...oo(["ariaLabel"])});ak.scroll;const ph="ElOption",Q8=Ce({value:{type:[String,Number,Boolean,Object],required:!0},label:{type:[String,Number]},created:Boolean,disabled:Boolean});function eF(e,t){const n=_e(wu);n||nn(ph,"usage: ");const o=_e(Lk,{disabled:!1}),a=w(()=>d(Nn(n.props.modelValue),e.value)),s=w(()=>{if(n.props.multiple){const g=Nn(n.props.modelValue??[]);return!a.value&&g.length>=n.props.multipleLimit&&n.props.multipleLimit>0}else return!1}),r=w(()=>e.label??(at(e.value)?"":e.value)),l=w(()=>e.value||e.label||""),u=w(()=>e.disabled||t.groupDisabled||s.value),c=ft(),d=(g=[],p)=>{if(at(e.value)){const h=n.props.valueKey;return g&&g.some(m=>qt(wn(m,h))===wn(p,h))}else return g&&g.includes(p)},f=()=>{u.value||(n.states.hoveringIndex=n.optionsArray.indexOf(c.proxy))},v=g=>{t.visible=new RegExp(Bv(g),"i").test(String(r.value))||e.created};return le(()=>r.value,()=>{!e.created&&!n.props.remote&&n.setSelected()}),le(()=>e.value,(g,p)=>{const{remote:h,valueKey:m}=n.props;if((h?g!==p:!sn(g,p))&&(n.onOptionDestroy(p,c.proxy),n.onOptionCreate(c.proxy)),!e.created&&!h){if(m&&at(g)&&at(p)&&g[m]===p[m])return;n.setSelected()}}),le(()=>o.disabled,()=>{t.groupDisabled=o.disabled},{immediate:!0}),{select:n,currentLabel:r,currentValue:l,itemSelected:a,isDisabled:u,hoverItem:f,updateOption:v}}var tF=se({name:ph,componentName:ph,props:Q8,setup(e){const t=fe("select"),n=zn(),o=w(()=>[t.be("dropdown","item"),t.is("disabled",i(l)),t.is("selected",i(r)),t.is("hovering",i(v))]),a=At({index:-1,groupDisabled:!1,visible:!0,hover:!1}),{currentLabel:s,itemSelected:r,isDisabled:l,select:u,hoverItem:c,updateOption:d}=eF(e,a),{visible:f,hover:v}=Mn(a),g=ft().proxy;u.onOptionCreate(g),Bt(()=>{const h=g.value;Re(()=>{const{selected:m}=u.states,b=m.some(k=>k.value===g.value);u.states.cachedOptions.get(h)===g&&!b&&u.states.cachedOptions.delete(h)}),u.onOptionDestroy(h,g)});function p(){l.value||u.handleOptionSelect(g)}return{ns:t,id:n,containerKls:o,currentLabel:s,itemSelected:r,isDisabled:l,select:u,visible:f,hover:v,states:a,hoverItem:c,updateOption:d,selectOptionClick:p}}});const nF=["id","aria-disabled","aria-selected"];function oF(e,t,n,o,a,s){return ut((x(),B("li",{id:e.id,class:T(e.containerKls),role:"option","aria-disabled":e.isDisabled||void 0,"aria-selected":e.itemSelected,onMousemove:t[0]||(t[0]=(...r)=>e.hoverItem&&e.hoverItem(...r)),onClick:t[1]||(t[1]=Xe((...r)=>e.selectOptionClick&&e.selectOptionClick(...r),["stop"]))},[ee(e.$slots,"default",{},()=>[z("span",null,Se(e.currentLabel),1)])],42,nF)),[[Pt,e.visible]])}var mm=$n(tF,[["render",oF]]),aF=se({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:Boolean},setup(e){const t=fe("select"),n=M(),o=ft(),a=M([]);St(Lk,At({...Mn(e)}));const s=w(()=>a.value.some(c=>c.visible===!0)),r=c=>c.type.name==="ElOption"&&!!c.component?.proxy,l=c=>{const d=Nn(c),f=[];return d.forEach(v=>{Ut(v)&&(r(v)?f.push(v.component.proxy):ye(v.children)&&v.children.length?f.push(...l(v.children)):v.component?.subTree&&f.push(...l(v.component.subTree)))}),f},u=()=>{a.value=l(o.subTree)};return ht(()=>{u()}),lu(n,u,{attributes:!0,subtree:!0,childList:!0}),{groupRef:n,visible:s,ns:t}}});function sF(e,t,n,o,a,s){return ut((x(),B("ul",{ref:"groupRef",class:T(e.ns.be("group","wrap"))},[z("li",{class:T(e.ns.be("group","title"))},Se(e.label),3),z("li",null,[z("ul",{class:T(e.ns.b("group"))},[ee(e.$slots,"default")],2)])],2)),[[Pt,e.visible]])}var gm=$n(aF,[["render",sF]]),rF=se({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=_e(wu),t=fe("select"),n=w(()=>e.props.popperClass),o=w(()=>e.props.multiple),a=w(()=>e.props.fitInputWidth),s=M("");function r(){const l=e.selectRef?.offsetWidth;l?s.value=`${l-Q1}px`:s.value=""}return ht(()=>{r(),en(e.selectRef,r)}),{ns:t,minWidth:s,popperClass:n,isMultiple:o,isFitInputWidth:a}}});function lF(e,t,n,o,a,s){return x(),B("div",{class:T([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:Ke({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[e.$slots.header?(x(),B("div",{key:0,class:T(e.ns.be("dropdown","header"))},[ee(e.$slots,"header")],2)):te("v-if",!0),ee(e.$slots,"default"),e.$slots.footer?(x(),B("div",{key:1,class:T(e.ns.be("dropdown","footer"))},[ee(e.$slots,"footer")],2)):te("v-if",!0)],6)}var iF=$n(rF,[["render",lF]]);const uF=(e,t)=>{const{t:n}=Ct(),o=vn(),a=zn(),s=fe("select"),r=fe("input"),l=At({inputValue:"",options:new Map,cachedOptions:new Map,optionValues:[],selected:[],selectionWidth:0,collapseItemWidth:0,selectedLabel:"",hoveringIndex:-1,previousQuery:null,inputHovering:!1,menuVisibleOnFocus:!1,isBeforeHide:!1}),u=M(),c=M(),d=M(),f=M(),v=M(),g=M(),p=M(),h=M(),m=M(),b=M(),k=M(),y=M(!1),S=M(),C=M(!1),{form:E,formItem:$}=Dn(),{inputId:O}=Po(e,{formItemContext:$}),{valueOnClear:N,isEmptyValue:R}=mu(e),{isComposing:A,handleCompositionStart:_,handleCompositionUpdate:V,handleCompositionEnd:H}=vu({afterComposition:Te=>Rt(Te)}),U=un(),{wrapperRef:W,isFocused:P,handleBlur:I}=ms(v,{disabled:U,afterFocus(){e.automaticDropdown&&!y.value&&(y.value=!0,l.menuVisibleOnFocus=!0)},beforeBlur(Te){return d.value?.isFocusInsideContent(Te)||f.value?.isFocusInsideContent(Te)},afterBlur(){y.value=!1,l.menuVisibleOnFocus=!1,e.validateEvent&&$?.validate?.("blur").catch(Te=>pt(Te))}}),L=w(()=>ye(e.modelValue)?e.modelValue.length>0:!R(e.modelValue)),D=w(()=>E?.statusIcon??!1),F=w(()=>e.clearable&&!U.value&&L.value&&(P.value||l.inputHovering)),q=w(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),j=w(()=>s.is("reverse",!!(q.value&&y.value))),X=w(()=>$?.validateState||""),Q=w(()=>X.value&&af[X.value]),he=w(()=>e.remote?e.debounce:0),ue=w(()=>e.remote&&!l.inputValue&&l.options.size===0),ge=w(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&l.inputValue&&l.options.size>0&&ie.value===0?e.noMatchText||n("el.select.noMatch"):l.options.size===0?e.noDataText||n("el.select.noData"):null),ie=w(()=>oe.value.filter(Te=>Te.visible).length),oe=w(()=>{const Te=Array.from(l.options.values()),vt=[];return l.optionValues.forEach(Lt=>{const Yt=Te.findIndex(En=>En.value===Lt);Yt>-1&&vt.push(Te[Yt])}),vt.length>=Te.length?vt:Te}),ne=w(()=>Array.from(l.cachedOptions.values())),K=w(()=>{const Te=oe.value.filter(vt=>!vt.created).some(vt=>vt.currentLabel===l.inputValue);return e.filterable&&e.allowCreate&&l.inputValue!==""&&!Te}),Z=()=>{e.filterable&&Ve(e.filterMethod)||e.filterable&&e.remote&&Ve(e.remoteMethod)||oe.value.forEach(Te=>{Te.updateOption?.(l.inputValue)})},re=Cn(),ce=w(()=>["small"].includes(re.value)?"small":"default"),ve=w({get(){return y.value&&(e.loading||!ue.value||e.remote&&!!o.empty)&&(!C.value||!io(l.previousQuery))},set(Te){y.value=Te}}),ke=w(()=>{if(e.multiple&&!Tt(e.modelValue))return Nn(e.modelValue).length===0&&!l.inputValue;const Te=ye(e.modelValue)?e.modelValue[0]:e.modelValue;return e.filterable||Tt(Te)?!l.inputValue:!0}),Ne=w(()=>{const Te=e.placeholder??n("el.select.placeholder");return e.multiple||!L.value?Te:l.selectedLabel}),Ie=w(()=>Zc?null:"mouseenter");le(()=>e.modelValue,(Te,vt)=>{e.multiple&&e.filterable&&!e.reserveKeyword&&(l.inputValue="",$e("")),Ee(),!sn(Te,vt)&&e.validateEvent&&$?.validate("change").catch(Lt=>pt(Lt))},{flush:"post",deep:!0}),le(()=>y.value,Te=>{Te?$e(l.inputValue):(l.inputValue="",l.previousQuery=null,l.isBeforeHide=!0,l.menuVisibleOnFocus=!1)}),le(()=>l.options.entries(),()=>{Mt&&(Ee(),e.defaultFirstOption&&(e.filterable||e.remote)&&ie.value&&pe())},{flush:"post"}),le([()=>l.hoveringIndex,oe],([Te])=>{He(Te)&&Te>-1?S.value=oe.value[Te]||{}:S.value={},oe.value.forEach(vt=>{vt.hover=S.value===vt})}),So(()=>{l.isBeforeHide||Z()});const $e=Te=>{l.previousQuery===Te||A.value||(l.previousQuery=Te,e.filterable&&Ve(e.filterMethod)?e.filterMethod(Te):e.filterable&&e.remote&&Ve(e.remoteMethod)&&e.remoteMethod(Te),e.defaultFirstOption&&(e.filterable||e.remote)&&ie.value?Re(pe):Re(Me))},pe=()=>{const Te=oe.value.filter(Yt=>Yt.visible&&!Yt.disabled&&!Yt.states.groupDisabled),vt=Te.find(Yt=>Yt.created),Lt=Te[0];l.hoveringIndex=Ge(oe.value.map(Yt=>Yt.value),vt||Lt)},Ee=()=>{if(e.multiple)l.selectedLabel="";else{const vt=me(ye(e.modelValue)?e.modelValue[0]:e.modelValue);l.selectedLabel=vt.currentLabel,l.selected=[vt];return}const Te=[];Tt(e.modelValue)||Nn(e.modelValue).forEach(vt=>{Te.push(me(vt))}),l.selected=Te},me=Te=>{let vt;const Lt=mi(Te);for(let Yt=l.cachedOptions.size-1;Yt>=0;Yt--){const En=ne.value[Yt];if(Lt?wn(En.value,e.valueKey)===wn(Te,e.valueKey):En.value===Te){vt={index:oe.value.filter(va=>!va.created).indexOf(En),value:Te,currentLabel:En.currentLabel,get isDisabled(){return En.isDisabled}};break}}return vt||{index:-1,value:Te,currentLabel:Lt?Te.label:Te??""}},Me=()=>{const Te=l.selected.length;if(Te>0){const vt=l.selected[Te-1];l.hoveringIndex=oe.value.findIndex(Lt=>ao(vt)===ao(Lt))}else l.hoveringIndex=-1},We=()=>{l.selectionWidth=Number.parseFloat(window.getComputedStyle(c.value).width)},Ze=()=>{l.collapseItemWidth=b.value.getBoundingClientRect().width},Pe=()=>{d.value?.updatePopper?.()},Ae=()=>{f.value?.updatePopper?.()},je=()=>{l.inputValue.length>0&&!y.value&&(y.value=!0),$e(l.inputValue)},Rt=Te=>{if(l.inputValue=Te.target.value,e.remote)C.value=!0,Ue();else return je()},Ue=ru(()=>{je(),C.value=!1},he),lt=Te=>{sn(e.modelValue,Te)||t(bt,Te)},mt=Te=>AS(Te,vt=>{const Lt=l.cachedOptions.get(vt);return!Lt?.disabled&&!Lt?.states.groupDisabled}),kt=Te=>{const vt=jt(Te);if(e.multiple&&vt!==we.delete&&Te.target.value.length<=0){const Lt=Nn(e.modelValue).slice(),Yt=mt(Lt);if(Yt<0)return;const En=Lt[Yt];Lt.splice(Yt,1),t(ot,Lt),lt(Lt),t("remove-tag",En)}},be=(Te,vt)=>{const Lt=l.selected.indexOf(vt);if(Lt>-1&&!U.value){const Yt=Nn(e.modelValue).slice();Yt.splice(Lt,1),t(ot,Yt),lt(Yt),t("remove-tag",vt.value)}Te.stopPropagation(),ct()},ze=Te=>{Te.stopPropagation();const vt=e.multiple?[]:N.value;if(e.multiple)for(const Lt of l.selected)Lt.isDisabled&&vt.push(Lt.value);t(ot,vt),lt(vt),l.hoveringIndex=-1,y.value=!1,t("clear"),ct()},de=Te=>{if(e.multiple){const vt=Nn(e.modelValue??[]).slice(),Lt=Ge(vt,Te);Lt>-1?vt.splice(Lt,1):(e.multipleLimit<=0||vt.length{$t(Te)})},Ge=(Te,vt)=>Tt(vt)?-1:at(vt.value)?Te.findIndex(Lt=>sn(wn(Lt,e.valueKey),ao(vt))):Te.indexOf(vt.value),$t=Te=>{const vt=ye(Te)?Te[Te.length-1]:Te;let Lt=null;if(!bn(vt?.value)){const Yt=oe.value.filter(En=>En.value===vt.value);Yt.length>0&&(Lt=Yt[0].$el)}if(d.value&&Lt){const Yt=d.value?.popperRef?.contentRef?.querySelector?.(`.${s.be("dropdown","wrap")}`);Yt&&zv(Yt,Lt)}k.value?.handleScroll()},tn=Te=>{l.options.set(Te.value,Te),l.cachedOptions.set(Te.value,Te)},_n=(Te,vt)=>{l.options.get(Te)===vt&&l.options.delete(Te)},Be=w(()=>d.value?.popperRef?.contentRef),nt=()=>{l.isBeforeHide=!1,Re(()=>{k.value?.update(),$t(l.selected)})},ct=()=>{v.value?.focus()},kn=()=>{if(y.value){y.value=!1,Re(()=>v.value?.blur());return}v.value?.blur()},Wt=Te=>{ze(Te)},yn=Te=>{if(y.value=!1,P.value){const vt=new FocusEvent("blur",Te);Re(()=>I(vt))}},Qe=()=>{l.inputValue.length>0?l.inputValue="":y.value=!1},tt=Te=>{U.value||e.filterable&&y.value&&Te&&!p.value?.contains(Te.target)||(Zc&&(l.inputHovering=!0),l.menuVisibleOnFocus?l.menuVisibleOnFocus=!1:y.value=!y.value)},gt=()=>{if(!y.value)tt();else{const Te=oe.value[l.hoveringIndex];Te&&!Te.isDisabled&&de(Te)}},ao=Te=>at(Te.value)?wn(Te.value,e.valueKey):Te.value,ha=w(()=>oe.value.filter(Te=>Te.visible).every(Te=>Te.isDisabled)),jo=w(()=>e.multiple?e.collapseTags?l.selected.slice(0,e.maxCollapseTags):l.selected:[]),Nu=w(()=>e.multiple?e.collapseTags?l.selected.slice(e.maxCollapseTags):[]:[]),js=Te=>{if(!y.value){y.value=!0;return}if(!(l.options.size===0||ie.value===0||A.value)&&!ha.value){Te==="next"?(l.hoveringIndex++,l.hoveringIndex===l.options.size&&(l.hoveringIndex=0)):Te==="prev"&&(l.hoveringIndex--,l.hoveringIndex<0&&(l.hoveringIndex=l.options.size-1));const vt=oe.value[l.hoveringIndex];(vt.isDisabled||!vt.visible)&&js(Te),Re(()=>$t(S.value))}},Iu=(Te,vt,Lt,Yt)=>{for(let En=vt;En>=0&&En{const Lt=l.options.size;if(Lt===0)return;const Yt=or(Te,0,Lt-1),En=oe.value,va=vt==="up"?-1:1,Ar=Iu(En,Yt,va,Lt)??Iu(En,Yt-va,-va,Lt);Ar!=null&&(l.hoveringIndex=Ar,Re(()=>$t(S.value)))},Cf=Te=>{const vt=jt(Te);let Lt=!0;switch(vt){case we.up:js("prev");break;case we.down:js("next");break;case we.enter:case we.numpadEnter:A.value||gt();break;case we.esc:Qe();break;case we.backspace:Lt=!1,kt(Te);return;case we.home:if(!y.value)return;za(0,"down");break;case we.end:if(!y.value)return;za(l.options.size-1,"up");break;case we.pageUp:if(!y.value)return;za(l.hoveringIndex-10,"up");break;case we.pageDown:if(!y.value)return;za(l.hoveringIndex+10,"down");break;default:Lt=!1;break}Lt&&(Te.preventDefault(),Te.stopPropagation())},kf=()=>{if(!c.value)return 0;const Te=window.getComputedStyle(c.value);return Number.parseFloat(Te.gap||"6px")},Ef=w(()=>{const Te=kf(),vt=e.filterable?Te+Dd:0;return{maxWidth:`${b.value&&e.maxCollapseTags===1?l.selectionWidth-l.collapseItemWidth-Te-vt:l.selectionWidth-vt}px`}}),xf=w(()=>({maxWidth:`${l.selectionWidth}px`})),Tf=Te=>{t("popup-scroll",Te)};en(c,We),en(W,Pe),en(m,Ae),en(b,Ze);let _r;return le(()=>ve.value,Te=>{Te?_r=en(h,Pe).stop:(_r?.(),_r=void 0),t("visible-change",Te)}),ht(()=>{Ee()}),{inputId:O,contentId:a,nsSelect:s,nsInput:r,states:l,isFocused:P,expanded:y,optionsArray:oe,hoverOption:S,selectSize:re,filteredOptionsCount:ie,updateTooltip:Pe,updateTagTooltip:Ae,debouncedOnInputChange:Ue,onInput:Rt,deletePrevTag:kt,deleteTag:be,deleteSelected:ze,handleOptionSelect:de,scrollToOption:$t,hasModelValue:L,shouldShowPlaceholder:ke,currentPlaceholder:Ne,mouseEnterEventName:Ie,needStatusIcon:D,showClearBtn:F,iconComponent:q,iconReverse:j,validateState:X,validateIcon:Q,showNewOption:K,updateOptions:Z,collapseTagSize:ce,setSelected:Ee,selectDisabled:U,emptyText:ge,handleCompositionStart:_,handleCompositionUpdate:V,handleCompositionEnd:H,handleKeydown:Cf,onOptionCreate:tn,onOptionDestroy:_n,handleMenuEnter:nt,focus:ct,blur:kn,handleClearClick:Wt,handleClickOutside:yn,handleEsc:Qe,toggleMenu:tt,selectOption:gt,getValueKey:ao,navigateOptions:js,dropdownMenuVisible:ve,showTagList:jo,collapseTagList:Nu,popupScroll:Tf,getOption:me,tagStyle:Ef,collapseTagStyle:xf,popperRef:Be,inputRef:v,tooltipRef:d,tagTooltipRef:f,prefixRef:g,suffixRef:p,selectRef:u,wrapperRef:W,selectionRef:c,scrollbarRef:k,menuRef:h,tagMenuRef:m,collapseItemRef:b}};var cF=se({name:"ElOptions",setup(e,{slots:t}){const n=_e(wu);let o=[];return()=>{const a=t.default?.(),s=[];function r(l){ye(l)&&l.forEach(u=>{const c=(u?.type||{})?.name;c==="ElOptionGroup"?r(!Le(u.children)&&!ye(u.children)&&Ve(u.children?.default)?u.children?.default():u.children):c==="ElOption"?s.push(u.props?.value):ye(u.children)&&r(u.children)})}return a.length&&r(a[0]?.children),sn(s,o)||(o=s,n&&(n.states.optionValues=s)),a}}});const Yy="ElSelect",Ai=new WeakMap,dF=e=>(...t)=>{const n=t[0];if(!n||n.includes('Slot "default" invoked outside of the render function')&&t[2]?.includes("ElTreeSelect"))return;const o=Ai.get(e)?.originalWarnHandler;if(o){o(...t);return}console.warn(...t)},fF=e=>{let t=Ai.get(e);return t||(t={originalWarnHandler:e.config.warnHandler,handler:dF(e),count:0},Ai.set(e,t)),t};var pF=se({name:Yy,componentName:Yy,components:{ElSelectMenu:iF,ElOption:mm,ElOptions:cF,ElOptionGroup:gm,ElTag:ts,ElScrollbar:aa,ElTooltip:Ln,ElIcon:De},directives:{ClickOutside:zs},props:Dk,emits:[ot,bt,"remove-tag","clear","visible-change","focus","blur","popup-scroll"],setup(e,{emit:t,slots:n}){const o=ft(),a=fF(o.appContext);a.count+=1,o.appContext.config.warnHandler=a.handler;const s=w(()=>{const{modelValue:k,multiple:y}=e,S=y?[]:void 0;return ye(k)?y?k:S:y?S:k}),r=At({...Mn(e),modelValue:s}),l=uF(r,t),{calculatorRef:u,inputStyle:c}=Dv(),{getLabel:d,getValue:f,getOptions:v,getDisabled:g}=Su(e),p=k=>({label:d(k),value:f(k),disabled:g(k)}),h=k=>k.reduce((y,S)=>(y.push(S),S.children&&S.children.length>0&&y.push(...h(S.children)),y),[]),m=k=>{$o(k||[]).forEach(y=>{if(at(y)&&(y.type.name==="ElOption"||y.type.name==="ElTree")){const S=y.type.name;if(S==="ElTree")h(y.props?.data||[]).forEach(C=>{C.currentLabel=C.label||(at(C.value)?"":C.value),l.onOptionCreate(C)});else if(S==="ElOption"){const C={...y.props};C.currentLabel=C.label||(at(C.value)?"":C.value),l.onOptionCreate(C)}}})};le(()=>[e.persistent||l.expanded.value||!n.default?void 0:n.default?.(),s.value],()=>{e.persistent||l.expanded.value||(l.states.options.clear(),m(n.default?.()))},{immediate:!0}),St(wu,At({props:r,states:l.states,selectRef:l.selectRef,optionsArray:l.optionsArray,setSelected:l.setSelected,handleOptionSelect:l.handleOptionSelect,onOptionCreate:l.onOptionCreate,onOptionDestroy:l.onOptionDestroy}));const b=w(()=>e.multiple?l.states.selected.map(k=>k.currentLabel):l.states.selectedLabel);return Bt(()=>{const k=Ai.get(o.appContext);k&&(k.count-=1,k.count<=0&&(o.appContext.config.warnHandler=k.originalWarnHandler,Ai.delete(o.appContext)))}),{...l,modelValue:s,selectedLabel:b,calculatorRef:u,inputStyle:c,getLabel:d,getValue:f,getOptions:v,getDisabled:g,getOptionProps:p}}});const hF=["id","value","name","disabled","autocomplete","tabindex","readonly","aria-activedescendant","aria-controls","aria-expanded","aria-label"],vF=["textContent"],mF={key:1};function gF(e,t,n,o,a,s){const r=It("el-tag"),l=It("el-tooltip"),u=It("el-icon"),c=It("el-option"),d=It("el-option-group"),f=It("el-options"),v=It("el-scrollbar"),g=It("el-select-menu"),p=cv("click-outside");return ut((x(),B("div",dt({ref:"selectRef",class:[e.nsSelect.b(),e.nsSelect.m(e.selectSize)]},{[ti(e.mouseEnterEventName)]:t[11]||(t[11]=h=>e.states.inputHovering=!0)},{onMouseleave:t[12]||(t[12]=h=>e.states.inputHovering=!1)}),[Y(l,{ref:"tooltipRef",visible:e.dropdownMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-style":e.popperStyle,"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:t[10]||(t[10]=h=>e.states.isBeforeHide=!1)},{default:J(()=>[z("div",{ref:"wrapperRef",class:T([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:t[7]||(t[7]=Xe((...h)=>e.toggleMenu&&e.toggleMenu(...h),["prevent"]))},[e.$slots.prefix?(x(),B("div",{key:0,ref:"prefixRef",class:T(e.nsSelect.e("prefix"))},[ee(e.$slots,"prefix")],2)):te("v-if",!0),z("div",{ref:"selectionRef",class:T([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.states.selected.length)])},[e.multiple?ee(e.$slots,"tag",{key:0,data:e.states.selected,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(x(!0),B(Fe,null,yt(e.showTagList,h=>(x(),B("div",{key:e.getValueKey(h),class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!e.selectDisabled&&!h.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:Ke(e.tagStyle),onClose:m=>e.deleteTag(m,h)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:h.index,label:h.currentLabel,value:h.value},()=>[wt(Se(h.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.selected.length>e.maxCollapseTags?(x(),ae(l,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":e.tagTooltip?.fallbackPlacements??["bottom","top","right","left"],effect:e.tagTooltip?.effect??e.effect,placement:e.tagTooltip?.placement??"bottom","popper-class":e.tagTooltip?.popperClass??e.popperClass,"popper-style":e.tagTooltip?.popperStyle??e.popperStyle,teleported:e.tagTooltip?.teleported??e.teleported,"append-to":e.tagTooltip?.appendTo??e.appendTo,"popper-options":e.tagTooltip?.popperOptions??e.popperOptions,transition:e.tagTooltip?.transition,"show-after":e.tagTooltip?.showAfter,"hide-after":e.tagTooltip?.hideAfter,"auto-close":e.tagTooltip?.autoClose,offset:e.tagTooltip?.offset},{default:J(()=>[z("div",{ref:"collapseItemRef",class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:Ke(e.collapseTagStyle)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))}," + "+Se(e.states.selected.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:J(()=>[z("div",{ref:"tagMenuRef",class:T(e.nsSelect.e("selection"))},[(x(!0),B(Fe,null,yt(e.collapseTagList,h=>(x(),B("div",{key:e.getValueKey(h),class:T(e.nsSelect.e("selected-item"))},[Y(r,{class:"in-tooltip",closable:!e.selectDisabled&&!h.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:m=>e.deleteTag(m,h)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:h.index,label:h.currentLabel,value:h.value},()=>[wt(Se(h.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","fallback-placements","effect","placement","popper-class","popper-style","teleported","append-to","popper-options","transition","show-after","hide-after","auto-close","offset"])):te("v-if",!0)]):te("v-if",!0),z("div",{class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable||e.selectDisabled||!e.states.inputValue&&!e.isFocused)])},[z("input",{id:e.inputId,ref:"inputRef",value:e.states.inputValue,type:"text",name:e.name,class:T([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:Ke(e.inputStyle),tabindex:e.tabindex,role:"combobox",readonly:!e.filterable,spellcheck:"false","aria-activedescendant":e.hoverOption?.id||"","aria-controls":e.contentId,"aria-expanded":e.dropdownMenuVisible,"aria-label":e.ariaLabel,"aria-autocomplete":"none","aria-haspopup":"listbox",onKeydown:t[0]||(t[0]=(...h)=>e.handleKeydown&&e.handleKeydown(...h)),onCompositionstart:t[1]||(t[1]=(...h)=>e.handleCompositionStart&&e.handleCompositionStart(...h)),onCompositionupdate:t[2]||(t[2]=(...h)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...h)),onCompositionend:t[3]||(t[3]=(...h)=>e.handleCompositionEnd&&e.handleCompositionEnd(...h)),onInput:t[4]||(t[4]=(...h)=>e.onInput&&e.onInput(...h)),onChange:t[5]||(t[5]=Xe(()=>{},["stop"])),onClick:t[6]||(t[6]=Xe((...h)=>e.toggleMenu&&e.toggleMenu(...h),["stop"]))},null,46,hF),e.filterable?(x(),B("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:T(e.nsSelect.e("input-calculator")),textContent:Se(e.states.inputValue)},null,10,vF)):te("v-if",!0)],2),e.shouldShowPlaceholder?(x(),B("div",{key:1,class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?ee(e.$slots,"label",{key:0,index:e.getOption(e.modelValue).index,label:e.currentPlaceholder,value:e.modelValue},()=>[z("span",null,Se(e.currentPlaceholder),1)]):(x(),B("span",mF,Se(e.currentPlaceholder),1))],2)):te("v-if",!0)],2),z("div",{ref:"suffixRef",class:T(e.nsSelect.e("suffix"))},[e.iconComponent&&!e.showClearBtn?(x(),ae(u,{key:0,class:T([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:J(()=>[(x(),ae(it(e.iconComponent)))]),_:1},8,["class"])):te("v-if",!0),e.showClearBtn&&e.clearIcon?(x(),ae(u,{key:1,class:T([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.nsSelect.e("clear")]),onClick:e.handleClearClick},{default:J(()=>[(x(),ae(it(e.clearIcon)))]),_:1},8,["class","onClick"])):te("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(x(),ae(u,{key:2,class:T([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:J(()=>[(x(),ae(it(e.validateIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)]),content:J(()=>[Y(g,{ref:"menuRef"},{default:J(()=>[e.$slots.header?(x(),B("div",{key:0,class:T(e.nsSelect.be("dropdown","header")),onClick:t[8]||(t[8]=Xe(()=>{},["stop"]))},[ee(e.$slots,"header")],2)):te("v-if",!0),ut(Y(v,{id:e.contentId,ref:"scrollbarRef",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:T([e.nsSelect.is("empty",e.filteredOptionsCount===0)]),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical",onScroll:e.popupScroll},{default:J(()=>[e.showNewOption?(x(),ae(c,{key:0,value:e.states.inputValue,created:!0},null,8,["value"])):te("v-if",!0),Y(f,null,{default:J(()=>[ee(e.$slots,"default",{},()=>[(x(!0),B(Fe,null,yt(e.options,(h,m)=>(x(),B(Fe,{key:m},[e.getOptions(h)?.length?(x(),ae(d,{key:0,label:e.getLabel(h),disabled:e.getDisabled(h)},{default:J(()=>[(x(!0),B(Fe,null,yt(e.getOptions(h),b=>(x(),ae(c,dt({key:e.getValue(b)},{ref_for:!0},e.getOptionProps(b)),null,16))),128))]),_:2},1032,["label","disabled"])):(x(),ae(c,dt({key:1,ref_for:!0},e.getOptionProps(h)),null,16))],64))),128))])]),_:3})]),_:3},8,["id","wrap-class","view-class","class","aria-label","onScroll"]),[[Pt,e.states.options.size>0&&!e.loading]]),e.$slots.loading&&e.loading?(x(),B("div",{key:1,class:T(e.nsSelect.be("dropdown","loading"))},[ee(e.$slots,"loading")],2)):e.loading||e.filteredOptionsCount===0?(x(),B("div",{key:2,class:T(e.nsSelect.be("dropdown","empty"))},[ee(e.$slots,"empty",{},()=>[z("span",null,Se(e.emptyText),1)])],2)):te("v-if",!0),e.$slots.footer?(x(),B("div",{key:3,class:T(e.nsSelect.be("dropdown","footer")),onClick:t[9]||(t[9]=Xe(()=>{},["stop"]))},[ee(e.$slots,"footer")],2)):te("v-if",!0)]),_:3},512)]),_:3},8,["visible","placement","teleported","popper-class","popper-style","popper-options","fallback-placements","effect","transition","persistent","append-to","show-arrow","offset","onBeforeShow"])],16)),[[p,e.handleClickOutside,e.popperRef]])}var bF=$n(pF,[["render",gF]]);const Hs=rt(bF,{Option:mm,OptionGroup:gm}),ld=on(mm),yF=on(gm),wF=(e,t)=>{const n=e.subtract(1,"month").endOf("month").date();return _s(t).map((o,a)=>n-(t-a-1))},SF=e=>_s(e.daysInMonth()).map((t,n)=>n+1),CF=e=>_s(e.length/7).map(t=>{const n=t*7;return e.slice(n,n+7)}),kF=Ce({selectedDay:{type:G(Object)},range:{type:G(Array)},date:{type:G(Object),required:!0},hideHeader:{type:Boolean}}),EF={pick:e=>at(e)};var Cc={exports:{}},xF=Cc.exports,Gy;function TF(){return Gy||(Gy=1,(function(e,t){(function(n,o){e.exports=o()})(xF,(function(){return function(n,o,a){var s=o.prototype,r=function(f){return f&&(f.indexOf?f:f.s)},l=function(f,v,g,p,h){var m=f.name?f:f.$locale(),b=r(m[v]),k=r(m[g]),y=b||k.map((function(C){return C.slice(0,p)}));if(!h)return y;var S=m.weekStart;return y.map((function(C,E){return y[(E+(S||0))%7]}))},u=function(){return a.Ls[a.locale()]},c=function(f,v){return f.formats[v]||(function(g){return g.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(p,h,m){return h||m.slice(1)}))})(f.formats[v.toUpperCase()])},d=function(){var f=this;return{months:function(v){return v?v.format("MMMM"):l(f,"months")},monthsShort:function(v){return v?v.format("MMM"):l(f,"monthsShort","months",3)},firstDayOfWeek:function(){return f.$locale().weekStart||0},weekdays:function(v){return v?v.format("dddd"):l(f,"weekdays")},weekdaysMin:function(v){return v?v.format("dd"):l(f,"weekdaysMin","weekdays",2)},weekdaysShort:function(v){return v?v.format("ddd"):l(f,"weekdaysShort","weekdays",3)},longDateFormat:function(v){return c(f.$locale(),v)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};s.localeData=function(){return d.bind(this)()},a.localeData=function(){var f=u();return{firstDayOfWeek:function(){return f.weekStart||0},weekdays:function(){return a.weekdays()},weekdaysShort:function(){return a.weekdaysShort()},weekdaysMin:function(){return a.weekdaysMin()},months:function(){return a.months()},monthsShort:function(){return a.monthsShort()},longDateFormat:function(v){return c(f,v)},meridiem:f.meridiem,ordinal:f.ordinal}},a.months=function(){return l(u(),"months")},a.monthsShort=function(){return l(u(),"monthsShort","months",3)},a.weekdays=function(f){return l(u(),"weekdays",null,null,f)},a.weekdaysShort=function(f){return l(u(),"weekdaysShort","weekdays",3,f)},a.weekdaysMin=function(f){return l(u(),"weekdaysMin","weekdays",2,f)}}}))})(Cc)),Cc.exports}var $F=TF();const Bk=bs($F),OF=(e,t)=>{st.extend(Bk);const n=st.localeData().firstDayOfWeek(),{t:o,lang:a}=Ct(),s=st().locale(a.value),r=w(()=>!!e.range&&!!e.range.length),l=w(()=>{let v=[];if(r.value){const[g,p]=e.range,h=_s(p.date()-g.date()+1).map(k=>({text:g.date()+k,type:"current"}));let m=h.length%7;m=m===0?0:7-m;const b=_s(m).map((k,y)=>({text:y+1,type:"next"}));v=h.concat(b)}else{const g=e.date.startOf("month").day(),p=wF(e.date,(g-n+7)%7).map(b=>({text:b,type:"prev"})),h=SF(e.date).map(b=>({text:b,type:"current"}));v=[...p,...h];const m=_s(7-(v.length%7||7)).map((b,k)=>({text:k+1,type:"next"}));v=v.concat(m)}return CF(v)}),u=w(()=>{const v=n;return v===0?Bf.map(g=>o(`el.datepicker.weeks.${g}`)):Bf.slice(v).concat(Bf.slice(0,v)).map(g=>o(`el.datepicker.weeks.${g}`))}),c=(v,g)=>{switch(g){case"prev":return e.date.startOf("month").subtract(1,"month").date(v);case"next":return e.date.startOf("month").add(1,"month").date(v);case"current":return e.date.date(v)}};return{now:s,isInRange:r,rows:l,weekDays:u,getFormattedDate:c,handlePickDay:({text:v,type:g})=>{t("pick",c(v,g))},getSlotData:({text:v,type:g})=>{const p=c(v,g);return{isSelected:p.isSame(e.selectedDay),type:`${g}-month`,day:p.format("YYYY-MM-DD"),date:p.toDate()}}}},RF={key:0},NF=["onClick"];var IF=se({name:"DateTable",__name:"date-table",props:kF,emits:EF,setup(e,{expose:t,emit:n}){const o=e,{isInRange:a,now:s,rows:r,weekDays:l,getFormattedDate:u,handlePickDay:c,getSlotData:d}=OF(o,n),f=fe("calendar-table"),v=fe("calendar-day"),g=({text:p,type:h})=>{const m=[h];if(h==="current"){const b=u(p,h);b.isSame(o.selectedDay,"day")&&m.push(v.is("selected")),b.isSame(s,"day")&&m.push(v.is("today"))}return m};return t({getFormattedDate:u}),(p,h)=>(x(),B("table",{class:T([i(f).b(),i(f).is("range",i(a))]),cellspacing:"0",cellpadding:"0"},[e.hideHeader?te("v-if",!0):(x(),B("thead",RF,[z("tr",null,[(x(!0),B(Fe,null,yt(i(l),m=>(x(),B("th",{key:m,scope:"col"},Se(m),1))),128))])])),z("tbody",null,[(x(!0),B(Fe,null,yt(i(r),(m,b)=>(x(),B("tr",{key:b,class:T({[i(f).e("row")]:!0,[i(f).em("row","hide-border")]:b===0&&e.hideHeader})},[(x(!0),B(Fe,null,yt(m,(k,y)=>(x(),B("td",{key:y,class:T(g(k)),onClick:S=>i(c)(k)},[z("div",{class:T(i(v).b())},[ee(p.$slots,"date-cell",{data:i(d)(k)},()=>[z("span",null,Se(k.text),1)])],2)],10,NF))),128))],2))),128))])],2))}}),Xy=IF;const PF=(e,t)=>{const n=e.endOf("month"),o=t.startOf("month"),a=n.isSame(o,"week")?o.add(1,"week"):o;return[[e,n],[a.startOf("week"),t]]},MF=(e,t)=>{const n=e.endOf("month"),o=e.add(1,"month").startOf("month"),a=n.isSame(o,"week")?o.add(1,"week"):o,s=a.endOf("month"),r=t.startOf("month"),l=s.isSame(r,"week")?r.add(1,"week"):r;return[[e,n],[a.startOf("week"),s],[l.startOf("week"),t]]},_F=(e,t,n)=>{const{lang:o}=Ct(),a=M(),s=st().locale(o.value),r=w({get(){return e.modelValue?u.value:a.value},set(b){if(!b)return;a.value=b;const k=b.toDate();t(Sn,k),t(ot,k)}}),l=w(()=>{if(!e.range||!ye(e.range)||e.range.length!==2||e.range.some(y=>!As(y)))return[];const[b,k]=e.range.map(y=>st(y).locale(o.value));return b.isAfter(k)?(pt(n,"end time should be greater than start time"),[]):b.isSame(k,"month")?g(b,k):b.add(1,"month").month()!==k.month()?(pt(n,"start time and end time interval must not exceed two months"),[]):g(b,k)}),u=w(()=>e.modelValue?st(e.modelValue).locale(o.value):r.value||(l.value.length?l.value[0][0]:s)),c=w(()=>u.value.subtract(1,"month").date(1)),d=w(()=>u.value.add(1,"month").date(1)),f=w(()=>u.value.subtract(1,"year").date(1)),v=w(()=>u.value.add(1,"year").date(1)),g=(b,k)=>{const y=b.startOf("week"),S=k.endOf("week"),C=y.get("month"),E=S.get("month");return C===E?[[y,S]]:(C+1)%12===E?PF(y,S):C+2===E||(C+1)%11===E?MF(y,S):(pt(n,"start time and end time interval must not exceed two months"),[])},p=b=>{r.value=b},h=b=>{const k={"prev-month":c.value,"next-month":d.value,"prev-year":f.value,"next-year":v.value,today:s}[b];k.isSame(u.value,"day")||p(k)};return{calculateValidatedDateRange:g,date:u,realSelectedDay:r,pickDay:p,selectDate:h,validatedRange:l,handleDateChange:b=>{b==="today"?h("today"):p(b)}}},AF=Ce({date:{type:G(Object),required:!0},formatter:{type:G(Function)}}),LF={"date-change":e=>at(e)||Le(e)};var DF=se({name:"SelectController",__name:"select-controller",props:AF,emits:LF,setup(e,{emit:t}){const n=e,o=t,a=fe("calendar-select"),{t:s,lang:r}=Ct(),l=Array.from({length:12},(p,h)=>{const m=h+1;return{value:m,label:Ve(n.formatter)?n.formatter(m,"month"):m}}),u=w(()=>n.date.year()),c=w(()=>n.date.month()+1),d=w(()=>{const p=[];for(let h=-10;h<10;h++){const m=u.value+h;if(m>0){const b=Ve(n.formatter)?n.formatter(m,"year"):m;p.push({value:m,label:b})}}return p}),f=p=>{o("date-change",st(new Date(p,c.value-1,1)).locale(r.value))},v=p=>{o("date-change",st(new Date(u.value,p-1,1)).locale(r.value))},g=()=>{o("date-change","today")};return(p,h)=>(x(),B(Fe,null,[Y(i(Hs),{"model-value":u.value,size:"small",class:T(i(a).e("year")),"validate-event":!1,options:d.value,onChange:f},null,8,["model-value","class","options"]),Y(i(Hs),{"model-value":c.value,size:"small",class:T(i(a).e("month")),"validate-event":!1,options:i(l),onChange:v},null,8,["model-value","class","options"]),Y(i(In),{size:"small",onClick:g},{default:J(()=>[wt(Se(i(s)("el.datepicker.today")),1)]),_:1})],64))}}),BF=DF;const Jy="ElCalendar";var FF=se({name:Jy,__name:"calendar",props:d8,emits:f8,setup(e,{expose:t,emit:n}){const o=fe("calendar"),{calculateValidatedDateRange:a,date:s,pickDay:r,realSelectedDay:l,selectDate:u,validatedRange:c,handleDateChange:d}=_F(e,n,Jy),{t:f}=Ct(),v=w(()=>{const g=`el.datepicker.month${s.value.format("M")}`;return`${s.value.year()} ${f("el.datepicker.year")} ${f(g)}`});return t({selectedDay:l,pickDay:r,selectDate:u,calculateValidatedDateRange:a}),(g,p)=>(x(),B("div",{class:T(i(o).b())},[z("div",{class:T(i(o).e("header"))},[ee(g.$slots,"header",{date:v.value},()=>[z("div",{class:T(i(o).e("title"))},Se(v.value),3),i(c).length===0&&e.controllerType==="button"?(x(),B("div",{key:0,class:T(i(o).e("button-group"))},[Y(i(mk),null,{default:J(()=>[Y(i(In),{size:"small",onClick:p[0]||(p[0]=h=>i(u)("prev-month"))},{default:J(()=>[wt(Se(i(f)("el.datepicker.prevMonth")),1)]),_:1}),Y(i(In),{size:"small",onClick:p[1]||(p[1]=h=>i(u)("today"))},{default:J(()=>[wt(Se(i(f)("el.datepicker.today")),1)]),_:1}),Y(i(In),{size:"small",onClick:p[2]||(p[2]=h=>i(u)("next-month"))},{default:J(()=>[wt(Se(i(f)("el.datepicker.nextMonth")),1)]),_:1})]),_:1})],2)):i(c).length===0&&e.controllerType==="select"?(x(),B("div",{key:1,class:T(i(o).e("select-controller"))},[Y(BF,{date:i(s),formatter:e.formatter,onDateChange:i(d)},null,8,["date","formatter","onDateChange"])],2)):te("v-if",!0)])],2),i(c).length===0?(x(),B("div",{key:0,class:T(i(o).e("body"))},[Y(Xy,{date:i(s),"selected-day":i(l),onPick:i(r)},uo({_:2},[g.$slots["date-cell"]?{name:"date-cell",fn:J(h=>[ee(g.$slots,"date-cell",Ja(Za(h)))]),key:"0"}:void 0]),1032,["date","selected-day","onPick"])],2)):(x(),B("div",{key:1,class:T(i(o).e("body"))},[(x(!0),B(Fe,null,yt(i(c),(h,m)=>(x(),ae(Xy,{key:m,date:h[0],"selected-day":i(l),range:h,"hide-header":m!==0,onPick:i(r)},uo({_:2},[g.$slots["date-cell"]?{name:"date-cell",fn:J(b=>[ee(g.$slots,"date-cell",dt({ref_for:!0},b))]),key:"0"}:void 0]),1032,["date","selected-day","range","hide-header","onPick"]))),128))],2))],2))}}),VF=FF;const zF=rt(VF),HF=Ce({header:{type:String,default:""},footer:{type:String,default:""},bodyStyle:{type:G([String,Object,Array]),default:""},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:["always","hover","never"],default:void 0}});var KF=se({name:"ElCard",__name:"card",props:HF,setup(e){const t=gs("card"),n=fe("card");return(o,a)=>(x(),B("div",{class:T([i(n).b(),i(n).is(`${e.shadow||i(t)?.shadow||"always"}-shadow`)])},[o.$slots.header||e.header?(x(),B("div",{key:0,class:T([i(n).e("header"),e.headerClass])},[ee(o.$slots,"header",{},()=>[wt(Se(e.header),1)])],2)):te("v-if",!0),z("div",{class:T([i(n).e("body"),e.bodyClass]),style:Ke(e.bodyStyle)},[ee(o.$slots,"default")],6),o.$slots.footer||e.footer?(x(),B("div",{key:1,class:T([i(n).e("footer"),e.footerClass])},[ee(o.$slots,"footer",{},()=>[wt(Se(e.footer),1)])],2)):te("v-if",!0)],2))}}),WF=KF;const jF=rt(WF),UF=Ce({initialIndex:{type:Number,default:0},height:{type:String,default:""},trigger:{type:String,values:["hover","click"],default:"hover"},autoplay:{type:Boolean,default:!0},interval:{type:Number,default:3e3},indicatorPosition:{type:String,values:["","none","outside"],default:""},arrow:{type:String,values:["always","hover","never"],default:"hover"},type:{type:String,values:["","card"],default:""},cardScale:{type:Number,default:.83},loop:{type:Boolean,default:!0},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},pauseOnHover:{type:Boolean,default:!0},motionBlur:Boolean}),qF={change:(e,t)=>[e,t].every(He)},Fk=Symbol("carouselContextKey"),Li="ElCarouselItem",YF=Ce({name:{type:String,default:""},label:{type:[String,Number],default:""}}),Zy=300,GF=(e,t,n)=>{const{children:o,addChild:a,removeChild:s,ChildrenSorter:r}=tf(ft(),Li),l=vn(),u=M(-1),c=M(null),d=M(!1),f=M(),v=M(0),g=M(!0),p=w(()=>e.arrow!=="never"&&!i(b)),h=w(()=>o.value.some(Q=>Q.props.label.toString().length>0)),m=w(()=>e.type==="card"),b=w(()=>e.direction==="vertical"),k=w(()=>e.height!=="auto"?{height:e.height}:{height:`${v.value}px`,overflow:"hidden"}),y=Rs(Q=>{N(Q)},Zy,{trailing:!0}),S=Rs(Q=>{P(Q)},Zy),C=Q=>g.value?u.value<=1?Q<=1:Q>1:!0;function E(){c.value&&(clearInterval(c.value),c.value=null)}function $(){e.interval<=0||!e.autoplay||c.value||(c.value=setInterval(()=>O(),e.interval))}const O=()=>{u.valueie.props.name===Q);ge.length>0&&(Q=o.value.indexOf(ge[0]))}if(Q=Number(Q),Number.isNaN(Q)||Q!==Math.floor(Q)){pt(n,"index must be integer.");return}const he=o.value.length,ue=u.value;Q<0?u.value=e.loop?he-1:0:Q>=he?u.value=e.loop?0:he-1:u.value=Q,ue===u.value&&R(ue),D()}function R(Q){o.value.forEach((he,ue)=>{he.translateItem(ue,u.value,Q)})}function A(Q,he){const ue=i(o),ge=ue.length;if(ge===0||!Q.states.inStage)return!1;const ie=he+1,oe=he-1,ne=ge-1,K=ue[ne].states.active,Z=ue[0].states.active,re=ue[ie]?.states?.active,ce=ue[oe]?.states?.active;return he===ne&&Z||re?"left":he===0&&K||ce?"right":!1}function _(){d.value=!0,e.pauseOnHover&&E()}function V(){d.value=!1,$()}function H(Q){i(b)||o.value.forEach((he,ue)=>{Q===A(he,ue)&&(he.states.hover=!0)})}function U(){i(b)||o.value.forEach(Q=>{Q.states.hover=!1})}function W(Q){u.value=Q}function P(Q){e.trigger==="hover"&&Q!==u.value&&(u.value=Q)}function I(){N(u.value-1)}function L(){N(u.value+1)}function D(){E(),(!e.pauseOnHover||!d.value)&&$()}function F(Q){e.height==="auto"&&(v.value=Q)}function q(){const Q=l.default?.();if(!Q)return null;const he=$o(Q).filter(ue=>Ut(ue)&&ue.type.name===Li);return he?.length===2&&e.loop&&!m.value?(g.value=!0,he):(g.value=!1,null)}le(()=>u.value,(Q,he)=>{R(he),g.value&&(Q=Q%2,he=he%2),he>-1&&t(bt,Q,he)});const j=w({get:()=>g.value?u.value%2:u.value,set:Q=>u.value=Q});le(()=>e.autoplay,Q=>{Q?$():E()}),le(()=>e.loop,()=>{N(u.value)}),le(()=>e.interval,()=>{D()});const X=Xt();return ht(()=>{le(()=>o.value,()=>{o.value.length>0&&N(e.initialIndex)},{immediate:!0}),X.value=en(f.value,()=>{R()}),$()}),Bt(()=>{E(),f.value&&X.value&&X.value.stop()}),St(Fk,{root:f,isCardType:m,isVertical:b,items:o,loop:e.loop,cardScale:e.cardScale,addItem:a,removeItem:s,setActiveItem:N,setContainerHeight:F}),{root:f,activeIndex:u,exposeActiveIndex:j,arrowDisplay:p,hasLabel:h,hover:d,isCardType:m,items:o,isVertical:b,containerStyle:k,isItemsTwoLength:g,handleButtonEnter:H,handleButtonLeave:U,handleIndicatorClick:W,handleMouseEnter:_,handleMouseLeave:V,setActiveItem:N,prev:I,next:L,PlaceholderItem:q,isTwoLengthShow:C,ItemsSorter:r,throttledArrowClick:y,throttledIndicatorHover:S}},XF=["aria-label"],JF=["aria-label"],ZF=["onMouseenter","onClick"],QF=["aria-label"],eV={key:0},tV={key:2,xmlns:"http://www.w3.org/2000/svg",version:"1.1",style:{display:"none"}},Qy="ElCarousel";var nV=se({name:Qy,__name:"carousel",props:UF,emits:qF,setup(e,{expose:t,emit:n}){const o=e,{root:a,activeIndex:s,exposeActiveIndex:r,arrowDisplay:l,hasLabel:u,hover:c,isCardType:d,items:f,isVertical:v,containerStyle:g,handleButtonEnter:p,handleButtonLeave:h,handleIndicatorClick:m,handleMouseEnter:b,handleMouseLeave:k,setActiveItem:y,prev:S,next:C,PlaceholderItem:E,isTwoLengthShow:$,ItemsSorter:O,throttledArrowClick:N,throttledIndicatorHover:R}=GF(o,n,Qy),A=fe("carousel"),{t:_}=Ct(),V=w(()=>{const P=[A.b(),A.m(o.direction)];return i(d)&&P.push(A.m("card")),P.push(A.is("vertical-outside",i(v)&&o.indicatorPosition==="outside")),P}),H=w(()=>{const P=[A.e("indicators"),A.em("indicators",o.direction)];return i(u)&&P.push(A.em("indicators","labels")),o.indicatorPosition==="outside"&&P.push(A.em("indicators","outside")),i(v)&&P.push(A.em("indicators","right")),P});function U(P){if(!o.motionBlur)return;const I=i(v)?`${A.namespace.value}-transitioning-vertical`:`${A.namespace.value}-transitioning`;P.currentTarget.classList.add(I)}function W(P){if(!o.motionBlur)return;const I=i(v)?`${A.namespace.value}-transitioning-vertical`:`${A.namespace.value}-transitioning`;P.currentTarget.classList.remove(I)}return t({activeIndex:r,setActiveItem:y,prev:S,next:C}),(P,I)=>(x(),B("div",{ref_key:"root",ref:a,class:T(V.value),onMouseenter:I[6]||(I[6]=Xe((...L)=>i(b)&&i(b)(...L),["stop"])),onMouseleave:I[7]||(I[7]=Xe((...L)=>i(k)&&i(k)(...L),["stop"]))},[i(l)?(x(),ae(Vn,{key:0,name:"carousel-arrow-left",persisted:""},{default:J(()=>[ut(z("button",{type:"button",class:T([i(A).e("arrow"),i(A).em("arrow","left")]),"aria-label":i(_)("el.carousel.leftArrow"),onMouseenter:I[0]||(I[0]=L=>i(p)("left")),onMouseleave:I[1]||(I[1]=(...L)=>i(h)&&i(h)(...L)),onClick:I[2]||(I[2]=Xe(L=>i(N)(i(s)-1),["stop"]))},[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})],42,XF),[[Pt,(e.arrow==="always"||i(c))&&(e.loop||i(s)>0)]])]),_:1})):te("v-if",!0),i(l)?(x(),ae(Vn,{key:1,name:"carousel-arrow-right",persisted:""},{default:J(()=>[ut(z("button",{type:"button",class:T([i(A).e("arrow"),i(A).em("arrow","right")]),"aria-label":i(_)("el.carousel.rightArrow"),onMouseenter:I[3]||(I[3]=L=>i(p)("right")),onMouseleave:I[4]||(I[4]=(...L)=>i(h)&&i(h)(...L)),onClick:I[5]||(I[5]=Xe(L=>i(N)(i(s)+1),["stop"]))},[Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})],42,JF),[[Pt,(e.arrow==="always"||i(c))&&(e.loop||i(s)[e.indicatorPosition!=="none"?(x(),B("ul",{key:0,class:T(H.value)},[(x(!0),B(Fe,null,yt(i(f),(L,D)=>ut((x(),B("li",{key:D,class:T([i(A).e("indicator"),i(A).em("indicator",e.direction),i(A).is("active",D===i(s))]),onMouseenter:F=>i(R)(D),onClick:Xe(F=>i(m)(D),["stop"])},[z("button",{class:T(i(A).e("button")),"aria-label":i(_)("el.carousel.indicator",{index:D+1})},[i(u)?(x(),B("span",eV,Se(L.props.label),1)):te("v-if",!0)],10,QF)],42,ZF)),[[Pt,i($)(D)]])),128))],2)):te("v-if",!0)]),_:1}),e.motionBlur?(x(),B("svg",tV,[...I[8]||(I[8]=[z("defs",null,[z("filter",{id:"elCarouselHorizontal"},[z("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"12,0"})]),z("filter",{id:"elCarouselVertical"},[z("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"0,10"})])],-1)])])):te("v-if",!0)],34))}}),oV=nV;const aV=e=>{const t=_e(Fk),n=ft();t||pt(Li,"usage: "),n||pt(Li,"compositional hook can only be invoked inside setups");const o=M(),a=M(!1),s=M(0),r=M(1),l=M(!1),u=M(!1),c=M(!1),d=M(!1),{isCardType:f,isVertical:v,cardScale:g}=t;function p(S,C,E){const $=E-1,O=C-1,N=C+1,R=E/2;return C===0&&S===$?-1:C===$&&S===0?E:S=R?E+1:S>N&&S-C>=R?-2:S}function h(S,C){const E=i(v)?t.root.value?.offsetHeight||0:t.root.value?.offsetWidth||0;return c.value?E*((2-g)*(S-C)+1)/4:S{const $=i(f),O=t.items.value.length??NaN,N=S===C;!$&&!Tt(E)&&(d.value=N||S===E),!N&&O>2&&t.loop&&(S=p(S,C,O));const R=i(v);l.value=N,$?(c.value=Math.round(Math.abs(S-C))<=1,s.value=h(S,C),r.value=i(l)?1:g):s.value=m(S,C,R),u.value=!0,N&&o.value&&t.setContainerHeight(o.value.offsetHeight)};function k(){if(t&&i(f)){const S=t.items.value.findIndex(({uid:C})=>C===n.uid);t.setActiveItem(S)}}const y={props:e,states:At({hover:a,translate:s,scale:r,active:l,ready:u,inStage:c,animating:d}),uid:n.uid,getVnode:()=>n.vnode,translateItem:b};return t.addItem(y),Bt(()=>{t.removeItem(y)}),{carouselItemRef:o,active:l,animating:d,hover:a,inStage:c,isVertical:v,translate:s,isCardType:f,scale:r,ready:u,handleItemClick:k}};var sV=se({name:Li,__name:"carousel-item",props:YF,setup(e){const t=e,n=fe("carousel"),{carouselItemRef:o,active:a,animating:s,hover:r,inStage:l,isVertical:u,translate:c,isCardType:d,scale:f,ready:v,handleItemClick:g}=aV(t),p=w(()=>[n.e("item"),n.is("active",a.value),n.is("in-stage",l.value),n.is("hover",r.value),n.is("animating",s.value),{[n.em("item","card")]:d.value,[n.em("item","card-vertical")]:d.value&&u.value}]),h=w(()=>({transform:[`${`translate${i(u)?"Y":"X"}`}(${i(c)}px)`,`scale(${i(f)})`].join(" ")}));return(m,b)=>ut((x(),B("div",{ref_key:"carouselItemRef",ref:o,class:T(p.value),style:Ke(h.value),onClick:b[0]||(b[0]=(...k)=>i(g)&&i(g)(...k))},[i(d)?ut((x(),B("div",{key:0,class:T(i(n).e("mask"))},null,2)),[[Pt,!i(a)]]):te("v-if",!0),ee(m.$slots,"default")],6)),[[Pt,i(v)]])}}),Vk=sV;const rV=rt(oV,{CarouselItem:Vk}),lV=on(Vk),zk=Ce({modelValue:{type:G([Number,String,Array,Object])},options:{type:G(Array),default:()=>[]},props:{type:G(Object),default:()=>({})}}),iV={expandTrigger:"click",multiple:!1,checkStrictly:!1,emitPath:!0,lazy:!1,lazyLoad:Dt,value:"value",label:"label",children:"children",leaf:"leaf",disabled:"disabled",hoverThreshold:500,checkOnClickNode:!1,checkOnClickLeaf:!0,showPrefix:!0},uV=Ce({...zk,border:{type:Boolean,default:!0},renderLabel:{type:Function}}),e0=e=>!0,cV={[ot]:e0,[bt]:e0,close:()=>!0,"expand-change":e=>e},dV=e=>w(()=>({...iV,...e.props})),Hk={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object],default:void 0},value:{type:[String,Boolean,Number,Object],default:void 0},indeterminate:Boolean,disabled:{type:Boolean,default:void 0},checked:Boolean,name:{type:String,default:void 0},trueValue:{type:[String,Number],default:void 0},falseValue:{type:[String,Number],default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},border:Boolean,size:Tn,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},ariaLabel:String,...oo(["ariaControls"])},Kk={[ot]:e=>Le(e)||He(e)||Ht(e),change:e=>Le(e)||He(e)||Ht(e)},Ll=Symbol("checkboxGroupContextKey"),fV=Ce({modelValue:{type:G(Array),default:()=>[]},disabled:{type:Boolean,default:void 0},min:Number,max:Number,size:Tn,fill:String,textColor:String,tag:{type:String,default:"div"},validateEvent:{type:Boolean,default:!0},options:{type:G(Array)},props:{type:G(Object),default:()=>Wk},type:{type:String,values:["checkbox","button"],default:"checkbox"},...oo(["ariaLabel"])}),pV={[ot]:e=>ye(e),change:e=>ye(e)},Wk={label:"label",value:"value",disabled:"disabled"},hV=({model:e,isChecked:t})=>{const n=_e(Ll,void 0),o=_e(Mr,void 0),a=w(()=>{const s=n?.max?.value,r=n?.min?.value;return!Tt(s)&&e.value.length>=s&&!t.value||!Tt(r)&&e.value.length<=r&&t.value});return{isDisabled:un(w(()=>n===void 0?o?.disabled??a.value:n.disabled?.value||a.value)),isLimitDisabled:a}},vV=(e,{model:t,isLimitExceeded:n,hasOwnLabel:o,isDisabled:a,isLabeledByFormItem:s})=>{const r=_e(Ll,void 0),{formItem:l}=Dn(),{emit:u}=ft();function c(p){return[!0,e.trueValue,e.trueLabel].includes(p)?e.trueValue??e.trueLabel??!0:e.falseValue??e.falseLabel??!1}function d(p,h){u(bt,c(p),h)}function f(p){if(n.value)return;const h=p.target;u(bt,c(h.checked),p)}async function v(p){n.value||!o.value&&!a.value&&s.value&&(p.composedPath().some(h=>h.tagName==="LABEL")||(t.value=c([!1,e.falseValue,e.falseLabel].includes(t.value)),await Re(),d(t.value,p)))}const g=w(()=>r?.validateEvent||e.validateEvent);return le(()=>e.modelValue,()=>{g.value&&l?.validate("change").catch(p=>pt(p))}),{handleChange:f,onClickRoot:v}},mV=e=>{const t=M(!1),{emit:n}=ft(),o=_e(Ll,void 0),a=w(()=>Tt(o)===!1),s=M(!1),r=w({get(){return a.value?o?.modelValue?.value:e.modelValue??t.value},set(l){a.value&&ye(l)?(s.value=o?.max?.value!==void 0&&l.length>o?.max.value&&l.length>r.value.length,s.value===!1&&o?.changeEvent?.(l)):(n(ot,l),t.value=l)}});return{model:r,isGroup:a,isLimitExceeded:s}},gV=(e,t,{model:n})=>{const o=_e(Ll,void 0),a=M(!1),s=w(()=>mo(e.value)?e.label:e.value),r=w(()=>{const l=n.value;return Ht(l)?l:ye(l)?at(s.value)?l.map(qt).some(u=>sn(u,s.value)):l.map(qt).includes(s.value):l!=null?l===e.trueValue||l===e.trueLabel:!!l});return{checkboxButtonSize:Cn(w(()=>o?.size?.value),{prop:!0}),isChecked:r,isFocused:a,checkboxSize:Cn(w(()=>o?.size?.value)),hasOwnLabel:w(()=>!!t.default||!mo(s.value)),actualValue:s}},jk=(e,t)=>{const{formItem:n}=Dn(),{model:o,isGroup:a,isLimitExceeded:s}=mV(e),{isFocused:r,isChecked:l,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,actualValue:f}=gV(e,t,{model:o}),{isDisabled:v}=hV({model:o,isChecked:l}),{inputId:g,isLabeledByFormItem:p}=Po(e,{formItemContext:n,disableIdGeneration:d,disableIdManagement:a}),{handleChange:h,onClickRoot:m}=vV(e,{model:o,isLimitExceeded:s,hasOwnLabel:d,isDisabled:v,isLabeledByFormItem:p});return(()=>{function k(){ye(o.value)&&!o.value.includes(f.value)?o.value.push(f.value):o.value=e.trueValue??e.trueLabel??!0}e.checked&&k()})(),Ta({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},w(()=>a.value&&mo(e.value))),Ta({from:"true-label",replacement:"true-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},w(()=>!!e.trueLabel)),Ta({from:"false-label",replacement:"false-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},w(()=>!!e.falseLabel)),{inputId:g,isLabeledByFormItem:p,isChecked:l,isDisabled:v,isFocused:r,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,model:o,actualValue:f,handleChange:h,onClickRoot:m}},bV=["id","indeterminate","name","tabindex","disabled"];var yV=se({name:"ElCheckbox",__name:"checkbox",props:Hk,emits:Kk,setup(e){const t=e,{inputId:n,isLabeledByFormItem:o,isChecked:a,isDisabled:s,isFocused:r,checkboxSize:l,hasOwnLabel:u,model:c,actualValue:d,handleChange:f,onClickRoot:v}=jk(t,vn()),g=w(()=>t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?{"true-value":t.trueValue??t.trueLabel??!0,"false-value":t.falseValue??t.falseLabel??!1}:{value:d.value}),p=fe("checkbox"),h=w(()=>[p.b(),p.m(l.value),p.is("disabled",s.value),p.is("bordered",t.border),p.is("checked",a.value)]),m=w(()=>[p.e("input"),p.is("disabled",s.value),p.is("checked",a.value),p.is("indeterminate",t.indeterminate),p.is("focus",r.value)]);return(b,k)=>(x(),ae(it(!i(u)&&i(o)?"span":"label"),{for:!i(u)&&i(o)?null:i(n),class:T(h.value),"aria-controls":e.indeterminate?e.ariaControls:null,"aria-checked":e.indeterminate?"mixed":void 0,"aria-label":e.ariaLabel,onClick:i(v)},{default:J(()=>[z("span",{class:T(m.value)},[ut(z("input",dt({id:i(n),"onUpdate:modelValue":k[0]||(k[0]=y=>Jt(c)?c.value=y:null),class:i(p).e("original"),type:"checkbox",indeterminate:e.indeterminate,name:e.name,tabindex:e.tabindex,disabled:i(s)},g.value,{onChange:k[1]||(k[1]=(...y)=>i(f)&&i(f)(...y)),onFocus:k[2]||(k[2]=y=>r.value=!0),onBlur:k[3]||(k[3]=y=>r.value=!1),onClick:k[4]||(k[4]=Xe(()=>{},["stop"]))}),null,16,bV),[[G1,i(c)]]),z("span",{class:T(i(p).e("inner"))},null,2)],2),i(u)?(x(),B("span",{key:0,class:T(i(p).e("label"))},[ee(b.$slots,"default"),b.$slots.default?te("v-if",!0):(x(),B(Fe,{key:0},[wt(Se(e.label),1)],64))],2)):te("v-if",!0)]),_:3},8,["for","class","aria-controls","aria-checked","aria-label","onClick"]))}}),Uk=yV;const wV=["name","tabindex","disabled"];var SV=se({name:"ElCheckboxButton",__name:"checkbox-button",props:Hk,emits:Kk,setup(e){const t=e,{isFocused:n,isChecked:o,isDisabled:a,checkboxButtonSize:s,model:r,actualValue:l,handleChange:u}=jk(t,vn()),c=w(()=>t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?{"true-value":t.trueValue??t.trueLabel??!0,"false-value":t.falseValue??t.falseLabel??!1}:{value:l.value}),d=_e(Ll,void 0),f=fe("checkbox"),v=w(()=>{const p=d?.fill?.value??"";return{backgroundColor:p,borderColor:p,color:d?.textColor?.value??"",boxShadow:p?`-1px 0 0 0 ${p}`:void 0}}),g=w(()=>[f.b("button"),f.bm("button",s.value),f.is("disabled",a.value),f.is("checked",o.value),f.is("focus",n.value)]);return(p,h)=>(x(),B("label",{class:T(g.value)},[ut(z("input",dt({"onUpdate:modelValue":h[0]||(h[0]=m=>Jt(r)?r.value=m:null),class:i(f).be("button","original"),type:"checkbox",name:e.name,tabindex:e.tabindex,disabled:i(a)},c.value,{onChange:h[1]||(h[1]=(...m)=>i(u)&&i(u)(...m)),onFocus:h[2]||(h[2]=m=>n.value=!0),onBlur:h[3]||(h[3]=m=>n.value=!1),onClick:h[4]||(h[4]=Xe(()=>{},["stop"]))}),null,16,wV),[[G1,i(r)]]),p.$slots.default||e.label?(x(),B("span",{key:0,class:T(i(f).be("button","inner")),style:Ke(i(o)?v.value:void 0)},[ee(p.$slots,"default",{},()=>[wt(Se(e.label),1)])],6)):te("v-if",!0)],2))}}),bm=SV,CV=se({name:"ElCheckboxGroup",__name:"checkbox-group",props:fV,emits:pV,setup(e,{emit:t}){const n=e,o=t,a=fe("checkbox"),s=un(),{formItem:r}=Dn(),{inputId:l,isLabeledByFormItem:u}=Po(n,{formItemContext:r}),c=async p=>{o(ot,p),await Re(),o(bt,p)},d=w({get(){return n.modelValue},set(p){c(p)}}),f=w(()=>({...Wk,...n.props})),v=p=>{const{label:h,value:m,disabled:b}=f.value,k={label:p[h],value:p[m],disabled:p[b]};return{...ou(p,[h,m,b]),...k}},g=w(()=>n.type==="button"?bm:Uk);return St(Ll,{...ss(Mn(n),["size","min","max","validateEvent","fill","textColor"]),disabled:s,modelValue:d,changeEvent:c}),le(()=>n.modelValue,(p,h)=>{n.validateEvent&&!sn(p,h)&&r?.validate("change").catch(m=>pt(m))}),(p,h)=>(x(),ae(it(e.tag),{id:i(l),class:T(i(a).b("group")),role:"group","aria-label":i(u)?void 0:e.ariaLabel||"checkbox-group","aria-labelledby":i(u)?i(r)?.labelId:void 0},{default:J(()=>[ee(p.$slots,"default",{},()=>[(x(!0),B(Fe,null,yt(e.options,(m,b)=>(x(),ae(it(g.value),dt({key:b},{ref_for:!0},v(m)),null,16))),128))])]),_:3},8,["id","class","aria-label","aria-labelledby"]))}}),qk=CV;const ra=rt(Uk,{CheckboxButton:bm,CheckboxGroup:qk}),kV=on(bm),ym=on(qk),Yk=Ce({modelValue:{type:[String,Number,Boolean],default:void 0},size:Tn,disabled:{type:Boolean,default:void 0},label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),EV=Ce({...Yk,border:Boolean}),Gk={[ot]:e=>Le(e)||He(e)||Ht(e),[bt]:e=>Le(e)||He(e)||Ht(e)},Xk=Symbol("radioGroupKey"),xV=Ce({...Yk}),Jk={label:"label",value:"value",disabled:"disabled"},TV=Ce({id:{type:String,default:void 0},size:Tn,disabled:{type:Boolean,default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},options:{type:G(Array)},props:{type:G(Object),default:()=>Jk},type:{type:String,values:["radio","button"],default:"radio"},...oo(["ariaLabel"])}),$V=Gk,Zk=(e,t)=>{const n=M(),o=_e(Xk,void 0),a=w(()=>!!o),s=w(()=>mo(e.value)?e.label:e.value),r=w({get(){return a.value?o.modelValue:e.modelValue},set(f){a.value?o.changeEvent(f):t&&t(ot,f),n.value.checked=e.modelValue===s.value}}),l=Cn(w(()=>o?.size)),u=un(w(()=>o?.disabled)),c=M(!1),d=w(()=>u.value||a.value&&r.value!==s.value?-1:0);return Ta({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},w(()=>a.value&&mo(e.value))),{radioRef:n,isGroup:a,radioGroup:o,focus:c,size:l,disabled:u,tabIndex:d,modelValue:r,actualValue:s}},OV=["value","name","disabled","checked"];var RV=se({name:"ElRadio",__name:"radio",props:EV,emits:Gk,setup(e,{emit:t}){const n=e,o=t,a=fe("radio"),{radioRef:s,radioGroup:r,focus:l,size:u,disabled:c,modelValue:d,actualValue:f}=Zk(n,o);function v(){Re(()=>o(bt,d.value))}return(g,p)=>(x(),B("label",{class:T([i(a).b(),i(a).is("disabled",i(c)),i(a).is("focus",i(l)),i(a).is("bordered",e.border),i(a).is("checked",i(d)===i(f)),i(a).m(i(u))])},[z("span",{class:T([i(a).e("input"),i(a).is("disabled",i(c)),i(a).is("checked",i(d)===i(f))])},[ut(z("input",{ref_key:"radioRef",ref:s,"onUpdate:modelValue":p[0]||(p[0]=h=>Jt(d)?d.value=h:null),class:T(i(a).e("original")),value:i(f),name:e.name||i(r)?.name,disabled:i(c),checked:i(d)===i(f),type:"radio",onFocus:p[1]||(p[1]=h=>l.value=!0),onBlur:p[2]||(p[2]=h=>l.value=!1),onChange:v,onClick:p[3]||(p[3]=Xe(()=>{},["stop"]))},null,42,OV),[[gv,i(d)]]),z("span",{class:T(i(a).e("inner"))},null,2)],2),z("span",{class:T(i(a).e("label")),onKeydown:p[4]||(p[4]=Xe(()=>{},["stop"]))},[ee(g.$slots,"default",{},()=>[wt(Se(e.label),1)])],34)],2))}}),Qk=RV;const NV=["value","name","disabled"];var IV=se({name:"ElRadioButton",__name:"radio-button",props:xV,setup(e){const t=e,n=fe("radio"),{radioRef:o,focus:a,size:s,disabled:r,modelValue:l,radioGroup:u,actualValue:c}=Zk(t),d=w(()=>({backgroundColor:u?.fill||"",borderColor:u?.fill||"",boxShadow:u?.fill?`-1px 0 0 0 ${u.fill}`:"",color:u?.textColor||""}));return(f,v)=>(x(),B("label",{class:T([i(n).b("button"),i(n).is("active",i(l)===i(c)),i(n).is("disabled",i(r)),i(n).is("focus",i(a)),i(n).bm("button",i(s))])},[ut(z("input",{ref_key:"radioRef",ref:o,"onUpdate:modelValue":v[0]||(v[0]=g=>Jt(l)?l.value=g:null),class:T(i(n).be("button","original-radio")),value:i(c),type:"radio",name:e.name||i(u)?.name,disabled:i(r),onFocus:v[1]||(v[1]=g=>a.value=!0),onBlur:v[2]||(v[2]=g=>a.value=!1),onClick:v[3]||(v[3]=Xe(()=>{},["stop"]))},null,42,NV),[[gv,i(l)]]),z("span",{class:T(i(n).be("button","inner")),style:Ke(i(l)===i(c)?d.value:{}),onKeydown:v[4]||(v[4]=Xe(()=>{},["stop"]))},[ee(f.$slots,"default",{},()=>[wt(Se(e.label),1)])],38)],2))}}),wm=IV;const PV=["id","aria-label","aria-labelledby"];var MV=se({name:"ElRadioGroup",__name:"radio-group",props:TV,emits:$V,setup(e,{emit:t}){const n=e,o=t,a=fe("radio"),s=zn(),r=M(),{formItem:l}=Dn(),{inputId:u,isLabeledByFormItem:c}=Po(n,{formItemContext:l}),d=h=>{o(ot,h),Re(()=>o(bt,h))};ht(()=>{const h=r.value.querySelectorAll("[type=radio]"),m=h[0];!Array.from(h).some(b=>b.checked)&&m&&(m.tabIndex=0)});const f=w(()=>n.name||s.value),v=w(()=>({...Jk,...n.props})),g=h=>{const{label:m,value:b,disabled:k}=v.value,y={label:h[m],value:h[b],disabled:h[k]};return{...ou(h,[m,b,k]),...y}},p=w(()=>n.type==="button"?wm:Qk);return St(Xk,At({...Mn(n),changeEvent:d,name:f})),le(()=>n.modelValue,(h,m)=>{n.validateEvent&&!sn(h,m)&&l?.validate("change").catch(b=>pt(b))}),(h,m)=>(x(),B("div",{id:i(u),ref_key:"radioGroupRef",ref:r,class:T(i(a).b("group")),role:"radiogroup","aria-label":i(c)?void 0:e.ariaLabel||"radio-group","aria-labelledby":i(c)?i(l).labelId:void 0},[ee(h.$slots,"default",{},()=>[(x(!0),B(Fe,null,yt(e.options,(b,k)=>(x(),ae(it(p.value),dt({key:k},{ref_for:!0},g(b)),null,16))),128))])],10,PV))}}),e2=MV;const t2=rt(Qk,{RadioButton:wm,RadioGroup:e2}),_V=on(e2),AV=on(wm),lf=Symbol();function LV(e){return!!(ye(e)?e.every(({type:t})=>t===gn):e?.type===gn)}var DV=se({name:"NodeContent",props:{node:{type:Object,required:!0}},setup(e){const t=fe("cascader-node"),{renderLabelFn:n}=_e(lf),{node:o}=e,{data:a,label:s}=o,r=()=>{const l=n?.({node:o,data:a});return LV(l)?s:l??s};return()=>Y("span",{class:t.e("label")},[r()])}});const BV=["id","aria-haspopup","aria-owns","aria-expanded","tabindex"];var FV=se({name:"ElCascaderNode",__name:"node",props:{node:{type:Object,required:!0},menuId:String},emits:["expand"],setup(e,{emit:t}){const n=e,o=t,a=_e(lf),s=fe("cascader-node"),r=w(()=>a.isHoverMenu),l=w(()=>a.config.multiple),u=w(()=>a.config.checkStrictly),c=w(()=>a.config.showPrefix),d=w(()=>a.checkedNodes[0]?.uid),f=w(()=>n.node.isDisabled),v=w(()=>n.node.isLeaf),g=w(()=>u.value&&!v.value||!f.value),p=w(()=>m(a.expandingNode)),h=w(()=>u.value&&a.checkedNodes.some(m)),m=N=>{const{level:R,uid:A}=n.node;return N?.pathNodes[R-1]?.uid===A},b=()=>{p.value||a.expandNode(n.node)},k=N=>{const{node:R}=n;N!==R.checked&&a.handleCheckChange(R,N)},y=()=>{a.lazyLoad(n.node,()=>{v.value||b()})},S=N=>{r.value&&(C(),!v.value&&o("expand",N))},C=()=>{const{node:N}=n;!g.value||N.loading||(N.loaded?b():y())},E=()=>{v.value&&!f.value&&!u.value&&!l.value?O(!0):(a.config.checkOnClickNode&&(l.value||u.value)||v.value&&a.config.checkOnClickLeaf)&&!f.value?$(!n.node.checked):r.value||C()},$=N=>{u.value?(k(N),n.node.loaded&&b()):O(N)},O=N=>{n.node.loaded?(k(N),!u.value&&b()):y()};return(N,R)=>(x(),B("li",{id:`${e.menuId}-${e.node.uid}`,role:"menuitem","aria-haspopup":!v.value,"aria-owns":v.value?void 0:e.menuId,"aria-expanded":p.value,tabindex:g.value?-1:void 0,class:T([i(s).b(),i(s).is("selectable",u.value),i(s).is("active",e.node.checked),i(s).is("disabled",!g.value),p.value&&"in-active-path",h.value&&"in-checked-path"]),onMouseenter:S,onFocus:S,onClick:E},[te(" prefix "),l.value&&c.value?(x(),ae(i(ra),{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:f.value,onClick:R[0]||(R[0]=Xe(()=>{},["stop"])),"onUpdate:modelValue":$},null,8,["model-value","indeterminate","disabled"])):u.value&&c.value?(x(),ae(i(t2),{key:1,"model-value":d.value,label:e.node.uid,disabled:f.value,"onUpdate:modelValue":$,onClick:R[1]||(R[1]=Xe(()=>{},["stop"]))},{default:J(()=>[te(` + Add an empty element to avoid render label, + do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 + `),R[2]||(R[2]=z("span",null,null,-1))]),_:1},8,["model-value","label","disabled"])):v.value&&e.node.checked?(x(),ae(i(De),{key:2,class:T(i(s).e("prefix"))},{default:J(()=>[Y(i(gu))]),_:1},8,["class"])):te("v-if",!0),te(" content "),Y(i(DV),{node:e.node},null,8,["node"]),te(" postfix "),v.value?te("v-if",!0):(x(),B(Fe,{key:3},[e.node.loading?(x(),ae(i(De),{key:0,class:T([i(s).is("loading"),i(s).e("postfix")])},{default:J(()=>[Y(i(Aa))]),_:1},8,["class"])):(x(),ae(i(De),{key:1,class:T(["arrow-right",i(s).e("postfix")])},{default:J(()=>[Y(i(no))]),_:1},8,["class"]))],64))],42,BV))}}),VV=FV,zV=se({name:"ElCascaderMenu",__name:"menu",props:{nodes:{type:Array,required:!0},index:{type:Number,required:!0}},setup(e){const t=e,n=ft(),o=fe("cascader-menu"),{t:a}=Ct(),s=zn();let r,l;const u=_e(lf),c=M(),d=w(()=>!t.nodes.length),f=w(()=>!u.initialLoaded),v=w(()=>`${s.value}-${t.index}`),g=b=>{r=b.target},p=b=>{if(!(!u.isHoverMenu||!r||!c.value))if(r.contains(b.target)){h();const k=n.vnode.el,{left:y}=k.getBoundingClientRect(),{offsetWidth:S,offsetHeight:C}=k,E=b.clientX-y,$=r.offsetTop,O=$+r.offsetHeight,N=k.querySelector(`.${o.e("wrap")}`)?.scrollTop||0;c.value.innerHTML=` + + + `}else l||(l=window.setTimeout(m,u.config.hoverThreshold))},h=()=>{l&&(clearTimeout(l),l=void 0)},m=()=>{c.value&&(c.value.innerHTML="",h())};return(b,k)=>(x(),ae(i(aa),{key:v.value,tag:"ul",role:"menu",class:T(i(o).b()),"wrap-class":i(o).e("wrap"),"view-class":[i(o).e("list"),i(o).is("empty",d.value)],onMousemove:p,onMouseleave:m},{default:J(()=>[(x(!0),B(Fe,null,yt(e.nodes,y=>(x(),ae(VV,{key:y.uid,node:y,"menu-id":v.value,onExpand:g},null,8,["node","menu-id"]))),128)),f.value?(x(),B("div",{key:0,class:T(i(o).e("empty-text"))},[Y(i(De),{size:"14",class:T(i(o).is("loading"))},{default:J(()=>[Y(i(Aa))]),_:1},8,["class"]),wt(" "+Se(i(a)("el.cascader.loading")),1)],2)):d.value?(x(),B("div",{key:1,class:T(i(o).e("empty-text"))},[ee(b.$slots,"empty",{},()=>[wt(Se(i(a)("el.cascader.noData")),1)])],2)):i(u)?.isHoverMenu?(x(),B(Fe,{key:2},[te(" eslint-disable vue/html-self-closing "),(x(),B("svg",{ref_key:"hoverZone",ref:c,class:T(i(o).e("hover-zone"))},null,2))],2112)):te("v-if",!0),te(" eslint-enable vue/html-self-closing ")]),_:3},8,["class","wrap-class","view-class"]))}}),HV=zV;let KV=0;const WV=e=>{const t=[e];let{parent:n}=e;for(;n;)t.unshift(n),n=n.parent;return t};var hh=class vh{constructor(t,n,o,a=!1){this.data=t,this.config=n,this.parent=o,this.root=a,this.uid=KV++,this.checked=!1,this.indeterminate=!1,this.loading=!1;const{value:s,label:r,children:l}=n,u=t[l],c=WV(this);this.level=a?0:o?o.level+1:1,this.value=t[s],this.label=t[r],this.pathNodes=c,this.pathValues=c.map(d=>d.value),this.pathLabels=c.map(d=>d.label),this.childrenData=u,this.children=(u||[]).map(d=>new vh(d,n,this)),this.loaded=!n.lazy||this.isLeaf||!io(u),this.text=""}get isDisabled(){const{data:t,parent:n,config:o}=this,{disabled:a,checkStrictly:s}=o;return(Ve(a)?a(t,this):!!t[a])||!s&&!!n?.isDisabled}get isLeaf(){const{data:t,config:n,childrenData:o,loaded:a}=this,{lazy:s,leaf:r}=n,l=Ve(r)?r(t,this):t[r];return Tt(l)?s&&!a?!1:!(ye(o)&&o.length):!!l}get valueByOption(){return this.config.emitPath?this.pathValues:this.value}appendChild(t){const{childrenData:n,children:o}=this,a=new vh(t,this.config,this);return ye(n)?n.push(t):this.childrenData=[t],o.push(a),a}calcText(t,n){const o=t?this.pathLabels.join(n):this.label;return this.text=o,o}broadcast(t){this.children.forEach(n=>{n&&(n.broadcast(t),n.onParentCheck?.(t))})}emit(){const{parent:t}=this;t&&(t.onChildCheck?.(),t.emit())}onParentCheck(t){this.isDisabled||this.setCheckState(t)}onChildCheck(){const{children:t}=this,n=t.filter(a=>!a.isDisabled),o=n.length?n.every(a=>a.checked):!1;this.setCheckState(o)}setCheckState(t){const n=this.children.length,o=this.children.reduce((a,s)=>a+(s.checked?1:s.indeterminate?.5:0),0);this.checked=this.loaded&&this.children.filter(a=>!a.isDisabled).every(a=>a.loaded&&a.checked)&&t,this.indeterminate=this.loaded&&o!==n&&o>0}doCheck(t){if(this.checked===t)return;const{checkStrictly:n,multiple:o}=this.config;n||!o?this.checked=t:(this.broadcast(t),this.setCheckState(t),this.emit())}};const mh=(e,t)=>e.reduce((n,o)=>(o.isLeaf?n.push(o):(!t&&n.push(o),n=n.concat(mh(o.children,t))),n),[]);var t0=class{constructor(e,t){this.config=t;const n=(e||[]).map(o=>new hh(o,this.config));this.nodes=n,this.allNodes=mh(n,!1),this.leafNodes=mh(n,!0)}getNodes(){return this.nodes}getFlattedNodes(e){return e?this.leafNodes:this.allNodes}appendNode(e,t){const n=t?t.appendChild(e):new hh(e,this.config);t||this.nodes.push(n),this.appendAllNodesAndLeafNodes(n)}appendNodes(e,t){e.length>0?e.forEach(n=>this.appendNode(n,t)):t&&t.isLeaf&&this.leafNodes.push(t)}appendAllNodesAndLeafNodes(e){this.allNodes.push(e),e.isLeaf&&this.leafNodes.push(e),e.children&&e.children.forEach(t=>{this.appendAllNodesAndLeafNodes(t)})}getNodeByValue(e,t=!1){return mo(e)?null:this.getFlattedNodes(t).find(n=>sn(n.value,e)||sn(n.pathValues,e))||null}getSameNode(e){return e&&this.getFlattedNodes(!1).find(({value:t,level:n})=>sn(e.value,t)&&e.level===n)||null}};const n0=e=>{if(!e)return 0;const t=e.id.split("-");return Number(t[t.length-2])},jV=e=>{if(!e)return;const t=e.querySelector("input");t?t.click():GS(e)&&e.click()},UV=(e,t)=>{const n=t.slice(0),o=n.map(s=>s.uid),a=e.reduce((s,r)=>{const l=o.indexOf(r.uid);return l>-1&&(s.push(r),n.splice(l,1),o.splice(l,1)),s},[]);return a.push(...n),a};var qV=se({name:"ElCascaderPanel",__name:"index",props:uV,emits:cV,setup(e,{expose:t,emit:n}){const o=e,a=n;let s=!1;const r=fe("cascader"),l=dV(o),u=vn();let c;const d=M(!0),f=M(!1),v=M([]),g=M(),p=M([]),h=M(),m=M([]),b=w(()=>l.value.expandTrigger==="hover"),k=w(()=>o.renderLabel||u.default),y=()=>{const{options:P}=o,I=l.value;s=!1,c=new t0(P,I),p.value=[c.getNodes()],I.lazy&&io(o.options)?(d.value=!1,S(void 0,L=>{L&&(c=new t0(L,I),p.value=[c.getNodes()]),d.value=!0,_(!1,!0)})):_(!1,!0)},S=(P,I)=>{const L=l.value;P=P||new hh({},L,void 0,!0),P.loading=!0;const D=q=>{const j=P,X=j.root?null:j;j.loading=!1,j.loaded=!0,j.childrenData=j.childrenData||[],q&&c?.appendNodes(q,X),q&&I?.(q),P.level===0&&(f.value=!0)},F=()=>{P.loading=!1,P.loaded=!1,P.level===0&&(d.value=!0)};L.lazyLoad(P,D,F)},C=(P,I)=>{const{level:L}=P,D=p.value.slice(0,L);let F;P.isLeaf?F=P.pathNodes[L-2]:(F=P,D.push(P.children)),h.value?.uid!==F?.uid&&(h.value=P,p.value=D,!I&&a("expand-change",P?.pathValues||[]))},E=(P,I,L=!0)=>{const{checkStrictly:D,multiple:F}=l.value,q=m.value[0];s=!0,!F&&q?.doCheck(!1),P.doCheck(I),A(),L&&!F&&!D&&a("close"),!L&&!F&&$(P)},$=P=>{P&&(P=P.parent,$(P),P&&C(P))},O=P=>c?.getFlattedNodes(P),N=P=>O(P)?.filter(({checked:I})=>I!==!1),R=()=>{m.value.forEach(P=>P.doCheck(!1)),A(),p.value=p.value.slice(0,1),h.value=void 0,a("expand-change",[])},A=()=>{const{checkStrictly:P,multiple:I}=l.value,L=m.value,D=UV(L,N(!P)),F=D.map(q=>q.valueByOption);m.value=D,g.value=I?F:F[0]??null},_=(P=!1,I=!1)=>{const{modelValue:L}=o,{lazy:D,multiple:F,checkStrictly:q}=l.value,j=!q;if(!(!d.value||s||!I&&sn(L,g.value)))if(D&&!P){const X=cy(CM(Zn(L))).map(Q=>c?.getNodeByValue(Q)).filter(Q=>!!Q&&!Q.loaded&&!Q.loading);X.length?X.forEach(Q=>{S(Q,()=>_(!1,I))}):_(!0,I)}else V(cy((F?Zn(L):[L]).map(X=>c?.getNodeByValue(X,j))),I),g.value=es(L??void 0)},V=(P,I=!0)=>{const{checkStrictly:L}=l.value,D=m.value,F=P.filter(X=>!!X&&(L||X.isLeaf)),q=c?.getSameNode(h.value),j=I&&q||F[0];j?j.pathNodes.forEach(X=>C(X,!0)):h.value=void 0,D.forEach(X=>X.doCheck(!1)),At(F).forEach(X=>X.doCheck(!0)),m.value=F,Re(H)},H=()=>{Mt&&v.value.forEach(P=>{const I=P?.$el;if(I){const L=I.querySelector(`.${r.namespace.value}-scrollbar__wrap`);let D=I.querySelector(`.${r.b("node")}.in-active-path`);if(!D){const F=I.querySelectorAll(`.${r.b("node")}.${r.is("active")}`);D=F[F.length-1]}zv(L,D)}})},U=P=>{const I=P.target,L=jt(P);switch(L){case we.up:case we.down:P.preventDefault(),fc(XS(I,L===we.up?-1:1,`.${r.b("node")}[tabindex="-1"]`));break;case we.left:{P.preventDefault();const D=v.value[n0(I)-1]?.$el.querySelector(`.${r.b("node")}[aria-expanded="true"]`);fc(D);break}case we.right:{P.preventDefault();const D=v.value[n0(I)+1]?.$el.querySelector(`.${r.b("node")}[tabindex="-1"]`);fc(D);break}case we.enter:case we.numpadEnter:jV(I);break}};St(lf,At({config:l,expandingNode:h,checkedNodes:m,isHoverMenu:b,initialLoaded:d,renderLabelFn:k,lazyLoad:S,expandNode:C,handleCheckChange:E})),le(l,(P,I)=>{sn(P,I)||y()},{immediate:!0}),le(()=>o.options,y,{deep:!0}),le(()=>o.modelValue,()=>{s=!1,_()},{deep:!0}),le(()=>g.value,P=>{sn(P,o.modelValue)||(a(ot,P),a(bt,P))});const W=()=>{f.value||y()};return iv(()=>v.value=[]),ht(()=>!io(o.modelValue)&&_()),t({menuList:v,menus:p,checkedNodes:m,handleKeyDown:U,handleCheckChange:E,getFlattedNodes:O,getCheckedNodes:N,clearCheckedNodes:R,calculateCheckedValue:A,scrollToExpandingNode:H,loadLazyRootNodes:W}),(P,I)=>(x(),B("div",{class:T([i(r).b("panel"),i(r).is("bordered",e.border)]),onKeydown:U},[(x(!0),B(Fe,null,yt(p.value,(L,D)=>(x(),ae(HV,{key:D,ref_for:!0,ref:F=>v.value[D]=F,index:D,nodes:[...L]},{empty:J(()=>[ee(P.$slots,"empty")]),_:3},8,["index","nodes"]))),128))],34))}}),YV=qV;const n2=rt(YV),GV=Ce({...zk,size:Tn,placeholder:String,disabled:{type:Boolean,default:void 0},clearable:Boolean,clearIcon:{type:Kt,default:Va},filterable:Boolean,filterMethod:{type:G(Function),default:(e,t)=>e.text.includes(t)},separator:{type:String,default:" / "},showAllLevels:{type:Boolean,default:!0},collapseTags:Boolean,maxCollapseTags:{type:Number,default:1},collapseTagsTooltip:Boolean,maxCollapseTagsTooltipHeight:{type:[String,Number]},debounce:{type:Number,default:300},beforeFilter:{type:G(Function),default:()=>!0},placement:{type:G(String),values:Da,default:"bottom-start"},fallbackPlacements:{type:G(Array),default:["bottom-start","bottom","top-start","top","right","left"]},popperClass:zt.popperClass,popperStyle:zt.popperStyle,teleported:zt.teleported,effect:{type:G(String),default:"light"},tagType:{...us.type,default:"info"},tagEffect:{...us.effect,default:"light"},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},showCheckedStrategy:{type:String,values:["parent","child"],default:"child"},checkOnClickNode:Boolean,showPrefix:{type:Boolean,default:!0},...Pr}),o0=e=>!0,XV={[ot]:o0,[bt]:o0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,visibleChange:e=>Ht(e),expandChange:e=>!!e,removeTag:e=>!!e},JV=["placeholder"],ZV=["onClick"];var QV=se({name:"ElCascader",__name:"cascader",props:GV,emits:XV,setup(e,{expose:t,emit:n}){const o={modifiers:[{name:"arrowPosition",enabled:!0,phase:"main",fn:({state:Be})=>{const{modifiersData:nt,placement:ct}=Be;["right","left","bottom","top"].includes(ct)||nt.arrow&&(nt.arrow.x=35)},requires:["arrow"]}]},a=e,s=n,r=fs(),l=vn();let u=0,c=0;const d=fe("cascader"),f=fe("input"),v={small:7,default:11,large:15},{t:g}=Ct(),{formItem:p}=Dn(),h=un(),{valueOnClear:m}=mu(a),{isComposing:b,handleComposition:k}=vu({afterComposition(Be){const nt=Be.target?.value;Ge(nt)}}),y=M(),S=M(),C=M(),E=M(),$=M(),O=M(),N=M(!1),R=M(!1),A=M(!1),_=M(""),V=M(""),H=M([]),U=M([]),W=w(()=>a.props.multiple?a.collapseTags?H.value.slice(0,a.maxCollapseTags):H.value:[]),P=w(()=>a.props.multiple?a.collapseTags?H.value.slice(a.maxCollapseTags):[]:[]),I=w(()=>r.style),L=w(()=>a.placeholder??g("el.cascader.placeholder")),D=w(()=>V.value||H.value.length>0||b.value?"":L.value),F=Cn(),q=w(()=>F.value==="small"?"small":"default"),j=w(()=>!!a.props.multiple),X=w(()=>!a.filterable||j.value),Q=w(()=>j.value?V.value:_.value),he=w(()=>$.value?.checkedNodes||[]),{wrapperRef:ue,isFocused:ge,handleBlur:ie}=ms(C,{disabled:h,beforeBlur(Be){return y.value?.isFocusInsideContent(Be)||S.value?.isFocusInsideContent(Be)},afterBlur(){a.validateEvent&&p?.validate?.("blur").catch(Be=>pt(Be))}}),oe=w(()=>!a.clearable||h.value||A.value||!R.value&&!ge.value?!1:!!he.value.length),ne=w(()=>{const{showAllLevels:Be,separator:nt}=a,ct=he.value;return ct.length?j.value?"":ct[0].calcText(Be,nt):""}),K=w(()=>p?.validateState||""),Z=w({get(){return es(a.modelValue)},set(Be){const nt=Be??m.value;s(ot,nt),s(bt,nt),a.validateEvent&&p?.validate("change").catch(ct=>pt(ct))}}),re=w(()=>[d.b(),d.m(F.value),d.is("disabled",h.value),r.class]),ce=w(()=>[f.e("icon"),"icon-arrow-down",d.is("reverse",N.value)]),ve=w(()=>d.is("focus",ge.value)),ke=w(()=>y.value?.popperRef?.contentRef),Ne=Be=>{ge.value&&ie(new FocusEvent("blur",Be)),Ie(!1)},Ie=Be=>{h.value||(Be=Be??!N.value,Be!==N.value&&(N.value=Be,C.value?.input?.setAttribute("aria-expanded",`${Be}`),Be?($e(),$.value&&Re($.value.scrollToExpandingNode)):a.filterable&&mt(),s("visibleChange",Be)))},$e=()=>{Re(()=>{y.value?.updatePopper()})},pe=()=>{A.value=!1},Ee=Be=>{const{showAllLevels:nt,separator:ct}=a;return{node:Be,key:Be.uid,text:Be.calcText(nt,ct),hitState:!1,closable:!h.value&&!Be.isDisabled}},me=Be=>{const nt=Be.node;nt.doCheck(!1),$.value?.calculateCheckedValue(),s("removeTag",nt.valueByOption)},Me=()=>{switch(a.showCheckedStrategy){case"child":return he.value;case"parent":{const Be=je(!1),nt=Be.map(ct=>ct.value);return Be.filter(ct=>!ct.parent||!nt.includes(ct.parent.value))}default:return[]}},We=()=>{if(!j.value)return;const Be=Me(),nt=[];Be.forEach(ct=>nt.push(Ee(ct))),H.value=nt},Ze=()=>{const{filterMethod:Be,showAllLevels:nt,separator:ct}=a,kn=$.value?.getFlattedNodes(!a.props.checkStrictly)?.filter(Wt=>Wt.isDisabled?!1:(Wt.calcText(nt,ct),Be(Wt,Q.value)));j.value&&H.value.forEach(Wt=>{Wt.hitState=!1}),A.value=!0,U.value=kn,$e()},Pe=()=>{let Be;A.value&&O.value?Be=O.value.$el.querySelector(`.${d.e("suggestion-item")}`):Be=$.value?.$el.querySelector(`.${d.b("node")}[tabindex="-1"]`),Be&&(Be.focus(),!A.value&&Be.click())},Ae=()=>{const Be=C.value?.input,nt=E.value,ct=O.value?.$el;if(!(!Mt||!Be)){if(ct){const kn=ct.querySelector(`.${d.e("suggestion-list")}`);kn.style.minWidth=`${Be.offsetWidth}px`}if(nt){const{offsetHeight:kn}=nt,Wt=H.value.length>0?`${Math.max(kn,u)-2}px`:`${u}px`;if(Be.style.height=Wt,l.prefix){const yn=C.value?.$el.querySelector(`.${f.e("prefix")}`);let Qe=0;yn&&(Qe=yn.offsetWidth,Qe>0&&(Qe+=v[F.value||"default"])),nt.style.left=`${Qe}px`}else nt.style.left="0";$e()}}},je=Be=>$.value?.getCheckedNodes(Be),Rt=Be=>{$e(),s("expandChange",Be)},Ue=Be=>{if(!b.value)switch(jt(Be)){case we.enter:case we.numpadEnter:Ie();break;case we.down:Ie(!0),Re(Pe),Be.preventDefault();break;case we.esc:N.value===!0&&(Be.preventDefault(),Be.stopPropagation(),Ie(!1));break;case we.tab:Ie(!1);break}},lt=()=>{$.value?.clearCheckedNodes(),!N.value&&a.filterable&&mt(),Ie(!1),s("clear")},mt=()=>{const{value:Be}=ne;_.value=Be,V.value=Be},kt=Be=>{const{checked:nt}=Be;j.value?$.value?.handleCheckChange(Be,!nt,!1):(!nt&&$.value?.handleCheckChange(Be,!0,!1),Ie(!1))},be=Be=>{const nt=Be.target,ct=jt(Be);switch(ct){case we.up:case we.down:Be.preventDefault(),fc(XS(nt,ct===we.up?-1:1,`.${d.e("suggestion-item")}[tabindex="-1"]`));break;case we.enter:case we.numpadEnter:nt.click();break}},ze=()=>{const Be=H.value[H.value.length-1];c=V.value?0:c+1,!(!Be||!c||a.collapseTags&&H.value.length>1)&&(Be.hitState?me(Be):Be.hitState=!0)},de=ru(()=>{const{value:Be}=Q;if(!Be)return;const nt=a.beforeFilter(Be);mr(nt)?nt.then(Ze).catch(()=>{}):nt!==!1?Ze():pe()},w(()=>a.debounce)),Ge=(Be,nt)=>{!N.value&&Ie(!0),!nt?.isComposing&&(Be?de():pe())},$t=Be=>Number.parseFloat(l_(f.cssVarName("input-height"),Be).value)-2,tn=()=>{C.value?.focus()},_n=()=>{C.value?.blur()};return le(A,$e),le([he,h,()=>a.collapseTags,()=>a.maxCollapseTags],We),le(H,()=>{Re(()=>Ae())}),le(F,async()=>{await Re();const Be=C.value.input;u=$t(Be)||u,Ae()}),le(ne,mt,{immediate:!0}),le(()=>N.value,Be=>{Be&&a.props.lazy&&a.props.lazyLoad&&$.value?.loadLazyRootNodes()}),ht(()=>{const Be=C.value.input,nt=$t(Be);u=Be.offsetHeight||nt,en(Be,Ae)}),t({getCheckedNodes:je,cascaderPanelRef:$,togglePopperVisible:Ie,contentRef:ke,presentText:ne,focus:tn,blur:_n}),(Be,nt)=>(x(),ae(i(Ln),{ref_key:"tooltipRef",ref:y,visible:N.value,teleported:e.teleported,"popper-class":[i(d).e("dropdown"),e.popperClass],"popper-style":e.popperStyle,"popper-options":o,"fallback-placements":e.fallbackPlacements,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,placement:e.placement,transition:`${i(d).namespace.value}-zoom-in-top`,effect:e.effect,pure:"",persistent:e.persistent,onHide:pe},{default:J(()=>[ut((x(),B("div",{ref_key:"wrapperRef",ref:ue,class:T(re.value),style:Ke(I.value),onClick:nt[8]||(nt[8]=()=>Ie(X.value?void 0:!0)),onKeydown:Ue,onMouseenter:nt[9]||(nt[9]=ct=>R.value=!0),onMouseleave:nt[10]||(nt[10]=ct=>R.value=!1)},[Y(i(eo),{ref_key:"inputRef",ref:C,modelValue:_.value,"onUpdate:modelValue":nt[1]||(nt[1]=ct=>_.value=ct),placeholder:D.value,readonly:X.value,disabled:i(h),"validate-event":!1,size:i(F),class:T(ve.value),tabindex:j.value&&e.filterable&&!i(h)?-1:void 0,onCompositionstart:i(k),onCompositionupdate:i(k),onCompositionend:i(k),onInput:Ge},uo({suffix:J(()=>[oe.value?(x(),ae(i(De),{key:"clear",class:T([i(f).e("icon"),"icon-circle-close"]),onClick:Xe(lt,["stop"])},{default:J(()=>[(x(),ae(it(e.clearIcon)))]),_:1},8,["class"])):(x(),ae(i(De),{key:"arrow-down",class:T(ce.value),onClick:nt[0]||(nt[0]=Xe(ct=>Ie(),["stop"]))},{default:J(()=>[Y(i(Fa))]),_:1},8,["class"]))]),_:2},[Be.$slots.prefix?{name:"prefix",fn:J(()=>[ee(Be.$slots,"prefix")]),key:"0"}:void 0]),1032,["modelValue","placeholder","readonly","disabled","size","class","tabindex","onCompositionstart","onCompositionupdate","onCompositionend"]),j.value?(x(),B("div",{key:0,ref_key:"tagWrapper",ref:E,class:T([i(d).e("tags"),i(d).is("validate",!!K.value)])},[ee(Be.$slots,"tag",{data:H.value,deleteTag:me},()=>[(x(!0),B(Fe,null,yt(W.value,ct=>(x(),ae(i(ts),{key:ct.key,type:e.tagType,size:q.value,effect:e.tagEffect,hit:ct.hitState,closable:ct.closable,"disable-transitions":"",onClose:kn=>me(ct)},{default:J(()=>[z("span",null,Se(ct.text),1)]),_:2},1032,["type","size","effect","hit","closable","onClose"]))),128))]),e.collapseTags&&H.value.length>e.maxCollapseTags?(x(),ae(i(Ln),{key:0,ref_key:"tagTooltipRef",ref:S,disabled:N.value||!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],placement:"bottom","popper-class":e.popperClass,"popper-style":e.popperStyle,effect:e.effect,persistent:e.persistent},{default:J(()=>[Y(i(ts),{closable:!1,size:q.value,type:e.tagType,effect:e.tagEffect,"disable-transitions":""},{default:J(()=>[z("span",{class:T(i(d).e("tags-text"))}," + "+Se(H.value.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect"])]),content:J(()=>[Y(i(aa),{"max-height":e.maxCollapseTagsTooltipHeight},{default:J(()=>[z("div",{class:T(i(d).e("collapse-tags"))},[(x(!0),B(Fe,null,yt(P.value,(ct,kn)=>(x(),B("div",{key:kn,class:T(i(d).e("collapse-tag"))},[(x(),ae(i(ts),{key:ct.key,class:"in-tooltip",type:e.tagType,size:q.value,effect:e.tagEffect,hit:ct.hitState,closable:ct.closable,"disable-transitions":"",onClose:Wt=>me(ct)},{default:J(()=>[z("span",null,Se(ct.text),1)]),_:2},1032,["type","size","effect","hit","closable","onClose"]))],2))),128))],2)]),_:1},8,["max-height"])]),_:1},8,["disabled","popper-class","popper-style","effect","persistent"])):te("v-if",!0),e.filterable&&!i(h)?ut((x(),B("input",{key:1,"onUpdate:modelValue":nt[2]||(nt[2]=ct=>V.value=ct),type:"text",class:T(i(d).e("search-input")),placeholder:ne.value?"":L.value,onInput:nt[3]||(nt[3]=ct=>Ge(V.value,ct)),onClick:nt[4]||(nt[4]=Xe(ct=>Ie(!0),["stop"])),onKeydown:an(ze,["delete"]),onCompositionstart:nt[5]||(nt[5]=(...ct)=>i(k)&&i(k)(...ct)),onCompositionupdate:nt[6]||(nt[6]=(...ct)=>i(k)&&i(k)(...ct)),onCompositionend:nt[7]||(nt[7]=(...ct)=>i(k)&&i(k)(...ct))},null,42,JV)),[[mv,V.value]]):te("v-if",!0)],2)):te("v-if",!0)],38)),[[i(zs),Ne,ke.value]])]),content:J(()=>[Be.$slots.header?(x(),B("div",{key:0,class:T(i(d).e("header")),onClick:nt[11]||(nt[11]=Xe(()=>{},["stop"]))},[ee(Be.$slots,"header")],2)):te("v-if",!0),ut(Y(i(n2),{ref_key:"cascaderPanelRef",ref:$,modelValue:Z.value,"onUpdate:modelValue":nt[12]||(nt[12]=ct=>Z.value=ct),options:e.options,props:a.props,border:!1,"render-label":Be.$slots.default,onExpandChange:Rt,onClose:nt[13]||(nt[13]=ct=>Be.$nextTick(()=>Ie(!1)))},{empty:J(()=>[ee(Be.$slots,"empty")]),_:3},8,["modelValue","options","props","render-label"]),[[Pt,!A.value]]),e.filterable?ut((x(),ae(i(aa),{key:1,ref_key:"suggestionPanel",ref:O,tag:"ul",class:T(i(d).e("suggestion-panel")),"view-class":i(d).e("suggestion-list"),onKeydown:be},{default:J(()=>[U.value.length?(x(!0),B(Fe,{key:0},yt(U.value,ct=>(x(),B("li",{key:ct.uid,class:T([i(d).e("suggestion-item"),i(d).is("checked",ct.checked)]),tabindex:-1,onClick:kn=>kt(ct)},[ee(Be.$slots,"suggestion-item",{item:ct},()=>[z("span",null,Se(ct.text),1),ct.checked?(x(),ae(i(De),{key:0},{default:J(()=>[Y(i(gu))]),_:1})):te("v-if",!0)])],10,ZV))),128)):ee(Be.$slots,"empty",{key:1},()=>[z("li",{class:T(i(d).e("empty-text"))},Se(i(g)("el.cascader.noMatch")),3)])]),_:3},8,["class","view-class"])),[[Pt,A.value]]):te("v-if",!0),Be.$slots.footer?(x(),B("div",{key:2,class:T(i(d).e("footer")),onClick:nt[14]||(nt[14]=Xe(()=>{},["stop"]))},[ee(Be.$slots,"footer")],2)):te("v-if",!0)]),_:3},8,["visible","teleported","popper-class","popper-style","fallback-placements","placement","transition","effect","persistent"]))}}),e6=QV;const t6=rt(e6),n6=Ce({checked:Boolean,disabled:Boolean,type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"}}),o6={"update:checked":e=>Ht(e),[bt]:e=>Ht(e)};var a6=se({name:"ElCheckTag",__name:"check-tag",props:n6,emits:o6,setup(e,{emit:t}){const n=e,o=t,a=fe("check-tag"),s=w(()=>[a.b(),a.is("checked",n.checked),a.is("disabled",n.disabled),a.m(n.type||"primary")]),r=()=>{if(n.disabled)return;const l=!n.checked;o(bt,l),o("update:checked",l)};return(l,u)=>(x(),B("span",{class:T(s.value),onClick:r},[ee(l.$slots,"default")],2))}}),s6=a6;const r6=rt(s6),l6=Ce({tag:{type:String,default:"div"},span:{type:Number,default:24},offset:{type:Number,default:0},pull:{type:Number,default:0},push:{type:Number,default:0},xs:{type:G([Number,Object]),default:()=>rn({})},sm:{type:G([Number,Object]),default:()=>rn({})},md:{type:G([Number,Object]),default:()=>rn({})},lg:{type:G([Number,Object]),default:()=>rn({})},xl:{type:G([Number,Object]),default:()=>rn({})}}),i6=["start","center","end","space-around","space-between","space-evenly"],u6=["top","middle","bottom"],c6=Ce({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:i6,default:"start"},align:{type:String,values:u6}}),o2=Symbol("rowContextKey");var d6=se({name:"ElRow",__name:"row",props:c6,setup(e){const t=e,n=fe("row");St(o2,{gutter:w(()=>t.gutter)});const o=w(()=>{const s={};return t.gutter&&(s.marginRight=s.marginLeft=`-${t.gutter/2}px`),s}),a=w(()=>[n.b(),n.is(`justify-${t.justify}`,t.justify!=="start"),n.is(`align-${t.align}`,!!t.align)]);return(s,r)=>(x(),ae(it(e.tag),{class:T(a.value),style:Ke(o.value)},{default:J(()=>[ee(s.$slots,"default")]),_:3},8,["class","style"]))}}),f6=d6;const p6=rt(f6);var h6=se({name:"ElCol",__name:"col",props:l6,setup(e){const t=e,{gutter:n}=_e(o2,{gutter:w(()=>0)}),o=fe("col"),a=w(()=>{const r={};return n.value&&(r.paddingLeft=r.paddingRight=`${n.value/2}px`),r}),s=w(()=>{const r=[];return["span","offset","pull","push"].forEach(l=>{const u=t[l];He(u)&&(l==="span"?r.push(o.b(`${t[l]}`)):u>0&&r.push(o.b(`${l}-${t[l]}`)))}),["xs","sm","md","lg","xl"].forEach(l=>{He(t[l])?r.push(o.b(`${l}-${t[l]}`)):at(t[l])&&Object.entries(t[l]).forEach(([u,c])=>{r.push(u!=="span"?o.b(`${l}-${u}-${c}`):o.b(`${l}-${c}`))})}),n.value&&r.push(o.is("guttered")),[o.b(),r]});return(r,l)=>(x(),ae(it(e.tag),{class:T(s.value),style:Ke(a.value)},{default:J(()=>[ee(r.$slots,"default")]),_:3},8,["class","style"]))}}),v6=h6;const m6=rt(v6),a0=e=>He(e)||Le(e)||ye(e),g6=Ce({accordion:Boolean,modelValue:{type:G([Array,String,Number]),default:()=>rn([])},expandIconPosition:{type:G([String]),default:"right"},beforeCollapse:{type:G(Function)}}),b6={[ot]:a0,[bt]:a0},a2=Symbol("collapseContextKey"),y6=Ce({title:{type:String,default:""},name:{type:G([String,Number]),default:void 0},icon:{type:Kt,default:no},disabled:Boolean});var w6=se({name:"ElCollapseTransition",__name:"collapse-transition",setup(e){const t=fe("collapse-transition"),n=a=>{a.style.maxHeight="",a.style.overflow=a.dataset.oldOverflow,a.style.paddingTop=a.dataset.oldPaddingTop,a.style.paddingBottom=a.dataset.oldPaddingBottom},o={beforeEnter(a){a.dataset||(a.dataset={}),a.dataset.oldPaddingTop=a.style.paddingTop,a.dataset.oldPaddingBottom=a.style.paddingBottom,a.style.height&&(a.dataset.elExistsHeight=a.style.height),a.style.maxHeight=0,a.style.paddingTop=0,a.style.paddingBottom=0},enter(a){requestAnimationFrame(()=>{a.dataset.oldOverflow=a.style.overflow,a.dataset.elExistsHeight?a.style.maxHeight=a.dataset.elExistsHeight:a.scrollHeight!==0?a.style.maxHeight=`${a.scrollHeight}px`:a.style.maxHeight=0,a.style.paddingTop=a.dataset.oldPaddingTop,a.style.paddingBottom=a.dataset.oldPaddingBottom,a.style.overflow="hidden"})},afterEnter(a){a.style.maxHeight="",a.style.overflow=a.dataset.oldOverflow},enterCancelled(a){n(a)},beforeLeave(a){a.dataset||(a.dataset={}),a.dataset.oldPaddingTop=a.style.paddingTop,a.dataset.oldPaddingBottom=a.style.paddingBottom,a.dataset.oldOverflow=a.style.overflow,a.style.maxHeight=`${a.scrollHeight}px`,a.style.overflow="hidden"},leave(a){a.scrollHeight!==0&&(a.style.maxHeight=0,a.style.paddingTop=0,a.style.paddingBottom=0)},afterLeave(a){n(a)},leaveCancelled(a){n(a)}};return(a,s)=>(x(),ae(Vn,dt({name:i(t).b()},GT(o)),{default:J(()=>[ee(a.$slots,"default")]),_:3},16,["name"]))}}),S6=w6;const uf=rt(S6),s0="ElCollapse",C6=(e,t)=>{const n=M(Nn(e.modelValue)),o=r=>{n.value=r;const l=e.accordion?n.value[0]:n.value;t(ot,l),t(bt,l)},a=r=>{if(e.accordion)o([n.value[0]===r?"":r]);else{const l=[...n.value],u=l.indexOf(r);u>-1?l.splice(u,1):l.push(r),o(l)}},s=async r=>{const{beforeCollapse:l}=e;if(!l){a(r);return}const u=l(r);[mr(u),Ht(u)].includes(!0)||nn(s0,"beforeCollapse must return type `Promise` or `boolean`"),mr(u)?u.then(c=>{c!==!1&&a(r)}).catch(c=>{pt(s0,`some error occurred: ${c}`)}):u&&a(r)};return le(()=>e.modelValue,()=>n.value=Nn(e.modelValue),{deep:!0}),St(a2,{activeNames:n,handleItemClick:s}),{activeNames:n,setActiveNames:o}},k6=e=>{const t=fe("collapse");return{rootKls:w(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}};var E6=se({name:"ElCollapse",__name:"collapse",props:g6,emits:b6,setup(e,{expose:t,emit:n}){const o=e,{activeNames:a,setActiveNames:s}=C6(o,n),{rootKls:r}=k6(o);return t({activeNames:a,setActiveNames:s}),(l,u)=>(x(),B("div",{class:T(i(r))},[ee(l.$slots,"default")],2))}}),x6=E6;const T6=e=>{const t=_e(a2),{namespace:n}=fe("collapse"),o=M(!1),a=M(!1),s=Jv(),r=w(()=>s.current++),l=w(()=>e.name??`${n.value}-id-${s.prefix}-${i(r)}`),u=w(()=>t?.activeNames.value.includes(i(l)));return{focusing:o,id:r,isActive:u,handleFocus:()=>{setTimeout(()=>{a.value?a.value=!1:o.value=!0},50)},handleHeaderClick:v=>{e.disabled||v.target?.closest("input, textarea, select")||(t?.handleItemClick(i(l)),o.value=!1,a.value=!0)},handleEnterClick:v=>{v.target?.closest("input, textarea, select")||(v.preventDefault(),t?.handleItemClick(i(l)))}}},$6=(e,{focusing:t,isActive:n,id:o})=>{const a=fe("collapse"),s=w(()=>[a.b("item"),a.is("active",i(n)),a.is("disabled",e.disabled)]),r=w(()=>[a.be("item","header"),a.is("active",i(n)),{focusing:i(t)&&!e.disabled}]),l=w(()=>[a.be("item","arrow"),a.is("active",i(n))]);return{itemTitleKls:w(()=>[a.be("item","title")]),arrowKls:l,headKls:r,rootKls:s,itemWrapperKls:w(()=>a.be("item","wrap")),itemContentKls:w(()=>a.be("item","content")),scopedContentId:w(()=>a.b(`content-${i(o)}`)),scopedHeadId:w(()=>a.b(`head-${i(o)}`))}},O6=["id","aria-expanded","aria-controls","aria-describedby","tabindex","aria-disabled"],R6=["id","aria-hidden","aria-labelledby"];var N6=se({name:"ElCollapseItem",__name:"collapse-item",props:y6,setup(e,{expose:t}){const n=e,{focusing:o,id:a,isActive:s,handleFocus:r,handleHeaderClick:l,handleEnterClick:u}=T6(n),{arrowKls:c,headKls:d,rootKls:f,itemTitleKls:v,itemWrapperKls:g,itemContentKls:p,scopedContentId:h,scopedHeadId:m}=$6(n,{focusing:o,isActive:s,id:a});return t({isActive:s}),(b,k)=>(x(),B("div",{class:T(i(f))},[z("div",{id:i(m),class:T(i(d)),"aria-expanded":i(s),"aria-controls":i(h),"aria-describedby":i(h),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"button",onClick:k[0]||(k[0]=(...y)=>i(l)&&i(l)(...y)),onKeydown:k[1]||(k[1]=an(Xe((...y)=>i(u)&&i(u)(...y),["stop"]),["space","enter"])),onFocus:k[2]||(k[2]=(...y)=>i(r)&&i(r)(...y)),onBlur:k[3]||(k[3]=y=>o.value=!1)},[z("span",{class:T(i(v))},[ee(b.$slots,"title",{isActive:i(s)},()=>[wt(Se(e.title),1)])],2),ee(b.$slots,"icon",{isActive:i(s)},()=>[Y(i(De),{class:T(i(c))},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1},8,["class"])])],42,O6),Y(i(uf),null,{default:J(()=>[ut(z("div",{id:i(h),role:"region",class:T(i(g)),"aria-hidden":!i(s),"aria-labelledby":i(m)},[z("div",{class:T(i(p))},[ee(b.$slots,"default")],2)],10,R6),[[Pt,i(s)]])]),_:3})],2))}}),s2=N6;const I6=rt(x6,{CollapseItem:s2}),P6=on(s2),r2=Ce({modelValue:{type:G(String),default:void 0},border:{type:Boolean,default:!0},showAlpha:Boolean,colorFormat:{type:G(String)},disabled:Boolean,predefine:{type:G(Array)},validateEvent:{type:Boolean,default:!0}}),M6={[ot]:e=>Le(e)||bn(e)},l2=Symbol("colorCommonPickerKey"),i2=Symbol("colorPickerPanelContextKey"),u2=Ce({color:{type:G(Object),required:!0},vertical:Boolean,disabled:Boolean}),_6=u2,r0=e=>{let t=0,n=e;for(;n;)t+=n.offsetTop,n=n.offsetParent;return t},gh=(e,t)=>Math.abs(r0(e)-r0(t)),c2=e=>{let t,n;return e.type==="touchend"?(n=e.changedTouches[0].clientY,t=e.changedTouches[0].clientX):e.type.startsWith("touch")?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}};let np=!1;function bh(e,t){if(!Mt)return;const n=function(s){t.drag?.(s)},o=function(s){document.removeEventListener("mousemove",n),document.removeEventListener("mouseup",o),document.removeEventListener("touchmove",n),document.removeEventListener("touchend",o),document.onselectstart=null,document.ondragstart=null,np=!1,t.end?.(s)},a=function(s){np||(document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener("mousemove",n),document.addEventListener("mouseup",o),document.addEventListener("touchmove",n),document.addEventListener("touchend",o),np=!0,t.start?.(s))};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a,{passive:!1})}const d2=(e,{key:t,minValue:n,maxValue:o})=>{const a=ft(),s=Xt(),r=Xt(),l=w(()=>e.color.get(t));function u(v){e.disabled||(v.target!==s.value&&c(v),s.value?.focus())}function c(v){if(!r.value||!s.value||e.disabled)return;const g=a.vnode.el.getBoundingClientRect(),{clientX:p,clientY:h}=c2(v);let m;if(e.vertical){let b=h-g.top;b=Math.max(s.value.offsetHeight/2,b),b=Math.min(b,g.height-s.value.offsetHeight/2),m=Math.round((b-s.value.offsetHeight/2)/(g.height-s.value.offsetHeight)*o)}else{let b=p-g.left;b=Math.max(s.value.offsetWidth/2,b),b=Math.min(b,g.width-s.value.offsetWidth/2),m=Math.round((b-s.value.offsetWidth/2)/(g.width-s.value.offsetWidth)*o)}e.color.set(t,m)}function d(v){if(e.disabled)return;const{shiftKey:g}=v,p=jt(v),h=g?10:1,m=t==="hue"?-1:1;let b=!0;switch(p){case we.left:case we.down:f(-h*m);break;case we.right:case we.up:f(h*m);break;case we.home:e.color.set(t,t==="hue"?o:n);break;case we.end:e.color.set(t,t==="hue"?n:o);break;case we.pageDown:f(-4*m);break;case we.pageUp:f(4*m);break;default:b=!1;break}b&&v.preventDefault()}function f(v){let g=l.value+v;g=go?o:g,e.color.set(t,g)}return{thumb:s,bar:r,currentValue:l,handleDrag:c,handleClick:u,handleKeydown:d}},f2=(e,{namespace:t,maxValue:n,bar:o,thumb:a,currentValue:s,handleDrag:r,getBackground:l})=>{const u=ft(),c=fe(t),d=M(0),f=M(0),v=M();function g(){if(!a.value||e.vertical)return 0;const y=u.vnode.el,S=s.value;return y?Math.round(S*(y.offsetWidth-a.value.offsetWidth/2)/n):0}function p(){if(!a.value)return 0;const y=u.vnode.el;if(!e.vertical)return 0;const S=s.value;return y?Math.round(S*(y.offsetHeight-a.value.offsetHeight/2)/n):0}function h(){d.value=g(),f.value=p(),v.value=l?.()}ht(()=>{if(!o.value||!a.value)return;const y={drag:S=>{r(S)},end:S=>{r(S)}};bh(o.value,y),bh(a.value,y),h()}),le(s,()=>h()),le(()=>e.color.value,()=>h());const m=w(()=>[c.b(),c.is("vertical",e.vertical),c.is("disabled",e.disabled)]),b=w(()=>c.e("bar")),k=w(()=>c.e("thumb"));return{rootKls:m,barKls:b,barStyle:w(()=>({background:v.value})),thumbKls:k,thumbStyle:w(()=>({left:ln(d.value),top:ln(f.value)})),thumbLeft:d,thumbTop:f,update:h}},A6=["aria-label","aria-valuenow","aria-valuetext","aria-orientation","tabindex","aria-disabled"],l0=0,op=100;var L6=se({name:"ElColorAlphaSlider",__name:"alpha-slider",props:u2,setup(e,{expose:t}){const n=e,{currentValue:o,bar:a,thumb:s,handleDrag:r,handleClick:l,handleKeydown:u}=d2(n,{key:"alpha",minValue:l0,maxValue:op}),{rootKls:c,barKls:d,barStyle:f,thumbKls:v,thumbStyle:g,update:p}=f2(n,{namespace:"color-alpha-slider",maxValue:op,currentValue:o,bar:a,thumb:s,handleDrag:r,getBackground:k}),{t:h}=Ct(),m=w(()=>h("el.colorpicker.alphaLabel")),b=w(()=>h("el.colorpicker.alphaDescription",{alpha:o.value,color:n.color.value}));function k(){if(n.color&&n.color.value){const{r:y,g:S,b:C}=n.color.toRgb();return`linear-gradient(to right, rgba(${y}, ${S}, ${C}, 0) 0%, rgba(${y}, ${S}, ${C}, 1) 100%)`}return""}return t({update:p,bar:a,thumb:s}),(y,S)=>(x(),B("div",{class:T(i(c))},[z("div",{ref_key:"bar",ref:a,class:T(i(d)),style:Ke(i(f)),onClick:S[0]||(S[0]=(...C)=>i(l)&&i(l)(...C))},null,6),z("div",{ref_key:"thumb",ref:s,class:T(i(v)),style:Ke(i(g)),"aria-label":m.value,"aria-valuenow":i(o),"aria-valuetext":b.value,"aria-orientation":e.vertical?"vertical":"horizontal","aria-valuemin":l0,"aria-valuemax":op,role:"slider",tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,onKeydown:S[1]||(S[1]=(...C)=>i(u)&&i(u)(...C))},null,46,A6)],2))}}),D6=L6;const B6=["aria-label","aria-valuenow","aria-valuetext","aria-orientation","tabindex","aria-disabled"],i0=0,ap=360;var F6=se({name:"ElColorHueSlider",__name:"hue-slider",props:_6,setup(e,{expose:t}){const n=e,{currentValue:o,bar:a,thumb:s,handleDrag:r,handleClick:l,handleKeydown:u}=d2(n,{key:"hue",minValue:i0,maxValue:ap}),{rootKls:c,barKls:d,thumbKls:f,thumbStyle:v,thumbTop:g,update:p}=f2(n,{namespace:"color-hue-slider",maxValue:ap,currentValue:o,bar:a,thumb:s,handleDrag:r}),{t:h}=Ct(),m=w(()=>h("el.colorpicker.hueLabel")),b=w(()=>h("el.colorpicker.hueDescription",{hue:o.value,color:n.color.value}));return t({bar:a,thumb:s,thumbTop:g,update:p}),(k,y)=>(x(),B("div",{class:T(i(c))},[z("div",{ref_key:"bar",ref:a,class:T(i(d)),onClick:y[0]||(y[0]=(...S)=>i(l)&&i(l)(...S))},null,2),z("div",{ref_key:"thumb",ref:s,class:T(i(f)),style:Ke(i(v)),"aria-label":m.value,"aria-valuenow":i(o),"aria-valuetext":b.value,"aria-orientation":e.vertical?"vertical":"horizontal","aria-valuemin":i0,"aria-valuemax":ap,role:"slider",tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,onKeydown:y[1]||(y[1]=(...S)=>i(u)&&i(u)(...S))},null,46,B6)],2))}}),V6=F6;const z6=Ce({colors:{type:G(Array),required:!0},color:{type:G(Object),required:!0},enableAlpha:{type:Boolean,required:!0},disabled:Boolean});var id=class{constructor(e={}){this._hue=0,this._saturation=100,this._value=100,this._alpha=100,this._tiny=new pn,this._isValid=!1,this.enableAlpha=!1,this.format="",this.value="";for(const t in e)Nt(e,t)&&(this[t]=e[t]);e.value?this.fromString(e.value):this.doOnChange()}set(e,t){if(arguments.length===1&&typeof e=="object"){for(const n in e)Nt(e,n)&&this.set(n,e[n]);return}this[`_${e}`]=t,this._isValid=!0,this.doOnChange()}get(e){return["hue","saturation","value","alpha"].includes(e)?Math.round(this[`_${e}`]):this[`_${e}`]}toRgb(){return this._isValid?this._tiny.toRgb():{r:255,g:255,b:255,a:0}}fromString(e){const t=new pn(e);if(this._isValid=t.isValid,t.isValid){const{h:n,s:o,v:a,a:s}=t.toHsv();this._hue=n,this._saturation=o*100,this._value=a*100,this._alpha=s*100}else this._hue=0,this._saturation=100,this._value=100,this._alpha=100;this.doOnChange()}clear(){this._isValid=!1,this.value="",this._hue=0,this._saturation=100,this._value=100,this._alpha=100}compare(e){const t=new pn({h:e._hue,s:e._saturation/100,v:e._value/100,a:e._alpha/100});return this._tiny.equals(t)}doOnChange(){const{_hue:e,_saturation:t,_value:n,_alpha:o,format:a,enableAlpha:s}=this;let r=a||(s?"rgb":"hex");a==="hex"&&s&&(r="hex8"),this._tiny=new pn({h:e,s:t/100,v:n/100,a:o/100}),this.value=this._isValid?this._tiny.toString(r):""}};const H6=e=>{const{currentColor:t}=_e(i2),n=M(a(e.colors,e.color));le(()=>t.value,s=>{const r=new id({value:s,enableAlpha:e.enableAlpha});n.value.forEach(l=>{l.selected=r.compare(l)})}),So(()=>{n.value=a(e.colors,e.color)});function o(s){e.color.fromString(e.colors[s])}function a(s,r){return s.map(l=>{const u=new id({value:l,enableAlpha:e.enableAlpha});return u.selected=u.compare(r),u})}return{rgbaColors:n,handleSelect:o}},K6=e=>{const t=fe("color-predefine"),n=w(()=>[t.b(),t.is("disabled",e.disabled)]),o=w(()=>t.e("colors"));function a(s){return[t.e("color-selector"),t.is("alpha",s.get("alpha")<100),{selected:s.selected}]}return{rootKls:n,colorsKls:o,colorSelectorKls:a}},W6=["disabled","aria-label","onClick"];var j6=se({name:"ElColorPredefine",__name:"predefine",props:z6,setup(e){const t=e,{rgbaColors:n,handleSelect:o}=H6(t),{rootKls:a,colorsKls:s,colorSelectorKls:r}=K6(t),{t:l}=Ct(),u=c=>l("el.colorpicker.predefineDescription",{value:c});return(c,d)=>(x(),B("div",{class:T(i(a))},[z("div",{class:T(i(s))},[(x(!0),B(Fe,null,yt(i(n),(f,v)=>(x(),B("button",{key:e.colors[v],type:"button",disabled:e.disabled,"aria-label":u(f.value),class:T(i(r)(f)),onClick:g=>i(o)(v)},[z("div",{style:Ke({backgroundColor:f.value})},null,4)],10,W6))),128))],2)],2))}}),U6=j6;const q6=Ce({color:{type:G(Object),required:!0},disabled:Boolean}),Y6=e=>{const t=ft(),n=M(),o=M(0),a=M(0),s=M("hsl(0, 100%, 50%)"),r=w(()=>e.color.get("saturation")),l=w(()=>e.color.get("value")),u=w(()=>e.color.get("hue"));function c(p){e.disabled||(p.target!==n.value&&d(p),n.value?.focus({preventScroll:!0}))}function d(p){if(e.disabled)return;const h=t.vnode.el.getBoundingClientRect(),{clientX:m,clientY:b}=c2(p);let k=m-h.left,y=b-h.top;k=Math.max(0,k),k=Math.min(k,h.width),y=Math.max(0,y),y=Math.min(y,h.height),a.value=k,o.value=y,e.color.set({saturation:k/h.width*100,value:100-y/h.height*100})}function f(p){if(e.disabled)return;const{shiftKey:h}=p,m=jt(p),b=h?10:1;let k=!0;switch(m){case we.left:v(-b);break;case we.right:v(b);break;case we.up:g(b);break;case we.down:g(-b);break;default:k=!1;break}k&&p.preventDefault()}function v(p){let h=r.value+p;h=h<0?0:h>100?100:h,e.color.set("saturation",h)}function g(p){let h=l.value+p;h=h<0?0:h>100?100:h,e.color.set("value",h)}return{cursorRef:n,cursorTop:o,cursorLeft:a,background:s,saturation:r,brightness:l,hue:u,handleClick:c,handleDrag:d,handleKeydown:f}},G6=(e,{cursorTop:t,cursorLeft:n,background:o,handleDrag:a})=>{const s=ft(),r=fe("color-svpanel");function l(){const u=e.color.get("saturation"),c=e.color.get("value"),{clientWidth:d,clientHeight:f}=s.vnode.el;n.value=u*d/100,t.value=(100-c)*f/100,o.value=`hsl(${e.color.get("hue")}, 100%, 50%)`}return ht(()=>{bh(s.vnode.el,{drag:u=>{a(u)},end:u=>{a(u)}}),l()}),le([()=>e.color.get("hue"),()=>e.color.get("value"),()=>e.color.value],()=>l()),{rootKls:w(()=>r.b()),cursorKls:w(()=>r.e("cursor")),rootStyle:w(()=>({backgroundColor:o.value})),cursorStyle:w(()=>({top:ln(t.value),left:ln(n.value)})),update:l}},X6=["tabindex","aria-disabled","aria-label","aria-valuenow","aria-valuetext"];var J6=se({name:"ElSvPanel",__name:"sv-panel",props:q6,setup(e,{expose:t}){const n=e,{cursorRef:o,cursorTop:a,cursorLeft:s,background:r,saturation:l,brightness:u,handleClick:c,handleDrag:d,handleKeydown:f}=Y6(n),{rootKls:v,cursorKls:g,rootStyle:p,cursorStyle:h,update:m}=G6(n,{cursorTop:a,cursorLeft:s,background:r,handleDrag:d}),{t:b}=Ct(),k=w(()=>b("el.colorpicker.svLabel")),y=w(()=>b("el.colorpicker.svDescription",{saturation:l.value,brightness:u.value,color:n.color.value}));return t({update:m}),(S,C)=>(x(),B("div",{class:T(i(v)),style:Ke(i(p)),onClick:C[1]||(C[1]=(...E)=>i(c)&&i(c)(...E))},[z("div",{ref_key:"cursorRef",ref:o,class:T(i(g)),style:Ke(i(h)),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"slider","aria-valuemin":"0,0","aria-valuemax":"100,100","aria-label":k.value,"aria-valuenow":`${i(l)},${i(u)}`,"aria-valuetext":y.value,onKeydown:C[0]||(C[0]=(...E)=>i(f)&&i(f)(...E))},null,46,X6)],6))}}),Z6=J6;const p2=(e,t)=>{const n=At(new id({enableAlpha:e.showAlpha,format:e.colorFormat||"",value:e.modelValue}));return le(()=>[e.colorFormat,e.showAlpha],()=>{n.enableAlpha=e.showAlpha,n.format=e.colorFormat||n.format,n.doOnChange(),t(ot,n.value)}),{color:n}};var Q6=se({name:"ElColorPickerPanel",__name:"color-picker-panel",props:r2,emits:M6,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("color-picker-panel"),{formItem:r}=Dn(),l=un(),u=M(),c=M(),d=M(),f=M(),v=M(""),{color:g}=_e(l2,()=>p2(o,a),!0);function p(){g.fromString(v.value),g.value!==v.value&&(v.value=g.value)}function h(){o.validateEvent&&r?.validate?.("blur").catch(b=>pt(b))}function m(){u.value?.update(),c.value?.update(),d.value?.update()}return ht(()=>{o.modelValue&&(v.value=g.value),Re(m)}),le(()=>o.modelValue,b=>{b!==g.value&&(b?g.fromString(b):g.clear())}),le(()=>g.value,b=>{a(ot,b),v.value=b,o.validateEvent&&r?.validate("change").catch(k=>pt(k))}),St(i2,{currentColor:w(()=>g.value)}),t({color:g,inputRef:f,update:m}),(b,k)=>(x(),B("div",{class:T([i(s).b(),i(s).is("disabled",i(l)),i(s).is("border",e.border)]),onFocusout:h},[z("div",{class:T(i(s).e("wrapper"))},[Y(V6,{ref_key:"hueRef",ref:u,class:"hue-slider",color:i(g),vertical:"",disabled:i(l)},null,8,["color","disabled"]),Y(Z6,{ref_key:"svRef",ref:c,color:i(g),disabled:i(l)},null,8,["color","disabled"])],2),e.showAlpha?(x(),ae(D6,{key:0,ref_key:"alphaRef",ref:d,color:i(g),disabled:i(l)},null,8,["color","disabled"])):te("v-if",!0),e.predefine?(x(),ae(U6,{key:1,ref:"predefine","enable-alpha":e.showAlpha,color:i(g),colors:e.predefine,disabled:i(l)},null,8,["enable-alpha","color","colors","disabled"])):te("v-if",!0),z("div",{class:T(i(s).e("footer"))},[Y(i(eo),{ref_key:"inputRef",ref:f,modelValue:v.value,"onUpdate:modelValue":k[0]||(k[0]=y=>v.value=y),"validate-event":!1,size:"small",disabled:i(l),onChange:p},null,8,["modelValue","disabled"]),ee(b.$slots,"footer")],2)],34))}}),ez=Q6;const h2=rt(ez),tz=Ce({persistent:{type:Boolean,default:!0},modelValue:{type:G(String),default:void 0},id:String,showAlpha:Boolean,colorFormat:{type:G(String)},disabled:{type:Boolean,default:void 0},clearable:{type:Boolean,default:!0},size:Tn,popperClass:zt.popperClass,popperStyle:zt.popperStyle,tabindex:{type:[String,Number],default:0},teleported:zt.teleported,appendTo:zt.appendTo,predefine:{type:G(Array)},validateEvent:{type:Boolean,default:!0},...Pr,...oo(["ariaLabel"])}),nz={[ot]:e=>Le(e)||bn(e),[bt]:e=>Le(e)||bn(e),activeChange:e=>Le(e)||bn(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},oz=["id","aria-label","aria-labelledby","aria-description","aria-disabled","tabindex"];var az=se({name:"ElColorPicker",__name:"color-picker",props:tz,emits:nz,setup(e,{expose:t,emit:n}){const o=e,a=n,{t:s}=Ct(),r=fe("color"),{formItem:l}=Dn(),u=Cn(),c=un(),{valueOnClear:d,isEmptyValue:f}=mu(o,null),v=p2(o,a),{inputId:g,isLabeledByFormItem:p}=Po(o,{formItemContext:l}),h=M(),m=M(),b=M(),k=M(!1),y=M(!1);let S=!0;const{isFocused:C,handleFocus:E,handleBlur:$}=ms(m,{disabled:c,beforeBlur(oe){return h.value?.isFocusInsideContent(oe)},afterBlur(){W(!1),D(),o.validateEvent&&l?.validate?.("blur").catch(oe=>pt(oe))}}),O=qM(()=>b.value?.color??v.color),N=w(()=>ss(o,Object.keys(r2))),R=w(()=>!o.modelValue&&!y.value?"transparent":U(O,o.showAlpha)),A=w(()=>!o.modelValue&&!y.value?"":O.value),_=w(()=>p.value?void 0:o.ariaLabel||s("el.colorpicker.defaultLabel")),V=w(()=>p.value?l?.labelId:void 0),H=w(()=>[r.b("picker"),r.is("disabled",c.value),r.bm("picker",u.value),r.is("focused",C.value)]);function U(oe,ne){const{r:K,g:Z,b:re,a:ce}=oe.toRgb();return ne?`rgba(${K}, ${Z}, ${re}, ${ce})`:`rgb(${K}, ${Z}, ${re})`}function W(oe){k.value=oe}const P=Ma(W,100,{leading:!0});function I(){c.value||W(!0)}function L(){P(!1),D()}function D(){Re(()=>{o.modelValue?O.fromString(o.modelValue):(O.value="",Re(()=>{y.value=!1}))})}function F(){c.value||(k.value&&D(),P(!k.value))}function q(){const oe=f(O.value)?d.value:O.value;a(ot,oe),a(bt,oe),o.validateEvent&&l?.validate("change").catch(ne=>pt(ne)),P(!1),Re(()=>{const ne=new id({enableAlpha:o.showAlpha,format:o.colorFormat||"",value:o.modelValue});O.compare(ne)||D()})}function j(){P(!1),a(ot,d.value),a(bt,d.value),o.modelValue!==d.value&&o.validateEvent&&l?.validate("change").catch(oe=>pt(oe)),D(),a("clear")}function X(){b?.value?.inputRef?.focus()}function Q(){k.value&&(L(),C.value&&ge())}function he(oe){oe.preventDefault(),oe.stopPropagation(),W(!1),D()}function ue(oe){switch(jt(oe)){case we.enter:case we.numpadEnter:case we.space:oe.preventDefault(),oe.stopPropagation(),I();break;case we.esc:he(oe);break}}function ge(){m.value.focus()}function ie(){m.value.blur()}return le(()=>A.value,oe=>{S&&a("activeChange",oe),S=!0}),le(()=>O.value,()=>{!o.modelValue&&!y.value&&(y.value=!0)}),le(()=>o.modelValue,oe=>{oe?oe&&oe!==O.value&&(S=!1,O.fromString(oe)):y.value=!1}),le(()=>k.value,()=>{b.value&&Re(b.value.update)}),St(l2,v),t({color:O,show:I,hide:L,focus:ge,blur:ie}),(oe,ne)=>(x(),ae(i(Ln),{ref_key:"popper",ref:h,visible:k.value,"show-arrow":!1,"fallback-placements":["bottom","top","right","left"],offset:0,"gpu-acceleration":!1,"popper-class":[i(r).be("picker","panel"),e.popperClass],"popper-style":e.popperStyle,"stop-popper-mouse-event":!1,pure:"",loop:"",role:"dialog",effect:"light",trigger:"click",teleported:e.teleported,transition:`${i(r).namespace.value}-zoom-in-top`,persistent:e.persistent,"append-to":e.appendTo,onShow:X,onHide:ne[2]||(ne[2]=K=>W(!1))},{content:J(()=>[ut((x(),ae(i(h2),dt({ref_key:"pickerPanelRef",ref:b},N.value,{border:!1,"validate-event":!1,onKeydown:an(he,["esc"])}),{footer:J(()=>[z("div",null,[e.clearable?(x(),ae(i(In),{key:0,class:T(i(r).be("footer","link-btn")),text:"",size:"small",onClick:j},{default:J(()=>[wt(Se(i(s)("el.colorpicker.clear")),1)]),_:1},8,["class"])):te("v-if",!0),Y(i(In),{plain:"",size:"small",class:T(i(r).be("footer","btn")),onClick:q},{default:J(()=>[wt(Se(i(s)("el.colorpicker.confirm")),1)]),_:1},8,["class"])])]),_:1},16)),[[i(zs),Q,m.value]])]),default:J(()=>[z("div",dt({id:i(g),ref_key:"triggerRef",ref:m},oe.$attrs,{class:H.value,role:"button","aria-label":_.value,"aria-labelledby":V.value,"aria-description":i(s)("el.colorpicker.description",{color:e.modelValue||""}),"aria-disabled":i(c),tabindex:i(c)?void 0:e.tabindex,onKeydown:ue,onFocus:ne[0]||(ne[0]=(...K)=>i(E)&&i(E)(...K)),onBlur:ne[1]||(ne[1]=(...K)=>i($)&&i($)(...K))}),[z("div",{class:T(i(r).be("picker","trigger")),onClick:F},[z("span",{class:T([i(r).be("picker","color"),i(r).is("alpha",e.showAlpha)])},[z("span",{class:T(i(r).be("picker","color-inner")),style:Ke({backgroundColor:R.value})},[ut(Y(i(De),{class:T([i(r).be("picker","icon"),i(r).is("icon-arrow-down")])},{default:J(()=>[Y(i(Fa))]),_:1},8,["class"]),[[Pt,e.modelValue||y.value]]),ut(Y(i(De),{class:T([i(r).be("picker","empty"),i(r).is("icon-close")])},{default:J(()=>[Y(i(Ko))]),_:1},8,["class"]),[[Pt,!e.modelValue&&!y.value]])],6)],2)],2)],16,oz)]),_:1},8,["visible","popper-class","popper-style","teleported","transition","persistent","append-to"]))}}),sz=az;const rz=rt(sz);var lz=se({name:"ElContainer",__name:"container",props:{direction:{type:String,required:!1}},setup(e){const t=e,n=vn(),o=fe("container"),a=w(()=>t.direction==="vertical"?!0:t.direction==="horizontal"?!1:n&&n.default?n.default().some(s=>{const r=s.type.name;return r==="ElHeader"||r==="ElFooter"}):!1);return(s,r)=>(x(),B("section",{class:T([i(o).b(),i(o).is("vertical",a.value)])},[ee(s.$slots,"default")],2))}}),iz=lz,uz=se({name:"ElAside",__name:"aside",props:{width:{type:[String,null],required:!1,default:null}},setup(e){const t=e,n=fe("aside"),o=w(()=>t.width?n.cssVarBlock({width:t.width}):{});return(a,s)=>(x(),B("aside",{class:T(i(n).b()),style:Ke(o.value)},[ee(a.$slots,"default")],6))}}),v2=uz,cz=se({name:"ElFooter",__name:"footer",props:{height:{type:[String,null],required:!1,default:null}},setup(e){const t=e,n=fe("footer"),o=w(()=>t.height?n.cssVarBlock({height:t.height}):{});return(a,s)=>(x(),B("footer",{class:T(i(n).b()),style:Ke(o.value)},[ee(a.$slots,"default")],6))}}),m2=cz,dz=se({name:"ElHeader",__name:"header",props:{height:{type:[String,null],required:!1,default:null}},setup(e){const t=e,n=fe("header"),o=w(()=>t.height?n.cssVarBlock({height:t.height}):{});return(a,s)=>(x(),B("header",{class:T(i(n).b()),style:Ke(o.value)},[ee(a.$slots,"default")],6))}}),g2=dz,fz=se({name:"ElMain",__name:"main",setup(e){const t=fe("main");return(n,o)=>(x(),B("main",{class:T(i(t).b())},[ee(n.$slots,"default")],2))}}),b2=fz;const pz=rt(iz,{Aside:v2,Footer:m2,Header:g2,Main:b2}),hz=on(v2),vz=on(m2),mz=on(g2),gz=on(b2),bz=Ce({format:{type:String,default:"HH:mm:ss"},prefix:String,suffix:String,title:String,value:{type:G([Number,Object]),default:0},valueStyle:{type:G([String,Object,Array])}}),yz={finish:()=>!0,[bt]:e=>He(e)},wz=Ce({decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},precision:{type:Number,default:0},formatter:Function,value:{type:G([Number,Object]),default:0},prefix:String,suffix:String,title:String,valueStyle:{type:G([String,Object,Array])}});var Sz=se({name:"ElStatistic",__name:"statistic",props:wz,setup(e,{expose:t}){const n=e,o=fe("statistic"),a=w(()=>{const{value:s,formatter:r,precision:l,decimalSeparator:u,groupSeparator:c}=n;if(Ve(r))return r(s);if(!He(s)||Number.isNaN(s))return s;let[d,f=""]=String(s).split(".");return f=f.padEnd(l,"0").slice(0,l>0?l:0),d=d.replace(/\B(?=(\d{3})+(?!\d))/g,c),[d,f].join(f?u:"")});return t({displayValue:a}),(s,r)=>(x(),B("div",{class:T(i(o).b())},[s.$slots.title||e.title?(x(),B("div",{key:0,class:T(i(o).e("head"))},[ee(s.$slots,"title",{},()=>[wt(Se(e.title),1)])],2)):te("v-if",!0),z("div",{class:T(i(o).e("content"))},[s.$slots.prefix||e.prefix?(x(),B("div",{key:0,class:T(i(o).e("prefix"))},[ee(s.$slots,"prefix",{},()=>[z("span",null,Se(e.prefix),1)])],2)):te("v-if",!0),z("span",{class:T(i(o).e("number")),style:Ke(e.valueStyle)},Se(a.value),7),s.$slots.suffix||e.suffix?(x(),B("div",{key:1,class:T(i(o).e("suffix"))},[ee(s.$slots,"suffix",{},()=>[z("span",null,Se(e.suffix),1)])],2)):te("v-if",!0)],2)],2))}}),Cz=Sz;const y2=rt(Cz),kz=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]],u0=e=>He(e)?new Date(e).getTime():e.valueOf(),c0=(e,t)=>{let n=e;return kz.reduce((o,[a,s])=>{const r=new RegExp(`${a}+(?![^\\[\\]]*\\])`,"g");if(r.test(o)){const l=Math.floor(n/s);return n-=l*s,o.replace(r,u=>String(l).padStart(u.length,"0"))}return o},t).replace(/\[([^\]]*)]/g,"$1")};var Ez=se({name:"ElCountdown",__name:"countdown",props:bz,emits:yz,setup(e,{expose:t,emit:n}){const o=e,a=n;let s;const r=M(0),l=w(()=>c0(r.value,o.format)),u=f=>c0(f,o.format),c=()=>{s&&(rs(s),s=void 0)},d=()=>{const f=u0(o.value),v=()=>{let g=f-Date.now();a(bt,g),g<=0?(g=0,c(),a("finish")):s=ta(v),r.value=g};s=ta(v)};return ht(()=>{r.value=u0(o.value)-Date.now(),le(()=>[o.value,o.format],()=>{c(),d()},{immediate:!0})}),Bt(()=>{c()}),t({displayValue:l}),(f,v)=>(x(),ae(i(y2),{value:r.value,title:e.title,prefix:e.prefix,suffix:e.suffix,"value-style":e.valueStyle,formatter:u},uo({_:2},[yt(f.$slots,(g,p)=>({name:p,fn:J(()=>[ee(f.$slots,p)])}))]),1032,["value","title","prefix","suffix","value-style"]))}}),xz=Ez;const Tz=rt(xz),$z=Ce({valueFormat:String,dateFormat:String,timeFormat:String,disabled:{type:Boolean,default:void 0},modelValue:{type:G([Date,Array,String,Number]),default:""},defaultValue:{type:G([Date,Array])},defaultTime:{type:G([Date,Array])},isRange:Boolean,...pm,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,unlinkPanels:Boolean,showNow:{type:Boolean,default:!0},showConfirm:Boolean,showFooter:Boolean,showWeekNumber:Boolean,type:{type:G(String),default:"date"},clearable:{type:Boolean,default:!0},border:{type:Boolean,default:!0},editable:{type:Boolean,default:!0}}),Sm=Symbol("rootPickerContextKey"),Cu="ElIsDefaultFormat",Oz=["date","dates","year","years","month","months","week","range"],Cm=Ce({cellClassName:{type:G(Function)},disabledDate:{type:G(Function)},date:{type:G(Object),required:!0},minDate:{type:G(Object)},maxDate:{type:G(Object)},parsedValue:{type:G([Object,Array])},rangeState:{type:G(Object),default:()=>({endDate:null,selecting:!1})},disabled:Boolean}),w2=Ce({type:{type:G(String),required:!0,values:vO},dateFormat:String,timeFormat:String,showNow:{type:Boolean,default:!0},showConfirm:Boolean,showFooter:{type:Boolean,default:!0},showWeekNumber:Boolean,border:Boolean,disabled:Boolean,editable:{type:Boolean,default:!0}}),km=Ce({unlinkPanels:Boolean,visible:{type:Boolean,default:!0},showConfirm:Boolean,showFooter:{type:Boolean,default:!0},border:Boolean,disabled:Boolean,parsedValue:{type:G(Array)}}),Em=e=>({type:String,values:Oz,default:e}),Rz=Ce({...w2,parsedValue:{type:G([Object,Array])},visible:{type:Boolean,default:!0},format:{type:String,default:""}}),Di=e=>{if(!ye(e))return!1;const[t,n]=e;return st.isDayjs(t)&&st.isDayjs(n)&&st(t).isValid()&&st(n).isValid()&&t.isSameOrBefore(n)},cf=(e,{lang:t,step:n=1,unit:o,unlinkPanels:a})=>{let s;if(ye(e)){let[r,l]=e.map(u=>st(u).locale(t));return a||(l=r.add(n,o)),[r,l]}else e?s=st(e):s=st();return s=s.locale(t),[s,s.add(n,o)]},Nz=(e,t,{columnIndexOffset:n,startDate:o,nextEndDate:a,now:s,unit:r,relativeDateGetter:l,setCellMetadata:u,setRowMetadata:c})=>{for(let d=0;d{const a=st().locale(o).startOf("month").month(n).year(t).hour(e.hour()).minute(e.minute()).second(e.second());return _s(a.daysInMonth()).map(s=>a.add(s,"day").toDate())},Sl=(e,t,n,o,a)=>{const s=st().year(t).month(n).startOf("month").hour(e.hour()).minute(e.minute()).second(e.second()),r=ud(e,t,n,o).find(l=>!a?.(l));return r?st(r).locale(o):s.locale(o)},cd=(e,t,n)=>{const o=e.year();if(!n?.(e.toDate()))return e.locale(t);const a=e.month();if(!ud(e,o,a,t).every(n))return Sl(e,o,a,t,n);for(let s=0;s<12;s++)if(!ud(e,o,s,t).every(n))return Sl(e,o,s,t,n);return e},Cl=(e,t,n,o)=>{if(ye(e))return e.map(a=>Cl(a,t,n,o));if(Le(e)){const a=o?.value?st(e):st(e,t);if(!a.isValid())return a}return st(e,t).locale(n)},Iz=Ce({...Cm,showWeekNumber:Boolean,selectionMode:Em("date")}),Pz=["changerange","pick","select"],dd=(e="")=>["normal","today"].includes(e),Mz=(e,t)=>{const{lang:n}=Ct(),o=M(),a=M(),s=M(),r=M(),l=M([[],[],[],[],[],[]]);let u=!1;const c=e.date.$locale().weekStart||7,d=e.date.locale("en").localeData().weekdaysShort().map(L=>L.toLowerCase()),f=w(()=>c>3?7-c:-c),v=w(()=>{const L=e.date.startOf("month");return L.subtract(L.day()||7,"day")}),g=w(()=>d.concat(d).slice(c,c+7)),p=w(()=>Xc(i(S)).some(L=>L.isCurrent)),h=w(()=>{const L=e.date.startOf("month");return{startOfMonthDay:L.day()||7,dateCountOfMonth:L.daysInMonth(),dateCountOfLastMonth:L.subtract(1,"month").daysInMonth()}}),m=w(()=>e.selectionMode==="dates"?Zn(e.parsedValue):[]),b=(L,{count:D,rowIndex:F,columnIndex:q})=>{const{startOfMonthDay:j,dateCountOfMonth:X,dateCountOfLastMonth:Q}=i(h),he=i(f);if(F>=0&&F<=1){const ue=j+he<0?7+j+he:j+he;if(q+F*7>=ue)return L.text=D,!0;L.text=Q-(ue-q%7)+1+F*7,L.type="prev-month"}else return D<=X?L.text=D:(L.text=D-X,L.type="next-month"),!0;return!1},k=(L,{columnIndex:D,rowIndex:F},q)=>{const{disabledDate:j,cellClassName:X}=e,Q=i(m),he=b(L,{count:q,rowIndex:F,columnIndex:D}),ue=L.dayjs.toDate();return L.selected=Q.find(ge=>ge.isSame(L.dayjs,"day")),L.isSelected=!!L.selected,L.isCurrent=E(L),L.disabled=j?.(ue),L.customClass=X?.(ue),he},y=L=>{if(e.selectionMode==="week"){const[D,F]=e.showWeekNumber?[1,7]:[0,6],q=I(L[D+1]);L[D].inRange=q,L[D].start=q,L[F].inRange=q,L[F].end=q}},S=w(()=>{const{minDate:L,maxDate:D,rangeState:F,showWeekNumber:q}=e,j=i(f),X=i(l),Q="day";let he=1;if(Nz({row:6,column:7},X,{startDate:L,columnIndexOffset:q?1:0,nextEndDate:F.endDate||D||F.selecting&&L||null,now:st().locale(i(n)).startOf(Q),unit:Q,relativeDateGetter:ue=>i(v).add(ue-j,Q),setCellMetadata:(...ue)=>{k(...ue,he)&&(he+=1)},setRowMetadata:y}),q)for(let ue=0;ue<6;ue++)X[ue][1].dayjs&&(X[ue][0]={type:"week",text:X[ue][1].dayjs.week()});return X});le(()=>e.date,async()=>{i(o)?.contains(document.activeElement)&&(await Re(),await C())});const C=async()=>i(a)?.focus(),E=L=>e.selectionMode==="date"&&dd(L.type)&&$(L,e.parsedValue),$=(L,D)=>D?st(D).locale(i(n)).isSame(e.date.date(Number(L.text)),"day"):!1,O=(L,D)=>{const F=i(h).startOfMonthDay,q=i(f),j=F+q<0?7+F+q:F+q,X=L*7+(D-(e.showWeekNumber?1:0));return e.date.startOf("month").subtract(j,"day").add(X,"day")},N=L=>{if(!e.rangeState.selecting)return;let D=L.target;if(D.tagName==="SPAN"&&(D=D.parentNode?.parentNode),D.tagName==="DIV"&&(D=D.parentNode),D.tagName!=="TD")return;const F=D.parentNode.rowIndex-1,q=D.cellIndex;i(S)[F][q].disabled||(F!==i(s)||q!==i(r))&&(s.value=F,r.value=q,t("changerange",{selecting:!0,endDate:O(F,q)}))},R=L=>!i(p)&&L?.text===1&&dd(L.type)||L.isCurrent,A=L=>{u||i(p)||e.selectionMode!=="date"||P(L,!0)},_=L=>{L.target.closest("td")&&(u=!0)},V=L=>{L.target.closest("td")&&(u=!1)},H=L=>{!e.rangeState.selecting||!e.minDate?(t("pick",{minDate:L,maxDate:null}),t("select",!0)):(L>=e.minDate?t("pick",{minDate:e.minDate,maxDate:L}):t("pick",{minDate:L,maxDate:e.minDate}),t("select",!1))},U=L=>{const D=L.week(),F=`${L.year()}w${D}`;t("pick",{year:L.year(),week:D,value:F,date:L.startOf("week")})},W=(L,D)=>{t("pick",D?Zn(e.parsedValue).filter(F=>F?.valueOf()!==L.valueOf()):Zn(e.parsedValue).concat([L]))},P=(L,D=!1)=>{if(e.disabled)return;const F=L.target.closest("td");if(!F)return;const q=F.parentNode.rowIndex-1,j=F.cellIndex,X=i(S)[q][j];if(X.disabled||X.type==="week")return;const Q=O(q,j);switch(e.selectionMode){case"range":H(Q);break;case"date":t("pick",Q,D);break;case"week":U(Q);break;case"dates":W(Q,!!X.selected);break}},I=L=>{if(e.selectionMode!=="week")return!1;let D=e.date.startOf("day");if(L.type==="prev-month"&&(D=D.subtract(1,"month")),L.type==="next-month"&&(D=D.add(1,"month")),D=D.date(Number.parseInt(L.text,10)),e.parsedValue&&!ye(e.parsedValue)){const F=(e.parsedValue.day()-c+7)%7-1;return e.parsedValue.subtract(F,"day").isSame(D,"day")}return!1};return{WEEKS:g,rows:S,tbodyRef:o,currentCellRef:a,focus:C,isCurrent:E,isWeekActive:I,isSelectedCell:R,handlePickDate:P,handleMouseUp:V,handleMouseDown:_,handleMouseMove:N,handleFocus:A}},_z=(e,{isCurrent:t,isWeekActive:n})=>{const o=fe("date-table"),{t:a}=Ct(),s=w(()=>[o.b(),o.is("week-mode",e.selectionMode==="week"&&!e.disabled)]),r=w(()=>a("el.datepicker.dateTablePrompt")),l=c=>{const d=[];return dd(c.type)&&!c.disabled?(d.push("available"),c.type==="today"&&d.push("today")):d.push(c.type),t(c)&&d.push("current"),c.inRange&&(dd(c.type)||e.selectionMode==="week")&&(d.push("in-range"),c.start&&d.push("start-date"),c.end&&d.push("end-date")),(c.disabled||e.disabled)&&d.push("disabled"),c.selected&&d.push("selected"),c.customClass&&d.push(c.customClass),d.join(" ")},u=c=>[o.e("row"),{current:n(c)}];return{tableKls:s,tableLabel:r,weekHeaderClass:o.e("week-header"),getCellClasses:l,getRowKls:u,t:a}},Az=Ce({cell:{type:G(Object)}});var xm=se({name:"ElDatePickerCell",props:Az,setup(e){const t=fe("date-table-cell"),{slots:n}=_e(Sm);return()=>{const{cell:o}=e;return ee(n,"default",{...o},()=>[Y("div",{class:t.b()},[Y("span",{class:t.e("text")},[o?.renderText??o?.text])])])}}});const Lz=["aria-label"],Dz=["aria-label"],Bz=["aria-current","aria-selected","tabindex","aria-disabled"];var Fz=se({__name:"basic-date-table",props:Iz,emits:Pz,setup(e,{expose:t,emit:n}){const o=e,{WEEKS:a,rows:s,tbodyRef:r,currentCellRef:l,focus:u,isCurrent:c,isWeekActive:d,isSelectedCell:f,handlePickDate:v,handleMouseUp:g,handleMouseDown:p,handleMouseMove:h,handleFocus:m}=Mz(o,n),{tableLabel:b,tableKls:k,getCellClasses:y,getRowKls:S,weekHeaderClass:C,t:E}=_z(o,{isCurrent:c,isWeekActive:d});let $=!1;return Bt(()=>{$=!0}),t({focus:u}),(O,N)=>(x(),B("table",{"aria-label":i(b),class:T(i(k)),cellspacing:"0",cellpadding:"0",role:"grid",onClick:N[1]||(N[1]=(...R)=>i(v)&&i(v)(...R)),onMousemove:N[2]||(N[2]=(...R)=>i(h)&&i(h)(...R)),onMousedown:N[3]||(N[3]=(...R)=>i(p)&&i(p)(...R)),onMouseup:N[4]||(N[4]=(...R)=>i(g)&&i(g)(...R))},[z("tbody",{ref_key:"tbodyRef",ref:r},[z("tr",null,[O.showWeekNumber?(x(),B("th",{key:0,scope:"col",class:T(i(C))},null,2)):te("v-if",!0),(x(!0),B(Fe,null,yt(i(a),(R,A)=>(x(),B("th",{key:A,"aria-label":i(E)("el.datepicker.weeksFull."+R),scope:"col"},Se(i(E)("el.datepicker.weeks."+R)),9,Dz))),128))]),(x(!0),B(Fe,null,yt(i(s),(R,A)=>(x(),B("tr",{key:A,class:T(i(S)(O.showWeekNumber?R[2]:R[1]))},[(x(!0),B(Fe,null,yt(R,(_,V)=>(x(),B("td",{key:`${A}.${V}`,ref_for:!0,ref:H=>!i($)&&i(f)(_)&&(l.value=H),class:T(i(y)(_)),"aria-current":_.isCurrent?"date":void 0,"aria-selected":_.isCurrent,tabindex:O.disabled?void 0:i(f)(_)?0:-1,"aria-disabled":O.disabled,onFocus:N[0]||(N[0]=(...H)=>i(m)&&i(m)(...H))},[Y(i(xm),{cell:_},null,8,["cell"])],42,Bz))),128))],2))),128))],512)],42,Lz))}}),yh=Fz;const Vz=Ce({...Cm,selectionMode:Em("month")}),zz=["aria-label"],Hz=["aria-selected","aria-label","tabindex","onKeydown"];var Kz=se({__name:"basic-month-table",props:Vz,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("month-table"),{t:r,lang:l}=Ct(),u=M(),c=M(),d=M(o.date.locale("en").localeData().monthsShort().map(S=>S.toLowerCase())),f=M([[],[],[]]),v=M(),g=M(),p=w(()=>{const S=f.value,C=st().locale(l.value).startOf("month");for(let E=0;E<3;E++){const $=S[E];for(let O=0;O<4;O++){const N=$[O]||={row:E,column:O,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1,isSelected:!1,customClass:void 0,date:void 0,dayjs:void 0,isCurrent:void 0,selected:void 0,renderText:void 0,timestamp:void 0};N.type="normal";const R=E*4+O,A=o.date.startOf("year").month(R),_=o.rangeState.endDate||o.maxDate||o.rangeState.selecting&&o.minDate||null;N.inRange=!!(o.minDate&&A.isSameOrAfter(o.minDate,"month")&&_&&A.isSameOrBefore(_,"month"))||!!(o.minDate&&A.isSameOrBefore(o.minDate,"month")&&_&&A.isSameOrAfter(_,"month")),o.minDate?.isSameOrAfter(_)?(N.start=!!(_&&A.isSame(_,"month")),N.end=o.minDate&&A.isSame(o.minDate,"month")):(N.start=!!(o.minDate&&A.isSame(o.minDate,"month")),N.end=!!(_&&A.isSame(_,"month"))),C.isSame(A)&&(N.type="today");const V=A.toDate();N.text=R,N.disabled=o.disabledDate?.(V)||!1,N.date=V,N.customClass=o.cellClassName?.(V),N.dayjs=A,N.timestamp=A.valueOf(),N.isSelected=b(N)}}return S}),h=()=>{c.value?.focus()},m=S=>{const C={},E=o.date.year(),$=new Date,O=S.text;return C.disabled=o.disabled||(o.disabledDate?ud(o.date,E,O,l.value).every(o.disabledDate):!1),C.current=Zn(o.parsedValue).some(N=>st.isDayjs(N)&&N.year()===E&&N.month()===O),C.today=$.getFullYear()===E&&$.getMonth()===O,S.customClass&&(C[S.customClass]=!0),S.inRange&&(C["in-range"]=!0,S.start&&(C["start-date"]=!0),S.end&&(C["end-date"]=!0)),C},b=S=>{const C=o.date.year(),E=S.text;return Zn(o.date).some($=>$.year()===C&&$.month()===E)},k=S=>{if(!o.rangeState.selecting)return;let C=S.target;if(C.tagName==="SPAN"&&(C=C.parentNode?.parentNode),C.tagName==="DIV"&&(C=C.parentNode),C.tagName!=="TD")return;const E=C.parentNode.rowIndex,$=C.cellIndex;p.value[E][$].disabled||(E!==v.value||$!==g.value)&&(v.value=E,g.value=$,a("changerange",{selecting:!0,endDate:o.date.startOf("year").month(E*4+$)}))},y=S=>{if(o.disabled)return;const C=S.target?.closest("td");if(C?.tagName!=="TD"||$a(C,"disabled"))return;const E=C.cellIndex,$=C.parentNode.rowIndex*4+E,O=o.date.startOf("year").month($);if(o.selectionMode==="months"){if(S.type==="keydown"){a("pick",Zn(o.parsedValue),!1);return}const N=Sl(o.date,o.date.year(),$,l.value,o.disabledDate);a("pick",$a(C,"current")?Zn(o.parsedValue).filter(R=>R?.year()!==N.year()||R?.month()!==N.month()):Zn(o.parsedValue).concat([st(N)]))}else o.selectionMode==="range"?o.rangeState.selecting?(o.minDate&&O>=o.minDate?a("pick",{minDate:o.minDate,maxDate:O}):a("pick",{minDate:O,maxDate:o.minDate}),a("select",!1)):(a("pick",{minDate:O,maxDate:null}),a("select",!0)):a("pick",$)};return le(()=>o.date,async()=>{u.value?.contains(document.activeElement)&&(await Re(),c.value?.focus())}),t({focus:h}),(S,C)=>(x(),B("table",{role:"grid","aria-label":i(r)("el.datepicker.monthTablePrompt"),class:T(i(s).b()),onClick:y,onMousemove:k},[z("tbody",{ref_key:"tbodyRef",ref:u},[(x(!0),B(Fe,null,yt(p.value,(E,$)=>(x(),B("tr",{key:$},[(x(!0),B(Fe,null,yt(E,(O,N)=>(x(),B("td",{key:N,ref_for:!0,ref:R=>O.isSelected&&(c.value=R),class:T(m(O)),"aria-selected":!!O.isSelected,"aria-label":i(r)(`el.datepicker.month${+O.text+1}`),tabindex:O.isSelected?0:-1,onKeydown:[an(Xe(y,["prevent","stop"]),["space"]),an(Xe(y,["prevent","stop"]),["enter"])]},[Y(i(xm),{cell:{...O,renderText:i(r)("el.datepicker.months."+d.value[O.text])}},null,8,["cell"])],42,Hz))),128))]))),128))],512)],42,zz))}}),Bi=Kz;const Wz=Ce({...Cm,selectionMode:Em("year")}),jz=["aria-label"],Uz=["aria-selected","aria-label","tabindex","onKeydown"];var qz=se({__name:"basic-year-table",props:Wz,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const o=(C,E)=>{const $=st(String(C)).locale(E).startOf("year");return _s($.endOf("year").dayOfYear()).map(O=>$.add(O,"day").toDate())},a=e,s=n,r=fe("year-table"),{t:l,lang:u}=Ct(),c=M(),d=M(),f=w(()=>Math.floor(a.date.year()/10)*10),v=M([[],[],[]]),g=M(),p=M(),h=w(()=>{const C=v.value,E=st().locale(u.value).startOf("year");for(let $=0;$<3;$++){const O=C[$];for(let N=0;N<4&&!($*4+N>=10);N++){let R=O[N];R||(R={row:$,column:N,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1,isSelected:!1,customClass:void 0,date:void 0,dayjs:void 0,isCurrent:void 0,selected:void 0,renderText:void 0,timestamp:void 0}),R.type="normal";const A=$*4+N+f.value,_=st().year(A),V=a.rangeState.endDate||a.maxDate||a.rangeState.selecting&&a.minDate||null;R.inRange=!!(a.minDate&&_.isSameOrAfter(a.minDate,"year")&&V&&_.isSameOrBefore(V,"year"))||!!(a.minDate&&_.isSameOrBefore(a.minDate,"year")&&V&&_.isSameOrAfter(V,"year")),a.minDate?.isSameOrAfter(V)?(R.start=!!(V&&_.isSame(V,"year")),R.end=!!(a.minDate&&_.isSame(a.minDate,"year"))):(R.start=!!(a.minDate&&_.isSame(a.minDate,"year")),R.end=!!(V&&_.isSame(V,"year"))),E.isSame(_)&&(R.type="today"),R.text=A;const H=_.toDate();R.disabled=a.disabledDate?.(H)||!1,R.date=H,R.customClass=a.cellClassName?.(H),R.dayjs=_,R.timestamp=_.valueOf(),R.isSelected=k(R),O[N]=R}}return C}),m=()=>{d.value?.focus()},b=C=>{const E={},$=st().locale(u.value),O=C.text;return E.disabled=a.disabled||(a.disabledDate?o(O,u.value).every(a.disabledDate):!1),E.today=$.year()===O,E.current=Zn(a.parsedValue).some(N=>N.year()===O),C.customClass&&(E[C.customClass]=!0),C.inRange&&(E["in-range"]=!0,C.start&&(E["start-date"]=!0),C.end&&(E["end-date"]=!0)),E},k=C=>{const E=C.text;return Zn(a.date).some($=>$.year()===E)},y=C=>{if(a.disabled)return;const E=C.target?.closest("td");if(!E||!E.textContent||$a(E,"disabled"))return;const $=E.cellIndex,O=E.parentNode.rowIndex*4+$+f.value,N=st().year(O);if(a.selectionMode==="range")a.rangeState.selecting?(a.minDate&&N>=a.minDate?s("pick",{minDate:a.minDate,maxDate:N}):s("pick",{minDate:N,maxDate:a.minDate}),s("select",!1)):(s("pick",{minDate:N,maxDate:null}),s("select",!0));else if(a.selectionMode==="years"){if(C.type==="keydown"){s("pick",Zn(a.parsedValue),!1);return}const R=cd(N.startOf("year"),u.value,a.disabledDate);s("pick",$a(E,"current")?Zn(a.parsedValue).filter(A=>A?.year()!==O):Zn(a.parsedValue).concat([R]))}else s("pick",O)},S=C=>{if(!a.rangeState.selecting)return;const E=C.target?.closest("td");if(!E)return;const $=E.parentNode.rowIndex,O=E.cellIndex;h.value[$][O].disabled||($!==g.value||O!==p.value)&&(g.value=$,p.value=O,s("changerange",{selecting:!0,endDate:st().year(f.value).add($*4+O,"year")}))};return le(()=>a.date,async()=>{c.value?.contains(document.activeElement)&&(await Re(),d.value?.focus())}),t({focus:m}),(C,E)=>(x(),B("table",{role:"grid","aria-label":i(l)("el.datepicker.yearTablePrompt"),class:T(i(r).b()),onClick:y,onMousemove:S},[z("tbody",{ref_key:"tbodyRef",ref:c},[(x(!0),B(Fe,null,yt(h.value,($,O)=>(x(),B("tr",{key:O},[(x(!0),B(Fe,null,yt($,(N,R)=>(x(),B("td",{key:`${O}_${R}`,ref_for:!0,ref:A=>N.isSelected&&(d.value=A),class:T(["available",b(N)]),"aria-selected":N.isSelected,"aria-label":String(N.text),tabindex:N.isSelected?0:-1,onKeydown:[an(Xe(y,["prevent","stop"]),["space"]),an(Xe(y,["prevent","stop"]),["enter"])]},[Y(i(xm),{cell:N},null,8,["cell"])],42,Uz))),128))]))),128))],512)],42,jz))}}),Fi=qz;const Yz=["disabled","onClick"],Gz=["aria-label","disabled"],Xz=["aria-label","disabled"],Jz=["tabindex","aria-disabled"],Zz=["tabindex","aria-disabled"],Qz=["aria-label","disabled"],eH=["aria-label","disabled"];var tH=se({__name:"panel-date-pick",props:Rz,emits:["pick","set-picker-option","panel-change"],setup(e,{emit:t}){const n=(be,ze,de)=>!0,o=e,a=t,s=fe("picker-panel"),r=fe("date-picker"),l=fs(),u=vn(),{t:c,lang:d}=Ct(),f=_e(sa),v=_e(Cu,void 0),{shortcuts:g,disabledDate:p,cellClassName:h,defaultTime:m}=f.props,b=Vt(f.props,"defaultValue"),k=M(),y=M(st().locale(d.value)),S=M(!1);let C=!1;const E=w(()=>st(m).locale(d.value)),$=w(()=>y.value.month()),O=w(()=>y.value.year()),N=M([]),R=M(null),A=M(null),_=be=>N.value.length>0?n(be,N.value,o.format||"HH:mm:ss"):!0,V=be=>m&&!Ne.value&&!S.value&&!C?E.value.year(be.year()).month(be.month()).date(be.date()):ie.value?be.millisecond(0):be.startOf("day"),H=(be,...ze)=>{be?ye(be)?a("pick",be.map(V),...ze):a("pick",V(be),...ze):a("pick",be,...ze),R.value=null,A.value=null,S.value=!1,C=!1},U=async(be,ze)=>{if(F.value==="date"&&st.isDayjs(be)){const de=jl(o.parsedValue);let Ge=de?de.year(be.year()).month(be.month()).date(be.date()):be;_(Ge),y.value=Ge,H(Ge,ie.value||ze)}else F.value==="week"?H(be.date):F.value==="dates"&&H(be,!0)},W=be=>{const ze=be?"add":"subtract";y.value=y.value[ze](1,"month"),kt("month")},P=be=>{const ze=y.value,de=be?"add":"subtract";y.value=I.value==="year"?ze[de](10,"year"):ze[de](1,"year"),kt("year")},I=M("date"),L=w(()=>{const be=c("el.datepicker.year");if(I.value==="year"){const ze=Math.floor(O.value/10)*10;return be?`${ze} ${be} - ${ze+9} ${be}`:`${ze} - ${ze+9}`}return`${O.value} ${be}`}),D=be=>{const ze=Ve(be.value)?be.value():be.value;if(ze){C=!0,H(st(ze).locale(d.value));return}be.onClick&&be.onClick({attrs:l,slots:u,emit:a})},F=w(()=>{const{type:be}=o;return["week","month","months","year","years","dates"].includes(be)?be:"date"}),q=w(()=>F.value==="dates"||F.value==="months"||F.value==="years"),j=w(()=>F.value==="date"?I.value:F.value),X=w(()=>!!g.length),Q=async(be,ze)=>{F.value==="month"?(y.value=Sl(y.value,y.value.year(),be,d.value,p),H(y.value,!1)):F.value==="months"?H(be,ze??!0):(y.value=Sl(y.value,y.value.year(),be,d.value,p),I.value="date",["month","year","date","week"].includes(F.value)&&(H(y.value,!0),await Re(),Rt())),kt("month")},he=async(be,ze)=>{F.value==="year"?(y.value=cd(y.value.startOf("year").year(be),d.value,p),H(y.value,!1)):F.value==="years"?H(be,ze??!0):(y.value=cd(y.value.year(be),d.value,p),I.value="month",["month","year","date","week"].includes(F.value)&&(H(y.value,!0),await Re(),Rt())),kt("year")},ue=un(),ge=async be=>{ue.value||(I.value=be,await Re(),Rt())},ie=w(()=>o.type==="datetime"||o.type==="datetimerange"),oe=w(()=>{const be=ie.value||F.value==="dates",ze=F.value==="years",de=F.value==="months",Ge=I.value==="date",$t=I.value==="year",tn=I.value==="month";return be&&Ge||ze&&$t||de&&tn}),ne=w(()=>!q.value&&o.showNow||o.showConfirm),K=w(()=>p?o.parsedValue?ye(o.parsedValue)?p(o.parsedValue[0].toDate()):p(o.parsedValue.toDate()):!0:!1),Z=()=>{if(q.value)H(o.parsedValue);else{let be=jl(o.parsedValue);if(!be){const ze=st(m).locale(d.value),de=je();be=ze.year(de.year()).month(de.month()).date(de.date())}y.value=be,H(be)}},re=w(()=>p?p(st().locale(d.value).toDate()):!1),ce=()=>{const be=st().locale(d.value).toDate();S.value=!0,(!p||!p(be))&&_(be)&&(y.value=st().locale(d.value),H(y.value))},ve=w(()=>o.timeFormat||yk(o.format)||wl),ke=w(()=>o.dateFormat||bk(o.format)||Os),Ne=w(()=>{if(A.value)return A.value;if(!(!o.parsedValue&&!b.value))return(jl(o.parsedValue)||y.value).format(ve.value)}),Ie=w(()=>{if(R.value)return R.value;if(!(!o.parsedValue&&!b.value))return(jl(o.parsedValue)||y.value).format(ke.value)}),$e=M(!1),pe=()=>{$e.value=!0},Ee=()=>{$e.value=!1},me=be=>({hour:be.hour(),minute:be.minute(),second:be.second(),year:be.year(),month:be.month(),date:be.date()}),Me=(be,ze,de)=>{const{hour:Ge,minute:$t,second:tn}=me(be),_n=jl(o.parsedValue);y.value=_n?_n.hour(Ge).minute($t).second(tn):be,H(y.value,!0),de||($e.value=ze)},We=be=>{const ze=st(be,ve.value).locale(d.value);if(ze.isValid()&&_(ze)){const{year:de,month:Ge,date:$t}=me(y.value);y.value=ze.year(de).month(Ge).date($t),A.value=null,$e.value=!1,H(y.value,!0)}},Ze=be=>{const ze=Cl(be,ke.value,d.value,v);if(ze.isValid()){if(p&&p(ze.toDate()))return;const{hour:de,minute:Ge,second:$t}=me(y.value);y.value=ze.hour(de).minute(Ge).second($t),R.value=null,H(y.value,!0)}},Pe=be=>st.isDayjs(be)&&be.isValid()&&(p?!p(be.toDate()):!0),Ae=be=>Cl(be,o.format,d.value,v),je=()=>{const be=st(b.value).locale(d.value);if(!b.value){const ze=E.value;return st().hour(ze.hour()).minute(ze.minute()).second(ze.second()).locale(d.value)}return be},Rt=()=>{["week","month","year","date"].includes(F.value)&&k.value?.focus()},Ue=()=>{Rt(),F.value==="week"&&mt(we.down)},lt=be=>{const ze=jt(be);[we.up,we.down,we.left,we.right,we.home,we.end,we.pageUp,we.pageDown].includes(ze)&&(mt(ze),be.stopPropagation(),be.preventDefault()),[we.enter,we.space,we.numpadEnter].includes(ze)&&R.value===null&&A.value===null&&(be.preventDefault(),H(y.value,!1))},mt=be=>{const{up:ze,down:de,left:Ge,right:$t,home:tn,end:_n,pageUp:Be,pageDown:nt}=we,ct={year:{[ze]:-4,[de]:4,[Ge]:-1,[$t]:1,offset:(Wt,yn)=>Wt.setFullYear(Wt.getFullYear()+yn)},month:{[ze]:-4,[de]:4,[Ge]:-1,[$t]:1,offset:(Wt,yn)=>Wt.setMonth(Wt.getMonth()+yn)},week:{[ze]:-1,[de]:1,[Ge]:-1,[$t]:1,offset:(Wt,yn)=>Wt.setDate(Wt.getDate()+yn*7)},date:{[ze]:-7,[de]:7,[Ge]:-1,[$t]:1,[tn]:Wt=>-Wt.getDay(),[_n]:Wt=>-Wt.getDay()+6,[Be]:Wt=>-new Date(Wt.getFullYear(),Wt.getMonth(),0).getDate(),[nt]:Wt=>new Date(Wt.getFullYear(),Wt.getMonth()+1,0).getDate(),offset:(Wt,yn)=>Wt.setDate(Wt.getDate()+yn)}},kn=y.value.toDate();for(;Math.abs(y.value.diff(kn,"year",!0))<1;){const Wt=ct[j.value];if(!Wt)return;if(Wt.offset(kn,Ve(Wt[be])?Wt[be](kn):Wt[be]??0),p&&p(kn))break;const yn=st(kn).locale(d.value);y.value=yn,a("pick",yn,!0);break}},kt=be=>{a("panel-change",y.value.toDate(),be,I.value)};return le(()=>F.value,be=>{if(["month","year"].includes(be)){I.value=be;return}else if(be==="years"){I.value="year";return}else if(be==="months"){I.value="month";return}I.value="date"},{immediate:!0}),le(()=>b.value,be=>{be&&(y.value=je())},{immediate:!0}),le(()=>o.parsedValue,be=>{if(be){if(q.value||ye(be))return;y.value=be}else y.value=je()},{immediate:!0}),a("set-picker-option",["isValidValue",Pe]),a("set-picker-option",["parseUserInput",Ae]),a("set-picker-option",["handleFocusPicker",Ue]),(be,ze)=>(x(),B("div",{class:T([i(s).b(),i(r).b(),i(s).is("border",be.border),i(s).is("disabled",i(ue)),{"has-sidebar":be.$slots.sidebar||X.value,"has-time":ie.value}])},[z("div",{class:T(i(s).e("body-wrapper"))},[ee(be.$slots,"sidebar",{class:T(i(s).e("sidebar"))}),X.value?(x(),B("div",{key:0,class:T(i(s).e("sidebar"))},[(x(!0),B(Fe,null,yt(i(g),(de,Ge)=>(x(),B("button",{key:Ge,type:"button",disabled:i(ue),class:T(i(s).e("shortcut")),onClick:$t=>D(de)},Se(de.text),11,Yz))),128))],2)):te("v-if",!0),z("div",{class:T(i(s).e("body"))},[ie.value?(x(),B("div",{key:0,class:T(i(r).e("time-header"))},[z("span",{class:T(i(r).e("editor-wrap"))},[Y(i(eo),{placeholder:i(c)("el.datepicker.selectDate"),"model-value":Ie.value,size:"small","validate-event":!1,disabled:i(ue),readonly:!be.editable,onInput:ze[0]||(ze[0]=de=>R.value=de),onChange:Ze},null,8,["placeholder","model-value","disabled","readonly"])],2),ut((x(),B("span",{class:T(i(r).e("editor-wrap"))},[Y(i(eo),{placeholder:i(c)("el.datepicker.selectTime"),"model-value":Ne.value,size:"small","validate-event":!1,disabled:i(ue),readonly:!be.editable,onFocus:pe,onInput:ze[1]||(ze[1]=de=>A.value=de),onChange:We},null,8,["placeholder","model-value","disabled","readonly"]),Y(i(sd),{visible:$e.value,format:ve.value,"parsed-value":y.value,onPick:Me},null,8,["visible","format","parsed-value"])],2)),[[i(zs),Ee]])],2)):te("v-if",!0),ut(z("div",{class:T([i(r).e("header"),(I.value==="year"||I.value==="month")&&i(r).em("header","bordered")])},[z("span",{class:T(i(r).e("prev-btn"))},[z("button",{type:"button","aria-label":i(c)("el.datepicker.prevYear"),class:T(["d-arrow-left",i(s).e("icon-btn")]),disabled:i(ue),onClick:ze[2]||(ze[2]=de=>P(!1))},[ee(be.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,Gz),ut(z("button",{type:"button","aria-label":i(c)("el.datepicker.prevMonth"),class:T([i(s).e("icon-btn"),"arrow-left"]),disabled:i(ue),onClick:ze[3]||(ze[3]=de=>W(!1))},[ee(be.$slots,"prev-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})])],10,Xz),[[Pt,I.value==="date"]])],2),z("span",{role:"button",class:T(i(r).e("header-label")),"aria-live":"polite",tabindex:be.disabled?void 0:0,"aria-disabled":be.disabled,onKeydown:ze[4]||(ze[4]=an(de=>ge("year"),["enter"])),onClick:ze[5]||(ze[5]=de=>ge("year"))},Se(L.value),43,Jz),ut(z("span",{role:"button","aria-live":"polite",tabindex:be.disabled?void 0:0,"aria-disabled":be.disabled,class:T([i(r).e("header-label"),{active:I.value==="month"}]),onKeydown:ze[6]||(ze[6]=an(de=>ge("month"),["enter"])),onClick:ze[7]||(ze[7]=de=>ge("month"))},Se(i(c)(`el.datepicker.month${$.value+1}`)),43,Zz),[[Pt,I.value==="date"]]),z("span",{class:T(i(r).e("next-btn"))},[ut(z("button",{type:"button","aria-label":i(c)("el.datepicker.nextMonth"),class:T([i(s).e("icon-btn"),"arrow-right"]),disabled:i(ue),onClick:ze[8]||(ze[8]=de=>W(!0))},[ee(be.$slots,"next-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})])],10,Qz),[[Pt,I.value==="date"]]),z("button",{type:"button","aria-label":i(c)("el.datepicker.nextYear"),class:T([i(s).e("icon-btn"),"d-arrow-right"]),disabled:i(ue),onClick:ze[9]||(ze[9]=de=>P(!0))},[ee(be.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,eH)],2)],2),[[Pt,I.value!=="time"]]),z("div",{class:T(i(s).e("content")),onKeydown:lt},[I.value==="date"?(x(),ae(yh,{key:0,ref_key:"currentViewRef",ref:k,"selection-mode":F.value,date:y.value,"parsed-value":be.parsedValue,"disabled-date":i(p),disabled:i(ue),"cell-class-name":i(h),"show-week-number":be.showWeekNumber,onPick:U},null,8,["selection-mode","date","parsed-value","disabled-date","disabled","cell-class-name","show-week-number"])):te("v-if",!0),I.value==="year"?(x(),ae(Fi,{key:1,ref_key:"currentViewRef",ref:k,"selection-mode":F.value,date:y.value,"disabled-date":i(p),disabled:i(ue),"parsed-value":be.parsedValue,"cell-class-name":i(h),onPick:he},null,8,["selection-mode","date","disabled-date","disabled","parsed-value","cell-class-name"])):te("v-if",!0),I.value==="month"?(x(),ae(Bi,{key:2,ref_key:"currentViewRef",ref:k,"selection-mode":F.value,date:y.value,"parsed-value":be.parsedValue,"disabled-date":i(p),disabled:i(ue),"cell-class-name":i(h),onPick:Q},null,8,["selection-mode","date","parsed-value","disabled-date","disabled","cell-class-name"])):te("v-if",!0)],34)],2)],2),be.showFooter&&oe.value&&ne.value?(x(),B("div",{key:0,class:T(i(s).e("footer"))},[ut(Y(i(In),{text:"",size:"small",class:T(i(s).e("link-btn")),disabled:re.value,onClick:ce},{default:J(()=>[wt(Se(i(c)("el.datepicker.now")),1)]),_:1},8,["class","disabled"]),[[Pt,!q.value&&be.showNow]]),be.showConfirm?(x(),ae(i(In),{key:0,plain:"",size:"small",class:T(i(s).e("link-btn")),disabled:K.value,onClick:Z},{default:J(()=>[wt(Se(i(c)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])):te("v-if",!0)],2)):te("v-if",!0)],2))}}),nH=tH;const oH=Ce({...w2,...km}),aH=e=>{const{emit:t}=ft(),n=fs(),o=vn();return s=>{const r=Ve(s.value)?s.value():s.value;if(r){t("pick",[st(r[0]).locale(e.value),st(r[1]).locale(e.value)]);return}s.onClick&&s.onClick({attrs:n,slots:o,emit:t})}},Tm=(e,{defaultValue:t,defaultTime:n,leftDate:o,rightDate:a,step:s,unit:r,sortDates:l})=>{const{emit:u}=ft(),{pickerNs:c}=_e(Sm),d=fe("date-range-picker"),{t:f,lang:v}=Ct(),g=aH(v),p=M(),h=M(),m=M({endDate:null,selecting:!1}),b=E=>{m.value=E},k=(E=!1)=>{const $=i(p),O=i(h);Di([$,O])&&u("pick",[$,O],E)},y=E=>{m.value.selecting=E,E||(m.value.endDate=null)},S=E=>{if(ye(E)&&E.length===2){const[$,O]=E;p.value=$,o.value=$,h.value=O,l(i(p),i(h))}else C()},C=()=>{let[E,$]=cf(i(t),{lang:i(v),step:s,unit:r,unlinkPanels:e.unlinkPanels});const O=R=>R.diff(R.startOf("d"),"ms"),N=i(n);if(N){let R=0,A=0;if(ye(N)){const[_,V]=N.map(st);R=O(_),A=O(V)}else{const _=O(st(N));R=_,A=_}E=E.startOf("d").add(R,"ms"),$=$.startOf("d").add(A,"ms")}p.value=void 0,h.value=void 0,o.value=E,a.value=$};return le(t,E=>{E&&C()},{immediate:!0}),le(()=>e.parsedValue,E=>{(!E?.length||!sn(E,[p.value,h.value]))&&S(E)},{immediate:!0}),le(()=>e.visible,()=>{e.visible&&S(e.parsedValue)},{immediate:!0}),{minDate:p,maxDate:h,rangeState:m,lang:v,ppNs:c,drpNs:d,handleChangeRange:b,handleRangeConfirm:k,handleShortcutClick:g,onSelect:y,parseValue:S,t:f}},sH=(e,t,n,o)=>{const a=M("date"),s=M(),r=M("date"),l=M(),{disabledDate:u}=_e(sa).props,{t:c,lang:d}=Ct(),f=w(()=>n.value.year()),v=w(()=>n.value.month()),g=w(()=>o.value.year()),p=w(()=>o.value.month());function h(C,E){const $=c("el.datepicker.year");if(C.value==="year"){const O=Math.floor(E.value/10)*10;return $?`${O} ${$} - ${O+9} ${$}`:`${O} - ${O+9}`}return`${E.value} ${$}`}function m(C){C?.focus()}async function b(C,E){if(e.disabled)return;const $=C==="left"?a:r,O=C==="left"?s:l;$.value=E,await Re(),m(O.value)}async function k(C,E,$){if(e.disabled)return;const O=E==="left",N=O?n:o,R=O?o:n,A=O?a:r,_=O?s:l;C==="year"&&(N.value=cd(N.value.year($),d.value,u)),C==="month"&&(N.value=Sl(N.value,N.value.year(),$,d.value,u)),e.unlinkPanels||(R.value=E==="left"?N.value.add(1,"month"):N.value.subtract(1,"month")),A.value=C==="year"?"month":"date",await Re(),m(_.value),y(C)}function y(C){t("panel-change",[n.value.toDate(),o.value.toDate()],C)}function S(C,E,$){const O=$?"add":"subtract";return C==="year"?E[O](10,"year"):E[O](1,"year")}return{leftCurrentView:a,rightCurrentView:r,leftCurrentViewRef:s,rightCurrentViewRef:l,leftYear:f,rightYear:g,leftMonth:v,rightMonth:p,leftYearLabel:w(()=>h(a,f)),rightYearLabel:w(()=>h(r,g)),showLeftPicker:C=>b("left",C),showRightPicker:C=>b("right",C),handleLeftYearPick:C=>k("year","left",C),handleRightYearPick:C=>k("year","right",C),handleLeftMonthPick:C=>k("month","left",C),handleRightMonthPick:C=>k("month","right",C),handlePanelChange:y,adjustDateByView:S}},rH=["disabled","onClick"],lH=["aria-label","disabled"],iH=["aria-label","disabled"],uH=["disabled","aria-label"],cH=["disabled","aria-label"],dH=["tabindex","aria-disabled"],fH=["tabindex","aria-disabled"],pH=["disabled","aria-label"],hH=["disabled","aria-label"],vH=["aria-label","disabled"],mH=["disabled","aria-label"],gH=["tabindex","aria-disabled"],bH=["tabindex","aria-disabled"],Zu="month";var yH=se({__name:"panel-date-range",props:oH,emits:["pick","set-picker-option","calendar-change","panel-change","clear"],setup(e,{emit:t}){const n=e,o=t,a=_e(sa),s=_e(Cu,void 0),{disabledDate:r,cellClassName:l,defaultTime:u,clearable:c}=a.props,d=Vt(a.props,"format"),f=Vt(a.props,"shortcuts"),v=Vt(a.props,"defaultValue"),{lang:g}=Ct(),p=M(st().locale(g.value)),h=M(st().locale(g.value).add(1,Zu)),{minDate:m,maxDate:b,rangeState:k,ppNs:y,drpNs:S,handleChangeRange:C,handleRangeConfirm:E,handleShortcutClick:$,onSelect:O,parseValue:N,t:R}=Tm(n,{defaultValue:v,defaultTime:u,leftDate:p,rightDate:h,unit:Zu,sortDates:yn});le(()=>n.visible,Qe=>{!Qe&&k.value.selecting&&(N(n.parsedValue),O(!1))});const A=M({min:null,max:null}),_=M({min:null,max:null}),{leftCurrentView:V,rightCurrentView:H,leftCurrentViewRef:U,rightCurrentViewRef:W,leftYear:P,rightYear:I,leftMonth:L,rightMonth:D,leftYearLabel:F,rightYearLabel:q,showLeftPicker:j,showRightPicker:X,handleLeftYearPick:Q,handleRightYearPick:he,handleLeftMonthPick:ue,handleRightMonthPick:ge,handlePanelChange:ie,adjustDateByView:oe}=sH(n,o,p,h),ne=w(()=>!!f.value.length),K=w(()=>A.value.min!==null?A.value.min:m.value?m.value.format(ke.value):""),Z=w(()=>A.value.max!==null?A.value.max:b.value||m.value?(b.value||m.value).format(ke.value):""),re=w(()=>_.value.min!==null?_.value.min:m.value?m.value.format(ve.value):""),ce=w(()=>_.value.max!==null?_.value.max:b.value||m.value?(b.value||m.value).format(ve.value):""),ve=w(()=>n.timeFormat||yk(d.value||"")||wl),ke=w(()=>n.dateFormat||bk(d.value||"")||Os),Ne=Qe=>Di(Qe)&&(r?!r(Qe[0].toDate())&&!r(Qe[1].toDate()):!0),Ie=()=>{p.value=oe(V.value,p.value,!1),n.unlinkPanels||(h.value=p.value.add(1,"month")),ie("year")},$e=()=>{p.value=p.value.subtract(1,"month"),n.unlinkPanels||(h.value=p.value.add(1,"month")),ie("month")},pe=()=>{n.unlinkPanels?h.value=oe(H.value,h.value,!0):(p.value=oe(H.value,p.value,!0),h.value=p.value.add(1,"month")),ie("year")},Ee=()=>{n.unlinkPanels?h.value=h.value.add(1,"month"):(p.value=p.value.add(1,"month"),h.value=p.value.add(1,"month")),ie("month")},me=()=>{p.value=oe(V.value,p.value,!0),ie("year")},Me=()=>{p.value=p.value.add(1,"month"),ie("month")},We=()=>{h.value=oe(H.value,h.value,!1),ie("year")},Ze=()=>{h.value=h.value.subtract(1,"month"),ie("month")},Pe=w(()=>{const Qe=(L.value+1)%12,tt=L.value+1>=12?1:0;return n.unlinkPanels&&new Date(P.value+tt,Qe)n.unlinkPanels&&I.value*12+D.value-(P.value*12+L.value+1)>=12),je=un(),Rt=w(()=>!(m.value&&b.value&&!k.value.selecting&&Di([m.value,b.value])&&!je.value)),Ue=w(()=>n.type==="datetime"||n.type==="datetimerange"),lt=(Qe,tt)=>{if(Qe)return u?st(u[tt]||u).locale(g.value).year(Qe.year()).month(Qe.month()).date(Qe.date()):Qe},mt=(Qe,tt=!0)=>{const gt=Qe.minDate,ao=Qe.maxDate,ha=lt(gt,0),jo=lt(ao,1);b.value===jo&&m.value===ha||(o("calendar-change",[gt.toDate(),ao&&ao.toDate()]),b.value=jo,m.value=ha,!Ue.value&&tt&&(tt=!ha||!jo),E(tt))},kt=M(!1),be=M(!1),ze=()=>{kt.value=!1},de=()=>{be.value=!1},Ge=(Qe,tt)=>{A.value[tt]=Qe;const gt=st(Qe,ke.value).locale(g.value);if(gt.isValid()){if(r&&r(gt.toDate()))return;tt==="min"?(p.value=gt,m.value=(m.value||p.value).year(gt.year()).month(gt.month()).date(gt.date()),!n.unlinkPanels&&(!b.value||b.value.isBefore(m.value))&&(h.value=gt.add(1,"month"),b.value=m.value.add(1,"month"))):(h.value=gt,b.value=(b.value||h.value).year(gt.year()).month(gt.month()).date(gt.date()),!n.unlinkPanels&&(!m.value||m.value.isAfter(b.value))&&(p.value=gt.subtract(1,"month"),m.value=b.value.subtract(1,"month"))),yn(m.value,b.value),E(!0)}},$t=(Qe,tt)=>{A.value[tt]=null},tn=(Qe,tt)=>{_.value[tt]=Qe;const gt=st(Qe,ve.value).locale(g.value);gt.isValid()&&(tt==="min"?(kt.value=!0,m.value=(m.value||p.value).hour(gt.hour()).minute(gt.minute()).second(gt.second()),p.value=m.value):(be.value=!0,b.value=(b.value||h.value).hour(gt.hour()).minute(gt.minute()).second(gt.second()),h.value=b.value))},_n=(Qe,tt)=>{_.value[tt]=null,tt==="min"?(p.value=m.value,kt.value=!1,(!b.value||b.value.isBefore(m.value))&&(b.value=m.value)):(h.value=b.value,be.value=!1,b.value&&b.value.isBefore(m.value)&&(m.value=b.value)),E(!0)},Be=(Qe,tt,gt)=>{_.value.min||(Qe&&(m.value=(m.value||p.value).hour(Qe.hour()).minute(Qe.minute()).second(Qe.second())),gt||(kt.value=tt),(!b.value||b.value.isBefore(m.value))&&(b.value=m.value,h.value=Qe,Re(()=>{N(n.parsedValue)})),E(!0))},nt=(Qe,tt,gt)=>{_.value.max||(Qe&&(b.value=(b.value||h.value).hour(Qe.hour()).minute(Qe.minute()).second(Qe.second())),gt||(be.value=tt),b.value&&b.value.isBefore(m.value)&&(m.value=b.value),E(!0))},ct=()=>{kn(),o("clear")},kn=()=>{let Qe=null;a?.emptyValues&&(Qe=a.emptyValues.valueOnClear.value),p.value=cf(i(v),{lang:i(g),unit:"month",unlinkPanels:n.unlinkPanels})[0],h.value=p.value.add(1,"month"),b.value=void 0,m.value=void 0,E(!0),o("pick",Qe)},Wt=Qe=>Cl(Qe,d.value||"",g.value,s);function yn(Qe,tt){if(n.unlinkPanels&&tt){const gt=Qe?.year()||0,ao=Qe?.month()||0,ha=tt.year(),jo=tt.month();h.value=gt===ha&&ao===jo?tt.add(1,Zu):tt}else h.value=p.value.add(1,Zu),tt&&(h.value=h.value.hour(tt.hour()).minute(tt.minute()).second(tt.second()))}return o("set-picker-option",["isValidValue",Ne]),o("set-picker-option",["parseUserInput",Wt]),o("set-picker-option",["handleClear",kn]),(Qe,tt)=>(x(),B("div",{class:T([i(y).b(),i(S).b(),i(y).is("border",Qe.border),i(y).is("disabled",i(je)),{"has-sidebar":Qe.$slots.sidebar||ne.value,"has-time":Ue.value}])},[z("div",{class:T(i(y).e("body-wrapper"))},[ee(Qe.$slots,"sidebar",{class:T(i(y).e("sidebar"))}),ne.value?(x(),B("div",{key:0,class:T(i(y).e("sidebar"))},[(x(!0),B(Fe,null,yt(f.value,(gt,ao)=>(x(),B("button",{key:ao,type:"button",disabled:i(je),class:T(i(y).e("shortcut")),onClick:ha=>i($)(gt)},Se(gt.text),11,rH))),128))],2)):te("v-if",!0),z("div",{class:T(i(y).e("body"))},[Ue.value?(x(),B("div",{key:0,class:T(i(S).e("time-header"))},[z("span",{class:T(i(S).e("editors-wrap"))},[z("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(eo),{size:"small",disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.startDate"),class:T(i(S).e("editor")),"model-value":K.value,"validate-event":!1,readonly:!Qe.editable,onInput:tt[0]||(tt[0]=gt=>Ge(gt,"min")),onChange:tt[1]||(tt[1]=gt=>$t(gt,"min"))},null,8,["disabled","placeholder","class","model-value","readonly"])],2),ut((x(),B("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(eo),{size:"small",class:T(i(S).e("editor")),disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.startTime"),"model-value":re.value,"validate-event":!1,readonly:!Qe.editable,onFocus:tt[2]||(tt[2]=gt=>kt.value=!0),onInput:tt[3]||(tt[3]=gt=>tn(gt,"min")),onChange:tt[4]||(tt[4]=gt=>_n(gt,"min"))},null,8,["class","disabled","placeholder","model-value","readonly"]),Y(i(sd),{visible:kt.value,format:ve.value,"datetime-role":"start","parsed-value":i(m)||p.value,onPick:Be},null,8,["visible","format","parsed-value"])],2)),[[i(zs),ze]])],2),z("span",null,[Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})]),z("span",{class:T([i(S).e("editors-wrap"),"is-right"])},[z("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(eo),{size:"small",class:T(i(S).e("editor")),disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.endDate"),"model-value":Z.value,readonly:!i(m)||!Qe.editable,"validate-event":!1,onInput:tt[5]||(tt[5]=gt=>Ge(gt,"max")),onChange:tt[6]||(tt[6]=gt=>$t(gt,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"])],2),ut((x(),B("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(eo),{size:"small",class:T(i(S).e("editor")),disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.endTime"),"model-value":ce.value,readonly:!i(m)||!Qe.editable,"validate-event":!1,onFocus:tt[7]||(tt[7]=gt=>i(m)&&(be.value=!0)),onInput:tt[8]||(tt[8]=gt=>tn(gt,"max")),onChange:tt[9]||(tt[9]=gt=>_n(gt,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"]),Y(i(sd),{"datetime-role":"end",visible:be.value,format:ve.value,"parsed-value":i(b)||h.value,onPick:nt},null,8,["visible","format","parsed-value"])],2)),[[i(zs),de]])],2)],2)):te("v-if",!0),z("div",{class:T([[i(y).e("content"),i(S).e("content")],"is-left"])},[z("div",{class:T(i(S).e("header"))},[z("button",{type:"button",class:T([i(y).e("icon-btn"),"d-arrow-left"]),"aria-label":i(R)("el.datepicker.prevYear"),disabled:i(je),onClick:Ie},[ee(Qe.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,lH),ut(z("button",{type:"button",class:T([i(y).e("icon-btn"),"arrow-left"]),"aria-label":i(R)("el.datepicker.prevMonth"),disabled:i(je),onClick:$e},[ee(Qe.$slots,"prev-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})])],10,iH),[[Pt,i(V)==="date"]]),Qe.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!Ae.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Ae.value||i(je))],"d-arrow-right"]),"aria-label":i(R)("el.datepicker.nextYear"),onClick:me},[ee(Qe.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,uH)):te("v-if",!0),Qe.unlinkPanels&&i(V)==="date"?(x(),B("button",{key:1,type:"button",disabled:!Pe.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Pe.value||i(je))],"arrow-right"]),"aria-label":i(R)("el.datepicker.nextMonth"),onClick:Me},[ee(Qe.$slots,"next-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})])],10,cH)):te("v-if",!0),z("div",null,[z("span",{role:"button",class:T(i(S).e("header-label")),"aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,onKeydown:tt[10]||(tt[10]=an(gt=>i(j)("year"),["enter"])),onClick:tt[11]||(tt[11]=gt=>i(j)("year"))},Se(i(F)),43,dH),ut(z("span",{role:"button","aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,class:T([i(S).e("header-label"),{active:i(V)==="month"}]),onKeydown:tt[12]||(tt[12]=an(gt=>i(j)("month"),["enter"])),onClick:tt[13]||(tt[13]=gt=>i(j)("month"))},Se(i(R)(`el.datepicker.month${p.value.month()+1}`)),43,fH),[[Pt,i(V)==="date"]])])],2),i(V)==="date"?(x(),ae(yh,{key:0,ref_key:"leftCurrentViewRef",ref:U,"selection-mode":"range",date:p.value,"min-date":i(m),"max-date":i(b),"range-state":i(k),"disabled-date":i(r),"cell-class-name":i(l),"show-week-number":Qe.showWeekNumber,disabled:i(je),onChangerange:i(C),onPick:mt,onSelect:i(O)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","show-week-number","disabled","onChangerange","onSelect"])):te("v-if",!0),i(V)==="year"?(x(),ae(Fi,{key:1,ref_key:"leftCurrentViewRef",ref:U,"selection-mode":"year",date:p.value,"disabled-date":i(r),"parsed-value":Qe.parsedValue,disabled:i(je),onPick:i(Q)},null,8,["date","disabled-date","parsed-value","disabled","onPick"])):te("v-if",!0),i(V)==="month"?(x(),ae(Bi,{key:2,ref_key:"leftCurrentViewRef",ref:U,"selection-mode":"month",date:p.value,"parsed-value":Qe.parsedValue,"disabled-date":i(r),disabled:i(je),onPick:i(ue)},null,8,["date","parsed-value","disabled-date","disabled","onPick"])):te("v-if",!0)],2),z("div",{class:T([[i(y).e("content"),i(S).e("content")],"is-right"])},[z("div",{class:T(i(S).e("header"))},[Qe.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!Ae.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Ae.value||i(je))],"d-arrow-left"]),"aria-label":i(R)("el.datepicker.prevYear"),onClick:We},[ee(Qe.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,pH)):te("v-if",!0),Qe.unlinkPanels&&i(H)==="date"?(x(),B("button",{key:1,type:"button",disabled:!Pe.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Pe.value||i(je))],"arrow-left"]),"aria-label":i(R)("el.datepicker.prevMonth"),onClick:Ze},[ee(Qe.$slots,"prev-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})])],10,hH)):te("v-if",!0),z("button",{type:"button","aria-label":i(R)("el.datepicker.nextYear"),class:T([i(y).e("icon-btn"),"d-arrow-right"]),disabled:i(je),onClick:pe},[ee(Qe.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,vH),ut(z("button",{type:"button",class:T([i(y).e("icon-btn"),"arrow-right"]),disabled:i(je),"aria-label":i(R)("el.datepicker.nextMonth"),onClick:Ee},[ee(Qe.$slots,"next-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})])],10,mH),[[Pt,i(H)==="date"]]),z("div",null,[z("span",{role:"button",class:T(i(S).e("header-label")),"aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,onKeydown:tt[14]||(tt[14]=an(gt=>i(X)("year"),["enter"])),onClick:tt[15]||(tt[15]=gt=>i(X)("year"))},Se(i(q)),43,gH),ut(z("span",{role:"button","aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,class:T([i(S).e("header-label"),{active:i(H)==="month"}]),onKeydown:tt[16]||(tt[16]=an(gt=>i(X)("month"),["enter"])),onClick:tt[17]||(tt[17]=gt=>i(X)("month"))},Se(i(R)(`el.datepicker.month${h.value.month()+1}`)),43,bH),[[Pt,i(H)==="date"]])])],2),i(H)==="date"?(x(),ae(yh,{key:0,ref_key:"rightCurrentViewRef",ref:W,"selection-mode":"range",date:h.value,"min-date":i(m),"max-date":i(b),"range-state":i(k),"disabled-date":i(r),"cell-class-name":i(l),"show-week-number":Qe.showWeekNumber,disabled:i(je),onChangerange:i(C),onPick:mt,onSelect:i(O)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","show-week-number","disabled","onChangerange","onSelect"])):te("v-if",!0),i(H)==="year"?(x(),ae(Fi,{key:1,ref_key:"rightCurrentViewRef",ref:W,"selection-mode":"year",date:h.value,"disabled-date":i(r),"parsed-value":Qe.parsedValue,disabled:i(je),onPick:i(he)},null,8,["date","disabled-date","parsed-value","disabled","onPick"])):te("v-if",!0),i(H)==="month"?(x(),ae(Bi,{key:2,ref_key:"rightCurrentViewRef",ref:W,"selection-mode":"month",date:h.value,"parsed-value":Qe.parsedValue,"disabled-date":i(r),disabled:i(je),onPick:i(ge)},null,8,["date","parsed-value","disabled-date","disabled","onPick"])):te("v-if",!0)],2)],2)],2),Qe.showFooter&&Ue.value&&(Qe.showConfirm||i(c))?(x(),B("div",{key:0,class:T(i(y).e("footer"))},[i(c)?(x(),ae(i(In),{key:0,text:"",size:"small",class:T(i(y).e("link-btn")),onClick:ct},{default:J(()=>[wt(Se(i(R)("el.datepicker.clear")),1)]),_:1},8,["class"])):te("v-if",!0),Qe.showConfirm?(x(),ae(i(In),{key:1,plain:"",size:"small",class:T(i(y).e("link-btn")),disabled:Rt.value,onClick:tt[18]||(tt[18]=gt=>i(E)(!1))},{default:J(()=>[wt(Se(i(R)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])):te("v-if",!0)],2)):te("v-if",!0)],2))}}),wH=yH;const SH=Ce({...km}),CH=["pick","set-picker-option","calendar-change"],kH=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const{t:o}=Ct();return{leftPrevYear:()=>{t.value=t.value.subtract(1,"year"),e.value||(n.value=n.value.subtract(1,"year"))},rightNextYear:()=>{e.value||(t.value=t.value.add(1,"year")),n.value=n.value.add(1,"year")},leftNextYear:()=>{t.value=t.value.add(1,"year")},rightPrevYear:()=>{n.value=n.value.subtract(1,"year")},leftLabel:w(()=>`${t.value.year()} ${o("el.datepicker.year")}`),rightLabel:w(()=>`${n.value.year()} ${o("el.datepicker.year")}`),leftYear:w(()=>t.value.year()),rightYear:w(()=>n.value.year()===t.value.year()?t.value.year()+1:n.value.year())}},EH=["disabled","onClick"],xH=["disabled"],TH=["disabled"],$H=["disabled"],OH=["disabled"],Qu="year";var RH=se({name:"DatePickerMonthRange",__name:"panel-month-range",props:SH,emits:CH,setup(e,{emit:t}){const n=e,o=t,{lang:a}=Ct(),s=_e(sa),r=_e(Cu,void 0),{shortcuts:l,disabledDate:u,cellClassName:c}=s.props,d=Vt(s.props,"format"),f=Vt(s.props,"defaultValue"),v=M(st().locale(a.value)),g=M(st().locale(a.value).add(1,Qu)),{minDate:p,maxDate:h,rangeState:m,ppNs:b,drpNs:k,handleChangeRange:y,handleRangeConfirm:S,handleShortcutClick:C,onSelect:E,parseValue:$}=Tm(n,{defaultValue:f,leftDate:v,rightDate:g,unit:Qu,sortDates:F}),O=w(()=>!!l.length),{leftPrevYear:N,rightNextYear:R,leftNextYear:A,rightPrevYear:_,leftLabel:V,rightLabel:H,leftYear:U,rightYear:W}=kH({unlinkPanels:Vt(n,"unlinkPanels"),leftDate:v,rightDate:g}),P=w(()=>n.unlinkPanels&&W.value>U.value+1),I=(j,X=!0)=>{const Q=j.minDate,he=j.maxDate;h.value===he&&p.value===Q||(o("calendar-change",[Q.toDate(),he&&he.toDate()]),h.value=he,p.value=Q,X&&S())},L=()=>{let j=null;s?.emptyValues&&(j=s.emptyValues.valueOnClear.value),v.value=cf(i(f),{lang:i(a),unit:"year",unlinkPanels:n.unlinkPanels})[0],g.value=v.value.add(1,"year"),o("pick",j)},D=j=>Cl(j,d.value,a.value,r);function F(j,X){n.unlinkPanels&&X?g.value=(j?.year()||0)===X.year()?X.add(1,Qu):X:g.value=v.value.add(1,Qu)}const q=un();return le(()=>n.visible,j=>{!j&&m.value.selecting&&($(n.parsedValue),E(!1))}),o("set-picker-option",["isValidValue",Di]),o("set-picker-option",["parseUserInput",D]),o("set-picker-option",["handleClear",L]),(j,X)=>(x(),B("div",{class:T([i(b).b(),i(k).b(),i(b).is("border",j.border),i(b).is("disabled",i(q)),{"has-sidebar":!!j.$slots.sidebar||O.value}])},[z("div",{class:T(i(b).e("body-wrapper"))},[ee(j.$slots,"sidebar",{class:T(i(b).e("sidebar"))}),O.value?(x(),B("div",{key:0,class:T(i(b).e("sidebar"))},[(x(!0),B(Fe,null,yt(i(l),(Q,he)=>(x(),B("button",{key:he,type:"button",class:T(i(b).e("shortcut")),disabled:i(q),onClick:ue=>i(C)(Q)},Se(Q.text),11,EH))),128))],2)):te("v-if",!0),z("div",{class:T(i(b).e("body"))},[z("div",{class:T([[i(b).e("content"),i(k).e("content")],"is-left"])},[z("div",{class:T(i(k).e("header"))},[z("button",{type:"button",class:T([i(b).e("icon-btn"),"d-arrow-left"]),disabled:i(q),onClick:X[0]||(X[0]=(...Q)=>i(N)&&i(N)(...Q))},[ee(j.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,xH),j.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!P.value||i(q),class:T([[i(b).e("icon-btn"),i(b).is("disabled",!P.value||i(q))],"d-arrow-right"]),onClick:X[1]||(X[1]=(...Q)=>i(A)&&i(A)(...Q))},[ee(j.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,TH)):te("v-if",!0),z("div",null,Se(i(V)),1)],2),Y(Bi,{"selection-mode":"range",date:v.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(u),disabled:i(q),"cell-class-name":i(c),onChangerange:i(y),onPick:I,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2),z("div",{class:T([[i(b).e("content"),i(k).e("content")],"is-right"])},[z("div",{class:T(i(k).e("header"))},[j.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!P.value||i(q),class:T([[i(b).e("icon-btn"),i(b).is("disabled",!P.value||i(q))],"d-arrow-left"]),onClick:X[2]||(X[2]=(...Q)=>i(_)&&i(_)(...Q))},[ee(j.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,$H)):te("v-if",!0),z("button",{type:"button",class:T([i(b).e("icon-btn"),"d-arrow-right"]),disabled:i(q),onClick:X[3]||(X[3]=(...Q)=>i(R)&&i(R)(...Q))},[ee(j.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,OH),z("div",null,Se(i(H)),1)],2),Y(Bi,{"selection-mode":"range",date:g.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(u),disabled:i(q),"cell-class-name":i(c),onChangerange:i(y),onPick:I,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2)],2)],2)],2))}}),NH=RH;const IH=Ce({...km}),PH=["pick","set-picker-option","calendar-change"],MH=({unlinkPanels:e,leftDate:t,rightDate:n})=>({leftPrevYear:()=>{t.value=t.value.subtract(10,"year"),e.value||(n.value=n.value.subtract(10,"year"))},rightNextYear:()=>{e.value||(t.value=t.value.add(10,"year")),n.value=n.value.add(10,"year")},leftNextYear:()=>{t.value=t.value.add(10,"year")},rightPrevYear:()=>{n.value=n.value.subtract(10,"year")},leftLabel:w(()=>{const l=Math.floor(t.value.year()/10)*10;return`${l}-${l+9}`}),rightLabel:w(()=>{const l=Math.floor(n.value.year()/10)*10;return`${l}-${l+9}`}),leftYear:w(()=>Math.floor(t.value.year()/10)*10+9),rightYear:w(()=>Math.floor(n.value.year()/10)*10)}),_H=["disabled","onClick"],AH=["disabled"],LH=["disabled"],DH=["disabled"],BH=["disabled"],zr=10,Ul="year";var FH=se({name:"DatePickerYearRange",__name:"panel-year-range",props:IH,emits:PH,setup(e,{emit:t}){const n=e,o=t,{lang:a}=Ct(),s=M(st().locale(a.value)),r=M(st().locale(a.value).add(zr,Ul)),l=_e(Cu,void 0),u=_e(sa),{shortcuts:c,disabledDate:d,cellClassName:f}=u.props,v=Vt(u.props,"format"),g=Vt(u.props,"defaultValue"),{minDate:p,maxDate:h,rangeState:m,ppNs:b,drpNs:k,handleChangeRange:y,handleRangeConfirm:S,handleShortcutClick:C,onSelect:E,parseValue:$}=Tm(n,{defaultValue:g,leftDate:s,rightDate:r,step:zr,unit:Ul,sortDates:he}),{leftPrevYear:O,rightNextYear:N,leftNextYear:R,rightPrevYear:A,leftLabel:_,rightLabel:V,leftYear:H,rightYear:U}=MH({unlinkPanels:Vt(n,"unlinkPanels"),leftDate:s,rightDate:r}),W=un(),P=w(()=>!!c.length),I=w(()=>[b.b(),k.b(),b.is("border",n.border),b.is("disabled",W.value),{"has-sidebar":!!vn().sidebar||P.value}]),L=w(()=>({content:[b.e("content"),k.e("content"),"is-left"],arrowLeftBtn:[b.e("icon-btn"),"d-arrow-left"],arrowRightBtn:[b.e("icon-btn"),b.is("disabled",!F.value||W.value),"d-arrow-right"]})),D=w(()=>({content:[b.e("content"),k.e("content"),"is-right"],arrowLeftBtn:[b.e("icon-btn"),b.is("disabled",!F.value||W.value),"d-arrow-left"],arrowRightBtn:[b.e("icon-btn"),"d-arrow-right"]})),F=w(()=>n.unlinkPanels&&U.value>H.value+1),q=(ue,ge=!0)=>{const ie=ue.minDate,oe=ue.maxDate;h.value===oe&&p.value===ie||(o("calendar-change",[ie.toDate(),oe&&oe.toDate()]),h.value=oe,p.value=ie,ge&&S())},j=ue=>Cl(ue,v.value,a.value,l),X=ue=>Di(ue)&&(d?!d(ue[0].toDate())&&!d(ue[1].toDate()):!0),Q=()=>{let ue=null;u?.emptyValues&&(ue=u.emptyValues.valueOnClear.value);const ge=cf(i(g),{lang:i(a),step:zr,unit:Ul,unlinkPanels:n.unlinkPanels});s.value=ge[0],r.value=ge[1],o("pick",ue)};function he(ue,ge){if(n.unlinkPanels&&ge){const ie=ue?.year()||0,oe=ge.year();r.value=ie+zr>oe?ge.add(zr,Ul):ge}else r.value=s.value.add(zr,Ul)}return le(()=>n.visible,ue=>{!ue&&m.value.selecting&&($(n.parsedValue),E(!1))}),o("set-picker-option",["isValidValue",X]),o("set-picker-option",["parseUserInput",j]),o("set-picker-option",["handleClear",Q]),(ue,ge)=>(x(),B("div",{class:T(I.value)},[z("div",{class:T(i(b).e("body-wrapper"))},[ee(ue.$slots,"sidebar",{class:T(i(b).e("sidebar"))}),P.value?(x(),B("div",{key:0,class:T(i(b).e("sidebar"))},[(x(!0),B(Fe,null,yt(i(c),(ie,oe)=>(x(),B("button",{key:oe,type:"button",class:T(i(b).e("shortcut")),disabled:i(W),onClick:ne=>i(C)(ie)},Se(ie.text),11,_H))),128))],2)):te("v-if",!0),z("div",{class:T(i(b).e("body"))},[z("div",{class:T(L.value.content)},[z("div",{class:T(i(k).e("header"))},[z("button",{type:"button",class:T(L.value.arrowLeftBtn),disabled:i(W),onClick:ge[0]||(ge[0]=(...ie)=>i(O)&&i(O)(...ie))},[ee(ue.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,AH),ue.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!F.value||i(W),class:T(L.value.arrowRightBtn),onClick:ge[1]||(ge[1]=(...ie)=>i(R)&&i(R)(...ie))},[ee(ue.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,LH)):te("v-if",!0),z("div",null,Se(i(_)),1)],2),Y(Fi,{"selection-mode":"range",date:s.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(d),disabled:i(W),"cell-class-name":i(f),onChangerange:i(y),onPick:q,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2),z("div",{class:T(D.value.content)},[z("div",{class:T(i(k).e("header"))},[ue.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!F.value||i(W),class:T(D.value.arrowLeftBtn),onClick:ge[2]||(ge[2]=(...ie)=>i(A)&&i(A)(...ie))},[ee(ue.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,DH)):te("v-if",!0),z("button",{type:"button",class:T(D.value.arrowRightBtn),disabled:i(W),onClick:ge[3]||(ge[3]=(...ie)=>i(N)&&i(N)(...ie))},[ee(ue.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,BH),z("div",null,Se(i(V)),1)],2),Y(Fi,{"selection-mode":"range",date:r.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(d),disabled:i(W),"cell-class-name":i(f),onChangerange:i(y),onPick:q,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2)],2)],2)],2))}}),VH=FH;const zH=function(e){switch(e){case"daterange":case"datetimerange":return wH;case"monthrange":return NH;case"yearrange":return VH;default:return nH}};var kc={exports:{}},HH=kc.exports,d0;function KH(){return d0||(d0=1,(function(e,t){(function(n,o){e.exports=o()})(HH,(function(){return function(n,o){var a=o.prototype,s=a.format;a.format=function(r){var l=this,u=this.$locale();if(!this.isValid())return s.bind(this)(r);var c=this.$utils(),d=(r||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(f){switch(f){case"Q":return Math.ceil((l.$M+1)/3);case"Do":return u.ordinal(l.$D);case"gggg":return l.weekYear();case"GGGG":return l.isoWeekYear();case"wo":return u.ordinal(l.week(),"W");case"w":case"ww":return c.s(l.week(),f==="w"?1:2,"0");case"W":case"WW":return c.s(l.isoWeek(),f==="W"?1:2,"0");case"k":case"kk":return c.s(String(l.$H===0?24:l.$H),f==="k"?1:2,"0");case"X":return Math.floor(l.$d.getTime()/1e3);case"x":return l.$d.getTime();case"z":return"["+l.offsetName()+"]";case"zzz":return"["+l.offsetName("long")+"]";default:return f}}));return s.bind(this)(d)}}}))})(kc)),kc.exports}var WH=KH();const jH=bs(WH);var Ec={exports:{}},UH=Ec.exports,f0;function qH(){return f0||(f0=1,(function(e,t){(function(n,o){e.exports=o()})(UH,(function(){var n="week",o="year";return function(a,s,r){var l=s.prototype;l.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var c=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var d=r(this).startOf(o).add(1,o).date(c),f=r(this).endOf(n);if(d.isBefore(f))return 1}var v=r(this).startOf(o).date(c).startOf(n).subtract(1,"millisecond"),g=this.diff(v,n,!0);return g<0?r(this).startOf("week").week():Math.ceil(g)},l.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}}))})(Ec)),Ec.exports}var YH=qH();const GH=bs(YH);var xc={exports:{}},XH=xc.exports,p0;function JH(){return p0||(p0=1,(function(e,t){(function(n,o){e.exports=o()})(XH,(function(){return function(n,o){o.prototype.weekYear=function(){var a=this.month(),s=this.week(),r=this.year();return s===1&&a===11?r+1:a===0&&s>=52?r-1:r}}}))})(xc)),xc.exports}var ZH=JH();const QH=bs(ZH);var Tc={exports:{}},e5=Tc.exports,h0;function t5(){return h0||(h0=1,(function(e,t){(function(n,o){e.exports=o()})(e5,(function(){return function(n,o,a){o.prototype.dayOfYear=function(s){var r=Math.round((a(this).startOf("day")-a(this).startOf("year"))/864e5)+1;return s==null?r:this.add(s-r,"day")}}}))})(Tc)),Tc.exports}var n5=t5();const o5=bs(n5);var $c={exports:{}},a5=$c.exports,v0;function s5(){return v0||(v0=1,(function(e,t){(function(n,o){e.exports=o()})(a5,(function(){return function(n,o){o.prototype.isSameOrAfter=function(a,s){return this.isSame(a,s)||this.isAfter(a,s)}}}))})($c)),$c.exports}var r5=s5();const l5=bs(r5);var Oc={exports:{}},i5=Oc.exports,m0;function u5(){return m0||(m0=1,(function(e,t){(function(n,o){e.exports=o()})(i5,(function(){return function(n,o){o.prototype.isSameOrBefore=function(a,s){return this.isSame(a,s)||this.isBefore(a,s)}}}))})(Oc)),Oc.exports}var c5=u5();const d5=bs(c5);function f5(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}st.extend(Bk);st.extend(jH);st.extend(vm);st.extend(GH);st.extend(QH);st.extend(o5);st.extend(l5);st.extend(d5);var p5=se({name:"ElDatePickerPanel",install:null,inheritAttrs:!1,props:$z,emits:[ot,"calendar-change","panel-change","visible-change","clear"],setup(e,{slots:t,emit:n,attrs:o}){const a=fe("picker-panel");Tt(_e(sa,void 0))&&St(sa,{props:At({...Mn(e)})}),St(Sm,{slots:t,pickerNs:a});const{parsedValue:s,onCalendarChange:r,onPanelChange:l,onSetPickerOption:u,onPick:c}=_e(gk,()=>Ck(e,n),!0);return()=>Y(zH(e.type),dt(ou(o,"onPick"),e,{parsedValue:s.value,"onSet-picker-option":u,"onCalendar-change":r,"onPanel-change":l,onClear:()=>n("clear"),onPick:c}),f5(t)?t:{default:()=>[t]})}});const S2=rt(p5),h5=Ce({...hm,type:{type:G(String),default:"date"}});function v5(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}var m5=se({name:"ElDatePicker",install:null,props:h5,emits:[ot],setup(e,{expose:t,emit:n,slots:o}){St(Cu,w(()=>!e.format)),St(fm,At(Vt(e,"popperOptions")));const a=M();t({focus:()=>{a.value?.focus()},blur:()=>{a.value?.blur()},handleOpen:()=>{a.value?.handleOpen()},handleClose:()=>{a.value?.handleClose()}});const s=r=>{n(ot,r)};return()=>{const r=e.format??(p8[e.type]||Os);return Y(kk,dt(e,{format:r,type:e.type,ref:a,"onUpdate:modelValue":s}),{default:l=>Y(S2,dt({disabled:e.disabled,editable:e.editable,border:!1},l),v5(o)?o:{default:()=>[o]}),"range-separator":o["range-separator"]})}}});const g5=rt(m5),b5=Ce({border:Boolean,column:{type:Number,default:3},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},size:Tn,title:{type:String,default:""},extra:{type:String,default:""},labelWidth:{type:[String,Number]}}),C2="ElDescriptionsItem",y5=Ce({label:{type:String,default:""},span:{type:Number,default:1},rowspan:{type:Number,default:1},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},labelWidth:{type:[String,Number]},align:{type:String,values:ob,default:"left"},labelAlign:{type:String,values:ob},className:{type:String,default:""},labelClassName:{type:String,default:""}}),k2=se({name:C2,props:y5}),$m=Symbol("elDescriptions"),w5=Ce({row:{type:G(Array),default:()=>[]}});var ql=se({name:"ElDescriptionsCell",props:{cell:{type:Object},tag:{type:String,default:"td"},type:{type:String}},setup(){return{descriptions:_e($m,{})}},render(){const e=R4(this.cell),t=(this.cell?.dirs||[]).map(h=>{const{dir:m,arg:b,modifiers:k,value:y}=h;return[m,y,b,k]}),{border:n,direction:o}=this.descriptions,a=o==="vertical",s=()=>this.cell?.children?.label?.()||e.label,r=()=>this.cell?.children?.default?.(),l=e.span,u=e.rowspan,c=e.align?`is-${e.align}`:"",d=e.labelAlign?`is-${e.labelAlign}`:c,f=e.className,v=e.labelClassName,g={width:ln(this.type==="label"?e.labelWidth??this.descriptions.labelWidth??e.width:e.width),minWidth:ln(e.minWidth)},p=fe("descriptions");switch(this.type){case"label":return ut(Ye(this.tag,{style:g,class:[p.e("cell"),p.e("label"),p.is("bordered-label",n),p.is("vertical-label",a),d,v],colSpan:a?l:1,rowspan:a?1:u},s()),t);case"content":return ut(Ye(this.tag,{style:g,class:[p.e("cell"),p.e("content"),p.is("bordered-content",n),p.is("vertical-content",a),c,f],colSpan:a?l:l*2-1,rowspan:a?u*2-1:u},r()),t);default:{const h=s(),m={},b=ln(e.labelWidth??this.descriptions.labelWidth);return b&&(m.width=b,m.display="inline-block"),ut(Ye("td",{style:g,class:[p.e("cell"),c],colSpan:l,rowspan:u},[bn(h)?void 0:Ye("span",{style:m,class:[p.e("label"),v]},h),Ye("span",{class:[p.e("content"),f]},r())]),t)}}}});const S5={key:1};var C5=se({name:"ElDescriptionsRow",__name:"descriptions-row",props:w5,setup(e){const t=_e($m,{});return(n,o)=>i(t).direction==="vertical"?(x(),B(Fe,{key:0},[z("tr",null,[(x(!0),B(Fe,null,yt(e.row,(a,s)=>(x(),ae(i(ql),{key:`tr1-${s}`,cell:a,tag:"th",type:"label"},null,8,["cell"]))),128))]),z("tr",null,[(x(!0),B(Fe,null,yt(e.row,(a,s)=>(x(),ae(i(ql),{key:`tr2-${s}`,cell:a,tag:"td",type:"content"},null,8,["cell"]))),128))])],64)):(x(),B("tr",S5,[(x(!0),B(Fe,null,yt(e.row,(a,s)=>(x(),B(Fe,{key:`tr3-${s}`},[i(t).border?(x(),B(Fe,{key:0},[Y(i(ql),{cell:a,tag:"td",type:"label"},null,8,["cell"]),Y(i(ql),{cell:a,tag:"td",type:"content"},null,8,["cell"])],64)):(x(),ae(i(ql),{key:1,cell:a,tag:"td",type:"both"},null,8,["cell"]))],64))),128))]))}}),k5=C5,E5=se({name:"ElDescriptions",__name:"description",props:b5,setup(e){const t=e,n=fe("descriptions"),o=Cn(),a=vn();St($m,t);const s=w(()=>[n.b(),n.m(o.value)]),r=(u,c,d,f=!1)=>(u.props||(u.props={}),c>d&&(u.props.span=d),f&&(u.props.span=c),u),l=()=>{if(!a.default)return[];const u=$o(a.default()).filter(p=>p?.type?.name===C2),c=[];let d=[],f=t.column,v=0;const g=[];return u.forEach((p,h)=>{const m=p.props?.span||1,b=p.props?.rowspan||1,k=c.length;if(g[k]||=0,b>1)for(let y=1;y0&&(f-=g[k],g[k]=0),hf?f:m),h===u.length-1){const y=t.column-v%t.column;d.push(r(p,y,f,!0)),c.push(d);return}m(x(),B("div",{class:T(s.value)},[e.title||e.extra||u.$slots.title||u.$slots.extra?(x(),B("div",{key:0,class:T(i(n).e("header"))},[z("div",{class:T(i(n).e("title"))},[ee(u.$slots,"title",{},()=>[wt(Se(e.title),1)])],2),z("div",{class:T(i(n).e("extra"))},[ee(u.$slots,"extra",{},()=>[wt(Se(e.extra),1)])],2)],2)):te("v-if",!0),z("div",{class:T(i(n).e("body"))},[z("table",{class:T([i(n).e("table"),i(n).is("bordered",e.border)])},[z("tbody",null,[(x(!0),B(Fe,null,yt(l(),(d,f)=>(x(),ae(k5,{key:f,row:d},null,8,["row"]))),128))])],2)],2)],2))}}),x5=E5;const T5=rt(x5,{DescriptionsItem:k2}),$5=on(k2),E2=Ce({center:Boolean,alignCenter:{type:Boolean,default:void 0},closeIcon:{type:Kt},draggable:{type:Boolean,default:void 0},overflow:{type:Boolean,default:void 0},fullscreen:Boolean,headerClass:String,bodyClass:String,footerClass:String,showClose:{type:Boolean,default:!0},title:{type:String,default:""},ariaLevel:{type:String,default:"2"}}),O5={close:()=>!0},x2=Ce({...E2,appendToBody:Boolean,appendTo:{type:su.to.type,default:"body"},beforeClose:{type:G(Function)},destroyOnClose:Boolean,closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},modalPenetrable:Boolean,openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:Boolean,modalClass:String,headerClass:String,bodyClass:String,footerClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:Boolean,headerAriaLevel:{type:String,default:"2"},transition:{type:G([String,Object]),default:void 0}}),T2={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[ot]:e=>Ht(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},R5=Ce({mask:{type:Boolean,default:!0},customMaskEvent:Boolean,overlayClass:{type:G([String,Array,Object])},zIndex:{type:G([String,Number])}}),N5={click:e=>e instanceof MouseEvent},I5="overlay";var P5=se({name:"ElOverlay",props:R5,emits:N5,setup(e,{slots:t,emit:n}){const o=fe(I5),a=u=>{n("click",u)},{onClick:s,onMousedown:r,onMouseup:l}=Xv(e.customMaskEvent?void 0:a);return()=>e.mask?Y("div",{class:[o.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:s,onMousedown:r,onMouseup:l},[ee(t,"default")],Uo.STYLE|Uo.CLASS|Uo.PROPS,["onClick","onMouseup","onMousedown"]):Ye("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[ee(t,"default")])}});const Om=P5,$2=Symbol("dialogInjectionKey"),sp="dialog-fade",M5="ElDialog",O2=(e,t)=>{const n=ft().emit,{nextZIndex:o}=du();let a="";const s=zn(),r=zn(),l=M(!1),u=M(!1),c=M(!1),d=M(e.zIndex??o()),f=M(!1);let v,g;const p=gs(),h=w(()=>p.value?.namespace??di),m=w(()=>p.value?.dialog),b=w(()=>{const D={},F=`--${h.value}-dialog`;if(!e.fullscreen){e.top&&(D[`${F}-margin-top`]=e.top);const q=ln(e.width);q&&(D[`${F}-width`]=q)}return D}),k=w(()=>(e.draggable??m.value?.draggable??!1)&&!e.fullscreen),y=w(()=>e.alignCenter??m.value?.alignCenter??!1),S=w(()=>e.overflow??m.value?.overflow??!1),C=w(()=>y.value?{display:"flex"}:{}),E=w(()=>{const D=e.transition??m.value?.transition??sp,F={name:D,onAfterEnter:$,onBeforeLeave:N,onAfterLeave:O};if(at(D)){const q={...D},j=(X,Q)=>he=>{ye(X)?X.forEach(ue=>{Ve(ue)&&ue(he)}):Ve(X)&&X(he),Q()};return q.onAfterEnter=j(q.onAfterEnter,$),q.onBeforeLeave=j(q.onBeforeLeave,N),q.onAfterLeave=j(q.onAfterLeave,O),q.name||(q.name=sp,pt(M5,`transition.name is missing when using object syntax, fallback to '${sp}'`)),q}return F});function $(){n("opened")}function O(){n("closed"),n(ot,!1),e.destroyOnClose&&(c.value=!1),f.value=!1}function N(){f.value=!0,n("close")}function R(){g?.(),v?.(),e.openDelay&&e.openDelay>0?{stop:v}=pl(()=>H(),e.openDelay):H()}function A(){v?.(),g?.(),e.closeDelay&&e.closeDelay>0?{stop:g}=pl(()=>U(),e.closeDelay):U()}function _(){function D(F){F||(u.value=!0,l.value=!1)}e.beforeClose?e.beforeClose(D):A()}function V(){e.closeOnClickModal&&_()}function H(){Mt&&(l.value=!0)}function U(){l.value=!1}function W(){n("openAutoFocus")}function P(){n("closeAutoFocus")}function I(D){D.detail?.focusReason==="pointer"&&D.preventDefault()}e.lockScroll&&Gd(l);function L(){e.closeOnPressEscape&&_()}return le(()=>e.zIndex,()=>{d.value=e.zIndex??o()}),le(()=>e.modelValue,D=>{D?(u.value=!1,f.value=!1,R(),c.value=!0,d.value=e.zIndex??o(),Re(()=>{n("open"),t.value&&(t.value.parentElement.scrollTop=0,t.value.parentElement.scrollLeft=0,t.value.scrollTop=0)})):l.value&&A()}),le(()=>e.fullscreen,D=>{t.value&&(D?(a=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=a)}),ht(()=>{e.modelValue&&(l.value=!0,c.value=!0,R())}),{afterEnter:$,afterLeave:O,beforeLeave:N,handleClose:_,onModalClick:V,close:A,doClose:U,onOpenAutoFocus:W,onCloseAutoFocus:P,onCloseRequested:L,onFocusoutPrevented:I,titleId:s,bodyId:r,closed:u,style:b,overlayDialogStyle:C,rendered:c,visible:l,zIndex:d,transitionConfig:E,_draggable:k,_alignCenter:y,_overflow:S,closing:f}},Rm=(...e)=>t=>{e.forEach(n=>{n.value=t})},_5=["aria-level"],A5=["aria-label"],L5=["id"];var D5=se({name:"ElDialogContent",__name:"dialog-content",props:E2,emits:O5,setup(e,{expose:t}){const{t:n}=Ct(),{Close:o}=WC,a=e,{dialogRef:s,headerRef:r,bodyId:l,ns:u,style:c}=_e($2),{focusTrapRef:d}=_e(tk),f=Rm(d,s),v=w(()=>!!a.draggable),{resetPosition:g,updatePosition:p,isDragging:h}=eC(s,r,v,w(()=>!!a.overflow)),m=w(()=>[u.b(),u.is("fullscreen",a.fullscreen),u.is("draggable",v.value),u.is("dragging",h.value),u.is("align-center",!!a.alignCenter),{[u.m("center")]:a.center}]);return t({resetPosition:g,updatePosition:p}),(b,k)=>(x(),B("div",{ref:i(f),class:T(m.value),style:Ke(i(c)),tabindex:"-1"},[z("header",{ref_key:"headerRef",ref:r,class:T([i(u).e("header"),e.headerClass,{"show-close":e.showClose}])},[ee(b.$slots,"header",{},()=>[z("span",{role:"heading","aria-level":e.ariaLevel,class:T(i(u).e("title"))},Se(e.title),11,_5)]),e.showClose?(x(),B("button",{key:0,"aria-label":i(n)("el.dialog.close"),class:T(i(u).e("headerbtn")),type:"button",onClick:k[0]||(k[0]=y=>b.$emit("close"))},[Y(i(De),{class:T(i(u).e("close"))},{default:J(()=>[(x(),ae(it(e.closeIcon||i(o))))]),_:1},8,["class"])],10,A5)):te("v-if",!0)],2),z("div",{id:i(l),class:T([i(u).e("body"),e.bodyClass])},[ee(b.$slots,"default")],10,L5),b.$slots.footer?(x(),B("footer",{key:0,class:T([i(u).e("footer"),e.footerClass])},[ee(b.$slots,"footer")],2)):te("v-if",!0)],6))}}),B5=D5;const F5=["aria-label","aria-labelledby","aria-describedby"];var V5=se({name:"ElDialog",inheritAttrs:!1,__name:"dialog",props:x2,emits:T2,setup(e,{expose:t}){const n=e,o=vn();Ta({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},w(()=>!!o.title));const a=fe("dialog"),s=M(),r=M(),l=M(),{visible:u,titleId:c,bodyId:d,style:f,overlayDialogStyle:v,rendered:g,transitionConfig:p,zIndex:h,_draggable:m,_alignCenter:b,_overflow:k,handleClose:y,onModalClick:S,onOpenAutoFocus:C,onCloseAutoFocus:E,onCloseRequested:$,onFocusoutPrevented:O,closing:N}=O2(n,s);St($2,{dialogRef:s,headerRef:r,bodyId:d,ns:a,rendered:g,style:f});const R=Xv(S),A=w(()=>n.modalPenetrable&&!n.modal&&!n.fullscreen);return t({visible:u,dialogContentRef:l,resetPosition:()=>{l.value?.resetPosition()},handleClose:y}),(V,H)=>(x(),ae(i(_l),{to:e.appendTo,disabled:e.appendTo!=="body"?!1:!e.appendToBody},{default:J(()=>[Y(Vn,dt(i(p),{persisted:""}),{default:J(()=>[ut(Y(i(Om),{"custom-mask-event":"",mask:e.modal,"overlay-class":[e.modalClass??"",`${i(a).namespace.value}-modal-dialog`,i(a).is("penetrable",A.value)],"z-index":i(h)},{default:J(()=>[z("div",{role:"dialog","aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:i(c),"aria-describedby":i(d),class:T([`${i(a).namespace.value}-overlay-dialog`,i(a).is("closing",i(N))]),style:Ke(i(v)),onClick:H[0]||(H[0]=(...U)=>i(R).onClick&&i(R).onClick(...U)),onMousedown:H[1]||(H[1]=(...U)=>i(R).onMousedown&&i(R).onMousedown(...U)),onMouseup:H[2]||(H[2]=(...U)=>i(R).onMouseup&&i(R).onMouseup(...U))},[Y(i(Al),{loop:"",trapped:i(u),"focus-start-el":"container",onFocusAfterTrapped:i(C),onFocusAfterReleased:i(E),onFocusoutPrevented:i(O),onReleaseRequested:i($)},{default:J(()=>[i(g)?(x(),ae(B5,dt({key:0,ref_key:"dialogContentRef",ref:l},V.$attrs,{center:e.center,"align-center":i(b),"close-icon":e.closeIcon,draggable:i(m),overflow:i(k),fullscreen:e.fullscreen,"header-class":e.headerClass,"body-class":e.bodyClass,"footer-class":e.footerClass,"show-close":e.showClose,title:e.title,"aria-level":e.headerAriaLevel,onClose:i(y)}),uo({header:J(()=>[V.$slots.title?ee(V.$slots,"title",{key:1}):ee(V.$slots,"header",{key:0,close:i(y),titleId:i(c),titleClass:i(a).e("title")})]),default:J(()=>[ee(V.$slots,"default")]),_:2},[V.$slots.footer?{name:"footer",fn:J(()=>[ee(V.$slots,"footer")]),key:"0"}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose"])):te("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,F5)]),_:3},8,["mask","overlay-class","z-index"]),[[Pt,i(u)]])]),_:3},16)]),_:3},8,["to","disabled"]))}}),z5=V5;const R2=rt(z5),H5=Ce({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},contentPosition:{type:String,values:["left","center","right"],default:"center"},borderStyle:{type:G(String),default:"solid"}});var K5=se({name:"ElDivider",__name:"divider",props:H5,setup(e){const t=e,n=fe("divider"),o=w(()=>n.cssVar({"border-style":t.borderStyle}));return(a,s)=>(x(),B("div",{class:T([i(n).b(),i(n).m(e.direction)]),style:Ke(o.value),role:"separator"},[a.$slots.default&&e.direction!=="vertical"?(x(),B("div",{key:0,class:T([i(n).e("text"),i(n).is(e.contentPosition)])},[ee(a.$slots,"default")],2)):te("v-if",!0)],6))}}),W5=K5;const N2=rt(W5),j5=Ce({...x2,direction:{type:String,default:"rtl",values:["ltr","rtl","ttb","btt"]},resizable:Boolean,size:{type:[String,Number],default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0},headerAriaLevel:{type:String,default:"2"}}),U5={...T2,"resize-start":(e,t)=>e instanceof MouseEvent&&typeof t=="number",resize:(e,t)=>e instanceof MouseEvent&&typeof t=="number","resize-end":(e,t)=>e instanceof MouseEvent&&typeof t=="number"};function q5(e,t,n){const{width:o,height:a}=Lv(),s=w(()=>["ltr","rtl"].includes(e.direction)),r=w(()=>["ltr","ttb"].includes(e.direction)?1:-1),l=w(()=>s.value?o.value:a.value),u=w(()=>WS(c.value+r.value*d.value,4,l.value)),c=M(0),d=M(0),f=M(!1),v=M(!1);let g=[],p=[];const h=()=>{const S=t.value?.closest('[aria-modal="true"]');return S?s.value?S.offsetWidth:S.offsetHeight:100};le(()=>[e.size,e.resizable],()=>{v.value=!1,c.value=0,d.value=0,k()});const m=S=>{e.resizable&&(v.value||(c.value=h(),v.value=!0),g=[S.pageX,S.pageY],f.value=!0,n("resize-start",S,c.value),p.push(Ft(window,"mouseup",k),Ft(window,"mousemove",b)))},b=S=>{const{pageX:C,pageY:E}=S,$=C-g[0],O=E-g[1];d.value=s.value?$:O,n("resize",S,u.value)},k=S=>{f.value&&(g=[],c.value=u.value,d.value=0,f.value=!1,p.forEach(C=>C?.()),p=[],S&&n("resize-end",S,c.value))},y=Ft(t,"mousedown",m);return Bt(()=>{y(),k()}),{size:w(()=>v.value?`${u.value}px`:ln(e.size)),isResizing:f,isHorizontal:s}}const Y5=["aria-label","aria-labelledby","aria-describedby"],G5=["id","aria-level"],X5=["aria-label"],J5=["id"];var Z5=se({name:"ElDrawer",inheritAttrs:!1,__name:"drawer",props:j5,emits:U5,setup(e,{expose:t,emit:n}){const o=e,a=n,s=vn();Ta({scope:"el-drawer",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/drawer.html#slots"},w(()=>!!s.title));const r=M(),l=M(),u=M(),c=fe("drawer"),{t:d}=Ct(),{afterEnter:f,afterLeave:v,beforeLeave:g,visible:p,rendered:h,titleId:m,bodyId:b,zIndex:k,onModalClick:y,onOpenAutoFocus:S,onCloseAutoFocus:C,onFocusoutPrevented:E,onCloseRequested:$,handleClose:O}=O2(o,r),{isHorizontal:N,size:R,isResizing:A}=q5(o,u,a),_=w(()=>o.modalPenetrable&&!o.modal);return t({handleClose:O,afterEnter:f,afterLeave:v}),(V,H)=>(x(),ae(i(_l),{to:e.appendTo,disabled:e.appendTo!=="body"?!1:!e.appendToBody},{default:J(()=>[Y(Vn,{name:i(c).b("fade"),onAfterEnter:i(f),onAfterLeave:i(v),onBeforeLeave:i(g),persisted:""},{default:J(()=>[ut(Y(i(Om),{mask:e.modal,"overlay-class":[i(c).is("drawer"),e.modalClass??"",`${i(c).namespace.value}-modal-drawer`,i(c).is("penetrable",_.value)],"z-index":i(k),onClick:i(y)},{default:J(()=>[Y(i(Al),{loop:"",trapped:i(p),"focus-trap-el":r.value,"focus-start-el":l.value,onFocusAfterTrapped:i(S),onFocusAfterReleased:i(C),onFocusoutPrevented:i(E),onReleaseRequested:i($)},{default:J(()=>[z("div",dt({ref_key:"drawerRef",ref:r,"aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:i(m),"aria-describedby":i(b)},V.$attrs,{class:[i(c).b(),e.direction,i(p)&&"open",i(c).is("dragging",i(A))],style:{[i(N)?"width":"height"]:i(R)},role:"dialog",onClick:H[1]||(H[1]=Xe(()=>{},["stop"]))}),[z("span",{ref_key:"focusStartRef",ref:l,class:T(i(c).e("sr-focus")),tabindex:"-1"},null,2),e.withHeader?(x(),B("header",{key:0,class:T([i(c).e("header"),e.headerClass])},[V.$slots.title?ee(V.$slots,"title",{key:1},()=>[te(" DEPRECATED SLOT ")]):ee(V.$slots,"header",{key:0,close:i(O),titleId:i(m),titleClass:i(c).e("title")},()=>[z("span",{id:i(m),role:"heading","aria-level":e.headerAriaLevel,class:T(i(c).e("title"))},Se(e.title),11,G5)]),e.showClose?(x(),B("button",{key:2,"aria-label":i(d)("el.drawer.close"),class:T(i(c).e("close-btn")),type:"button",onClick:H[0]||(H[0]=(...U)=>i(O)&&i(O)(...U))},[Y(i(De),{class:T(i(c).e("close"))},{default:J(()=>[Y(i(Ko))]),_:1},8,["class"])],10,X5)):te("v-if",!0)],2)):te("v-if",!0),i(h)?(x(),B("div",{key:1,id:i(b),class:T([i(c).e("body"),e.bodyClass])},[ee(V.$slots,"default")],10,J5)):te("v-if",!0),V.$slots.footer?(x(),B("div",{key:2,class:T([i(c).e("footer"),e.footerClass])},[ee(V.$slots,"footer")],2)):te("v-if",!0),e.resizable?(x(),B("div",{key:3,ref_key:"draggerRef",ref:u,style:Ke({zIndex:i(k)}),class:T(i(c).e("dragger"))},null,6)):te("v-if",!0)],16,Y5)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[Pt,i(p)]])]),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}}),Q5=Z5;const eK=rt(Q5),Rc=Ce({trigger:{...Na.trigger,type:G([String,Array])},triggerKeys:{type:G(Array),default:()=>[we.enter,we.numpadEnter,we.space,we.down]},virtualTriggering:Na.virtualTriggering,virtualRef:Na.virtualRef,effect:{...zt.effect,default:"light"},type:{type:G(String)},placement:{type:G(String),default:"bottom"},popperOptions:{type:G(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showArrow:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:G([Number,String]),default:0},maxHeight:{type:G([Number,String]),default:""},popperClass:zt.popperClass,popperStyle:zt.popperStyle,disabled:Boolean,role:{type:String,values:jC,default:"menu"},buttonProps:{type:G(Object)},teleported:zt.teleported,appendTo:zt.appendTo,persistent:{type:Boolean,default:!0}}),I2=Ce({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:Kt}}),tK=Ce({onKeydown:{type:G(Function)}}),df=Symbol("elDropdown"),P2="elDropdown";var nK=se({inheritAttrs:!1});function oK(e,t,n,o,a,s){return ee(e.$slots,"default")}var aK=$n(nK,[["render",oK]]),sK=se({name:"ElCollectionItem",inheritAttrs:!1});function rK(e,t,n,o,a,s){return ee(e.$slots,"default")}var lK=$n(sK,[["render",rK]]);const M2="data-el-collection-item",iK=e=>{const t=`El${e}Collection`,n=`${t}Item`,o=Symbol(t),a=Symbol(n);return{COLLECTION_INJECTION_KEY:o,COLLECTION_ITEM_INJECTION_KEY:a,ElCollection:Object.assign({},aK,{name:t,setup(){const s=M(),r=new Map;St(o,{itemMap:r,getItems:(()=>{const u=i(s);if(!u)return[];const c=Array.from(u.querySelectorAll(`[${M2}]`));return[...r.values()].sort((d,f)=>c.indexOf(d.ref)-c.indexOf(f.ref))}),collectionRef:s})}}),ElCollectionItem:Object.assign({},lK,{name:n,setup(s,{attrs:r}){const l=M(),u=_e(o,void 0);St(a,{collectionItemRef:l}),ht(()=>{const c=i(l);c&&u.itemMap.set(c,{ref:c,...r})}),Bt(()=>{const c=i(l);u.itemMap.delete(c)})}})}},uK=Ce({style:{type:G([String,Array,Object])},currentTabId:{type:G(String)},defaultCurrentTabId:String,loop:Boolean,dir:{type:String,values:["ltr","rtl"],default:"ltr"},orientation:{type:G(String)},onBlur:Function,onFocus:Function,onMousedown:Function}),{ElCollection:cK,ElCollectionItem:dK,COLLECTION_INJECTION_KEY:_2,COLLECTION_ITEM_INJECTION_KEY:fK}=iK("RovingFocusGroup"),Nm=Symbol("elRovingFocusGroup"),A2=Symbol("elRovingFocusGroupItem"),pK={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"},hK=(e,t)=>e,vK=(e,t,n)=>{const o=hK(jt(e));return pK[o]},mK=(e,t)=>e.map((n,o)=>e[(o+t)%e.length]),g0=e=>{const{activeElement:t}=document;for(const n of e)if(n===t||(n.focus(),t!==document.activeElement))return},b0="currentTabIdChange",y0="rovingFocusGroup.entryFocus",gK={bubbles:!1,cancelable:!0};var bK=se({name:"ElRovingFocusGroupImpl",inheritAttrs:!1,props:uK,emits:[b0,"entryFocus"],setup(e,{emit:t}){const n=M((e.currentTabId||e.defaultCurrentTabId)??null),o=M(!1),a=M(!1),s=M(),{getItems:r}=_e(_2,void 0),l=w(()=>[{outline:"none"},e.style]),u=h=>{t(b0,h)},c=()=>{o.value=!0},d=Rn(h=>{e.onMousedown?.(h)},()=>{a.value=!0}),f=Rn(h=>{e.onFocus?.(h)},h=>{const m=!i(a),{target:b,currentTarget:k}=h;if(b===k&&m&&!i(o)){const y=new Event(y0,gK);if(k?.dispatchEvent(y),!y.defaultPrevented){const S=r().filter(C=>C.focusable);g0([S.find(C=>C.active),S.find(C=>C.id===i(n)),...S].filter(Boolean).map(C=>C.ref))}}a.value=!1}),v=Rn(h=>{e.onBlur?.(h)},()=>{o.value=!1}),g=(...h)=>{t("entryFocus",...h)},p=h=>{const m=vK(h);if(m){h.preventDefault();let b=r().filter(k=>k.focusable).map(k=>k.ref);switch(m){case"last":b.reverse();break;case"prev":case"next":{m==="prev"&&b.reverse();const k=b.indexOf(h.currentTarget);b=e.loop?mK(b,k+1):b.slice(k+1);break}}Re(()=>{g0(b)})}};St(Nm,{currentTabbedId:br(n),loop:Vt(e,"loop"),tabIndex:w(()=>i(o)?-1:0),rovingFocusGroupRef:s,rovingFocusGroupRootStyle:l,orientation:Vt(e,"orientation"),dir:Vt(e,"dir"),onItemFocus:u,onItemShiftTab:c,onBlur:v,onFocus:f,onMousedown:d,onKeydown:p}),le(()=>e.currentTabId,h=>{n.value=h??null}),Ft(s,y0,g)}});function yK(e,t,n,o,a,s){return ee(e.$slots,"default")}var wK=$n(bK,[["render",yK]]),SK=se({name:"ElRovingFocusGroup",components:{ElFocusGroupCollection:cK,ElRovingFocusGroupImpl:wK}});function CK(e,t,n,o,a,s){const r=It("el-roving-focus-group-impl"),l=It("el-focus-group-collection");return x(),ae(l,null,{default:J(()=>[Y(r,Ja(Za(e.$attrs)),{default:J(()=>[ee(e.$slots,"default")]),_:3},16)]),_:3})}var kK=$n(SK,[["render",CK]]),EK=se({components:{ElRovingFocusCollectionItem:dK},props:{focusable:{type:Boolean,default:!0},active:Boolean},emits:["mousedown","focus","keydown"],setup(e,{emit:t}){const{currentTabbedId:n,onItemFocus:o,onItemShiftTab:a,onKeydown:s}=_e(Nm,void 0),r=zn(),l=M(),u=Rn(v=>{t("mousedown",v)},v=>{e.focusable?o(i(r)):v.preventDefault()}),c=Rn(v=>{t("focus",v)},()=>{o(i(r))}),d=Rn(v=>{t("keydown",v)},v=>{const{shiftKey:g,target:p,currentTarget:h}=v;if(jt(v)===we.tab&&g){a();return}p===h&&s(v)}),f=w(()=>n.value===i(r));return St(A2,{rovingFocusGroupItemRef:l,tabIndex:w(()=>i(f)?0:-1),handleMousedown:u,handleFocus:c,handleKeydown:d}),{id:r,handleKeydown:d,handleFocus:c,handleMousedown:u}}});function xK(e,t,n,o,a,s){const r=It("el-roving-focus-collection-item");return x(),ae(r,{id:e.id,focusable:e.focusable,active:e.active},{default:J(()=>[ee(e.$slots,"default")]),_:3},8,["id","focusable","active"])}var TK=$n(EK,[["render",xK]]),$K=kK;const{ButtonGroup:OK}=In;var RK=se({name:"ElDropdown",components:{ElButton:In,ElButtonGroup:OK,ElScrollbar:aa,ElTooltip:Ln,ElRovingFocusGroup:$K,ElOnlyChild:GC,ElIcon:De,ArrowDown:Fa},props:Rc,emits:["visible-change","click","command"],setup(e,{emit:t}){const n=ft(),o=fe("dropdown"),{t:a}=Ct(),s=M(),r=M(),l=M(),u=M(),c=M(null),d=M(null),f=M(!1),v=w(()=>({maxHeight:ln(e.maxHeight)})),g=w(()=>[o.m(S.value)]),p=w(()=>Nn(e.trigger)),h=zn().value,m=w(()=>e.id||h);function b(){l.value?.onClose(void 0,0)}function k(){l.value?.onClose()}function y(){l.value?.onOpen()}const S=Cn();function C(...V){t("command",...V)}function E(){}function $(){const V=i(u);p.value.includes("hover")&&V?.focus({preventScroll:!0}),d.value=null}function O(V){d.value=V}function N(){t("visible-change",!0)}function R(V){f.value=V?.type==="keydown",u.value?.focus()}function A(){t("visible-change",!1)}return St(df,{contentRef:u,role:w(()=>e.role),triggerId:m,isUsingKeyboard:f,onItemEnter:E,onItemLeave:$,handleClose:k}),St(P2,{instance:n,dropdownSize:S,handleClick:b,commandHandler:C,trigger:Vt(e,"trigger"),hideOnClick:Vt(e,"hideOnClick")}),{t:a,ns:o,scrollbar:c,wrapStyle:v,dropdownTriggerKls:g,dropdownSize:S,triggerId:m,currentTabId:d,handleCurrentTabIdChange:O,handlerMainButtonClick:V=>{t("click",V)},handleClose:k,handleOpen:y,handleBeforeShowTooltip:N,handleShowTooltip:R,handleBeforeHideTooltip:A,popperRef:l,contentRef:u,triggeringElementRef:s,referenceElementRef:r}}});function NK(e,t,n,o,a,s){const r=It("el-roving-focus-group"),l=It("el-scrollbar"),u=It("el-only-child"),c=It("el-tooltip"),d=It("el-button"),f=It("arrow-down"),v=It("el-icon"),g=It("el-button-group");return x(),B("div",{class:T([e.ns.b(),e.ns.is("disabled",e.disabled)])},[Y(c,{ref:"popperRef",role:e.role,effect:e.effect,"fallback-placements":["bottom","top"],"popper-options":e.popperOptions,"gpu-acceleration":!1,placement:e.placement,"popper-class":[e.ns.e("popper"),e.popperClass],"popper-style":e.popperStyle,trigger:e.trigger,"trigger-keys":e.triggerKeys,"trigger-target-el":e.contentRef,"show-arrow":e.showArrow,"show-after":e.trigger==="hover"?e.showTimeout:0,"hide-after":e.trigger==="hover"?e.hideTimeout:0,"virtual-ref":e.virtualRef??e.triggeringElementRef,"virtual-triggering":e.virtualTriggering||e.splitButton,disabled:e.disabled,transition:`${e.ns.namespace.value}-zoom-in-top`,teleported:e.teleported,"append-to":e.appendTo,pure:"","focus-on-target":"",persistent:e.persistent,onBeforeShow:e.handleBeforeShowTooltip,onShow:e.handleShowTooltip,onBeforeHide:e.handleBeforeHideTooltip},uo({content:J(()=>[Y(l,{ref:"scrollbar","wrap-style":e.wrapStyle,tag:"div","view-class":e.ns.e("list")},{default:J(()=>[Y(r,{loop:e.loop,"current-tab-id":e.currentTabId,orientation:"horizontal",onCurrentTabIdChange:e.handleCurrentTabIdChange},{default:J(()=>[ee(e.$slots,"dropdown")]),_:3},8,["loop","current-tab-id","onCurrentTabIdChange"])]),_:3},8,["wrap-style","view-class"])]),_:2},[e.splitButton?void 0:{name:"default",fn:J(()=>[Y(u,{id:e.triggerId,ref:"triggeringElementRef",role:"button",tabindex:e.tabindex},{default:J(()=>[ee(e.$slots,"default")]),_:3},8,["id","tabindex"])]),key:"0"}]),1032,["role","effect","popper-options","placement","popper-class","popper-style","trigger","trigger-keys","trigger-target-el","show-arrow","show-after","hide-after","virtual-ref","virtual-triggering","disabled","transition","teleported","append-to","persistent","onBeforeShow","onShow","onBeforeHide"]),e.splitButton?(x(),ae(g,{key:0},{default:J(()=>[Y(d,dt({ref:"referenceElementRef"},e.buttonProps,{size:e.dropdownSize,type:e.type,disabled:e.disabled,tabindex:e.tabindex,onClick:e.handlerMainButtonClick}),{default:J(()=>[ee(e.$slots,"default")]),_:3},16,["size","type","disabled","tabindex","onClick"]),Y(d,dt({id:e.triggerId,ref:"triggeringElementRef"},e.buttonProps,{role:"button",size:e.dropdownSize,type:e.type,class:e.ns.e("caret-button"),disabled:e.disabled,tabindex:e.tabindex,"aria-label":e.t("el.dropdown.toggleDropdown")}),{default:J(()=>[Y(v,{class:T(e.ns.e("icon"))},{default:J(()=>[Y(f)]),_:1},8,["class"])]),_:1},16,["id","size","type","class","disabled","tabindex","aria-label"])]),_:3})):te("v-if",!0)],2)}var IK=$n(RK,[["render",NK]]),PK=se({name:"DropdownItemImpl",components:{ElIcon:De},props:I2,emits:["pointermove","pointerleave","click","clickimpl"],setup(e,{emit:t}){const n=fe("dropdown"),{role:o}=_e(df,void 0),{collectionItemRef:a}=_e(fK,void 0),{rovingFocusGroupItemRef:s,tabIndex:r,handleFocus:l,handleKeydown:u,handleMousedown:c}=_e(A2,void 0),d=Rm(a,s),f=w(()=>o.value==="menu"?"menuitem":o.value==="navigation"?"link":"button"),v=Rn(g=>{const p=jt(g);if([we.enter,we.numpadEnter,we.space].includes(p))return g.preventDefault(),g.stopImmediatePropagation(),t("clickimpl",g),!0},u);return{ns:n,itemRef:d,dataset:{[M2]:""},role:f,tabIndex:r,handleFocus:l,handleKeydown:v,handleMousedown:c}}});const MK=["aria-disabled","tabindex","role"];function _K(e,t,n,o,a,s){const r=It("el-icon");return x(),B(Fe,null,[e.divided?(x(),B("li",{key:0,role:"separator",class:T(e.ns.bem("menu","item","divided"))},null,2)):te("v-if",!0),z("li",dt({ref:e.itemRef},{...e.dataset,...e.$attrs},{"aria-disabled":e.disabled,class:[e.ns.be("menu","item"),e.ns.is("disabled",e.disabled)],tabindex:e.tabIndex,role:e.role,onClick:t[0]||(t[0]=l=>e.$emit("clickimpl",l)),onFocus:t[1]||(t[1]=(...l)=>e.handleFocus&&e.handleFocus(...l)),onKeydown:t[2]||(t[2]=Xe((...l)=>e.handleKeydown&&e.handleKeydown(...l),["self"])),onMousedown:t[3]||(t[3]=(...l)=>e.handleMousedown&&e.handleMousedown(...l)),onPointermove:t[4]||(t[4]=l=>e.$emit("pointermove",l)),onPointerleave:t[5]||(t[5]=l=>e.$emit("pointerleave",l))}),[e.icon||e.$slots.icon?(x(),ae(r,{key:0},{default:J(()=>[ee(e.$slots,"icon",{},()=>[(x(),ae(it(e.icon)))])]),_:3})):te("v-if",!0),ee(e.$slots,"default")],16,MK)],64)}var AK=$n(PK,[["render",_K]]);const L2=()=>{const e=_e(P2,{});return{elDropdown:e,_elDropdownSize:w(()=>e?.dropdownSize)}};var LK=se({name:"ElDropdownItem",components:{ElRovingFocusItem:TK,ElDropdownItemImpl:AK},inheritAttrs:!1,props:I2,emits:["pointermove","pointerleave","click"],setup(e,{emit:t,attrs:n}){const{elDropdown:o}=L2(),a=ft(),{onItemEnter:s,onItemLeave:r}=_e(df,void 0),l=Rn(c=>(t("pointermove",c),c.defaultPrevented),Fb(c=>{if(e.disabled){r(c);return}const d=c.currentTarget;d===document.activeElement||d.contains(document.activeElement)||(s(c),c.defaultPrevented||d?.focus({preventScroll:!0}))})),u=Rn(c=>(t("pointerleave",c),c.defaultPrevented),Fb(r));return{handleClick:Rn(c=>{if(!e.disabled)return t("click",c),c.type!=="keydown"&&c.defaultPrevented},c=>{if(e.disabled){c.stopImmediatePropagation();return}o?.hideOnClick?.value&&o.handleClick?.(),o.commandHandler?.(e.command,a,c)}),handlePointerMove:l,handlePointerLeave:u,propsAndAttrs:w(()=>({...e,...n}))}}});function DK(e,t,n,o,a,s){const r=It("el-dropdown-item-impl"),l=It("el-roving-focus-item");return x(),ae(l,{focusable:!e.disabled},{default:J(()=>[Y(r,dt(e.propsAndAttrs,{onPointerleave:e.handlePointerLeave,onPointermove:e.handlePointerMove,onClickimpl:e.handleClick}),uo({default:J(()=>[ee(e.$slots,"default")]),_:2},[e.$slots.icon?{name:"icon",fn:J(()=>[ee(e.$slots,"icon")]),key:"0"}:void 0]),1040,["onPointerleave","onPointermove","onClickimpl"])]),_:3},8,["focusable"])}var D2=$n(LK,[["render",DK]]),BK=se({name:"ElDropdownMenu",props:tK,setup(e){const t=fe("dropdown"),{_elDropdownSize:n}=L2(),o=n.value,{contentRef:a,role:s,triggerId:r,isUsingKeyboard:l,handleClose:u}=_e(df,void 0),{rovingFocusGroupRef:c,rovingFocusGroupRootStyle:d,onBlur:f,onFocus:v,onKeydown:g,onMousedown:p}=_e(Nm,void 0),{collectionRef:h}=_e(_2,void 0),m=w(()=>[t.b("menu"),t.bm("menu",o?.value)]),b=Rm(a,c,h),k=Rn(S=>{e.onKeydown?.(S)},S=>{const{currentTarget:C,target:E}=S,$=jt(S);if(C.contains(E),we.tab===$)return u();g(S)});function y(S){l.value&&v(S)}return{size:o,rovingFocusGroupRootStyle:d,dropdownKls:m,role:s,triggerId:r,dropdownListWrapperRef:b,handleKeydown:k,onBlur:f,handleFocus:y,onMousedown:p}}});const FK=["role","aria-labelledby"];function VK(e,t,n,o,a,s){return x(),B("ul",{ref:e.dropdownListWrapperRef,class:T(e.dropdownKls),style:Ke(e.rovingFocusGroupRootStyle),tabindex:-1,role:e.role,"aria-labelledby":e.triggerId,onFocusin:t[0]||(t[0]=(...r)=>e.handleFocus&&e.handleFocus(...r)),onFocusout:t[1]||(t[1]=(...r)=>e.onBlur&&e.onBlur(...r)),onKeydown:t[2]||(t[2]=Xe((...r)=>e.handleKeydown&&e.handleKeydown(...r),["self"])),onMousedown:t[3]||(t[3]=Xe((...r)=>e.onMousedown&&e.onMousedown(...r),["self"]))},[ee(e.$slots,"default")],46,FK)}var B2=$n(BK,[["render",VK]]);const zK=rt(IK,{DropdownItem:D2,DropdownMenu:B2}),HK=on(D2),KK=on(B2),WK=Ce({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),jK={viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},UK=["id"],qK=["stop-color"],YK=["stop-color"],GK=["id"],XK=["stop-color"],JK=["stop-color"],ZK=["id"],QK={stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},eW={transform:"translate(-1268.000000, -535.000000)"},tW={transform:"translate(1268.000000, 535.000000)"},nW=["fill"],oW=["fill"],aW={transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},sW=["fill"],rW=["fill"],lW=["fill"],iW=["fill"],uW=["fill"],cW={transform:"translate(53.000000, 45.000000)"},dW=["fill","xlink:href"],fW=["fill","mask"],pW=["fill"];var hW=se({name:"ImgEmpty",__name:"img-empty",setup(e){const t=fe("empty"),n=zn();return(o,a)=>(x(),B("svg",jK,[z("defs",null,[z("linearGradient",{id:`linearGradient-1-${i(n)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,qK),z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,YK)],8,UK),z("linearGradient",{id:`linearGradient-2-${i(n)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,XK),z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,JK)],8,GK),z("rect",{id:`path-3-${i(n)}`,x:"0",y:"0",width:"17",height:"36"},null,8,ZK)]),z("g",QK,[z("g",eW,[z("g",tW,[z("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${i(t).cssVarBlockName("fill-color-3")})`},null,8,nW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,oW),z("g",aW,[z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,sW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,rW),z("rect",{fill:`url(#linearGradient-1-${i(n)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,lW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,iW)]),z("rect",{fill:`url(#linearGradient-2-${i(n)})`,x:"13",y:"45",width:"40",height:"36"},null,8,uW),z("g",cW,[z("use",{fill:`var(${i(t).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${i(n)}`},null,8,dW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${i(n)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,fW)]),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,pW)])])])]))}}),vW=hW;const mW=["src"],gW={key:1};var bW=se({name:"ElEmpty",__name:"empty",props:WK,setup(e){const t=e,{t:n}=Ct(),o=fe("empty"),a=w(()=>t.description||n("el.table.emptyText")),s=w(()=>({width:ln(t.imageSize)}));return(r,l)=>(x(),B("div",{class:T(i(o).b())},[z("div",{class:T(i(o).e("image")),style:Ke(s.value)},[e.image?(x(),B("img",{key:0,src:e.image,ondragstart:"return false"},null,8,mW)):ee(r.$slots,"image",{key:1},()=>[Y(vW)])],6),z("div",{class:T(i(o).e("description"))},[r.$slots.description?ee(r.$slots,"description",{key:0}):(x(),B("p",gW,Se(a.value),1))],2),r.$slots.default?(x(),B("div",{key:0,class:T(i(o).e("bottom"))},[ee(r.$slots,"default")],2)):te("v-if",!0)],2))}}),yW=bW;const F2=rt(yW),wW=Ce({hideOnClickModal:Boolean,src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:Boolean,scrollContainer:{type:G([String,Object])},previewSrcList:{type:G(Array),default:()=>rn([])},previewTeleported:Boolean,zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},scale:{type:Number,default:1},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:G(String)}}),SW={load:e=>e instanceof Event,error:e=>e instanceof Event,switch:e=>He(e),close:()=>!0,show:()=>!0},CW=Ce({urlList:{type:G(Array),default:()=>rn([])},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},hideOnClickModal:Boolean,teleported:Boolean,closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},scale:{type:Number,default:1},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:G(String)}}),kW={close:()=>!0,error:e=>e instanceof Event,switch:e=>He(e),rotate:e=>He(e)},EW=["src","crossorigin"];var xW=se({name:"ElImageViewer",__name:"image-viewer",props:CW,emits:kW,setup(e,{expose:t,emit:n}){const o={CONTAIN:{name:"contain",icon:xa(h3)},ORIGINAL:{name:"original",icon:xa(_3)}},a=e,s=n;let r;const{t:l}=Ct(),u=fe("image-viewer"),{nextZIndex:c}=du(),d=M(),f=M(),v=sT(),g=w(()=>{const{scale:ie,minScale:oe,maxScale:ne}=a;return WS(ie,oe,ne)}),p=M(!0),h=M(!1),m=M(!1),b=M(a.initialIndex),k=Xt(o.CONTAIN),y=M({scale:g.value,deg:0,offsetX:0,offsetY:0,enableTransition:!1}),S=M(a.zIndex??c());Gd(m,{ns:u});const C=w(()=>{const{urlList:ie}=a;return ie.length<=1}),E=w(()=>b.value===0),$=w(()=>b.value===a.urlList.length-1),O=w(()=>a.urlList[b.value]),N=w(()=>[u.e("btn"),u.e("prev"),u.is("disabled",!a.infinite&&E.value)]),R=w(()=>[u.e("btn"),u.e("next"),u.is("disabled",!a.infinite&&$.value)]),A=w(()=>{const{scale:ie,deg:oe,offsetX:ne,offsetY:K,enableTransition:Z}=y.value;let re=ne/ie,ce=K/ie;const ve=oe*Math.PI/180,ke=Math.cos(ve),Ne=Math.sin(ve);re=re*ke+ce*Ne,ce=ce*ke-ne/ie*Ne;const Ie={transform:`scale(${ie}) rotate(${oe}deg) translate(${re}px, ${ce}px)`,transition:Z?"transform .3s":""};return k.value.name===o.CONTAIN.name&&(Ie.maxWidth=Ie.maxHeight="100%"),Ie}),_=w(()=>`${b.value+1} / ${a.urlList.length}`);function V(){U(),r?.(),m.value=!1,s("close")}function H(){const ie=Rs(ne=>{switch(jt(ne)){case we.esc:a.closeOnPressEscape&&V();break;case we.space:F();break;case we.left:j();break;case we.up:Q("zoomIn");break;case we.right:X();break;case we.down:Q("zoomOut");break}}),oe=Rs(ne=>{Q((ne.deltaY||ne.deltaX)<0?"zoomIn":"zoomOut",{zoomRate:a.zoomRate,enableTransition:!1})});v.run(()=>{Ft(document,"keydown",ie),Ft(d,"wheel",oe)})}function U(){v.stop()}function W(){p.value=!1}function P(ie){h.value=!0,p.value=!1,s("error",ie),ie.target.alt=l("el.image.error")}function I(ie){if(p.value||ie.button!==0||!d.value)return;y.value.enableTransition=!1;const{offsetX:oe,offsetY:ne}=y.value,K=ie.pageX,Z=ie.pageY,re=Rs(ke=>{y.value={...y.value,offsetX:oe+ke.pageX-K,offsetY:ne+ke.pageY-Z}}),ce=Ft(document,"mousemove",re),ve=Ft(document,"mouseup",()=>{ce(),ve()});ie.preventDefault()}function L(ie){if(p.value||!d.value||ie.touches.length!==1)return;y.value.enableTransition=!1;const{offsetX:oe,offsetY:ne}=y.value,{pageX:K,pageY:Z}=ie.touches[0],re=Rs(ke=>{const Ne=ke.touches[0];y.value={...y.value,offsetX:oe+Ne.pageX-K,offsetY:ne+Ne.pageY-Z}}),ce=Ft(document,"touchmove",re),ve=Ft(document,"touchend",()=>{ce(),ve()});ie.preventDefault()}function D(){y.value={scale:g.value,deg:0,offsetX:0,offsetY:0,enableTransition:!1}}function F(){if(p.value||h.value)return;const ie=Oi(o),oe=Object.values(o),ne=k.value.name;k.value=o[ie[(oe.findIndex(K=>K.name===ne)+1)%ie.length]],D()}function q(ie){h.value=!1;const oe=a.urlList.length;b.value=(ie+oe)%oe}function j(){E.value&&!a.infinite||q(b.value-1)}function X(){$.value&&!a.infinite||q(b.value+1)}function Q(ie,oe={}){if(p.value||h.value)return;const{minScale:ne,maxScale:K}=a,{zoomRate:Z,rotateDeg:re,enableTransition:ce}={zoomRate:a.zoomRate,rotateDeg:90,enableTransition:!0,...oe};switch(ie){case"zoomOut":y.value.scale>ne&&(y.value.scale=Number.parseFloat((y.value.scale/Z).toFixed(3)));break;case"zoomIn":y.value.scale0)return ie.preventDefault(),!1}}return le(()=>g.value,ie=>{y.value.scale=ie}),le(O,()=>{Re(()=>{f.value?.complete||(p.value=!0)})}),le(b,ie=>{D(),s("switch",ie)}),ht(()=>{m.value=!0,H(),r=Ft("wheel",ge,{passive:!1})}),t({setActiveItem:q}),(ie,oe)=>(x(),ae(i(_l),{to:"body",disabled:!e.teleported},{default:J(()=>[Y(Vn,{name:"viewer-fade",appear:""},{default:J(()=>[z("div",{ref_key:"wrapper",ref:d,tabindex:-1,class:T(i(u).e("wrapper")),style:Ke({zIndex:S.value})},[Y(i(Al),{loop:"",trapped:"","focus-trap-el":d.value,"focus-start-el":"container",onFocusoutPrevented:he,onReleaseRequested:ue},{default:J(()=>[z("div",{class:T(i(u).e("mask")),onClick:oe[0]||(oe[0]=Xe(ne=>e.hideOnClickModal&&V(),["self"]))},null,2),te(" CLOSE "),z("span",{class:T([i(u).e("btn"),i(u).e("close")]),onClick:V},[Y(i(De),null,{default:J(()=>[Y(i(Ko))]),_:1})],2),te(" ARROW "),C.value?te("v-if",!0):(x(),B(Fe,{key:0},[z("span",{class:T(N.value),onClick:j},[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})],2),z("span",{class:T(R.value),onClick:X},[Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})],2)],64)),ie.$slots.progress||e.showProgress?(x(),B("div",{key:1,class:T([i(u).e("btn"),i(u).e("progress")])},[ee(ie.$slots,"progress",{activeIndex:b.value,total:e.urlList.length},()=>[wt(Se(_.value),1)])],2)):te("v-if",!0),te(" ACTIONS "),z("div",{class:T([i(u).e("btn"),i(u).e("actions")])},[z("div",{class:T(i(u).e("actions__inner"))},[ee(ie.$slots,"toolbar",{actions:Q,prev:j,next:X,reset:F,activeIndex:b.value,setActiveItem:q},()=>[Y(i(De),{onClick:oe[1]||(oe[1]=ne=>Q("zoomOut"))},{default:J(()=>[Y(i(X3))]),_:1}),Y(i(De),{onClick:oe[2]||(oe[2]=ne=>Q("zoomIn"))},{default:J(()=>[Y(i(KC))]),_:1}),z("i",{class:T(i(u).e("actions__divider"))},null,2),Y(i(De),{onClick:F},{default:J(()=>[(x(),ae(it(k.value.icon)))]),_:1}),z("i",{class:T(i(u).e("actions__divider"))},null,2),Y(i(De),{onClick:oe[3]||(oe[3]=ne=>Q("anticlockwise"))},{default:J(()=>[Y(i(N3))]),_:1}),Y(i(De),{onClick:oe[4]||(oe[4]=ne=>Q("clockwise"))},{default:J(()=>[Y(i(P3))]),_:1})])],2)],2),te(" CANVAS "),z("div",{class:T(i(u).e("canvas"))},[h.value&&ie.$slots["viewer-error"]?ee(ie.$slots,"viewer-error",{key:0,activeIndex:b.value,src:O.value}):(x(),B("img",{ref_key:"imgRef",ref:f,key:O.value,src:O.value,style:Ke(A.value),class:T(i(u).e("img")),crossorigin:e.crossorigin,onLoad:W,onError:P,onMousedown:I,onTouchstart:L},null,46,EW))],2),ee(ie.$slots,"default")]),_:3},8,["focus-trap-el"])],6)]),_:3})]),_:3},8,["disabled"]))}}),TW=xW;const V2=rt(TW),$W=["src","loading","crossorigin"],OW={key:0};var RW=se({name:"ElImage",inheritAttrs:!1,__name:"image",props:wW,emits:SW,setup(e,{expose:t,emit:n}){const o=e,a=n,{t:s}=Ct(),r=fe("image"),l=fs(),u=w(()=>fl(Object.entries(l).filter(([P])=>/^(data-|on[A-Z])/i.test(P)||["id","style"].includes(P)))),c=Ud({excludeListeners:!0,excludeKeys:w(()=>Object.keys(u.value))}),d=M(),f=M(!1),v=M(!0),g=M(!1),p=M(),h=M(),m=Mt&&"loading"in HTMLImageElement.prototype;let b;const k=w(()=>[r.e("inner"),S.value&&r.e("preview"),v.value&&r.is("loading")]),y=w(()=>{const{fit:P}=o;return Mt&&P?{objectFit:P}:{}}),S=w(()=>{const{previewSrcList:P}=o;return ye(P)&&P.length>0}),C=w(()=>{const{previewSrcList:P,initialIndex:I}=o;let L=I;return I>P.length-1&&(L=0),L}),E=w(()=>o.loading==="eager"?!1:!m&&o.loading==="lazy"||o.lazy),$=()=>{Mt&&(v.value=!0,f.value=!1,d.value=o.src)};function O(P){v.value=!1,f.value=!1,a("load",P)}function N(P){v.value=!1,f.value=!0,a("error",P)}function R(P){P&&($(),V())}const A=US(R,200,!0);async function _(){if(!Mt)return;await Re();const{scrollContainer:P}=o;if(vo(P))h.value=P;else if(Le(P)&&P!=="")h.value=document.querySelector(P)??void 0;else if(p.value){const L=Vv(p.value);h.value=au(L)?void 0:L}const{stop:I}=u_(p,([L])=>{A(L.isIntersecting)},{root:h});b=I}function V(){!Mt||!A||(b?.(),h.value=void 0,b=void 0)}function H(){S.value&&(g.value=!0,a("show"))}function U(){g.value=!1,a("close")}function W(P){a("switch",P)}return le(()=>o.src,()=>{E.value?(v.value=!0,f.value=!1,V(),_()):$()}),ht(()=>{E.value?_():$()}),t({showPreview:H}),(P,I)=>(x(),B("div",dt({ref_key:"container",ref:p},u.value,{class:[i(r).b(),P.$attrs.class]}),[f.value?ee(P.$slots,"error",{key:0},()=>[z("div",{class:T(i(r).e("error"))},Se(i(s)("el.image.error")),3)]):(x(),B(Fe,{key:1},[d.value!==void 0?(x(),B("img",dt({key:0},i(c),{src:d.value,loading:e.loading,style:y.value,class:k.value,crossorigin:e.crossorigin,onClick:H,onLoad:O,onError:N}),null,16,$W)):te("v-if",!0),v.value?(x(),B("div",{key:1,class:T(i(r).e("wrapper"))},[ee(P.$slots,"placeholder",{},()=>[z("div",{class:T(i(r).e("placeholder"))},null,2)])],2)):te("v-if",!0)],64)),S.value?(x(),B(Fe,{key:2},[g.value?(x(),ae(i(V2),{key:0,"z-index":e.zIndex,"initial-index":C.value,infinite:e.infinite,"zoom-rate":e.zoomRate,"min-scale":e.minScale,"max-scale":e.maxScale,"show-progress":e.showProgress,"url-list":e.previewSrcList,scale:e.scale,crossorigin:e.crossorigin,"hide-on-click-modal":e.hideOnClickModal,teleported:e.previewTeleported,"close-on-press-escape":e.closeOnPressEscape,onClose:U,onSwitch:W},uo({toolbar:J(L=>[ee(P.$slots,"toolbar",Ja(Za(L)))]),default:J(()=>[P.$slots.viewer?(x(),B("div",OW,[ee(P.$slots,"viewer")])):te("v-if",!0)]),_:2},[P.$slots.progress?{name:"progress",fn:J(L=>[ee(P.$slots,"progress",Ja(Za(L)))]),key:"0"}:void 0,P.$slots["viewer-error"]?{name:"viewer-error",fn:J(L=>[ee(P.$slots,"viewer-error",Ja(Za(L)))]),key:"1"}:void 0]),1032,["z-index","initial-index","infinite","zoom-rate","min-scale","max-scale","show-progress","url-list","scale","crossorigin","hide-on-click-modal","teleported","close-on-press-escape"])):te("v-if",!0)],64)):te("v-if",!0)],16))}}),NW=RW;const IW=rt(NW),PW=Ce({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.MAX_SAFE_INTEGER},min:{type:Number,default:Number.MIN_SAFE_INTEGER},modelValue:{type:[Number,null]},readonly:Boolean,disabled:{type:Boolean,default:void 0},size:Tn,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:G([String,Number,null]),validator:e=>e===null||He(e)||["min","max"].includes(e),default:null},name:String,placeholder:String,precision:{type:Number,validator:e=>e>=0&&e===Number.parseInt(`${e}`,10)},validateEvent:{type:Boolean,default:!0},...oo(["ariaLabel"]),inputmode:{type:G(String),default:void 0},align:{type:G(String),default:"center"},disabledScientific:Boolean}),MW={[bt]:(e,t)=>t!==e,blur:e=>e instanceof FocusEvent,focus:e=>e instanceof FocusEvent,[Sn]:e=>He(e)||bn(e),[ot]:e=>He(e)||bn(e)},_W=["aria-label"],AW=["aria-label"];var LW=se({name:"ElInputNumber",__name:"input-number",props:PW,emits:MW,setup(e,{expose:t,emit:n}){const o=e,a=n,{t:s}=Ct(),r=fe("input-number"),l=M(),u=At({currentValue:o.modelValue,userInput:null}),{formItem:c}=Dn(),d=w(()=>He(o.modelValue)&&o.modelValue<=o.min),f=w(()=>He(o.modelValue)&&o.modelValue>=o.max),v=w(()=>{const P=k(o.step);return Tt(o.precision)?Math.max(k(o.modelValue),P):(P>o.precision&&pt("InputNumber","precision should not be less than the decimal places of step"),o.precision)}),g=w(()=>o.controls&&o.controlsPosition==="right"),p=Cn(),h=un(),m=w(()=>{if(u.userInput!==null)return u.userInput;let P=u.currentValue;if(bn(P))return"";if(He(P)){if(Number.isNaN(P))return"";Tt(o.precision)||(P=P.toFixed(o.precision))}return P}),b=(P,I)=>{if(Tt(I)&&(I=v.value),I===0)return Math.round(P);let L=String(P);const D=L.indexOf(".");if(D===-1||!L.replace(".","").split("")[D+I])return P;const F=L.length;return L.charAt(F-1)==="5"&&(L=`${L.slice(0,Math.max(0,F-1))}6`),Number.parseFloat(Number(L).toFixed(I))},k=P=>{if(bn(P))return 0;const I=P.toString(),L=I.indexOf(".");let D=0;return L!==-1&&(D=I.length-L-1),D},y=(P,I=1)=>He(P)?P>=Number.MAX_SAFE_INTEGER&&I===1?(pt("InputNumber","The value has reached the maximum safe integer limit."),P):P<=Number.MIN_SAFE_INTEGER&&I===-1?(pt("InputNumber","The value has reached the minimum safe integer limit."),P):b(P+o.step*I):u.currentValue,S=P=>{const I=jt(P),L=aC(P);if(o.disabledScientific&&["e","E"].includes(L)){P.preventDefault();return}switch(I){case we.up:P.preventDefault(),C();break;case we.down:P.preventDefault(),E();break}},C=()=>{o.readonly||h.value||f.value||(O(y(Number(m.value)||0)),a(Sn,u.currentValue),U())},E=()=>{o.readonly||h.value||d.value||(O(y(Number(m.value)||0,-1)),a(Sn,u.currentValue),U())},$=(P,I)=>{const{max:L,min:D,step:F,precision:q,stepStrictly:j,valueOnClear:X}=o;LL||QL?L:D,I&&a(ot,Q)),Q},O=(P,I=!0)=>{const L=u.currentValue,D=$(P);if(!I){a(ot,D);return}u.userInput=null,!(L===D&&P)&&(a(ot,D),L!==D&&a(bt,D,L),o.validateEvent&&c?.validate?.("change").catch(F=>pt(F)),u.currentValue=D)},N=P=>{u.userInput=P;const I=P===""?null:Number(P);a(Sn,I),O(I,!1)},R=P=>{const I=P!==""?Number(P):"";(He(I)&&!Number.isNaN(I)||P==="")&&O(I),U(),u.userInput=null},A=()=>{l.value?.focus?.()},_=()=>{l.value?.blur?.()},V=P=>{a("focus",P)},H=P=>{u.userInput=null,u.currentValue===null&&l.value?.input&&(l.value.input.value=""),a("blur",P),o.validateEvent&&c?.validate?.("blur").catch(I=>pt(I))},U=()=>{u.currentValue!==o.modelValue&&(u.currentValue=o.modelValue)},W=P=>{document.activeElement===P.target&&P.preventDefault()};return le(()=>o.modelValue,(P,I)=>{const L=$(P,!0);u.userInput===null&&L!==I&&(u.currentValue=L)},{immediate:!0}),le(()=>o.precision,()=>{u.currentValue=$(o.modelValue)}),ht(()=>{const{min:P,max:I,modelValue:L}=o,D=l.value?.input;if(D.setAttribute("role","spinbutton"),Number.isFinite(I)?D.setAttribute("aria-valuemax",String(I)):D.removeAttribute("aria-valuemax"),Number.isFinite(P)?D.setAttribute("aria-valuemin",String(P)):D.removeAttribute("aria-valuemin"),D.setAttribute("aria-valuenow",u.currentValue||u.currentValue===0?String(u.currentValue):""),D.setAttribute("aria-disabled",String(h.value)),!He(L)&&L!=null){let F=Number(L);Number.isNaN(F)&&(F=null),a(ot,F)}D.addEventListener("wheel",W,{passive:!1})}),la(()=>{l.value?.input?.setAttribute("aria-valuenow",`${u.currentValue??""}`)}),t({focus:A,blur:_}),(P,I)=>(x(),B("div",{class:T([i(r).b(),i(r).m(i(p)),i(r).is("disabled",i(h)),i(r).is("without-controls",!e.controls),i(r).is("controls-right",g.value),i(r).is(e.align,!!e.align)]),onDragstart:I[0]||(I[0]=Xe(()=>{},["prevent"]))},[e.controls?ut((x(),B("span",{key:0,role:"button","aria-label":i(s)("el.inputNumber.decrease"),class:T([i(r).e("decrease"),i(r).is("disabled",d.value)]),onKeydown:an(E,["enter"])},[ee(P.$slots,"decrease-icon",{},()=>[Y(i(De),null,{default:J(()=>[g.value?(x(),ae(i(Fa),{key:0})):(x(),ae(i(w3),{key:1}))]),_:1})])],42,_W)),[[i(ad),E]]):te("v-if",!0),e.controls?ut((x(),B("span",{key:1,role:"button","aria-label":i(s)("el.inputNumber.increase"),class:T([i(r).e("increase"),i(r).is("disabled",f.value)]),onKeydown:an(C,["enter"])},[ee(P.$slots,"increase-icon",{},()=>[Y(i(De),null,{default:J(()=>[g.value?(x(),ae(i(nf),{key:0})):(x(),ae(i(zC),{key:1}))]),_:1})])],42,AW)),[[i(ad),C]]):te("v-if",!0),Y(i(eo),{id:e.id,ref_key:"input",ref:l,type:"number",step:e.step,"model-value":m.value,placeholder:e.placeholder,readonly:e.readonly,disabled:i(h),size:i(p),max:e.max,min:e.min,name:e.name,"aria-label":e.ariaLabel,"validate-event":!1,inputmode:e.inputmode,onKeydown:S,onBlur:H,onFocus:V,onInput:N,onChange:R},uo({_:2},[P.$slots.prefix?{name:"prefix",fn:J(()=>[ee(P.$slots,"prefix")]),key:"0"}:void 0,P.$slots.suffix?{name:"suffix",fn:J(()=>[ee(P.$slots,"suffix")]),key:"1"}:void 0]),1032,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","aria-label","inputmode"])],34))}}),DW=LW;const z2=rt(DW),BW=Ce({modelValue:{type:G(Array)},max:Number,tagType:{...us.type,default:"info"},tagEffect:us.effect,effect:{type:G(String),default:"light"},trigger:{type:G(String),default:we.enter},draggable:Boolean,delimiter:{type:[String,RegExp],default:""},size:Tn,clearable:Boolean,clearIcon:{type:Kt,default:Va},disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},readonly:Boolean,autofocus:Boolean,id:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},placeholder:String,autocomplete:{type:G(String),default:"off"},saveOnBlur:{type:Boolean,default:!0},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},ariaLabel:String}),FW={[ot]:e=>ye(e)||Tt(e),[bt]:e=>ye(e)||Tt(e),[Sn]:e=>Le(e),"add-tag":e=>Le(e)||ye(e),"remove-tag":(e,t)=>Le(e)&&He(t),"drag-tag":(e,t,n)=>He(e)&&He(t)&&Le(n),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0};function VW({wrapperRef:e,handleDragged:t,afterDragged:n}){const o=fe("input-tag"),a=Xt(),s=M(!1);let r,l,u,c;function d(p){return`.${o.e("inner")} .${o.namespace.value}-tag:nth-child(${p+1})`}function f(p,h){r=h,l=e.value.querySelector(d(h)),l&&(l.style.opacity="0.5"),p.dataTransfer.effectAllowed="move"}function v(p,h){if(u=h,p.preventDefault(),p.dataTransfer.dropEffect="move",Tt(r)||r===h){s.value=!1;return}const m=e.value.querySelector(d(h)).getBoundingClientRect(),b=r+1!==h,k=r-1!==h,y=p.clientX-m.left,S=b?k?.5:1:-1,C=k?b?.5:0:1;y<=m.width*S?c="before":y>m.width*C?c="after":c=void 0;const E=e.value.querySelector(`.${o.e("inner")}`),$=E.getBoundingClientRect(),O=Number.parseFloat(Ya(E,"gap"))/2,N=m.top-$.top;let R=-9999;if(c==="before")R=Math.max(m.left-$.left-O,Math.floor(-O/2));else if(c==="after"){const A=m.right-$.left;R=A+($.width===A?Math.floor(O/2):O)}QS(a.value,{top:`${N}px`,left:`${R}px`}),s.value=!!c}function g(p){p.preventDefault(),l&&(l.style.opacity=""),c&&!Tt(r)&&!Tt(u)&&r!==u&&t(r,u,c),s.value=!1,r=void 0,l=null,u=void 0,c=void 0,n?.()}return{dropIndicatorRef:a,showDropIndicator:s,handleDragStart:f,handleDragOver:v,handleDragEnd:g}}function zW(){const e=M(!1);return{hovering:e,handleMouseEnter:()=>{e.value=!0},handleMouseLeave:()=>{e.value=!1}}}function HW({props:e,emit:t,formItem:n}){const o=un(),a=Cn(),s=Xt(),r=M(),l=M(),u=w(()=>["small"].includes(a.value)?"small":"default"),c=w(()=>e.modelValue?.length?void 0:e.placeholder),d=w(()=>!(e.readonly||o.value)),f=w(()=>Tt(e.max)?!1:(e.modelValue?.length??0)>=e.max),v=w(()=>e.collapseTags?e.modelValue?.slice(0,e.maxCollapseTags):e.modelValue),g=w(()=>e.collapseTags?e.modelValue?.slice(e.maxCollapseTags):[]),p=W=>{const P=[...e.modelValue??[],...Nn(W)];t(ot,P),t(bt,P),t("add-tag",W),r.value=void 0},h=W=>{const P=W.split(e.delimiter),I=P.length>1?P.map(L=>L.trim()).filter(Boolean):[];if(e.max){const L=e.max-(e.modelValue?.length??0);I.splice(L)}return I.length===1?I[0]:I},m=W=>{const P=W.clipboardData?.getData("text");if(e.readonly||f.value||!e.delimiter||!P)return;const{selectionStart:I=0,selectionEnd:L=0,value:D}=W.target,F=D.slice(0,I)+P+D.slice(L),q=h(F);q.length&&(p(q),t(Sn,F),W.preventDefault())},b=W=>{if(f.value){r.value=void 0;return}if(!_.value){if(e.delimiter&&r.value){const P=h(r.value);P.length&&p(P)}t(Sn,W.target.value)}},k=W=>{if(!_.value)switch(jt(W)){case e.trigger:W.preventDefault(),W.stopPropagation(),S();break;case we.numpadEnter:e.trigger===we.enter&&(W.preventDefault(),W.stopPropagation(),S());break;case we.backspace:!r.value&&e.modelValue?.length&&(W.preventDefault(),W.stopPropagation(),C(e.modelValue.length-1));break}},y=W=>{_.value||!JS()||jt(W)===we.space&&e.trigger===we.space&&(W.preventDefault(),W.stopPropagation(),S())},S=()=>{const W=r.value?.trim();!W||f.value||p(W)},C=W=>{const P=(e.modelValue??[]).slice(),[I]=P.splice(W,1);t(ot,P),t(bt,P),t("remove-tag",I,W)},E=()=>{r.value=void 0,t(ot,void 0),t(bt,void 0),t("clear")},$=(W,P,I)=>{const L=(e.modelValue??[]).slice(),[D]=L.splice(W,1),F=P>W&&I==="before"?-1:P{s.value?.focus()},N=()=>{s.value?.blur()},{wrapperRef:R,isFocused:A}=ms(s,{disabled:o,beforeBlur(W){return l.value?.isFocusInsideContent(W)},afterBlur(){e.saveOnBlur?S():r.value=void 0,e.validateEvent&&n?.validate?.("blur").catch(W=>pt(W))}}),{isComposing:_,handleCompositionStart:V,handleCompositionUpdate:H,handleCompositionEnd:U}=vu({afterComposition:b});return le(()=>e.modelValue,()=>{e.validateEvent&&n?.validate?.(bt).catch(W=>pt(W))}),{inputRef:s,wrapperRef:R,tagTooltipRef:l,isFocused:A,isComposing:_,inputValue:r,size:a,tagSize:u,placeholder:c,closable:d,disabled:o,inputLimit:f,showTagList:v,collapseTagList:g,handleDragged:$,handlePaste:m,handleInput:b,handleKeydown:k,handleKeyup:y,handleAddTag:S,handleRemoveTag:C,handleClear:E,handleCompositionStart:V,handleCompositionUpdate:H,handleCompositionEnd:U,focus:O,blur:N}}function KW({props:e,isFocused:t,hovering:n,disabled:o,inputValue:a,size:s,validateState:r,validateIcon:l,needStatusIcon:u}){const c=fs(),d=vn(),f=fe("input-tag"),v=fe("input"),g=M(),p=M(),h=w(()=>[f.b(),f.is("focused",t.value),f.is("hovering",n.value),f.is("disabled",o.value),f.m(s.value),f.e("wrapper"),c.class]),m=w(()=>[c.style]),b=w(()=>[f.e("inner"),f.is("draggable",e.draggable),f.is("left-space",!e.modelValue?.length&&!d.prefix),f.is("right-space",!e.modelValue?.length&&!y.value)]),k=w(()=>e.clearable&&!o.value&&!e.readonly&&(e.modelValue?.length||a.value)&&(t.value||n.value)),y=w(()=>d.suffix||k.value||r.value&&l.value&&u.value),S=At({innerWidth:0,collapseItemWidth:0}),C=()=>{if(!p.value)return 0;const N=window.getComputedStyle(p.value);return Number.parseFloat(N.gap||"6px")},E=()=>{S.innerWidth=Number.parseFloat(window.getComputedStyle(p.value).width)},$=()=>{S.collapseItemWidth=g.value.getBoundingClientRect().width},O=w(()=>{if(!e.collapseTags)return{};const N=C(),R=N+Dd,A=g.value&&e.maxCollapseTags===1?S.innerWidth-S.collapseItemWidth-N-R:S.innerWidth-R;return{maxWidth:`${Math.max(A,0)}px`}});return en(p,E),en(g,$),{ns:f,nsInput:v,containerKls:h,containerStyle:m,innerKls:b,showClear:k,showSuffix:y,tagStyle:O,collapseItemRef:g,innerRef:p}}const WW=["id","minlength","maxlength","disabled","readonly","autocomplete","tabindex","placeholder","autofocus","ariaLabel"],jW=["textContent"];var UW=se({name:"ElInputTag",inheritAttrs:!1,__name:"input-tag",props:BW,emits:FW,setup(e,{expose:t,emit:n}){const o=e,a=n,s=Ud(),r=vn(),{form:l,formItem:u}=Dn(),{inputId:c}=Po(o,{formItemContext:u}),d=w(()=>l?.statusIcon??!1),f=w(()=>u?.validateState||""),v=w(()=>f.value&&af[f.value]),{inputRef:g,wrapperRef:p,tagTooltipRef:h,isFocused:m,inputValue:b,size:k,tagSize:y,placeholder:S,closable:C,disabled:E,showTagList:$,collapseTagList:O,handleDragged:N,handlePaste:R,handleInput:A,handleKeydown:_,handleKeyup:V,handleRemoveTag:H,handleClear:U,handleCompositionStart:W,handleCompositionUpdate:P,handleCompositionEnd:I,focus:L,blur:D}=HW({props:o,emit:a,formItem:u}),{hovering:F,handleMouseEnter:q,handleMouseLeave:j}=zW(),{calculatorRef:X,inputStyle:Q}=Dv(),{dropIndicatorRef:he,showDropIndicator:ue,handleDragStart:ge,handleDragOver:ie,handleDragEnd:oe}=VW({wrapperRef:p,handleDragged:N,afterDragged:L}),{ns:ne,nsInput:K,containerKls:Z,containerStyle:re,innerKls:ce,showClear:ve,showSuffix:ke,tagStyle:Ne,collapseItemRef:Ie,innerRef:$e}=KW({props:o,hovering:F,isFocused:m,inputValue:b,disabled:E,size:k,validateState:f,validateIcon:v,needStatusIcon:d});return t({focus:L,blur:D}),(pe,Ee)=>(x(),B("div",{ref_key:"wrapperRef",ref:p,class:T(i(Z)),style:Ke(i(re)),onMouseenter:Ee[9]||(Ee[9]=(...me)=>i(q)&&i(q)(...me)),onMouseleave:Ee[10]||(Ee[10]=(...me)=>i(j)&&i(j)(...me))},[i(r).prefix?(x(),B("div",{key:0,class:T(i(ne).e("prefix"))},[ee(pe.$slots,"prefix")],2)):te("v-if",!0),z("div",{ref_key:"innerRef",ref:$e,class:T(i(ce))},[(x(!0),B(Fe,null,yt(i($),(me,Me)=>(x(),ae(i(ts),{key:Me,size:i(y),closable:i(C),type:e.tagType,effect:e.tagEffect,draggable:i(C)&&e.draggable,style:Ke(i(Ne)),"disable-transitions":"",onClose:We=>i(H)(Me),onDragstart:We=>i(ge)(We,Me),onDragover:We=>i(ie)(We,Me),onDragend:i(oe),onDrop:Ee[0]||(Ee[0]=Xe(()=>{},["stop"]))},{default:J(()=>[ee(pe.$slots,"tag",{value:me,index:Me},()=>[wt(Se(me),1)])]),_:2},1032,["size","closable","type","effect","draggable","style","onClose","onDragstart","onDragover","onDragend"]))),128)),e.collapseTags&&e.modelValue&&e.modelValue.length>e.maxCollapseTags?(x(),ae(i(Ln),{key:0,ref_key:"tagTooltipRef",ref:h,disabled:!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom"},{default:J(()=>[z("div",{ref_key:"collapseItemRef",ref:Ie,class:T(i(ne).e("collapse-tag"))},[Y(i(ts),{closable:!1,size:i(y),type:e.tagType,effect:e.tagEffect,"disable-transitions":""},{default:J(()=>[wt(" + "+Se(e.modelValue.length-e.maxCollapseTags),1)]),_:1},8,["size","type","effect"])],2)]),content:J(()=>[z("div",{class:T(i(ne).e("input-tag-list"))},[(x(!0),B(Fe,null,yt(i(O),(me,Me)=>(x(),ae(i(ts),{key:Me,size:i(y),closable:i(C),type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:We=>i(H)(Me+e.maxCollapseTags)},{default:J(()=>[ee(pe.$slots,"tag",{value:me,index:Me+e.maxCollapseTags},()=>[wt(Se(me),1)])]),_:2},1032,["size","closable","type","effect","onClose"]))),128))],2)]),_:3},8,["disabled","effect"])):te("v-if",!0),z("div",{class:T(i(ne).e("input-wrapper"))},[ut(z("input",dt({id:i(c),ref_key:"inputRef",ref:g,"onUpdate:modelValue":Ee[1]||(Ee[1]=me=>Jt(b)?b.value=me:null)},i(s),{type:"text",minlength:e.minlength,maxlength:e.maxlength,disabled:i(E),readonly:e.readonly,autocomplete:e.autocomplete,tabindex:e.tabindex,placeholder:i(S),autofocus:e.autofocus,ariaLabel:e.ariaLabel,class:i(ne).e("input"),style:i(Q),onCompositionstart:Ee[2]||(Ee[2]=(...me)=>i(W)&&i(W)(...me)),onCompositionupdate:Ee[3]||(Ee[3]=(...me)=>i(P)&&i(P)(...me)),onCompositionend:Ee[4]||(Ee[4]=(...me)=>i(I)&&i(I)(...me)),onPaste:Ee[5]||(Ee[5]=(...me)=>i(R)&&i(R)(...me)),onInput:Ee[6]||(Ee[6]=(...me)=>i(A)&&i(A)(...me)),onKeydown:Ee[7]||(Ee[7]=(...me)=>i(_)&&i(_)(...me)),onKeyup:Ee[8]||(Ee[8]=(...me)=>i(V)&&i(V)(...me))}),null,16,WW),[[mv,i(b)]]),z("span",{ref_key:"calculatorRef",ref:X,"aria-hidden":"true",class:T(i(ne).e("input-calculator")),textContent:Se(i(b))},null,10,jW)],2),ut(z("div",{ref_key:"dropIndicatorRef",ref:he,class:T(i(ne).e("drop-indicator"))},null,2),[[Pt,i(ue)]])],2),i(ke)?(x(),B("div",{key:1,class:T(i(ne).e("suffix"))},[ee(pe.$slots,"suffix"),i(ve)?(x(),ae(i(De),{key:0,class:T([i(ne).e("icon"),i(ne).e("clear")]),onMousedown:Xe(i(Dt),["prevent"]),onClick:i(U)},{default:J(()=>[(x(),ae(it(e.clearIcon)))]),_:1},8,["class","onMousedown","onClick"])):te("v-if",!0),f.value&&v.value&&d.value?(x(),ae(i(De),{key:1,class:T([i(K).e("icon"),i(K).e("validateIcon"),i(K).is("loading",f.value==="validating")])},{default:J(()=>[(x(),ae(it(v.value)))]),_:1},8,["class"])):te("v-if",!0)],2)):te("v-if",!0)],38))}}),qW=UW;const YW=rt(qW),GW=Ce({type:{type:String,values:["primary","success","warning","info","danger","default"],default:void 0},underline:{type:[Boolean,String],values:[!0,!1,"always","never","hover"],default:void 0},disabled:Boolean,href:{type:String,default:""},target:{type:String,default:"_self"},icon:{type:Kt}}),XW={click:e=>e instanceof MouseEvent},JW=["href","target"];var ZW=se({name:"ElLink",__name:"link",props:GW,emits:XW,setup(e,{emit:t}){const n=e,o=t,a=gs("link");Ta({scope:"el-link",from:"The underline option (boolean)",replacement:"'always' | 'hover' | 'never'",version:"3.0.0",ref:"https://element-plus.org/en-US/component/link.html#underline"},w(()=>Ht(n.underline)));const s=fe("link"),r=w(()=>[s.b(),s.m(n.type??a.value?.type??"default"),s.is("disabled",n.disabled),s.is("underline",l.value==="always"),s.is("hover-underline",l.value==="hover"&&!n.disabled)]),l=w(()=>Ht(n.underline)?n.underline?"hover":"never":n.underline??a.value?.underline??"hover");function u(c){n.disabled||o("click",c)}return(c,d)=>(x(),B("a",{class:T(r.value),href:e.disabled||!e.href?void 0:e.href,target:e.disabled||!e.href?void 0:e.target,onClick:u},[e.icon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1})):te("v-if",!0),c.$slots.default?(x(),B("span",{key:1,class:T(i(s).e("inner"))},[ee(c.$slots,"default")],2)):te("v-if",!0),c.$slots.icon?ee(c.$slots,"icon",{key:2}):te("v-if",!0)],10,JW))}}),QW=ZW;const ej=rt(QW),Im="rootMenu",fd="subMenu:";function H2(e,t){const n=w(()=>{let o=e.parent;const a=[t.value];for(;o.type.name!=="ElMenu";)o.props.index&&a.unshift(o.props.index),o=o.parent;return a});return{parentMenu:w(()=>{let o=e.parent;for(;o&&!["ElMenu","ElSubMenu"].includes(o.type.name);)o=o.parent;return o}),indexPath:n}}function tj(e){return w(()=>{const t=e.backgroundColor;return t?new pn(t).shade(20).toString():""})}const K2=(e,t)=>{const n=fe("menu");return w(()=>n.cssVarBlock({"text-color":e.textColor||"","hover-text-color":e.textColor||"","bg-color":e.backgroundColor||"","hover-bg-color":tj(e).value||"","active-color":e.activeTextColor||"",level:`${t}`}))},nj=Ce({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,popperStyle:{type:G([String,Object])},disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:Kt},expandOpenIcon:{type:Kt},collapseCloseIcon:{type:Kt},collapseOpenIcon:{type:Kt}}),rp="ElSubMenu";var Pm=se({name:rp,props:nj,setup(e,{slots:t,expose:n}){const o=ft(),{indexPath:a,parentMenu:s}=H2(o,w(()=>e.index)),r=fe("menu"),l=fe("sub-menu"),u=_e(Im);u||nn(rp,"can not inject root menu");const c=_e(`${fd}${s.value.uid}`);c||nn(rp,"can not inject sub menu");const d=M({}),f=M({});let v;const g=M(!1),p=M(),h=M(),m=w(()=>c.level===0),b=w(()=>O.value==="horizontal"&&m.value?"bottom-start":"right-start"),k=w(()=>O.value==="horizontal"&&m.value||O.value==="vertical"&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?E.value?e.expandOpenIcon:e.expandCloseIcon:Fa:e.collapseCloseIcon&&e.collapseOpenIcon?E.value?e.collapseOpenIcon:e.collapseCloseIcon:no),y=w(()=>{const q=e.teleported;return Tt(q)?m.value:q}),S=w(()=>u.props.collapse?`${r.namespace.value}-zoom-in-left`:`${r.namespace.value}-zoom-in-top`),C=w(()=>O.value==="horizontal"&&m.value?["bottom-start","bottom-end","top-start","top-end","right-start","left-start"]:["right-start","right","right-end","left-start","bottom-start","bottom-end","top-start","top-end"]),E=w(()=>u.openedMenus.includes(e.index)),$=w(()=>[...Object.values(d.value),...Object.values(f.value)].some(({active:q})=>q)),O=w(()=>u.props.mode),N=w(()=>u.props.persistent),R=At({index:e.index,indexPath:a,active:$}),A=K2(u.props,c.level+1),_=w(()=>e.popperOffset??u.props.popperOffset),V=w(()=>e.popperClass??u.props.popperClass),H=w(()=>e.popperStyle??u.props.popperStyle),U=w(()=>e.showTimeout??u.props.showTimeout),W=w(()=>e.hideTimeout??u.props.hideTimeout),P=()=>h.value?.popperRef?.popperInstanceRef?.destroy(),I=q=>{q||P()},L=()=>{u.props.menuTrigger==="hover"&&u.props.mode==="horizontal"||u.props.collapse&&u.props.mode==="vertical"||e.disabled||u.handleSubMenuClick({index:e.index,indexPath:a.value,active:$.value})},D=(q,j=U.value)=>{if(q.type!=="focus"){if(u.props.menuTrigger==="click"&&u.props.mode==="horizontal"||!u.props.collapse&&u.props.mode==="vertical"||e.disabled){c.mouseInChild.value=!0;return}c.mouseInChild.value=!0,v?.(),{stop:v}=pl(()=>{u.openMenu(e.index,a.value)},j),y.value&&s.value.vnode.el?.dispatchEvent(new MouseEvent("mouseenter")),q.type==="mouseenter"&&q.target&&Re(()=>{iu(q.target,{preventScroll:!0})})}},F=(q=!1)=>{if(u.props.menuTrigger==="click"&&u.props.mode==="horizontal"||!u.props.collapse&&u.props.mode==="vertical"){c.mouseInChild.value=!1;return}v?.(),c.mouseInChild.value=!1,{stop:v}=pl(()=>!g.value&&u.closeMenu(e.index,a.value),W.value),y.value&&q&&c.handleMouseleave?.(!0)};le(()=>u.props.collapse,q=>I(!!q));{const q=X=>{f.value[X.index]=X},j=X=>{delete f.value[X.index]};St(`${fd}${o.uid}`,{addSubMenu:q,removeSubMenu:j,handleMouseleave:F,mouseInChild:g,level:c.level+1})}return n({opened:E}),ht(()=>{u.addSubMenu(R),c.addSubMenu(R)}),Bt(()=>{c.removeSubMenu(R),u.removeSubMenu(R)}),()=>{const q=[t.title?.(),Ye(De,{class:l.e("icon-arrow"),style:{transform:E.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&u.props.collapse?"none":"rotateZ(180deg)":"none"}},{default:()=>Le(k.value)?Ye(o.appContext.components[k.value]):Ye(k.value)})],j=u.isMenuPopup?Ye(Ln,{ref:h,visible:E.value,effect:"light",pure:!0,offset:_.value,showArrow:!1,persistent:N.value,popperClass:V.value,popperStyle:H.value,placement:b.value,teleported:y.value,fallbackPlacements:C.value,transition:S.value,gpuAcceleration:!1},{content:()=>Ye("div",{class:[r.m(O.value),r.m("popup-container"),V.value],onMouseenter:X=>D(X,100),onMouseleave:()=>F(!0),onFocus:X=>D(X,100)},[Ye("ul",{class:[r.b(),r.m("popup"),r.m(`popup-${b.value}`)],style:A.value},[t.default?.()])]),default:()=>Ye("div",{class:l.e("title"),onClick:L},q)}):Ye(Fe,{},[Ye("div",{class:l.e("title"),ref:p,onClick:L},q),Ye(uf,{},{default:()=>ut(Ye("ul",{role:"menu",class:[r.b(),r.m("inline")],style:A.value},[t.default?.()]),[[Pt,E.value]])})]);return Ye("li",{class:[l.b(),l.is("active",$.value),l.is("opened",E.value),l.is("disabled",e.disabled)],role:"menuitem",ariaHaspopup:!0,ariaExpanded:E.value,onMouseenter:D,onMouseleave:()=>F(),onFocus:D},[j])}}}),oj=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll("li"),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){const e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener("keydown",n=>{const o=jt(n);let a=!1;switch(o){case we.down:this.gotoSubIndex(this.subIndex+1),a=!0;break;case we.up:this.gotoSubIndex(this.subIndex-1),a=!0;break;case we.tab:dc(e,"mouseleave");break;case we.enter:case we.numpadEnter:case we.space:a=!0,n.currentTarget.click();break}return a&&(n.preventDefault(),n.stopPropagation()),!1})})}},aj=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute("tabindex","0");const t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new oj(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener("keydown",e=>{const t=jt(e);let n=!1;switch(t){case we.down:dc(e.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(0),n=!0;break;case we.up:dc(e.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),n=!0;break;case we.tab:dc(e.currentTarget,"mouseleave");break;case we.enter:case we.numpadEnter:case we.space:n=!0,e.currentTarget.click();break}n&&e.preventDefault()})}},sj=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){const t=this.domNode.childNodes;Array.from(t).forEach(n=>{n.nodeType===1&&new aj(n,e)})}},rj=se({name:"ElMenuCollapseTransition",__name:"menu-collapse-transition",setup(e){const t=fe("menu"),n={onBeforeEnter:o=>o.style.opacity="0.2",onEnter(o,a){Do(o,`${t.namespace.value}-opacity-transition`),o.style.opacity="1",a()},onAfterEnter(o){to(o,`${t.namespace.value}-opacity-transition`),o.style.opacity=""},onBeforeLeave(o){o.dataset||(o.dataset={}),$a(o,t.m("collapse"))?(to(o,t.m("collapse")),o.dataset.oldOverflow=o.style.overflow,o.dataset.scrollWidth=o.clientWidth.toString(),Do(o,t.m("collapse"))):(Do(o,t.m("collapse")),o.dataset.oldOverflow=o.style.overflow,o.dataset.scrollWidth=o.clientWidth.toString(),to(o,t.m("collapse"))),o.style.width=`${o.scrollWidth}px`,o.style.overflow="hidden"},onLeave(o){Do(o,"horizontal-collapse-transition"),o.style.width=`${o.dataset.scrollWidth}px`}};return(o,a)=>(x(),ae(Vn,dt({mode:"out-in"},n),{default:J(()=>[ee(o.$slots,"default")]),_:3},16))}}),lj=rj;const ij=Ce({mode:{type:String,values:["horizontal","vertical"],default:"vertical"},defaultActive:{type:String,default:""},defaultOpeneds:{type:G(Array),default:()=>rn([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:["hover","click"],default:"hover"},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:Kt,default:()=>k3},popperEffect:{type:G(String),default:"dark"},popperClass:String,popperStyle:{type:G([String,Object])},showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),lp=e=>ye(e)&&e.every(t=>Le(t)),uj={close:(e,t)=>Le(e)&&lp(t),open:(e,t)=>Le(e)&&lp(t),select:(e,t,n,o)=>Le(e)&&lp(t)&&at(n)&&(Tt(o)||o instanceof Promise)},w0=64;var cj=se({name:"ElMenu",props:ij,emits:uj,setup(e,{emit:t,slots:n,expose:o}){const a=ft(),s=a.appContext.config.globalProperties.$router,r=M(),l=M(),u=fe("menu"),c=fe("sub-menu");let d=w0;const f=M(-1),v=M(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),g=M(e.defaultActive),p=M({}),h=M({}),m=w(()=>e.mode==="horizontal"||e.mode==="vertical"&&e.collapse),b=()=>{const P=g.value&&p.value[g.value];!P||e.mode==="horizontal"||e.collapse||P.indexPath.forEach(I=>{const L=h.value[I];L&&k(I,L.indexPath)})},k=(P,I)=>{v.value.includes(P)||(e.uniqueOpened&&(v.value=v.value.filter(L=>I.includes(L))),v.value.push(P),t("open",P,I))},y=P=>{const I=v.value.indexOf(P);I!==-1&&v.value.splice(I,1)},S=(P,I)=>{y(P),t("close",P,I)},C=({index:P,indexPath:I})=>{v.value.includes(P)?S(P,I):k(P,I)},E=P=>{(e.mode==="horizontal"||e.collapse)&&(v.value=[]);const{index:I,indexPath:L}=P;if(!(bn(I)||bn(L)))if(e.router&&s){const D=P.route||I,F=s.push(D).then(q=>(q||(g.value=I),q));t("select",I,L,{index:I,indexPath:L,route:D},F)}else g.value=I,t("select",I,L,{index:I,indexPath:L})},$=P=>{const I=p.value;g.value=(I[P]||g.value&&I[g.value]||I[e.defaultActive])?.index??P},O=P=>{const I=getComputedStyle(P),L=Number.parseInt(I.marginLeft,10),D=Number.parseInt(I.marginRight,10);return P.offsetWidth+L+D||0},N=()=>{if(!r.value)return-1;const P=Array.from(r.value.childNodes).filter(X=>X.nodeName!=="#comment"&&(X.nodeName!=="#text"||X.nodeValue)),I=getComputedStyle(r.value),L=Number.parseInt(I.paddingLeft,10),D=Number.parseInt(I.paddingRight,10),F=r.value.clientWidth-L-D;let q=0,j=0;return P.forEach((X,Q)=>{q+=O(X),q<=F-d&&(j=Q+1)}),j===P.length?-1:j},R=P=>h.value[P].indexPath,A=(P,I=33.34)=>{let L;return()=>{L&&clearTimeout(L),L=setTimeout(()=>{P()},I)}};let _=!0;const V=()=>{const P=xn(l);if(P&&(d=O(P)||w0),f.value===N())return;const I=()=>{f.value=-1,Re(()=>{f.value=N()})};_?I():A(I)(),_=!1};le(()=>e.defaultActive,P=>{p.value[P]||(g.value=""),$(P)}),le(()=>e.collapse,P=>{P&&(v.value=[])}),le(p.value,b);let H;So(()=>{e.mode==="horizontal"&&e.ellipsis?H=en(r,V).stop:H?.()});const U=M(!1);{const P=F=>{h.value[F.index]=F},I=F=>{delete h.value[F.index]};St(Im,At({props:e,openedMenus:v,items:p,subMenus:h,activeIndex:g,isMenuPopup:m,addMenuItem:F=>{p.value[F.index]=F},removeMenuItem:F=>{delete p.value[F.index]},addSubMenu:P,removeSubMenu:I,openMenu:k,closeMenu:S,handleMenuItemClick:E,handleSubMenuClick:C})),St(`${fd}${a.uid}`,{addSubMenu:P,removeSubMenu:I,mouseInChild:U,level:0})}ht(()=>{e.mode==="horizontal"&&new sj(a.vnode.el,u.namespace.value)}),o({open:I=>{const{indexPath:L}=h.value[I];L.forEach(D=>k(D,L))},close:y,updateActiveIndex:$,handleResize:V});const W=K2(e,0);return()=>{let P=n.default?.()??[];const I=[];if(e.mode==="horizontal"&&r.value){const F=$o(P).filter(X=>X?.shapeFlag!==8),q=f.value===-1?F:F.slice(0,f.value),j=f.value===-1?[]:F.slice(f.value);j?.length&&e.ellipsis&&(P=q,I.push(Ye(Pm,{ref:l,index:"sub-menu-more",class:c.e("hide-arrow"),popperOffset:e.popperOffset},{title:()=>Ye(De,{class:c.e("icon-more")},{default:()=>Ye(e.ellipsisIcon)}),default:()=>j})))}const L=e.closeOnClickOutside?[[zs,()=>{v.value.length&&(U.value||(v.value.forEach(F=>t("close",F,R(F))),v.value=[]))}]]:[],D=ut(Ye("ul",{key:String(e.collapse),role:"menubar",ref:r,style:W.value,class:{[u.b()]:!0,[u.m(e.mode)]:!0,[u.m("collapse")]:e.collapse}},[...P,...I]),L);return e.collapseTransition&&e.mode==="vertical"?Ye(lj,()=>D):D}}});const dj=Ce({index:{type:G([String,null]),default:null},route:{type:G([String,Object])},disabled:Boolean}),fj={click:e=>Le(e.index)&&ye(e.indexPath)},pj={title:String},ec="ElMenuItem";var hj=se({name:ec,__name:"menu-item",props:dj,emits:fj,setup(e,{expose:t,emit:n}){const o=e,a=n;mo(o.index)&&pt(ec,'Missing required prop: "index"');const s=ft(),r=_e(Im),l=fe("menu"),u=fe("menu-item");r||nn(ec,"can not inject root menu");const{parentMenu:c,indexPath:d}=H2(s,Vt(o,"index")),f=_e(`${fd}${c.value.uid}`);f||nn(ec,"can not inject sub menu");const v=w(()=>o.index===r.activeIndex),g=At({index:o.index,indexPath:d,active:v}),p=()=>{o.disabled||(r.handleMenuItemClick({index:o.index,indexPath:d.value,route:o.route}),a("click",g))};return ht(()=>{f.addSubMenu(g),r.addMenuItem(g)}),Bt(()=>{f.removeSubMenu(g),r.removeMenuItem(g)}),t({parentMenu:c,rootMenu:r,active:v,nsMenu:l,nsMenuItem:u,handleClick:p}),(h,m)=>(x(),B("li",{class:T([i(u).b(),i(u).is("active",v.value),i(u).is("disabled",e.disabled)]),role:"menuitem",tabindex:"-1",onClick:p},[i(c).type.name==="ElMenu"&&i(r).props.collapse&&h.$slots.title?(x(),ae(i(Ln),{key:0,effect:i(r).props.popperEffect,placement:"right","fallback-placements":["left"],"popper-class":i(r).props.popperClass,"popper-style":i(r).props.popperStyle,persistent:i(r).props.persistent,"focus-on-target":""},{content:J(()=>[ee(h.$slots,"title")]),default:J(()=>[z("div",{class:T(i(l).be("tooltip","trigger"))},[ee(h.$slots,"default")],2)]),_:3},8,["effect","popper-class","popper-style","persistent"])):(x(),B(Fe,{key:1},[ee(h.$slots,"default"),ee(h.$slots,"title")],64))],2))}}),W2=hj,vj=se({name:"ElMenuItemGroup",__name:"menu-item-group",props:pj,setup(e){const t=fe("menu-item-group");return(n,o)=>(x(),B("li",{class:T(i(t).b())},[z("div",{class:T(i(t).e("title"))},[n.$slots.title?ee(n.$slots,"title",{key:1}):(x(),B(Fe,{key:0},[wt(Se(e.title),1)],64))],2),z("ul",null,[ee(n.$slots,"default")])],2))}}),j2=vj;const mj=rt(cj,{MenuItem:W2,MenuItemGroup:j2,SubMenu:Pm}),gj=on(W2),bj=on(j2),yj=on(Pm),wj=Ce({icon:{type:Kt,default:()=>q4},title:String,content:{type:String,default:""}}),Sj={back:()=>!0},Cj=["aria-label"];var kj=se({name:"ElPageHeader",__name:"page-header",props:wj,emits:Sj,setup(e,{emit:t}){const n=t,{t:o}=Ct(),a=fe("page-header");function s(){n("back")}return(r,l)=>(x(),B("div",{class:T([i(a).b(),i(a).is("contentful",!!r.$slots.default),{[i(a).m("has-breadcrumb")]:!!r.$slots.breadcrumb,[i(a).m("has-extra")]:!!r.$slots.extra}])},[r.$slots.breadcrumb?(x(),B("div",{key:0,class:T(i(a).e("breadcrumb"))},[ee(r.$slots,"breadcrumb")],2)):te("v-if",!0),z("div",{class:T(i(a).e("header"))},[z("div",{class:T(i(a).e("left"))},[z("div",{class:T(i(a).e("back")),role:"button",tabindex:"0",onClick:s},[e.icon||r.$slots.icon?(x(),B("div",{key:0,"aria-label":e.title||i(o)("el.pageHeader.title"),class:T(i(a).e("icon"))},[ee(r.$slots,"icon",{},()=>[e.icon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1})):te("v-if",!0)])],10,Cj)):te("v-if",!0),z("div",{class:T(i(a).e("title"))},[ee(r.$slots,"title",{},()=>[wt(Se(e.title||i(o)("el.pageHeader.title")),1)])],2)],2),Y(i(N2),{direction:"vertical"}),z("div",{class:T(i(a).e("content"))},[ee(r.$slots,"content",{},()=>[wt(Se(e.content),1)])],2)],2),r.$slots.extra?(x(),B("div",{key:0,class:T(i(a).e("extra"))},[ee(r.$slots,"extra")],2)):te("v-if",!0)],2),r.$slots.default?(x(),B("div",{key:1,class:T(i(a).e("main"))},[ee(r.$slots,"default")],2)):te("v-if",!0)],2))}}),Ej=kj;const xj=rt(Ej),U2=Symbol("elPaginationKey"),Tj=Ce({disabled:Boolean,currentPage:{type:Number,default:1},prevText:{type:String},prevIcon:{type:Kt}}),$j={click:e=>e instanceof MouseEvent},Oj=["disabled","aria-label","aria-disabled"],Rj={key:0};var Nj=se({name:"ElPaginationPrev",__name:"prev",props:Tj,emits:$j,setup(e){const t=e,{t:n}=Ct(),o=w(()=>t.disabled||t.currentPage<=1);return(a,s)=>(x(),B("button",{type:"button",class:"btn-prev",disabled:o.value,"aria-label":a.prevText||i(n)("el.pagination.prev"),"aria-disabled":o.value,onClick:s[0]||(s[0]=r=>a.$emit("click",r))},[a.prevText?(x(),B("span",Rj,Se(a.prevText),1)):(x(),ae(i(De),{key:1},{default:J(()=>[(x(),ae(it(a.prevIcon)))]),_:1}))],8,Oj))}}),Ij=Nj;const Pj=Ce({disabled:Boolean,currentPage:{type:Number,default:1},pageCount:{type:Number,default:50},nextText:{type:String},nextIcon:{type:Kt}}),Mj=["disabled","aria-label","aria-disabled"],_j={key:0};var Aj=se({name:"ElPaginationNext",__name:"next",props:Pj,emits:["click"],setup(e){const t=e,{t:n}=Ct(),o=w(()=>t.disabled||t.currentPage===t.pageCount||t.pageCount===0);return(a,s)=>(x(),B("button",{type:"button",class:"btn-next",disabled:o.value,"aria-label":a.nextText||i(n)("el.pagination.next"),"aria-disabled":o.value,onClick:s[0]||(s[0]=r=>a.$emit("click",r))},[a.nextText?(x(),B("span",_j,Se(a.nextText),1)):(x(),ae(i(De),{key:1},{default:J(()=>[(x(),ae(it(a.nextIcon)))]),_:1}))],8,Mj))}}),Lj=Aj;const Mm=()=>_e(U2,{}),Dj=Ce({pageSize:{type:Number,required:!0},pageSizes:{type:G(Array),default:()=>rn([10,20,30,40,50,100])},popperClass:{type:String},popperStyle:{type:G([String,Object])},disabled:Boolean,teleported:Boolean,size:{type:String,values:ia},appendSizeTo:String});var Bj=se({name:"ElPaginationSizes",__name:"sizes",props:Dj,emits:["page-size-change"],setup(e,{emit:t}){const n=e,o=t,{t:a}=Ct(),s=fe("pagination"),r=Mm(),l=M(n.pageSize);le(()=>n.pageSizes,(d,f)=>{sn(d,f)||ye(d)&&o("page-size-change",d.includes(n.pageSize)?n.pageSize:n.pageSizes[0])}),le(()=>n.pageSize,d=>{l.value=d});const u=w(()=>n.pageSizes);function c(d){d!==l.value&&(l.value=d,r.handleSizeChange?.(Number(d)))}return(d,f)=>(x(),B("span",{class:T(i(s).e("sizes"))},[Y(i(Hs),{"model-value":l.value,disabled:d.disabled,"popper-class":d.popperClass,"popper-style":d.popperStyle,size:d.size,teleported:d.teleported,"validate-event":!1,"append-to":d.appendSizeTo,onChange:c},{default:J(()=>[(x(!0),B(Fe,null,yt(u.value,v=>(x(),ae(i(ld),{key:v,value:v,label:v+i(a)("el.pagination.pagesize")},null,8,["value","label"]))),128))]),_:1},8,["model-value","disabled","popper-class","popper-style","size","teleported","append-to"])],2))}}),Fj=Bj;const Vj=Ce({size:{type:String,values:ia}}),zj=["disabled"];var Hj=se({name:"ElPaginationJumper",__name:"jumper",props:Vj,setup(e){const{t}=Ct(),n=fe("pagination"),{pageCount:o,disabled:a,currentPage:s,changeEvent:r}=Mm(),l=M(),u=w(()=>l.value??s?.value);function c(f){l.value=f?+f:""}function d(f){f=Math.trunc(+f),r?.(f),l.value=void 0}return(f,v)=>(x(),B("span",{class:T(i(n).e("jump")),disabled:i(a)},[z("span",{class:T([i(n).e("goto")])},Se(i(t)("el.pagination.goto")),3),Y(i(eo),{size:f.size,class:T([i(n).e("editor"),i(n).is("in-pagination")]),min:1,max:i(o),disabled:i(a),"model-value":u.value,"validate-event":!1,"aria-label":i(t)("el.pagination.page"),type:"number","onUpdate:modelValue":c,onChange:d},null,8,["size","class","max","disabled","model-value","aria-label"]),z("span",{class:T([i(n).e("classifier")])},Se(i(t)("el.pagination.pageClassifier")),3)],10,zj))}}),Kj=Hj;const Wj=Ce({total:{type:Number,default:1e3}}),jj=["disabled"];var Uj=se({name:"ElPaginationTotal",__name:"total",props:Wj,setup(e){const{t}=Ct(),n=fe("pagination"),{disabled:o}=Mm();return(a,s)=>(x(),B("span",{class:T(i(n).e("total")),disabled:i(o)},Se(i(t)("el.pagination.total",{total:a.total})),11,jj))}}),qj=Uj;const Yj=Ce({currentPage:{type:Number,default:1},pageCount:{type:Number,required:!0},pagerCount:{type:Number,default:7},disabled:Boolean}),Gj=["aria-current","aria-label","tabindex"],Xj=["tabindex","aria-label"],Jj=["aria-current","aria-label","tabindex"],Zj=["tabindex","aria-label"],Qj=["aria-current","aria-label","tabindex"];var e9=se({name:"ElPaginationPager",__name:"pager",props:Yj,emits:[bt],setup(e,{emit:t}){const n=e,o=t,a=fe("pager"),s=fe("icon"),{t:r}=Ct(),l=M(!1),u=M(!1),c=M(!1),d=M(!1),f=M(!1),v=M(!1),g=w(()=>{const C=n.pagerCount,E=(C-1)/2,$=Number(n.currentPage),O=Number(n.pageCount);let N=!1,R=!1;O>C&&($>C-E&&(N=!0),$["more","btn-quickprev",s.b(),a.is("disabled",n.disabled)]),h=w(()=>["more","btn-quicknext",s.b(),a.is("disabled",n.disabled)]),m=w(()=>n.disabled?-1:0);le(()=>[n.pageCount,n.pagerCount,n.currentPage],([C,E,$])=>{const O=(E-1)/2;let N=!1,R=!1;C>E&&(N=$>E-O,R=$O&&($=O)),$!==N&&o(bt,$)}return(C,E)=>(x(),B("ul",{class:T(i(a).b()),onClick:S,onKeyup:an(y,["enter"])},[C.pageCount>0?(x(),B("li",{key:0,class:T([[i(a).is("active",C.currentPage===1),i(a).is("disabled",C.disabled)],"number"]),"aria-current":C.currentPage===1,"aria-label":i(r)("el.pagination.currentPage",{pager:1}),tabindex:m.value}," 1 ",10,Gj)):te("v-if",!0),l.value?(x(),B("li",{key:1,class:T(p.value),tabindex:m.value,"aria-label":i(r)("el.pagination.prevPages",{pager:C.pagerCount-2}),onMouseenter:E[0]||(E[0]=$=>b(!0)),onMouseleave:E[1]||(E[1]=$=>c.value=!1),onFocus:E[2]||(E[2]=$=>k(!0)),onBlur:E[3]||(E[3]=$=>f.value=!1)},[(c.value||f.value)&&!C.disabled?(x(),ae(i(Bs),{key:0})):(x(),ae(i(iy),{key:1}))],42,Xj)):te("v-if",!0),(x(!0),B(Fe,null,yt(g.value,$=>(x(),B("li",{key:$,class:T([[i(a).is("active",C.currentPage===$),i(a).is("disabled",C.disabled)],"number"]),"aria-current":C.currentPage===$,"aria-label":i(r)("el.pagination.currentPage",{pager:$}),tabindex:m.value},Se($),11,Jj))),128)),u.value?(x(),B("li",{key:2,class:T(h.value),tabindex:m.value,"aria-label":i(r)("el.pagination.nextPages",{pager:C.pagerCount-2}),onMouseenter:E[4]||(E[4]=$=>b()),onMouseleave:E[5]||(E[5]=$=>d.value=!1),onFocus:E[6]||(E[6]=$=>k()),onBlur:E[7]||(E[7]=$=>v.value=!1)},[(d.value||v.value)&&!C.disabled?(x(),ae(i(Fs),{key:0})):(x(),ae(i(iy),{key:1}))],42,Zj)):te("v-if",!0),C.pageCount>1?(x(),B("li",{key:3,class:T([[i(a).is("active",C.currentPage===C.pageCount),i(a).is("disabled",C.disabled)],"number"]),"aria-current":C.currentPage===C.pageCount,"aria-label":i(r)("el.pagination.currentPage",{pager:C.pageCount}),tabindex:m.value},Se(C.pageCount),11,Qj)):te("v-if",!0)],34))}}),t9=e9;const so=e=>typeof e!="number",n9=Ce({pageSize:Number,defaultPageSize:Number,total:Number,pageCount:Number,pagerCount:{type:Number,validator:e=>He(e)&&Math.trunc(e)===e&&e>4&&e<22&&e%2===1,default:7},currentPage:Number,defaultCurrentPage:Number,layout:{type:String,default:["prev","pager","next","jumper","->","total"].join(", ")},pageSizes:{type:G(Array),default:()=>rn([10,20,30,40,50,100])},popperClass:{type:String,default:""},popperStyle:{type:G([String,Object])},prevText:{type:String,default:""},prevIcon:{type:Kt,default:()=>is},nextText:{type:String,default:""},nextIcon:{type:Kt,default:()=>no},teleported:{type:Boolean,default:!0},small:Boolean,size:Tn,background:Boolean,disabled:Boolean,hideOnSinglePage:Boolean,appendSizeTo:String}),o9={"update:current-page":e=>He(e),"update:page-size":e=>He(e),"size-change":e=>He(e),change:(e,t)=>He(e)&&He(t),"current-change":e=>He(e),"prev-click":e=>He(e),"next-click":e=>He(e)},S0="ElPagination";var a9=se({name:S0,props:n9,emits:o9,setup(e,{emit:t,slots:n}){const{t:o}=Ct(),a=fe("pagination"),s=ft().vnode.props||{},r=AC(),l=w(()=>e.small?"small":e.size??r.value);Ta({from:"small",replacement:"size",version:"3.0.0",scope:"el-pagination",ref:"https://element-plus.org/zh-CN/component/pagination.html"},w(()=>!!e.small));const u="onUpdate:currentPage"in s||"onUpdate:current-page"in s||"onCurrentChange"in s,c="onUpdate:pageSize"in s||"onUpdate:page-size"in s||"onSizeChange"in s,d=w(()=>{if(so(e.total)&&so(e.pageCount)||!so(e.currentPage)&&!u)return!1;if(e.layout.includes("sizes")){if(so(e.pageCount)){if(!so(e.total)&&!so(e.pageSize)&&!c)return!1}else if(!c)return!1}return!0}),f=M(so(e.defaultPageSize)?10:e.defaultPageSize),v=M(so(e.defaultCurrentPage)?1:e.defaultCurrentPage),g=w({get(){return so(e.pageSize)?f.value:e.pageSize},set(C){so(e.pageSize)&&(f.value=C),c&&(t("update:page-size",C),t("size-change",C))}}),p=w(()=>{let C=0;return so(e.pageCount)?so(e.total)||(C=Math.max(1,Math.ceil(e.total/g.value))):C=e.pageCount,C}),h=w({get(){return so(e.currentPage)?v.value:e.currentPage},set(C){let E=C;C<1?E=1:C>p.value&&(E=p.value),so(e.currentPage)&&(v.value=E),u&&(t("update:current-page",E),t("current-change",E))}});le(p,C=>{h.value>C&&(h.value=C)}),le([h,g],C=>{t(bt,...C)},{flush:"post"});function m(C){h.value=C}function b(C){g.value=C;const E=p.value;h.value>E&&(h.value=E)}function k(){e.disabled||(h.value-=1,t("prev-click",h.value))}function y(){e.disabled||(h.value+=1,t("next-click",h.value))}function S(C,E){C&&(C.props||(C.props={}),C.props.class=[C.props.class,E].join(" "))}return St(U2,{pageCount:p,disabled:w(()=>e.disabled),currentPage:h,changeEvent:m,handleSizeChange:b}),()=>{if(!d.value)return pt(S0,o("el.pagination.deprecationWarning")),null;if(!e.layout||e.hideOnSinglePage&&p.value<=1)return null;const C=[],E=[],$=Ye("div",{class:a.e("rightwrapper")},E),O={prev:Ye(Ij,{disabled:e.disabled,currentPage:h.value,prevText:e.prevText,prevIcon:e.prevIcon,onClick:k}),jumper:Ye(Kj,{size:l.value}),pager:Ye(t9,{currentPage:h.value,pageCount:p.value,pagerCount:e.pagerCount,onChange:m,disabled:e.disabled}),next:Ye(Lj,{disabled:e.disabled,currentPage:h.value,pageCount:p.value,nextText:e.nextText,nextIcon:e.nextIcon,onClick:y}),sizes:Ye(Fj,{pageSize:g.value,pageSizes:e.pageSizes,popperClass:e.popperClass,popperStyle:e.popperStyle,disabled:e.disabled,teleported:e.teleported,size:l.value,appendSizeTo:e.appendSizeTo}),slot:n?.default?.()??null,total:Ye(qj,{total:so(e.total)?0:e.total})},N=e.layout.split(",").map(A=>A.trim());let R=!1;return N.forEach(A=>{if(A==="->"){R=!0;return}R?E.push(O[A]):C.push(O[A])}),S(C[0],a.is("first")),S(C[C.length-1],a.is("last")),R&&E.length>0&&(S(E[0],a.is("first")),S(E[E.length-1],a.is("last")),C.push($)),Ye("div",{class:[a.b(),a.is("background",e.background),a.m(l.value)]},C)}}});const s9=rt(a9),r9=Ce({title:String,confirmButtonText:String,cancelButtonText:String,confirmButtonType:{type:String,values:eh,default:"primary"},cancelButtonType:{type:String,values:eh,default:"text"},icon:{type:Kt,default:()=>O3},iconColor:{type:String,default:"#f90"},hideIcon:Boolean,hideAfter:{type:Number,default:200},effect:{...zt.effect,default:"light"},teleported:zt.teleported,persistent:zt.persistent,width:{type:[String,Number],default:150},virtualTriggering:Na.virtualTriggering,virtualRef:Na.virtualRef}),l9={confirm:e=>e instanceof MouseEvent,cancel:e=>e instanceof MouseEvent};var i9=se({name:"ElPopconfirm",__name:"popconfirm",props:r9,emits:l9,setup(e,{expose:t,emit:n}){const o=e,a=n,{t:s}=Ct(),r=fe("popconfirm"),l=M(),u=M(),c=w(()=>i(l)?.popperRef),d=()=>{u.value?.focus?.()},f=()=>{l.value?.onClose?.()},v=w(()=>({width:ln(o.width)})),g=b=>{a("confirm",b),f()},p=b=>{a("cancel",b),f()},h=w(()=>o.confirmButtonText||s("el.popconfirm.confirmButtonText")),m=w(()=>o.cancelButtonText||s("el.popconfirm.cancelButtonText"));return t({popperRef:c,hide:f}),(b,k)=>(x(),ae(i(Ln),dt({ref_key:"tooltipRef",ref:l,trigger:"click",effect:e.effect},b.$attrs,{"virtual-triggering":e.virtualTriggering,"virtual-ref":e.virtualRef,"popper-class":`${i(r).namespace.value}-popover`,"popper-style":v.value,teleported:e.teleported,"fallback-placements":["bottom","top","right","left"],"hide-after":e.hideAfter,persistent:e.persistent,loop:"",onShow:d}),{content:J(()=>[z("div",{ref_key:"rootRef",ref:u,tabindex:"-1",class:T(i(r).b())},[z("div",{class:T(i(r).e("main"))},[!e.hideIcon&&e.icon?(x(),ae(i(De),{key:0,class:T(i(r).e("icon")),style:Ke({color:e.iconColor})},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1},8,["class","style"])):te("v-if",!0),wt(" "+Se(e.title),1)],2),z("div",{class:T(i(r).e("action"))},[ee(b.$slots,"actions",{confirm:g,cancel:p},()=>[Y(i(In),{size:"small",type:e.cancelButtonType==="text"?"":e.cancelButtonType,text:e.cancelButtonType==="text",onClick:p},{default:J(()=>[wt(Se(m.value),1)]),_:1},8,["type","text"]),Y(i(In),{size:"small",type:e.confirmButtonType==="text"?"":e.confirmButtonType,text:e.confirmButtonType==="text",onClick:g},{default:J(()=>[wt(Se(h.value),1)]),_:1},8,["type","text"])])],2)],2)]),default:J(()=>[b.$slots.reference?ee(b.$slots,"reference",{key:0}):te("v-if",!0)]),_:3},16,["effect","virtual-triggering","virtual-ref","popper-class","popper-style","teleported","hide-after","persistent"]))}}),u9=i9;const c9=rt(u9),d9=Ce({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:Boolean,duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:G(String),default:"round"},textInside:Boolean,width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:G([String,Array,Function]),default:""},striped:Boolean,stripedFlow:Boolean,format:{type:G(Function),default:e=>`${e}%`}}),f9=["aria-valuenow"],p9={viewBox:"0 0 100 100"},h9=["d","stroke","stroke-linecap","stroke-width"],v9=["d","stroke","opacity","stroke-linecap","stroke-width"],m9={key:0};var g9=se({name:"ElProgress",__name:"progress",props:d9,setup(e){const t={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},n=e,o=fe("progress"),a=w(()=>{const y={width:`${n.percentage}%`,animationDuration:`${n.duration}s`},S=k(n.percentage);return S.includes("gradient")?y.background=S:y.backgroundColor=S,y}),s=w(()=>(n.strokeWidth/n.width*100).toFixed(1)),r=w(()=>["circle","dashboard"].includes(n.type)?Number.parseInt(`${50-Number.parseFloat(s.value)/2}`,10):0),l=w(()=>{const y=r.value,S=n.type==="dashboard";return` + M 50 50 + m 0 ${S?"":"-"}${y} + a ${y} ${y} 0 1 1 0 ${S?"-":""}${y*2} + a ${y} ${y} 0 1 1 0 ${S?"":"-"}${y*2} + `}),u=w(()=>2*Math.PI*r.value),c=w(()=>n.type==="dashboard"?.75:1),d=w(()=>`${-1*u.value*(1-c.value)/2}px`),f=w(()=>({strokeDasharray:`${u.value*c.value}px, ${u.value}px`,strokeDashoffset:d.value})),v=w(()=>({strokeDasharray:`${u.value*c.value*(n.percentage/100)}px, ${u.value}px`,strokeDashoffset:d.value,transition:"stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"})),g=w(()=>{let y;return n.color?y=k(n.percentage):y=t[n.status]||t.default,y}),p=w(()=>n.status==="warning"?of:n.type==="line"?n.status==="success"?om:Va:n.status==="success"?gu:Ko),h=w(()=>n.type==="line"?12+n.strokeWidth*.4:n.width*.111111+2),m=w(()=>n.format(n.percentage));function b(y){const S=100/y.length;return y.map((C,E)=>Le(C)?{color:C,percentage:(E+1)*S}:C).sort((C,E)=>C.percentage-E.percentage)}const k=y=>{const{color:S}=n;if(Ve(S))return S(y);if(Le(S))return S;{const C=b(S);for(const E of C)if(E.percentage>y)return E.color;return C[C.length-1]?.color}};return(y,S)=>(x(),B("div",{class:T([i(o).b(),i(o).m(e.type),i(o).is(e.status),{[i(o).m("without-text")]:!e.showText,[i(o).m("text-inside")]:e.textInside}]),role:"progressbar","aria-valuenow":e.percentage,"aria-valuemin":"0","aria-valuemax":"100"},[e.type==="line"?(x(),B("div",{key:0,class:T(i(o).b("bar"))},[z("div",{class:T(i(o).be("bar","outer")),style:Ke({height:`${e.strokeWidth}px`})},[z("div",{class:T([i(o).be("bar","inner"),{[i(o).bem("bar","inner","indeterminate")]:e.indeterminate},{[i(o).bem("bar","inner","striped")]:e.striped},{[i(o).bem("bar","inner","striped-flow")]:e.stripedFlow}]),style:Ke(a.value)},[(e.showText||y.$slots.default)&&e.textInside?(x(),B("div",{key:0,class:T(i(o).be("bar","innerText"))},[ee(y.$slots,"default",{percentage:e.percentage},()=>[z("span",null,Se(m.value),1)])],2)):te("v-if",!0)],6)],6)],2)):(x(),B("div",{key:1,class:T(i(o).b("circle")),style:Ke({height:`${e.width}px`,width:`${e.width}px`})},[(x(),B("svg",p9,[z("path",{class:T(i(o).be("circle","track")),d:l.value,stroke:`var(${i(o).cssVarName("fill-color-light")}, #e5e9f2)`,"stroke-linecap":e.strokeLinecap,"stroke-width":s.value,fill:"none",style:Ke(f.value)},null,14,h9),z("path",{class:T(i(o).be("circle","path")),d:l.value,stroke:g.value,fill:"none",opacity:e.percentage?1:0,"stroke-linecap":e.strokeLinecap,"stroke-width":s.value,style:Ke(v.value)},null,14,v9)]))],6)),(e.showText||y.$slots.default)&&!e.textInside?(x(),B("div",{key:2,class:T(i(o).e("text")),style:Ke({fontSize:`${h.value}px`})},[ee(y.$slots,"default",{percentage:e.percentage},()=>[e.status?(x(),ae(i(De),{key:1},{default:J(()=>[(x(),ae(it(p.value)))]),_:1})):(x(),B("span",m9,Se(m.value),1))])],6)):te("v-if",!0)],10,f9))}}),b9=g9;const q2=rt(b9),y9=Ce({modelValue:{type:Number,default:0},id:{type:String,default:void 0},lowThreshold:{type:Number,default:2},highThreshold:{type:Number,default:4},max:{type:Number,default:5},colors:{type:G([Array,Object]),default:()=>rn(["","",""])},voidColor:{type:String,default:""},disabledVoidColor:{type:String,default:""},icons:{type:G([Array,Object]),default:()=>[Hu,Hu,Hu]},voidIcon:{type:Kt,default:()=>K3},disabledVoidIcon:{type:Kt,default:()=>Hu},disabled:{type:Boolean,default:void 0},allowHalf:Boolean,showText:Boolean,showScore:Boolean,textColor:{type:String,default:""},texts:{type:G(Array),default:()=>rn(["Extremely bad","Disappointed","Fair","Satisfied","Surprise"])},scoreTemplate:{type:String,default:"{value}"},size:Tn,clearable:Boolean,...oo(["ariaLabel"])}),w9={[bt]:e=>He(e),[ot]:e=>He(e)},S9=["id","aria-label","aria-labelledby","aria-valuenow","aria-valuetext","aria-valuemax","tabindex","aria-disabled"],C9=["onMousemove","onClick"];var k9=se({name:"ElRate",__name:"rate",props:y9,emits:w9,setup(e,{expose:t,emit:n}){function o(I,L){const D=q=>at(q),F=L[Object.keys(L).map(q=>+q).filter(q=>{const j=L[q];return D(j)&&j.excluded?Iq-j)[0]];return D(F)&&F.value||F}const a=e,s=n,r=_e(La,void 0),l=Cn(),u=fe("rate"),{inputId:c,isLabeledByFormItem:d}=Po(a,{formItemContext:r}),f=M(or(a.modelValue,0,a.max)),v=M(-1),g=M(!0),p=M([]),h=w(()=>p.value.map(I=>I.$el.clientWidth)),m=w(()=>[u.b(),u.m(l.value)]),b=un(),k=w(()=>u.cssVarBlock({"void-color":a.voidColor,"disabled-void-color":a.disabledVoidColor,"fill-color":E.value})),y=w(()=>{let I="";return a.showScore?I=a.scoreTemplate.replace(/\{\s*value\s*\}/,b.value?`${a.modelValue}`:`${f.value}`):a.showText&&(I=a.texts[Math.ceil(f.value)-1]),I}),S=w(()=>a.modelValue*100-Math.floor(a.modelValue)*100),C=w(()=>ye(a.colors)?{[a.lowThreshold]:a.colors[0],[a.highThreshold]:{value:a.colors[1],excluded:!0},[a.max]:a.colors[2]}:a.colors),E=w(()=>{const I=o(f.value,C.value);return at(I)?"":I}),$=w(()=>{let I="";return b.value?I=`${S.value}%`:a.allowHalf&&(I="50%"),{color:E.value,width:I}}),O=w(()=>{let I=ye(a.icons)?[...a.icons]:{...a.icons};return I=xa(I),ye(I)?{[a.lowThreshold]:I[0],[a.highThreshold]:{value:I[1],excluded:!0},[a.max]:I[2]}:I}),N=w(()=>o(a.modelValue,O.value)),R=w(()=>b.value?Le(a.disabledVoidIcon)?a.disabledVoidIcon:xa(a.disabledVoidIcon):Le(a.voidIcon)?a.voidIcon:xa(a.voidIcon)),A=w(()=>o(f.value,O.value));function _(I){const L=b.value&&S.value>0&&I-1a.modelValue,D=a.allowHalf&&g.value&&I-.5<=f.value&&I>f.value;return L||D}function V(I){a.clearable&&I===a.modelValue&&(I=0),s(ot,I),a.modelValue!==I&&s(bt,I)}function H(I){b.value||(a.allowHalf&&g.value?V(f.value):V(I))}function U(I){if(b.value)return;const L=jt(I),D=a.allowHalf?.5:1;let F=f.value;switch(L){case we.up:case we.right:F+=D;break;case we.left:case we.down:F-=D;break}if(F=or(F,0,a.max),F!==f.value)return I.stopPropagation(),I.preventDefault(),s(ot,F),s(bt,F),F}function W(I,L){b.value||(a.allowHalf&&L?(g.value=L.offsetX*2<=h.value[I-1],f.value=g.value?I-.5:I):f.value=I,v.value=I)}function P(){b.value||(a.allowHalf&&(g.value=a.modelValue!==Math.floor(a.modelValue)),f.value=or(a.modelValue,0,a.max),v.value=-1)}return le(()=>a.modelValue,I=>{f.value=or(I,0,a.max),g.value=a.modelValue!==Math.floor(a.modelValue)}),a.modelValue||s(ot,0),t({setCurrentValue:W,resetCurrentValue:P}),(I,L)=>(x(),B("div",{id:i(c),class:T([m.value,i(u).is("disabled",i(b))]),role:"slider","aria-label":i(d)?void 0:e.ariaLabel||"rating","aria-labelledby":i(d)?i(r)?.labelId:void 0,"aria-valuenow":f.value,"aria-valuetext":y.value||void 0,"aria-valuemin":"0","aria-valuemax":e.max,style:Ke(k.value),tabindex:i(b)?void 0:0,"aria-disabled":i(b),onKeydown:U},[(x(!0),B(Fe,null,yt(e.max,(D,F)=>(x(),B("span",{key:F,class:T(i(u).e("item")),onMousemove:q=>W(D,q),onMouseleave:P,onClick:q=>H(D)},[Y(i(De),{ref_for:!0,ref_key:"iconRefs",ref:p,class:T([i(u).e("icon"),{hover:v.value===D},i(u).is("active",D<=f.value),i(u).is("focus-visible",D===Math.ceil(f.value||1))])},{default:J(()=>[ut((x(),ae(it(A.value),null,null,512)),[[Pt,!_(D)&&D<=f.value]]),ut((x(),ae(it(R.value),null,null,512)),[[Pt,!_(D)&&D>f.value]]),ut((x(),ae(it(R.value),{class:T([i(u).em("decimal","box")])},null,8,["class"])),[[Pt,_(D)]]),ut(Y(i(De),{style:Ke($.value),class:T([i(u).e("icon"),i(u).e("decimal")])},{default:J(()=>[(x(),ae(it(N.value)))]),_:1},8,["style","class"]),[[Pt,_(D)]])]),_:2},1032,["class"])],42,C9))),128)),e.showText||e.showScore?(x(),B("span",{key:0,class:T(i(u).e("text")),style:Ke({color:e.textColor})},Se(y.value),7)):te("v-if",!0)],46,S9))}}),E9=k9;const x9=rt(E9),tr={primary:"icon-primary",success:"icon-success",warning:"icon-warning",error:"icon-error",info:"icon-info"},C0={[tr.primary]:Mi,[tr.success]:t3,[tr.warning]:of,[tr.error]:am,[tr.info]:Mi},T9=Ce({title:{type:String,default:""},subTitle:{type:String,default:""},icon:{type:String,values:["primary","success","warning","info","error"],default:"info"}});var $9=se({name:"ElResult",__name:"result",props:T9,setup(e){const t=e,n=fe("result"),o=w(()=>{const a=t.icon,s=a&&tr[a]?tr[a]:"icon-info";return{class:s,component:C0[s]||C0["icon-info"]}});return(a,s)=>(x(),B("div",{class:T(i(n).b())},[z("div",{class:T(i(n).e("icon"))},[ee(a.$slots,"icon",{},()=>[o.value.component?(x(),ae(it(o.value.component),{key:0,class:T(o.value.class)},null,8,["class"])):te("v-if",!0)])],2),e.title||a.$slots.title?(x(),B("div",{key:0,class:T(i(n).e("title"))},[ee(a.$slots,"title",{},()=>[z("p",null,Se(e.title),1)])],2)):te("v-if",!0),e.subTitle||a.$slots["sub-title"]?(x(),B("div",{key:1,class:T(i(n).e("subtitle"))},[ee(a.$slots,"sub-title",{},()=>[z("p",null,Se(e.subTitle),1)])],2)):te("v-if",!0),a.$slots.extra?(x(),B("div",{key:2,class:T(i(n).e("extra"))},[ee(a.$slots,"extra")],2)):te("v-if",!0)],2))}}),O9=$9;const R9=rt(O9),wh=50,pd="itemRendered",hd="scroll",Yr="forward",vd="backward",Bo="auto",ff="smart",Vi="start",ka="center",zi="end",kl="horizontal",Y2="vertical",N9="ltr",ol="rtl",Hi="negative",_m="positive-ascending",Am="positive-descending",I9={[kl]:"left",[Y2]:"top"},P9=20,Sh=ca({type:G([Number,Function]),required:!0}),Ch=ca({type:Number}),kh=ca({type:Number,default:2}),M9=ca({type:String,values:["ltr","rtl"],default:"ltr"}),Eh=ca({type:Number,default:0}),md=ca({type:Number,required:!0}),G2=ca({type:String,values:["horizontal","vertical"],default:Y2}),X2=Ce({className:{type:String,default:""},containerElement:{type:G([String,Object]),default:"div"},data:{type:G(Array),default:()=>rn([])},direction:M9,height:{type:[String,Number],required:!0},innerElement:{type:[String,Object],default:"div"},innerProps:{type:G(Object),default:()=>({})},style:{type:G([Object,String,Array])},useIsScrolling:Boolean,width:{type:[Number,String],required:!1},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),J2=Ce({cache:kh,estimatedItemSize:Ch,layout:G2,initScrollOffset:Eh,total:md,itemSize:Sh,...X2}),xh={type:Number,default:6},Z2={type:Number,default:0},Q2={type:Number,default:2},hr=Ce({columnCache:kh,columnWidth:Sh,estimatedColumnWidth:Ch,estimatedRowHeight:Ch,initScrollLeft:Eh,initScrollTop:Eh,itemKey:{type:G(Function),default:({columnIndex:e,rowIndex:t})=>`${t}:${e}`},rowCache:kh,rowHeight:Sh,totalColumn:md,totalRow:md,hScrollbarSize:xh,vScrollbarSize:xh,scrollbarStartGap:Z2,scrollbarEndGap:Q2,role:String,...X2}),eE=Ce({alwaysOn:Boolean,class:String,layout:G2,total:md,ratio:{type:Number,required:!0},clientSize:{type:Number,required:!0},scrollFrom:{type:Number,required:!0},scrollbarSize:xh,startGap:Z2,endGap:Q2,visible:Boolean}),lr=(e,t)=>ee===N9||e===ol||e===kl,k0=e=>e===ol;let Hr=null;function gd(e=!1){if(Hr===null||e){const t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";const o=document.createElement("div"),a=o.style;return a.width="100px",a.height="100px",t.appendChild(o),document.body.appendChild(t),t.scrollLeft>0?Hr=Am:(t.scrollLeft=1,t.scrollLeft===0?Hr=Hi:Hr=_m),document.body.removeChild(t),Hr}return Hr}function _9({move:e,size:t,bar:n},o){const a={},s=`translate${n.axis}(${e}px)`;return a[n.size]=t,a.transform=s,o==="horizontal"?a.height="100%":a.width="100%",a}var E0=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function A9(e,t){return!!(e===t||E0(e)&&E0(t))}function L9(e,t){if(e.length!==t.length)return!1;for(var n=0;n{const e=ft().proxy.$props;return w(()=>{const t=(n,o,a)=>({});return e.perfMode?Hd(t):D9(t)})},nE=({atEndEdge:e,atStartEdge:t,layout:n},o)=>{let a,s=0;const r=u=>u<0&&t.value||u>0&&e.value;return{hasReachedEdge:r,onWheel:u=>{rs(a);let{deltaX:c,deltaY:d}=u;u.shiftKey&&d!==0&&(c=d,d=0);const f=n.value===kl?c:d;r(f)||(s+=f,!Yd()&&f!==0&&u.preventDefault(),a=ta(()=>{o(s),s=0}))}}},Th=se({name:"ElVirtualScrollBar",props:eE,emits:["scroll","start-move","stop-move"],setup(e,{emit:t}){const n=w(()=>e.startGap+e.endGap),o=fe("virtual-scrollbar"),a=fe("scrollbar"),s=M(),r=M();let l=null,u=null;const c=At({isDragging:!1,traveled:0}),d=w(()=>sk[e.layout]),f=w(()=>e.clientSize-i(n)),v=w(()=>({position:"absolute",width:`${kl===e.layout?f.value:e.scrollbarSize}px`,height:`${kl===e.layout?e.scrollbarSize:f.value}px`,[I9[e.layout]]:"2px",right:"2px",bottom:"2px",borderRadius:"4px"})),g=w(()=>{const E=e.ratio;if(E>=100)return Number.POSITIVE_INFINITY;if(E>=50)return E*f.value/100;const $=f.value/3;return Math.floor(Math.min(Math.max(E*f.value/100,P9),$))}),p=w(()=>{if(!Number.isFinite(g.value))return{display:"none"};const E=`${g.value}px`;return _9({bar:d.value,size:E,move:c.traveled},e.layout)}),h=w(()=>Math.ceil(e.clientSize-g.value-i(n))),m=()=>{window.addEventListener("mousemove",S),window.addEventListener("mouseup",y);const E=i(r);E&&(u=document.onselectstart,document.onselectstart=()=>!1,E.addEventListener("touchmove",S,{passive:!0}),E.addEventListener("touchend",y))},b=()=>{window.removeEventListener("mousemove",S),window.removeEventListener("mouseup",y),document.onselectstart=u,u=null;const E=i(r);E&&(E.removeEventListener("touchmove",S),E.removeEventListener("touchend",y))},k=E=>{E.stopImmediatePropagation(),!(E.ctrlKey||[1,2].includes(E.button))&&(c.isDragging=!0,c[d.value.axis]=E.currentTarget[d.value.offset]-(E[d.value.client]-E.currentTarget.getBoundingClientRect()[d.value.direction]),t("start-move"),m())},y=()=>{c.isDragging=!1,c[d.value.axis]=0,t("stop-move"),b()},S=E=>{const{isDragging:$}=c;if(!$||!r.value||!s.value)return;const O=c[d.value.axis];if(!O)return;rs(l);const N=(s.value.getBoundingClientRect()[d.value.direction]-E[d.value.client])*-1-(r.value[d.value.offset]-O);l=ta(()=>{c.traveled=Math.max(0,Math.min(N,h.value)),t("scroll",N,h.value)})},C=E=>{const $=Math.abs(E.target.getBoundingClientRect()[d.value.direction]-E[d.value.client])-r.value[d.value.offset]/2;c.traveled=Math.max(0,Math.min($,h.value)),t("scroll",$,h.value)};return le(()=>e.scrollFrom,E=>{c.isDragging||(c.traveled=Math.ceil(E*h.value))}),Bt(()=>{b()}),()=>Ye("div",{role:"presentation",ref:s,class:[o.b(),e.class,(e.alwaysOn||c.isDragging)&&"always-on"],style:v.value,onMousedown:Xe(C,["stop","prevent"]),onTouchstartPrevent:k},Ye("div",{ref:r,class:a.e("thumb"),style:p.value,onMousedown:k},[]))}}),oE=({name:e,getOffset:t,getItemSize:n,getItemOffset:o,getEstimatedTotalSize:a,getStartIndexForOffset:s,getStopIndexForStartIndex:r,initCache:l,clearCache:u,validateProps:c})=>se({name:e??"ElVirtualList",props:J2,emits:[pd,hd],setup(d,{emit:f,expose:v}){c(d);const g=ft(),p=fe("vl"),h=M(l(d,g)),m=tE(),b=M(),k=M(),y=M(),S=M({isScrolling:!1,scrollDir:"forward",scrollOffset:He(d.initScrollOffset)?d.initScrollOffset:0,updateRequested:!1,isScrollbarDragging:!1,scrollbarAlwaysOn:d.scrollbarAlwaysOn}),C=w(()=>{const{total:j,cache:X}=d,{isScrolling:Q,scrollDir:he,scrollOffset:ue}=i(S);if(j===0)return[0,0,0,0];const ge=s(d,ue,i(h)),ie=r(d,ge,ue,i(h)),oe=!Q||he===vd?Math.max(1,X):1,ne=!Q||he===Yr?Math.max(1,X):1;return[Math.max(0,ge-oe),Math.max(0,Math.min(j-1,ie+ne)),ge,ie]}),E=w(()=>a(d,i(h))),$=w(()=>Ki(d.layout)),O=w(()=>[{position:"relative",[`overflow-${$.value?"x":"y"}`]:"scroll",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:d.direction,height:He(d.height)?`${d.height}px`:d.height,width:He(d.width)?`${d.width}px`:d.width},d.style]),N=w(()=>{const j=i(E),X=i($);return{height:X?"100%":`${j}px`,pointerEvents:i(S).isScrolling?"none":void 0,width:X?`${j}px`:"100%",margin:0,boxSizing:"border-box"}}),R=w(()=>$.value?d.width:d.height),{onWheel:A}=nE({atStartEdge:w(()=>S.value.scrollOffset<=0),atEndEdge:w(()=>S.value.scrollOffset>=E.value),layout:w(()=>d.layout)},j=>{y.value.onMouseUp?.(),P(Math.min(S.value.scrollOffset+j,E.value-R.value))});Ft(b,"wheel",A,{passive:!1});const _=()=>{const{total:j}=d;if(j>0){const[ue,ge,ie,oe]=i(C);f(pd,ue,ge,ie,oe)}const{scrollDir:X,scrollOffset:Q,updateRequested:he}=i(S);f(hd,X,Q,he)},V=j=>{const{clientHeight:X,scrollHeight:Q,scrollTop:he}=j.currentTarget,ue=i(S);if(ue.scrollOffset===he)return;const ge=Math.max(0,Math.min(he,Q-X));S.value={...ue,isScrolling:!0,scrollDir:lr(ue.scrollOffset,ge),scrollOffset:ge,updateRequested:!1},Re(D)},H=j=>{const{clientWidth:X,scrollLeft:Q,scrollWidth:he}=j.currentTarget,ue=i(S);if(ue.scrollOffset===Q)return;const{direction:ge}=d;let ie=Q;if(ge===ol)switch(gd()){case Hi:ie=-Q;break;case Am:ie=he-X-Q;break}ie=Math.max(0,Math.min(ie,he-X)),S.value={...ue,isScrolling:!0,scrollDir:lr(ue.scrollOffset,ie),scrollOffset:ie,updateRequested:!1},Re(D)},U=j=>{i($)?H(j):V(j),_()},W=(j,X)=>{const Q=(E.value-R.value)/X*j;P(Math.min(E.value-R.value,Q))},P=j=>{j=Math.max(j,0),j!==i(S).scrollOffset&&(S.value={...i(S),scrollOffset:j,scrollDir:lr(i(S).scrollOffset,j),updateRequested:!0},Re(D))},I=(j,X=Bo)=>{const{scrollOffset:Q}=i(S);j=Math.max(0,Math.min(j,d.total-1)),P(t(d,j,X,Q,i(h)))},L=j=>{const{direction:X,itemSize:Q,layout:he}=d,ue=m.value(u&&Q,u&&he,u&&X);let ge;if(Nt(ue,String(j)))ge=ue[j];else{const ie=o(d,j,i(h)),oe=n(d,j,i(h)),ne=i($),K=X===ol,Z=ne?ie:0;ue[j]=ge={position:"absolute",left:K?void 0:`${Z}px`,right:K?`${Z}px`:void 0,top:ne?0:`${ie}px`,height:ne?"100%":`${oe}px`,width:ne?`${oe}px`:"100%"}}return ge},D=()=>{S.value.isScrolling=!1,Re(()=>{m.value(-1,null,null)})},F=()=>{const j=b.value;j&&(j.scrollTop=0)};ht(()=>{if(!Mt)return;const{initScrollOffset:j}=d,X=i(b);He(j)&&X&&(i($)?X.scrollLeft=j:X.scrollTop=j),_()}),la(()=>{const{direction:j,layout:X}=d,{scrollOffset:Q,updateRequested:he}=i(S),ue=i(b);if(he&&ue)if(X===kl)if(j===ol)switch(gd()){case Hi:ue.scrollLeft=-Q;break;case _m:ue.scrollLeft=Q;break;default:{const{clientWidth:ge,scrollWidth:ie}=ue;ue.scrollLeft=ie-ge-Q;break}}else ue.scrollLeft=Q;else ue.scrollTop=Q}),Ji(()=>{i(b).scrollTop=i(S).scrollOffset});const q={ns:p,clientSize:R,estimatedTotalSize:E,windowStyle:O,windowRef:b,innerRef:k,innerStyle:N,itemsToRender:C,scrollbarRef:y,states:S,getItemStyle:L,onScroll:U,onScrollbarScroll:W,onWheel:A,scrollTo:P,scrollToItem:I,resetScrollTop:F};return v({windowRef:b,innerRef:k,getItemStyleCache:m,scrollTo:P,scrollToItem:I,resetScrollTop:F,states:S}),q},render(d){const{$slots:f,className:v,clientSize:g,containerElement:p,data:h,getItemStyle:m,innerElement:b,itemsToRender:k,innerStyle:y,layout:S,total:C,onScroll:E,onScrollbarScroll:$,states:O,useIsScrolling:N,windowStyle:R,ns:A}=d,[_,V]=k,H=it(p),U=it(b),W=[];if(C>0)for(let D=_;D<=V;D++)W.push(Ye(Fe,{key:D},f.default?.({data:h,index:D,isScrolling:N?O.isScrolling:void 0,style:m(D)})));const P=[Ye(U,dt(d.innerProps,{style:y,ref:"innerRef"}),Le(U)?W:{default:()=>W})],I=Ye(Th,{ref:"scrollbarRef",clientSize:g,layout:S,onScroll:$,ratio:g*100/this.estimatedTotalSize,scrollFrom:O.scrollOffset/(this.estimatedTotalSize-g),total:C,alwaysOn:O.scrollbarAlwaysOn}),L=Ye(H,{class:[A.e("window"),v],style:R,onScroll:E,ref:"windowRef",key:0},Le(H)?[P]:{default:()=>[P]});return Ye("div",{key:0,class:[A.e("wrapper"),O.scrollbarAlwaysOn?"always-on":""]},[L,I])}}),aE=oE({name:"ElFixedSizeList",getItemOffset:({itemSize:e},t)=>t*e,getItemSize:({itemSize:e})=>e,getEstimatedTotalSize:({total:e,itemSize:t})=>t*e,getOffset:({height:e,total:t,itemSize:n,layout:o,width:a},s,r,l)=>{const u=Ki(o)?a:e;Le(u)&&nn("[ElVirtualList]",` + You should set + width/height + to number when your layout is + horizontal/vertical + `);const c=Math.max(0,t*n-u),d=Math.min(c,s*n),f=Math.max(0,(s+1)*n-u);switch(r===ff&&(l>=f-u&&l<=d+u?r=Bo:r=ka),r){case Vi:return d;case zi:return f;case ka:{const v=Math.round(f+(d-f)/2);return vc+Math.floor(u/2)?c:v}case Bo:default:return l>=f&&l<=d?l:lMath.max(0,Math.min(e-1,Math.floor(n/t))),getStopIndexForStartIndex:({height:e,total:t,itemSize:n,layout:o,width:a},s,r)=>{const l=s*n,u=Ki(o)?a:e,c=Math.ceil((u+r-l)/n);return Math.max(0,Math.min(t-1,s+c-1))},initCache(){},clearCache:!0,validateProps(){}}),B9="ElDynamicSizeList",Gr=(e,t,n)=>{const{itemSize:o}=e,{items:a,lastVisitedIndex:s}=n;if(t>s){let r=0;if(s>=0){const l=a[s];r=l.offset+l.size}for(let l=s+1;l<=t;l++){const u=o(l);a[l]={offset:r,size:u},r+=u}n.lastVisitedIndex=t}return a[t]},F9=(e,t,n)=>{const{items:o,lastVisitedIndex:a}=t;return(a>0?o[a].offset:0)>=n?sE(e,t,0,a,n):V9(e,t,Math.max(0,a),n)},sE=(e,t,n,o,a)=>{for(;n<=o;){const s=n+Math.floor((o-n)/2),r=Gr(e,s,t).offset;if(r===a)return s;ra&&(o=s-1)}return Math.max(0,n-1)},V9=(e,t,n,o)=>{const{total:a}=e;let s=1;for(;n{let a=0;if(o>=e&&(o=e-1),o>=0){const r=t[o];a=r.offset+r.size}const s=(e-o-1)*n;return a+s},z9=oE({name:"ElDynamicSizeList",getItemOffset:(e,t,n)=>Gr(e,t,n).offset,getItemSize:(e,t,{items:n})=>n[t].size,getEstimatedTotalSize:x0,getOffset:(e,t,n,o,a)=>{const{height:s,layout:r,width:l}=e,u=Ki(r)?l:s,c=Gr(e,t,a),d=x0(e,a),f=Math.max(0,Math.min(d-u,c.offset)),v=Math.max(0,c.offset-u+c.size);switch(n===ff&&(o>=v-u&&o<=f+u?n=Bo:n=ka),n){case Vi:return f;case zi:return v;case ka:return Math.round(v+(f-v)/2);case Bo:default:return o>=v&&o<=f?o:oF9(e,n,t),getStopIndexForStartIndex:(e,t,n,o)=>{const{height:a,total:s,layout:r,width:l}=e,u=Ki(r)?l:a,c=Gr(e,t,o),d=n+u;let f=c.offset+c.size,v=t;for(;v{n.lastVisitedIndex=Math.min(n.lastVisitedIndex,o-1),t.exposed?.getItemStyleCache(-1),a&&t.proxy?.$forceUpdate()},n},clearCache:!1,validateProps:({itemSize:e})=>{typeof e!="function"&&nn(B9,` + itemSize is required as function, but the given value was ${typeof e} + `)}}),H9=({atXEndEdge:e,atXStartEdge:t,atYEndEdge:n,atYStartEdge:o},a)=>{let s=null,r=0,l=0;const u=(d,f)=>{const v=d<0&&t.value||d>0&&e.value,g=f<0&&o.value||f>0&&n.value;return v||g};return{hasReachedEdge:u,onWheel:d=>{rs(s);let f=d.deltaX,v=d.deltaY;if(Math.abs(f)>Math.abs(v)?v=0:f=0,d.shiftKey&&v!==0&&(f=v,v=0),u(f,v)){d.deltaX!==0&&f===0&&d.preventDefault();return}r+=f,l+=v,d.preventDefault(),s=ta(()=>{a(r,l),r=0,l=0})}}},K9=(e,t,n,o,a,s,r)=>{const l=M(0),u=M(0);let c,d=0,f=0;const v=p=>{rs(c),l.value=p.touches[0].clientX,u.value=p.touches[0].clientY,d=0,f=0},g=p=>{p.preventDefault(),rs(c),d+=l.value-p.touches[0].clientX,f+=u.value-p.touches[0].clientY,l.value=p.touches[0].clientX,u.value=p.touches[0].clientY,c=ta(()=>{const h=o.value-i(s),m=a.value-i(r);n({scrollLeft:Math.min(t.value.scrollLeft+d,h),scrollTop:Math.min(t.value.scrollTop+f,m)}),d=0,f=0})};return Ft(e,"touchstart",v,{passive:!0}),Ft(e,"touchmove",g,{passive:!1}),{touchStartX:l,touchStartY:u,handleTouchStart:v,handleTouchMove:g}},rE=({name:e,clearCache:t,getColumnPosition:n,getColumnStartIndexForOffset:o,getColumnStopIndexForStartIndex:a,getEstimatedTotalHeight:s,getEstimatedTotalWidth:r,getColumnOffset:l,getRowOffset:u,getRowPosition:c,getRowStartIndexForOffset:d,getRowStopIndexForStartIndex:f,initCache:v,injectToInstance:g,validateProps:p})=>se({name:e??"ElVirtualList",props:hr,emits:[pd,hd],setup(h,{emit:m,expose:b,slots:k}){const y=fe("vl");p(h);const S=ft(),C=M(v(h,S));g?.(S,C);const E=M(),$=M(),O=M(),N=M(),R=M({isScrolling:!1,scrollLeft:He(h.initScrollLeft)?h.initScrollLeft:0,scrollTop:He(h.initScrollTop)?h.initScrollTop:0,updateRequested:!1,xAxisScrollDir:Yr,yAxisScrollDir:Yr}),A=tE(),_=w(()=>Number.parseInt(`${h.height}`,10)),V=w(()=>Number.parseInt(`${h.width}`,10)),H=w(()=>{const{totalColumn:pe,totalRow:Ee,columnCache:me}=h,{isScrolling:Me,xAxisScrollDir:We,scrollLeft:Ze}=i(R);if(pe===0||Ee===0)return[0,0,0,0];const Pe=o(h,Ze,i(C)),Ae=a(h,Pe,Ze,i(C)),je=!Me||We===vd?Math.max(1,me):1,Rt=!Me||We===Yr?Math.max(1,me):1;return[Math.max(0,Pe-je),Math.max(0,Math.min(pe-1,Ae+Rt)),Pe,Ae]}),U=w(()=>{const{totalColumn:pe,totalRow:Ee,rowCache:me}=h,{isScrolling:Me,yAxisScrollDir:We,scrollTop:Ze}=i(R);if(pe===0||Ee===0)return[0,0,0,0];const Pe=d(h,Ze,i(C)),Ae=f(h,Pe,Ze,i(C)),je=!Me||We===vd?Math.max(1,me):1,Rt=!Me||We===Yr?Math.max(1,me):1;return[Math.max(0,Pe-je),Math.max(0,Math.min(Ee-1,Ae+Rt)),Pe,Ae]}),W=w(()=>s(h,i(C))),P=w(()=>r(h,i(C))),I=w(()=>[{position:"relative",overflow:"hidden",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:h.direction,height:He(h.height)?`${h.height}px`:h.height,width:He(h.width)?`${h.width}px`:h.width},h.style??{}]),L=w(()=>{const pe=`${i(P)}px`;return{height:`${i(W)}px`,pointerEvents:i(R).isScrolling?"none":void 0,width:pe,margin:0,boxSizing:"border-box"}}),D=()=>{const{totalColumn:pe,totalRow:Ee}=h;if(pe>0&&Ee>0){const[Ae,je,Rt,Ue]=i(H),[lt,mt,kt,be]=i(U);m(pd,{columnCacheStart:Ae,columnCacheEnd:je,rowCacheStart:lt,rowCacheEnd:mt,columnVisibleStart:Rt,columnVisibleEnd:Ue,rowVisibleStart:kt,rowVisibleEnd:be})}const{scrollLeft:me,scrollTop:Me,updateRequested:We,xAxisScrollDir:Ze,yAxisScrollDir:Pe}=i(R);m(hd,{xAxisScrollDir:Ze,scrollLeft:me,yAxisScrollDir:Pe,scrollTop:Me,updateRequested:We})},F=pe=>{const{clientHeight:Ee,clientWidth:me,scrollHeight:Me,scrollLeft:We,scrollTop:Ze,scrollWidth:Pe}=pe.currentTarget,Ae=i(R);if(Ae.scrollTop===Ze&&Ae.scrollLeft===We)return;let je=We;if(k0(h.direction))switch(gd()){case Hi:je=-We;break;case Am:je=Pe-me-We;break}R.value={...Ae,isScrolling:!0,scrollLeft:je,scrollTop:Math.max(0,Math.min(Ze,Me-Ee)),updateRequested:!0,xAxisScrollDir:lr(Ae.scrollLeft,je),yAxisScrollDir:lr(Ae.scrollTop,Ze)},Re(()=>K()),Z(),D()},q=(pe,Ee)=>{const me=i(_),Me=(W.value-me)/Ee*pe;Q({scrollTop:Math.min(W.value-me,Me)})},j=(pe,Ee)=>{const me=i(V),Me=(P.value-me)/Ee*pe;Q({scrollLeft:Math.min(P.value-me,Me)})},{onWheel:X}=H9({atXStartEdge:w(()=>R.value.scrollLeft<=0),atXEndEdge:w(()=>R.value.scrollLeft>=P.value-i(V)),atYStartEdge:w(()=>R.value.scrollTop<=0),atYEndEdge:w(()=>R.value.scrollTop>=W.value-i(_))},(pe,Ee)=>{$.value?.onMouseUp?.(),O.value?.onMouseUp?.();const me=i(V),Me=i(_);Q({scrollLeft:Math.min(R.value.scrollLeft+pe,P.value-me),scrollTop:Math.min(R.value.scrollTop+Ee,W.value-Me)})});Ft(E,"wheel",X,{passive:!1});const Q=({scrollLeft:pe=R.value.scrollLeft,scrollTop:Ee=R.value.scrollTop})=>{pe=Math.max(pe,0),Ee=Math.max(Ee,0);const me=i(R);Ee===me.scrollTop&&pe===me.scrollLeft||(R.value={...me,xAxisScrollDir:lr(me.scrollLeft,pe),yAxisScrollDir:lr(me.scrollTop,Ee),scrollLeft:pe,scrollTop:Ee,updateRequested:!0},Re(()=>K()),Z(),D())},{touchStartX:he,touchStartY:ue,handleTouchStart:ge,handleTouchMove:ie}=K9(E,R,Q,P,W,V,_),oe=(pe=0,Ee=0,me=Bo)=>{const Me=i(R);Ee=Math.max(0,Math.min(Ee,h.totalColumn-1)),pe=Math.max(0,Math.min(pe,h.totalRow-1));const We=oC(y.namespace.value),Ze=i(C),Pe=s(h,Ze),Ae=r(h,Ze);Q({scrollLeft:l(h,Ee,me,Me.scrollLeft,Ze,Ae>h.width?We:0),scrollTop:u(h,pe,me,Me.scrollTop,Ze,Pe>h.height?We:0)})},ne=(pe,Ee)=>{const{columnWidth:me,direction:Me,rowHeight:We}=h,Ze=A.value(t&&me,t&&We,t&&Me),Pe=`${pe},${Ee}`;if(Nt(Ze,Pe))return Ze[Pe];{const[,Ae]=n(h,Ee,i(C)),je=i(C),Rt=k0(Me),[Ue,lt]=c(h,pe,je),[mt]=n(h,Ee,je);return Ze[Pe]={position:"absolute",left:Rt?void 0:`${Ae}px`,right:Rt?`${Ae}px`:void 0,top:`${lt}px`,height:`${Ue}px`,width:`${mt}px`},Ze[Pe]}},K=()=>{R.value.isScrolling=!1,Re(()=>{A.value(-1,null,null)})};ht(()=>{if(!Mt)return;const{initScrollLeft:pe,initScrollTop:Ee}=h,me=i(E);me&&(He(pe)&&(me.scrollLeft=pe),He(Ee)&&(me.scrollTop=Ee)),D()});const Z=()=>{const{direction:pe}=h,{scrollLeft:Ee,scrollTop:me,updateRequested:Me}=i(R),We=i(E);if(Me&&We){if(pe===ol)switch(gd()){case Hi:We.scrollLeft=-Ee;break;case _m:We.scrollLeft=Ee;break;default:{const{clientWidth:Ze,scrollWidth:Pe}=We;We.scrollLeft=Pe-Ze-Ee;break}}else We.scrollLeft=Math.max(0,Ee);We.scrollTop=Math.max(0,me)}},{resetAfterColumnIndex:re,resetAfterRowIndex:ce,resetAfter:ve}=S.proxy;b({windowRef:E,innerRef:N,getItemStyleCache:A,touchStartX:he,touchStartY:ue,handleTouchStart:ge,handleTouchMove:ie,scrollTo:Q,scrollToItem:oe,states:R,resetAfterColumnIndex:re,resetAfterRowIndex:ce,resetAfter:ve});const ke=()=>{const{scrollbarAlwaysOn:pe,scrollbarStartGap:Ee,scrollbarEndGap:me,totalColumn:Me,totalRow:We}=h,Ze=i(V),Pe=i(_),Ae=i(P),je=i(W),{scrollLeft:Rt,scrollTop:Ue}=i(R);return{horizontalScrollbar:Ye(Th,{ref:$,alwaysOn:pe,startGap:Ee,endGap:me,class:y.e("horizontal"),clientSize:Ze,layout:"horizontal",onScroll:j,ratio:Ze*100/Ae,scrollFrom:Rt/(Ae-Ze),total:We,visible:!0}),verticalScrollbar:Ye(Th,{ref:O,alwaysOn:pe,startGap:Ee,endGap:me,class:y.e("vertical"),clientSize:Pe,layout:"vertical",onScroll:q,ratio:Pe*100/je,scrollFrom:Ue/(je-Pe),total:Me,visible:!0})}},Ne=()=>{const[pe,Ee]=i(H),[me,Me]=i(U),{data:We,totalColumn:Ze,totalRow:Pe,useIsScrolling:Ae,itemKey:je}=h,Rt=[];if(Pe>0&&Ze>0)for(let Ue=me;Ue<=Me;Ue++)for(let lt=pe;lt<=Ee;lt++){const mt=je({columnIndex:lt,data:We,rowIndex:Ue});Rt.push(Ye(Fe,{key:mt},k.default?.({columnIndex:lt,data:We,isScrolling:Ae?i(R).isScrolling:void 0,style:ne(Ue,lt),rowIndex:Ue})))}return Rt},Ie=()=>{const pe=it(h.innerElement),Ee=Ne();return[Ye(pe,dt(h.innerProps,{style:i(L),ref:N}),Le(pe)?Ee:{default:()=>Ee})]};return()=>{const pe=it(h.containerElement),{horizontalScrollbar:Ee,verticalScrollbar:me}=ke(),Me=Ie();return Ye("div",{key:0,class:y.e("wrapper"),role:h.role},[Ye(pe,{class:h.className,style:i(I),onScroll:F,ref:E},Le(pe)?Me:{default:()=>Me}),Ee,me])}}}),T0="ElFixedSizeGrid",W9=rE({name:"ElFixedSizeGrid",getColumnPosition:({columnWidth:e},t)=>[e,t*e],getRowPosition:({rowHeight:e},t)=>[e,t*e],getEstimatedTotalHeight:({totalRow:e,rowHeight:t})=>t*e,getEstimatedTotalWidth:({totalColumn:e,columnWidth:t})=>t*e,getColumnOffset:({totalColumn:e,columnWidth:t,width:n},o,a,s,r,l)=>{n=Number(n);const u=Math.max(0,e*t-n),c=Math.min(u,o*t),d=Math.max(0,o*t-n+l+t);switch(a==="smart"&&(s>=d-n&&s<=c+n?a=Bo:a=ka),a){case Vi:return c;case zi:return d;case ka:{const f=Math.round(d+(c-d)/2);return fu+Math.floor(n/2)?u:f}case Bo:default:return s>=d&&s<=c?s:d>c||s{t=Number(t);const u=Math.max(0,n*e-t),c=Math.min(u,o*e),d=Math.max(0,o*e-t+l+e);switch(a===ff&&(s>=d-t&&s<=c+t?a=Bo:a=ka),a){case Vi:return c;case zi:return d;case ka:{const f=Math.round(d+(c-d)/2);return fu+Math.floor(t/2)?u:f}case Bo:default:return s>=d&&s<=c?s:d>c||sMath.max(0,Math.min(t-1,Math.floor(n/e))),getColumnStopIndexForStartIndex:({columnWidth:e,totalColumn:t,width:n},o,a)=>{const s=o*e,r=Math.ceil((n+a-s)/e);return Math.max(0,Math.min(t-1,o+r-1))},getRowStartIndexForOffset:({rowHeight:e,totalRow:t},n)=>Math.max(0,Math.min(t-1,Math.floor(n/e))),getRowStopIndexForStartIndex:({rowHeight:e,totalRow:t,height:n},o,a)=>{const s=o*e,r=Math.ceil((n+a-s)/e);return Math.max(0,Math.min(t-1,o+r-1))},initCache:()=>{},clearCache:!0,validateProps:({columnWidth:e,rowHeight:t})=>{He(e)||nn(T0,` + "columnWidth" must be passed as number, + instead ${typeof e} was given. + `),He(t)||nn(T0,` + "columnWidth" must be passed as number, + instead ${typeof t} was given. + `)}}),{max:bd,min:lE,floor:iE}=Math,$0="ElDynamicSizeGrid",j9={column:"columnWidth",row:"rowHeight"},$h={column:"lastVisitedColumnIndex",row:"lastVisitedRowIndex"},ja=(e,t,n,o)=>{const[a,s,r]=[n[o],e[j9[o]],n[$h[o]]];if(t>r){let l=0;if(r>=0){const u=a[r];l=u.offset+u.size}for(let u=r+1;u<=t;u++){const c=s(u);a[u]={offset:l,size:c},l+=c}n[$h[o]]=t}return a[t]},uE=(e,t,n,o,a,s)=>{for(;n<=o;){const r=n+iE((o-n)/2),l=ja(e,r,t,s).offset;if(l===a)return r;l{const s=a==="column"?e.totalColumn:e.totalRow;let r=1;for(;n{const[a,s]=[t[o],t[$h[o]]];return(s>0?a[s].offset:0)>=n?uE(e,t,0,s,n,o):U9(e,t,bd(0,s),n,o)},cE=({totalRow:e},{estimatedRowHeight:t,lastVisitedRowIndex:n,row:o})=>{let a=0;if(n>=e&&(n=e-1),n>=0){const r=o[n];a=r.offset+r.size}const s=(e-n-1)*t;return a+s},dE=({totalColumn:e},{column:t,estimatedColumnWidth:n,lastVisitedColumnIndex:o})=>{let a=0;if(o>e&&(o=e-1),o>=0){const r=t[o];a=r.offset+r.size}const s=(e-o-1)*n;return a+s},q9={column:dE,row:cE},R0=(e,t,n,o,a,s,r)=>{const[l,u]=[s==="row"?e.height:e.width,q9[s]],c=ja(e,t,a,s),d=bd(0,lE(u(e,a)-l,c.offset)),f=bd(0,c.offset-l+r+c.size);switch(n===ff&&(o>=f-l&&o<=d+l?n=Bo:n=ka),n){case Vi:return d;case zi:return f;case ka:return Math.round(f+(d-f)/2);case Bo:default:return o>=f&&o<=d?o:f>d||o{const o=ja(e,t,n,"column");return[o.size,o.offset]},getRowPosition:(e,t,n)=>{const o=ja(e,t,n,"row");return[o.size,o.offset]},getColumnOffset:(e,t,n,o,a,s)=>R0(e,t,n,o,a,"column",s),getRowOffset:(e,t,n,o,a,s)=>R0(e,t,n,o,a,"row",s),getColumnStartIndexForOffset:(e,t,n)=>O0(e,n,t,"column"),getColumnStopIndexForStartIndex:(e,t,n,o)=>{const a=ja(e,t,o,"column"),s=n+e.width;let r=a.offset+a.size,l=t;for(;lO0(e,n,t,"row"),getRowStopIndexForStartIndex:(e,t,n,o)=>{const{totalRow:a,height:s}=e,r=ja(e,t,o,"row"),l=n+s;let u=r.size+r.offset,c=t;for(;c{const n=({columnIndex:s,rowIndex:r},l)=>{l=Tt(l)?!0:l,He(s)&&(t.value.lastVisitedColumnIndex=Math.min(t.value.lastVisitedColumnIndex,s-1)),He(r)&&(t.value.lastVisitedRowIndex=Math.min(t.value.lastVisitedRowIndex,r-1)),e.exposed?.getItemStyleCache.value(-1,null,null),l&&e.proxy?.$forceUpdate()},o=(s,r)=>{n({columnIndex:s},r)},a=(s,r)=>{n({rowIndex:s},r)};Object.assign(e.proxy,{resetAfterColumnIndex:o,resetAfterRowIndex:a,resetAfter:n})},initCache:({estimatedColumnWidth:e=wh,estimatedRowHeight:t=wh})=>({column:{},estimatedColumnWidth:e,estimatedRowHeight:t,lastVisitedColumnIndex:-1,lastVisitedRowIndex:-1,row:{}}),clearCache:!1,validateProps:({columnWidth:e,rowHeight:t})=>{Ve(e)||nn($0,` + "columnWidth" must be passed as function, + instead ${typeof e} was given. + `),Ve(t)||nn($0,` + "rowHeight" must be passed as function, + instead ${typeof t} was given. + `)}}),Lm=Symbol("ElSelectV2Injection"),G9=Ce({allowCreate:Boolean,autocomplete:{type:G(String),default:"none"},automaticDropdown:Boolean,clearable:Boolean,clearIcon:{type:Kt,default:Va},effect:{type:G(String),default:"light"},collapseTags:Boolean,collapseTagsTooltip:Boolean,tagTooltip:{type:G(Object),default:()=>({})},maxCollapseTags:{type:Number,default:1},defaultFirstOption:Boolean,disabled:{type:Boolean,default:void 0},estimatedOptionHeight:{type:Number,default:void 0},filterable:Boolean,filterMethod:{type:G(Function)},height:{type:Number,default:274},itemHeight:{type:Number,default:34},id:String,loading:Boolean,loadingText:String,modelValue:{type:G([Array,String,Number,Boolean,Object]),default:void 0},multiple:Boolean,multipleLimit:{type:Number,default:0},name:String,noDataText:String,noMatchText:String,remoteMethod:{type:G(Function)},reserveKeyword:{type:Boolean,default:!0},options:{type:G(Array),required:!0},placeholder:{type:String},teleported:zt.teleported,persistent:{type:Boolean,default:!0},popperClass:zt.popperClass,popperStyle:zt.popperStyle,popperOptions:{type:G(Object),default:()=>({})},remote:Boolean,debounce:{type:Number,default:300},size:Tn,props:{type:G(Object),default:()=>rd},valueKey:{type:String,default:"value"},scrollbarAlwaysOn:Boolean,validateEvent:{type:Boolean,default:!0},offset:{type:Number,default:12},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},placement:{type:G(String),values:Da,default:"bottom-start"},fallbackPlacements:{type:G(Array),default:["bottom-start","top-start","right","left"]},tagType:{...us.type,default:"info"},tagEffect:{...us.effect,default:"light"},tabindex:{type:[String,Number],default:0},appendTo:zt.appendTo,fitInputWidth:{type:[Boolean,Number],default:!0,validator(e){return Ht(e)||He(e)}},suffixIcon:{type:Kt,default:Fa},...Pr,...oo(["ariaLabel"])}),X9=Ce({data:Array,disabled:Boolean,hovering:Boolean,item:{type:G(Object),required:!0},index:Number,style:Object,selected:Boolean,created:Boolean}),J9={[ot]:e=>!0,[bt]:e=>!0,"remove-tag":e=>!0,"visible-change":e=>!0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},Z9={hover:e=>He(e),select:(e,t)=>!0};var Q9=se({props:{item:{type:Object,required:!0},style:{type:Object},height:Number},setup(){return{ns:fe("select")}}});function e7(e,t,n,o,a,s){return x(),B("div",{class:T(e.ns.be("group","title")),style:Ke({...e.style,lineHeight:`${e.height}px`})},Se(e.item.label),7)}var t7=$n(Q9,[["render",e7]]);function n7(e,{emit:t}){return{hoverItem:()=>{e.disabled||t("hover",e.index)},selectOptionClick:()=>{e.disabled||t("select",e.item,e.index)}}}var o7=se({props:X9,emits:Z9,setup(e,{emit:t}){const n=_e(Lm),o=fe("select"),{hoverItem:a,selectOptionClick:s}=n7(e,{emit:t}),{getLabel:r}=Su(n.props);return{ns:o,contentId:n.contentId,hoverItem:a,selectOptionClick:s,getLabel:r}}});const a7=["id","aria-selected","aria-disabled"];function s7(e,t,n,o,a,s){return x(),B("li",{id:`${e.contentId}-${e.index}`,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled||void 0,style:Ke(e.style),class:T([e.ns.be("dropdown","item"),e.ns.is("selected",e.selected),e.ns.is("disabled",e.disabled),e.ns.is("created",e.created),e.ns.is("hovering",e.hovering)]),onMousemove:t[0]||(t[0]=(...r)=>e.hoverItem&&e.hoverItem(...r)),onClick:t[1]||(t[1]=Xe((...r)=>e.selectOptionClick&&e.selectOptionClick(...r),["stop"]))},[ee(e.$slots,"default",{item:e.item,index:e.index,disabled:e.disabled},()=>[z("span",null,Se(e.getLabel(e.item)),1)])],46,a7)}var r7=$n(o7,[["render",s7]]);const l7={loading:Boolean,data:{type:Array,required:!0},hoveringIndex:Number,width:Number,id:String,ariaLabel:String};var i7=se({name:"ElSelectDropdown",props:l7,setup(e,{slots:t,expose:n}){const o=_e(Lm),a=fe("select"),{getLabel:s,getValue:r,getDisabled:l}=Su(o.props),u=M([]),c=M(),d=w(()=>e.data.length);le(()=>d.value,()=>{o.tooltipRef.value?.updatePopper?.()});const f=w(()=>Tt(o.props.estimatedOptionHeight)),v=w(()=>f.value?{itemSize:o.props.itemHeight}:{estimatedSize:o.props.estimatedOptionHeight,itemSize:R=>u.value[R]}),g=(R=[],A)=>{const{props:{valueKey:_}}=o;return at(A)?R&&R.some(V=>qt(wn(V,_))===wn(A,_)):R.includes(A)},p=(R,A)=>{if(at(A)){const{valueKey:_}=o.props;return wn(R,_)===wn(A,_)}else return R===A},h=(R,A)=>o.props.multiple?g(R,r(A)):p(R,r(A)),m=(R,A)=>{const{disabled:_,multiple:V,multipleLimit:H}=o.props;return _||!A&&(V?H>0&&R.length>=H:!1)},b=R=>e.hoveringIndex===R;n({listRef:c,isSized:f,isItemDisabled:m,isItemHovering:b,isItemSelected:h,scrollToItem:R=>{const A=c.value;A&&A.scrollToItem(R)},resetScrollTop:()=>{const R=c.value;R&&R.resetScrollTop()}});const S=R=>{const{index:A,data:_,style:V}=R,H=i(f),{itemSize:U,estimatedSize:W}=i(v),{modelValue:P}=o.props,{onSelect:I,onHover:L}=o,D=_[A];if(D.type==="Group")return Y(t7,{item:D,style:V,height:H?U:W},null);const F=h(P,D),q=m(P,F),j=b(A);return Y(r7,dt(R,{selected:F,disabled:l(D)||q,created:!!D.created,hovering:j,item:D,onSelect:I,onHover:L}),{default:X=>t.default?.(X)||Y("span",null,[s(D)])})},{onKeyboardNavigate:C,onKeyboardSelect:E}=o,$=()=>{C("forward")},O=()=>{C("backward")},N=R=>{const A=jt(R),{tab:_,esc:V,down:H,up:U,enter:W,numpadEnter:P}=we;switch([V,H,U,W,P].includes(A)&&(R.preventDefault(),R.stopPropagation()),A){case _:case V:break;case H:$();break;case U:O();break;case W:case P:E();break}};return()=>{const{data:R,width:A}=e,{height:_,multiple:V,scrollbarAlwaysOn:H}=o.props,U=w(()=>Zc?!0:H),W=i(f)?aE:z9;return Y("div",{class:[a.b("dropdown"),a.is("multiple",V)],style:{width:`${A}px`}},[t.header?.(),t.loading?.()||t.empty?.()||Y(W,dt({ref:c},i(v),{className:a.be("dropdown","list"),scrollbarAlwaysOn:U.value,data:R,height:_,width:A,total:R.length,innerElement:"ul",innerProps:{id:e.id,role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical"},onKeydown:N}),{default:P=>Y(S,P,null)}),t.footer?.()])}}});function u7(e,t){const{aliasProps:n,getLabel:o,getValue:a}=Su(e),s=M(0),r=M(),l=w(()=>e.allowCreate&&e.filterable);le(()=>e.options,g=>{const p=new Set(g.map(h=>o(h)));t.createdOptions=t.createdOptions.filter(h=>!p.has(o(h)))});function u(g){const p=h=>o(h)===g;return e.options&&e.options.some(p)||t.createdOptions.some(p)}function c(g){l.value&&(e.multiple&&g.created?s.value++:r.value=g)}function d(g){if(l.value)if(g&&g.length>0){if(u(g)){t.createdOptions=t.createdOptions.filter(h=>o(h)!==t.previousQuery);return}const p={[n.value.value]:g,[n.value.label]:g,created:!0,[n.value.disabled]:!1};t.createdOptions.length>=s.value?t.createdOptions[s.value]=p:t.createdOptions.push(p)}else if(e.multiple)t.createdOptions.length=s.value;else{const p=r.value;t.createdOptions.length=0,p&&p.created&&t.createdOptions.push(p)}}function f(g){if(!l.value||!g||!g.created||g.created&&e.reserveKeyword&&t.inputValue===o(g))return;const p=t.createdOptions.findIndex(h=>a(h)===a(g));~p&&(t.createdOptions.splice(p,1),s.value--)}function v(){l.value&&(t.createdOptions.length=0,s.value=0)}return{createNewOption:d,removeNewOption:f,selectNewOption:c,clearAllNewOption:v}}const c7=(e,t)=>{const{t:n}=Ct(),o=vn(),a=fe("select"),s=fe("input"),{form:r,formItem:l}=Dn(),{inputId:u}=Po(e,{formItemContext:l}),{aliasProps:c,getLabel:d,getValue:f,getDisabled:v,getOptions:g}=Su(e),{valueOnClear:p,isEmptyValue:h}=mu(e),m=At({inputValue:"",cachedOptions:[],createdOptions:[],hoveringIndex:-1,inputHovering:!1,selectionWidth:0,collapseItemWidth:0,previousQuery:null,previousValue:void 0,selectedLabel:"",menuVisibleOnFocus:!1,isBeforeHide:!1}),b=M(-1),k=M(!1),y=M(),S=M(),C=M(),E=M(),$=M(),O=M(),N=M(),R=M(),A=M(),_=M(),{isComposing:V,handleCompositionStart:H,handleCompositionEnd:U,handleCompositionUpdate:W}=vu({afterComposition:Oe=>Yt(Oe)}),P=un(),{wrapperRef:I,isFocused:L,handleBlur:D}=ms($,{disabled:P,afterFocus(){e.automaticDropdown&&!X.value&&(X.value=!0,m.menuVisibleOnFocus=!0)},beforeBlur(Oe){return C.value?.isFocusInsideContent(Oe)||E.value?.isFocusInsideContent(Oe)},afterBlur(){X.value=!1,m.menuVisibleOnFocus=!1,e.validateEvent&&l?.validate?.("blur").catch(Oe=>pt(Oe))}}),F=w(()=>Ne("")),q=w(()=>e.loading?!1:e.options.length>0||m.createdOptions.length>0),j=M([]),X=M(!1),Q=w(()=>r?.statusIcon??!1),he=w(()=>{const Oe=j.value.length*e.itemHeight;return Oe>e.height?e.height:Oe}),ue=w(()=>e.multiple?ye(e.modelValue)&&e.modelValue.length>0:!h(e.modelValue)),ge=w(()=>e.clearable&&!P.value&&ue.value&&(L.value||m.inputHovering)),ie=w(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),oe=w(()=>ie.value&&a.is("reverse",X.value)),ne=w(()=>l?.validateState||""),K=w(()=>{if(ne.value)return af[ne.value]}),Z=w(()=>e.remote?e.debounce:0),re=w(()=>e.remote&&!m.inputValue&&!q.value),ce=w(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&m.inputValue&&q.value&&j.value.length===0?e.noMatchText||n("el.select.noMatch"):q.value?null:e.noDataText||n("el.select.noData")),ve=w(()=>e.filterable&&Ve(e.filterMethod)),ke=w(()=>e.filterable&&e.remote&&Ve(e.remoteMethod)),Ne=Oe=>{const Ot=new RegExp(Bv(Oe),"i"),Et=xt=>ve.value||ke.value?!0:Oe?Ot.test(d(xt)||""):!0;return e.loading?[]:[...m.createdOptions,...e.options].reduce((xt,Bn)=>{const Co=g(Bn);if(ye(Co)){const Mu=Co.filter(Et);Mu.length>0&&xt.push({label:d(Bn),type:"Group"},...Mu)}else(e.remote||Et(Bn))&&xt.push(Bn);return xt},[])},Ie=()=>{j.value=Ne(m.inputValue)},$e=w(()=>{const Oe=new Map;return F.value.forEach((Ot,Et)=>{Oe.set(tt(f(Ot)),{option:Ot,index:Et})}),Oe}),pe=w(()=>{const Oe=new Map;return j.value.forEach((Ot,Et)=>{Oe.set(tt(f(Ot)),{option:Ot,index:Et})}),Oe}),Ee=w(()=>j.value.every(Oe=>v(Oe))),me=Cn(),Me=w(()=>me.value==="small"?"small":"default"),We=()=>{if(He(e.fitInputWidth)){b.value=e.fitInputWidth;return}const Oe=y.value?.offsetWidth||200;!e.fitInputWidth&&q.value?Re(()=>{b.value=Math.max(Oe,Ze())}):b.value=Oe},Ze=()=>{const Oe=document.createElement("canvas").getContext("2d"),Ot=a.be("dropdown","item"),Et=(R.value?.listRef?.innerRef||document).querySelector(`.${Ot}`);if(Et===null||Oe===null)return 0;const xt=getComputedStyle(Et),Bn=Number.parseFloat(xt.paddingLeft)+Number.parseFloat(xt.paddingRight);return Oe.font=`bold ${xt.font.replace(new RegExp(`\\b${xt.fontWeight}\\b`),"")}`,j.value.reduce((Co,Mu)=>{const Ux=Oe.measureText(d(Mu));return Math.max(Ux.width,Co)},0)+Bn},Pe=()=>{if(!S.value)return 0;const Oe=window.getComputedStyle(S.value);return Number.parseFloat(Oe.gap||"6px")},Ae=w(()=>{const Oe=Pe(),Ot=e.filterable?Oe+Dd:0;return{maxWidth:`${_.value&&e.maxCollapseTags===1?m.selectionWidth-m.collapseItemWidth-Oe-Ot:m.selectionWidth-Ot}px`}}),je=w(()=>({maxWidth:`${m.selectionWidth}px`})),Rt=w(()=>ye(e.modelValue)?e.modelValue.length===0&&!m.inputValue:e.filterable?!m.inputValue:!0),Ue=w(()=>{const Oe=e.placeholder??n("el.select.placeholder");return e.multiple||!ue.value?Oe:m.selectedLabel}),lt=w(()=>C.value?.popperRef?.contentRef),mt=w(()=>{if(e.multiple){const Oe=e.modelValue.length;if(Oe>0&&pe.value.has(e.modelValue[Oe-1])){const{index:Ot}=pe.value.get(e.modelValue[Oe-1]);return Ot}}else if(!h(e.modelValue)&&pe.value.has(e.modelValue)){const{index:Oe}=pe.value.get(e.modelValue);return Oe}return-1}),kt=w({get(){return X.value&&(e.loading||!re.value||e.remote&&!!o.empty)&&(!k.value||!io(m.previousQuery))},set(Oe){X.value=Oe}}),be=w(()=>e.multiple?e.collapseTags?m.cachedOptions.slice(0,e.maxCollapseTags):m.cachedOptions:[]),ze=w(()=>e.multiple?e.collapseTags?m.cachedOptions.slice(e.maxCollapseTags):[]:[]),{createNewOption:de,removeNewOption:Ge,selectNewOption:$t,clearAllNewOption:tn}=u7(e,m),_n=Oe=>{P.value||e.filterable&&X.value&&Oe&&!N.value?.contains(Oe.target)||(m.menuVisibleOnFocus?m.menuVisibleOnFocus=!1:X.value=!X.value)},Be=()=>{m.inputValue.length>0&&!X.value&&(X.value=!0),de(m.inputValue),Re(()=>{ct(m.inputValue)})},nt=ru(()=>{Be(),k.value=!1},Z),ct=Oe=>{m.previousQuery===Oe||V.value||(m.previousQuery=Oe,e.filterable&&Ve(e.filterMethod)?e.filterMethod(Oe):e.filterable&&e.remote&&Ve(e.remoteMethod)&&e.remoteMethod(Oe),e.defaultFirstOption&&(e.filterable||e.remote)&&j.value.length?Re(kn):Re(Lt))},kn=()=>{const Oe=j.value.filter(xt=>!xt.disabled&&xt.type!=="Group"),Ot=Oe.find(xt=>xt.created),Et=Oe[0];m.hoveringIndex=Qe(j.value,Ot||Et)},Wt=Oe=>{sn(e.modelValue,Oe)||t(bt,Oe)},yn=Oe=>{t(ot,Oe),Wt(Oe),m.previousValue=e.multiple?String(Oe):Oe,Re(()=>{if(e.multiple&&ye(e.modelValue)){const Ot=m.cachedOptions.slice(),Et=e.modelValue.map(xt=>pg(xt,Ot));sn(m.cachedOptions,Et)||(m.cachedOptions=Et)}else Pu(!0)})},Qe=(Oe=[],Ot)=>{if(!at(Ot))return Oe.indexOf(Ot);const Et=e.valueKey;let xt=-1;return Oe.some((Bn,Co)=>wn(Bn,Et)===wn(Ot,Et)?(xt=Co,!0):!1),xt},tt=Oe=>at(Oe)?wn(Oe,e.valueKey):Oe,gt=()=>{We()},ao=()=>{m.selectionWidth=Number.parseFloat(window.getComputedStyle(S.value).width)},ha=()=>{m.collapseItemWidth=_.value.getBoundingClientRect().width},jo=()=>{C.value?.updatePopper?.()},Nu=()=>{E.value?.updatePopper?.()},js=Oe=>{const Ot=f(Oe);if(e.multiple){let Et=e.modelValue.slice();const xt=Qe(Et,Ot);xt>-1?(Et=[...Et.slice(0,xt),...Et.slice(xt+1)],m.cachedOptions.splice(xt,1),Ge(Oe)):(e.multipleLimit<=0||Et.length{let Et=e.modelValue.slice();const xt=Qe(Et,f(Ot));xt>-1&&!P.value&&(Et=[...e.modelValue.slice(0,xt),...e.modelValue.slice(xt+1)],m.cachedOptions.splice(xt,1),yn(Et),t("remove-tag",f(Ot)),Ge(Ot)),Oe.stopPropagation(),za()},za=()=>{$.value?.focus()},Cf=()=>{if(X.value){X.value=!1,Re(()=>$.value?.blur());return}$.value?.blur()},kf=()=>{m.inputValue.length>0?m.inputValue="":X.value=!1},Ef=Oe=>AS(Oe,Ot=>!m.cachedOptions.some(Et=>f(Et)===Ot&&v(Et))),xf=Oe=>{const Ot=jt(Oe);if(e.multiple&&Ot!==we.delete&&m.inputValue.length===0){Oe.preventDefault();const Et=e.modelValue.slice(),xt=Ef(Et);if(xt<0)return;const Bn=Et[xt];Et.splice(xt,1);const Co=m.cachedOptions[xt];m.cachedOptions.splice(xt,1),Ge(Co),yn(Et),t("remove-tag",Bn)}},Tf=()=>{let Oe;ye(e.modelValue)?Oe=[]:Oe=p.value,m.selectedLabel="",X.value=!1,yn(Oe),t("clear"),tn(),za()},_r=(Oe,Ot=void 0)=>{const Et=j.value;if(!["forward","backward"].includes(Oe)||P.value||Et.length<=0||Ee.value||V.value)return;if(!X.value)return _n();Tt(Ot)&&(Ot=m.hoveringIndex);let xt=-1;Oe==="forward"?(xt=Ot+1,xt>=Et.length&&(xt=0)):Oe==="backward"&&(xt=Ot-1,(xt<0||xt>=Et.length)&&(xt=Et.length-1));const Bn=Et[xt];if(v(Bn)||Bn.type==="Group")return _r(Oe,xt);m.hoveringIndex=xt,Ar(xt)},Te=()=>{if(X.value)~m.hoveringIndex&&j.value[m.hoveringIndex]&&js(j.value[m.hoveringIndex]);else return _n()},vt=Oe=>{m.hoveringIndex=Oe??-1},Lt=()=>{if(!e.multiple)m.hoveringIndex=j.value.findIndex(Oe=>tt(f(Oe))===tt(e.modelValue));else{const Oe=e.modelValue.length;if(Oe>0){const Ot=e.modelValue[Oe-1];m.hoveringIndex=j.value.findIndex(Et=>tt(Ot)===tt(f(Et)))}else m.hoveringIndex=-1}},Yt=Oe=>{if(m.inputValue=Oe.target.value,e.remote)k.value=!0,nt();else return Be()},En=Oe=>{X.value=!1,L.value&&D(new FocusEvent("blur",Oe))},va=()=>(m.isBeforeHide=!1,Re(()=>{~mt.value&&Ar(mt.value)})),Ar=Oe=>{R.value.scrollToItem(Oe)},pg=(Oe,Ot)=>{const Et=tt(Oe);if($e.value.has(Et)){const{option:xt}=$e.value.get(Et);return xt}if(Ot&&Ot.length){const xt=Ot.find(Bn=>tt(f(Bn))===Et);if(xt)return xt}return{[c.value.value]:Oe,[c.value.label]:Oe}},jx=Oe=>$e.value.get(f(Oe))?.index??-1,Pu=(Oe=!1)=>{if(e.multiple)if(e.modelValue.length>0){const Ot=m.cachedOptions.slice();m.cachedOptions.length=0,m.previousValue=e.modelValue.toString();for(const Et of e.modelValue){const xt=pg(Et,Ot);m.cachedOptions.push(xt)}}else m.cachedOptions=[],m.previousValue=void 0;else if(ue.value){m.previousValue=e.modelValue;const Ot=j.value,Et=Ot.findIndex(xt=>tt(f(xt))===tt(e.modelValue));~Et?m.selectedLabel=d(Ot[Et]):(!m.selectedLabel||Oe)&&(m.selectedLabel=tt(e.modelValue))}else m.selectedLabel="",m.previousValue=void 0;tn(),We()};le(()=>e.fitInputWidth,()=>{We()}),le(X,Oe=>{Oe?(e.persistent||We(),ct("")):(m.inputValue="",m.previousQuery=null,m.isBeforeHide=!0,m.menuVisibleOnFocus=!1,de(""))}),le(()=>e.modelValue,(Oe,Ot)=>{(!Oe||ye(Oe)&&Oe.length===0||e.multiple&&!sn(Oe.toString(),m.previousValue)||!e.multiple&&tt(Oe)!==tt(m.previousValue))&&Pu(!0),!sn(Oe,Ot)&&e.validateEvent&&l?.validate?.("change").catch(Et=>pt(Et))},{deep:!0}),le(()=>e.options,()=>{const Oe=$.value;(!Oe||Oe&&document.activeElement!==Oe)&&Pu()},{deep:!0,flush:"post"}),le(()=>j.value,()=>(We(),R.value&&Re(R.value.resetScrollTop))),So(()=>{m.isBeforeHide||Ie()}),So(()=>{const{valueKey:Oe,options:Ot}=e,Et=new Map;for(const xt of Ot){const Bn=f(xt);let Co=Bn;if(at(Co)&&(Co=wn(Bn,Oe)),Et.get(Co)){pt("ElSelectV2","The option values you provided seem to be duplicated, which may cause some problems, please check.");break}else Et.set(Co,!0)}}),ht(()=>{Pu()}),en(y,gt),en(S,ao),en(I,jo),en(A,Nu),en(_,ha);let $f;return le(()=>kt.value,Oe=>{Oe?$f=en(R,jo).stop:($f?.(),$f=void 0),t("visible-change",Oe)}),{inputId:u,collapseTagSize:Me,currentPlaceholder:Ue,expanded:X,emptyText:ce,popupHeight:he,debounce:Z,allOptions:F,allOptionsValueMap:$e,filteredOptions:j,iconComponent:ie,iconReverse:oe,tagStyle:Ae,collapseTagStyle:je,popperSize:b,dropdownMenuVisible:kt,hasModelValue:ue,shouldShowPlaceholder:Rt,selectDisabled:P,selectSize:me,needStatusIcon:Q,showClearBtn:ge,states:m,isFocused:L,nsSelect:a,nsInput:s,inputRef:$,menuRef:R,tagMenuRef:A,tooltipRef:C,tagTooltipRef:E,selectRef:y,wrapperRef:I,selectionRef:S,prefixRef:O,suffixRef:N,collapseItemRef:_,popperRef:lt,validateState:ne,validateIcon:K,showTagList:be,collapseTagList:ze,debouncedOnInputChange:nt,deleteTag:Iu,getLabel:d,getValue:f,getDisabled:v,getValueKey:tt,getIndex:jx,handleClear:Tf,handleClickOutside:En,handleDel:xf,handleEsc:kf,focus:za,blur:Cf,handleMenuEnter:va,handleResize:gt,resetSelectionWidth:ao,updateTooltip:jo,updateTagTooltip:Nu,updateOptions:Ie,toggleMenu:_n,scrollTo:Ar,onInput:Yt,onKeyboardNavigate:_r,onKeyboardSelect:Te,onSelect:js,onHover:vt,handleCompositionStart:H,handleCompositionEnd:U,handleCompositionUpdate:W}};var d7=se({name:"ElSelectV2",components:{ElSelectMenu:i7,ElTag:ts,ElTooltip:Ln,ElIcon:De},directives:{ClickOutside:zs},props:G9,emits:J9,setup(e,{emit:t}){const n=w(()=>{const{modelValue:u,multiple:c}=e,d=c?[]:void 0;return ye(u)?c?u:d:c?d:u}),o=c7(At({...Mn(e),modelValue:n}),t),{calculatorRef:a,inputStyle:s}=Dv(),r=zn();St(Lm,{props:At({...Mn(e),height:o.popupHeight,modelValue:n}),expanded:o.expanded,tooltipRef:o.tooltipRef,contentId:r,onSelect:o.onSelect,onHover:o.onHover,onKeyboardNavigate:o.onKeyboardNavigate,onKeyboardSelect:o.onKeyboardSelect});const l=w(()=>e.multiple?o.states.cachedOptions.map(u=>o.getLabel(u)):o.states.selectedLabel);return{...o,modelValue:n,selectedLabel:l,calculatorRef:a,inputStyle:s,contentId:r,BORDER_HORIZONTAL_WIDTH:Q1}}});const f7=["id","value","autocomplete","tabindex","aria-expanded","aria-label","disabled","aria-controls","aria-activedescendant","readonly","name"],p7=["textContent"],h7={key:1};function v7(e,t,n,o,a,s){const r=It("el-tag"),l=It("el-tooltip"),u=It("el-icon"),c=It("el-select-menu"),d=cv("click-outside");return ut((x(),B("div",{ref:"selectRef",class:T([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),onMouseenter:t[15]||(t[15]=f=>e.states.inputHovering=!0),onMouseleave:t[16]||(t[16]=f=>e.states.inputHovering=!1)},[Y(l,{ref:"tooltipRef",visible:e.dropdownMenuVisible,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-style":e.popperStyle,"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,placement:e.placement,pure:"",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,trigger:"click",persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:t[14]||(t[14]=f=>e.states.isBeforeHide=!1)},{default:J(()=>[z("div",{ref:"wrapperRef",class:T([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:t[11]||(t[11]=Xe((...f)=>e.toggleMenu&&e.toggleMenu(...f),["prevent"]))},[e.$slots.prefix?(x(),B("div",{key:0,ref:"prefixRef",class:T(e.nsSelect.e("prefix"))},[ee(e.$slots,"prefix")],2)):te("v-if",!0),z("div",{ref:"selectionRef",class:T([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.modelValue.length)])},[e.multiple?ee(e.$slots,"tag",{key:0,data:e.states.cachedOptions,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(x(!0),B(Fe,null,yt(e.showTagList,f=>(x(),B("div",{key:e.getValueKey(e.getValue(f)),class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!e.selectDisabled&&!e.getDisabled(f),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:Ke(e.tagStyle),onClose:v=>e.deleteTag(v,f)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:e.getIndex(f),label:e.getLabel(f),value:e.getValue(f)},()=>[wt(Se(e.getLabel(f)),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.cachedOptions.length>e.maxCollapseTags?(x(),ae(l,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":e.tagTooltip?.fallbackPlacements??["bottom","top","right","left"],effect:e.tagTooltip?.effect??e.effect,placement:e.tagTooltip?.placement??"bottom","popper-class":e.tagTooltip?.popperClass??e.popperClass,"popper-style":e.tagTooltip?.popperStyle??e.popperStyle,teleported:e.tagTooltip?.teleported??e.teleported,"append-to":e.tagTooltip?.appendTo??e.appendTo,"popper-options":e.tagTooltip?.popperOptions??e.popperOptions,transition:e.tagTooltip?.transition,"show-after":e.tagTooltip?.showAfter,"hide-after":e.tagTooltip?.hideAfter,"auto-close":e.tagTooltip?.autoClose,offset:e.tagTooltip?.offset},{default:J(()=>[z("div",{ref:"collapseItemRef",class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,style:Ke(e.collapseTagStyle),"disable-transitions":""},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))}," + "+Se(e.states.cachedOptions.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:J(()=>[z("div",{ref:"tagMenuRef",class:T(e.nsSelect.e("selection"))},[(x(!0),B(Fe,null,yt(e.collapseTagList,f=>(x(),B("div",{key:e.getValueKey(e.getValue(f)),class:T(e.nsSelect.e("selected-item"))},[Y(r,{class:"in-tooltip",closable:!e.selectDisabled&&!e.getDisabled(f),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:v=>e.deleteTag(v,f)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:e.getIndex(f),label:e.getLabel(f),value:e.getValue(f)},()=>[wt(Se(e.getLabel(f)),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","fallback-placements","effect","placement","popper-class","popper-style","teleported","append-to","popper-options","transition","show-after","hide-after","auto-close","offset"])):te("v-if",!0)]):te("v-if",!0),z("div",{class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable||e.selectDisabled||!e.states.inputValue&&!e.isFocused)])},[z("input",{id:e.inputId,ref:"inputRef",value:e.states.inputValue,style:Ke(e.inputStyle),autocomplete:e.autocomplete,tabindex:e.tabindex,"aria-autocomplete":"none","aria-haspopup":"listbox",autocapitalize:"off","aria-expanded":e.expanded,"aria-label":e.ariaLabel,class:T([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,role:"combobox","aria-controls":e.contentId,"aria-activedescendant":e.states.hoveringIndex>=0?`${e.contentId}-${e.states.hoveringIndex}`:"",readonly:!e.filterable,spellcheck:"false",type:"text",name:e.name,onInput:t[0]||(t[0]=(...f)=>e.onInput&&e.onInput(...f)),onChange:t[1]||(t[1]=Xe(()=>{},["stop"])),onCompositionstart:t[2]||(t[2]=(...f)=>e.handleCompositionStart&&e.handleCompositionStart(...f)),onCompositionupdate:t[3]||(t[3]=(...f)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...f)),onCompositionend:t[4]||(t[4]=(...f)=>e.handleCompositionEnd&&e.handleCompositionEnd(...f)),onKeydown:[t[5]||(t[5]=an(Xe(f=>e.onKeyboardNavigate("backward"),["stop","prevent"]),["up"])),t[6]||(t[6]=an(Xe(f=>e.onKeyboardNavigate("forward"),["stop","prevent"]),["down"])),t[7]||(t[7]=an(Xe((...f)=>e.onKeyboardSelect&&e.onKeyboardSelect(...f),["stop","prevent"]),["enter"])),t[8]||(t[8]=an(Xe((...f)=>e.handleEsc&&e.handleEsc(...f),["stop","prevent"]),["esc"])),t[9]||(t[9]=an(Xe((...f)=>e.handleDel&&e.handleDel(...f),["stop"]),["delete"]))],onClick:t[10]||(t[10]=Xe((...f)=>e.toggleMenu&&e.toggleMenu(...f),["stop"]))},null,46,f7),e.filterable?(x(),B("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:T(e.nsSelect.e("input-calculator")),textContent:Se(e.states.inputValue)},null,10,p7)):te("v-if",!0)],2),e.shouldShowPlaceholder?(x(),B("div",{key:1,class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?ee(e.$slots,"label",{key:0,index:e.allOptionsValueMap.get(e.modelValue)?.index??-1,label:e.currentPlaceholder,value:e.modelValue},()=>[z("span",null,Se(e.currentPlaceholder),1)]):(x(),B("span",h7,Se(e.currentPlaceholder),1))],2)):te("v-if",!0)],2),z("div",{ref:"suffixRef",class:T(e.nsSelect.e("suffix"))},[e.iconComponent?ut((x(),ae(u,{key:0,class:T([e.nsSelect.e("caret"),e.nsInput.e("icon"),e.iconReverse])},{default:J(()=>[(x(),ae(it(e.iconComponent)))]),_:1},8,["class"])),[[Pt,!e.showClearBtn]]):te("v-if",!0),e.showClearBtn&&e.clearIcon?(x(),ae(u,{key:1,class:T([e.nsSelect.e("caret"),e.nsInput.e("icon"),e.nsSelect.e("clear")]),onClick:Xe(e.handleClear,["prevent","stop"])},{default:J(()=>[(x(),ae(it(e.clearIcon)))]),_:1},8,["class","onClick"])):te("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(x(),ae(u,{key:2,class:T([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:J(()=>[(x(),ae(it(e.validateIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)]),content:J(()=>[Y(c,{id:e.contentId,ref:"menuRef",data:e.filteredOptions,width:e.popperSize-e.BORDER_HORIZONTAL_WIDTH,"hovering-index":e.states.hoveringIndex,"scrollbar-always-on":e.scrollbarAlwaysOn,"aria-label":e.ariaLabel},uo({default:J(f=>[ee(e.$slots,"default",Ja(Za(f)))]),_:2},[e.$slots.header?{name:"header",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","header")),onClick:t[12]||(t[12]=Xe(()=>{},["stop"]))},[ee(e.$slots,"header")],2)]),key:"0"}:void 0,e.$slots.loading&&e.loading?{name:"loading",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","loading"))},[ee(e.$slots,"loading")],2)]),key:"1"}:e.loading||e.filteredOptions.length===0?{name:"empty",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","empty"))},[ee(e.$slots,"empty",{},()=>[z("span",null,Se(e.emptyText),1)])],2)]),key:"2"}:void 0,e.$slots.footer?{name:"footer",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","footer")),onClick:t[13]||(t[13]=Xe(()=>{},["stop"]))},[ee(e.$slots,"footer")],2)]),key:"3"}:void 0]),1032,["id","data","width","hovering-index","scrollbar-always-on","aria-label"])]),_:3},8,["visible","teleported","popper-class","popper-style","popper-options","fallback-placements","effect","placement","transition","persistent","append-to","show-arrow","offset","onBeforeShow"])],34)),[[d,e.handleClickOutside,e.popperRef]])}var m7=$n(d7,[["render",v7]]);const g7=rt(m7),b7=Ce({animated:Boolean,count:{type:Number,default:1},rows:{type:Number,default:3},loading:{type:Boolean,default:!0},throttle:{type:G([Number,Object])}}),y7=Ce({variant:{type:String,values:["circle","rect","h1","h3","text","caption","p","image","button"],default:"text"}});var w7=se({name:"ElSkeletonItem",__name:"skeleton-item",props:y7,setup(e){const t=fe("skeleton");return(n,o)=>(x(),B("div",{class:T([i(t).e("item"),i(t).e(e.variant)])},[e.variant==="image"?(x(),ae(i(x3),{key:0})):te("v-if",!0)],2))}}),yd=w7,S7=se({name:"ElSkeleton",__name:"skeleton",props:b7,setup(e,{expose:t}){const n=e,o=fe("skeleton"),a=RA(Vt(n,"loading"),n.throttle);return t({uiLoading:a}),(s,r)=>i(a)?(x(),B("div",dt({key:0,class:[i(o).b(),i(o).is("animated",e.animated)]},s.$attrs),[(x(!0),B(Fe,null,yt(e.count,l=>(x(),B(Fe,{key:l},[i(a)?ee(s.$slots,"template",{key:l},()=>[Y(yd,{class:T(i(o).is("first")),variant:"p"},null,8,["class"]),(x(!0),B(Fe,null,yt(e.rows,u=>(x(),ae(yd,{key:u,class:T([i(o).e("paragraph"),i(o).is("last",u===e.rows&&e.rows>1)]),variant:"p"},null,8,["class"]))),128))]):te("v-if",!0)],64))),128))],16)):ee(s.$slots,"default",Ja(dt({key:1},s.$attrs)))}}),C7=S7;const k7=rt(C7,{SkeletonItem:yd}),E7=on(yd),fE=Symbol("sliderContextKey"),x7=Ce({modelValue:{type:G([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:Tn,inputSize:Tn,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:G(Function),default:void 0},disabled:{type:Boolean,default:void 0},range:Boolean,vertical:Boolean,height:String,rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:G(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:Da,default:"top"},marks:{type:G(Object)},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},...oo(["ariaLabel"])}),ip=e=>He(e)||ye(e)&&e.every(He),T7={[ot]:ip,[Sn]:ip,[bt]:ip},$7=(e,t,n)=>{const o=M();return ht(async()=>{e.range?(ye(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(!He(e.modelValue)||Number.isNaN(e.modelValue)?t.firstValue=e.min:t.firstValue=Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),Ft(window,"resize",n),await Re(),n()}),{sliderWrapper:o}},O7=e=>w(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((t,n)=>t-n).filter(t=>t<=e.max&&t>=e.min).map(t=>({point:t,position:(t-e.min)*100/(e.max-e.min),mark:e.marks[t]})):[]),R7=(e,t,n)=>{const{formItem:o}=Dn(),a=Xt(),s=M(),r=M(),l={firstButton:s,secondButton:r},u=un(),c=w(()=>Math.min(t.firstValue,t.secondValue)),d=w(()=>Math.max(t.firstValue,t.secondValue)),f=w(()=>e.range?`${100*(d.value-c.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),v=w(()=>e.range?`${100*(c.value-e.min)/(e.max-e.min)}%`:"0%"),g=w(()=>e.vertical?{height:e.height}:{}),p=w(()=>e.vertical?{height:f.value,bottom:v.value}:{width:f.value,left:v.value}),h=()=>{a.value&&(t.sliderSize=a.value.getBoundingClientRect()[e.vertical?"height":"width"])},m=A=>{const _=e.min+A*(e.max-e.min)/100;if(!e.range)return s;let V;return Math.abs(c.value-_)t.secondValue?"firstButton":"secondButton",l[V]},b=A=>{const _=m(A);return _.value.setPosition(A),_},k=A=>{t.firstValue=A??e.min,S(e.range?[c.value,d.value]:A??e.min)},y=A=>{t.secondValue=A,e.range&&S([c.value,d.value])},S=A=>{n(ot,A),n(Sn,A)},C=async()=>{await Re(),n(bt,e.range?[c.value,d.value]:e.modelValue)},E=A=>{if(u.value||t.dragging)return;h();let _=0;if(e.vertical){const V=A.touches?.item(0)?.clientY??A.clientY;_=(a.value.getBoundingClientRect().bottom-V)/t.sliderSize*100}else _=((A.touches?.item(0)?.clientX??A.clientX)-a.value.getBoundingClientRect().left)/t.sliderSize*100;if(!(_<0||_>100))return b(_)};return{elFormItem:o,slider:a,firstButton:s,secondButton:r,sliderDisabled:u,minValue:c,maxValue:d,runwayStyle:g,barStyle:p,resetSize:h,setPosition:b,emitChange:C,onSliderWrapperPrevent:A=>{(l.firstButton.value?.dragging||l.secondButton.value?.dragging)&&A.preventDefault()},onSliderClick:A=>{E(A)&&C()},onSliderDown:async A=>{const _=E(A);_&&(await Re(),_.value.onButtonDown(A))},onSliderMarkerDown:A=>{u.value||t.dragging||b(A)&&C()},setFirstValue:k,setSecondValue:y}},N7=(e,t,n,o)=>({stops:w(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===0)return pt("ElSlider","step should not be 0."),[];const r=Math.ceil((e.max-e.min)/e.step),l=100*e.step/(e.max-e.min),u=Array.from({length:r-1}).map((c,d)=>(d+1)*l);return e.range?u.filter(c=>c<100*(n.value-e.min)/(e.max-e.min)||c>100*(o.value-e.min)/(e.max-e.min)):u.filter(c=>c>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:r=>e.vertical?{bottom:`${r}%`}:{left:`${r}%`}}),I7=(e,t,n,o,a,s)=>{const r=c=>{a(ot,c),a(Sn,c)},l=()=>e.range?![n.value,o.value].every((c,d)=>c===t.oldValue[d]):e.modelValue!==t.oldValue,u=()=>{e.min>e.max&&nn("Slider","min should not be greater than max.");const c=e.modelValue;e.range&&ye(c)?c[1]e.max?r([e.max,e.max]):c[0]e.max?r([c[0],e.max]):(t.firstValue=c[0],t.secondValue=c[1],l()&&(e.validateEvent&&s?.validate?.("change").catch(d=>pt(d)),t.oldValue=c.slice())):!e.range&&He(c)&&!Number.isNaN(c)&&(ce.max?r(e.max):(t.firstValue=c,l()&&(e.validateEvent&&s?.validate?.("change").catch(d=>pt(d)),t.oldValue=c)))};u(),le(()=>t.dragging,c=>{c||u()}),le(()=>e.modelValue,(c,d)=>{t.dragging||ye(c)&&ye(d)&&c.every((f,v)=>f===d[v])&&t.firstValue===c[0]&&t.secondValue===c[1]||u()},{deep:!0}),le(()=>[e.min,e.max],()=>{u()})},P7=(e,t,n)=>{const o=M(),a=M(!1),s=w(()=>t.value instanceof Function);return{tooltip:o,tooltipVisible:a,formatValue:w(()=>s.value&&t.value(e.modelValue)||e.modelValue),displayTooltip:Ma(()=>{n.value&&(a.value=!0)},50),hideTooltip:Ma(()=>{n.value&&(a.value=!1)},50)}},M7=(e,t,n)=>{const{disabled:o,min:a,max:s,step:r,showTooltip:l,persistent:u,precision:c,sliderSize:d,formatTooltip:f,emitChange:v,resetSize:g,updateDragging:p}=_e(fE),{tooltip:h,tooltipVisible:m,formatValue:b,displayTooltip:k,hideTooltip:y}=P7(e,f,l),S=M(),C=w(()=>`${(e.modelValue-a.value)/(s.value-a.value)*100}%`),E=w(()=>e.vertical?{bottom:C.value}:{left:C.value}),$=()=>{t.hovering=!0,k()},O=()=>{t.hovering=!1,t.dragging||y()},N=j=>{o.value||(j.preventDefault(),L(j),window.addEventListener("mousemove",D),window.addEventListener("touchmove",D),window.addEventListener("mouseup",F),window.addEventListener("touchend",F),window.addEventListener("contextmenu",F),S.value.focus())},R=j=>{o.value||(t.newPosition=Number.parseFloat(C.value)+j/(s.value-a.value)*100,q(t.newPosition),v())},A=()=>{R(-r.value)},_=()=>{R(r.value)},V=()=>{R(-r.value*4)},H=()=>{R(r.value*4)},U=()=>{o.value||(q(0),v())},W=()=>{o.value||(q(100),v())},P=j=>{const X=jt(j);let Q=!0;switch(X){case we.left:case we.down:A();break;case we.right:case we.up:_();break;case we.home:U();break;case we.end:W();break;case we.pageDown:V();break;case we.pageUp:H();break;default:Q=!1;break}Q&&j.preventDefault()},I=j=>{let X,Q;return j.type.startsWith("touch")?(Q=j.touches[0].clientY,X=j.touches[0].clientX):(Q=j.clientY,X=j.clientX),{clientX:X,clientY:Q}},L=j=>{t.dragging=!0,t.isClick=!0;const{clientX:X,clientY:Q}=I(j);e.vertical?t.startY=Q:t.startX=X,t.startPosition=Number.parseFloat(C.value),t.newPosition=t.startPosition},D=j=>{if(t.dragging){t.isClick=!1,k(),g();let X;const{clientX:Q,clientY:he}=I(j);e.vertical?(t.currentY=he,X=(t.startY-t.currentY)/d.value*100):(t.currentX=Q,X=(t.currentX-t.startX)/d.value*100),t.newPosition=t.startPosition+X,q(t.newPosition)}},F=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||y(),t.isClick||q(t.newPosition),v()},0),window.removeEventListener("mousemove",D),window.removeEventListener("touchmove",D),window.removeEventListener("mouseup",F),window.removeEventListener("touchend",F),window.removeEventListener("contextmenu",F))},q=async j=>{if(j===null||Number.isNaN(+j))return;j=or(j,0,100);const X=Math.floor((s.value-a.value)/r.value),Q=X*r.value/(s.value-a.value)*100,he=Q+(100-Q)/2;let ue;if(jt.dragging,j=>{p(j)}),Ft(S,"touchstart",N,{passive:!1}),{disabled:o,button:S,tooltip:h,tooltipVisible:m,showTooltip:l,persistent:u,wrapperStyle:E,formatValue:b,handleMouseEnter:$,handleMouseLeave:O,onButtonDown:N,onKeyDown:P,setPosition:q}},_7=Ce({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:Da,default:"top"}}),A7={[ot]:e=>He(e)},L7=["tabindex"];var D7=se({name:"ElSliderButton",__name:"button",props:_7,emits:A7,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("slider"),r=At({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:o.modelValue}),l=w(()=>f.value?v.value:!1),{disabled:u,button:c,tooltip:d,showTooltip:f,persistent:v,tooltipVisible:g,wrapperStyle:p,formatValue:h,handleMouseEnter:m,handleMouseLeave:b,onButtonDown:k,onKeyDown:y,setPosition:S}=M7(o,r,a),{hovering:C,dragging:E}=Mn(r);return t({onButtonDown:k,onKeyDown:y,setPosition:S,hovering:C,dragging:E}),($,O)=>(x(),B("div",{ref_key:"button",ref:c,class:T([i(s).e("button-wrapper"),{hover:i(C),dragging:i(E)}]),style:Ke(i(p)),tabindex:i(u)?void 0:0,onMouseenter:O[0]||(O[0]=(...N)=>i(m)&&i(m)(...N)),onMouseleave:O[1]||(O[1]=(...N)=>i(b)&&i(b)(...N)),onMousedown:O[2]||(O[2]=(...N)=>i(k)&&i(k)(...N)),onFocus:O[3]||(O[3]=(...N)=>i(m)&&i(m)(...N)),onBlur:O[4]||(O[4]=(...N)=>i(b)&&i(b)(...N)),onKeydown:O[5]||(O[5]=(...N)=>i(y)&&i(y)(...N))},[Y(i(Ln),{ref_key:"tooltip",ref:d,visible:i(g),placement:$.placement,"fallback-placements":["top","bottom","right","left"],"stop-popper-mouse-event":!1,"popper-class":$.tooltipClass,disabled:!i(f),persistent:l.value},{content:J(()=>[z("span",null,Se(i(h)),1)]),default:J(()=>[z("div",{class:T([i(s).e("button"),{hover:i(C),dragging:i(E)}])},null,2)]),_:1},8,["visible","placement","popper-class","disabled","persistent"])],46,L7))}}),N0=D7;const B7=Ce({mark:{type:G([String,Object]),default:void 0}});var F7=se({name:"ElSliderMarker",props:B7,setup(e){const t=fe("slider"),n=w(()=>Le(e.mark)?e.mark:e.mark.label),o=w(()=>Le(e.mark)?void 0:e.mark.style);return()=>Ye("div",{class:t.e("marks-text"),style:o.value},n.value)}});const V7=["id","role","aria-label","aria-labelledby"],z7={key:1};var H7=se({name:"ElSlider",__name:"slider",props:x7,emits:T7,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("slider"),{t:r}=Ct(),l=At({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:u,slider:c,firstButton:d,secondButton:f,sliderDisabled:v,minValue:g,maxValue:p,runwayStyle:h,barStyle:m,resetSize:b,emitChange:k,onSliderWrapperPrevent:y,onSliderClick:S,onSliderDown:C,onSliderMarkerDown:E,setFirstValue:$,setSecondValue:O}=R7(o,l,a),{stops:N,getStopStyle:R}=N7(o,l,g,p),{inputId:A,isLabeledByFormItem:_}=Po(o,{formItemContext:u}),V=Cn(),H=w(()=>o.inputSize||V.value),U=w(()=>o.ariaLabel||r("el.slider.defaultLabel",{min:o.min,max:o.max})),W=w(()=>o.range?o.rangeStartLabel||r("el.slider.defaultRangeStartLabel"):U.value),P=w(()=>o.formatValueText?o.formatValueText(X.value):`${X.value}`),I=w(()=>o.rangeEndLabel||r("el.slider.defaultRangeEndLabel")),L=w(()=>o.formatValueText?o.formatValueText(Q.value):`${Q.value}`),D=w(()=>[s.b(),s.m(V.value),s.is("vertical",o.vertical),{[s.m("with-input")]:o.showInput}]),F=O7(o);I7(o,l,g,p,a,u);const q=w(()=>{const ge=[o.min,o.max,o.step].map(ie=>{const oe=`${ie}`.split(".")[1];return oe?oe.length:0});return Math.max.apply(null,ge)}),{sliderWrapper:j}=$7(o,l,b),{firstValue:X,secondValue:Q,sliderSize:he}=Mn(l),ue=ge=>{l.dragging=ge};return Ft(j,"touchstart",y,{passive:!1}),Ft(j,"touchmove",y,{passive:!1}),St(fE,{...Mn(o),sliderSize:he,disabled:v,precision:q,emitChange:k,resetSize:b,updateDragging:ue}),t({onSliderClick:S}),(ge,ie)=>(x(),B("div",{id:ge.range?i(A):void 0,ref_key:"sliderWrapper",ref:j,class:T(D.value),role:ge.range?"group":void 0,"aria-label":ge.range&&!i(_)?U.value:void 0,"aria-labelledby":ge.range&&i(_)?i(u)?.labelId:void 0},[z("div",{ref_key:"slider",ref:c,class:T([i(s).e("runway"),{"show-input":ge.showInput&&!ge.range},i(s).is("disabled",i(v))]),style:Ke(i(h)),onMousedown:ie[0]||(ie[0]=(...oe)=>i(C)&&i(C)(...oe)),onTouchstartPassive:ie[1]||(ie[1]=(...oe)=>i(C)&&i(C)(...oe))},[z("div",{class:T(i(s).e("bar")),style:Ke(i(m))},null,6),Y(N0,{id:ge.range?void 0:i(A),ref_key:"firstButton",ref:d,"model-value":i(X),vertical:ge.vertical,"tooltip-class":ge.tooltipClass,placement:ge.placement,role:"slider","aria-label":ge.range||!i(_)?W.value:void 0,"aria-labelledby":!ge.range&&i(_)?i(u)?.labelId:void 0,"aria-valuemin":ge.min,"aria-valuemax":ge.range?i(Q):ge.max,"aria-valuenow":i(X),"aria-valuetext":P.value,"aria-orientation":ge.vertical?"vertical":"horizontal","aria-disabled":i(v),"onUpdate:modelValue":i($)},null,8,["id","model-value","vertical","tooltip-class","placement","aria-label","aria-labelledby","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"]),ge.range?(x(),ae(N0,{key:0,ref_key:"secondButton",ref:f,"model-value":i(Q),vertical:ge.vertical,"tooltip-class":ge.tooltipClass,placement:ge.placement,role:"slider","aria-label":I.value,"aria-valuemin":i(X),"aria-valuemax":ge.max,"aria-valuenow":i(Q),"aria-valuetext":L.value,"aria-orientation":ge.vertical?"vertical":"horizontal","aria-disabled":i(v),"onUpdate:modelValue":i(O)},null,8,["model-value","vertical","tooltip-class","placement","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"])):te("v-if",!0),ge.showStops?(x(),B("div",z7,[(x(!0),B(Fe,null,yt(i(N),(oe,ne)=>(x(),B("div",{key:ne,class:T(i(s).e("stop")),style:Ke(i(R)(oe))},null,6))),128))])):te("v-if",!0),i(F).length>0?(x(),B(Fe,{key:2},[z("div",null,[(x(!0),B(Fe,null,yt(i(F),(oe,ne)=>(x(),B("div",{key:ne,style:Ke(i(R)(oe.position)),class:T([i(s).e("stop"),i(s).e("marks-stop")])},null,6))),128))]),z("div",{class:T(i(s).e("marks"))},[(x(!0),B(Fe,null,yt(i(F),(oe,ne)=>(x(),ae(i(F7),{key:ne,mark:oe.mark,style:Ke(i(R)(oe.position)),onMousedown:Xe(K=>i(E)(oe.position),["stop"])},null,8,["mark","style","onMousedown"]))),128))],2)],64)):te("v-if",!0)],38),ge.showInput&&!ge.range?(x(),ae(i(z2),{key:0,ref:"input","model-value":i(X),class:T(i(s).e("input")),step:ge.step,disabled:i(v),controls:ge.showInputControls,min:ge.min,max:ge.max,precision:q.value,size:H.value,"onUpdate:modelValue":i($),onChange:i(k)},null,8,["model-value","class","step","disabled","controls","min","max","precision","size","onUpdate:modelValue","onChange"])):te("v-if",!0)],10,V7))}}),K7=H7;const W7=rt(K7),j7=Ce({prefixCls:{type:String}}),I0=se({name:"ElSpaceItem",props:j7,setup(e,{slots:t}){const n=fe("space"),o=w(()=>`${e.prefixCls||n.b()}__item`);return()=>Ye("div",{class:o.value},ee(t,"default"))}}),P0={small:8,default:12,large:16};function U7(e){const t=fe("space"),n=w(()=>[t.b(),t.m(e.direction),e.class]),o=M(0),a=M(0),s=w(()=>[e.wrap||e.fill?{flexWrap:"wrap"}:{},{alignItems:e.alignment},{rowGap:`${a.value}px`,columnGap:`${o.value}px`},e.style]),r=w(()=>e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{});return So(()=>{const{size:l="small",wrap:u,direction:c,fill:d}=e;if(ye(l)){const[f=0,v=0]=l;o.value=f,a.value=v}else{let f;He(l)?f=l:f=P0[l||"small"]||P0.small,(u||d)&&c==="horizontal"?o.value=a.value=f:c==="horizontal"?(o.value=f,a.value=0):(a.value=f,o.value=0)}}),{classes:n,containerStyle:s,itemStyle:r}}const q7=Ce({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},class:{type:G([String,Object,Array]),default:""},style:{type:G([String,Array,Object]),default:""},alignment:{type:G(String),default:"center"},prefixCls:{type:String},spacer:{type:G([Object,String,Number,Array]),default:null,validator:e=>Ut(e)||He(e)||Le(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:ia,validator:e=>He(e)||ye(e)&&e.length===2&&e.every(He)}}),Y7=se({name:"ElSpace",props:q7,setup(e,{slots:t}){const{classes:n,containerStyle:o,itemStyle:a}=U7(e);function s(r,l="",u=[]){const{prefixCls:c}=e;return r.forEach((d,f)=>{qp(d)?ye(d.children)&&d.children.forEach((v,g)=>{qp(v)&&ye(v.children)?s(v.children,`${l+g}-`,u):Ut(v)&&v?.type===gn?u.push(v):u.push(Y(I0,{style:a.value,prefixCls:c,key:`nested-${l+g}`},{default:()=>[v]},Uo.PROPS|Uo.STYLE,["style","prefixCls"]))}):O4(d)&&u.push(Y(I0,{style:a.value,prefixCls:c,key:`LoopKey${l+f}`},{default:()=>[d]},Uo.PROPS|Uo.STYLE,["style","prefixCls"]))}),u}return()=>{const{spacer:r,direction:l}=e,u=ee(t,"default",{key:0},()=>[]);if((u.children??[]).length===0)return null;if(ye(u.children)){let c=s(u.children);if(r){const d=c.length-1;c=c.reduce((f,v,g)=>{const p=[...f,v];return g!==d&&p.push(Y("span",{style:[a.value,l==="vertical"?"width: 100%":null],key:g},[Ut(r)?r:wt(r,Uo.TEXT)],Uo.STYLE)),p},[])}return Y("div",{class:n.value,style:o.value},c,Uo.STYLE|Uo.CLASS)}return u.children}}}),G7=rt(Y7),X7=Ce({space:{type:[Number,String],default:""},active:{type:Number,default:0},direction:{type:String,default:"horizontal",values:["horizontal","vertical"]},alignCenter:{type:Boolean},simple:{type:Boolean},finishStatus:{type:String,values:["wait","process","finish","error","success"],default:"finish"},processStatus:{type:String,values:["wait","process","finish","error","success"],default:"process"}}),J7={[bt]:(e,t)=>[e,t].every(He)},pE="ElSteps",Z7=Ce({title:{type:String,default:""},icon:{type:Kt},description:{type:String,default:""},status:{type:String,values:["","wait","process","finish","error","success"],default:""}});var Q7=se({name:"ElSteps",__name:"steps",props:X7,emits:J7,setup(e,{emit:t}){const n=e,o=t,a=fe("steps"),{children:s,addChild:r,removeChild:l,ChildrenSorter:u}=tf(ft(),"ElStep");return le(s,()=>{s.value.forEach((c,d)=>{c.setIndex(d)})}),St(pE,{props:n,steps:s,addStep:r,removeStep:l}),le(()=>n.active,(c,d)=>{o(bt,c,d)}),(c,d)=>(x(),B("div",{class:T([i(a).b(),i(a).m(e.simple?"simple":e.direction)])},[ee(c.$slots,"default"),Y(i(u))],2))}}),eU=Q7,tU=se({name:"ElStep",__name:"item",props:Z7,setup(e){const t=e,n=fe("step"),o=M(-1),a=M({}),s=M(""),r=_e(pE),l=ft();let u=0,c=0;ht(()=>{le([()=>r.props.active,()=>r.props.processStatus,()=>r.props.finishStatus],([O],[N])=>{c=N||0,u=O-c,E(O)},{immediate:!0})});const d=w(()=>t.status||s.value),f=w(()=>{const O=r.steps.value[o.value-1];return O?O.internalStatus.value:"wait"}),v=w(()=>r.props.alignCenter),g=w(()=>r.props.direction==="vertical"),p=w(()=>r.props.simple),h=w(()=>r.steps.value.length),m=w(()=>r.steps.value[h.value-1]?.uid===l.uid),b=w(()=>p.value?"":r.props.space),k=w(()=>[n.b(),n.is(p.value?"simple":r.props.direction),n.is("flex",m.value&&!b.value&&!v.value),n.is("center",v.value&&!g.value&&!p.value)]),y=w(()=>{const O={flexBasis:He(b.value)?`${b.value}px`:b.value?b.value:`${100/(h.value-(v.value?0:1))}%`};return g.value||m.value&&(O.maxWidth=`${100/h.value}%`),O}),S=O=>{o.value=O},C=O=>{const N=O==="wait",R={transitionDelay:`${Math.abs(u)===1?0:u>0?(o.value+1-c)*150:-(o.value+1-r.props.active)*150}ms`},A=O===r.props.processStatus||N?0:100;R.borderWidth=A&&!p.value?"1px":0,R[r.props.direction==="vertical"?"height":"width"]=`${A}%`,a.value=R},E=O=>{O>o.value?s.value=r.props.finishStatus:O===o.value&&f.value!=="error"?s.value=r.props.processStatus:s.value="wait";const N=r.steps.value[o.value-1];N&&N.calcProgress(s.value)},$={uid:l.uid,getVnode:()=>l.vnode,currentStatus:d,internalStatus:s,setIndex:S,calcProgress:C};return r.addStep($),Bt(()=>{r.removeStep($)}),(O,N)=>(x(),B("div",{style:Ke(y.value),class:T(k.value)},[te(" icon & line "),z("div",{class:T([i(n).e("head"),i(n).is(d.value)])},[p.value?te("v-if",!0):(x(),B("div",{key:0,class:T(i(n).e("line"))},[z("i",{class:T(i(n).e("line-inner")),style:Ke(a.value)},null,6)],2)),z("div",{class:T([i(n).e("icon"),i(n).is(e.icon||O.$slots.icon?"icon":"text")])},[ee(O.$slots,"icon",{},()=>[e.icon?(x(),ae(i(De),{key:0,class:T(i(n).e("icon-inner"))},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1},8,["class"])):d.value==="success"?(x(),ae(i(De),{key:1,class:T([i(n).e("icon-inner"),i(n).is("status")])},{default:J(()=>[Y(i(gu))]),_:1},8,["class"])):d.value==="error"?(x(),ae(i(De),{key:2,class:T([i(n).e("icon-inner"),i(n).is("status")])},{default:J(()=>[Y(i(Ko))]),_:1},8,["class"])):p.value?te("v-if",!0):(x(),B("div",{key:3,class:T(i(n).e("icon-inner"))},Se(o.value+1),3))])],2)],2),te(" title & description "),z("div",{class:T(i(n).e("main"))},[z("div",{class:T([i(n).e("title"),i(n).is(d.value)])},[ee(O.$slots,"title",{},()=>[wt(Se(e.title),1)])],2),p.value?(x(),B("div",{key:0,class:T(i(n).e("arrow"))},null,2)):(x(),B("div",{key:1,class:T([i(n).e("description"),i(n).is(d.value)])},[ee(O.$slots,"description",{},()=>[wt(Se(e.description),1)])],2))],2)],6))}}),hE=tU;const nU=rt(eU,{Step:hE}),oU=on(hE),vE=e=>["",...ia].includes(e),aU=Ce({modelValue:{type:[Boolean,String,Number],default:!1},disabled:{type:Boolean,default:void 0},loading:Boolean,size:{type:String,validator:vE},width:{type:[String,Number],default:""},inlinePrompt:Boolean,inactiveActionIcon:{type:Kt},activeActionIcon:{type:Kt},activeIcon:{type:Kt},inactiveIcon:{type:Kt},activeText:{type:String,default:""},inactiveText:{type:String,default:""},activeValue:{type:[Boolean,String,Number],default:!0},inactiveValue:{type:[Boolean,String,Number],default:!1},name:{type:String,default:""},validateEvent:{type:Boolean,default:!0},beforeChange:{type:G(Function)},id:String,tabindex:{type:[String,Number]},...oo(["ariaLabel"])}),sU={[ot]:e=>Ht(e)||Le(e)||He(e),[bt]:e=>Ht(e)||Le(e)||He(e),[Sn]:e=>Ht(e)||Le(e)||He(e)},rU=["id","aria-checked","aria-disabled","aria-label","name","true-value","false-value","disabled","tabindex"],lU=["aria-hidden"],iU={key:1},uU={key:1},cU=["aria-hidden"],up="ElSwitch";var dU=se({name:up,__name:"switch",props:aU,emits:sU,setup(e,{expose:t,emit:n}){const o=e,a=n,{formItem:s}=Dn(),r=Cn(),l=fe("switch"),{inputId:u}=Po(o,{formItemContext:s}),c=un(w(()=>{if(o.loading)return!0})),d=M(o.modelValue!==!1),f=Xt(),v=w(()=>[l.b(),l.m(r.value),l.is("disabled",c.value),l.is("checked",b.value)]),g=w(()=>[l.e("label"),l.em("label","left"),l.is("active",!b.value)]),p=w(()=>[l.e("label"),l.em("label","right"),l.is("active",b.value)]),h=w(()=>({width:ln(o.width)}));le(()=>o.modelValue,()=>{d.value=!0});const m=w(()=>d.value?o.modelValue:!1),b=w(()=>m.value===o.activeValue);[o.activeValue,o.inactiveValue].includes(m.value)||(a(ot,o.inactiveValue),a(bt,o.inactiveValue),a(Sn,o.inactiveValue)),le(b,C=>{f.value.checked=C,o.validateEvent&&s?.validate?.("change").catch(E=>pt(E))});const k=()=>{const C=b.value?o.inactiveValue:o.activeValue;a(ot,C),a(bt,C),a(Sn,C),Re(()=>{f.value.checked=b.value})},y=()=>{if(c.value)return;const{beforeChange:C}=o;if(!C){k();return}const E=C();[mr(E),Ht(E)].includes(!0)||nn(up,"beforeChange must return type `Promise` or `boolean`"),mr(E)?E.then($=>{$&&k()}).catch($=>{pt(up,`some error occurred: ${$}`)}):E&&k()},S=()=>{f.value?.focus?.()};return ht(()=>{f.value.checked=b.value}),t({focus:S,checked:b}),(C,E)=>(x(),B("div",{class:T(v.value),onClick:Xe(y,["prevent"])},[z("input",{id:i(u),ref_key:"input",ref:f,class:T(i(l).e("input")),type:"checkbox",role:"switch","aria-checked":b.value,"aria-disabled":i(c),"aria-label":e.ariaLabel,name:e.name,"true-value":e.activeValue,"false-value":e.inactiveValue,disabled:i(c),tabindex:e.tabindex,onChange:k,onKeydown:an(y,["enter"])},null,42,rU),!e.inlinePrompt&&(e.inactiveIcon||e.inactiveText||C.$slots.inactive)?(x(),B("span",{key:0,class:T(g.value)},[ee(C.$slots,"inactive",{},()=>[e.inactiveIcon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.inactiveIcon)))]),_:1})):te("v-if",!0),!e.inactiveIcon&&e.inactiveText?(x(),B("span",{key:1,"aria-hidden":b.value},Se(e.inactiveText),9,lU)):te("v-if",!0)])],2)):te("v-if",!0),z("span",{class:T(i(l).e("core")),style:Ke(h.value)},[e.inlinePrompt?(x(),B("div",{key:0,class:T(i(l).e("inner"))},[b.value?(x(),B("div",{key:1,class:T(i(l).e("inner-wrapper"))},[ee(C.$slots,"active",{},()=>[e.activeIcon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.activeIcon)))]),_:1})):te("v-if",!0),!e.activeIcon&&e.activeText?(x(),B("span",uU,Se(e.activeText),1)):te("v-if",!0)])],2)):(x(),B("div",{key:0,class:T(i(l).e("inner-wrapper"))},[ee(C.$slots,"inactive",{},()=>[e.inactiveIcon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.inactiveIcon)))]),_:1})):te("v-if",!0),!e.inactiveIcon&&e.inactiveText?(x(),B("span",iU,Se(e.inactiveText),1)):te("v-if",!0)])],2))],2)):te("v-if",!0),z("div",{class:T(i(l).e("action"))},[e.loading?(x(),ae(i(De),{key:0,class:T(i(l).is("loading"))},{default:J(()=>[Y(i(Aa))]),_:1},8,["class"])):b.value?ee(C.$slots,"active-action",{key:1},()=>[e.activeActionIcon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.activeActionIcon)))]),_:1})):te("v-if",!0)]):b.value?te("v-if",!0):ee(C.$slots,"inactive-action",{key:2},()=>[e.inactiveActionIcon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.inactiveActionIcon)))]),_:1})):te("v-if",!0)])],2)],6),!e.inlinePrompt&&(e.activeIcon||e.activeText||C.$slots.active)?(x(),B("span",{key:1,class:T(p.value)},[ee(C.$slots,"active",{},()=>[e.activeIcon?(x(),ae(i(De),{key:0},{default:J(()=>[(x(),ae(it(e.activeIcon)))]),_:1})):te("v-if",!0),!e.activeIcon&&e.activeText?(x(),B("span",{key:1,"aria-hidden":!b.value},Se(e.activeText),9,cU)):te("v-if",!0)])],2)):te("v-if",!0)],2))}}),fU=dU;const pU=rt(fU),cp=function(e){return e.target?.closest("td")},hU=function(e,t,n,o,a){if(!t&&!o&&(!a||ye(a)&&!a.length))return e;Le(n)?n=n==="descending"?-1:1:n=n&&n<0?-1:1;const s=o?null:function(l,u){return a?LS(Nn(a),c=>Le(c)?wn(l,c):c(l,u,e)):(t!=="$key"&&at(l)&&"$value"in l&&(l=l.$value),[at(l)?t?wn(l,t):null:l])},r=function(l,u){if(o)return o(l.value,u.value);for(let c=0,d=l.key?.length??0;cu.key?.[c])return 1}return 0};return e.map((l,u)=>({value:l,index:u,key:s?s(l,u):null})).sort((l,u)=>{let c=r(l,u);return c||(c=l.index-u.index),c*+n}).map(l=>l.value)},mE=function(e,t){let n=null;return e.columns.forEach(o=>{o.id===t&&(n=o)}),n},vU=function(e,t){let n=null;for(let o=0;o{if(!e)throw new Error("Row is required when get row identity");if(Le(t)){if(!t.includes("."))return`${e[t]}`;const n=t.split(".");let o=e;for(const a of n)o=o[a];return`${o}`}else if(Ve(t))return t.call(null,e);return""},al=function(e,t,n=!1,o="children"){const a=e||[],s={};return a.forEach((r,l)=>{if(s[Hn(r,t)]={row:r,index:l},n){const u=r[o];ye(u)&&Object.assign(s,al(u,t,!0,o))}}),s};function mU(e,t){const n={};let o;for(o in e)n[o]=e[o];for(o in t)if(Nt(t,o)){const a=t[o];Tt(a)||(n[o]=a)}return n}function Dm(e){return e===""||Tt(e)||(e=Number.parseInt(e,10),Number.isNaN(e)&&(e="")),e}function gE(e){return e===""||Tt(e)||(e=Dm(e),Number.isNaN(e)&&(e=80)),e}function gU(e){return He(e)?e:Le(e)?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null}function bU(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...o)=>t(n(...o)))}function wd(e,t,n,o,a,s,r){let l=s??0,u=!1;const d=(()=>{if(!r)return e.indexOf(t);const h=Hn(t,r);return e.findIndex(m=>Hn(m,r)===h)})(),f=d!==-1,v=a?.call(null,t,l),g=h=>{h==="add"?e.push(t):e.splice(d,1),u=!0},p=h=>{let m=0;const b=o?.children&&h[o.children];return b&&ye(b)&&(m+=b.length,b.forEach(k=>{m+=p(k)})),m};return(!a||v)&&(Ht(n)?n&&!f?g("add"):!n&&f&&g("remove"):g(f?"remove":"add")),!o?.checkStrictly&&o?.children&&ye(t[o.children])&&t[o.children].forEach(h=>{const m=wd(e,h,n??!f,o,a,l+1,r);l+=p(h)+1,m&&(u=m)}),u}function yU(e,t,n="children",o="hasChildren",a=!1){const s=l=>!(ye(l)&&l.length);function r(l,u,c){t(l,u,c),u.forEach(d=>{if(d[o]&&a){t(d,null,c+1);return}const f=d[n];s(f)||r(d,f,c+1)})}e.forEach(l=>{if(l[o]&&a){t(l,null,0);return}const u=l[n];s(u)||r(l,u,0)})}const wU=(e,t,n,o)=>{const a={strategy:"fixed",...e.popperOptions},s=Ve(o?.tooltipFormatter)?o.tooltipFormatter({row:n,column:o,cellValue:Ms(n,o.property).value}):void 0;return Ut(s)?{slotContent:s,content:null,...e,popperOptions:a}:{slotContent:null,content:s??t,...e,popperOptions:a}};let ho=null;function SU(e,t,n,o,a,s){const r=wU(e,t,n,o),l={...r,slotContent:void 0};if(ho?.trigger===a){const g=ho.vm?.component;DS(g?.props,l),g&&r.slotContent&&(g.slots.content=()=>[r.slotContent]);return}ho?.();const u=s?.refs.tableWrapper,c=u?.dataset.prefix,d=Y(Ln,{virtualTriggering:!0,virtualRef:a,appendTo:u,placement:"top",transition:"none",offset:0,hideAfter:0,...l},r.slotContent?{content:()=>r.slotContent}:void 0);d.appContext={...s.appContext,...s};const f=document.createElement("div");Ls(d,f),d.component.exposed.onOpen();const v=u?.querySelector(`.${c}-scrollbar__wrap`);ho=()=>{d.component?.exposed?.onClose&&d.component.exposed.onClose(),Ls(null,f);const g=ho;v?.removeEventListener("scroll",g),g.trigger=void 0,g.vm=void 0,ho=null},ho.trigger=a??void 0,ho.vm=d,v?.addEventListener("scroll",ho)}function bE(e){return e.children?LS(e.children,bE):[e]}function _0(e,t){return e+t.colSpan}const yE=(e,t,n,o)=>{let a=0,s=e;const r=n.states.columns.value;if(o){const u=bE(o[e]);a=r.slice(0,r.indexOf(u[0])).reduce(_0,0),s=a+u.reduce(_0,0)-1}else a=e;let l;switch(t){case"left":s=r.length-n.states.rightFixedLeafColumnsLength.value&&(l="right");break;default:s=r.length-n.states.rightFixedLeafColumnsLength.value&&(l="right")}return l?{direction:l,start:a,after:s}:{}},Bm=(e,t,n,o,a,s=0)=>{const r=[],{direction:l,start:u,after:c}=yE(t,n,o,a);if(l){const d=l==="left";r.push(`${e}-fixed-column--${l}`),d&&c+s===o.states.fixedLeafColumnsLength.value-1?r.push("is-last-column"):!d&&u-s===o.states.columns.value.length-o.states.rightFixedLeafColumnsLength.value&&r.push("is-first-column")}return r};function A0(e,t){return e+(jd(t.realWidth)||Number.isNaN(t.realWidth)?Number(t.width):t.realWidth)}const Fm=(e,t,n,o)=>{const{direction:a,start:s=0,after:r=0}=yE(e,t,n,o);if(!a)return;const l={},u=a==="left",c=n.states.columns.value;return u?l.left=c.slice(0,s).reduce(A0,0):l.right=c.slice(r+1).reverse().reduce(A0,0),l},El=(e,t)=>{e&&(Number.isNaN(e[t])||(e[t]=`${e[t]}px`))};function wE(e){return e.some(t=>Ut(t)?!(t.type===gn||t.type===Fe&&!wE(t.children)):!0)?e:null}function CU(e){const t=ft(),n=M(!1),o=M([]),a=(c,d)=>{const f=t.store.states.rowExpandable.value;return f?.(c,d)??!0};return{updateExpandRows:()=>{const c=e.data.value||[],d=e.rowKey.value;if(n.value)o.value=t.store.states.rowExpandable.value?c.filter(a):c.slice();else if(d){const f=al(o.value,d);o.value=c.filter((v,g)=>!!f[Hn(v,d)]&&a(v,g))}else o.value=[]},toggleRowExpansion:(c,d)=>{const f=(e.data.value||[]).indexOf(c);f>-1&&!a(c,f)||wd(o.value,c,d,void 0,void 0,void 0,e.rowKey.value)&&t.emit("expand-change",c,o.value.slice())},setExpandRowKeys:c=>{t.store.assertRowKey();const d=e.data.value||[],f=e.rowKey.value,v=al(d,f);o.value=c.reduce((g,p)=>{const h=v[p];return h&&a(h.row,h.index)&&g.push(h.row),g},[])},isRowExpanded:c=>{const d=e.rowKey.value;return d?!!al(o.value,d)[Hn(c,d)]:o.value.includes(c)},states:{expandRows:o,defaultExpandAll:n}}}function kU(e){const t=ft(),n=M(null),o=M(null),a=c=>{t.store.assertRowKey(),n.value=c,r(c)},s=()=>{n.value=null},r=c=>{const{data:d,rowKey:f}=e,v=o.value;let g=null;f.value&&(g=(i(d)||[]).find(p=>Hn(p,f.value)===c)??null),o.value=g??null,t.emit("current-change",o.value,v)};return{setCurrentRowKey:a,restoreCurrentRowKey:s,setCurrentRowByKey:r,updateCurrentRow:c=>{const d=o.value;if(c&&c!==d){o.value=c,t.emit("current-change",o.value,d);return}!c&&d&&(o.value=null,t.emit("current-change",null,d))},updateCurrentRowData:()=>{const c=e.rowKey.value,d=e.data.value||[],f=o.value;f&&!d.includes(f)?c?r(Hn(f,c)):(o.value=null,t.emit("current-change",null,f)):n.value&&(r(n.value),s())},states:{_currentRowKey:n,currentRow:o}}}function EU(e){const t=M([]),n=M({}),o=M(16),a=M(!1),s=M({}),r=M("hasChildren"),l=M("children"),u=M(!1),c=ft(),d=w(()=>e.rowKey.value?v(e.data.value||[]):{}),f=w(()=>{const S=e.rowKey.value,C=Object.keys(s.value),E={};return C.length&&C.forEach($=>{if(s.value[$].length){const O={children:[]};s.value[$].forEach(N=>{const R=Hn(N,S);O.children.push(R),N[r.value]&&!E[R]&&(E[R]={children:[]})}),E[$]=O}}),E}),v=S=>{const C=e.rowKey.value,E={};return yU(S,($,O,N)=>{const R=Hn($,C);ye(O)?E[R]={children:O.map(A=>Hn(A,C)),level:N}:a.value&&(E[R]={children:[],lazy:!0,level:N})},l.value,r.value,a.value),E},g=(S=!1,C)=>{C||=c.store?.states.defaultExpandAll.value;const E=d.value,$=f.value,O=Object.keys(E),N={};if(O.length){const R=i(n),A=[],_=(H,U)=>{if(S)return t.value?C||t.value.includes(U):!!(C||H?.expanded);{const W=C||t.value&&t.value.includes(U);return!!(H?.expanded||W)}};O.forEach(H=>{const U=R[H],W={...E[H]};if(W.expanded=_(U,H),W.lazy){const{loaded:P=!1,loading:I=!1}=U||{};W.loaded=!!P,W.loading=!!I,A.push(H)}N[H]=W});const V=Object.keys($);a.value&&V.length&&A.length&&V.forEach(H=>{const U=R[H],W=$[H].children;if(A.includes(H)){if(N[H].children?.length!==0)throw new Error("[ElTable]children must be an empty array.");N[H].children=W}else{const{loaded:P=!1,loading:I=!1}=U||{};N[H]={lazy:!0,loaded:!!P,loading:!!I,expanded:_(U,H),children:W,level:void 0}}})}n.value=N,c.store?.updateTableScrollY()};le(()=>t.value,()=>{g(!0)}),le(()=>d.value,()=>{g()}),le(()=>f.value,()=>{g()});const p=S=>{t.value=S,g()},h=S=>a.value&&S&&"loaded"in S&&!S.loaded,m=(S,C)=>{c.store.assertRowKey();const E=e.rowKey.value,$=Hn(S,E),O=$&&n.value[$];if($&&O&&"expanded"in O){const N=O.expanded;C=Tt(C)?!O.expanded:C,n.value[$].expanded=C,N!==C&&c.emit("expand-change",S,C),C&&h(O)&&k(S,$,O),c.store.updateTableScrollY()}},b=S=>{c.store.assertRowKey();const C=e.rowKey.value,E=Hn(S,C),$=n.value[E];h($)?k(S,E,$):m(S,void 0)},k=(S,C,E)=>{const{load:$}=c.props;$&&!n.value[C].loaded&&(n.value[C].loading=!0,$(S,E,O=>{if(!ye(O))throw new TypeError("[ElTable] data must be an array");n.value[C].loading=!1,n.value[C].loaded=!0,n.value[C].expanded=!0,O.length&&(s.value[C]=O),c.emit("expand-change",S,!0)}))};return{loadData:k,loadOrToggle:b,toggleTreeExpansion:m,updateTreeExpandKeys:p,updateTreeData:g,updateKeyChildren:(S,C)=>{const{lazy:E,rowKey:$}=c.props;if(E){if(!$)throw new Error("[Table] rowKey is required in updateKeyChild");s.value[S]&&(s.value[S]=C)}},normalize:v,states:{expandRowKeys:t,treeData:n,indent:o,lazy:a,lazyTreeNodeMap:s,lazyColumnIdentifier:r,childrenColumnName:l,checkStrictly:u}}}const xU=(e,t)=>{const n=t.sortingColumn;return!n||Le(n.sortable)?e:hU(e,t.sortProp,t.sortOrder,n.sortMethod,n.sortBy)},Nc=e=>{const t=[];return e.forEach(n=>{n.children&&n.children.length>0?t.push.apply(t,Nc(n.children)):t.push(n)}),t};function TU(){const e=ft(),{size:t}=Mn(e.proxy?.$props),n=M(null),o=M([]),a=M([]),s=M(!1),r=M([]),l=M([]),u=M([]),c=M([]),d=M([]),f=M([]),v=M([]),g=M([]),p=[],h=M(0),m=M(0),b=M(0),k=M(!1),y=M([]),S=M(!1),C=M(!1),E=M(null),$=M(null),O=M({}),N=M(null),R=M(null),A=M(null),_=M(null),V=M(null),H=w(()=>n.value?al(y.value,n.value):void 0);le(o,()=>{e.state&&(I(!1),e.props.tableLayout==="auto"&&e.refs.tableHeaderRef?.updateFixedColumnStyle())},{deep:!0});const U=()=>{if(!n.value)throw new Error("[ElTable] prop row-key is required")},W=Ue=>{Ue.children?.forEach(lt=>{lt.fixed=Ue.fixed,W(lt)})},P=()=>{r.value.forEach(de=>{W(de)}),c.value=r.value.filter(de=>[!0,"left"].includes(de.fixed));const Ue=r.value.find(de=>de.type==="selection");let lt;Ue&&Ue.fixed!=="right"&&!c.value.includes(Ue)&&r.value.indexOf(Ue)===0&&c.value.length&&(c.value.unshift(Ue),lt=!0),d.value=r.value.filter(de=>de.fixed==="right");const mt=r.value.filter(de=>(lt?de.type!=="selection":!0)&&!de.fixed);l.value=Array.from(c.value).concat(mt).concat(d.value);const kt=Nc(mt),be=Nc(c.value),ze=Nc(d.value);h.value=kt.length,m.value=be.length,b.value=ze.length,u.value=Array.from(be).concat(kt).concat(ze),s.value=c.value.length>0||d.value.length>0},I=(Ue,lt=!1)=>{Ue&&P(),lt?e.state.doLayout():e.state.debouncedUpdateLayout()},L=Ue=>H.value?!!H.value[Hn(Ue,n.value)]:y.value.includes(Ue),D=()=>{k.value=!1;const Ue=y.value;y.value=[],Ue.length&&e.emit("selection-change",[])},F=()=>{let Ue;if(n.value){Ue=[];const lt=e?.store?.states?.childrenColumnName.value,mt=al(o.value,n.value,!0,lt);for(const kt in H.value)Nt(H.value,kt)&&!mt[kt]&&Ue.push(H.value[kt].row)}else Ue=y.value.filter(lt=>!o.value.includes(lt));if(Ue.length){const lt=y.value.filter(mt=>!Ue.includes(mt));y.value=lt,e.emit("selection-change",lt.slice())}},q=()=>(y.value||[]).slice(),j=(Ue,lt,mt=!0,kt=!1)=>{const be={children:e?.store?.states?.childrenColumnName.value,checkStrictly:e?.store?.states?.checkStrictly.value};if(wd(y.value,Ue,lt,be,kt?void 0:E.value,o.value.indexOf(Ue),n.value)){const ze=(y.value||[]).slice();mt&&e.emit("select",ze,Ue),e.emit("selection-change",ze)}},X=()=>{const Ue=C.value?!k.value:!(k.value||y.value.length);k.value=Ue;let lt=!1,mt=0;const kt=e?.store?.states?.rowKey.value,{childrenColumnName:be}=e.store.states,ze={children:be.value,checkStrictly:!1};o.value.forEach((de,Ge)=>{const $t=Ge+mt;wd(y.value,de,Ue,ze,E.value,$t,kt)&&(lt=!0),mt+=he(Hn(de,kt))}),lt&&e.emit("selection-change",y.value?y.value.slice():[]),e.emit("select-all",(y.value||[]).slice())},Q=()=>{if(o.value?.length===0){k.value=!1;return}const{childrenColumnName:Ue}=e.store.states;let lt=0,mt=0;const kt=ze=>{for(const de of ze){const Ge=E.value&&E.value.call(null,de,lt);if(L(de))mt++;else if(!E.value||Ge)return!1;if(lt++,de[Ue.value]?.length&&!kt(de[Ue.value]))return!1}return!0},be=kt(o.value||[]);k.value=mt===0?!1:be},he=Ue=>{if(!e||!e.store)return 0;const{treeData:lt}=e.store.states;let mt=0;const kt=lt.value[Ue]?.children;return kt&&(mt+=kt.length,kt.forEach(be=>{mt+=he(be)})),mt},ue=(Ue,lt)=>{const mt={};return Nn(Ue).forEach(kt=>{O.value[kt.id]=lt,mt[kt.columnKey||kt.id]=lt}),mt},ge=(Ue,lt,mt)=>{R.value&&R.value!==Ue&&(R.value.order=null),R.value=Ue,A.value=lt,_.value=mt},ie=()=>{let Ue=i(a);Object.keys(O.value).forEach(lt=>{const mt=O.value[lt];if(!mt||mt.length===0)return;const kt=mE({columns:u.value},lt);kt&&kt.filterMethod&&(Ue=Ue.filter(be=>mt.some(ze=>kt.filterMethod.call(null,ze,be,kt))))}),N.value=Ue},oe=()=>{o.value=xU(N.value??[],{sortingColumn:R.value,sortProp:A.value,sortOrder:_.value})},ne=(Ue=void 0)=>{Ue?.filter||ie(),oe()},K=Ue=>{const{tableHeaderRef:lt}=e.refs;if(!lt)return;const mt=Object.assign({},lt.filterPanels),kt=Object.keys(mt);if(kt.length)if(Le(Ue)&&(Ue=[Ue]),ye(Ue)){const be=Ue.map(ze=>vU({columns:u.value},ze));kt.forEach(ze=>{const de=be.find(Ge=>Ge.id===ze);de&&(de.filteredValue=[])}),e.store.commit("filterChange",{column:be,values:[],silent:!0,multi:!0})}else kt.forEach(be=>{const ze=u.value.find(de=>de.id===be);ze&&(ze.filteredValue=[])}),O.value={},e.store.commit("filterChange",{column:{},values:[],silent:!0})},Z=()=>{R.value&&(ge(null,null,null),e.store.commit("changeSortCondition",{silent:!0}))},{setExpandRowKeys:re,toggleRowExpansion:ce,updateExpandRows:ve,states:ke,isRowExpanded:Ne}=CU({data:o,rowKey:n}),{updateTreeExpandKeys:Ie,toggleTreeExpansion:$e,updateTreeData:pe,updateKeyChildren:Ee,loadOrToggle:me,states:Me}=EU({data:o,rowKey:n}),{updateCurrentRowData:We,updateCurrentRow:Ze,setCurrentRowKey:Pe,states:Ae}=kU({data:o,rowKey:n});return{assertRowKey:U,updateColumns:P,scheduleLayout:I,isSelected:L,clearSelection:D,cleanSelection:F,getSelectionRows:q,toggleRowSelection:j,_toggleAllSelection:X,toggleAllSelection:null,updateAllSelected:Q,updateFilters:ue,updateCurrentRow:Ze,updateSort:ge,execFilter:ie,execSort:oe,execQuery:ne,clearFilter:K,clearSort:Z,toggleRowExpansion:ce,setExpandRowKeysAdapter:Ue=>{re(Ue),Ie(Ue)},setCurrentRowKey:Pe,toggleRowExpansionAdapter:(Ue,lt)=>{u.value.some(({type:mt})=>mt==="expand")?ce(Ue,lt):$e(Ue,lt)},isRowExpanded:Ne,updateExpandRows:ve,updateCurrentRowData:We,loadOrToggle:me,updateTreeData:pe,updateKeyChildren:Ee,states:{tableSize:t,rowKey:n,data:o,_data:a,isComplex:s,_columns:r,originColumns:l,columns:u,fixedColumns:c,rightFixedColumns:d,leafColumns:f,fixedLeafColumns:v,rightFixedLeafColumns:g,updateOrderFns:p,leafColumnsLength:h,fixedLeafColumnsLength:m,rightFixedLeafColumnsLength:b,isAllSelected:k,selection:y,reserveSelection:S,selectOnIndeterminate:C,selectable:E,rowExpandable:$,filters:O,filteredData:N,sortingColumn:R,sortProp:A,sortOrder:_,hoverRow:V,...ke,...Me,...Ae}}}function Oh(e,t){return e.map(n=>n.id===t.id?t:(n.children?.length&&(n.children=Oh(n.children,t)),n))}function Rh(e){e.forEach(t=>{t.no=t.getColumnIndex?.(),t.children?.length&&Rh(t.children)}),e.sort((t,n)=>t.no-n.no)}function $U(){const e=ft(),t=TU(),n=fe("table"),{t:o}=Ct();return{ns:n,t:o,...t,mutations:{setData(l,u){const c=i(l._data)!==u;l.data.value=u,l._data.value=u,e.store.execQuery(),e.store.updateCurrentRowData(),e.store.updateExpandRows(),e.store.updateTreeData(e.store.states.defaultExpandAll.value),i(l.reserveSelection)?e.store.assertRowKey():c?e.store.clearSelection():e.store.cleanSelection(),e.store.updateAllSelected(),e.$ready&&e.store.scheduleLayout()},insertColumn(l,u,c,d){const f=i(l._columns);let v=[];c?(c&&!c.children&&(c.children=[]),c.children?.push(u),v=Oh(f,c)):(f.push(u),v=f),Rh(v),l._columns.value=v,l.updateOrderFns.push(d),u.type==="selection"&&(l.selectable.value=u.selectable,l.reserveSelection.value=u.reserveSelection),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},updateColumnOrder(l,u){u.getColumnIndex?.()!==u.no&&(Rh(l._columns.value),e.$ready&&e.store.updateColumns())},removeColumn(l,u,c,d){const f=i(l._columns)||[];if(c)c.children?.splice(c.children.findIndex(g=>g.id===u.id),1),Re(()=>{c.children?.length===0&&delete c.children}),l._columns.value=Oh(f,c);else{const g=f.indexOf(u);g>-1&&(f.splice(g,1),l._columns.value=f)}const v=l.updateOrderFns.indexOf(d);v>-1&&l.updateOrderFns.splice(v,1),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},sort(l,u){const{prop:c,order:d,init:f}=u;if(c){const v=i(l.columns).find(g=>g.property===c);v&&(v.order=d,e.store.updateSort(v,c,d),e.store.commit("changeSortCondition",{init:f}))}},changeSortCondition(l,u){const{sortingColumn:c,sortProp:d,sortOrder:f}=l,v=i(c),g=i(d),p=i(f);jd(p)&&(l.sortingColumn.value=null,l.sortProp.value=null),e.store.execQuery({filter:!0}),(!u||!(u.silent||u.init))&&e.emit("sort-change",{column:v,prop:g,order:p}),e.store.updateTableScrollY()},filterChange(l,u){const{column:c,values:d,silent:f}=u,v=e.store.updateFilters(c,d);e.store.execQuery(),f||e.emit("filter-change",v),e.store.updateTableScrollY()},toggleAllSelection(){e.store.toggleAllSelection?.()},rowSelectedChanged(l,u){e.store.toggleRowSelection(u),e.store.updateAllSelected()},setHoverRow(l,u){l.hoverRow.value=u},setCurrentRow(l,u){e.store.updateCurrentRow(u)}},commit:function(l,...u){const c=e.store.mutations;if(c[l])c[l].apply(e,[e.store.states,...u]);else throw new Error(`Action not found: ${l}`)},updateTableScrollY:function(){Re(()=>e.layout.updateScrollY.apply(e.layout))}}}const Vm={rowKey:"rowKey",defaultExpandAll:"defaultExpandAll",rowExpandable:"rowExpandable",selectOnIndeterminate:"selectOnIndeterminate",indent:"indent",lazy:"lazy","treeProps.hasChildren":{key:"lazyColumnIdentifier",default:"hasChildren"},"treeProps.children":{key:"childrenColumnName",default:"children"},"treeProps.checkStrictly":{key:"checkStrictly",default:!1}};function OU(e,t){if(!e)throw new Error("Table is required.");const n=$U();return n.toggleAllSelection=Ma(n._toggleAllSelection,10),Object.keys(Vm).forEach(o=>{SE(CE(t,o),o,n)}),RU(n,t),n}function RU(e,t){Object.keys(Vm).forEach(n=>{le(()=>CE(t,n),o=>{SE(o,n,e)})})}function SE(e,t,n){let o=e,a=Vm[t];at(a)&&(o=o||a.default,a=a.key),n.states[a].value=o}function CE(e,t){if(t.includes(".")){const n=t.split(".");let o=e;return n.forEach(a=>{o=o[a]}),o}else return e[t]}var NU=class{constructor(e){this.observers=[],this.table=null,this.store=null,this.columns=[],this.fit=!0,this.showHeader=!0,this.height=M(null),this.scrollX=M(!1),this.scrollY=M(!1),this.bodyWidth=M(null),this.fixedWidth=M(null),this.rightFixedWidth=M(null),this.gutterWidth=0;for(const t in e)Nt(e,t)&&(Jt(this[t])?this[t].value=e[t]:this[t]=e[t]);if(!this.table)throw new Error("Table is required for Table Layout");if(!this.store)throw new Error("Store is required for Table Layout")}updateScrollY(){const e=this.height.value;if(jd(e))return!1;const t=this.table.refs.scrollBarRef;if(this.table.vnode.el&&t?.wrapRef){let n=!0;const o=this.scrollY.value;return n=t.wrapRef.scrollHeight>t.wrapRef.clientHeight,this.scrollY.value=n,o!==n}return!1}setHeight(e,t="height"){if(!Mt)return;const n=this.table.vnode.el;if(e=gU(e),this.height.value=Number(e),!n&&(e||e===0)){Re(()=>this.setHeight(e,t));return}n&&He(e)?(n.style[t]=`${e}px`,this.updateElsHeight()):n&&Le(e)&&(n.style[t]=e,this.updateElsHeight())}setMaxHeight(e){this.setHeight(e,"max-height")}getFlattenColumns(){const e=[];return this.table.store.states.columns.value.forEach(t=>{t.isColumnGroup?e.push.apply(e,t.columns):e.push(t)}),e}updateElsHeight(){this.updateScrollY(),this.notifyObservers("scrollable")}headerDisplayNone(e){if(!e)return!0;let t=e;for(;t.tagName!=="DIV";){if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}updateColumnsWidth(){if(!Mt)return;const e=this.fit,t=this.table.vnode.el?.clientWidth;let n=0;const o=this.getFlattenColumns(),a=o.filter(l=>!He(l.width));if(o.forEach(l=>{He(l.width)&&l.realWidth&&(l.realWidth=null)}),a.length>0&&e){if(o.forEach(l=>{n+=Number(l.width||l.minWidth||80)}),n<=t){this.scrollX.value=!1;const l=t-n;if(a.length===1)a[0].realWidth=Number(a[0].minWidth||80)+l;else{const u=l/a.reduce((d,f)=>d+Number(f.minWidth||80),0);let c=0;a.forEach((d,f)=>{if(f===0)return;const v=Math.floor(Number(d.minWidth||80)*u);c+=v,d.realWidth=Number(d.minWidth||80)+v}),a[0].realWidth=Number(a[0].minWidth||80)+l-c}}else this.scrollX.value=!0,a.forEach(l=>{l.realWidth=Number(l.minWidth)});this.bodyWidth.value=Math.max(n,t),this.table.state.resizeState.value.width=this.bodyWidth.value}else o.forEach(l=>{!l.width&&!l.minWidth?l.realWidth=80:l.realWidth=Number(l.width||l.minWidth),n+=l.realWidth}),this.scrollX.value=n>t,this.bodyWidth.value=n;const s=this.store.states.fixedColumns.value;if(s.length>0){let l=0;s.forEach(u=>{l+=Number(u.realWidth||u.width)}),this.fixedWidth.value=l}const r=this.store.states.rightFixedColumns.value;if(r.length>0){let l=0;r.forEach(u=>{l+=Number(u.realWidth||u.width)}),this.rightFixedWidth.value=l}this.notifyObservers("columns")}addObserver(e){this.observers.push(e)}removeObserver(e){const t=this.observers.indexOf(e);t!==-1&&this.observers.splice(t,1)}notifyObservers(e){this.observers.forEach(t=>{switch(e){case"columns":t.state?.onColumnsChange(this);break;case"scrollable":t.state?.onScrollableChange(this);break;default:throw new Error(`Table Layout don't have event ${e}.`)}})}};const fa=Symbol("ElTable"),kE=e=>{const t=[];return e.forEach(n=>{n.children?(t.push(n),t.push.apply(t,kE(n.children))):t.push(n)}),t},EE=e=>{let t=1;const n=(a,s)=>{if(s&&(a.level=s.level+1,t{n(l,a),r+=l.colSpan}),a.colSpan=r}else a.colSpan=1};e.forEach(a=>{a.level=1,n(a,void 0)});const o=[];for(let a=0;a{a.children?(a.rowSpan=1,a.children.forEach(s=>s.isSubColumn=!0)):a.rowSpan=t-a.level+1,o[a.level-1].push(a)}),o};function IU(e){const t=_e(fa),n=w(()=>EE(e.store.states.originColumns.value));return{isGroup:w(()=>{const s=n.value.length>1;return s&&t&&(t.state.isGroup.value=!0),s}),toggleAllSelection:s=>{s.stopPropagation(),t?.store.commit("toggleAllSelection")},columnRows:n}}var PU=se({name:"ElTableFilterPanel",components:{ElCheckbox:ra,ElCheckboxGroup:ym,ElScrollbar:aa,ElTooltip:Ln,ElIcon:De,ArrowDown:Fa,ArrowUp:nf},props:{placement:{type:String,default:"bottom-start"},store:{type:Object},column:{type:Object},upDataColumn:{type:Function},appendTo:zt.appendTo},setup(e){const t=ft(),{t:n}=Ct(),o=fe("table-filter"),a=t?.parent;e.column&&!a.filterPanels.value[e.column.id]&&(a.filterPanels.value[e.column.id]=t);const s=M(null),r=M(null),l=M(0),u=w(()=>e.column&&e.column.filters),c=w(()=>e.column&&e.column.filterClassName?`${o.b()} ${e.column.filterClassName}`:o.b()),d=w({get:()=>(e.column?.filteredValue||[])[0],set:$=>{f.value&&(mo($)?f.value.splice(0,1):f.value.splice(0,1,$))}}),f=w({get(){return e.column?e.column.filteredValue||[]:[]},set($){e.column&&e.upDataColumn?.("filteredValue",$)}}),v=w(()=>e.column?e.column.filterMultiple:!0),g=$=>$.value===d.value,p=()=>{s.value?.onClose()},h=()=>{k(f.value),p()},m=()=>{f.value=[],k(f.value),p()},b=($,O)=>{d.value=$,l.value=O,mo($)?k([]):k(f.value),p()},k=$=>{e.store?.commit("filterChange",{column:e.column,values:$}),e.store?.updateAllSelected()},y=()=>{r.value?.focus(),!v.value&&C(),e.column&&e.upDataColumn?.("filterOpened",!0)},S=()=>{e.column&&e.upDataColumn?.("filterOpened",!1)},C=()=>{if(mo(d)){l.value=0;return}const $=(u.value||[]).findIndex(O=>O.value===d.value);l.value=$>=0?$+1:0};return{multiple:v,filterClassName:c,filteredValue:f,filterValue:d,filters:u,handleConfirm:h,handleReset:m,handleSelect:b,isPropAbsent:mo,isActive:g,t:n,ns:o,tooltipRef:s,rootRef:r,checkedIndex:l,handleShowTooltip:y,handleHideTooltip:S,handleKeydown:$=>{const O=jt($),N=(u.value?u.value.length:0)+1;let R=l.value,A=!0;switch(O){case we.down:case we.right:R=(R+1)%N;break;case we.up:case we.left:R=(R-1+N)%N;break;case we.tab:p(),A=!1;break;case we.enter:case we.space:if(R===0)b(null,0);else{const _=(u.value||[])[R-1];_.value&&b(_.value,R)}break;default:A=!1;break}A&&$.preventDefault(),l.value=R,r.value?.querySelector(`.${o.e("list-item")}:nth-child(${R+1})`)?.focus()}}}});const MU=["disabled"],_U=["tabindex","aria-checked"],AU=["tabindex","aria-checked","onClick"],LU=["aria-label"];function DU(e,t,n,o,a,s){const r=It("el-checkbox"),l=It("el-checkbox-group"),u=It("el-scrollbar"),c=It("arrow-up"),d=It("arrow-down"),f=It("el-icon"),v=It("el-tooltip");return x(),ae(v,{ref:"tooltipRef",offset:0,placement:e.placement,"show-arrow":!1,trigger:"click",role:"dialog",teleported:"",effect:"light",pure:"",loop:"","popper-class":e.filterClassName,persistent:"","append-to":e.appendTo,onShow:e.handleShowTooltip,onHide:e.handleHideTooltip},{content:J(()=>[e.multiple?(x(),B("div",{key:0,ref:"rootRef",tabindex:"-1",class:T(e.ns.e("multiple"))},[z("div",{class:T(e.ns.e("content"))},[Y(u,{"wrap-class":e.ns.e("wrap")},{default:J(()=>[Y(l,{modelValue:e.filteredValue,"onUpdate:modelValue":t[0]||(t[0]=g=>e.filteredValue=g),class:T(e.ns.e("checkbox-group"))},{default:J(()=>[(x(!0),B(Fe,null,yt(e.filters,g=>(x(),ae(r,{key:g.value,value:g.value},{default:J(()=>[wt(Se(g.text),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","class"])]),_:1},8,["wrap-class"])],2),z("div",{class:T(e.ns.e("bottom"))},[z("button",{class:T(e.ns.is("disabled",e.filteredValue.length===0)),disabled:e.filteredValue.length===0,type:"button",onClick:t[1]||(t[1]=(...g)=>e.handleConfirm&&e.handleConfirm(...g))},Se(e.t("el.table.confirmFilter")),11,MU),z("button",{type:"button",onClick:t[2]||(t[2]=(...g)=>e.handleReset&&e.handleReset(...g))},Se(e.t("el.table.resetFilter")),1)],2)],2)):(x(),B("ul",{key:1,ref:"rootRef",tabindex:"-1",role:"radiogroup",class:T(e.ns.e("list")),onKeydown:t[4]||(t[4]=(...g)=>e.handleKeydown&&e.handleKeydown(...g))},[z("li",{role:"radio",class:T([e.ns.e("list-item"),e.ns.is("active",e.isPropAbsent(e.filterValue))]),tabindex:e.checkedIndex===0?0:-1,"aria-checked":e.isPropAbsent(e.filterValue),onClick:t[3]||(t[3]=g=>e.handleSelect(null,0))},Se(e.t("el.table.clearFilter")),11,_U),(x(!0),B(Fe,null,yt(e.filters,(g,p)=>(x(),B("li",{key:g.value,role:"radio",class:T([e.ns.e("list-item"),e.ns.is("active",e.isActive(g))]),tabindex:e.checkedIndex===p+1?0:-1,"aria-checked":e.isActive(g),onClick:h=>e.handleSelect(g.value,p+1)},Se(g.text),11,AU))),128))],34))]),default:J(()=>[z("button",{type:"button",class:T(`${e.ns.namespace.value}-table__column-filter-trigger`),"aria-label":e.t("el.table.filterLabel",{column:e.column?.label||""})},[Y(f,null,{default:J(()=>[ee(e.$slots,"filter-icon",{},()=>[e.column?.filterOpened?(x(),ae(c,{key:0})):(x(),ae(d,{key:1}))])]),_:3})],10,LU)]),_:3},8,["placement","popper-class","append-to","onShow","onHide"])}var BU=$n(PU,[["render",DU]]);function zm(e){const t=ft();_d(()=>{n.value.addObserver(t)}),ht(()=>{o(n.value),a(n.value)}),la(()=>{o(n.value),a(n.value)}),$l(()=>{n.value.removeObserver(t)});const n=w(()=>{const s=e.layout;if(!s)throw new Error("Can not find table layout.");return s}),o=s=>{const r=e.vnode.el?.querySelectorAll("colgroup > col")||[];if(!r.length)return;const l=s.getFlattenColumns(),u={};l.forEach(c=>{u[c.id]=c});for(let c=0,d=r.length;c{const r=e.vnode.el?.querySelectorAll("colgroup > col[name=gutter]")||[];for(let u=0,c=r.length;u{h.stopPropagation()},s=(h,m)=>{!m.filters&&m.sortable?p(h,m,!1):m.filterable&&!m.sortable&&a(h),o?.emit("header-click",m,h)},r=(h,m)=>{o?.emit("header-contextmenu",m,h)},l=M(null),u=M(!1),c=M(),d=(h,m)=>{if(Mt&&!(m.children&&m.children.length>0)&&l.value&&e.border&&l.value.id===m.id){u.value=!0;const b=o;t("set-drag-visible",!0);const k=b?.vnode.el?.getBoundingClientRect().left,y=n?.vnode?.el?.querySelector(`th.${m.id}`),S=y.getBoundingClientRect(),C=S.left-k+30;Do(y,"noclick"),c.value={startMouseLeft:h.clientX,startLeft:S.right-k,startColumnLeft:S.left-k,tableLeft:k};const E=b?.refs.resizeProxy;E.style.left=`${c.value.startLeft}px`,document.onselectstart=function(){return!1},document.ondragstart=function(){return!1};const $=N=>{const R=N.clientX-c.value.startMouseLeft,A=c.value.startLeft+R;E.style.left=`${Math.max(C,A)}px`},O=()=>{if(u.value){const{startColumnLeft:N,startLeft:R}=c.value;m.width=m.realWidth=Number.parseInt(E.style.left,10)-N,b?.emit("header-dragend",m.width,R-N,m,h),requestAnimationFrame(()=>{e.store.scheduleLayout(!1,!0)}),document.body.style.cursor="",u.value=!1,l.value=null,c.value=void 0,t("set-drag-visible",!1)}document.removeEventListener("mousemove",$),document.removeEventListener("mouseup",O),document.onselectstart=null,document.ondragstart=null,setTimeout(()=>{to(y,"noclick")},0)};document.addEventListener("mousemove",$),document.addEventListener("mouseup",O)}},f=(h,m)=>{if(!e.border||m.children&&m.children.length>0)return;const b=h.target,k=vo(b)?b.closest("th"):null;if(!k)return;const y=$a(k,"is-sortable");if(y){const N=u.value?"col-resize":"";k.style.cursor=N;const R=k.querySelector(".caret-wrapper");R&&(R.style.cursor=N)}if(!m.resizable||u.value){l.value=null;return}const S=k.getBoundingClientRect(),C=k.parentNode?.lastElementChild===k,E=e.allowDragLastColumn||!C,$=S.width>12&&S.right-h.clientX<8&&E,O=$?"col-resize":"";document.body.style.cursor=O,l.value=$?m:null,y&&(k.style.cursor=O)},v=()=>{!Mt||u.value||(document.body.style.cursor="")},g=({order:h,sortOrders:m})=>{if(h==="")return m[0];const b=m.indexOf(h||null);return m[b>m.length-2?0:b+1]},p=(h,m,b)=>{h.stopPropagation();const k=m.order===b?null:b||g(m),y=h.target?.closest("th");if(y&&$a(y,"noclick")){to(y,"noclick");return}if(!m.sortable)return;const S=h.currentTarget;if(["ascending","descending"].some(N=>$a(S,N)&&!m.sortOrders.includes(N)))return;const C=e.store.states;let E=C.sortProp.value,$;const O=C.sortingColumn.value;(O!==m||O===m&&jd(O.order))&&(O&&(O.order=null),C.sortingColumn.value=m,E=m.property),k?$=m.order=k:$=m.order=null,C.sortProp.value=E,C.sortOrder.value=$,o?.store.commit("changeSortCondition")};return{handleHeaderClick:s,handleHeaderContextMenu:r,handleMouseDown:d,handleMouseMove:f,handleMouseOut:v,handleSortClick:p,handleFilterClick:a}}function VU(e){const t=_e(fa),n=fe("table");return{getHeaderRowStyle:l=>{const u=t?.props.headerRowStyle;return Ve(u)?u.call(null,{rowIndex:l}):u},getHeaderRowClass:l=>{const u=[],c=t?.props.headerRowClassName;return Le(c)?u.push(c):Ve(c)&&u.push(c.call(null,{rowIndex:l})),u.join(" ")},getHeaderCellStyle:(l,u,c,d)=>{let f=t?.props.headerCellStyle??{};Ve(f)&&(f=f.call(null,{rowIndex:l,columnIndex:u,row:c,column:d}));const v=Fm(u,d.fixed,e.store,c);return El(v,"left"),El(v,"right"),Object.assign({},f,v)},getHeaderCellClass:(l,u,c,d)=>{const f=Bm(n.b(),u,d.fixed,e.store,c),v=[d.id,d.order,d.headerAlign,d.className,d.labelClassName,...f];d.children||v.push("is-leaf"),d.sortable&&v.push("is-sortable");const g=t?.props.headerCellClassName;return Le(g)?v.push(g):Ve(g)&&v.push(g.call(null,{rowIndex:l,columnIndex:u,row:c,column:d})),v.push(n.e("cell")),v.filter(p=>!!p).join(" ")}}}var zU=se({name:"ElTableHeader",components:{ElCheckbox:ra},props:{fixed:{type:String,default:""},store:{required:!0,type:Object},border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})},appendFilterPanelTo:{type:String},allowDragLastColumn:{type:Boolean}},setup(e,{emit:t}){const n=ft(),o=_e(fa),a=fe("table"),s=M({}),{onColumnsChange:r,onScrollableChange:l}=zm(o),u=o?.props.tableLayout==="auto",c=At(new Map),d=M();let f;const v=()=>{f=setTimeout(()=>{c.size>0&&(c.forEach((_,V)=>{const H=d.value.querySelector(`.${V.replace(/\s/g,".")}`);H&&(_.width=H.getBoundingClientRect().width||_.width)}),c.clear())})};le(c,v),Bt(()=>{f&&(clearTimeout(f),f=void 0)}),ht(async()=>{await Re(),await Re();const{prop:_,order:V}=e.defaultSort;o?.store.commit("sort",{prop:_,order:V,init:!0}),v()});const{handleHeaderClick:g,handleHeaderContextMenu:p,handleMouseDown:h,handleMouseMove:m,handleMouseOut:b,handleSortClick:k,handleFilterClick:y}=FU(e,t),{getHeaderRowStyle:S,getHeaderRowClass:C,getHeaderCellStyle:E,getHeaderCellClass:$}=VU(e),{isGroup:O,toggleAllSelection:N,columnRows:R}=IU(e),{t:A}=Ct();return n.state={onColumnsChange:r,onScrollableChange:l},n.filterPanels=s,{ns:a,t:A,filterPanels:s,onColumnsChange:r,onScrollableChange:l,columnRows:R,getHeaderRowClass:C,getHeaderRowStyle:S,getHeaderCellClass:$,getHeaderCellStyle:E,handleHeaderClick:g,handleHeaderContextMenu:p,handleMouseDown:h,handleMouseMove:m,handleMouseOut:b,handleSortClick:k,handleFilterClick:y,isGroup:O,toggleAllSelection:N,saveIndexSelection:c,isTableLayoutAuto:u,theadRef:d,updateFixedColumnStyle:v}},render(){const{ns:e,t,isGroup:n,columnRows:o,getHeaderCellStyle:a,getHeaderCellClass:s,getHeaderRowClass:r,getHeaderRowStyle:l,handleHeaderClick:u,handleHeaderContextMenu:c,handleMouseDown:d,handleMouseMove:f,handleSortClick:v,handleMouseOut:g,store:p,$parent:h,saveIndexSelection:m,isTableLayoutAuto:b}=this;let k=1;return Ye("thead",{ref:"theadRef",class:e.is("group",n)},o.map((y,S)=>Ye("tr",{class:r(S),key:S,style:l(S)},y.map((C,E)=>{C.rowSpan>k&&(k=C.rowSpan);const $=s(S,E,y,C);return b&&C.fixed&&m.set($,C),Ye("th",{class:$,colspan:C.colSpan,key:`${C.id}-thead`,rowspan:C.rowSpan,scope:C.colSpan>1?"colgroup":"col",ariaSort:C.sortable?C.order:void 0,style:a(S,E,y,C),onClick:O=>{O.currentTarget?.classList.contains("noclick")||u(O,C)},onContextmenu:O=>c(O,C),onMousedown:O=>d(O,C),onMousemove:O=>f(O,C),onMouseout:g},[Ye("div",{class:["cell",C.filteredValue&&C.filteredValue.length>0?"highlight":""]},[C.renderHeader?C.renderHeader({column:C,$index:E,store:p,_self:h}):C.label,C.sortable&&Ye("button",{type:"button",class:"caret-wrapper","aria-label":t("el.table.sortLabel",{column:C.label||""}),onClick:O=>v(O,C)},[Ye("i",{onClick:O=>v(O,C,"ascending"),class:"sort-caret ascending"}),Ye("i",{onClick:O=>v(O,C,"descending"),class:"sort-caret descending"})]),C.filterable&&Ye(BU,{store:p,placement:C.filterPlacement||"bottom-start",appendTo:h?.appendFilterPanelTo,column:C,upDataColumn:(O,N)=>{C[O]=N}},{"filter-icon":()=>C.renderFilterIcon?C.renderFilterIcon({filterOpened:C.filterOpened}):null})])])}))))}});function dp(e,t,n=.03){return e-t>n}function HU(e){const t=_e(fa),n=M(""),o=M(Ye("div")),a=(p,h,m)=>{const b=t,k=cp(p);let y=null;const S=b?.vnode.el?.dataset.prefix;k&&(y=M0({columns:e.store?.states.columns.value??[]},k,S),y&&b?.emit(`cell-${m}`,h,y,k,p)),b?.emit(`row-${m}`,h,y,p)},s=(p,h)=>{a(p,h,"dblclick")},r=(p,h)=>{e.store?.commit("setCurrentRow",h),a(p,h,"click")},l=(p,h)=>{a(p,h,"contextmenu")},u=Ma(p=>{e.store?.commit("setHoverRow",p)},30),c=Ma(()=>{e.store?.commit("setHoverRow",null)},30),d=p=>{const h=window.getComputedStyle(p,null);return{left:Number.parseInt(h.paddingLeft,10)||0,right:Number.parseInt(h.paddingRight,10)||0,top:Number.parseInt(h.paddingTop,10)||0,bottom:Number.parseInt(h.paddingBottom,10)||0}},f=(p,h,m)=>{let b=h?.target?.parentNode;for(;p>1&&(b=b?.nextSibling,!(!b||b.nodeName!=="TR"));)m(b,"hover-row hover-fixed-row"),p--};return{handleDoubleClick:s,handleClick:r,handleContextMenu:l,handleMouseEnter:u,handleMouseLeave:c,handleCellMouseEnter:(p,h,m)=>{if(!t)return;const b=t,k=cp(p),y=b?.vnode.el?.dataset.prefix;let S=null;if(k){if(S=M0({columns:e.store?.states.columns.value??[]},k,y),!S)return;k.rowSpan>1&&f(k.rowSpan,p,Do);const P=b.hoverState={cell:k,column:S,row:h};b?.emit("cell-mouse-enter",P.row,P.column,P.cell,p)}if(!m){ho?.trigger===k&&ho?.();return}const C=p.target.querySelector(".cell");if(!($a(C,`${y}-tooltip`)&&C.childNodes.length&&C.textContent?.trim()))return;const E=document.createRange();E.setStart(C,0),E.setEnd(C,C.childNodes.length);const{width:$,height:O}=E.getBoundingClientRect(),{width:N,height:R}=C.getBoundingClientRect(),{top:A,left:_,right:V,bottom:H}=d(C),U=_+V,W=A+H;dp($+U,N)||dp(O+W,R)||dp(C.scrollWidth,N)?SU(m,(k?.innerText||k?.textContent)??"",h,S,k,b):ho?.trigger===k&&ho?.()},handleCellMouseLeave:p=>{const h=cp(p);if(!h)return;h.rowSpan>1&&f(h.rowSpan,p,to);const m=t?.hoverState;t?.emit("cell-mouse-leave",m?.row,m?.column,m?.cell,p)},tooltipContent:n,tooltipTrigger:o}}function KU(e){const t=_e(fa),n=fe("table");return{getRowStyle:(c,d)=>{const f=t?.props.rowStyle;return Ve(f)?f.call(null,{row:c,rowIndex:d}):f||null},getRowClass:(c,d,f)=>{const v=[n.e("row")];t?.props.highlightCurrentRow&&c===e.store?.states.currentRow.value&&v.push("current-row"),e.stripe&&f%2===1&&v.push(n.em("row","striped"));const g=t?.props.rowClassName;return Le(g)?v.push(g):Ve(g)&&v.push(g.call(null,{row:c,rowIndex:d})),v},getCellStyle:(c,d,f,v)=>{const g=t?.props.cellStyle;let p=g??{};Ve(g)&&(p=g.call(null,{rowIndex:c,columnIndex:d,row:f,column:v}));const h=Fm(d,e?.fixed,e.store);return El(h,"left"),El(h,"right"),Object.assign({},p,h)},getCellClass:(c,d,f,v,g)=>{const p=Bm(n.b(),d,e?.fixed,e.store,void 0,g),h=[v.id,v.align,v.className,...p],m=t?.props.cellClassName;return Le(m)?h.push(m):Ve(m)&&h.push(m.call(null,{rowIndex:c,columnIndex:d,row:f,column:v})),h.push(n.e("cell")),h.filter(b=>!!b).join(" ")},getSpan:(c,d,f,v)=>{let g=1,p=1;const h=t?.props.spanMethod;if(Ve(h)){const m=h({row:c,column:d,rowIndex:f,columnIndex:v});ye(m)?(g=m[0],p=m[1]):at(m)&&(g=m.rowspan,p=m.colspan)}return{rowspan:g,colspan:p}},getColspanRealWidth:(c,d,f)=>{if(d<1)return c[f].realWidth;const v=c.map(({realWidth:g,width:p})=>g||p).slice(f,f+d);return Number(v.reduce((g,p)=>Number(g)+Number(p),-1))}}}const WU=["colspan","rowspan"];var jU=se({name:"TableTdWrapper",__name:"td-wrapper",props:{colspan:{type:Number,default:1},rowspan:{type:Number,default:1}},setup(e){return(t,n)=>(x(),B("td",{colspan:e.colspan,rowspan:e.rowspan},[ee(t.$slots,"default")],8,WU))}}),UU=jU;function qU(e){const t=_e(fa),n=fe("table"),{handleDoubleClick:o,handleClick:a,handleContextMenu:s,handleMouseEnter:r,handleMouseLeave:l,handleCellMouseEnter:u,handleCellMouseLeave:c,tooltipContent:d,tooltipTrigger:f}=HU(e),{getRowStyle:v,getRowClass:g,getCellStyle:p,getCellClass:h,getSpan:m,getColspanRealWidth:b}=KU(e);let k=-1;const y=w(()=>e.store?.states.columns.value.findIndex(({type:O})=>O==="default")),S=(O,N)=>{const R=t?.props?.rowKey;return R?Hn(O,R):N},C=(O,N,R,A=!1)=>{const{tooltipEffect:_,tooltipOptions:V,store:H}=e,{indent:U,columns:W}=H.states,P=[];let I=!0;return R&&(P.push(n.em("row",`level-${R.level}`)),I=!!R.display),N===0&&(k=-1),e.stripe&&I&&k++,P.push(...g(O,N,k)),Ye("tr",{style:[I?null:{display:"none"},v(O,N)],class:P,key:S(O,N),onDblclick:L=>o(L,O),onClick:L=>a(L,O),onContextmenu:L=>s(L,O),onMouseenter:()=>r(N),onMouseleave:l},W.value.map((L,D)=>{const{rowspan:F,colspan:q}=m(O,L,N,D);if(!F||!q)return null;const j=Object.assign({},L);j.realWidth=b(W.value,q,D);const X={store:H,_self:e.context||t,column:j,row:O,$index:N,cellIndex:D,expanded:A};D===y.value&&R&&(X.treeNode={indent:R.level&&R.level*U.value,level:R.level},Ht(R.expanded)&&(X.treeNode.expanded=R.expanded,"loading"in R&&(X.treeNode.loading=R.loading),"noLazyChildren"in R&&(X.treeNode.noLazyChildren=R.noLazyChildren)));const Q=`${S(O,N)},${D}`,he=j.columnKey||j.rawColumnKey||"",ue=L.showOverflowTooltip&&DS({effect:_},V,L.showOverflowTooltip);return Ye(UU,{style:p(N,D,O,L),class:h(N,D,O,L,q-1),key:`${he}${Q}`,rowspan:F,colspan:q,onMouseenter:ge=>u(ge,O,ue),onMouseleave:c},{default:()=>E(D,L,X)})}))},E=(O,N,R)=>N.renderCell(R);return{wrappedRowRender:(O,N)=>{const R=e.store,{isRowExpanded:A,assertRowKey:_}=R,{treeData:V,lazyTreeNodeMap:H,childrenColumnName:U,rowKey:W}=R.states,P=R.states.columns.value;if(P.some(({type:I})=>I==="expand")){const I=A(O),L=C(O,N,void 0,I),D=t?.renderExpanded;if(!D)return console.error("[Element Error]renderExpanded is required."),L;const F=[[L]];return(t.props.preserveExpandedContent||I)&&F[0].push(Ye("tr",{key:`expanded-row__${L.key}`,style:{display:I?"":"none"}},[Ye("td",{colspan:P.length,class:`${n.e("cell")} ${n.e("expanded-cell")}`},[D({row:O,$index:N,store:R,expanded:I})])])),F}else if(Object.keys(V.value).length){_();const I=Hn(O,W.value);let L=V.value[I],D=null;L&&(D={expanded:L.expanded,level:L.level,display:!0,noLazyChildren:void 0,loading:void 0},Ht(L.lazy)&&(D&&Ht(L.loaded)&&L.loaded&&(D.noLazyChildren=!(L.children&&L.children.length)),D.loading=L.loading));const F=[C(O,N,D??void 0)];if(L){let q=0;const j=(X,Q)=>{X&&X.length&&Q&&X.forEach(he=>{const ue={display:Q.display&&Q.expanded,level:Q.level+1,expanded:!1,noLazyChildren:!1,loading:!1},ge=Hn(he,W.value);if(mo(ge))throw new Error("For nested data item, row-key is required.");L={...V.value[ge]},L&&(ue.expanded=L.expanded,L.level=L.level||ue.level,L.display=!!(L.expanded&&ue.display),Ht(L.lazy)&&(Ht(L.loaded)&&L.loaded&&(ue.noLazyChildren=!(L.children&&L.children.length)),ue.loading=L.loading)),q++,F.push(C(he,N+q,ue)),L&&j(H.value[ge]||he[U.value],L)})};L.display=!0,j(H.value[I]||O[U.value],L)}return F}else return C(O,N,void 0)},tooltipContent:d,tooltipTrigger:f}}const YU={store:{required:!0,type:Object},stripe:Boolean,tooltipEffect:String,tooltipOptions:{type:Object},context:{default:()=>({}),type:Object},rowClassName:[String,Function],rowStyle:[Object,Function],fixed:{type:String,default:""},highlight:Boolean};var GU=se({name:"ElTableBody",props:YU,setup(e){const t=ft(),n=_e(fa),o=fe("table"),{wrappedRowRender:a,tooltipContent:s,tooltipTrigger:r}=qU(e),{onColumnsChange:l,onScrollableChange:u}=zm(n),c=[];return le(e.store?.states.hoverRow,(d,f)=>{const v=t?.vnode.el,g=Array.from(v?.children||[]).filter(m=>m?.classList.contains(`${o.e("row")}`));let p=d;const h=g[p]?.childNodes;if(h?.length){let m=0;Array.from(h).reduce((b,k,y)=>(h[y]?.colSpan>1&&(m=h[y]?.colSpan),k.nodeName!=="TD"&&m===0&&b.push(y),m>0&&m--,b),[]).forEach(b=>{for(p=d;p>0;){const k=g[p-1]?.childNodes;if(k[b]&&k[b].nodeName==="TD"&&k[b].rowSpan>1){Do(k[b],"hover-cell"),c.push(k[b]);break}p--}})}else c.forEach(m=>to(m,"hover-cell")),c.length=0;!e.store?.states.isComplex.value||!Mt||ta(()=>{const m=g[f],b=g[d];m&&!m.classList.contains("hover-fixed-row")&&to(m,"hover-row"),b&&Do(b,"hover-row")})}),$l(()=>{ho?.()}),{ns:o,onColumnsChange:l,onScrollableChange:u,wrappedRowRender:a,tooltipContent:s,tooltipTrigger:r}},render(){const{wrappedRowRender:e,store:t}=this;return Ye("tbody",{tabIndex:-1},[(t?.states.data.value||[]).reduce((n,o)=>n.concat(e(o,n.length)),[])])}});function XU(){const e=_e(fa)?.store;return{leftFixedLeafCount:w(()=>e?.states.fixedLeafColumnsLength.value??0),rightFixedLeafCount:w(()=>e?.states.rightFixedColumns.value.length??0),columnsCount:w(()=>e?.states.columns.value.length??0),leftFixedCount:w(()=>e?.states.fixedColumns.value.length??0),rightFixedCount:w(()=>e?.states.rightFixedColumns.value.length??0),columns:w(()=>e?.states.columns.value??[])}}function JU(e){const{columns:t}=XU(),n=fe("table");return{getCellClasses:(s,r)=>{const l=s[r],u=[n.e("cell"),l.id,l.align,l.labelClassName,...Bm(n.b(),r,l.fixed,e.store)];return l.className&&u.push(l.className),l.children||u.push(n.is("leaf")),u},getCellStyles:(s,r)=>{const l=Fm(r,s.fixed,e.store);return El(l,"left"),El(l,"right"),l},columns:t}}var ZU=se({name:"ElTableFooter",props:{fixed:{type:String,default:""},store:{required:!0,type:Object},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e){const t=_e(fa),n=fe("table"),{getCellClasses:o,getCellStyles:a,columns:s}=JU(e),{onScrollableChange:r,onColumnsChange:l}=zm(t);return{ns:n,onScrollableChange:r,onColumnsChange:l,getCellClasses:o,getCellStyles:a,columns:s}},render(){const{columns:e,getCellStyles:t,getCellClasses:n,summaryMethod:o,sumText:a}=this,s=this.store.states.data.value;let r=[];return o?r=o({columns:e,data:s}):e.forEach((l,u)=>{if(u===0){r[u]=a;return}const c=s.map(g=>Number(g[l.property])),d=[];let f=!0;c.forEach(g=>{if(!Number.isNaN(+g)){f=!1;const p=`${g}`.split(".")[1];d.push(p?p.length:0)}});const v=Math.max.apply(null,d);f?r[u]="":r[u]=c.reduce((g,p)=>{const h=Number(p);return Number.isNaN(+h)?g:Number.parseFloat((g+p).toFixed(Math.min(v,20)))},0)}),Ye(Ye("tfoot",[Ye("tr",{},[...e.map((l,u)=>Ye("td",{key:u,colspan:l.colSpan,rowspan:l.rowSpan,class:n(e,u),style:t(l,u)},[Ye("div",{class:["cell",l.labelClassName]},[r[u]])]))])]))}});function QU(e){return{setCurrentRow:f=>{e.commit("setCurrentRow",f)},getSelectionRows:()=>e.getSelectionRows(),toggleRowSelection:(f,v,g=!0)=>{e.toggleRowSelection(f,v,!1,g),e.updateAllSelected()},clearSelection:()=>{e.clearSelection()},clearFilter:f=>{e.clearFilter(f)},toggleAllSelection:()=>{e.commit("toggleAllSelection")},toggleRowExpansion:(f,v)=>{e.toggleRowExpansionAdapter(f,v)},clearSort:()=>{e.clearSort()},sort:(f,v)=>{e.commit("sort",{prop:f,order:v})},updateKeyChildren:(f,v)=>{e.updateKeyChildren(f,v)}}}function eq(e,t,n,o){const a=M(!1),s=M(null),r=M(!1),l=U=>{r.value=U},u=M({width:null,height:null,headerHeight:null}),c=M(!1),d={display:"inline-block",verticalAlign:"middle"},f=M(),v=M(0),g=M(0),p=M(0),h=M(0),m=M(0);le(()=>e.height,U=>{t.setHeight(U??null)},{immediate:!0}),le(()=>e.maxHeight,U=>{t.setMaxHeight(U??null)},{immediate:!0}),le(()=>[e.currentRowKey,n.states.rowKey],([U,W])=>{!i(W)||!i(U)||n.setCurrentRowKey(`${U}`)},{immediate:!0}),le(()=>e.data,U=>{o.store.commit("setData",U)},{immediate:!0,deep:!0}),So(()=>{e.expandRowKeys&&n.setExpandRowKeysAdapter(e.expandRowKeys)});const b=()=>{o.store.commit("setHoverRow",null),o.hoverState&&(o.hoverState=null)},k=(U,W)=>{const{pixelX:P,pixelY:I}=W;Math.abs(P)>=Math.abs(I)&&(o.refs.bodyWrapper.scrollLeft+=W.pixelX/5)},y=w(()=>e.height||e.maxHeight||n.states.fixedColumns.value.length>0||n.states.rightFixedColumns.value.length>0),S=w(()=>({width:t.bodyWidth.value?`${t.bodyWidth.value}px`:""})),C=()=>{y.value&&t.updateElsHeight(),t.updateColumnsWidth(),!(typeof window>"u")&&requestAnimationFrame(N)};ht(async()=>{await Re(),n.updateColumns(),R(),requestAnimationFrame(C);const U=o.vnode.el,W=o.refs.headerWrapper;e.flexible&&U&&U.parentElement&&(U.parentElement.style.minWidth="0"),u.value={width:f.value=U.offsetWidth,height:U.offsetHeight,headerHeight:e.showHeader&&W?W.offsetHeight:null},n.states.columns.value.forEach(P=>{P.filteredValue&&P.filteredValue.length&&o.store.commit("filterChange",{column:P,values:P.filteredValue,silent:!0})}),o.$ready=!0});const E=(U,W)=>{if(!U)return;const P=Array.from(U.classList).filter(I=>!I.startsWith("is-scrolling-"));P.push(t.scrollX.value?W:"is-scrolling-none"),U.className=P.join(" ")},$=U=>{const{tableWrapper:W}=o.refs;E(W,U)},O=U=>{const{tableWrapper:W}=o.refs;return!!(W&&W.classList.contains(U))},N=function(){if(!o.refs.scrollBarRef)return;if(!t.scrollX.value){const F="is-scrolling-none";O(F)||$(F);return}const U=o.refs.scrollBarRef.wrapRef;if(!U)return;const{scrollLeft:W,offsetWidth:P,scrollWidth:I}=U,{headerWrapper:L,footerWrapper:D}=o.refs;L&&(L.scrollLeft=W),D&&(D.scrollLeft=W),W>=I-P-1?$("is-scrolling-right"):$(W===0?"is-scrolling-left":"is-scrolling-middle")},R=()=>{o.refs.scrollBarRef&&(o.refs.scrollBarRef.wrapRef&&Ft(o.refs.scrollBarRef.wrapRef,"scroll",N,{passive:!0}),e.fit?en(o.vnode.el,A):Ft(window,"resize",A),en(o.refs.tableInnerWrapper,()=>{A(),o.refs?.scrollBarRef?.update()}))},A=()=>{const U=o.vnode.el;if(!o.$ready||!U)return;let W=!1;const{width:P,height:I,headerHeight:L}=u.value,D=f.value=U.offsetWidth;P!==D&&(W=!0);const F=U.offsetHeight;(e.height||y.value)&&I!==F&&(W=!0);const q=e.tableLayout==="fixed"?o.refs.headerWrapper:o.refs.tableHeaderRef?.$el;e.showHeader&&q?.offsetHeight!==L&&(W=!0),v.value=o.refs.tableWrapper?.scrollHeight||0,p.value=q?.scrollHeight||0,h.value=o.refs.footerWrapper?.offsetHeight||0,m.value=o.refs.appendWrapper?.offsetHeight||0,g.value=v.value-p.value-h.value-m.value,W&&(u.value={width:D,height:F,headerHeight:e.showHeader&&q?.offsetHeight||0},C())},_=Cn(),V=w(()=>{const{bodyWidth:U,scrollY:W,gutterWidth:P}=t;return U.value?`${U.value-(W.value?P:0)}px`:""}),H=w(()=>e.maxHeight?"fixed":e.tableLayout);return{isHidden:a,renderExpanded:s,setDragVisible:l,isGroup:c,handleMouseLeave:b,handleHeaderFooterMousewheel:k,tableSize:_,emptyBlockStyle:w(()=>{if(e.data&&e.data.length)return;let U="100%";e.height&&g.value&&(U=`${g.value}px`);const W=f.value;return{width:W?`${W}px`:"",height:U}}),resizeProxyVisible:r,bodyWidth:V,resizeState:u,doLayout:C,tableBodyStyles:S,tableLayout:H,scrollbarViewStyle:d,scrollbarStyle:w(()=>e.height?{height:"100%"}:e.maxHeight?Number.isNaN(Number(e.maxHeight))?{maxHeight:`calc(${e.maxHeight} - ${p.value+h.value}px)`}:{maxHeight:`${+e.maxHeight-p.value-h.value}px`}:{})}}function tq(e){let t;const n=()=>{const o=e.vnode.el.querySelector(".hidden-columns"),a={childList:!0,subtree:!0},s=e.store.states.updateOrderFns;t=new MutationObserver(()=>{s.forEach(r=>r())}),t.observe(o,a)};ht(()=>{n()}),$l(()=>{t?.disconnect()})}var nq={data:{type:Array,default:()=>[]},size:Tn,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,rowExpandable:{type:Function},defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children",checkStrictly:!1})},lazy:Boolean,load:Function,style:{type:[String,Object,Array],default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:Boolean,flexible:Boolean,showOverflowTooltip:{type:[Boolean,Object],default:void 0},tooltipFormatter:Function,appendFilterPanelTo:String,scrollbarTabindex:{type:[Number,String],default:void 0},allowDragLastColumn:{type:Boolean,default:!0},preserveExpandedContent:Boolean,nativeScrollbar:Boolean};function xE(e){const t=e.tableLayout==="auto";let n=e.columns||[];t&&n.every(({width:a})=>Tt(a))&&(n=[]);const o=a=>{const s={key:`${e.tableLayout}_${a.id}`,style:{},name:void 0};return t?s.style={width:`${a.width}px`}:s.name=a.id,s};return Ye("colgroup",{},n.map(a=>Ye("col",o(a))))}xE.props=["columns","tableLayout"];const oq=()=>{const e=M(),t=(s,r)=>{const l=e.value;l&&l.scrollTo(s,r)},n=(s,r)=>{const l=e.value;l&&He(r)&&["Top","Left"].includes(s)&&l[`setScroll${s}`](r)};return{scrollBarRef:e,scrollTo:t,setScrollTop:s=>n("Top",s),setScrollLeft:s=>n("Left",s)}};let aq=1;var sq=se({name:"ElTable",directives:{Mousewheel:P8},components:{TableHeader:zU,TableBody:GU,TableFooter:ZU,ElScrollbar:aa,hColgroup:xE},props:nq,emits:["select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-contextmenu","cell-click","cell-dblclick","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change","scroll"],setup(e){const{t}=Ct(),n=fe("table"),o=gs("table"),a=ft();St(fa,a);const s=OU(a,e);a.store=s;const r=new NU({store:a.store,table:a,fit:e.fit,showHeader:e.showHeader});a.layout=r;const l=w(()=>(s.states.data.value||[]).length===0),{setCurrentRow:u,getSelectionRows:c,toggleRowSelection:d,clearSelection:f,clearFilter:v,toggleAllSelection:g,toggleRowExpansion:p,clearSort:h,sort:m,updateKeyChildren:b}=QU(s),{isHidden:k,renderExpanded:y,setDragVisible:S,isGroup:C,handleMouseLeave:E,handleHeaderFooterMousewheel:$,tableSize:O,emptyBlockStyle:N,resizeProxyVisible:R,bodyWidth:A,resizeState:_,doLayout:V,tableBodyStyles:H,tableLayout:U,scrollbarViewStyle:W,scrollbarStyle:P}=eq(e,r,s,a),{scrollBarRef:I,scrollTo:L,setScrollLeft:D,setScrollTop:F}=oq(),q=Ma(V,50),j=`${n.namespace.value}-table_${aq++}`;a.tableId=j,a.state={isGroup:C,resizeState:_,doLayout:V,debouncedUpdateLayout:q};const X=w(()=>e.sumText??t("el.table.sumText")),Q=w(()=>e.emptyText??t("el.table.emptyText")),he=w(()=>e.tooltipEffect??o.value?.tooltipEffect),ue=w(()=>e.tooltipOptions??o.value?.tooltipOptions),ge=w(()=>EE(s.states.originColumns.value)[0]);return tq(a),Bt(()=>{q.cancel()}),{ns:n,layout:r,store:s,columns:ge,handleHeaderFooterMousewheel:$,handleMouseLeave:E,tableId:j,tableSize:O,isHidden:k,isEmpty:l,renderExpanded:y,resizeProxyVisible:R,resizeState:_,isGroup:C,bodyWidth:A,tableBodyStyles:H,emptyBlockStyle:N,debouncedUpdateLayout:q,setCurrentRow:u,getSelectionRows:c,toggleRowSelection:d,clearSelection:f,clearFilter:v,toggleAllSelection:g,toggleRowExpansion:p,clearSort:h,doLayout:V,sort:m,updateKeyChildren:b,t,setDragVisible:S,context:a,computedSumText:X,computedEmptyText:Q,computedTooltipEffect:he,computedTooltipOptions:ue,tableLayout:U,scrollbarViewStyle:W,scrollbarStyle:P,scrollBarRef:I,scrollTo:L,setScrollLeft:D,setScrollTop:F,allowDragLastColumn:e.allowDragLastColumn}}});const rq=["data-prefix"],lq={ref:"hiddenColumns",class:"hidden-columns"};function iq(e,t,n,o,a,s){const r=It("hColgroup"),l=It("table-header"),u=It("table-body"),c=It("table-footer"),d=It("el-scrollbar"),f=cv("mousewheel");return x(),B("div",{ref:"tableWrapper",class:T([{[e.ns.m("fit")]:e.fit,[e.ns.m("striped")]:e.stripe,[e.ns.m("border")]:e.border||e.isGroup,[e.ns.m("hidden")]:e.isHidden,[e.ns.m("group")]:e.isGroup,[e.ns.m("fluid-height")]:e.maxHeight,[e.ns.m("scrollable-x")]:e.layout.scrollX.value,[e.ns.m("scrollable-y")]:e.layout.scrollY.value,[e.ns.m("enable-row-hover")]:!e.store.states.isComplex.value,[e.ns.m("enable-row-transition")]:(e.store.states.data.value||[]).length!==0&&(e.store.states.data.value||[]).length<100,"has-footer":e.showSummary},e.ns.m(e.tableSize),e.className,e.ns.b(),e.ns.m(`layout-${e.tableLayout}`)]),style:Ke(e.style),"data-prefix":e.ns.namespace.value,onMouseleave:t[1]||(t[1]=(...v)=>e.handleMouseLeave&&e.handleMouseLeave(...v))},[z("div",{ref:"tableInnerWrapper",class:T(e.ns.e("inner-wrapper"))},[z("div",lq,[ee(e.$slots,"default")],512),e.showHeader&&e.tableLayout==="fixed"?ut((x(),B("div",{key:0,ref:"headerWrapper",class:T(e.ns.e("header-wrapper"))},[z("table",{ref:"tableHeader",class:T(e.ns.e("header")),style:Ke(e.tableBodyStyles),border:"0",cellpadding:"0",cellspacing:"0"},[Y(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),Y(l,{ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,"append-filter-panel-to":e.appendFilterPanelTo,"allow-drag-last-column":e.allowDragLastColumn,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","append-filter-panel-to","allow-drag-last-column","onSetDragVisible"])],6)],2)),[[f,e.handleHeaderFooterMousewheel]]):te("v-if",!0),z("div",{ref:"bodyWrapper",class:T(e.ns.e("body-wrapper"))},[Y(d,{ref:"scrollBarRef","view-style":e.scrollbarViewStyle,"wrap-style":e.scrollbarStyle,always:e.scrollbarAlwaysOn,tabindex:e.scrollbarTabindex,native:e.nativeScrollbar,onScroll:t[0]||(t[0]=v=>e.$emit("scroll",v))},{default:J(()=>[z("table",{ref:"tableBody",class:T(e.ns.e("body")),cellspacing:"0",cellpadding:"0",border:"0",style:Ke({width:e.bodyWidth,tableLayout:e.tableLayout})},[Y(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),e.showHeader&&e.tableLayout==="auto"?(x(),ae(l,{key:0,ref:"tableHeaderRef",class:T(e.ns.e("body-header")),border:e.border,"default-sort":e.defaultSort,store:e.store,"append-filter-panel-to":e.appendFilterPanelTo,onSetDragVisible:e.setDragVisible},null,8,["class","border","default-sort","store","append-filter-panel-to","onSetDragVisible"])):te("v-if",!0),Y(u,{context:e.context,highlight:e.highlightCurrentRow,"row-class-name":e.rowClassName,"tooltip-effect":e.computedTooltipEffect,"tooltip-options":e.computedTooltipOptions,"row-style":e.rowStyle,store:e.store,stripe:e.stripe},null,8,["context","highlight","row-class-name","tooltip-effect","tooltip-options","row-style","store","stripe"]),e.showSummary&&e.tableLayout==="auto"?(x(),ae(c,{key:1,class:T(e.ns.e("body-footer")),border:e.border,"default-sort":e.defaultSort,store:e.store,"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["class","border","default-sort","store","sum-text","summary-method"])):te("v-if",!0)],6),e.isEmpty?(x(),B("div",{key:0,ref:"emptyBlock",style:Ke(e.emptyBlockStyle),class:T(e.ns.e("empty-block"))},[z("span",{class:T(e.ns.e("empty-text"))},[ee(e.$slots,"empty",{},()=>[wt(Se(e.computedEmptyText),1)])],2)],6)):te("v-if",!0),e.$slots.append?(x(),B("div",{key:1,ref:"appendWrapper",class:T(e.ns.e("append-wrapper"))},[ee(e.$slots,"append")],2)):te("v-if",!0)]),_:3},8,["view-style","wrap-style","always","tabindex","native"])],2),e.showSummary&&e.tableLayout==="fixed"?ut((x(),B("div",{key:1,ref:"footerWrapper",class:T(e.ns.e("footer-wrapper"))},[z("table",{class:T(e.ns.e("footer")),cellspacing:"0",cellpadding:"0",border:"0",style:Ke(e.tableBodyStyles)},[Y(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),Y(c,{border:e.border,"default-sort":e.defaultSort,store:e.store,"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["border","default-sort","store","sum-text","summary-method"])],6)],2)),[[Pt,!e.isEmpty],[f,e.handleHeaderFooterMousewheel]]):te("v-if",!0),e.border||e.isGroup?(x(),B("div",{key:2,class:T(e.ns.e("border-left-patch"))},null,2)):te("v-if",!0)],2),ut(z("div",{ref:"resizeProxy",class:T(e.ns.e("column-resize-proxy"))},null,2),[[Pt,e.resizeProxyVisible]])],46,rq)}var uq=$n(sq,[["render",iq]]);const cq={selection:"table-column--selection",expand:"table__expand-column"},dq={default:{order:""},selection:{width:48,minWidth:48,realWidth:48,order:""},expand:{width:48,minWidth:48,realWidth:48,order:""},index:{width:48,minWidth:48,realWidth:48,order:""}},fq=e=>cq[e]||"",pq={selection:{renderHeader({store:e}){function t(){return e.states.data.value&&e.states.data.value.length===0}return Ye(ra,{disabled:t(),size:e.states.tableSize.value,indeterminate:e.states.selection.value.length>0&&!e.states.isAllSelected.value,"onUpdate:modelValue":e.toggleAllSelection??void 0,modelValue:e.states.isAllSelected.value,ariaLabel:e.t("el.table.selectAllLabel")})},renderCell({row:e,column:t,store:n,$index:o}){return Ye(ra,{disabled:t.selectable?!t.selectable.call(null,e,o):!1,size:n.states.tableSize.value,onChange:()=>{n.commit("rowSelectedChanged",e)},onClick:a=>a.stopPropagation(),modelValue:n.isSelected(e),ariaLabel:n.t("el.table.selectRowLabel")})},sortable:!1,resizable:!1},index:{renderHeader({column:e}){return e.label||"#"},renderCell({column:e,$index:t}){let n=t+1;const o=e.index;return He(o)?n=t+o:Ve(o)&&(n=o(t)),Ye("div",{},[n])},sortable:!1},expand:{renderHeader({column:e}){return e.label||""},renderCell({column:e,row:t,store:n,expanded:o,$index:a}){const{ns:s}=n,r=[s.e("expand-icon")];!e.renderExpand&&o&&r.push(s.em("expand-icon","expanded"));const l=function(c){c.stopPropagation(),n.toggleRowExpansion(t)},u=n.states.rowExpandable.value?.(t,a)??!0;return u||r.push(s.is("disabled")),Ye("button",{type:"button",disabled:!u,"aria-label":n.t(o?"el.table.collapseRowLabel":"el.table.expandRowLabel"),"aria-expanded":o,class:r,onClick:l},{default:()=>e.renderExpand?[e.renderExpand({expanded:o,expandable:u})]:[Ye(De,null,{default:()=>[Ye(no)]})]})},sortable:!1,resizable:!1}};function hq({row:e,column:t,$index:n}){const o=t.property,a=o&&Ms(e,o).value;return t&&t.formatter?t.formatter(e,t,a,n):a?.toString?.()||""}function vq({row:e,treeNode:t,store:n},o=!1){const{ns:a}=n;if(!t)return o?[Ye("span",{class:a.e("placeholder")})]:null;const s=[],r=function(l){l.stopPropagation(),!t.loading&&n.loadOrToggle(e)};if(t.indent&&s.push(Ye("span",{class:a.e("indent"),style:{"padding-left":`${t.indent}px`}})),Ht(t.expanded)&&!t.noLazyChildren){const l=[a.e("expand-icon"),t.expanded?a.em("expand-icon","expanded"):""];let u=no;t.loading&&(u=Aa),s.push(Ye("button",{type:"button","aria-label":n.t(t.expanded?"el.table.collapseRowLabel":"el.table.expandRowLabel"),"aria-expanded":t.expanded,class:l,onClick:r},{default:()=>[Ye(De,{class:a.is("loading",t.loading)},{default:()=>[Ye(u)]})]}))}else s.push(Ye("span",{class:a.e("placeholder")}));return s}function L0(e,t){return e.reduce((n,o)=>(n[o]=o,n),t)}function mq(e,t){const n=ft();return{registerComplexWatchers:()=>{const s=["fixed"],r={realWidth:"width",realMinWidth:"minWidth"},l=L0(s,r);Object.keys(l).forEach(u=>{const c=r[u];Nt(t,c)&&le(()=>t[c],d=>{let f=d;c==="width"&&u==="realWidth"&&(f=Dm(d)),c==="minWidth"&&u==="realMinWidth"&&(f=gE(d)),n.columnConfig.value[c]=f,n.columnConfig.value[u]=f;const v=c==="fixed";e.value.store.scheduleLayout(v)})})},registerNormalWatchers:()=>{const s=["label","filters","filterMultiple","filteredValue","sortable","index","formatter","className","labelClassName","filterClassName","showOverflowTooltip","tooltipFormatter","resizable"],r=["showOverflowTooltip"],l={property:"prop",align:"realAlign",headerAlign:"realHeaderAlign"},u=L0(s,l);Object.keys(u).forEach(d=>{const f=l[d];Nt(t,f)&&le(()=>t[f],v=>{n.columnConfig.value[d]=v,(d==="filters"||d==="filterMethod")&&(n.columnConfig.value.filterable=!!(n.columnConfig.value.filters||n.columnConfig.value.filterMethod))})}),r.forEach(d=>{Nt(e.value.props,d)&&le(()=>e.value.props[d],f=>{n.columnConfig.value.type!=="selection"&&Tt(t[d])&&(n.columnConfig.value[d]=f)})});const c=gs("table");c.value&&Nt(c.value,"showOverflowTooltip")&&le(()=>c.value?.showOverflowTooltip,d=>{n.columnConfig.value.type!=="selection"&&(!Tt(t.showOverflowTooltip)||!Tt(e.value.props.showOverflowTooltip)||(n.columnConfig.value.showOverflowTooltip=d))})}}}function gq(e,t,n){const o=ft(),a=M(""),s=M(!1),r=M(),l=M(),u=fe("table");So(()=>{r.value=e.align?`is-${e.align}`:null,r.value}),So(()=>{l.value=e.headerAlign?`is-${e.headerAlign}`:r.value,l.value});const c=w(()=>{let S=o.vnode.vParent||o.parent;for(;S&&!S.tableId&&!S.columnId;)S=S.vnode.vParent||S.parent;return S}),d=w(()=>{const{store:S}=o.parent;if(!S)return!1;const{treeData:C}=S.states,E=C.value;return E&&Object.keys(E).length>0}),f=M(Dm(e.width)),v=M(gE(e.minWidth)),g=S=>(f.value&&(S.width=f.value),v.value&&(S.minWidth=v.value),!f.value&&v.value&&(S.width=void 0),S.minWidth||(S.minWidth=80),S.realWidth=Number(Tt(S.width)?S.minWidth:S.width),S),p=S=>{const C=S.type,E=pq[C]||{};Object.keys(E).forEach(O=>{const N=E[O];O!=="className"&&!Tt(N)&&(S[O]=N)});const $=fq(C);if($){const O=`${i(u.namespace)}-${$}`;S.className=S.className?`${S.className} ${O}`:O}return S},h=S=>{ye(S)?S.forEach(E=>C(E)):C(S);function C(E){E?.type?.name==="ElTableColumn"&&(E.vParent=o)}};return{columnId:a,realAlign:r,isSubColumn:s,realHeaderAlign:l,columnOrTableParent:c,setColumnWidth:g,setColumnForcedProps:p,setColumnRenders:S=>{e.renderHeader?pt("TableColumn","Comparing to render-header, scoped-slot header is easier to use. We recommend users to use scoped-slot header."):S.type!=="selection"&&(S.renderHeader=E=>{if(o.columnConfig.value.label,t.header){const $=t.header(E);if(wE($))return Ye(Fe,$)}return wt(S.label)}),t["filter-icon"]&&(S.renderFilterIcon=E=>ee(t,"filter-icon",E)),t.expand&&(S.renderExpand=E=>ee(t,"expand",E));let C=S.renderCell;return S.type==="expand"?(S.renderCell=E=>Ye("div",{class:"cell"},[C(E)]),n.value.renderExpanded=E=>t.default?t.default(E):t.default):(C=C||hq,S.renderCell=E=>{let $=null;if(t.default){const _=t.default(E);$=_.some(V=>V.type!==gn)?_:C(E)}else $=C(E);const{columns:O}=n.value.store.states,N=O.value.findIndex(_=>_.type==="default"),R=vq(E,d.value&&E.cellIndex===N),A={class:"cell",style:{}};return S.showOverflowTooltip&&(A.class=`${A.class} ${i(u.namespace)}-tooltip`,A.style={width:`${(E.column.realWidth||Number(E.column.width))-1}px`}),h($),Ye("div",A,[R,$])}),S},getPropsData:(...S)=>S.reduce((C,E)=>(ye(E)&&E.forEach($=>{C[$]=e[$]}),C),{}),getColumnElIndex:(S,C)=>Array.prototype.indexOf.call(S,C),updateColumnOrder:()=>{n.value.store.commit("updateColumnOrder",o.columnConfig.value)}}}var bq={type:{type:String,default:"default"},label:String,className:String,labelClassName:String,property:String,prop:String,width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},renderHeader:Function,sortable:{type:[Boolean,String],default:!1},sortMethod:Function,sortBy:[String,Function,Array],resizable:{type:Boolean,default:!0},columnKey:String,align:String,headerAlign:String,showOverflowTooltip:{type:[Boolean,Object],default:void 0},tooltipFormatter:Function,fixed:[Boolean,String],formatter:Function,selectable:Function,reserveSelection:Boolean,filterMethod:Function,filteredValue:Array,filters:Array,filterPlacement:String,filterMultiple:{type:Boolean,default:!0},filterClassName:String,index:[Number,Function],sortOrders:{type:Array,default:()=>["ascending","descending",null],validator:e=>e.every(t=>["ascending","descending",null].includes(t))}};let yq=1;var wq=se({name:"ElTableColumn",components:{ElCheckbox:ra},props:bq,setup(e,{slots:t}){const n=ft(),o=gs("table"),a=M({}),s=w(()=>{let S=n.parent;for(;S&&!S.tableId;)S=S.parent;return S}),{registerNormalWatchers:r,registerComplexWatchers:l}=mq(s,e),{columnId:u,isSubColumn:c,realHeaderAlign:d,columnOrTableParent:f,setColumnWidth:v,setColumnForcedProps:g,setColumnRenders:p,getPropsData:h,getColumnElIndex:m,realAlign:b,updateColumnOrder:k}=gq(e,t,s),y=f.value;u.value=`${"tableId"in y&&y.tableId||"columnId"in y&&y.columnId}_column_${yq++}`,_d(()=>{c.value=s.value!==y;const S=e.type||"default",C=e.sortable===""?!0:e.sortable,E=S==="selection"?!1:Tt(e.showOverflowTooltip)?y.props.showOverflowTooltip??o.value?.showOverflowTooltip:e.showOverflowTooltip,$=Tt(e.tooltipFormatter)?y.props.tooltipFormatter??o.value?.tooltipFormatter:e.tooltipFormatter,O={...dq[S],id:u.value,type:S,property:e.prop||e.property,align:b,headerAlign:d,showOverflowTooltip:E,tooltipFormatter:$,filterable:e.filters||e.filterMethod,filteredValue:[],filterPlacement:"",filterClassName:"",isColumnGroup:!1,isSubColumn:!1,filterOpened:!1,sortable:C,index:e.index,rawColumnKey:n.vnode.key};let N=h(["columnKey","label","className","labelClassName","type","renderHeader","formatter","fixed","resizable"],["sortMethod","sortBy","sortOrders"],["selectable","reserveSelection"],["filterMethod","filters","filterMultiple","filterOpened","filteredValue","filterPlacement","filterClassName"]);N=mU(O,N),N=bU(p,v,g)(N),a.value=N,r(),l()}),ht(()=>{const S=f.value,C=c.value?S.vnode.el?.children:S.refs.hiddenColumns?.children,E=()=>m(C||[],n.vnode.el);a.value.getColumnIndex=E,E()>-1&&s.value.store.commit("insertColumn",a.value,c.value?"columnConfig"in S&&S.columnConfig.value:null,k)}),Bt(()=>{const S=a.value.getColumnIndex;(S?S():-1)>-1&&s.value.store.commit("removeColumn",a.value,c.value?"columnConfig"in y&&y.columnConfig.value:null,k)}),n.columnId=u.value,n.columnConfig=a},render(){try{const e=this.$slots.default?.({row:{},column:{},$index:-1}),t=[];if(ye(e))for(const n of e)n.type?.name==="ElTableColumn"||n.shapeFlag&2?t.push(n):n.type===Fe&&ye(n.children)&&n.children.forEach(o=>{o?.patchFlag!==1024&&!Le(o?.children)&&t.push(o)});return Ye("div",t)}catch{return Ye("div",[])}}}),TE=wq;const Sq=rt(uq,{TableColumn:TE}),Cq=on(TE);let Ea=(function(e){return e.ASC="asc",e.DESC="desc",e})({}),Sd=(function(e){return e.LEFT="left",e.CENTER="center",e.RIGHT="right",e})({}),kq=(function(e){return e.LEFT="left",e.RIGHT="right",e})({});const Nh={[Ea.ASC]:Ea.DESC,[Ea.DESC]:Ea.ASC},Wi=Symbol("placeholder"),$E=String,ku={type:G(Array),required:!0},Hm={type:G(Array)},OE={...Hm,required:!0},Eq=String,D0={type:G(Array),default:()=>rn([])},nr={type:Number,required:!0},RE={type:G([String,Number,Symbol]),default:"id"},B0={type:G(Object)},ir=Ce({class:String,columns:ku,columnsStyles:{type:G(Object),required:!0},depth:Number,expandColumnKey:Eq,estimatedRowHeight:{...hr.estimatedRowHeight,default:void 0},isScrolling:Boolean,onRowExpand:{type:G(Function)},onRowHover:{type:G(Function)},onRowHeightChange:{type:G(Function)},rowData:{type:G(Object),required:!0},rowEventHandlers:{type:G(Object)},rowIndex:{type:Number,required:!0},rowKey:RE,style:{type:G(Object)}}),fp={type:Number,required:!0},Km=Ce({class:String,columns:ku,fixedHeaderData:{type:G(Array)},headerData:{type:G(Array),required:!0},headerHeight:{type:G([Number,Array]),default:50},rowWidth:fp,rowHeight:{type:Number,default:50},height:fp,width:fp}),Ic=Ce({columns:ku,data:OE,fixedData:Hm,estimatedRowHeight:ir.estimatedRowHeight,width:nr,height:nr,headerWidth:nr,headerHeight:Km.headerHeight,bodyWidth:nr,rowHeight:nr,cache:J2.cache,useIsScrolling:Boolean,scrollbarAlwaysOn:hr.scrollbarAlwaysOn,scrollbarStartGap:hr.scrollbarStartGap,scrollbarEndGap:hr.scrollbarEndGap,class:$E,style:B0,containerStyle:B0,getRowHeight:{type:G(Function),required:!0},rowKey:ir.rowKey,onRowsRendered:{type:G(Function)},onScroll:{type:G(Function)}}),xq=Ce({cache:Ic.cache,estimatedRowHeight:ir.estimatedRowHeight,rowKey:RE,headerClass:{type:G([String,Function])},headerProps:{type:G([Object,Function])},headerCellProps:{type:G([Object,Function])},headerHeight:Km.headerHeight,footerHeight:{type:Number,default:0},rowClass:{type:G([String,Function])},rowProps:{type:G([Object,Function])},rowHeight:{type:Number,default:50},cellProps:{type:G([Object,Function])},columns:ku,data:OE,dataGetter:{type:G(Function)},fixedData:Hm,expandColumnKey:ir.expandColumnKey,expandedRowKeys:D0,defaultExpandedRowKeys:D0,class:$E,fixed:Boolean,style:{type:G(Object)},width:nr,height:nr,maxHeight:Number,useIsScrolling:Boolean,indentSize:{type:Number,default:12},iconSize:{type:Number,default:12},hScrollbarSize:hr.hScrollbarSize,vScrollbarSize:hr.vScrollbarSize,scrollbarAlwaysOn:eE.alwaysOn,sortBy:{type:G(Object),default:()=>({})},sortState:{type:G(Object),default:void 0},onColumnSort:{type:G(Function)},onExpandedRowsChange:{type:G(Function)},onEndReached:{type:G(Function)},onRowExpand:ir.onRowExpand,onScroll:Ic.onScroll,onRowsRendered:Ic.onRowsRendered,rowEventHandlers:ir.rowEventHandlers}),Tq=(e,t,n)=>{const o={flexGrow:0,flexShrink:0,...n?{}:{flexGrow:e.flexGrow??0,flexShrink:e.flexShrink??1}},a={...e.style??{},...o,flexBasis:"auto",width:e.width};return t||(e.maxWidth&&(a.maxWidth=e.maxWidth),e.minWidth&&(a.minWidth=e.minWidth)),a};function $q(e,t,n){const o=w(()=>i(t).map((m,b)=>({...m,key:m.key??m.dataKey??b}))),a=w(()=>i(o).filter(m=>!m.hidden)),s=w(()=>i(a).filter(m=>m.fixed==="left"||m.fixed===!0)),r=w(()=>i(a).filter(m=>m.fixed==="right")),l=w(()=>i(a).filter(m=>!m.fixed)),u=w(()=>{const m=[];return i(s).forEach(b=>{m.push({...b,placeholderSign:Wi})}),i(l).forEach(b=>{m.push(b)}),i(r).forEach(b=>{m.push({...b,placeholderSign:Wi})}),m}),c=w(()=>i(s).length||i(r).length),d=w(()=>i(o).reduce((m,b)=>(m[b.key]=Tq(b,i(n),e.fixed),m),{})),f=w(()=>i(a).reduce((m,b)=>m+b.width,0)),v=m=>i(o).find(b=>b.key===m),g=m=>i(d)[m],p=(m,b)=>{m.width=b};function h(m){const{key:b}=m.currentTarget.dataset;if(!b)return;const{sortState:k,sortBy:y}=e;let S=Ea.ASC;at(k)?S=Nh[k[b]]:S=Nh[y.order],e.onColumnSort?.({column:v(b),key:b,order:S})}return{columns:o,columnsStyles:d,columnsTotalWidth:f,fixedColumnsOnLeft:s,fixedColumnsOnRight:r,hasFixedColumns:c,mainColumns:u,normalColumns:l,visibleColumns:a,getColumn:v,getColumnStyle:g,updateColumnWidth:p,onColumnSorted:h}}const Oq=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:o,onMaybeEndReached:a})=>{const s=M({scrollLeft:0,scrollTop:0});function r(g){const{scrollTop:p}=g;t.value?.scrollTo(g),n.value?.scrollToTop(p),o.value?.scrollToTop(p)}function l(g){s.value=g,r(g)}function u(g){s.value.scrollTop=g,r(i(s))}function c(g){s.value.scrollLeft=g,t.value?.scrollTo?.(i(s))}function d(g){l(g),e.onScroll?.(g)}function f({scrollTop:g}){const{scrollTop:p}=i(s);g!==p&&u(g)}function v(g,p="auto"){t.value?.scrollToRow(g,p)}return le(()=>i(s).scrollTop,(g,p)=>{g>p&&a()}),{scrollPos:s,scrollTo:l,scrollToLeft:c,scrollToTop:u,scrollToRow:v,onScroll:d,onVerticalScroll:f}},Rq=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:o,tableInstance:a,ns:s,isScrolling:r})=>{const l=ft(),{emit:u}=l,c=Xt(!1),d=M(e.defaultExpandedRowKeys||[]),f=M(-1),v=Xt(null),g=M({}),p=M({}),h=Xt({}),m=Xt({}),b=Xt({}),k=w(()=>He(e.estimatedRowHeight));function y(R){e.onRowsRendered?.(R),R.rowCacheEnd>i(f)&&(f.value=R.rowCacheEnd)}function S({hovered:R,rowKey:A}){r.value||a.vnode.el.querySelectorAll(`[rowkey="${String(A)}"]`).forEach(_=>{R?_.classList.add(s.is("hovered")):_.classList.remove(s.is("hovered"))})}function C({expanded:R,rowData:A,rowIndex:_,rowKey:V}){const H=[...i(d)],U=H.indexOf(V);R?U===-1&&H.push(V):U>-1&&H.splice(U,1),d.value=H,u("update:expandedRowKeys",H),e.onRowExpand?.({expanded:R,rowData:A,rowIndex:_,rowKey:V}),e.onExpandedRowsChange?.(H),a.vnode.el.querySelector(`.${s.is("hovered")}[rowkey="${String(V)}"]`)&&Re(()=>S({hovered:!0,rowKey:V}))}const E=Ma(()=>{c.value=!0,g.value={...i(g),...i(p)},$(i(v),!1),p.value={},v.value=null,t.value?.forceUpdate(),n.value?.forceUpdate(),o.value?.forceUpdate(),l.proxy?.$forceUpdate(),c.value=!1},0);function $(R,A=!1){i(k)&&[t,n,o].forEach(_=>{const V=i(_);V&&V.resetAfterRowIndex(R,A)})}function O(R,A,_){const V=i(v);(V===null||V>_)&&(v.value=_),p.value[R]=A}function N({rowKey:R,height:A,rowIndex:_},V){V?V===kq.RIGHT?b.value[R]=A:h.value[R]=A:m.value[R]=A;const H=Math.max(...[h,b,m].map(U=>U.value[R]||0));i(g)[R]!==H&&(O(R,H,_),E())}return{expandedRowKeys:d,lastRenderedRowIndex:f,isDynamic:k,isResetting:c,rowHeights:g,resetAfterIndex:$,onRowExpanded:C,onRowHovered:S,onRowsRendered:y,onRowHeightChange:N}},Nq=(e,{expandedRowKeys:t,lastRenderedRowIndex:n,resetAfterIndex:o})=>{const a=M({}),s=w(()=>{const l={},{data:u,rowKey:c}=e,d=i(t);if(!d||!d.length)return u;const f=[],v=new Set;d.forEach(p=>v.add(p));let g=u.slice();for(g.forEach(p=>l[p[c]]=0);g.length>0;){const p=g.shift();f.push(p),v.has(p[c])&&ye(p.children)&&p.children.length>0&&(g=[...p.children,...g],p.children.forEach(h=>l[h[c]]=l[p[c]]+1))}return a.value=l,f}),r=w(()=>{const{data:l,expandColumnKey:u}=e;return u?i(s):l});return le(r,(l,u)=>{l!==u&&(n.value=-1,o(0,!0))}),{data:r,depthMap:a}},Iq=(e,t)=>e+t,Pc=e=>ye(e)?e.reduce(Iq,0):e,Er=(e,t,n={})=>Ve(e)?e(t):e??n,Ps=e=>(["width","maxWidth","minWidth","height"].forEach(t=>{e[t]=ln(e[t])}),e),NE=e=>Ut(e)?t=>Ye(e,t):e,Pq=(e,{columnsTotalWidth:t,rowsHeight:n,fixedColumnsOnLeft:o,fixedColumnsOnRight:a})=>{const s=w(()=>{const{fixed:h,width:m,vScrollbarSize:b}=e,k=m-b;return h?Math.max(Math.round(i(t)),k):k}),r=w(()=>{const{height:h=0,maxHeight:m=0,footerHeight:b,hScrollbarSize:k}=e;if(m>0){const y=i(v),S=i(n),C=i(f)+y+S+k;return Math.min(C,m-b)}return h-b}),l=w(()=>{const{maxHeight:h}=e,m=i(r);if(He(h)&&h>0)return m;const b=i(n)+i(f)+i(v);return Math.min(m,b)}),u=h=>h.width,c=w(()=>Pc(i(o).map(u))),d=w(()=>Pc(i(a).map(u))),f=w(()=>Pc(e.headerHeight)),v=w(()=>(e.fixedData?.length||0)*e.rowHeight),g=w(()=>i(r)-i(f)-i(v)),p=w(()=>{const{style:h={},height:m,width:b}=e;return Ps({...h,height:m,width:b})});return{bodyWidth:s,fixedTableHeight:l,mainTableHeight:r,leftTableWidth:c,rightTableWidth:d,windowHeight:g,footerHeight:w(()=>Ps({height:e.footerHeight})),emptyStyle:w(()=>({top:ln(i(f)),bottom:ln(e.footerHeight),width:ln(e.width)})),rootStyle:p,headerHeight:f}};function Mq(e){const t=M(),n=M(),o=M(),{columns:a,columnsStyles:s,columnsTotalWidth:r,fixedColumnsOnLeft:l,fixedColumnsOnRight:u,hasFixedColumns:c,mainColumns:d,onColumnSorted:f}=$q(e,Vt(e,"columns"),Vt(e,"fixed")),{scrollTo:v,scrollToLeft:g,scrollToTop:p,scrollToRow:h,onScroll:m,onVerticalScroll:b,scrollPos:k}=Oq(e,{mainTableRef:t,leftTableRef:n,rightTableRef:o,onMaybeEndReached:Z}),y=fe("table-v2"),S=ft(),C=Xt(!1),{expandedRowKeys:E,lastRenderedRowIndex:$,isDynamic:O,isResetting:N,rowHeights:R,resetAfterIndex:A,onRowExpanded:_,onRowHeightChange:V,onRowHovered:H,onRowsRendered:U}=Rq(e,{mainTableRef:t,leftTableRef:n,rightTableRef:o,tableInstance:S,ns:y,isScrolling:C}),{data:W,depthMap:P}=Nq(e,{expandedRowKeys:E,lastRenderedRowIndex:$,resetAfterIndex:A}),I=w(()=>{const{estimatedRowHeight:re,rowHeight:ce}=e,ve=i(W);return He(re)?Object.values(i(R)).reduce((ke,Ne)=>ke+Ne,0):ve.length*ce}),{bodyWidth:L,fixedTableHeight:D,mainTableHeight:F,leftTableWidth:q,rightTableWidth:j,windowHeight:X,footerHeight:Q,emptyStyle:he,rootStyle:ue,headerHeight:ge}=Pq(e,{columnsTotalWidth:r,fixedColumnsOnLeft:l,fixedColumnsOnRight:u,rowsHeight:I}),ie=M(),oe=w(()=>{const re=i(W).length===0;return ye(e.fixedData)?e.fixedData.length===0&&re:re});function ne(re){const{estimatedRowHeight:ce,rowHeight:ve,rowKey:ke}=e;return ce?i(R)[i(W)[re][ke]]||ce:ve}const K=M(!1);function Z(){const{onEndReached:re}=e;if(!re)return;const{scrollTop:ce}=i(k),ve=i(I),ke=ve-(ce+i(X))+e.hScrollbarSize;!K.value&&i($)>=0&&ve<=ce+i(F)-i(ge)?(K.value=!0,re(ke)):K.value=!1}return le(()=>i(I),()=>K.value=!1),le(()=>e.expandedRowKeys,re=>E.value=re,{deep:!0}),{columns:a,containerRef:ie,mainTableRef:t,leftTableRef:n,rightTableRef:o,isDynamic:O,isResetting:N,isScrolling:C,hasFixedColumns:c,columnsStyles:s,columnsTotalWidth:r,data:W,expandedRowKeys:E,depthMap:P,fixedColumnsOnLeft:l,fixedColumnsOnRight:u,mainColumns:d,bodyWidth:L,emptyStyle:he,rootStyle:ue,footerHeight:Q,mainTableHeight:F,fixedTableHeight:D,leftTableWidth:q,rightTableWidth:j,showEmpty:oe,getRowHeight:ne,onColumnSorted:f,onRowHovered:H,onRowExpanded:_,onRowsRendered:U,onRowHeightChange:V,scrollTo:v,scrollToLeft:g,scrollToTop:p,scrollToRow:h,onScroll:m,onVerticalScroll:b}}const Wm=Symbol("tableV2"),IE="tableV2GridScrollLeft",_q=se({name:"ElTableV2Header",props:Km,setup(e,{slots:t,expose:n}){const o=fe("table-v2"),a=_e(IE),s=M(),r=w(()=>Ps({width:e.width,height:e.height})),l=w(()=>Ps({width:e.rowWidth,height:e.height})),u=w(()=>Nn(i(e.headerHeight))),c=v=>{const g=i(s);Re(()=>{g?.scroll&&g.scroll({left:v})})},d=()=>{const v=o.e("fixed-header-row"),{columns:g,fixedHeaderData:p,rowHeight:h}=e;return p?.map((m,b)=>{const k=Ps({height:h,width:"100%"});return t.fixed?.({class:v,columns:g,rowData:m,rowIndex:-(b+1),style:k})})},f=()=>{const v=o.e("dynamic-header-row"),{columns:g}=e;return i(u).map((p,h)=>{const m=Ps({width:"100%",height:p});return t.dynamic?.({class:v,columns:g,headerIndex:h,style:m})})};return la(()=>{a?.value&&c(a.value)}),n({scrollToLeft:c}),()=>{if(!(e.height<=0))return Y("div",{ref:s,class:e.class,style:i(r),role:"rowgroup"},[Y("div",{style:i(l),class:o.e("header")},[f(),d()])])}}}),Aq="ElTableV2Grid",Lq=e=>{const t=M(),n=M(),o=M(0),a=w(()=>{const{data:m,rowHeight:b,estimatedRowHeight:k}=e;if(!k)return m.length*b}),s=w(()=>{const{fixedData:m,rowHeight:b}=e;return(m?.length||0)*b}),r=w(()=>Pc(e.headerHeight)),l=w(()=>{const{height:m}=e;return Math.max(0,m-i(r)-i(s))}),u=w(()=>i(r)+i(s)>0),c=({data:m,rowIndex:b})=>m[b][e.rowKey];function d({rowCacheStart:m,rowCacheEnd:b,rowVisibleStart:k,rowVisibleEnd:y}){e.onRowsRendered?.({rowCacheStart:m,rowCacheEnd:b,rowVisibleStart:k,rowVisibleEnd:y})}function f(m,b){n.value?.resetAfterRowIndex(m,b)}function v(m,b){const k=i(t),y=i(n);at(m)?(k?.scrollToLeft(m.scrollLeft),o.value=m.scrollLeft,y?.scrollTo(m)):(k?.scrollToLeft(m),o.value=m,y?.scrollTo({scrollLeft:m,scrollTop:b}))}function g(m){i(n)?.scrollTo({scrollTop:m})}function p(m,b){const k=i(n);if(!k)return;const y=o.value;k.scrollToItem(m,0,b),y&&v({scrollLeft:y})}function h(){i(n)?.$forceUpdate(),i(t)?.$forceUpdate()}return le(()=>e.bodyWidth,()=>{He(e.estimatedRowHeight)&&n.value?.resetAfter({columnIndex:0},!1)}),{bodyRef:n,forceUpdate:h,fixedRowHeight:s,gridHeight:l,hasHeader:u,headerHeight:r,headerRef:t,totalHeight:a,itemKey:c,onItemRendered:d,resetAfterRowIndex:f,scrollTo:v,scrollToTop:g,scrollToRow:p,scrollLeft:o}},jm=se({name:Aq,props:Ic,setup(e,{slots:t,expose:n}){const{ns:o}=_e(Wm),{bodyRef:a,fixedRowHeight:s,gridHeight:r,hasHeader:l,headerRef:u,headerHeight:c,totalHeight:d,forceUpdate:f,itemKey:v,onItemRendered:g,resetAfterRowIndex:p,scrollTo:h,scrollToTop:m,scrollToRow:b,scrollLeft:k}=Lq(e);St(IE,k),Ji(async()=>{await Re();const S=a.value?.states.scrollTop;S&&m(Math.round(S)+1)}),n({forceUpdate:f,totalHeight:d,scrollTo:h,scrollToTop:m,scrollToRow:b,resetAfterRowIndex:p});const y=()=>e.bodyWidth;return()=>{const{cache:S,columns:C,data:E,fixedData:$,useIsScrolling:O,scrollbarAlwaysOn:N,scrollbarEndGap:R,scrollbarStartGap:A,style:_,rowHeight:V,bodyWidth:H,estimatedRowHeight:U,headerWidth:W,height:P,width:I,getRowHeight:L,onScroll:D}=e,F=He(U),q=F?Y9:W9,j=i(c);return Y("div",{role:"table",class:[o.e("table"),e.class],style:_},[Y(q,{ref:a,data:E,useIsScrolling:O,itemKey:v,columnCache:0,columnWidth:F?y:H,totalColumn:1,totalRow:E.length,rowCache:S,rowHeight:F?L:V,width:I,height:i(r),class:o.e("body"),role:"rowgroup",scrollbarStartGap:A,scrollbarEndGap:R,scrollbarAlwaysOn:N,onScroll:D,onItemRendered:g,perfMode:!1},{default:X=>{const Q=E[X.rowIndex];return t.row?.({...X,columns:C,rowData:Q})}}),i(l)&&Y(_q,{ref:u,class:o.e("header-wrapper"),columns:C,headerData:E,headerHeight:e.headerHeight,fixedHeaderData:$,rowWidth:W,rowHeight:V,width:I,height:Math.min(j+i(s),P)},{dynamic:t.header,fixed:t.row})])}}});function Dq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Bq=(e,{slots:t})=>{const{mainTableRef:n,...o}=e;return Y(jm,dt({ref:n},o),Dq(t)?t:{default:()=>[t]})};function Fq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Vq=(e,{slots:t})=>{if(!e.columns.length)return;const{leftTableRef:n,...o}=e;return Y(jm,dt({ref:n},o),Fq(t)?t:{default:()=>[t]})};function zq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Hq=(e,{slots:t})=>{if(!e.columns.length)return;const{rightTableRef:n,...o}=e;return Y(jm,dt({ref:n},o),zq(t)?t:{default:()=>[t]})},Kq=e=>{const{isScrolling:t}=_e(Wm),n=M(!1),o=M(),a=w(()=>He(e.estimatedRowHeight)&&e.rowIndex>=0),s=(u=!1)=>{const c=i(o);if(!c)return;const{columns:d,onRowHeightChange:f,rowKey:v,rowIndex:g,style:p}=e,{height:h}=c.getBoundingClientRect();n.value=!0,Re(()=>{if(u||h!==Number.parseInt(p.height)){const m=d[0],b=m?.placeholderSign===Wi;f?.({rowKey:v,height:h,rowIndex:g},m&&!b&&m.fixed)}})},r=w(()=>{const{rowData:u,rowIndex:c,rowKey:d,onRowHover:f}=e,v=e.rowEventHandlers||{},g={};return Object.entries(v).forEach(([p,h])=>{Ve(h)&&(g[p]=m=>{h({event:m,rowData:u,rowIndex:c,rowKey:d})})}),f&&[{name:"onMouseleave",hovered:!1},{name:"onMouseenter",hovered:!0}].forEach(({name:p,hovered:h})=>{const m=g[p];g[p]=b=>{f({event:b,hovered:h,rowData:u,rowIndex:c,rowKey:d}),m?.(b)}}),g}),l=u=>{const{onRowExpand:c,rowData:d,rowIndex:f,rowKey:v}=e;c?.({expanded:u,rowData:d,rowIndex:f,rowKey:v})};return ht(()=>{i(a)&&s(!0)}),{isScrolling:t,measurable:a,measured:n,rowRef:o,eventHandlers:r,onExpand:l}},Wq=se({name:"ElTableV2TableRow",props:ir,setup(e,{expose:t,slots:n,attrs:o}){const{eventHandlers:a,isScrolling:s,measurable:r,measured:l,rowRef:u,onExpand:c}=Kq(e);return t({onExpand:c}),()=>{const{columns:d,columnsStyles:f,expandColumnKey:v,depth:g,rowData:p,rowIndex:h,style:m}=e;let b=d.map((k,y)=>{const S=ye(p.children)&&p.children.length>0&&k.key===v;return n.cell({column:k,columns:d,columnIndex:y,depth:g,style:f[k.key],rowData:p,rowIndex:h,isScrolling:i(s),expandIconProps:S?{rowData:p,rowIndex:h,onExpand:c}:void 0})});if(n.row&&(b=n.row({cells:b.map(k=>ye(k)&&k.length===1?k[0]:k),style:m,columns:d,depth:g,rowData:p,rowIndex:h,isScrolling:i(s)})),i(r)){const{height:k,...y}=m||{},S=i(l);return Y("div",dt({ref:u,class:e.class,style:S?m:y,role:"row"},o,i(a)),[b])}return Y("div",dt(o,{ref:u,class:e.class,style:m,role:"row"},i(a)),[b])}}});function jq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Uq=(e,{slots:t})=>{const{columns:n,columnsStyles:o,depthMap:a,expandColumnKey:s,expandedRowKeys:r,estimatedRowHeight:l,hasFixedColumns:u,rowData:c,rowIndex:d,style:f,isScrolling:v,rowProps:g,rowClass:p,rowKey:h,rowEventHandlers:m,ns:b,onRowHovered:k,onRowExpanded:y}=e,S=Er(p,{columns:n,rowData:c,rowIndex:d},""),C=Er(g,{columns:n,rowData:c,rowIndex:d}),E=c[h],$=a[E]||0,O=!!s,N=d<0,R=[b.e("row"),S,b.is("expanded",O&&r.includes(E)),b.is("fixed",!$&&N),b.is("customized",!!t.row),{[b.e(`row-depth-${$}`)]:O&&d>=0}],A=u?k:void 0,_={...C,columns:n,columnsStyles:o,class:R,depth:$,expandColumnKey:s,estimatedRowHeight:N?void 0:l,isScrolling:v,rowIndex:d,rowData:c,rowKey:E,rowEventHandlers:m,style:f};return Y(Wq,dt(_,{onRowExpand:y,onMouseenter:U=>{A?.({hovered:!0,rowKey:E,event:U,rowData:c,rowIndex:d})},onMouseleave:U=>{A?.({hovered:!1,rowKey:E,event:U,rowData:c,rowIndex:d})},rowkey:E}),jq(t)?t:{default:()=>[t]})},Um=(e,{slots:t})=>{const{cellData:n,style:o}=e,a=n?.toString?.()||"",s=ee(t,"default",e,()=>[a]);return Y("div",{class:e.class,title:a,style:o},[s])};Um.displayName="ElTableV2Cell";Um.inheritAttrs=!1;const PE=e=>{const{expanded:t,expandable:n,onExpand:o,style:a,size:s,ariaLabel:r}=e;return Y("button",dt({onClick:n?()=>o(!t):void 0,ariaLabel:r,ariaExpanded:t,class:e.class},{type:"button"}),[Y(De,{size:s,style:a},{default:()=>[Y(no,null,null)]})])};PE.inheritAttrs=!1;const Ih=({columns:e,column:t,columnIndex:n,depth:o,expandIconProps:a,isScrolling:s,rowData:r,rowIndex:l,style:u,expandedRowKeys:c,ns:d,t:f,cellProps:v,expandColumnKey:g,indentSize:p,iconSize:h,rowKey:m},{slots:b})=>{const k=Ps(u);if(t.placeholderSign===Wi)return Y("div",{class:d.em("row-cell","placeholder"),style:k},null);const{cellRenderer:y,dataKey:S,dataGetter:C}=t,E=Ve(C)?C({columns:e,column:t,columnIndex:n,rowData:r,rowIndex:l}):wn(r,S??""),$=Er(v,{cellData:E,columns:e,column:t,columnIndex:n,rowIndex:l,rowData:r}),O={class:d.e("cell-text"),columns:e,column:t,columnIndex:n,cellData:E,isScrolling:s,rowData:r,rowIndex:l},N=NE(y),R=N?N(O):ee(b,"default",O,()=>[Y(Um,O,null)]),A=[d.e("row-cell"),t.class,t.align===Sd.CENTER&&d.is("align-center"),t.align===Sd.RIGHT&&d.is("align-right")],_=l>=0&&g&&t.key===g,V=l>=0&&c.includes(r[m]);let H;const U=`margin-inline-start: ${o*p}px;`;return _&&(at(a)?H=Y(PE,dt(a,{class:[d.e("expand-icon"),d.is("expanded",V)],size:h,expanded:V,ariaLabel:f(V?"el.table.collapseRowLabel":"el.table.expandRowLabel"),style:U,expandable:!0}),null):H=Y("div",{style:[U,`width: ${h}px; height: ${h}px;`].join(" ")},null)),Y("div",dt({class:A,style:k},$,{role:"cell"}),[H,R])};Ih.inheritAttrs=!1;const qq=Ce({class:String,columns:ku,columnsStyles:{type:G(Object),required:!0},headerIndex:Number,style:{type:G(Object)}}),Yq=se({name:"ElTableV2HeaderRow",props:qq,setup(e,{slots:t}){return()=>{const{columns:n,columnsStyles:o,headerIndex:a,style:s}=e;let r=n.map((l,u)=>t.cell({columns:n,column:l,columnIndex:u,headerIndex:a,style:o[l.key]}));return t.header&&(r=t.header({cells:r.map(l=>ye(l)&&l.length===1?l[0]:l),columns:n,headerIndex:a})),Y("div",{class:e.class,style:s,role:"row"},[r])}}});function Gq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Xq=({columns:e,columnsStyles:t,headerIndex:n,style:o,headerClass:a,headerProps:s,ns:r},{slots:l})=>{const u={columns:e,headerIndex:n},c=[r.e("header-row"),Er(a,u,""),r.is("customized",!!l.header)];return Y(Yq,{...Er(s,u),columnsStyles:t,class:c,columns:e,headerIndex:n,style:o},Gq(l)?l:{default:()=>[l]})},qm=(e,{slots:t})=>ee(t,"default",e,()=>[Y("div",{class:e.class,title:e.column?.title},[e.column?.title])]);qm.displayName="ElTableV2HeaderCell";qm.inheritAttrs=!1;const Jq=e=>{const{sortOrder:t}=e;return Y("button",{type:"button","aria-label":e.ariaLabel,class:e.class},[Y(De,{size:14},{default:()=>[t===Ea.ASC?Y(V3,null,null):Y(B3,null,null)]})])},F0=(e,{slots:t})=>{const{column:n,ns:o,t:a,style:s,onColumnSorted:r}=e,l=Ps(s);if(n.placeholderSign===Wi)return Y("div",{class:o.em("header-row-cell","placeholder"),style:l},null);const{headerCellRenderer:u,headerClass:c,sortable:d}=n,f={...e,class:o.e("header-cell-text")},v=NE(u),g=v?v(f):ee(t,"default",f,()=>[Y(qm,f,null)]),{sortBy:p,sortState:h,headerCellProps:m}=e;let b,k,y;if(h){const C=h[n.key];b=!!Nh[C],k=b?C:Ea.ASC}else b=n.key===p.key,k=b?p.order:Ea.ASC;k===Ea.ASC?y="ascending":k===Ea.DESC?y="descending":y=void 0;const S=[o.e("header-cell"),Er(c,e,""),n.align===Sd.CENTER&&o.is("align-center"),n.align===Sd.RIGHT&&o.is("align-right"),d&&o.is("sortable")];return Y("div",dt({...Er(m,e),onClick:n.sortable?r:void 0,ariaSort:d?y:void 0,class:S,style:l,"data-key":n.key},{role:"columnheader"}),[g,d&&Y(Jq,{class:[o.e("sort-icon"),b&&o.is("sorting")],sortOrder:k,ariaLabel:a("el.table.sortLabel",{column:n.title||""})},null)])},ME=(e,{slots:t})=>Y("div",{class:e.class,style:e.style},[t.default?.()]);ME.displayName="ElTableV2Footer";const _E=(e,{slots:t})=>{const n=ee(t,"default",{},()=>[Y(F2,null,null)]);return Y("div",{class:e.class,style:e.style},[n])};_E.displayName="ElTableV2Empty";const AE=(e,{slots:t})=>Y("div",{class:e.class,style:e.style},[t.default?.()]);AE.displayName="ElTableV2Overlay";function Yl(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Zq=se({name:"ElTableV2",props:xq,setup(e,{slots:t,expose:n}){const o=fe("table-v2"),{t:a}=Ct(),{columnsStyles:s,fixedColumnsOnLeft:r,fixedColumnsOnRight:l,mainColumns:u,mainTableHeight:c,fixedTableHeight:d,leftTableWidth:f,rightTableWidth:v,data:g,depthMap:p,expandedRowKeys:h,hasFixedColumns:m,mainTableRef:b,leftTableRef:k,rightTableRef:y,isDynamic:S,isResetting:C,isScrolling:E,bodyWidth:$,emptyStyle:O,rootStyle:N,footerHeight:R,showEmpty:A,scrollTo:_,scrollToLeft:V,scrollToTop:H,scrollToRow:U,getRowHeight:W,onColumnSorted:P,onRowHeightChange:I,onRowHovered:L,onRowExpanded:D,onRowsRendered:F,onScroll:q,onVerticalScroll:j}=Mq(e);return n({scrollTo:_,scrollToLeft:V,scrollToTop:H,scrollToRow:U}),St(Wm,{ns:o,isResetting:C,isScrolling:E}),()=>{const{cache:X,cellProps:Q,estimatedRowHeight:he,expandColumnKey:ue,fixedData:ge,headerHeight:ie,headerClass:oe,headerProps:ne,headerCellProps:K,sortBy:Z,sortState:re,rowHeight:ce,rowClass:ve,rowEventHandlers:ke,rowKey:Ne,rowProps:Ie,scrollbarAlwaysOn:$e,indentSize:pe,iconSize:Ee,useIsScrolling:me,vScrollbarSize:Me,width:We}=e,Ze=i(g),Pe={cache:X,class:o.e("main"),columns:i(u),data:Ze,fixedData:ge,estimatedRowHeight:he,bodyWidth:i($),headerHeight:ie,headerWidth:i($),height:i(c),mainTableRef:b,rowKey:Ne,rowHeight:ce,scrollbarAlwaysOn:$e,scrollbarStartGap:2,scrollbarEndGap:Me,useIsScrolling:me,width:We,getRowHeight:W,onRowsRendered:F,onScroll:q},Ae=i(f),je=i(d),Rt={cache:X,class:o.e("left"),columns:i(r),data:Ze,fixedData:ge,estimatedRowHeight:he,leftTableRef:k,rowHeight:ce,bodyWidth:Ae,headerWidth:Ae,headerHeight:ie,height:je,rowKey:Ne,scrollbarAlwaysOn:$e,scrollbarStartGap:2,scrollbarEndGap:Me,useIsScrolling:me,width:Ae,getRowHeight:W,onScroll:j},Ue=i(v),lt={cache:X,class:o.e("right"),columns:i(l),data:Ze,fixedData:ge,estimatedRowHeight:he,rightTableRef:y,rowHeight:ce,bodyWidth:Ue,headerWidth:Ue,headerHeight:ie,height:je,rowKey:Ne,scrollbarAlwaysOn:$e,scrollbarStartGap:2,scrollbarEndGap:Me,width:Ue,style:`${o.cssVarName("table-scrollbar-size")}: ${Me}px`,useIsScrolling:me,getRowHeight:W,onScroll:j},mt=i(s),kt={ns:o,depthMap:i(p),columnsStyles:mt,expandColumnKey:ue,expandedRowKeys:i(h),estimatedRowHeight:he,hasFixedColumns:i(m),rowProps:Ie,rowClass:ve,rowKey:Ne,rowEventHandlers:ke,onRowHovered:L,onRowExpanded:D,onRowHeightChange:I},be={cellProps:Q,expandColumnKey:ue,indentSize:pe,iconSize:Ee,rowKey:Ne,expandedRowKeys:i(h),ns:o,t:a},ze={ns:o,headerClass:oe,headerProps:ne,columnsStyles:mt},de={ns:o,t:a,sortBy:Z,sortState:re,headerCellProps:K,onColumnSorted:P},Ge={row:_n=>Y(Uq,dt(_n,kt),{row:t.row,cell:Be=>{let nt;return t.cell?Y(Ih,dt(Be,be,{style:mt[Be.column.key]}),Yl(nt=t.cell(Be))?nt:{default:()=>[nt]}):Y(Ih,dt(Be,be,{style:mt[Be.column.key]}),null)}}),header:_n=>Y(Xq,dt(_n,ze),{header:t.header,cell:Be=>{let nt;return t["header-cell"]?Y(F0,dt(Be,de,{style:mt[Be.column.key]}),Yl(nt=t["header-cell"](Be))?nt:{default:()=>[nt]}):Y(F0,dt(Be,de,{style:mt[Be.column.key]}),null)}})},$t=[e.class,o.b(),o.e("root"),o.is("dynamic",i(S))],tn={class:o.e("footer"),style:i(R)};return Y("div",{class:$t,style:i(N)},[Y(Bq,Pe,Yl(Ge)?Ge:{default:()=>[Ge]}),Y(Vq,Rt,Yl(Ge)?Ge:{default:()=>[Ge]}),Y(Hq,lt,Yl(Ge)?Ge:{default:()=>[Ge]}),t.footer&&Y(ME,tn,{default:t.footer}),i(A)&&Y(_E,{class:o.e("empty"),style:i(O)},{default:t.empty}),t.overlay&&Y(AE,{class:o.e("overlay")},{default:t.overlay})])}}}),Qq=Ce({disableWidth:Boolean,disableHeight:Boolean,onResize:{type:G(Function)}}),eY=e=>{const t=M(),n=M(0),o=M(0);let a;return ht(()=>{a=en(t,([s])=>{const{width:r,height:l}=s.contentRect,{paddingLeft:u,paddingRight:c,paddingTop:d,paddingBottom:f}=getComputedStyle(s.target),v=Number.parseInt(u)||0,g=Number.parseInt(c)||0,p=Number.parseInt(d)||0,h=Number.parseInt(f)||0;n.value=r-v-g,o.value=l-p-h}).stop}),Bt(()=>{a?.()}),le([n,o],([s,r])=>{e.onResize?.({width:s,height:r})}),{sizer:t,width:n,height:o}},tY=se({name:"ElAutoResizer",props:Qq,setup(e,{slots:t}){const n=fe("auto-resizer"),{height:o,width:a,sizer:s}=eY(e),r={width:"100%",height:"100%"};return()=>Y("div",{ref:s,class:n.b(),style:r},[t.default?.({height:o.value,width:a.value})])}}),nY=rt(Zq),oY=rt(tY),pf=Symbol("tabsRootContextKey"),aY=Ce({tabs:{type:G(Array),default:()=>rn([])},tabRefs:{type:G(Object),default:()=>rn({})}}),V0="ElTabBar";var sY=se({name:V0,__name:"tab-bar",props:aY,setup(e,{expose:t}){const n=e,o=_e(pf);o||nn(V0,"");const a=fe("tabs"),s=M(),r=M(),l=w(()=>Tt(o.props.defaultValue)||!!r.value?.transform),u=()=>{let g=0,p=0;const h=["top","bottom"].includes(o.props.tabPosition)?"width":"height",m=h==="width"?"x":"y",b=m==="x"?"left":"top";return n.tabs.every(k=>{if(Tt(k.paneName))return!1;const y=n.tabRefs[k.paneName];if(!y)return!1;if(!k.active)return!0;g=y[`offset${$s(b)}`],p=y[`client${$s(h)}`];const S=window.getComputedStyle(y);return h==="width"&&(p-=Number.parseFloat(S.paddingLeft)+Number.parseFloat(S.paddingRight),g+=Number.parseFloat(S.paddingLeft)),!1}),{[h]:`${p}px`,transform:`translate${$s(m)}(${g}px)`}},c=()=>r.value=u(),d=[],f=()=>{d.forEach(g=>g.stop()),d.length=0,Object.values(n.tabRefs).forEach(g=>{d.push(en(g,c))})};le(()=>n.tabs,async()=>{await Re(),c(),f()},{immediate:!0});const v=en(s,()=>c());return Bt(()=>{d.forEach(g=>g.stop()),d.length=0,v.stop()}),t({ref:s,update:c}),(g,p)=>l.value?(x(),B("div",{key:0,ref_key:"barRef",ref:s,class:T([i(a).e("active-bar"),i(a).is(i(o).props.tabPosition)]),style:Ke(r.value)},null,6)):te("v-if",!0)}}),rY=sY;const lY=Ce({panes:{type:G(Array),default:()=>rn([])},currentName:{type:[String,Number],default:""},editable:Boolean,type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean,tabindex:{type:[String,Number],default:void 0}}),iY={tabClick:(e,t,n)=>n instanceof Event,tabRemove:(e,t)=>t instanceof Event},z0="ElTabNav",uY=se({name:z0,props:lY,emits:iY,setup(e,{expose:t,emit:n}){const o=_e(pf);o||nn(z0,"");const a=fe("tabs"),s=i_(),r=c_(),l=M(),u=M(),c=M(),d=M({}),f=M(),v=M(!1),g=M(0),p=M(!1),h=M(!0),m=Xt(),b=w(()=>["top","bottom"].includes(o.props.tabPosition)),k=w(()=>b.value?"width":"height"),y=w(()=>({transform:`translate${k.value==="width"?"X":"Y"}(-${g.value}px)`})),{width:S,height:C}=Vp(l),{width:E,height:$}=Vp(u,{width:0,height:0},{box:"border-box"}),O=w(()=>b.value?S.value:C.value),N=w(()=>b.value?E.value:$.value),{onWheel:R}=nE({atStartEdge:w(()=>g.value<=0),atEndEdge:w(()=>N.value-g.value<=O.value),layout:w(()=>b.value?"horizontal":"vertical")},D=>{g.value=or(g.value+D,0,N.value-O.value)}),A=()=>{if(!l.value)return;const D=l.value[`offset${$s(k.value)}`],F=g.value;F&&(g.value=F>D?F-D:0)},_=()=>{if(!l.value||!u.value)return;const D=u.value[`offset${$s(k.value)}`],F=l.value[`offset${$s(k.value)}`],q=g.value;D-q<=F||(g.value=D-q>F*2?q+F:D-F)},V=async()=>{const D=u.value;if(!v.value||!c.value||!l.value||!D)return;await Re();const F=d.value[e.currentName];if(!F)return;const q=l.value,j=F.getBoundingClientRect(),X=q.getBoundingClientRect(),Q=b.value?D.offsetWidth-X.width:D.offsetHeight-X.height,he=g.value;let ue=he;b.value?(j.leftX.right&&(ue=he+j.right-X.right)):(j.topX.bottom&&(ue=he+(j.bottom-X.bottom))),ue=Math.max(ue,0),g.value=Math.min(ue,Q)},H=()=>{if(!u.value||!l.value)return;e.stretch&&f.value?.update();const D=u.value[`offset${$s(k.value)}`],F=l.value[`offset${$s(k.value)}`],q=g.value;F0&&(g.value=0))},U=D=>{const F=jt(D);let q=0;switch(F){case we.left:case we.up:q=-1;break;case we.right:case we.down:q=1;break;default:return}const j=Array.from(D.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)"));let X=j.indexOf(D.target)+q;X<0?X=j.length-1:X>=j.length&&(X=0),j[X].focus({preventScroll:!0}),j[X].click(),W()},W=()=>{h.value&&(p.value=!0)},P=()=>p.value=!1,I=(D,F)=>{d.value[F]=D},L=async()=>{await Re(),d.value[e.currentName]?.focus({preventScroll:!0})};return le(s,D=>{D==="hidden"?h.value=!1:D==="visible"&&setTimeout(()=>h.value=!0,50)}),le(r,D=>{D?setTimeout(()=>h.value=!0,50):h.value=!1}),en(c,()=>{ta(H)}),ht(()=>setTimeout(()=>V(),0)),la(()=>H()),t({scrollToActiveTab:V,removeFocus:P,focusActiveTab:L,tabListRef:u,tabBarRef:f,scheduleRender:()=>rc(m)}),()=>{const D=v.value?[Y("span",{class:[a.e("nav-prev"),a.is("disabled",!v.value.prev)],onClick:A},[Y(De,null,{default:()=>[Y(is,null,null)]})]),Y("span",{class:[a.e("nav-next"),a.is("disabled",!v.value.next)],onClick:_},[Y(De,null,{default:()=>[Y(no,null,null)]})])]:null,F=e.panes.map((q,j)=>{const X=q.uid,Q=q.props.disabled,he=q.props.name??q.index??`${j}`,ue=!Q&&(q.isClosable||q.props.closable!==!1&&e.editable);q.index=`${j}`;const ge=ue?Y(De,{class:"is-icon-close",onClick:ne=>n("tabRemove",q,ne)},{default:()=>[Y(Ko,null,null)]}):null,ie=q.slots.label?.()||q.props.label,oe=!Q&&q.active?e.tabindex??o.props.tabindex:-1;return Y("div",{ref:ne=>I(ne,he),class:[a.e("item"),a.is(o.props.tabPosition),a.is("active",q.active),a.is("disabled",Q),a.is("closable",ue),a.is("focus",p.value)],id:`tab-${he}`,key:`tab-${X}`,"aria-controls":`pane-${he}`,role:"tab","aria-selected":q.active,tabindex:oe,onFocus:()=>W(),onBlur:()=>P(),onClick:ne=>{P(),n("tabClick",q,he,ne)},onKeydown:ne=>{const K=jt(ne);ue&&(K===we.delete||K===we.backspace)&&n("tabRemove",q,ne)}},[ie,ge])});return m.value,Y("div",{ref:c,class:[a.e("nav-wrap"),a.is("scrollable",!!v.value),a.is(o.props.tabPosition)]},[D,Y("div",{class:a.e("nav-scroll"),ref:l},[e.panes.length>0?Y("div",{class:[a.e("nav"),a.is(o.props.tabPosition),a.is("stretch",e.stretch&&["top","bottom"].includes(o.props.tabPosition))],ref:u,style:y.value,role:"tablist",onKeydown:U,onWheel:R},[e.type?null:Y(rY,{ref:f,tabs:[...e.panes],tabRefs:d.value},null),F]):null])])}}}),cY=Ce({type:{type:String,values:["card","border-card",""],default:""},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},defaultValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:G(Function),default:()=>!0},stretch:Boolean,tabindex:{type:[String,Number],default:0}}),pp=e=>Le(e)||He(e),dY={[ot]:e=>pp(e),tabClick:(e,t)=>t instanceof Event,tabChange:e=>pp(e),edit:(e,t)=>["remove","add"].includes(t),tabRemove:e=>pp(e),tabAdd:()=>!0},fY=se({name:"ElTabs",props:cY,emits:dY,setup(e,{emit:t,slots:n,expose:o}){const a=fe("tabs"),s=w(()=>["left","right"].includes(e.tabPosition)),{children:r,addChild:l,removeChild:u,ChildrenSorter:c}=tf(ft(),"ElTabPane"),d=M(),f=M((Tt(e.modelValue)?e.defaultValue:e.modelValue)??"0"),v=async(k,y=!1)=>{if(!(f.value===k||Tt(k)))try{let S;if(e.beforeLeave){const C=e.beforeLeave(k,f.value);S=C instanceof Promise?await C:C}else S=!0;if(S!==!1){const C=r.value.find(E=>E.paneName===f.value)?.isFocusInsidePane();f.value=k,y&&(t(ot,k),t("tabChange",k)),d.value?.removeFocus?.(),C&&d.value?.focusActiveTab()}}catch{}},g=(k,y,S)=>{k.props.disabled||(t("tabClick",k,S),v(y,!0))},p=(k,y)=>{k.props.disabled||Tt(k.props.name)||(y.stopPropagation(),t("edit",k.props.name,"remove"),t("tabRemove",k.props.name))},h=()=>{t("edit",void 0,"add"),t("tabAdd")},m=k=>{const y=jt(k);[we.enter,we.numpadEnter].includes(y)&&h()},b=k=>{const y=k.el.firstChild,S=["bottom","right"].includes(e.tabPosition)?k.children[0].el:k.children[1].el;y!==S&&y.before(S)};return le(()=>e.modelValue,k=>v(k)),le(f,async()=>{await Re(),d.value?.scrollToActiveTab()}),St(pf,{props:e,currentName:f,registerPane:l,unregisterPane:u,nav$:d}),o({currentName:f,get tabNavRef(){return ou(d.value,["scheduleRender"])}}),()=>{const k=n["add-icon"],y=e.editable||e.addable?Y("div",{class:[a.e("new-tab"),s.value&&a.e("new-tab-vertical")],tabindex:e.tabindex,onClick:h,onKeydown:m},[k?ee(n,"add-icon"):Y(De,{class:a.is("icon-plus")},{default:()=>[Y(zC,null,null)]})]):null,S=()=>Y(uY,{ref:d,currentName:f.value,editable:e.editable,type:e.type,panes:r.value,stretch:e.stretch,onTabClick:g,onTabRemove:p},null),C=Y("div",{class:[a.e("header"),s.value&&a.e("header-vertical"),a.is(e.tabPosition)]},[Y(c,null,{default:S,$stable:!0}),y]),E=Y("div",{class:a.e("content")},[ee(n,"default")]);return Y("div",{class:[a.b(),a.m(e.tabPosition),{[a.m("card")]:e.type==="card",[a.m("border-card")]:e.type==="border-card"}],onVnodeMounted:b,onVnodeUpdated:b},[E,C])}}}),pY=Ce({label:{type:String,default:""},name:{type:[String,Number]},closable:{type:Boolean,default:void 0},disabled:Boolean,lazy:Boolean}),hY=["id","aria-hidden","aria-labelledby"],H0="ElTabPane";var vY=se({name:H0,__name:"tab-pane",props:pY,setup(e){const t=e,n=ft(),o=vn(),a=_e(pf);a||nn(H0,"usage: ");const s=fe("tab-pane"),r=M(),l=M(),u=w(()=>t.closable??a.props.closable),c=w(()=>a.currentName.value===(t.name??l.value)),d=M(c.value),f=w(()=>t.name??l.value),v=w(()=>!t.lazy||d.value||c.value),g=()=>r.value?.contains(document.activeElement);le(c,h=>{h&&(d.value=!0)});const p=At({uid:n.uid,getVnode:()=>n.vnode,slots:o,props:t,paneName:f,active:c,index:l,isClosable:u,isFocusInsidePane:g});return a.registerPane(p),Bt(()=>{a.unregisterPane(p)}),iv(()=>{o.label&&a.nav$.value?.scheduleRender()}),(h,m)=>v.value?ut((x(),B("div",{key:0,id:`pane-${f.value}`,ref_key:"paneRef",ref:r,class:T(i(s).b()),role:"tabpanel","aria-hidden":!c.value,"aria-labelledby":`tab-${f.value}`},[ee(h.$slots,"default")],10,hY)),[[Pt,c.value]]):te("v-if",!0)}}),LE=vY;const mY=rt(fY,{TabPane:LE}),gY=on(LE),bY=Ce({type:{type:String,values:["primary","success","info","warning","danger",""],default:""},size:{type:String,values:ia,default:""},truncated:Boolean,lineClamp:{type:[String,Number]},tag:{type:String,default:"span"}});var yY=se({name:"ElText",__name:"text",props:bY,setup(e){const t=e,n=M(),o=Cn(),a=fe("text"),s=w(()=>[a.b(),a.m(t.type),a.m(o.value),a.is("truncated",t.truncated),a.is("line-clamp",!Tt(t.lineClamp))]),r=()=>{if(fs().title)return;let l=!1;const u=n.value?.textContent||"";if(t.truncated){const c=n.value?.offsetWidth,d=n.value?.scrollWidth;c&&d&&d>c&&(l=!0)}else if(!Tt(t.lineClamp)){const c=n.value?.offsetHeight,d=n.value?.scrollHeight;c&&d&&d>c&&(l=!0)}l?n.value?.setAttribute("title",u):n.value?.removeAttribute("title")};return ht(r),la(r),(l,u)=>(x(),ae(it(e.tag),{ref_key:"textRef",ref:n,class:T(s.value),style:Ke({"-webkit-line-clamp":e.lineClamp})},{default:J(()=>[ee(l.$slots,"default")]),_:3},8,["class","style"]))}}),wY=yY;const Ym=rt(wY),Ph="00:30",SY=Ce({format:{type:String,default:"HH:mm"},modelValue:{type:G(String)},disabled:{type:Boolean,default:void 0},editable:{type:Boolean,default:!0},effect:{type:G(String),default:"light"},clearable:{type:Boolean,default:!0},size:Tn,placeholder:String,start:{type:String,default:"09:00"},end:{type:String,default:"18:00"},step:{type:String,default:Ph},minTime:{type:G(String)},maxTime:{type:G(String)},includeEndTime:Boolean,name:String,prefixIcon:{type:G([String,Object]),default:()=>VC},clearIcon:{type:G([String,Object]),default:()=>Va},popperClass:{type:String,default:""},popperStyle:{type:G([String,Object])},...Pr}),Ga=e=>{const t=(e||"").split(":");if(t.length>=2){let n=Number.parseInt(t[0],10);const o=Number.parseInt(t[1],10),a=e.toUpperCase();return a.includes("AM")&&n===12?n=0:a.includes("PM")&&n!==12&&(n+=12),{hours:n,minutes:o}}return null},hp=(e,t)=>{const n=Ga(e);if(!n)return-1;const o=Ga(t);if(!o)return-1;const a=n.minutes+n.hours*60,s=o.minutes+o.hours*60;return a===s?0:a>s?1:-1},K0=e=>`${e}`.padStart(2,"0"),Ur=e=>`${K0(e.hours)}:${K0(e.minutes)}`,CY=(e,t)=>{const n=Ga(e);if(!n)return"";const o=Ga(t);if(!o)return"";const a={hours:n.hours,minutes:n.minutes};return a.minutes+=o.minutes,a.hours+=o.hours,a.hours+=Math.floor(a.minutes/60),a.minutes=a.minutes%60,Ur(a)};var kY=se({name:"ElTimeSelect",__name:"time-select",props:SY,emits:[bt,"blur","focus","clear",ot],setup(e,{expose:t}){st.extend(vm);const{Option:n}=Hs,o=e,a=fe("input"),s=M(),r=un(),{lang:l}=Ct(),u=w(()=>o.modelValue),c=w(()=>{const b=Ga(o.start);return b?Ur(b):null}),d=w(()=>{const b=Ga(o.end);return b?Ur(b):null}),f=w(()=>{const b=Ga(o.minTime||"");return b?Ur(b):null}),v=w(()=>{const b=Ga(o.maxTime||"");return b?Ur(b):null}),g=w(()=>{const b=Ga(o.step),k=!b||b.hours<0||b.minutes<0||Number.isNaN(b.hours)||Number.isNaN(b.minutes)||b.hours===0&&b.minutes===0;return k&&pt("ElTimeSelect",`invalid step, fallback to default step (${Ph}).`),k?Ph:Ur(b)}),p=w(()=>{const b=[],k=(y,S)=>{b.push({value:y,rawValue:S,disabled:hp(S,f.value||"-1:-1")<=0||hp(S,v.value||"100:100")>=0})};if(o.start&&o.end&&o.step){let y=c.value,S;for(;y&&d.value&&hp(y,d.value)<=0;)S=st(y,"HH:mm").locale(l.value).format(o.format),k(S,y),y=CY(y,g.value);o.includeEndTime&&d.value&&b[b.length-1]?.rawValue!==d.value&&k(st(d.value,"HH:mm").locale(l.value).format(o.format),d.value)}return b});return t({blur:()=>{s.value?.blur?.()},focus:()=>{s.value?.focus?.()}}),(b,k)=>(x(),ae(i(Hs),{ref_key:"select",ref:s,name:e.name,"model-value":u.value,disabled:i(r),clearable:e.clearable,"clear-icon":e.clearIcon,size:e.size,effect:e.effect,placeholder:e.placeholder,"default-first-option":"",filterable:e.editable,"empty-values":e.emptyValues,"value-on-clear":e.valueOnClear,"popper-class":e.popperClass,"popper-style":e.popperStyle,"onUpdate:modelValue":k[0]||(k[0]=y=>b.$emit(i(ot),y)),onChange:k[1]||(k[1]=y=>b.$emit(i(bt),y)),onBlur:k[2]||(k[2]=y=>b.$emit("blur",y)),onFocus:k[3]||(k[3]=y=>b.$emit("focus",y)),onClear:k[4]||(k[4]=()=>b.$emit("clear"))},{prefix:J(()=>[e.prefixIcon?(x(),ae(i(De),{key:0,class:T(i(a).e("prefix-icon"))},{default:J(()=>[(x(),ae(it(e.prefixIcon)))]),_:1},8,["class"])):te("v-if",!0)]),default:J(()=>[(x(!0),B(Fe,null,yt(p.value,y=>(x(),ae(i(n),{key:y.value,label:y.value,value:y.value,disabled:y.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["name","model-value","disabled","clearable","clear-icon","size","effect","placeholder","filterable","empty-values","value-on-clear","popper-class","popper-style"]))}}),EY=kY;const xY=rt(EY),DE="timeline",TY=Ce({mode:{type:String,values:["start","alternate","alternate-reverse","end"],default:"start"},reverse:Boolean}),$Y=se({name:"ElTimeline",props:TY,setup(e,{slots:t}){const n=fe("timeline");St(DE,{props:e,slots:t});const o=w(()=>[n.b(),n.is(e.mode)]);return()=>{const a=$o(t.default?.()??[]);return Ye("ul",{class:o.value},e.reverse?a.reverse():a)}}}),OY=Ce({timestamp:{type:String,default:""},hideTimestamp:Boolean,center:Boolean,placement:{type:String,values:["top","bottom"],default:"bottom"},type:{type:String,values:["primary","success","warning","danger","info"],default:""},color:{type:String,default:""},size:{type:String,values:["normal","large"],default:"normal"},icon:{type:Kt},hollow:Boolean});var RY=se({name:"ElTimelineItem",__name:"timeline-item",props:OY,setup(e){const t=e,{props:n}=_e(DE),o=fe("timeline-item"),a=w(()=>[o.e("node"),o.em("node",t.size||""),o.em("node",t.type||""),o.is("hollow",t.hollow)]),s=w(()=>[o.b(),{[o.e("center")]:t.center},o.is(n.mode)]);return(r,l)=>(x(),B("li",{class:T(s.value)},[z("div",{class:T(i(o).e("tail"))},null,2),r.$slots.dot?te("v-if",!0):(x(),B("div",{key:0,class:T(a.value),style:Ke({backgroundColor:e.color})},[e.icon?(x(),ae(i(De),{key:0,class:T(i(o).e("icon"))},{default:J(()=>[(x(),ae(it(e.icon)))]),_:1},8,["class"])):te("v-if",!0)],6)),r.$slots.dot?(x(),B("div",{key:1,class:T(i(o).e("dot"))},[ee(r.$slots,"dot")],2)):te("v-if",!0),z("div",{class:T(i(o).e("wrapper"))},[!e.hideTimestamp&&e.placement==="top"?(x(),B("div",{key:0,class:T([i(o).e("timestamp"),i(o).is("top")])},Se(e.timestamp),3)):te("v-if",!0),z("div",{class:T(i(o).e("content"))},[ee(r.$slots,"default")],2),!e.hideTimestamp&&e.placement==="bottom"?(x(),B("div",{key:1,class:T([i(o).e("timestamp"),i(o).is("bottom")])},Se(e.timestamp),3)):te("v-if",!0)],2)],2))}}),BE=RY;const NY=rt($Y,{TimelineItem:BE}),IY=on(BE),FE="left-check-change",VE="right-check-change",qr=Ce({data:{type:G(Array),default:()=>[]},titles:{type:G(Array),default:()=>[]},buttonTexts:{type:G(Array),default:()=>[]},filterPlaceholder:String,filterMethod:{type:G(Function)},leftDefaultChecked:{type:G(Array),default:()=>[]},rightDefaultChecked:{type:G(Array),default:()=>[]},renderContent:{type:G(Function)},modelValue:{type:G(Array),default:()=>[]},format:{type:G(Object),default:()=>({})},filterable:Boolean,props:{type:G(Object),default:()=>rn({label:"label",key:"key",disabled:"disabled"})},targetOrder:{type:String,values:["original","push","unshift"],default:"original"},validateEvent:{type:Boolean,default:!0}}),Mh=(e,t)=>[e,t].every(ye)||ye(e)&&bn(t),PY={[bt]:(e,t,n)=>[e,n].every(ye)&&["left","right"].includes(t),[ot]:e=>ye(e),[FE]:Mh,[VE]:Mh},Eu=e=>{const t={label:"label",key:"key",disabled:"disabled"};return w(()=>({...t,...e.props}))},MY=(e,t)=>({onSourceCheckedChange:(a,s)=>{e.leftChecked=a,s&&t(FE,a,s)},onTargetCheckedChange:(a,s)=>{e.rightChecked=a,s&&t(VE,a,s)}}),_Y=e=>{const t=Eu(e),n=w(()=>e.data.reduce((o,a)=>(o[a[t.value.key]]=a)&&o,{}));return{sourceData:w(()=>e.data.filter(o=>!e.modelValue.includes(o[t.value.key]))),targetData:w(()=>e.targetOrder==="original"?e.data.filter(o=>e.modelValue.includes(o[t.value.key])):e.modelValue.reduce((o,a)=>{const s=n.value[a];return s&&o.push(s),o},[]))}},AY=(e,t,n)=>{const o=Eu(e),a=(l,u,c)=>{n(ot,l),n(bt,l,u,c)};return{addToLeft:()=>{const l=e.modelValue.slice();t.rightChecked.forEach(u=>{const c=l.indexOf(u);c>-1&&l.splice(c,1)}),a(l,"left",t.rightChecked)},addToRight:()=>{let l=e.modelValue.slice();const u=e.data.filter(c=>{const d=c[o.value.key];return t.leftChecked.includes(d)&&!e.modelValue.includes(d)}).map(c=>c[o.value.key]);l=e.targetOrder==="unshift"?u.concat(l):l.concat(u),e.targetOrder==="original"&&(l=e.data.filter(c=>l.includes(c[o.value.key])).map(c=>c[o.value.key])),a(l,"right",t.leftChecked)}}},_h="checked-change",LY=Ce({data:qr.data,optionRender:{type:G(Function)},placeholder:String,title:String,filterable:Boolean,format:qr.format,filterMethod:qr.filterMethod,defaultChecked:qr.leftDefaultChecked,props:qr.props}),DY={[_h]:Mh},BY=(e,t,n)=>{const o=Eu(e),a=w(()=>e.data.filter(d=>Ve(e.filterMethod)?e.filterMethod(t.query,d):String(d[o.value.label]||d[o.value.key]).toLowerCase().includes(t.query.toLowerCase()))),s=w(()=>a.value.filter(d=>!d[o.value.disabled])),r=w(()=>{const d=t.checked.length,f=e.data.length,{noChecked:v,hasChecked:g}=e.format;return v&&g?d>0?g.replace(/\${checked}/g,d.toString()).replace(/\${total}/g,f.toString()):v.replace(/\${total}/g,f.toString()):`${d}/${f}`}),l=w(()=>{const d=t.checked.length;return d>0&&d{const d=s.value.map(f=>f[o.value.key]);t.allChecked=d.length>0&&d.every(f=>t.checked.includes(f))},c=d=>{t.checked=d?s.value.map(f=>f[o.value.key]):[]};return le(()=>t.checked,(d,f)=>{u(),t.checkChangeByUser?n(_h,d,d.concat(f).filter(v=>!d.includes(v)||!f.includes(v))):(n(_h,d),t.checkChangeByUser=!0)}),le(s,()=>{u()}),le(()=>e.data,()=>{const d=[],f=a.value.map(v=>v[o.value.key]);t.checked.forEach(v=>{f.includes(v)&&d.push(v)}),t.checkChangeByUser=!1,t.checked=d}),le(()=>e.defaultChecked,(d,f)=>{if(f&&d.length===f.length&&d.every(p=>f.includes(p)))return;const v=[],g=s.value.map(p=>p[o.value.key]);d.forEach(p=>{g.includes(p)&&v.push(p)}),t.checkChangeByUser=!1,t.checked=v},{immediate:!0}),{filteredData:a,checkableData:s,checkedSummary:r,isIndeterminate:l,updateAllChecked:u,handleAllCheckedChange:c}};var FY=se({name:"ElTransferPanel",__name:"transfer-panel",props:LY,emits:DY,setup(e,{expose:t,emit:n}){const o=e,a=n,s=vn(),r=({option:S})=>S,{t:l}=Ct(),u=fe("transfer"),c=At({checked:[],allChecked:!1,query:"",checkChangeByUser:!0}),d=Eu(o),{filteredData:f,checkedSummary:v,isIndeterminate:g,handleAllCheckedChange:p}=BY(o,c,a),h=w(()=>!io(c.query)&&io(f.value)),m=w(()=>!io(s.default()[0].children)),{checked:b,allChecked:k,query:y}=Mn(c);return t({query:y}),(S,C)=>(x(),B("div",{class:T(i(u).b("panel"))},[z("p",{class:T(i(u).be("panel","header"))},[Y(i(ra),{modelValue:i(k),"onUpdate:modelValue":C[0]||(C[0]=E=>Jt(k)?k.value=E:null),indeterminate:i(g),"validate-event":!1,onChange:i(p)},{default:J(()=>[z("span",{class:T(i(u).be("panel","header-title"))},Se(e.title),3),z("span",{class:T(i(u).be("panel","header-count"))},Se(i(v)),3)]),_:1},8,["modelValue","indeterminate","onChange"])],2),z("div",{class:T([i(u).be("panel","body"),i(u).is("with-footer",m.value)])},[e.filterable?(x(),ae(i(eo),{key:0,modelValue:i(y),"onUpdate:modelValue":C[1]||(C[1]=E=>Jt(y)?y.value=E:null),class:T(i(u).be("panel","filter")),size:"default",placeholder:e.placeholder,"prefix-icon":i(L3),clearable:"","validate-event":!1},null,8,["modelValue","class","placeholder","prefix-icon"])):te("v-if",!0),ut(Y(i(ym),{modelValue:i(b),"onUpdate:modelValue":C[2]||(C[2]=E=>Jt(b)?b.value=E:null),"validate-event":!1,class:T([i(u).is("filterable",e.filterable),i(u).be("panel","list")])},{default:J(()=>[(x(!0),B(Fe,null,yt(i(f),E=>(x(),ae(i(ra),{key:E[i(d).key],class:T(i(u).be("panel","item")),value:E[i(d).key],disabled:E[i(d).disabled],"validate-event":!1},{default:J(()=>[Y(r,{option:e.optionRender?.(E)},null,8,["option"])]),_:2},1032,["class","value","disabled"]))),128))]),_:1},8,["modelValue","class"]),[[Pt,!h.value&&!i(io)(e.data)]]),ut(z("div",{class:T(i(u).be("panel","empty"))},[ee(S.$slots,"empty",{},()=>[wt(Se(h.value?i(l)("el.transfer.noMatch"):i(l)("el.transfer.noData")),1)])],2),[[Pt,h.value||i(io)(e.data)]])],2),m.value?(x(),B("p",{key:0,class:T(i(u).be("panel","footer"))},[ee(S.$slots,"default")],2)):te("v-if",!0)],2))}}),W0=FY;const VY={key:0},zY={key:0};var HY=se({name:"ElTransfer",__name:"transfer",props:qr,emits:PY,setup(e,{expose:t,emit:n}){const o=e,a=n,s=vn(),{t:r}=Ct(),l=fe("transfer"),{formItem:u}=Dn(),c=At({leftChecked:[],rightChecked:[]}),d=Eu(o),{sourceData:f,targetData:v}=_Y(o),{onSourceCheckedChange:g,onTargetCheckedChange:p}=MY(c,a),{addToLeft:h,addToRight:m}=AY(o,c,a),b=M(),k=M(),y=N=>{switch(N){case"left":b.value.query="";break;case"right":k.value.query="";break}},S=w(()=>o.buttonTexts.length===2),C=w(()=>o.titles[0]||r("el.transfer.titles.0")),E=w(()=>o.titles[1]||r("el.transfer.titles.1")),$=w(()=>o.filterPlaceholder||r("el.transfer.filterPlaceholder"));le(()=>o.modelValue,()=>{o.validateEvent&&u?.validate?.("change").catch(N=>pt(N))});const O=w(()=>N=>{if(o.renderContent)return o.renderContent(Ye,N);const R=(s.default?.({option:N})||[]).filter(A=>A.type!==gn);return R.length?R:Ye("span",N[d.value.label]||N[d.value.key])});return t({clearQuery:y,leftPanel:b,rightPanel:k}),(N,R)=>(x(),B("div",{class:T(i(l).b())},[Y(W0,{ref_key:"leftPanel",ref:b,data:i(f),"option-render":O.value,placeholder:$.value,title:C.value,filterable:e.filterable,format:e.format,"filter-method":e.filterMethod,"default-checked":e.leftDefaultChecked,props:o.props,onCheckedChange:i(g)},{empty:J(()=>[ee(N.$slots,"left-empty")]),default:J(()=>[ee(N.$slots,"left-footer")]),_:3},8,["data","option-render","placeholder","title","filterable","format","filter-method","default-checked","props","onCheckedChange"]),z("div",{class:T(i(l).e("buttons"))},[Y(i(In),{type:"primary",class:T([i(l).e("button"),i(l).is("with-texts",S.value)]),disabled:i(io)(c.rightChecked),onClick:i(h)},{default:J(()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1}),i(Tt)(e.buttonTexts[0])?te("v-if",!0):(x(),B("span",VY,Se(e.buttonTexts[0]),1))]),_:1},8,["class","disabled","onClick"]),Y(i(In),{type:"primary",class:T([i(l).e("button"),i(l).is("with-texts",S.value)]),disabled:i(io)(c.leftChecked),onClick:i(m)},{default:J(()=>[i(Tt)(e.buttonTexts[1])?te("v-if",!0):(x(),B("span",zY,Se(e.buttonTexts[1]),1)),Y(i(De),null,{default:J(()=>[Y(i(no))]),_:1})]),_:1},8,["class","disabled","onClick"])],2),Y(W0,{ref_key:"rightPanel",ref:k,data:i(v),"option-render":O.value,placeholder:$.value,filterable:e.filterable,format:e.format,"filter-method":e.filterMethod,title:E.value,"default-checked":e.rightDefaultChecked,props:o.props,onCheckedChange:i(p)},{empty:J(()=>[ee(N.$slots,"right-empty")]),default:J(()=>[ee(N.$slots,"right-footer")]),_:3},8,["data","option-render","placeholder","filterable","format","filter-method","title","default-checked","props","onCheckedChange"])],2))}}),KY=HY;const WY=rt(KY),Gm="RootTree",zE="NodeInstance",j0="TreeNodeMap",HE=Ce({data:{type:G(Array),default:()=>[]},emptyText:{type:String},renderAfterExpand:{type:Boolean,default:!0},nodeKey:String,checkStrictly:Boolean,defaultExpandAll:Boolean,expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},checkDescendants:Boolean,autoExpandParent:{type:Boolean,default:!0},defaultCheckedKeys:{type:Array},defaultExpandedKeys:{type:Array},currentNodeKey:{type:[String,Number]},renderContent:{type:G(Function)},showCheckbox:Boolean,draggable:Boolean,allowDrag:{type:G(Function)},allowDrop:{type:G(Function)},props:{type:Object,default:()=>({children:"children",label:"label",disabled:"disabled"})},lazy:Boolean,highlightCurrent:Boolean,load:{type:Function},filterNodeMethod:{type:Function},accordion:Boolean,indent:{type:Number,default:18},icon:{type:Kt}}),jY={"check-change":(e,t,n)=>e&&Ht(t)&&Ht(n),"current-change":(e,t)=>!0,"node-click":(e,t,n,o)=>e&&t&&o instanceof Event,"node-contextmenu":(e,t,n,o)=>e instanceof Event&&t&&n,"node-collapse":(e,t,n)=>e&&t,"node-expand":(e,t,n)=>e&&t,check:(e,t)=>e&&t,"node-drag-start":(e,t)=>e&&t,"node-drag-end":(e,t,n,o)=>e&&o,"node-drop":(e,t,n,o)=>e&&t&&o,"node-drag-leave":(e,t,n)=>e&&t&&n,"node-drag-enter":(e,t,n)=>e&&t&&n,"node-drag-over":(e,t,n)=>e&&t&&n},sl="$treeNodeId",U0=function(e,t){!t||t[sl]||Object.defineProperty(t,sl,{value:e.id,enumerable:!1,configurable:!1,writable:!1})},Xm=(e,t)=>t?.[e||sl],Ah=(e,t,n)=>{const o=e.value.currentNode;n();const a=e.value.currentNode;o!==a&&t("current-change",a?a.data:null,a)},KE=e=>{let t=!0,n=!0,o=!0,a=!0;for(let s=0,r=e.length;s{n.canFocus=t,Lh(n.childNodes,t)})};let UY=0;var Dh=class Mc{constructor(t){this.isLeafByUser=void 0,this.isLeaf=void 0,this.isEffectivelyChecked=!1,this.id=UY++,this.text=null,this.checked=!1,this.indeterminate=!1,this.data=null,this.expanded=!1,this.parent=null,this.visible=!0,this.isCurrent=!1,this.canFocus=!1;for(const n in t)Nt(t,n)&&(this[n]=t[n]);this.level=0,this.loaded=!1,this.childNodes=[],this.loading=!1,this.parent&&(this.level=this.parent.level+1)}initialize(){const t=this.store;if(!t)throw new Error("[Node]store is required!");t.registerNode(this);const n=t.props;if(n&&typeof n.isLeaf<"u"){const s=tc(this,"isLeaf");Ht(s)&&(this.isLeafByUser=s)}if(t.lazy!==!0&&this.data?(this.setData(this.data),t.defaultExpandAll&&(this.expanded=!0,this.canFocus=!0)):this.level>0&&t.lazy&&t.defaultExpandAll&&!this.isLeafByUser&&this.expand(),ye(this.data)||U0(this,this.data),!this.data)return;const o=t.defaultExpandedKeys,a=t.key;a&&!bn(this.key)&&o&&o.includes(this.key)&&this.expand(null,t.autoExpandParent),a&&t.currentNodeKey!==void 0&&this.key===t.currentNodeKey&&(t.currentNode&&(t.currentNode.isCurrent=!1),t.currentNode=this,t.currentNode.isCurrent=!0),t.lazy&&t._initDefaultCheckedNode(this),this.updateLeafState(),(this.level===1||this.parent?.expanded===!0)&&(this.canFocus=!0)}setData(t){ye(t)||U0(this,t),this.data=t,this.childNodes=[];let n;this.level===0&&ye(this.data)?n=this.data:n=tc(this,"children")||[];for(let o=0,a=n.length;o-1)return t.childNodes[n+1]}return null}get previousSibling(){const t=this.parent;if(t){const n=t.childNodes.indexOf(this);if(n>-1)return n>0?t.childNodes[n-1]:null}return null}contains(t,n=!0){return(this.childNodes||[]).some(o=>o===t||n&&o.contains(t))}remove(){const t=this.parent;t&&t.removeChild(this)}insertChild(t,n,o){if(!t)throw new Error("InsertChild error: child is required.");if(!(t instanceof Mc)){if(!o){const a=this.getChildren(!0);a?.includes(t.data)||(Tt(n)||n<0?a?.push(t.data):a?.splice(n,0,t.data))}Object.assign(t,{parent:this,store:this.store}),t=At(new Mc(t)),t instanceof Mc&&t.initialize()}t.level=this.level+1,Tt(n)||n<0?this.childNodes.push(t):this.childNodes.splice(n,0,t),this.updateLeafState()}insertBefore(t,n){let o;n&&(o=this.childNodes.indexOf(n)),this.insertChild(t,o)}insertAfter(t,n){let o;n&&(o=this.childNodes.indexOf(n),o!==-1&&(o+=1)),this.insertChild(t,o)}removeChild(t){const n=this.getChildren()||[],o=n.indexOf(t.data);o>-1&&n.splice(o,1);const a=this.childNodes.indexOf(t);a>-1&&(this.store&&this.store.deregisterNode(t),t.parent=null,this.childNodes.splice(a,1)),this.updateLeafState()}removeChildByData(t){const n=this.childNodes.find(o=>o.data===t);n&&this.removeChild(n)}expand(t,n){const o=()=>{if(n){let a=this.parent;for(;a&&a.level>0;)a.expanded=!0,a=a.parent}this.expanded=!0,t&&t(),Lh(this.childNodes,!0)};this.shouldLoadData()?this.loadData(a=>{ye(a)&&(this.checked?this.setChecked(!0,!0):this.store.checkStrictly||Zl(this),o())}):o()}doCreateChildren(t,n={}){t.forEach(o=>{this.insertChild(Object.assign({data:o},n),void 0,!0)})}collapse(){this.expanded=!1,Lh(this.childNodes,!1)}shouldLoadData(){return!!(this.store.lazy===!0&&this.store.load&&!this.loaded)}updateLeafState(){if(this.store.lazy===!0&&this.loaded!==!0&&typeof this.isLeafByUser<"u"){this.isLeaf=this.isLeafByUser,this.isEffectivelyChecked=this.isLeaf&&this.disabled;return}const t=this.childNodes;if(!this.store.lazy||this.store.lazy===!0&&this.loaded===!0){this.isLeaf=!t||t.length===0,this.isEffectivelyChecked=this.isLeaf&&this.disabled;return}this.isLeaf=!1}setChecked(t,n,o,a){if(this.indeterminate=t==="half",this.checked=t===!0,this.isEffectivelyChecked=!this.childNodes.length&&(this.disabled||this.checked),this.store.checkStrictly)return;if(!(this.shouldLoadData()&&!this.store.checkDescendants)){const r=()=>{if(n){const l=this.childNodes;for(let f=0,v=l.length;f{r(),Zl(this)},{checked:t!==!1});return}else r()}const s=this.parent;!s||s.level===0||o||Zl(s)}getChildren(t=!1){if(this.level===0)return this.data;const n=this.data;if(!n)return null;const o=this.store.props;let a="children";return o&&(a=o.children||"children"),Tt(n[a])&&(n[a]=null),t&&!n[a]&&(n[a]=[]),n[a]}updateChildren(){const t=this.getChildren()||[],n=this.childNodes.map(s=>s.data),o={},a=[];t.forEach((s,r)=>{const l=s[sl];l&&n.some(u=>u?.[sl]===l)?o[l]={index:r,data:s}:a.push({index:r,data:s})}),this.store.lazy||n.forEach(s=>{o[s?.[sl]]||this.removeChildByData(s)}),a.forEach(({index:s,data:r})=>{this.insertChild({data:r},s)}),this.updateLeafState()}loadData(t,n={}){if(this.store.lazy===!0&&this.store.load&&!this.loaded&&(!this.loading||Object.keys(n).length)){this.loading=!0;const o=s=>{this.childNodes=[],this.doCreateChildren(s,n),this.loaded=!0,this.loading=!1,this.updateLeafState(),t&&t.call(this,s)},a=()=>{this.loading=!1};this.store.load(this,o,a)}else t&&t.call(this)}eachNode(t){const n=[this];for(;n.length;){const o=n.shift();n.unshift(...o.childNodes),t(o)}}reInitChecked(){this.store.checkStrictly||Zl(this)}},qY=class{constructor(e){this.lazy=!1,this.checkStrictly=!1,this.autoExpandParent=!1,this.defaultExpandAll=!1,this.checkDescendants=!1,this.currentNode=null,this.currentNodeKey=null;for(const t in e)Nt(e,t)&&(this[t]=e[t]);this.nodesMap={}}initialize(){if(this.root=new Dh({data:this.data,store:this}),this.root.initialize(),this.lazy&&this.load){const e=this.load;e(this.root,t=>{this.root.doCreateChildren(t),this._initDefaultCheckedNodes()},Dt)}else this._initDefaultCheckedNodes()}filter(e){const t=this.filterNodeMethod,n=this.lazy,o=async function(a){const s=a.root?a.root.childNodes:a.childNodes;for(const[r,l]of s.entries())l.visible=!!t?.call(l,e,l.data,l),r%80===0&&r>0&&await Re(),await o(l);if(!a.visible&&s.length){let r=!0;r=!s.some(l=>l.visible),a.root?a.root.visible=r===!1:a.visible=r===!1}e&&a.visible&&!a.isLeaf&&(!n||a.loaded)&&a.expand()};o(this)}setData(e){e!==this.root.data?(this.nodesMap={},this.root.setData(e),this._initDefaultCheckedNodes(),this.setCurrentNodeKey(this.currentNodeKey)):this.root.updateChildren()}getNode(e){if(e instanceof Dh)return e;const t=at(e)?Xm(this.key,e):e;return this.nodesMap[t]||null}insertBefore(e,t){const n=this.getNode(t);n.parent?.insertBefore({data:e},n)}insertAfter(e,t){const n=this.getNode(t);n.parent?.insertAfter({data:e},n)}remove(e){const t=this.getNode(e);t&&t.parent&&(t===this.currentNode&&(this.currentNode=null),t.parent.removeChild(t))}append(e,t){const n=mo(t)?this.root:this.getNode(t);n&&n.insertChild({data:e})}_initDefaultCheckedNodes(){const e=this.defaultCheckedKeys||[],t=this.nodesMap;e.forEach(n=>{const o=t[n];o&&o.setChecked(!0,!this.checkStrictly)})}_initDefaultCheckedNode(e){const t=this.defaultCheckedKeys||[];!bn(e.key)&&t.includes(e.key)&&e.setChecked(!0,!this.checkStrictly)}setDefaultCheckedKey(e){e!==this.defaultCheckedKeys&&(this.defaultCheckedKeys=e,this._initDefaultCheckedNodes())}registerNode(e){const t=this.key;if(!(!e||!e.data))if(!t)this.nodesMap[e.id]=e;else{const n=e.key;bn(n)||(this.nodesMap[n]=e)}}deregisterNode(e){!this.key||!e||!e.data||(e.childNodes.forEach(t=>{this.deregisterNode(t)}),delete this.nodesMap[e.key])}getCheckedNodes(e=!1,t=!1){const n=[],o=function(a){(a.root?a.root.childNodes:a.childNodes).forEach(s=>{(s.checked||t&&s.indeterminate)&&(!e||e&&s.isLeaf)&&n.push(s.data),o(s)})};return o(this),n}getCheckedKeys(e=!1){return this.getCheckedNodes(e).map(t=>(t||{})[this.key])}getHalfCheckedNodes(){const e=[],t=function(n){(n.root?n.root.childNodes:n.childNodes).forEach(o=>{o.indeterminate&&e.push(o.data),t(o)})};return t(this),e}getHalfCheckedKeys(){return this.getHalfCheckedNodes().map(e=>(e||{})[this.key])}_getAllNodes(){const e=[],t=this.nodesMap;for(const n in t)Nt(t,n)&&e.push(t[n]);return e}updateChildren(e,t){const n=this.nodesMap[e];if(!n)return;const o=n.childNodes;for(let a=o.length-1;a>=0;a--){const s=o[a];this.remove(s.data)}for(let a=0,s=t.length;al.level-u.level),a=Object.create(null),s=Object.keys(n);o.forEach(l=>l.setChecked(!1,!1));const r=l=>{l.childNodes.forEach(u=>{a[u.data[e]]=!0,u.childNodes?.length&&r(u)})};for(let l=0,u=o.length;l{g.isLeaf||g.setChecked(!1,!1,!0),f(g)}),v.reInitChecked()};f(c)}}}setCheckedNodes(e,t=!1){const n=this.key,o={};e.forEach(a=>{o[(a||{})[n]]=!0}),this._setCheckedKeys(n,t,o)}setCheckedKeys(e,t=!1){this.defaultCheckedKeys=e;const n=this.key,o={};e.forEach(a=>{o[a]=!0}),this._setCheckedKeys(n,t,o)}setDefaultExpandedKeys(e){e=e||[],this.defaultExpandedKeys=e,e.forEach(t=>{const n=this.getNode(t);n&&n.expand(null,this.autoExpandParent)})}setChecked(e,t,n){const o=this.getNode(e);o&&o.setChecked(!!t,n)}getCurrentNode(){return this.currentNode}setCurrentNode(e){const t=this.currentNode;t&&(t.isCurrent=!1),this.currentNode=e,this.currentNode.isCurrent=!0}setUserCurrentNode(e,t=!0){const n=e[this.key],o=this.nodesMap[n];this.setCurrentNode(o),t&&this.currentNode&&this.currentNode.level>1&&this.currentNode.parent?.expand(null,!0)}setCurrentNodeKey(e,t=!0){if(this.currentNodeKey=e,mo(e)){this.currentNode&&(this.currentNode.isCurrent=!1),this.currentNode=null;return}const n=this.getNode(e);n&&(this.setCurrentNode(n),t&&this.currentNode&&this.currentNode.level>1&&this.currentNode.parent?.expand(null,!0))}};function WE(e){const t=_e(j0,null);let n={treeNodeExpand:o=>{e.node!==o&&e.node?.collapse()},children:new Set};return t&&t.children.add(n),Bt(()=>{t&&t.children.delete(n),n=null}),St(j0,n),{broadcastExpanded:o=>{if(e.accordion)for(const a of n.children)a.treeNodeExpand(o)}}}const jE=Symbol("dragEvents");function YY({props:e,ctx:t,el$:n,dropIndicator$:o,store:a}){const s=fe("tree"),r=M({showDropIndicator:!1,draggingNode:null,dropNode:null,allowDrop:!0,dropType:null});return St(jE,{treeNodeDragStart:({event:d,treeNode:f})=>{if(d.dataTransfer){if(Ve(e.allowDrag)&&!e.allowDrag(f.node))return d.preventDefault(),!1;d.dataTransfer.effectAllowed="move";try{d.dataTransfer.setData("text/plain","")}catch{}r.value.draggingNode=f,t.emit("node-drag-start",f.node,d)}},treeNodeDragOver:({event:d,treeNode:f})=>{if(!d.dataTransfer)return;const v=f,g=r.value.dropNode;g&&g.node.id!==v.node.id&&to(g.$el,s.is("drop-inner"));const p=r.value.draggingNode;if(!p||!v)return;let h=!0,m=!0,b=!0,k=!0;Ve(e.allowDrop)&&(h=e.allowDrop(p.node,v.node,"prev"),k=m=e.allowDrop(p.node,v.node,"inner"),b=e.allowDrop(p.node,v.node,"next")),d.dataTransfer.dropEffect=m||h||b?"move":"none",(h||m||b)&&g?.node.id!==v.node.id&&(g&&t.emit("node-drag-leave",p.node,g.node,d),t.emit("node-drag-enter",p.node,v.node,d)),h||m||b?r.value.dropNode=v:r.value.dropNode=null,v.node.nextSibling===p.node&&(b=!1),v.node.previousSibling===p.node&&(h=!1),v.node.contains(p.node,!1)&&(m=!1),(p.node===v.node||p.node.contains(v.node))&&(h=!1,m=!1,b=!1);const y=v.$el,S=y.querySelector(`.${s.be("node","content")}`).getBoundingClientRect(),C=n.value.getBoundingClientRect(),E=n.value.scrollTop;let $;const O=h?m?.25:b?.45:1:Number.NEGATIVE_INFINITY,N=b?m?.75:h?.55:0:Number.POSITIVE_INFINITY;let R=-9999;const A=d.clientY-S.top;AS.height*N?$="after":m?$="inner":$="none";const _=y.querySelector(`.${s.be("node","expand-icon")}`).getBoundingClientRect(),V=o.value;$==="before"?R=_.top-C.top+E:$==="after"&&(R=_.bottom-C.top+E),V.style.top=`${R}px`,V.style.left=`${_.right-C.left}px`,$==="inner"?Do(y,s.is("drop-inner")):to(y,s.is("drop-inner")),r.value.showDropIndicator=$==="before"||$==="after",r.value.allowDrop=r.value.showDropIndicator||k,r.value.dropType=$,t.emit("node-drag-over",p.node,v.node,d)},treeNodeDragEnd:d=>{const{draggingNode:f,dropType:v,dropNode:g}=r.value;if(d.preventDefault(),d.dataTransfer&&(d.dataTransfer.dropEffect="move"),f?.node.data&&g){const p={data:f.node.data};v!=="none"&&f.node.remove(),v==="before"?g.node.parent?.insertBefore(p,g.node):v==="after"?g.node.parent?.insertAfter(p,g.node):v==="inner"&&g.node.insertChild(p),v!=="none"&&(a.value.registerNode(p),a.value.key&&f.node.eachNode(h=>{a.value.nodesMap[h.data[a.value.key]]?.setChecked(h.checked,!a.value.checkStrictly)})),to(g.$el,s.is("drop-inner")),t.emit("node-drag-end",f.node,g.node,v,d),v!=="none"&&t.emit("node-drop",f.node,g.node,v,d)}f&&!g&&t.emit("node-drag-end",f.node,null,v,d),r.value.showDropIndicator=!1,r.value.draggingNode=null,r.value.dropNode=null,r.value.allowDrop=!0}}),{dragState:r}}var GY=se({name:"ElTreeNodeContent",props:{node:{type:Object,required:!0},renderContent:Function},setup(e){const t=fe("tree"),n=_e(zE),o=_e(Gm);return()=>{const a=e.node,{data:s,store:r}=a;return e.renderContent?e.renderContent(Ye,{_self:n,node:a,data:s,store:r}):ee(o.ctx.slots,"default",{node:a,data:s},()=>[Ye(Ym,{tag:"span",truncated:!0,class:t.be("node","label")},()=>[a.label])])}}}),XY=GY,JY=se({name:"ElTreeNode",components:{ElCollapseTransition:uf,ElCheckbox:ra,NodeContent:XY,ElIcon:De,Loading:Aa},props:{node:{type:Dh,default:()=>({})},props:{type:Object,default:()=>({})},accordion:Boolean,renderContent:Function,renderAfterExpand:Boolean,showCheckbox:Boolean},emits:["node-expand"],setup(e,t){const n=fe("tree"),{broadcastExpanded:o}=WE(e),a=_e(Gm),s=M(!1),r=M(!1),l=M(),u=M(),c=M(),d=_e(jE),f=ft();St(zE,f),a||pt("Tree","Can not find node's tree."),e.node.expanded&&(s.value=!0,r.value=!0);const v=a.props.props.children||"children";le(()=>{const N=e.node.data?.[v];return N&&[...N]},()=>{e.node.updateChildren()}),le(()=>e.node.indeterminate,N=>{h(e.node.checked,N)}),le(()=>e.node.checked,N=>{h(N,e.node.indeterminate)}),le(()=>e.node.childNodes.length,()=>e.node.reInitChecked()),le(()=>e.node.expanded,N=>{Re(()=>s.value=N),N&&(r.value=!0)});const g=N=>a.props.nodeKey?Xm(a.props.nodeKey,N.data):N.id,p=N=>{const R=e.props.class;if(!R)return{};let A;if(Ve(R)){const{data:_}=N;A=R(_,N)}else A=R;return Le(A)?{[A]:!0}:A},h=(N,R)=>{(l.value!==N||u.value!==R)&&a.ctx.emit("check-change",e.node.data,N,R),l.value=N,u.value=R},m=N=>{Ah(a.store,a.ctx.emit,()=>{if(a?.props?.nodeKey){const R=g(e.node);a.store.value.setCurrentNodeKey(R)}else a.store.value.setCurrentNode(e.node)}),a.currentNode.value=e.node,a.props.expandOnClickNode&&k(),(a.props.checkOnClickNode||e.node.isLeaf&&a.props.checkOnClickLeaf&&e.showCheckbox)&&!e.node.disabled&&y(!e.node.checked),a.ctx.emit("node-click",e.node.data,e.node,f,N)},b=N=>{a.instance.vnode.props?.onNodeContextmenu&&(N.stopPropagation(),N.preventDefault()),a.ctx.emit("node-contextmenu",N,e.node.data,e.node,f)},k=()=>{e.node.isLeaf||(s.value?(a.ctx.emit("node-collapse",e.node.data,e.node,f),e.node.collapse()):e.node.expand(()=>{t.emit("node-expand",e.node.data,e.node,f)}))},y=N=>{const R=a?.props.checkStrictly,A=e.node.childNodes;!R&&A.length&&(N=A.some(_=>!_.isEffectivelyChecked)),e.node.setChecked(N,!R),Re(()=>{const _=a.store.value;a.ctx.emit("check",e.node.data,{checkedNodes:_.getCheckedNodes(),checkedKeys:_.getCheckedKeys(),halfCheckedNodes:_.getHalfCheckedNodes(),halfCheckedKeys:_.getHalfCheckedKeys()})})};return{ns:n,node$:c,tree:a,expanded:s,childNodeRendered:r,oldChecked:l,oldIndeterminate:u,getNodeKey:g,getNodeClass:p,handleSelectChange:h,handleClick:m,handleContextMenu:b,handleExpandIconClick:k,handleCheckChange:y,handleChildNodeExpand:(N,R,A)=>{o(R),a.ctx.emit("node-expand",N,R,A)},handleDragStart:N=>{a.props.draggable&&d.treeNodeDragStart({event:N,treeNode:e})},handleDragOver:N=>{N.preventDefault(),a.props.draggable&&d.treeNodeDragOver({event:N,treeNode:{$el:c.value,node:e.node}})},handleDrop:N=>{N.preventDefault()},handleDragEnd:N=>{a.props.draggable&&d.treeNodeDragEnd(N)},CaretRight:FC}}});const ZY=["aria-expanded","aria-disabled","aria-checked","draggable","data-key"],QY=["aria-expanded"];function eG(e,t,n,o,a,s){const r=It("el-icon"),l=It("el-checkbox"),u=It("loading"),c=It("node-content"),d=It("el-tree-node"),f=It("el-collapse-transition");return ut((x(),B("div",{ref:"node$",class:T([e.ns.b("node"),e.ns.is("expanded",e.expanded),e.ns.is("current",e.node.isCurrent),e.ns.is("hidden",!e.node.visible),e.ns.is("focusable",!e.node.disabled),e.ns.is("checked",!e.node.disabled&&e.node.checked),e.getNodeClass(e.node)]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.node.disabled,"aria-checked":e.node.checked,draggable:e.tree.props.draggable,"data-key":e.getNodeKey(e.node),onClick:t[2]||(t[2]=Xe((...v)=>e.handleClick&&e.handleClick(...v),["stop"])),onContextmenu:t[3]||(t[3]=(...v)=>e.handleContextMenu&&e.handleContextMenu(...v)),onDragstart:t[4]||(t[4]=Xe((...v)=>e.handleDragStart&&e.handleDragStart(...v),["stop"])),onDragover:t[5]||(t[5]=Xe((...v)=>e.handleDragOver&&e.handleDragOver(...v),["stop"])),onDragend:t[6]||(t[6]=Xe((...v)=>e.handleDragEnd&&e.handleDragEnd(...v),["stop"])),onDrop:t[7]||(t[7]=Xe((...v)=>e.handleDrop&&e.handleDrop(...v),["stop"]))},[z("div",{class:T(e.ns.be("node","content")),style:Ke({paddingLeft:(e.node.level-1)*e.tree.props.indent+"px"})},[e.tree.props.icon||e.CaretRight?(x(),ae(r,{key:0,class:T([e.ns.be("node","expand-icon"),e.ns.is("leaf",e.node.isLeaf),{expanded:!e.node.isLeaf&&e.expanded}]),onClick:Xe(e.handleExpandIconClick,["stop"])},{default:J(()=>[(x(),ae(it(e.tree.props.icon||e.CaretRight)))]),_:1},8,["class","onClick"])):te("v-if",!0),e.showCheckbox?(x(),ae(l,{key:1,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:!!e.node.disabled,onClick:t[0]||(t[0]=Xe(()=>{},["stop"])),onChange:e.handleCheckChange},null,8,["model-value","indeterminate","disabled","onChange"])):te("v-if",!0),e.node.loading?(x(),ae(r,{key:2,class:T([e.ns.be("node","loading-icon"),e.ns.is("loading")])},{default:J(()=>[Y(u)]),_:1},8,["class"])):te("v-if",!0),Y(c,{node:e.node,"render-content":e.renderContent},null,8,["node","render-content"])],6),Y(f,null,{default:J(()=>[!e.renderAfterExpand||e.childNodeRendered?ut((x(),B("div",{key:0,class:T(e.ns.be("node","children")),role:"group","aria-expanded":e.expanded,onClick:t[1]||(t[1]=Xe(()=>{},["stop"]))},[(x(!0),B(Fe,null,yt(e.node.childNodes,v=>(x(),ae(d,{key:e.getNodeKey(v),"render-content":e.renderContent,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,node:v,accordion:e.accordion,props:e.props,onNodeExpand:e.handleChildNodeExpand},null,8,["render-content","render-after-expand","show-checkbox","node","accordion","props","onNodeExpand"]))),128))],10,QY)),[[Pt,e.expanded]]):te("v-if",!0)]),_:1})],42,ZY)),[[Pt,e.node.visible]])}var tG=$n(JY,[["render",eG]]);function nG({el$:e},t){const n=fe("tree");ht(()=>{s()}),la(()=>{e.value?.querySelectorAll("input[type=checkbox]").forEach(r=>{r.setAttribute("tabindex","-1")})});function o(r,l){const u=t.value.getNode(r[l].dataset.key);return u.canFocus&&u.visible&&(u.parent?.expanded||u.parent?.level===0)}Ft(e,"keydown",r=>{const l=r.target;if(!l.className.includes(n.b("node")))return;const u=jt(r),c=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`)),d=c.indexOf(l);let f;if([we.up,we.down].includes(u)){if(r.preventDefault(),u===we.up){f=d===-1?0:d!==0?d-1:c.length-1;const g=f;for(;!o(c,f);){if(f--,f===g){f=-1;break}f<0&&(f=c.length-1)}}else{f=d===-1?0:d=c.length&&(f=0)}}f!==-1&&c[f].focus()}[we.left,we.right].includes(u)&&(r.preventDefault(),l.click());const v=l.querySelector('[type="checkbox"]');[we.enter,we.numpadEnter,we.space].includes(u)&&v&&(r.preventDefault(),v.click())});const s=()=>{if(!e.value)return;const r=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`));Array.from(e.value.querySelectorAll("input[type=checkbox]")).forEach(u=>{u.setAttribute("tabindex","-1")});const l=e.value.querySelectorAll(`.${n.is("checked")}[role=treeitem]`);if(l.length){l[0].setAttribute("tabindex","0");return}r[0]?.setAttribute("tabindex","0")}}var oG=se({name:"ElTree",components:{ElTreeNode:tG},props:HE,emits:jY,setup(e,t){const{t:n}=Ct(),o=fe("tree"),a=M(new qY({key:e.nodeKey,data:e.data,lazy:e.lazy,props:e.props,load:e.load,currentNodeKey:e.currentNodeKey,checkStrictly:e.checkStrictly,checkDescendants:e.checkDescendants,defaultCheckedKeys:e.defaultCheckedKeys,defaultExpandedKeys:e.defaultExpandedKeys,autoExpandParent:e.autoExpandParent,defaultExpandAll:e.defaultExpandAll,filterNodeMethod:e.filterNodeMethod}));a.value.initialize();const s=M(a.value.root),r=M(null),l=M(null),u=M(null),{broadcastExpanded:c}=WE(e),{dragState:d}=YY({props:e,ctx:t,el$:l,dropIndicator$:u,store:a});nG({el$:l},a);const f=ft(),v=w(()=>{let D=f?.parent;for(;D;){if(D.type.name==="ElTreeSelect")return!0;D=D.parent}return!1}),g=w(()=>{const{childNodes:D}=s.value;return(!D||D.length===0||D.every(({visible:F})=>!F))&&!v.value});le(()=>e.currentNodeKey,D=>{a.value.setCurrentNodeKey(D??null)}),le(()=>e.defaultCheckedKeys,(D,F)=>{sn(D,F)||a.value.setDefaultCheckedKey(D??[])}),le(()=>e.defaultExpandedKeys,D=>{a.value.setDefaultExpandedKeys(D??[])}),le(()=>e.data,D=>{a.value.setData(D)},{deep:!0}),le(()=>e.checkStrictly,D=>{a.value.checkStrictly=D});const p=D=>{if(!e.filterNodeMethod)throw new Error("[Tree] filterNodeMethod is required when filter");a.value.filter(D)},h=D=>e.nodeKey?Xm(e.nodeKey,D.data):D.id,m=D=>{if(!e.nodeKey)throw new Error(`[Tree] nodeKey is required in ${D}`)},b=D=>{m("getNodePath");const F=a.value.getNode(D);if(!F)return[];const q=[F.data];let j=F.parent;for(;j&&j!==s.value;)q.push(j.data),j=j.parent;return q.reverse()},k=(D,F)=>a.value.getCheckedNodes(D,F),y=D=>a.value.getCheckedKeys(D),S=()=>{const D=a.value.getCurrentNode();return D?D.data:null},C=()=>{m("getCurrentKey");const D=S();return D?D[e.nodeKey]:null},E=(D,F)=>{m("setCheckedNodes"),a.value.setCheckedNodes(D,F)},$=(D,F)=>{m("setCheckedKeys"),a.value.setCheckedKeys(D,F)},O=(D,F,q)=>{a.value.setChecked(D,F,q)},N=()=>a.value.getHalfCheckedNodes(),R=()=>a.value.getHalfCheckedKeys(),A=(D,F=!0)=>{m("setCurrentNode"),Ah(a,t.emit,()=>{c(D),a.value.setUserCurrentNode(D,F)})},_=(D=null,F=!0)=>{m("setCurrentKey"),Ah(a,t.emit,()=>{c(),a.value.setCurrentNodeKey(D,F)})},V=D=>a.value.getNode(D),H=D=>{a.value.remove(D)},U=(D,F)=>{a.value.append(D,F)},W=(D,F)=>{a.value.insertBefore(D,F)},P=(D,F)=>{a.value.insertAfter(D,F)},I=(D,F,q)=>{c(F),t.emit("node-expand",D,F,q)},L=(D,F)=>{m("updateKeyChildren"),a.value.updateChildren(D,F)};return St(Gm,{ctx:t,props:e,store:a,root:s,currentNode:r,instance:f}),St(La,void 0),{ns:o,store:a,root:s,currentNode:r,dragState:d,el$:l,dropIndicator$:u,isEmpty:g,filter:p,getNodeKey:h,getNodePath:b,getCheckedNodes:k,getCheckedKeys:y,getCurrentNode:S,getCurrentKey:C,setCheckedNodes:E,setCheckedKeys:$,setChecked:O,getHalfCheckedNodes:N,getHalfCheckedKeys:R,setCurrentNode:A,setCurrentKey:_,t:n,getNode:V,remove:H,append:U,insertBefore:W,insertAfter:P,handleNodeExpand:I,updateKeyChildren:L}}});function aG(e,t,n,o,a,s){const r=It("el-tree-node");return x(),B("div",{ref:"el$",class:T([e.ns.b(),e.ns.is("dragging",!!e.dragState.draggingNode),e.ns.is("drop-not-allow",!e.dragState.allowDrop),e.ns.is("drop-inner",e.dragState.dropType==="inner"),{[e.ns.m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[(x(!0),B(Fe,null,yt(e.root.childNodes,l=>(x(),ae(r,{key:e.getNodeKey(l),node:l,props:e.props,accordion:e.accordion,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,"render-content":e.renderContent,onNodeExpand:e.handleNodeExpand},null,8,["node","props","accordion","render-after-expand","show-checkbox","render-content","onNodeExpand"]))),128)),e.isEmpty?(x(),B("div",{key:0,class:T(e.ns.e("empty-block"))},[ee(e.$slots,"empty",{},()=>[z("span",{class:T(e.ns.e("empty-text"))},Se(e.emptyText??e.t("el.tree.emptyText")),3)])],2)):te("v-if",!0),ut(z("div",{ref:"dropIndicator$",class:T(e.ns.e("drop-indicator"))},null,2),[[Pt,e.dragState.showDropIndicator]])],2)}var sG=$n(oG,[["render",aG]]);const Jm=rt(sG),rG=(e,{attrs:t,emit:n},{select:o,tree:a,key:s})=>{const r=fe("tree-select");le(()=>e.data,()=>{e.filterable&&Re(()=>{a.value?.filter(o.value?.states.inputValue)})},{flush:"post"});const l=u=>{const c=u.at(-1);if(c.expanded&&c.childNodes.at(-1))l([c.childNodes.at(-1)]);else{a.value.el$?.querySelector(`[data-key="${u.at(-1).key}"]`)?.focus({preventScroll:!0});return}};return ht(()=>{Ft(()=>o.value?.$el,"keydown",async u=>{const c=jt(u),{dropdownMenuVisible:d}=o.value;[we.down,we.up].includes(c)&&d&&(await Re(),setTimeout(()=>{if(we.up===c){const f=a.value.store.root.childNodes;l(f);return}o.value.optionsArray[o.value.states.hoveringIndex].$el?.parentNode?.parentNode?.focus({preventScroll:!0})}))},{capture:!0})}),{...ss(Mn(e),Object.keys(Hs.props)),...t,class:w(()=>t.class),style:w(()=>t.style),"onUpdate:modelValue":u=>n(ot,u),valueKey:s,popperClass:w(()=>{const u=[r.e("popper")];return e.popperClass&&u.push(e.popperClass),u.join(" ")}),filterMethod:(u="")=>{e.filterMethod?e.filterMethod(u):e.remoteMethod?e.remoteMethod(u):a.value?.filter(u)}}},lG=se({extends:ld,setup(e,t){const n=ld.setup(e,t);delete n.selectOptionClick;const o=ft().proxy;return Re(()=>{n.select.states.cachedOptions.get(o.value)||n.select.onOptionCreate(o)}),le(()=>t.attrs.visible,a=>{Re(()=>{n.states.visible=a})},{immediate:!0}),n},methods:{selectOptionClick(){this.$el.parentElement.click()}}});function Bh(e){return e||e===0}function Zm(e){return ye(e)&&e.length}function Kr(e){return ye(e)?e:Bh(e)?[e]:[]}function _c(e,t,n,o,a){for(let s=0;s{le([()=>e.modelValue,s],()=>{e.showCheckbox&&Re(()=>{const p=s.value;p&&!sn(p.getCheckedKeys(),Kr(e.modelValue))&&p.setCheckedKeys(Kr(e.modelValue))})},{immediate:!0,deep:!0});const l=w(()=>({value:r.value,label:"label",children:"children",disabled:"disabled",isLeaf:"isLeaf",...e.props})),u=(p,h)=>{const m=l.value[p];return Ve(m)?m(h,s.value?.getNode(u("value",h))):h[m]},c=Kr(e.modelValue).map(p=>_c(e.data||[],h=>u("value",h)===p,h=>u("children",h),(h,m,b,k)=>k&&u("value",k))).filter(p=>Bh(p)),d=w(()=>{if(!e.renderAfterExpand&&!e.lazy)return[];const p=[];return Ac(e.data.concat(e.cacheData),h=>{const m=u("value",h);p.push({value:m,currentLabel:u("label",h),isDisabled:u("disabled",h)})},h=>u("children",h)),p}),f=()=>s.value?.getCheckedKeys().filter(p=>{const h=s.value?.getNode(p);return!bn(h)&&io(h.childNodes)}),v=p=>{sn(e.modelValue,p)||o(bt,p)};function g(p){o(ot,p),v(p)}return{...ss(Mn(e),Object.keys(Jm.props)),...t,nodeKey:r,expandOnClickNode:w(()=>!e.checkStrictly&&e.expandOnClickNode),defaultExpandedKeys:w(()=>e.defaultExpandedKeys?e.defaultExpandedKeys.concat(c):c),renderContent:(p,{node:h,data:m,store:b})=>p(lG,{value:u("value",m),label:u("label",m),disabled:u("disabled",m),visible:h.visible},e.renderContent?()=>e.renderContent(p,{node:h,data:m,store:b}):n.default?()=>n.default({node:h,data:m,store:b}):void 0),filterNodeMethod:(p,h,m)=>e.filterNodeMethod?e.filterNodeMethod(p,h,m):p?new RegExp(Bv(p),"i").test(u("label",h)||""):!0,onNodeClick:(p,h,m)=>{if(t.onNodeClick?.(p,h,m),!(e.showCheckbox&&e.checkOnClickNode))if(!e.showCheckbox&&(e.checkStrictly||h.isLeaf)){if(!u("disabled",p)){const b=a.value?.states.options.get(u("value",p));a.value?.handleOptionSelect(b)}}else e.expandOnClickNode&&m.proxy.handleExpandIconClick()},onCheck:(p,h)=>{if(!e.showCheckbox)return;const m=u("value",p),b={};Ac([s.value.store.root],C=>b[C.key]=C,C=>C.childNodes);const k=h.checkedKeys,y=e.multiple?Kr(e.modelValue).filter(C=>!(C in b)&&!k.includes(C)):[],S=y.concat(k);if(e.checkStrictly)g(e.multiple?S:S.includes(m)?m:void 0);else if(e.multiple){const C=f();g(y.concat(C))}else{const C=_c([p],O=>!Zm(u("children",O))&&!u("disabled",O),O=>u("children",O)),E=C?u("value",C):void 0,$=Bh(e.modelValue)&&!!_c([p],O=>u("value",O)===e.modelValue,O=>u("children",O));g(E===e.modelValue||$?void 0:E)}Re(()=>{const C=Kr(e.modelValue);s.value.setCheckedKeys(C),t.onCheck?.(p,{checkedKeys:s.value.getCheckedKeys(),checkedNodes:s.value.getCheckedNodes(),halfCheckedKeys:s.value.getHalfCheckedKeys(),halfCheckedNodes:s.value.getHalfCheckedNodes()})}),a.value?.focus()},onNodeExpand:(p,h,m)=>{t.onNodeExpand?.(p,h,m),Re(()=>{if(!e.checkStrictly&&e.lazy&&e.multiple&&h.checked){const b={},k=s.value.getCheckedKeys();Ac([s.value.store.root],C=>b[C.key]=C,C=>C.childNodes);const y=Kr(e.modelValue).filter(C=>!(C in b)&&!k.includes(C)),S=f();g(y.concat(S))}})},cacheOptions:d}};var uG=se({props:{data:{type:Array,default:()=>[]}},setup(e){const t=_e(wu);return le(()=>e.data,()=>{e.data.forEach(o=>{t.states.cachedOptions.has(o.value)||t.states.cachedOptions.set(o.value,o)});const n=t.selectRef?.querySelectorAll("input")||[];Mt&&!Array.from(n).includes(document.activeElement)&&t.setSelected()},{flush:"post",immediate:!0}),()=>{}}}),cG=se({name:"ElTreeSelect",inheritAttrs:!1,props:{...Dk,...HE,cacheData:{type:Array,default:()=>[]}},setup(e,t){const{slots:n,expose:o,emit:a,attrs:s}=t,r={...s,onChange:void 0},l=M(),u=M(),c=w(()=>e.nodeKey||e.valueKey||"value"),d=rG(e,{attrs:s,emit:a},{select:l,tree:u,key:c}),{cacheOptions:f,...v}=iG(e,{attrs:r,slots:n,emit:a},{select:l,tree:u,key:c}),g=At({});return o(g),ht(()=>{Object.assign(g,{...ss(u.value,["filter","updateKeyChildren","getCheckedNodes","setCheckedNodes","getCheckedKeys","setCheckedKeys","setChecked","getHalfCheckedNodes","getHalfCheckedKeys","getCurrentKey","getCurrentNode","setCurrentKey","setCurrentNode","getNode","remove","append","insertBefore","insertAfter"]),...ss(l.value,["focus","blur","selectedLabel"]),treeRef:u.value,selectRef:l.value})}),()=>Ye(Hs,At({...d,ref:p=>l.value=p}),{...n,default:()=>[Ye(uG,{data:f.value}),Ye(Jm,At({...v,ref:p=>u.value=p}))]})}}),dG=cG;const fG=rt(dG),Qm=Symbol(),pG={key:-1,level:-1,data:{}};let Xa=(function(e){return e.KEY="id",e.LABEL="label",e.CHILDREN="children",e.DISABLED="disabled",e.CLASS="",e})({}),q0=(function(e){return e.ADD="add",e.DELETE="delete",e})({});const UE={type:Number,default:26},hG=Ce({data:{type:G(Array),default:()=>rn([])},emptyText:{type:String},height:{type:Number,default:200},props:{type:G(Object),default:()=>rn({children:Xa.CHILDREN,label:Xa.LABEL,disabled:Xa.DISABLED,value:Xa.KEY,class:Xa.CLASS})},highlightCurrent:Boolean,showCheckbox:Boolean,defaultCheckedKeys:{type:G(Array),default:()=>rn([])},checkStrictly:Boolean,defaultExpandedKeys:{type:G(Array),default:()=>rn([])},indent:{type:Number,default:16},itemSize:UE,icon:{type:Kt},expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},currentNodeKey:{type:G([String,Number])},accordion:Boolean,filterMethod:{type:G(Function)},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),vG=Ce({node:{type:G(Object),default:()=>rn(pG)},expanded:Boolean,checked:Boolean,indeterminate:Boolean,showCheckbox:Boolean,disabled:Boolean,current:Boolean,hiddenExpandIcon:Boolean,itemSize:UE}),mG=Ce({node:{type:G(Object),required:!0}}),qE="node-click",YE="node-drop",GE="node-expand",XE="node-collapse",JE="current-change",ZE="check",QE="check-change",ex="node-contextmenu",gG={[qE]:(e,t,n)=>e&&t&&n,[YE]:(e,t,n)=>e&&t&&n,[GE]:(e,t)=>e&&t,[XE]:(e,t)=>e&&t,[JE]:(e,t)=>e&&t,[ZE]:(e,t)=>e&&t,[QE]:(e,t)=>e&&Ht(t),[ex]:(e,t,n)=>e&&t&&n},bG={click:(e,t)=>!!(e&&t),drop:(e,t)=>!!(e&&t),toggle:e=>!!e,check:(e,t)=>e&&Ht(t)};function yG(e,t){const n=M(new Set),o=M(new Set),{emit:a}=ft();le([()=>t.value,()=>e.defaultCheckedKeys],()=>Re(()=>{k(e.defaultCheckedKeys)}),{immediate:!0});const s=()=>{if(!t.value||!e.showCheckbox||e.checkStrictly)return;const{levelTreeNodeMap:y,maxLevel:S}=t.value,C=n.value,E=new Set;for(let $=S;$>=1;--$){const O=y.get($);O&&O.forEach(N=>{const R=N.children;let A=!N.isLeaf||N.disabled||C.has(N.key);if(R){let _=!0,V=!1;for(const H of R){const U=H.key;if(H.isEffectivelyChecked||(A=!1),C.has(U))V=!0;else if(E.has(U)){_=!1,V=!0;break}else _=!1}_?C.add(N.key):V?(E.add(N.key),C.delete(N.key)):(C.delete(N.key),E.delete(N.key))}N.isEffectivelyChecked=A})}o.value=E},r=y=>n.value.has(y.key),l=y=>o.value.has(y.key),u=(y,S,C=!0,E=!0)=>{const $=n.value,O=y.children;!e.checkStrictly&&C&&O?.length&&(S=O.some(R=>!R.isEffectivelyChecked));const N=(R,A)=>{$[A?q0.ADD:q0.DELETE](R.key);const _=R.children;!e.checkStrictly&&_&&_.forEach(V=>{(!V.disabled||V.children)&&N(V,A)})};N(y,S),E&&s(),C&&c(y,S)},c=(y,S)=>{const{checkedNodes:C,checkedKeys:E}=p(),{halfCheckedNodes:$,halfCheckedKeys:O}=h();a(ZE,y.data,{checkedKeys:E,checkedNodes:C,halfCheckedKeys:O,halfCheckedNodes:$}),a(QE,y.data,S)};function d(y=!1){return p(y).checkedKeys}function f(y=!1){return p(y).checkedNodes}function v(){return h().halfCheckedKeys}function g(){return h().halfCheckedNodes}function p(y=!1){const S=[],C=[];if(t?.value&&e.showCheckbox){const{treeNodeMap:E}=t.value;n.value.forEach($=>{const O=E.get($);O&&(!y||y&&O.isLeaf)&&(C.push($),S.push(O.data))})}return{checkedKeys:C,checkedNodes:S}}function h(){const y=[],S=[];if(t?.value&&e.showCheckbox){const{treeNodeMap:C}=t.value;o.value.forEach(E=>{const $=C.get(E);$&&(S.push(E),y.push($.data))})}return{halfCheckedNodes:y,halfCheckedKeys:S}}function m(y){n.value.clear(),o.value.clear(),Re(()=>{k(y)})}function b(y,S){if(t?.value&&e.showCheckbox){const C=t.value.treeNodeMap.get(y);C&&u(C,S,!1)}}function k(y){if(t?.value){const{treeNodeMap:S}=t.value;if(e.showCheckbox&&S&&y?.length>0){for(const C of y){const E=S.get(C);E&&!r(E)&&u(E,!0,!1,!1)}s()}}}return{updateCheckedKeys:s,toggleCheckbox:u,isChecked:r,isIndeterminate:l,getCheckedKeys:d,getCheckedNodes:f,getHalfCheckedKeys:v,getHalfCheckedNodes:g,setChecked:b,setCheckedKeys:m}}function wG(e,t){const n=M(new Set([])),o=M(new Set([])),a=w(()=>Ve(e.filterMethod));function s(l){if(!a.value)return;const u=new Set,c=o.value,d=n.value,f=[],v=t.value?.treeNodes||[],g=e.filterMethod;d.clear();function p(h){h.forEach(m=>{f.push(m),g?.(l,m.data,m)?f.forEach(k=>{u.add(k.key),k.expanded=!0}):(m.expanded=!1,m.isLeaf&&d.add(m.key));const b=m.children;if(b&&p(b),!m.isLeaf){if(!u.has(m.key))d.add(m.key);else if(b){let k=!0;for(const y of b)if(!d.has(y.key)){k=!1;break}k?c.add(m.key):c.delete(m.key)}}f.pop()})}return p(v),u}function r(l){return o.value.has(l.key)}return{hiddenExpandIconKeySet:o,hiddenNodeKeySet:n,doFilter:s,isForceHiddenExpandIcon:r}}function SG(e,t){const n=M(new Set),o=M(),a=Xt(),s=M(),{isIndeterminate:r,isChecked:l,toggleCheckbox:u,getCheckedKeys:c,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:v,setChecked:g,setCheckedKeys:p}=yG(e,a),{doFilter:h,hiddenNodeKeySet:m,isForceHiddenExpandIcon:b}=wG(e,a),k=w(()=>e.props?.value||Xa.KEY),y=w(()=>e.props?.children||Xa.CHILDREN),S=w(()=>e.props?.disabled||Xa.DISABLED),C=w(()=>e.props?.label||Xa.LABEL),E=w(()=>{const ne=n.value,K=m.value,Z=[],re=a.value?.treeNodes||[],ce=[];for(let ve=re.length-1;ve>=0;--ve)ce.push(re[ve]);for(;ce.length;){const ve=ce.pop();if(!K.has(ve.key)&&(Z.push(ve),ve.children&&ne.has(ve.key)))for(let ke=ve.children.length-1;ke>=0;--ke)ce.push(ve.children[ke])}return Z}),$=w(()=>E.value.length>0);function O(ne){const K=new Map,Z=new Map;let re=1;function ce(ke,Ne=1,Ie=void 0){const $e=[];for(const pe of ke){const Ee=A(pe),me={level:Ne,key:Ee,data:pe};me.label=V(pe),me.parent=Ie;const Me=R(pe);me.disabled=_(pe),me.isLeaf=!Me||Me.length===0,me.expanded=n.value.has(Ee),Me&&Me.length&&(me.children=ce(Me,Ne+1,me)),$e.push(me),K.set(Ee,me),Z.has(Ne)||Z.set(Ne,[]),Z.get(Ne)?.push(me)}return Ne>re&&(re=Ne),$e}const ve=ce(ne);return{treeNodeMap:K,levelTreeNodeMap:Z,maxLevel:re,treeNodes:ve}}function N(ne){const K=h(ne);K&&(n.value=K)}function R(ne){return ne[y.value]}function A(ne){return ne?ne[k.value]:""}function _(ne){return ne[S.value]}function V(ne){return ne[C.value]}function H(ne){n.value.has(ne.key)?F(ne):D(ne)}function U(ne){const K=new Set,Z=a.value.treeNodeMap;n.value.forEach(re=>{const ce=Z.get(re);n.value.delete(ce.key),ce.expanded=!1}),ne.forEach(re=>{let ce=Z.get(re);for(;ce&&!K.has(ce.key);)K.add(ce.key),ce.expanded=!0,ce=ce.parent}),n.value=K}function W(ne,K){t(qE,ne.data,ne,K),I(ne),e.expandOnClickNode&&H(ne),e.showCheckbox&&(e.checkOnClickNode||ne.isLeaf&&e.checkOnClickLeaf)&&!ne.disabled&&u(ne,!l(ne),!0)}function P(ne,K){t(YE,ne.data,ne,K)}function I(ne){j(ne)||(o.value=ne.key,t(JE,ne.data,ne))}function L(ne,K){u(ne,K)}function D(ne){const K=n.value;if(a.value&&e.accordion){const{treeNodeMap:re}=a.value;K.forEach(ce=>{const ve=re.get(ce);ne&&ne.level===ve?.level&&(K.delete(ce),ve.expanded=!1)})}K.add(ne.key);const Z=ge(ne.key);Z&&(Z.expanded=!0,t(GE,Z.data,Z))}function F(ne){n.value.delete(ne.key);const K=ge(ne.key);K&&(K.expanded=!1,t(XE,K.data,K))}function q(ne){return!!ne.disabled}function j(ne){const K=o.value;return K!==void 0&&K===ne.key}function X(){if(o.value)return a.value?.treeNodeMap.get(o.value)?.data}function Q(){return o.value}function he(ne){o.value=ne}function ue(ne){a.value=O(ne)}function ge(ne){const K=at(ne)?A(ne):ne;return a.value?.treeNodeMap.get(K)}function ie(ne,K="auto"){const Z=ge(ne);Z&&s.value&&s.value.scrollToItem(E.value.indexOf(Z),K)}function oe(ne){s.value?.scrollTo(ne)}return le(()=>e.currentNodeKey,ne=>{o.value=ne},{immediate:!0}),le(()=>e.defaultExpandedKeys,ne=>{n.value=new Set(ne)},{immediate:!0}),le(()=>e.data,ne=>{ue(ne)},{immediate:!0}),{tree:a,flattenTree:E,isNotEmpty:$,listRef:s,getKey:A,getChildren:R,toggleExpand:H,toggleCheckbox:u,isChecked:l,isIndeterminate:r,isDisabled:q,isCurrent:j,isForceHiddenExpandIcon:b,handleNodeClick:W,handleNodeDrop:P,handleNodeCheck:L,getCurrentNode:X,getCurrentKey:Q,setCurrentKey:he,getCheckedKeys:c,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:v,setChecked:g,setCheckedKeys:p,filter:N,setData:ue,getNode:ge,expandNode:D,collapseNode:F,setExpandedKeys:U,scrollToNode:ie,scrollTo:oe}}var CG=se({name:"ElTreeNodeContent",props:mG,setup(e){const t=_e(Qm),n=fe("tree");return()=>{const o=e.node,{data:a}=o;return t?.ctx.slots.default?t.ctx.slots.default({node:o,data:a}):Ye(Ym,{tag:"span",truncated:!0,class:n.be("node","label")},()=>[o?.label])}}});const kG=["aria-expanded","aria-disabled","aria-checked","data-key"];var EG=se({name:"ElTreeNode",__name:"tree-node",props:vG,emits:bG,setup(e,{emit:t}){const n=e,o=t,a=_e(Qm),s=fe("tree"),r=w(()=>a?.props.indent??16),l=w(()=>a?.props.icon??FC),u=p=>{const h=a?.props.props?.class;if(!h)return{};let m;if(Ve(h)){const{data:b}=p;m=h(b,p)}else m=h;return Le(m)?{[m]:!0}:m},c=p=>{o("click",n.node,p)},d=p=>{o("drop",n.node,p)},f=()=>{o("toggle",n.node)},v=p=>{o("check",n.node,p)},g=p=>{a?.instance?.vnode?.props?.onNodeContextmenu&&(p.stopPropagation(),p.preventDefault()),a?.ctx.emit(ex,p,n.node?.data,n.node)};return(p,h)=>(x(),B("div",{ref:"node$",class:T([i(s).b("node"),i(s).is("expanded",e.expanded),i(s).is("current",e.current),i(s).is("focusable",!e.disabled),i(s).is("checked",!e.disabled&&e.checked),u(e.node)]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.disabled,"aria-checked":e.checked,"data-key":e.node?.key,onClick:Xe(c,["stop"]),onContextmenu:g,onDragover:h[1]||(h[1]=Xe(()=>{},["prevent"])),onDragenter:h[2]||(h[2]=Xe(()=>{},["prevent"])),onDrop:Xe(d,["stop"])},[z("div",{class:T(i(s).be("node","content")),style:Ke({paddingLeft:`${(e.node.level-1)*r.value}px`,height:e.itemSize+"px"})},[l.value?(x(),ae(i(De),{key:0,class:T([i(s).is("leaf",!!e.node?.isLeaf),i(s).is("hidden",e.hiddenExpandIcon),{expanded:!e.node?.isLeaf&&e.expanded},i(s).be("node","expand-icon")]),onClick:Xe(f,["stop"])},{default:J(()=>[(x(),ae(it(l.value)))]),_:1},8,["class"])):te("v-if",!0),e.showCheckbox?(x(),ae(i(ra),{key:1,"model-value":e.checked,indeterminate:e.indeterminate,disabled:e.disabled,onChange:v,onClick:h[0]||(h[0]=Xe(()=>{},["stop"]))},null,8,["model-value","indeterminate","disabled"])):te("v-if",!0),Y(i(CG),{node:{...e.node,expanded:e.expanded}},null,8,["node"])],6)],42,kG))}}),xG=EG,TG=se({name:"ElTreeV2",__name:"tree",props:hG,emits:gG,setup(e,{expose:t,emit:n}){const o=e,a=n,s=vn(),r=w(()=>o.itemSize);St(Qm,{ctx:{emit:a,slots:s},props:o,instance:ft()}),St(La,void 0);const{t:l}=Ct(),u=fe("tree"),{flattenTree:c,isNotEmpty:d,listRef:f,toggleExpand:v,isIndeterminate:g,isChecked:p,isDisabled:h,isCurrent:m,isForceHiddenExpandIcon:b,handleNodeClick:k,handleNodeDrop:y,handleNodeCheck:S,toggleCheckbox:C,getCurrentNode:E,getCurrentKey:$,setCurrentKey:O,getCheckedKeys:N,getCheckedNodes:R,getHalfCheckedKeys:A,getHalfCheckedNodes:_,setChecked:V,setCheckedKeys:H,filter:U,setData:W,getNode:P,expandNode:I,collapseNode:L,setExpandedKeys:D,scrollToNode:F,scrollTo:q}=SG(o,a);return t({toggleCheckbox:C,getCurrentNode:E,getCurrentKey:$,setCurrentKey:O,getCheckedKeys:N,getCheckedNodes:R,getHalfCheckedKeys:A,getHalfCheckedNodes:_,setChecked:V,setCheckedKeys:H,filter:U,setData:W,getNode:P,expandNode:I,collapseNode:L,setExpandedKeys:D,scrollToNode:F,scrollTo:q}),(j,X)=>(x(),B("div",{class:T([i(u).b(),{[i(u).m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[i(d)?(x(),ae(i(aE),{key:0,ref_key:"listRef",ref:f,"class-name":i(u).b("virtual-list"),data:i(c),total:i(c).length,height:e.height,"item-size":r.value,"perf-mode":e.perfMode,"scrollbar-always-on":e.scrollbarAlwaysOn},{default:J(({data:Q,index:he,style:ue})=>[(x(),ae(xG,{key:Q[he].key,style:Ke(ue),node:Q[he],expanded:Q[he].expanded,"show-checkbox":e.showCheckbox,checked:i(p)(Q[he]),indeterminate:i(g)(Q[he]),"item-size":r.value,disabled:i(h)(Q[he]),current:i(m)(Q[he]),"hidden-expand-icon":i(b)(Q[he]),onClick:i(k),onToggle:i(v),onCheck:i(S),onDrop:i(y)},null,8,["style","node","expanded","show-checkbox","checked","indeterminate","item-size","disabled","current","hidden-expand-icon","onClick","onToggle","onCheck","onDrop"]))]),_:1},8,["class-name","data","total","height","item-size","perf-mode","scrollbar-always-on"])):(x(),B("div",{key:1,class:T(i(u).e("empty-block"))},[ee(j.$slots,"empty",{},()=>[z("span",{class:T(i(u).e("empty-text"))},Se(e.emptyText??i(l)("el.tree.emptyText")),3)])],2))],2))}}),$G=TG;const OG=rt($G),RG="ElUpload";var NG=class extends Error{constructor(e,t,n,o){super(e),this.name="UploadAjaxError",this.status=t,this.method=n,this.url=o}};function Y0(e,t,n){let o;return n.response?o=`${n.response.error||n.response}`:n.responseText?o=`${n.responseText}`:o=`fail to ${t.method} ${e} ${n.status}`,new NG(o,n.status,t.method,e)}function IG(e){const t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch{return t}}const PG=e=>{typeof XMLHttpRequest>"u"&&nn(RG,"XMLHttpRequest is undefined");const t=new XMLHttpRequest,n=e.action;t.upload&&t.upload.addEventListener("progress",s=>{const r=s;r.percent=s.total>0?s.loaded/s.total*100:0,e.onProgress(r)});const o=new FormData;if(e.data)for(const[s,r]of Object.entries(e.data))ye(r)?r.length===2&&r[0]instanceof Blob&&Le(r[1])?o.append(s,r[0],r[1]):r.forEach(l=>{o.append(s,l)}):o.append(s,r);o.append(e.filename,e.file,e.file.name),t.addEventListener("error",()=>{e.onError(Y0(n,e,t))}),t.addEventListener("load",()=>{if(t.status<200||t.status>=300)return e.onError(Y0(n,e,t));e.onSuccess(IG(t))}),t.open(e.method,n,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);const a=e.headers||{};if(a instanceof Headers)a.forEach((s,r)=>t.setRequestHeader(r,s));else for(const[s,r]of Object.entries(a))bn(r)||t.setRequestHeader(s,String(r));return t.send(o),t},tx=["text","picture","picture-card"];let MG=1;const Fh=()=>Date.now()+MG++,nx=Ce({action:{type:String,default:"#"},headers:{type:G(Object)},method:{type:String,default:"post"},data:{type:G([Object,Function,Promise]),default:()=>rn({})},multiple:Boolean,name:{type:String,default:"file"},drag:Boolean,withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:""},fileList:{type:G(Array),default:()=>rn([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:tx,default:"text"},httpRequest:{type:G(Function),default:PG},disabled:{type:Boolean,default:void 0},limit:Number,directory:Boolean}),_G=Ce({...nx,beforeUpload:{type:G(Function),default:Dt},beforeRemove:{type:G(Function)},onRemove:{type:G(Function),default:Dt},onChange:{type:G(Function),default:Dt},onPreview:{type:G(Function),default:Dt},onSuccess:{type:G(Function),default:Dt},onProgress:{type:G(Function),default:Dt},onError:{type:G(Function),default:Dt},onExceed:{type:G(Function),default:Dt},crossorigin:{type:G(String)}}),ox=Symbol("uploadContextKey"),AG=Ce({files:{type:G(Array),default:()=>rn([])},disabled:{type:Boolean,default:void 0},handlePreview:{type:G(Function),default:Dt},listType:{type:String,values:tx,default:"text"},crossorigin:{type:G(String)}}),LG={remove:e=>!!e},DG=Ce({...nx,beforeUpload:{type:G(Function),default:Dt},onRemove:{type:G(Function),default:Dt},onStart:{type:G(Function),default:Dt},onSuccess:{type:G(Function),default:Dt},onProgress:{type:G(Function),default:Dt},onError:{type:G(Function),default:Dt},onExceed:{type:G(Function),default:Dt}}),BG=Ce({disabled:{type:Boolean,default:void 0},directory:Boolean}),FG={file:e=>ye(e)},VG=["tabindex","aria-disabled","onKeydown"],zG=["src","crossorigin"],HG=["onClick"],KG=["title"],WG=["onClick"],jG=["onClick"];var UG=se({name:"ElUploadList",__name:"upload-list",props:AG,emits:LG,setup(e,{emit:t}){const n=e,o=t,{t:a}=Ct(),s=fe("upload"),r=fe("icon"),l=fe("list"),u=un(),c=M(!1),d=w(()=>[s.b("list"),s.bm("list",n.listType),s.is("disabled",u.value)]),f=v=>{o("remove",v)};return(v,g)=>(x(),ae(q1,{tag:"ul",class:T(d.value),name:i(l).b()},{default:J(()=>[(x(!0),B(Fe,null,yt(e.files,(p,h)=>(x(),B("li",{key:p.uid||p.name,class:T([i(s).be("list","item"),i(s).is(p.status),{focusing:c.value}]),tabindex:i(u)?void 0:0,"aria-disabled":i(u),role:"button",onKeydown:an(m=>!i(u)&&f(p),["delete"]),onFocus:g[0]||(g[0]=m=>c.value=!0),onBlur:g[1]||(g[1]=m=>c.value=!1),onClick:g[2]||(g[2]=m=>c.value=!1)},[ee(v.$slots,"default",{file:p,index:h},()=>[e.listType==="picture"||p.status!=="uploading"&&e.listType==="picture-card"?(x(),B("img",{key:0,class:T(i(s).be("list","item-thumbnail")),src:p.url,crossorigin:e.crossorigin,alt:""},null,10,zG)):te("v-if",!0),p.status==="uploading"||e.listType!=="picture-card"?(x(),B("div",{key:1,class:T(i(s).be("list","item-info"))},[z("a",{class:T(i(s).be("list","item-name")),onClick:Xe(m=>e.handlePreview(p),["prevent"])},[Y(i(De),{class:T(i(r).m("document"))},{default:J(()=>[Y(i(f3))]),_:1},8,["class"]),z("span",{class:T(i(s).be("list","item-file-name")),title:p.name},Se(p.name),11,KG)],10,HG),p.status==="uploading"?(x(),ae(i(q2),{key:0,type:e.listType==="picture-card"?"circle":"line","stroke-width":e.listType==="picture-card"?6:2,percentage:Number(p.percentage),style:Ke(e.listType==="picture-card"?"":"margin-top: 0.5rem")},null,8,["type","stroke-width","percentage","style"])):te("v-if",!0)],2)):te("v-if",!0),z("label",{class:T(i(s).be("list","item-status-label"))},[e.listType==="text"?(x(),ae(i(De),{key:0,class:T([i(r).m("upload-success"),i(r).m("circle-check")])},{default:J(()=>[Y(i(om))]),_:1},8,["class"])):["picture-card","picture"].includes(e.listType)?(x(),ae(i(De),{key:1,class:T([i(r).m("upload-success"),i(r).m("check")])},{default:J(()=>[Y(i(gu))]),_:1},8,["class"])):te("v-if",!0)],2),i(u)?te("v-if",!0):(x(),ae(i(De),{key:2,class:T(i(r).m("close")),"aria-label":i(a)("el.upload.delete"),role:"button",tabindex:"0",onClick:m=>f(p),onKeydown:an(Xe(m=>f(p),["prevent"]),["enter","space"])},{default:J(()=>[Y(i(Ko))]),_:1},8,["class","aria-label","onClick","onKeydown"])),i(u)?te("v-if",!0):(x(),B("i",{key:3,class:T(i(r).m("close-tip"))},Se(i(a)("el.upload.deleteTip")),3)),e.listType==="picture-card"?(x(),B("span",{key:4,class:T(i(s).be("list","item-actions"))},[z("span",{class:T(i(s).be("list","item-preview")),onClick:m=>e.handlePreview(p)},[Y(i(De),{class:T(i(r).m("zoom-in"))},{default:J(()=>[Y(i(KC))]),_:1},8,["class"])],10,WG),i(u)?te("v-if",!0):(x(),B("span",{key:0,class:T(i(s).be("list","item-delete")),onClick:m=>f(p)},[Y(i(De),{class:T(i(r).m("delete"))},{default:J(()=>[Y(i(c3))]),_:1},8,["class"])],10,jG))],2)):te("v-if",!0)])],42,VG))),128)),ee(v.$slots,"append")]),_:3},8,["class","name"]))}}),G0=UG;const X0="ElUploadDrag";var qG=se({name:X0,__name:"upload-dragger",props:BG,emits:FG,setup(e,{emit:t}){const n=e,o=t;_e(ox)||nn(X0,"usage: ");const a=fe("upload"),s=M(!1),r=un(),l=v=>new Promise((g,p)=>v.file(g,p)),u=async v=>{try{if(v.isFile){const g=await l(v);return g.isDirectory=!1,[g]}if(v.isDirectory){const g=v.createReader(),p=()=>new Promise((k,y)=>g.readEntries(k,y)),h=[];let m=await p();for(;m.length>0;)h.push(...m),m=await p();const b=h.map(k=>u(k).catch(()=>[]));return Xc(await Promise.all(b))}}catch{return[]}return[]},c=async v=>{if(r.value)return;s.value=!1,v.stopPropagation();const g=Array.from(v.dataTransfer.files),p=v.dataTransfer.items||[];if(n.directory){const h=Array.from(p).map(m=>m?.webkitGetAsEntry?.()).filter(m=>m);o("file",Xc(await Promise.all(h.map(u))));return}g.forEach((h,m)=>{const b=p[m]?.webkitGetAsEntry?.();b&&(h.isDirectory=b.isDirectory)}),o("file",g)},d=()=>{r.value||(s.value=!0)},f=v=>{v.currentTarget.contains(v.relatedTarget)||(s.value=!1)};return(v,g)=>(x(),B("div",{class:T([i(a).b("dragger"),i(a).is("dragover",s.value)]),onDrop:Xe(c,["prevent"]),onDragover:Xe(d,["prevent"]),onDragleave:Xe(f,["prevent"])},[ee(v.$slots,"default")],34))}}),YG=qG;const GG=["tabindex","aria-disabled","onKeydown"],XG=["name","disabled","multiple","accept","webkitdirectory"];var JG=se({name:"ElUploadContent",inheritAttrs:!1,__name:"upload-content",props:DG,setup(e,{expose:t}){const n=e,o=fe("upload"),a=un(),s=Xt({}),r=Xt(),l=h=>{if(h.length===0)return;const{autoUpload:m,limit:b,fileList:k,multiple:y,onStart:S,onExceed:C}=n;if(b&&k.length+h.length>b){C(h,k);return}y||(h=h.slice(0,1));for(const E of h){const $=E;$.uid=Fh(),S($),m&&u($)}},u=async h=>{if(r.value.value="",!n.beforeUpload)return d(h);let m,b={};try{const y=n.data,S=n.beforeUpload(h);b=mi(n.data)?es(n.data):n.data,m=await S,mi(n.data)&&sn(y,b)&&(b=es(n.data))}catch{m=!1}if(m===!1){n.onRemove(h);return}let k=h;m instanceof Blob&&(m instanceof File?k=m:k=new File([m],h.name,{type:h.type})),d(Object.assign(k,{uid:h.uid}),b)},c=async(h,m)=>Ve(h)?h(m):h,d=async(h,m)=>{const{headers:b,data:k,method:y,withCredentials:S,name:C,action:E,onProgress:$,onSuccess:O,onError:N,httpRequest:R}=n;try{m=await c(m??k,h)}catch{n.onRemove(h);return}const{uid:A}=h,_={headers:b||{},withCredentials:S,file:h,data:m,method:y,filename:C,action:E,onProgress:H=>{$(H,h)},onSuccess:H=>{O(H,h),delete s.value[A]},onError:H=>{N(H,h),delete s.value[A]}},V=R(_);s.value[A]=V,V instanceof Promise&&V.then(_.onSuccess,_.onError)},f=h=>{const m=h.target.files;m&&l(Array.from(m))},v=()=>{a.value||(r.value.value="",r.value.click())},g=()=>{v()};return t({abort:h=>{FS(s.value).filter(h?([m])=>String(h.uid)===m:()=>!0).forEach(([m,b])=>{b instanceof XMLHttpRequest&&b.abort(),delete s.value[m]})},upload:u}),(h,m)=>(x(),B("div",{class:T([i(o).b(),i(o).m(e.listType),i(o).is("drag",e.drag),i(o).is("disabled",i(a))]),tabindex:i(a)?void 0:0,"aria-disabled":i(a),role:"button",onClick:v,onKeydown:an(Xe(g,["self"]),["enter","space"])},[e.drag?(x(),ae(YG,{key:0,disabled:i(a),directory:e.directory,onFile:l},{default:J(()=>[ee(h.$slots,"default")]),_:3},8,["disabled","directory"])):ee(h.$slots,"default",{key:1}),z("input",{ref_key:"inputRef",ref:r,class:T(i(o).e("input")),name:e.name,disabled:i(a),multiple:e.multiple,accept:e.accept,webkitdirectory:e.directory||void 0,type:"file",onChange:f,onClick:m[0]||(m[0]=Xe(()=>{},["stop"]))},null,42,XG)],42,GG))}}),J0=JG;const Z0="ElUpload",Q0=e=>{e.url?.startsWith("blob:")&&URL.revokeObjectURL(e.url)},ZG=(e,t)=>{const n=qS(e,"fileList",void 0,{passive:!0}),o=p=>n.value.find(h=>h.uid===p.uid);function a(p){t.value?.abort(p)}function s(p=["ready","uploading","success","fail"]){n.value=n.value.filter(h=>!p.includes(h.status))}function r(p){n.value=n.value.filter(h=>h.uid!==p.uid)}const l=p=>{Re(()=>e.onChange(p,n.value))},u=(p,h)=>{const m=o(h);m&&(console.error(p),m.status="fail",r(m),e.onError(p,m,n.value),l(m))},c=(p,h)=>{const m=o(h);m&&(e.onProgress(p,m,n.value),m.status="uploading",m.percentage=Math.round(p.percent))},d=(p,h)=>{const m=o(h);m&&(m.status="success",m.response=p,e.onSuccess(p,m,n.value),l(m))},f=p=>{bn(p.uid)&&(p.uid=Fh());const h={name:p.name,percentage:0,status:"ready",size:p.size,raw:p,uid:p.uid};if(e.listType==="picture-card"||e.listType==="picture")try{h.url=URL.createObjectURL(p)}catch(m){pt(Z0,m.message),e.onError(m,h,n.value)}n.value=[...n.value,h],l(h)},v=async p=>{const h=p instanceof File?o(p):p;h||nn(Z0,"file to be removed not found");const m=b=>{a(b),r(b),e.onRemove(b,n.value),Q0(b)};e.beforeRemove?await e.beforeRemove(h,n.value)!==!1&&m(h):m(h)};function g(){n.value.filter(({status:p})=>p==="ready").forEach(({raw:p})=>p&&t.value?.upload(p))}return le(()=>e.listType,p=>{p!=="picture-card"&&p!=="picture"||(n.value=n.value.map(h=>{const{raw:m,url:b}=h;if(!b&&m)try{h.url=URL.createObjectURL(m)}catch(k){e.onError(k,h,n.value)}return h}))}),le(n,p=>{for(const h of p)h.uid||=Fh(),h.status||="success"},{immediate:!0,deep:!0}),{uploadFiles:n,abort:a,clearFiles:s,handleError:u,handleProgress:c,handleStart:f,handleSuccess:d,handleRemove:v,submit:g,revokeFileObjectURL:Q0}};var QG=se({name:"ElUpload",__name:"upload",props:_G,setup(e,{expose:t}){const n=e,o=un(),a=Xt(),{abort:s,submit:r,clearFiles:l,uploadFiles:u,handleStart:c,handleError:d,handleRemove:f,handleSuccess:v,handleProgress:g,revokeFileObjectURL:p}=ZG(n,a),h=w(()=>n.listType==="picture-card"),m=w(()=>({...n,fileList:u.value,onStart:c,onProgress:g,onSuccess:v,onError:d,onRemove:f}));return Bt(()=>{u.value.forEach(p)}),St(ox,{accept:Vt(n,"accept")}),t({abort:s,submit:r,clearFiles:l,handleStart:c,handleRemove:f}),(b,k)=>(x(),B("div",null,[h.value&&e.showFileList?(x(),ae(G0,{key:0,disabled:i(o),"list-type":e.listType,files:i(u),crossorigin:e.crossorigin,"handle-preview":e.onPreview,onRemove:i(f)},uo({append:J(()=>[Y(J0,dt({ref_key:"uploadRef",ref:a},m.value),{default:J(()=>[b.$slots.trigger?ee(b.$slots,"trigger",{key:0}):te("v-if",!0),!b.$slots.trigger&&b.$slots.default?ee(b.$slots,"default",{key:1}):te("v-if",!0)]),_:3},16)]),_:2},[b.$slots.file?{name:"default",fn:J(({file:y,index:S})=>[ee(b.$slots,"file",{file:y,index:S})]),key:"0"}:void 0]),1032,["disabled","list-type","files","crossorigin","handle-preview","onRemove"])):te("v-if",!0),!h.value||h.value&&!e.showFileList?(x(),ae(J0,dt({key:1,ref_key:"uploadRef",ref:a},m.value),{default:J(()=>[b.$slots.trigger?ee(b.$slots,"trigger",{key:0}):te("v-if",!0),!b.$slots.trigger&&b.$slots.default?ee(b.$slots,"default",{key:1}):te("v-if",!0)]),_:3},16)):te("v-if",!0),b.$slots.trigger?ee(b.$slots,"default",{key:2}):te("v-if",!0),ee(b.$slots,"tip"),!h.value&&e.showFileList?(x(),ae(G0,{key:3,disabled:i(o),"list-type":e.listType,files:i(u),crossorigin:e.crossorigin,"handle-preview":e.onPreview,onRemove:i(f)},uo({_:2},[b.$slots.file?{name:"default",fn:J(({file:y,index:S})=>[ee(b.$slots,"file",{file:y,index:S})]),key:"0"}:void 0]),1032,["disabled","list-type","files","crossorigin","handle-preview","onRemove"])):te("v-if",!0)]))}}),eX=QG;const tX=rt(eX),nX=Ce({zIndex:{type:Number,default:9},rotate:{type:Number,default:-22},width:Number,height:Number,image:String,content:{type:G([String,Array]),default:"Element Plus"},font:{type:G(Object)},gap:{type:G(Array),default:()=>[100,100]},offset:{type:G(Array)}});function oX(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function aX(e){return Object.keys(e).map(t=>`${oX(t)}: ${e[t]};`).join(" ")}function sX(){return window.devicePixelRatio||1}const rX=(e,t)=>{let n=!1;return e.removedNodes.length&&t&&(n=Array.from(e.removedNodes).includes(t)),e.type==="attributes"&&e.target===t&&(n=!0),n},lX={left:[0,.5],start:[0,.5],center:[.5,0],right:[1,-.5],end:[1,-.5]};function vp(e,t,n=1){const o=document.createElement("canvas"),a=o.getContext("2d"),s=e*n,r=t*n;return o.setAttribute("width",`${s}px`),o.setAttribute("height",`${r}px`),a.save(),[a,o,s,r]}function iX(){function e(t,n,o,a,s,r,l,u,c){const[d,f,v,g]=vp(a,s,o);let p=0;if(t instanceof HTMLImageElement)d.drawImage(t,0,0,v,g);else{const{color:q,fontSize:j,fontStyle:X,fontWeight:Q,fontFamily:he,textAlign:ue,textBaseline:ge}=r,ie=Number(j)*o;d.font=`${X} normal ${Q} ${ie}px/${s}px ${he}`,d.fillStyle=q,d.textAlign=ue,d.textBaseline=ge;const oe=ye(t)?t:[t];if(ge!=="top"&&oe[0]){const ne=d.measureText(oe[0]);d.textBaseline="top";const K=d.measureText(oe[0]);p=ne.actualBoundingBoxAscent-K.actualBoundingBoxAscent}oe?.forEach((ne,K)=>{const[Z,re]=lX[ue];d.fillText(ne??"",v*Z+c*re,K*(ie+r.fontGap*o))})}const h=Math.PI/180*Number(n),m=Math.max(a,s),[b,k,y]=vp(m,m,o);b.translate(y/2,y/2),b.rotate(h),v>0&&g>0&&b.drawImage(f,-v/2,-g/2);function S(q,j){return[q*Math.cos(h)-j*Math.sin(h),q*Math.sin(h)+j*Math.cos(h)]}let C=0,E=0,$=0,O=0;const N=v/2,R=g/2;[[0-N,0-R],[0+N,0-R],[0+N,0+R],[0-N,0+R]].forEach(([q,j])=>{const[X,Q]=S(q,j);C=Math.min(C,X),E=Math.max(E,X),$=Math.min($,Q),O=Math.max(O,Q)});const A=C+y/2,_=$+y/2,V=E-C,H=O-$,U=l*o,W=u*o,P=(V+U)*2,I=H+W,[L,D]=vp(P,I);function F(q=0,j=0){L.drawImage(k,A,_,V,H,q,j+p,V,H)}return F(),F(V+U,-H/2-W/2),F(V+U,+H/2+W/2),[D.toDataURL(),P/o,I/o]}return e}var uX=se({name:"ElWatermark",__name:"watermark",props:nX,setup(e){const t={position:"relative"},n=e,o=w(()=>n.font?.fontGap??3),a=w(()=>n.font?.color??"rgba(0,0,0,.15)"),s=w(()=>n.font?.fontSize??16),r=w(()=>n.font?.fontWeight??"normal"),l=w(()=>n.font?.fontStyle??"normal"),u=w(()=>n.font?.fontFamily??"sans-serif"),c=w(()=>n.font?.textAlign??"center"),d=w(()=>n.font?.textBaseline??"hanging"),f=w(()=>n.gap[0]),v=w(()=>n.gap[1]),g=w(()=>f.value/2),p=w(()=>v.value/2),h=w(()=>n.offset?.[0]??g.value),m=w(()=>n.offset?.[1]??p.value),b=()=>{const A={zIndex:n.zIndex,position:"absolute",left:0,top:0,width:"100%",height:"100%",pointerEvents:"none",backgroundRepeat:"repeat"};let _=h.value-g.value,V=m.value-p.value;return _>0&&(A.left=`${_}px`,A.width=`calc(100% - ${_}px)`,_=0),V>0&&(A.top=`${V}px`,A.height=`calc(100% - ${V}px)`,V=0),A.backgroundPosition=`${_}px ${V}px`,A},k=Xt(null),y=Xt(),S=M(!1),C=()=>{y.value&&(y.value.remove(),y.value=void 0)},E=(A,_)=>{k.value&&y.value&&(S.value=!0,y.value.setAttribute("style",aX({...b(),backgroundImage:`url('${A}')`,backgroundSize:`${Math.floor(_)}px`})),k.value?.append(y.value),setTimeout(()=>{S.value=!1}))},$=A=>{let _=120,V=64,H=0;const{image:U,content:W,width:P,height:I,rotate:L}=n;if(!U&&A.measureText){A.font=`${Number(s.value)}px ${u.value}`;const D=ye(W)?W:[W];let F=0,q=0;D.forEach(X=>{const{width:Q,fontBoundingBoxAscent:he,fontBoundingBoxDescent:ue,actualBoundingBoxAscent:ge,actualBoundingBoxDescent:ie}=A.measureText(X),oe=Tt(he)?ge+ie:he+ue;Q>F&&(F=Math.ceil(Q)),oe>q&&(q=Math.ceil(oe))}),_=F,V=q*D.length+(D.length-1)*o.value;const j=Math.PI/180*Number(L);H=Math.ceil(Math.abs(Math.sin(j)*V)/2),_+=H}return[P??_,I??V,H]},O=iX(),N=()=>{const A=document.createElement("canvas").getContext("2d"),_=n.image,V=n.content,H=n.rotate;if(A){y.value||(y.value=document.createElement("div"));const U=sX(),[W,P,I]=$(A),L=D=>{const[F,q]=O(D||"",H,U,W,P,{color:a.value,fontSize:s.value,fontStyle:l.value,fontWeight:r.value,fontFamily:u.value,fontGap:o.value,textAlign:c.value,textBaseline:d.value},f.value,v.value,I);E(F,q)};if(_){const D=new Image;D.onload=()=>{L(D)},D.onerror=()=>{L(V)},D.crossOrigin="anonymous",D.referrerPolicy="no-referrer",D.src=_}else L(V)}};return ht(()=>{N()}),le(()=>n,()=>{N()},{deep:!0,flush:"post"}),Bt(()=>{C()}),lu(k,A=>{S.value||A.forEach(_=>{rX(_,y.value)&&(C(),N())})},{attributes:!0,subtree:!0,childList:!0}),(A,_)=>(x(),B("div",{ref_key:"containerRef",ref:k,style:Ke([t])},[ee(A.$slots,"default")],4))}}),cX=uX;const dX=rt(cX),fX=["absolute","fixed"],pX=["top-start","top-end","top","bottom-start","bottom-end","bottom","left-start","left-end","left","right-start","right-end","right"],eg=Ce({placement:{type:G(String),values:pX,default:"bottom"},reference:{type:G(Object),default:null},strategy:{type:G(String),values:fX,default:"absolute"},offset:{type:Number,default:10},showArrow:Boolean,zIndex:{type:Number,default:2001}}),hX={close:()=>!0},vX=Ce({modelValue:Boolean,current:{type:Number,default:0},showArrow:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeIcon:{type:Kt},placement:eg.placement,contentStyle:{type:G([Object])},mask:{type:G([Boolean,Object]),default:!0},gap:{type:G(Object),default:()=>({offset:6,radius:2})},zIndex:{type:Number},scrollIntoViewOptions:{type:G([Boolean,Object]),default:()=>({block:"center"})},type:{type:G(String)},appendTo:{type:su.to.type,default:"body"},closeOnPressEscape:{type:Boolean,default:!0},targetAreaClickable:{type:Boolean,default:!0}}),mX={[ot]:e=>Ht(e),"update:current":e=>He(e),close:e=>He(e),finish:()=>!0,change:e=>He(e)},gX=Ce({target:{type:G([String,Object,Function])},title:String,description:String,showClose:{type:Boolean,default:void 0},closeIcon:{type:Kt},showArrow:{type:Boolean,default:void 0},placement:eg.placement,mask:{type:G([Boolean,Object]),default:void 0},contentStyle:{type:G([Object])},prevButtonProps:{type:G(Object)},nextButtonProps:{type:G(Object)},scrollIntoViewOptions:{type:G([Boolean,Object]),default:void 0},type:{type:G(String)}}),bX={close:()=>!0},yX=(e,t,n,o,a)=>{const s=M(null),r=()=>{let d;return Le(e.value)?d=document.querySelector(e.value):Ve(e.value)?d=e.value():d=e.value,d},l=()=>{const d=r();if(!d||!t.value){s.value=null;return}wX(d)||d.scrollIntoView(a.value);const{left:f,top:v,width:g,height:p}=d.getBoundingClientRect();s.value={left:f,top:v,width:g,height:p,radius:0}};ht(()=>{le([t,e],()=>{l()},{immediate:!0}),window.addEventListener("resize",l)}),Bt(()=>{window.removeEventListener("resize",l)});const u=d=>(ye(n.value.offset)?n.value.offset[d]:n.value.offset)??6,c=w(()=>{if(!s.value)return s.value;const d=u(0),f=u(1),v=n.value?.radius||2;return{left:s.value.left-d,top:s.value.top-f,width:s.value.width+d*2,height:s.value.height+f*2,radius:v}});return{mergedPosInfo:c,triggerTarget:w(()=>{const d=r();return!o.value||!d||!window.DOMRect?d||void 0:{getBoundingClientRect(){return window.DOMRect.fromRect({width:c.value?.width||0,height:c.value?.height||0,x:c.value?.left||0,y:c.value?.top||0})}}})}},hf=Symbol("ElTour");function wX(e){const t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,{top:o,right:a,bottom:s,left:r}=e.getBoundingClientRect();return o>=0&&r>=0&&a<=t&&s<=n}const SX=(e,t,n,o,a,s,r,l)=>{const u=M(),c=M(),d=M({}),f={x:u,y:c,placement:o,strategy:a,middlewareData:d},v=w(()=>{const b=[S4(i(s)),k4(),C4(),CX()];return i(l)&&i(n)&&b.push(E4({element:i(n)})),b}),g=async()=>{if(!Mt)return;const b=i(e),k=i(t);if(!b||!k)return;const y=await x4(b,k,{placement:i(o),strategy:i(a),middleware:i(v)});Oi(f).forEach(S=>{f[S].value=y[S]})},p=w(()=>{if(!i(e))return{position:"fixed",top:"50%",left:"50%",transform:"translate3d(-50%, -50%, 0)",maxWidth:"100vw",zIndex:i(r)};const{overflow:b}=i(d);return{position:i(a),zIndex:i(r),top:i(c)!=null?`${i(c)}px`:"",left:i(u)!=null?`${i(u)}px`:"",maxWidth:b?.maxWidth?`${b?.maxWidth}px`:""}}),h=w(()=>{if(!i(l))return{};const{arrow:b}=i(d);return{left:b?.x!=null?`${b?.x}px`:"",top:b?.y!=null?`${b?.y}px`:""}});let m;return ht(()=>{const b=i(e),k=i(t);b&&k&&(m=y4(b,k,g)),So(()=>{g()})}),Bt(()=>{m&&m()}),{update:g,contentStyle:p,arrowStyle:h}},CX=()=>({name:"overflow",async fn(e){const t=await w4(e);let n=0;return t.left>0&&(n=t.left),t.right>0&&(n=t.right),{data:{maxWidth:e.rects.floating.width-n}}}}),kX=Ce({zIndex:{type:Number,default:1001},visible:Boolean,fill:{type:String,default:"rgba(0,0,0,0.5)"},pos:{type:G(Object)},targetAreaClickable:{type:Boolean,default:!0}}),EX={style:{width:"100%",height:"100%"}},xX=["d"];var TX=se({name:"ElTourMask",inheritAttrs:!1,__name:"mask",props:kX,setup(e){const t=e,{ns:n}=_e(hf),o=w(()=>t.pos?.radius??2),a=w(()=>{const d=o.value,f=`a${d},${d} 0 0 1`;return{topRight:`${f} ${d},${d}`,bottomRight:`${f} ${-d},${d}`,bottomLeft:`${f} ${-d},${-d}`,topLeft:`${f} ${d},${-d}`}}),{width:s,height:r}=Lv(),l=w(()=>{const d=s.value,f=r.value,v=a.value,g=`M${d},0 L0,0 L0,${f} L${d},${f} L${d},0 Z`,p=o.value;return t.pos?`${g} M${t.pos.left+p},${t.pos.top} h${t.pos.width-p*2} ${v.topRight} v${t.pos.height-p*2} ${v.bottomRight} h${-t.pos.width+p*2} ${v.bottomLeft} v${-t.pos.height+p*2} ${v.topLeft} z`:g}),u=w(()=>({position:"fixed",left:0,right:0,top:0,bottom:0,zIndex:t.zIndex,pointerEvents:t.pos&&t.targetAreaClickable?"none":"auto"})),c=w(()=>({fill:t.fill,pointerEvents:"auto",cursor:"auto"}));return Gd(Vt(t,"visible"),{ns:n}),(d,f)=>e.visible?(x(),B("div",dt({key:0,class:i(n).e("mask"),style:u.value},d.$attrs),[(x(),B("svg",EX,[z("path",{class:T(i(n).e("hollow")),style:Ke(c.value),d:l.value},null,14,xX)]))],16)):te("v-if",!0)}}),$X=TX;const OX=["data-side"];var RX=se({name:"ElTourContent",__name:"content",props:eg,emits:hX,setup(e,{emit:t}){const n=e,o=t,a=M(n.placement),s=M(n.strategy),r=M(null),l=M(null);le(()=>n.placement,()=>{a.value=n.placement});const{contentStyle:u,arrowStyle:c}=SX(Vt(n,"reference"),r,l,a,s,Vt(n,"offset"),Vt(n,"zIndex"),Vt(n,"showArrow")),d=w(()=>a.value.split("-")[0]),{ns:f}=_e(hf),v=()=>{o("close")},g=p=>{p.detail.focusReason==="pointer"&&p.preventDefault()};return(p,h)=>(x(),B("div",{ref_key:"contentRef",ref:r,style:Ke(i(u)),class:T(i(f).e("content")),"data-side":d.value,tabindex:"-1"},[Y(i(Al),{loop:"",trapped:"","focus-start-el":"container","focus-trap-el":r.value||void 0,onReleaseRequested:v,onFocusoutPrevented:g},{default:J(()=>[ee(p.$slots,"default")]),_:3},8,["focus-trap-el"]),e.showArrow?(x(),B("span",{key:0,ref_key:"arrowRef",ref:l,style:Ke(i(c)),class:T(i(f).e("arrow"))},null,6)):te("v-if",!0)],14,OX))}}),NX=RX,IX=se({name:"ElTourSteps",props:{current:{type:Number,default:0}},emits:["update-total"],setup(e,{slots:t,emit:n}){let o=0;return()=>{const a=t.default?.(),s=[];let r=0;function l(u){ye(u)&&u.forEach(c=>{(c?.type||{})?.name==="ElTourStep"&&(s.push(c),r+=1)})}return a.length&&l($o(a[0]?.children)),o!==r&&(o=r,n("update-total",r)),s.length?s[e.current]:null}}}),PX=se({name:"ElTour",inheritAttrs:!1,__name:"tour",props:vX,emits:mX,setup(e,{emit:t}){const n=e,o=t,a=fe("tour"),s=M(0),r=M(),l=qS(n,"current",o,{passive:!0}),u=w(()=>r.value?.target),c=w(()=>[a.b(),b.value==="primary"?a.m("primary"):""]),d=w(()=>r.value?.placement||n.placement),f=w(()=>r.value?.contentStyle??n.contentStyle),v=w(()=>r.value?.mask??n.mask),g=w(()=>!!v.value&&n.modelValue),p=w(()=>Ht(v.value)?void 0:v.value),h=w(()=>!!u.value&&(r.value?.showArrow??n.showArrow)),m=w(()=>r.value?.scrollIntoViewOptions??n.scrollIntoViewOptions),b=w(()=>r.value?.type??n.type),{nextZIndex:k}=du(),y=k(),S=w(()=>n.zIndex??y),{mergedPosInfo:C,triggerTarget:E}=yX(u,Vt(n,"modelValue"),Vt(n,"gap"),v,m);le(()=>n.modelValue,R=>{R||(l.value=0)});const $=()=>{n.closeOnPressEscape&&(o(ot,!1),o("close",l.value))},O=R=>{s.value=R},N=vn();return St(hf,{currentStep:r,current:l,total:s,showClose:Vt(n,"showClose"),closeIcon:Vt(n,"closeIcon"),mergedType:b,ns:a,slots:N,updateModelValue(R){o(ot,R)},onClose(){o("close",l.value)},onFinish(){o("finish")},onChange(){o(bt,l.value)}}),(R,A)=>(x(),B(Fe,null,[Y(i(_l),{to:e.appendTo},{default:J(()=>[z("div",dt({class:c.value},R.$attrs),[Y($X,{visible:g.value,fill:p.value?.color,style:Ke(p.value?.style),pos:i(C),"z-index":S.value,"target-area-clickable":e.targetAreaClickable},null,8,["visible","fill","style","pos","z-index","target-area-clickable"]),e.modelValue?(x(),ae(NX,{key:i(l),reference:i(E),placement:d.value,"show-arrow":h.value,"z-index":S.value,style:Ke(f.value),onClose:$},{default:J(()=>[Y(i(IX),{current:i(l),onUpdateTotal:O},{default:J(()=>[ee(R.$slots,"default")]),_:3},8,["current"])]),_:3},8,["reference","placement","show-arrow","z-index","style"])):te("v-if",!0)],16)]),_:3},8,["to"]),te(" just for IDE "),te("v-if",!0)],64))}}),MX=PX;const _X=["aria-label"];var AX=se({name:"ElTourStep",__name:"step",props:gX,emits:bX,setup(e,{emit:t}){const n=e,o=t,{Close:a}=WC,{t:s}=Ct(),{currentStep:r,current:l,total:u,showClose:c,closeIcon:d,mergedType:f,ns:v,slots:g,updateModelValue:p,onClose:h,onFinish:m,onChange:b}=_e(hf);le(n,R=>{r.value=R},{immediate:!0});const k=w(()=>n.showClose??c.value),y=w(()=>n.closeIcon??d.value??a),S=R=>{if(R)return ou(R,["children","onClick"])},C=()=>{l.value-=1,n.prevButtonProps?.onClick&&n.prevButtonProps?.onClick(),b()},E=()=>{l.value>=u.value-1?$():l.value+=1,n.nextButtonProps?.onClick&&n.nextButtonProps.onClick(),b()},$=()=>{O(),m()},O=()=>{p(!1),h(),o("close")},N=R=>{if(!R.target?.isContentEditable)switch(jt(R)){case we.left:R.preventDefault(),l.value>0&&C();break;case we.right:R.preventDefault(),E();break}};return ht(()=>{window.addEventListener("keydown",N)}),Bt(()=>{window.removeEventListener("keydown",N)}),(R,A)=>(x(),B(Fe,null,[k.value?(x(),B("button",{key:0,"aria-label":i(s)("el.tour.close"),class:T(i(v).e("closebtn")),type:"button",onClick:O},[Y(i(De),{class:T(i(v).e("close"))},{default:J(()=>[(x(),ae(it(y.value)))]),_:1},8,["class"])],10,_X)):te("v-if",!0),z("header",{class:T([i(v).e("header"),{"show-close":i(c)}])},[ee(R.$slots,"header",{},()=>[z("span",{role:"heading",class:T(i(v).e("title"))},Se(e.title),3)])],2),z("div",{class:T(i(v).e("body"))},[ee(R.$slots,"default",{},()=>[z("span",null,Se(e.description),1)])],2),z("footer",{class:T(i(v).e("footer"))},[z("div",{class:T(i(v).b("indicators"))},[i(g).indicators?(x(),ae(it(i(g).indicators),{key:0,current:i(l),total:i(u)},null,8,["current","total"])):(x(!0),B(Fe,{key:1},yt(i(u),(_,V)=>(x(),B("span",{key:_,class:T([i(v).b("indicator"),i(v).is("active",V===i(l))])},null,2))),128))],2),z("div",{class:T(i(v).b("buttons"))},[i(l)>0?(x(),ae(i(In),dt({key:0,size:"small",type:i(f)},S(e.prevButtonProps),{onClick:C}),{default:J(()=>[wt(Se(e.prevButtonProps?.children??i(s)("el.tour.previous")),1)]),_:1},16,["type"])):te("v-if",!0),i(l)<=i(u)-1?(x(),ae(i(In),dt({key:1,size:"small",type:i(f)==="primary"?"default":"primary"},S(e.nextButtonProps),{onClick:E}),{default:J(()=>[wt(Se(e.nextButtonProps?.children??(i(l)===i(u)-1?i(s)("el.tour.finish"):i(s)("el.tour.next"))),1)]),_:1},16,["type"])):te("v-if",!0)],2)],2)],64))}}),ax=AX;const LX=rt(MX,{TourStep:ax}),DX=on(ax),BX=Ce({container:{type:G([String,Object])},offset:{type:Number,default:0},bound:{type:Number,default:15},duration:{type:Number,default:300},marker:{type:Boolean,default:!0},type:{type:G(String),default:"default"},direction:{type:G(String),default:"vertical"},selectScrollTop:Boolean}),FX={change:e=>Le(e),click:(e,t)=>e instanceof MouseEvent&&(Le(t)||Tt(t))},nc=(e=>{if(!Mt||e==="")return null;if(Le(e))try{return document.querySelector(e)}catch{return null}return e});function VX(e){let t=0;const n=(...o)=>{t&&rs(t),t=ta(()=>{e(...o),t=0})};return n.cancel=()=>{rs(t),t=0},n}const sx=Symbol("anchor");var zX=se({name:"ElAnchor",__name:"anchor",props:BX,emits:FX,setup(e,{expose:t,emit:n}){const o=e,a=n,s=vn(),r=M(""),l=M({}),u=M(null),c=M(null),d=M(),f={};let v=!1,g=0;const p=fe("anchor"),h=w(()=>[p.b(),o.type==="underline"?p.m("underline"):"",p.m(o.direction)]),m=_=>{f[_.href]=_.el},b=_=>{delete f[_]},k=_=>{r.value!==_&&(r.value=_,a(bt,_))};let y=null,S="";const C=_=>{if(!d.value)return;const V=nc(_);if(!V)return;if(y){if(S===_)return;y()}S=_,v=!0;const H=Db(V,d.value),U=gh(V,H),W=H.scrollHeight-H.clientHeight,P=Math.min(U-o.offset,W);y=S_(d.value,g,P,o.duration,()=>{setTimeout(()=>{v=!1,S=""},20)})},E=_=>{_&&(k(_),C(_))},$=(_,V)=>{a("click",_,V),E(V)},O=VX(()=>{d.value&&(g=Bb(d.value));const _=N();v||Tt(_)||k(_)}),N=()=>{if(!d.value)return;const _=Bb(d.value),V=[];for(const H of Object.keys(f)){const U=nc(H);if(!U)continue;const W=gh(U,Db(U,d.value));V.push({top:W-o.offset-o.bound,href:H})}V.sort((H,U)=>H.top-U.top);for(let H=0;H_))return U.href}},R=()=>{const _=nc(o.container);!_||au(_)?d.value=window:d.value=_};Ft(d,"scroll",O);const A=()=>{Re(()=>{if(!u.value||!c.value||!r.value){l.value={};return}const _=f[r.value];if(!_){l.value={};return}const V=u.value.getBoundingClientRect(),H=c.value.getBoundingClientRect(),U=_.getBoundingClientRect();o.direction==="horizontal"?l.value={left:`${U.left-V.left}px`,width:`${U.width}px`,opacity:1}:l.value={top:`${U.top-V.top+(U.height-H.height)/2}px`,opacity:1}})};return le(r,A),le(()=>s.default?.(),A),ht(()=>{R();const _=decodeURIComponent(window.location.hash);nc(_)?E(_):O()}),le(()=>o.container,()=>{R()}),St(sx,{ns:p,direction:o.direction,currentAnchor:r,addLink:m,removeLink:b,handleClick:$}),t({scrollTo:E}),(_,V)=>(x(),B("div",{ref_key:"anchorRef",ref:u,class:T(h.value)},[e.marker?(x(),B("div",{key:0,ref_key:"markerRef",ref:c,class:T(i(p).e("marker")),style:Ke(l.value)},null,6)):te("v-if",!0),z("div",{class:T(i(p).e("list"))},[ee(_.$slots,"default")],2)],2))}}),HX=zX;const KX=Ce({title:String,href:String}),WX=["href"];var jX=se({name:"ElAnchorLink",__name:"anchor-link",props:KX,setup(e){const t=e,n=M(null),{ns:o,direction:a,currentAnchor:s,addLink:r,removeLink:l,handleClick:u}=_e(sx),c=w(()=>[o.e("link"),o.is("active",s.value===t.href)]),d=f=>{u(f,t.href)};return le(()=>t.href,(f,v)=>{Re(()=>{v&&l(v),f&&r({href:f,el:n.value})})}),ht(()=>{const{href:f}=t;f&&r({href:f,el:n.value})}),Bt(()=>{const{href:f}=t;f&&l(f)}),(f,v)=>(x(),B("div",{class:T(i(o).e("item"))},[z("a",{ref_key:"linkRef",ref:n,class:T(c.value),href:e.href,onClick:d},[ee(f.$slots,"default",{},()=>[wt(Se(e.title),1)])],10,WX),f.$slots["sub-link"]&&i(a)==="vertical"?(x(),B("div",{key:0,class:T(i(o).e("list"))},[ee(f.$slots,"sub-link")],2)):te("v-if",!0)],2))}}),rx=jX;const UX=rt(HX,{AnchorLink:rx}),qX=on(rx),lx={label:"label",value:"value",disabled:"disabled"},YX=Ce({direction:{type:G(String),default:"horizontal"},options:{type:G(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:G(Object),default:()=>lx},block:Boolean,size:Tn,disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},id:String,name:String,...oo(["ariaLabel"])}),GX={[ot]:e=>Le(e)||He(e)||Ht(e),[bt]:e=>Le(e)||He(e)||Ht(e)},XX=["id","aria-label","aria-labelledby"],JX=["name","disabled","checked","onChange"];var ZX=se({name:"ElSegmented",__name:"segmented",props:YX,emits:GX,setup(e,{emit:t}){const n=e,o=t,a=fe("segmented"),s=zn(),r=Cn(),l=un(),{formItem:u}=Dn(),{inputId:c,isLabeledByFormItem:d}=Po(n,{formItemContext:u}),f=M(null),v=a_(),g=At({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),p=(_,V)=>{const H=b(V);o(ot,H),o(bt,H),_.target.checked=H===n.modelValue},h=w(()=>({...lx,...n.props})),m=_=>_,b=_=>at(_)?_[h.value.value]:_,k=_=>at(_)?_[h.value.label]:_,y=_=>!!(l.value||at(_)&&_[h.value.disabled]),S=_=>n.modelValue===b(_),C=_=>n.options.find(V=>b(V)===_),E=_=>[a.e("item"),a.is("selected",S(_)),a.is("disabled",y(_))],$=()=>{if(!f.value)return;const _=f.value.querySelector(".is-selected"),V=f.value.querySelector(".is-selected input");if(!_||!V){g.width=0,g.height=0,g.translateX=0,g.translateY=0,g.focusVisible=!1;return}g.isInit=!0,n.direction==="vertical"?(g.height=_.offsetHeight,g.translateY=_.offsetTop):(g.width=_.offsetWidth,g.translateX=_.offsetLeft);try{g.focusVisible=V.matches(":focus-visible")}catch{}},O=w(()=>[a.b(),a.m(r.value),a.is("block",n.block)]),N=w(()=>({width:n.direction==="vertical"?"100%":`${g.width}px`,height:n.direction==="vertical"?`${g.height}px`:"100%",transform:n.direction==="vertical"?`translateY(${g.translateY}px)`:`translateX(${g.translateX}px)`,display:g.isInit?"block":"none"})),R=w(()=>[a.e("item-selected"),a.is("disabled",y(C(n.modelValue))),a.is("focus-visible",g.focusVisible)]),A=w(()=>n.name||s.value);return en(f,$),le(v,$),le(()=>n.modelValue,()=>{$(),n.validateEvent&&u?.validate?.("change").catch(_=>pt(_))},{flush:"post"}),(_,V)=>e.options.length?(x(),B("div",{key:0,id:i(c),ref_key:"segmentedRef",ref:f,class:T(O.value),role:"radiogroup","aria-label":i(d)?void 0:e.ariaLabel||"segmented","aria-labelledby":i(d)?i(u).labelId:void 0},[z("div",{class:T([i(a).e("group"),i(a).m(e.direction)])},[z("div",{style:Ke(N.value),class:T(R.value)},null,6),(x(!0),B(Fe,null,yt(e.options,(H,U)=>(x(),B("label",{key:U,class:T(E(H))},[z("input",{class:T(i(a).e("item-input")),type:"radio",name:A.value,disabled:y(H),checked:S(H),onChange:W=>p(W,H)},null,42,JX),z("div",{class:T(i(a).e("item-label"))},[ee(_.$slots,"default",{item:m(H)},()=>[wt(Se(k(H)),1)])],2)],2))),128))],2)],10,XX)):te("v-if",!0)}}),QX=ZX;const eJ=rt(QX),tJ=(e,t)=>{const n=e.toLowerCase();return(t.label||t.value||"").toLowerCase().includes(n)},nJ=(e,t,n)=>{const{selectionEnd:o}=e;if(o===null)return;const a=e.value,s=Nn(t);let r=-1,l;for(let u=o-1;u>=0;--u){const c=a[u];if(c===n||c===` +`||c==="\r"){r=u;continue}if(s.includes(c)){const d=r===-1?o:r;l={pattern:a.slice(u+1,d),start:u+1,end:d,prefix:c,prefixIndex:u,splitIndex:r,selectionEnd:o};break}}return l},oJ=(e,t={debug:!1,useSelectionEnd:!1})=>{const n=e.selectionStart!==null?e.selectionStart:0,o=e.selectionEnd!==null?e.selectionEnd:0,a=t.useSelectionEnd?o:n,s=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"];if(t.debug){const v=document.querySelector("#input-textarea-caret-position-mirror-div");v?.parentNode&&v.parentNode.removeChild(v)}const r=document.createElement("div");r.id="input-textarea-caret-position-mirror-div",document.body.appendChild(r);const l=r.style,u=window.getComputedStyle(e),c=e.nodeName==="INPUT";l.whiteSpace=c?"nowrap":"pre-wrap",c||(l.wordWrap="break-word"),l.position="absolute",t.debug||(l.visibility="hidden"),s.forEach(v=>{if(c&&v==="lineHeight")if(u.boxSizing==="border-box"){const g=Number.parseInt(u.height),p=Number.parseInt(u.paddingTop)+Number.parseInt(u.paddingBottom)+Number.parseInt(u.borderTopWidth)+Number.parseInt(u.borderBottomWidth),h=p+Number.parseInt(u.lineHeight);g>h?l.lineHeight=`${g-p}px`:g===h?l.lineHeight=u.lineHeight:l.lineHeight="0"}else l.lineHeight=u.height;else l[v]=u[v]}),Yd()?e.scrollHeight>Number.parseInt(u.height)&&(l.overflowY="scroll"):l.overflow="hidden",r.textContent=e.value.slice(0,Math.max(0,a)),c&&r.textContent&&(r.textContent=r.textContent.replace(/\s/g," "));const d=document.createElement("span");d.textContent=e.value.slice(Math.max(0,a))||".",d.style.position="relative",d.style.left=`${-e.scrollLeft}px`,d.style.top=`${-e.scrollTop}px`,r.appendChild(d);const f={top:d.offsetTop+Number.parseInt(u.borderTopWidth),left:d.offsetLeft+Number.parseInt(u.borderLeftWidth),height:Number.parseInt(u.fontSize)*1.5};return t.debug?d.style.backgroundColor="#aaa":document.body.removeChild(r),f.left>=e.clientWidth&&(f.left=e.clientWidth),f},aJ=Ce({...yu,options:{type:G(Array),default:()=>[]},prefix:{type:G([String,Array]),default:"@",validator:e=>Le(e)?e.length===1:e.every(t=>Le(t)&&t.length===1)},split:{type:String,default:" ",validator:e=>e.length===1},filterOption:{type:G([Boolean,Function]),default:()=>tJ,validator:e=>e===!1?!0:Ve(e)},placement:{type:G(String),default:"bottom"},showArrow:Boolean,offset:{type:Number,default:0},whole:Boolean,checkIsWhole:{type:G(Function)},modelValue:String,loading:Boolean,popperClass:zt.popperClass,popperStyle:zt.popperStyle,popperOptions:{type:G(Object),default:()=>({})},props:{type:G(Object),default:()=>ix}}),sJ={[ot]:e=>Le(e),"whole-remove":(e,t)=>Le(e)&&Le(t),input:e=>Le(e),search:(e,t)=>Le(e)&&Le(t),select:(e,t)=>at(e)&&Le(t),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},ix={value:"value",label:"label",disabled:"disabled"},rJ=Ce({options:{type:G(Array),default:()=>[]},loading:Boolean,disabled:Boolean,contentId:String,ariaLabel:String}),lJ={select:e=>Le(e.value)},iJ=["id","aria-disabled","aria-selected","onMousemove","onClick"];var uJ=se({name:"ElMentionDropdown",__name:"mention-dropdown",props:rJ,emits:lJ,setup(e,{expose:t,emit:n}){const o=e,a=n,s=fe("mention"),{t:r}=Ct(),l=M(-1),u=M(),c=M(),d=M(),f=(S,C)=>[s.be("dropdown","item"),s.is("hovering",l.value===C),s.is("disabled",S.disabled||o.disabled)],v=S=>{S.disabled||o.disabled||a("select",S)},g=S=>{l.value=S},p=w(()=>o.disabled||o.options.every(S=>S.disabled)),h=w(()=>o.options[l.value]),m=()=>{!h.value||h.value.disabled||o.disabled||a("select",h.value)},b=S=>{const{options:C}=o;if(C.length===0||p.value)return;S==="next"?(l.value++,l.value===C.length&&(l.value=0)):S==="prev"&&(l.value--,l.value<0&&(l.value=C.length-1));const E=C[l.value];if(E.disabled){b(S);return}Re(()=>k(E))},k=S=>{const{options:C}=o,E=C.findIndex(O=>O.value===S.value),$=c.value?.[E];if($){const O=d.value?.querySelector?.(`.${s.be("dropdown","wrap")}`);O&&zv(O,$)}u.value?.handleScroll()};return le(()=>o.options,()=>{p.value||o.options.length===0?l.value=-1:l.value=o.options.findIndex(S=>!S.disabled)},{immediate:!0}),t({hoveringIndex:l,navigateOptions:b,selectHoverOption:m,hoverOption:h}),(S,C)=>(x(),B("div",{ref_key:"dropdownRef",ref:d,class:T(i(s).b("dropdown"))},[S.$slots.header?(x(),B("div",{key:0,class:T(i(s).be("dropdown","header"))},[ee(S.$slots,"header")],2)):te("v-if",!0),ut(Y(i(aa),{id:e.contentId,ref_key:"scrollbarRef",ref:u,tag:"ul","wrap-class":i(s).be("dropdown","wrap"),"view-class":i(s).be("dropdown","list"),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical"},{default:J(()=>[(x(!0),B(Fe,null,yt(e.options,(E,$)=>(x(),B("li",{id:`${e.contentId}-${$}`,ref_for:!0,ref_key:"optionRefs",ref:c,key:$,class:T(f(E,$)),role:"option","aria-disabled":E.disabled||e.disabled||void 0,"aria-selected":l.value===$,onMousemove:O=>g($),onClick:Xe(O=>v(E),["stop"])},[ee(S.$slots,"label",{item:E,index:$},()=>[z("span",null,Se(E.label??E.value),1)])],42,iJ))),128))]),_:3},8,["id","wrap-class","view-class","aria-label"]),[[Pt,e.options.length>0&&!e.loading]]),e.loading?(x(),B("div",{key:1,class:T(i(s).be("dropdown","loading"))},[ee(S.$slots,"loading",{},()=>[wt(Se(i(r)("el.mention.loading")),1)])],2)):te("v-if",!0),S.$slots.footer?(x(),B("div",{key:2,class:T(i(s).be("dropdown","footer"))},[ee(S.$slots,"footer")],2)):te("v-if",!0)],2))}}),cJ=uJ,dJ=se({name:"ElMention",inheritAttrs:!1,__name:"mention",props:aJ,emits:sJ,setup(e,{expose:t,emit:n}){const o=e,a=n,s=w(()=>ss(o,Object.keys(yu))),r=fe("mention"),l=un(),u=zn(),c=M(),d=M(),f=M(),v=M(!1),g=M(),p=M(),h=w(()=>o.showArrow?o.placement:`${o.placement}-start`),m=w(()=>o.showArrow?["bottom","top"]:["bottom-start","top-start"]),b=w(()=>({...ix,...o.props})),k=P=>{const I={label:P[b.value.label],value:P[b.value.value],disabled:P[b.value.disabled]};return{...P,...I}},y=w(()=>o.options.map(k)),S=w(()=>{const{filterOption:P}=o;return!p.value||!P?y.value:y.value.filter(I=>P(p.value.pattern,I))}),C=w(()=>v.value&&(!!S.value.length||o.loading)),E=w(()=>`${u.value}-${f.value?.hoveringIndex}`),$=P=>{a(ot,P),a(Sn,P),H()},O=P=>{if(c.value?.isComposing)return;const I=jt(P);switch(I){case we.left:case we.right:H();break;case we.up:case we.down:if(!v.value)return;P.preventDefault(),f.value?.navigateOptions(I===we.up?"prev":"next");break;case we.enter:case we.numpadEnter:if(!v.value){o.type!=="textarea"&&H();return}P.preventDefault(),f.value?.hoverOption?f.value?.selectHoverOption():v.value=!1;break;case we.esc:if(!v.value)return;P.preventDefault(),v.value=!1;break;case we.backspace:if(o.whole&&p.value){const{splitIndex:L,selectionEnd:D,pattern:F,prefixIndex:q,prefix:j}=p.value,X=V();if(!X)return;const Q=X.value,he=y.value.find(ue=>ue.value===F);if((Ve(o.checkIsWhole)?o.checkIsWhole(F,j):he)&&L!==-1&&L+1===D){P.preventDefault();const ue=Q.slice(0,q)+Q.slice(L+1);a(ot,ue),a(Sn,ue),a("whole-remove",F,j);const ge=q;Re(()=>{X.selectionStart=ge,X.selectionEnd=ge,W()})}}}},{wrapperRef:N}=ms(c,{disabled:l,afterFocus(){H()},beforeBlur(P){return d.value?.isFocusInsideContent(P)},afterBlur(){v.value=!1}}),R=()=>{H()},A=P=>o.options.find(I=>P.value===I[b.value.value]),_=P=>{if(!p.value)return;const I=V();if(!I)return;const L=I.value,{split:D}=o,F=L.slice(p.value.end),q=F.startsWith(D),j=`${P.value}${q?"":D}`,X=L.slice(0,p.value.start)+j+F;a(ot,X),a(Sn,X),a("select",A(P),p.value.prefix);const Q=p.value.start+j.length+(q?1:0);Re(()=>{I.selectionStart=Q,I.selectionEnd=Q,I.focus(),W()})},V=()=>o.type==="textarea"?c.value?.textarea:c.value?.input,H=()=>{setTimeout(()=>{U(),W(),Re(()=>d.value?.updatePopper())},0)},U=()=>{const P=V();if(!P)return;const I=oJ(P),L=P.getBoundingClientRect(),D=N.value.getBoundingClientRect();g.value={position:"absolute",width:0,height:`${I.height}px`,left:`${I.left+L.left-D.left}px`,top:`${I.top+L.top-D.top}px`}},W=()=>{const P=V();if(document.activeElement!==P){v.value=!1;return}const{prefix:I,split:L}=o;if(p.value=nJ(P,I,L),p.value&&p.value.splitIndex===-1){v.value=!0,a("search",p.value.pattern,p.value.prefix);return}v.value=!1};return t({input:c,tooltip:d,dropdownVisible:C}),(P,I)=>(x(),B("div",{ref_key:"wrapperRef",ref:N,class:T(i(r).b())},[Y(i(eo),dt(dt(s.value,P.$attrs),{ref_key:"elInputRef",ref:c,"model-value":e.modelValue,disabled:i(l),role:C.value?"combobox":void 0,"aria-activedescendant":C.value?E.value||"":void 0,"aria-controls":C.value?i(u):void 0,"aria-expanded":C.value||void 0,"aria-label":e.ariaLabel,"aria-autocomplete":C.value?"none":void 0,"aria-haspopup":C.value?"listbox":void 0,onInput:$,onKeydown:O,onMousedown:R}),uo({_:2},[yt(P.$slots,(L,D)=>({name:D,fn:J(F=>[ee(P.$slots,D,Ja(Za(F)))])}))]),1040,["model-value","disabled","role","aria-activedescendant","aria-controls","aria-expanded","aria-label","aria-autocomplete","aria-haspopup"]),Y(i(Ln),{ref_key:"tooltipRef",ref:d,visible:C.value,"popper-class":[i(r).e("popper"),e.popperClass],"popper-style":e.popperStyle,"popper-options":e.popperOptions,placement:h.value,"fallback-placements":m.value,effect:"light",pure:"",offset:e.offset,"show-arrow":e.showArrow},{default:J(()=>[z("div",{style:Ke(g.value)},null,4)]),content:J(()=>[Y(cJ,{ref_key:"dropdownRef",ref:f,options:S.value,disabled:i(l),loading:e.loading,"content-id":i(u),"aria-label":e.ariaLabel,onSelect:_,onClick:I[0]||(I[0]=Xe(L=>c.value?.focus(),["stop"]))},uo({_:2},[yt(P.$slots,(L,D)=>({name:D,fn:J(F=>[ee(P.$slots,D,Ja(Za(F)))])}))]),1032,["options","disabled","loading","content-id","aria-label"])]),_:3},8,["visible","popper-class","popper-style","popper-options","placement","fallback-placements","offset","show-arrow"])],2))}}),fJ=dJ;const pJ=rt(fJ),hJ=Ce({layout:{type:String,default:"horizontal",values:["horizontal","vertical"]},lazy:Boolean}),vJ={resizeStart:(e,t)=>!0,resize:(e,t)=>!0,resizeEnd:(e,t)=>!0,collapse:(e,t,n)=>!0},mJ=Ce({min:{type:[String,Number]},max:{type:[String,Number]},size:{type:[String,Number]},resizable:{type:Boolean,default:!0},collapsible:Boolean}),gJ={"update:size":e=>typeof e=="number"||typeof e=="string"};function bJ(e){const t=M(),{width:n,height:o}=Vp(t);return{containerEl:t,containerSize:w(()=>e.value==="horizontal"?n.value:o.value)}}function tg(e){return Number(e.slice(0,-1))/100}function ng(e){return Number(e.slice(0,-2))}function og(e){return Le(e)&&e.endsWith("%")}function ag(e){return Le(e)&&e.endsWith("px")}function yJ(e,t){const n=w(()=>e.value.map(r=>r.size)),o=w(()=>e.value.length),a=M([]);le([n,o,t],()=>{let r=[],l=0;for(let c=0;cc+(d||0),0);if(u>1||!l){const c=1/u;r=r.map(d=>d===void 0?0:d*c)}else{const c=(1-u)/l;r=r.map(d=>d===void 0?c:d)}a.value=r});const s=r=>r*t.value;return{percentSizes:a,pxSizes:w(()=>a.value.map(s))}}function wJ(e,t,n,o){const a=m=>m*t.value||0;function s(m,b){return og(m)?a(tg(m)):ag(m)?ng(m):m??b}const r=M(0),l=M(null);let u=[],c=Dt;const d=w(()=>e.value.map(m=>[m.min,m.max]));le(o,()=>{if(r.value){const m=new MouseEvent("mouseup",{bubbles:!0});window.dispatchEvent(m)}});const f=m=>{r.value=0,l.value={index:m,confirmed:!1},u=n.value},v=(m,b)=>{let k=null;if((!l.value||!l.value.confirmed)&&b!==0){if(b>0)k=m,l.value={index:m,confirmed:!0};else for(let A=m;A>=0;A-=1)if(u[A]>0){k=A,l.value={index:A,confirmed:!0};break}}const y=k??l.value?.index??m,S=[...u],C=y+1,E=s(d.value[y][0],0),$=s(d.value[C][0],0),O=s(d.value[y][1],t.value||0),N=s(d.value[C][1],t.value||0);let R=b;S[y]+RO&&(R=O-S[y]),S[C]-R>N&&(R=S[C]-N),S[y]+=R,S[C]-=R,r.value=R,c=()=>{e.value.forEach((A,_)=>{A.size=S[_]}),c=Dt},o.value||c()},g=()=>{o.value&&c(),r.value=0,l.value=null,u=[]},p=[];return{lazyOffset:r,onMoveStart:f,onMoving:v,onMoveEnd:g,movingIndex:l,onCollapse:(m,b)=>{p.length||p.push(...n.value);const k=n.value,y=b==="start"?m:m+1,S=b==="start"?m+1:m,C=k[y],E=k[S];if(C!==0&&E!==0)k[y]=0,k[S]+=C,p[m]=C;else{const $=C+E,O=p[m],N=$-O;k[S]=O,k[y]=N}e.value.forEach(($,O)=>{$.size=k[O]})}}}const ux=Symbol("splitterRootContextKey");var SJ=se({name:"ElSplitter",__name:"splitter",props:hJ,emits:vJ,setup(e,{emit:t}){const n=fe("splitter"),o=t,a=e,s=Vt(a,"layout"),r=Vt(a,"lazy"),{containerEl:l,containerSize:u}=bJ(s),{removeChild:c,children:d,addChild:f,ChildrenSorter:v}=tf(ft(),"ElSplitterPanel");le(d,()=>{m.value=null,d.value.forEach((R,A)=>{R.setIndex(A)})});const{percentSizes:g,pxSizes:p}=yJ(d,u),{lazyOffset:h,movingIndex:m,onMoveStart:b,onMoving:k,onMoveEnd:y,onCollapse:S}=wJ(d,u,p,r),C=w(()=>({[n.cssVarBlockName("bar-offset")]:r.value?`${h.value}px`:void 0}));return St(ux,At({panels:d,percentSizes:g,pxSizes:p,layout:s,lazy:r,movingIndex:m,containerSize:u,onMoveStart:R=>{b(R),o("resizeStart",R,p.value)},onMoving:(R,A)=>{k(R,A),r.value||o("resize",R,p.value)},onMoveEnd:async R=>{y(),await Re(),o("resizeEnd",R,p.value)},onCollapse:(R,A)=>{S(R,A),o("collapse",R,A,p.value)},registerPanel:f,unregisterPanel:c})),(R,A)=>(x(),B("div",{ref_key:"containerEl",ref:l,class:T([i(n).b(),i(n).e(s.value)]),style:Ke(C.value)},[ee(R.$slots,"default"),Y(i(v)),te(" Prevent iframe touch events from breaking "),i(m)?(x(),B("div",{key:0,class:T([i(n).e("mask"),i(n).e(`mask-${s.value}`)])},null,2)):te("v-if",!0)],6))}}),CJ=SJ;function kJ(e){return e&&at(e)?e:{start:!!e,end:!!e}}function ew(e,t,n,o){return!!(e?.collapsible.end&&t>0||n?.collapsible.start&&o===0&&t>0)}var EJ=se({name:"ElSplitterBar",__name:"split-bar",props:{index:{type:Number,required:!0},layout:{type:String,values:["horizontal","vertical"],default:"horizontal"},resizable:{type:Boolean,default:!0},lazy:Boolean,startCollapsible:Boolean,endCollapsible:Boolean},emits:["moveStart","moving","moveEnd","collapse"],setup(e,{emit:t}){const n=fe("splitter-bar"),o=e,a=t,s=w(()=>o.layout==="horizontal"),r=w(()=>s.value?{width:0}:{height:0}),l=w(()=>({width:s.value?"16px":"100%",height:s.value?"100%":"16px",cursor:o.resizable?s.value?"ew-resize":"ns-resize":"auto",touchAction:"none"})),u=w(()=>{const k=n.e("dragger");return{[`${k}-horizontal`]:s.value,[`${k}-vertical`]:!s.value,[`${k}-active`]:!!c.value}}),c=M(null),d=k=>{o.resizable&&(c.value=[k.pageX,k.pageY],a("moveStart",o.index),window.addEventListener("mouseup",p),window.addEventListener("mousemove",v))},f=k=>{if(o.resizable&&k.touches.length===1){k.preventDefault();const y=k.touches[0];c.value=[y.pageX,y.pageY],a("moveStart",o.index),window.addEventListener("touchend",h),window.addEventListener("touchmove",g)}},v=k=>{const{pageX:y,pageY:S}=k,C=y-c.value[0],E=S-c.value[1],$=s.value?C:E;a("moving",o.index,$)},g=k=>{if(k.touches.length===1){k.preventDefault();const y=k.touches[0],S=y.pageX-c.value[0],C=y.pageY-c.value[1],E=s.value?S:C;a("moving",o.index,E)}},p=()=>{c.value=null,window.removeEventListener("mouseup",p),window.removeEventListener("mousemove",v),a("moveEnd",o.index)},h=()=>{c.value=null,window.removeEventListener("touchend",h),window.removeEventListener("touchmove",g),a("moveEnd",o.index)},m=w(()=>s.value?is:nf),b=w(()=>s.value?no:Fa);return(k,y)=>(x(),B("div",{class:T([i(n).b()]),style:Ke(r.value)},[e.startCollapsible?(x(),B("div",{key:0,class:T([i(n).e("collapse-icon"),i(n).e(`${e.layout}-collapse-icon-start`)]),onClick:y[0]||(y[0]=S=>a("collapse",e.index,"start"))},[ee(k.$slots,"start-collapsible",{},()=>[(x(),ae(it(m.value),{style:{width:"12px",height:"12px"}}))])],2)):te("v-if",!0),z("div",{class:T([i(n).e("dragger"),u.value,i(n).is("disabled",!e.resizable),i(n).is("lazy",e.resizable&&e.lazy)]),style:Ke(l.value),onMousedown:d,onTouchstart:f},null,38),e.endCollapsible?(x(),B("div",{key:1,class:T([i(n).e("collapse-icon"),i(n).e(`${e.layout}-collapse-icon-end`)]),onClick:y[1]||(y[1]=S=>a("collapse",e.index,"end"))},[ee(k.$slots,"end-collapsible",{},()=>[(x(),ae(it(b.value),{style:{width:"12px",height:"12px"}}))])],2)):te("v-if",!0)],6))}}),xJ=EJ;const tw="ElSplitterPanel";var TJ=se({name:tw,__name:"split-panel",props:mJ,emits:gJ,setup(e,{expose:t,emit:n}){const o=fe("splitter-panel"),a=e,s=n,r=_e(ux);r||nn(tw,"usage: ");const{panels:l,layout:u,lazy:c,containerSize:d,pxSizes:f}=Mn(r),{registerPanel:v,unregisterPanel:g,onCollapse:p,onMoveEnd:h,onMoveStart:m,onMoving:b}=r,k=M(),y=ft(),S=y.uid,C=M(0),E=w(()=>l.value[C.value]),$=I=>{C.value=I},O=w(()=>E.value?f.value[C.value]??0:0),N=w(()=>E.value?f.value[C.value+1]??0:0),R=w(()=>E.value?l.value[C.value+1]:null),A=w(()=>R.value?a.resizable&&R.value?.resizable&&(O.value!==0||!a.min)&&(N.value!==0||!R.value.min):!1),_=w(()=>E.value?C.value!==l.value.length-1:!1),V=w(()=>ew(E.value,O.value,R.value,N.value)),H=w(()=>ew(R.value,N.value,E.value,O.value));function U(I){return og(I)?tg(I)*d.value||0:ag(I)?ng(I):I??0}let W=!1;le(()=>a.size,()=>{if(!W&&E.value){if(!d.value){E.value.size=a.size;return}const I=U(a.size),L=U(a.max),D=U(a.min),F=Math.min(Math.max(I,D||0),L||I);F!==I&&s("update:size",F),E.value.size=F}}),le(()=>E.value?.size,I=>{I!==a.size&&(W=!0,s("update:size",I),Re(()=>W=!1))}),le(()=>a.resizable,I=>{E.value&&(E.value.resizable=I)});const P=At({uid:S,getVnode:()=>y.vnode,setIndex:$,...a,collapsible:w(()=>kJ(a.collapsible))});return v(P),Bt(()=>g(P)),t({splitterPanelRef:k}),(I,L)=>(x(),B(Fe,null,[z("div",dt({ref_key:"panelEl",ref:k,class:[i(o).b()],style:{flexBasis:`${O.value}px`}},I.$attrs),[ee(I.$slots,"default")],16),_.value?(x(),ae(xJ,{key:0,index:C.value,layout:i(u),lazy:i(c),resizable:A.value,"start-collapsible":V.value,"end-collapsible":H.value,onMoveStart:i(m),onMoving:i(b),onMoveEnd:i(h),onCollapse:i(p)},{"start-collapsible":J(()=>[ee(I.$slots,"start-collapsible")]),"end-collapsible":J(()=>[ee(I.$slots,"end-collapsible")]),_:3},8,["index","layout","lazy","resizable","start-collapsible","end-collapsible","onMoveStart","onMoving","onMoveEnd","onCollapse"])):te("v-if",!0)],64))}}),cx=TJ;const $J=rt(CJ,{SplitPanel:cx}),OJ=on(cx),xo="ElInfiniteScroll",RJ=50,NJ=200,IJ=0,PJ={delay:{type:Number,default:NJ},distance:{type:Number,default:IJ},disabled:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0}},sg=(e,t)=>Object.entries(PJ).reduce((n,[o,a])=>{const{type:s,default:r}=a,l=e.getAttribute(`infinite-scroll-${o}`);let u=t[l]??l??r;return u=u==="false"?!1:u,u=s(u),n[o]=Number.isNaN(u)?r:u,n},{}),dx=e=>{const{observer:t}=e[xo];t&&(t.disconnect(),delete e[xo].observer)},MJ=(e,t)=>{const{container:n,containerEl:o,instance:a,observer:s,lastScrollTop:r}=e[xo],{disabled:l,distance:u}=sg(e,a),{clientHeight:c,scrollHeight:d,scrollTop:f}=o,v=f-r;if(e[xo].lastScrollTop=f,s||l||v<0)return;let g=!1;if(n===e)g=d-(c+f)<=u;else{const{clientTop:p,scrollHeight:h}=e,m=gh(e,o);g=f+c>=m+p+h-u}g&&t.call(a)};function mp(e,t){const{containerEl:n,instance:o}=e[xo],{disabled:a}=sg(e,o);a||n.clientHeight===0||(n.scrollHeight<=n.clientHeight?t.call(o):dx(e))}const _J={async mounted(e,t){const{instance:n,value:o}=t;Ta({scope:xo,from:"the directive v-infinite-scroll",replacement:"the el-scrollbar infinite scroll",version:"3.0.0",ref:"https://element-plus.org/en-US/component/scrollbar#infinite-scroll"},!0),Ve(o)||nn(xo,"'v-infinite-scroll' binding value must be a function"),await Re();const{delay:a,immediate:s}=sg(e,n),r=Vv(e,!0),l=r===window?document.documentElement:r,u=Rs(MJ.bind(null,e,o),a);if(r){if(e[xo]={instance:n,container:r,containerEl:l,delay:a,cb:o,onScroll:u,lastScrollTop:l.scrollTop},s){const c=new MutationObserver(Rs(mp.bind(null,e,o),RJ));e[xo].observer=c,c.observe(e,{childList:!0,subtree:!0}),mp(e,o)}r.addEventListener("scroll",u)}},unmounted(e){if(!e[xo])return;const{container:t,onScroll:n}=e[xo];t?.removeEventListener("scroll",n),dx(e)},async updated(e){if(!e[xo])await Re();else{const{containerEl:t,cb:n,observer:o}=e[xo];t.clientHeight&&o&&mp(e,n)}}},Vh=_J;Vh.install=e=>{e.directive("InfiniteScroll",Vh)};const AJ=Vh;function LJ(e,t){let n;const o=M(!1),a=At({...e,originalPosition:"",originalOverflow:"",visible:!1});function s(v){a.text=v}function r(){const v=a.parent,g=f.ns;if(!v.vLoadingAddClassList){let p=v.getAttribute("loading-number");p=Number.parseInt(p)-1,p?v.setAttribute("loading-number",p.toString()):(to(v,g.bm("parent","relative")),v.removeAttribute("loading-number")),to(v,g.bm("parent","hidden"))}l(),d.unmount()}function l(){f.$el?.parentNode?.removeChild(f.$el)}function u(){e.beforeClose&&!e.beforeClose()||(o.value=!0,clearTimeout(n),n=setTimeout(c,400),a.visible=!1,e.closed?.())}function c(){if(!o.value)return;const v=a.parent;o.value=!1,v.vLoadingAddClassList=void 0,r()}const d=fO(se({name:"ElLoading",setup(v,{expose:g}){const{ns:p,zIndex:h}=rf("loading");return g({ns:p,zIndex:h}),()=>{const m=a.spinner||a.svg,b=Ye("svg",{class:"circular",viewBox:a.svgViewBox?a.svgViewBox:"0 0 50 50",...m?{innerHTML:m}:{}},[Ye("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),k=a.text?Ye("p",{class:p.b("text")},[a.text]):void 0;return Ye(Vn,{name:p.b("fade"),onAfterLeave:c},{default:J(()=>[ut(Y("div",{style:{backgroundColor:a.background||""},class:[p.b("mask"),a.customClass,p.is("fullscreen",a.fullscreen)]},[Ye("div",{class:p.b("spinner")},[b,k])]),[[Pt,a.visible]])])})}}}));Object.assign(d._context,t??{});const f=d.mount(document.createElement("div"));return{...Mn(a),setText:s,removeElLoadingChild:l,close:u,handleAfterLeave:c,vm:f,get $el(){return f.$el}}}let oc;const rl=function(e={},t){if(!Mt)return;const n=DJ(e);if(n.fullscreen&&oc)return oc;const o=LJ({...n,closed:()=>{n.closed?.(),n.fullscreen&&(oc=void 0)}},t??rl._context);BJ(n,n.parent,o),nw(n,n.parent,o),n.parent.vLoadingAddClassList=()=>nw(n,n.parent,o);let a=n.parent.getAttribute("loading-number");return a?a=`${Number.parseInt(a)+1}`:a="1",n.parent.setAttribute("loading-number",a),n.parent.appendChild(o.$el),Re(()=>o.visible.value=n.visible),n.fullscreen&&(oc=o),o},DJ=e=>{let t;return Le(e.target)?t=document.querySelector(e.target)??document.body:t=e.target||document.body,{parent:t===document.body||e.body?document.body:t,background:e.background||"",svg:e.svg||"",svgViewBox:e.svgViewBox||"",spinner:e.spinner||!1,text:e.text||"",fullscreen:t===document.body&&(e.fullscreen??!0),lock:e.lock??!1,customClass:e.customClass||"",visible:e.visible??!0,beforeClose:e.beforeClose,closed:e.closed,target:t}},BJ=async(e,t,n)=>{const{nextZIndex:o}=n.vm.zIndex||n.vm._.exposed.zIndex,a={};if(e.fullscreen)n.originalPosition.value=Ya(document.body,"position"),n.originalOverflow.value=Ya(document.body,"overflow"),a.zIndex=o();else if(e.parent===document.body){n.originalPosition.value=Ya(document.body,"position"),await Re();for(const s of["top","left"]){const r=s==="top"?"scrollTop":"scrollLeft";a[s]=`${e.target.getBoundingClientRect()[s]+document.body[r]+document.documentElement[r]-Number.parseInt(Ya(document.body,`margin-${s}`),10)}px`}for(const s of["height","width"])a[s]=`${e.target.getBoundingClientRect()[s]}px`}else n.originalPosition.value=Ya(t,"position");for(const[s,r]of Object.entries(a))n.$el.style[s]=r},nw=(e,t,n)=>{const o=n.vm.ns||n.vm._.exposed.ns;["absolute","fixed","sticky"].includes(n.originalPosition.value)?to(t,o.bm("parent","relative")):Do(t,o.bm("parent","relative")),e.fullscreen&&e.lock?Do(t,o.bm("parent","hidden")):to(t,o.bm("parent","hidden"))};rl._context=null;const Ql=Symbol("ElLoading"),Zs=e=>`element-loading-${cs(e)}`,ow=(e,t)=>{const n=t.instance,o=c=>at(t.value)?t.value[c]:void 0,a=c=>M(Le(c)&&n?.[c]||c),s=c=>a(o(c)||e.getAttribute(Zs(c))),r=o("fullscreen")??t.modifiers.fullscreen,l={text:s("text"),svg:s("svg"),svgViewBox:s("svgViewBox"),spinner:s("spinner"),background:s("background"),customClass:s("customClass"),fullscreen:r,target:o("target")??(r?void 0:e),body:o("body")??t.modifiers.body,lock:o("lock")??t.modifiers.lock},u=rl(l);u._context=vi._context,e[Ql]={options:l,instance:u}},FJ=(e,t)=>{for(const n of Object.keys(e))Jt(e[n])&&(e[n].value=t[n])},vi={mounted(e,t){t.value&&ow(e,t)},updated(e,t){const n=e[Ql];if(!t.value){n?.instance.close(),e[Ql]=null;return}n?FJ(n.options,at(t.value)?t.value:{text:e.getAttribute(Zs("text")),svg:e.getAttribute(Zs("svg")),svgViewBox:e.getAttribute(Zs("svgViewBox")),spinner:e.getAttribute(Zs("spinner")),background:e.getAttribute(Zs("background")),customClass:e.getAttribute(Zs("customClass"))}):ow(e,t)},unmounted(e){e[Ql]?.instance.close(),e[Ql]=null}};vi._context=null;const VJ={install(e){rl._context=e._context,vi._context=e._context,e.directive("loading",vi),e.config.globalProperties.$loading=rl},directive:vi,service:rl},fx=["primary","success","info","warning","error"],px=["top","top-left","top-right","bottom","bottom-left","bottom-right"],ll="top",Un=rn({customClass:"",dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",plain:!1,offset:16,placement:void 0,zIndex:0,grouping:!1,repeatNum:1,appendTo:Mt?document.body:void 0}),zJ=Ce({customClass:{type:String,default:Un.customClass},dangerouslyUseHTMLString:{type:Boolean,default:Un.dangerouslyUseHTMLString},duration:{type:Number,default:Un.duration},icon:{type:Kt,default:Un.icon},id:{type:String,default:Un.id},message:{type:G([String,Object,Function]),default:Un.message},onClose:{type:G(Function),default:Un.onClose},showClose:{type:Boolean,default:Un.showClose},type:{type:String,values:fx,default:Un.type},plain:{type:Boolean,default:Un.plain},offset:{type:Number,default:Un.offset},placement:{type:String,values:px,default:Un.placement},zIndex:{type:Number,default:Un.zIndex},grouping:{type:Boolean,default:Un.grouping},repeatNum:{type:Number,default:Un.repeatNum}}),HJ={destroy:()=>!0},Jo=nv({}),KJ=e=>(Jo[e]||(Jo[e]=nv([])),Jo[e]),WJ=(e,t)=>{const n=Jo[t]||[],o=n.findIndex(r=>r.id===e),a=n[o];let s;return o>0&&(s=n[o-1]),{current:a,prev:s}},jJ=(e,t)=>{const{prev:n}=WJ(e,t);return n?n.vm.exposed.bottom.value:0},UJ=(e,t,n)=>(Jo[n]||[]).findIndex(o=>o.id===e)>0?16:t,qJ=["id"],YJ=["innerHTML"];var GJ=se({name:"ElMessage",__name:"message",props:zJ,emits:HJ,setup(e,{expose:t,emit:n}){const{Close:o}=sm,a=e,s=n,r=M(!1),{ns:l,zIndex:u}=rf("message"),{currentZIndex:c,nextZIndex:d}=u,f=M(),v=M(!1),g=M(0);let p;const h=w(()=>a.type?a.type==="error"?"danger":a.type:"info"),m=w(()=>{const V=a.type;return{[l.bm("icon",V)]:V&&Vs[V]}}),b=w(()=>a.icon||Vs[a.type]||""),k=w(()=>a.placement||ll),y=w(()=>jJ(a.id,k.value)),S=w(()=>UJ(a.id,a.offset,k.value)+y.value),C=w(()=>g.value+S.value),E=w(()=>k.value.includes("left")?l.is("left"):k.value.includes("right")?l.is("right"):l.is("center")),$=w(()=>k.value.startsWith("top")?"top":"bottom"),O=w(()=>({[$.value]:`${S.value}px`,zIndex:c.value}));function N(){a.duration!==0&&({stop:p}=pl(()=>{A()},a.duration))}function R(){p?.()}function A(){v.value=!1,Re(()=>{r.value||(a.onClose?.(),s("destroy"))})}function _(V){jt(V)===we.esc&&A()}return ht(()=>{N(),d(),v.value=!0}),le(()=>a.repeatNum,()=>{R(),N()}),Ft(document,"keydown",_),en(f,()=>{g.value=f.value.getBoundingClientRect().height}),t({visible:v,bottom:C,close:A}),(V,H)=>(x(),ae(Vn,{name:i(l).b("fade"),onBeforeEnter:H[0]||(H[0]=U=>r.value=!0),onBeforeLeave:e.onClose,onAfterLeave:H[1]||(H[1]=U=>V.$emit("destroy")),persisted:""},{default:J(()=>[ut(z("div",{id:e.id,ref_key:"messageRef",ref:f,class:T([i(l).b(),{[i(l).m(e.type)]:e.type},i(l).is("closable",e.showClose),i(l).is("plain",e.plain),i(l).is("bottom",$.value==="bottom"),E.value,e.customClass]),style:Ke(O.value),role:"alert",onMouseenter:R,onMouseleave:N},[e.repeatNum>1?(x(),ae(i(uk),{key:0,value:e.repeatNum,type:h.value,class:T(i(l).e("badge"))},null,8,["value","type","class"])):te("v-if",!0),b.value?(x(),ae(i(De),{key:1,class:T([i(l).e("icon"),m.value])},{default:J(()=>[(x(),ae(it(b.value)))]),_:1},8,["class"])):te("v-if",!0),ee(V.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(x(),B(Fe,{key:1},[te(" Caution here, message could've been compromised, never use user's input as message "),z("p",{class:T(i(l).e("content")),innerHTML:e.message},null,10,YJ)],2112)):(x(),B("p",{key:0,class:T(i(l).e("content"))},Se(e.message),3))]),e.showClose?(x(),ae(i(De),{key:2,class:T(i(l).e("closeBtn")),onClick:Xe(A,["stop"])},{default:J(()=>[Y(i(o))]),_:1},8,["class"])):te("v-if",!0)],46,qJ),[[Pt,v.value]])]),_:3},8,["name","onBeforeLeave"]))}}),XJ=GJ;let JJ=1;const ZJ=e=>{if(!e.appendTo)e.appendTo=document.body;else if(Le(e.appendTo)){let t=document.querySelector(e.appendTo);vo(t)||(pt("ElMessage","the appendTo option is not an HTMLElement. Falling back to document.body."),t=document.body),e.appendTo=t}},QJ=e=>{!e.placement&&Le(Gn.placement)&&Gn.placement&&(e.placement=Gn.placement),e.placement||(e.placement=ll),px.includes(e.placement)||(pt("ElMessage",`Invalid placement: ${e.placement}. Falling back to '${ll}'.`),e.placement=ll)},hx=e=>{const t=!e||Le(e)||Ut(e)||Ve(e)?{message:e}:e,n={...Un,...t};return ZJ(n),QJ(n),Ht(Gn.grouping)&&!n.grouping&&(n.grouping=Gn.grouping),He(Gn.duration)&&n.duration===3e3&&(n.duration=Gn.duration),He(Gn.offset)&&n.offset===16&&(n.offset=Gn.offset),Ht(Gn.showClose)&&!n.showClose&&(n.showClose=Gn.showClose),Ht(Gn.plain)&&!n.plain&&(n.plain=Gn.plain),n},eZ=e=>{const t=Jo[e.props.placement||ll],n=t.indexOf(e);if(n===-1)return;t.splice(n,1);const{handler:o}=e;o.close()},tZ=({appendTo:e,...t},n)=>{const o=`message_${JJ++}`,a=t.onClose,s=document.createElement("div"),r={...t,id:o,onClose:()=>{a?.(),eZ(c)},onDestroy:()=>{Ls(null,s)}},l=Y(XJ,r,Ve(r.message)||Ut(r.message)?{default:Ve(r.message)?r.message:()=>r.message}:null);l.appContext=n||xr._context,Ls(l,s),e.appendChild(s.firstElementChild);const u=l.component,c={id:o,vnode:l,vm:u,handler:{close:()=>{u.exposed.close()}},props:l.component.props};return c},xr=(e={},t)=>{if(!Mt)return{close:()=>{}};const n=hx(e),o=KJ(n.placement||ll);if(n.grouping&&o.length){const s=o.find(({vnode:r})=>r.props?.message===n.message);if(s)return s.props.repeatNum+=1,s.props.type=n.type,s.handler}if(He(Gn.max)&&o.length>=Gn.max)return{close:()=>{}};const a=tZ(n,t);return o.push(a),a.handler};fx.forEach(e=>{xr[e]=(t={},n)=>xr({...hx(t),type:e},n)});function nZ(e){for(const t in Jo)if(Nt(Jo,t)){const n=[...Jo[t]];for(const o of n)(!e||e===o.props.type)&&o.handler.close()}}function oZ(e){Jo[e]&&[...Jo[e]].forEach(t=>t.handler.close())}xr.closeAll=nZ;xr.closeAllByPlacement=oZ;xr._context=null;const zh=BC(xr,"$message");var aZ=se({name:"ElMessageBox",directives:{TrapFocus:x8},components:{ElButton:In,ElFocusTrap:Al,ElInput:eo,ElOverlay:Om,ElIcon:De,...sm},inheritAttrs:!1,props:{buttonSize:{type:String,validator:vE},modal:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},closeOnHashChange:{type:Boolean,default:!0},center:Boolean,draggable:Boolean,overflow:Boolean,roundButton:Boolean,container:{type:String,default:"body"},boxType:{type:String,default:""}},emits:["vanish","action"],setup(e,{emit:t}){const{locale:n,zIndex:o,ns:a,size:s}=rf("message-box",w(()=>e.buttonSize)),{t:r}=n,{nextZIndex:l}=o,u=M(!1),c=At({autofocus:!0,beforeClose:null,callback:null,cancelButtonText:"",cancelButtonClass:"",confirmButtonText:"",confirmButtonClass:"",cancelButtonType:"",confirmButtonType:"primary",customClass:"",customStyle:{},dangerouslyUseHTMLString:!1,distinguishCancelAndClose:!1,icon:"",closeIcon:"",inputPattern:null,inputPlaceholder:"",inputType:"text",inputValue:"",inputValidator:void 0,inputErrorMessage:"",message:"",modalFade:!0,modalClass:"",showCancelButton:!1,showConfirmButton:!0,type:"",title:void 0,showInput:!1,action:"",confirmButtonLoading:!1,cancelButtonLoading:!1,confirmButtonLoadingIcon:xa(Aa),cancelButtonLoadingIcon:xa(Aa),confirmButtonDisabled:!1,editorErrorMessage:"",validateError:!1,zIndex:l()}),d=w(()=>{const U=c.type;return{[a.bm("icon",U)]:U&&Vs[U]}}),f=zn(),v=zn(),g=w(()=>{const U=c.type;return c.icon||U&&Vs[U]||""}),p=w(()=>!!c.message),h=M(),m=M(),b=M(),k=M(),y=M(),S=w(()=>c.confirmButtonClass);le(()=>c.inputValue,async U=>{await Re(),e.boxType==="prompt"&&U&&A()},{immediate:!0}),le(()=>u.value,U=>{U&&(e.boxType!=="prompt"&&(c.autofocus?b.value=y.value?.$el??h.value:b.value=h.value),c.zIndex=l()),e.boxType==="prompt"&&(U?Re().then(()=>{k.value&&k.value.$el&&(c.autofocus?b.value=_()??h.value:b.value=h.value)}):(c.editorErrorMessage="",c.validateError=!1))});const{isDragging:C}=eC(h,m,w(()=>e.draggable),w(()=>e.overflow));ht(async()=>{await Re(),e.closeOnHashChange&&window.addEventListener("hashchange",E)}),Bt(()=>{e.closeOnHashChange&&window.removeEventListener("hashchange",E)});function E(){u.value&&(u.value=!1,Re(()=>{c.action&&t("action",c.action)}))}const $=()=>{e.closeOnClickModal&&R(c.distinguishCancelAndClose?"close":"cancel")},O=Xv($),N=U=>{if(c.inputType!=="textarea"&&!k.value?.isComposing)return U.preventDefault(),R("confirm")},R=U=>{e.boxType==="prompt"&&U==="confirm"&&!A()||(c.action=U,c.beforeClose?c.beforeClose?.(U,c,E):E())},A=()=>{if(e.boxType==="prompt"){const U=c.inputPattern;if(U&&!U.test(c.inputValue||""))return c.editorErrorMessage=c.inputErrorMessage||r("el.messagebox.error"),c.validateError=!0,!1;const W=c.inputValidator;if(Ve(W)){const P=W(c.inputValue);if(P===!1)return c.editorErrorMessage=c.inputErrorMessage||r("el.messagebox.error"),c.validateError=!0,!1;if(Le(P))return c.editorErrorMessage=P,c.validateError=!0,!1}}return c.editorErrorMessage="",c.validateError=!1,!0},_=()=>{const U=k.value?.$refs;return U?.input??U?.textarea},V=()=>{R("close")},H=()=>{e.closeOnPressEscape&&V()};return e.lockScroll&&Gd(u,{ns:a}),{...Mn(c),ns:a,overlayEvent:O,visible:u,hasMessage:p,typeClass:d,contentId:f,inputId:v,btnSize:s,iconComponent:g,confirmButtonClasses:S,rootRef:h,focusStartRef:b,headerRef:m,inputRef:k,isDragging:C,confirmRef:y,doClose:E,handleClose:V,onCloseRequested:H,handleWrapperClick:$,handleInputEnter:N,handleAction:R,t:r}}});const sZ=["aria-label","aria-describedby"],rZ=["aria-label"],lZ=["id"];function iZ(e,t,n,o,a,s){const r=It("el-icon"),l=It("el-input"),u=It("el-button"),c=It("el-focus-trap"),d=It("el-overlay");return x(),ae(Vn,{name:"fade-in-linear",onAfterLeave:t[11]||(t[11]=f=>e.$emit("vanish")),persisted:""},{default:J(()=>[ut(Y(d,{"z-index":e.zIndex,"overlay-class":[e.ns.is("message-box"),e.modalClass],mask:e.modal},{default:J(()=>[z("div",{role:"dialog","aria-label":e.title,"aria-modal":"true","aria-describedby":e.showInput?void 0:e.contentId,class:T(`${e.ns.namespace.value}-overlay-message-box`),onClick:t[8]||(t[8]=(...f)=>e.overlayEvent.onClick&&e.overlayEvent.onClick(...f)),onMousedown:t[9]||(t[9]=(...f)=>e.overlayEvent.onMousedown&&e.overlayEvent.onMousedown(...f)),onMouseup:t[10]||(t[10]=(...f)=>e.overlayEvent.onMouseup&&e.overlayEvent.onMouseup(...f))},[Y(c,{loop:"",trapped:e.visible,"focus-trap-el":e.rootRef,"focus-start-el":e.focusStartRef,onReleaseRequested:e.onCloseRequested},{default:J(()=>[z("div",{ref:"rootRef",class:T([e.ns.b(),e.customClass,e.ns.is("draggable",e.draggable),e.ns.is("dragging",e.isDragging),{[e.ns.m("center")]:e.center}]),style:Ke(e.customStyle),tabindex:"-1",onClick:t[7]||(t[7]=Xe(()=>{},["stop"]))},[e.title!==null&&e.title!==void 0?(x(),B("div",{key:0,ref:"headerRef",class:T([e.ns.e("header"),{"show-close":e.showClose}])},[z("div",{class:T(e.ns.e("title"))},[e.iconComponent&&e.center?(x(),ae(r,{key:0,class:T([e.ns.e("status"),e.typeClass])},{default:J(()=>[(x(),ae(it(e.iconComponent)))]),_:1},8,["class"])):te("v-if",!0),z("span",null,Se(e.title),1)],2),e.showClose?(x(),B("button",{key:0,type:"button",class:T(e.ns.e("headerbtn")),"aria-label":e.t("el.messagebox.close"),onClick:t[0]||(t[0]=f=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel")),onKeydown:t[1]||(t[1]=an(Xe(f=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel"),["prevent"]),["enter"]))},[Y(r,{class:T(e.ns.e("close"))},{default:J(()=>[(x(),ae(it(e.closeIcon||"close")))]),_:1},8,["class"])],42,rZ)):te("v-if",!0)],2)):te("v-if",!0),z("div",{id:e.contentId,class:T(e.ns.e("content"))},[z("div",{class:T(e.ns.e("container"))},[e.iconComponent&&!e.center&&e.hasMessage?(x(),ae(r,{key:0,class:T([e.ns.e("status"),e.typeClass])},{default:J(()=>[(x(),ae(it(e.iconComponent)))]),_:1},8,["class"])):te("v-if",!0),e.hasMessage?(x(),B("div",{key:1,class:T(e.ns.e("message"))},[ee(e.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(x(),ae(it(e.showInput?"label":"p"),{key:1,for:e.showInput?e.inputId:void 0,innerHTML:e.message},null,8,["for","innerHTML"])):(x(),ae(it(e.showInput?"label":"p"),{key:0,for:e.showInput?e.inputId:void 0,textContent:Se(e.message)},null,8,["for","textContent"]))])],2)):te("v-if",!0)],2),ut(z("div",{class:T(e.ns.e("input"))},[Y(l,{id:e.inputId,ref:"inputRef",modelValue:e.inputValue,"onUpdate:modelValue":t[2]||(t[2]=f=>e.inputValue=f),type:e.inputType,placeholder:e.inputPlaceholder,"aria-invalid":e.validateError,class:T({invalid:e.validateError}),onKeydown:an(e.handleInputEnter,["enter"])},null,8,["id","modelValue","type","placeholder","aria-invalid","class","onKeydown"]),z("div",{class:T(e.ns.e("errormsg")),style:Ke({visibility:e.editorErrorMessage?"visible":"hidden"})},Se(e.editorErrorMessage),7)],2),[[Pt,e.showInput]])],10,lZ),z("div",{class:T(e.ns.e("btns"))},[e.showCancelButton?(x(),ae(u,{key:0,type:e.cancelButtonType==="text"?"":e.cancelButtonType,text:e.cancelButtonType==="text",loading:e.cancelButtonLoading,"loading-icon":e.cancelButtonLoadingIcon,class:T([e.cancelButtonClass]),round:e.roundButton,size:e.btnSize,onClick:t[3]||(t[3]=f=>e.handleAction("cancel")),onKeydown:t[4]||(t[4]=an(Xe(f=>e.handleAction("cancel"),["prevent"]),["enter"]))},{default:J(()=>[wt(Se(e.cancelButtonText||e.t("el.messagebox.cancel")),1)]),_:1},8,["type","text","loading","loading-icon","class","round","size"])):te("v-if",!0),ut(Y(u,{ref:"confirmRef",type:e.confirmButtonType==="text"?"":e.confirmButtonType,text:e.confirmButtonType==="text",loading:e.confirmButtonLoading,"loading-icon":e.confirmButtonLoadingIcon,class:T([e.confirmButtonClasses]),round:e.roundButton,disabled:e.confirmButtonDisabled,size:e.btnSize,onClick:t[5]||(t[5]=f=>e.handleAction("confirm")),onKeydown:t[6]||(t[6]=an(Xe(f=>e.handleAction("confirm"),["prevent"]),["enter"]))},{default:J(()=>[wt(Se(e.confirmButtonText||e.t("el.messagebox.confirm")),1)]),_:1},8,["type","text","loading","loading-icon","class","round","disabled","size"]),[[Pt,e.showConfirmButton]])],2)],6)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])],42,sZ)]),_:3},8,["z-index","overlay-class","mask"]),[[Pt,e.visible]])]),_:3})}var uZ=$n(aZ,[["render",iZ]]);const ji=new Map,cZ=e=>{let t=document.body;return e.appendTo&&(Le(e.appendTo)&&(t=document.querySelector(e.appendTo)),vo(e.appendTo)&&(t=e.appendTo),vo(t)||(pt("ElMessageBox","the appendTo option is not an HTMLElement. Falling back to document.body."),t=document.body)),t},dZ=(e,t,n=null)=>{const o=Y(uZ,e,Ve(e.message)||Ut(e.message)?{default:Ve(e.message)?e.message:()=>e.message}:null);return o.appContext=n,Ls(o,t),cZ(e).appendChild(t.firstElementChild),o.component},fZ=()=>document.createElement("div"),pZ=(e,t)=>{const n=fZ();e.onVanish=()=>{Ls(null,n),ji.delete(a)},e.onAction=s=>{const r=ji.get(a);let l;e.showInput?l={value:a.inputValue,action:s}:l=s,e.callback?e.callback(l,o.proxy):s==="cancel"||s==="close"?e.distinguishCancelAndClose&&s!=="cancel"?r.reject("close"):r.reject("cancel"):r.resolve(l)};const o=dZ(e,n,t),a=o.proxy;for(const s in e)Nt(e,s)&&!Nt(a.$props,s)&&(s==="closeIcon"&&at(e[s])?a[s]=xa(e[s]):a[s]=e[s]);return a.visible=!0,a};function Dl(e,t=null){if(!Mt)return Promise.reject();let n;return Le(e)||Ut(e)?e={message:e}:n=e.callback,new Promise((o,a)=>{const s=pZ(e,t??Dl._context);ji.set(s,{options:e,callback:n,resolve:o,reject:a})})}const hZ=["alert","confirm","prompt"],vZ={alert:{closeOnPressEscape:!1,closeOnClickModal:!1},confirm:{showCancelButton:!0},prompt:{showCancelButton:!0,showInput:!0}};hZ.forEach(e=>{Dl[e]=mZ(e)});function mZ(e){return(t,n,o,a)=>{let s="";return at(n)?(o=n,s=""):Tt(n)?s="":s=n,Dl(Object.assign({title:s,message:t,type:"",...vZ[e]},o,{boxType:e}),a)}}Dl.close=()=>{ji.forEach((e,t)=>{t.doClose()}),ji.clear()};Dl._context=null;const Es=Dl;Es.install=e=>{Es._context=e._context,e.config.globalProperties.$msgbox=Es,e.config.globalProperties.$messageBox=Es,e.config.globalProperties.$alert=Es.alert,e.config.globalProperties.$confirm=Es.confirm,e.config.globalProperties.$prompt=Es.prompt};const gZ=Es,vx=["primary","success","info","warning","error"],bZ=Ce({customClass:{type:String,default:""},dangerouslyUseHTMLString:Boolean,duration:{type:Number,default:4500},icon:{type:Kt},id:{type:String,default:""},message:{type:G([String,Object,Function]),default:""},offset:{type:Number,default:0},onClick:{type:G(Function),default:()=>{}},onClose:{type:G(Function),required:!0},position:{type:String,values:["top-right","top-left","bottom-right","bottom-left"],default:"top-right"},showClose:{type:Boolean,default:!0},title:{type:String,default:""},type:{type:String,values:[...vx,""],default:""},zIndex:Number,closeIcon:{type:Kt,default:Ko}}),yZ={destroy:()=>!0},wZ=["id"],SZ=["textContent"],CZ={key:0},kZ=["innerHTML"];var EZ=se({name:"ElNotification",__name:"notification",props:bZ,emits:yZ,setup(e,{expose:t}){const n=e,{ns:o,zIndex:a}=rf("notification"),{nextZIndex:s,currentZIndex:r}=a,l=M(!1);let u;const c=w(()=>{const k=n.type;return k&&Vs[n.type]?o.m(k):""}),d=w(()=>n.type&&Vs[n.type]||n.icon),f=w(()=>n.position.endsWith("right")?"right":"left"),v=w(()=>n.position.startsWith("top")?"top":"bottom"),g=w(()=>({[v.value]:`${n.offset}px`,zIndex:n.zIndex??r.value}));function p(){n.duration>0&&({stop:u}=pl(()=>{l.value&&m()},n.duration))}function h(){u?.()}function m(){l.value=!1}function b(k){switch(jt(k)){case we.delete:case we.backspace:h();break;case we.esc:l.value&&m();break;default:p();break}}return ht(()=>{p(),s(),l.value=!0}),Ft(document,"keydown",b),t({visible:l,close:m}),(k,y)=>(x(),ae(Vn,{name:i(o).b("fade"),onBeforeLeave:e.onClose,onAfterLeave:y[1]||(y[1]=S=>k.$emit("destroy")),persisted:""},{default:J(()=>[ut(z("div",{id:e.id,class:T([i(o).b(),e.customClass,f.value]),style:Ke(g.value),role:"alert",onMouseenter:h,onMouseleave:p,onClick:y[0]||(y[0]=(...S)=>e.onClick&&e.onClick(...S))},[d.value?(x(),ae(i(De),{key:0,class:T([i(o).e("icon"),c.value])},{default:J(()=>[(x(),ae(it(d.value)))]),_:1},8,["class"])):te("v-if",!0),z("div",{class:T(i(o).e("group"))},[z("h2",{class:T(i(o).e("title")),textContent:Se(e.title)},null,10,SZ),ut(z("div",{class:T(i(o).e("content")),style:Ke(e.title?void 0:{margin:0})},[ee(k.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(x(),B(Fe,{key:1},[te(" Caution here, message could've been compromised, never use user's input as message "),z("p",{innerHTML:e.message},null,8,kZ)],2112)):(x(),B("p",CZ,Se(e.message),1))])],6),[[Pt,e.message]]),e.showClose?(x(),ae(i(De),{key:0,class:T(i(o).e("closeBtn")),onClick:Xe(m,["stop"])},{default:J(()=>[(x(),ae(it(e.closeIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],46,wZ),[[Pt,l.value]])]),_:3},8,["name","onBeforeLeave"]))}}),xZ=EZ;const xl={"top-left":[],"top-right":[],"bottom-left":[],"bottom-right":[]},Cd=16;let TZ=1;const Tr=function(e={},t){if(!Mt)return{close:()=>{}};(Le(e)||Ut(e))&&(e={message:e});const n=e.position||"top-right";let o=e.offset||0;xl[n].forEach(({vm:d})=>{o+=(d.el?.offsetHeight||0)+Cd}),o+=Cd;const a=`notification_${TZ++}`,s=e.onClose,r={...e,offset:o,id:a,onClose:()=>{$Z(a,n,s)}};let l=document.body;vo(e.appendTo)?l=e.appendTo:Le(e.appendTo)&&(l=document.querySelector(e.appendTo)),vo(l)||(pt("ElNotification","the appendTo option is not an HTMLElement. Falling back to document.body."),l=document.body);const u=document.createElement("div"),c=Y(xZ,r,Ve(r.message)?r.message:Ut(r.message)?()=>r.message:null);return c.appContext=Tt(t)?Tr._context:t,c.props.onDestroy=()=>{Ls(null,u)},Ls(c,u),xl[n].push({vm:c}),l.appendChild(u.firstElementChild),{close:()=>{c.component.exposed.visible.value=!1}}};vx.forEach(e=>{Tr[e]=(t={},n)=>((Le(t)||Ut(t))&&(t={message:t}),Tr({...t,type:e},n))});function $Z(e,t,n){const o=xl[t],a=o.findIndex(({vm:c})=>c.component?.props.id===e);if(a===-1)return;const{vm:s}=o[a];if(!s)return;n?.(s);const r=s.el.offsetHeight,l=t.split("-")[0];o.splice(a,1);const u=o.length;if(!(u<1))for(let c=a;c{t.component.exposed.visible.value=!1})}function RZ(e="top-right"){let t=xl[e][0]?.vm.component?.props?.offset||0;for(const{vm:n}of xl[e])n.component.props.offset=t,t+=(n.el?.offsetHeight||0)+Cd}Tr.closeAll=OZ;Tr.updateOffsets=RZ;Tr._context=null;const NZ=BC(Tr,"$notify"),IZ=Ce({trigger:Na.trigger,triggerKeys:Na.triggerKeys,placement:Rc.placement,disabled:Na.disabled,visible:zt.visible,transition:zt.transition,popperOptions:Rc.popperOptions,tabindex:Rc.tabindex,content:zt.content,popperStyle:zt.popperStyle,popperClass:zt.popperClass,enterable:{...zt.enterable,default:!0},effect:{...zt.effect,default:"light"},teleported:zt.teleported,appendTo:zt.appendTo,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),PZ={"update:visible":e=>Ht(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},MZ="onUpdate:visible";var _Z=se({name:"ElPopover",__name:"popover",props:IZ,emits:PZ,setup(e,{expose:t,emit:n}){const o=e,a=n,s=w(()=>o[MZ]),r=fe("popover"),l=M(),u=w(()=>i(l)?.popperRef),c=w(()=>[{width:ln(o.width)},o.popperStyle]),d=w(()=>[r.b(),o.popperClass,{[r.m("plain")]:!!o.content}]),f=w(()=>o.transition===`${r.namespace.value}-fade-in-linear`),v=()=>{l.value?.hide()},g=()=>{a("before-enter")},p=()=>{a("before-leave")},h=()=>{a("after-enter")},m=()=>{a("update:visible",!1),a("after-leave")};return t({popperRef:u,hide:v}),(b,k)=>(x(),ae(i(Ln),dt({ref_key:"tooltipRef",ref:l},b.$attrs,{trigger:e.trigger,"trigger-keys":e.triggerKeys,placement:e.placement,disabled:e.disabled,visible:e.visible,transition:e.transition,"popper-options":e.popperOptions,tabindex:e.tabindex,content:e.content,offset:e.offset,"show-after":e.showAfter,"hide-after":e.hideAfter,"auto-close":e.autoClose,"show-arrow":e.showArrow,"aria-label":e.title,effect:e.effect,enterable:e.enterable,"popper-class":d.value,"popper-style":c.value,teleported:e.teleported,"append-to":e.appendTo,persistent:e.persistent,"gpu-acceleration":f.value,"onUpdate:visible":s.value,onBeforeShow:g,onBeforeHide:p,onShow:h,onHide:m}),{content:J(()=>[e.title?(x(),B("div",{key:0,class:T(i(r).e("title")),role:"title"},Se(e.title),3)):te("v-if",!0),ee(b.$slots,"default",{hide:v},()=>[wt(Se(e.content),1)])]),default:J(()=>[b.$slots.reference?ee(b.$slots,"reference",{key:0}):te("v-if",!0)]),_:3},16,["trigger","trigger-keys","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","append-to","persistent","gpu-acceleration","onUpdate:visible"]))}}),AZ=_Z;const aw=(e,t)=>{const n=(t.arg||t.value)?.popperRef;n&&(n.triggerRef=e)};var LZ={mounted(e,t){aw(e,t)},updated(e,t){aw(e,t)}};const DZ="popover",mx=L4(LZ,DZ),BZ=rt(AZ,{directive:mx}),FZ="2.13.5",VZ=(e=[])=>({version:FZ,install:(n,o)=>{n[nb]||(n[nb]=!0,e.forEach(a=>n.use(a)),o&&dm(o,n,!0))}});var zZ=[z4,sL,hB,oY,wB,SB,$B,uk,DB,BB,In,mk,zF,jF,rV,lV,t6,n2,r6,ra,kV,ym,m6,I6,P6,uf,h2,rz,WB,pz,hz,vz,mz,gz,g5,S2,T5,$5,R2,N2,eK,zK,HK,KK,F2,oD,aD,De,IW,V2,eo,z2,YW,ej,mj,gj,bj,yj,xj,s9,c9,BZ,ok,q2,t2,AV,_V,x9,R9,p6,aa,Hs,ld,yF,g7,k7,E7,W7,G7,y2,Tz,nU,oU,pU,Sq,Cq,nY,mY,gY,ts,Ym,q8,xY,NY,IY,Ln,WY,Jm,fG,OG,tX,dX,LX,DX,UX,qX,eJ,pJ,$J,OJ],HZ=[AJ,VJ,zh,gZ,NZ,mx],rg=VZ([...zZ,...HZ]);rg.install;rg.version;var fte=rg;const KZ="brand:api-secret",Ui="common",gx=["appearance-patent","similar-asin"];function WZ(){return typeof window>"u"?"0":window.localStorage.getItem("uid")||"0"}function vf(e){return`${KZ}:${WZ()}:${e}`}function sw(e,t){const n=e.getItem(vf(t));if(!n)return null;try{const o=JSON.parse(n);if(typeof o.value!="string")return null;const a=jZ(o.retention),s=typeof o.expiresAt=="number"?o.expiresAt:null,r=typeof o.updatedAt=="number"?o.updatedAt:Date.now();return{value:o.value,retention:a,expiresAt:s,updatedAt:r}}catch{return null}}function jZ(e){switch(e){case"1d":case"7d":case"30d":case"forever":case"session":return e;default:return"session"}}function UZ(e,t){switch(e){case"1d":return t+1440*60*1e3;case"7d":return t+10080*60*1e3;case"30d":return t+720*60*60*1e3;case"forever":return null;default:return null}}function qZ(e){return e.expiresAt!=null&&e.expiresAt<=Date.now()}function qi(e,t){e.removeItem(vf(t))}function rw(e){if(typeof window>"u")return null;const t=sw(window.sessionStorage,e);if(t)return t;const n=sw(window.localStorage,e);return n?qZ(n)?(qi(window.localStorage,e),null):n:null}function bx(){if(!(typeof window>"u"))for(const e of gx)qi(window.sessionStorage,e),qi(window.localStorage,e)}function YZ(e){if(typeof window>"u")return;(e.retention==="session"?window.sessionStorage:window.localStorage).setItem(vf(Ui),JSON.stringify(e)),bx()}function yx(){const e=rw(Ui);if(e)return e;for(const t of gx){const n=rw(t);if(n)return YZ(n),n}return null}function pte(){return yx()?.value||""}function GZ(){const e=yx();return e?{value:e.value,retention:e.retention,expiresAt:e.expiresAt,updatedAt:e.updatedAt,exists:!0}:{value:"",retention:"session",expiresAt:null,updatedAt:null,exists:!1}}function XZ(e,t){if(typeof window>"u")return;const n=e.trim();if(wx(),!n)return;const o=Date.now(),a={value:n,retention:t,expiresAt:UZ(t,o),updatedAt:o};(t==="session"?window.sessionStorage:window.localStorage).setItem(vf(Ui),JSON.stringify(a))}function wx(){typeof window>"u"||(qi(window.sessionStorage,Ui),qi(window.localStorage,Ui),bx())}const JZ={class:"secret-settings-entry"},ZZ={class:"secret-settings-body"},QZ={class:"secret-card"},eQ={class:"secret-card-head"},tQ={class:"retention-block"},nQ={class:"retention-options"},oQ=["value"],aQ={class:"secret-meta"},sQ={key:0},rQ={key:1},lQ={class:"dialog-footer"},iQ=se({__name:"BrandApiSecretSettingsButton",setup(e){const t=M(!1),n=[{value:"session",label:"本次打开有效"},{value:"1d",label:"1 天"},{value:"7d",label:"7 天"},{value:"30d",label:"30 天"},{value:"forever",label:"长期保留"}],o=M(s());function a(){const c=GZ();o.value={value:c.value,retention:c.retention,expiresAt:c.expiresAt,exists:c.exists}}function s(){return{value:"",retention:"session",expiresAt:null,exists:!1}}function r(c,d){if(c==="session")return"关闭软件后自动清空";if(c==="forever")return"长期保留,直到手动清空";if(!d)return"已保存";const f=new Date(d),v=f.getFullYear(),g=String(f.getMonth()+1).padStart(2,"0"),p=String(f.getDate()).padStart(2,"0"),h=String(f.getHours()).padStart(2,"0"),m=String(f.getMinutes()).padStart(2,"0");return`有效期至 ${v}-${g}-${p} ${h}:${m}`}function l(){wx(),a(),zh.success("已清空密钥")}function u(){XZ(o.value.value,o.value.retention),a(),t.value=!1,zh.success("密钥设置已保存")}return le(t,c=>{c&&a()}),a(),(c,d)=>{const f=R2;return x(),B("div",JZ,[z("button",{type:"button",class:"secret-settings-trigger",onClick:d[0]||(d[0]=v=>t.value=!0)},[...d[5]||(d[5]=[z("span",{class:"secret-settings-icon","aria-hidden":"true"},"◎",-1),z("span",null,"密钥设置",-1)])]),Y(f,{modelValue:t.value,"onUpdate:modelValue":d[4]||(d[4]=v=>t.value=v),width:"560px",class:"secret-settings-dialog","append-to-body":!0},{header:J(()=>[...d[6]||(d[6]=[z("div",{class:"dialog-header"},[z("div",{class:"dialog-title"},"密钥设置"),z("div",{class:"dialog-subtitle"},"按当前登录用户保存在本机,外观专利和货源查询共用同一个 Coze 接口密钥。")],-1)])]),footer:J(()=>[z("div",lQ,[z("button",{type:"button",class:"footer-btn footer-btn-ghost",onClick:d[3]||(d[3]=v=>t.value=!1)},"取消"),z("button",{type:"button",class:"footer-btn footer-btn-primary",onClick:u},"保存")])]),default:J(()=>[z("div",ZZ,[z("section",QZ,[z("div",eQ,[d[7]||(d[7]=z("div",null,[z("div",{class:"secret-card-title"},"通用 Coze 密钥"),z("div",{class:"secret-card-desc"},"用于外观专利检测和货源查询。")],-1)),o.value.exists?(x(),B("button",{key:0,type:"button",class:"link-danger",onClick:l}," 清空 ")):te("",!0)]),ut(z("input",{"onUpdate:modelValue":d[1]||(d[1]=v=>o.value.value=v),class:"secret-input",type:"password",placeholder:"请输入 Coze 接口密钥",autocomplete:"off",spellcheck:"false"},null,512),[[mv,o.value.value]]),z("div",tQ,[d[8]||(d[8]=z("div",{class:"retention-label"},"保留时长",-1)),z("div",nQ,[(x(),B(Fe,null,yt(n,v=>z("label",{key:v.value,class:"retention-option"},[ut(z("input",{"onUpdate:modelValue":d[2]||(d[2]=g=>o.value.retention=g),type:"radio",value:v.value},null,8,oQ),[[gv,o.value.retention]]),z("span",null,Se(v.label),1)])),64))])]),z("div",aQ,[o.value.exists?(x(),B("span",sQ,Se(r(o.value.retention,o.value.expiresAt)),1)):(x(),B("span",rQ,"当前未保存"))])])])]),_:1},8,["modelValue"])])}}}),Sx=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n},uQ=Sx(iQ,[["__scopeId","data-v-9851d8df"]]);function Cx(e,t){return function(){return e.apply(t,arguments)}}const{toString:cQ}=Object.prototype,{getPrototypeOf:lg}=Object,{iterator:mf,toStringTag:kx}=Symbol,gf=(e=>t=>{const n=cQ.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),pa=e=>(e=e.toLowerCase(),t=>gf(t)===e),bf=e=>t=>typeof t===e,{isArray:Bl}=Array,Tl=bf("undefined");function xu(e){return e!==null&&!Tl(e)&&e.constructor!==null&&!Tl(e.constructor)&&yo(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Ex=pa("ArrayBuffer");function dQ(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Ex(e.buffer),t}const fQ=bf("string"),yo=bf("function"),xx=bf("number"),Tu=e=>e!==null&&typeof e=="object",pQ=e=>e===!0||e===!1,Lc=e=>{if(gf(e)!=="object")return!1;const t=lg(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(kx in e)&&!(mf in e)},hQ=e=>{if(!Tu(e)||xu(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},vQ=pa("Date"),mQ=pa("File"),gQ=e=>!!(e&&typeof e.uri<"u"),bQ=e=>e&&typeof e.getParts<"u",yQ=pa("Blob"),wQ=pa("FileList"),SQ=e=>Tu(e)&&yo(e.pipe);function CQ(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const lw=CQ(),iw=typeof lw.FormData<"u"?lw.FormData:void 0,kQ=e=>{let t;return e&&(iw&&e instanceof iw||yo(e.append)&&((t=gf(e))==="formdata"||t==="object"&&yo(e.toString)&&e.toString()==="[object FormData]"))},EQ=pa("URLSearchParams"),[xQ,TQ,$Q,OQ]=["ReadableStream","Request","Response","Headers"].map(pa),RQ=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function $u(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let o,a;if(typeof e!="object"&&(e=[e]),Bl(e))for(o=0,a=e.length;o0;)if(a=n[o],t===a.toLowerCase())return a;return null}const ur=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,$x=e=>!Tl(e)&&e!==ur;function Hh(){const{caseless:e,skipUndefined:t}=$x(this)&&this||{},n={},o=(a,s)=>{if(s==="__proto__"||s==="constructor"||s==="prototype")return;const r=e&&Tx(n,s)||s;Lc(n[r])&&Lc(a)?n[r]=Hh(n[r],a):Lc(a)?n[r]=Hh({},a):Bl(a)?n[r]=a.slice():(!t||!Tl(a))&&(n[r]=a)};for(let a=0,s=arguments.length;a($u(t,(a,s)=>{n&&yo(a)?Object.defineProperty(e,s,{value:Cx(a,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,s,{value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:o}),e),IQ=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),PQ=(e,t,n,o)=>{e.prototype=Object.create(t.prototype,o),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},MQ=(e,t,n,o)=>{let a,s,r;const l={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),s=a.length;s-- >0;)r=a[s],(!o||o(r,e,t))&&!l[r]&&(t[r]=e[r],l[r]=!0);e=n!==!1&&lg(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},_Q=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const o=e.indexOf(t,n);return o!==-1&&o===n},AQ=e=>{if(!e)return null;if(Bl(e))return e;let t=e.length;if(!xx(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},LQ=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&lg(Uint8Array)),DQ=(e,t)=>{const o=(e&&e[mf]).call(e);let a;for(;(a=o.next())&&!a.done;){const s=a.value;t.call(e,s[0],s[1])}},BQ=(e,t)=>{let n;const o=[];for(;(n=e.exec(t))!==null;)o.push(n);return o},FQ=pa("HTMLFormElement"),VQ=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,o,a){return o.toUpperCase()+a}),uw=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),zQ=pa("RegExp"),Ox=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),o={};$u(n,(a,s)=>{let r;(r=t(a,s,e))!==!1&&(o[s]=r||a)}),Object.defineProperties(e,o)},HQ=e=>{Ox(e,(t,n)=>{if(yo(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const o=e[n];if(yo(o)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},KQ=(e,t)=>{const n={},o=a=>{a.forEach(s=>{n[s]=!0})};return Bl(e)?o(e):o(String(e).split(t)),n},WQ=()=>{},jQ=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function UQ(e){return!!(e&&yo(e.append)&&e[kx]==="FormData"&&e[mf])}const qQ=e=>{const t=new Array(10),n=(o,a)=>{if(Tu(o)){if(t.indexOf(o)>=0)return;if(xu(o))return o;if(!("toJSON"in o)){t[a]=o;const s=Bl(o)?[]:{};return $u(o,(r,l)=>{const u=n(r,a+1);!Tl(u)&&(s[l]=u)}),t[a]=void 0,s}}return o};return n(e,0)},YQ=pa("AsyncFunction"),GQ=e=>e&&(Tu(e)||yo(e))&&yo(e.then)&&yo(e.catch),Rx=((e,t)=>e?setImmediate:t?((n,o)=>(ur.addEventListener("message",({source:a,data:s})=>{a===ur&&s===n&&o.length&&o.shift()()},!1),a=>{o.push(a),ur.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",yo(ur.postMessage)),XQ=typeof queueMicrotask<"u"?queueMicrotask.bind(ur):typeof process<"u"&&process.nextTick||Rx,JQ=e=>e!=null&&yo(e[mf]),xe={isArray:Bl,isArrayBuffer:Ex,isBuffer:xu,isFormData:kQ,isArrayBufferView:dQ,isString:fQ,isNumber:xx,isBoolean:pQ,isObject:Tu,isPlainObject:Lc,isEmptyObject:hQ,isReadableStream:xQ,isRequest:TQ,isResponse:$Q,isHeaders:OQ,isUndefined:Tl,isDate:vQ,isFile:mQ,isReactNativeBlob:gQ,isReactNative:bQ,isBlob:yQ,isRegExp:zQ,isFunction:yo,isStream:SQ,isURLSearchParams:EQ,isTypedArray:LQ,isFileList:wQ,forEach:$u,merge:Hh,extend:NQ,trim:RQ,stripBOM:IQ,inherits:PQ,toFlatObject:MQ,kindOf:gf,kindOfTest:pa,endsWith:_Q,toArray:AQ,forEachEntry:DQ,matchAll:BQ,isHTMLForm:FQ,hasOwnProperty:uw,hasOwnProp:uw,reduceDescriptors:Ox,freezeMethods:HQ,toObjectSet:KQ,toCamelCase:VQ,noop:WQ,toFiniteNumber:jQ,findKey:Tx,global:ur,isContextDefined:$x,isSpecCompliantForm:UQ,toJSONObject:qQ,isAsyncFn:YQ,isThenable:GQ,setImmediate:Rx,asap:XQ,isIterable:JQ};let _t=class Nx extends Error{static from(t,n,o,a,s,r){const l=new Nx(t.message,n||t.code,o,a,s);return l.cause=t,l.name=t.name,t.status!=null&&l.status==null&&(l.status=t.status),r&&Object.assign(l,r),l}constructor(t,n,o,a,s){super(t),Object.defineProperty(this,"message",{value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),o&&(this.config=o),a&&(this.request=a),s&&(this.response=s,this.status=s.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:xe.toJSONObject(this.config),code:this.code,status:this.status}}};_t.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";_t.ERR_BAD_OPTION="ERR_BAD_OPTION";_t.ECONNABORTED="ECONNABORTED";_t.ETIMEDOUT="ETIMEDOUT";_t.ERR_NETWORK="ERR_NETWORK";_t.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";_t.ERR_DEPRECATED="ERR_DEPRECATED";_t.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";_t.ERR_BAD_REQUEST="ERR_BAD_REQUEST";_t.ERR_CANCELED="ERR_CANCELED";_t.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";_t.ERR_INVALID_URL="ERR_INVALID_URL";const ZQ=null;function Kh(e){return xe.isPlainObject(e)||xe.isArray(e)}function Ix(e){return xe.endsWith(e,"[]")?e.slice(0,-2):e}function gp(e,t,n){return e?e.concat(t).map(function(a,s){return a=Ix(a),!n&&s?"["+a+"]":a}).join(n?".":""):t}function QQ(e){return xe.isArray(e)&&!e.some(Kh)}const eee=xe.toFlatObject(xe,{},null,function(t){return/^is[A-Z]/.test(t)});function yf(e,t,n){if(!xe.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=xe.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,m){return!xe.isUndefined(m[h])});const o=n.metaTokens,a=n.visitor||d,s=n.dots,r=n.indexes,u=(n.Blob||typeof Blob<"u"&&Blob)&&xe.isSpecCompliantForm(t);if(!xe.isFunction(a))throw new TypeError("visitor must be a function");function c(p){if(p===null)return"";if(xe.isDate(p))return p.toISOString();if(xe.isBoolean(p))return p.toString();if(!u&&xe.isBlob(p))throw new _t("Blob is not supported. Use a Buffer instead.");return xe.isArrayBuffer(p)||xe.isTypedArray(p)?u&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function d(p,h,m){let b=p;if(xe.isReactNative(t)&&xe.isReactNativeBlob(p))return t.append(gp(m,h,s),c(p)),!1;if(p&&!m&&typeof p=="object"){if(xe.endsWith(h,"{}"))h=o?h:h.slice(0,-2),p=JSON.stringify(p);else if(xe.isArray(p)&&QQ(p)||(xe.isFileList(p)||xe.endsWith(h,"[]"))&&(b=xe.toArray(p)))return h=Ix(h),b.forEach(function(y,S){!(xe.isUndefined(y)||y===null)&&t.append(r===!0?gp([h],S,s):r===null?h:h+"[]",c(y))}),!1}return Kh(p)?!0:(t.append(gp(m,h,s),c(p)),!1)}const f=[],v=Object.assign(eee,{defaultVisitor:d,convertValue:c,isVisitable:Kh});function g(p,h){if(!xe.isUndefined(p)){if(f.indexOf(p)!==-1)throw Error("Circular reference detected in "+h.join("."));f.push(p),xe.forEach(p,function(b,k){(!(xe.isUndefined(b)||b===null)&&a.call(t,b,xe.isString(k)?k.trim():k,h,v))===!0&&g(b,h?h.concat(k):[k])}),f.pop()}}if(!xe.isObject(e))throw new TypeError("data must be an object");return g(e),t}function cw(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(o){return t[o]})}function ig(e,t){this._pairs=[],e&&yf(e,this,t)}const Px=ig.prototype;Px.append=function(t,n){this._pairs.push([t,n])};Px.toString=function(t){const n=t?function(o){return t.call(this,o,cw)}:cw;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function tee(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Mx(e,t,n){if(!t)return e;const o=n&&n.encode||tee,a=xe.isFunction(n)?{serialize:n}:n,s=a&&a.serialize;let r;if(s?r=s(t,a):r=xe.isURLSearchParams(t)?t.toString():new ig(t,a).toString(o),r){const l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+r}return e}class dw{constructor(){this.handlers=[]}use(t,n,o){return this.handlers.push({fulfilled:t,rejected:n,synchronous:o?o.synchronous:!1,runWhen:o?o.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){xe.forEach(this.handlers,function(o){o!==null&&t(o)})}}const ug={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},nee=typeof URLSearchParams<"u"?URLSearchParams:ig,oee=typeof FormData<"u"?FormData:null,aee=typeof Blob<"u"?Blob:null,see={isBrowser:!0,classes:{URLSearchParams:nee,FormData:oee,Blob:aee},protocols:["http","https","file","blob","url","data"]},cg=typeof window<"u"&&typeof document<"u",Wh=typeof navigator=="object"&&navigator||void 0,ree=cg&&(!Wh||["ReactNative","NativeScript","NS"].indexOf(Wh.product)<0),lee=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",iee=cg&&window.location.href||"http://localhost",uee=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:cg,hasStandardBrowserEnv:ree,hasStandardBrowserWebWorkerEnv:lee,navigator:Wh,origin:iee},Symbol.toStringTag,{value:"Module"})),Qn={...uee,...see};function cee(e,t){return yf(e,new Qn.classes.URLSearchParams,{visitor:function(n,o,a,s){return Qn.isNode&&xe.isBuffer(n)?(this.append(o,n.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}function dee(e){return xe.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function fee(e){const t={},n=Object.keys(e);let o;const a=n.length;let s;for(o=0;o=n.length;return r=!r&&xe.isArray(a)?a.length:r,u?(xe.hasOwnProp(a,r)?a[r]=[a[r],o]:a[r]=o,!l):((!a[r]||!xe.isObject(a[r]))&&(a[r]=[]),t(n,o,a[r],s)&&xe.isArray(a[r])&&(a[r]=fee(a[r])),!l)}if(xe.isFormData(e)&&xe.isFunction(e.entries)){const n={};return xe.forEachEntry(e,(o,a)=>{t(dee(o),a,n,0)}),n}return null}function pee(e,t,n){if(xe.isString(e))try{return(t||JSON.parse)(e),xe.trim(e)}catch(o){if(o.name!=="SyntaxError")throw o}return(n||JSON.stringify)(e)}const Ou={transitional:ug,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const o=n.getContentType()||"",a=o.indexOf("application/json")>-1,s=xe.isObject(t);if(s&&xe.isHTMLForm(t)&&(t=new FormData(t)),xe.isFormData(t))return a?JSON.stringify(_x(t)):t;if(xe.isArrayBuffer(t)||xe.isBuffer(t)||xe.isStream(t)||xe.isFile(t)||xe.isBlob(t)||xe.isReadableStream(t))return t;if(xe.isArrayBufferView(t))return t.buffer;if(xe.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){if(o.indexOf("application/x-www-form-urlencoded")>-1)return cee(t,this.formSerializer).toString();if((l=xe.isFileList(t))||o.indexOf("multipart/form-data")>-1){const u=this.env&&this.env.FormData;return yf(l?{"files[]":t}:t,u&&new u,this.formSerializer)}}return s||a?(n.setContentType("application/json",!1),pee(t)):t}],transformResponse:[function(t){const n=this.transitional||Ou.transitional,o=n&&n.forcedJSONParsing,a=this.responseType==="json";if(xe.isResponse(t)||xe.isReadableStream(t))return t;if(t&&xe.isString(t)&&(o&&!this.responseType||a)){const r=!(n&&n.silentJSONParsing)&&a;try{return JSON.parse(t,this.parseReviver)}catch(l){if(r)throw l.name==="SyntaxError"?_t.from(l,_t.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Qn.classes.FormData,Blob:Qn.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};xe.forEach(["delete","get","head","post","put","patch"],e=>{Ou.headers[e]={}});const hee=xe.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),vee=e=>{const t={};let n,o,a;return e&&e.split(` +`).forEach(function(r){a=r.indexOf(":"),n=r.substring(0,a).trim().toLowerCase(),o=r.substring(a+1).trim(),!(!n||t[n]&&hee[n])&&(n==="set-cookie"?t[n]?t[n].push(o):t[n]=[o]:t[n]=t[n]?t[n]+", "+o:o)}),t},fw=Symbol("internals");function Gl(e){return e&&String(e).trim().toLowerCase()}function Dc(e){return e===!1||e==null?e:xe.isArray(e)?e.map(Dc):String(e)}function mee(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let o;for(;o=n.exec(e);)t[o[1]]=o[2];return t}const gee=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function bp(e,t,n,o,a){if(xe.isFunction(o))return o.call(this,t,n);if(a&&(t=n),!!xe.isString(t)){if(xe.isString(o))return t.indexOf(o)!==-1;if(xe.isRegExp(o))return o.test(t)}}function bee(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,o)=>n.toUpperCase()+o)}function yee(e,t){const n=xe.toCamelCase(" "+t);["get","set","has"].forEach(o=>{Object.defineProperty(e,o+n,{value:function(a,s,r){return this[o].call(this,t,a,s,r)},configurable:!0})})}let wo=class{constructor(t){t&&this.set(t)}set(t,n,o){const a=this;function s(l,u,c){const d=Gl(u);if(!d)throw new Error("header name must be a non-empty string");const f=xe.findKey(a,d);(!f||a[f]===void 0||c===!0||c===void 0&&a[f]!==!1)&&(a[f||u]=Dc(l))}const r=(l,u)=>xe.forEach(l,(c,d)=>s(c,d,u));if(xe.isPlainObject(t)||t instanceof this.constructor)r(t,n);else if(xe.isString(t)&&(t=t.trim())&&!gee(t))r(vee(t),n);else if(xe.isObject(t)&&xe.isIterable(t)){let l={},u,c;for(const d of t){if(!xe.isArray(d))throw TypeError("Object iterator must return a key-value pair");l[c=d[0]]=(u=l[c])?xe.isArray(u)?[...u,d[1]]:[u,d[1]]:d[1]}r(l,n)}else t!=null&&s(n,t,o);return this}get(t,n){if(t=Gl(t),t){const o=xe.findKey(this,t);if(o){const a=this[o];if(!n)return a;if(n===!0)return mee(a);if(xe.isFunction(n))return n.call(this,a,o);if(xe.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Gl(t),t){const o=xe.findKey(this,t);return!!(o&&this[o]!==void 0&&(!n||bp(this,this[o],o,n)))}return!1}delete(t,n){const o=this;let a=!1;function s(r){if(r=Gl(r),r){const l=xe.findKey(o,r);l&&(!n||bp(o,o[l],l,n))&&(delete o[l],a=!0)}}return xe.isArray(t)?t.forEach(s):s(t),a}clear(t){const n=Object.keys(this);let o=n.length,a=!1;for(;o--;){const s=n[o];(!t||bp(this,this[s],s,t,!0))&&(delete this[s],a=!0)}return a}normalize(t){const n=this,o={};return xe.forEach(this,(a,s)=>{const r=xe.findKey(o,s);if(r){n[r]=Dc(a),delete n[s];return}const l=t?bee(s):String(s).trim();l!==s&&delete n[s],n[l]=Dc(a),o[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return xe.forEach(this,(o,a)=>{o!=null&&o!==!1&&(n[a]=t&&xe.isArray(o)?o.join(", "):o)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const o=new this(t);return n.forEach(a=>o.set(a)),o}static accessor(t){const o=(this[fw]=this[fw]={accessors:{}}).accessors,a=this.prototype;function s(r){const l=Gl(r);o[l]||(yee(a,r),o[l]=!0)}return xe.isArray(t)?t.forEach(s):s(t),this}};wo.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);xe.reduceDescriptors(wo.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(o){this[n]=o}}});xe.freezeMethods(wo);function yp(e,t){const n=this||Ou,o=t||n,a=wo.from(o.headers);let s=o.data;return xe.forEach(e,function(l){s=l.call(n,s,a.normalize(),t?t.status:void 0)}),a.normalize(),s}function Ax(e){return!!(e&&e.__CANCEL__)}let Ru=class extends _t{constructor(t,n,o){super(t??"canceled",_t.ERR_CANCELED,n,o),this.name="CanceledError",this.__CANCEL__=!0}};function Lx(e,t,n){const o=n.config.validateStatus;!n.status||!o||o(n.status)?e(n):t(new _t("Request failed with status code "+n.status,[_t.ERR_BAD_REQUEST,_t.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function wee(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function See(e,t){e=e||10;const n=new Array(e),o=new Array(e);let a=0,s=0,r;return t=t!==void 0?t:1e3,function(u){const c=Date.now(),d=o[s];r||(r=c),n[a]=u,o[a]=c;let f=s,v=0;for(;f!==a;)v+=n[f++],f=f%e;if(a=(a+1)%e,a===s&&(s=(s+1)%e),c-r{n=d,a=null,s&&(clearTimeout(s),s=null),e(...c)};return[(...c)=>{const d=Date.now(),f=d-n;f>=o?r(c,d):(a=c,s||(s=setTimeout(()=>{s=null,r(a)},o-f)))},()=>a&&r(a)]}const kd=(e,t,n=3)=>{let o=0;const a=See(50,250);return Cee(s=>{const r=s.loaded,l=s.lengthComputable?s.total:void 0,u=r-o,c=a(u),d=r<=l;o=r;const f={loaded:r,total:l,progress:l?r/l:void 0,bytes:u,rate:c||void 0,estimated:c&&l&&d?(l-r)/c:void 0,event:s,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},pw=(e,t)=>{const n=e!=null;return[o=>t[0]({lengthComputable:n,total:e,loaded:o}),t[1]]},hw=e=>(...t)=>xe.asap(()=>e(...t)),kee=Qn.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Qn.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Qn.origin),Qn.navigator&&/(msie|trident)/i.test(Qn.navigator.userAgent)):()=>!0,Eee=Qn.hasStandardBrowserEnv?{write(e,t,n,o,a,s,r){if(typeof document>"u")return;const l=[`${e}=${encodeURIComponent(t)}`];xe.isNumber(n)&&l.push(`expires=${new Date(n).toUTCString()}`),xe.isString(o)&&l.push(`path=${o}`),xe.isString(a)&&l.push(`domain=${a}`),s===!0&&l.push("secure"),xe.isString(r)&&l.push(`SameSite=${r}`),document.cookie=l.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function xee(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Tee(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Dx(e,t,n){let o=!xee(t);return e&&(o||n==!1)?Tee(e,t):t}const vw=e=>e instanceof wo?{...e}:e;function $r(e,t){t=t||{};const n={};function o(c,d,f,v){return xe.isPlainObject(c)&&xe.isPlainObject(d)?xe.merge.call({caseless:v},c,d):xe.isPlainObject(d)?xe.merge({},d):xe.isArray(d)?d.slice():d}function a(c,d,f,v){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return o(void 0,c,f,v)}else return o(c,d,f,v)}function s(c,d){if(!xe.isUndefined(d))return o(void 0,d)}function r(c,d){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return o(void 0,c)}else return o(void 0,d)}function l(c,d,f){if(f in t)return o(c,d);if(f in e)return o(void 0,c)}const u={url:s,method:s,data:s,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,withXSRFToken:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:l,headers:(c,d,f)=>a(vw(c),vw(d),f,!0)};return xe.forEach(Object.keys({...e,...t}),function(d){if(d==="__proto__"||d==="constructor"||d==="prototype")return;const f=xe.hasOwnProp(u,d)?u[d]:a,v=f(e[d],t[d],d);xe.isUndefined(v)&&f!==l||(n[d]=v)}),n}const Bx=e=>{const t=$r({},e);let{data:n,withXSRFToken:o,xsrfHeaderName:a,xsrfCookieName:s,headers:r,auth:l}=t;if(t.headers=r=wo.from(r),t.url=Mx(Dx(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&r.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),xe.isFormData(n)){if(Qn.hasStandardBrowserEnv||Qn.hasStandardBrowserWebWorkerEnv)r.setContentType(void 0);else if(xe.isFunction(n.getHeaders)){const u=n.getHeaders(),c=["content-type","content-length"];Object.entries(u).forEach(([d,f])=>{c.includes(d.toLowerCase())&&r.set(d,f)})}}if(Qn.hasStandardBrowserEnv&&(o&&xe.isFunction(o)&&(o=o(t)),o||o!==!1&&kee(t.url))){const u=a&&s&&Eee.read(s);u&&r.set(a,u)}return t},$ee=typeof XMLHttpRequest<"u",Oee=$ee&&function(e){return new Promise(function(n,o){const a=Bx(e);let s=a.data;const r=wo.from(a.headers).normalize();let{responseType:l,onUploadProgress:u,onDownloadProgress:c}=a,d,f,v,g,p;function h(){g&&g(),p&&p(),a.cancelToken&&a.cancelToken.unsubscribe(d),a.signal&&a.signal.removeEventListener("abort",d)}let m=new XMLHttpRequest;m.open(a.method.toUpperCase(),a.url,!0),m.timeout=a.timeout;function b(){if(!m)return;const y=wo.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),C={data:!l||l==="text"||l==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:y,config:e,request:m};Lx(function($){n($),h()},function($){o($),h()},C),m=null}"onloadend"in m?m.onloadend=b:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.indexOf("file:")===0)||setTimeout(b)},m.onabort=function(){m&&(o(new _t("Request aborted",_t.ECONNABORTED,e,m)),m=null)},m.onerror=function(S){const C=S&&S.message?S.message:"Network Error",E=new _t(C,_t.ERR_NETWORK,e,m);E.event=S||null,o(E),m=null},m.ontimeout=function(){let S=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const C=a.transitional||ug;a.timeoutErrorMessage&&(S=a.timeoutErrorMessage),o(new _t(S,C.clarifyTimeoutError?_t.ETIMEDOUT:_t.ECONNABORTED,e,m)),m=null},s===void 0&&r.setContentType(null),"setRequestHeader"in m&&xe.forEach(r.toJSON(),function(S,C){m.setRequestHeader(C,S)}),xe.isUndefined(a.withCredentials)||(m.withCredentials=!!a.withCredentials),l&&l!=="json"&&(m.responseType=a.responseType),c&&([v,p]=kd(c,!0),m.addEventListener("progress",v)),u&&m.upload&&([f,g]=kd(u),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",g)),(a.cancelToken||a.signal)&&(d=y=>{m&&(o(!y||y.type?new Ru(null,e,m):y),m.abort(),m=null)},a.cancelToken&&a.cancelToken.subscribe(d),a.signal&&(a.signal.aborted?d():a.signal.addEventListener("abort",d)));const k=wee(a.url);if(k&&Qn.protocols.indexOf(k)===-1){o(new _t("Unsupported protocol "+k+":",_t.ERR_BAD_REQUEST,e));return}m.send(s||null)})},Ree=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let o=new AbortController,a;const s=function(c){if(!a){a=!0,l();const d=c instanceof Error?c:this.reason;o.abort(d instanceof _t?d:new Ru(d instanceof Error?d.message:d))}};let r=t&&setTimeout(()=>{r=null,s(new _t(`timeout of ${t}ms exceeded`,_t.ETIMEDOUT))},t);const l=()=>{e&&(r&&clearTimeout(r),r=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(s):c.removeEventListener("abort",s)}),e=null)};e.forEach(c=>c.addEventListener("abort",s));const{signal:u}=o;return u.unsubscribe=()=>xe.asap(l),u}},Nee=function*(e,t){let n=e.byteLength;if(n{const a=Iee(e,t);let s=0,r,l=u=>{r||(r=!0,o&&o(u))};return new ReadableStream({async pull(u){try{const{done:c,value:d}=await a.next();if(c){l(),u.close();return}let f=d.byteLength;if(n){let v=s+=f;n(v)}u.enqueue(new Uint8Array(d))}catch(c){throw l(c),c}},cancel(u){return l(u),a.return()}},{highWaterMark:2})},gw=64*1024,{isFunction:ac}=xe,Mee=(({Request:e,Response:t})=>({Request:e,Response:t}))(xe.global),{ReadableStream:bw,TextEncoder:yw}=xe.global,ww=(e,...t)=>{try{return!!e(...t)}catch{return!1}},_ee=e=>{e=xe.merge.call({skipUndefined:!0},Mee,e);const{fetch:t,Request:n,Response:o}=e,a=t?ac(t):typeof fetch=="function",s=ac(n),r=ac(o);if(!a)return!1;const l=a&&ac(bw),u=a&&(typeof yw=="function"?(p=>h=>p.encode(h))(new yw):async p=>new Uint8Array(await new n(p).arrayBuffer())),c=s&&l&&ww(()=>{let p=!1;const h=new n(Qn.origin,{body:new bw,method:"POST",get duplex(){return p=!0,"half"}}).headers.has("Content-Type");return p&&!h}),d=r&&l&&ww(()=>xe.isReadableStream(new o("").body)),f={stream:d&&(p=>p.body)};a&&["text","arrayBuffer","blob","formData","stream"].forEach(p=>{!f[p]&&(f[p]=(h,m)=>{let b=h&&h[p];if(b)return b.call(h);throw new _t(`Response type '${p}' is not supported`,_t.ERR_NOT_SUPPORT,m)})});const v=async p=>{if(p==null)return 0;if(xe.isBlob(p))return p.size;if(xe.isSpecCompliantForm(p))return(await new n(Qn.origin,{method:"POST",body:p}).arrayBuffer()).byteLength;if(xe.isArrayBufferView(p)||xe.isArrayBuffer(p))return p.byteLength;if(xe.isURLSearchParams(p)&&(p=p+""),xe.isString(p))return(await u(p)).byteLength},g=async(p,h)=>{const m=xe.toFiniteNumber(p.getContentLength());return m??v(h)};return async p=>{let{url:h,method:m,data:b,signal:k,cancelToken:y,timeout:S,onDownloadProgress:C,onUploadProgress:E,responseType:$,headers:O,withCredentials:N="same-origin",fetchOptions:R}=Bx(p),A=t||fetch;$=$?($+"").toLowerCase():"text";let _=Ree([k,y&&y.toAbortSignal()],S),V=null;const H=_&&_.unsubscribe&&(()=>{_.unsubscribe()});let U;try{if(E&&c&&m!=="get"&&m!=="head"&&(U=await g(O,b))!==0){let F=new n(h,{method:"POST",body:b,duplex:"half"}),q;if(xe.isFormData(b)&&(q=F.headers.get("content-type"))&&O.setContentType(q),F.body){const[j,X]=pw(U,kd(hw(E)));b=mw(F.body,gw,j,X)}}xe.isString(N)||(N=N?"include":"omit");const W=s&&"credentials"in n.prototype,P={...R,signal:_,method:m.toUpperCase(),headers:O.normalize().toJSON(),body:b,duplex:"half",credentials:W?N:void 0};V=s&&new n(h,P);let I=await(s?A(V,R):A(h,P));const L=d&&($==="stream"||$==="response");if(d&&(C||L&&H)){const F={};["status","statusText","headers"].forEach(Q=>{F[Q]=I[Q]});const q=xe.toFiniteNumber(I.headers.get("content-length")),[j,X]=C&&pw(q,kd(hw(C),!0))||[];I=new o(mw(I.body,gw,j,()=>{X&&X(),H&&H()}),F)}$=$||"text";let D=await f[xe.findKey(f,$)||"text"](I,p);return!L&&H&&H(),await new Promise((F,q)=>{Lx(F,q,{data:D,headers:wo.from(I.headers),status:I.status,statusText:I.statusText,config:p,request:V})})}catch(W){throw H&&H(),W&&W.name==="TypeError"&&/Load failed|fetch/i.test(W.message)?Object.assign(new _t("Network Error",_t.ERR_NETWORK,p,V,W&&W.response),{cause:W.cause||W}):_t.from(W,W&&W.code,p,V,W&&W.response)}}},Aee=new Map,Fx=e=>{let t=e&&e.env||{};const{fetch:n,Request:o,Response:a}=t,s=[o,a,n];let r=s.length,l=r,u,c,d=Aee;for(;l--;)u=s[l],c=d.get(u),c===void 0&&d.set(u,c=l?new Map:_ee(t)),d=c;return c};Fx();const dg={http:ZQ,xhr:Oee,fetch:{get:Fx}};xe.forEach(dg,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Sw=e=>`- ${e}`,Lee=e=>xe.isFunction(e)||e===null||e===!1;function Dee(e,t){e=xe.isArray(e)?e:[e];const{length:n}=e;let o,a;const s={};for(let r=0;r`adapter ${u} `+(c===!1?"is not supported by the environment":"is not available in the build"));let l=n?r.length>1?`since : +`+r.map(Sw).join(` +`):" "+Sw(r[0]):"as no adapter specified";throw new _t("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return a}const Vx={getAdapter:Dee,adapters:dg};function wp(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Ru(null,e)}function Cw(e){return wp(e),e.headers=wo.from(e.headers),e.data=yp.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Vx.getAdapter(e.adapter||Ou.adapter,e)(e).then(function(o){return wp(e),o.data=yp.call(e,e.transformResponse,o),o.headers=wo.from(o.headers),o},function(o){return Ax(o)||(wp(e),o&&o.response&&(o.response.data=yp.call(e,e.transformResponse,o.response),o.response.headers=wo.from(o.response.headers))),Promise.reject(o)})}const zx="1.13.6",wf={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{wf[e]=function(o){return typeof o===e||"a"+(t<1?"n ":" ")+e}});const kw={};wf.transitional=function(t,n,o){function a(s,r){return"[Axios v"+zx+"] Transitional option '"+s+"'"+r+(o?". "+o:"")}return(s,r,l)=>{if(t===!1)throw new _t(a(r," has been removed"+(n?" in "+n:"")),_t.ERR_DEPRECATED);return n&&!kw[r]&&(kw[r]=!0,console.warn(a(r," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,r,l):!0}};wf.spelling=function(t){return(n,o)=>(console.warn(`${o} is likely a misspelling of ${t}`),!0)};function Bee(e,t,n){if(typeof e!="object")throw new _t("options must be an object",_t.ERR_BAD_OPTION_VALUE);const o=Object.keys(e);let a=o.length;for(;a-- >0;){const s=o[a],r=t[s];if(r){const l=e[s],u=l===void 0||r(l,s,e);if(u!==!0)throw new _t("option "+s+" must be "+u,_t.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new _t("Unknown option "+s,_t.ERR_BAD_OPTION)}}const Bc={assertOptions:Bee,validators:wf},Ao=Bc.validators;let vr=class{constructor(t){this.defaults=t||{},this.interceptors={request:new dw,response:new dw}}async request(t,n){try{return await this._request(t,n)}catch(o){if(o instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const s=a.stack?a.stack.replace(/^.+\n/,""):"";try{o.stack?s&&!String(o.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(o.stack+=` +`+s):o.stack=s}catch{}}throw o}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=$r(this.defaults,n);const{transitional:o,paramsSerializer:a,headers:s}=n;o!==void 0&&Bc.assertOptions(o,{silentJSONParsing:Ao.transitional(Ao.boolean),forcedJSONParsing:Ao.transitional(Ao.boolean),clarifyTimeoutError:Ao.transitional(Ao.boolean),legacyInterceptorReqResOrdering:Ao.transitional(Ao.boolean)},!1),a!=null&&(xe.isFunction(a)?n.paramsSerializer={serialize:a}:Bc.assertOptions(a,{encode:Ao.function,serialize:Ao.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Bc.assertOptions(n,{baseUrl:Ao.spelling("baseURL"),withXsrfToken:Ao.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=s&&xe.merge(s.common,s[n.method]);s&&xe.forEach(["delete","get","head","post","put","patch","common"],p=>{delete s[p]}),n.headers=wo.concat(r,s);const l=[];let u=!0;this.interceptors.request.forEach(function(h){if(typeof h.runWhen=="function"&&h.runWhen(n)===!1)return;u=u&&h.synchronous;const m=n.transitional||ug;m&&m.legacyInterceptorReqResOrdering?l.unshift(h.fulfilled,h.rejected):l.push(h.fulfilled,h.rejected)});const c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let d,f=0,v;if(!u){const p=[Cw.bind(this),void 0];for(p.unshift(...l),p.push(...c),v=p.length,d=Promise.resolve(n);f{if(!o._listeners)return;let s=o._listeners.length;for(;s-- >0;)o._listeners[s](a);o._listeners=null}),this.promise.then=a=>{let s;const r=new Promise(l=>{o.subscribe(l),s=l}).then(a);return r.cancel=function(){o.unsubscribe(s)},r},t(function(s,r,l){o.reason||(o.reason=new Ru(s,r,l),n(o.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=o=>{t.abort(o)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Hx(function(a){t=a}),cancel:t}}};function Vee(e){return function(n){return e.apply(null,n)}}function zee(e){return xe.isObject(e)&&e.isAxiosError===!0}const jh={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(jh).forEach(([e,t])=>{jh[t]=e});function Kx(e){const t=new vr(e),n=Cx(vr.prototype.request,t);return xe.extend(n,vr.prototype,t,{allOwnKeys:!0}),xe.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return Kx($r(e,a))},n}const On=Kx(Ou);On.Axios=vr;On.CanceledError=Ru;On.CancelToken=Fee;On.isCancel=Ax;On.VERSION=zx;On.toFormData=yf;On.AxiosError=_t;On.Cancel=On.CanceledError;On.all=function(t){return Promise.all(t)};On.spread=Vee;On.isAxiosError=zee;On.mergeConfig=$r;On.AxiosHeaders=wo;On.formToJSON=e=>_x(xe.isHTMLForm(e)?new FormData(e):e);On.getAdapter=Vx.getAdapter;On.HttpStatusCode=jh;On.default=On;const{Axios:gte,AxiosError:Hee,CanceledError:bte,isCancel:yte,CancelToken:wte,VERSION:Ste,all:Cte,Cancel:kte,isAxiosError:Ete,spread:xte,toFormData:Tte,AxiosHeaders:$te,HttpStatusCode:Ote,formToJSON:Rte,getAdapter:Nte,mergeConfig:Ite}=On;function Kee(e){if(e instanceof Hee){const t=e.response?.data;if(t&&typeof t=="object"){if("error"in t&&t.error)return String(t.error);if("message"in t&&t.message)return String(t.message)}return typeof t=="string"&&t.trim()?t:e.message||"请求失败"}return e instanceof Error?e.message:"请求失败"}function Wee(){const e=On.create({withCredentials:!0,timeout:3e4,headers:{"X-Requested-With":"XMLHttpRequest"}});return e.interceptors.request.use(t=>t),e.interceptors.response.use(t=>t,t=>Promise.reject(new Error(Kee(t)))),e}const jee=Wee();async function Sf(e){return(await jee.request(e)).data}function Qt(e,t){return Sf({url:e,method:"GET",...t})}function Zt(e,t,n){return Sf({url:e,method:"POST",data:t,...n})}function fg(e,t,n){return Sf({url:e,method:"PUT",data:t,...n})}function dn(e,t){return Sf({url:e,method:"DELETE",...t})}const Uee=Qt,Pte=Zt;async function Je(e){const t=await e;if(!t.success)throw new Error(t.message||"请求失败");return t.data}function qee(){const e=typeof window>"u"?"":window.localStorage.getItem("uid")||"",t=Number(e);if(!Number.isFinite(t)||t<=0)throw new Error("未获取到用户ID");return t}function Yee(e){return`app_column_permissions:${String(e)}`}async function Gee(){const e=qee(),t=Yee(e);try{const o=JSON.parse(window.localStorage.getItem(t)||"null");if(Array.isArray(o))return o.map(a=>String(a.column_key||"").trim().toLowerCase()).filter(Boolean)}catch{}const n=await Uee(`/api/admin/user/${encodeURIComponent(String(e))}/column-permissions`,{params:{menu_type:"app"}});if(!n.success)throw new Error(n.error||"获取菜单权限失败");try{window.localStorage.setItem(t,JSON.stringify(n.items||[]))}catch{}return(n.items||[]).map(o=>String(o.column_key||"").trim().toLowerCase()).filter(Boolean)}const Xee={class:"top-bar"},Jee={class:"nav-sections","aria-label":"顶部功能导航"},Zee={class:"nav-section-title"},Qee={class:"nav-section-items"},ete=["href"],tte={class:"top-right"},nte=se({__name:"BrandTopBar",props:{active:{}},setup(e){const n=e.active,o=M(null),a=[{columnKey:"brand_front_tools",label:"前端工具",items:[{key:"collect",label:"采集数据"},{key:"variant",label:"变体分析"},{key:"brand",label:"品牌检测",href:"/brand"},{key:"appearance-patent",label:"外观专利检测",href:"/new_web_source/appearance-patent.html"},{key:"similar-asin",label:"货源查询",href:"/new_web_source/similar-asin.html"},{key:"dedupe",label:"数据去重",href:"/new_web_source/dedupe.html"},{key:"split",label:"数据拆分",href:"/new_web_source/split.html"},{key:"convert",label:"格式转换",href:"/new_web_source/convert.html"}]},{columnKey:"brand_operation_tools",label:"运营工具",items:[{key:"delete-brand",label:"删除ASIN",href:"/new_web_source/delete-brand.html"},{key:"product-risk",label:"商品风险解决",href:"/new_web_source/product-risk.html"},{key:"shop-match",label:"定时匹配",href:"/new_web_source/shop-match.html"},{key:"pricing",label:"跟价",href:"/new_web_source/price-track.html"},{key:"patrol-delete",label:"巡店删除",href:"/new_web_source/patrol-delete.html"},{key:"query-asin",label:"查询ASIN",href:"/new_web_source/query-asin.html"},{key:"withdraw",label:"取款"},{key:"shop-status",label:"店铺状态查询"}]},{columnKey:"brand_logistics_tools",label:"后勤工具",items:[{key:"purchase",label:"采购"},{key:"erp",label:"ERP"}]}],s=w(()=>{if(o.value===null)return a;const r=new Set(o.value);return a.filter(l=>r.has(l.columnKey))});return ht(async()=>{try{o.value=await Gee()}catch{o.value=null}}),(r,l)=>(x(),B("header",Xee,[l[0]||(l[0]=z("div",{class:"logo-area"},[z("span",{class:"app-name"},"数富AI-亚马逊"),z("a",{href:"/home",class:"btn-home"},"返回首页")],-1)),z("nav",Jee,[(x(!0),B(Fe,null,yt(s.value,u=>(x(),B("section",{key:u.columnKey,class:"nav-section"},[z("div",Zee,Se(u.label),1),z("div",Qee,[(x(!0),B(Fe,null,yt(u.items,c=>(x(),B(Fe,{key:c.key},[c.href?(x(),B("a",{key:0,href:c.href,class:T(["nav-item",{active:i(n)===c.key}])},Se(c.label),11,ete)):(x(),B("span",{key:1,class:T(["nav-item disabled",{active:i(n)===c.key}])},Se(c.label),3))],64))),128))])]))),128))]),z("div",tte,[Y(uQ)])]))}}),Mte=Sx(nte,[["__scopeId","data-v-0b1391c2"]]),ote=1e4,ate=6e4,ste=5e3,rte=3e4;function _te(){return typeof document<"u"&&document.visibilityState!=="visible"?ate:ote}function lte(){return typeof document<"u"&&document.hidden?rte:ste}const qe="/newApi/api",Ew=new Map,Sp=new Map;function et(){const e=typeof window>"u"?"":window.localStorage.getItem("uid")||"",t=Number(e);if(!Number.isFinite(t)||t<=0)throw new Error("未获取到用户ID");return t}function ite(e){return Array.from(new Set((e||[]).map(t=>Number(t)).filter(t=>Number.isFinite(t)&&t>0))).sort((t,n)=>t-n)}function ute(e,t){return`${e}::${t.join(",")}`}async function Ws(e,t,n={}){const o=ite(t);if(!o.length)return{items:[],missingTaskIds:[]};const a=ute(e,o),s=Date.now(),r=Ew.get(a);if(!n.force&&r&&r.expiresAt>s)return r.data;const l=Sp.get(a);if(!n.force&&l)return await l;const u=Je(Zt(e,{taskIds:o})).then(c=>(Ew.set(a,{data:c,expiresAt:Date.now()+lte()}),c)).finally(()=>{Sp.delete(a)});return Sp.set(a,u),u}function Ate(e){return Je(Qt(`${qe}/files/excel-info`,{params:{fileKey:e}}))}function Lte(e){return Je(Zt(`${qe}/dedupe/run`,{...e,user_id:et()}))}function Dte(){return Je(Qt(`${qe}/dedupe/history`,{params:{user_id:et()}}))}function Bte(e){return Je(dn(`${qe}/dedupe/history/${e}`,{params:{user_id:et()}}))}function Fte(e){return Wo(`/dedupe/results/${e}/download`)}function Vte(e){return Je(Zt(`${qe}/split/run`,{...e,user_id:et()}))}function zte(){return Je(Qt(`${qe}/split/history`,{params:{user_id:et()}}))}function Hte(e){return Je(dn(`${qe}/split/history/${e}`,{params:{user_id:et()}}))}function Kte(e){return Wo(`/split/results/${e}/download`)}function Wte(){return Je(Qt(`${qe}/convert/templates`))}function jte(e){return Je(Zt(`${qe}/convert/run`,{...e,user_id:et()}))}function Ute(){return Je(Qt(`${qe}/convert/history`,{params:{user_id:et()}}))}function qte(e){return Je(dn(`${qe}/convert/history/${e}`,{params:{user_id:et()}}))}function Yte(e){return Wo(`/convert/results/${e}/download`)}function Gte(e){return Je(Zt(`${qe}/delete-brand/run`,{...e,user_id:et()},{timeout:18e4}))}function Xte(){return Je(Qt(`${qe}/delete-brand/history`,{params:{user_id:et()}}))}function Jte(e){return Je(dn(`${qe}/delete-brand/history/${e}`,{params:{user_id:et()}}))}function Zte(e){return Wo(`/delete-brand/tasks/${e}/download`)}function Qte(e){return Wo(`/delete-brand/results/${e}/download`)}function ene(){return Je(Qt(`${qe}/product-risk-resolve/candidates`,{params:{user_id:et()}}))}function tne(e){return Je(Zt(`${qe}/product-risk-resolve/candidates`,{user_id:et(),shop_name:e}))}function nne(e){return Je(dn(`${qe}/product-risk-resolve/candidates/${e}`,{params:{user_id:et()}}))}function one(){return Je(Qt(`${qe}/product-risk-resolve/country-preference`,{params:{user_id:et()}}))}function ane(e){return Je(fg(`${qe}/product-risk-resolve/country-preference`,{user_id:et(),country_codes:e}))}function sne(e){return Je(Zt(`${qe}/product-risk-resolve/match-shops`,{user_id:et(),shop_names:e}))}function rne(){return Je(Qt(`${qe}/product-risk-resolve/dashboard`,{params:{user_id:et()}}))}function lne(){return Je(Qt(`${qe}/product-risk-resolve/history`,{params:{user_id:et()}}))}function ine(e){return Je(dn(`${qe}/product-risk-resolve/history/${e}`,{params:{user_id:et()}}))}function une(e){return Je(Zt(`${qe}/product-risk-resolve/tasks`,{user_id:et(),items:e}))}function cne(e){return Je(dn(`${qe}/product-risk-resolve/tasks/${e}`,{params:{user_id:et()}}))}function dne(e){return Je(dn(`${qe}/product-risk-resolve/pending-shop-result`,{params:{user_id:et(),shop_name:e}}))}function fne(e){return Wo(`/product-risk-resolve/results/${e}/download`)}function pne(){return Je(Qt(`${qe}/shop-match/candidates`,{params:{user_id:et()}}))}function hne(e){return Je(Zt(`${qe}/shop-match/candidates`,{user_id:et(),shop_name:e}))}function vne(e){return Je(dn(`${qe}/shop-match/candidates/${e}`,{params:{user_id:et()}}))}function mne(){return Je(Qt(`${qe}/shop-match/country-preference`,{params:{user_id:et()}}))}function gne(e){return Je(fg(`${qe}/shop-match/country-preference`,{user_id:et(),country_codes:e}))}function bne(e){return Je(Zt(`${qe}/shop-match/match-shops`,{user_id:et(),shop_names:e}))}function yne(){return Je(Qt(`${qe}/shop-match/dashboard`,{params:{user_id:et()}}))}function wne(){return Je(Qt(`${qe}/shop-match/history`,{params:{user_id:et()}}))}function Sne(e){return Je(dn(`${qe}/shop-match/history/${e}`,{params:{user_id:et()}}))}function Cne(e,t,n){return Je(Zt(`${qe}/shop-match/tasks`,{user_id:et(),items:e,country_codes:t,schedule_times:n}))}function kne(e){return Je(dn(`${qe}/shop-match/tasks/${e}`,{params:{user_id:et()}}))}function Ene(e,t){return Je(Zt(`${qe}/shop-match/tasks/${e}/activate?user_id=${encodeURIComponent(String(et()))}&stage_index=${encodeURIComponent(String(t))}`,void 0))}function xne(e){return Wo(`/shop-match/results/${e}/download`)}function Tne(){return Je(Qt(`${qe}/patrol-delete/candidates`,{params:{user_id:et()}}))}function $ne(e){return Je(Zt(`${qe}/patrol-delete/candidates`,{user_id:et(),shop_name:e}))}function One(e){return Je(dn(`${qe}/patrol-delete/candidates/${e}`,{params:{user_id:et()}}))}function Rne(){return Je(Qt(`${qe}/patrol-delete/conditions`,{params:{user_id:et()}}))}function Nne(e){return Je(Zt(`${qe}/patrol-delete/conditions`,{user_id:et(),condition_text:e}))}function Ine(e){return Je(dn(`${qe}/patrol-delete/conditions/${e}`,{params:{user_id:et()}}))}function Pne(e){return Je(Zt(`${qe}/patrol-delete/match-shops`,{user_id:et(),shop_names:e}))}function Mne(){return Je(Qt(`${qe}/patrol-delete/dashboard`,{params:{user_id:et()}}))}function _ne(){return Je(Qt(`${qe}/patrol-delete/history`,{params:{user_id:et()}}))}function Ane(e){return Ws(`${qe}/patrol-delete/tasks/progress/batch`,e)}function Lne(e){return Je(Zt(`${qe}/patrol-delete/tasks`,{user_id:et(),items:e}))}function Dne(e,t){return Je(Zt(`${qe}/patrol-delete/tasks/${e}/result`,t))}function Bne(e){return Wo(`/patrol-delete/results/${e}/download`)}function Fne(e){return Je(dn(`${qe}/patrol-delete/tasks/${e}`,{params:{user_id:et()}}))}function Vne(e){return Je(dn(`${qe}/patrol-delete/history/${e}`,{params:{user_id:et()}}))}function zne(){return Je(Qt(`${qe}/query-asin/candidates`,{params:{user_id:et()}}))}function Hne(e){return Je(Zt(`${qe}/query-asin/candidates`,{user_id:et(),shop_name:e}))}function Kne(e){return Je(dn(`${qe}/query-asin/candidates/${e}`,{params:{user_id:et()}}))}function Wne(e){return Je(Zt(`${qe}/query-asin/match-shops`,{user_id:et(),shop_names:e}))}function jne(){return Je(Qt(`${qe}/query-asin/dashboard`,{params:{user_id:et()}}))}function Une(){return Je(Qt(`${qe}/query-asin/history`,{params:{user_id:et()}}))}function qne(e){return Ws(`${qe}/query-asin/tasks/progress/batch`,e)}function Yne(e){return Je(Zt(`${qe}/query-asin/tasks`,{user_id:et(),items:e}))}function Gne(e,t){return Je(Zt(`${qe}/query-asin/tasks/${e}/result`,t))}function Xne(e){return Wo(`/query-asin/results/${e}/download`)}function Jne(e){return Je(dn(`${qe}/query-asin/tasks/${e}`,{params:{user_id:et()}}))}function Zne(e){return Je(dn(`${qe}/query-asin/history/${e}`,{params:{user_id:et()}}))}function Qne(e,t,n){return Je(Zt(`${qe}/appearance-patent/parse`,{user_id:et(),files:e,ai_prompt:t,api_key:n}))}function eoe(e){return Je(Qt(`${qe}/appearance-patent/tasks/${e}/queue-payload`,{params:{user_id:et()}}))}function toe(){return Je(Qt(`${qe}/appearance-patent/dashboard`,{params:{user_id:et()}}))}function noe(){return Je(Qt(`${qe}/appearance-patent/history`,{params:{user_id:et(),limit:50}}))}function ooe(e,t={}){return Ws(`${qe}/appearance-patent/tasks/progress/batch`,e,t)}function aoe(e){return Je(Zt(`${qe}/appearance-patent/tasks/${e}/activate?user_id=${encodeURIComponent(String(et()))}`,void 0))}function soe(e){return Je(dn(`${qe}/appearance-patent/tasks/${e}`,{params:{user_id:et()}}))}function roe(e){return Je(dn(`${qe}/appearance-patent/history/${e}`,{params:{user_id:et()}}))}function loe(e){return Wo(`/appearance-patent/results/${e}/download`)}function ioe(e,t,n){return Je(Zt(`${qe}/similar-asin/parse`,{user_id:et(),files:e,ai_prompt:t,api_key:n}))}function uoe(){return Je(Qt(`${qe}/similar-asin/filter-conditions`,{params:{user_id:et()}}))}function coe(e){return Je(Zt(`${qe}/similar-asin/filter-conditions`,{user_id:et(),condition_text:e}))}function doe(e){return Je(dn(`${qe}/similar-asin/filter-conditions/${e}`,{params:{user_id:et()}}))}function foe(){return Je(Qt(`${qe}/similar-asin/dashboard`,{params:{user_id:et()}}))}function poe(){return Je(Qt(`${qe}/similar-asin/history`,{params:{user_id:et(),limit:50}}))}function hoe(e,t={}){return Ws(`${qe}/similar-asin/tasks/progress/batch`,e,t)}function voe(e){return Je(Zt(`${qe}/similar-asin/tasks/${e}/activate?user_id=${encodeURIComponent(String(et()))}`,void 0))}function moe(e){return Je(dn(`${qe}/similar-asin/tasks/${e}`,{params:{user_id:et()}}))}function goe(e){return Je(dn(`${qe}/similar-asin/history/${e}`,{params:{user_id:et()}}))}function boe(e){return Wo(`/similar-asin/results/${e}/download`)}function yoe(){return Je(Qt(`${qe}/price-track/candidates?user_id=${encodeURIComponent(String(et()))}`))}function woe(e){return Je(Zt(`${qe}/price-track/candidates`,{userId:et(),shopName:e}))}function Soe(e){return Je(dn(`${qe}/price-track/candidates/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Coe(){return Je(Qt(`${qe}/price-track/country-preference?user_id=${encodeURIComponent(String(et()))}`))}function koe(e){return Je(fg(`${qe}/price-track/country-preference`,{userId:et(),countryCodes:e}))}function Eoe(e,t){return Je(Zt(`${qe}/price-track/match-shops`,{userId:et(),shopNames:e,asinFiles:t?.asinFiles||[],countryCodes:t?.countryCodes||[]}))}function xoe(e){return Ws(`${qe}/shop-match/tasks/progress/batch`,e)}function Toe(e){return Ws(`${qe}/product-risk-resolve/tasks/progress/batch`,e)}function $oe(e){return Ws(`${qe}/delete-brand/tasks/progress/batch`,e)}function Ooe(){return Je(Qt(`${qe}/price-track/dashboard?user_id=${encodeURIComponent(String(et()))}`))}function Roe(){return Je(Qt(`${qe}/price-track/history?user_id=${encodeURIComponent(String(et()))}`))}function Noe(e){return Je(dn(`${qe}/price-track/history/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Ioe(e){return Je(Zt(`${qe}/price-track/tasks`,{...e,userId:et()}))}function Poe(e){return Je(dn(`${qe}/price-track/tasks/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Moe(e){return Je(Zt(`${qe}/price-track/loop-runs`,{...e,userId:et()}))}function _oe(e){return Je(Qt(`${qe}/price-track/loop-runs/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Aoe(e){return Je(Zt(`${qe}/price-track/loop-runs/${e}/dispatch-next?user_id=${encodeURIComponent(String(et()))}`,void 0))}function Loe(e,t){return Je(Zt(`${qe}/price-track/loop-runs/${e}/child-finished?user_id=${encodeURIComponent(String(et()))}`,{childTaskId:t}))}function Doe(e){return Je(Zt(`${qe}/price-track/loop-runs/${e}/stop?user_id=${encodeURIComponent(String(et()))}`,void 0))}function Boe(e){return Ws(`${qe}/price-track/tasks/progress/batch`,e)}function Foe(e){return Wo(`/price-track/results/${e}/download`)}function Voe(e){return Je(dn(`${qe}/price-track/pending-shop-result?user_id=${encodeURIComponent(String(et()))}&shop_name=${encodeURIComponent(e)}`))}function Wo(e){let t=e.startsWith("http://")||e.startsWith("https://")?e:`${qe}${e}`;!t.startsWith("http://")&&!t.startsWith("https://")&&typeof window<"u"&&(t=`${window.location.origin}${t}`);const n=t.includes("?")?"&":"?";return`${t}${n}user_id=${encodeURIComponent(String(et()))}`}let Uh,xw=!1;function Wx(){return Uh=window.pywebview?.api,Uh}function cte(){xw||typeof window>"u"||!window.addEventListener||(xw=!0,window.addEventListener("pywebviewready",()=>{Wx()}))}cte();function zoe(){return Wx()||Uh}export{loe as $,Ute as A,Mte as B,qte as C,Yte as D,zh as E,Fe as F,mv as G,Vte as H,zte as I,Hte as J,Kte as K,$l as L,dte as M,Ke as N,$oe as O,Gte as P,Qte as Q,Zte as R,Xte as S,Jte as T,_te as U,Qne as V,eoe as W,aoe as X,toe as Y,noe as Z,Sx as _,x as a,Eoe as a$,soe as a0,roe as a1,pte as a2,ooe as a3,uoe as a4,coe as a5,doe as a6,ioe as a7,voe as a8,foe as a9,sne as aA,fne as aB,une as aC,g5 as aD,pne as aE,yne as aF,wne as aG,mne as aH,hne as aI,vne as aJ,bne as aK,xne as aL,kne as aM,Sne as aN,Cne as aO,gne as aP,xoe as aQ,Ene as aR,st as aS,z2 as aT,koe as aU,Coe as aV,yoe as aW,Ooe as aX,Roe as aY,woe as aZ,Soe as a_,poe as aa,boe as ab,moe as ac,goe as ad,hoe as ae,an as af,eo as ag,J as ah,Cq as ai,Sq as aj,Xe as ak,i as al,ae as am,ld as an,Hs as ao,ane as ap,one as aq,dne as ar,ine as as,cne as at,rne as au,ene as av,lne as aw,Toe as ax,tne as ay,nne as az,Y as b,Voe as b0,Ioe as b1,_oe as b2,Doe as b3,Loe as b4,Aoe as b5,Moe as b6,Foe as b7,Noe as b8,Poe as b9,Jne as bA,Zne as bB,qne as bC,v8 as bD,Boe as ba,Pte as bb,Tne as bc,Rne as bd,Mne as be,_ne as bf,$ne as bg,Nne as bh,Ine as bi,One as bj,Pne as bk,Lne as bl,Dne as bm,Bne as bn,Fne as bo,Vne as bp,Ane as bq,zne as br,jne as bs,Une as bt,Hne as bu,Kne as bv,Wne as bw,Yne as bx,Gne as by,Xne as bz,B as c,se as d,z as e,te as f,M as g,w as h,zoe as i,Lte as j,Dte as k,Bte as l,Fte as m,T as n,ht as o,Ate as p,fO as q,yt as r,fte as s,Se as t,gv as u,G1 as v,ut as w,wt as x,Wte as y,jte as z}; diff --git a/app/assets/pywebview-DNJAt1gR.css b/app/assets/pywebview-B7UKcPVJ.css similarity index 98% rename from app/assets/pywebview-DNJAt1gR.css rename to app/assets/pywebview-B7UKcPVJ.css index db98ed3..265cb49 100644 --- a/app/assets/pywebview-DNJAt1gR.css +++ b/app/assets/pywebview-B7UKcPVJ.css @@ -1 +1 @@ -.el-affix--fixed{position:fixed}.el-alert{--el-alert-padding:8px 16px;--el-alert-border-radius-base:var(--el-border-radius-base);--el-alert-title-font-size:14px;--el-alert-title-with-description-font-size:16px;--el-alert-description-font-size:14px;--el-alert-close-font-size:16px;--el-alert-close-customed-font-size:14px;--el-alert-icon-size:16px;--el-alert-icon-large-size:28px;width:100%;padding:var(--el-alert-padding);box-sizing:border-box;border-radius:var(--el-alert-border-radius-base);background-color:var(--el-color-white);opacity:1;transition:opacity var(--el-transition-duration-fast);align-items:center;margin:0;display:flex;position:relative;overflow:hidden}.el-alert.is-light .el-alert__close-btn{color:var(--el-text-color-placeholder)}.el-alert.is-dark .el-alert__close-btn,.el-alert.is-dark .el-alert__description{color:var(--el-color-white)}.el-alert.is-center{justify-content:center}.el-alert--primary{--el-alert-bg-color:var(--el-color-primary-light-9)}.el-alert--primary.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-primary)}.el-alert--primary.is-light .el-alert__description{color:var(--el-color-primary)}.el-alert--primary.is-dark{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-alert--success{--el-alert-bg-color:var(--el-color-success-light-9)}.el-alert--success.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-success)}.el-alert--success.is-light .el-alert__description{color:var(--el-color-success)}.el-alert--success.is-dark{background-color:var(--el-color-success);color:var(--el-color-white)}.el-alert--info{--el-alert-bg-color:var(--el-color-info-light-9)}.el-alert--info.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-info)}.el-alert--info.is-light .el-alert__description{color:var(--el-color-info)}.el-alert--info.is-dark{background-color:var(--el-color-info);color:var(--el-color-white)}.el-alert--warning{--el-alert-bg-color:var(--el-color-warning-light-9)}.el-alert--warning.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-warning)}.el-alert--warning.is-light .el-alert__description{color:var(--el-color-warning)}.el-alert--warning.is-dark{background-color:var(--el-color-warning);color:var(--el-color-white)}.el-alert--error{--el-alert-bg-color:var(--el-color-error-light-9)}.el-alert--error.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-error)}.el-alert--error.is-light .el-alert__description{color:var(--el-color-error)}.el-alert--error.is-dark{background-color:var(--el-color-error);color:var(--el-color-white)}.el-alert__content{flex-direction:column;gap:4px;display:flex}.el-alert .el-alert__icon{font-size:var(--el-alert-icon-size);width:var(--el-alert-icon-size);margin-right:8px}.el-alert .el-alert__icon.is-big{font-size:var(--el-alert-icon-large-size);width:var(--el-alert-icon-large-size);margin-right:12px}.el-alert__title{font-size:var(--el-alert-title-font-size);line-height:24px}.el-alert__title.with-description{font-size:var(--el-alert-title-with-description-font-size)}.el-alert .el-alert__description{font-size:var(--el-alert-description-font-size);margin:0}.el-alert .el-alert__close-btn{font-size:var(--el-alert-close-font-size);opacity:1;cursor:pointer;position:absolute;top:12px;right:16px}.el-alert .el-alert__close-btn.is-customed{font-style:normal;font-size:var(--el-alert-close-customed-font-size);line-height:24px;top:8px}.el-alert-fade-enter-from,.el-alert-fade-leave-active{opacity:0}.el-aside{box-sizing:border-box;width:var(--el-aside-width,300px);flex-shrink:0;overflow:auto}.el-autocomplete{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;width:var(--el-input-width);display:inline-block;position:relative}.el-autocomplete__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-autocomplete__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-autocomplete__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-autocomplete__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-autocomplete__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-autocomplete__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-autocomplete-suggestion{border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-autocomplete-suggestion__header{border-bottom:1px solid var(--el-border-color-lighter);padding:10px}.el-autocomplete-suggestion__footer{border-top:1px solid var(--el-border-color-lighter);padding:10px}.el-autocomplete-suggestion__wrap{box-sizing:border-box;max-height:280px;padding:10px 0}.el-autocomplete-suggestion__list{margin:0;padding:0}.el-autocomplete-suggestion li{cursor:pointer;color:var(--el-text-color-regular);line-height:34px;font-size:var(--el-font-size-base);text-align:left;text-overflow:ellipsis;white-space:nowrap;margin:0;padding:0 20px;list-style:none;overflow:hidden}.el-autocomplete-suggestion li:hover,.el-autocomplete-suggestion li.highlighted{background-color:var(--el-fill-color-light)}.el-autocomplete-suggestion li.divider{border-top:1px solid var(--el-color-black);margin-top:6px}.el-autocomplete-suggestion li.divider:last-child{margin-bottom:-6px}.el-autocomplete-suggestion.is-loading li{cursor:default;height:100px;color:var(--el-text-color-secondary);justify-content:center;align-items:center;font-size:20px;display:flex}.el-autocomplete-suggestion.is-loading li:hover{background-color:var(--el-bg-color-overlay)}.el-avatar{--el-avatar-text-color:var(--el-color-white);--el-avatar-bg-color:var(--el-text-color-disabled);--el-avatar-text-size:14px;--el-avatar-icon-size:18px;--el-avatar-border-radius:var(--el-border-radius-base);--el-avatar-size-large:56px;--el-avatar-size:40px;--el-avatar-size-small:24px;box-sizing:border-box;text-align:center;color:var(--el-avatar-text-color);background:var(--el-avatar-bg-color);width:var(--el-avatar-size);height:var(--el-avatar-size);font-size:var(--el-avatar-text-size);outline:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.el-avatar>img{width:100%;height:100%;display:block}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:var(--el-avatar-border-radius)}.el-avatar--icon{font-size:var(--el-avatar-icon-size)}.el-avatar--small{--el-avatar-size:24px}.el-avatar--large{--el-avatar-size:56px}.el-avatar-group{--el-avatar-group-item-gap:-8px;--el-avatar-group-collapse-item-gap:4px;display:inline-flex}.el-avatar-group .el-avatar{border:1px solid var(--el-border-color-extra-light)}.el-avatar-group .el-avatar:not(:first-child){margin-left:var(--el-avatar-group-item-gap)}.el-avatar-group__collapse-avatars{--el-avatar-group-item-gap:-8px;--el-avatar-group-collapse-item-gap:4px}.el-avatar-group__collapse-avatars .el-avatar:not(:first-child){margin-left:var(--el-avatar-group-collapse-item-gap)}.el-backtop{--el-backtop-bg-color:var(--el-bg-color-overlay);--el-backtop-text-color:var(--el-color-primary);--el-backtop-hover-bg-color:var(--el-border-color-extra-light);background-color:var(--el-backtop-bg-color);width:40px;height:40px;color:var(--el-backtop-text-color);box-shadow:var(--el-box-shadow-lighter);cursor:pointer;z-index:5;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex;position:fixed}.el-backtop:hover{background-color:var(--el-backtop-hover-bg-color)}.el-backtop__icon{font-size:20px}.el-badge{--el-badge-bg-color:var(--el-color-danger);--el-badge-radius:10px;--el-badge-font-size:12px;--el-badge-padding:6px;--el-badge-size:18px;vertical-align:middle;width:-moz-fit-content;width:fit-content;display:inline-block;position:relative}.el-badge__content{background-color:var(--el-badge-bg-color);border-radius:var(--el-badge-radius);color:var(--el-color-white);font-size:var(--el-badge-font-size);height:var(--el-badge-size);padding:0 var(--el-badge-padding);white-space:nowrap;border:1px solid var(--el-bg-color);justify-content:center;align-items:center;display:inline-flex}.el-badge__content.is-fixed{top:0;right:calc(1px + var(--el-badge-size) / 2);z-index:var(--el-index-normal);position:absolute;transform:translateY(-50%)translate(100%)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{border-radius:50%;width:8px;height:8px;padding:0;right:0}.el-badge__content.is-hide-zero{display:none}.el-badge__content--primary{background-color:var(--el-color-primary)}.el-badge__content--success{background-color:var(--el-color-success)}.el-badge__content--warning{background-color:var(--el-color-warning)}.el-badge__content--info{background-color:var(--el-color-info)}.el-badge__content--danger{background-color:var(--el-color-danger)}.el-breadcrumb__separator{color:var(--el-text-color-placeholder);margin:0 9px;font-weight:700}.el-breadcrumb__separator.el-icon{margin:0 6px;font-weight:400}.el-breadcrumb__separator.el-icon svg{vertical-align:middle}.el-breadcrumb__item{float:left;align-items:center;display:inline-flex}.el-breadcrumb__inner{color:var(--el-text-color-regular)}.el-breadcrumb__inner.is-link,.el-breadcrumb__inner a{transition:var(--el-transition-color);color:var(--el-text-color-primary);font-weight:700;text-decoration:none}.el-breadcrumb__inner.is-link:hover,.el-breadcrumb__inner a:hover{color:var(--el-color-primary);cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover{color:var(--el-text-color-regular);cursor:text;font-weight:400}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:before,.el-breadcrumb:after{content:"";display:table}.el-breadcrumb:after{clear:both}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child:last-child{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base);border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base)}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:var(--el-border-radius-round)}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:hover,.el-button-group>.el-button:focus,.el-button-group>.el-button:active,.el-button-group>.el-button.is-active{z-index:1}.el-button-group--horizontal{vertical-align:middle;display:inline-block}.el-button-group--horizontal:before,.el-button-group--horizontal:after{content:"";display:table}.el-button-group--horizontal:after{clear:both}.el-button-group--horizontal>.el-button{float:left;position:relative}.el-button-group--horizontal>.el-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.el-button-group--horizontal>.el-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group--horizontal>.el-button:not(:last-child){margin-right:-1px}.el-button-group--horizontal .el-button--primary:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--primary:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--primary:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--success:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--success:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--success:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--warning:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--warning:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--warning:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--danger:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--danger:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--danger:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--info:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--info:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--info:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal>.el-dropdown>.el-button{border-left-color:var(--el-button-divide-border-color);border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group--vertical{flex-direction:column;align-items:stretch;display:inline-flex}.el-button-group--vertical>.el-button{margin-top:-1px}.el-button-group--vertical>.el-button:first-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.el-button-group--vertical>.el-button:last-child{border-top-left-radius:0;border-top-right-radius:0}.el-button-group--vertical>.el-dropdown{margin-top:-1px}.el-button-group--vertical>.el-dropdown>.el-button{border-left-color:var(--el-button-divide-border-color);border-top-left-radius:0;border-top-right-radius:0}.el-button-group--vertical .el-button--primary:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--primary:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--primary:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--success:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--success:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--success:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--warning:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--warning:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--warning:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--danger:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--danger:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--danger:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--info:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--info:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--info:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:#ffffff80;--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-text-color-secondary);--el-button-active-color:var(--el-text-color-primary);white-space:nowrap;cursor:pointer;height:32px;color:var(--el-button-text-color);text-align:center;box-sizing:border-box;line-height:1;font-weight:var(--el-button-font-weight);-webkit-user-select:none;user-select:none;vertical-align:middle;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);outline:none;justify-content:center;align-items:center;transition:all .1s;display:inline-flex}.el-button:hover{color:var(--el-button-hover-text-color);border-color:var(--el-button-hover-border-color);background-color:var(--el-button-hover-bg-color);outline:none}.el-button:active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:8px 15px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button.is-disabled,.el-button.is-disabled:hover{color:var(--el-button-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color);border-color:var(--el-button-disabled-border-color)}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{z-index:1;pointer-events:none;content:"";border-radius:inherit;background-color:var(--el-mask-color-extra-light);position:absolute;inset:-1px}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-dashed{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary);border-style:dashed}.el-button.is-circle{border-radius:50%;width:32px;padding:8px}.el-button.is-text{color:var(--el-button-text-color);background-color:#0000;border:0 solid #0000}.el-button.is-text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important}.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{color:var(--el-button-text-color);background:0 0;border-color:#0000;height:auto;padding:2px}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button.is-link:not(.is-disabled):hover{background-color:#0000;border-color:#0000}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color);background-color:#0000;border-color:#0000}.el-button--text{color:var(--el-color-primary);background:0 0;border-color:#0000;padding-left:0;padding-right:0}.el-button--text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button--text:not(.is-disabled):hover{color:var(--el-color-primary-light-3);background-color:#0000;border-color:#0000}.el-button--text:not(.is-disabled):active{color:var(--el-color-primary-dark-2);background-color:#0000;border-color:#0000}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-plain,.el-button--primary.is-text,.el-button--primary.is-link{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:hover,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--primary.is-dashed{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-text-color:var(--el-color-primary-dark-2);--el-button-active-bg-color:var(--el-color-primary-light-9);--el-button-active-border-color:var(--el-color-primary-dark-2)}.el-button--primary.is-dashed.is-disabled,.el-button--primary.is-dashed.is-disabled:hover,.el-button--primary.is-dashed.is-disabled:focus,.el-button--primary.is-dashed.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-plain,.el-button--success.is-text,.el-button--success.is-link{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:hover,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:active,.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--success.is-dashed{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-success);--el-button-hover-bg-color:var(--el-color-success-light-9);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-text-color:var(--el-color-success-dark-2);--el-button-active-bg-color:var(--el-color-success-light-9);--el-button-active-border-color:var(--el-color-success-dark-2)}.el-button--success.is-dashed.is-disabled,.el-button--success.is-dashed.is-disabled:hover,.el-button--success.is-dashed.is-disabled:focus,.el-button--success.is-dashed.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-plain,.el-button--warning.is-text,.el-button--warning.is-link{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:hover,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--warning.is-dashed{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-warning);--el-button-hover-bg-color:var(--el-color-warning-light-9);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-text-color:var(--el-color-warning-dark-2);--el-button-active-bg-color:var(--el-color-warning-light-9);--el-button-active-border-color:var(--el-color-warning-dark-2)}.el-button--warning.is-dashed.is-disabled,.el-button--warning.is-dashed.is-disabled:hover,.el-button--warning.is-dashed.is-disabled:focus,.el-button--warning.is-dashed.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-plain,.el-button--danger.is-text,.el-button--danger.is-link{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:hover,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--danger.is-dashed{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-danger);--el-button-hover-bg-color:var(--el-color-danger-light-9);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-text-color:var(--el-color-danger-dark-2);--el-button-active-bg-color:var(--el-color-danger-light-9);--el-button-active-border-color:var(--el-color-danger-dark-2)}.el-button--danger.is-dashed.is-disabled,.el-button--danger.is-dashed.is-disabled:hover,.el-button--danger.is-dashed.is-disabled:focus,.el-button--danger.is-dashed.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-plain,.el-button--info.is-text,.el-button--info.is-link{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:hover,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:active,.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--info.is-dashed{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-info);--el-button-hover-bg-color:var(--el-color-info-light-9);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-text-color:var(--el-color-info-dark-2);--el-button-active-bg-color:var(--el-color-info-light-9);--el-button-active-border-color:var(--el-color-info-dark-2)}.el-button--info.is-dashed.is-disabled,.el-button--info.is-dashed.is-disabled:hover,.el-button--info.is-dashed.is-disabled:focus,.el-button--info.is-dashed.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--large{--el-button-size:40px;height:var(--el-button-size)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:12px 19px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{width:var(--el-button-size);padding:12px}.el-button--small{--el-button-size:24px;height:var(--el-button-size)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:5px 11px;font-size:12px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{width:var(--el-button-size);padding:5px}.el-calendar{--el-calendar-border:var(--el-table-border,1px solid var(--el-border-color-lighter));--el-calendar-header-border-bottom:var(--el-calendar-border);--el-calendar-selected-bg-color:var(--el-color-primary-light-9);--el-calendar-cell-width:85px;background-color:var(--el-fill-color-blank)}.el-calendar__header{border-bottom:var(--el-calendar-header-border-bottom);justify-content:space-between;padding:12px 20px;display:flex}.el-calendar__title{color:var(--el-text-color);align-self:center}.el-calendar__body{padding:12px 20px 35px}.el-calendar__select-controller .el-select{margin-right:8px}.el-calendar__select-controller .el-calendar-select__year{width:120px}.el-calendar__select-controller .el-calendar-select__month{width:60px}.el-calendar-table{table-layout:fixed;width:100%}.el-calendar-table thead th{color:var(--el-text-color-regular);padding:12px 0;font-weight:400}.el-calendar-table:not(.is-range) td.prev,.el-calendar-table:not(.is-range) td.next{color:var(--el-text-color-placeholder)}.el-calendar-table td{border-bottom:var(--el-calendar-border);border-right:var(--el-calendar-border);vertical-align:top;transition:background-color var(--el-transition-duration-fast) ease}.el-calendar-table td.is-selected{background-color:var(--el-calendar-selected-bg-color)}.el-calendar-table td.is-today{color:var(--el-color-primary)}.el-calendar-table tr:first-child td{border-top:var(--el-calendar-border)}.el-calendar-table tr td:first-child{border-left:var(--el-calendar-border)}.el-calendar-table tr.el-calendar-table__row--hide-border td{border-top:none}.el-calendar-table .el-calendar-day{box-sizing:border-box;height:var(--el-calendar-cell-width);padding:8px}.el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.el-card{--el-card-border-color:var(--el-border-color-light);--el-card-border-radius:4px;--el-card-padding:20px;--el-card-bg-color:var(--el-fill-color-blank);border-radius:var(--el-card-border-radius);border:1px solid var(--el-card-border-color);background-color:var(--el-card-bg-color);color:var(--el-text-color-primary);transition:var(--el-transition-duration);flex-direction:column;display:flex;overflow:hidden}.el-card.is-always-shadow,.el-card.is-hover-shadow:hover,.el-card.is-hover-shadow:focus{box-shadow:var(--el-box-shadow-light)}.el-card__header{padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding);border-bottom:1px solid var(--el-card-border-color);box-sizing:border-box}.el-card__body{padding:var(--el-card-padding);flex-grow:1;overflow:auto}.el-card__footer{padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding);border-top:1px solid var(--el-card-border-color);box-sizing:border-box}.el-carousel__item{width:100%;height:100%;z-index:calc(var(--el-index-normal) - 1);display:inline-block;position:absolute;top:0;left:0;overflow:hidden}.el-carousel__item.is-active{z-index:calc(var(--el-index-normal) - 1)}.el-carousel__item.is-animating{transition:transform .4s ease-in-out}.el-carousel__item--card{width:50%;transition:transform .4s ease-in-out}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:var(--el-index-normal)}.el-carousel__item--card.is-in-stage:hover .el-carousel__mask,.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:calc(var(--el-index-normal) + 1)}.el-carousel__item--card-vertical{width:100%;height:50%}.el-carousel__mask{background-color:var(--el-color-white);opacity:.24;width:100%;height:100%;transition:var(--el-transition-duration-fast);position:absolute;top:0;left:0}.el-carousel{--el-carousel-arrow-font-size:12px;--el-carousel-arrow-size:36px;--el-carousel-arrow-background:#1f2d3d1c;--el-carousel-arrow-hover-background:#1f2d3d3b;--el-carousel-indicator-width:30px;--el-carousel-indicator-height:2px;--el-carousel-indicator-padding-horizontal:4px;--el-carousel-indicator-padding-vertical:12px;--el-carousel-indicator-out-color:var(--el-border-color-hover);position:relative}.el-carousel--horizontal,.el-carousel--vertical{overflow:hidden}.el-carousel.is-vertical-outside{flex-direction:row;align-items:center;display:flex}.el-carousel.is-vertical-outside .el-carousel__container{flex:1}.el-carousel__container{height:300px;position:relative}.el-carousel__arrow{height:var(--el-carousel-arrow-size);width:var(--el-carousel-arrow-size);cursor:pointer;transition:var(--el-transition-duration);background-color:var(--el-carousel-arrow-background);color:#fff;z-index:10;text-align:center;font-size:var(--el-carousel-arrow-font-size);border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:var(--el-carousel-arrow-hover-background)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{z-index:calc(var(--el-index-normal) + 1);margin:0;padding:0;list-style:none;position:absolute}.el-carousel__indicators--horizontal{bottom:0;left:50%;transform:translate(-50%)}.el-carousel__indicators--vertical{top:50%;right:0;transform:translateY(-50%)}.el-carousel__indicators--outside{text-align:center;position:static;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:var(--el-carousel-indicator-out-color);opacity:.24}.el-carousel__indicators--right{right:0}.el-carousel__indicators--labels .el-carousel__button{color:#000;padding:2px 18px;font-size:12px}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{cursor:pointer;background-color:#0000}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{padding:var(--el-carousel-indicator-padding-vertical) var(--el-carousel-indicator-padding-horizontal);display:inline-block}.el-carousel__indicator--vertical{padding:var(--el-carousel-indicator-padding-horizontal) var(--el-carousel-indicator-padding-vertical)}.el-carousel__indicator--vertical .el-carousel__button{width:var(--el-carousel-indicator-height);height:calc(var(--el-carousel-indicator-width) / 2)}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{opacity:.48;width:var(--el-carousel-indicator-width);height:var(--el-carousel-indicator-height);cursor:pointer;transition:var(--el-transition-duration);background-color:#fff;border:none;outline:none;margin:0;padding:0;display:block}.el-carousel__indicators--labels .el-carousel__button{width:auto;height:auto}.carousel-arrow-left-enter-from,.carousel-arrow-left-leave-active{opacity:0;transform:translateY(-50%)translate(-10px)}.carousel-arrow-right-enter-from,.carousel-arrow-right-leave-active{opacity:0;transform:translateY(-50%)translate(10px)}.el-transitioning{filter:url(#elCarouselHorizontal)}.el-transitioning-vertical{filter:url(#elCarouselVertical)}.el-cascader-panel{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);border-radius:var(--el-cascader-menu-radius);width:-moz-fit-content;width:fit-content;font-size:var(--el-cascader-menu-font-size);display:flex}.el-cascader-panel.is-bordered{border:var(--el-cascader-menu-border);border-radius:var(--el-cascader-menu-radius)}.el-cascader-menu{box-sizing:border-box;min-width:180px;color:var(--el-cascader-menu-text-color);border-right:var(--el-cascader-menu-border)}.el-cascader-menu:last-child{border-right:none}.el-cascader-menu:last-child .el-cascader-node{padding-right:20px}.el-cascader-menu__wrap.el-scrollbar__wrap{height:204px}.el-cascader-menu__list{box-sizing:border-box;min-height:100%;margin:0;padding:6px 0;list-style:none;position:relative}.el-cascader-menu__hover-zone{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.el-cascader-menu__empty-text{color:var(--el-cascader-color-empty);align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-cascader-menu__empty-text .is-loading{margin-right:2px}.el-cascader-node{outline:none;align-items:center;height:34px;padding:0 30px 0 20px;line-height:34px;display:flex;position:relative}.el-cascader-node.is-selectable.in-active-path{color:var(--el-cascader-menu-text-color)}.el-cascader-node.in-active-path,.el-cascader-node.is-selectable.in-checked-path,.el-cascader-node.is-active{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader-node:not(.is-disabled){cursor:pointer}.el-cascader-node:not(.is-disabled):hover,.el-cascader-node:not(.is-disabled):focus{background:var(--el-cascader-node-background-hover)}.el-cascader-node.is-disabled{color:var(--el-cascader-node-color-disabled);cursor:not-allowed}.el-cascader-node__prefix{position:absolute;left:10px}.el-cascader-node__postfix{position:absolute;right:10px}.el-cascader-node__label{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;padding:0 8px;overflow:hidden}.el-cascader-node>.el-checkbox,.el-cascader-node>.el-radio{margin-right:0}.el-cascader-node>.el-radio .el-radio__label{padding-left:0}.el-cascader{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);vertical-align:middle;font-size:var(--el-font-size-base);outline:none;line-height:32px;display:inline-block;position:relative}.el-cascader:not(.is-disabled):hover .el-input__wrapper{cursor:pointer;box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-cascader .el-input{cursor:pointer;display:flex}.el-cascader .el-input .el-input__inner{text-overflow:ellipsis}.el-cascader .el-input .el-input__inner:read-only{cursor:pointer}.el-cascader .el-input .el-input__inner:disabled{cursor:not-allowed}.el-cascader .el-input .el-input__suffix-inner .el-icon svg{vertical-align:middle}.el-cascader .el-input .icon-arrow-down{transition:transform var(--el-transition-duration);font-size:14px}.el-cascader .el-input .icon-arrow-down.is-reverse{transform:rotate(180deg)}.el-cascader .el-input .icon-circle-close:hover{color:var(--el-input-clear-hover-color,var(--el-text-color-secondary))}.el-cascader .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-cascader--large{font-size:14px;line-height:40px}.el-cascader--large .el-cascader__tags{gap:6px;padding:8px}.el-cascader--large .el-cascader__search-input{height:24px;margin-left:7px}.el-cascader--small{font-size:12px;line-height:24px}.el-cascader--small .el-cascader__tags{gap:4px;padding:2px}.el-cascader--small .el-cascader__search-input{height:20px;margin-left:5px}.el-cascader.is-disabled .el-cascader__label{z-index:calc(var(--el-index-normal) + 1);color:var(--el-disabled-text-color)}.el-cascader__dropdown{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);font-size:var(--el-cascader-menu-font-size);border-radius:var(--el-cascader-menu-radius)}.el-cascader__dropdown.el-popper{background:var(--el-cascader-menu-fill);border:var(--el-cascader-menu-border);box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__dropdown.el-popper .el-popper__arrow:before{border:var(--el-cascader-menu-border)}.el-cascader__dropdown.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-cascader__dropdown.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-cascader__dropdown.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-cascader__dropdown.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-cascader__dropdown.el-popper{box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__header{border-bottom:1px solid var(--el-border-color-light);padding:10px}.el-cascader__footer{border-top:1px solid var(--el-border-color-light);padding:10px}.el-cascader__tags{text-align:left;box-sizing:border-box;flex-wrap:wrap;gap:6px;padding:4px;line-height:normal;display:flex;position:absolute;top:50%;left:0;right:30px;transform:translateY(-50%)}.el-cascader__tags .el-tag{text-overflow:ellipsis;background:var(--el-cascader-tag-background);align-items:center;max-width:100%;display:inline-flex}.el-cascader__tags .el-tag.el-tag--dark,.el-cascader__tags .el-tag.el-tag--plain{background-color:var(--el-tag-bg-color)}.el-cascader__tags .el-tag:not(.is-hit){border-color:#0000}.el-cascader__tags .el-tag:not(.is-hit).el-tag--dark,.el-cascader__tags .el-tag:not(.is-hit).el-tag--plain{border-color:var(--el-tag-border-color)}.el-cascader__tags .el-tag>span{text-overflow:ellipsis;flex:1;line-height:normal;overflow:hidden}.el-cascader__tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:var(--el-color-white);flex:none}.el-cascader__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__tags .el-tag+input{margin-left:0}.el-cascader__tags.is-validate{right:55px}.el-cascader__collapse-tags{white-space:normal;z-index:var(--el-index-normal)}.el-cascader__collapse-tags .el-tag{text-overflow:ellipsis;background:var(--el-fill-color);align-items:center;max-width:100%;display:inline-flex}.el-cascader__collapse-tags .el-tag.el-tag--dark,.el-cascader__collapse-tags .el-tag.el-tag--plain{background-color:var(--el-tag-bg-color)}.el-cascader__collapse-tags .el-tag:not(.is-hit){border-color:#0000}.el-cascader__collapse-tags .el-tag:not(.is-hit).el-tag--dark,.el-cascader__collapse-tags .el-tag:not(.is-hit).el-tag--plain{border-color:var(--el-tag-border-color)}.el-cascader__collapse-tags .el-tag>span{text-overflow:ellipsis;flex:1;line-height:normal;overflow:hidden}.el-cascader__collapse-tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:var(--el-color-white);flex:none}.el-cascader__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__collapse-tags .el-tag+input{margin-left:0}.el-cascader__collapse-tags .el-tag{margin:2px 0}.el-cascader__suggestion-panel{border-radius:var(--el-cascader-menu-radius)}.el-cascader__suggestion-list{max-height:204px;font-size:var(--el-font-size-base);color:var(--el-cascader-menu-text-color);text-align:center;margin:0;padding:6px 0}.el-cascader__suggestion-item{text-align:left;cursor:pointer;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 15px;display:flex}.el-cascader__suggestion-item:hover,.el-cascader__suggestion-item:focus{background:var(--el-cascader-node-background-hover)}.el-cascader__suggestion-item.is-checked{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader__suggestion-item>span{margin-right:10px}.el-cascader__empty-text{color:var(--el-cascader-color-empty);margin:10px 0}.el-cascader__search-input{min-width:60px;height:24px;color:var(--el-cascader-menu-text-color);box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;margin-left:7px;padding:0}.el-cascader__search-input::placeholder{color:#0000}.el-check-tag{background-color:var(--el-color-info-light-9);border-radius:var(--el-border-radius-base);color:var(--el-color-info);cursor:pointer;font-size:var(--el-font-size-base);line-height:var(--el-font-size-base);transition:var(--el-transition-all);padding:7px 15px;font-weight:700;display:inline-block}.el-check-tag:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.el-check-tag--primary.is-checked{background-color:var(--el-color-primary-light-8);color:var(--el-color-primary)}.el-check-tag.el-check-tag--primary.is-checked:hover{background-color:var(--el-color-primary-light-7)}.el-check-tag.el-check-tag--primary.is-checked.is-disabled{background-color:var(--el-color-primary-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--primary.is-checked.is-disabled:hover{background-color:var(--el-color-primary-light-8)}.el-check-tag.el-check-tag--primary.is-disabled{background-color:var(--el-color-info-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--primary.is-disabled:hover{background-color:var(--el-color-info-light-9)}.el-check-tag.el-check-tag--success.is-checked{background-color:var(--el-color-success-light-8);color:var(--el-color-success)}.el-check-tag.el-check-tag--success.is-checked:hover{background-color:var(--el-color-success-light-7)}.el-check-tag.el-check-tag--success.is-checked.is-disabled{background-color:var(--el-color-success-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--success.is-checked.is-disabled:hover{background-color:var(--el-color-success-light-8)}.el-check-tag.el-check-tag--success.is-disabled{background-color:var(--el-color-success-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--success.is-disabled:hover{background-color:var(--el-color-success-light-9)}.el-check-tag.el-check-tag--warning.is-checked{background-color:var(--el-color-warning-light-8);color:var(--el-color-warning)}.el-check-tag.el-check-tag--warning.is-checked:hover{background-color:var(--el-color-warning-light-7)}.el-check-tag.el-check-tag--warning.is-checked.is-disabled{background-color:var(--el-color-warning-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--warning.is-checked.is-disabled:hover{background-color:var(--el-color-warning-light-8)}.el-check-tag.el-check-tag--warning.is-disabled{background-color:var(--el-color-warning-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--warning.is-disabled:hover{background-color:var(--el-color-warning-light-9)}.el-check-tag.el-check-tag--danger.is-checked{background-color:var(--el-color-danger-light-8);color:var(--el-color-danger)}.el-check-tag.el-check-tag--danger.is-checked:hover{background-color:var(--el-color-danger-light-7)}.el-check-tag.el-check-tag--danger.is-checked.is-disabled{background-color:var(--el-color-danger-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--danger.is-checked.is-disabled:hover{background-color:var(--el-color-danger-light-8)}.el-check-tag.el-check-tag--danger.is-disabled{background-color:var(--el-color-danger-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--danger.is-disabled:hover{background-color:var(--el-color-danger-light-9)}.el-check-tag.el-check-tag--error.is-checked{background-color:var(--el-color-error-light-8);color:var(--el-color-error)}.el-check-tag.el-check-tag--error.is-checked:hover{background-color:var(--el-color-error-light-7)}.el-check-tag.el-check-tag--error.is-checked.is-disabled{background-color:var(--el-color-error-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--error.is-checked.is-disabled:hover{background-color:var(--el-color-error-light-8)}.el-check-tag.el-check-tag--error.is-disabled{background-color:var(--el-color-error-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--error.is-disabled:hover{background-color:var(--el-color-error-light-9)}.el-check-tag.el-check-tag--info.is-checked{background-color:var(--el-color-info-light-8);color:var(--el-color-info)}.el-check-tag.el-check-tag--info.is-checked:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.el-check-tag--info.is-checked.is-disabled{background-color:var(--el-color-info-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--info.is-checked.is-disabled:hover{background-color:var(--el-color-info-light-8)}.el-check-tag.el-check-tag--info.is-disabled{background-color:var(--el-color-info-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--info.is-disabled:hover{background-color:var(--el-color-info-light-9)}.el-checkbox-button{--el-checkbox-button-checked-bg-color:var(--el-color-primary);--el-checkbox-button-checked-text-color:var(--el-color-white);--el-checkbox-button-checked-border-color:var(--el-color-primary);--el-checkbox-button-disabled-checked-fill:var(--el-border-color-extra-light);display:inline-block;position:relative}.el-checkbox-button__inner{line-height:1;font-weight:var(--el-checkbox-font-weight);white-space:nowrap;vertical-align:middle;cursor:pointer;background:var(--el-button-bg-color,var(--el-fill-color-blank));outline:var(--el-border);color:var(--el-button-text-color,var(--el-text-color-regular));-webkit-appearance:none;text-align:center;box-sizing:border-box;transition:var(--el-transition-all);-webkit-user-select:none;user-select:none;font-size:var(--el-font-size-base);border-radius:0;margin:0;padding:8px 15px;display:inline-block;position:relative}.el-checkbox-button__inner.is-round{padding:8px 15px}.el-checkbox-button__inner:hover{color:var(--el-color-primary)}.el-checkbox-button__inner [class*=el-icon-]{line-height:.9}.el-checkbox-button__inner [class*=el-icon-]+span{margin-left:5px}.el-checkbox-button__original{opacity:0;z-index:-1;outline:none;margin:0;position:absolute}.el-checkbox-button.is-checked .el-checkbox-button__inner{color:var(--el-checkbox-button-checked-text-color);background-color:var(--el-checkbox-button-checked-bg-color);border-color:var(--el-checkbox-button-checked-border-color);box-shadow:-1px 0 0 0 var(--el-color-primary-light-7)}.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner{border-left-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button.is-disabled .el-checkbox-button__inner{color:var(--el-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none}.el-checkbox-button.is-disabled:first-child .el-checkbox-button__inner{border-left-color:var(--el-button-disabled-border-color,var(--el-border-color-light))}.el-checkbox-button.is-disabled.is-checked .el-checkbox-button__inner{background-color:var(--el-checkbox-button-disabled-checked-fill)}.el-checkbox-button:first-child .el-checkbox-button__inner{border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base);box-shadow:none!important}.el-checkbox-button.is-focus .el-checkbox-button__inner{border-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button:last-child .el-checkbox-button__inner{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base)}.el-checkbox-button--large .el-checkbox-button__inner{font-size:var(--el-font-size-base);border-radius:0;padding:12px 19px}.el-checkbox-button--large .el-checkbox-button__inner.is-round{padding:12px 19px}.el-checkbox-button--small .el-checkbox-button__inner{border-radius:0;padding:5px 11px;font-size:12px}.el-checkbox-button--small .el-checkbox-button__inner.is-round{padding:5px 11px}.el-checkbox-group{font-size:0;line-height:0}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);color:var(--el-checkbox-text-color);font-weight:var(--el-checkbox-font-weight);font-size:var(--el-font-size-base);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;height:var(--el-checkbox-height,32px);align-items:center;margin-right:30px;display:inline-flex;position:relative}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox input:focus-visible+.el-checkbox__inner{outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px;border-radius:var(--el-checkbox-border-radius)}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:none;display:inline-flex;position:relative}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:var(--el-checkbox-disabled-icon-color);will-change:transform}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-checked-icon-color);transform:translate(-45%,-60%)rotate(45deg)scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";background-color:var(--el-checkbox-checked-icon-color);height:2px;display:block;position:absolute;top:5px;left:0;right:0;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;width:var(--el-checkbox-input-width);height:var(--el-checkbox-input-height);background-color:var(--el-checkbox-bg-color);z-index:var(--el-index-normal);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);display:inline-block;position:relative}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{box-sizing:content-box;content:"";transform-origin:50%;border:1px solid #0000;border-top:0;border-left:0;width:3px;height:7px;transition:transform .15s ease-in 50ms;position:absolute;top:50%;left:50%;transform:translate(-45%,-60%)rotate(45deg)scaleY(0)}.el-checkbox__original{opacity:0;z-index:-1;outline:none;width:0;height:0;margin:0;position:absolute}.el-checkbox__label{line-height:1;font-size:var(--el-checkbox-font-size);padding-left:8px;display:inline-block}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox:last-of-type{margin-right:0}[class*=el-col-]{box-sizing:border-box}[class*=el-col-].is-guttered{min-height:1px;display:block}.el-col-0{flex:0 0;max-width:0%;display:none}.el-col-0.is-guttered{display:none}.el-col-offset-0{margin-left:0%}.el-col-pull-0{position:relative;right:0%}.el-col-push-0{position:relative;left:0%}.el-col-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-1.is-guttered{display:block}.el-col-offset-1{margin-left:4.16667%}.el-col-pull-1{position:relative;right:4.16667%}.el-col-push-1{position:relative;left:4.16667%}.el-col-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-2.is-guttered{display:block}.el-col-offset-2{margin-left:8.33333%}.el-col-pull-2{position:relative;right:8.33333%}.el-col-push-2{position:relative;left:8.33333%}.el-col-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-3.is-guttered{display:block}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{position:relative;right:12.5%}.el-col-push-3{position:relative;left:12.5%}.el-col-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-4.is-guttered{display:block}.el-col-offset-4{margin-left:16.6667%}.el-col-pull-4{position:relative;right:16.6667%}.el-col-push-4{position:relative;left:16.6667%}.el-col-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-5.is-guttered{display:block}.el-col-offset-5{margin-left:20.8333%}.el-col-pull-5{position:relative;right:20.8333%}.el-col-push-5{position:relative;left:20.8333%}.el-col-6{flex:0 0 25%;max-width:25%;display:block}.el-col-6.is-guttered{display:block}.el-col-offset-6{margin-left:25%}.el-col-pull-6{position:relative;right:25%}.el-col-push-6{position:relative;left:25%}.el-col-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-7.is-guttered{display:block}.el-col-offset-7{margin-left:29.1667%}.el-col-pull-7{position:relative;right:29.1667%}.el-col-push-7{position:relative;left:29.1667%}.el-col-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-8.is-guttered{display:block}.el-col-offset-8{margin-left:33.3333%}.el-col-pull-8{position:relative;right:33.3333%}.el-col-push-8{position:relative;left:33.3333%}.el-col-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-9.is-guttered{display:block}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{position:relative;right:37.5%}.el-col-push-9{position:relative;left:37.5%}.el-col-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-10.is-guttered{display:block}.el-col-offset-10{margin-left:41.6667%}.el-col-pull-10{position:relative;right:41.6667%}.el-col-push-10{position:relative;left:41.6667%}.el-col-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-11.is-guttered{display:block}.el-col-offset-11{margin-left:45.8333%}.el-col-pull-11{position:relative;right:45.8333%}.el-col-push-11{position:relative;left:45.8333%}.el-col-12{flex:0 0 50%;max-width:50%;display:block}.el-col-12.is-guttered{display:block}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{position:relative;left:50%}.el-col-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-13.is-guttered{display:block}.el-col-offset-13{margin-left:54.1667%}.el-col-pull-13{position:relative;right:54.1667%}.el-col-push-13{position:relative;left:54.1667%}.el-col-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-14.is-guttered{display:block}.el-col-offset-14{margin-left:58.3333%}.el-col-pull-14{position:relative;right:58.3333%}.el-col-push-14{position:relative;left:58.3333%}.el-col-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-15.is-guttered{display:block}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{position:relative;right:62.5%}.el-col-push-15{position:relative;left:62.5%}.el-col-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-16.is-guttered{display:block}.el-col-offset-16{margin-left:66.6667%}.el-col-pull-16{position:relative;right:66.6667%}.el-col-push-16{position:relative;left:66.6667%}.el-col-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-17.is-guttered{display:block}.el-col-offset-17{margin-left:70.8333%}.el-col-pull-17{position:relative;right:70.8333%}.el-col-push-17{position:relative;left:70.8333%}.el-col-18{flex:0 0 75%;max-width:75%;display:block}.el-col-18.is-guttered{display:block}.el-col-offset-18{margin-left:75%}.el-col-pull-18{position:relative;right:75%}.el-col-push-18{position:relative;left:75%}.el-col-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-19.is-guttered{display:block}.el-col-offset-19{margin-left:79.1667%}.el-col-pull-19{position:relative;right:79.1667%}.el-col-push-19{position:relative;left:79.1667%}.el-col-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-20.is-guttered{display:block}.el-col-offset-20{margin-left:83.3333%}.el-col-pull-20{position:relative;right:83.3333%}.el-col-push-20{position:relative;left:83.3333%}.el-col-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-21.is-guttered{display:block}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{position:relative;right:87.5%}.el-col-push-21{position:relative;left:87.5%}.el-col-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-22.is-guttered{display:block}.el-col-offset-22{margin-left:91.6667%}.el-col-pull-22{position:relative;right:91.6667%}.el-col-push-22{position:relative;left:91.6667%}.el-col-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-23.is-guttered{display:block}.el-col-offset-23{margin-left:95.8333%}.el-col-pull-23{position:relative;right:95.8333%}.el-col-push-23{position:relative;left:95.8333%}.el-col-24{flex:0 0 100%;max-width:100%;display:block}.el-col-24.is-guttered{display:block}.el-col-offset-24{margin-left:100%}.el-col-pull-24{position:relative;right:100%}.el-col-push-24{position:relative;left:100%}@media only screen and (max-width:767px){.el-col-xs-0{flex:0 0;max-width:0%;display:none}.el-col-xs-0.is-guttered{display:none}.el-col-xs-offset-0{margin-left:0%}.el-col-xs-pull-0{position:relative;right:0%}.el-col-xs-push-0{position:relative;left:0%}.el-col-xs-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-xs-1.is-guttered{display:block}.el-col-xs-offset-1{margin-left:4.16667%}.el-col-xs-pull-1{position:relative;right:4.16667%}.el-col-xs-push-1{position:relative;left:4.16667%}.el-col-xs-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-xs-2.is-guttered{display:block}.el-col-xs-offset-2{margin-left:8.33333%}.el-col-xs-pull-2{position:relative;right:8.33333%}.el-col-xs-push-2{position:relative;left:8.33333%}.el-col-xs-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-xs-3.is-guttered{display:block}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{position:relative;left:12.5%}.el-col-xs-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-xs-4.is-guttered{display:block}.el-col-xs-offset-4{margin-left:16.6667%}.el-col-xs-pull-4{position:relative;right:16.6667%}.el-col-xs-push-4{position:relative;left:16.6667%}.el-col-xs-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-xs-5.is-guttered{display:block}.el-col-xs-offset-5{margin-left:20.8333%}.el-col-xs-pull-5{position:relative;right:20.8333%}.el-col-xs-push-5{position:relative;left:20.8333%}.el-col-xs-6{flex:0 0 25%;max-width:25%;display:block}.el-col-xs-6.is-guttered{display:block}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{position:relative;left:25%}.el-col-xs-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-xs-7.is-guttered{display:block}.el-col-xs-offset-7{margin-left:29.1667%}.el-col-xs-pull-7{position:relative;right:29.1667%}.el-col-xs-push-7{position:relative;left:29.1667%}.el-col-xs-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-xs-8.is-guttered{display:block}.el-col-xs-offset-8{margin-left:33.3333%}.el-col-xs-pull-8{position:relative;right:33.3333%}.el-col-xs-push-8{position:relative;left:33.3333%}.el-col-xs-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-xs-9.is-guttered{display:block}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{position:relative;left:37.5%}.el-col-xs-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-xs-10.is-guttered{display:block}.el-col-xs-offset-10{margin-left:41.6667%}.el-col-xs-pull-10{position:relative;right:41.6667%}.el-col-xs-push-10{position:relative;left:41.6667%}.el-col-xs-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-xs-11.is-guttered{display:block}.el-col-xs-offset-11{margin-left:45.8333%}.el-col-xs-pull-11{position:relative;right:45.8333%}.el-col-xs-push-11{position:relative;left:45.8333%}.el-col-xs-12{flex:0 0 50%;max-width:50%;display:block}.el-col-xs-12.is-guttered{display:block}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{position:relative;left:50%}.el-col-xs-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-xs-13.is-guttered{display:block}.el-col-xs-offset-13{margin-left:54.1667%}.el-col-xs-pull-13{position:relative;right:54.1667%}.el-col-xs-push-13{position:relative;left:54.1667%}.el-col-xs-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-xs-14.is-guttered{display:block}.el-col-xs-offset-14{margin-left:58.3333%}.el-col-xs-pull-14{position:relative;right:58.3333%}.el-col-xs-push-14{position:relative;left:58.3333%}.el-col-xs-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-xs-15.is-guttered{display:block}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{position:relative;left:62.5%}.el-col-xs-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-xs-16.is-guttered{display:block}.el-col-xs-offset-16{margin-left:66.6667%}.el-col-xs-pull-16{position:relative;right:66.6667%}.el-col-xs-push-16{position:relative;left:66.6667%}.el-col-xs-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-xs-17.is-guttered{display:block}.el-col-xs-offset-17{margin-left:70.8333%}.el-col-xs-pull-17{position:relative;right:70.8333%}.el-col-xs-push-17{position:relative;left:70.8333%}.el-col-xs-18{flex:0 0 75%;max-width:75%;display:block}.el-col-xs-18.is-guttered{display:block}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{position:relative;left:75%}.el-col-xs-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-xs-19.is-guttered{display:block}.el-col-xs-offset-19{margin-left:79.1667%}.el-col-xs-pull-19{position:relative;right:79.1667%}.el-col-xs-push-19{position:relative;left:79.1667%}.el-col-xs-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-xs-20.is-guttered{display:block}.el-col-xs-offset-20{margin-left:83.3333%}.el-col-xs-pull-20{position:relative;right:83.3333%}.el-col-xs-push-20{position:relative;left:83.3333%}.el-col-xs-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-xs-21.is-guttered{display:block}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{position:relative;left:87.5%}.el-col-xs-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-xs-22.is-guttered{display:block}.el-col-xs-offset-22{margin-left:91.6667%}.el-col-xs-pull-22{position:relative;right:91.6667%}.el-col-xs-push-22{position:relative;left:91.6667%}.el-col-xs-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-xs-23.is-guttered{display:block}.el-col-xs-offset-23{margin-left:95.8333%}.el-col-xs-pull-23{position:relative;right:95.8333%}.el-col-xs-push-23{position:relative;left:95.8333%}.el-col-xs-24{flex:0 0 100%;max-width:100%;display:block}.el-col-xs-24.is-guttered{display:block}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{position:relative;left:100%}}@media only screen and (min-width:768px){.el-col-sm-0{flex:0 0;max-width:0%;display:none}.el-col-sm-0.is-guttered{display:none}.el-col-sm-offset-0{margin-left:0%}.el-col-sm-pull-0{position:relative;right:0%}.el-col-sm-push-0{position:relative;left:0%}.el-col-sm-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-sm-1.is-guttered{display:block}.el-col-sm-offset-1{margin-left:4.16667%}.el-col-sm-pull-1{position:relative;right:4.16667%}.el-col-sm-push-1{position:relative;left:4.16667%}.el-col-sm-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-sm-2.is-guttered{display:block}.el-col-sm-offset-2{margin-left:8.33333%}.el-col-sm-pull-2{position:relative;right:8.33333%}.el-col-sm-push-2{position:relative;left:8.33333%}.el-col-sm-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-sm-3.is-guttered{display:block}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{position:relative;left:12.5%}.el-col-sm-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-sm-4.is-guttered{display:block}.el-col-sm-offset-4{margin-left:16.6667%}.el-col-sm-pull-4{position:relative;right:16.6667%}.el-col-sm-push-4{position:relative;left:16.6667%}.el-col-sm-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-sm-5.is-guttered{display:block}.el-col-sm-offset-5{margin-left:20.8333%}.el-col-sm-pull-5{position:relative;right:20.8333%}.el-col-sm-push-5{position:relative;left:20.8333%}.el-col-sm-6{flex:0 0 25%;max-width:25%;display:block}.el-col-sm-6.is-guttered{display:block}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{position:relative;left:25%}.el-col-sm-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-sm-7.is-guttered{display:block}.el-col-sm-offset-7{margin-left:29.1667%}.el-col-sm-pull-7{position:relative;right:29.1667%}.el-col-sm-push-7{position:relative;left:29.1667%}.el-col-sm-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-sm-8.is-guttered{display:block}.el-col-sm-offset-8{margin-left:33.3333%}.el-col-sm-pull-8{position:relative;right:33.3333%}.el-col-sm-push-8{position:relative;left:33.3333%}.el-col-sm-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-sm-9.is-guttered{display:block}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{position:relative;left:37.5%}.el-col-sm-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-sm-10.is-guttered{display:block}.el-col-sm-offset-10{margin-left:41.6667%}.el-col-sm-pull-10{position:relative;right:41.6667%}.el-col-sm-push-10{position:relative;left:41.6667%}.el-col-sm-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-sm-11.is-guttered{display:block}.el-col-sm-offset-11{margin-left:45.8333%}.el-col-sm-pull-11{position:relative;right:45.8333%}.el-col-sm-push-11{position:relative;left:45.8333%}.el-col-sm-12{flex:0 0 50%;max-width:50%;display:block}.el-col-sm-12.is-guttered{display:block}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{position:relative;left:50%}.el-col-sm-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-sm-13.is-guttered{display:block}.el-col-sm-offset-13{margin-left:54.1667%}.el-col-sm-pull-13{position:relative;right:54.1667%}.el-col-sm-push-13{position:relative;left:54.1667%}.el-col-sm-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-sm-14.is-guttered{display:block}.el-col-sm-offset-14{margin-left:58.3333%}.el-col-sm-pull-14{position:relative;right:58.3333%}.el-col-sm-push-14{position:relative;left:58.3333%}.el-col-sm-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-sm-15.is-guttered{display:block}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{position:relative;left:62.5%}.el-col-sm-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-sm-16.is-guttered{display:block}.el-col-sm-offset-16{margin-left:66.6667%}.el-col-sm-pull-16{position:relative;right:66.6667%}.el-col-sm-push-16{position:relative;left:66.6667%}.el-col-sm-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-sm-17.is-guttered{display:block}.el-col-sm-offset-17{margin-left:70.8333%}.el-col-sm-pull-17{position:relative;right:70.8333%}.el-col-sm-push-17{position:relative;left:70.8333%}.el-col-sm-18{flex:0 0 75%;max-width:75%;display:block}.el-col-sm-18.is-guttered{display:block}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{position:relative;left:75%}.el-col-sm-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-sm-19.is-guttered{display:block}.el-col-sm-offset-19{margin-left:79.1667%}.el-col-sm-pull-19{position:relative;right:79.1667%}.el-col-sm-push-19{position:relative;left:79.1667%}.el-col-sm-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-sm-20.is-guttered{display:block}.el-col-sm-offset-20{margin-left:83.3333%}.el-col-sm-pull-20{position:relative;right:83.3333%}.el-col-sm-push-20{position:relative;left:83.3333%}.el-col-sm-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-sm-21.is-guttered{display:block}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{position:relative;left:87.5%}.el-col-sm-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-sm-22.is-guttered{display:block}.el-col-sm-offset-22{margin-left:91.6667%}.el-col-sm-pull-22{position:relative;right:91.6667%}.el-col-sm-push-22{position:relative;left:91.6667%}.el-col-sm-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-sm-23.is-guttered{display:block}.el-col-sm-offset-23{margin-left:95.8333%}.el-col-sm-pull-23{position:relative;right:95.8333%}.el-col-sm-push-23{position:relative;left:95.8333%}.el-col-sm-24{flex:0 0 100%;max-width:100%;display:block}.el-col-sm-24.is-guttered{display:block}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{position:relative;left:100%}}@media only screen and (min-width:992px){.el-col-md-0{flex:0 0;max-width:0%;display:none}.el-col-md-0.is-guttered{display:none}.el-col-md-offset-0{margin-left:0%}.el-col-md-pull-0{position:relative;right:0%}.el-col-md-push-0{position:relative;left:0%}.el-col-md-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-md-1.is-guttered{display:block}.el-col-md-offset-1{margin-left:4.16667%}.el-col-md-pull-1{position:relative;right:4.16667%}.el-col-md-push-1{position:relative;left:4.16667%}.el-col-md-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-md-2.is-guttered{display:block}.el-col-md-offset-2{margin-left:8.33333%}.el-col-md-pull-2{position:relative;right:8.33333%}.el-col-md-push-2{position:relative;left:8.33333%}.el-col-md-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-md-3.is-guttered{display:block}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{position:relative;left:12.5%}.el-col-md-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-md-4.is-guttered{display:block}.el-col-md-offset-4{margin-left:16.6667%}.el-col-md-pull-4{position:relative;right:16.6667%}.el-col-md-push-4{position:relative;left:16.6667%}.el-col-md-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-md-5.is-guttered{display:block}.el-col-md-offset-5{margin-left:20.8333%}.el-col-md-pull-5{position:relative;right:20.8333%}.el-col-md-push-5{position:relative;left:20.8333%}.el-col-md-6{flex:0 0 25%;max-width:25%;display:block}.el-col-md-6.is-guttered{display:block}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{position:relative;left:25%}.el-col-md-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-md-7.is-guttered{display:block}.el-col-md-offset-7{margin-left:29.1667%}.el-col-md-pull-7{position:relative;right:29.1667%}.el-col-md-push-7{position:relative;left:29.1667%}.el-col-md-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-md-8.is-guttered{display:block}.el-col-md-offset-8{margin-left:33.3333%}.el-col-md-pull-8{position:relative;right:33.3333%}.el-col-md-push-8{position:relative;left:33.3333%}.el-col-md-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-md-9.is-guttered{display:block}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{position:relative;left:37.5%}.el-col-md-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-md-10.is-guttered{display:block}.el-col-md-offset-10{margin-left:41.6667%}.el-col-md-pull-10{position:relative;right:41.6667%}.el-col-md-push-10{position:relative;left:41.6667%}.el-col-md-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-md-11.is-guttered{display:block}.el-col-md-offset-11{margin-left:45.8333%}.el-col-md-pull-11{position:relative;right:45.8333%}.el-col-md-push-11{position:relative;left:45.8333%}.el-col-md-12{flex:0 0 50%;max-width:50%;display:block}.el-col-md-12.is-guttered{display:block}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{position:relative;left:50%}.el-col-md-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-md-13.is-guttered{display:block}.el-col-md-offset-13{margin-left:54.1667%}.el-col-md-pull-13{position:relative;right:54.1667%}.el-col-md-push-13{position:relative;left:54.1667%}.el-col-md-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-md-14.is-guttered{display:block}.el-col-md-offset-14{margin-left:58.3333%}.el-col-md-pull-14{position:relative;right:58.3333%}.el-col-md-push-14{position:relative;left:58.3333%}.el-col-md-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-md-15.is-guttered{display:block}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{position:relative;left:62.5%}.el-col-md-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-md-16.is-guttered{display:block}.el-col-md-offset-16{margin-left:66.6667%}.el-col-md-pull-16{position:relative;right:66.6667%}.el-col-md-push-16{position:relative;left:66.6667%}.el-col-md-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-md-17.is-guttered{display:block}.el-col-md-offset-17{margin-left:70.8333%}.el-col-md-pull-17{position:relative;right:70.8333%}.el-col-md-push-17{position:relative;left:70.8333%}.el-col-md-18{flex:0 0 75%;max-width:75%;display:block}.el-col-md-18.is-guttered{display:block}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{position:relative;left:75%}.el-col-md-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-md-19.is-guttered{display:block}.el-col-md-offset-19{margin-left:79.1667%}.el-col-md-pull-19{position:relative;right:79.1667%}.el-col-md-push-19{position:relative;left:79.1667%}.el-col-md-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-md-20.is-guttered{display:block}.el-col-md-offset-20{margin-left:83.3333%}.el-col-md-pull-20{position:relative;right:83.3333%}.el-col-md-push-20{position:relative;left:83.3333%}.el-col-md-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-md-21.is-guttered{display:block}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{position:relative;left:87.5%}.el-col-md-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-md-22.is-guttered{display:block}.el-col-md-offset-22{margin-left:91.6667%}.el-col-md-pull-22{position:relative;right:91.6667%}.el-col-md-push-22{position:relative;left:91.6667%}.el-col-md-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-md-23.is-guttered{display:block}.el-col-md-offset-23{margin-left:95.8333%}.el-col-md-pull-23{position:relative;right:95.8333%}.el-col-md-push-23{position:relative;left:95.8333%}.el-col-md-24{flex:0 0 100%;max-width:100%;display:block}.el-col-md-24.is-guttered{display:block}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{position:relative;left:100%}}@media only screen and (min-width:1200px){.el-col-lg-0{flex:0 0;max-width:0%;display:none}.el-col-lg-0.is-guttered{display:none}.el-col-lg-offset-0{margin-left:0%}.el-col-lg-pull-0{position:relative;right:0%}.el-col-lg-push-0{position:relative;left:0%}.el-col-lg-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-lg-1.is-guttered{display:block}.el-col-lg-offset-1{margin-left:4.16667%}.el-col-lg-pull-1{position:relative;right:4.16667%}.el-col-lg-push-1{position:relative;left:4.16667%}.el-col-lg-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-lg-2.is-guttered{display:block}.el-col-lg-offset-2{margin-left:8.33333%}.el-col-lg-pull-2{position:relative;right:8.33333%}.el-col-lg-push-2{position:relative;left:8.33333%}.el-col-lg-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-lg-3.is-guttered{display:block}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{position:relative;left:12.5%}.el-col-lg-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-lg-4.is-guttered{display:block}.el-col-lg-offset-4{margin-left:16.6667%}.el-col-lg-pull-4{position:relative;right:16.6667%}.el-col-lg-push-4{position:relative;left:16.6667%}.el-col-lg-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-lg-5.is-guttered{display:block}.el-col-lg-offset-5{margin-left:20.8333%}.el-col-lg-pull-5{position:relative;right:20.8333%}.el-col-lg-push-5{position:relative;left:20.8333%}.el-col-lg-6{flex:0 0 25%;max-width:25%;display:block}.el-col-lg-6.is-guttered{display:block}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{position:relative;left:25%}.el-col-lg-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-lg-7.is-guttered{display:block}.el-col-lg-offset-7{margin-left:29.1667%}.el-col-lg-pull-7{position:relative;right:29.1667%}.el-col-lg-push-7{position:relative;left:29.1667%}.el-col-lg-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-lg-8.is-guttered{display:block}.el-col-lg-offset-8{margin-left:33.3333%}.el-col-lg-pull-8{position:relative;right:33.3333%}.el-col-lg-push-8{position:relative;left:33.3333%}.el-col-lg-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-lg-9.is-guttered{display:block}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{position:relative;left:37.5%}.el-col-lg-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-lg-10.is-guttered{display:block}.el-col-lg-offset-10{margin-left:41.6667%}.el-col-lg-pull-10{position:relative;right:41.6667%}.el-col-lg-push-10{position:relative;left:41.6667%}.el-col-lg-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-lg-11.is-guttered{display:block}.el-col-lg-offset-11{margin-left:45.8333%}.el-col-lg-pull-11{position:relative;right:45.8333%}.el-col-lg-push-11{position:relative;left:45.8333%}.el-col-lg-12{flex:0 0 50%;max-width:50%;display:block}.el-col-lg-12.is-guttered{display:block}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{position:relative;left:50%}.el-col-lg-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-lg-13.is-guttered{display:block}.el-col-lg-offset-13{margin-left:54.1667%}.el-col-lg-pull-13{position:relative;right:54.1667%}.el-col-lg-push-13{position:relative;left:54.1667%}.el-col-lg-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-lg-14.is-guttered{display:block}.el-col-lg-offset-14{margin-left:58.3333%}.el-col-lg-pull-14{position:relative;right:58.3333%}.el-col-lg-push-14{position:relative;left:58.3333%}.el-col-lg-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-lg-15.is-guttered{display:block}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{position:relative;left:62.5%}.el-col-lg-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-lg-16.is-guttered{display:block}.el-col-lg-offset-16{margin-left:66.6667%}.el-col-lg-pull-16{position:relative;right:66.6667%}.el-col-lg-push-16{position:relative;left:66.6667%}.el-col-lg-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-lg-17.is-guttered{display:block}.el-col-lg-offset-17{margin-left:70.8333%}.el-col-lg-pull-17{position:relative;right:70.8333%}.el-col-lg-push-17{position:relative;left:70.8333%}.el-col-lg-18{flex:0 0 75%;max-width:75%;display:block}.el-col-lg-18.is-guttered{display:block}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{position:relative;left:75%}.el-col-lg-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-lg-19.is-guttered{display:block}.el-col-lg-offset-19{margin-left:79.1667%}.el-col-lg-pull-19{position:relative;right:79.1667%}.el-col-lg-push-19{position:relative;left:79.1667%}.el-col-lg-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-lg-20.is-guttered{display:block}.el-col-lg-offset-20{margin-left:83.3333%}.el-col-lg-pull-20{position:relative;right:83.3333%}.el-col-lg-push-20{position:relative;left:83.3333%}.el-col-lg-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-lg-21.is-guttered{display:block}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{position:relative;left:87.5%}.el-col-lg-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-lg-22.is-guttered{display:block}.el-col-lg-offset-22{margin-left:91.6667%}.el-col-lg-pull-22{position:relative;right:91.6667%}.el-col-lg-push-22{position:relative;left:91.6667%}.el-col-lg-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-lg-23.is-guttered{display:block}.el-col-lg-offset-23{margin-left:95.8333%}.el-col-lg-pull-23{position:relative;right:95.8333%}.el-col-lg-push-23{position:relative;left:95.8333%}.el-col-lg-24{flex:0 0 100%;max-width:100%;display:block}.el-col-lg-24.is-guttered{display:block}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{position:relative;left:100%}}@media only screen and (min-width:1920px){.el-col-xl-0{flex:0 0;max-width:0%;display:none}.el-col-xl-0.is-guttered{display:none}.el-col-xl-offset-0{margin-left:0%}.el-col-xl-pull-0{position:relative;right:0%}.el-col-xl-push-0{position:relative;left:0%}.el-col-xl-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-xl-1.is-guttered{display:block}.el-col-xl-offset-1{margin-left:4.16667%}.el-col-xl-pull-1{position:relative;right:4.16667%}.el-col-xl-push-1{position:relative;left:4.16667%}.el-col-xl-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-xl-2.is-guttered{display:block}.el-col-xl-offset-2{margin-left:8.33333%}.el-col-xl-pull-2{position:relative;right:8.33333%}.el-col-xl-push-2{position:relative;left:8.33333%}.el-col-xl-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-xl-3.is-guttered{display:block}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{position:relative;left:12.5%}.el-col-xl-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-xl-4.is-guttered{display:block}.el-col-xl-offset-4{margin-left:16.6667%}.el-col-xl-pull-4{position:relative;right:16.6667%}.el-col-xl-push-4{position:relative;left:16.6667%}.el-col-xl-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-xl-5.is-guttered{display:block}.el-col-xl-offset-5{margin-left:20.8333%}.el-col-xl-pull-5{position:relative;right:20.8333%}.el-col-xl-push-5{position:relative;left:20.8333%}.el-col-xl-6{flex:0 0 25%;max-width:25%;display:block}.el-col-xl-6.is-guttered{display:block}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{position:relative;left:25%}.el-col-xl-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-xl-7.is-guttered{display:block}.el-col-xl-offset-7{margin-left:29.1667%}.el-col-xl-pull-7{position:relative;right:29.1667%}.el-col-xl-push-7{position:relative;left:29.1667%}.el-col-xl-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-xl-8.is-guttered{display:block}.el-col-xl-offset-8{margin-left:33.3333%}.el-col-xl-pull-8{position:relative;right:33.3333%}.el-col-xl-push-8{position:relative;left:33.3333%}.el-col-xl-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-xl-9.is-guttered{display:block}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{position:relative;left:37.5%}.el-col-xl-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-xl-10.is-guttered{display:block}.el-col-xl-offset-10{margin-left:41.6667%}.el-col-xl-pull-10{position:relative;right:41.6667%}.el-col-xl-push-10{position:relative;left:41.6667%}.el-col-xl-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-xl-11.is-guttered{display:block}.el-col-xl-offset-11{margin-left:45.8333%}.el-col-xl-pull-11{position:relative;right:45.8333%}.el-col-xl-push-11{position:relative;left:45.8333%}.el-col-xl-12{flex:0 0 50%;max-width:50%;display:block}.el-col-xl-12.is-guttered{display:block}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{position:relative;left:50%}.el-col-xl-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-xl-13.is-guttered{display:block}.el-col-xl-offset-13{margin-left:54.1667%}.el-col-xl-pull-13{position:relative;right:54.1667%}.el-col-xl-push-13{position:relative;left:54.1667%}.el-col-xl-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-xl-14.is-guttered{display:block}.el-col-xl-offset-14{margin-left:58.3333%}.el-col-xl-pull-14{position:relative;right:58.3333%}.el-col-xl-push-14{position:relative;left:58.3333%}.el-col-xl-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-xl-15.is-guttered{display:block}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{position:relative;left:62.5%}.el-col-xl-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-xl-16.is-guttered{display:block}.el-col-xl-offset-16{margin-left:66.6667%}.el-col-xl-pull-16{position:relative;right:66.6667%}.el-col-xl-push-16{position:relative;left:66.6667%}.el-col-xl-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-xl-17.is-guttered{display:block}.el-col-xl-offset-17{margin-left:70.8333%}.el-col-xl-pull-17{position:relative;right:70.8333%}.el-col-xl-push-17{position:relative;left:70.8333%}.el-col-xl-18{flex:0 0 75%;max-width:75%;display:block}.el-col-xl-18.is-guttered{display:block}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{position:relative;left:75%}.el-col-xl-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-xl-19.is-guttered{display:block}.el-col-xl-offset-19{margin-left:79.1667%}.el-col-xl-pull-19{position:relative;right:79.1667%}.el-col-xl-push-19{position:relative;left:79.1667%}.el-col-xl-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-xl-20.is-guttered{display:block}.el-col-xl-offset-20{margin-left:83.3333%}.el-col-xl-pull-20{position:relative;right:83.3333%}.el-col-xl-push-20{position:relative;left:83.3333%}.el-col-xl-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-xl-21.is-guttered{display:block}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{position:relative;left:87.5%}.el-col-xl-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-xl-22.is-guttered{display:block}.el-col-xl-offset-22{margin-left:91.6667%}.el-col-xl-pull-22{position:relative;right:91.6667%}.el-col-xl-push-22{position:relative;left:91.6667%}.el-col-xl-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-xl-23.is-guttered{display:block}.el-col-xl-offset-23{margin-left:95.8333%}.el-col-xl-pull-23{position:relative;right:95.8333%}.el-col-xl-push-23{position:relative;left:95.8333%}.el-col-xl-24{flex:0 0 100%;max-width:100%;display:block}.el-col-xl-24.is-guttered{display:block}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{position:relative;left:100%}}.el-collapse-item.is-disabled .el-collapse-item__header{color:var(--el-text-color-disabled);cursor:not-allowed}.el-collapse-item__header{width:100%;min-height:var(--el-collapse-header-height);line-height:var(--el-collapse-header-height);background-color:var(--el-collapse-header-bg-color);color:var(--el-collapse-header-text-color);cursor:pointer;border:none;border-bottom:1px solid var(--el-collapse-border-color);font-size:var(--el-collapse-header-font-size);transition:border-bottom-color var(--el-transition-duration);box-sizing:border-box;outline:none;align-items:center;padding:0;font-weight:500;display:flex}.el-collapse-item__arrow{transition:transform var(--el-transition-duration);font-weight:300}.el-collapse-item__arrow.is-active{transform:rotate(90deg)}.el-collapse-item__title{text-align:left;flex:auto}.el-collapse-item__header.focusing:focus:not(:hover){color:var(--el-color-primary)}.el-collapse-item__header.is-active{border-bottom-color:#0000}.el-collapse-item__wrap{will-change:height;background-color:var(--el-collapse-content-bg-color);box-sizing:border-box;border-bottom:1px solid var(--el-collapse-border-color);overflow:hidden}.el-collapse-item__content{font-size:var(--el-collapse-content-font-size);color:var(--el-collapse-content-text-color);padding-bottom:25px;line-height:1.76923}.el-collapse-item:last-child{margin-bottom:-1px}.el-collapse{--el-collapse-border-color:var(--el-border-color-lighter);--el-collapse-header-height:48px;--el-collapse-header-bg-color:var(--el-fill-color-blank);--el-collapse-header-text-color:var(--el-text-color-primary);--el-collapse-header-font-size:13px;--el-collapse-content-bg-color:var(--el-fill-color-blank);--el-collapse-content-font-size:13px;--el-collapse-content-text-color:var(--el-text-color-primary);border-top:1px solid var(--el-collapse-border-color);border-bottom:1px solid var(--el-collapse-border-color)}.el-collapse-icon-position-left .el-collapse-item__header{gap:8px}.el-collapse-icon-position-left .el-collapse-item__title{order:1}.el-collapse-icon-position-right .el-collapse-item__header{padding-right:8px}.el-color-picker-panel{--el-colorpicker-bg-color:var(--el-bg-color-overlay);--el-fill-color-blank:var(--el-colorpicker-bg-color);box-sizing:content-box;background:var(--el-colorpicker-bg-color);width:300px;padding:12px}.el-color-picker-panel.is-border{border:solid 1px var(--el-border-color-lighter);border-radius:4px}.el-color-picker-panel__wrapper{margin-bottom:6px}.el-color-picker-panel__footer{text-align:right;justify-content:space-between;margin-top:12px;display:flex}.el-color-picker-panel__footer .el-input{color:#000;width:160px;font-size:12px;line-height:26px}.el-color-picker-panel.is-disabled .el-color-svpanel,.el-color-picker-panel.is-disabled .el-color-hue-slider{cursor:not-allowed;opacity:.3}.el-color-picker-panel.is-disabled .el-color-hue-slider__thumb{cursor:not-allowed}.el-color-picker-panel.is-disabled .el-color-alpha-slider,.el-color-picker-panel.is-disabled .el-color-predefine .el-color-predefine__color-selector{cursor:not-allowed;opacity:.3}.el-color-predefine{width:280px;margin-top:8px;font-size:12px;display:flex}.el-color-predefine__colors{flex-wrap:wrap;flex:1;gap:8px;display:flex}.el-color-predefine__color-selector{border-radius:var(--el-border-radius-base);cursor:pointer;border:none;outline:none;width:20px;height:20px;padding:0;overflow:hidden}.el-color-predefine__color-selector.selected{box-shadow:0 0 3px 2px var(--el-color-primary)}.el-color-predefine__color-selector:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-color-predefine__color-selector>div{height:100%;display:flex}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{box-sizing:border-box;float:right;background-color:red;width:280px;height:12px;padding:0 2px;position:relative}.el-color-hue-slider__bar{background:linear-gradient(90deg,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red);height:100%;position:relative}.el-color-hue-slider__thumb{cursor:pointer;box-sizing:border-box;border:1px solid var(--el-border-color-lighter);z-index:1;background:#fff;border-radius:1px;width:4px;height:100%;position:absolute;top:0;left:0;box-shadow:0 0 2px #0009}.el-color-hue-slider__thumb:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-hue-slider.is-vertical{width:12px;height:180px;padding:2px 0}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:linear-gradient(red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{width:100%;height:4px;top:0;left:0}.el-color-svpanel{background-image:linear-gradient(#0000,#000),linear-gradient(90deg,#fff,#fff0);width:280px;height:180px;position:relative}.el-color-svpanel__cursor{cursor:pointer;border-radius:50%;width:4px;height:4px;position:absolute;transform:translate(-2px,-2px);box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006}.el-color-svpanel__cursor:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-color-alpha-slider{box-sizing:border-box;background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-position:0 0,6px 0,6px -6px,0 6px;background-size:12px 12px;width:280px;height:12px;position:relative}.el-color-alpha-slider.is-disabled .el-color-alpha-slider__thumb{cursor:not-allowed}.el-color-alpha-slider__bar{background:linear-gradient(to right,#fff0 0%,var(--el-bg-color) 100%);height:100%;position:relative}.el-color-alpha-slider__thumb{cursor:pointer;box-sizing:border-box;border:1px solid var(--el-border-color-lighter);z-index:1;background:#fff;border-radius:1px;width:4px;height:100%;position:absolute;top:0;left:0;box-shadow:0 0 2px #0009}.el-color-alpha-slider__thumb:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-alpha-slider.is-vertical{width:20px;height:180px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:linear-gradient(#fff0,#fff)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{width:100%;height:4px;top:0;left:0}.el-color-picker-panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker-panel{--el-color-picker-alpha-bg-a:#333}.el-color-picker{outline:none;width:32px;height:32px;line-height:normal;display:inline-block;position:relative}.el-color-picker:hover:not(:-webkit-any(.is-disabled,.is-focused)) .el-color-picker__trigger{border-color:var(--el-border-color-hover)}.el-color-picker:hover:not(:is(.is-disabled,.is-focused)) .el-color-picker__trigger{border-color:var(--el-border-color-hover)}.el-color-picker:focus-visible:not(.is-disabled) .el-color-picker__trigger{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-picker.is-focused .el-color-picker__trigger{border-color:var(--el-color-primary)}.el-color-picker.is-disabled .el-color-picker__trigger{cursor:not-allowed;background-color:var(--el-fill-color-light)}.el-color-picker.is-disabled .el-color-picker__color{opacity:.3}.el-color-picker--large{width:40px;height:40px}.el-color-picker--small{width:24px;height:24px}.el-color-picker--small .el-color-picker__icon,.el-color-picker--small .el-color-picker__empty{transform:scale(.8)}.el-color-picker__trigger{box-sizing:border-box;border:1px solid var(--el-border-color);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;width:100%;height:100%;padding:4px;font-size:0;display:inline-flex;position:relative}.el-color-picker__color{box-sizing:border-box;border:1px solid var(--el-text-color-secondary);border-radius:var(--el-border-radius-small);text-align:center;width:100%;height:100%;display:block;position:relative}.el-color-picker__color.is-alpha{background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-position:0 0,6px 0,6px -6px,0 6px;background-size:12px 12px}.el-color-picker__color-inner{justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex}.el-color-picker .el-color-picker__empty{color:var(--el-text-color-secondary);font-size:12px}.el-color-picker .el-color-picker__icon{color:#fff;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.el-color-picker__panel{border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);background-color:#fff}.el-color-picker__panel.el-popper{border:1px solid var(--el-border-color-lighter)}.el-color-picker,.el-color-picker__panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker,.dark .el-color-picker__panel{--el-color-picker-alpha-bg-a:#333}.el-container{box-sizing:border-box;flex-direction:row;flex:auto;min-width:0;display:flex}.el-container.is-vertical{flex-direction:column}.el-date-table{-webkit-user-select:none;user-select:none;font-size:12px}.el-date-table.is-week-mode .el-date-table__row:hover .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:var(--el-datepicker-text-color)}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child .el-date-table-cell{border-top-left-radius:15px;border-bottom-left-radius:15px;margin-left:5px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child .el-date-table-cell{border-top-right-radius:15px;border-bottom-right-radius:15px;margin-right:5px}.el-date-table.is-week-mode .el-date-table__row.current .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td{box-sizing:border-box;text-align:center;cursor:pointer;width:32px;height:30px;padding:4px 0;position:relative}.el-date-table td .el-date-table-cell{box-sizing:border-box;height:30px;padding:3px 0}.el-date-table td .el-date-table-cell .el-date-table-cell__text{border-radius:50%;width:24px;height:24px;margin:0 auto;line-height:24px;display:block;position:absolute;left:50%;transform:translate(-50%)}.el-date-table td.next-month,.el-date-table td.prev-month{color:var(--el-datepicker-off-text-color)}.el-date-table td.today{position:relative}.el-date-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-date-table td.today.start-date .el-date-table-cell__text,.el-date-table td.today.end-date .el-date-table-cell__text{color:#fff}.el-date-table td.available:hover{color:var(--el-datepicker-hover-text-color)}.el-date-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-date-table td.current:not(.disabled):focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-date-table td.start-date .el-date-table-cell,.el-date-table td.end-date .el-date-table-cell{color:#fff}.el-date-table td.start-date .el-date-table-cell__text,.el-date-table td.end-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color)}.el-date-table td.start-date .el-date-table-cell{border-top-left-radius:15px;border-bottom-left-radius:15px;margin-left:5px}.el-date-table td.end-date .el-date-table-cell{border-top-right-radius:15px;border-bottom-right-radius:15px;margin-right:5px}.el-date-table td.disabled .el-date-table-cell{background-color:var(--el-fill-color-light);opacity:1;cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-date-table td.selected .el-date-table-cell{border-radius:15px;margin-left:5px;margin-right:5px}.el-date-table td.selected .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff;border-radius:15px}.el-date-table td.week{color:var(--el-datepicker-off-text-color);cursor:default;font-size:80%}.el-date-table td:focus{outline:none}.el-date-table th{color:var(--el-datepicker-header-text-color);border-bottom:solid 1px var(--el-border-color-lighter);padding:5px;font-weight:400}.el-date-table th.el-date-table__week-header{width:24px;padding:0}.el-month-table{border-collapse:collapse;margin:-1px;font-size:12px}.el-month-table td{text-align:center;cursor:pointer;width:68px;padding:8px 0;position:relative}.el-month-table td .el-date-table-cell{box-sizing:border-box;height:48px;padding:6px 0}.el-month-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-month-table td.today.start-date .el-date-table-cell__text,.el-month-table td.today.end-date .el-date-table-cell__text{color:#fff}.el-month-table td.disabled .el-date-table-cell__text{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-month-table td.disabled .el-date-table-cell__text:hover{color:var(--el-text-color-placeholder)}.el-month-table td .el-date-table-cell__text{width:54px;height:36px;color:var(--el-datepicker-text-color);border-radius:18px;margin:0 auto;line-height:36px;display:block;position:absolute;left:50%;transform:translate(-50%)}.el-month-table td .el-date-table-cell__text:hover{color:var(--el-datepicker-hover-text-color)}.el-month-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-month-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-month-table td.start-date .el-date-table-cell,.el-month-table td.end-date .el-date-table-cell{color:#fff}.el-month-table td.start-date .el-date-table-cell__text,.el-month-table td.end-date .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-month-table td.start-date .el-date-table-cell{border-top-left-radius:24px;border-bottom-left-radius:24px;margin-left:3px}.el-month-table td.end-date .el-date-table-cell{border-top-right-radius:24px;border-bottom-right-radius:24px;margin-right:3px}.el-month-table td.current:not(.disabled) .el-date-table-cell{border-radius:24px;margin-left:3px;margin-right:3px}.el-month-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-month-table td:focus-visible{outline:none}.el-month-table td:focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-year-table{border-collapse:collapse;margin:-1px;font-size:12px}.el-year-table .el-icon{color:var(--el-datepicker-icon-color)}.el-year-table td{text-align:center;cursor:pointer;width:68px;padding:8px 0;position:relative}.el-year-table td .el-date-table-cell{box-sizing:border-box;height:48px;padding:6px 0}.el-year-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-year-table td.today.start-date .el-date-table-cell__text,.el-year-table td.today.end-date .el-date-table-cell__text{color:#fff}.el-year-table td.disabled .el-date-table-cell__text{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-year-table td.disabled .el-date-table-cell__text:hover{color:var(--el-text-color-placeholder)}.el-year-table td .el-date-table-cell__text{width:60px;height:36px;color:var(--el-datepicker-text-color);border-radius:18px;margin:0 auto;line-height:36px;display:block;position:absolute;left:50%;transform:translate(-50%)}.el-year-table td .el-date-table-cell__text:hover{color:var(--el-datepicker-hover-text-color)}.el-year-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-year-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-year-table td.start-date .el-date-table-cell,.el-year-table td.end-date .el-date-table-cell{color:#fff}.el-year-table td.start-date .el-date-table-cell__text,.el-year-table td.end-date .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-year-table td.start-date .el-date-table-cell{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-year-table td.end-date .el-date-table-cell{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-year-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-year-table td:focus-visible{outline:none}.el-year-table td:focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{vertical-align:top;width:50%;max-height:192px;display:inline-block;position:relative;overflow:auto}.el-time-spinner__wrapper.el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__wrapper.is-arrow{box-sizing:border-box;text-align:center;overflow:hidden}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:default}.el-time-spinner__arrow{color:var(--el-text-color-secondary);width:100%;z-index:var(--el-index-normal);text-align:center;cursor:pointer;height:30px;font-size:12px;line-height:30px;position:absolute;left:0}.el-time-spinner__arrow:hover{color:var(--el-color-primary)}.el-time-spinner__arrow.arrow-up{top:10px}.el-time-spinner__arrow.arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__input.el-input .el-input__inner{text-align:center;padding:0}.el-time-spinner__list{text-align:center;margin:0;padding:0;list-style:none}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";width:100%;height:80px;display:block}.el-time-spinner__item{height:32px;color:var(--el-text-color-regular);font-size:12px;line-height:32px}.el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:pointer}.el-time-spinner__item.is-active:not(.is-disabled){color:var(--el-text-color-primary);font-weight:700}.el-time-spinner__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-picker__popper{--el-datepicker-border-color:var(--el-disabled-border-color)}.el-picker__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-datepicker-border-color);box-shadow:var(--el-box-shadow-light)}.el-picker__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-datepicker-border-color)}.el-picker__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-picker__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-picker__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-picker__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-date-editor{--el-date-editor-width:220px;--el-date-editor-monthrange-width:300px;--el-date-editor-daterange-width:350px;--el-date-editor-datetimerange-width:400px;--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;text-align:left;vertical-align:middle;position:relative}.el-date-editor.el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-date-editor.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-date-editor.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-date-editor.el-input,.el-date-editor.el-input__wrapper{width:var(--el-date-editor-width);height:var(--el-input-height,var(--el-component-size))}.el-date-editor--monthrange{--el-date-editor-width:var(--el-date-editor-monthrange-width)}.el-date-editor--daterange,.el-date-editor--timerange{--el-date-editor-width:var(--el-date-editor-daterange-width)}.el-date-editor--datetimerange{--el-date-editor-width:var(--el-date-editor-datetimerange-width)}.el-date-editor--dates .el-input__wrapper{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .close-icon,.el-date-editor .clear-icon{cursor:pointer}.el-date-editor .clear-icon:hover{color:var(--el-input-clear-hover-color)}.el-date-editor .el-range__icon{height:inherit;color:var(--el-text-color-placeholder);float:left;font-size:14px}.el-date-editor .el-range__icon svg{vertical-align:middle}.el-date-editor .el-range-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;width:39%;height:30px;line-height:30px;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);background-color:#0000;border:none;outline:none;margin:0;padding:0;display:inline-block}.el-date-editor .el-range-input::placeholder{color:var(--el-text-color-placeholder)}.el-date-editor .el-range-separator{overflow-wrap:break-word;height:100%;color:var(--el-text-color-primary);flex:1;justify-content:center;align-items:center;margin:0;padding:0 5px;font-size:14px;display:inline-flex}.el-date-editor .el-range__close-icon{color:var(--el-text-color-placeholder);height:inherit;width:unset;cursor:pointer;font-size:14px}.el-date-editor .el-range__close-icon:hover{color:var(--el-input-clear-hover-color)}.el-date-editor .el-range__close-icon svg{vertical-align:middle}.el-date-editor .el-range__close-icon--hidden{opacity:0;visibility:hidden}.el-range-editor.el-input__wrapper{vertical-align:middle;align-items:center;padding:0 10px;display:inline-flex}.el-range-editor.is-active,.el-range-editor.is-active:hover{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-range-editor--large{line-height:var(--el-component-size-large)}.el-range-editor--large.el-input__wrapper{height:var(--el-component-size-large)}.el-range-editor--large .el-range-separator{font-size:14px;line-height:40px}.el-range-editor--large .el-range-input{height:38px;font-size:14px;line-height:38px}.el-range-editor--small{line-height:var(--el-component-size-small)}.el-range-editor--small.el-input__wrapper{height:var(--el-component-size-small)}.el-range-editor--small .el-range-separator{font-size:12px;line-height:24px}.el-range-editor--small .el-range-input{height:22px;font-size:12px;line-height:22px}.el-range-editor.is-disabled{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled:hover,.el-range-editor.is-disabled:focus{border-color:var(--el-disabled-border-color)}.el-range-editor.is-disabled input{background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled input::placeholder{color:var(--el-text-color-placeholder)}.el-range-editor.is-disabled .el-range-separator{color:var(--el-disabled-text-color)}.el-picker-panel{color:var(--el-text-color-regular);background:var(--el-datepicker-bg-color);border-radius:var(--el-popper-border-radius,var(--el-border-radius-base));line-height:30px}.el-picker-panel .el-time-panel{border:solid 1px var(--el-datepicker-border-color);background-color:var(--el-datepicker-bg-color);box-shadow:var(--el-box-shadow-light);margin:5px 0}.el-picker-panel__body:after,.el-picker-panel__body-wrapper:after{content:"";clear:both;display:table}.el-picker-panel__content{margin:15px;position:relative}.el-picker-panel__footer{border-top:1px solid var(--el-datepicker-inner-border-color);text-align:right;background-color:var(--el-datepicker-bg-color);padding:4px 12px;font-size:0;position:relative}.el-picker-panel__shortcut{width:100%;color:var(--el-datepicker-text-color);text-align:left;cursor:pointer;background-color:#0000;border:0;outline:none;padding-left:12px;font-size:14px;line-height:28px;display:block}.el-picker-panel__shortcut:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__shortcut.active{color:var(--el-datepicker-active-color);background-color:#e6f1fe}.el-picker-panel__btn{border:1px solid var(--el-fill-color-darker);color:var(--el-text-color-primary);cursor:pointer;background-color:#0000;border-radius:2px;outline:none;padding:0 20px;font-size:12px;line-height:24px}.el-picker-panel__btn[disabled]{color:var(--el-text-color-disabled);cursor:not-allowed}.el-picker-panel__icon-btn{color:var(--el-datepicker-icon-color);cursor:pointer;background:0 0;border:0;outline:none;margin-top:8px;padding:1px 6px;font-size:12px;line-height:1}.el-picker-panel__icon-btn:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn:focus-visible{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn.is-disabled{color:var(--el-text-color-disabled)}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__icon-btn.is-disabled .el-icon{cursor:inherit}.el-picker-panel__icon-btn .el-icon{cursor:pointer;font-size:inherit}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel.is-disabled .el-picker-panel__prev-btn{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__prev-btn:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__prev-btn .el-icon{cursor:inherit}.el-picker-panel.is-disabled .el-picker-panel__next-btn{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__next-btn:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__next-btn .el-icon{cursor:inherit}.el-picker-panel.is-disabled .el-picker-panel__icon-btn{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__icon-btn:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__icon-btn .el-icon{cursor:inherit}.el-picker-panel.is-disabled .el-picker-panel__shortcut{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__shortcut:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__shortcut .el-icon{cursor:inherit}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{border-right:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:110px;padding-top:6px;position:absolute;top:0;bottom:0;overflow:auto}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-date-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);--el-datepicker-bg-color:var(--el-bg-color-overlay);--el-fill-color-blank:var(--el-datepicker-bg-color);width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{padding:0 5px;display:table-cell;position:relative}.el-date-picker__time-header{border-bottom:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:100%;padding:8px 5px 5px;font-size:12px;display:table;position:relative}.el-date-picker__header{text-align:center;padding:12px 12px 0}.el-date-picker__header--bordered{border-bottom:solid 1px var(--el-border-color-lighter);margin-bottom:0;padding-bottom:12px}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{text-align:center;cursor:pointer;color:var(--el-text-color-regular);padding:0 5px;font-size:16px;font-weight:500;line-height:22px}.el-date-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label:focus-visible{color:var(--el-datepicker-hover-text-color);outline:none}.el-date-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{text-align:center;padding:10px}.el-date-picker__time-label{float:left;cursor:pointer;margin-left:10px;line-height:30px}.el-date-picker .el-time-panel{position:absolute}.el-date-picker.is-disabled .el-date-picker__header-label{color:var(--el-text-color-disabled)}.el-date-picker.is-disabled .el-date-picker__header-label:hover{cursor:not-allowed}.el-date-picker.is-disabled .el-date-picker__header-label .el-icon{cursor:inherit}.el-date-range-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);--el-datepicker-bg-color:var(--el-bg-color-overlay);width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{text-align:center;height:28px;position:relative}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{margin-right:50px;font-size:16px;font-weight:500}.el-date-range-picker__header-label{text-align:center;cursor:pointer;color:var(--el-text-color-regular);padding:0 5px;font-size:16px;font-weight:500;line-height:22px}.el-date-range-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-range-picker__header-label:focus-visible{color:var(--el-datepicker-hover-text-color);outline:none}.el-date-range-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-range-picker__content{box-sizing:border-box;width:50%;margin:0;padding:16px;display:table-cell}.el-date-range-picker__content.is-left{border-right:1px solid var(--el-datepicker-inner-border-color)}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{border-bottom:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:100%;padding:8px 5px 5px;font-size:12px;display:table;position:relative}.el-date-range-picker__time-header>.el-icon-arrow-right{vertical-align:middle;color:var(--el-datepicker-icon-color);font-size:20px;display:table-cell}.el-date-range-picker__time-picker-wrap{padding:0 5px;display:table-cell;position:relative}.el-date-range-picker__time-picker-wrap .el-picker-panel{z-index:1;background:#fff;position:absolute;top:13px;right:0}.el-date-range-picker__time-picker-wrap .el-time-panel{position:absolute}.el-date-range-picker.is-disabled .el-date-range-picker__header-label{color:var(--el-text-color-disabled)}.el-date-range-picker.is-disabled .el-date-range-picker__header-label:hover{cursor:not-allowed}.el-date-range-picker.is-disabled .el-date-range-picker__header-label .el-icon{cursor:inherit}.el-time-range-picker{width:354px;overflow:visible}.el-time-range-picker__content{text-align:center;z-index:1;padding:10px;position:relative}.el-time-range-picker__cell{box-sizing:border-box;width:50%;margin:0;padding:4px 7px 7px;display:inline-block}.el-time-range-picker__header{text-align:center;margin-bottom:5px;font-size:14px}.el-time-range-picker__body{border:1px solid var(--el-datepicker-border-color);border-radius:2px}.el-time-panel{width:180px;z-index:var(--el-index-top);-webkit-user-select:none;user-select:none;box-sizing:content-box;border-radius:2px;position:relative;left:0}.el-time-panel__content{font-size:0;position:relative;overflow:hidden}.el-time-panel__content:after,.el-time-panel__content:before{content:"";z-index:-1;box-sizing:border-box;text-align:left;height:32px;margin-top:-16px;padding-top:6px;position:absolute;top:50%;left:0;right:0}.el-time-panel__content:after{margin-left:12%;margin-right:12%;left:50%}.el-time-panel__content:before{border-top:1px solid var(--el-border-color-light);border-bottom:1px solid var(--el-border-color-light);margin-left:12%;margin-right:12%;padding-left:50%}.el-time-panel__content.has-seconds:after{left:66.6667%}.el-time-panel__content.has-seconds:before{padding-left:33.3333%}.el-time-panel__footer{border-top:1px solid var(--el-timepicker-inner-border-color,var(--el-border-color-light));text-align:right;box-sizing:border-box;height:36px;padding:4px;line-height:25px}.el-time-panel__btn{cursor:pointer;color:var(--el-text-color-primary);background-color:#0000;border:none;outline:none;margin:0 5px;padding:0 5px;font-size:12px;line-height:28px}.el-time-panel__btn.confirm{color:var(--el-timepicker-active-color,var(--el-color-primary));font-weight:800}.el-picker-panel.is-border{border:solid 1px var(--el-border-color-lighter)}.el-picker-panel.is-border .el-picker-panel__body-wrapper{position:relative}.el-picker-panel.is-border.el-picker-panel [slot=sidebar],.el-picker-panel.is-border.el-picker-panel__sidebar{border-right:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:110px;height:100%;padding-top:6px;position:absolute;top:0;overflow:auto}.el-descriptions{--el-descriptions-table-border:1px solid var(--el-border-color-lighter);--el-descriptions-item-bordered-label-background:var(--el-fill-color-light);box-sizing:border-box;font-size:var(--el-font-size-base);color:var(--el-text-color-primary)}.el-descriptions__header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.el-descriptions__title{color:var(--el-text-color-primary);font-size:16px;font-weight:700}.el-descriptions__body{background-color:var(--el-fill-color-blank)}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%}.el-descriptions__body .el-descriptions__table .el-descriptions__cell{box-sizing:border-box;text-align:left;font-size:14px;line-height:23px}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-right{text-align:right}.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{border:var(--el-descriptions-table-border);padding:8px 11px}.el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:12px}.el-descriptions--large{font-size:14px}.el-descriptions--large .el-descriptions__header{margin-bottom:20px}.el-descriptions--large .el-descriptions__header .el-descriptions__title{font-size:16px}.el-descriptions--large .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:14px}.el-descriptions--large .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:12px 15px}.el-descriptions--large .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:16px}.el-descriptions--small{font-size:12px}.el-descriptions--small .el-descriptions__header{margin-bottom:12px}.el-descriptions--small .el-descriptions__header .el-descriptions__title{font-size:14px}.el-descriptions--small .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:12px}.el-descriptions--small .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:4px 7px}.el-descriptions--small .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:8px}.el-descriptions__label.el-descriptions__cell.is-bordered-label{color:var(--el-text-color-regular);background:var(--el-descriptions-item-bordered-label-background);font-weight:700}.el-descriptions__label:not(.is-bordered-label){color:var(--el-text-color-primary);margin-right:16px}.el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:6px}.el-descriptions__content.el-descriptions__cell.is-bordered-content{color:var(--el-text-color-primary)}.el-descriptions__content:not(.is-bordered-label){color:var(--el-text-color-regular)}.el-descriptions--large .el-descriptions__label:not(.is-bordered-label){margin-right:16px}.el-descriptions--large .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:8px}.el-descriptions--small .el-descriptions__label:not(.is-bordered-label){margin-right:12px}.el-descriptions--small .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:4px}.el-divider{position:relative}.el-divider--horizontal{border-top:1px var(--el-border-color) var(--el-border-style);width:100%;height:1px;margin:24px 0;display:block}.el-divider--vertical{vertical-align:middle;border-left:1px var(--el-border-color) var(--el-border-style);width:1px;height:1em;margin:0 8px;display:inline-block;position:relative}.el-divider__text{background-color:var(--el-bg-color);color:var(--el-text-color-primary);padding:0 20px;font-size:14px;font-weight:500;position:absolute}.el-divider__text.is-left{left:20px;transform:translateY(-50%)}.el-divider__text.is-center{left:50%;transform:translate(-50%)translateY(-50%)}.el-divider__text.is-right{right:20px;transform:translateY(-50%)}.el-overlay.is-drawer{overflow:hidden}.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color,var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary,20px);--el-drawer-dragger-size:8px;box-sizing:border-box;background-color:var(--el-drawer-bg-color);box-shadow:var(--el-box-shadow-dark);transition:all var(--el-transition-duration);flex-direction:column;display:flex;position:absolute}.el-drawer .rtl,.el-drawer .ltr,.el-drawer .ttb,.el-drawer .btt{transform:translate(0)}.el-drawer__sr-focus:focus{outline:none!important}.el-drawer__header{color:var(--el-text-color-primary);padding:var(--el-drawer-padding-primary);align-items:center;margin-bottom:32px;padding-bottom:0;display:flex;overflow:hidden}.el-drawer__header>:first-child{flex:1}.el-drawer__title{line-height:inherit;flex:1;margin:0;font-size:16px}.el-drawer__footer{padding:var(--el-drawer-padding-primary);text-align:right;padding-top:10px;overflow:hidden}.el-drawer__close-btn{cursor:pointer;font-size:var(--el-font-size-extra-large);color:inherit;background-color:#0000;border:none;outline:none;display:inline-flex}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{padding:var(--el-drawer-padding-primary);flex:1;overflow:auto}.el-drawer__body>*{box-sizing:border-box}.el-drawer.is-dragging{transition:none}.el-drawer__dragger{-webkit-user-select:none;user-select:none;background-color:#0000;transition:all .2s;position:absolute}.el-drawer__dragger:before{content:"";background-color:#0000;transition:all .2s;position:absolute}.el-drawer__dragger:hover:before{background-color:var(--el-color-primary)}.el-drawer.ltr,.el-drawer.rtl{height:100%;top:0;bottom:0}.el-drawer.ltr>.el-drawer__dragger,.el-drawer.rtl>.el-drawer__dragger{height:100%;width:var(--el-drawer-dragger-size);cursor:ew-resize;top:0;bottom:0}.el-drawer.ltr>.el-drawer__dragger:before,.el-drawer.rtl>.el-drawer__dragger:before{width:3px;top:0;bottom:0}.el-drawer.ttb,.el-drawer.btt{width:100%;left:0;right:0}.el-drawer.ttb>.el-drawer__dragger,.el-drawer.btt>.el-drawer__dragger{width:100%;height:var(--el-drawer-dragger-size);cursor:ns-resize;left:0;right:0}.el-drawer.ttb>.el-drawer__dragger:before,.el-drawer.btt>.el-drawer__dragger:before{height:3px;left:0;right:0}.el-drawer.ltr{left:0}.el-drawer.ltr>.el-drawer__dragger{right:0}.el-drawer.ltr>.el-drawer__dragger:before{right:-2px}.el-drawer.rtl{right:0}.el-drawer.rtl>.el-drawer__dragger{left:0}.el-drawer.rtl>.el-drawer__dragger:before{left:-2px}.el-drawer.ttb{top:0}.el-drawer.ttb>.el-drawer__dragger{bottom:0}.el-drawer.ttb>.el-drawer__dragger:before{bottom:-2px}.el-drawer.btt{bottom:0}.el-drawer.btt>.el-drawer__dragger{top:0}.el-drawer.btt>.el-drawer__dragger:before{top:-2px}.el-modal-drawer.is-penetrable{pointer-events:none}.el-modal-drawer.is-penetrable .el-drawer{pointer-events:auto}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-from,.el-drawer-fade-enter-active,.el-drawer-fade-enter-to,.el-drawer-fade-leave-from,.el-drawer-fade-leave-active,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{background-color:#0000!important}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translate(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translate(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)}.el-dropdown{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);vertical-align:top;line-height:1;display:inline-flex;position:relative}.el-dropdown.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-dropdown__popper{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10}.el-dropdown__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-dropdown-menu-box-shadow)}.el-dropdown__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-dropdown__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-dropdown__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-dropdown__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-dropdown__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-dropdown__popper .el-dropdown-menu{border:none}.el-dropdown__popper .el-dropdown__popper-selfdefine{outline:none}.el-dropdown__popper .el-scrollbar__bar{z-index:calc(var(--el-dropdown-menu-index) + 1)}.el-dropdown__popper .el-dropdown__list{box-sizing:border-box;margin:0;padding:0;list-style:none}.el-dropdown .el-dropdown__caret-button{border-left:none;justify-content:center;align-items:center;width:32px;padding-left:0;padding-right:0;display:inline-flex}.el-dropdown .el-dropdown__caret-button>span{display:inline-flex}.el-dropdown .el-dropdown__caret-button:before{content:"";background:var(--el-overlay-color-lighter);width:1px;display:block;position:absolute;top:-1px;bottom:-1px;left:0}.el-dropdown .el-dropdown__caret-button.el-button:before{background:var(--el-border-color);opacity:.5}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{font-size:inherit;padding-left:0}.el-dropdown .el-dropdown-selfdefine{outline:none}.el-dropdown--large .el-dropdown__caret-button{width:40px}.el-dropdown--small .el-dropdown__caret-button{width:24px}.el-dropdown-menu{z-index:var(--el-dropdown-menu-index);background-color:var(--el-bg-color-overlay);border-radius:var(--el-border-radius-base);box-shadow:none;border:none;margin:0;padding:5px 0;list-style:none;position:relative;top:0;left:0}.el-dropdown-menu__item{white-space:nowrap;line-height:22px;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:none;align-items:center;margin:0;padding:5px 16px;list-style:none;display:flex}.el-dropdown-menu__item:not(.is-disabled):hover,.el-dropdown-menu__item:not(.is-disabled):focus{background-color:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{border-top:1px solid var(--el-border-color-lighter);margin:6px 0}.el-dropdown-menu__item.is-disabled{cursor:not-allowed;color:var(--el-text-color-disabled)}.el-dropdown-menu--large{padding:7px 0}.el-dropdown-menu--large .el-dropdown-menu__item{padding:7px 20px;font-size:14px;line-height:22px}.el-dropdown-menu--large .el-dropdown-menu__item--divided{margin:8px 0}.el-dropdown-menu--small{padding:3px 0}.el-dropdown-menu--small .el-dropdown-menu__item{padding:2px 12px;font-size:12px;line-height:20px}.el-dropdown-menu--small .el-dropdown-menu__item--divided{margin:4px 0}.el-empty{--el-empty-padding:40px 0;--el-empty-image-width:160px;--el-empty-description-margin-top:20px;--el-empty-bottom-margin-top:20px;--el-empty-fill-color-0:var(--el-color-white);--el-empty-fill-color-1:#fcfcfd;--el-empty-fill-color-2:#f8f9fb;--el-empty-fill-color-3:#f7f8fc;--el-empty-fill-color-4:#eeeff3;--el-empty-fill-color-5:#edeef2;--el-empty-fill-color-6:#e9ebef;--el-empty-fill-color-7:#e5e7e9;--el-empty-fill-color-8:#e0e3e9;--el-empty-fill-color-9:#d5d7de;text-align:center;box-sizing:border-box;padding:var(--el-empty-padding);flex-direction:column;justify-content:center;align-items:center;display:flex}.el-empty__image{width:var(--el-empty-image-width)}.el-empty__image img{-webkit-user-select:none;user-select:none;vertical-align:top;object-fit:contain;width:100%;height:100%}.el-empty__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;vertical-align:top;width:100%;height:100%}.el-empty__description{margin-top:var(--el-empty-description-margin-top)}.el-empty__description p{font-size:var(--el-font-size-base);color:var(--el-text-color-secondary);margin:0}.el-empty__bottom{margin-top:var(--el-empty-bottom-margin-top)}.el-footer{--el-footer-padding:0 20px;--el-footer-height:60px;padding:var(--el-footer-padding);box-sizing:border-box;height:var(--el-footer-height);flex-shrink:0}.el-form-item{--font-size:14px;margin-bottom:18px;display:flex}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-input__validateIcon{display:none}.el-form-item--large{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:22px}.el-form-item--large .el-form-item__label{height:40px;line-height:40px}.el-form-item--large .el-form-item__content{line-height:40px}.el-form-item--large .el-form-item__error{padding-top:4px}.el-form-item--default{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--default .el-form-item__label{height:32px;line-height:32px}.el-form-item--default .el-form-item__content{line-height:32px}.el-form-item--default .el-form-item__error{padding-top:2px}.el-form-item--small{--font-size:12px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--small .el-form-item__label{height:24px;line-height:24px}.el-form-item--small .el-form-item__content{line-height:24px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item--label-left .el-form-item__label{text-align:left;justify-content:flex-start}.el-form-item--label-right .el-form-item__label{text-align:right;justify-content:flex-end}.el-form-item--label-top{display:block}.el-form-item--label-top .el-form-item__label{text-align:left;width:-moz-fit-content;width:fit-content;height:auto;margin-bottom:8px;padding-right:0;line-height:22px;display:block}.el-form-item__label-wrap{display:flex}.el-form-item__label{font-size:var(--el-form-label-font-size);color:var(--el-text-color-regular);box-sizing:border-box;flex:none;align-items:flex-start;height:32px;padding:0 12px 0 0;line-height:32px;display:inline-flex}.el-form-item__content{line-height:32px;font-size:var(--font-size);flex-wrap:wrap;flex:1;align-items:center;min-width:0;display:flex;position:relative}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:var(--el-color-danger);padding-top:2px;font-size:12px;line-height:1;position:absolute;top:100%;left:0}.el-form-item__error--inline{margin-left:10px;display:inline-block;position:relative;top:auto;left:auto}.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label-wrap>.el-form-item__label:before{content:"*";color:var(--el-color-danger);margin-right:4px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label:after,.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label-wrap>.el-form-item__label:after{content:"*";color:var(--el-color-danger);margin-left:4px}.el-form-item.is-error .el-form-item__content .el-input__wrapper,.el-form-item.is-error .el-form-item__content .el-input__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-input__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-input__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-textarea__inner,.el-form-item.is-error .el-form-item__content .el-textarea__inner:hover,.el-form-item.is-error .el-form-item__content .el-textarea__inner:focus,.el-form-item.is-error .el-form-item__content .el-textarea__inner.is-focus,.el-form-item.is-error .el-form-item__content .el-select__wrapper,.el-form-item.is-error .el-form-item__content .el-select__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-select__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-select__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-form-item__content .el-input-group__append .el-input__wrapper,.el-form-item.is-error .el-form-item__content .el-input-group__prepend .el-input__wrapper{box-shadow:inset 0 0 0 1px #0000}.el-form-item.is-error .el-form-item__content .el-input-group__append .el-input__validateIcon,.el-form-item.is-error .el-form-item__content .el-input-group__prepend .el-input__validateIcon{display:none}.el-form-item.is-error .el-form-item__content .el-input__validateIcon{color:var(--el-color-danger)}.el-form-item--feedback .el-input__validateIcon{display:inline-flex}.el-form{--el-form-label-font-size:var(--el-font-size-base);--el-form-inline-content-width:220px}.el-form--inline .el-form-item{vertical-align:middle;margin-right:32px;display:inline-flex}.el-form--inline.el-form--label-top{flex-wrap:wrap;display:flex}.el-form--inline.el-form--label-top .el-form-item{display:block}.el-header{--el-header-padding:0 20px;--el-header-height:60px;padding:var(--el-header-padding);box-sizing:border-box;height:var(--el-header-height);flex-shrink:0}.el-image-viewer__wrapper{position:fixed;inset:0}.el-image-viewer__wrapper:focus{outline:none!important}.el-image-viewer__btn{z-index:1;opacity:.8;cursor:pointer;box-sizing:border-box;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.el-image-viewer__btn .el-icon{cursor:pointer}.el-image-viewer__close{width:40px;height:40px;font-size:40px;top:40px;right:40px}.el-image-viewer__canvas{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:static}.el-image-viewer__actions{background-color:var(--el-text-color-regular);border-color:#fff;border-radius:22px;height:44px;padding:0 23px;bottom:30px;left:50%;transform:translate(-50%)}.el-image-viewer__actions__inner{cursor:default;color:#fff;justify-content:space-around;align-items:center;gap:22px;width:100%;height:100%;padding:0 6px;font-size:23px;display:flex}.el-image-viewer__actions__divider{margin:0 -6px}.el-image-viewer__progress{cursor:default;color:#fff;bottom:90px;left:50%;transform:translate(-50%)}.el-image-viewer__prev{color:#fff;background-color:var(--el-text-color-regular);border-color:#fff;width:44px;height:44px;font-size:24px;top:50%;left:40px;transform:translateY(-50%)}.el-image-viewer__next{text-indent:2px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff;width:44px;height:44px;font-size:24px;top:50%;right:40px;transform:translateY(-50%)}.el-image-viewer__close{color:#fff;background-color:var(--el-text-color-regular);border-color:#fff;width:44px;height:44px;font-size:24px}.el-image-viewer__mask{opacity:.5;background:#000;width:100%;height:100%;position:absolute;top:0;left:0}.el-image-viewer-parent--hidden{overflow:hidden}.viewer-fade-enter-active{animation:viewer-fade-in var(--el-transition-duration)}.viewer-fade-leave-active{animation:viewer-fade-out var(--el-transition-duration)}@keyframes viewer-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}@keyframes viewer-fade-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translateY(-20px)}}.el-image__error,.el-image__placeholder,.el-image__wrapper,.el-image__inner{width:100%;height:100%}.el-image{display:inline-block;position:relative;overflow:hidden}.el-image__inner{vertical-align:top;opacity:1}.el-image__inner.is-loading{opacity:0}.el-image__wrapper{position:absolute;top:0;left:0}.el-image__placeholder{background:var(--el-fill-color-light)}.el-image__error{background:var(--el-fill-color-light);color:var(--el-text-color-placeholder);vertical-align:middle;justify-content:center;align-items:center;font-size:14px;display:flex}.el-image__preview{cursor:pointer}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;vertical-align:bottom;width:100%;font-size:var(--el-font-size-base);display:inline-block;position:relative}.el-textarea__inner{resize:vertical;box-sizing:border-box;width:100%;line-height:1.5;font-size:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);background-image:none;border:none;padding:5px 11px;font-family:inherit;display:block;position:relative}.el-textarea__inner.is-clearable{padding:5px 26px 5px 11px}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:none}.el-textarea__clear{color:var(--el-input-icon-color);cursor:pointer;font-size:14px;position:absolute;top:15px;right:11px;transform:translateY(-50%)}.el-textarea__clear:hover{color:var(--el-input-clear-hover-color)}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);font-size:12px;line-height:14px;position:absolute;bottom:5px;right:10px}.el-textarea .el-input__count.is-outside{top:100%;right:0;bottom:unset;background:0 0;padding-top:2px;line-height:1;position:absolute}.el-textarea.is-disabled .el-textarea__inner{box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;--el-input-height:var(--el-component-size);font-size:var(--el-font-size-base);width:var(--el-input-width);line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle;display:inline-flex;position:relative}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;color:var(--el-color-info);align-items:center;font-size:12px;display:inline-flex}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;padding-left:8px;display:inline-block}.el-input .el-input__count.is-outside{height:unset;padding-top:2px;position:absolute;top:100%;right:0}.el-input .el-input__count.is-outside .el-input__count-inner{background:0 0;padding-left:0;line-height:1}.el-input__wrapper{background-color:var(--el-input-bg-color,var(--el-fill-color-blank));border-radius:var(--el-input-border-radius,var(--el-border-radius-base));cursor:text;transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;background-image:none;flex-grow:1;justify-content:center;align-items:center;padding:1px 11px;display:inline-flex;transform:translate(0)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input{--el-input-inner-height:calc(var(--el-input-height,32px) - 2px)}.el-input__inner{-webkit-appearance:none;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);box-sizing:border-box;background:0 0;border:none;outline:none;flex-grow:1;padding:0}.el-input__inner:focus{outline:none}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__inner[type=number]{line-height:1}.el-input__prefix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__prefix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__suffix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;transition:all var(--el-transition-duration);justify-content:center;align-items:center;margin-left:8px;display:flex}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color, ) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);cursor:not-allowed;box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-disabled .el-input__prefix-inner,.el-input.is-disabled .el-input__suffix-inner{pointer-events:none}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large{--el-input-inner-height:calc(var(--el-input-height,40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small{--el-input-inner-height:calc(var(--el-input-height,24px) - 2px)}.el-input-group{align-items:stretch;width:100%;display:inline-flex}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);border-radius:var(--el-input-border-radius);white-space:nowrap;justify-content:center;align-items:center;min-height:100%;padding:0 20px;display:inline-flex;position:relative}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:none}.el-input-group__append .el-select,.el-input-group__append .el-button,.el-input-group__prepend .el-select,.el-input-group__prepend .el-button{flex:1;margin:0 -20px;display:inline-block}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-select__wrapper,.el-input-group__append div.el-select:hover .el-select__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-select__wrapper,.el-input-group__prepend div.el-select:hover .el-select__wrapper{color:inherit;background-color:#0000;border-color:#0000}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-select__wrapper{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-select__wrapper{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-hidden{display:none!important}.el-input-number{vertical-align:middle;width:150px;line-height:30px;display:inline-flex;position:relative}.el-input-number .el-input__wrapper{padding-left:42px;padding-right:42px}.el-input-number .el-input__inner{-webkit-appearance:none;-moz-appearance:textfield;text-align:center;line-height:1}.el-input-number .el-input__inner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.el-input-number .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-input-number.is-left .el-input__inner{text-align:left}.el-input-number.is-right .el-input__inner{text-align:right}.el-input-number.is-center .el-input__inner{text-align:center}.el-input-number__increase,.el-input-number__decrease{z-index:1;background:var(--el-fill-color-light);width:32px;height:auto;color:var(--el-text-color-regular);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;top:1px;bottom:1px}.el-input-number__increase:hover,.el-input-number__decrease:hover{color:var(--el-color-primary)}.el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input__wrapper,.el-input-number__decrease:hover~.el-input:not(.is-disabled) .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-input-number__increase.is-disabled,.el-input-number__decrease.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-input-number__increase{border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0;border-left:var(--el-border);right:1px}.el-input-number__decrease{border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);border-right:var(--el-border);left:1px}.el-input-number.is-disabled .el-input-number__increase,.el-input-number.is-disabled .el-input-number__decrease{border-color:var(--el-disabled-border-color);color:var(--el-disabled-border-color)}.el-input-number.is-disabled .el-input-number__increase:hover,.el-input-number.is-disabled .el-input-number__decrease:hover{color:var(--el-disabled-border-color);cursor:not-allowed}.el-input-number--large{width:180px;line-height:38px}.el-input-number--large .el-input-number__increase,.el-input-number--large .el-input-number__decrease{width:40px;font-size:14px}.el-input-number--large.is-controls-right .el-input--large .el-input__wrapper{padding-right:47px}.el-input-number--large .el-input--large .el-input__wrapper{padding-left:47px;padding-right:47px}.el-input-number--small{width:120px;line-height:22px}.el-input-number--small .el-input-number__increase,.el-input-number--small .el-input-number__decrease{width:24px;font-size:12px}.el-input-number--small.is-controls-right .el-input--small .el-input__wrapper{padding-right:31px}.el-input-number--small .el-input--small .el-input__wrapper{padding-left:31px;padding-right:31px}.el-input-number--small .el-input-number__increase [class*=el-icon],.el-input-number--small .el-input-number__decrease [class*=el-icon]{transform:scale(.9)}.el-input-number.is-without-controls .el-input__wrapper{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__wrapper{padding-left:15px;padding-right:42px}.el-input-number.is-controls-right .el-input-number__increase,.el-input-number.is-controls-right .el-input-number__decrease{--el-input-number-controls-height:15px;height:var(--el-input-number-controls-height);line-height:var(--el-input-number-controls-height)}.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon],.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon]{transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{border-radius:0 var(--el-border-radius-base) 0 0;border-bottom:var(--el-border);bottom:auto;left:auto}.el-input-number.is-controls-right .el-input-number__decrease{border-right:none;border-left:var(--el-border);border-radius:0 0 var(--el-border-radius-base) 0;top:auto;left:auto;right:1px}.el-input-number.is-controls-right[class*=large] [class*=increase],.el-input-number.is-controls-right[class*=large] [class*=decrease]{--el-input-number-controls-height:19px}.el-input-number.is-controls-right[class*=small] [class*=increase],.el-input-number.is-controls-right[class*=small] [class*=decrease]{--el-input-number-controls-height:11px}.el-input-tag{--el-input-tag-border-color-hover:var(--el-border-color-hover);--el-input-tag-placeholder-color:var(--el-text-color-placeholder);--el-input-tag-disabled-color:var(--el-disabled-text-color);--el-input-tag-disabled-border:var(--el-disabled-border-color);--el-input-tag-font-size:var(--el-font-size-base);--el-input-tag-close-hover-color:var(--el-text-color-secondary);--el-input-tag-text-color:var(--el-text-color-regular);--el-input-tag-input-focus-border-color:var(--el-color-primary);--el-input-tag-width:100%;--el-input-tag-mini-height:var(--el-component-size);--el-input-tag-gap:6px;--el-input-tag-padding:4px;--el-input-tag-inner-padding:8px;--el-input-tag-line-height:24px;box-sizing:border-box;cursor:pointer;font-size:var(--el-input-tag-font-size);padding:var(--el-input-tag-padding);width:var(--el-input-tag-width);min-height:var(--el-input-tag-mini-height);line-height:var(--el-input-tag-line-height);border-radius:var(--el-border-radius-base);background-color:var(--el-fill-color-blank);transition:var(--el-transition-duration);box-shadow:0 0 0 1px var(--el-border-color) inset;align-items:center;display:flex;transform:translate(0)}.el-input-tag.is-focused{box-shadow:0 0 0 1px var(--el-color-primary) inset}.el-input-tag.is-hovering:not(.is-focused){box-shadow:0 0 0 1px var(--el-border-color-hover) inset}.el-input-tag.is-disabled{cursor:not-allowed;background-color:var(--el-fill-color-light);box-shadow:0 0 0 1px var(--el-input-tag-disabled-border) inset}.el-input-tag.is-disabled:hover{box-shadow:0 0 0 1px var(--el-input-tag-disabled-border) inset}.el-input-tag.is-disabled.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input-tag.is-disabled .el-input-tag__inner .el-input-tag__input,.el-input-tag.is-disabled .el-input-tag__inner .el-tag{cursor:not-allowed}.el-input-tag__prefix{padding:0 var(--el-input-tag-inner-padding);color:var(--el-input-icon-color,var(--el-text-color-placeholder));flex-shrink:0;align-items:center;display:flex}.el-input-tag__suffix{padding:0 var(--el-input-tag-inner-padding);color:var(--el-input-icon-color,var(--el-text-color-placeholder));flex-shrink:0;align-items:center;gap:8px;display:flex}.el-input-tag__collapse-tag{line-height:1}.el-input-tag__input-tag-list{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.el-input-tag__input-tag-list.is-near{margin-left:-8px}.el-input-tag__input-tag-list .el-tag{cursor:pointer;border-color:#0000}.el-input-tag__input-tag-list .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-input-tag__input-tag-list .el-tag .el-tag__content{min-width:0}.el-input-tag__inner{align-items:center;gap:var(--el-input-tag-gap);flex-wrap:wrap;flex:1;min-width:0;max-width:100%;display:flex;position:relative}.el-input-tag__inner.is-left-space{margin-left:var(--el-input-tag-inner-padding)}.el-input-tag__inner.is-right-space{margin-right:var(--el-input-tag-inner-padding)}.el-input-tag__inner.is-draggable .el-tag{cursor:move;-webkit-user-select:none;user-select:none}.el-input-tag__drop-indicator{width:1px;height:var(--el-input-tag-line-height);background-color:var(--el-color-primary);position:absolute;top:0}.el-input-tag__inner .el-tag{cursor:pointer;border-color:#0000;max-width:100%}.el-input-tag__inner .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-input-tag__inner .el-tag .el-tag__content{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:normal;overflow:hidden}.el-input-tag__input-wrapper{flex:1}.el-input-tag__input{color:var(--el-input-tag-text-color);font-size:inherit;font-family:inherit;line-height:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;outline:none;width:100%;padding:0}.el-input-tag__input::placeholder{color:var(--el-input-tag-placeholder-color)}.el-input-tag__input-calculator{visibility:hidden;white-space:pre;max-width:100%;position:absolute;top:0;left:0;overflow:hidden}.el-input-tag--large{--el-input-tag-gap:6px;--el-input-tag-padding:8px;--el-input-tag-padding-left:8px;--el-input-tag-font-size:14px}.el-input-tag--small{--el-input-tag-gap:4px;--el-input-tag-padding:2px;--el-input-tag-padding-left:6px;--el-input-tag-font-size:12px;--el-input-tag-line-height:20px;--el-input-tag-mini-height:var(--el-component-size-small)}.el-link{--el-link-font-size:var(--el-font-size-base);--el-link-font-weight:var(--el-font-weight-primary);--el-link-text-color:var(--el-text-color-regular);--el-link-hover-text-color:var(--el-color-primary);--el-link-disabled-text-color:var(--el-text-color-placeholder);vertical-align:middle;cursor:pointer;font-size:var(--el-link-font-size);font-weight:var(--el-link-font-weight);color:var(--el-link-text-color);outline:none;flex-direction:row;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex;position:relative}.el-link.is-hover-underline:hover:after{content:"";border-bottom:1px solid var(--el-link-hover-text-color);height:0;position:absolute;bottom:0;left:0;right:0}.el-link.is-underline:after{content:"";border-bottom:1px solid var(--el-link-text-color);height:0;position:absolute;bottom:0;left:0;right:0}.el-link:hover{color:var(--el-link-hover-text-color)}.el-link:hover:after{border-color:var(--el-link-hover-text-color)}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link__inner{justify-content:center;align-items:center;display:inline-flex}.el-link.el-link--primary{--el-link-text-color:var(--el-color-primary);--el-link-hover-text-color:var(--el-color-primary-light-3);--el-link-disabled-text-color:var(--el-color-primary-light-5)}.el-link.el-link--success{--el-link-text-color:var(--el-color-success);--el-link-hover-text-color:var(--el-color-success-light-3);--el-link-disabled-text-color:var(--el-color-success-light-5)}.el-link.el-link--warning{--el-link-text-color:var(--el-color-warning);--el-link-hover-text-color:var(--el-color-warning-light-3);--el-link-disabled-text-color:var(--el-color-warning-light-5)}.el-link.el-link--danger{--el-link-text-color:var(--el-color-danger);--el-link-hover-text-color:var(--el-color-danger-light-3);--el-link-disabled-text-color:var(--el-color-danger-light-5)}.el-link.el-link--error{--el-link-text-color:var(--el-color-error);--el-link-hover-text-color:var(--el-color-error-light-3);--el-link-disabled-text-color:var(--el-color-error-light-5)}.el-link.el-link--info{--el-link-text-color:var(--el-color-info);--el-link-hover-text-color:var(--el-color-info-light-3);--el-link-disabled-text-color:var(--el-color-info-light-5)}.el-link.is-disabled{color:var(--el-link-disabled-text-color);cursor:not-allowed}.el-link.is-disabled:after{border-color:var(--el-link-disabled-text-color)}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{z-index:2000;background-color:var(--el-mask-color);transition:opacity var(--el-transition-duration);margin:0;position:absolute;inset:0}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size)) / 2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{margin-top:calc((0px - var(--el-loading-spinner-size)) / 2);text-align:center;width:100%;position:absolute;top:50%}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);margin:3px 0;font-size:14px}.el-loading-spinner .circular{height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size);animation:2s linear infinite loading-rotate;display:inline}.el-loading-spinner .path{stroke-dasharray:90 150;stroke-dashoffset:0;stroke-width:2px;stroke:var(--el-color-primary);stroke-linecap:round;animation:1.5s ease-in-out infinite loading-dash}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1 200;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-40px}to{stroke-dasharray:90 150;stroke-dashoffset:-120px}}.el-main{--el-main-padding:20px;box-sizing:border-box;padding:var(--el-main-padding);flex:auto;display:block;overflow:auto}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-height:60px;--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{border-right:solid 1px var(--el-menu-border-color);background-color:var(--el-menu-bg-color);box-sizing:border-box;margin:0;padding-left:0;list-style:none;position:relative}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title{white-space:nowrap;padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level) * var(--el-menu-level-padding))}.el-menu:not(.el-menu--collapse) .el-sub-menu__title{padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-menu--horizontal{height:var(--el-menu-horizontal-height);border-right:none;flex-wrap:nowrap;display:flex}.el-menu--horizontal.el-menu--popup-container{height:unset}.el-menu--horizontal.el-menu{border-bottom:solid 1px var(--el-menu-border-color)}.el-menu--horizontal>.el-menu-item{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000;justify-content:center;align-items:center;margin:0;display:inline-flex}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:none}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{background-color:var(--el-menu-bg-color)}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-sub-menu__title{background-color:var(--el-menu-bg-color);height:var(--el-menu-horizontal-sub-item-height);line-height:var(--el-menu-horizontal-sub-item-height);color:var(--el-menu-text-color);align-items:center;padding:0 10px;display:flex}.el-menu--horizontal .el-menu .el-sub-menu__title{padding-right:40px}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-menu-item.is-active:hover,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title:hover{color:var(--el-menu-active-color)}.el-menu--horizontal .el-menu-item:not(.is-disabled):hover,.el-menu--horizontal .el-menu-item:not(.is-disabled):focus{color:var(--el-menu-active-color,var(--el-menu-hover-text-color));background-color:var(--el-menu-hover-bg-color);outline:none}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)!important}.el-menu--collapse{width:calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding) * 2)}.el-menu--collapse>.el-menu-item [class^=el-icon],.el-menu--collapse>.el-sub-menu>.el-sub-menu__title [class^=el-icon],.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title [class^=el-icon]{vertical-align:middle;width:var(--el-menu-icon-width);text-align:center;margin:0}.el-menu--collapse>.el-menu-item .el-sub-menu__icon-arrow,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item>span,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title>span,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title>span{visibility:hidden;width:0;height:0;display:inline-block;overflow:hidden}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-menu .el-sub-menu{min-width:200px}.el-menu--collapse .el-sub-menu.is-active .el-sub-menu__title{color:var(--el-menu-active-color)}.el-menu--popup{z-index:100;border-radius:var(--el-border-radius-small);min-width:200px;box-shadow:var(--el-box-shadow-light);border:none;padding:5px 0}.el-menu .el-icon{flex-shrink:0}.el-menu-item{height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);cursor:pointer;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap;align-items:center;list-style:none;display:flex;position:relative}.el-menu-item *{vertical-align:bottom}.el-menu-item i{color:inherit}.el-menu-item:hover,.el-menu-item:focus{outline:none}.el-menu-item:hover{background-color:var(--el-menu-hover-bg-color)}.el-menu-item.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-menu-item [class^=el-icon]{width:var(--el-menu-icon-width);text-align:center;vertical-align:middle;margin-right:5px;font-size:18px}.el-menu-item.is-active{color:var(--el-menu-active-color)}.el-menu-item.is-active i{color:inherit}.el-menu-item .el-menu-tooltip__trigger{box-sizing:border-box;width:100%;height:100%;padding:0 var(--el-menu-base-level-padding);align-items:center;display:inline-flex;position:absolute;top:0;left:0}.el-sub-menu{margin:0;padding-left:0;list-style:none}.el-sub-menu__title{height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);cursor:pointer;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap;align-items:center;list-style:none;display:flex;position:relative}.el-sub-menu__title *{vertical-align:bottom}.el-sub-menu__title i{color:inherit}.el-sub-menu__title:hover,.el-sub-menu__title:focus{outline:none}.el-sub-menu__title.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu__title:hover{background-color:var(--el-menu-hover-bg-color)}.el-sub-menu .el-menu{border:none}.el-sub-menu .el-menu-item{height:var(--el-menu-sub-item-height);line-height:var(--el-menu-sub-item-height)}.el-sub-menu.el-sub-menu__hide-arrow .el-sub-menu__title{padding-right:var(--el-menu-base-level-padding)}.el-sub-menu__hide-arrow .el-sub-menu__icon-arrow{display:none!important}.el-sub-menu.is-active .el-sub-menu__title{border-bottom-color:var(--el-menu-active-color)}.el-sub-menu.is-disabled .el-sub-menu__title,.el-sub-menu.is-disabled .el-menu-item{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu .el-icon{vertical-align:middle;width:var(--el-menu-icon-width);text-align:center;margin-right:5px;font-size:18px}.el-sub-menu .el-icon.el-sub-menu__icon-more{margin-right:0!important}.el-sub-menu .el-sub-menu__icon-arrow{top:50%;right:var(--el-menu-base-level-padding);transition:transform var(--el-transition-duration);width:inherit;margin-top:-6px;margin-right:0;font-size:12px;position:absolute}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{padding:7px 0 7px var(--el-menu-base-level-padding);color:var(--el-text-color-secondary);font-size:12px;line-height:normal}.horizontal-collapse-transition .el-sub-menu__title .el-sub-menu__icon-arrow{transition:var(--el-transition-duration-fast);opacity:0}.el-popper,.el-menu--popup-container,.el-menu{outline:none}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-box-shadow:var(--el-box-shadow);--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:12px;--el-messagebox-font-line-height:var(--el-font-line-height-primary);max-width:var(--el-messagebox-width);width:100%;padding:var(--el-messagebox-padding-primary);vertical-align:middle;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);font-size:var(--el-messagebox-font-size);box-shadow:var(--el-messagebox-box-shadow);text-align:left;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;overflow-wrap:break-word;display:inline-block;position:relative;overflow:hidden}.el-message-box:focus{outline:none!important}.is-message-box .el-overlay-message-box{text-align:center;padding:16px;position:fixed;inset:0;overflow:auto}.is-message-box .el-overlay-message-box:after{content:"";vertical-align:middle;width:0;height:100%;display:inline-block}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;user-select:none}.el-message-box__header{padding-bottom:var(--el-messagebox-padding-primary)}.el-message-box__header.show-close{padding-right:calc(var(--el-messagebox-padding-primary) + var(--el-message-close-size,16px))}.el-message-box__title{font-size:var(--el-messagebox-font-size);line-height:var(--el-messagebox-font-line-height);color:var(--el-messagebox-title-color)}.el-message-box__headerbtn{width:40px;height:40px;font-size:var(--el-message-close-size,16px);cursor:pointer;background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{align-items:center;gap:12px;display:flex}.el-message-box__input{padding-top:12px}.el-message-box__input div.invalid>input,.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{font-size:24px}.el-message-box__status.el-message-box-icon--primary{--el-messagebox-color:var(--el-color-primary);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{min-width:0;margin:0}.el-message-box__message p{line-height:var(--el-messagebox-font-line-height);margin:0}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__btns{padding-top:var(--el-messagebox-padding-primary);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.el-message-box--center .el-message-box__title{justify-content:center;align-items:center;gap:6px;display:flex}.el-message-box--center .el-message-box__status{font-size:inherit}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__container{justify-content:center}.el-message-box-parent--hidden{overflow:hidden}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:11px 15px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);box-sizing:border-box;border-radius:var(--el-border-radius-base);border-width:var(--el-border-width);border-style:var(--el-border-style);border-color:var(--el-message-border-color);background-color:var(--el-message-bg-color);width:max-content;max-width:calc(100% - 32px);transition:opacity var(--el-transition-duration),transform .4s,top .4s,bottom .4s;padding:var(--el-message-padding);align-items:center;gap:8px;display:flex;position:fixed}.el-message.is-left{left:16px}.el-message.is-right{right:16px}.el-message.is-center{left:50%;transform:translate(-50%)}.el-message.is-plain{background-color:var(--el-bg-color-overlay);border-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-message p{margin:0}.el-message--primary{--el-message-bg-color:var(--el-color-primary-light-9);--el-message-border-color:var(--el-color-primary-light-8);--el-message-text-color:var(--el-color-primary)}.el-message--primary .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--primary{color:var(--el-message-text-color)}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message .el-message__badge{position:absolute;top:-8px;right:-8px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{cursor:pointer;color:var(--el-message-close-icon-color);font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0}.el-message-fade-enter-from.is-left,.el-message-fade-enter-from.is-right,.el-message-fade-leave-to.is-left,.el-message-fade-leave-to.is-right{transform:translateY(-100%)}.el-message-fade-enter-from.is-left.is-bottom,.el-message-fade-enter-from.is-right.is-bottom,.el-message-fade-leave-to.is-left.is-bottom,.el-message-fade-leave-to.is-right.is-bottom{transform:translateY(100%)}.el-message-fade-enter-from.is-center,.el-message-fade-leave-to.is-center{transform:translate(-50%,-100%)}.el-message-fade-enter-from.is-center.is-bottom,.el-message-fade-leave-to.is-center.is-bottom{transform:translate(-50%,100%)}.el-notification{--el-notification-width:330px;--el-notification-padding:14px 26px 14px 13px;--el-notification-radius:8px;--el-notification-shadow:var(--el-box-shadow-light);--el-notification-border-color:var(--el-border-color-lighter);--el-notification-icon-size:24px;--el-notification-close-font-size:var(--el-message-close-size,16px);--el-notification-group-margin-left:13px;--el-notification-group-margin-right:8px;--el-notification-content-font-size:var(--el-font-size-base);--el-notification-content-color:var(--el-text-color-regular);--el-notification-title-font-size:16px;--el-notification-title-color:var(--el-text-color-primary);--el-notification-close-color:var(--el-text-color-secondary);--el-notification-close-hover-color:var(--el-text-color-regular);width:var(--el-notification-width);padding:var(--el-notification-padding);border-radius:var(--el-notification-radius);box-sizing:border-box;border:1px solid var(--el-notification-border-color);background-color:var(--el-bg-color-overlay);box-shadow:var(--el-notification-shadow);transition:opacity var(--el-transition-duration),transform var(--el-transition-duration),left var(--el-transition-duration),right var(--el-transition-duration),top .4s,bottom var(--el-transition-duration);overflow-wrap:break-word;z-index:9999;display:flex;position:fixed;overflow:hidden}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{min-width:0;margin-left:var(--el-notification-group-margin-left);margin-right:var(--el-notification-group-margin-right);flex:1}.el-notification__title{font-weight:700;font-size:var(--el-notification-title-font-size);line-height:var(--el-notification-icon-size);color:var(--el-notification-title-color);margin:0}.el-notification__content{font-size:var(--el-notification-content-font-size);color:var(--el-notification-content-color);margin:6px 0 0;line-height:24px}.el-notification__content p{margin:0}.el-notification .el-notification__icon{height:var(--el-notification-icon-size);width:var(--el-notification-icon-size);font-size:var(--el-notification-icon-size);flex-shrink:0}.el-notification .el-notification__closeBtn{cursor:pointer;color:var(--el-notification-close-color);font-size:var(--el-notification-close-font-size);position:absolute;top:18px;right:15px}.el-notification .el-notification__closeBtn:hover{color:var(--el-notification-close-hover-color)}.el-notification .el-notification--primary{--el-notification-icon-color:var(--el-color-primary);color:var(--el-notification-icon-color)}.el-notification .el-notification--success{--el-notification-icon-color:var(--el-color-success);color:var(--el-notification-icon-color)}.el-notification .el-notification--info{--el-notification-icon-color:var(--el-color-info);color:var(--el-notification-icon-color)}.el-notification .el-notification--warning{--el-notification-icon-color:var(--el-color-warning);color:var(--el-notification-icon-color)}.el-notification .el-notification--error{--el-notification-icon-color:var(--el-color-error);color:var(--el-notification-icon-color)}.el-notification-fade-enter-from.right{right:0;transform:translate(100%)}.el-notification-fade-enter-from.left{left:0;transform:translate(-100%)}.el-notification-fade-leave-to{opacity:0}.el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{justify-content:space-between;align-items:center;line-height:24px;display:flex}.el-page-header__left{align-items:center;margin-right:40px;display:flex;position:relative}.el-page-header__back{cursor:pointer;align-items:center;display:flex}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{align-items:center;margin-right:10px;font-size:16px;display:flex}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{color:var(--el-text-color-primary);font-size:18px}.el-page-header__breadcrumb{margin-bottom:16px}.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-button-width-large:40px;--el-pagination-button-height-large:40px;--el-pagination-item-gap:16px;white-space:nowrap;color:var(--el-pagination-text-color);font-size:var(--el-pagination-font-size);align-items:center;font-weight:400;display:flex}.el-pagination .el-input__inner{text-align:center;-moz-appearance:textfield}.el-pagination .el-select{width:128px}.el-pagination .btn-prev,.el-pagination .btn-next{font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box;border:none;justify-content:center;align-items:center;padding:0 4px;display:flex}.el-pagination .btn-prev *,.el-pagination .btn-next *{pointer-events:none}.el-pagination .btn-prev:focus,.el-pagination .btn-next:focus{outline:none}.el-pagination .btn-prev:hover,.el-pagination .btn-next:hover{color:var(--el-pagination-hover-color)}.el-pagination .btn-prev.is-active,.el-pagination .btn-next.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pagination .btn-prev.is-active.is-disabled,.el-pagination .btn-next.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pagination .btn-prev:disabled,.el-pagination .btn-prev.is-disabled,.el-pagination .btn-next:disabled,.el-pagination .btn-next.is-disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pagination .btn-prev:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-prev .el-icon,.el-pagination .btn-next .el-icon{width:inherit;font-size:12px;font-weight:700;display:block}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{margin-left:var(--el-pagination-item-gap);color:var(--el-text-color-regular);font-weight:400}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{margin-left:var(--el-pagination-item-gap);color:var(--el-text-color-regular);align-items:center;font-weight:400;display:flex}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{text-align:center;box-sizing:border-box}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{flex:1;justify-content:flex-end;align-items:center;display:flex}.el-pagination.is-background .btn-prev,.el-pagination.is-background .btn-next,.el-pagination.is-background .el-pager li{background-color:var(--el-pagination-button-bg-color);margin:0 4px}.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .el-pager li:disabled,.el-pagination.is-background .el-pager li.is-disabled{color:var(--el-text-color-placeholder);background-color:var(--el-disabled-bg-color)}.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active{color:var(--el-text-color-secondary);background-color:var(--el-fill-color-dark)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-prev,.el-pagination--small .btn-next,.el-pagination--small .el-pager li{height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);font-size:var(--el-pagination-font-size-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small span:not([class*=suffix]),.el-pagination--small button{font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select{width:100px}.el-pagination--large .btn-prev,.el-pagination--large .btn-next,.el-pagination--large .el-pager li{height:var(--el-pagination-button-height-large);line-height:var(--el-pagination-button-height-large);min-width:var(--el-pagination-button-width-large)}.el-pagination--large .el-select .el-input{width:160px}.el-pager{-webkit-user-select:none;user-select:none;align-items:center;margin:0;padding:0;font-size:0;list-style:none;display:flex}.el-pager li{font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box;border:none;justify-content:center;align-items:center;padding:0 4px;display:flex}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:none}.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pager li:disabled,.el-pager li.is-disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-popconfirm{outline:none}.el-popconfirm__main{align-items:center;display:flex}.el-popconfirm__icon{margin-right:5px}.el-popconfirm__action{text-align:right;margin-top:8px}.el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);border-radius:var(--el-popover-border-radius);border:1px solid var(--el-popover-border-color);min-width:150px;padding:var(--el-popover-padding);z-index:var(--el-index-popper);color:var(--el-text-color-regular);line-height:1.4;font-size:var(--el-popover-font-size);box-shadow:var(--el-box-shadow-light);overflow-wrap:break-word;box-sizing:border-box}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);margin-bottom:12px;line-height:1}.el-popover__reference:focus:not(.focusing),.el-popover__reference:focus:hover{outline-width:0}.el-popover.el-popper.is-dark{--el-popover-bg-color:var(--el-text-color-primary);--el-popover-border-color:var(--el-text-color-primary);--el-popover-title-text-color:var(--el-bg-color);color:var(--el-bg-color)}.el-popover.el-popper:focus:active,.el-popover.el-popper:focus{outline-width:0}.el-progress{align-items:center;line-height:1;display:flex;position:relative}.el-progress__text{color:var(--el-text-color-regular);min-width:50px;margin-left:5px;font-size:14px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{text-align:center;width:100%;margin:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{margin-right:0;padding-right:0;display:block}.el-progress--text-inside .el-progress-bar{margin-right:0;padding-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{box-sizing:border-box;flex-grow:1}.el-progress-bar__outer{background-color:var(--el-border-color-lighter);vertical-align:middle;border-radius:100px;height:6px;position:relative;overflow:hidden}.el-progress-bar__inner{background-color:var(--el-color-primary);text-align:right;white-space:nowrap;border-radius:100px;height:100%;line-height:1;transition:width .6s;position:absolute;top:0;left:0}.el-progress-bar__inner:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-progress-bar__inner--indeterminate{animation:3s infinite indeterminate;transform:translateZ(0)}.el-progress-bar__inner--striped{background-image:linear-gradient(45deg,#0000001a 25%,#0000 25% 50%,#0000001a 50% 75%,#0000 75%,#0000);background-size:1.25em 1.25em}.el-progress-bar__inner--striped.el-progress-bar__inner--striped-flow{animation:3s linear infinite striped-flow}.el-progress-bar__innerText{vertical-align:middle;color:#fff;margin:0 5px;font-size:12px;display:inline-block}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes indeterminate{0%{left:-100%}to{left:100%}}@keyframes striped-flow{0%{background-position:-100%}to{background-position:100%}}.el-radio-button{--el-radio-button-checked-bg-color:var(--el-color-primary);--el-radio-button-checked-text-color:var(--el-color-white);--el-radio-button-checked-border-color:var(--el-color-primary);--el-radio-button-disabled-checked-fill:var(--el-border-color-extra-light);outline:none;display:inline-block;position:relative}.el-radio-button__inner{white-space:nowrap;vertical-align:middle;background:var(--el-button-bg-color,var(--el-fill-color-blank));outline:var(--el-border);line-height:1;font-weight:var(--el-button-font-weight,var(--el-font-weight-primary));color:var(--el-button-text-color,var(--el-text-color-regular));-webkit-appearance:none;text-align:center;box-sizing:border-box;cursor:pointer;transition:var(--el-transition-all);-webkit-user-select:none;user-select:none;font-size:var(--el-font-size-base);border-radius:0;margin:0;padding:8px 15px;display:inline-block;position:relative}.el-radio-button__inner.is-round{padding:8px 15px}.el-radio-button__inner:hover{color:var(--el-color-primary)}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button:first-child .el-radio-button__inner{border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);box-shadow:none!important}.el-radio-button.is-active .el-radio-button__original-radio:not(:disabled)+.el-radio-button__inner{color:var(--el-radio-button-checked-text-color,var(--el-color-white));background-color:var(--el-radio-button-checked-bg-color,var(--el-color-primary));border-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));box-shadow:-1px 0 0 0 var(--el-radio-button-checked-border-color,var(--el-color-primary))}.el-radio-button__original-radio{opacity:0;z-index:-1;outline:none;position:absolute}.el-radio-button__original-radio:focus-visible+.el-radio-button__inner{border-left:var(--el-border);border-left-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));outline:2px solid var(--el-radio-button-checked-border-color);outline-offset:1px;z-index:2;border-radius:var(--el-border-radius-base);box-shadow:none}.el-radio-button__original-radio:disabled+.el-radio-button__inner{color:var(--el-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none}.el-radio-button__original-radio:disabled:checked+.el-radio-button__inner{background-color:var(--el-radio-button-disabled-checked-fill)}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0}.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:var(--el-border-radius-base)}.el-radio-button--large .el-radio-button__inner{font-size:var(--el-font-size-base);border-radius:0;padding:12px 19px}.el-radio-button--large .el-radio-button__inner.is-round{padding:12px 19px}.el-radio-button--small .el-radio-button__inner{border-radius:0;padding:5px 11px;font-size:12px}.el-radio-button--small .el-radio-button__inner.is-round{padding:5px 11px}.el-radio-group{flex-wrap:wrap;align-items:center;font-size:0;display:inline-flex}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary);color:var(--el-radio-text-color);font-weight:var(--el-radio-font-weight);cursor:pointer;white-space:nowrap;font-size:var(--el-font-size-base);-webkit-user-select:none;user-select:none;outline:none;align-items:center;height:32px;margin-right:30px;display:inline-flex;position:relative}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box;padding:0 15px 0 9px}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:var(--el-border-color-lighter)}.el-radio.is-bordered.el-radio--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.is-bordered.el-radio--small{border-radius:var(--el-border-radius-base);padding:0 11px 0 7px}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{width:12px;height:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;vertical-align:middle;outline:none;display:inline-flex;position:relative}.el-radio__input.is-disabled .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:var(--el-color-primary);background:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{background-color:var(--el-color-white);transform:translate(-50%,-50%)scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);width:var(--el-radio-input-width);height:var(--el-radio-input-height);background-color:var(--el-radio-input-bg-color);cursor:pointer;box-sizing:border-box;transition:all .3s;display:inline-block;position:relative}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{border-radius:var(--el-radio-input-border-radius);content:"";width:4px;height:4px;transition:transform .15s ease-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.el-radio__original{opacity:0;z-index:-1;outline:none;margin:0;position:absolute;inset:0}.el-radio__original:focus-visible+.el-radio__inner{outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px;border-radius:var(--el-radio-input-border-radius)}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{width:12px;height:12px}.el-rate{--el-rate-height:20px;--el-rate-font-size:var(--el-font-size-base);--el-rate-icon-size:18px;--el-rate-icon-margin:6px;--el-rate-void-color:var(--el-border-color-darker);--el-rate-fill-color:#f7ba2a;--el-rate-disabled-void-color:var(--el-fill-color);--el-rate-text-color:var(--el-text-color-primary);--el-rate-outline-color:var(--el-color-primary-light-5);align-items:center;height:32px;display:inline-flex}.el-rate:focus,.el-rate:active{outline:none}.el-rate:focus-visible .el-rate__item .el-rate__icon.is-focus-visible{outline:2px solid var(--el-rate-outline-color);transition:outline-offset,outline}.el-rate__item{cursor:pointer;vertical-align:middle;color:var(--el-rate-void-color);font-size:0;line-height:normal;display:inline-block;position:relative}.el-rate .el-rate__icon{font-size:var(--el-rate-icon-size);margin-right:var(--el-rate-icon-margin);transition:var(--el-transition-duration);display:inline-block;position:relative}.el-rate .el-rate__icon.hover{transform:scale(1.15)}.el-rate .el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate .el-rate__icon.is-active{color:var(--el-rate-fill-color)}.el-rate__decimal{color:var(--el-rate-fill-color);display:inline-block;position:absolute;top:0;left:0;overflow:hidden}.el-rate__decimal--box{position:absolute;top:0;left:0}.el-rate__text{font-size:var(--el-rate-font-size);vertical-align:middle;color:var(--el-rate-text-color)}.el-rate--large{height:40px}.el-rate--small{height:24px}.el-rate--small .el-rate__icon{font-size:14px}.el-rate.is-disabled .el-rate__item{cursor:not-allowed;color:var(--el-rate-disabled-void-color)}.el-result{--el-result-padding:40px 30px;--el-result-icon-font-size:64px;--el-result-title-font-size:20px;--el-result-title-margin-top:20px;--el-result-subtitle-margin-top:10px;--el-result-extra-margin-top:30px;text-align:center;box-sizing:border-box;padding:var(--el-result-padding);flex-direction:column;justify-content:center;align-items:center;display:flex}.el-result__icon svg{width:var(--el-result-icon-font-size);height:var(--el-result-icon-font-size)}.el-result__title{margin-top:var(--el-result-title-margin-top)}.el-result__title p{font-size:var(--el-result-title-font-size);color:var(--el-text-color-primary);margin:0;line-height:1.3}.el-result__subtitle{margin-top:var(--el-result-subtitle-margin-top)}.el-result__subtitle p{font-size:var(--el-font-size-base);color:var(--el-text-color-regular);margin:0;line-height:1.3}.el-result__extra{margin-top:var(--el-result-extra-margin-top)}.el-result .icon-primary{--el-result-color:var(--el-color-primary);color:var(--el-result-color)}.el-result .icon-success{--el-result-color:var(--el-color-success);color:var(--el-result-color)}.el-result .icon-warning{--el-result-color:var(--el-color-warning);color:var(--el-result-color)}.el-result .icon-danger{--el-result-color:var(--el-color-danger);color:var(--el-result-color)}.el-result .icon-error{--el-result-color:var(--el-color-error);color:var(--el-result-color)}.el-result .icon-info{--el-result-color:var(--el-color-info);color:var(--el-result-color)}.el-row{box-sizing:border-box;flex-wrap:wrap;display:flex;position:relative}.el-row.is-justify-center{justify-content:center}.el-row.is-justify-end{justify-content:flex-end}.el-row.is-justify-space-between{justify-content:space-between}.el-row.is-justify-space-around{justify-content:space-around}.el-row.is-justify-space-evenly{justify-content:space-evenly}.el-row.is-align-top{align-items:flex-start}.el-row.is-align-middle{align-items:center}.el-row.is-align-bottom{align-items:flex-end}.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);height:100%;position:relative;overflow:hidden}.el-scrollbar__wrap{height:100%;overflow:auto}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{cursor:pointer;border-radius:inherit;background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));width:0;height:0;transition:var(--el-transition-duration) background-color;opacity:var(--el-scrollbar-opacity,.3);display:block;position:relative}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{z-index:1;border-radius:4px;position:absolute;bottom:2px;right:2px}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-select-dropdown{z-index:calc(var(--el-index-top) + 1);border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown__loading,.el-select-dropdown__empty{text-align:center;color:var(--el-text-color-secondary);font-size:var(--el-select-font-size);margin:0;padding:10px 0}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{box-sizing:border-box;margin:0;padding:6px 0;list-style:none}.el-select-dropdown__list.el-vl__window{margin:6px 0;padding:0}.el-select-dropdown__header{border-bottom:1px solid var(--el-border-color-light);padding:10px}.el-select-dropdown__footer{border-top:1px solid var(--el-border-color-light);padding:10px}.el-select-dropdown__item{font-size:var(--el-font-size-base);white-space:nowrap;text-overflow:ellipsis;color:var(--el-text-color-regular);box-sizing:border-box;cursor:pointer;height:34px;padding:0 32px 0 20px;line-height:34px;position:relative;overflow:hidden}.el-select-dropdown__item.is-hovering{background-color:var(--el-fill-color-light)}.el-select-dropdown__item.is-selected{color:var(--el-color-primary);font-weight:700}.el-select-dropdown__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed;background-color:unset}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-selected:after{content:"";background-position:50%;background-repeat:no-repeat;background-color:var(--el-color-primary);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") 0 0/100% 100% no-repeat;border-top:none;border-right:none;width:12px;height:12px;position:absolute;top:50%;right:20px;transform:translateY(-50%);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") 0 0/100% 100% no-repeat}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-disabled:after{background-color:var(--el-text-color-placeholder)}.el-select-group{margin:0;padding:0}.el-select-group__wrap{margin:0;padding:0;list-style:none;position:relative}.el-select-group__title{box-sizing:border-box;color:var(--el-color-info);text-overflow:ellipsis;white-space:nowrap;padding:0 20px;font-size:12px;line-height:34px;overflow:hidden}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-color:var(--el-disabled-text-color);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;--el-select-width:100%;vertical-align:middle;width:var(--el-select-width);display:inline-block;position:relative}.el-select__wrapper{box-sizing:border-box;cursor:pointer;text-align:left;border-radius:var(--el-border-radius-base);background-color:var(--el-fill-color-blank);min-height:32px;transition:var(--el-transition-duration);box-shadow:0 0 0 1px var(--el-border-color) inset;align-items:center;gap:6px;padding:4px 12px;font-size:14px;line-height:24px;display:flex;position:relative;transform:translate(0)}.el-select__wrapper.is-filterable{cursor:text}.el-select__wrapper.is-focused{box-shadow:0 0 0 1px var(--el-color-primary) inset}.el-select__wrapper.is-hovering:not(.is-focused){box-shadow:0 0 0 1px var(--el-border-color-hover) inset}.el-select__wrapper.is-disabled{cursor:not-allowed;background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select__wrapper.is-disabled:hover{box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select__wrapper.is-disabled.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-select__wrapper.is-disabled .el-select__selected-item{color:var(--el-select-disabled-color)}.el-select__wrapper.is-disabled .el-select__caret,.el-select__wrapper.is-disabled .el-tag,.el-select__wrapper.is-disabled input{cursor:not-allowed}.el-select__wrapper.is-disabled .el-select__prefix,.el-select__wrapper.is-disabled .el-select__suffix{pointer-events:none}.el-select__prefix,.el-select__suffix{color:var(--el-input-icon-color,var(--el-text-color-placeholder));flex-shrink:0;align-items:center;gap:6px;display:flex}.el-select__caret{color:var(--el-select-input-color);font-size:var(--el-select-input-font-size);transition:var(--el-transition-duration);cursor:pointer;transform:rotate(0)}.el-select__caret.is-reverse{transform:rotate(180deg)}.el-select__clear{cursor:pointer}.el-select__clear:hover{color:var(--el-select-close-hover-color)}.el-select__selection{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.el-select__selection.is-near{margin-left:-8px}.el-select__selection .el-tag{cursor:pointer;border-color:#0000}.el-select__selection .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-select__selection .el-tag .el-tag__content{min-width:0}.el-select__selected-item{-webkit-user-select:none;user-select:none;flex-wrap:wrap;display:flex}.el-select__tags-text{text-overflow:ellipsis;white-space:nowrap;line-height:normal;display:block;overflow:hidden}.el-select__placeholder{z-index:-1;text-overflow:ellipsis;white-space:nowrap;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));display:block;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.el-select__placeholder.is-transparent{-webkit-user-select:none;user-select:none;color:var(--el-text-color-placeholder)}.el-select__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-select__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-select__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-select__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-select__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-select__input-wrapper{flex:1}.el-select__input-wrapper.is-hidden{opacity:0;z-index:-1;position:absolute}.el-select__input{color:var(--el-select-multiple-input-color);font-size:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;outline:none;width:100%;height:24px;padding:0;font-family:inherit}.el-select__input-calculator{visibility:hidden;white-space:pre;max-width:100%;position:absolute;top:0;left:0;overflow:hidden}.el-select--large .el-select__wrapper{gap:6px;min-height:40px;padding:8px 16px;font-size:14px;line-height:24px}.el-select--large .el-select__selection{gap:6px}.el-select--large .el-select__selection.is-near{margin-left:-8px}.el-select--large .el-select__prefix,.el-select--large .el-select__suffix{gap:6px}.el-select--large .el-select__input{height:24px}.el-select--small .el-select__wrapper{gap:4px;min-height:24px;padding:2px 8px;font-size:12px;line-height:20px}.el-select--small .el-select__selection{gap:4px}.el-select--small .el-select__selection.is-near{margin-left:-6px}.el-select--small .el-select__prefix,.el-select--small .el-select__suffix{gap:4px}.el-select--small .el-select__input{height:20px}.el-skeleton{--el-skeleton-circle-size:var(--el-avatar-size)}.el-skeleton__item{background:var(--el-skeleton-color);border-radius:var(--el-border-radius-base);width:100%;height:16px;display:inline-block}.el-skeleton__circle{width:var(--el-skeleton-circle-size);height:var(--el-skeleton-circle-size);line-height:var(--el-skeleton-circle-size);border-radius:50%}.el-skeleton__button{border-radius:4px;width:64px;height:40px}.el-skeleton__p{width:100%}.el-skeleton__p.is-last{width:61%}.el-skeleton__p.is-first{width:33%}.el-skeleton__text{width:100%;height:var(--el-font-size-small)}.el-skeleton__caption{height:var(--el-font-size-extra-small)}.el-skeleton__h1{height:var(--el-font-size-extra-large)}.el-skeleton__h3{height:var(--el-font-size-large)}.el-skeleton__h5{height:var(--el-font-size-medium)}.el-skeleton__image{width:unset;border-radius:0;justify-content:center;align-items:center;display:flex}.el-skeleton__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;width:22%;height:22%}.el-skeleton{--el-skeleton-color:var(--el-fill-color);--el-skeleton-to-color:var(--el-fill-color-darker)}@keyframes el-skeleton-loading{0%{background-position:100%}to{background-position:0}}.el-skeleton{width:100%}.el-skeleton__first-line,.el-skeleton__paragraph{background:var(--el-skeleton-color);height:16px;margin-top:16px}.el-skeleton.is-animated .el-skeleton__item{background:linear-gradient(90deg,var(--el-skeleton-color) 25%,var(--el-skeleton-to-color) 37%,var(--el-skeleton-color) 63%);background-size:400% 100%;animation:1.4s infinite el-skeleton-loading}.el-slider{--el-slider-main-bg-color:var(--el-color-primary);--el-slider-runway-bg-color:var(--el-border-color-light);--el-slider-stop-bg-color:var(--el-color-white);--el-slider-disabled-color:var(--el-text-color-placeholder);--el-slider-border-radius:3px;--el-slider-height:6px;--el-slider-button-size:20px;--el-slider-button-wrapper-size:36px;--el-slider-button-wrapper-offset:-15px;align-items:center;width:100%;height:32px;display:flex}.el-slider__runway{height:var(--el-slider-height);background-color:var(--el-slider-runway-bg-color);border-radius:var(--el-slider-border-radius);cursor:pointer;flex:1;position:relative}.el-slider__runway.show-input{width:auto;margin-right:30px}.el-slider__runway.is-disabled{cursor:default}.el-slider__runway.is-disabled .el-slider__bar{background-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button{border-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button-wrapper:hover,.el-slider__runway.is-disabled .el-slider__button-wrapper.hover,.el-slider__runway.is-disabled .el-slider__button-wrapper.dragging{cursor:not-allowed}.el-slider__runway.is-disabled .el-slider__button:hover,.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button.dragging{cursor:not-allowed;transform:scale(1)}.el-slider__input{flex-shrink:0;width:130px}.el-slider__bar{height:var(--el-slider-height);background-color:var(--el-slider-main-bg-color);border-top-left-radius:var(--el-slider-border-radius);border-bottom-left-radius:var(--el-slider-border-radius);position:absolute}.el-slider__button-wrapper{height:var(--el-slider-button-wrapper-size);width:var(--el-slider-button-wrapper-size);z-index:1;top:var(--el-slider-button-wrapper-offset);text-align:center;-webkit-user-select:none;user-select:none;background-color:#0000;outline:none;line-height:normal;position:absolute;transform:translate(-50%)}.el-slider__button-wrapper:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-slider__button-wrapper:hover,.el-slider__button-wrapper.hover{cursor:grab}.el-slider__button-wrapper.dragging{cursor:grabbing}.el-slider__button{width:var(--el-slider-button-size);height:var(--el-slider-button-size);vertical-align:middle;border:solid 2px var(--el-slider-main-bg-color);background-color:var(--el-color-white);box-sizing:border-box;transition:var(--el-transition-duration-fast);-webkit-user-select:none;user-select:none;border-radius:50%;display:inline-block}.el-slider__button:hover,.el-slider__button.hover,.el-slider__button.dragging{transform:scale(1.2)}.el-slider__button:hover,.el-slider__button.hover{cursor:grab}.el-slider__button.dragging{cursor:grabbing}.el-slider__stop{height:var(--el-slider-height);width:var(--el-slider-height);border-radius:var(--el-border-radius-circle);background-color:var(--el-slider-stop-bg-color);position:absolute;transform:translate(-50%)}.el-slider__marks{width:18px;height:100%;top:0;left:12px}.el-slider__marks-text{color:var(--el-color-info);white-space:pre;margin-top:15px;font-size:14px;position:absolute;transform:translate(-50%)}.el-slider.is-vertical{flex:0;width:auto;height:100%;display:inline-flex;position:relative}.el-slider.is-vertical .el-slider__runway{width:var(--el-slider-height);height:100%;margin:0 16px}.el-slider.is-vertical .el-slider__bar{width:var(--el-slider-height);border-radius:0 0 3px 3px;height:auto}.el-slider.is-vertical .el-slider__button-wrapper{top:auto;left:var(--el-slider-button-wrapper-offset);transform:translateY(50%)}.el-slider.is-vertical .el-slider__stop{transform:translateY(50%)}.el-slider.is-vertical .el-slider__marks-text{margin-top:0;left:15px;transform:translateY(50%)}.el-slider--large{height:40px}.el-slider--small{height:24px}.el-space{vertical-align:top;display:inline-flex}.el-space__item{flex-wrap:wrap;display:flex}.el-space__item>*{flex:1}.el-space--vertical{flex-direction:column}.el-time-spinner{white-space:nowrap;width:100%}.el-spinner{vertical-align:middle;display:inline-block}.el-spinner-inner{width:50px;height:50px;animation:2s linear infinite rotate}.el-spinner-inner .path{stroke:var(--el-border-color-lighter);stroke-linecap:round;animation:1.5s ease-in-out infinite dash}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1 150;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-35px}to{stroke-dasharray:90 150;stroke-dashoffset:-124px}}.el-step{flex-shrink:1;position:relative}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{flex-grow:0;flex-shrink:0;flex-basis:auto!important}.el-step:last-of-type .el-step__main,.el-step:last-of-type .el-step__description{padding-right:0}.el-step__head{width:100%;position:relative}.el-step__head.is-process{color:var(--el-text-color-primary);border-color:var(--el-text-color-primary)}.el-step__head.is-wait{color:var(--el-text-color-placeholder);border-color:var(--el-text-color-placeholder)}.el-step__head.is-success{color:var(--el-color-success);border-color:var(--el-color-success)}.el-step__head.is-error{color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-step__head.is-finish{color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-step__icon{z-index:1;box-sizing:border-box;background:var(--el-bg-color);justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;transition:all .15s ease-out;display:inline-flex;position:relative}.el-step__icon.is-text{border:2px solid;border-radius:50%}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{-webkit-user-select:none;user-select:none;text-align:center;color:inherit;font-weight:700;line-height:1;display:inline-block}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{transform:translateY(1px)}.el-step__line{background-color:var(--el-text-color-placeholder);border-color:currentColor;position:absolute}.el-step__line-inner{box-sizing:border-box;border:1px solid;width:0;height:0;transition:all .15s ease-out;display:block}.el-step__main{white-space:normal;text-align:left}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{color:var(--el-text-color-primary);font-weight:700}.el-step__title.is-wait{color:var(--el-text-color-placeholder)}.el-step__title.is-success{color:var(--el-color-success)}.el-step__title.is-error{color:var(--el-color-danger)}.el-step__title.is-finish{color:var(--el-color-primary)}.el-step__description{margin-top:-5px;padding-right:10%;font-size:12px;font-weight:400;line-height:20px}.el-step__description.is-process{color:var(--el-text-color-primary)}.el-step__description.is-wait{color:var(--el-text-color-placeholder)}.el-step__description.is-success{color:var(--el-color-success)}.el-step__description.is-error{color:var(--el-color-danger)}.el-step__description.is-finish{color:var(--el-color-primary)}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;top:11px;left:0;right:0}.el-step.is-vertical{display:flex}.el-step.is-vertical .el-step__head{flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{flex-grow:1;padding-left:10px}.el-step.is-vertical .el-step__title{padding-bottom:8px;line-height:24px}.el-step.is-vertical .el-step__line{width:2px;top:0;bottom:0;left:11px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-vertical .el-step__description{padding-right:0}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{align-items:center;display:flex}.el-step.is-simple .el-step__head{width:auto;padding-right:10px;font-size:0}.el-step.is-simple .el-step__icon{background:0 0;width:16px;height:16px;font-size:12px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{transform:scale(.8)translateY(1px)}.el-step.is-simple .el-step__main{flex-grow:1;align-items:stretch;display:flex;position:relative}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{overflow-wrap:break-word;max-width:50%}.el-step.is-simple .el-step__arrow{flex-grow:1;justify-content:center;align-items:center;display:flex}.el-step.is-simple .el-step__arrow:before,.el-step.is-simple .el-step__arrow:after{content:"";background:var(--el-text-color-placeholder);width:1px;height:15px;display:inline-block;position:absolute}.el-step.is-simple .el-step__arrow:before{transform-origin:0 0;transform:rotate(-45deg)translateY(-4px)}.el-step.is-simple .el-step__arrow:after{transform-origin:100% 100%;transform:rotate(45deg)translateY(4px)}.el-step.is-simple:last-of-type .el-step__arrow{display:none}.el-steps{line-height:normal;display:flex}.el-steps--simple{background:var(--el-fill-color-light);border-radius:4px;padding:13px 8%}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{flex-flow:column;height:100%}.el-switch{--el-switch-on-color:var(--el-color-primary);--el-switch-off-color:var(--el-border-color);vertical-align:middle;align-items:center;height:32px;font-size:14px;line-height:20px;display:inline-flex;position:relative}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{transition:var(--el-transition-duration-fast);cursor:pointer;vertical-align:middle;height:20px;color:var(--el-text-color-primary);font-size:14px;font-weight:500;display:inline-block}.el-switch__label.is-active{color:var(--el-color-primary)}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{font-size:14px;line-height:1;display:inline-block}.el-switch__label .el-icon{height:inherit}.el-switch__label .el-icon svg{vertical-align:middle}.el-switch__input{opacity:0;width:0;height:0;margin:0;position:absolute}.el-switch__input:focus-visible~.el-switch__core{outline:2px solid var(--el-switch-on-color);outline-offset:1px}.el-switch__core{border:1px solid var(--el-switch-border-color,var(--el-switch-off-color));box-sizing:border-box;background:var(--el-switch-off-color);cursor:pointer;min-width:40px;height:20px;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration);border-radius:10px;outline:none;align-items:center;display:inline-flex;position:relative}.el-switch__core .el-switch__inner{width:100%;transition:all var(--el-transition-duration);justify-content:center;align-items:center;height:16px;padding:0 4px 0 18px;display:flex;overflow:hidden}.el-switch__core .el-switch__inner-wrapper{color:var(--el-color-white);-webkit-user-select:none;user-select:none;text-overflow:ellipsis;white-space:nowrap;align-items:center;font-size:12px;display:flex;overflow:hidden}.el-switch__core .el-switch__action{border-radius:var(--el-border-radius-circle);transition:all var(--el-transition-duration);background-color:var(--el-color-white);width:16px;height:16px;color:var(--el-switch-off-color);justify-content:center;align-items:center;display:flex;position:absolute;left:1px}.el-switch.is-checked .el-switch__core{border-color:var(--el-switch-border-color,var(--el-switch-on-color));background-color:var(--el-switch-on-color)}.el-switch.is-checked .el-switch__core .el-switch__action{color:var(--el-switch-on-color);left:calc(100% - 17px)}.el-switch.is-checked .el-switch__core .el-switch__inner{padding:0 18px 0 4px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter-from,.el-switch .label-fade-leave-active{opacity:0}.el-switch--large{height:40px;font-size:14px;line-height:24px}.el-switch--large .el-switch__label{height:24px;font-size:14px}.el-switch--large .el-switch__label *{font-size:14px}.el-switch--large .el-switch__core{border-radius:12px;min-width:50px;height:24px}.el-switch--large .el-switch__core .el-switch__inner{height:20px;padding:0 6px 0 22px}.el-switch--large .el-switch__core .el-switch__action{width:20px;height:20px}.el-switch--large.is-checked .el-switch__core .el-switch__action{left:calc(100% - 21px)}.el-switch--large.is-checked .el-switch__core .el-switch__inner{padding:0 22px 0 6px}.el-switch--small{height:24px;font-size:12px;line-height:16px}.el-switch--small .el-switch__label{height:16px;font-size:12px}.el-switch--small .el-switch__label *{font-size:12px}.el-switch--small .el-switch__core{border-radius:8px;min-width:30px;height:16px}.el-switch--small .el-switch__core .el-switch__inner{height:12px;padding:0 2px 0 14px}.el-switch--small .el-switch__core .el-switch__action{width:12px;height:12px}.el-switch--small.is-checked .el-switch__core .el-switch__action{left:calc(100% - 13px)}.el-switch--small.is-checked .el-switch__core .el-switch__inner{padding:0 14px 0 2px}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:solid 1px var(--el-border-color-lighter);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;background-color:#fff;border-radius:2px}.el-table-filter__list{outline:none;min-width:100px;margin:0;padding:5px 0;list-style:none}.el-table-filter__list-item{cursor:pointer;line-height:36px;font-size:var(--el-font-size-base);outline:none;padding:0 10px}.el-table-filter__list-item:hover,.el-table-filter__list-item:focus{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__multiple{outline:none}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-filter__bottom button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-filter__bottom button{color:var(--el-text-color-regular);font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{height:unset;align-items:center;margin-bottom:12px;margin-left:5px;margin-right:5px;display:flex}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-fill-color-blank);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px #00000026;--el-table-fixed-right-column:inset -10px 0 10px -10px #00000026;--el-table-index:var(--el-index-normal);box-sizing:border-box;background-color:var(--el-table-bg-color);width:100%;max-width:100%;height:-moz-fit-content;height:fit-content;font-size:var(--el-font-size-base);color:var(--el-table-text-color);position:relative;overflow:hidden}.el-table__inner-wrapper{flex-direction:column;height:100%;display:flex;position:relative}.el-table__inner-wrapper:before{height:1px;bottom:0;left:0}.el-table tbody:focus-visible{outline:none}.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell,.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell{border-bottom-color:#0000}.el-table__empty-block{text-align:center;justify-content:center;align-items:center;width:100%;min-height:60px;display:flex;position:sticky;left:0}.el-table__empty-text{width:50%;color:var(--el-text-color-secondary);line-height:60px}.el-table__expand-column .cell{text-align:center;-webkit-user-select:none;user-select:none;padding:0}.el-table__expand-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__expand-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.el-table__expand-icon{color:var(--el-text-color-regular);width:min(23px,100%);height:23px;font-size:12px;line-height:12px}.el-table__expand-icon.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:#0000!important}.el-table__placeholder{width:20px;display:inline-block}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--fit .el-table__inner-wrapper:before{width:100%}.el-table thead{color:var(--el-table-header-text-color)}.el-table thead th{font-weight:600}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;text-align:left;min-width:0;z-index:var(--el-table-index);padding:8px 0;position:relative}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;width:15px;padding:0}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;text-overflow:ellipsis;white-space:normal;overflow-wrap:break-word;padding:0 12px;line-height:23px;overflow:hidden}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:var(--el-font-size-base)}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:var(--el-font-size-extra-small)}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table th.el-table__cell.is-leaf,.el-table td.el-table__cell{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{content:"";vertical-align:middle;background:#ff4d51;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table--border:after,.el-table--border:before,.el-table--border .el-table__inner-wrapper:after,.el-table__inner-wrapper:before{content:"";background-color:var(--el-table-border-color);z-index:calc(var(--el-table-index) + 2);position:absolute}.el-table--border .el-table__inner-wrapper:after{width:100%;height:1px;z-index:calc(var(--el-table-index) + 2);top:0;left:0}.el-table--border:before{width:1px;height:100%;top:-1px;left:0}.el-table--border:after{width:1px;height:100%;top:-1px;right:0}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__header-wrapper,.el-table__body-wrapper,.el-table__footer-wrapper{width:100%}.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right,.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right{background:inherit;z-index:calc(var(--el-table-index) + 1);position:sticky!important}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{content:"";width:10px;box-shadow:none;touch-action:none;pointer-events:none;position:absolute;top:0;bottom:0;overflow:hidden}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px}.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch,.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch{z-index:calc(var(--el-table-index) + 1);background:#fff;right:0;position:sticky!important}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__header,.el-table__body,.el-table__footer{table-layout:fixed;border-collapse:separate}.el-table__header-wrapper{overflow:hidden}.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__footer-wrapper{flex-shrink:0;overflow:hidden}.el-table__footer-wrapper tfoot td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__header-wrapper .el-table-column--selection>.cell,.el-table__body-wrapper .el-table-column--selection>.cell{align-items:center;height:23px;display:inline-flex}.el-table__header-wrapper .el-table-column--selection .el-checkbox,.el-table__body-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;position:relative;overflow:hidden}.el-table__body-wrapper .el-scrollbar__bar{z-index:calc(var(--el-table-index) + 2)}.el-table .caret-wrapper{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table .caret-wrapper:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table .caret-wrapper{vertical-align:middle;width:24px;height:14px;overflow:initial;flex-direction:column;align-items:center;display:inline-flex;position:relative}.el-table .sort-caret{border:5px solid #0000;width:0;height:0;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{visibility:hidden;z-index:-1;position:absolute}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row>td.el-table__cell,.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table.el-table--scrollable-y .el-table__body-header{z-index:calc(var(--el-table-index) + 2);position:sticky;top:0}.el-table.el-table--scrollable-y .el-table__body-footer{z-index:calc(var(--el-table-index) + 2);position:sticky;bottom:0}.el-table__column-resize-proxy{border-left:var(--el-table-border);width:0;z-index:calc(var(--el-table-index) + 9);position:absolute;top:0;bottom:0;left:200px}.el-table__column-filter-trigger{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__column-filter-trigger:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table__column-filter-trigger{display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);vertical-align:middle;font-size:14px}.el-table__border-left-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0;left:0}.el-table__border-bottom-patch{height:1px;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;left:0}.el-table__border-right-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{text-align:center;width:20px;display:inline-block}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-v2{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-fill-color-blank);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px #00000026;--el-table-fixed-right-column:inset -10px 0 10px -10px #00000026;--el-table-index:var(--el-index-normal);font-size:var(--el-font-size-base)}.el-table-v2 *{box-sizing:border-box}.el-table-v2__root{position:relative}.el-table-v2__root:hover .el-table-v2__main .el-virtual-scrollbar{opacity:1}.el-table-v2__main{background-color:var(--el-bg-color);flex-direction:column-reverse;display:flex;position:absolute;top:0;left:0;overflow:hidden}.el-table-v2__main .el-vl__horizontal,.el-table-v2__main .el-vl__vertical{z-index:2}.el-table-v2__left{background-color:var(--el-bg-color);flex-direction:column-reverse;display:flex;position:absolute;top:0;left:0;overflow:hidden;box-shadow:2px 0 4px #0000000f}.el-table-v2__left .el-virtual-scrollbar{opacity:0}.el-table-v2__left .el-vl__vertical,.el-table-v2__left .el-vl__horizontal{z-index:-1}.el-table-v2__right{background-color:var(--el-bg-color);flex-direction:column-reverse;display:flex;position:absolute;top:0;right:0;overflow:hidden;box-shadow:-2px 0 4px #0000000f}.el-table-v2__right .el-virtual-scrollbar{opacity:0}.el-table-v2__right .el-vl__vertical,.el-table-v2__right .el-vl__horizontal{z-index:-1}.el-table-v2__header-row,.el-table-v2__row{padding-inline-end:var(--el-table-scrollbar-size)}.el-table-v2__header-wrapper{overflow:hidden}.el-table-v2__header{position:relative;overflow:hidden}.el-table-v2__header .el-checkbox{z-index:0}.el-table-v2__footer{position:absolute;bottom:0;left:0;right:0;overflow:hidden}.el-table-v2__empty{position:absolute;left:0}.el-table-v2__overlay{z-index:9999;position:absolute;inset:0}.el-table-v2__header-row{border-bottom:var(--el-table-border);display:flex}.el-table-v2__header-cell{-webkit-user-select:none;user-select:none;background-color:var(--el-table-header-bg-color);height:100%;color:var(--el-table-header-text-color);align-items:center;padding:0 8px;font-weight:700;display:flex;overflow:hidden}.el-table-v2__header-cell.is-align-center{text-align:center;justify-content:center}.el-table-v2__header-cell.is-align-right{text-align:right;justify-content:flex-end}.el-table-v2__header-cell.is-sortable{cursor:pointer}.el-table-v2__header-cell:hover .el-icon{display:block}.el-table-v2__sort-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-v2__sort-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-v2__sort-icon{transition:opacity,display var(--el-transition-duration);opacity:.6;display:none}.el-table-v2__sort-icon.is-sorting{opacity:1;display:flex}.el-table-v2__row{border-bottom:var(--el-table-border);transition:background-color var(--el-transition-duration);align-items:center;display:flex}.el-table-v2__row.is-hovered,.el-table-v2__row:hover{background-color:var(--el-table-row-hover-bg-color)}.el-table-v2__row-cell{align-items:center;height:100%;padding:0 8px;display:flex;overflow:hidden}.el-table-v2__row-cell.is-align-center{text-align:center;justify-content:center}.el-table-v2__row-cell.is-align-right{text-align:right;justify-content:flex-end}.el-table-v2__expand-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-v2__expand-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-v2__expand-icon{-webkit-user-select:none;user-select:none;margin:0 4px}.el-table-v2__expand-icon svg{transition:transform var(--el-transition-duration)}.el-table-v2__expand-icon.is-expanded svg{transform:rotate(90deg)}.el-table-v2:not(.is-dynamic) .el-table-v2__cell-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.el-table-v2.is-dynamic .el-table-v2__row{align-items:stretch;overflow:hidden}.el-table-v2.is-dynamic .el-table-v2__row .el-table-v2__row-cell{overflow-wrap:break-word}.el-tabs{--el-tabs-header-height:40px;display:flex}.el-tabs__header{justify-content:space-between;align-items:center;margin:0 0 15px;padding:0;display:flex;position:relative}.el-tabs__header-vertical{flex-direction:column}.el-tabs__active-bar{background-color:var(--el-color-primary);z-index:1;height:2px;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);list-style:none;position:absolute;bottom:0;left:0}.el-tabs__active-bar.is-bottom{bottom:auto}.el-tabs__new-tab{border:1px solid var(--el-border-color);text-align:center;width:20px;height:20px;color:var(--el-text-color-primary);cursor:pointer;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin:10px 0 10px 10px;font-size:12px;line-height:20px;transition:all .15s;display:flex}.el-tabs__new-tab .is-icon-plus{height:inherit;width:inherit;transform:scale(.8)}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__new-tab-vertical{margin-left:0}.el-tabs__nav-wrap{flex:auto;margin-bottom:-1px;position:relative;overflow:hidden}.el-tabs__nav-wrap:after{content:"";background-color:var(--el-border-color-light);width:100%;height:2px;z-index:var(--el-index-normal);position:absolute;bottom:0;left:0}.el-tabs__nav-wrap.is-bottom:after{top:0;bottom:auto}.el-tabs__nav-wrap.is-scrollable{box-sizing:border-box;padding:0 20px}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{cursor:pointer;color:var(--el-text-color-secondary);text-align:center;width:20px;font-size:12px;line-height:44px;position:absolute}.el-tabs__nav-next.is-disabled,.el-tabs__nav-prev.is-disabled{color:var(--el-text-color-disabled);cursor:not-allowed}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;transition:transform var(--el-transition-duration);float:left;z-index:calc(var(--el-index-normal) + 1);display:flex;position:relative}.el-tabs__nav.is-stretch{min-width:100%;display:flex}.el-tabs__nav.is-stretch>*{text-align:center;flex:1}.el-tabs__item{height:var(--el-tabs-header-height);box-sizing:border-box;font-size:var(--el-font-size-base);color:var(--el-text-color-primary);justify-content:center;align-items:center;padding:0 20px;font-weight:500;list-style:none;display:flex;position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:none}.el-tabs__item:focus-visible{box-shadow:0 0 2px 2px var(--el-color-primary) inset;border-radius:3px}.el-tabs__item .is-icon-close{text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);border-radius:50%;margin-left:5px}.el-tabs__item .is-icon-close:before{display:inline-block;transform:scale(.9)}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item.is-active{color:var(--el-color-primary)}.el-tabs__item:hover{color:var(--el-color-primary);cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{flex-grow:1;position:relative;overflow:hidden}.el-tabs--top>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:0}.el-tabs--top>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom>.el-tabs__header .el-tabs__item:last-child{padding-right:0}.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height);box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);box-sizing:border-box;border-bottom:none;border-radius:4px 4px 0 0}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{transform-origin:100%;width:0;height:14px;font-size:12px;position:relative;right:-2px;overflow:hidden}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid #0000;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);margin-top:-1px}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);color:var(--el-text-color-secondary);border:1px solid #0000;margin-top:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child,.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay);border-right-color:var(--el-border-color);border-left-color:var(--el-border-color)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom{flex-direction:column}.el-tabs--bottom .el-tabs__header.is-bottom{margin-top:10px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid #0000}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-scroll{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{width:2px;height:auto;top:0;bottom:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{text-align:center;cursor:pointer;width:100%;height:30px;line-height:30px}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev.is-disabled,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next.is-disabled,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev.is-disabled,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next.is-disabled{cursor:not-allowed}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{top:0;left:auto}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{bottom:0;right:auto}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{width:2px;height:100%;top:0;bottom:auto}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{flex-direction:column}.el-tabs--left .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-left{justify-content:flex-end}.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-right{justify-content:flex-start}.el-tabs--left{flex-direction:row}.el-tabs--left .el-tabs__header.is-left{margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__active-bar.is-left{left:auto;right:0}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid var(--el-border-color-light);border-bottom:none;border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-bottom:none;border-left:none;border-right-color:#fff}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-bottom:1px solid var(--el-border-color-light);border-right:none;border-radius:4px 0 0 4px}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid #0000;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:#d1dbe5 #0000}.el-tabs--left>.el-tabs__content+.el-tabs__header{order:-1}.el-tabs--right .el-tabs__header.is-right{margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-bottom:none;border-left-color:#fff;border-right:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-bottom:1px solid var(--el-border-color-light);border-left:none;border-radius:0 4px 4px 0}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid #0000;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:#d1dbe5 #0000}.el-tabs--top{flex-direction:column}.el-tabs--top>.el-tabs__content+.el-tabs__header{order:-1}.slideInRight-transition,.slideInLeft-transition{display:inline-block}.slideInRight-enter{animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{animation:slideInRight-leave var(--el-transition-duration);position:absolute;left:0;right:0}.slideInLeft-enter{animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{animation:slideInLeft-leave var(--el-transition-duration);position:absolute;left:0;right:0}@keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInRight-leave{0%{transform-origin:0 0;opacity:1;transform:translate(0)}to{transform-origin:0 0;opacity:0;transform:translate(100%)}}@keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInLeft-leave{0%{transform-origin:0 0;opacity:1;transform:translate(0)}to{transform-origin:0 0;opacity:0;transform:translate(-100%)}}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);vertical-align:middle;height:24px;font-size:var(--el-tag-font-size);border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);border-style:solid;border-width:1px;justify-content:center;align-items:center;padding:0 9px;line-height:1;display:inline-flex}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color);flex-shrink:0}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag .el-icon{cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size);border-radius:50%;display:flex}.el-tag .el-tag__close{background-color:#0000;border:none;border-radius:50%;outline:none;margin-left:6px;padding:0;overflow:hidden}.el-tag .el-tag__close:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-tag--dark{--el-tag-text-color:var(--el-color-white);--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain,.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{--el-icon-size:16px;height:32px;padding:0 11px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{--el-icon-size:12px;height:20px;padding:0 7px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.el-text{--el-text-font-size:var(--el-font-size-base);--el-text-color:var(--el-text-color-regular);font-size:var(--el-text-font-size);color:var(--el-text-color);overflow-wrap:break-word;align-self:center;margin:0;padding:0}.el-text.is-truncated{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.el-text.is-line-clamp{-webkit-box-orient:vertical;display:-webkit-inline-box;overflow:hidden}.el-text--large{--el-text-font-size:var(--el-font-size-medium)}.el-text--default{--el-text-font-size:var(--el-font-size-base)}.el-text--small{--el-text-font-size:var(--el-font-size-extra-small)}.el-text.el-text--primary{--el-text-color:var(--el-color-primary)}.el-text.el-text--success{--el-text-color:var(--el-color-success)}.el-text.el-text--warning{--el-text-color:var(--el-color-warning)}.el-text.el-text--danger{--el-text-color:var(--el-color-danger)}.el-text.el-text--error{--el-text-color:var(--el-color-error)}.el-text.el-text--info{--el-text-color:var(--el-color-info)}.el-text>.el-icon{vertical-align:-2px}.time-select{min-width:0;margin:5px 0}.time-select .el-picker-panel__content{max-height:200px;margin:0}.time-select-item{padding:8px 10px;font-size:14px;line-height:20px}.time-select-item.disabled{color:var(--el-datepicker-border-color);cursor:not-allowed}.time-select-item:hover{background-color:var(--el-fill-color-light);cursor:pointer;font-weight:700}.time-select .time-select-item.selected:not(.disabled){color:var(--el-color-primary);font-weight:700}.el-timeline-item{padding-bottom:20px;position:relative}.el-timeline-item__wrapper{box-sizing:content-box;position:relative;top:-3px}.el-timeline-item__tail{border-left:2px solid var(--el-timeline-node-color);height:100%;position:absolute}.el-timeline-item .el-timeline-item__icon{color:var(--el-color-white);font-size:var(--el-font-size-small)}.el-timeline-item__node{background-color:var(--el-timeline-node-color);border-color:var(--el-timeline-node-color);box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.el-timeline-item__node--normal{width:var(--el-timeline-node-size-normal);height:var(--el-timeline-node-size-normal)}.el-timeline-item__node--large{width:var(--el-timeline-node-size-large);height:var(--el-timeline-node-size-large)}.el-timeline-item__node.is-hollow{background:var(--el-color-white);border-style:solid;border-width:2px}.el-timeline-item__node--primary{background-color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-timeline-item__node--success{background-color:var(--el-color-success);border-color:var(--el-color-success)}.el-timeline-item__node--warning{background-color:var(--el-color-warning);border-color:var(--el-color-warning)}.el-timeline-item__node--danger{background-color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-timeline-item__node--info{background-color:var(--el-color-info);border-color:var(--el-color-info)}.el-timeline-item__dot{justify-content:center;align-items:center;display:flex;position:absolute}.el-timeline-item__content{color:var(--el-text-color-primary)}.el-timeline-item__timestamp{color:var(--el-text-color-secondary);line-height:1;font-size:var(--el-font-size-small)}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.el-timeline-item.is-start .el-timeline-item__wrapper{padding-left:28px}.el-timeline-item.is-start .el-timeline-item__tail{left:4px}.el-timeline-item.is-start .el-timeline-item__node--normal{left:-1px}.el-timeline-item.is-start .el-timeline-item__node--large{left:-2px}.el-timeline-item.is-end .el-timeline-item__wrapper{text-align:right;padding-right:28px}.el-timeline-item.is-end .el-timeline-item__tail{right:4px}.el-timeline-item.is-end .el-timeline-item__node--normal{right:-1px}.el-timeline-item.is-end .el-timeline-item__node--large{right:-2px}.el-timeline-item.is-alternate .el-timeline-item__tail,.el-timeline-item.is-alternate .el-timeline-item__node,.el-timeline-item.is-alternate-reverse .el-timeline-item__tail,.el-timeline-item.is-alternate-reverse .el-timeline-item__node{left:50%;transform:translate(-50%)}.el-timeline{--el-timeline-node-size-normal:12px;--el-timeline-node-size-large:14px;--el-timeline-node-color:var(--el-border-color-light);font-size:var(--el-font-size-base);margin:0;list-style:none}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline .el-timeline-item__center{align-items:center;display:flex}.el-timeline .el-timeline-item__center .el-timeline-item__wrapper{width:100%}.el-timeline .el-timeline-item__center .el-timeline-item__tail{top:0}.el-timeline .el-timeline-item__center:first-child .el-timeline-item__tail{height:calc(50% + 10px);top:calc(50% - 10px)}.el-timeline .el-timeline-item__center:last-child .el-timeline-item__tail{height:calc(50% - 10px);display:block}.el-timeline.is-start{padding-left:40px;padding-right:0}.el-timeline.is-end{padding-left:0;padding-right:40px}.el-timeline.is-alternate{padding-left:20px;padding-right:20px}.el-timeline.is-alternate .el-timeline-item:nth-child(odd) .el-timeline-item__wrapper{width:calc(50% - 28px);left:calc(50% - var(--el-timeline-node-size-large) / 2);padding-left:28px}.el-timeline.is-alternate .el-timeline-item:nth-child(2n) .el-timeline-item__wrapper{width:calc(50% - 28px + var(--el-timeline-node-size-large) / 2);text-align:right;padding-right:28px}.el-timeline.is-alternate-reverse{padding-left:20px;padding-right:20px}.el-timeline.is-alternate-reverse .el-timeline-item:nth-child(odd) .el-timeline-item__wrapper{width:calc(50% - 28px + var(--el-timeline-node-size-large) / 2);text-align:right;padding-right:28px}.el-timeline.is-alternate-reverse .el-timeline-item:nth-child(2n) .el-timeline-item__wrapper{width:calc(50% - 28px);left:calc(50% - var(--el-timeline-node-size-large) / 2);padding-left:28px}.el-transfer{--el-transfer-border-color:var(--el-border-color-lighter);--el-transfer-border-radius:var(--el-border-radius-base);--el-transfer-panel-width:200px;--el-transfer-panel-header-height:40px;--el-transfer-panel-header-bg-color:var(--el-fill-color-light);--el-transfer-panel-footer-height:40px;--el-transfer-panel-body-height:278px;--el-transfer-item-height:30px;--el-transfer-filter-height:32px;font-size:var(--el-font-size-base)}.el-transfer__buttons{vertical-align:middle;padding:0 30px;display:inline-block}.el-transfer__button{vertical-align:top}.el-transfer__button:nth-child(2){margin:0 0 0 10px}.el-transfer__button i,.el-transfer__button span{font-size:14px}.el-transfer__button .el-icon+span{margin-left:0}.el-transfer-panel{background:var(--el-bg-color-overlay);text-align:left;vertical-align:middle;width:var(--el-transfer-panel-width);box-sizing:border-box;max-height:100%;display:inline-block;position:relative;overflow:hidden}.el-transfer-panel__body{height:var(--el-transfer-panel-body-height);border-left:1px solid var(--el-transfer-border-color);border-right:1px solid var(--el-transfer-border-color);border-bottom:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);overflow:hidden}.el-transfer-panel__body.is-with-footer{border-bottom:none;border-bottom-right-radius:0;border-bottom-left-radius:0}.el-transfer-panel__list{height:var(--el-transfer-panel-body-height);box-sizing:border-box;margin:0;padding:6px 0;list-style:none;overflow:auto}.el-transfer-panel__list.is-filterable{height:calc(100% - var(--el-transfer-filter-height) - 30px);padding-top:0}.el-transfer-panel__item{height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);padding-left:15px;display:block!important}.el-transfer-panel__item+.el-transfer-panel__item{margin-left:0}.el-transfer-panel__item.el-checkbox{color:var(--el-text-color-regular);margin-right:30px}.el-transfer-panel__item:hover{color:var(--el-color-primary)}.el-transfer-panel__item.el-checkbox .el-checkbox__label{text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;width:100%;line-height:var(--el-transfer-item-height);padding-left:22px;display:block;overflow:hidden}.el-transfer-panel__item .el-checkbox__input{position:absolute;top:8px}.el-transfer-panel__filter{text-align:center;box-sizing:border-box;padding:15px}.el-transfer-panel__filter .el-input__inner{height:var(--el-transfer-filter-height);box-sizing:border-box;width:100%;font-size:12px;display:inline-block}.el-transfer-panel__filter .el-icon-circle-close{cursor:pointer}.el-transfer-panel .el-transfer-panel__header{height:var(--el-transfer-panel-header-height);background:var(--el-transfer-panel-header-bg-color);border:1px solid var(--el-transfer-border-color);border-top-left-radius:var(--el-transfer-border-radius);border-top-right-radius:var(--el-transfer-border-radius);box-sizing:border-box;color:var(--el-color-black);align-items:center;margin:0;padding-left:15px;display:flex}.el-transfer-panel .el-transfer-panel__header .el-checkbox{align-items:center;width:100%;display:flex;position:relative}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label{min-width:0;color:var(--el-text-color-primary);flex:1;align-items:center;font-size:16px;font-weight:400;display:flex}.el-transfer-panel .el-transfer-panel__header-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.el-transfer-panel .el-transfer-panel__header-count{color:var(--el-text-color-secondary);flex-shrink:0;margin-left:8px;margin-right:15px;font-size:12px}.el-transfer-panel .el-transfer-panel__footer{height:var(--el-transfer-panel-footer-height);background:var(--el-bg-color-overlay);border:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);margin:0;padding:0}.el-transfer-panel .el-transfer-panel__footer:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-transfer-panel .el-transfer-panel__footer .el-checkbox{color:var(--el-text-color-regular);padding-left:20px}.el-transfer-panel .el-transfer-panel__empty{height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);color:var(--el-text-color-secondary);text-align:center;margin:0;padding:6px 15px 0}.el-transfer-panel .el-checkbox__label{padding-left:8px}.el-tree{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder);cursor:default;background:var(--el-fill-color-blank);color:var(--el-tree-text-color);font-size:var(--el-font-size-base);position:relative}.el-tree__empty-block{text-align:center;width:100%;height:100%;min-height:60px;position:relative}.el-tree__empty-text{color:var(--el-text-color-secondary);font-size:var(--el-font-size-base);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-tree__drop-indicator{background-color:var(--el-color-primary);height:1px;position:absolute;left:0;right:0}.el-tree-node{white-space:nowrap;outline:none}.el-tree-node:focus>.el-tree-node__content{background-color:var(--el-tree-node-hover-bg-color)}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:var(--el-color-primary);color:#fff}.el-tree-node__content{--el-checkbox-height:var(--el-tree-node-content-height);height:var(--el-tree-node-content-height);cursor:pointer;align-items:center;display:flex}.el-tree-node__content>.el-tree-node__expand-icon{box-sizing:content-box;padding:6px}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:var(--el-tree-node-hover-bg-color)}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:var(--el-tree-expand-icon-color);transition:transform var(--el-transition-duration) ease-in-out;font-size:12px;transform:rotate(0)}.el-tree-node__expand-icon.expanded{transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:#0000;cursor:default;visibility:hidden}.el-tree-node__expand-icon.is-hidden{visibility:hidden}.el-tree-node__loading-icon{font-size:var(--el-font-size-base);color:var(--el-tree-expand-icon-color);margin-right:8px}.el-tree-node>.el-tree-node__children{background-color:#0000;overflow:hidden}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:var(--el-color-primary-light-9)}.el-tree-select{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder)}.el-tree-select__popper .el-tree-node__expand-icon{margin-left:8px}.el-tree-select__popper .el-tree-node.is-checked>.el-tree-node__content .el-select-dropdown__item.selected:after{content:none}.el-tree-select__popper .el-select-dropdown__list>.el-select-dropdown__item{padding-left:32px}.el-tree-select__popper .el-select-dropdown__item{flex:1;height:20px;padding-left:0;line-height:20px;background:0 0!important}.el-upload{--el-upload-dragger-padding-horizontal:10px;--el-upload-dragger-padding-vertical:40px;--el-upload-list-picture-card-size:var(--el-upload-picture-card-size);--el-upload-picture-card-size:148px;cursor:pointer;outline:none;justify-content:center;align-items:center;display:inline-flex}.el-upload.is-disabled{cursor:not-allowed}.el-upload.is-disabled:focus{border-color:var(--el-border-color-darker);color:inherit}.el-upload.is-disabled:focus .el-upload-dragger{border-color:var(--el-border-color-darker)}.el-upload.is-disabled .el-upload-dragger{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-upload.is-disabled .el-upload-dragger .el-upload__text{color:var(--el-text-color-placeholder)}.el-upload.is-disabled .el-upload-dragger .el-upload__text em{color:var(--el-disabled-text-color)}.el-upload.is-disabled .el-upload-dragger:hover{border-color:var(--el-border-color-darker)}.el-upload__input{display:none}.el-upload__tip{color:var(--el-text-color-regular);margin-top:7px;font-size:12px}.el-upload iframe{z-index:-1;opacity:0;filter:alpha(opacity=0);position:absolute;top:0;left:0}.el-upload--picture-card{background-color:var(--el-fill-color-lighter);border:1px dashed var(--el-border-color-darker);box-sizing:border-box;width:var(--el-upload-picture-card-size);height:var(--el-upload-picture-card-size);cursor:pointer;vertical-align:top;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.el-upload--picture-card>i{color:var(--el-text-color-secondary);font-size:28px}.el-upload--picture-card:hover{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload.is-drag{display:block}.el-upload:focus{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload:focus .el-upload-dragger{border-color:var(--el-color-primary)}.el-upload-dragger{padding:var(--el-upload-dragger-padding-vertical) var(--el-upload-dragger-padding-horizontal);background-color:var(--el-fill-color-blank);border:1px dashed var(--el-border-color);box-sizing:border-box;text-align:center;cursor:pointer;border-radius:6px;position:relative;overflow:hidden}.el-upload-dragger .el-icon--upload{color:var(--el-text-color-placeholder);margin-bottom:16px;font-size:67px;line-height:50px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:var(--el-border);margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:var(--el-text-color-regular);text-align:center;font-size:14px}.el-upload-dragger .el-upload__text em{color:var(--el-color-primary);font-style:normal}.el-upload-dragger:hover{border-color:var(--el-color-primary)}.el-upload-dragger.is-dragover{padding:calc(var(--el-upload-dragger-padding-vertical) - 1px) calc(var(--el-upload-dragger-padding-horizontal) - 1px);background-color:var(--el-color-primary-light-9);border:2px dashed var(--el-color-primary)}.el-upload-list{--el-upload-dragger-padding-horizontal:10px;--el-upload-dragger-padding-vertical:40px;--el-upload-list-picture-card-size:var(--el-upload-picture-card-size);--el-upload-picture-card-size:148px;margin:10px 0 0;padding:0;list-style:none;position:relative}.el-upload-list__item{color:var(--el-text-color-regular);box-sizing:border-box;border-radius:4px;width:100%;margin-bottom:5px;font-size:14px;transition:all .5s cubic-bezier(.55,0,.1,1);position:relative}.el-upload-list__item .el-progress{width:100%;position:absolute;top:20px}.el-upload-list__item .el-progress__text{position:absolute;top:-13px;right:0}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item .el-icon--upload-success{color:var(--el-color-success)}.el-upload-list__item .el-icon--close{cursor:pointer;opacity:.75;color:var(--el-text-color-regular);transition:opacity var(--el-transition-duration);display:none;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.el-upload-list__item .el-icon--close:hover{opacity:1;color:var(--el-color-primary)}.el-upload-list__item .el-icon--close-tip{cursor:pointer;opacity:1;color:var(--el-color-primary);font-size:12px;font-style:normal;display:none;position:absolute;top:1px;right:5px}.el-upload-list__item:hover,.el-upload-list__item:focus-within{background-color:var(--el-fill-color-light)}.el-upload-list__item:hover .el-icon--close,.el-upload-list__item:focus-within .el-icon--close{display:inline-flex}.el-upload-list__item:hover .el-icon--close-tip,.el-upload-list__item:focus-within .el-icon--close-tip{right:24px}.el-upload-list__item:hover .el-progress__text,.el-upload-list__item:focus-within .el-progress__text{display:none}.el-upload-list__item .el-upload-list__item-info{flex-direction:column;justify-content:center;width:calc(100% - 30px);margin-left:4px;display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-name:hover,.el-upload-list__item.is-success .el-upload-list__item-name:focus{color:var(--el-color-primary);cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon--close-tip{display:inline-block}.el-upload-list__item.is-success:not(.focusing):focus,.el-upload-list__item.is-success:active{outline-width:0}.el-upload-list__item.is-success:not(.focusing):focus .el-icon--close-tip,.el-upload-list__item.is-success:active .el-icon--close-tip{display:none}.el-upload-list__item.is-success:hover .el-upload-list__item-status-label,.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:focus-within .el-upload-list__item-status-label{opacity:0;display:none}.el-upload-list__item-name{color:var(--el-text-color-regular);text-align:center;transition:color var(--el-transition-duration);font-size:var(--el-font-size-base);align-items:center;padding:0 4px;display:inline-flex}.el-upload-list__item-name .el-icon{color:var(--el-text-color-secondary);margin-right:6px}.el-upload-list__item-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.el-upload-list__item-status-label{line-height:inherit;height:100%;transition:opacity var(--el-transition-duration);justify-content:center;align-items:center;display:none;position:absolute;top:0;right:5px}.el-upload-list__item-delete{color:var(--el-text-color-regular);font-size:12px;display:none;position:absolute;top:0;right:10px}.el-upload-list__item-delete:hover{color:var(--el-color-primary)}.el-upload-list--picture-card{flex-wrap:wrap;margin:0;display:inline-flex}.el-upload-list--picture-card .el-upload-list__item{background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);box-sizing:border-box;width:var(--el-upload-list-picture-card-size);height:var(--el-upload-list-picture-card-size);border-radius:6px;margin:0 8px 8px 0;padding:0;display:inline-flex;overflow:hidden}.el-upload-list--picture-card .el-upload-list__item .el-icon--check,.el-upload-list--picture-card .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon--close{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:block}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{object-fit:contain;width:100%;height:100%}.el-upload-list--picture-card .el-upload-list__item-status-label{background:var(--el-color-success);text-align:center;width:40px;height:24px;top:-6px;right:-15px;transform:rotate(45deg)}.el-upload-list--picture-card .el-upload-list__item-status-label i{margin-top:11px;font-size:12px;transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{cursor:default;color:#fff;opacity:0;background-color:var(--el-overlay-color-lighter);width:100%;height:100%;transition:opacity var(--el-transition-duration);justify-content:center;align-items:center;font-size:20px;display:inline-flex;position:absolute;top:0;left:0}.el-upload-list--picture-card .el-upload-list__item-actions span{cursor:pointer;display:none}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:16px}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{font-size:inherit;color:inherit;position:static}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-flex}.el-upload-list--picture-card .el-progress{width:126px;top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%)}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{z-index:0;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);box-sizing:border-box;border-radius:6px;align-items:center;margin-top:10px;padding:10px;display:flex;overflow:hidden}.el-upload-list--picture .el-upload-list__item .el-icon--check,.el-upload-list--picture .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:inline-flex}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item .el-icon--close{top:5px;transform:translateY(0)}.el-upload-list--picture .el-upload-list__item-thumbnail{object-fit:contain;z-index:1;background-color:var(--el-color-white);justify-content:center;align-items:center;width:70px;height:70px;display:inline-flex;position:relative}.el-upload-list--picture .el-upload-list__item-status-label{background:var(--el-color-success);text-align:center;width:46px;height:26px;position:absolute;top:-7px;right:-17px;transform:rotate(45deg)}.el-upload-list--picture .el-upload-list__item-status-label i{margin-top:12px;font-size:12px;transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{z-index:10;cursor:default;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.el-upload-cover:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-upload-cover img{width:100%;height:100%;display:block}.el-upload-cover__label{background:var(--el-color-success);text-align:center;width:40px;height:24px;top:-6px;right:-15px;transform:rotate(45deg)}.el-upload-cover__label i{color:#fff;margin-top:11px;font-size:12px;transform:rotate(-45deg)}.el-upload-cover__progress{vertical-align:middle;width:243px;display:inline-block;position:static}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{width:100%;height:100%;position:absolute;top:0;left:0}.el-upload-cover__interact{background-color:var(--el-overlay-color-light);text-align:center;width:100%;height:100%;position:absolute;bottom:0;left:0}.el-upload-cover__interact .btn{color:#fff;cursor:pointer;vertical-align:middle;transition:var(--el-transition-md-fade);margin-top:60px;font-size:14px;display:inline-block}.el-upload-cover__interact .btn i{margin-top:0}.el-upload-cover__interact .btn span{opacity:0;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;font-size:24px;line-height:inherit;margin:0 auto 5px;display:block}.el-upload-cover__title{text-overflow:ellipsis;white-space:nowrap;text-align:left;width:100%;height:36px;color:var(--el-text-color-primary);background-color:#fff;margin:0;padding:0 10px;font-size:14px;font-weight:400;line-height:36px;position:absolute;bottom:0;left:0;overflow:hidden}.el-upload-cover+.el-upload__inner{opacity:0;z-index:1;position:relative}.el-vl__wrapper{position:relative}.el-vl__wrapper:hover .el-virtual-scrollbar,.el-vl__wrapper.always-on .el-virtual-scrollbar{opacity:1}.el-vl__window{scrollbar-width:none}.el-vl__window::-webkit-scrollbar{display:none}.el-virtual-scrollbar{opacity:0;transition:opacity .34s ease-out}.el-virtual-scrollbar.always-on{opacity:1}.el-vg__wrapper{position:relative}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);--el-popper-bg-color-light:var(--el-bg-color-overlay);--el-popper-bg-color-dark:var(--el-text-color-primary);border-radius:var(--el-popper-border-radius);z-index:2000;overflow-wrap:break-word;word-break:normal;visibility:visible;min-width:10px;padding:5px 11px;font-size:12px;line-height:20px;position:absolute}.el-popper.is-dark{--el-fill-color-blank:var(--el-popper-bg-color-dark);color:var(--el-bg-color);background:var(--el-popper-bg-color-dark);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark>.el-popper__arrow:before{border:1px solid var(--el-text-color-primary);background:var(--el-popper-bg-color-dark);right:0}.el-popper.is-light{--el-fill-color-blank:var(--el-popper-bg-color-light);background:var(--el-popper-bg-color-light);border:1px solid var(--el-border-color-light)}.el-popper.is-light>.el-popper__arrow:before{border:1px solid var(--el-border-color-light);background:var(--el-popper-bg-color-light);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{z-index:-1;width:10px;height:10px;position:absolute}.el-popper__arrow:before{z-index:-1;content:" ";background:var(--el-text-color-primary);box-sizing:border-box;width:10px;height:10px;position:absolute;transform:rotate(45deg)}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-top-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-right-color:#0000!important}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-top-color:#0000!important;border-right-color:#0000!important}.el-statistic{--el-statistic-title-font-weight:400;--el-statistic-title-font-size:var(--el-font-size-extra-small);--el-statistic-title-color:var(--el-text-color-regular);--el-statistic-content-font-weight:400;--el-statistic-content-font-size:var(--el-font-size-extra-large);--el-statistic-content-color:var(--el-text-color-primary)}.el-statistic__head{font-weight:var(--el-statistic-title-font-weight);font-size:var(--el-statistic-title-font-size);color:var(--el-statistic-title-color);margin-bottom:4px;line-height:20px}.el-statistic__content{font-weight:var(--el-statistic-content-font-weight);font-size:var(--el-statistic-content-font-size);color:var(--el-statistic-content-color)}.el-statistic__value{display:inline-block}.el-statistic__prefix{margin-right:4px;display:inline-block}.el-statistic__suffix{margin-left:4px;display:inline-block}.el-tour{--el-tour-width:520px;--el-tour-padding-primary:12px;--el-tour-font-line-height:var(--el-font-line-height-primary);--el-tour-title-font-size:16px;--el-tour-title-text-color:var(--el-text-color-primary);--el-tour-title-font-weight:400;--el-tour-close-color:var(--el-color-info);--el-tour-font-size:14px;--el-tour-color:var(--el-text-color-primary);--el-tour-bg-color:var(--el-bg-color);--el-tour-border-radius:4px}.el-tour__hollow{transition:all var(--el-transition-duration) ease}.el-tour__content{border-radius:var(--el-tour-border-radius);width:var(--el-tour-width);padding:var(--el-tour-padding-primary);background:var(--el-tour-bg-color);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;overflow-wrap:break-word;outline:none}.el-tour__arrow{background:var(--el-tour-bg-color);pointer-events:none;box-sizing:border-box;width:10px;height:10px;position:absolute;transform:rotate(45deg)}.el-tour__content[data-side^=top] .el-tour__arrow{border-top-color:#0000;border-left-color:#0000}.el-tour__content[data-side^=bottom] .el-tour__arrow{border-bottom-color:#0000;border-right-color:#0000}.el-tour__content[data-side^=left] .el-tour__arrow{border-bottom-color:#0000;border-left-color:#0000}.el-tour__content[data-side^=right] .el-tour__arrow{border-top-color:#0000;border-right-color:#0000}.el-tour__content[data-side^=top] .el-tour__arrow{bottom:-5px}.el-tour__content[data-side^=bottom] .el-tour__arrow{top:-5px}.el-tour__content[data-side^=left] .el-tour__arrow{right:-5px}.el-tour__content[data-side^=right] .el-tour__arrow{left:-5px}.el-tour__closebtn{cursor:pointer;width:40px;height:40px;font-size:var(--el-message-close-size,16px);background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-tour__closebtn .el-tour__close{color:var(--el-tour-close-color);font-size:inherit}.el-tour__closebtn:focus .el-tour__close,.el-tour__closebtn:hover .el-tour__close{color:var(--el-color-primary)}.el-tour__header{padding-bottom:var(--el-tour-padding-primary)}.el-tour__header.show-close{padding-right:calc(var(--el-tour-padding-primary) + var(--el-message-close-size,16px))}.el-tour__title{line-height:var(--el-tour-font-line-height);font-size:var(--el-tour-title-font-size);color:var(--el-tour-title-text-color);font-weight:var(--el-tour-title-font-weight)}.el-tour__body{color:var(--el-tour-text-color);font-size:var(--el-tour-font-size)}.el-tour__body img,.el-tour__body video{max-width:100%}.el-tour__footer{padding-top:var(--el-tour-padding-primary);box-sizing:border-box;justify-content:space-between;display:flex}.el-tour__content .el-tour-indicators{flex:1;display:inline-block}.el-tour__content .el-tour-indicator{background:var(--el-color-info-light-9);border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.el-tour__content .el-tour-indicator.is-active{background:var(--el-color-primary)}.el-tour.el-tour--primary{--el-tour-title-text-color:#fff;--el-tour-text-color:#fff;--el-tour-bg-color:var(--el-color-primary);--el-tour-close-color:#fff}.el-tour.el-tour--primary .el-tour__closebtn:focus .el-tour__close,.el-tour.el-tour--primary .el-tour__closebtn:hover .el-tour__close{color:var(--el-tour-title-text-color)}.el-tour.el-tour--primary .el-button--default{color:var(--el-color-primary);border-color:var(--el-color-primary);background:#fff}.el-tour.el-tour--primary .el-button--primary{border-color:#fff}.el-tour.el-tour--primary .el-tour-indicator{background:#ffffff26}.el-tour.el-tour--primary .el-tour-indicator.is-active{background:#fff}.el-tour-parent--hidden{overflow:hidden}.el-anchor{--el-anchor-bg-color:var(--el-bg-color);--el-anchor-padding-indent:14px;--el-anchor-line-height:22px;--el-anchor-font-size:12px;--el-anchor-color:var(--el-text-color-secondary);--el-anchor-active-color:var(--el-color-primary);--el-anchor-hover-color:var(--el-text-color-regular);--el-anchor-marker-bg-color:var(--el-color-primary);background-color:var(--el-anchor-bg-color);position:relative}.el-anchor__marker{background-color:var(--el-anchor-marker-bg-color);opacity:0;z-index:0;border-radius:4px;position:absolute}.el-anchor.el-anchor--vertical .el-anchor__marker{width:4px;height:14px;transition:top .25s ease-in-out,opacity .25s;top:8px;left:0}.el-anchor.el-anchor--vertical .el-anchor__list{padding-left:var(--el-anchor-padding-indent)}.el-anchor.el-anchor--vertical.el-anchor--underline:before{content:"";background-color:#0505050f;width:2px;height:100%;position:absolute;left:0}.el-anchor.el-anchor--vertical.el-anchor--underline .el-anchor__marker{border-radius:unset;width:2px}.el-anchor.el-anchor--horizontal .el-anchor__marker{width:20px;height:2px;transition:left .25s ease-in-out,opacity .25s,width .25s;bottom:0}.el-anchor.el-anchor--horizontal .el-anchor__list{padding-bottom:4px;display:flex}.el-anchor.el-anchor--horizontal .el-anchor__list .el-anchor__item{padding-left:16px}.el-anchor.el-anchor--horizontal .el-anchor__list .el-anchor__item:first-child{padding-left:0}.el-anchor.el-anchor--horizontal.el-anchor--underline:before{content:"";background-color:#0505050f;width:100%;height:2px;position:absolute;bottom:0}.el-anchor.el-anchor--horizontal.el-anchor--underline .el-anchor__marker{border-radius:unset;height:2px}.el-anchor__item{flex-direction:column;display:flex}.el-anchor__link{font-size:var(--el-anchor-font-size);line-height:var(--el-anchor-line-height);color:var(--el-anchor-color);transition:color var(--el-transition-duration);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;outline:none;max-width:100%;padding:4px 0;text-decoration:none;overflow:hidden}.el-anchor__link:hover,.el-anchor__link:focus{color:var(--el-hover-color)}.el-anchor__link:focus-visible{border-radius:var(--el-border-radius-base);outline:2px solid var(--el-color-primary)}.el-anchor__link.is-active{color:var(--el-anchor-active-color)}.el-anchor .el-anchor__list .el-anchor__item a{display:inline-block}.el-segmented--vertical{flex-direction:column}.el-segmented--vertical .el-segmented__item{padding:11px}.el-segmented{--el-segmented-color:var(--el-text-color-regular);--el-segmented-bg-color:var(--el-fill-color-light);--el-segmented-padding:2px;--el-segmented-item-selected-color:var(--el-color-white);--el-segmented-item-selected-bg-color:var(--el-color-primary);--el-segmented-item-selected-disabled-bg-color:var(--el-color-primary-light-5);--el-segmented-item-hover-color:var(--el-text-color-primary);--el-segmented-item-hover-bg-color:var(--el-fill-color-dark);--el-segmented-item-active-bg-color:var(--el-fill-color-darker);--el-segmented-item-disabled-color:var(--el-text-color-placeholder);background:var(--el-segmented-bg-color);min-height:32px;padding:var(--el-segmented-padding);border-radius:var(--el-border-radius-base);color:var(--el-segmented-color);box-sizing:border-box;align-items:stretch;font-size:14px;display:inline-flex}.el-segmented__group{align-items:stretch;width:100%;display:flex;position:relative}.el-segmented__item-selected{background:var(--el-segmented-item-selected-bg-color);border-radius:calc(var(--el-border-radius-base) - 2px);pointer-events:none;width:10px;height:100%;transition:all .3s;position:absolute;top:0;left:0}.el-segmented__item-selected.is-disabled{background:var(--el-segmented-item-selected-disabled-bg-color)}.el-segmented__item-selected.is-focus-visible:before{content:"";border-radius:inherit;outline:2px solid var(--el-segmented-item-selected-bg-color);outline-offset:1px;position:absolute;inset:0}.el-segmented__item{cursor:pointer;border-radius:calc(var(--el-border-radius-base) - 2px);flex:1;align-items:center;padding:0 11px;display:flex}.el-segmented__item:not(.is-disabled):not(.is-selected):hover{color:var(--el-segmented-item-hover-color);background:var(--el-segmented-item-hover-bg-color)}.el-segmented__item:not(.is-disabled):not(.is-selected):active{background:var(--el-segmented-item-active-bg-color)}.el-segmented__item.is-selected,.el-segmented__item.is-selected.is-disabled{color:var(--el-segmented-item-selected-color)}.el-segmented__item.is-disabled{cursor:not-allowed;color:var(--el-segmented-item-disabled-color)}.el-segmented__item-input{opacity:0;pointer-events:none;width:0;height:0;margin:0;position:absolute}.el-segmented__item-label{text-align:center;text-overflow:ellipsis;white-space:nowrap;z-index:1;flex:1;line-height:normal;transition:color .3s;overflow:hidden}.el-segmented.is-block{display:flex}.el-segmented.is-block .el-segmented__item{min-width:0}.el-segmented--large{border-radius:var(--el-border-radius-base);min-height:40px;font-size:16px}.el-segmented--large .el-segmented__item-selected{border-radius:calc(var(--el-border-radius-base) - 2px)}.el-segmented--large .el-segmented--vertical .el-segmented__item{padding:11px}.el-segmented--large .el-segmented__item{border-radius:calc(var(--el-border-radius-base) - 2px);padding:0 11px}.el-segmented--small{border-radius:calc(var(--el-border-radius-base) - 1px);min-height:24px;font-size:14px}.el-segmented--small .el-segmented__item-selected{border-radius:calc(calc(var(--el-border-radius-base) - 1px) - 2px)}.el-segmented--small .el-segmented--vertical .el-segmented__item{padding:7px}.el-segmented--small .el-segmented__item{border-radius:calc(calc(var(--el-border-radius-base) - 1px) - 2px);padding:0 7px}.el-mention{width:100%;position:relative}.el-mention__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-mention__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-mention__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-mention__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-mention__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-mention__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-mention-dropdown{--el-mention-font-size:var(--el-font-size-base);--el-mention-bg-color:var(--el-bg-color-overlay);--el-mention-shadow:var(--el-box-shadow-light);--el-mention-border:1px solid var(--el-border-color-light);--el-mention-option-color:var(--el-text-color-regular);--el-mention-option-height:34px;--el-mention-option-min-width:100px;--el-mention-option-hover-background:var(--el-fill-color-light);--el-mention-option-selected-color:var(--el-color-primary);--el-mention-option-disabled-color:var(--el-text-color-placeholder);--el-mention-option-loading-color:var(--el-text-color-secondary);--el-mention-option-loading-padding:10px 0;--el-mention-max-height:174px;--el-mention-padding:6px 0;--el-mention-header-padding:10px;--el-mention-footer-padding:10px}.el-mention-dropdown__item{font-size:var(--el-mention-font-size);white-space:nowrap;text-overflow:ellipsis;color:var(--el-mention-option-color);height:var(--el-mention-option-height);line-height:var(--el-mention-option-height);box-sizing:border-box;min-width:var(--el-mention-option-min-width);cursor:pointer;padding:0 20px;position:relative;overflow:hidden}.el-mention-dropdown__item.is-hovering{background-color:var(--el-mention-option-hover-background)}.el-mention-dropdown__item.is-selected{color:var(--el-mention-option-selected-color);font-weight:700}.el-mention-dropdown__item.is-disabled{color:var(--el-mention-option-disabled-color);cursor:not-allowed;background-color:unset}.el-mention-dropdown{z-index:calc(var(--el-index-top) + 1);border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-mention-dropdown__loading{text-align:center;color:var(--el-mention-option-loading-color);min-width:var(--el-mention-option-min-width);margin:0;padding:10px 0;font-size:12px}.el-mention-dropdown__wrap{max-height:var(--el-mention-max-height)}.el-mention-dropdown__list{padding:var(--el-mention-padding);box-sizing:border-box;margin:0;list-style:none}.el-mention-dropdown__header{padding:var(--el-mention-header-padding);border-bottom:var(--el-mention-border)}.el-mention-dropdown__footer{padding:var(--el-mention-footer-padding);border-top:var(--el-mention-border)}.el-splitter{width:100%;height:100%;margin:0;padding:0;display:flex;position:relative}.el-splitter__mask{z-index:999;position:absolute;inset:0}.el-splitter__mask-horizontal{cursor:ew-resize}.el-splitter__mask-vertical{cursor:ns-resize}.el-splitter__horizontal{flex-direction:row}.el-splitter__vertical{flex-direction:column}.el-splitter-bar{-webkit-user-select:none;user-select:none;flex:none;position:relative}.el-splitter-bar__dragger{z-index:1;background:0 0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-splitter-bar__dragger:before,.el-splitter-bar__dragger:after{content:"";background-color:var(--el-border-color-light);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-splitter-bar__dragger:not(.is-lazy):after{display:none}.el-splitter-bar__dragger:after{opacity:.4}.el-splitter-bar__dragger:hover:not(.is-disabled):before{background-color:var(--el-color-primary-light-5)}.el-splitter-bar__dragger-horizontal:before,.el-splitter-bar__dragger-horizontal:after{width:2px;height:100%}.el-splitter-bar__dragger-vertical:before,.el-splitter-bar__dragger-vertical:after{width:100%;height:2px}.el-splitter-bar__dragger-active:before,.el-splitter-bar__dragger-active:after{background-color:var(--el-color-primary-light-3)}.el-splitter-bar__dragger-active.el-splitter-bar__dragger-horizontal:after{transform:translate(calc(-50% + var(--el-splitter-bar-offset)),-50%)}.el-splitter-bar__dragger-active.el-splitter-bar__dragger-vertical:after{transform:translate(-50%,calc(-50% + var(--el-splitter-bar-offset)))}.el-splitter-bar:hover .el-splitter-bar__collapse-icon{opacity:1}.el-splitter-bar__collapse-icon{background:var(--el-border-color-light);cursor:pointer;opacity:0;z-index:9;border-radius:2px;justify-content:center;align-items:center;display:flex;position:absolute}.el-splitter-bar__collapse-icon:hover{opacity:1;background-color:var(--el-color-primary-light-5)}.el-splitter-bar__horizontal-collapse-icon-start{width:16px;height:24px;top:50%;left:-12px;transform:translate(-50%,-50%)}.el-splitter-bar__horizontal-collapse-icon-end{width:16px;height:24px;top:50%;left:12px;transform:translate(-50%,-50%)}.el-splitter-bar__vertical-collapse-icon-start{width:24px;height:16px;top:-12px;right:50%;transform:translate(50%,-50%)}.el-splitter-bar__vertical-collapse-icon-end{width:24px;height:16px;top:12px;right:50%;transform:translate(50%,-50%)}.el-splitter-panel{scrollbar-width:thin;box-sizing:border-box;flex-grow:0;overflow:auto}:root{--font-family-base: "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif;--color-primary: #409eff;--color-bg-light: #eef3f8;--color-bg-dark: #0d0d0d;--color-surface-light: rgba(255, 255, 255, .92);--color-surface-dark: #1a1a1a;--color-border-light: #d6e4ef;--color-border-dark: #2a2a2a;--color-text-primary: #303133;--color-text-secondary: #606266;--color-text-dark: #e5eaf3;--shadow-card: 0 10px 30px rgba(0, 0, 0, .08);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{font-family:var(--font-family-base);color:var(--color-text-primary)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}body{background:var(--color-bg-light)}html{scrollbar-color:rgba(123,135,148,.7) rgba(255,255,255,.04);scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:#ffffff0a}*::-webkit-scrollbar-thumb{background:#7b8794b3;border:2px solid transparent;border-radius:999px;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#94a3b8e6;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}.page-shell{min-height:100vh}.theme-light{background:var(--color-bg-light);color:var(--color-text-primary)}.theme-dark{background:var(--color-bg-dark);color:var(--color-text-dark)}:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}.el-overlay{z-index:2000;background-color:var(--el-overlay-color-lighter);height:100%;position:fixed;inset:0;overflow:auto}.el-overlay .el-overlay-root{height:0}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color);position:fixed;top:0;left:0}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:16px;--el-dialog-border-radius:var(--el-border-radius-base);margin:var(--el-dialog-margin-top,15vh) auto 50px;background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;padding:var(--el-dialog-padding-primary);width:var(--el-dialog-width,50%);overflow-wrap:break-word;position:relative}.el-dialog:focus{outline:none!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;border-radius:0;height:100%;margin-bottom:0;overflow:auto}.el-dialog__wrapper{margin:0;position:fixed;inset:0;overflow:auto}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;user-select:none}.el-dialog__header{padding-bottom:var(--el-dialog-padding-primary)}.el-dialog__header.show-close{padding-right:calc(var(--el-dialog-padding-primary) + var(--el-message-close-size,16px))}.el-dialog__headerbtn{cursor:pointer;width:48px;height:48px;font-size:var(--el-message-close-size,16px);background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{line-height:var(--el-dialog-font-line-height);font-size:var(--el-dialog-title-font-size);color:var(--el-text-color-primary)}.el-dialog__body{color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{padding-top:var(--el-dialog-padding-primary);text-align:right;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-modal-dialog.is-penetrable{pointer-events:none}.el-modal-dialog.is-penetrable .el-dialog{pointer-events:auto}.el-overlay-dialog{position:fixed;inset:0;overflow:auto}.el-overlay-dialog.is-closing .el-dialog{pointer-events:none}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}@keyframes dialog-fade-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translateY(-20px)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.secret-settings-entry[data-v-6bbc0070]{display:flex;align-items:center;justify-content:flex-end}.secret-settings-trigger[data-v-6bbc0070]{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border:1px solid #3c4a58;border-radius:10px;background:linear-gradient(180deg,#2b3239,#242a31);color:#e7edf4;font-size:13px;font-weight:700;cursor:pointer}.secret-settings-trigger[data-v-6bbc0070]:hover{border-color:#4c647d}.secret-settings-icon[data-v-6bbc0070]{color:#8dc4ff;font-size:14px;line-height:1}.dialog-header[data-v-6bbc0070]{display:flex;flex-direction:column;gap:4px}.dialog-title[data-v-6bbc0070]{color:#f5f7fa;font-size:16px;font-weight:700}.dialog-subtitle[data-v-6bbc0070]{color:#8f9aa7;font-size:12px;line-height:1.5}.secret-settings-body[data-v-6bbc0070]{display:flex;flex-direction:column;gap:14px}.secret-card[data-v-6bbc0070]{padding:16px;border:1px solid #2f363f;border-radius:12px;background:#22272d}.secret-card-head[data-v-6bbc0070]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.secret-card-title[data-v-6bbc0070]{color:#eef4fb;font-size:15px;font-weight:700}.secret-card-desc[data-v-6bbc0070]{margin-top:4px;color:#909ba8;font-size:12px;line-height:1.5}.secret-input[data-v-6bbc0070]{width:100%;height:42px;padding:0 12px;box-sizing:border-box;border:1px solid #3b4652;border-radius:10px;background:#1b2026;color:#dce6f0;font-size:13px;outline:none}.secret-input[data-v-6bbc0070]:focus{border-color:#5b96d6}.retention-block[data-v-6bbc0070]{margin-top:12px}.retention-label[data-v-6bbc0070]{margin-bottom:8px;color:#a3afbb;font-size:12px}.retention-options[data-v-6bbc0070]{display:flex;flex-wrap:wrap;gap:8px}.retention-option[data-v-6bbc0070]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#1b2026;color:#dce4ec;font-size:12px;cursor:pointer}.retention-option input[data-v-6bbc0070]{margin:0}.secret-meta[data-v-6bbc0070]{margin-top:10px;color:#7f8a96;font-size:12px}.link-danger[data-v-6bbc0070]{border:none;background:transparent;color:#ff9b9b;font-size:12px;cursor:pointer;padding:0}.dialog-footer[data-v-6bbc0070]{display:flex;justify-content:flex-end;gap:10px}.footer-btn[data-v-6bbc0070]{height:38px;padding:0 18px;border-radius:10px;border:1px solid transparent;font-size:13px;font-weight:700;cursor:pointer}.footer-btn-ghost[data-v-6bbc0070]{border-color:#3a4653;background:#232a31;color:#d9e2eb}.footer-btn-primary[data-v-6bbc0070]{background:#5aa2ea;color:#fff}.top-bar[data-v-0b1391c2]{min-height:88px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:10px 24px 12px;background:#111;border-bottom:1px solid #2a2a2a}.logo-area[data-v-0b1391c2]{display:flex;align-items:center;gap:16px;min-width:0;padding-top:10px}.app-name[data-v-0b1391c2]{color:#fff;font-size:18px;font-weight:800;letter-spacing:.02em;white-space:nowrap}.btn-home[data-v-0b1391c2]{color:#d2d2d2;font-size:13px;text-decoration:none;white-space:nowrap}.btn-home[data-v-0b1391c2]:hover{color:#fff}.nav-sections[data-v-0b1391c2]{flex:1;min-width:0;display:flex;align-items:stretch;justify-content:center;gap:0}.nav-section[data-v-0b1391c2]{flex:1;min-width:0;padding:0 18px;position:relative}.nav-section+.nav-section[data-v-0b1391c2]:before{content:"";position:absolute;left:0;top:14px;bottom:8px;width:1px;background:#ffffff24}.nav-section-title[data-v-0b1391c2]{margin-bottom:10px;text-align:center;color:#e8dfcf;font-size:16px;font-weight:800;letter-spacing:.08em}.nav-section-items[data-v-0b1391c2]{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:10px 14px;border-radius:14px;background:linear-gradient(180deg,#534a43eb,#48413bf5);box-shadow:inset 0 1px #ffffff0f}.nav-item[data-v-0b1391c2]{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 2px;color:#f3eee4;font-size:14px;font-weight:700;text-decoration:none;border-bottom:2px solid transparent;transition:color .18s ease,border-color .18s ease,opacity .18s ease}.nav-item[data-v-0b1391c2]:hover{color:#fff;border-bottom-color:#ffffffad}.nav-item.active[data-v-0b1391c2]{color:#fff;border-bottom-color:#8dc4ff}.nav-item.disabled[data-v-0b1391c2]{color:#ffffffc7;opacity:.82;cursor:default}.top-right[data-v-0b1391c2]{width:140px;flex-shrink:0;display:flex;justify-content:flex-end;padding-top:8px}@media(max-width:1200px){.top-bar[data-v-0b1391c2]{flex-direction:column;align-items:stretch}.logo-area[data-v-0b1391c2]{padding-top:0}.nav-sections[data-v-0b1391c2]{flex-direction:column}.nav-section[data-v-0b1391c2]{padding:0}.nav-section+.nav-section[data-v-0b1391c2]:before{display:none}.top-right[data-v-0b1391c2]{display:none}} +.el-affix--fixed{position:fixed}.el-alert{--el-alert-padding:8px 16px;--el-alert-border-radius-base:var(--el-border-radius-base);--el-alert-title-font-size:14px;--el-alert-title-with-description-font-size:16px;--el-alert-description-font-size:14px;--el-alert-close-font-size:16px;--el-alert-close-customed-font-size:14px;--el-alert-icon-size:16px;--el-alert-icon-large-size:28px;width:100%;padding:var(--el-alert-padding);box-sizing:border-box;border-radius:var(--el-alert-border-radius-base);background-color:var(--el-color-white);opacity:1;transition:opacity var(--el-transition-duration-fast);align-items:center;margin:0;display:flex;position:relative;overflow:hidden}.el-alert.is-light .el-alert__close-btn{color:var(--el-text-color-placeholder)}.el-alert.is-dark .el-alert__close-btn,.el-alert.is-dark .el-alert__description{color:var(--el-color-white)}.el-alert.is-center{justify-content:center}.el-alert--primary{--el-alert-bg-color:var(--el-color-primary-light-9)}.el-alert--primary.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-primary)}.el-alert--primary.is-light .el-alert__description{color:var(--el-color-primary)}.el-alert--primary.is-dark{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-alert--success{--el-alert-bg-color:var(--el-color-success-light-9)}.el-alert--success.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-success)}.el-alert--success.is-light .el-alert__description{color:var(--el-color-success)}.el-alert--success.is-dark{background-color:var(--el-color-success);color:var(--el-color-white)}.el-alert--info{--el-alert-bg-color:var(--el-color-info-light-9)}.el-alert--info.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-info)}.el-alert--info.is-light .el-alert__description{color:var(--el-color-info)}.el-alert--info.is-dark{background-color:var(--el-color-info);color:var(--el-color-white)}.el-alert--warning{--el-alert-bg-color:var(--el-color-warning-light-9)}.el-alert--warning.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-warning)}.el-alert--warning.is-light .el-alert__description{color:var(--el-color-warning)}.el-alert--warning.is-dark{background-color:var(--el-color-warning);color:var(--el-color-white)}.el-alert--error{--el-alert-bg-color:var(--el-color-error-light-9)}.el-alert--error.is-light{background-color:var(--el-alert-bg-color);color:var(--el-color-error)}.el-alert--error.is-light .el-alert__description{color:var(--el-color-error)}.el-alert--error.is-dark{background-color:var(--el-color-error);color:var(--el-color-white)}.el-alert__content{flex-direction:column;gap:4px;display:flex}.el-alert .el-alert__icon{font-size:var(--el-alert-icon-size);width:var(--el-alert-icon-size);margin-right:8px}.el-alert .el-alert__icon.is-big{font-size:var(--el-alert-icon-large-size);width:var(--el-alert-icon-large-size);margin-right:12px}.el-alert__title{font-size:var(--el-alert-title-font-size);line-height:24px}.el-alert__title.with-description{font-size:var(--el-alert-title-with-description-font-size)}.el-alert .el-alert__description{font-size:var(--el-alert-description-font-size);margin:0}.el-alert .el-alert__close-btn{font-size:var(--el-alert-close-font-size);opacity:1;cursor:pointer;position:absolute;top:12px;right:16px}.el-alert .el-alert__close-btn.is-customed{font-style:normal;font-size:var(--el-alert-close-customed-font-size);line-height:24px;top:8px}.el-alert-fade-enter-from,.el-alert-fade-leave-active{opacity:0}.el-aside{box-sizing:border-box;width:var(--el-aside-width,300px);flex-shrink:0;overflow:auto}.el-autocomplete{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;width:var(--el-input-width);display:inline-block;position:relative}.el-autocomplete__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-autocomplete__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-autocomplete__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-autocomplete__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-autocomplete__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-autocomplete__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-autocomplete-suggestion{border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-autocomplete-suggestion__header{border-bottom:1px solid var(--el-border-color-lighter);padding:10px}.el-autocomplete-suggestion__footer{border-top:1px solid var(--el-border-color-lighter);padding:10px}.el-autocomplete-suggestion__wrap{box-sizing:border-box;max-height:280px;padding:10px 0}.el-autocomplete-suggestion__list{margin:0;padding:0}.el-autocomplete-suggestion li{cursor:pointer;color:var(--el-text-color-regular);line-height:34px;font-size:var(--el-font-size-base);text-align:left;text-overflow:ellipsis;white-space:nowrap;margin:0;padding:0 20px;list-style:none;overflow:hidden}.el-autocomplete-suggestion li:hover,.el-autocomplete-suggestion li.highlighted{background-color:var(--el-fill-color-light)}.el-autocomplete-suggestion li.divider{border-top:1px solid var(--el-color-black);margin-top:6px}.el-autocomplete-suggestion li.divider:last-child{margin-bottom:-6px}.el-autocomplete-suggestion.is-loading li{cursor:default;height:100px;color:var(--el-text-color-secondary);justify-content:center;align-items:center;font-size:20px;display:flex}.el-autocomplete-suggestion.is-loading li:hover{background-color:var(--el-bg-color-overlay)}.el-avatar{--el-avatar-text-color:var(--el-color-white);--el-avatar-bg-color:var(--el-text-color-disabled);--el-avatar-text-size:14px;--el-avatar-icon-size:18px;--el-avatar-border-radius:var(--el-border-radius-base);--el-avatar-size-large:56px;--el-avatar-size:40px;--el-avatar-size-small:24px;box-sizing:border-box;text-align:center;color:var(--el-avatar-text-color);background:var(--el-avatar-bg-color);width:var(--el-avatar-size);height:var(--el-avatar-size);font-size:var(--el-avatar-text-size);outline:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.el-avatar>img{width:100%;height:100%;display:block}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:var(--el-avatar-border-radius)}.el-avatar--icon{font-size:var(--el-avatar-icon-size)}.el-avatar--small{--el-avatar-size:24px}.el-avatar--large{--el-avatar-size:56px}.el-avatar-group{--el-avatar-group-item-gap:-8px;--el-avatar-group-collapse-item-gap:4px;display:inline-flex}.el-avatar-group .el-avatar{border:1px solid var(--el-border-color-extra-light)}.el-avatar-group .el-avatar:not(:first-child){margin-left:var(--el-avatar-group-item-gap)}.el-avatar-group__collapse-avatars{--el-avatar-group-item-gap:-8px;--el-avatar-group-collapse-item-gap:4px}.el-avatar-group__collapse-avatars .el-avatar:not(:first-child){margin-left:var(--el-avatar-group-collapse-item-gap)}.el-backtop{--el-backtop-bg-color:var(--el-bg-color-overlay);--el-backtop-text-color:var(--el-color-primary);--el-backtop-hover-bg-color:var(--el-border-color-extra-light);background-color:var(--el-backtop-bg-color);width:40px;height:40px;color:var(--el-backtop-text-color);box-shadow:var(--el-box-shadow-lighter);cursor:pointer;z-index:5;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex;position:fixed}.el-backtop:hover{background-color:var(--el-backtop-hover-bg-color)}.el-backtop__icon{font-size:20px}.el-badge{--el-badge-bg-color:var(--el-color-danger);--el-badge-radius:10px;--el-badge-font-size:12px;--el-badge-padding:6px;--el-badge-size:18px;vertical-align:middle;width:-moz-fit-content;width:fit-content;display:inline-block;position:relative}.el-badge__content{background-color:var(--el-badge-bg-color);border-radius:var(--el-badge-radius);color:var(--el-color-white);font-size:var(--el-badge-font-size);height:var(--el-badge-size);padding:0 var(--el-badge-padding);white-space:nowrap;border:1px solid var(--el-bg-color);justify-content:center;align-items:center;display:inline-flex}.el-badge__content.is-fixed{top:0;right:calc(1px + var(--el-badge-size) / 2);z-index:var(--el-index-normal);position:absolute;transform:translateY(-50%)translate(100%)}.el-badge__content.is-fixed.is-dot{right:5px}.el-badge__content.is-dot{border-radius:50%;width:8px;height:8px;padding:0;right:0}.el-badge__content.is-hide-zero{display:none}.el-badge__content--primary{background-color:var(--el-color-primary)}.el-badge__content--success{background-color:var(--el-color-success)}.el-badge__content--warning{background-color:var(--el-color-warning)}.el-badge__content--info{background-color:var(--el-color-info)}.el-badge__content--danger{background-color:var(--el-color-danger)}.el-breadcrumb__separator{color:var(--el-text-color-placeholder);margin:0 9px;font-weight:700}.el-breadcrumb__separator.el-icon{margin:0 6px;font-weight:400}.el-breadcrumb__separator.el-icon svg{vertical-align:middle}.el-breadcrumb__item{float:left;align-items:center;display:inline-flex}.el-breadcrumb__inner{color:var(--el-text-color-regular)}.el-breadcrumb__inner.is-link,.el-breadcrumb__inner a{transition:var(--el-transition-color);color:var(--el-text-color-primary);font-weight:700;text-decoration:none}.el-breadcrumb__inner.is-link:hover,.el-breadcrumb__inner a:hover{color:var(--el-color-primary);cursor:pointer}.el-breadcrumb__item:last-child .el-breadcrumb__inner,.el-breadcrumb__item:last-child .el-breadcrumb__inner:hover,.el-breadcrumb__item:last-child .el-breadcrumb__inner a,.el-breadcrumb__item:last-child .el-breadcrumb__inner a:hover{color:var(--el-text-color-regular);cursor:text;font-weight:400}.el-breadcrumb__item:last-child .el-breadcrumb__separator{display:none}.el-breadcrumb{font-size:14px;line-height:1}.el-breadcrumb:before,.el-breadcrumb:after{content:"";display:table}.el-breadcrumb:after{clear:both}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button:first-child:last-child{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base);border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base)}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:var(--el-border-radius-round)}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:hover,.el-button-group>.el-button:focus,.el-button-group>.el-button:active,.el-button-group>.el-button.is-active{z-index:1}.el-button-group--horizontal{vertical-align:middle;display:inline-block}.el-button-group--horizontal:before,.el-button-group--horizontal:after{content:"";display:table}.el-button-group--horizontal:after{clear:both}.el-button-group--horizontal>.el-button{float:left;position:relative}.el-button-group--horizontal>.el-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.el-button-group--horizontal>.el-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group--horizontal>.el-button:not(:last-child){margin-right:-1px}.el-button-group--horizontal .el-button--primary:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--primary:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--primary:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--success:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--success:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--success:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--warning:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--warning:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--warning:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--danger:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--danger:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--danger:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--info:first-child{border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--info:last-child{border-left-color:var(--el-button-divide-border-color)}.el-button-group--horizontal .el-button--info:not(:first-child):not(:last-child){border-left-color:var(--el-button-divide-border-color);border-right-color:var(--el-button-divide-border-color)}.el-button-group--horizontal>.el-dropdown>.el-button{border-left-color:var(--el-button-divide-border-color);border-top-left-radius:0;border-bottom-left-radius:0}.el-button-group--vertical{flex-direction:column;align-items:stretch;display:inline-flex}.el-button-group--vertical>.el-button{margin-top:-1px}.el-button-group--vertical>.el-button:first-child{border-bottom-right-radius:0;border-bottom-left-radius:0}.el-button-group--vertical>.el-button:last-child{border-top-left-radius:0;border-top-right-radius:0}.el-button-group--vertical>.el-dropdown{margin-top:-1px}.el-button-group--vertical>.el-dropdown>.el-button{border-left-color:var(--el-button-divide-border-color);border-top-left-radius:0;border-top-right-radius:0}.el-button-group--vertical .el-button--primary:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--primary:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--primary:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--success:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--success:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--success:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--warning:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--warning:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--warning:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--danger:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--danger:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--danger:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--info:first-child{border-bottom-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--info:last-child{border-top-color:var(--el-button-divide-border-color)}.el-button-group--vertical .el-button--info:not(:first-child):not(:last-child){border-top-color:var(--el-button-divide-border-color);border-bottom-color:var(--el-button-divide-border-color)}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:#ffffff80;--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-text-color-secondary);--el-button-active-color:var(--el-text-color-primary);white-space:nowrap;cursor:pointer;height:32px;color:var(--el-button-text-color);text-align:center;box-sizing:border-box;line-height:1;font-weight:var(--el-button-font-weight);-webkit-user-select:none;user-select:none;vertical-align:middle;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);outline:none;justify-content:center;align-items:center;transition:all .1s;display:inline-flex}.el-button:hover{color:var(--el-button-hover-text-color);border-color:var(--el-button-hover-border-color);background-color:var(--el-button-hover-bg-color);outline:none}.el-button:active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:8px 15px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button.is-disabled,.el-button.is-disabled:hover{color:var(--el-button-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color);border-color:var(--el-button-disabled-border-color)}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{z-index:1;pointer-events:none;content:"";border-radius:inherit;background-color:var(--el-mask-color-extra-light);position:absolute;inset:-1px}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-dashed{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary);border-style:dashed}.el-button.is-circle{border-radius:50%;width:32px;padding:8px}.el-button.is-text{color:var(--el-button-text-color);background-color:#0000;border:0 solid #0000}.el-button.is-text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important}.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{color:var(--el-button-text-color);background:0 0;border-color:#0000;height:auto;padding:2px}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button.is-link:not(.is-disabled):hover{background-color:#0000;border-color:#0000}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color);background-color:#0000;border-color:#0000}.el-button--text{color:var(--el-color-primary);background:0 0;border-color:#0000;padding-left:0;padding-right:0}.el-button--text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button--text:not(.is-disabled):hover{color:var(--el-color-primary-light-3);background-color:#0000;border-color:#0000}.el-button--text:not(.is-disabled):active{color:var(--el-color-primary-dark-2);background-color:#0000;border-color:#0000}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-plain,.el-button--primary.is-text,.el-button--primary.is-link{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:hover,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--primary.is-dashed{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-text-color:var(--el-color-primary-dark-2);--el-button-active-bg-color:var(--el-color-primary-light-9);--el-button-active-border-color:var(--el-color-primary-dark-2)}.el-button--primary.is-dashed.is-disabled,.el-button--primary.is-dashed.is-disabled:hover,.el-button--primary.is-dashed.is-disabled:focus,.el-button--primary.is-dashed.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-plain,.el-button--success.is-text,.el-button--success.is-link{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:hover,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:active,.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--success.is-dashed{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-success);--el-button-hover-bg-color:var(--el-color-success-light-9);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-text-color:var(--el-color-success-dark-2);--el-button-active-bg-color:var(--el-color-success-light-9);--el-button-active-border-color:var(--el-color-success-dark-2)}.el-button--success.is-dashed.is-disabled,.el-button--success.is-dashed.is-disabled:hover,.el-button--success.is-dashed.is-disabled:focus,.el-button--success.is-dashed.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-plain,.el-button--warning.is-text,.el-button--warning.is-link{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:hover,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--warning.is-dashed{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-warning);--el-button-hover-bg-color:var(--el-color-warning-light-9);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-text-color:var(--el-color-warning-dark-2);--el-button-active-bg-color:var(--el-color-warning-light-9);--el-button-active-border-color:var(--el-color-warning-dark-2)}.el-button--warning.is-dashed.is-disabled,.el-button--warning.is-dashed.is-disabled:hover,.el-button--warning.is-dashed.is-disabled:focus,.el-button--warning.is-dashed.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-plain,.el-button--danger.is-text,.el-button--danger.is-link{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:hover,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--danger.is-dashed{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-danger);--el-button-hover-bg-color:var(--el-color-danger-light-9);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-text-color:var(--el-color-danger-dark-2);--el-button-active-bg-color:var(--el-color-danger-light-9);--el-button-active-border-color:var(--el-color-danger-dark-2)}.el-button--danger.is-dashed.is-disabled,.el-button--danger.is-dashed.is-disabled:hover,.el-button--danger.is-dashed.is-disabled:focus,.el-button--danger.is-dashed.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-plain,.el-button--info.is-text,.el-button--info.is-link{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:hover,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:active,.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--info.is-dashed{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-info);--el-button-hover-bg-color:var(--el-color-info-light-9);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-text-color:var(--el-color-info-dark-2);--el-button-active-bg-color:var(--el-color-info-light-9);--el-button-active-border-color:var(--el-color-info-dark-2)}.el-button--info.is-dashed.is-disabled,.el-button--info.is-dashed.is-disabled:hover,.el-button--info.is-dashed.is-disabled:focus,.el-button--info.is-dashed.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--large{--el-button-size:40px;height:var(--el-button-size)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:12px 19px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{width:var(--el-button-size);padding:12px}.el-button--small{--el-button-size:24px;height:var(--el-button-size)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:5px 11px;font-size:12px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{width:var(--el-button-size);padding:5px}.el-calendar{--el-calendar-border:var(--el-table-border,1px solid var(--el-border-color-lighter));--el-calendar-header-border-bottom:var(--el-calendar-border);--el-calendar-selected-bg-color:var(--el-color-primary-light-9);--el-calendar-cell-width:85px;background-color:var(--el-fill-color-blank)}.el-calendar__header{border-bottom:var(--el-calendar-header-border-bottom);justify-content:space-between;padding:12px 20px;display:flex}.el-calendar__title{color:var(--el-text-color);align-self:center}.el-calendar__body{padding:12px 20px 35px}.el-calendar__select-controller .el-select{margin-right:8px}.el-calendar__select-controller .el-calendar-select__year{width:120px}.el-calendar__select-controller .el-calendar-select__month{width:60px}.el-calendar-table{table-layout:fixed;width:100%}.el-calendar-table thead th{color:var(--el-text-color-regular);padding:12px 0;font-weight:400}.el-calendar-table:not(.is-range) td.prev,.el-calendar-table:not(.is-range) td.next{color:var(--el-text-color-placeholder)}.el-calendar-table td{border-bottom:var(--el-calendar-border);border-right:var(--el-calendar-border);vertical-align:top;transition:background-color var(--el-transition-duration-fast) ease}.el-calendar-table td.is-selected{background-color:var(--el-calendar-selected-bg-color)}.el-calendar-table td.is-today{color:var(--el-color-primary)}.el-calendar-table tr:first-child td{border-top:var(--el-calendar-border)}.el-calendar-table tr td:first-child{border-left:var(--el-calendar-border)}.el-calendar-table tr.el-calendar-table__row--hide-border td{border-top:none}.el-calendar-table .el-calendar-day{box-sizing:border-box;height:var(--el-calendar-cell-width);padding:8px}.el-calendar-table .el-calendar-day:hover{cursor:pointer;background-color:var(--el-calendar-selected-bg-color)}.el-card{--el-card-border-color:var(--el-border-color-light);--el-card-border-radius:4px;--el-card-padding:20px;--el-card-bg-color:var(--el-fill-color-blank);border-radius:var(--el-card-border-radius);border:1px solid var(--el-card-border-color);background-color:var(--el-card-bg-color);color:var(--el-text-color-primary);transition:var(--el-transition-duration);flex-direction:column;display:flex;overflow:hidden}.el-card.is-always-shadow,.el-card.is-hover-shadow:hover,.el-card.is-hover-shadow:focus{box-shadow:var(--el-box-shadow-light)}.el-card__header{padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding);border-bottom:1px solid var(--el-card-border-color);box-sizing:border-box}.el-card__body{padding:var(--el-card-padding);flex-grow:1;overflow:auto}.el-card__footer{padding:calc(var(--el-card-padding) - 2px) var(--el-card-padding);border-top:1px solid var(--el-card-border-color);box-sizing:border-box}.el-carousel__item{width:100%;height:100%;z-index:calc(var(--el-index-normal) - 1);display:inline-block;position:absolute;top:0;left:0;overflow:hidden}.el-carousel__item.is-active{z-index:calc(var(--el-index-normal) - 1)}.el-carousel__item.is-animating{transition:transform .4s ease-in-out}.el-carousel__item--card{width:50%;transition:transform .4s ease-in-out}.el-carousel__item--card.is-in-stage{cursor:pointer;z-index:var(--el-index-normal)}.el-carousel__item--card.is-in-stage:hover .el-carousel__mask,.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask{opacity:.12}.el-carousel__item--card.is-active{z-index:calc(var(--el-index-normal) + 1)}.el-carousel__item--card-vertical{width:100%;height:50%}.el-carousel__mask{background-color:var(--el-color-white);opacity:.24;width:100%;height:100%;transition:var(--el-transition-duration-fast);position:absolute;top:0;left:0}.el-carousel{--el-carousel-arrow-font-size:12px;--el-carousel-arrow-size:36px;--el-carousel-arrow-background:#1f2d3d1c;--el-carousel-arrow-hover-background:#1f2d3d3b;--el-carousel-indicator-width:30px;--el-carousel-indicator-height:2px;--el-carousel-indicator-padding-horizontal:4px;--el-carousel-indicator-padding-vertical:12px;--el-carousel-indicator-out-color:var(--el-border-color-hover);position:relative}.el-carousel--horizontal,.el-carousel--vertical{overflow:hidden}.el-carousel.is-vertical-outside{flex-direction:row;align-items:center;display:flex}.el-carousel.is-vertical-outside .el-carousel__container{flex:1}.el-carousel__container{height:300px;position:relative}.el-carousel__arrow{height:var(--el-carousel-arrow-size);width:var(--el-carousel-arrow-size);cursor:pointer;transition:var(--el-transition-duration);background-color:var(--el-carousel-arrow-background);color:#fff;z-index:10;text-align:center;font-size:var(--el-carousel-arrow-font-size);border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.el-carousel__arrow--left{left:16px}.el-carousel__arrow--right{right:16px}.el-carousel__arrow:hover{background-color:var(--el-carousel-arrow-hover-background)}.el-carousel__arrow i{cursor:pointer}.el-carousel__indicators{z-index:calc(var(--el-index-normal) + 1);margin:0;padding:0;list-style:none;position:absolute}.el-carousel__indicators--horizontal{bottom:0;left:50%;transform:translate(-50%)}.el-carousel__indicators--vertical{top:50%;right:0;transform:translateY(-50%)}.el-carousel__indicators--outside{text-align:center;position:static;transform:none}.el-carousel__indicators--outside .el-carousel__indicator:hover button{opacity:.64}.el-carousel__indicators--outside button{background-color:var(--el-carousel-indicator-out-color);opacity:.24}.el-carousel__indicators--right{right:0}.el-carousel__indicators--labels .el-carousel__button{color:#000;padding:2px 18px;font-size:12px}.el-carousel__indicators--labels .el-carousel__indicator{padding:6px 4px}.el-carousel__indicator{cursor:pointer;background-color:#0000}.el-carousel__indicator:hover button{opacity:.72}.el-carousel__indicator--horizontal{padding:var(--el-carousel-indicator-padding-vertical) var(--el-carousel-indicator-padding-horizontal);display:inline-block}.el-carousel__indicator--vertical{padding:var(--el-carousel-indicator-padding-horizontal) var(--el-carousel-indicator-padding-vertical)}.el-carousel__indicator--vertical .el-carousel__button{width:var(--el-carousel-indicator-height);height:calc(var(--el-carousel-indicator-width) / 2)}.el-carousel__indicator.is-active button{opacity:1}.el-carousel__button{opacity:.48;width:var(--el-carousel-indicator-width);height:var(--el-carousel-indicator-height);cursor:pointer;transition:var(--el-transition-duration);background-color:#fff;border:none;outline:none;margin:0;padding:0;display:block}.el-carousel__indicators--labels .el-carousel__button{width:auto;height:auto}.carousel-arrow-left-enter-from,.carousel-arrow-left-leave-active{opacity:0;transform:translateY(-50%)translate(-10px)}.carousel-arrow-right-enter-from,.carousel-arrow-right-leave-active{opacity:0;transform:translateY(-50%)translate(10px)}.el-transitioning{filter:url(#elCarouselHorizontal)}.el-transitioning-vertical{filter:url(#elCarouselVertical)}.el-cascader-panel{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);border-radius:var(--el-cascader-menu-radius);width:-moz-fit-content;width:fit-content;font-size:var(--el-cascader-menu-font-size);display:flex}.el-cascader-panel.is-bordered{border:var(--el-cascader-menu-border);border-radius:var(--el-cascader-menu-radius)}.el-cascader-menu{box-sizing:border-box;min-width:180px;color:var(--el-cascader-menu-text-color);border-right:var(--el-cascader-menu-border)}.el-cascader-menu:last-child{border-right:none}.el-cascader-menu:last-child .el-cascader-node{padding-right:20px}.el-cascader-menu__wrap.el-scrollbar__wrap{height:204px}.el-cascader-menu__list{box-sizing:border-box;min-height:100%;margin:0;padding:6px 0;list-style:none;position:relative}.el-cascader-menu__hover-zone{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.el-cascader-menu__empty-text{color:var(--el-cascader-color-empty);align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-cascader-menu__empty-text .is-loading{margin-right:2px}.el-cascader-node{outline:none;align-items:center;height:34px;padding:0 30px 0 20px;line-height:34px;display:flex;position:relative}.el-cascader-node.is-selectable.in-active-path{color:var(--el-cascader-menu-text-color)}.el-cascader-node.in-active-path,.el-cascader-node.is-selectable.in-checked-path,.el-cascader-node.is-active{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader-node:not(.is-disabled){cursor:pointer}.el-cascader-node:not(.is-disabled):hover,.el-cascader-node:not(.is-disabled):focus{background:var(--el-cascader-node-background-hover)}.el-cascader-node.is-disabled{color:var(--el-cascader-node-color-disabled);cursor:not-allowed}.el-cascader-node__prefix{position:absolute;left:10px}.el-cascader-node__postfix{position:absolute;right:10px}.el-cascader-node__label{text-align:left;white-space:nowrap;text-overflow:ellipsis;flex:1;padding:0 8px;overflow:hidden}.el-cascader-node>.el-checkbox,.el-cascader-node>.el-radio{margin-right:0}.el-cascader-node>.el-radio .el-radio__label{padding-left:0}.el-cascader{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);vertical-align:middle;font-size:var(--el-font-size-base);outline:none;line-height:32px;display:inline-block;position:relative}.el-cascader:not(.is-disabled):hover .el-input__wrapper{cursor:pointer;box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-cascader .el-input{cursor:pointer;display:flex}.el-cascader .el-input .el-input__inner{text-overflow:ellipsis}.el-cascader .el-input .el-input__inner:read-only{cursor:pointer}.el-cascader .el-input .el-input__inner:disabled{cursor:not-allowed}.el-cascader .el-input .el-input__suffix-inner .el-icon svg{vertical-align:middle}.el-cascader .el-input .icon-arrow-down{transition:transform var(--el-transition-duration);font-size:14px}.el-cascader .el-input .icon-arrow-down.is-reverse{transform:rotate(180deg)}.el-cascader .el-input .icon-circle-close:hover{color:var(--el-input-clear-hover-color,var(--el-text-color-secondary))}.el-cascader .el-input.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-cascader--large{font-size:14px;line-height:40px}.el-cascader--large .el-cascader__tags{gap:6px;padding:8px}.el-cascader--large .el-cascader__search-input{height:24px;margin-left:7px}.el-cascader--small{font-size:12px;line-height:24px}.el-cascader--small .el-cascader__tags{gap:4px;padding:2px}.el-cascader--small .el-cascader__search-input{height:20px;margin-left:5px}.el-cascader.is-disabled .el-cascader__label{z-index:calc(var(--el-index-normal) + 1);color:var(--el-disabled-text-color)}.el-cascader__dropdown{--el-cascader-menu-text-color:var(--el-text-color-regular);--el-cascader-menu-selected-text-color:var(--el-color-primary);--el-cascader-menu-fill:var(--el-bg-color-overlay);--el-cascader-menu-font-size:var(--el-font-size-base);--el-cascader-menu-radius:var(--el-border-radius-base);--el-cascader-menu-border:solid 1px var(--el-border-color-light);--el-cascader-menu-shadow:var(--el-box-shadow-light);--el-cascader-node-background-hover:var(--el-fill-color-light);--el-cascader-node-color-disabled:var(--el-text-color-placeholder);--el-cascader-color-empty:var(--el-text-color-placeholder);--el-cascader-tag-background:var(--el-fill-color);font-size:var(--el-cascader-menu-font-size);border-radius:var(--el-cascader-menu-radius)}.el-cascader__dropdown.el-popper{background:var(--el-cascader-menu-fill);border:var(--el-cascader-menu-border);box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__dropdown.el-popper .el-popper__arrow:before{border:var(--el-cascader-menu-border)}.el-cascader__dropdown.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-cascader__dropdown.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-cascader__dropdown.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-cascader__dropdown.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-cascader__dropdown.el-popper{box-shadow:var(--el-cascader-menu-shadow)}.el-cascader__header{border-bottom:1px solid var(--el-border-color-light);padding:10px}.el-cascader__footer{border-top:1px solid var(--el-border-color-light);padding:10px}.el-cascader__tags{text-align:left;box-sizing:border-box;flex-wrap:wrap;gap:6px;padding:4px;line-height:normal;display:flex;position:absolute;top:50%;left:0;right:30px;transform:translateY(-50%)}.el-cascader__tags .el-tag{text-overflow:ellipsis;background:var(--el-cascader-tag-background);align-items:center;max-width:100%;display:inline-flex}.el-cascader__tags .el-tag.el-tag--dark,.el-cascader__tags .el-tag.el-tag--plain{background-color:var(--el-tag-bg-color)}.el-cascader__tags .el-tag:not(.is-hit){border-color:#0000}.el-cascader__tags .el-tag:not(.is-hit).el-tag--dark,.el-cascader__tags .el-tag:not(.is-hit).el-tag--plain{border-color:var(--el-tag-border-color)}.el-cascader__tags .el-tag>span{text-overflow:ellipsis;flex:1;line-height:normal;overflow:hidden}.el-cascader__tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:var(--el-color-white);flex:none}.el-cascader__tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__tags .el-tag+input{margin-left:0}.el-cascader__tags.is-validate{right:55px}.el-cascader__collapse-tags{white-space:normal;z-index:var(--el-index-normal)}.el-cascader__collapse-tags .el-tag{text-overflow:ellipsis;background:var(--el-fill-color);align-items:center;max-width:100%;display:inline-flex}.el-cascader__collapse-tags .el-tag.el-tag--dark,.el-cascader__collapse-tags .el-tag.el-tag--plain{background-color:var(--el-tag-bg-color)}.el-cascader__collapse-tags .el-tag:not(.is-hit){border-color:#0000}.el-cascader__collapse-tags .el-tag:not(.is-hit).el-tag--dark,.el-cascader__collapse-tags .el-tag:not(.is-hit).el-tag--plain{border-color:var(--el-tag-border-color)}.el-cascader__collapse-tags .el-tag>span{text-overflow:ellipsis;flex:1;line-height:normal;overflow:hidden}.el-cascader__collapse-tags .el-tag .el-icon-close{background-color:var(--el-text-color-placeholder);color:var(--el-color-white);flex:none}.el-cascader__collapse-tags .el-tag .el-icon-close:hover{background-color:var(--el-text-color-secondary)}.el-cascader__collapse-tags .el-tag+input{margin-left:0}.el-cascader__collapse-tags .el-tag{margin:2px 0}.el-cascader__suggestion-panel{border-radius:var(--el-cascader-menu-radius)}.el-cascader__suggestion-list{max-height:204px;font-size:var(--el-font-size-base);color:var(--el-cascader-menu-text-color);text-align:center;margin:0;padding:6px 0}.el-cascader__suggestion-item{text-align:left;cursor:pointer;outline:none;justify-content:space-between;align-items:center;height:34px;padding:0 15px;display:flex}.el-cascader__suggestion-item:hover,.el-cascader__suggestion-item:focus{background:var(--el-cascader-node-background-hover)}.el-cascader__suggestion-item.is-checked{color:var(--el-cascader-menu-selected-text-color);font-weight:700}.el-cascader__suggestion-item>span{margin-right:10px}.el-cascader__empty-text{color:var(--el-cascader-color-empty);margin:10px 0}.el-cascader__search-input{min-width:60px;height:24px;color:var(--el-cascader-menu-text-color);box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;margin-left:7px;padding:0}.el-cascader__search-input::placeholder{color:#0000}.el-check-tag{background-color:var(--el-color-info-light-9);border-radius:var(--el-border-radius-base);color:var(--el-color-info);cursor:pointer;font-size:var(--el-font-size-base);line-height:var(--el-font-size-base);transition:var(--el-transition-all);padding:7px 15px;font-weight:700;display:inline-block}.el-check-tag:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.el-check-tag--primary.is-checked{background-color:var(--el-color-primary-light-8);color:var(--el-color-primary)}.el-check-tag.el-check-tag--primary.is-checked:hover{background-color:var(--el-color-primary-light-7)}.el-check-tag.el-check-tag--primary.is-checked.is-disabled{background-color:var(--el-color-primary-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--primary.is-checked.is-disabled:hover{background-color:var(--el-color-primary-light-8)}.el-check-tag.el-check-tag--primary.is-disabled{background-color:var(--el-color-info-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--primary.is-disabled:hover{background-color:var(--el-color-info-light-9)}.el-check-tag.el-check-tag--success.is-checked{background-color:var(--el-color-success-light-8);color:var(--el-color-success)}.el-check-tag.el-check-tag--success.is-checked:hover{background-color:var(--el-color-success-light-7)}.el-check-tag.el-check-tag--success.is-checked.is-disabled{background-color:var(--el-color-success-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--success.is-checked.is-disabled:hover{background-color:var(--el-color-success-light-8)}.el-check-tag.el-check-tag--success.is-disabled{background-color:var(--el-color-success-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--success.is-disabled:hover{background-color:var(--el-color-success-light-9)}.el-check-tag.el-check-tag--warning.is-checked{background-color:var(--el-color-warning-light-8);color:var(--el-color-warning)}.el-check-tag.el-check-tag--warning.is-checked:hover{background-color:var(--el-color-warning-light-7)}.el-check-tag.el-check-tag--warning.is-checked.is-disabled{background-color:var(--el-color-warning-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--warning.is-checked.is-disabled:hover{background-color:var(--el-color-warning-light-8)}.el-check-tag.el-check-tag--warning.is-disabled{background-color:var(--el-color-warning-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--warning.is-disabled:hover{background-color:var(--el-color-warning-light-9)}.el-check-tag.el-check-tag--danger.is-checked{background-color:var(--el-color-danger-light-8);color:var(--el-color-danger)}.el-check-tag.el-check-tag--danger.is-checked:hover{background-color:var(--el-color-danger-light-7)}.el-check-tag.el-check-tag--danger.is-checked.is-disabled{background-color:var(--el-color-danger-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--danger.is-checked.is-disabled:hover{background-color:var(--el-color-danger-light-8)}.el-check-tag.el-check-tag--danger.is-disabled{background-color:var(--el-color-danger-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--danger.is-disabled:hover{background-color:var(--el-color-danger-light-9)}.el-check-tag.el-check-tag--error.is-checked{background-color:var(--el-color-error-light-8);color:var(--el-color-error)}.el-check-tag.el-check-tag--error.is-checked:hover{background-color:var(--el-color-error-light-7)}.el-check-tag.el-check-tag--error.is-checked.is-disabled{background-color:var(--el-color-error-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--error.is-checked.is-disabled:hover{background-color:var(--el-color-error-light-8)}.el-check-tag.el-check-tag--error.is-disabled{background-color:var(--el-color-error-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--error.is-disabled:hover{background-color:var(--el-color-error-light-9)}.el-check-tag.el-check-tag--info.is-checked{background-color:var(--el-color-info-light-8);color:var(--el-color-info)}.el-check-tag.el-check-tag--info.is-checked:hover{background-color:var(--el-color-info-light-7)}.el-check-tag.el-check-tag--info.is-checked.is-disabled{background-color:var(--el-color-info-light-8);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--info.is-checked.is-disabled:hover{background-color:var(--el-color-info-light-8)}.el-check-tag.el-check-tag--info.is-disabled{background-color:var(--el-color-info-light-9);color:var(--el-disabled-text-color);cursor:not-allowed}.el-check-tag.el-check-tag--info.is-disabled:hover{background-color:var(--el-color-info-light-9)}.el-checkbox-button{--el-checkbox-button-checked-bg-color:var(--el-color-primary);--el-checkbox-button-checked-text-color:var(--el-color-white);--el-checkbox-button-checked-border-color:var(--el-color-primary);--el-checkbox-button-disabled-checked-fill:var(--el-border-color-extra-light);display:inline-block;position:relative}.el-checkbox-button__inner{line-height:1;font-weight:var(--el-checkbox-font-weight);white-space:nowrap;vertical-align:middle;cursor:pointer;background:var(--el-button-bg-color,var(--el-fill-color-blank));outline:var(--el-border);color:var(--el-button-text-color,var(--el-text-color-regular));-webkit-appearance:none;text-align:center;box-sizing:border-box;transition:var(--el-transition-all);-webkit-user-select:none;user-select:none;font-size:var(--el-font-size-base);border-radius:0;margin:0;padding:8px 15px;display:inline-block;position:relative}.el-checkbox-button__inner.is-round{padding:8px 15px}.el-checkbox-button__inner:hover{color:var(--el-color-primary)}.el-checkbox-button__inner [class*=el-icon-]{line-height:.9}.el-checkbox-button__inner [class*=el-icon-]+span{margin-left:5px}.el-checkbox-button__original{opacity:0;z-index:-1;outline:none;margin:0;position:absolute}.el-checkbox-button.is-checked .el-checkbox-button__inner{color:var(--el-checkbox-button-checked-text-color);background-color:var(--el-checkbox-button-checked-bg-color);border-color:var(--el-checkbox-button-checked-border-color);box-shadow:-1px 0 0 0 var(--el-color-primary-light-7)}.el-checkbox-button.is-checked:first-child .el-checkbox-button__inner{border-left-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button.is-disabled .el-checkbox-button__inner{color:var(--el-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none}.el-checkbox-button.is-disabled:first-child .el-checkbox-button__inner{border-left-color:var(--el-button-disabled-border-color,var(--el-border-color-light))}.el-checkbox-button.is-disabled.is-checked .el-checkbox-button__inner{background-color:var(--el-checkbox-button-disabled-checked-fill)}.el-checkbox-button:first-child .el-checkbox-button__inner{border-top-left-radius:var(--el-border-radius-base);border-bottom-left-radius:var(--el-border-radius-base);box-shadow:none!important}.el-checkbox-button.is-focus .el-checkbox-button__inner{border-color:var(--el-checkbox-button-checked-border-color)}.el-checkbox-button:last-child .el-checkbox-button__inner{border-top-right-radius:var(--el-border-radius-base);border-bottom-right-radius:var(--el-border-radius-base)}.el-checkbox-button--large .el-checkbox-button__inner{font-size:var(--el-font-size-base);border-radius:0;padding:12px 19px}.el-checkbox-button--large .el-checkbox-button__inner.is-round{padding:12px 19px}.el-checkbox-button--small .el-checkbox-button__inner{border-radius:0;padding:5px 11px;font-size:12px}.el-checkbox-button--small .el-checkbox-button__inner.is-round{padding:5px 11px}.el-checkbox-group{font-size:0;line-height:0}.el-checkbox{--el-checkbox-font-size:14px;--el-checkbox-font-weight:var(--el-font-weight-primary);--el-checkbox-text-color:var(--el-text-color-regular);--el-checkbox-input-height:14px;--el-checkbox-input-width:14px;--el-checkbox-border-radius:var(--el-border-radius-small);--el-checkbox-bg-color:var(--el-fill-color-blank);--el-checkbox-input-border:var(--el-border);--el-checkbox-disabled-border-color:var(--el-border-color);--el-checkbox-disabled-input-fill:var(--el-fill-color-light);--el-checkbox-disabled-icon-color:var(--el-text-color-placeholder);--el-checkbox-disabled-checked-input-fill:var(--el-border-color-extra-light);--el-checkbox-disabled-checked-input-border-color:var(--el-border-color);--el-checkbox-disabled-checked-icon-color:var(--el-text-color-placeholder);--el-checkbox-checked-text-color:var(--el-color-primary);--el-checkbox-checked-input-border-color:var(--el-color-primary);--el-checkbox-checked-bg-color:var(--el-color-primary);--el-checkbox-checked-icon-color:var(--el-color-white);--el-checkbox-input-border-color-hover:var(--el-color-primary);color:var(--el-checkbox-text-color);font-weight:var(--el-checkbox-font-weight);font-size:var(--el-font-size-base);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;height:var(--el-checkbox-height,32px);align-items:center;margin-right:30px;display:inline-flex;position:relative}.el-checkbox.is-disabled{cursor:not-allowed}.el-checkbox.is-bordered{border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box;padding:0 15px 0 9px}.el-checkbox.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-checkbox.is-bordered.is-disabled{border-color:var(--el-border-color-lighter)}.el-checkbox.is-bordered.el-checkbox--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__label{font-size:var(--el-font-size-base)}.el-checkbox.is-bordered.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.is-bordered.el-checkbox--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:0 11px 0 7px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.is-bordered.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox input:focus-visible+.el-checkbox__inner{outline:2px solid var(--el-checkbox-input-border-color-hover);outline-offset:1px;border-radius:var(--el-checkbox-border-radius)}.el-checkbox__input{white-space:nowrap;cursor:pointer;outline:none;display:inline-flex;position:relative}.el-checkbox__input.is-disabled .el-checkbox__inner{background-color:var(--el-checkbox-disabled-input-fill);border-color:var(--el-checkbox-disabled-border-color);cursor:not-allowed}.el-checkbox__input.is-disabled .el-checkbox__inner:after{cursor:not-allowed;border-color:var(--el-checkbox-disabled-icon-color);will-change:transform}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-disabled-checked-input-fill);border-color:var(--el-checkbox-disabled-checked-input-border-color)}.el-checkbox__input.is-disabled.is-indeterminate .el-checkbox__inner:before{background-color:var(--el-checkbox-disabled-checked-icon-color);border-color:var(--el-checkbox-disabled-checked-icon-color)}.el-checkbox__input.is-disabled+span.el-checkbox__label{color:var(--el-disabled-text-color);cursor:not-allowed}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-checked .el-checkbox__inner:after{border-color:var(--el-checkbox-checked-icon-color);transform:translate(-45%,-60%)rotate(45deg)scaleY(1)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--el-checkbox-checked-text-color)}.el-checkbox__input.is-focus:not(.is-checked) .el-checkbox__original:not(:focus-visible){border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__input.is-indeterminate .el-checkbox__inner{background-color:var(--el-checkbox-checked-bg-color);border-color:var(--el-checkbox-checked-input-border-color)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:before{content:"";background-color:var(--el-checkbox-checked-icon-color);height:2px;display:block;position:absolute;top:5px;left:0;right:0;transform:scale(.5)}.el-checkbox__input.is-indeterminate .el-checkbox__inner:after{display:none}.el-checkbox__inner{border:var(--el-checkbox-input-border);border-radius:var(--el-checkbox-border-radius);box-sizing:border-box;width:var(--el-checkbox-input-width);height:var(--el-checkbox-input-height);background-color:var(--el-checkbox-bg-color);z-index:var(--el-index-normal);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46),outline .25s cubic-bezier(.71,-.46,.29,1.46);display:inline-block;position:relative}.el-checkbox__inner:hover{border-color:var(--el-checkbox-input-border-color-hover)}.el-checkbox__inner:after{box-sizing:content-box;content:"";transform-origin:50%;border:1px solid #0000;border-top:0;border-left:0;width:3px;height:7px;transition:transform .15s ease-in 50ms;position:absolute;top:50%;left:50%;transform:translate(-45%,-60%)rotate(45deg)scaleY(0)}.el-checkbox__original{opacity:0;z-index:-1;outline:none;width:0;height:0;margin:0;position:absolute}.el-checkbox__label{line-height:1;font-size:var(--el-checkbox-font-size);padding-left:8px;display:inline-block}.el-checkbox.el-checkbox--large{height:40px}.el-checkbox.el-checkbox--large .el-checkbox__label{font-size:14px}.el-checkbox.el-checkbox--large .el-checkbox__inner{width:14px;height:14px}.el-checkbox.el-checkbox--small{height:24px}.el-checkbox.el-checkbox--small .el-checkbox__label{font-size:12px}.el-checkbox.el-checkbox--small .el-checkbox__inner{width:12px;height:12px}.el-checkbox.el-checkbox--small .el-checkbox__input.is-indeterminate .el-checkbox__inner:before{top:4px}.el-checkbox.el-checkbox--small .el-checkbox__inner:after{width:2px;height:6px}.el-checkbox:last-of-type{margin-right:0}[class*=el-col-]{box-sizing:border-box}[class*=el-col-].is-guttered{min-height:1px;display:block}.el-col-0{flex:0 0;max-width:0%;display:none}.el-col-0.is-guttered{display:none}.el-col-offset-0{margin-left:0%}.el-col-pull-0{position:relative;right:0%}.el-col-push-0{position:relative;left:0%}.el-col-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-1.is-guttered{display:block}.el-col-offset-1{margin-left:4.16667%}.el-col-pull-1{position:relative;right:4.16667%}.el-col-push-1{position:relative;left:4.16667%}.el-col-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-2.is-guttered{display:block}.el-col-offset-2{margin-left:8.33333%}.el-col-pull-2{position:relative;right:8.33333%}.el-col-push-2{position:relative;left:8.33333%}.el-col-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-3.is-guttered{display:block}.el-col-offset-3{margin-left:12.5%}.el-col-pull-3{position:relative;right:12.5%}.el-col-push-3{position:relative;left:12.5%}.el-col-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-4.is-guttered{display:block}.el-col-offset-4{margin-left:16.6667%}.el-col-pull-4{position:relative;right:16.6667%}.el-col-push-4{position:relative;left:16.6667%}.el-col-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-5.is-guttered{display:block}.el-col-offset-5{margin-left:20.8333%}.el-col-pull-5{position:relative;right:20.8333%}.el-col-push-5{position:relative;left:20.8333%}.el-col-6{flex:0 0 25%;max-width:25%;display:block}.el-col-6.is-guttered{display:block}.el-col-offset-6{margin-left:25%}.el-col-pull-6{position:relative;right:25%}.el-col-push-6{position:relative;left:25%}.el-col-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-7.is-guttered{display:block}.el-col-offset-7{margin-left:29.1667%}.el-col-pull-7{position:relative;right:29.1667%}.el-col-push-7{position:relative;left:29.1667%}.el-col-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-8.is-guttered{display:block}.el-col-offset-8{margin-left:33.3333%}.el-col-pull-8{position:relative;right:33.3333%}.el-col-push-8{position:relative;left:33.3333%}.el-col-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-9.is-guttered{display:block}.el-col-offset-9{margin-left:37.5%}.el-col-pull-9{position:relative;right:37.5%}.el-col-push-9{position:relative;left:37.5%}.el-col-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-10.is-guttered{display:block}.el-col-offset-10{margin-left:41.6667%}.el-col-pull-10{position:relative;right:41.6667%}.el-col-push-10{position:relative;left:41.6667%}.el-col-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-11.is-guttered{display:block}.el-col-offset-11{margin-left:45.8333%}.el-col-pull-11{position:relative;right:45.8333%}.el-col-push-11{position:relative;left:45.8333%}.el-col-12{flex:0 0 50%;max-width:50%;display:block}.el-col-12.is-guttered{display:block}.el-col-offset-12{margin-left:50%}.el-col-pull-12{position:relative;right:50%}.el-col-push-12{position:relative;left:50%}.el-col-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-13.is-guttered{display:block}.el-col-offset-13{margin-left:54.1667%}.el-col-pull-13{position:relative;right:54.1667%}.el-col-push-13{position:relative;left:54.1667%}.el-col-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-14.is-guttered{display:block}.el-col-offset-14{margin-left:58.3333%}.el-col-pull-14{position:relative;right:58.3333%}.el-col-push-14{position:relative;left:58.3333%}.el-col-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-15.is-guttered{display:block}.el-col-offset-15{margin-left:62.5%}.el-col-pull-15{position:relative;right:62.5%}.el-col-push-15{position:relative;left:62.5%}.el-col-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-16.is-guttered{display:block}.el-col-offset-16{margin-left:66.6667%}.el-col-pull-16{position:relative;right:66.6667%}.el-col-push-16{position:relative;left:66.6667%}.el-col-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-17.is-guttered{display:block}.el-col-offset-17{margin-left:70.8333%}.el-col-pull-17{position:relative;right:70.8333%}.el-col-push-17{position:relative;left:70.8333%}.el-col-18{flex:0 0 75%;max-width:75%;display:block}.el-col-18.is-guttered{display:block}.el-col-offset-18{margin-left:75%}.el-col-pull-18{position:relative;right:75%}.el-col-push-18{position:relative;left:75%}.el-col-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-19.is-guttered{display:block}.el-col-offset-19{margin-left:79.1667%}.el-col-pull-19{position:relative;right:79.1667%}.el-col-push-19{position:relative;left:79.1667%}.el-col-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-20.is-guttered{display:block}.el-col-offset-20{margin-left:83.3333%}.el-col-pull-20{position:relative;right:83.3333%}.el-col-push-20{position:relative;left:83.3333%}.el-col-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-21.is-guttered{display:block}.el-col-offset-21{margin-left:87.5%}.el-col-pull-21{position:relative;right:87.5%}.el-col-push-21{position:relative;left:87.5%}.el-col-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-22.is-guttered{display:block}.el-col-offset-22{margin-left:91.6667%}.el-col-pull-22{position:relative;right:91.6667%}.el-col-push-22{position:relative;left:91.6667%}.el-col-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-23.is-guttered{display:block}.el-col-offset-23{margin-left:95.8333%}.el-col-pull-23{position:relative;right:95.8333%}.el-col-push-23{position:relative;left:95.8333%}.el-col-24{flex:0 0 100%;max-width:100%;display:block}.el-col-24.is-guttered{display:block}.el-col-offset-24{margin-left:100%}.el-col-pull-24{position:relative;right:100%}.el-col-push-24{position:relative;left:100%}@media only screen and (max-width:767px){.el-col-xs-0{flex:0 0;max-width:0%;display:none}.el-col-xs-0.is-guttered{display:none}.el-col-xs-offset-0{margin-left:0%}.el-col-xs-pull-0{position:relative;right:0%}.el-col-xs-push-0{position:relative;left:0%}.el-col-xs-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-xs-1.is-guttered{display:block}.el-col-xs-offset-1{margin-left:4.16667%}.el-col-xs-pull-1{position:relative;right:4.16667%}.el-col-xs-push-1{position:relative;left:4.16667%}.el-col-xs-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-xs-2.is-guttered{display:block}.el-col-xs-offset-2{margin-left:8.33333%}.el-col-xs-pull-2{position:relative;right:8.33333%}.el-col-xs-push-2{position:relative;left:8.33333%}.el-col-xs-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-xs-3.is-guttered{display:block}.el-col-xs-offset-3{margin-left:12.5%}.el-col-xs-pull-3{position:relative;right:12.5%}.el-col-xs-push-3{position:relative;left:12.5%}.el-col-xs-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-xs-4.is-guttered{display:block}.el-col-xs-offset-4{margin-left:16.6667%}.el-col-xs-pull-4{position:relative;right:16.6667%}.el-col-xs-push-4{position:relative;left:16.6667%}.el-col-xs-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-xs-5.is-guttered{display:block}.el-col-xs-offset-5{margin-left:20.8333%}.el-col-xs-pull-5{position:relative;right:20.8333%}.el-col-xs-push-5{position:relative;left:20.8333%}.el-col-xs-6{flex:0 0 25%;max-width:25%;display:block}.el-col-xs-6.is-guttered{display:block}.el-col-xs-offset-6{margin-left:25%}.el-col-xs-pull-6{position:relative;right:25%}.el-col-xs-push-6{position:relative;left:25%}.el-col-xs-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-xs-7.is-guttered{display:block}.el-col-xs-offset-7{margin-left:29.1667%}.el-col-xs-pull-7{position:relative;right:29.1667%}.el-col-xs-push-7{position:relative;left:29.1667%}.el-col-xs-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-xs-8.is-guttered{display:block}.el-col-xs-offset-8{margin-left:33.3333%}.el-col-xs-pull-8{position:relative;right:33.3333%}.el-col-xs-push-8{position:relative;left:33.3333%}.el-col-xs-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-xs-9.is-guttered{display:block}.el-col-xs-offset-9{margin-left:37.5%}.el-col-xs-pull-9{position:relative;right:37.5%}.el-col-xs-push-9{position:relative;left:37.5%}.el-col-xs-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-xs-10.is-guttered{display:block}.el-col-xs-offset-10{margin-left:41.6667%}.el-col-xs-pull-10{position:relative;right:41.6667%}.el-col-xs-push-10{position:relative;left:41.6667%}.el-col-xs-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-xs-11.is-guttered{display:block}.el-col-xs-offset-11{margin-left:45.8333%}.el-col-xs-pull-11{position:relative;right:45.8333%}.el-col-xs-push-11{position:relative;left:45.8333%}.el-col-xs-12{flex:0 0 50%;max-width:50%;display:block}.el-col-xs-12.is-guttered{display:block}.el-col-xs-offset-12{margin-left:50%}.el-col-xs-pull-12{position:relative;right:50%}.el-col-xs-push-12{position:relative;left:50%}.el-col-xs-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-xs-13.is-guttered{display:block}.el-col-xs-offset-13{margin-left:54.1667%}.el-col-xs-pull-13{position:relative;right:54.1667%}.el-col-xs-push-13{position:relative;left:54.1667%}.el-col-xs-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-xs-14.is-guttered{display:block}.el-col-xs-offset-14{margin-left:58.3333%}.el-col-xs-pull-14{position:relative;right:58.3333%}.el-col-xs-push-14{position:relative;left:58.3333%}.el-col-xs-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-xs-15.is-guttered{display:block}.el-col-xs-offset-15{margin-left:62.5%}.el-col-xs-pull-15{position:relative;right:62.5%}.el-col-xs-push-15{position:relative;left:62.5%}.el-col-xs-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-xs-16.is-guttered{display:block}.el-col-xs-offset-16{margin-left:66.6667%}.el-col-xs-pull-16{position:relative;right:66.6667%}.el-col-xs-push-16{position:relative;left:66.6667%}.el-col-xs-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-xs-17.is-guttered{display:block}.el-col-xs-offset-17{margin-left:70.8333%}.el-col-xs-pull-17{position:relative;right:70.8333%}.el-col-xs-push-17{position:relative;left:70.8333%}.el-col-xs-18{flex:0 0 75%;max-width:75%;display:block}.el-col-xs-18.is-guttered{display:block}.el-col-xs-offset-18{margin-left:75%}.el-col-xs-pull-18{position:relative;right:75%}.el-col-xs-push-18{position:relative;left:75%}.el-col-xs-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-xs-19.is-guttered{display:block}.el-col-xs-offset-19{margin-left:79.1667%}.el-col-xs-pull-19{position:relative;right:79.1667%}.el-col-xs-push-19{position:relative;left:79.1667%}.el-col-xs-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-xs-20.is-guttered{display:block}.el-col-xs-offset-20{margin-left:83.3333%}.el-col-xs-pull-20{position:relative;right:83.3333%}.el-col-xs-push-20{position:relative;left:83.3333%}.el-col-xs-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-xs-21.is-guttered{display:block}.el-col-xs-offset-21{margin-left:87.5%}.el-col-xs-pull-21{position:relative;right:87.5%}.el-col-xs-push-21{position:relative;left:87.5%}.el-col-xs-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-xs-22.is-guttered{display:block}.el-col-xs-offset-22{margin-left:91.6667%}.el-col-xs-pull-22{position:relative;right:91.6667%}.el-col-xs-push-22{position:relative;left:91.6667%}.el-col-xs-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-xs-23.is-guttered{display:block}.el-col-xs-offset-23{margin-left:95.8333%}.el-col-xs-pull-23{position:relative;right:95.8333%}.el-col-xs-push-23{position:relative;left:95.8333%}.el-col-xs-24{flex:0 0 100%;max-width:100%;display:block}.el-col-xs-24.is-guttered{display:block}.el-col-xs-offset-24{margin-left:100%}.el-col-xs-pull-24{position:relative;right:100%}.el-col-xs-push-24{position:relative;left:100%}}@media only screen and (min-width:768px){.el-col-sm-0{flex:0 0;max-width:0%;display:none}.el-col-sm-0.is-guttered{display:none}.el-col-sm-offset-0{margin-left:0%}.el-col-sm-pull-0{position:relative;right:0%}.el-col-sm-push-0{position:relative;left:0%}.el-col-sm-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-sm-1.is-guttered{display:block}.el-col-sm-offset-1{margin-left:4.16667%}.el-col-sm-pull-1{position:relative;right:4.16667%}.el-col-sm-push-1{position:relative;left:4.16667%}.el-col-sm-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-sm-2.is-guttered{display:block}.el-col-sm-offset-2{margin-left:8.33333%}.el-col-sm-pull-2{position:relative;right:8.33333%}.el-col-sm-push-2{position:relative;left:8.33333%}.el-col-sm-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-sm-3.is-guttered{display:block}.el-col-sm-offset-3{margin-left:12.5%}.el-col-sm-pull-3{position:relative;right:12.5%}.el-col-sm-push-3{position:relative;left:12.5%}.el-col-sm-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-sm-4.is-guttered{display:block}.el-col-sm-offset-4{margin-left:16.6667%}.el-col-sm-pull-4{position:relative;right:16.6667%}.el-col-sm-push-4{position:relative;left:16.6667%}.el-col-sm-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-sm-5.is-guttered{display:block}.el-col-sm-offset-5{margin-left:20.8333%}.el-col-sm-pull-5{position:relative;right:20.8333%}.el-col-sm-push-5{position:relative;left:20.8333%}.el-col-sm-6{flex:0 0 25%;max-width:25%;display:block}.el-col-sm-6.is-guttered{display:block}.el-col-sm-offset-6{margin-left:25%}.el-col-sm-pull-6{position:relative;right:25%}.el-col-sm-push-6{position:relative;left:25%}.el-col-sm-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-sm-7.is-guttered{display:block}.el-col-sm-offset-7{margin-left:29.1667%}.el-col-sm-pull-7{position:relative;right:29.1667%}.el-col-sm-push-7{position:relative;left:29.1667%}.el-col-sm-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-sm-8.is-guttered{display:block}.el-col-sm-offset-8{margin-left:33.3333%}.el-col-sm-pull-8{position:relative;right:33.3333%}.el-col-sm-push-8{position:relative;left:33.3333%}.el-col-sm-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-sm-9.is-guttered{display:block}.el-col-sm-offset-9{margin-left:37.5%}.el-col-sm-pull-9{position:relative;right:37.5%}.el-col-sm-push-9{position:relative;left:37.5%}.el-col-sm-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-sm-10.is-guttered{display:block}.el-col-sm-offset-10{margin-left:41.6667%}.el-col-sm-pull-10{position:relative;right:41.6667%}.el-col-sm-push-10{position:relative;left:41.6667%}.el-col-sm-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-sm-11.is-guttered{display:block}.el-col-sm-offset-11{margin-left:45.8333%}.el-col-sm-pull-11{position:relative;right:45.8333%}.el-col-sm-push-11{position:relative;left:45.8333%}.el-col-sm-12{flex:0 0 50%;max-width:50%;display:block}.el-col-sm-12.is-guttered{display:block}.el-col-sm-offset-12{margin-left:50%}.el-col-sm-pull-12{position:relative;right:50%}.el-col-sm-push-12{position:relative;left:50%}.el-col-sm-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-sm-13.is-guttered{display:block}.el-col-sm-offset-13{margin-left:54.1667%}.el-col-sm-pull-13{position:relative;right:54.1667%}.el-col-sm-push-13{position:relative;left:54.1667%}.el-col-sm-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-sm-14.is-guttered{display:block}.el-col-sm-offset-14{margin-left:58.3333%}.el-col-sm-pull-14{position:relative;right:58.3333%}.el-col-sm-push-14{position:relative;left:58.3333%}.el-col-sm-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-sm-15.is-guttered{display:block}.el-col-sm-offset-15{margin-left:62.5%}.el-col-sm-pull-15{position:relative;right:62.5%}.el-col-sm-push-15{position:relative;left:62.5%}.el-col-sm-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-sm-16.is-guttered{display:block}.el-col-sm-offset-16{margin-left:66.6667%}.el-col-sm-pull-16{position:relative;right:66.6667%}.el-col-sm-push-16{position:relative;left:66.6667%}.el-col-sm-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-sm-17.is-guttered{display:block}.el-col-sm-offset-17{margin-left:70.8333%}.el-col-sm-pull-17{position:relative;right:70.8333%}.el-col-sm-push-17{position:relative;left:70.8333%}.el-col-sm-18{flex:0 0 75%;max-width:75%;display:block}.el-col-sm-18.is-guttered{display:block}.el-col-sm-offset-18{margin-left:75%}.el-col-sm-pull-18{position:relative;right:75%}.el-col-sm-push-18{position:relative;left:75%}.el-col-sm-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-sm-19.is-guttered{display:block}.el-col-sm-offset-19{margin-left:79.1667%}.el-col-sm-pull-19{position:relative;right:79.1667%}.el-col-sm-push-19{position:relative;left:79.1667%}.el-col-sm-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-sm-20.is-guttered{display:block}.el-col-sm-offset-20{margin-left:83.3333%}.el-col-sm-pull-20{position:relative;right:83.3333%}.el-col-sm-push-20{position:relative;left:83.3333%}.el-col-sm-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-sm-21.is-guttered{display:block}.el-col-sm-offset-21{margin-left:87.5%}.el-col-sm-pull-21{position:relative;right:87.5%}.el-col-sm-push-21{position:relative;left:87.5%}.el-col-sm-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-sm-22.is-guttered{display:block}.el-col-sm-offset-22{margin-left:91.6667%}.el-col-sm-pull-22{position:relative;right:91.6667%}.el-col-sm-push-22{position:relative;left:91.6667%}.el-col-sm-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-sm-23.is-guttered{display:block}.el-col-sm-offset-23{margin-left:95.8333%}.el-col-sm-pull-23{position:relative;right:95.8333%}.el-col-sm-push-23{position:relative;left:95.8333%}.el-col-sm-24{flex:0 0 100%;max-width:100%;display:block}.el-col-sm-24.is-guttered{display:block}.el-col-sm-offset-24{margin-left:100%}.el-col-sm-pull-24{position:relative;right:100%}.el-col-sm-push-24{position:relative;left:100%}}@media only screen and (min-width:992px){.el-col-md-0{flex:0 0;max-width:0%;display:none}.el-col-md-0.is-guttered{display:none}.el-col-md-offset-0{margin-left:0%}.el-col-md-pull-0{position:relative;right:0%}.el-col-md-push-0{position:relative;left:0%}.el-col-md-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-md-1.is-guttered{display:block}.el-col-md-offset-1{margin-left:4.16667%}.el-col-md-pull-1{position:relative;right:4.16667%}.el-col-md-push-1{position:relative;left:4.16667%}.el-col-md-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-md-2.is-guttered{display:block}.el-col-md-offset-2{margin-left:8.33333%}.el-col-md-pull-2{position:relative;right:8.33333%}.el-col-md-push-2{position:relative;left:8.33333%}.el-col-md-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-md-3.is-guttered{display:block}.el-col-md-offset-3{margin-left:12.5%}.el-col-md-pull-3{position:relative;right:12.5%}.el-col-md-push-3{position:relative;left:12.5%}.el-col-md-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-md-4.is-guttered{display:block}.el-col-md-offset-4{margin-left:16.6667%}.el-col-md-pull-4{position:relative;right:16.6667%}.el-col-md-push-4{position:relative;left:16.6667%}.el-col-md-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-md-5.is-guttered{display:block}.el-col-md-offset-5{margin-left:20.8333%}.el-col-md-pull-5{position:relative;right:20.8333%}.el-col-md-push-5{position:relative;left:20.8333%}.el-col-md-6{flex:0 0 25%;max-width:25%;display:block}.el-col-md-6.is-guttered{display:block}.el-col-md-offset-6{margin-left:25%}.el-col-md-pull-6{position:relative;right:25%}.el-col-md-push-6{position:relative;left:25%}.el-col-md-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-md-7.is-guttered{display:block}.el-col-md-offset-7{margin-left:29.1667%}.el-col-md-pull-7{position:relative;right:29.1667%}.el-col-md-push-7{position:relative;left:29.1667%}.el-col-md-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-md-8.is-guttered{display:block}.el-col-md-offset-8{margin-left:33.3333%}.el-col-md-pull-8{position:relative;right:33.3333%}.el-col-md-push-8{position:relative;left:33.3333%}.el-col-md-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-md-9.is-guttered{display:block}.el-col-md-offset-9{margin-left:37.5%}.el-col-md-pull-9{position:relative;right:37.5%}.el-col-md-push-9{position:relative;left:37.5%}.el-col-md-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-md-10.is-guttered{display:block}.el-col-md-offset-10{margin-left:41.6667%}.el-col-md-pull-10{position:relative;right:41.6667%}.el-col-md-push-10{position:relative;left:41.6667%}.el-col-md-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-md-11.is-guttered{display:block}.el-col-md-offset-11{margin-left:45.8333%}.el-col-md-pull-11{position:relative;right:45.8333%}.el-col-md-push-11{position:relative;left:45.8333%}.el-col-md-12{flex:0 0 50%;max-width:50%;display:block}.el-col-md-12.is-guttered{display:block}.el-col-md-offset-12{margin-left:50%}.el-col-md-pull-12{position:relative;right:50%}.el-col-md-push-12{position:relative;left:50%}.el-col-md-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-md-13.is-guttered{display:block}.el-col-md-offset-13{margin-left:54.1667%}.el-col-md-pull-13{position:relative;right:54.1667%}.el-col-md-push-13{position:relative;left:54.1667%}.el-col-md-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-md-14.is-guttered{display:block}.el-col-md-offset-14{margin-left:58.3333%}.el-col-md-pull-14{position:relative;right:58.3333%}.el-col-md-push-14{position:relative;left:58.3333%}.el-col-md-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-md-15.is-guttered{display:block}.el-col-md-offset-15{margin-left:62.5%}.el-col-md-pull-15{position:relative;right:62.5%}.el-col-md-push-15{position:relative;left:62.5%}.el-col-md-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-md-16.is-guttered{display:block}.el-col-md-offset-16{margin-left:66.6667%}.el-col-md-pull-16{position:relative;right:66.6667%}.el-col-md-push-16{position:relative;left:66.6667%}.el-col-md-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-md-17.is-guttered{display:block}.el-col-md-offset-17{margin-left:70.8333%}.el-col-md-pull-17{position:relative;right:70.8333%}.el-col-md-push-17{position:relative;left:70.8333%}.el-col-md-18{flex:0 0 75%;max-width:75%;display:block}.el-col-md-18.is-guttered{display:block}.el-col-md-offset-18{margin-left:75%}.el-col-md-pull-18{position:relative;right:75%}.el-col-md-push-18{position:relative;left:75%}.el-col-md-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-md-19.is-guttered{display:block}.el-col-md-offset-19{margin-left:79.1667%}.el-col-md-pull-19{position:relative;right:79.1667%}.el-col-md-push-19{position:relative;left:79.1667%}.el-col-md-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-md-20.is-guttered{display:block}.el-col-md-offset-20{margin-left:83.3333%}.el-col-md-pull-20{position:relative;right:83.3333%}.el-col-md-push-20{position:relative;left:83.3333%}.el-col-md-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-md-21.is-guttered{display:block}.el-col-md-offset-21{margin-left:87.5%}.el-col-md-pull-21{position:relative;right:87.5%}.el-col-md-push-21{position:relative;left:87.5%}.el-col-md-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-md-22.is-guttered{display:block}.el-col-md-offset-22{margin-left:91.6667%}.el-col-md-pull-22{position:relative;right:91.6667%}.el-col-md-push-22{position:relative;left:91.6667%}.el-col-md-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-md-23.is-guttered{display:block}.el-col-md-offset-23{margin-left:95.8333%}.el-col-md-pull-23{position:relative;right:95.8333%}.el-col-md-push-23{position:relative;left:95.8333%}.el-col-md-24{flex:0 0 100%;max-width:100%;display:block}.el-col-md-24.is-guttered{display:block}.el-col-md-offset-24{margin-left:100%}.el-col-md-pull-24{position:relative;right:100%}.el-col-md-push-24{position:relative;left:100%}}@media only screen and (min-width:1200px){.el-col-lg-0{flex:0 0;max-width:0%;display:none}.el-col-lg-0.is-guttered{display:none}.el-col-lg-offset-0{margin-left:0%}.el-col-lg-pull-0{position:relative;right:0%}.el-col-lg-push-0{position:relative;left:0%}.el-col-lg-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-lg-1.is-guttered{display:block}.el-col-lg-offset-1{margin-left:4.16667%}.el-col-lg-pull-1{position:relative;right:4.16667%}.el-col-lg-push-1{position:relative;left:4.16667%}.el-col-lg-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-lg-2.is-guttered{display:block}.el-col-lg-offset-2{margin-left:8.33333%}.el-col-lg-pull-2{position:relative;right:8.33333%}.el-col-lg-push-2{position:relative;left:8.33333%}.el-col-lg-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-lg-3.is-guttered{display:block}.el-col-lg-offset-3{margin-left:12.5%}.el-col-lg-pull-3{position:relative;right:12.5%}.el-col-lg-push-3{position:relative;left:12.5%}.el-col-lg-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-lg-4.is-guttered{display:block}.el-col-lg-offset-4{margin-left:16.6667%}.el-col-lg-pull-4{position:relative;right:16.6667%}.el-col-lg-push-4{position:relative;left:16.6667%}.el-col-lg-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-lg-5.is-guttered{display:block}.el-col-lg-offset-5{margin-left:20.8333%}.el-col-lg-pull-5{position:relative;right:20.8333%}.el-col-lg-push-5{position:relative;left:20.8333%}.el-col-lg-6{flex:0 0 25%;max-width:25%;display:block}.el-col-lg-6.is-guttered{display:block}.el-col-lg-offset-6{margin-left:25%}.el-col-lg-pull-6{position:relative;right:25%}.el-col-lg-push-6{position:relative;left:25%}.el-col-lg-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-lg-7.is-guttered{display:block}.el-col-lg-offset-7{margin-left:29.1667%}.el-col-lg-pull-7{position:relative;right:29.1667%}.el-col-lg-push-7{position:relative;left:29.1667%}.el-col-lg-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-lg-8.is-guttered{display:block}.el-col-lg-offset-8{margin-left:33.3333%}.el-col-lg-pull-8{position:relative;right:33.3333%}.el-col-lg-push-8{position:relative;left:33.3333%}.el-col-lg-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-lg-9.is-guttered{display:block}.el-col-lg-offset-9{margin-left:37.5%}.el-col-lg-pull-9{position:relative;right:37.5%}.el-col-lg-push-9{position:relative;left:37.5%}.el-col-lg-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-lg-10.is-guttered{display:block}.el-col-lg-offset-10{margin-left:41.6667%}.el-col-lg-pull-10{position:relative;right:41.6667%}.el-col-lg-push-10{position:relative;left:41.6667%}.el-col-lg-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-lg-11.is-guttered{display:block}.el-col-lg-offset-11{margin-left:45.8333%}.el-col-lg-pull-11{position:relative;right:45.8333%}.el-col-lg-push-11{position:relative;left:45.8333%}.el-col-lg-12{flex:0 0 50%;max-width:50%;display:block}.el-col-lg-12.is-guttered{display:block}.el-col-lg-offset-12{margin-left:50%}.el-col-lg-pull-12{position:relative;right:50%}.el-col-lg-push-12{position:relative;left:50%}.el-col-lg-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-lg-13.is-guttered{display:block}.el-col-lg-offset-13{margin-left:54.1667%}.el-col-lg-pull-13{position:relative;right:54.1667%}.el-col-lg-push-13{position:relative;left:54.1667%}.el-col-lg-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-lg-14.is-guttered{display:block}.el-col-lg-offset-14{margin-left:58.3333%}.el-col-lg-pull-14{position:relative;right:58.3333%}.el-col-lg-push-14{position:relative;left:58.3333%}.el-col-lg-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-lg-15.is-guttered{display:block}.el-col-lg-offset-15{margin-left:62.5%}.el-col-lg-pull-15{position:relative;right:62.5%}.el-col-lg-push-15{position:relative;left:62.5%}.el-col-lg-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-lg-16.is-guttered{display:block}.el-col-lg-offset-16{margin-left:66.6667%}.el-col-lg-pull-16{position:relative;right:66.6667%}.el-col-lg-push-16{position:relative;left:66.6667%}.el-col-lg-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-lg-17.is-guttered{display:block}.el-col-lg-offset-17{margin-left:70.8333%}.el-col-lg-pull-17{position:relative;right:70.8333%}.el-col-lg-push-17{position:relative;left:70.8333%}.el-col-lg-18{flex:0 0 75%;max-width:75%;display:block}.el-col-lg-18.is-guttered{display:block}.el-col-lg-offset-18{margin-left:75%}.el-col-lg-pull-18{position:relative;right:75%}.el-col-lg-push-18{position:relative;left:75%}.el-col-lg-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-lg-19.is-guttered{display:block}.el-col-lg-offset-19{margin-left:79.1667%}.el-col-lg-pull-19{position:relative;right:79.1667%}.el-col-lg-push-19{position:relative;left:79.1667%}.el-col-lg-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-lg-20.is-guttered{display:block}.el-col-lg-offset-20{margin-left:83.3333%}.el-col-lg-pull-20{position:relative;right:83.3333%}.el-col-lg-push-20{position:relative;left:83.3333%}.el-col-lg-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-lg-21.is-guttered{display:block}.el-col-lg-offset-21{margin-left:87.5%}.el-col-lg-pull-21{position:relative;right:87.5%}.el-col-lg-push-21{position:relative;left:87.5%}.el-col-lg-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-lg-22.is-guttered{display:block}.el-col-lg-offset-22{margin-left:91.6667%}.el-col-lg-pull-22{position:relative;right:91.6667%}.el-col-lg-push-22{position:relative;left:91.6667%}.el-col-lg-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-lg-23.is-guttered{display:block}.el-col-lg-offset-23{margin-left:95.8333%}.el-col-lg-pull-23{position:relative;right:95.8333%}.el-col-lg-push-23{position:relative;left:95.8333%}.el-col-lg-24{flex:0 0 100%;max-width:100%;display:block}.el-col-lg-24.is-guttered{display:block}.el-col-lg-offset-24{margin-left:100%}.el-col-lg-pull-24{position:relative;right:100%}.el-col-lg-push-24{position:relative;left:100%}}@media only screen and (min-width:1920px){.el-col-xl-0{flex:0 0;max-width:0%;display:none}.el-col-xl-0.is-guttered{display:none}.el-col-xl-offset-0{margin-left:0%}.el-col-xl-pull-0{position:relative;right:0%}.el-col-xl-push-0{position:relative;left:0%}.el-col-xl-1{flex:0 0 4.16667%;max-width:4.16667%;display:block}.el-col-xl-1.is-guttered{display:block}.el-col-xl-offset-1{margin-left:4.16667%}.el-col-xl-pull-1{position:relative;right:4.16667%}.el-col-xl-push-1{position:relative;left:4.16667%}.el-col-xl-2{flex:0 0 8.33333%;max-width:8.33333%;display:block}.el-col-xl-2.is-guttered{display:block}.el-col-xl-offset-2{margin-left:8.33333%}.el-col-xl-pull-2{position:relative;right:8.33333%}.el-col-xl-push-2{position:relative;left:8.33333%}.el-col-xl-3{flex:0 0 12.5%;max-width:12.5%;display:block}.el-col-xl-3.is-guttered{display:block}.el-col-xl-offset-3{margin-left:12.5%}.el-col-xl-pull-3{position:relative;right:12.5%}.el-col-xl-push-3{position:relative;left:12.5%}.el-col-xl-4{flex:0 0 16.6667%;max-width:16.6667%;display:block}.el-col-xl-4.is-guttered{display:block}.el-col-xl-offset-4{margin-left:16.6667%}.el-col-xl-pull-4{position:relative;right:16.6667%}.el-col-xl-push-4{position:relative;left:16.6667%}.el-col-xl-5{flex:0 0 20.8333%;max-width:20.8333%;display:block}.el-col-xl-5.is-guttered{display:block}.el-col-xl-offset-5{margin-left:20.8333%}.el-col-xl-pull-5{position:relative;right:20.8333%}.el-col-xl-push-5{position:relative;left:20.8333%}.el-col-xl-6{flex:0 0 25%;max-width:25%;display:block}.el-col-xl-6.is-guttered{display:block}.el-col-xl-offset-6{margin-left:25%}.el-col-xl-pull-6{position:relative;right:25%}.el-col-xl-push-6{position:relative;left:25%}.el-col-xl-7{flex:0 0 29.1667%;max-width:29.1667%;display:block}.el-col-xl-7.is-guttered{display:block}.el-col-xl-offset-7{margin-left:29.1667%}.el-col-xl-pull-7{position:relative;right:29.1667%}.el-col-xl-push-7{position:relative;left:29.1667%}.el-col-xl-8{flex:0 0 33.3333%;max-width:33.3333%;display:block}.el-col-xl-8.is-guttered{display:block}.el-col-xl-offset-8{margin-left:33.3333%}.el-col-xl-pull-8{position:relative;right:33.3333%}.el-col-xl-push-8{position:relative;left:33.3333%}.el-col-xl-9{flex:0 0 37.5%;max-width:37.5%;display:block}.el-col-xl-9.is-guttered{display:block}.el-col-xl-offset-9{margin-left:37.5%}.el-col-xl-pull-9{position:relative;right:37.5%}.el-col-xl-push-9{position:relative;left:37.5%}.el-col-xl-10{flex:0 0 41.6667%;max-width:41.6667%;display:block}.el-col-xl-10.is-guttered{display:block}.el-col-xl-offset-10{margin-left:41.6667%}.el-col-xl-pull-10{position:relative;right:41.6667%}.el-col-xl-push-10{position:relative;left:41.6667%}.el-col-xl-11{flex:0 0 45.8333%;max-width:45.8333%;display:block}.el-col-xl-11.is-guttered{display:block}.el-col-xl-offset-11{margin-left:45.8333%}.el-col-xl-pull-11{position:relative;right:45.8333%}.el-col-xl-push-11{position:relative;left:45.8333%}.el-col-xl-12{flex:0 0 50%;max-width:50%;display:block}.el-col-xl-12.is-guttered{display:block}.el-col-xl-offset-12{margin-left:50%}.el-col-xl-pull-12{position:relative;right:50%}.el-col-xl-push-12{position:relative;left:50%}.el-col-xl-13{flex:0 0 54.1667%;max-width:54.1667%;display:block}.el-col-xl-13.is-guttered{display:block}.el-col-xl-offset-13{margin-left:54.1667%}.el-col-xl-pull-13{position:relative;right:54.1667%}.el-col-xl-push-13{position:relative;left:54.1667%}.el-col-xl-14{flex:0 0 58.3333%;max-width:58.3333%;display:block}.el-col-xl-14.is-guttered{display:block}.el-col-xl-offset-14{margin-left:58.3333%}.el-col-xl-pull-14{position:relative;right:58.3333%}.el-col-xl-push-14{position:relative;left:58.3333%}.el-col-xl-15{flex:0 0 62.5%;max-width:62.5%;display:block}.el-col-xl-15.is-guttered{display:block}.el-col-xl-offset-15{margin-left:62.5%}.el-col-xl-pull-15{position:relative;right:62.5%}.el-col-xl-push-15{position:relative;left:62.5%}.el-col-xl-16{flex:0 0 66.6667%;max-width:66.6667%;display:block}.el-col-xl-16.is-guttered{display:block}.el-col-xl-offset-16{margin-left:66.6667%}.el-col-xl-pull-16{position:relative;right:66.6667%}.el-col-xl-push-16{position:relative;left:66.6667%}.el-col-xl-17{flex:0 0 70.8333%;max-width:70.8333%;display:block}.el-col-xl-17.is-guttered{display:block}.el-col-xl-offset-17{margin-left:70.8333%}.el-col-xl-pull-17{position:relative;right:70.8333%}.el-col-xl-push-17{position:relative;left:70.8333%}.el-col-xl-18{flex:0 0 75%;max-width:75%;display:block}.el-col-xl-18.is-guttered{display:block}.el-col-xl-offset-18{margin-left:75%}.el-col-xl-pull-18{position:relative;right:75%}.el-col-xl-push-18{position:relative;left:75%}.el-col-xl-19{flex:0 0 79.1667%;max-width:79.1667%;display:block}.el-col-xl-19.is-guttered{display:block}.el-col-xl-offset-19{margin-left:79.1667%}.el-col-xl-pull-19{position:relative;right:79.1667%}.el-col-xl-push-19{position:relative;left:79.1667%}.el-col-xl-20{flex:0 0 83.3333%;max-width:83.3333%;display:block}.el-col-xl-20.is-guttered{display:block}.el-col-xl-offset-20{margin-left:83.3333%}.el-col-xl-pull-20{position:relative;right:83.3333%}.el-col-xl-push-20{position:relative;left:83.3333%}.el-col-xl-21{flex:0 0 87.5%;max-width:87.5%;display:block}.el-col-xl-21.is-guttered{display:block}.el-col-xl-offset-21{margin-left:87.5%}.el-col-xl-pull-21{position:relative;right:87.5%}.el-col-xl-push-21{position:relative;left:87.5%}.el-col-xl-22{flex:0 0 91.6667%;max-width:91.6667%;display:block}.el-col-xl-22.is-guttered{display:block}.el-col-xl-offset-22{margin-left:91.6667%}.el-col-xl-pull-22{position:relative;right:91.6667%}.el-col-xl-push-22{position:relative;left:91.6667%}.el-col-xl-23{flex:0 0 95.8333%;max-width:95.8333%;display:block}.el-col-xl-23.is-guttered{display:block}.el-col-xl-offset-23{margin-left:95.8333%}.el-col-xl-pull-23{position:relative;right:95.8333%}.el-col-xl-push-23{position:relative;left:95.8333%}.el-col-xl-24{flex:0 0 100%;max-width:100%;display:block}.el-col-xl-24.is-guttered{display:block}.el-col-xl-offset-24{margin-left:100%}.el-col-xl-pull-24{position:relative;right:100%}.el-col-xl-push-24{position:relative;left:100%}}.el-collapse-item.is-disabled .el-collapse-item__header{color:var(--el-text-color-disabled);cursor:not-allowed}.el-collapse-item__header{width:100%;min-height:var(--el-collapse-header-height);line-height:var(--el-collapse-header-height);background-color:var(--el-collapse-header-bg-color);color:var(--el-collapse-header-text-color);cursor:pointer;border:none;border-bottom:1px solid var(--el-collapse-border-color);font-size:var(--el-collapse-header-font-size);transition:border-bottom-color var(--el-transition-duration);box-sizing:border-box;outline:none;align-items:center;padding:0;font-weight:500;display:flex}.el-collapse-item__arrow{transition:transform var(--el-transition-duration);font-weight:300}.el-collapse-item__arrow.is-active{transform:rotate(90deg)}.el-collapse-item__title{text-align:left;flex:auto}.el-collapse-item__header.focusing:focus:not(:hover){color:var(--el-color-primary)}.el-collapse-item__header.is-active{border-bottom-color:#0000}.el-collapse-item__wrap{will-change:height;background-color:var(--el-collapse-content-bg-color);box-sizing:border-box;border-bottom:1px solid var(--el-collapse-border-color);overflow:hidden}.el-collapse-item__content{font-size:var(--el-collapse-content-font-size);color:var(--el-collapse-content-text-color);padding-bottom:25px;line-height:1.76923}.el-collapse-item:last-child{margin-bottom:-1px}.el-collapse{--el-collapse-border-color:var(--el-border-color-lighter);--el-collapse-header-height:48px;--el-collapse-header-bg-color:var(--el-fill-color-blank);--el-collapse-header-text-color:var(--el-text-color-primary);--el-collapse-header-font-size:13px;--el-collapse-content-bg-color:var(--el-fill-color-blank);--el-collapse-content-font-size:13px;--el-collapse-content-text-color:var(--el-text-color-primary);border-top:1px solid var(--el-collapse-border-color);border-bottom:1px solid var(--el-collapse-border-color)}.el-collapse-icon-position-left .el-collapse-item__header{gap:8px}.el-collapse-icon-position-left .el-collapse-item__title{order:1}.el-collapse-icon-position-right .el-collapse-item__header{padding-right:8px}.el-color-picker-panel{--el-colorpicker-bg-color:var(--el-bg-color-overlay);--el-fill-color-blank:var(--el-colorpicker-bg-color);box-sizing:content-box;background:var(--el-colorpicker-bg-color);width:300px;padding:12px}.el-color-picker-panel.is-border{border:solid 1px var(--el-border-color-lighter);border-radius:4px}.el-color-picker-panel__wrapper{margin-bottom:6px}.el-color-picker-panel__footer{text-align:right;justify-content:space-between;margin-top:12px;display:flex}.el-color-picker-panel__footer .el-input{color:#000;width:160px;font-size:12px;line-height:26px}.el-color-picker-panel.is-disabled .el-color-svpanel,.el-color-picker-panel.is-disabled .el-color-hue-slider{cursor:not-allowed;opacity:.3}.el-color-picker-panel.is-disabled .el-color-hue-slider__thumb{cursor:not-allowed}.el-color-picker-panel.is-disabled .el-color-alpha-slider,.el-color-picker-panel.is-disabled .el-color-predefine .el-color-predefine__color-selector{cursor:not-allowed;opacity:.3}.el-color-predefine{width:280px;margin-top:8px;font-size:12px;display:flex}.el-color-predefine__colors{flex-wrap:wrap;flex:1;gap:8px;display:flex}.el-color-predefine__color-selector{border-radius:var(--el-border-radius-base);cursor:pointer;border:none;outline:none;width:20px;height:20px;padding:0;overflow:hidden}.el-color-predefine__color-selector.selected{box-shadow:0 0 3px 2px var(--el-color-primary)}.el-color-predefine__color-selector:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-color-predefine__color-selector>div{height:100%;display:flex}.el-color-predefine__color-selector.is-alpha{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.el-color-hue-slider{box-sizing:border-box;float:right;background-color:red;width:280px;height:12px;padding:0 2px;position:relative}.el-color-hue-slider__bar{background:linear-gradient(90deg,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red);height:100%;position:relative}.el-color-hue-slider__thumb{cursor:pointer;box-sizing:border-box;border:1px solid var(--el-border-color-lighter);z-index:1;background:#fff;border-radius:1px;width:4px;height:100%;position:absolute;top:0;left:0;box-shadow:0 0 2px #0009}.el-color-hue-slider__thumb:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-hue-slider.is-vertical{width:12px;height:180px;padding:2px 0}.el-color-hue-slider.is-vertical .el-color-hue-slider__bar{background:linear-gradient(red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.el-color-hue-slider.is-vertical .el-color-hue-slider__thumb{width:100%;height:4px;top:0;left:0}.el-color-svpanel{background-image:linear-gradient(#0000,#000),linear-gradient(90deg,#fff,#fff0);width:280px;height:180px;position:relative}.el-color-svpanel__cursor{cursor:pointer;border-radius:50%;width:4px;height:4px;position:absolute;transform:translate(-2px,-2px);box-shadow:0 0 0 1.5px #fff,inset 0 0 1px 1px #0000004d,0 0 1px 2px #0006}.el-color-svpanel__cursor:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-color-alpha-slider{box-sizing:border-box;background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-position:0 0,6px 0,6px -6px,0 6px;background-size:12px 12px;width:280px;height:12px;position:relative}.el-color-alpha-slider.is-disabled .el-color-alpha-slider__thumb{cursor:not-allowed}.el-color-alpha-slider__bar{background:linear-gradient(to right,#fff0 0%,var(--el-bg-color) 100%);height:100%;position:relative}.el-color-alpha-slider__thumb{cursor:pointer;box-sizing:border-box;border:1px solid var(--el-border-color-lighter);z-index:1;background:#fff;border-radius:1px;width:4px;height:100%;position:absolute;top:0;left:0;box-shadow:0 0 2px #0009}.el-color-alpha-slider__thumb:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-alpha-slider.is-vertical{width:20px;height:180px}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__bar{background:linear-gradient(#fff0,#fff)}.el-color-alpha-slider.is-vertical .el-color-alpha-slider__thumb{width:100%;height:4px;top:0;left:0}.el-color-picker-panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker-panel{--el-color-picker-alpha-bg-a:#333}.el-color-picker{outline:none;width:32px;height:32px;line-height:normal;display:inline-block;position:relative}.el-color-picker:hover:not(:-webkit-any(.is-disabled,.is-focused)) .el-color-picker__trigger{border-color:var(--el-border-color-hover)}.el-color-picker:hover:not(:is(.is-disabled,.is-focused)) .el-color-picker__trigger{border-color:var(--el-border-color-hover)}.el-color-picker:focus-visible:not(.is-disabled) .el-color-picker__trigger{outline:2px solid var(--el-color-primary);outline-offset:1px}.el-color-picker.is-focused .el-color-picker__trigger{border-color:var(--el-color-primary)}.el-color-picker.is-disabled .el-color-picker__trigger{cursor:not-allowed;background-color:var(--el-fill-color-light)}.el-color-picker.is-disabled .el-color-picker__color{opacity:.3}.el-color-picker--large{width:40px;height:40px}.el-color-picker--small{width:24px;height:24px}.el-color-picker--small .el-color-picker__icon,.el-color-picker--small .el-color-picker__empty{transform:scale(.8)}.el-color-picker__trigger{box-sizing:border-box;border:1px solid var(--el-border-color);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;width:100%;height:100%;padding:4px;font-size:0;display:inline-flex;position:relative}.el-color-picker__color{box-sizing:border-box;border:1px solid var(--el-text-color-secondary);border-radius:var(--el-border-radius-small);text-align:center;width:100%;height:100%;display:block;position:relative}.el-color-picker__color.is-alpha{background-image:linear-gradient(45deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-a) 25%,var(--el-color-picker-alpha-bg-b) 25%),linear-gradient(45deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%),linear-gradient(135deg,var(--el-color-picker-alpha-bg-b) 75%,var(--el-color-picker-alpha-bg-a) 75%);background-position:0 0,6px 0,6px -6px,0 6px;background-size:12px 12px}.el-color-picker__color-inner{justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex}.el-color-picker .el-color-picker__empty{color:var(--el-text-color-secondary);font-size:12px}.el-color-picker .el-color-picker__icon{color:#fff;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.el-color-picker__panel{border-radius:var(--el-border-radius-base);box-shadow:var(--el-box-shadow-light);background-color:#fff}.el-color-picker__panel.el-popper{border:1px solid var(--el-border-color-lighter)}.el-color-picker,.el-color-picker__panel{--el-color-picker-alpha-bg-a:#ccc;--el-color-picker-alpha-bg-b:transparent}.dark .el-color-picker,.dark .el-color-picker__panel{--el-color-picker-alpha-bg-a:#333}.el-container{box-sizing:border-box;flex-direction:row;flex:auto;min-width:0;display:flex}.el-container.is-vertical{flex-direction:column}.el-date-table{-webkit-user-select:none;user-select:none;font-size:12px}.el-date-table.is-week-mode .el-date-table__row:hover .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table.is-week-mode .el-date-table__row:hover td.available:hover{color:var(--el-datepicker-text-color)}.el-date-table.is-week-mode .el-date-table__row:hover td:first-child .el-date-table-cell{border-top-left-radius:15px;border-bottom-left-radius:15px;margin-left:5px}.el-date-table.is-week-mode .el-date-table__row:hover td:last-child .el-date-table-cell{border-top-right-radius:15px;border-bottom-right-radius:15px;margin-right:5px}.el-date-table.is-week-mode .el-date-table__row.current .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td{box-sizing:border-box;text-align:center;cursor:pointer;width:32px;height:30px;padding:4px 0;position:relative}.el-date-table td .el-date-table-cell{box-sizing:border-box;height:30px;padding:3px 0}.el-date-table td .el-date-table-cell .el-date-table-cell__text{border-radius:50%;width:24px;height:24px;margin:0 auto;line-height:24px;display:block;position:absolute;left:50%;transform:translate(-50%)}.el-date-table td.next-month,.el-date-table td.prev-month{color:var(--el-datepicker-off-text-color)}.el-date-table td.today{position:relative}.el-date-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-date-table td.today.start-date .el-date-table-cell__text,.el-date-table td.today.end-date .el-date-table-cell__text{color:#fff}.el-date-table td.available:hover{color:var(--el-datepicker-hover-text-color)}.el-date-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-date-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-date-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-date-table td.current:not(.disabled):focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-date-table td.start-date .el-date-table-cell,.el-date-table td.end-date .el-date-table-cell{color:#fff}.el-date-table td.start-date .el-date-table-cell__text,.el-date-table td.end-date .el-date-table-cell__text{background-color:var(--el-datepicker-active-color)}.el-date-table td.start-date .el-date-table-cell{border-top-left-radius:15px;border-bottom-left-radius:15px;margin-left:5px}.el-date-table td.end-date .el-date-table-cell{border-top-right-radius:15px;border-bottom-right-radius:15px;margin-right:5px}.el-date-table td.disabled .el-date-table-cell{background-color:var(--el-fill-color-light);opacity:1;cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-date-table td.selected .el-date-table-cell{border-radius:15px;margin-left:5px;margin-right:5px}.el-date-table td.selected .el-date-table-cell__text{background-color:var(--el-datepicker-active-color);color:#fff;border-radius:15px}.el-date-table td.week{color:var(--el-datepicker-off-text-color);cursor:default;font-size:80%}.el-date-table td:focus{outline:none}.el-date-table th{color:var(--el-datepicker-header-text-color);border-bottom:solid 1px var(--el-border-color-lighter);padding:5px;font-weight:400}.el-date-table th.el-date-table__week-header{width:24px;padding:0}.el-month-table{border-collapse:collapse;margin:-1px;font-size:12px}.el-month-table td{text-align:center;cursor:pointer;width:68px;padding:8px 0;position:relative}.el-month-table td .el-date-table-cell{box-sizing:border-box;height:48px;padding:6px 0}.el-month-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-month-table td.today.start-date .el-date-table-cell__text,.el-month-table td.today.end-date .el-date-table-cell__text{color:#fff}.el-month-table td.disabled .el-date-table-cell__text{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-month-table td.disabled .el-date-table-cell__text:hover{color:var(--el-text-color-placeholder)}.el-month-table td .el-date-table-cell__text{width:54px;height:36px;color:var(--el-datepicker-text-color);border-radius:18px;margin:0 auto;line-height:36px;display:block;position:absolute;left:50%;transform:translate(-50%)}.el-month-table td .el-date-table-cell__text:hover{color:var(--el-datepicker-hover-text-color)}.el-month-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-month-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-month-table td.start-date .el-date-table-cell,.el-month-table td.end-date .el-date-table-cell{color:#fff}.el-month-table td.start-date .el-date-table-cell__text,.el-month-table td.end-date .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-month-table td.start-date .el-date-table-cell{border-top-left-radius:24px;border-bottom-left-radius:24px;margin-left:3px}.el-month-table td.end-date .el-date-table-cell{border-top-right-radius:24px;border-bottom-right-radius:24px;margin-right:3px}.el-month-table td.current:not(.disabled) .el-date-table-cell{border-radius:24px;margin-left:3px;margin-right:3px}.el-month-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-month-table td:focus-visible{outline:none}.el-month-table td:focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-year-table{border-collapse:collapse;margin:-1px;font-size:12px}.el-year-table .el-icon{color:var(--el-datepicker-icon-color)}.el-year-table td{text-align:center;cursor:pointer;width:68px;padding:8px 0;position:relative}.el-year-table td .el-date-table-cell{box-sizing:border-box;height:48px;padding:6px 0}.el-year-table td.today .el-date-table-cell__text{color:var(--el-color-primary);font-weight:700}.el-year-table td.today.start-date .el-date-table-cell__text,.el-year-table td.today.end-date .el-date-table-cell__text{color:#fff}.el-year-table td.disabled .el-date-table-cell__text{background-color:var(--el-fill-color-light);cursor:not-allowed;color:var(--el-text-color-placeholder)}.el-year-table td.disabled .el-date-table-cell__text:hover{color:var(--el-text-color-placeholder)}.el-year-table td .el-date-table-cell__text{width:60px;height:36px;color:var(--el-datepicker-text-color);border-radius:18px;margin:0 auto;line-height:36px;display:block;position:absolute;left:50%;transform:translate(-50%)}.el-year-table td .el-date-table-cell__text:hover{color:var(--el-datepicker-hover-text-color)}.el-year-table td.in-range .el-date-table-cell{background-color:var(--el-datepicker-inrange-bg-color)}.el-year-table td.in-range .el-date-table-cell:hover{background-color:var(--el-datepicker-inrange-hover-bg-color)}.el-year-table td.start-date .el-date-table-cell,.el-year-table td.end-date .el-date-table-cell{color:#fff}.el-year-table td.start-date .el-date-table-cell__text,.el-year-table td.end-date .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-year-table td.start-date .el-date-table-cell{border-top-left-radius:24px;border-bottom-left-radius:24px}.el-year-table td.end-date .el-date-table-cell{border-top-right-radius:24px;border-bottom-right-radius:24px}.el-year-table td.current:not(.disabled) .el-date-table-cell__text{color:#fff;background-color:var(--el-datepicker-active-color)}.el-year-table td:focus-visible{outline:none}.el-year-table td:focus-visible .el-date-table-cell__text{outline:2px solid var(--el-datepicker-active-color);outline-offset:1px}.el-time-spinner.has-seconds .el-time-spinner__wrapper{width:33.3%}.el-time-spinner__wrapper{vertical-align:top;width:50%;max-height:192px;display:inline-block;position:relative;overflow:auto}.el-time-spinner__wrapper.el-scrollbar__wrap:not(.el-scrollbar__wrap--hidden-default){padding-bottom:15px}.el-time-spinner__wrapper.is-arrow{box-sizing:border-box;text-align:center;overflow:hidden}.el-time-spinner__wrapper.is-arrow .el-time-spinner__list{transform:translateY(-32px)}.el-time-spinner__wrapper.is-arrow .el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:default}.el-time-spinner__arrow{color:var(--el-text-color-secondary);width:100%;z-index:var(--el-index-normal);text-align:center;cursor:pointer;height:30px;font-size:12px;line-height:30px;position:absolute;left:0}.el-time-spinner__arrow:hover{color:var(--el-color-primary)}.el-time-spinner__arrow.arrow-up{top:10px}.el-time-spinner__arrow.arrow-down{bottom:10px}.el-time-spinner__input.el-input{width:70%}.el-time-spinner__input.el-input .el-input__inner{text-align:center;padding:0}.el-time-spinner__list{text-align:center;margin:0;padding:0;list-style:none}.el-time-spinner__list:after,.el-time-spinner__list:before{content:"";width:100%;height:80px;display:block}.el-time-spinner__item{height:32px;color:var(--el-text-color-regular);font-size:12px;line-height:32px}.el-time-spinner__item:hover:not(.is-disabled):not(.is-active){background:var(--el-fill-color-light);cursor:pointer}.el-time-spinner__item.is-active:not(.is-disabled){color:var(--el-text-color-primary);font-weight:700}.el-time-spinner__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-picker__popper{--el-datepicker-border-color:var(--el-disabled-border-color)}.el-picker__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-datepicker-border-color);box-shadow:var(--el-box-shadow-light)}.el-picker__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-datepicker-border-color)}.el-picker__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-picker__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-picker__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-picker__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-date-editor{--el-date-editor-width:220px;--el-date-editor-monthrange-width:300px;--el-date-editor-daterange-width:350px;--el-date-editor-datetimerange-width:400px;--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;text-align:left;vertical-align:middle;position:relative}.el-date-editor.el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset}.el-date-editor.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-date-editor.is-focus .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-date-editor.el-input,.el-date-editor.el-input__wrapper{width:var(--el-date-editor-width);height:var(--el-input-height,var(--el-component-size))}.el-date-editor--monthrange{--el-date-editor-width:var(--el-date-editor-monthrange-width)}.el-date-editor--daterange,.el-date-editor--timerange{--el-date-editor-width:var(--el-date-editor-daterange-width)}.el-date-editor--datetimerange{--el-date-editor-width:var(--el-date-editor-datetimerange-width)}.el-date-editor--dates .el-input__wrapper{text-overflow:ellipsis;white-space:nowrap}.el-date-editor .close-icon,.el-date-editor .clear-icon{cursor:pointer}.el-date-editor .clear-icon:hover{color:var(--el-input-clear-hover-color)}.el-date-editor .el-range__icon{height:inherit;color:var(--el-text-color-placeholder);float:left;font-size:14px}.el-date-editor .el-range__icon svg{vertical-align:middle}.el-date-editor .el-range-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;width:39%;height:30px;line-height:30px;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);background-color:#0000;border:none;outline:none;margin:0;padding:0;display:inline-block}.el-date-editor .el-range-input::placeholder{color:var(--el-text-color-placeholder)}.el-date-editor .el-range-separator{overflow-wrap:break-word;height:100%;color:var(--el-text-color-primary);flex:1;justify-content:center;align-items:center;margin:0;padding:0 5px;font-size:14px;display:inline-flex}.el-date-editor .el-range__close-icon{color:var(--el-text-color-placeholder);height:inherit;width:unset;cursor:pointer;font-size:14px}.el-date-editor .el-range__close-icon:hover{color:var(--el-input-clear-hover-color)}.el-date-editor .el-range__close-icon svg{vertical-align:middle}.el-date-editor .el-range__close-icon--hidden{opacity:0;visibility:hidden}.el-range-editor.el-input__wrapper{vertical-align:middle;align-items:center;padding:0 10px;display:inline-flex}.el-range-editor.is-active,.el-range-editor.is-active:hover{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-range-editor--large{line-height:var(--el-component-size-large)}.el-range-editor--large.el-input__wrapper{height:var(--el-component-size-large)}.el-range-editor--large .el-range-separator{font-size:14px;line-height:40px}.el-range-editor--large .el-range-input{height:38px;font-size:14px;line-height:38px}.el-range-editor--small{line-height:var(--el-component-size-small)}.el-range-editor--small.el-input__wrapper{height:var(--el-component-size-small)}.el-range-editor--small .el-range-separator{font-size:12px;line-height:24px}.el-range-editor--small .el-range-input{height:22px;font-size:12px;line-height:22px}.el-range-editor.is-disabled{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled:hover,.el-range-editor.is-disabled:focus{border-color:var(--el-disabled-border-color)}.el-range-editor.is-disabled input{background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-range-editor.is-disabled input::placeholder{color:var(--el-text-color-placeholder)}.el-range-editor.is-disabled .el-range-separator{color:var(--el-disabled-text-color)}.el-picker-panel{color:var(--el-text-color-regular);background:var(--el-datepicker-bg-color);border-radius:var(--el-popper-border-radius,var(--el-border-radius-base));line-height:30px}.el-picker-panel .el-time-panel{border:solid 1px var(--el-datepicker-border-color);background-color:var(--el-datepicker-bg-color);box-shadow:var(--el-box-shadow-light);margin:5px 0}.el-picker-panel__body:after,.el-picker-panel__body-wrapper:after{content:"";clear:both;display:table}.el-picker-panel__content{margin:15px;position:relative}.el-picker-panel__footer{border-top:1px solid var(--el-datepicker-inner-border-color);text-align:right;background-color:var(--el-datepicker-bg-color);padding:4px 12px;font-size:0;position:relative}.el-picker-panel__shortcut{width:100%;color:var(--el-datepicker-text-color);text-align:left;cursor:pointer;background-color:#0000;border:0;outline:none;padding-left:12px;font-size:14px;line-height:28px;display:block}.el-picker-panel__shortcut:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__shortcut.active{color:var(--el-datepicker-active-color);background-color:#e6f1fe}.el-picker-panel__btn{border:1px solid var(--el-fill-color-darker);color:var(--el-text-color-primary);cursor:pointer;background-color:#0000;border-radius:2px;outline:none;padding:0 20px;font-size:12px;line-height:24px}.el-picker-panel__btn[disabled]{color:var(--el-text-color-disabled);cursor:not-allowed}.el-picker-panel__icon-btn{color:var(--el-datepicker-icon-color);cursor:pointer;background:0 0;border:0;outline:none;margin-top:8px;padding:1px 6px;font-size:12px;line-height:1}.el-picker-panel__icon-btn:hover{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn:focus-visible{color:var(--el-datepicker-hover-text-color)}.el-picker-panel__icon-btn.is-disabled{color:var(--el-text-color-disabled)}.el-picker-panel__icon-btn.is-disabled:hover{cursor:not-allowed}.el-picker-panel__icon-btn.is-disabled .el-icon{cursor:inherit}.el-picker-panel__icon-btn .el-icon{cursor:pointer;font-size:inherit}.el-picker-panel__link-btn{vertical-align:middle}.el-picker-panel.is-disabled .el-picker-panel__prev-btn{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__prev-btn:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__prev-btn .el-icon{cursor:inherit}.el-picker-panel.is-disabled .el-picker-panel__next-btn{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__next-btn:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__next-btn .el-icon{cursor:inherit}.el-picker-panel.is-disabled .el-picker-panel__icon-btn{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__icon-btn:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__icon-btn .el-icon{cursor:inherit}.el-picker-panel.is-disabled .el-picker-panel__shortcut{color:var(--el-text-color-disabled)}.el-picker-panel.is-disabled .el-picker-panel__shortcut:hover{cursor:not-allowed}.el-picker-panel.is-disabled .el-picker-panel__shortcut .el-icon{cursor:inherit}.el-picker-panel [slot=sidebar],.el-picker-panel__sidebar{border-right:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:110px;padding-top:6px;position:absolute;top:0;bottom:0;overflow:auto}.el-picker-panel [slot=sidebar]+.el-picker-panel__body,.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:110px}.el-date-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);--el-datepicker-bg-color:var(--el-bg-color-overlay);--el-fill-color-blank:var(--el-datepicker-bg-color);width:322px}.el-date-picker.has-sidebar.has-time{width:434px}.el-date-picker.has-sidebar{width:438px}.el-date-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-picker .el-picker-panel__content{width:292px}.el-date-picker table{table-layout:fixed;width:100%}.el-date-picker__editor-wrap{padding:0 5px;display:table-cell;position:relative}.el-date-picker__time-header{border-bottom:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:100%;padding:8px 5px 5px;font-size:12px;display:table;position:relative}.el-date-picker__header{text-align:center;padding:12px 12px 0}.el-date-picker__header--bordered{border-bottom:solid 1px var(--el-border-color-lighter);margin-bottom:0;padding-bottom:12px}.el-date-picker__header--bordered+.el-picker-panel__content{margin-top:0}.el-date-picker__header-label{text-align:center;cursor:pointer;color:var(--el-text-color-regular);padding:0 5px;font-size:16px;font-weight:500;line-height:22px}.el-date-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-picker__header-label:focus-visible{color:var(--el-datepicker-hover-text-color);outline:none}.el-date-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-picker__prev-btn{float:left}.el-date-picker__next-btn{float:right}.el-date-picker__time-wrap{text-align:center;padding:10px}.el-date-picker__time-label{float:left;cursor:pointer;margin-left:10px;line-height:30px}.el-date-picker .el-time-panel{position:absolute}.el-date-picker.is-disabled .el-date-picker__header-label{color:var(--el-text-color-disabled)}.el-date-picker.is-disabled .el-date-picker__header-label:hover{cursor:not-allowed}.el-date-picker.is-disabled .el-date-picker__header-label .el-icon{cursor:inherit}.el-date-range-picker{--el-datepicker-text-color:var(--el-text-color-regular);--el-datepicker-off-text-color:var(--el-text-color-placeholder);--el-datepicker-header-text-color:var(--el-text-color-regular);--el-datepicker-icon-color:var(--el-text-color-primary);--el-datepicker-border-color:var(--el-disabled-border-color);--el-datepicker-inner-border-color:var(--el-border-color-light);--el-datepicker-inrange-bg-color:var(--el-border-color-extra-light);--el-datepicker-inrange-hover-bg-color:var(--el-border-color-extra-light);--el-datepicker-active-color:var(--el-color-primary);--el-datepicker-hover-text-color:var(--el-color-primary);--el-datepicker-bg-color:var(--el-bg-color-overlay);width:646px}.el-date-range-picker.has-sidebar{width:756px}.el-date-range-picker.has-time .el-picker-panel__body-wrapper{position:relative}.el-date-range-picker table{table-layout:fixed;width:100%}.el-date-range-picker .el-picker-panel__body{min-width:513px}.el-date-range-picker .el-picker-panel__content{margin:0}.el-date-range-picker__header{text-align:center;height:28px;position:relative}.el-date-range-picker__header [class*=arrow-left]{float:left}.el-date-range-picker__header [class*=arrow-right]{float:right}.el-date-range-picker__header div{margin-right:50px;font-size:16px;font-weight:500}.el-date-range-picker__header-label{text-align:center;cursor:pointer;color:var(--el-text-color-regular);padding:0 5px;font-size:16px;font-weight:500;line-height:22px}.el-date-range-picker__header-label:hover{color:var(--el-datepicker-hover-text-color)}.el-date-range-picker__header-label:focus-visible{color:var(--el-datepicker-hover-text-color);outline:none}.el-date-range-picker__header-label.active{color:var(--el-datepicker-active-color)}.el-date-range-picker__content{box-sizing:border-box;width:50%;margin:0;padding:16px;display:table-cell}.el-date-range-picker__content.is-left{border-right:1px solid var(--el-datepicker-inner-border-color)}.el-date-range-picker__content .el-date-range-picker__header div{margin-left:50px;margin-right:50px}.el-date-range-picker__editors-wrap{box-sizing:border-box;display:table-cell}.el-date-range-picker__editors-wrap.is-right{text-align:right}.el-date-range-picker__time-header{border-bottom:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:100%;padding:8px 5px 5px;font-size:12px;display:table;position:relative}.el-date-range-picker__time-header>.el-icon-arrow-right{vertical-align:middle;color:var(--el-datepicker-icon-color);font-size:20px;display:table-cell}.el-date-range-picker__time-picker-wrap{padding:0 5px;display:table-cell;position:relative}.el-date-range-picker__time-picker-wrap .el-picker-panel{z-index:1;background:#fff;position:absolute;top:13px;right:0}.el-date-range-picker__time-picker-wrap .el-time-panel{position:absolute}.el-date-range-picker.is-disabled .el-date-range-picker__header-label{color:var(--el-text-color-disabled)}.el-date-range-picker.is-disabled .el-date-range-picker__header-label:hover{cursor:not-allowed}.el-date-range-picker.is-disabled .el-date-range-picker__header-label .el-icon{cursor:inherit}.el-time-range-picker{width:354px;overflow:visible}.el-time-range-picker__content{text-align:center;z-index:1;padding:10px;position:relative}.el-time-range-picker__cell{box-sizing:border-box;width:50%;margin:0;padding:4px 7px 7px;display:inline-block}.el-time-range-picker__header{text-align:center;margin-bottom:5px;font-size:14px}.el-time-range-picker__body{border:1px solid var(--el-datepicker-border-color);border-radius:2px}.el-time-panel{width:180px;z-index:var(--el-index-top);-webkit-user-select:none;user-select:none;box-sizing:content-box;border-radius:2px;position:relative;left:0}.el-time-panel__content{font-size:0;position:relative;overflow:hidden}.el-time-panel__content:after,.el-time-panel__content:before{content:"";z-index:-1;box-sizing:border-box;text-align:left;height:32px;margin-top:-16px;padding-top:6px;position:absolute;top:50%;left:0;right:0}.el-time-panel__content:after{margin-left:12%;margin-right:12%;left:50%}.el-time-panel__content:before{border-top:1px solid var(--el-border-color-light);border-bottom:1px solid var(--el-border-color-light);margin-left:12%;margin-right:12%;padding-left:50%}.el-time-panel__content.has-seconds:after{left:66.6667%}.el-time-panel__content.has-seconds:before{padding-left:33.3333%}.el-time-panel__footer{border-top:1px solid var(--el-timepicker-inner-border-color,var(--el-border-color-light));text-align:right;box-sizing:border-box;height:36px;padding:4px;line-height:25px}.el-time-panel__btn{cursor:pointer;color:var(--el-text-color-primary);background-color:#0000;border:none;outline:none;margin:0 5px;padding:0 5px;font-size:12px;line-height:28px}.el-time-panel__btn.confirm{color:var(--el-timepicker-active-color,var(--el-color-primary));font-weight:800}.el-picker-panel.is-border{border:solid 1px var(--el-border-color-lighter)}.el-picker-panel.is-border .el-picker-panel__body-wrapper{position:relative}.el-picker-panel.is-border.el-picker-panel [slot=sidebar],.el-picker-panel.is-border.el-picker-panel__sidebar{border-right:1px solid var(--el-datepicker-inner-border-color);box-sizing:border-box;width:110px;height:100%;padding-top:6px;position:absolute;top:0;overflow:auto}.el-descriptions{--el-descriptions-table-border:1px solid var(--el-border-color-lighter);--el-descriptions-item-bordered-label-background:var(--el-fill-color-light);box-sizing:border-box;font-size:var(--el-font-size-base);color:var(--el-text-color-primary)}.el-descriptions__header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.el-descriptions__title{color:var(--el-text-color-primary);font-size:16px;font-weight:700}.el-descriptions__body{background-color:var(--el-fill-color-blank)}.el-descriptions__body .el-descriptions__table{border-collapse:collapse;width:100%}.el-descriptions__body .el-descriptions__table .el-descriptions__cell{box-sizing:border-box;text-align:left;font-size:14px;line-height:23px}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-left{text-align:left}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-center{text-align:center}.el-descriptions__body .el-descriptions__table .el-descriptions__cell.is-right{text-align:right}.el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{border:var(--el-descriptions-table-border);padding:8px 11px}.el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:12px}.el-descriptions--large{font-size:14px}.el-descriptions--large .el-descriptions__header{margin-bottom:20px}.el-descriptions--large .el-descriptions__header .el-descriptions__title{font-size:16px}.el-descriptions--large .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:14px}.el-descriptions--large .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:12px 15px}.el-descriptions--large .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:16px}.el-descriptions--small{font-size:12px}.el-descriptions--small .el-descriptions__header{margin-bottom:12px}.el-descriptions--small .el-descriptions__header .el-descriptions__title{font-size:14px}.el-descriptions--small .el-descriptions__body .el-descriptions__table .el-descriptions__cell{font-size:12px}.el-descriptions--small .el-descriptions__body .el-descriptions__table.is-bordered .el-descriptions__cell{padding:4px 7px}.el-descriptions--small .el-descriptions__body .el-descriptions__table:not(.is-bordered) .el-descriptions__cell{padding-bottom:8px}.el-descriptions__label.el-descriptions__cell.is-bordered-label{color:var(--el-text-color-regular);background:var(--el-descriptions-item-bordered-label-background);font-weight:700}.el-descriptions__label:not(.is-bordered-label){color:var(--el-text-color-primary);margin-right:16px}.el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:6px}.el-descriptions__content.el-descriptions__cell.is-bordered-content{color:var(--el-text-color-primary)}.el-descriptions__content:not(.is-bordered-label){color:var(--el-text-color-regular)}.el-descriptions--large .el-descriptions__label:not(.is-bordered-label){margin-right:16px}.el-descriptions--large .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:8px}.el-descriptions--small .el-descriptions__label:not(.is-bordered-label){margin-right:12px}.el-descriptions--small .el-descriptions__label.el-descriptions__cell:not(.is-bordered-label).is-vertical-label{padding-bottom:4px}.el-divider{position:relative}.el-divider--horizontal{border-top:1px var(--el-border-color) var(--el-border-style);width:100%;height:1px;margin:24px 0;display:block}.el-divider--vertical{vertical-align:middle;border-left:1px var(--el-border-color) var(--el-border-style);width:1px;height:1em;margin:0 8px;display:inline-block;position:relative}.el-divider__text{background-color:var(--el-bg-color);color:var(--el-text-color-primary);padding:0 20px;font-size:14px;font-weight:500;position:absolute}.el-divider__text.is-left{left:20px;transform:translateY(-50%)}.el-divider__text.is-center{left:50%;transform:translate(-50%)translateY(-50%)}.el-divider__text.is-right{right:20px;transform:translateY(-50%)}.el-overlay.is-drawer{overflow:hidden}.el-drawer{--el-drawer-bg-color:var(--el-dialog-bg-color,var(--el-bg-color));--el-drawer-padding-primary:var(--el-dialog-padding-primary,20px);--el-drawer-dragger-size:8px;box-sizing:border-box;background-color:var(--el-drawer-bg-color);box-shadow:var(--el-box-shadow-dark);transition:all var(--el-transition-duration);flex-direction:column;display:flex;position:absolute}.el-drawer .rtl,.el-drawer .ltr,.el-drawer .ttb,.el-drawer .btt{transform:translate(0)}.el-drawer__sr-focus:focus{outline:none!important}.el-drawer__header{color:var(--el-text-color-primary);padding:var(--el-drawer-padding-primary);align-items:center;margin-bottom:32px;padding-bottom:0;display:flex;overflow:hidden}.el-drawer__header>:first-child{flex:1}.el-drawer__title{line-height:inherit;flex:1;margin:0;font-size:16px}.el-drawer__footer{padding:var(--el-drawer-padding-primary);text-align:right;padding-top:10px;overflow:hidden}.el-drawer__close-btn{cursor:pointer;font-size:var(--el-font-size-extra-large);color:inherit;background-color:#0000;border:none;outline:none;display:inline-flex}.el-drawer__close-btn:focus i,.el-drawer__close-btn:hover i{color:var(--el-color-primary)}.el-drawer__body{padding:var(--el-drawer-padding-primary);flex:1;overflow:auto}.el-drawer__body>*{box-sizing:border-box}.el-drawer.is-dragging{transition:none}.el-drawer__dragger{-webkit-user-select:none;user-select:none;background-color:#0000;transition:all .2s;position:absolute}.el-drawer__dragger:before{content:"";background-color:#0000;transition:all .2s;position:absolute}.el-drawer__dragger:hover:before{background-color:var(--el-color-primary)}.el-drawer.ltr,.el-drawer.rtl{height:100%;top:0;bottom:0}.el-drawer.ltr>.el-drawer__dragger,.el-drawer.rtl>.el-drawer__dragger{height:100%;width:var(--el-drawer-dragger-size);cursor:ew-resize;top:0;bottom:0}.el-drawer.ltr>.el-drawer__dragger:before,.el-drawer.rtl>.el-drawer__dragger:before{width:3px;top:0;bottom:0}.el-drawer.ttb,.el-drawer.btt{width:100%;left:0;right:0}.el-drawer.ttb>.el-drawer__dragger,.el-drawer.btt>.el-drawer__dragger{width:100%;height:var(--el-drawer-dragger-size);cursor:ns-resize;left:0;right:0}.el-drawer.ttb>.el-drawer__dragger:before,.el-drawer.btt>.el-drawer__dragger:before{height:3px;left:0;right:0}.el-drawer.ltr{left:0}.el-drawer.ltr>.el-drawer__dragger{right:0}.el-drawer.ltr>.el-drawer__dragger:before{right:-2px}.el-drawer.rtl{right:0}.el-drawer.rtl>.el-drawer__dragger{left:0}.el-drawer.rtl>.el-drawer__dragger:before{left:-2px}.el-drawer.ttb{top:0}.el-drawer.ttb>.el-drawer__dragger{bottom:0}.el-drawer.ttb>.el-drawer__dragger:before{bottom:-2px}.el-drawer.btt{bottom:0}.el-drawer.btt>.el-drawer__dragger{top:0}.el-drawer.btt>.el-drawer__dragger:before{top:-2px}.el-modal-drawer.is-penetrable{pointer-events:none}.el-modal-drawer.is-penetrable .el-drawer{pointer-events:auto}.el-drawer-fade-enter-active,.el-drawer-fade-leave-active{transition:all var(--el-transition-duration)}.el-drawer-fade-enter-from,.el-drawer-fade-enter-active,.el-drawer-fade-enter-to,.el-drawer-fade-leave-from,.el-drawer-fade-leave-active,.el-drawer-fade-leave-to{overflow:hidden!important}.el-drawer-fade-enter-from,.el-drawer-fade-leave-to{background-color:#0000!important}.el-drawer-fade-enter-from .rtl,.el-drawer-fade-leave-to .rtl{transform:translate(100%)}.el-drawer-fade-enter-from .ltr,.el-drawer-fade-leave-to .ltr{transform:translate(-100%)}.el-drawer-fade-enter-from .ttb,.el-drawer-fade-leave-to .ttb{transform:translateY(-100%)}.el-drawer-fade-enter-from .btt,.el-drawer-fade-leave-to .btt{transform:translateY(100%)}.el-dropdown{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10;color:var(--el-text-color-regular);font-size:var(--el-font-size-base);vertical-align:top;line-height:1;display:inline-flex;position:relative}.el-dropdown.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-dropdown__popper{--el-dropdown-menu-box-shadow:var(--el-box-shadow-light);--el-dropdown-menuItem-hover-fill:var(--el-color-primary-light-9);--el-dropdown-menuItem-hover-color:var(--el-color-primary);--el-dropdown-menu-index:10}.el-dropdown__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-dropdown-menu-box-shadow)}.el-dropdown__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-dropdown__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-dropdown__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-dropdown__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-dropdown__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-dropdown__popper .el-dropdown-menu{border:none}.el-dropdown__popper .el-dropdown__popper-selfdefine{outline:none}.el-dropdown__popper .el-scrollbar__bar{z-index:calc(var(--el-dropdown-menu-index) + 1)}.el-dropdown__popper .el-dropdown__list{box-sizing:border-box;margin:0;padding:0;list-style:none}.el-dropdown .el-dropdown__caret-button{border-left:none;justify-content:center;align-items:center;width:32px;padding-left:0;padding-right:0;display:inline-flex}.el-dropdown .el-dropdown__caret-button>span{display:inline-flex}.el-dropdown .el-dropdown__caret-button:before{content:"";background:var(--el-overlay-color-lighter);width:1px;display:block;position:absolute;top:-1px;bottom:-1px;left:0}.el-dropdown .el-dropdown__caret-button.el-button:before{background:var(--el-border-color);opacity:.5}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{font-size:inherit;padding-left:0}.el-dropdown .el-dropdown-selfdefine{outline:none}.el-dropdown--large .el-dropdown__caret-button{width:40px}.el-dropdown--small .el-dropdown__caret-button{width:24px}.el-dropdown-menu{z-index:var(--el-dropdown-menu-index);background-color:var(--el-bg-color-overlay);border-radius:var(--el-border-radius-base);box-shadow:none;border:none;margin:0;padding:5px 0;list-style:none;position:relative;top:0;left:0}.el-dropdown-menu__item{white-space:nowrap;line-height:22px;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:none;align-items:center;margin:0;padding:5px 16px;list-style:none;display:flex}.el-dropdown-menu__item:not(.is-disabled):hover,.el-dropdown-menu__item:not(.is-disabled):focus{background-color:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{border-top:1px solid var(--el-border-color-lighter);margin:6px 0}.el-dropdown-menu__item.is-disabled{cursor:not-allowed;color:var(--el-text-color-disabled)}.el-dropdown-menu--large{padding:7px 0}.el-dropdown-menu--large .el-dropdown-menu__item{padding:7px 20px;font-size:14px;line-height:22px}.el-dropdown-menu--large .el-dropdown-menu__item--divided{margin:8px 0}.el-dropdown-menu--small{padding:3px 0}.el-dropdown-menu--small .el-dropdown-menu__item{padding:2px 12px;font-size:12px;line-height:20px}.el-dropdown-menu--small .el-dropdown-menu__item--divided{margin:4px 0}.el-empty{--el-empty-padding:40px 0;--el-empty-image-width:160px;--el-empty-description-margin-top:20px;--el-empty-bottom-margin-top:20px;--el-empty-fill-color-0:var(--el-color-white);--el-empty-fill-color-1:#fcfcfd;--el-empty-fill-color-2:#f8f9fb;--el-empty-fill-color-3:#f7f8fc;--el-empty-fill-color-4:#eeeff3;--el-empty-fill-color-5:#edeef2;--el-empty-fill-color-6:#e9ebef;--el-empty-fill-color-7:#e5e7e9;--el-empty-fill-color-8:#e0e3e9;--el-empty-fill-color-9:#d5d7de;text-align:center;box-sizing:border-box;padding:var(--el-empty-padding);flex-direction:column;justify-content:center;align-items:center;display:flex}.el-empty__image{width:var(--el-empty-image-width)}.el-empty__image img{-webkit-user-select:none;user-select:none;vertical-align:top;object-fit:contain;width:100%;height:100%}.el-empty__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;vertical-align:top;width:100%;height:100%}.el-empty__description{margin-top:var(--el-empty-description-margin-top)}.el-empty__description p{font-size:var(--el-font-size-base);color:var(--el-text-color-secondary);margin:0}.el-empty__bottom{margin-top:var(--el-empty-bottom-margin-top)}.el-footer{--el-footer-padding:0 20px;--el-footer-height:60px;padding:var(--el-footer-padding);box-sizing:border-box;height:var(--el-footer-height);flex-shrink:0}.el-form-item{--font-size:14px;margin-bottom:18px;display:flex}.el-form-item .el-form-item{margin-bottom:0}.el-form-item .el-input__validateIcon{display:none}.el-form-item--large{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:22px}.el-form-item--large .el-form-item__label{height:40px;line-height:40px}.el-form-item--large .el-form-item__content{line-height:40px}.el-form-item--large .el-form-item__error{padding-top:4px}.el-form-item--default{--font-size:14px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--default .el-form-item__label{height:32px;line-height:32px}.el-form-item--default .el-form-item__content{line-height:32px}.el-form-item--default .el-form-item__error{padding-top:2px}.el-form-item--small{--font-size:12px;--el-form-label-font-size:var(--font-size);margin-bottom:18px}.el-form-item--small .el-form-item__label{height:24px;line-height:24px}.el-form-item--small .el-form-item__content{line-height:24px}.el-form-item--small .el-form-item__error{padding-top:2px}.el-form-item--label-left .el-form-item__label{text-align:left;justify-content:flex-start}.el-form-item--label-right .el-form-item__label{text-align:right;justify-content:flex-end}.el-form-item--label-top{display:block}.el-form-item--label-top .el-form-item__label{text-align:left;width:-moz-fit-content;width:fit-content;height:auto;margin-bottom:8px;padding-right:0;line-height:22px;display:block}.el-form-item__label-wrap{display:flex}.el-form-item__label{font-size:var(--el-form-label-font-size);color:var(--el-text-color-regular);box-sizing:border-box;flex:none;align-items:flex-start;height:32px;padding:0 12px 0 0;line-height:32px;display:inline-flex}.el-form-item__content{line-height:32px;font-size:var(--font-size);flex-wrap:wrap;flex:1;align-items:center;min-width:0;display:flex;position:relative}.el-form-item__content .el-input-group{vertical-align:top}.el-form-item__error{color:var(--el-color-danger);padding-top:2px;font-size:12px;line-height:1;position:absolute;top:100%;left:0}.el-form-item__error--inline{margin-left:10px;display:inline-block;position:relative;top:auto;left:auto}.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label:before,.el-form-item.is-required:not(.is-no-asterisk).asterisk-left>.el-form-item__label-wrap>.el-form-item__label:before{content:"*";color:var(--el-color-danger);margin-right:4px}.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label:after,.el-form-item.is-required:not(.is-no-asterisk).asterisk-right>.el-form-item__label-wrap>.el-form-item__label:after{content:"*";color:var(--el-color-danger);margin-left:4px}.el-form-item.is-error .el-form-item__content .el-input__wrapper,.el-form-item.is-error .el-form-item__content .el-input__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-input__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-input__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-textarea__inner,.el-form-item.is-error .el-form-item__content .el-textarea__inner:hover,.el-form-item.is-error .el-form-item__content .el-textarea__inner:focus,.el-form-item.is-error .el-form-item__content .el-textarea__inner.is-focus,.el-form-item.is-error .el-form-item__content .el-select__wrapper,.el-form-item.is-error .el-form-item__content .el-select__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-select__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-select__wrapper.is-focus,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper:hover,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper:focus,.el-form-item.is-error .el-form-item__content .el-input-tag__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-form-item.is-error .el-form-item__content .el-input-group__append .el-input__wrapper,.el-form-item.is-error .el-form-item__content .el-input-group__prepend .el-input__wrapper{box-shadow:inset 0 0 0 1px #0000}.el-form-item.is-error .el-form-item__content .el-input-group__append .el-input__validateIcon,.el-form-item.is-error .el-form-item__content .el-input-group__prepend .el-input__validateIcon{display:none}.el-form-item.is-error .el-form-item__content .el-input__validateIcon{color:var(--el-color-danger)}.el-form-item--feedback .el-input__validateIcon{display:inline-flex}.el-form{--el-form-label-font-size:var(--el-font-size-base);--el-form-inline-content-width:220px}.el-form--inline .el-form-item{vertical-align:middle;margin-right:32px;display:inline-flex}.el-form--inline.el-form--label-top{flex-wrap:wrap;display:flex}.el-form--inline.el-form--label-top .el-form-item{display:block}.el-header{--el-header-padding:0 20px;--el-header-height:60px;padding:var(--el-header-padding);box-sizing:border-box;height:var(--el-header-height);flex-shrink:0}.el-image-viewer__wrapper{position:fixed;inset:0}.el-image-viewer__wrapper:focus{outline:none!important}.el-image-viewer__btn{z-index:1;opacity:.8;cursor:pointer;box-sizing:border-box;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.el-image-viewer__btn .el-icon{cursor:pointer}.el-image-viewer__close{width:40px;height:40px;font-size:40px;top:40px;right:40px}.el-image-viewer__canvas{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:static}.el-image-viewer__actions{background-color:var(--el-text-color-regular);border-color:#fff;border-radius:22px;height:44px;padding:0 23px;bottom:30px;left:50%;transform:translate(-50%)}.el-image-viewer__actions__inner{cursor:default;color:#fff;justify-content:space-around;align-items:center;gap:22px;width:100%;height:100%;padding:0 6px;font-size:23px;display:flex}.el-image-viewer__actions__divider{margin:0 -6px}.el-image-viewer__progress{cursor:default;color:#fff;bottom:90px;left:50%;transform:translate(-50%)}.el-image-viewer__prev{color:#fff;background-color:var(--el-text-color-regular);border-color:#fff;width:44px;height:44px;font-size:24px;top:50%;left:40px;transform:translateY(-50%)}.el-image-viewer__next{text-indent:2px;color:#fff;background-color:var(--el-text-color-regular);border-color:#fff;width:44px;height:44px;font-size:24px;top:50%;right:40px;transform:translateY(-50%)}.el-image-viewer__close{color:#fff;background-color:var(--el-text-color-regular);border-color:#fff;width:44px;height:44px;font-size:24px}.el-image-viewer__mask{opacity:.5;background:#000;width:100%;height:100%;position:absolute;top:0;left:0}.el-image-viewer-parent--hidden{overflow:hidden}.viewer-fade-enter-active{animation:viewer-fade-in var(--el-transition-duration)}.viewer-fade-leave-active{animation:viewer-fade-out var(--el-transition-duration)}@keyframes viewer-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}@keyframes viewer-fade-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translateY(-20px)}}.el-image__error,.el-image__placeholder,.el-image__wrapper,.el-image__inner{width:100%;height:100%}.el-image{display:inline-block;position:relative;overflow:hidden}.el-image__inner{vertical-align:top;opacity:1}.el-image__inner.is-loading{opacity:0}.el-image__wrapper{position:absolute;top:0;left:0}.el-image__placeholder{background:var(--el-fill-color-light)}.el-image__error{background:var(--el-fill-color-light);color:var(--el-text-color-placeholder);vertical-align:middle;justify-content:center;align-items:center;font-size:14px;display:flex}.el-image__preview{cursor:pointer}.el-textarea{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;vertical-align:bottom;width:100%;font-size:var(--el-font-size-base);display:inline-block;position:relative}.el-textarea__inner{resize:vertical;box-sizing:border-box;width:100%;line-height:1.5;font-size:inherit;color:var(--el-input-text-color,var(--el-text-color-regular));background-color:var(--el-input-bg-color,var(--el-fill-color-blank));-webkit-appearance:none;box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;border-radius:var(--el-input-border-radius,var(--el-border-radius-base));transition:var(--el-transition-box-shadow);background-image:none;border:none;padding:5px 11px;font-family:inherit;display:block;position:relative}.el-textarea__inner.is-clearable{padding:5px 26px 5px 11px}.el-textarea__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-textarea__inner:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset;outline:none}.el-textarea__clear{color:var(--el-input-icon-color);cursor:pointer;font-size:14px;position:absolute;top:15px;right:11px;transform:translateY(-50%)}.el-textarea__clear:hover{color:var(--el-input-clear-hover-color)}.el-textarea .el-input__count{color:var(--el-color-info);background:var(--el-fill-color-blank);font-size:12px;line-height:14px;position:absolute;bottom:5px;right:10px}.el-textarea .el-input__count.is-outside{top:100%;right:0;bottom:unset;background:0 0;padding-top:2px;line-height:1;position:absolute}.el-textarea.is-disabled .el-textarea__inner{box-shadow:0 0 0 1px var(--el-disabled-border-color) inset;background-color:var(--el-disabled-bg-color);color:var(--el-disabled-text-color);cursor:not-allowed}.el-textarea.is-disabled .el-textarea__inner::placeholder{color:var(--el-text-color-placeholder)}.el-textarea.is-exceed .el-textarea__inner{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-textarea.is-exceed .el-input__count{color:var(--el-color-danger)}.el-input{--el-input-text-color:var(--el-text-color-regular);--el-input-border:var(--el-border);--el-input-hover-border:var(--el-border-color-hover);--el-input-focus-border:var(--el-color-primary);--el-input-transparent-border:0 0 0 1px transparent inset;--el-input-border-color:var(--el-border-color);--el-input-border-radius:var(--el-border-radius-base);--el-input-bg-color:var(--el-fill-color-blank);--el-input-icon-color:var(--el-text-color-placeholder);--el-input-placeholder-color:var(--el-text-color-placeholder);--el-input-hover-border-color:var(--el-border-color-hover);--el-input-clear-hover-color:var(--el-text-color-secondary);--el-input-focus-border-color:var(--el-color-primary);--el-input-width:100%;--el-input-height:var(--el-component-size);font-size:var(--el-font-size-base);width:var(--el-input-width);line-height:var(--el-input-height);box-sizing:border-box;vertical-align:middle;display:inline-flex;position:relative}.el-input::-webkit-scrollbar{z-index:11;width:6px}.el-input::-webkit-scrollbar:horizontal{height:6px}.el-input::-webkit-scrollbar-thumb{background:var(--el-text-color-disabled);border-radius:5px;width:6px}.el-input::-webkit-scrollbar-corner{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track{background:var(--el-fill-color-blank)}.el-input::-webkit-scrollbar-track-piece{background:var(--el-fill-color-blank);width:6px}.el-input .el-input__clear,.el-input .el-input__password{color:var(--el-input-icon-color);cursor:pointer;font-size:14px}.el-input .el-input__clear:hover,.el-input .el-input__password:hover{color:var(--el-input-clear-hover-color)}.el-input .el-input__count{height:100%;color:var(--el-color-info);align-items:center;font-size:12px;display:inline-flex}.el-input .el-input__count .el-input__count-inner{background:var(--el-fill-color-blank);line-height:initial;padding-left:8px;display:inline-block}.el-input .el-input__count.is-outside{height:unset;padding-top:2px;position:absolute;top:100%;right:0}.el-input .el-input__count.is-outside .el-input__count-inner{background:0 0;padding-left:0;line-height:1}.el-input__wrapper{background-color:var(--el-input-bg-color,var(--el-fill-color-blank));border-radius:var(--el-input-border-radius,var(--el-border-radius-base));cursor:text;transition:var(--el-transition-box-shadow);box-shadow:0 0 0 1px var(--el-input-border-color,var(--el-border-color)) inset;background-image:none;flex-grow:1;justify-content:center;align-items:center;padding:1px 11px;display:inline-flex;transform:translate(0)}.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--el-input-hover-border-color) inset}.el-input__wrapper.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input{--el-input-inner-height:calc(var(--el-input-height,32px) - 2px)}.el-input__inner{-webkit-appearance:none;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));font-size:inherit;height:var(--el-input-inner-height);line-height:var(--el-input-inner-height);box-sizing:border-box;background:0 0;border:none;outline:none;flex-grow:1;padding:0}.el-input__inner:focus{outline:none}.el-input__inner::placeholder{color:var(--el-input-placeholder-color,var(--el-text-color-placeholder))}.el-input__inner[type=password]::-ms-reveal{display:none}.el-input__inner[type=number]{line-height:1}.el-input__prefix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__prefix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__prefix-inner>:last-child{margin-right:8px}.el-input__prefix-inner>:first-child,.el-input__prefix-inner>:first-child.el-input__icon{margin-left:0}.el-input__suffix{white-space:nowrap;height:100%;line-height:var(--el-input-inner-height);text-align:center;color:var(--el-input-icon-color,var(--el-text-color-placeholder));transition:all var(--el-transition-duration);pointer-events:none;flex-wrap:nowrap;flex-shrink:0;display:inline-flex}.el-input__suffix-inner{pointer-events:all;justify-content:center;align-items:center;display:inline-flex}.el-input__suffix-inner>:first-child{margin-left:8px}.el-input .el-input__icon{height:inherit;line-height:inherit;transition:all var(--el-transition-duration);justify-content:center;align-items:center;margin-left:8px;display:flex}.el-input__validateIcon{pointer-events:none}.el-input.is-active .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-color, ) inset}.el-input.is-disabled{cursor:not-allowed}.el-input.is-disabled .el-input__wrapper{background-color:var(--el-disabled-bg-color);cursor:not-allowed;box-shadow:0 0 0 1px var(--el-disabled-border-color) inset}.el-input.is-disabled .el-input__inner{color:var(--el-disabled-text-color);-webkit-text-fill-color:var(--el-disabled-text-color);cursor:not-allowed}.el-input.is-disabled .el-input__inner::placeholder{color:var(--el-text-color-placeholder)}.el-input.is-disabled .el-input__icon{cursor:not-allowed}.el-input.is-disabled .el-input__prefix-inner,.el-input.is-disabled .el-input__suffix-inner{pointer-events:none}.el-input.is-exceed .el-input__wrapper{box-shadow:0 0 0 1px var(--el-color-danger) inset}.el-input.is-exceed .el-input__suffix .el-input__count{color:var(--el-color-danger)}.el-input--large{--el-input-height:var(--el-component-size-large);font-size:14px}.el-input--large .el-input__wrapper{padding:1px 15px}.el-input--large{--el-input-inner-height:calc(var(--el-input-height,40px) - 2px)}.el-input--small{--el-input-height:var(--el-component-size-small);font-size:12px}.el-input--small .el-input__wrapper{padding:1px 7px}.el-input--small{--el-input-inner-height:calc(var(--el-input-height,24px) - 2px)}.el-input-group{align-items:stretch;width:100%;display:inline-flex}.el-input-group__append,.el-input-group__prepend{background-color:var(--el-fill-color-light);color:var(--el-color-info);border-radius:var(--el-input-border-radius);white-space:nowrap;justify-content:center;align-items:center;min-height:100%;padding:0 20px;display:inline-flex;position:relative}.el-input-group__append:focus,.el-input-group__prepend:focus{outline:none}.el-input-group__append .el-select,.el-input-group__append .el-button,.el-input-group__prepend .el-select,.el-input-group__prepend .el-button{flex:1;margin:0 -20px;display:inline-block}.el-input-group__append button.el-button,.el-input-group__append button.el-button:hover,.el-input-group__append div.el-select .el-select__wrapper,.el-input-group__append div.el-select:hover .el-select__wrapper,.el-input-group__prepend button.el-button,.el-input-group__prepend button.el-button:hover,.el-input-group__prepend div.el-select .el-select__wrapper,.el-input-group__prepend div.el-select:hover .el-select__wrapper{color:inherit;background-color:#0000;border-color:#0000}.el-input-group__append .el-button,.el-input-group__append .el-input,.el-input-group__prepend .el-button,.el-input-group__prepend .el-input{font-size:inherit}.el-input-group__prepend{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group__append{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend>.el-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.el-input-group--prepend .el-input-group__prepend .el-select .el-select__wrapper{box-shadow:1px 0 0 0 var(--el-input-border-color) inset,0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset;border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append>.el-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.el-input-group--append .el-input-group__append .el-select .el-select__wrapper{box-shadow:0 1px 0 0 var(--el-input-border-color) inset,0 -1px 0 0 var(--el-input-border-color) inset,-1px 0 0 0 var(--el-input-border-color) inset;border-top-left-radius:0;border-bottom-left-radius:0}.el-input-hidden{display:none!important}.el-input-number{vertical-align:middle;width:150px;line-height:30px;display:inline-flex;position:relative}.el-input-number .el-input__wrapper{padding-left:42px;padding-right:42px}.el-input-number .el-input__inner{-webkit-appearance:none;-moz-appearance:textfield;text-align:center;line-height:1}.el-input-number .el-input__inner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.el-input-number .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-input-number.is-left .el-input__inner{text-align:left}.el-input-number.is-right .el-input__inner{text-align:right}.el-input-number.is-center .el-input__inner{text-align:center}.el-input-number__increase,.el-input-number__decrease{z-index:1;background:var(--el-fill-color-light);width:32px;height:auto;color:var(--el-text-color-regular);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;top:1px;bottom:1px}.el-input-number__increase:hover,.el-input-number__decrease:hover{color:var(--el-color-primary)}.el-input-number__increase:hover~.el-input:not(.is-disabled) .el-input__wrapper,.el-input-number__decrease:hover~.el-input:not(.is-disabled) .el-input__wrapper{box-shadow:0 0 0 1px var(--el-input-focus-border-color,var(--el-color-primary)) inset}.el-input-number__increase.is-disabled,.el-input-number__decrease.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-input-number__increase{border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0;border-left:var(--el-border);right:1px}.el-input-number__decrease{border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);border-right:var(--el-border);left:1px}.el-input-number.is-disabled .el-input-number__increase,.el-input-number.is-disabled .el-input-number__decrease{border-color:var(--el-disabled-border-color);color:var(--el-disabled-border-color)}.el-input-number.is-disabled .el-input-number__increase:hover,.el-input-number.is-disabled .el-input-number__decrease:hover{color:var(--el-disabled-border-color);cursor:not-allowed}.el-input-number--large{width:180px;line-height:38px}.el-input-number--large .el-input-number__increase,.el-input-number--large .el-input-number__decrease{width:40px;font-size:14px}.el-input-number--large.is-controls-right .el-input--large .el-input__wrapper{padding-right:47px}.el-input-number--large .el-input--large .el-input__wrapper{padding-left:47px;padding-right:47px}.el-input-number--small{width:120px;line-height:22px}.el-input-number--small .el-input-number__increase,.el-input-number--small .el-input-number__decrease{width:24px;font-size:12px}.el-input-number--small.is-controls-right .el-input--small .el-input__wrapper{padding-right:31px}.el-input-number--small .el-input--small .el-input__wrapper{padding-left:31px;padding-right:31px}.el-input-number--small .el-input-number__increase [class*=el-icon],.el-input-number--small .el-input-number__decrease [class*=el-icon]{transform:scale(.9)}.el-input-number.is-without-controls .el-input__wrapper{padding-left:15px;padding-right:15px}.el-input-number.is-controls-right .el-input__wrapper{padding-left:15px;padding-right:42px}.el-input-number.is-controls-right .el-input-number__increase,.el-input-number.is-controls-right .el-input-number__decrease{--el-input-number-controls-height:15px;height:var(--el-input-number-controls-height);line-height:var(--el-input-number-controls-height)}.el-input-number.is-controls-right .el-input-number__increase [class*=el-icon],.el-input-number.is-controls-right .el-input-number__decrease [class*=el-icon]{transform:scale(.8)}.el-input-number.is-controls-right .el-input-number__increase{border-radius:0 var(--el-border-radius-base) 0 0;border-bottom:var(--el-border);bottom:auto;left:auto}.el-input-number.is-controls-right .el-input-number__decrease{border-right:none;border-left:var(--el-border);border-radius:0 0 var(--el-border-radius-base) 0;top:auto;left:auto;right:1px}.el-input-number.is-controls-right[class*=large] [class*=increase],.el-input-number.is-controls-right[class*=large] [class*=decrease]{--el-input-number-controls-height:19px}.el-input-number.is-controls-right[class*=small] [class*=increase],.el-input-number.is-controls-right[class*=small] [class*=decrease]{--el-input-number-controls-height:11px}.el-input-tag{--el-input-tag-border-color-hover:var(--el-border-color-hover);--el-input-tag-placeholder-color:var(--el-text-color-placeholder);--el-input-tag-disabled-color:var(--el-disabled-text-color);--el-input-tag-disabled-border:var(--el-disabled-border-color);--el-input-tag-font-size:var(--el-font-size-base);--el-input-tag-close-hover-color:var(--el-text-color-secondary);--el-input-tag-text-color:var(--el-text-color-regular);--el-input-tag-input-focus-border-color:var(--el-color-primary);--el-input-tag-width:100%;--el-input-tag-mini-height:var(--el-component-size);--el-input-tag-gap:6px;--el-input-tag-padding:4px;--el-input-tag-inner-padding:8px;--el-input-tag-line-height:24px;box-sizing:border-box;cursor:pointer;font-size:var(--el-input-tag-font-size);padding:var(--el-input-tag-padding);width:var(--el-input-tag-width);min-height:var(--el-input-tag-mini-height);line-height:var(--el-input-tag-line-height);border-radius:var(--el-border-radius-base);background-color:var(--el-fill-color-blank);transition:var(--el-transition-duration);box-shadow:0 0 0 1px var(--el-border-color) inset;align-items:center;display:flex;transform:translate(0)}.el-input-tag.is-focused{box-shadow:0 0 0 1px var(--el-color-primary) inset}.el-input-tag.is-hovering:not(.is-focused){box-shadow:0 0 0 1px var(--el-border-color-hover) inset}.el-input-tag.is-disabled{cursor:not-allowed;background-color:var(--el-fill-color-light);box-shadow:0 0 0 1px var(--el-input-tag-disabled-border) inset}.el-input-tag.is-disabled:hover{box-shadow:0 0 0 1px var(--el-input-tag-disabled-border) inset}.el-input-tag.is-disabled.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-input-tag.is-disabled .el-input-tag__inner .el-input-tag__input,.el-input-tag.is-disabled .el-input-tag__inner .el-tag{cursor:not-allowed}.el-input-tag__prefix{padding:0 var(--el-input-tag-inner-padding);color:var(--el-input-icon-color,var(--el-text-color-placeholder));flex-shrink:0;align-items:center;display:flex}.el-input-tag__suffix{padding:0 var(--el-input-tag-inner-padding);color:var(--el-input-icon-color,var(--el-text-color-placeholder));flex-shrink:0;align-items:center;gap:8px;display:flex}.el-input-tag__collapse-tag{line-height:1}.el-input-tag__input-tag-list{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.el-input-tag__input-tag-list.is-near{margin-left:-8px}.el-input-tag__input-tag-list .el-tag{cursor:pointer;border-color:#0000}.el-input-tag__input-tag-list .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-input-tag__input-tag-list .el-tag .el-tag__content{min-width:0}.el-input-tag__inner{align-items:center;gap:var(--el-input-tag-gap);flex-wrap:wrap;flex:1;min-width:0;max-width:100%;display:flex;position:relative}.el-input-tag__inner.is-left-space{margin-left:var(--el-input-tag-inner-padding)}.el-input-tag__inner.is-right-space{margin-right:var(--el-input-tag-inner-padding)}.el-input-tag__inner.is-draggable .el-tag{cursor:move;-webkit-user-select:none;user-select:none}.el-input-tag__drop-indicator{width:1px;height:var(--el-input-tag-line-height);background-color:var(--el-color-primary);position:absolute;top:0}.el-input-tag__inner .el-tag{cursor:pointer;border-color:#0000;max-width:100%}.el-input-tag__inner .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-input-tag__inner .el-tag .el-tag__content{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:normal;overflow:hidden}.el-input-tag__input-wrapper{flex:1}.el-input-tag__input{color:var(--el-input-tag-text-color);font-size:inherit;font-family:inherit;line-height:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;outline:none;width:100%;padding:0}.el-input-tag__input::placeholder{color:var(--el-input-tag-placeholder-color)}.el-input-tag__input-calculator{visibility:hidden;white-space:pre;max-width:100%;position:absolute;top:0;left:0;overflow:hidden}.el-input-tag--large{--el-input-tag-gap:6px;--el-input-tag-padding:8px;--el-input-tag-padding-left:8px;--el-input-tag-font-size:14px}.el-input-tag--small{--el-input-tag-gap:4px;--el-input-tag-padding:2px;--el-input-tag-padding-left:6px;--el-input-tag-font-size:12px;--el-input-tag-line-height:20px;--el-input-tag-mini-height:var(--el-component-size-small)}.el-link{--el-link-font-size:var(--el-font-size-base);--el-link-font-weight:var(--el-font-weight-primary);--el-link-text-color:var(--el-text-color-regular);--el-link-hover-text-color:var(--el-color-primary);--el-link-disabled-text-color:var(--el-text-color-placeholder);vertical-align:middle;cursor:pointer;font-size:var(--el-link-font-size);font-weight:var(--el-link-font-weight);color:var(--el-link-text-color);outline:none;flex-direction:row;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex;position:relative}.el-link.is-hover-underline:hover:after{content:"";border-bottom:1px solid var(--el-link-hover-text-color);height:0;position:absolute;bottom:0;left:0;right:0}.el-link.is-underline:after{content:"";border-bottom:1px solid var(--el-link-text-color);height:0;position:absolute;bottom:0;left:0;right:0}.el-link:hover{color:var(--el-link-hover-text-color)}.el-link:hover:after{border-color:var(--el-link-hover-text-color)}.el-link [class*=el-icon-]+span{margin-left:5px}.el-link__inner{justify-content:center;align-items:center;display:inline-flex}.el-link.el-link--primary{--el-link-text-color:var(--el-color-primary);--el-link-hover-text-color:var(--el-color-primary-light-3);--el-link-disabled-text-color:var(--el-color-primary-light-5)}.el-link.el-link--success{--el-link-text-color:var(--el-color-success);--el-link-hover-text-color:var(--el-color-success-light-3);--el-link-disabled-text-color:var(--el-color-success-light-5)}.el-link.el-link--warning{--el-link-text-color:var(--el-color-warning);--el-link-hover-text-color:var(--el-color-warning-light-3);--el-link-disabled-text-color:var(--el-color-warning-light-5)}.el-link.el-link--danger{--el-link-text-color:var(--el-color-danger);--el-link-hover-text-color:var(--el-color-danger-light-3);--el-link-disabled-text-color:var(--el-color-danger-light-5)}.el-link.el-link--error{--el-link-text-color:var(--el-color-error);--el-link-hover-text-color:var(--el-color-error-light-3);--el-link-disabled-text-color:var(--el-color-error-light-5)}.el-link.el-link--info{--el-link-text-color:var(--el-color-info);--el-link-hover-text-color:var(--el-color-info-light-3);--el-link-disabled-text-color:var(--el-color-info-light-5)}.el-link.is-disabled{color:var(--el-link-disabled-text-color);cursor:not-allowed}.el-link.is-disabled:after{border-color:var(--el-link-disabled-text-color)}:root{--el-loading-spinner-size:42px;--el-loading-fullscreen-spinner-size:50px}.el-loading-parent--relative{position:relative!important}.el-loading-parent--hidden{overflow:hidden!important}.el-loading-mask{z-index:2000;background-color:var(--el-mask-color);transition:opacity var(--el-transition-duration);margin:0;position:absolute;inset:0}.el-loading-mask.is-fullscreen{position:fixed}.el-loading-mask.is-fullscreen .el-loading-spinner{margin-top:calc((0px - var(--el-loading-fullscreen-spinner-size)) / 2)}.el-loading-mask.is-fullscreen .el-loading-spinner .circular{height:var(--el-loading-fullscreen-spinner-size);width:var(--el-loading-fullscreen-spinner-size)}.el-loading-spinner{margin-top:calc((0px - var(--el-loading-spinner-size)) / 2);text-align:center;width:100%;position:absolute;top:50%}.el-loading-spinner .el-loading-text{color:var(--el-color-primary);margin:3px 0;font-size:14px}.el-loading-spinner .circular{height:var(--el-loading-spinner-size);width:var(--el-loading-spinner-size);animation:2s linear infinite loading-rotate;display:inline}.el-loading-spinner .path{stroke-dasharray:90 150;stroke-dashoffset:0;stroke-width:2px;stroke:var(--el-color-primary);stroke-linecap:round;animation:1.5s ease-in-out infinite loading-dash}.el-loading-spinner i{color:var(--el-color-primary)}.el-loading-fade-enter-from,.el-loading-fade-leave-to{opacity:0}@keyframes loading-rotate{to{transform:rotate(360deg)}}@keyframes loading-dash{0%{stroke-dasharray:1 200;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-40px}to{stroke-dasharray:90 150;stroke-dashoffset:-120px}}.el-main{--el-main-padding:20px;box-sizing:border-box;padding:var(--el-main-padding);flex:auto;display:block;overflow:auto}:root{--el-menu-active-color:var(--el-color-primary);--el-menu-text-color:var(--el-text-color-primary);--el-menu-hover-text-color:var(--el-color-primary);--el-menu-bg-color:var(--el-fill-color-blank);--el-menu-hover-bg-color:var(--el-color-primary-light-9);--el-menu-item-height:56px;--el-menu-sub-item-height:calc(var(--el-menu-item-height) - 6px);--el-menu-horizontal-height:60px;--el-menu-horizontal-sub-item-height:36px;--el-menu-item-font-size:var(--el-font-size-base);--el-menu-item-hover-fill:var(--el-color-primary-light-9);--el-menu-border-color:var(--el-border-color);--el-menu-base-level-padding:20px;--el-menu-level-padding:20px;--el-menu-icon-width:24px}.el-menu{border-right:solid 1px var(--el-menu-border-color);background-color:var(--el-menu-bg-color);box-sizing:border-box;margin:0;padding-left:0;list-style:none;position:relative}.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-sub-menu__title,.el-menu--vertical:not(.el-menu--collapse):not(.el-menu--popup-container) .el-menu-item-group__title{white-space:nowrap;padding-left:calc(var(--el-menu-base-level-padding) + var(--el-menu-level) * var(--el-menu-level-padding))}.el-menu:not(.el-menu--collapse) .el-sub-menu__title{padding-right:calc(var(--el-menu-base-level-padding) + var(--el-menu-icon-width))}.el-menu--horizontal{height:var(--el-menu-horizontal-height);border-right:none;flex-wrap:nowrap;display:flex}.el-menu--horizontal.el-menu--popup-container{height:unset}.el-menu--horizontal.el-menu{border-bottom:solid 1px var(--el-menu-border-color)}.el-menu--horizontal>.el-menu-item{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000;justify-content:center;align-items:center;margin:0;display:inline-flex}.el-menu--horizontal>.el-menu-item a,.el-menu--horizontal>.el-menu-item a:hover{color:inherit}.el-menu--horizontal>.el-sub-menu:focus,.el-menu--horizontal>.el-sub-menu:hover{outline:none}.el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--el-menu-hover-text-color)}.el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title{height:100%;color:var(--el-menu-text-color);border-bottom:2px solid #0000}.el-menu--horizontal>.el-sub-menu .el-sub-menu__title:hover{background-color:var(--el-menu-bg-color)}.el-menu--horizontal .el-menu .el-menu-item,.el-menu--horizontal .el-menu .el-sub-menu__title{background-color:var(--el-menu-bg-color);height:var(--el-menu-horizontal-sub-item-height);line-height:var(--el-menu-horizontal-sub-item-height);color:var(--el-menu-text-color);align-items:center;padding:0 10px;display:flex}.el-menu--horizontal .el-menu .el-sub-menu__title{padding-right:40px}.el-menu--horizontal .el-menu .el-menu-item.is-active,.el-menu--horizontal .el-menu .el-menu-item.is-active:hover,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title,.el-menu--horizontal .el-menu .el-sub-menu.is-active>.el-sub-menu__title:hover{color:var(--el-menu-active-color)}.el-menu--horizontal .el-menu-item:not(.is-disabled):hover,.el-menu--horizontal .el-menu-item:not(.is-disabled):focus{color:var(--el-menu-active-color,var(--el-menu-hover-text-color));background-color:var(--el-menu-hover-bg-color);outline:none}.el-menu--horizontal>.el-menu-item.is-active{border-bottom:2px solid var(--el-menu-active-color);color:var(--el-menu-active-color)!important}.el-menu--collapse{width:calc(var(--el-menu-icon-width) + var(--el-menu-base-level-padding) * 2)}.el-menu--collapse>.el-menu-item [class^=el-icon],.el-menu--collapse>.el-sub-menu>.el-sub-menu__title [class^=el-icon],.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title [class^=el-icon]{vertical-align:middle;width:var(--el-menu-icon-width);text-align:center;margin:0}.el-menu--collapse>.el-menu-item .el-sub-menu__icon-arrow,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title .el-sub-menu__icon-arrow{display:none}.el-menu--collapse>.el-menu-item>span,.el-menu--collapse>.el-sub-menu>.el-sub-menu__title>span,.el-menu--collapse>.el-menu-item-group>ul>.el-sub-menu>.el-sub-menu__title>span{visibility:hidden;width:0;height:0;display:inline-block;overflow:hidden}.el-menu--collapse>.el-menu-item.is-active i{color:inherit}.el-menu--collapse .el-menu .el-sub-menu{min-width:200px}.el-menu--collapse .el-sub-menu.is-active .el-sub-menu__title{color:var(--el-menu-active-color)}.el-menu--popup{z-index:100;border-radius:var(--el-border-radius-small);min-width:200px;box-shadow:var(--el-box-shadow-light);border:none;padding:5px 0}.el-menu .el-icon{flex-shrink:0}.el-menu-item{height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);cursor:pointer;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap;align-items:center;list-style:none;display:flex;position:relative}.el-menu-item *{vertical-align:bottom}.el-menu-item i{color:inherit}.el-menu-item:hover,.el-menu-item:focus{outline:none}.el-menu-item:hover{background-color:var(--el-menu-hover-bg-color)}.el-menu-item.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-menu-item [class^=el-icon]{width:var(--el-menu-icon-width);text-align:center;vertical-align:middle;margin-right:5px;font-size:18px}.el-menu-item.is-active{color:var(--el-menu-active-color)}.el-menu-item.is-active i{color:inherit}.el-menu-item .el-menu-tooltip__trigger{box-sizing:border-box;width:100%;height:100%;padding:0 var(--el-menu-base-level-padding);align-items:center;display:inline-flex;position:absolute;top:0;left:0}.el-sub-menu{margin:0;padding-left:0;list-style:none}.el-sub-menu__title{height:var(--el-menu-item-height);line-height:var(--el-menu-item-height);font-size:var(--el-menu-item-font-size);color:var(--el-menu-text-color);padding:0 var(--el-menu-base-level-padding);cursor:pointer;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration),color var(--el-transition-duration);box-sizing:border-box;white-space:nowrap;align-items:center;list-style:none;display:flex;position:relative}.el-sub-menu__title *{vertical-align:bottom}.el-sub-menu__title i{color:inherit}.el-sub-menu__title:hover,.el-sub-menu__title:focus{outline:none}.el-sub-menu__title.is-disabled{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu__title:hover{background-color:var(--el-menu-hover-bg-color)}.el-sub-menu .el-menu{border:none}.el-sub-menu .el-menu-item{height:var(--el-menu-sub-item-height);line-height:var(--el-menu-sub-item-height)}.el-sub-menu.el-sub-menu__hide-arrow .el-sub-menu__title{padding-right:var(--el-menu-base-level-padding)}.el-sub-menu__hide-arrow .el-sub-menu__icon-arrow{display:none!important}.el-sub-menu.is-active .el-sub-menu__title{border-bottom-color:var(--el-menu-active-color)}.el-sub-menu.is-disabled .el-sub-menu__title,.el-sub-menu.is-disabled .el-menu-item{opacity:.25;cursor:not-allowed;background:0 0!important}.el-sub-menu .el-icon{vertical-align:middle;width:var(--el-menu-icon-width);text-align:center;margin-right:5px;font-size:18px}.el-sub-menu .el-icon.el-sub-menu__icon-more{margin-right:0!important}.el-sub-menu .el-sub-menu__icon-arrow{top:50%;right:var(--el-menu-base-level-padding);transition:transform var(--el-transition-duration);width:inherit;margin-top:-6px;margin-right:0;font-size:12px;position:absolute}.el-menu-item-group>ul{padding:0}.el-menu-item-group__title{padding:7px 0 7px var(--el-menu-base-level-padding);color:var(--el-text-color-secondary);font-size:12px;line-height:normal}.horizontal-collapse-transition .el-sub-menu__title .el-sub-menu__icon-arrow{transition:var(--el-transition-duration-fast);opacity:0}.el-popper,.el-menu--popup-container,.el-menu{outline:none}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-box-shadow:var(--el-box-shadow);--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:12px;--el-messagebox-font-line-height:var(--el-font-line-height-primary);max-width:var(--el-messagebox-width);width:100%;padding:var(--el-messagebox-padding-primary);vertical-align:middle;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);font-size:var(--el-messagebox-font-size);box-shadow:var(--el-messagebox-box-shadow);text-align:left;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;overflow-wrap:break-word;display:inline-block;position:relative;overflow:hidden}.el-message-box:focus{outline:none!important}.is-message-box .el-overlay-message-box{text-align:center;padding:16px;position:fixed;inset:0;overflow:auto}.is-message-box .el-overlay-message-box:after{content:"";vertical-align:middle;width:0;height:100%;display:inline-block}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;user-select:none}.el-message-box__header{padding-bottom:var(--el-messagebox-padding-primary)}.el-message-box__header.show-close{padding-right:calc(var(--el-messagebox-padding-primary) + var(--el-message-close-size,16px))}.el-message-box__title{font-size:var(--el-messagebox-font-size);line-height:var(--el-messagebox-font-line-height);color:var(--el-messagebox-title-color)}.el-message-box__headerbtn{width:40px;height:40px;font-size:var(--el-message-close-size,16px);cursor:pointer;background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{align-items:center;gap:12px;display:flex}.el-message-box__input{padding-top:12px}.el-message-box__input div.invalid>input,.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{font-size:24px}.el-message-box__status.el-message-box-icon--primary{--el-messagebox-color:var(--el-color-primary);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{min-width:0;margin:0}.el-message-box__message p{line-height:var(--el-messagebox-font-line-height);margin:0}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__btns{padding-top:var(--el-messagebox-padding-primary);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.el-message-box--center .el-message-box__title{justify-content:center;align-items:center;gap:6px;display:flex}.el-message-box--center .el-message-box__status{font-size:inherit}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__container{justify-content:center}.el-message-box-parent--hidden{overflow:hidden}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:11px 15px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);box-sizing:border-box;border-radius:var(--el-border-radius-base);border-width:var(--el-border-width);border-style:var(--el-border-style);border-color:var(--el-message-border-color);background-color:var(--el-message-bg-color);width:max-content;max-width:calc(100% - 32px);transition:opacity var(--el-transition-duration),transform .4s,top .4s,bottom .4s;padding:var(--el-message-padding);align-items:center;gap:8px;display:flex;position:fixed}.el-message.is-left{left:16px}.el-message.is-right{right:16px}.el-message.is-center{left:50%;transform:translate(-50%)}.el-message.is-plain{background-color:var(--el-bg-color-overlay);border-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-message p{margin:0}.el-message--primary{--el-message-bg-color:var(--el-color-primary-light-9);--el-message-border-color:var(--el-color-primary-light-8);--el-message-text-color:var(--el-color-primary)}.el-message--primary .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--primary{color:var(--el-message-text-color)}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message .el-message__badge{position:absolute;top:-8px;right:-8px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{cursor:pointer;color:var(--el-message-close-icon-color);font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0}.el-message-fade-enter-from.is-left,.el-message-fade-enter-from.is-right,.el-message-fade-leave-to.is-left,.el-message-fade-leave-to.is-right{transform:translateY(-100%)}.el-message-fade-enter-from.is-left.is-bottom,.el-message-fade-enter-from.is-right.is-bottom,.el-message-fade-leave-to.is-left.is-bottom,.el-message-fade-leave-to.is-right.is-bottom{transform:translateY(100%)}.el-message-fade-enter-from.is-center,.el-message-fade-leave-to.is-center{transform:translate(-50%,-100%)}.el-message-fade-enter-from.is-center.is-bottom,.el-message-fade-leave-to.is-center.is-bottom{transform:translate(-50%,100%)}.el-notification{--el-notification-width:330px;--el-notification-padding:14px 26px 14px 13px;--el-notification-radius:8px;--el-notification-shadow:var(--el-box-shadow-light);--el-notification-border-color:var(--el-border-color-lighter);--el-notification-icon-size:24px;--el-notification-close-font-size:var(--el-message-close-size,16px);--el-notification-group-margin-left:13px;--el-notification-group-margin-right:8px;--el-notification-content-font-size:var(--el-font-size-base);--el-notification-content-color:var(--el-text-color-regular);--el-notification-title-font-size:16px;--el-notification-title-color:var(--el-text-color-primary);--el-notification-close-color:var(--el-text-color-secondary);--el-notification-close-hover-color:var(--el-text-color-regular);width:var(--el-notification-width);padding:var(--el-notification-padding);border-radius:var(--el-notification-radius);box-sizing:border-box;border:1px solid var(--el-notification-border-color);background-color:var(--el-bg-color-overlay);box-shadow:var(--el-notification-shadow);transition:opacity var(--el-transition-duration),transform var(--el-transition-duration),left var(--el-transition-duration),right var(--el-transition-duration),top .4s,bottom var(--el-transition-duration);overflow-wrap:break-word;z-index:9999;display:flex;position:fixed;overflow:hidden}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{min-width:0;margin-left:var(--el-notification-group-margin-left);margin-right:var(--el-notification-group-margin-right);flex:1}.el-notification__title{font-weight:700;font-size:var(--el-notification-title-font-size);line-height:var(--el-notification-icon-size);color:var(--el-notification-title-color);margin:0}.el-notification__content{font-size:var(--el-notification-content-font-size);color:var(--el-notification-content-color);margin:6px 0 0;line-height:24px}.el-notification__content p{margin:0}.el-notification .el-notification__icon{height:var(--el-notification-icon-size);width:var(--el-notification-icon-size);font-size:var(--el-notification-icon-size);flex-shrink:0}.el-notification .el-notification__closeBtn{cursor:pointer;color:var(--el-notification-close-color);font-size:var(--el-notification-close-font-size);position:absolute;top:18px;right:15px}.el-notification .el-notification__closeBtn:hover{color:var(--el-notification-close-hover-color)}.el-notification .el-notification--primary{--el-notification-icon-color:var(--el-color-primary);color:var(--el-notification-icon-color)}.el-notification .el-notification--success{--el-notification-icon-color:var(--el-color-success);color:var(--el-notification-icon-color)}.el-notification .el-notification--info{--el-notification-icon-color:var(--el-color-info);color:var(--el-notification-icon-color)}.el-notification .el-notification--warning{--el-notification-icon-color:var(--el-color-warning);color:var(--el-notification-icon-color)}.el-notification .el-notification--error{--el-notification-icon-color:var(--el-color-error);color:var(--el-notification-icon-color)}.el-notification-fade-enter-from.right{right:0;transform:translate(100%)}.el-notification-fade-enter-from.left{left:0;transform:translate(-100%)}.el-notification-fade-leave-to{opacity:0}.el-page-header.is-contentful .el-page-header__main{border-top:1px solid var(--el-border-color-light);margin-top:16px}.el-page-header__header{justify-content:space-between;align-items:center;line-height:24px;display:flex}.el-page-header__left{align-items:center;margin-right:40px;display:flex;position:relative}.el-page-header__back{cursor:pointer;align-items:center;display:flex}.el-page-header__left .el-divider--vertical{margin:0 16px}.el-page-header__icon{align-items:center;margin-right:10px;font-size:16px;display:flex}.el-page-header__icon .el-icon{font-size:inherit}.el-page-header__title{font-size:14px;font-weight:500}.el-page-header__content{color:var(--el-text-color-primary);font-size:18px}.el-page-header__breadcrumb{margin-bottom:16px}.el-pagination{--el-pagination-font-size:14px;--el-pagination-bg-color:var(--el-fill-color-blank);--el-pagination-text-color:var(--el-text-color-primary);--el-pagination-border-radius:2px;--el-pagination-button-color:var(--el-text-color-primary);--el-pagination-button-width:32px;--el-pagination-button-height:32px;--el-pagination-button-disabled-color:var(--el-text-color-placeholder);--el-pagination-button-disabled-bg-color:var(--el-fill-color-blank);--el-pagination-button-bg-color:var(--el-fill-color);--el-pagination-hover-color:var(--el-color-primary);--el-pagination-font-size-small:12px;--el-pagination-button-width-small:24px;--el-pagination-button-height-small:24px;--el-pagination-button-width-large:40px;--el-pagination-button-height-large:40px;--el-pagination-item-gap:16px;white-space:nowrap;color:var(--el-pagination-text-color);font-size:var(--el-pagination-font-size);align-items:center;font-weight:400;display:flex}.el-pagination .el-input__inner{text-align:center;-moz-appearance:textfield}.el-pagination .el-select{width:128px}.el-pagination .btn-prev,.el-pagination .btn-next{font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box;border:none;justify-content:center;align-items:center;padding:0 4px;display:flex}.el-pagination .btn-prev *,.el-pagination .btn-next *{pointer-events:none}.el-pagination .btn-prev:focus,.el-pagination .btn-next:focus{outline:none}.el-pagination .btn-prev:hover,.el-pagination .btn-next:hover{color:var(--el-pagination-hover-color)}.el-pagination .btn-prev.is-active,.el-pagination .btn-next.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pagination .btn-prev.is-active.is-disabled,.el-pagination .btn-next.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pagination .btn-prev:disabled,.el-pagination .btn-prev.is-disabled,.el-pagination .btn-next:disabled,.el-pagination .btn-next.is-disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pagination .btn-prev:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-next:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-pagination .btn-prev .el-icon,.el-pagination .btn-next .el-icon{width:inherit;font-size:12px;font-weight:700;display:block}.el-pagination>.is-first{margin-left:0!important}.el-pagination>.is-last{margin-right:0!important}.el-pagination .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination__sizes,.el-pagination__total{margin-left:var(--el-pagination-item-gap);color:var(--el-text-color-regular);font-weight:400}.el-pagination__total[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__jump{margin-left:var(--el-pagination-item-gap);color:var(--el-text-color-regular);align-items:center;font-weight:400;display:flex}.el-pagination__jump[disabled=true]{color:var(--el-text-color-placeholder)}.el-pagination__goto{margin-right:8px}.el-pagination__editor{text-align:center;box-sizing:border-box}.el-pagination__editor.el-input{width:56px}.el-pagination__editor .el-input__inner::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.el-pagination__editor .el-input__inner::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.el-pagination__classifier{margin-left:8px}.el-pagination__rightwrapper{flex:1;justify-content:flex-end;align-items:center;display:flex}.el-pagination.is-background .btn-prev,.el-pagination.is-background .btn-next,.el-pagination.is-background .el-pager li{background-color:var(--el-pagination-button-bg-color);margin:0 4px}.el-pagination.is-background .btn-prev.is-active,.el-pagination.is-background .btn-next.is-active,.el-pagination.is-background .el-pager li.is-active{background-color:var(--el-color-primary);color:var(--el-color-white)}.el-pagination.is-background .btn-prev:disabled,.el-pagination.is-background .btn-prev.is-disabled,.el-pagination.is-background .btn-next:disabled,.el-pagination.is-background .btn-next.is-disabled,.el-pagination.is-background .el-pager li:disabled,.el-pagination.is-background .el-pager li.is-disabled{color:var(--el-text-color-placeholder);background-color:var(--el-disabled-bg-color)}.el-pagination.is-background .btn-prev:disabled.is-active,.el-pagination.is-background .btn-prev.is-disabled.is-active,.el-pagination.is-background .btn-next:disabled.is-active,.el-pagination.is-background .btn-next.is-disabled.is-active,.el-pagination.is-background .el-pager li:disabled.is-active,.el-pagination.is-background .el-pager li.is-disabled.is-active{color:var(--el-text-color-secondary);background-color:var(--el-fill-color-dark)}.el-pagination.is-background .btn-prev{margin-left:var(--el-pagination-item-gap)}.el-pagination--small .btn-prev,.el-pagination--small .btn-next,.el-pagination--small .el-pager li{height:var(--el-pagination-button-height-small);line-height:var(--el-pagination-button-height-small);font-size:var(--el-pagination-font-size-small);min-width:var(--el-pagination-button-width-small)}.el-pagination--small span:not([class*=suffix]),.el-pagination--small button{font-size:var(--el-pagination-font-size-small)}.el-pagination--small .el-select{width:100px}.el-pagination--large .btn-prev,.el-pagination--large .btn-next,.el-pagination--large .el-pager li{height:var(--el-pagination-button-height-large);line-height:var(--el-pagination-button-height-large);min-width:var(--el-pagination-button-width-large)}.el-pagination--large .el-select .el-input{width:160px}.el-pager{-webkit-user-select:none;user-select:none;align-items:center;margin:0;padding:0;font-size:0;list-style:none;display:flex}.el-pager li{font-size:var(--el-pagination-font-size);min-width:var(--el-pagination-button-width);height:var(--el-pagination-button-height);line-height:var(--el-pagination-button-height);color:var(--el-pagination-button-color);background:var(--el-pagination-bg-color);border-radius:var(--el-pagination-border-radius);cursor:pointer;text-align:center;box-sizing:border-box;border:none;justify-content:center;align-items:center;padding:0 4px;display:flex}.el-pager li *{pointer-events:none}.el-pager li:focus{outline:none}.el-pager li:hover{color:var(--el-pagination-hover-color)}.el-pager li.is-active{color:var(--el-pagination-hover-color);cursor:default;font-weight:700}.el-pager li.is-active.is-disabled{color:var(--el-text-color-secondary);font-weight:700}.el-pager li:disabled,.el-pager li.is-disabled{color:var(--el-pagination-button-disabled-color);background-color:var(--el-pagination-button-disabled-bg-color);cursor:not-allowed}.el-pager li:focus-visible{outline:1px solid var(--el-pagination-hover-color);outline-offset:-1px}.el-popconfirm{outline:none}.el-popconfirm__main{align-items:center;display:flex}.el-popconfirm__icon{margin-right:5px}.el-popconfirm__action{text-align:right;margin-top:8px}.el-popover{--el-popover-bg-color:var(--el-bg-color-overlay);--el-popover-font-size:var(--el-font-size-base);--el-popover-border-color:var(--el-border-color-lighter);--el-popover-padding:12px;--el-popover-padding-large:18px 20px;--el-popover-title-font-size:16px;--el-popover-title-text-color:var(--el-text-color-primary);--el-popover-border-radius:4px}.el-popover.el-popper{background:var(--el-popover-bg-color);border-radius:var(--el-popover-border-radius);border:1px solid var(--el-popover-border-color);min-width:150px;padding:var(--el-popover-padding);z-index:var(--el-index-popper);color:var(--el-text-color-regular);line-height:1.4;font-size:var(--el-popover-font-size);box-shadow:var(--el-box-shadow-light);overflow-wrap:break-word;box-sizing:border-box}.el-popover.el-popper--plain{padding:var(--el-popover-padding-large)}.el-popover__title{color:var(--el-popover-title-text-color);font-size:var(--el-popover-title-font-size);margin-bottom:12px;line-height:1}.el-popover__reference:focus:not(.focusing),.el-popover__reference:focus:hover{outline-width:0}.el-popover.el-popper.is-dark{--el-popover-bg-color:var(--el-text-color-primary);--el-popover-border-color:var(--el-text-color-primary);--el-popover-title-text-color:var(--el-bg-color);color:var(--el-bg-color)}.el-popover.el-popper:focus:active,.el-popover.el-popper:focus{outline-width:0}.el-progress{align-items:center;line-height:1;display:flex;position:relative}.el-progress__text{color:var(--el-text-color-regular);min-width:50px;margin-left:5px;font-size:14px;line-height:1}.el-progress__text i{vertical-align:middle;display:block}.el-progress--circle,.el-progress--dashboard{display:inline-block}.el-progress--circle .el-progress__text,.el-progress--dashboard .el-progress__text{text-align:center;width:100%;margin:0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.el-progress--circle .el-progress__text i,.el-progress--dashboard .el-progress__text i{vertical-align:middle;display:inline-block}.el-progress--without-text .el-progress__text{display:none}.el-progress--without-text .el-progress-bar{margin-right:0;padding-right:0;display:block}.el-progress--text-inside .el-progress-bar{margin-right:0;padding-right:0}.el-progress.is-success .el-progress-bar__inner{background-color:var(--el-color-success)}.el-progress.is-success .el-progress__text{color:var(--el-color-success)}.el-progress.is-warning .el-progress-bar__inner{background-color:var(--el-color-warning)}.el-progress.is-warning .el-progress__text{color:var(--el-color-warning)}.el-progress.is-exception .el-progress-bar__inner{background-color:var(--el-color-danger)}.el-progress.is-exception .el-progress__text{color:var(--el-color-danger)}.el-progress-bar{box-sizing:border-box;flex-grow:1}.el-progress-bar__outer{background-color:var(--el-border-color-lighter);vertical-align:middle;border-radius:100px;height:6px;position:relative;overflow:hidden}.el-progress-bar__inner{background-color:var(--el-color-primary);text-align:right;white-space:nowrap;border-radius:100px;height:100%;line-height:1;transition:width .6s;position:absolute;top:0;left:0}.el-progress-bar__inner:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-progress-bar__inner--indeterminate{animation:3s infinite indeterminate;transform:translateZ(0)}.el-progress-bar__inner--striped{background-image:linear-gradient(45deg,#0000001a 25%,#0000 25% 50%,#0000001a 50% 75%,#0000 75%,#0000);background-size:1.25em 1.25em}.el-progress-bar__inner--striped.el-progress-bar__inner--striped-flow{animation:3s linear infinite striped-flow}.el-progress-bar__innerText{vertical-align:middle;color:#fff;margin:0 5px;font-size:12px;display:inline-block}@keyframes progress{0%{background-position:0 0}to{background-position:32px 0}}@keyframes indeterminate{0%{left:-100%}to{left:100%}}@keyframes striped-flow{0%{background-position:-100%}to{background-position:100%}}.el-radio-button{--el-radio-button-checked-bg-color:var(--el-color-primary);--el-radio-button-checked-text-color:var(--el-color-white);--el-radio-button-checked-border-color:var(--el-color-primary);--el-radio-button-disabled-checked-fill:var(--el-border-color-extra-light);outline:none;display:inline-block;position:relative}.el-radio-button__inner{white-space:nowrap;vertical-align:middle;background:var(--el-button-bg-color,var(--el-fill-color-blank));outline:var(--el-border);line-height:1;font-weight:var(--el-button-font-weight,var(--el-font-weight-primary));color:var(--el-button-text-color,var(--el-text-color-regular));-webkit-appearance:none;text-align:center;box-sizing:border-box;cursor:pointer;transition:var(--el-transition-all);-webkit-user-select:none;user-select:none;font-size:var(--el-font-size-base);border-radius:0;margin:0;padding:8px 15px;display:inline-block;position:relative}.el-radio-button__inner.is-round{padding:8px 15px}.el-radio-button__inner:hover{color:var(--el-color-primary)}.el-radio-button__inner [class*=el-icon-]{line-height:.9}.el-radio-button__inner [class*=el-icon-]+span{margin-left:5px}.el-radio-button:first-child .el-radio-button__inner{border-radius:var(--el-border-radius-base) 0 0 var(--el-border-radius-base);box-shadow:none!important}.el-radio-button.is-active .el-radio-button__original-radio:not(:disabled)+.el-radio-button__inner{color:var(--el-radio-button-checked-text-color,var(--el-color-white));background-color:var(--el-radio-button-checked-bg-color,var(--el-color-primary));border-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));box-shadow:-1px 0 0 0 var(--el-radio-button-checked-border-color,var(--el-color-primary))}.el-radio-button__original-radio{opacity:0;z-index:-1;outline:none;position:absolute}.el-radio-button__original-radio:focus-visible+.el-radio-button__inner{border-left:var(--el-border);border-left-color:var(--el-radio-button-checked-border-color,var(--el-color-primary));outline:2px solid var(--el-radio-button-checked-border-color);outline-offset:1px;z-index:2;border-radius:var(--el-border-radius-base);box-shadow:none}.el-radio-button__original-radio:disabled+.el-radio-button__inner{color:var(--el-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color,var(--el-fill-color-blank));border-color:var(--el-button-disabled-border-color,var(--el-border-color-light));box-shadow:none}.el-radio-button__original-radio:disabled:checked+.el-radio-button__inner{background-color:var(--el-radio-button-disabled-checked-fill)}.el-radio-button:last-child .el-radio-button__inner{border-radius:0 var(--el-border-radius-base) var(--el-border-radius-base) 0}.el-radio-button:first-child:last-child .el-radio-button__inner{border-radius:var(--el-border-radius-base)}.el-radio-button--large .el-radio-button__inner{font-size:var(--el-font-size-base);border-radius:0;padding:12px 19px}.el-radio-button--large .el-radio-button__inner.is-round{padding:12px 19px}.el-radio-button--small .el-radio-button__inner{border-radius:0;padding:5px 11px;font-size:12px}.el-radio-button--small .el-radio-button__inner.is-round{padding:5px 11px}.el-radio-group{flex-wrap:wrap;align-items:center;font-size:0;display:inline-flex}.el-radio{--el-radio-font-size:var(--el-font-size-base);--el-radio-text-color:var(--el-text-color-regular);--el-radio-font-weight:var(--el-font-weight-primary);--el-radio-input-height:14px;--el-radio-input-width:14px;--el-radio-input-border-radius:var(--el-border-radius-circle);--el-radio-input-bg-color:var(--el-fill-color-blank);--el-radio-input-border:var(--el-border);--el-radio-input-border-color:var(--el-border-color);--el-radio-input-border-color-hover:var(--el-color-primary);color:var(--el-radio-text-color);font-weight:var(--el-radio-font-weight);cursor:pointer;white-space:nowrap;font-size:var(--el-font-size-base);-webkit-user-select:none;user-select:none;outline:none;align-items:center;height:32px;margin-right:30px;display:inline-flex;position:relative}.el-radio.el-radio--large{height:40px}.el-radio.el-radio--small{height:24px}.el-radio.is-bordered{border-radius:var(--el-border-radius-base);border:var(--el-border);box-sizing:border-box;padding:0 15px 0 9px}.el-radio.is-bordered.is-checked{border-color:var(--el-color-primary)}.el-radio.is-bordered.is-disabled{cursor:not-allowed;border-color:var(--el-border-color-lighter)}.el-radio.is-bordered.el-radio--large{border-radius:var(--el-border-radius-base);padding:0 19px 0 11px}.el-radio.is-bordered.el-radio--large .el-radio__label{font-size:var(--el-font-size-base)}.el-radio.is-bordered.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.is-bordered.el-radio--small{border-radius:var(--el-border-radius-base);padding:0 11px 0 7px}.el-radio.is-bordered.el-radio--small .el-radio__label{font-size:12px}.el-radio.is-bordered.el-radio--small .el-radio__inner{width:12px;height:12px}.el-radio:last-child{margin-right:0}.el-radio__input{white-space:nowrap;cursor:pointer;vertical-align:middle;outline:none;display:inline-flex;position:relative}.el-radio__input.is-disabled .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color);cursor:not-allowed}.el-radio__input.is-disabled .el-radio__inner:after{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-radio__input.is-disabled .el-radio__inner+.el-radio__label{cursor:not-allowed}.el-radio__input.is-disabled.is-checked .el-radio__inner{background-color:var(--el-disabled-bg-color);border-color:var(--el-disabled-border-color)}.el-radio__input.is-disabled.is-checked .el-radio__inner:after{background-color:var(--el-text-color-placeholder)}.el-radio__input.is-disabled+span.el-radio__label{color:var(--el-text-color-placeholder);cursor:not-allowed}.el-radio__input.is-checked .el-radio__inner{border-color:var(--el-color-primary);background:var(--el-color-primary)}.el-radio__input.is-checked .el-radio__inner:after{background-color:var(--el-color-white);transform:translate(-50%,-50%)scale(1)}.el-radio__input.is-checked+.el-radio__label{color:var(--el-color-primary)}.el-radio__input.is-focus .el-radio__inner{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner{border:var(--el-radio-input-border);border-radius:var(--el-radio-input-border-radius);width:var(--el-radio-input-width);height:var(--el-radio-input-height);background-color:var(--el-radio-input-bg-color);cursor:pointer;box-sizing:border-box;transition:all .3s;display:inline-block;position:relative}.el-radio__inner:hover{border-color:var(--el-radio-input-border-color-hover)}.el-radio__inner:after{border-radius:var(--el-radio-input-border-radius);content:"";width:4px;height:4px;transition:transform .15s ease-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.el-radio__original{opacity:0;z-index:-1;outline:none;margin:0;position:absolute;inset:0}.el-radio__original:focus-visible+.el-radio__inner{outline:2px solid var(--el-radio-input-border-color-hover);outline-offset:1px;border-radius:var(--el-radio-input-border-radius)}.el-radio:focus:not(:focus-visible):not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner{box-shadow:0 0 2px 2px var(--el-radio-input-border-color-hover)}.el-radio__label{font-size:var(--el-radio-font-size);padding-left:8px}.el-radio.el-radio--large .el-radio__label{font-size:14px}.el-radio.el-radio--large .el-radio__inner{width:14px;height:14px}.el-radio.el-radio--small .el-radio__label{font-size:12px}.el-radio.el-radio--small .el-radio__inner{width:12px;height:12px}.el-rate{--el-rate-height:20px;--el-rate-font-size:var(--el-font-size-base);--el-rate-icon-size:18px;--el-rate-icon-margin:6px;--el-rate-void-color:var(--el-border-color-darker);--el-rate-fill-color:#f7ba2a;--el-rate-disabled-void-color:var(--el-fill-color);--el-rate-text-color:var(--el-text-color-primary);--el-rate-outline-color:var(--el-color-primary-light-5);align-items:center;height:32px;display:inline-flex}.el-rate:focus,.el-rate:active{outline:none}.el-rate:focus-visible .el-rate__item .el-rate__icon.is-focus-visible{outline:2px solid var(--el-rate-outline-color);transition:outline-offset,outline}.el-rate__item{cursor:pointer;vertical-align:middle;color:var(--el-rate-void-color);font-size:0;line-height:normal;display:inline-block;position:relative}.el-rate .el-rate__icon{font-size:var(--el-rate-icon-size);margin-right:var(--el-rate-icon-margin);transition:var(--el-transition-duration);display:inline-block;position:relative}.el-rate .el-rate__icon.hover{transform:scale(1.15)}.el-rate .el-rate__icon .path2{position:absolute;top:0;left:0}.el-rate .el-rate__icon.is-active{color:var(--el-rate-fill-color)}.el-rate__decimal{color:var(--el-rate-fill-color);display:inline-block;position:absolute;top:0;left:0;overflow:hidden}.el-rate__decimal--box{position:absolute;top:0;left:0}.el-rate__text{font-size:var(--el-rate-font-size);vertical-align:middle;color:var(--el-rate-text-color)}.el-rate--large{height:40px}.el-rate--small{height:24px}.el-rate--small .el-rate__icon{font-size:14px}.el-rate.is-disabled .el-rate__item{cursor:not-allowed;color:var(--el-rate-disabled-void-color)}.el-result{--el-result-padding:40px 30px;--el-result-icon-font-size:64px;--el-result-title-font-size:20px;--el-result-title-margin-top:20px;--el-result-subtitle-margin-top:10px;--el-result-extra-margin-top:30px;text-align:center;box-sizing:border-box;padding:var(--el-result-padding);flex-direction:column;justify-content:center;align-items:center;display:flex}.el-result__icon svg{width:var(--el-result-icon-font-size);height:var(--el-result-icon-font-size)}.el-result__title{margin-top:var(--el-result-title-margin-top)}.el-result__title p{font-size:var(--el-result-title-font-size);color:var(--el-text-color-primary);margin:0;line-height:1.3}.el-result__subtitle{margin-top:var(--el-result-subtitle-margin-top)}.el-result__subtitle p{font-size:var(--el-font-size-base);color:var(--el-text-color-regular);margin:0;line-height:1.3}.el-result__extra{margin-top:var(--el-result-extra-margin-top)}.el-result .icon-primary{--el-result-color:var(--el-color-primary);color:var(--el-result-color)}.el-result .icon-success{--el-result-color:var(--el-color-success);color:var(--el-result-color)}.el-result .icon-warning{--el-result-color:var(--el-color-warning);color:var(--el-result-color)}.el-result .icon-danger{--el-result-color:var(--el-color-danger);color:var(--el-result-color)}.el-result .icon-error{--el-result-color:var(--el-color-error);color:var(--el-result-color)}.el-result .icon-info{--el-result-color:var(--el-color-info);color:var(--el-result-color)}.el-row{box-sizing:border-box;flex-wrap:wrap;display:flex;position:relative}.el-row.is-justify-center{justify-content:center}.el-row.is-justify-end{justify-content:flex-end}.el-row.is-justify-space-between{justify-content:space-between}.el-row.is-justify-space-around{justify-content:space-around}.el-row.is-justify-space-evenly{justify-content:space-evenly}.el-row.is-align-top{align-items:flex-start}.el-row.is-align-middle{align-items:center}.el-row.is-align-bottom{align-items:flex-end}.el-scrollbar{--el-scrollbar-opacity:.3;--el-scrollbar-bg-color:var(--el-text-color-secondary);--el-scrollbar-hover-opacity:.5;--el-scrollbar-hover-bg-color:var(--el-text-color-secondary);height:100%;position:relative;overflow:hidden}.el-scrollbar__wrap{height:100%;overflow:auto}.el-scrollbar__wrap--hidden-default{scrollbar-width:none}.el-scrollbar__wrap--hidden-default::-webkit-scrollbar{display:none}.el-scrollbar__thumb{cursor:pointer;border-radius:inherit;background-color:var(--el-scrollbar-bg-color,var(--el-text-color-secondary));width:0;height:0;transition:var(--el-transition-duration) background-color;opacity:var(--el-scrollbar-opacity,.3);display:block;position:relative}.el-scrollbar__thumb:hover{background-color:var(--el-scrollbar-hover-bg-color,var(--el-text-color-secondary));opacity:var(--el-scrollbar-hover-opacity,.5)}.el-scrollbar__bar{z-index:1;border-radius:4px;position:absolute;bottom:2px;right:2px}.el-scrollbar__bar.is-vertical{width:6px;top:2px}.el-scrollbar__bar.is-vertical>div{width:100%}.el-scrollbar__bar.is-horizontal{height:6px;left:2px}.el-scrollbar__bar.is-horizontal>div{height:100%}.el-scrollbar-fade-enter-active{transition:opacity .34s ease-out}.el-scrollbar-fade-leave-active{transition:opacity .12s ease-out}.el-scrollbar-fade-enter-from,.el-scrollbar-fade-leave-active{opacity:0}.el-select-dropdown{z-index:calc(var(--el-index-top) + 1);border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-select-dropdown .el-scrollbar.is-empty .el-select-dropdown__list{padding:0}.el-select-dropdown__loading,.el-select-dropdown__empty{text-align:center;color:var(--el-text-color-secondary);font-size:var(--el-select-font-size);margin:0;padding:10px 0}.el-select-dropdown__wrap{max-height:274px}.el-select-dropdown__list{box-sizing:border-box;margin:0;padding:6px 0;list-style:none}.el-select-dropdown__list.el-vl__window{margin:6px 0;padding:0}.el-select-dropdown__header{border-bottom:1px solid var(--el-border-color-light);padding:10px}.el-select-dropdown__footer{border-top:1px solid var(--el-border-color-light);padding:10px}.el-select-dropdown__item{font-size:var(--el-font-size-base);white-space:nowrap;text-overflow:ellipsis;color:var(--el-text-color-regular);box-sizing:border-box;cursor:pointer;height:34px;padding:0 32px 0 20px;line-height:34px;position:relative;overflow:hidden}.el-select-dropdown__item.is-hovering{background-color:var(--el-fill-color-light)}.el-select-dropdown__item.is-selected{color:var(--el-color-primary);font-weight:700}.el-select-dropdown__item.is-disabled{color:var(--el-text-color-placeholder);cursor:not-allowed;background-color:unset}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-selected:after{content:"";background-position:50%;background-repeat:no-repeat;background-color:var(--el-color-primary);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") 0 0/100% 100% no-repeat;mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") 0 0/100% 100% no-repeat;border-top:none;border-right:none;width:12px;height:12px;position:absolute;top:50%;right:20px;transform:translateY(-50%);-webkit-mask:url("data:image/svg+xml;utf8,%3Csvg class='icon' width='200' height='200' viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='currentColor' d='M406.656 706.944L195.84 496.256a32 32 0 10-45.248 45.248l256 256 512-512a32 32 0 00-45.248-45.248L406.592 706.944z'%3E%3C/path%3E%3C/svg%3E") 0 0/100% 100% no-repeat}.el-select-dropdown.is-multiple .el-select-dropdown__item.is-disabled:after{background-color:var(--el-text-color-placeholder)}.el-select-group{margin:0;padding:0}.el-select-group__wrap{margin:0;padding:0;list-style:none;position:relative}.el-select-group__title{box-sizing:border-box;color:var(--el-color-info);text-overflow:ellipsis;white-space:nowrap;padding:0 20px;font-size:12px;line-height:34px;overflow:hidden}.el-select-group .el-select-dropdown__item{padding-left:20px}.el-select{--el-select-border-color-hover:var(--el-border-color-hover);--el-select-disabled-color:var(--el-disabled-text-color);--el-select-disabled-border:var(--el-disabled-border-color);--el-select-font-size:var(--el-font-size-base);--el-select-close-hover-color:var(--el-text-color-secondary);--el-select-input-color:var(--el-text-color-placeholder);--el-select-multiple-input-color:var(--el-text-color-regular);--el-select-input-focus-border-color:var(--el-color-primary);--el-select-input-font-size:14px;--el-select-width:100%;vertical-align:middle;width:var(--el-select-width);display:inline-block;position:relative}.el-select__wrapper{box-sizing:border-box;cursor:pointer;text-align:left;border-radius:var(--el-border-radius-base);background-color:var(--el-fill-color-blank);min-height:32px;transition:var(--el-transition-duration);box-shadow:0 0 0 1px var(--el-border-color) inset;align-items:center;gap:6px;padding:4px 12px;font-size:14px;line-height:24px;display:flex;position:relative;transform:translate(0)}.el-select__wrapper.is-filterable{cursor:text}.el-select__wrapper.is-focused{box-shadow:0 0 0 1px var(--el-color-primary) inset}.el-select__wrapper.is-hovering:not(.is-focused){box-shadow:0 0 0 1px var(--el-border-color-hover) inset}.el-select__wrapper.is-disabled{cursor:not-allowed;background-color:var(--el-fill-color-light);color:var(--el-text-color-placeholder);box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select__wrapper.is-disabled:hover{box-shadow:0 0 0 1px var(--el-select-disabled-border) inset}.el-select__wrapper.is-disabled.is-focus{box-shadow:0 0 0 1px var(--el-input-focus-border-color) inset}.el-select__wrapper.is-disabled .el-select__selected-item{color:var(--el-select-disabled-color)}.el-select__wrapper.is-disabled .el-select__caret,.el-select__wrapper.is-disabled .el-tag,.el-select__wrapper.is-disabled input{cursor:not-allowed}.el-select__wrapper.is-disabled .el-select__prefix,.el-select__wrapper.is-disabled .el-select__suffix{pointer-events:none}.el-select__prefix,.el-select__suffix{color:var(--el-input-icon-color,var(--el-text-color-placeholder));flex-shrink:0;align-items:center;gap:6px;display:flex}.el-select__caret{color:var(--el-select-input-color);font-size:var(--el-select-input-font-size);transition:var(--el-transition-duration);cursor:pointer;transform:rotate(0)}.el-select__caret.is-reverse{transform:rotate(180deg)}.el-select__clear{cursor:pointer}.el-select__clear:hover{color:var(--el-select-close-hover-color)}.el-select__selection{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex;position:relative}.el-select__selection.is-near{margin-left:-8px}.el-select__selection .el-tag{cursor:pointer;border-color:#0000}.el-select__selection .el-tag.el-tag--plain{border-color:var(--el-tag-border-color)}.el-select__selection .el-tag .el-tag__content{min-width:0}.el-select__selected-item{-webkit-user-select:none;user-select:none;flex-wrap:wrap;display:flex}.el-select__tags-text{text-overflow:ellipsis;white-space:nowrap;line-height:normal;display:block;overflow:hidden}.el-select__placeholder{z-index:-1;text-overflow:ellipsis;white-space:nowrap;width:100%;color:var(--el-input-text-color,var(--el-text-color-regular));display:block;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%)}.el-select__placeholder.is-transparent{-webkit-user-select:none;user-select:none;color:var(--el-text-color-placeholder)}.el-select__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-select__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-select__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-select__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-select__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-select__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-select__input-wrapper{flex:1}.el-select__input-wrapper.is-hidden{opacity:0;z-index:-1;position:absolute}.el-select__input{color:var(--el-select-multiple-input-color);font-size:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#0000;border:none;outline:none;width:100%;height:24px;padding:0;font-family:inherit}.el-select__input-calculator{visibility:hidden;white-space:pre;max-width:100%;position:absolute;top:0;left:0;overflow:hidden}.el-select--large .el-select__wrapper{gap:6px;min-height:40px;padding:8px 16px;font-size:14px;line-height:24px}.el-select--large .el-select__selection{gap:6px}.el-select--large .el-select__selection.is-near{margin-left:-8px}.el-select--large .el-select__prefix,.el-select--large .el-select__suffix{gap:6px}.el-select--large .el-select__input{height:24px}.el-select--small .el-select__wrapper{gap:4px;min-height:24px;padding:2px 8px;font-size:12px;line-height:20px}.el-select--small .el-select__selection{gap:4px}.el-select--small .el-select__selection.is-near{margin-left:-6px}.el-select--small .el-select__prefix,.el-select--small .el-select__suffix{gap:4px}.el-select--small .el-select__input{height:20px}.el-skeleton{--el-skeleton-circle-size:var(--el-avatar-size)}.el-skeleton__item{background:var(--el-skeleton-color);border-radius:var(--el-border-radius-base);width:100%;height:16px;display:inline-block}.el-skeleton__circle{width:var(--el-skeleton-circle-size);height:var(--el-skeleton-circle-size);line-height:var(--el-skeleton-circle-size);border-radius:50%}.el-skeleton__button{border-radius:4px;width:64px;height:40px}.el-skeleton__p{width:100%}.el-skeleton__p.is-last{width:61%}.el-skeleton__p.is-first{width:33%}.el-skeleton__text{width:100%;height:var(--el-font-size-small)}.el-skeleton__caption{height:var(--el-font-size-extra-small)}.el-skeleton__h1{height:var(--el-font-size-extra-large)}.el-skeleton__h3{height:var(--el-font-size-large)}.el-skeleton__h5{height:var(--el-font-size-medium)}.el-skeleton__image{width:unset;border-radius:0;justify-content:center;align-items:center;display:flex}.el-skeleton__image svg{color:var(--el-svg-monochrome-grey);fill:currentColor;width:22%;height:22%}.el-skeleton{--el-skeleton-color:var(--el-fill-color);--el-skeleton-to-color:var(--el-fill-color-darker)}@keyframes el-skeleton-loading{0%{background-position:100%}to{background-position:0}}.el-skeleton{width:100%}.el-skeleton__first-line,.el-skeleton__paragraph{background:var(--el-skeleton-color);height:16px;margin-top:16px}.el-skeleton.is-animated .el-skeleton__item{background:linear-gradient(90deg,var(--el-skeleton-color) 25%,var(--el-skeleton-to-color) 37%,var(--el-skeleton-color) 63%);background-size:400% 100%;animation:1.4s infinite el-skeleton-loading}.el-slider{--el-slider-main-bg-color:var(--el-color-primary);--el-slider-runway-bg-color:var(--el-border-color-light);--el-slider-stop-bg-color:var(--el-color-white);--el-slider-disabled-color:var(--el-text-color-placeholder);--el-slider-border-radius:3px;--el-slider-height:6px;--el-slider-button-size:20px;--el-slider-button-wrapper-size:36px;--el-slider-button-wrapper-offset:-15px;align-items:center;width:100%;height:32px;display:flex}.el-slider__runway{height:var(--el-slider-height);background-color:var(--el-slider-runway-bg-color);border-radius:var(--el-slider-border-radius);cursor:pointer;flex:1;position:relative}.el-slider__runway.show-input{width:auto;margin-right:30px}.el-slider__runway.is-disabled{cursor:default}.el-slider__runway.is-disabled .el-slider__bar{background-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button{border-color:var(--el-slider-disabled-color)}.el-slider__runway.is-disabled .el-slider__button-wrapper:hover,.el-slider__runway.is-disabled .el-slider__button-wrapper.hover,.el-slider__runway.is-disabled .el-slider__button-wrapper.dragging{cursor:not-allowed}.el-slider__runway.is-disabled .el-slider__button:hover,.el-slider__runway.is-disabled .el-slider__button.hover,.el-slider__runway.is-disabled .el-slider__button.dragging{cursor:not-allowed;transform:scale(1)}.el-slider__input{flex-shrink:0;width:130px}.el-slider__bar{height:var(--el-slider-height);background-color:var(--el-slider-main-bg-color);border-top-left-radius:var(--el-slider-border-radius);border-bottom-left-radius:var(--el-slider-border-radius);position:absolute}.el-slider__button-wrapper{height:var(--el-slider-button-wrapper-size);width:var(--el-slider-button-wrapper-size);z-index:1;top:var(--el-slider-button-wrapper-offset);text-align:center;-webkit-user-select:none;user-select:none;background-color:#0000;outline:none;line-height:normal;position:absolute;transform:translate(-50%)}.el-slider__button-wrapper:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-slider__button-wrapper:hover,.el-slider__button-wrapper.hover{cursor:grab}.el-slider__button-wrapper.dragging{cursor:grabbing}.el-slider__button{width:var(--el-slider-button-size);height:var(--el-slider-button-size);vertical-align:middle;border:solid 2px var(--el-slider-main-bg-color);background-color:var(--el-color-white);box-sizing:border-box;transition:var(--el-transition-duration-fast);-webkit-user-select:none;user-select:none;border-radius:50%;display:inline-block}.el-slider__button:hover,.el-slider__button.hover,.el-slider__button.dragging{transform:scale(1.2)}.el-slider__button:hover,.el-slider__button.hover{cursor:grab}.el-slider__button.dragging{cursor:grabbing}.el-slider__stop{height:var(--el-slider-height);width:var(--el-slider-height);border-radius:var(--el-border-radius-circle);background-color:var(--el-slider-stop-bg-color);position:absolute;transform:translate(-50%)}.el-slider__marks{width:18px;height:100%;top:0;left:12px}.el-slider__marks-text{color:var(--el-color-info);white-space:pre;margin-top:15px;font-size:14px;position:absolute;transform:translate(-50%)}.el-slider.is-vertical{flex:0;width:auto;height:100%;display:inline-flex;position:relative}.el-slider.is-vertical .el-slider__runway{width:var(--el-slider-height);height:100%;margin:0 16px}.el-slider.is-vertical .el-slider__bar{width:var(--el-slider-height);border-radius:0 0 3px 3px;height:auto}.el-slider.is-vertical .el-slider__button-wrapper{top:auto;left:var(--el-slider-button-wrapper-offset);transform:translateY(50%)}.el-slider.is-vertical .el-slider__stop{transform:translateY(50%)}.el-slider.is-vertical .el-slider__marks-text{margin-top:0;left:15px;transform:translateY(50%)}.el-slider--large{height:40px}.el-slider--small{height:24px}.el-space{vertical-align:top;display:inline-flex}.el-space__item{flex-wrap:wrap;display:flex}.el-space__item>*{flex:1}.el-space--vertical{flex-direction:column}.el-time-spinner{white-space:nowrap;width:100%}.el-spinner{vertical-align:middle;display:inline-block}.el-spinner-inner{width:50px;height:50px;animation:2s linear infinite rotate}.el-spinner-inner .path{stroke:var(--el-border-color-lighter);stroke-linecap:round;animation:1.5s ease-in-out infinite dash}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1 150;stroke-dashoffset:0}50%{stroke-dasharray:90 150;stroke-dashoffset:-35px}to{stroke-dasharray:90 150;stroke-dashoffset:-124px}}.el-step{flex-shrink:1;position:relative}.el-step:last-of-type .el-step__line{display:none}.el-step:last-of-type.is-flex{flex-grow:0;flex-shrink:0;flex-basis:auto!important}.el-step:last-of-type .el-step__main,.el-step:last-of-type .el-step__description{padding-right:0}.el-step__head{width:100%;position:relative}.el-step__head.is-process{color:var(--el-text-color-primary);border-color:var(--el-text-color-primary)}.el-step__head.is-wait{color:var(--el-text-color-placeholder);border-color:var(--el-text-color-placeholder)}.el-step__head.is-success{color:var(--el-color-success);border-color:var(--el-color-success)}.el-step__head.is-error{color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-step__head.is-finish{color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-step__icon{z-index:1;box-sizing:border-box;background:var(--el-bg-color);justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;transition:all .15s ease-out;display:inline-flex;position:relative}.el-step__icon.is-text{border:2px solid;border-radius:50%}.el-step__icon.is-icon{width:40px}.el-step__icon-inner{-webkit-user-select:none;user-select:none;text-align:center;color:inherit;font-weight:700;line-height:1;display:inline-block}.el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:25px;font-weight:400}.el-step__icon-inner.is-status{transform:translateY(1px)}.el-step__line{background-color:var(--el-text-color-placeholder);border-color:currentColor;position:absolute}.el-step__line-inner{box-sizing:border-box;border:1px solid;width:0;height:0;transition:all .15s ease-out;display:block}.el-step__main{white-space:normal;text-align:left}.el-step__title{font-size:16px;line-height:38px}.el-step__title.is-process{color:var(--el-text-color-primary);font-weight:700}.el-step__title.is-wait{color:var(--el-text-color-placeholder)}.el-step__title.is-success{color:var(--el-color-success)}.el-step__title.is-error{color:var(--el-color-danger)}.el-step__title.is-finish{color:var(--el-color-primary)}.el-step__description{margin-top:-5px;padding-right:10%;font-size:12px;font-weight:400;line-height:20px}.el-step__description.is-process{color:var(--el-text-color-primary)}.el-step__description.is-wait{color:var(--el-text-color-placeholder)}.el-step__description.is-success{color:var(--el-color-success)}.el-step__description.is-error{color:var(--el-color-danger)}.el-step__description.is-finish{color:var(--el-color-primary)}.el-step.is-horizontal{display:inline-block}.el-step.is-horizontal .el-step__line{height:2px;top:11px;left:0;right:0}.el-step.is-vertical{display:flex}.el-step.is-vertical .el-step__head{flex-grow:0;width:24px}.el-step.is-vertical .el-step__main{flex-grow:1;padding-left:10px}.el-step.is-vertical .el-step__title{padding-bottom:8px;line-height:24px}.el-step.is-vertical .el-step__line{width:2px;top:0;bottom:0;left:11px}.el-step.is-vertical .el-step__icon.is-icon{width:24px}.el-step.is-vertical .el-step__description{padding-right:0}.el-step.is-center .el-step__head,.el-step.is-center .el-step__main{text-align:center}.el-step.is-center .el-step__description{padding-left:20%;padding-right:20%}.el-step.is-center .el-step__line{left:50%;right:-50%}.el-step.is-simple{align-items:center;display:flex}.el-step.is-simple .el-step__head{width:auto;padding-right:10px;font-size:0}.el-step.is-simple .el-step__icon{background:0 0;width:16px;height:16px;font-size:12px}.el-step.is-simple .el-step__icon-inner[class*=el-icon]:not(.is-status){font-size:18px}.el-step.is-simple .el-step__icon-inner.is-status{transform:scale(.8)translateY(1px)}.el-step.is-simple .el-step__main{flex-grow:1;align-items:stretch;display:flex;position:relative}.el-step.is-simple .el-step__title{font-size:16px;line-height:20px}.el-step.is-simple:not(:last-of-type) .el-step__title{overflow-wrap:break-word;max-width:50%}.el-step.is-simple .el-step__arrow{flex-grow:1;justify-content:center;align-items:center;display:flex}.el-step.is-simple .el-step__arrow:before,.el-step.is-simple .el-step__arrow:after{content:"";background:var(--el-text-color-placeholder);width:1px;height:15px;display:inline-block;position:absolute}.el-step.is-simple .el-step__arrow:before{transform-origin:0 0;transform:rotate(-45deg)translateY(-4px)}.el-step.is-simple .el-step__arrow:after{transform-origin:100% 100%;transform:rotate(45deg)translateY(4px)}.el-step.is-simple:last-of-type .el-step__arrow{display:none}.el-steps{line-height:normal;display:flex}.el-steps--simple{background:var(--el-fill-color-light);border-radius:4px;padding:13px 8%}.el-steps--horizontal{white-space:nowrap}.el-steps--vertical{flex-flow:column;height:100%}.el-switch{--el-switch-on-color:var(--el-color-primary);--el-switch-off-color:var(--el-border-color);vertical-align:middle;align-items:center;height:32px;font-size:14px;line-height:20px;display:inline-flex;position:relative}.el-switch.is-disabled .el-switch__core,.el-switch.is-disabled .el-switch__label{cursor:not-allowed}.el-switch__label{transition:var(--el-transition-duration-fast);cursor:pointer;vertical-align:middle;height:20px;color:var(--el-text-color-primary);font-size:14px;font-weight:500;display:inline-block}.el-switch__label.is-active{color:var(--el-color-primary)}.el-switch__label--left{margin-right:10px}.el-switch__label--right{margin-left:10px}.el-switch__label *{font-size:14px;line-height:1;display:inline-block}.el-switch__label .el-icon{height:inherit}.el-switch__label .el-icon svg{vertical-align:middle}.el-switch__input{opacity:0;width:0;height:0;margin:0;position:absolute}.el-switch__input:focus-visible~.el-switch__core{outline:2px solid var(--el-switch-on-color);outline-offset:1px}.el-switch__core{border:1px solid var(--el-switch-border-color,var(--el-switch-off-color));box-sizing:border-box;background:var(--el-switch-off-color);cursor:pointer;min-width:40px;height:20px;transition:border-color var(--el-transition-duration),background-color var(--el-transition-duration);border-radius:10px;outline:none;align-items:center;display:inline-flex;position:relative}.el-switch__core .el-switch__inner{width:100%;transition:all var(--el-transition-duration);justify-content:center;align-items:center;height:16px;padding:0 4px 0 18px;display:flex;overflow:hidden}.el-switch__core .el-switch__inner-wrapper{color:var(--el-color-white);-webkit-user-select:none;user-select:none;text-overflow:ellipsis;white-space:nowrap;align-items:center;font-size:12px;display:flex;overflow:hidden}.el-switch__core .el-switch__action{border-radius:var(--el-border-radius-circle);transition:all var(--el-transition-duration);background-color:var(--el-color-white);width:16px;height:16px;color:var(--el-switch-off-color);justify-content:center;align-items:center;display:flex;position:absolute;left:1px}.el-switch.is-checked .el-switch__core{border-color:var(--el-switch-border-color,var(--el-switch-on-color));background-color:var(--el-switch-on-color)}.el-switch.is-checked .el-switch__core .el-switch__action{color:var(--el-switch-on-color);left:calc(100% - 17px)}.el-switch.is-checked .el-switch__core .el-switch__inner{padding:0 18px 0 4px}.el-switch.is-disabled{opacity:.6}.el-switch--wide .el-switch__label.el-switch__label--left span{left:10px}.el-switch--wide .el-switch__label.el-switch__label--right span{right:10px}.el-switch .label-fade-enter-from,.el-switch .label-fade-leave-active{opacity:0}.el-switch--large{height:40px;font-size:14px;line-height:24px}.el-switch--large .el-switch__label{height:24px;font-size:14px}.el-switch--large .el-switch__label *{font-size:14px}.el-switch--large .el-switch__core{border-radius:12px;min-width:50px;height:24px}.el-switch--large .el-switch__core .el-switch__inner{height:20px;padding:0 6px 0 22px}.el-switch--large .el-switch__core .el-switch__action{width:20px;height:20px}.el-switch--large.is-checked .el-switch__core .el-switch__action{left:calc(100% - 21px)}.el-switch--large.is-checked .el-switch__core .el-switch__inner{padding:0 22px 0 6px}.el-switch--small{height:24px;font-size:12px;line-height:16px}.el-switch--small .el-switch__label{height:16px;font-size:12px}.el-switch--small .el-switch__label *{font-size:12px}.el-switch--small .el-switch__core{border-radius:8px;min-width:30px;height:16px}.el-switch--small .el-switch__core .el-switch__inner{height:12px;padding:0 2px 0 14px}.el-switch--small .el-switch__core .el-switch__action{width:12px;height:12px}.el-switch--small.is-checked .el-switch__core .el-switch__action{left:calc(100% - 13px)}.el-switch--small.is-checked .el-switch__core .el-switch__inner{padding:0 14px 0 2px}.el-table-column--selection .cell{padding-left:14px;padding-right:14px}.el-table-filter{border:solid 1px var(--el-border-color-lighter);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;background-color:#fff;border-radius:2px}.el-table-filter__list{outline:none;min-width:100px;margin:0;padding:5px 0;list-style:none}.el-table-filter__list-item{cursor:pointer;line-height:36px;font-size:var(--el-font-size-base);outline:none;padding:0 10px}.el-table-filter__list-item:hover,.el-table-filter__list-item:focus{background-color:var(--el-color-primary-light-9);color:var(--el-color-primary)}.el-table-filter__list-item.is-active{background-color:var(--el-color-primary);color:#fff}.el-table-filter__multiple{outline:none}.el-table-filter__content{min-width:100px}.el-table-filter__bottom{border-top:1px solid var(--el-border-color-lighter);padding:8px}.el-table-filter__bottom button{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-filter__bottom button:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-filter__bottom button{color:var(--el-text-color-regular);font-size:var(--el-font-size-small);padding:0 3px}.el-table-filter__bottom button:hover{color:var(--el-color-primary)}.el-table-filter__bottom button.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table-filter__wrap{max-height:280px}.el-table-filter__checkbox-group{padding:10px}.el-table-filter__checkbox-group label.el-checkbox{height:unset;align-items:center;margin-bottom:12px;margin-left:5px;margin-right:5px;display:flex}.el-table-filter__checkbox-group .el-checkbox:last-child{margin-bottom:0}.el-table{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-fill-color-blank);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px #00000026;--el-table-fixed-right-column:inset -10px 0 10px -10px #00000026;--el-table-index:var(--el-index-normal);box-sizing:border-box;background-color:var(--el-table-bg-color);width:100%;max-width:100%;height:-moz-fit-content;height:fit-content;font-size:var(--el-font-size-base);color:var(--el-table-text-color);position:relative;overflow:hidden}.el-table__inner-wrapper{flex-direction:column;height:100%;display:flex;position:relative}.el-table__inner-wrapper:before{height:1px;bottom:0;left:0}.el-table tbody:focus-visible{outline:none}.el-table.has-footer.el-table--scrollable-y tr:last-child td.el-table__cell,.el-table.has-footer.el-table--fluid-height tr:last-child td.el-table__cell{border-bottom-color:#0000}.el-table__empty-block{text-align:center;justify-content:center;align-items:center;width:100%;min-height:60px;display:flex;position:sticky;left:0}.el-table__empty-text{width:50%;color:var(--el-text-color-secondary);line-height:60px}.el-table__expand-column .cell{text-align:center;-webkit-user-select:none;user-select:none;padding:0}.el-table__expand-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__expand-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:-2px}.el-table__expand-icon{color:var(--el-text-color-regular);width:min(23px,100%);height:23px;font-size:12px;line-height:12px}.el-table__expand-icon.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-table__expand-icon--expanded{transform:rotate(90deg)}.el-table__expand-icon>.el-icon{font-size:12px}.el-table__expanded-cell{background-color:var(--el-table-expanded-cell-bg-color)}.el-table__expanded-cell[class*=cell]{padding:20px 50px}.el-table__expanded-cell:hover{background-color:#0000!important}.el-table__placeholder{width:20px;display:inline-block}.el-table__append-wrapper{overflow:hidden}.el-table--fit{border-bottom:0;border-right:0}.el-table--fit .el-table__cell.gutter{border-right-width:1px}.el-table--fit .el-table__inner-wrapper:before{width:100%}.el-table thead{color:var(--el-table-header-text-color)}.el-table thead th{font-weight:600}.el-table thead.is-group th.el-table__cell{background:var(--el-fill-color-light)}.el-table .el-table__cell{box-sizing:border-box;text-overflow:ellipsis;vertical-align:middle;text-align:left;min-width:0;z-index:var(--el-table-index);padding:8px 0;position:relative}.el-table .el-table__cell.is-center{text-align:center}.el-table .el-table__cell.is-right{text-align:right}.el-table .el-table__cell.gutter{border-bottom-width:0;border-right-width:0;width:15px;padding:0}.el-table .el-table__cell.is-hidden>*{visibility:hidden}.el-table .cell{box-sizing:border-box;text-overflow:ellipsis;white-space:normal;overflow-wrap:break-word;padding:0 12px;line-height:23px;overflow:hidden}.el-table .cell.el-tooltip{white-space:nowrap;min-width:50px}.el-table--large{font-size:var(--el-font-size-base)}.el-table--large .el-table__cell{padding:12px 0}.el-table--large .cell{padding:0 16px}.el-table--default{font-size:var(--el-font-size-base)}.el-table--default .el-table__cell{padding:8px 0}.el-table--default .cell{padding:0 12px}.el-table--small{font-size:var(--el-font-size-extra-small)}.el-table--small .el-table__cell{padding:4px 0}.el-table--small .cell{padding:0 8px}.el-table tr{background-color:var(--el-table-tr-bg-color)}.el-table tr input[type=checkbox]{margin:0}.el-table th.el-table__cell.is-leaf,.el-table td.el-table__cell{border-bottom:var(--el-table-border)}.el-table th.el-table__cell.is-sortable{cursor:pointer}.el-table th.el-table__cell{background-color:var(--el-table-header-bg-color)}.el-table th.el-table__cell>.cell.highlight{color:var(--el-color-primary)}.el-table th.el-table__cell.required>div:before{content:"";vertical-align:middle;background:#ff4d51;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.el-table td.el-table__cell div{box-sizing:border-box}.el-table td.el-table__cell.gutter{width:0}.el-table--border:after,.el-table--border:before,.el-table--border .el-table__inner-wrapper:after,.el-table__inner-wrapper:before{content:"";background-color:var(--el-table-border-color);z-index:calc(var(--el-table-index) + 2);position:absolute}.el-table--border .el-table__inner-wrapper:after{width:100%;height:1px;z-index:calc(var(--el-table-index) + 2);top:0;left:0}.el-table--border:before{width:1px;height:100%;top:-1px;left:0}.el-table--border:after{width:1px;height:100%;top:-1px;right:0}.el-table--border .el-table__inner-wrapper{border-bottom:none;border-right:none}.el-table--border .el-table__footer-wrapper{flex-shrink:0;position:relative}.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table--border th.el-table__cell.gutter:last-of-type{border-bottom:var(--el-table-border);border-bottom-width:1px}.el-table--border th.el-table__cell{border-bottom:var(--el-table-border)}.el-table--hidden{visibility:hidden}.el-table__header-wrapper,.el-table__body-wrapper,.el-table__footer-wrapper{width:100%}.el-table__header-wrapper tr td.el-table-fixed-column--left,.el-table__header-wrapper tr td.el-table-fixed-column--right,.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right,.el-table__body-wrapper tr td.el-table-fixed-column--left,.el-table__body-wrapper tr td.el-table-fixed-column--right,.el-table__body-wrapper tr th.el-table-fixed-column--left,.el-table__body-wrapper tr th.el-table-fixed-column--right,.el-table__footer-wrapper tr td.el-table-fixed-column--left,.el-table__footer-wrapper tr td.el-table-fixed-column--right,.el-table__footer-wrapper tr th.el-table-fixed-column--left,.el-table__footer-wrapper tr th.el-table-fixed-column--right{background:inherit;z-index:calc(var(--el-table-index) + 1);position:sticky!important}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{content:"";width:10px;box-shadow:none;touch-action:none;pointer-events:none;position:absolute;top:0;bottom:0;overflow:hidden}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column:before{left:-10px}.el-table__header-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__header-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__body-wrapper tr th.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr td.el-table-fixed-column--right.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--left.is-last-column:before,.el-table__footer-wrapper tr th.el-table-fixed-column--right.is-last-column:before{right:-10px}.el-table__header-wrapper tr td.el-table__fixed-right-patch,.el-table__header-wrapper tr th.el-table__fixed-right-patch,.el-table__body-wrapper tr td.el-table__fixed-right-patch,.el-table__body-wrapper tr th.el-table__fixed-right-patch,.el-table__footer-wrapper tr td.el-table__fixed-right-patch,.el-table__footer-wrapper tr th.el-table__fixed-right-patch{z-index:calc(var(--el-table-index) + 1);background:#fff;right:0;position:sticky!important}.el-table__header-wrapper{flex-shrink:0}.el-table__header-wrapper tr th.el-table-fixed-column--left,.el-table__header-wrapper tr th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__header,.el-table__body,.el-table__footer{table-layout:fixed;border-collapse:separate}.el-table__header-wrapper{overflow:hidden}.el-table__header-wrapper tbody td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__footer-wrapper{flex-shrink:0;overflow:hidden}.el-table__footer-wrapper tfoot td.el-table__cell{background-color:var(--el-table-row-hover-bg-color);color:var(--el-table-text-color)}.el-table__header-wrapper .el-table-column--selection>.cell,.el-table__body-wrapper .el-table-column--selection>.cell{align-items:center;height:23px;display:inline-flex}.el-table__header-wrapper .el-table-column--selection .el-checkbox,.el-table__body-wrapper .el-table-column--selection .el-checkbox{height:unset}.el-table.is-scrolling-left .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-left.el-table--border .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:var(--el-table-border)}.el-table.is-scrolling-left th.el-table-fixed-column--left{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-right .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-right th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column.el-table__cell{border-right:none}.el-table.is-scrolling-middle .el-table-fixed-column--right.is-first-column:before{box-shadow:var(--el-table-fixed-right-column)}.el-table.is-scrolling-middle .el-table-fixed-column--left.is-last-column:before{box-shadow:var(--el-table-fixed-left-column)}.el-table.is-scrolling-none .el-table-fixed-column--left.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--left.is-last-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-first-column:before,.el-table.is-scrolling-none .el-table-fixed-column--right.is-last-column:before{box-shadow:none}.el-table.is-scrolling-none th.el-table-fixed-column--left,.el-table.is-scrolling-none th.el-table-fixed-column--right{background-color:var(--el-table-header-bg-color)}.el-table__body-wrapper{flex:1;position:relative;overflow:hidden}.el-table__body-wrapper .el-scrollbar__bar{z-index:calc(var(--el-table-index) + 2)}.el-table .caret-wrapper{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table .caret-wrapper:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table .caret-wrapper{vertical-align:middle;width:24px;height:14px;overflow:initial;flex-direction:column;align-items:center;display:inline-flex;position:relative}.el-table .sort-caret{border:5px solid #0000;width:0;height:0;position:absolute;left:7px}.el-table .sort-caret.ascending{border-bottom-color:var(--el-text-color-placeholder);top:-5px}.el-table .sort-caret.descending{border-top-color:var(--el-text-color-placeholder);bottom:-3px}.el-table .ascending .sort-caret.ascending{border-bottom-color:var(--el-color-primary)}.el-table .descending .sort-caret.descending{border-top-color:var(--el-color-primary)}.el-table .hidden-columns{visibility:hidden;z-index:-1;position:absolute}.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:var(--el-fill-color-lighter)}.el-table--striped .el-table__body tr.el-table__row--striped.current-row td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table__body tr.hover-row>td.el-table__cell,.el-table__body tr.hover-row.current-row>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped>td.el-table__cell,.el-table__body tr.hover-row.el-table__row--striped.current-row>td.el-table__cell,.el-table__body tr>td.hover-cell{background-color:var(--el-table-row-hover-bg-color)}.el-table__body tr.current-row>td.el-table__cell{background-color:var(--el-table-current-row-bg-color)}.el-table.el-table--scrollable-y .el-table__body-header{z-index:calc(var(--el-table-index) + 2);position:sticky;top:0}.el-table.el-table--scrollable-y .el-table__body-footer{z-index:calc(var(--el-table-index) + 2);position:sticky;bottom:0}.el-table__column-resize-proxy{border-left:var(--el-table-border);width:0;z-index:calc(var(--el-table-index) + 9);position:absolute;top:0;bottom:0;left:200px}.el-table__column-filter-trigger{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table__column-filter-trigger:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table__column-filter-trigger{display:inline-block}.el-table__column-filter-trigger i{color:var(--el-color-info);vertical-align:middle;font-size:14px}.el-table__border-left-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0;left:0}.el-table__border-bottom-patch{height:1px;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;left:0}.el-table__border-right-patch{width:1px;height:100%;z-index:calc(var(--el-table-index) + 2);background-color:var(--el-table-border-color);position:absolute;top:0}.el-table--enable-row-transition .el-table__body td.el-table__cell{transition:background-color .25s}.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell{background-color:var(--el-table-row-hover-bg-color)}.el-table [class*=el-table__row--level] .el-table__expand-icon{text-align:center;width:20px;display:inline-block}.el-table .el-table.el-table--border .el-table__cell{border-right:var(--el-table-border)}.el-table:not(.el-table--border) .el-table__cell{border-right:none}.el-table:not(.el-table--border)>.el-table__inner-wrapper:after{content:none}.el-table-v2{--el-table-border-color:var(--el-border-color-lighter);--el-table-border:1px solid var(--el-table-border-color);--el-table-text-color:var(--el-text-color-regular);--el-table-header-text-color:var(--el-text-color-secondary);--el-table-row-hover-bg-color:var(--el-fill-color-light);--el-table-current-row-bg-color:var(--el-color-primary-light-9);--el-table-header-bg-color:var(--el-fill-color-blank);--el-table-fixed-box-shadow:var(--el-box-shadow-light);--el-table-bg-color:var(--el-fill-color-blank);--el-table-tr-bg-color:var(--el-fill-color-blank);--el-table-expanded-cell-bg-color:var(--el-fill-color-blank);--el-table-fixed-left-column:inset 10px 0 10px -10px #00000026;--el-table-fixed-right-column:inset -10px 0 10px -10px #00000026;--el-table-index:var(--el-index-normal);font-size:var(--el-font-size-base)}.el-table-v2 *{box-sizing:border-box}.el-table-v2__root{position:relative}.el-table-v2__root:hover .el-table-v2__main .el-virtual-scrollbar{opacity:1}.el-table-v2__main{background-color:var(--el-bg-color);flex-direction:column-reverse;display:flex;position:absolute;top:0;left:0;overflow:hidden}.el-table-v2__main .el-vl__horizontal,.el-table-v2__main .el-vl__vertical{z-index:2}.el-table-v2__left{background-color:var(--el-bg-color);flex-direction:column-reverse;display:flex;position:absolute;top:0;left:0;overflow:hidden;box-shadow:2px 0 4px #0000000f}.el-table-v2__left .el-virtual-scrollbar{opacity:0}.el-table-v2__left .el-vl__vertical,.el-table-v2__left .el-vl__horizontal{z-index:-1}.el-table-v2__right{background-color:var(--el-bg-color);flex-direction:column-reverse;display:flex;position:absolute;top:0;right:0;overflow:hidden;box-shadow:-2px 0 4px #0000000f}.el-table-v2__right .el-virtual-scrollbar{opacity:0}.el-table-v2__right .el-vl__vertical,.el-table-v2__right .el-vl__horizontal{z-index:-1}.el-table-v2__header-row,.el-table-v2__row{padding-inline-end:var(--el-table-scrollbar-size)}.el-table-v2__header-wrapper{overflow:hidden}.el-table-v2__header{position:relative;overflow:hidden}.el-table-v2__header .el-checkbox{z-index:0}.el-table-v2__footer{position:absolute;bottom:0;left:0;right:0;overflow:hidden}.el-table-v2__empty{position:absolute;left:0}.el-table-v2__overlay{z-index:9999;position:absolute;inset:0}.el-table-v2__header-row{border-bottom:var(--el-table-border);display:flex}.el-table-v2__header-cell{-webkit-user-select:none;user-select:none;background-color:var(--el-table-header-bg-color);height:100%;color:var(--el-table-header-text-color);align-items:center;padding:0 8px;font-weight:700;display:flex;overflow:hidden}.el-table-v2__header-cell.is-align-center{text-align:center;justify-content:center}.el-table-v2__header-cell.is-align-right{text-align:right;justify-content:flex-end}.el-table-v2__header-cell.is-sortable{cursor:pointer}.el-table-v2__header-cell:hover .el-icon{display:block}.el-table-v2__sort-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-v2__sort-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-v2__sort-icon{transition:opacity,display var(--el-transition-duration);opacity:.6;display:none}.el-table-v2__sort-icon.is-sorting{opacity:1;display:flex}.el-table-v2__row{border-bottom:var(--el-table-border);transition:background-color var(--el-transition-duration);align-items:center;display:flex}.el-table-v2__row.is-hovered,.el-table-v2__row:hover{background-color:var(--el-table-row-hover-bg-color)}.el-table-v2__row-cell{align-items:center;height:100%;padding:0 8px;display:flex;overflow:hidden}.el-table-v2__row-cell.is-align-center{text-align:center;justify-content:center}.el-table-v2__row-cell.is-align-right{text-align:right;justify-content:flex-end}.el-table-v2__expand-icon{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--el-border-radius-base);transition:transform var(--el-transition-duration-fast) ease-in-out;background-color:#0000;border:none;outline:none;margin:0;padding:0}.el-table-v2__expand-icon:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-table-v2__expand-icon{-webkit-user-select:none;user-select:none;margin:0 4px}.el-table-v2__expand-icon svg{transition:transform var(--el-transition-duration)}.el-table-v2__expand-icon.is-expanded svg{transform:rotate(90deg)}.el-table-v2:not(.is-dynamic) .el-table-v2__cell-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.el-table-v2.is-dynamic .el-table-v2__row{align-items:stretch;overflow:hidden}.el-table-v2.is-dynamic .el-table-v2__row .el-table-v2__row-cell{overflow-wrap:break-word}.el-tabs{--el-tabs-header-height:40px;display:flex}.el-tabs__header{justify-content:space-between;align-items:center;margin:0 0 15px;padding:0;display:flex;position:relative}.el-tabs__header-vertical{flex-direction:column}.el-tabs__active-bar{background-color:var(--el-color-primary);z-index:1;height:2px;transition:width var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),transform var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);list-style:none;position:absolute;bottom:0;left:0}.el-tabs__active-bar.is-bottom{bottom:auto}.el-tabs__new-tab{border:1px solid var(--el-border-color);text-align:center;width:20px;height:20px;color:var(--el-text-color-primary);cursor:pointer;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin:10px 0 10px 10px;font-size:12px;line-height:20px;transition:all .15s;display:flex}.el-tabs__new-tab .is-icon-plus{height:inherit;width:inherit;transform:scale(.8)}.el-tabs__new-tab .is-icon-plus svg{vertical-align:middle}.el-tabs__new-tab:hover{color:var(--el-color-primary)}.el-tabs__new-tab-vertical{margin-left:0}.el-tabs__nav-wrap{flex:auto;margin-bottom:-1px;position:relative;overflow:hidden}.el-tabs__nav-wrap:after{content:"";background-color:var(--el-border-color-light);width:100%;height:2px;z-index:var(--el-index-normal);position:absolute;bottom:0;left:0}.el-tabs__nav-wrap.is-bottom:after{top:0;bottom:auto}.el-tabs__nav-wrap.is-scrollable{box-sizing:border-box;padding:0 20px}.el-tabs__nav-scroll{overflow:hidden}.el-tabs__nav-next,.el-tabs__nav-prev{cursor:pointer;color:var(--el-text-color-secondary);text-align:center;width:20px;font-size:12px;line-height:44px;position:absolute}.el-tabs__nav-next.is-disabled,.el-tabs__nav-prev.is-disabled{color:var(--el-text-color-disabled);cursor:not-allowed}.el-tabs__nav-next{right:0}.el-tabs__nav-prev{left:0}.el-tabs__nav{white-space:nowrap;transition:transform var(--el-transition-duration);float:left;z-index:calc(var(--el-index-normal) + 1);display:flex;position:relative}.el-tabs__nav.is-stretch{min-width:100%;display:flex}.el-tabs__nav.is-stretch>*{text-align:center;flex:1}.el-tabs__item{height:var(--el-tabs-header-height);box-sizing:border-box;font-size:var(--el-font-size-base);color:var(--el-text-color-primary);justify-content:center;align-items:center;padding:0 20px;font-weight:500;list-style:none;display:flex;position:relative}.el-tabs__item:focus,.el-tabs__item:focus:active{outline:none}.el-tabs__item:focus-visible{box-shadow:0 0 2px 2px var(--el-color-primary) inset;border-radius:3px}.el-tabs__item .is-icon-close{text-align:center;transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);border-radius:50%;margin-left:5px}.el-tabs__item .is-icon-close:before{display:inline-block;transform:scale(.9)}.el-tabs__item .is-icon-close:hover{background-color:var(--el-text-color-placeholder);color:#fff}.el-tabs__item.is-active{color:var(--el-color-primary)}.el-tabs__item:hover{color:var(--el-color-primary);cursor:pointer}.el-tabs__item.is-disabled{color:var(--el-disabled-text-color);cursor:not-allowed}.el-tabs__content{flex-grow:1;position:relative;overflow:hidden}.el-tabs--top>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:0}.el-tabs--top>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom>.el-tabs__header .el-tabs__item:last-child{padding-right:0}.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:nth-child(2),.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:nth-child(2){padding-left:20px}.el-tabs--top.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--top.el-tabs--card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--border-card>.el-tabs__header .el-tabs__item:last-child,.el-tabs--bottom.el-tabs--card>.el-tabs__header .el-tabs__item:last-child{padding-right:20px}.el-tabs--card>.el-tabs__header{border-bottom:1px solid var(--el-border-color-light);height:var(--el-tabs-header-height);box-sizing:border-box}.el-tabs--card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--card>.el-tabs__header .el-tabs__nav{border:1px solid var(--el-border-color-light);box-sizing:border-box;border-bottom:none;border-radius:4px 4px 0 0}.el-tabs--card>.el-tabs__header .el-tabs__active-bar{display:none}.el-tabs--card>.el-tabs__header .el-tabs__item .is-icon-close{transform-origin:100%;width:0;height:14px;font-size:12px;position:relative;right:-2px;overflow:hidden}.el-tabs--card>.el-tabs__header .el-tabs__item{border-bottom:1px solid #0000;border-left:1px solid var(--el-border-color-light);transition:color var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier),padding var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);margin-top:-1px}.el-tabs--card>.el-tabs__header .el-tabs__item:first-child{border-left:none}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover{padding-left:13px;padding-right:13px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-closable:hover .is-icon-close{width:14px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active{border-bottom-color:var(--el-bg-color)}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable{padding-left:20px;padding-right:20px}.el-tabs--card>.el-tabs__header .el-tabs__item.is-active.is-closable .is-icon-close{width:14px}.el-tabs--border-card{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color)}.el-tabs--border-card>.el-tabs__content{padding:15px}.el-tabs--border-card>.el-tabs__header{background-color:var(--el-fill-color-light);border-bottom:1px solid var(--el-border-color-light);margin:0}.el-tabs--border-card>.el-tabs__header .el-tabs__nav-wrap:after{content:none}.el-tabs--border-card>.el-tabs__header .el-tabs__item{transition:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);color:var(--el-text-color-secondary);border:1px solid #0000;margin-top:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item:first-child,.el-tabs--border-card>.el-tabs__header .el-tabs__item+.el-tabs__item{margin-left:-1px}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active{color:var(--el-color-primary);background-color:var(--el-bg-color-overlay);border-right-color:var(--el-border-color);border-left-color:var(--el-border-color)}.el-tabs--border-card>.el-tabs__header .el-tabs__item:not(.is-disabled):hover{color:var(--el-color-primary)}.el-tabs--border-card>.el-tabs__header .el-tabs__item.is-disabled{color:var(--el-disabled-text-color)}.el-tabs--border-card>.el-tabs__header .is-scrollable .el-tabs__item:first-child{margin-left:0}.el-tabs--bottom{flex-direction:column}.el-tabs--bottom .el-tabs__header.is-bottom{margin-top:10px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__header.is-bottom{border-bottom:0;border-top:1px solid var(--el-border-color)}.el-tabs--bottom.el-tabs--border-card .el-tabs__nav-wrap.is-bottom{margin-top:-1px;margin-bottom:0}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom:not(.is-active){border:1px solid #0000}.el-tabs--bottom.el-tabs--border-card .el-tabs__item.is-bottom{margin:0 -1px -1px}.el-tabs--left,.el-tabs--right{overflow:hidden}.el-tabs--left .el-tabs__header.is-left,.el-tabs--left .el-tabs__header.is-right,.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--left .el-tabs__nav-scroll,.el-tabs--right .el-tabs__header.is-left,.el-tabs--right .el-tabs__header.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-scroll{height:100%}.el-tabs--left .el-tabs__active-bar.is-left,.el-tabs--left .el-tabs__active-bar.is-right,.el-tabs--right .el-tabs__active-bar.is-left,.el-tabs--right .el-tabs__active-bar.is-right{width:2px;height:auto;top:0;bottom:auto}.el-tabs--left .el-tabs__nav-wrap.is-left,.el-tabs--left .el-tabs__nav-wrap.is-right,.el-tabs--right .el-tabs__nav-wrap.is-left,.el-tabs--right .el-tabs__nav-wrap.is-right{margin-bottom:0}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{text-align:center;cursor:pointer;width:100%;height:30px;line-height:30px}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev i,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next i{transform:rotate(90deg)}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev.is-disabled,.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next.is-disabled,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev.is-disabled,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev.is-disabled,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next.is-disabled{cursor:not-allowed}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-prev,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-prev{top:0;left:auto}.el-tabs--left .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--left .el-tabs__nav-wrap.is-right>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-left>.el-tabs__nav-next,.el-tabs--right .el-tabs__nav-wrap.is-right>.el-tabs__nav-next{bottom:0;right:auto}.el-tabs--left .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--left .el-tabs__nav-wrap.is-right.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-left.is-scrollable,.el-tabs--right .el-tabs__nav-wrap.is-right.is-scrollable{padding:30px 0}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__nav-wrap.is-right:after,.el-tabs--right .el-tabs__nav-wrap.is-left:after,.el-tabs--right .el-tabs__nav-wrap.is-right:after{width:2px;height:100%;top:0;bottom:auto}.el-tabs--left .el-tabs__nav.is-left,.el-tabs--left .el-tabs__nav.is-right,.el-tabs--right .el-tabs__nav.is-left,.el-tabs--right .el-tabs__nav.is-right{flex-direction:column}.el-tabs--left .el-tabs__item.is-left,.el-tabs--right .el-tabs__item.is-left{justify-content:flex-end}.el-tabs--left .el-tabs__item.is-right,.el-tabs--right .el-tabs__item.is-right{justify-content:flex-start}.el-tabs--left{flex-direction:row}.el-tabs--left .el-tabs__header.is-left{margin-bottom:0;margin-right:10px}.el-tabs--left .el-tabs__nav-wrap.is-left{margin-right:-1px}.el-tabs--left .el-tabs__nav-wrap.is-left:after,.el-tabs--left .el-tabs__active-bar.is-left{left:auto;right:0}.el-tabs--left .el-tabs__item.is-left{text-align:right}.el-tabs--left.el-tabs--card .el-tabs__active-bar.is-left{display:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left{border-left:none;border-right:1px solid var(--el-border-color-light);border-bottom:none;border-top:1px solid var(--el-border-color-light);text-align:left}.el-tabs--left.el-tabs--card .el-tabs__item.is-left:first-child{border-right:1px solid var(--el-border-color-light);border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active{border:1px solid var(--el-border-color-light);border-bottom:none;border-left:none;border-right-color:#fff}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:first-child{border-top:none}.el-tabs--left.el-tabs--card .el-tabs__item.is-left.is-active:last-child{border-bottom:none}.el-tabs--left.el-tabs--card .el-tabs__nav{border-bottom:1px solid var(--el-border-color-light);border-right:none;border-radius:4px 0 0 4px}.el-tabs--left.el-tabs--card .el-tabs__new-tab{float:none}.el-tabs--left.el-tabs--border-card .el-tabs__header.is-left{border-right:1px solid var(--el-border-color)}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left{border:1px solid #0000;margin:-1px 0 -1px -1px}.el-tabs--left.el-tabs--border-card .el-tabs__item.is-left.is-active{border-color:#d1dbe5 #0000}.el-tabs--left>.el-tabs__content+.el-tabs__header{order:-1}.el-tabs--right .el-tabs__header.is-right{margin-bottom:0;margin-left:10px}.el-tabs--right .el-tabs__nav-wrap.is-right{margin-left:-1px}.el-tabs--right .el-tabs__nav-wrap.is-right:after{left:0;right:auto}.el-tabs--right .el-tabs__active-bar.is-right{left:0}.el-tabs--right.el-tabs--card .el-tabs__active-bar.is-right{display:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right{border-bottom:none;border-top:1px solid var(--el-border-color-light)}.el-tabs--right.el-tabs--card .el-tabs__item.is-right:first-child{border-left:1px solid var(--el-border-color-light);border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active{border:1px solid var(--el-border-color-light);border-bottom:none;border-left-color:#fff;border-right:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:first-child{border-top:none}.el-tabs--right.el-tabs--card .el-tabs__item.is-right.is-active:last-child{border-bottom:none}.el-tabs--right.el-tabs--card .el-tabs__nav{border-bottom:1px solid var(--el-border-color-light);border-left:none;border-radius:0 4px 4px 0}.el-tabs--right.el-tabs--border-card .el-tabs__header.is-right{border-left:1px solid var(--el-border-color)}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right{border:1px solid #0000;margin:-1px -1px -1px 0}.el-tabs--right.el-tabs--border-card .el-tabs__item.is-right.is-active{border-color:#d1dbe5 #0000}.el-tabs--top{flex-direction:column}.el-tabs--top>.el-tabs__content+.el-tabs__header{order:-1}.slideInRight-transition,.slideInLeft-transition{display:inline-block}.slideInRight-enter{animation:slideInRight-enter var(--el-transition-duration)}.slideInRight-leave{animation:slideInRight-leave var(--el-transition-duration);position:absolute;left:0;right:0}.slideInLeft-enter{animation:slideInLeft-enter var(--el-transition-duration)}.slideInLeft-leave{animation:slideInLeft-leave var(--el-transition-duration);position:absolute;left:0;right:0}@keyframes slideInRight-enter{0%{opacity:0;transform-origin:0 0;transform:translate(100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInRight-leave{0%{transform-origin:0 0;opacity:1;transform:translate(0)}to{transform-origin:0 0;opacity:0;transform:translate(100%)}}@keyframes slideInLeft-enter{0%{opacity:0;transform-origin:0 0;transform:translate(-100%)}to{opacity:1;transform-origin:0 0;transform:translate(0)}}@keyframes slideInLeft-leave{0%{transform-origin:0 0;opacity:1;transform:translate(0)}to{transform-origin:0 0;opacity:0;transform:translate(-100%)}}.el-tag{--el-tag-font-size:12px;--el-tag-border-radius:4px;--el-tag-border-radius-rounded:9999px;background-color:var(--el-tag-bg-color);border-color:var(--el-tag-border-color);color:var(--el-tag-text-color);vertical-align:middle;height:24px;font-size:var(--el-tag-font-size);border-radius:var(--el-tag-border-radius);box-sizing:border-box;white-space:nowrap;--el-icon-size:14px;--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary);border-style:solid;border-width:1px;justify-content:center;align-items:center;padding:0 9px;line-height:1;display:inline-flex}.el-tag.el-tag--primary{--el-tag-bg-color:var(--el-color-primary-light-9);--el-tag-border-color:var(--el-color-primary-light-8);--el-tag-hover-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-bg-color:var(--el-color-success-light-9);--el-tag-border-color:var(--el-color-success-light-8);--el-tag-hover-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-bg-color:var(--el-color-warning-light-9);--el-tag-border-color:var(--el-color-warning-light-8);--el-tag-hover-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-bg-color:var(--el-color-danger-light-9);--el-tag-border-color:var(--el-color-danger-light-8);--el-tag-hover-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-bg-color:var(--el-color-error-light-9);--el-tag-border-color:var(--el-color-error-light-8);--el-tag-hover-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-bg-color:var(--el-color-info-light-9);--el-tag-border-color:var(--el-color-info-light-8);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-hit{border-color:var(--el-color-primary)}.el-tag.is-round{border-radius:var(--el-tag-border-radius-rounded)}.el-tag .el-tag__close{color:var(--el-tag-text-color);flex-shrink:0}.el-tag .el-tag__close:hover{color:var(--el-color-white);background-color:var(--el-tag-hover-color)}.el-tag.el-tag--primary{--el-tag-text-color:var(--el-color-primary)}.el-tag.el-tag--success{--el-tag-text-color:var(--el-color-success)}.el-tag.el-tag--warning{--el-tag-text-color:var(--el-color-warning)}.el-tag.el-tag--danger{--el-tag-text-color:var(--el-color-danger)}.el-tag.el-tag--error{--el-tag-text-color:var(--el-color-error)}.el-tag.el-tag--info{--el-tag-text-color:var(--el-color-info)}.el-tag .el-icon{cursor:pointer;font-size:calc(var(--el-icon-size) - 2px);height:var(--el-icon-size);width:var(--el-icon-size);border-radius:50%;display:flex}.el-tag .el-tag__close{background-color:#0000;border:none;border-radius:50%;outline:none;margin-left:6px;padding:0;overflow:hidden}.el-tag .el-tag__close:focus-visible{outline:2px solid var(--el-color-primary);outline-offset:2px}.el-tag--dark{--el-tag-text-color:var(--el-color-white);--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--primary{--el-tag-bg-color:var(--el-color-primary);--el-tag-border-color:var(--el-color-primary);--el-tag-hover-color:var(--el-color-primary-light-3)}.el-tag--dark.el-tag--success{--el-tag-bg-color:var(--el-color-success);--el-tag-border-color:var(--el-color-success);--el-tag-hover-color:var(--el-color-success-light-3)}.el-tag--dark.el-tag--warning{--el-tag-bg-color:var(--el-color-warning);--el-tag-border-color:var(--el-color-warning);--el-tag-hover-color:var(--el-color-warning-light-3)}.el-tag--dark.el-tag--danger{--el-tag-bg-color:var(--el-color-danger);--el-tag-border-color:var(--el-color-danger);--el-tag-hover-color:var(--el-color-danger-light-3)}.el-tag--dark.el-tag--error{--el-tag-bg-color:var(--el-color-error);--el-tag-border-color:var(--el-color-error);--el-tag-hover-color:var(--el-color-error-light-3)}.el-tag--dark.el-tag--info{--el-tag-bg-color:var(--el-color-info);--el-tag-border-color:var(--el-color-info);--el-tag-hover-color:var(--el-color-info-light-3)}.el-tag--dark.el-tag--primary,.el-tag--dark.el-tag--success,.el-tag--dark.el-tag--warning,.el-tag--dark.el-tag--danger,.el-tag--dark.el-tag--error,.el-tag--dark.el-tag--info{--el-tag-text-color:var(--el-color-white)}.el-tag--plain,.el-tag--plain.el-tag--primary{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-primary-light-5);--el-tag-hover-color:var(--el-color-primary)}.el-tag--plain.el-tag--success{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-success-light-5);--el-tag-hover-color:var(--el-color-success)}.el-tag--plain.el-tag--warning{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-warning-light-5);--el-tag-hover-color:var(--el-color-warning)}.el-tag--plain.el-tag--danger{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-danger-light-5);--el-tag-hover-color:var(--el-color-danger)}.el-tag--plain.el-tag--error{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-error-light-5);--el-tag-hover-color:var(--el-color-error)}.el-tag--plain.el-tag--info{--el-tag-bg-color:var(--el-fill-color-blank);--el-tag-border-color:var(--el-color-info-light-5);--el-tag-hover-color:var(--el-color-info)}.el-tag.is-closable{padding-right:5px}.el-tag--large{--el-icon-size:16px;height:32px;padding:0 11px}.el-tag--large .el-tag__close{margin-left:8px}.el-tag--large.is-closable{padding-right:7px}.el-tag--small{--el-icon-size:12px;height:20px;padding:0 7px}.el-tag--small .el-tag__close{margin-left:4px}.el-tag--small.is-closable{padding-right:3px}.el-tag--small .el-icon-close{transform:scale(.8)}.el-tag.el-tag--primary.is-hit{border-color:var(--el-color-primary)}.el-tag.el-tag--success.is-hit{border-color:var(--el-color-success)}.el-tag.el-tag--warning.is-hit{border-color:var(--el-color-warning)}.el-tag.el-tag--danger.is-hit{border-color:var(--el-color-danger)}.el-tag.el-tag--error.is-hit{border-color:var(--el-color-error)}.el-tag.el-tag--info.is-hit{border-color:var(--el-color-info)}.el-text{--el-text-font-size:var(--el-font-size-base);--el-text-color:var(--el-text-color-regular);font-size:var(--el-text-font-size);color:var(--el-text-color);overflow-wrap:break-word;align-self:center;margin:0;padding:0}.el-text.is-truncated{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.el-text.is-line-clamp{-webkit-box-orient:vertical;display:-webkit-inline-box;overflow:hidden}.el-text--large{--el-text-font-size:var(--el-font-size-medium)}.el-text--default{--el-text-font-size:var(--el-font-size-base)}.el-text--small{--el-text-font-size:var(--el-font-size-extra-small)}.el-text.el-text--primary{--el-text-color:var(--el-color-primary)}.el-text.el-text--success{--el-text-color:var(--el-color-success)}.el-text.el-text--warning{--el-text-color:var(--el-color-warning)}.el-text.el-text--danger{--el-text-color:var(--el-color-danger)}.el-text.el-text--error{--el-text-color:var(--el-color-error)}.el-text.el-text--info{--el-text-color:var(--el-color-info)}.el-text>.el-icon{vertical-align:-2px}.time-select{min-width:0;margin:5px 0}.time-select .el-picker-panel__content{max-height:200px;margin:0}.time-select-item{padding:8px 10px;font-size:14px;line-height:20px}.time-select-item.disabled{color:var(--el-datepicker-border-color);cursor:not-allowed}.time-select-item:hover{background-color:var(--el-fill-color-light);cursor:pointer;font-weight:700}.time-select .time-select-item.selected:not(.disabled){color:var(--el-color-primary);font-weight:700}.el-timeline-item{padding-bottom:20px;position:relative}.el-timeline-item__wrapper{box-sizing:content-box;position:relative;top:-3px}.el-timeline-item__tail{border-left:2px solid var(--el-timeline-node-color);height:100%;position:absolute}.el-timeline-item .el-timeline-item__icon{color:var(--el-color-white);font-size:var(--el-font-size-small)}.el-timeline-item__node{background-color:var(--el-timeline-node-color);border-color:var(--el-timeline-node-color);box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.el-timeline-item__node--normal{width:var(--el-timeline-node-size-normal);height:var(--el-timeline-node-size-normal)}.el-timeline-item__node--large{width:var(--el-timeline-node-size-large);height:var(--el-timeline-node-size-large)}.el-timeline-item__node.is-hollow{background:var(--el-color-white);border-style:solid;border-width:2px}.el-timeline-item__node--primary{background-color:var(--el-color-primary);border-color:var(--el-color-primary)}.el-timeline-item__node--success{background-color:var(--el-color-success);border-color:var(--el-color-success)}.el-timeline-item__node--warning{background-color:var(--el-color-warning);border-color:var(--el-color-warning)}.el-timeline-item__node--danger{background-color:var(--el-color-danger);border-color:var(--el-color-danger)}.el-timeline-item__node--info{background-color:var(--el-color-info);border-color:var(--el-color-info)}.el-timeline-item__dot{justify-content:center;align-items:center;display:flex;position:absolute}.el-timeline-item__content{color:var(--el-text-color-primary)}.el-timeline-item__timestamp{color:var(--el-text-color-secondary);line-height:1;font-size:var(--el-font-size-small)}.el-timeline-item__timestamp.is-top{margin-bottom:8px;padding-top:4px}.el-timeline-item__timestamp.is-bottom{margin-top:8px}.el-timeline-item.is-start .el-timeline-item__wrapper{padding-left:28px}.el-timeline-item.is-start .el-timeline-item__tail{left:4px}.el-timeline-item.is-start .el-timeline-item__node--normal{left:-1px}.el-timeline-item.is-start .el-timeline-item__node--large{left:-2px}.el-timeline-item.is-end .el-timeline-item__wrapper{text-align:right;padding-right:28px}.el-timeline-item.is-end .el-timeline-item__tail{right:4px}.el-timeline-item.is-end .el-timeline-item__node--normal{right:-1px}.el-timeline-item.is-end .el-timeline-item__node--large{right:-2px}.el-timeline-item.is-alternate .el-timeline-item__tail,.el-timeline-item.is-alternate .el-timeline-item__node,.el-timeline-item.is-alternate-reverse .el-timeline-item__tail,.el-timeline-item.is-alternate-reverse .el-timeline-item__node{left:50%;transform:translate(-50%)}.el-timeline{--el-timeline-node-size-normal:12px;--el-timeline-node-size-large:14px;--el-timeline-node-color:var(--el-border-color-light);font-size:var(--el-font-size-base);margin:0;list-style:none}.el-timeline .el-timeline-item:last-child .el-timeline-item__tail{display:none}.el-timeline .el-timeline-item__center{align-items:center;display:flex}.el-timeline .el-timeline-item__center .el-timeline-item__wrapper{width:100%}.el-timeline .el-timeline-item__center .el-timeline-item__tail{top:0}.el-timeline .el-timeline-item__center:first-child .el-timeline-item__tail{height:calc(50% + 10px);top:calc(50% - 10px)}.el-timeline .el-timeline-item__center:last-child .el-timeline-item__tail{height:calc(50% - 10px);display:block}.el-timeline.is-start{padding-left:40px;padding-right:0}.el-timeline.is-end{padding-left:0;padding-right:40px}.el-timeline.is-alternate{padding-left:20px;padding-right:20px}.el-timeline.is-alternate .el-timeline-item:nth-child(odd) .el-timeline-item__wrapper{width:calc(50% - 28px);left:calc(50% - var(--el-timeline-node-size-large) / 2);padding-left:28px}.el-timeline.is-alternate .el-timeline-item:nth-child(2n) .el-timeline-item__wrapper{width:calc(50% - 28px + var(--el-timeline-node-size-large) / 2);text-align:right;padding-right:28px}.el-timeline.is-alternate-reverse{padding-left:20px;padding-right:20px}.el-timeline.is-alternate-reverse .el-timeline-item:nth-child(odd) .el-timeline-item__wrapper{width:calc(50% - 28px + var(--el-timeline-node-size-large) / 2);text-align:right;padding-right:28px}.el-timeline.is-alternate-reverse .el-timeline-item:nth-child(2n) .el-timeline-item__wrapper{width:calc(50% - 28px);left:calc(50% - var(--el-timeline-node-size-large) / 2);padding-left:28px}.el-transfer{--el-transfer-border-color:var(--el-border-color-lighter);--el-transfer-border-radius:var(--el-border-radius-base);--el-transfer-panel-width:200px;--el-transfer-panel-header-height:40px;--el-transfer-panel-header-bg-color:var(--el-fill-color-light);--el-transfer-panel-footer-height:40px;--el-transfer-panel-body-height:278px;--el-transfer-item-height:30px;--el-transfer-filter-height:32px;font-size:var(--el-font-size-base)}.el-transfer__buttons{vertical-align:middle;padding:0 30px;display:inline-block}.el-transfer__button{vertical-align:top}.el-transfer__button:nth-child(2){margin:0 0 0 10px}.el-transfer__button i,.el-transfer__button span{font-size:14px}.el-transfer__button .el-icon+span{margin-left:0}.el-transfer-panel{background:var(--el-bg-color-overlay);text-align:left;vertical-align:middle;width:var(--el-transfer-panel-width);box-sizing:border-box;max-height:100%;display:inline-block;position:relative;overflow:hidden}.el-transfer-panel__body{height:var(--el-transfer-panel-body-height);border-left:1px solid var(--el-transfer-border-color);border-right:1px solid var(--el-transfer-border-color);border-bottom:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);overflow:hidden}.el-transfer-panel__body.is-with-footer{border-bottom:none;border-bottom-right-radius:0;border-bottom-left-radius:0}.el-transfer-panel__list{height:var(--el-transfer-panel-body-height);box-sizing:border-box;margin:0;padding:6px 0;list-style:none;overflow:auto}.el-transfer-panel__list.is-filterable{height:calc(100% - var(--el-transfer-filter-height) - 30px);padding-top:0}.el-transfer-panel__item{height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);padding-left:15px;display:block!important}.el-transfer-panel__item+.el-transfer-panel__item{margin-left:0}.el-transfer-panel__item.el-checkbox{color:var(--el-text-color-regular);margin-right:30px}.el-transfer-panel__item:hover{color:var(--el-color-primary)}.el-transfer-panel__item.el-checkbox .el-checkbox__label{text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box;width:100%;line-height:var(--el-transfer-item-height);padding-left:22px;display:block;overflow:hidden}.el-transfer-panel__item .el-checkbox__input{position:absolute;top:8px}.el-transfer-panel__filter{text-align:center;box-sizing:border-box;padding:15px}.el-transfer-panel__filter .el-input__inner{height:var(--el-transfer-filter-height);box-sizing:border-box;width:100%;font-size:12px;display:inline-block}.el-transfer-panel__filter .el-icon-circle-close{cursor:pointer}.el-transfer-panel .el-transfer-panel__header{height:var(--el-transfer-panel-header-height);background:var(--el-transfer-panel-header-bg-color);border:1px solid var(--el-transfer-border-color);border-top-left-radius:var(--el-transfer-border-radius);border-top-right-radius:var(--el-transfer-border-radius);box-sizing:border-box;color:var(--el-color-black);align-items:center;margin:0;padding-left:15px;display:flex}.el-transfer-panel .el-transfer-panel__header .el-checkbox{align-items:center;width:100%;display:flex;position:relative}.el-transfer-panel .el-transfer-panel__header .el-checkbox .el-checkbox__label{min-width:0;color:var(--el-text-color-primary);flex:1;align-items:center;font-size:16px;font-weight:400;display:flex}.el-transfer-panel .el-transfer-panel__header-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.el-transfer-panel .el-transfer-panel__header-count{color:var(--el-text-color-secondary);flex-shrink:0;margin-left:8px;margin-right:15px;font-size:12px}.el-transfer-panel .el-transfer-panel__footer{height:var(--el-transfer-panel-footer-height);background:var(--el-bg-color-overlay);border:1px solid var(--el-transfer-border-color);border-bottom-left-radius:var(--el-transfer-border-radius);border-bottom-right-radius:var(--el-transfer-border-radius);margin:0;padding:0}.el-transfer-panel .el-transfer-panel__footer:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-transfer-panel .el-transfer-panel__footer .el-checkbox{color:var(--el-text-color-regular);padding-left:20px}.el-transfer-panel .el-transfer-panel__empty{height:var(--el-transfer-item-height);line-height:var(--el-transfer-item-height);color:var(--el-text-color-secondary);text-align:center;margin:0;padding:6px 15px 0}.el-transfer-panel .el-checkbox__label{padding-left:8px}.el-tree{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder);cursor:default;background:var(--el-fill-color-blank);color:var(--el-tree-text-color);font-size:var(--el-font-size-base);position:relative}.el-tree__empty-block{text-align:center;width:100%;height:100%;min-height:60px;position:relative}.el-tree__empty-text{color:var(--el-text-color-secondary);font-size:var(--el-font-size-base);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-tree__drop-indicator{background-color:var(--el-color-primary);height:1px;position:absolute;left:0;right:0}.el-tree-node{white-space:nowrap;outline:none}.el-tree-node:focus>.el-tree-node__content{background-color:var(--el-tree-node-hover-bg-color)}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:var(--el-color-primary);color:#fff}.el-tree-node__content{--el-checkbox-height:var(--el-tree-node-content-height);height:var(--el-tree-node-content-height);cursor:pointer;align-items:center;display:flex}.el-tree-node__content>.el-tree-node__expand-icon{box-sizing:content-box;padding:6px}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:var(--el-tree-node-hover-bg-color)}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:var(--el-tree-expand-icon-color);transition:transform var(--el-transition-duration) ease-in-out;font-size:12px;transform:rotate(0)}.el-tree-node__expand-icon.expanded{transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:#0000;cursor:default;visibility:hidden}.el-tree-node__expand-icon.is-hidden{visibility:hidden}.el-tree-node__loading-icon{font-size:var(--el-font-size-base);color:var(--el-tree-expand-icon-color);margin-right:8px}.el-tree-node>.el-tree-node__children{background-color:#0000;overflow:hidden}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:var(--el-color-primary-light-9)}.el-tree-select{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder)}.el-tree-select__popper .el-tree-node__expand-icon{margin-left:8px}.el-tree-select__popper .el-tree-node.is-checked>.el-tree-node__content .el-select-dropdown__item.selected:after{content:none}.el-tree-select__popper .el-select-dropdown__list>.el-select-dropdown__item{padding-left:32px}.el-tree-select__popper .el-select-dropdown__item{flex:1;height:20px;padding-left:0;line-height:20px;background:0 0!important}.el-upload{--el-upload-dragger-padding-horizontal:10px;--el-upload-dragger-padding-vertical:40px;--el-upload-list-picture-card-size:var(--el-upload-picture-card-size);--el-upload-picture-card-size:148px;cursor:pointer;outline:none;justify-content:center;align-items:center;display:inline-flex}.el-upload.is-disabled{cursor:not-allowed}.el-upload.is-disabled:focus{border-color:var(--el-border-color-darker);color:inherit}.el-upload.is-disabled:focus .el-upload-dragger{border-color:var(--el-border-color-darker)}.el-upload.is-disabled .el-upload-dragger{cursor:not-allowed;background-color:var(--el-disabled-bg-color)}.el-upload.is-disabled .el-upload-dragger .el-upload__text{color:var(--el-text-color-placeholder)}.el-upload.is-disabled .el-upload-dragger .el-upload__text em{color:var(--el-disabled-text-color)}.el-upload.is-disabled .el-upload-dragger:hover{border-color:var(--el-border-color-darker)}.el-upload__input{display:none}.el-upload__tip{color:var(--el-text-color-regular);margin-top:7px;font-size:12px}.el-upload iframe{z-index:-1;opacity:0;filter:alpha(opacity=0);position:absolute;top:0;left:0}.el-upload--picture-card{background-color:var(--el-fill-color-lighter);border:1px dashed var(--el-border-color-darker);box-sizing:border-box;width:var(--el-upload-picture-card-size);height:var(--el-upload-picture-card-size);cursor:pointer;vertical-align:top;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.el-upload--picture-card>i{color:var(--el-text-color-secondary);font-size:28px}.el-upload--picture-card:hover{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload.is-drag{display:block}.el-upload:focus{border-color:var(--el-color-primary);color:var(--el-color-primary)}.el-upload:focus .el-upload-dragger{border-color:var(--el-color-primary)}.el-upload-dragger{padding:var(--el-upload-dragger-padding-vertical) var(--el-upload-dragger-padding-horizontal);background-color:var(--el-fill-color-blank);border:1px dashed var(--el-border-color);box-sizing:border-box;text-align:center;cursor:pointer;border-radius:6px;position:relative;overflow:hidden}.el-upload-dragger .el-icon--upload{color:var(--el-text-color-placeholder);margin-bottom:16px;font-size:67px;line-height:50px}.el-upload-dragger+.el-upload__tip{text-align:center}.el-upload-dragger~.el-upload__files{border-top:var(--el-border);margin-top:7px;padding-top:5px}.el-upload-dragger .el-upload__text{color:var(--el-text-color-regular);text-align:center;font-size:14px}.el-upload-dragger .el-upload__text em{color:var(--el-color-primary);font-style:normal}.el-upload-dragger:hover{border-color:var(--el-color-primary)}.el-upload-dragger.is-dragover{padding:calc(var(--el-upload-dragger-padding-vertical) - 1px) calc(var(--el-upload-dragger-padding-horizontal) - 1px);background-color:var(--el-color-primary-light-9);border:2px dashed var(--el-color-primary)}.el-upload-list{--el-upload-dragger-padding-horizontal:10px;--el-upload-dragger-padding-vertical:40px;--el-upload-list-picture-card-size:var(--el-upload-picture-card-size);--el-upload-picture-card-size:148px;margin:10px 0 0;padding:0;list-style:none;position:relative}.el-upload-list__item{color:var(--el-text-color-regular);box-sizing:border-box;border-radius:4px;width:100%;margin-bottom:5px;font-size:14px;transition:all .5s cubic-bezier(.55,0,.1,1);position:relative}.el-upload-list__item .el-progress{width:100%;position:absolute;top:20px}.el-upload-list__item .el-progress__text{position:absolute;top:-13px;right:0}.el-upload-list__item .el-progress-bar{margin-right:0;padding-right:0}.el-upload-list__item .el-icon--upload-success{color:var(--el-color-success)}.el-upload-list__item .el-icon--close{cursor:pointer;opacity:.75;color:var(--el-text-color-regular);transition:opacity var(--el-transition-duration);display:none;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.el-upload-list__item .el-icon--close:hover{opacity:1;color:var(--el-color-primary)}.el-upload-list__item .el-icon--close-tip{cursor:pointer;opacity:1;color:var(--el-color-primary);font-size:12px;font-style:normal;display:none;position:absolute;top:1px;right:5px}.el-upload-list__item:hover,.el-upload-list__item:focus-within{background-color:var(--el-fill-color-light)}.el-upload-list__item:hover .el-icon--close,.el-upload-list__item:focus-within .el-icon--close{display:inline-flex}.el-upload-list__item:hover .el-icon--close-tip,.el-upload-list__item:focus-within .el-icon--close-tip{right:24px}.el-upload-list__item:hover .el-progress__text,.el-upload-list__item:focus-within .el-progress__text{display:none}.el-upload-list__item .el-upload-list__item-info{flex-direction:column;justify-content:center;width:calc(100% - 30px);margin-left:4px;display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-status-label{display:inline-flex}.el-upload-list__item.is-success .el-upload-list__item-name:hover,.el-upload-list__item.is-success .el-upload-list__item-name:focus{color:var(--el-color-primary);cursor:pointer}.el-upload-list__item.is-success:focus:not(:hover) .el-icon--close-tip{display:inline-block}.el-upload-list__item.is-success:not(.focusing):focus,.el-upload-list__item.is-success:active{outline-width:0}.el-upload-list__item.is-success:not(.focusing):focus .el-icon--close-tip,.el-upload-list__item.is-success:active .el-icon--close-tip{display:none}.el-upload-list__item.is-success:hover .el-upload-list__item-status-label,.el-upload-list__item.is-success:focus .el-upload-list__item-status-label,.el-upload-list__item.is-success:focus-within .el-upload-list__item-status-label{opacity:0;display:none}.el-upload-list__item-name{color:var(--el-text-color-regular);text-align:center;transition:color var(--el-transition-duration);font-size:var(--el-font-size-base);align-items:center;padding:0 4px;display:inline-flex}.el-upload-list__item-name .el-icon{color:var(--el-text-color-secondary);margin-right:6px}.el-upload-list__item-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.el-upload-list__item-status-label{line-height:inherit;height:100%;transition:opacity var(--el-transition-duration);justify-content:center;align-items:center;display:none;position:absolute;top:0;right:5px}.el-upload-list__item-delete{color:var(--el-text-color-regular);font-size:12px;display:none;position:absolute;top:0;right:10px}.el-upload-list__item-delete:hover{color:var(--el-color-primary)}.el-upload-list--picture-card{flex-wrap:wrap;margin:0;display:inline-flex}.el-upload-list--picture-card .el-upload-list__item{background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);box-sizing:border-box;width:var(--el-upload-list-picture-card-size);height:var(--el-upload-list-picture-card-size);border-radius:6px;margin:0 8px 8px 0;padding:0;display:inline-flex;overflow:hidden}.el-upload-list--picture-card .el-upload-list__item .el-icon--check,.el-upload-list--picture-card .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture-card .el-upload-list__item .el-icon--close{display:none}.el-upload-list--picture-card .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:block}.el-upload-list--picture-card .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture-card .el-upload-list__item .el-upload-list__item-name{display:none}.el-upload-list--picture-card .el-upload-list__item-thumbnail{object-fit:contain;width:100%;height:100%}.el-upload-list--picture-card .el-upload-list__item-status-label{background:var(--el-color-success);text-align:center;width:40px;height:24px;top:-6px;right:-15px;transform:rotate(45deg)}.el-upload-list--picture-card .el-upload-list__item-status-label i{margin-top:11px;font-size:12px;transform:rotate(-45deg)}.el-upload-list--picture-card .el-upload-list__item-actions{cursor:default;color:#fff;opacity:0;background-color:var(--el-overlay-color-lighter);width:100%;height:100%;transition:opacity var(--el-transition-duration);justify-content:center;align-items:center;font-size:20px;display:inline-flex;position:absolute;top:0;left:0}.el-upload-list--picture-card .el-upload-list__item-actions span{cursor:pointer;display:none}.el-upload-list--picture-card .el-upload-list__item-actions span+span{margin-left:16px}.el-upload-list--picture-card .el-upload-list__item-actions .el-upload-list__item-delete{font-size:inherit;color:inherit;position:static}.el-upload-list--picture-card .el-upload-list__item-actions:hover{opacity:1}.el-upload-list--picture-card .el-upload-list__item-actions:hover span{display:inline-flex}.el-upload-list--picture-card .el-progress{width:126px;top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%)}.el-upload-list--picture-card .el-progress .el-progress__text{top:50%}.el-upload-list--picture .el-upload-list__item{z-index:0;background-color:var(--el-fill-color-blank);border:1px solid var(--el-border-color);box-sizing:border-box;border-radius:6px;align-items:center;margin-top:10px;padding:10px;display:flex;overflow:hidden}.el-upload-list--picture .el-upload-list__item .el-icon--check,.el-upload-list--picture .el-upload-list__item .el-icon--circle-check{color:#fff}.el-upload-list--picture .el-upload-list__item:hover .el-upload-list__item-status-label{opacity:0;display:inline-flex}.el-upload-list--picture .el-upload-list__item:hover .el-progress__text{display:block}.el-upload-list--picture .el-upload-list__item.is-success .el-upload-list__item-name i{display:none}.el-upload-list--picture .el-upload-list__item .el-icon--close{top:5px;transform:translateY(0)}.el-upload-list--picture .el-upload-list__item-thumbnail{object-fit:contain;z-index:1;background-color:var(--el-color-white);justify-content:center;align-items:center;width:70px;height:70px;display:inline-flex;position:relative}.el-upload-list--picture .el-upload-list__item-status-label{background:var(--el-color-success);text-align:center;width:46px;height:26px;position:absolute;top:-7px;right:-17px;transform:rotate(45deg)}.el-upload-list--picture .el-upload-list__item-status-label i{margin-top:12px;font-size:12px;transform:rotate(-45deg)}.el-upload-list--picture .el-progress{position:relative;top:-7px}.el-upload-cover{z-index:10;cursor:default;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.el-upload-cover:after{content:"";vertical-align:middle;height:100%;display:inline-block}.el-upload-cover img{width:100%;height:100%;display:block}.el-upload-cover__label{background:var(--el-color-success);text-align:center;width:40px;height:24px;top:-6px;right:-15px;transform:rotate(45deg)}.el-upload-cover__label i{color:#fff;margin-top:11px;font-size:12px;transform:rotate(-45deg)}.el-upload-cover__progress{vertical-align:middle;width:243px;display:inline-block;position:static}.el-upload-cover__progress+.el-upload__inner{opacity:0}.el-upload-cover__content{width:100%;height:100%;position:absolute;top:0;left:0}.el-upload-cover__interact{background-color:var(--el-overlay-color-light);text-align:center;width:100%;height:100%;position:absolute;bottom:0;left:0}.el-upload-cover__interact .btn{color:#fff;cursor:pointer;vertical-align:middle;transition:var(--el-transition-md-fade);margin-top:60px;font-size:14px;display:inline-block}.el-upload-cover__interact .btn i{margin-top:0}.el-upload-cover__interact .btn span{opacity:0;transition:opacity .15s linear}.el-upload-cover__interact .btn:not(:first-child){margin-left:35px}.el-upload-cover__interact .btn:hover{transform:translateY(-13px)}.el-upload-cover__interact .btn:hover span{opacity:1}.el-upload-cover__interact .btn i{color:#fff;font-size:24px;line-height:inherit;margin:0 auto 5px;display:block}.el-upload-cover__title{text-overflow:ellipsis;white-space:nowrap;text-align:left;width:100%;height:36px;color:var(--el-text-color-primary);background-color:#fff;margin:0;padding:0 10px;font-size:14px;font-weight:400;line-height:36px;position:absolute;bottom:0;left:0;overflow:hidden}.el-upload-cover+.el-upload__inner{opacity:0;z-index:1;position:relative}.el-vl__wrapper{position:relative}.el-vl__wrapper:hover .el-virtual-scrollbar,.el-vl__wrapper.always-on .el-virtual-scrollbar{opacity:1}.el-vl__window{scrollbar-width:none}.el-vl__window::-webkit-scrollbar{display:none}.el-virtual-scrollbar{opacity:0;transition:opacity .34s ease-out}.el-virtual-scrollbar.always-on{opacity:1}.el-vg__wrapper{position:relative}.el-popper{--el-popper-border-radius:var(--el-popover-border-radius,4px);--el-popper-bg-color-light:var(--el-bg-color-overlay);--el-popper-bg-color-dark:var(--el-text-color-primary);border-radius:var(--el-popper-border-radius);z-index:2000;overflow-wrap:break-word;word-break:normal;visibility:visible;min-width:10px;padding:5px 11px;font-size:12px;line-height:20px;position:absolute}.el-popper.is-dark{--el-fill-color-blank:var(--el-popper-bg-color-dark);color:var(--el-bg-color);background:var(--el-popper-bg-color-dark);border:1px solid var(--el-text-color-primary)}.el-popper.is-dark>.el-popper__arrow:before{border:1px solid var(--el-text-color-primary);background:var(--el-popper-bg-color-dark);right:0}.el-popper.is-light{--el-fill-color-blank:var(--el-popper-bg-color-light);background:var(--el-popper-bg-color-light);border:1px solid var(--el-border-color-light)}.el-popper.is-light>.el-popper__arrow:before{border:1px solid var(--el-border-color-light);background:var(--el-popper-bg-color-light);right:0}.el-popper.is-pure{padding:0}.el-popper__arrow{z-index:-1;width:10px;height:10px;position:absolute}.el-popper__arrow:before{z-index:-1;content:" ";background:var(--el-text-color-primary);box-sizing:border-box;width:10px;height:10px;position:absolute;transform:rotate(45deg)}.el-popper[data-popper-placement^=top]>.el-popper__arrow{bottom:-5px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-bottom-right-radius:2px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow{top:-5px}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-top-left-radius:2px}.el-popper[data-popper-placement^=left]>.el-popper__arrow{right:-5px}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-top-right-radius:2px}.el-popper[data-popper-placement^=right]>.el-popper__arrow{left:-5px}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-bottom-left-radius:2px}.el-popper[data-popper-placement^=top]>.el-popper__arrow:before{border-top-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=bottom]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-right-color:#0000!important}.el-popper[data-popper-placement^=left]>.el-popper__arrow:before{border-bottom-color:#0000!important;border-left-color:#0000!important}.el-popper[data-popper-placement^=right]>.el-popper__arrow:before{border-top-color:#0000!important;border-right-color:#0000!important}.el-statistic{--el-statistic-title-font-weight:400;--el-statistic-title-font-size:var(--el-font-size-extra-small);--el-statistic-title-color:var(--el-text-color-regular);--el-statistic-content-font-weight:400;--el-statistic-content-font-size:var(--el-font-size-extra-large);--el-statistic-content-color:var(--el-text-color-primary)}.el-statistic__head{font-weight:var(--el-statistic-title-font-weight);font-size:var(--el-statistic-title-font-size);color:var(--el-statistic-title-color);margin-bottom:4px;line-height:20px}.el-statistic__content{font-weight:var(--el-statistic-content-font-weight);font-size:var(--el-statistic-content-font-size);color:var(--el-statistic-content-color)}.el-statistic__value{display:inline-block}.el-statistic__prefix{margin-right:4px;display:inline-block}.el-statistic__suffix{margin-left:4px;display:inline-block}.el-tour{--el-tour-width:520px;--el-tour-padding-primary:12px;--el-tour-font-line-height:var(--el-font-line-height-primary);--el-tour-title-font-size:16px;--el-tour-title-text-color:var(--el-text-color-primary);--el-tour-title-font-weight:400;--el-tour-close-color:var(--el-color-info);--el-tour-font-size:14px;--el-tour-color:var(--el-text-color-primary);--el-tour-bg-color:var(--el-bg-color);--el-tour-border-radius:4px}.el-tour__hollow{transition:all var(--el-transition-duration) ease}.el-tour__content{border-radius:var(--el-tour-border-radius);width:var(--el-tour-width);padding:var(--el-tour-padding-primary);background:var(--el-tour-bg-color);box-shadow:var(--el-box-shadow-light);box-sizing:border-box;overflow-wrap:break-word;outline:none}.el-tour__arrow{background:var(--el-tour-bg-color);pointer-events:none;box-sizing:border-box;width:10px;height:10px;position:absolute;transform:rotate(45deg)}.el-tour__content[data-side^=top] .el-tour__arrow{border-top-color:#0000;border-left-color:#0000}.el-tour__content[data-side^=bottom] .el-tour__arrow{border-bottom-color:#0000;border-right-color:#0000}.el-tour__content[data-side^=left] .el-tour__arrow{border-bottom-color:#0000;border-left-color:#0000}.el-tour__content[data-side^=right] .el-tour__arrow{border-top-color:#0000;border-right-color:#0000}.el-tour__content[data-side^=top] .el-tour__arrow{bottom:-5px}.el-tour__content[data-side^=bottom] .el-tour__arrow{top:-5px}.el-tour__content[data-side^=left] .el-tour__arrow{right:-5px}.el-tour__content[data-side^=right] .el-tour__arrow{left:-5px}.el-tour__closebtn{cursor:pointer;width:40px;height:40px;font-size:var(--el-message-close-size,16px);background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-tour__closebtn .el-tour__close{color:var(--el-tour-close-color);font-size:inherit}.el-tour__closebtn:focus .el-tour__close,.el-tour__closebtn:hover .el-tour__close{color:var(--el-color-primary)}.el-tour__header{padding-bottom:var(--el-tour-padding-primary)}.el-tour__header.show-close{padding-right:calc(var(--el-tour-padding-primary) + var(--el-message-close-size,16px))}.el-tour__title{line-height:var(--el-tour-font-line-height);font-size:var(--el-tour-title-font-size);color:var(--el-tour-title-text-color);font-weight:var(--el-tour-title-font-weight)}.el-tour__body{color:var(--el-tour-text-color);font-size:var(--el-tour-font-size)}.el-tour__body img,.el-tour__body video{max-width:100%}.el-tour__footer{padding-top:var(--el-tour-padding-primary);box-sizing:border-box;justify-content:space-between;display:flex}.el-tour__content .el-tour-indicators{flex:1;display:inline-block}.el-tour__content .el-tour-indicator{background:var(--el-color-info-light-9);border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.el-tour__content .el-tour-indicator.is-active{background:var(--el-color-primary)}.el-tour.el-tour--primary{--el-tour-title-text-color:#fff;--el-tour-text-color:#fff;--el-tour-bg-color:var(--el-color-primary);--el-tour-close-color:#fff}.el-tour.el-tour--primary .el-tour__closebtn:focus .el-tour__close,.el-tour.el-tour--primary .el-tour__closebtn:hover .el-tour__close{color:var(--el-tour-title-text-color)}.el-tour.el-tour--primary .el-button--default{color:var(--el-color-primary);border-color:var(--el-color-primary);background:#fff}.el-tour.el-tour--primary .el-button--primary{border-color:#fff}.el-tour.el-tour--primary .el-tour-indicator{background:#ffffff26}.el-tour.el-tour--primary .el-tour-indicator.is-active{background:#fff}.el-tour-parent--hidden{overflow:hidden}.el-anchor{--el-anchor-bg-color:var(--el-bg-color);--el-anchor-padding-indent:14px;--el-anchor-line-height:22px;--el-anchor-font-size:12px;--el-anchor-color:var(--el-text-color-secondary);--el-anchor-active-color:var(--el-color-primary);--el-anchor-hover-color:var(--el-text-color-regular);--el-anchor-marker-bg-color:var(--el-color-primary);background-color:var(--el-anchor-bg-color);position:relative}.el-anchor__marker{background-color:var(--el-anchor-marker-bg-color);opacity:0;z-index:0;border-radius:4px;position:absolute}.el-anchor.el-anchor--vertical .el-anchor__marker{width:4px;height:14px;transition:top .25s ease-in-out,opacity .25s;top:8px;left:0}.el-anchor.el-anchor--vertical .el-anchor__list{padding-left:var(--el-anchor-padding-indent)}.el-anchor.el-anchor--vertical.el-anchor--underline:before{content:"";background-color:#0505050f;width:2px;height:100%;position:absolute;left:0}.el-anchor.el-anchor--vertical.el-anchor--underline .el-anchor__marker{border-radius:unset;width:2px}.el-anchor.el-anchor--horizontal .el-anchor__marker{width:20px;height:2px;transition:left .25s ease-in-out,opacity .25s,width .25s;bottom:0}.el-anchor.el-anchor--horizontal .el-anchor__list{padding-bottom:4px;display:flex}.el-anchor.el-anchor--horizontal .el-anchor__list .el-anchor__item{padding-left:16px}.el-anchor.el-anchor--horizontal .el-anchor__list .el-anchor__item:first-child{padding-left:0}.el-anchor.el-anchor--horizontal.el-anchor--underline:before{content:"";background-color:#0505050f;width:100%;height:2px;position:absolute;bottom:0}.el-anchor.el-anchor--horizontal.el-anchor--underline .el-anchor__marker{border-radius:unset;height:2px}.el-anchor__item{flex-direction:column;display:flex}.el-anchor__link{font-size:var(--el-anchor-font-size);line-height:var(--el-anchor-line-height);color:var(--el-anchor-color);transition:color var(--el-transition-duration);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;outline:none;max-width:100%;padding:4px 0;text-decoration:none;overflow:hidden}.el-anchor__link:hover,.el-anchor__link:focus{color:var(--el-hover-color)}.el-anchor__link:focus-visible{border-radius:var(--el-border-radius-base);outline:2px solid var(--el-color-primary)}.el-anchor__link.is-active{color:var(--el-anchor-active-color)}.el-anchor .el-anchor__list .el-anchor__item a{display:inline-block}.el-segmented--vertical{flex-direction:column}.el-segmented--vertical .el-segmented__item{padding:11px}.el-segmented{--el-segmented-color:var(--el-text-color-regular);--el-segmented-bg-color:var(--el-fill-color-light);--el-segmented-padding:2px;--el-segmented-item-selected-color:var(--el-color-white);--el-segmented-item-selected-bg-color:var(--el-color-primary);--el-segmented-item-selected-disabled-bg-color:var(--el-color-primary-light-5);--el-segmented-item-hover-color:var(--el-text-color-primary);--el-segmented-item-hover-bg-color:var(--el-fill-color-dark);--el-segmented-item-active-bg-color:var(--el-fill-color-darker);--el-segmented-item-disabled-color:var(--el-text-color-placeholder);background:var(--el-segmented-bg-color);min-height:32px;padding:var(--el-segmented-padding);border-radius:var(--el-border-radius-base);color:var(--el-segmented-color);box-sizing:border-box;align-items:stretch;font-size:14px;display:inline-flex}.el-segmented__group{align-items:stretch;width:100%;display:flex;position:relative}.el-segmented__item-selected{background:var(--el-segmented-item-selected-bg-color);border-radius:calc(var(--el-border-radius-base) - 2px);pointer-events:none;width:10px;height:100%;transition:all .3s;position:absolute;top:0;left:0}.el-segmented__item-selected.is-disabled{background:var(--el-segmented-item-selected-disabled-bg-color)}.el-segmented__item-selected.is-focus-visible:before{content:"";border-radius:inherit;outline:2px solid var(--el-segmented-item-selected-bg-color);outline-offset:1px;position:absolute;inset:0}.el-segmented__item{cursor:pointer;border-radius:calc(var(--el-border-radius-base) - 2px);flex:1;align-items:center;padding:0 11px;display:flex}.el-segmented__item:not(.is-disabled):not(.is-selected):hover{color:var(--el-segmented-item-hover-color);background:var(--el-segmented-item-hover-bg-color)}.el-segmented__item:not(.is-disabled):not(.is-selected):active{background:var(--el-segmented-item-active-bg-color)}.el-segmented__item.is-selected,.el-segmented__item.is-selected.is-disabled{color:var(--el-segmented-item-selected-color)}.el-segmented__item.is-disabled{cursor:not-allowed;color:var(--el-segmented-item-disabled-color)}.el-segmented__item-input{opacity:0;pointer-events:none;width:0;height:0;margin:0;position:absolute}.el-segmented__item-label{text-align:center;text-overflow:ellipsis;white-space:nowrap;z-index:1;flex:1;line-height:normal;transition:color .3s;overflow:hidden}.el-segmented.is-block{display:flex}.el-segmented.is-block .el-segmented__item{min-width:0}.el-segmented--large{border-radius:var(--el-border-radius-base);min-height:40px;font-size:16px}.el-segmented--large .el-segmented__item-selected{border-radius:calc(var(--el-border-radius-base) - 2px)}.el-segmented--large .el-segmented--vertical .el-segmented__item{padding:11px}.el-segmented--large .el-segmented__item{border-radius:calc(var(--el-border-radius-base) - 2px);padding:0 11px}.el-segmented--small{border-radius:calc(var(--el-border-radius-base) - 1px);min-height:24px;font-size:14px}.el-segmented--small .el-segmented__item-selected{border-radius:calc(calc(var(--el-border-radius-base) - 1px) - 2px)}.el-segmented--small .el-segmented--vertical .el-segmented__item{padding:7px}.el-segmented--small .el-segmented__item{border-radius:calc(calc(var(--el-border-radius-base) - 1px) - 2px);padding:0 7px}.el-mention{width:100%;position:relative}.el-mention__popper.el-popper{background:var(--el-bg-color-overlay);border:1px solid var(--el-border-color-light);box-shadow:var(--el-box-shadow-light)}.el-mention__popper.el-popper .el-popper__arrow:before{border:1px solid var(--el-border-color-light)}.el-mention__popper.el-popper[data-popper-placement^=top] .el-popper__arrow:before{border-top-color:#0000;border-left-color:#0000}.el-mention__popper.el-popper[data-popper-placement^=bottom] .el-popper__arrow:before{border-bottom-color:#0000;border-right-color:#0000}.el-mention__popper.el-popper[data-popper-placement^=left] .el-popper__arrow:before{border-bottom-color:#0000;border-left-color:#0000}.el-mention__popper.el-popper[data-popper-placement^=right] .el-popper__arrow:before{border-top-color:#0000;border-right-color:#0000}.el-mention-dropdown{--el-mention-font-size:var(--el-font-size-base);--el-mention-bg-color:var(--el-bg-color-overlay);--el-mention-shadow:var(--el-box-shadow-light);--el-mention-border:1px solid var(--el-border-color-light);--el-mention-option-color:var(--el-text-color-regular);--el-mention-option-height:34px;--el-mention-option-min-width:100px;--el-mention-option-hover-background:var(--el-fill-color-light);--el-mention-option-selected-color:var(--el-color-primary);--el-mention-option-disabled-color:var(--el-text-color-placeholder);--el-mention-option-loading-color:var(--el-text-color-secondary);--el-mention-option-loading-padding:10px 0;--el-mention-max-height:174px;--el-mention-padding:6px 0;--el-mention-header-padding:10px;--el-mention-footer-padding:10px}.el-mention-dropdown__item{font-size:var(--el-mention-font-size);white-space:nowrap;text-overflow:ellipsis;color:var(--el-mention-option-color);height:var(--el-mention-option-height);line-height:var(--el-mention-option-height);box-sizing:border-box;min-width:var(--el-mention-option-min-width);cursor:pointer;padding:0 20px;position:relative;overflow:hidden}.el-mention-dropdown__item.is-hovering{background-color:var(--el-mention-option-hover-background)}.el-mention-dropdown__item.is-selected{color:var(--el-mention-option-selected-color);font-weight:700}.el-mention-dropdown__item.is-disabled{color:var(--el-mention-option-disabled-color);cursor:not-allowed;background-color:unset}.el-mention-dropdown{z-index:calc(var(--el-index-top) + 1);border-radius:var(--el-border-radius-base);box-sizing:border-box}.el-mention-dropdown__loading{text-align:center;color:var(--el-mention-option-loading-color);min-width:var(--el-mention-option-min-width);margin:0;padding:10px 0;font-size:12px}.el-mention-dropdown__wrap{max-height:var(--el-mention-max-height)}.el-mention-dropdown__list{padding:var(--el-mention-padding);box-sizing:border-box;margin:0;list-style:none}.el-mention-dropdown__header{padding:var(--el-mention-header-padding);border-bottom:var(--el-mention-border)}.el-mention-dropdown__footer{padding:var(--el-mention-footer-padding);border-top:var(--el-mention-border)}.el-splitter{width:100%;height:100%;margin:0;padding:0;display:flex;position:relative}.el-splitter__mask{z-index:999;position:absolute;inset:0}.el-splitter__mask-horizontal{cursor:ew-resize}.el-splitter__mask-vertical{cursor:ns-resize}.el-splitter__horizontal{flex-direction:row}.el-splitter__vertical{flex-direction:column}.el-splitter-bar{-webkit-user-select:none;user-select:none;flex:none;position:relative}.el-splitter-bar__dragger{z-index:1;background:0 0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-splitter-bar__dragger:before,.el-splitter-bar__dragger:after{content:"";background-color:var(--el-border-color-light);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-splitter-bar__dragger:not(.is-lazy):after{display:none}.el-splitter-bar__dragger:after{opacity:.4}.el-splitter-bar__dragger:hover:not(.is-disabled):before{background-color:var(--el-color-primary-light-5)}.el-splitter-bar__dragger-horizontal:before,.el-splitter-bar__dragger-horizontal:after{width:2px;height:100%}.el-splitter-bar__dragger-vertical:before,.el-splitter-bar__dragger-vertical:after{width:100%;height:2px}.el-splitter-bar__dragger-active:before,.el-splitter-bar__dragger-active:after{background-color:var(--el-color-primary-light-3)}.el-splitter-bar__dragger-active.el-splitter-bar__dragger-horizontal:after{transform:translate(calc(-50% + var(--el-splitter-bar-offset)),-50%)}.el-splitter-bar__dragger-active.el-splitter-bar__dragger-vertical:after{transform:translate(-50%,calc(-50% + var(--el-splitter-bar-offset)))}.el-splitter-bar:hover .el-splitter-bar__collapse-icon{opacity:1}.el-splitter-bar__collapse-icon{background:var(--el-border-color-light);cursor:pointer;opacity:0;z-index:9;border-radius:2px;justify-content:center;align-items:center;display:flex;position:absolute}.el-splitter-bar__collapse-icon:hover{opacity:1;background-color:var(--el-color-primary-light-5)}.el-splitter-bar__horizontal-collapse-icon-start{width:16px;height:24px;top:50%;left:-12px;transform:translate(-50%,-50%)}.el-splitter-bar__horizontal-collapse-icon-end{width:16px;height:24px;top:50%;left:12px;transform:translate(-50%,-50%)}.el-splitter-bar__vertical-collapse-icon-start{width:24px;height:16px;top:-12px;right:50%;transform:translate(50%,-50%)}.el-splitter-bar__vertical-collapse-icon-end{width:24px;height:16px;top:12px;right:50%;transform:translate(50%,-50%)}.el-splitter-panel{scrollbar-width:thin;box-sizing:border-box;flex-grow:0;overflow:auto}:root{--font-family-base: "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif;--color-primary: #409eff;--color-bg-light: #eef3f8;--color-bg-dark: #0d0d0d;--color-surface-light: rgba(255, 255, 255, .92);--color-surface-dark: #1a1a1a;--color-border-light: #d6e4ef;--color-border-dark: #2a2a2a;--color-text-primary: #303133;--color-text-secondary: #606266;--color-text-dark: #e5eaf3;--shadow-card: 0 10px 30px rgba(0, 0, 0, .08);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{font-family:var(--font-family-base);color:var(--color-text-primary)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}body{background:var(--color-bg-light)}html{scrollbar-color:rgba(123,135,148,.7) rgba(255,255,255,.04);scrollbar-width:thin}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:#ffffff0a}*::-webkit-scrollbar-thumb{background:#7b8794b3;border:2px solid transparent;border-radius:999px;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#94a3b8e6;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-corner{background:transparent}.page-shell{min-height:100vh}.theme-light{background:var(--color-bg-light);color:var(--color-text-primary)}.theme-dark{background:var(--color-bg-dark);color:var(--color-text-dark)}:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}.el-overlay{z-index:2000;background-color:var(--el-overlay-color-lighter);height:100%;position:fixed;inset:0;overflow:auto}.el-overlay .el-overlay-root{height:0}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color);position:fixed;top:0;left:0}.el-popup-parent--hidden{overflow:hidden}.el-dialog{--el-dialog-width:50%;--el-dialog-margin-top:15vh;--el-dialog-bg-color:var(--el-bg-color);--el-dialog-box-shadow:var(--el-box-shadow);--el-dialog-title-font-size:var(--el-font-size-large);--el-dialog-content-font-size:14px;--el-dialog-font-line-height:var(--el-font-line-height-primary);--el-dialog-padding-primary:16px;--el-dialog-border-radius:var(--el-border-radius-base);margin:var(--el-dialog-margin-top,15vh) auto 50px;background:var(--el-dialog-bg-color);border-radius:var(--el-dialog-border-radius);box-shadow:var(--el-dialog-box-shadow);box-sizing:border-box;padding:var(--el-dialog-padding-primary);width:var(--el-dialog-width,50%);overflow-wrap:break-word;position:relative}.el-dialog:focus{outline:none!important}.el-dialog.is-align-center{margin:auto}.el-dialog.is-fullscreen{--el-dialog-width:100%;--el-dialog-margin-top:0;border-radius:0;height:100%;margin-bottom:0;overflow:auto}.el-dialog__wrapper{margin:0;position:fixed;inset:0;overflow:auto}.el-dialog.is-draggable .el-dialog__header{cursor:move;-webkit-user-select:none;user-select:none}.el-dialog__header{padding-bottom:var(--el-dialog-padding-primary)}.el-dialog__header.show-close{padding-right:calc(var(--el-dialog-padding-primary) + var(--el-message-close-size,16px))}.el-dialog__headerbtn{cursor:pointer;width:48px;height:48px;font-size:var(--el-message-close-size,16px);background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-dialog__headerbtn .el-dialog__close{color:var(--el-color-info);font-size:inherit}.el-dialog__headerbtn:focus .el-dialog__close,.el-dialog__headerbtn:hover .el-dialog__close{color:var(--el-color-primary)}.el-dialog__title{line-height:var(--el-dialog-font-line-height);font-size:var(--el-dialog-title-font-size);color:var(--el-text-color-primary)}.el-dialog__body{color:var(--el-text-color-regular);font-size:var(--el-dialog-content-font-size)}.el-dialog__footer{padding-top:var(--el-dialog-padding-primary);text-align:right;box-sizing:border-box}.el-dialog--center{text-align:center}.el-dialog--center .el-dialog__body{text-align:initial}.el-dialog--center .el-dialog__footer{text-align:inherit}.el-modal-dialog.is-penetrable{pointer-events:none}.el-modal-dialog.is-penetrable .el-dialog{pointer-events:auto}.el-overlay-dialog{position:fixed;inset:0;overflow:auto}.el-overlay-dialog.is-closing .el-dialog{pointer-events:none}.dialog-fade-enter-active{animation:modal-fade-in var(--el-transition-duration)}.dialog-fade-enter-active .el-overlay-dialog{animation:dialog-fade-in var(--el-transition-duration)}.dialog-fade-leave-active{animation:modal-fade-out var(--el-transition-duration)}.dialog-fade-leave-active .el-overlay-dialog{animation:dialog-fade-out var(--el-transition-duration)}@keyframes dialog-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}@keyframes dialog-fade-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translateY(-20px)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}.secret-settings-entry[data-v-9851d8df]{display:flex;align-items:center;justify-content:flex-end}.secret-settings-trigger[data-v-9851d8df]{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border:1px solid #3c4a58;border-radius:10px;background:linear-gradient(180deg,#2b3239,#242a31);color:#e7edf4;font-size:13px;font-weight:700;cursor:pointer}.secret-settings-trigger[data-v-9851d8df]:hover{border-color:#4c647d}.secret-settings-icon[data-v-9851d8df]{color:#8dc4ff;font-size:14px;line-height:1}.secret-settings-dialog{--el-dialog-bg-color: #171b20;--el-dialog-padding-primary: 20px;overflow:hidden;border:1px solid #2c3540;border-radius:14px;background:#171b20;box-shadow:0 24px 70px #00000085}.secret-settings-dialog .el-dialog__header{padding:22px 22px 12px;margin:0;background:#171b20}.secret-settings-dialog .el-dialog__body{padding:12px 22px 16px;background:#171b20}.secret-settings-dialog .el-dialog__footer{padding:0 22px 22px;background:#171b20}.secret-settings-dialog .el-dialog__headerbtn{top:18px;right:18px}.secret-settings-dialog .el-dialog__close{color:#8793a0}.secret-settings-dialog .el-dialog__close:hover{color:#d8e3ee}.dialog-header[data-v-9851d8df]{display:flex;flex-direction:column;gap:4px}.dialog-title[data-v-9851d8df]{color:#f5f7fa;font-size:16px;font-weight:700}.dialog-subtitle[data-v-9851d8df]{color:#8f9aa7;font-size:12px;line-height:1.5}.secret-settings-body[data-v-9851d8df]{display:flex;flex-direction:column;gap:14px}.secret-card[data-v-9851d8df]{padding:18px;border:1px solid #313b46;border-radius:10px;background:#20252b}.secret-card-head[data-v-9851d8df]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.secret-card-title[data-v-9851d8df]{color:#eef4fb;font-size:15px;font-weight:700}.secret-card-desc[data-v-9851d8df]{margin-top:4px;color:#909ba8;font-size:12px;line-height:1.5}.secret-input[data-v-9851d8df]{width:100%;height:42px;padding:0 12px;box-sizing:border-box;border:1px solid #3b4652;border-radius:10px;background:#1b2026;color:#dce6f0;font-size:13px;outline:none}.secret-input[data-v-9851d8df]:focus{border-color:#5b96d6}.retention-block[data-v-9851d8df]{margin-top:12px}.retention-label[data-v-9851d8df]{margin-bottom:8px;color:#a3afbb;font-size:12px}.retention-options[data-v-9851d8df]{display:flex;flex-wrap:wrap;gap:8px}.retention-option[data-v-9851d8df]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#1b2026;color:#dce4ec;font-size:12px;cursor:pointer}.retention-option input[data-v-9851d8df]{margin:0}.secret-meta[data-v-9851d8df]{margin-top:10px;color:#7f8a96;font-size:12px}.link-danger[data-v-9851d8df]{border:none;background:transparent;color:#ff9b9b;font-size:12px;cursor:pointer;padding:0}.dialog-footer[data-v-9851d8df]{display:flex;justify-content:flex-end;gap:10px}.footer-btn[data-v-9851d8df]{height:38px;padding:0 18px;border-radius:10px;border:1px solid transparent;font-size:13px;font-weight:700;cursor:pointer}.footer-btn-ghost[data-v-9851d8df]{border-color:#3a4653;background:#232a31;color:#d9e2eb}.footer-btn-primary[data-v-9851d8df]{background:#4f8fda;color:#fff}.footer-btn-primary[data-v-9851d8df]:hover{background:#67a6ed}.top-bar[data-v-0b1391c2]{min-height:88px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:10px 24px 12px;background:#111;border-bottom:1px solid #2a2a2a}.logo-area[data-v-0b1391c2]{display:flex;align-items:center;gap:16px;min-width:0;padding-top:10px}.app-name[data-v-0b1391c2]{color:#fff;font-size:18px;font-weight:800;letter-spacing:.02em;white-space:nowrap}.btn-home[data-v-0b1391c2]{color:#d2d2d2;font-size:13px;text-decoration:none;white-space:nowrap}.btn-home[data-v-0b1391c2]:hover{color:#fff}.nav-sections[data-v-0b1391c2]{flex:1;min-width:0;display:flex;align-items:stretch;justify-content:center;gap:0}.nav-section[data-v-0b1391c2]{flex:1;min-width:0;padding:0 18px;position:relative}.nav-section+.nav-section[data-v-0b1391c2]:before{content:"";position:absolute;left:0;top:14px;bottom:8px;width:1px;background:#ffffff24}.nav-section-title[data-v-0b1391c2]{margin-bottom:10px;text-align:center;color:#e8dfcf;font-size:16px;font-weight:800;letter-spacing:.08em}.nav-section-items[data-v-0b1391c2]{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:10px 14px;border-radius:14px;background:linear-gradient(180deg,#534a43eb,#48413bf5);box-shadow:inset 0 1px #ffffff0f}.nav-item[data-v-0b1391c2]{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 2px;color:#f3eee4;font-size:14px;font-weight:700;text-decoration:none;border-bottom:2px solid transparent;transition:color .18s ease,border-color .18s ease,opacity .18s ease}.nav-item[data-v-0b1391c2]:hover{color:#fff;border-bottom-color:#ffffffad}.nav-item.active[data-v-0b1391c2]{color:#fff;border-bottom-color:#8dc4ff}.nav-item.disabled[data-v-0b1391c2]{color:#ffffffc7;opacity:.82;cursor:default}.top-right[data-v-0b1391c2]{width:140px;flex-shrink:0;display:flex;justify-content:flex-end;padding-top:8px}@media(max-width:1200px){.top-bar[data-v-0b1391c2]{flex-direction:column;align-items:stretch}.logo-area[data-v-0b1391c2]{padding-top:0}.nav-sections[data-v-0b1391c2]{flex-direction:column}.nav-section[data-v-0b1391c2]{padding:0}.nav-section+.nav-section[data-v-0b1391c2]:before{display:none}.top-right[data-v-0b1391c2]{display:none}} diff --git a/app/assets/pywebview-ZMN052YE.js b/app/assets/pywebview-ZMN052YE.js deleted file mode 100644 index 733cb11..0000000 --- a/app/assets/pywebview-ZMN052YE.js +++ /dev/null @@ -1,55 +0,0 @@ -(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))a(o);new MutationObserver(o=>{for(const s of o)if(s.type==="childList")for(const r of s.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&a(r)}).observe(document,{childList:!0,subtree:!0});function n(o){const s={};return o.integrity&&(s.integrity=o.integrity),o.referrerPolicy&&(s.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?s.credentials="include":o.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function a(o){if(o.ep)return;o.ep=!0;const s=n(o);fetch(o.href,s)}})();function jh(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const cn={},Xr=[],Dt=()=>{},Ew=()=>!1,Cd=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Uh=e=>e.startsWith("onUpdate:"),Pn=Object.assign,qh=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Kx=Object.prototype.hasOwnProperty,Nt=(e,t)=>Kx.call(e,t),ye=Array.isArray,Jr=e=>Ui(e)==="[object Map]",kd=e=>Ui(e)==="[object Set]",As=e=>Ui(e)==="[object Date]",Ve=e=>typeof e=="function",Le=e=>typeof e=="string",Ja=e=>typeof e=="symbol",ot=e=>e!==null&&typeof e=="object",mr=e=>(ot(e)||Ve(e))&&Ve(e.then)&&Ve(e.catch),xw=Object.prototype.toString,Ui=e=>xw.call(e),Wx=e=>Ui(e).slice(8,-1),mi=e=>Ui(e)==="[object Object]",Ed=e=>Le(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ei=jh(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),xd=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},jx=/-\w/g,Fn=xd(e=>e.replace(jx,t=>t.slice(1).toUpperCase())),Ux=/\B([A-Z])/g,cs=xd(e=>e.replace(Ux,"-$1").toLowerCase()),qi=xd(e=>e.charAt(0).toUpperCase()+e.slice(1)),ti=xd(e=>e?`on${qi(e)}`:""),Co=(e,t)=>!Object.is(e,t),ac=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:a,value:n})},Yh=e=>{const t=parseFloat(e);return isNaN(t)?e:t},qx=e=>{const t=Le(e)?Number(e):NaN;return isNaN(t)?e:t};let pg;const Td=()=>pg||(pg=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ke(e){if(ye(e)){const t={};for(let n=0;n{if(n){const a=n.split(Gx);a.length>1&&(t[a[0].trim()]=a[1].trim())}}),t}function T(e){let t="";if(Le(e))t=e;else if(ye(e))for(let n=0;ngr(n,t))}const Rw=e=>!!(e&&e.__v_isRef===!0),Se=e=>Le(e)?e:e==null?"":ye(e)||ot(e)&&(e.toString===xw||!Ve(e.toString))?Rw(e)?Se(e.value):JSON.stringify(e,Nw,2):String(e),Nw=(e,t)=>Rw(t)?Nw(e,t.value):Jr(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[a,o],s)=>(n[xf(a,s)+" =>"]=o,n),{})}:kd(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>xf(n))}:Ja(t)?xf(t):ot(t)&&!ye(t)&&!mi(t)?String(t):t,xf=(e,t="")=>{var n;return Ja(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Yn;class Iw{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.__v_skip=!0,this.parent=Yn,!t&&Yn&&(this.index=(Yn.scopes||(Yn.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(Yn=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,a;for(n=0,a=this.effects.length;n0)return;if(ai){let t=ai;for(ai=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;ni;){let t=ni;for(ni=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(a){e||(e=a)}t=n}}if(e)throw e}function Dw(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Bw(e){let t,n=e.depsTail,a=n;for(;a;){const o=a.prevDep;a.version===-1?(a===n&&(n=o),Jh(a),nT(a)):t=a,a.dep.activeLink=a.prevActiveLink,a.prevActiveLink=void 0,a=o}e.deps=t,e.depsTail=n}function yp(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Fw(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Fw(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===gi)||(e.globalVersion=gi,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!yp(e))))return;e.flags|=2;const t=e.dep,n=hn,a=qa;hn=e,qa=!0;try{Dw(e);const o=e.fn(e._value);(t.version===0||Co(o,e._value))&&(e.flags|=128,e._value=o,t.version++)}catch(o){throw t.version++,o}finally{hn=n,qa=a,Bw(e),e.flags&=-3}}function Jh(e,t=!1){const{dep:n,prevSub:a,nextSub:o}=e;if(a&&(a.nextSub=o,e.prevSub=void 0),o&&(o.prevSub=a,e.nextSub=void 0),n.subs===e&&(n.subs=a,!a&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)Jh(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function nT(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let qa=!0;const Vw=[];function ns(){Vw.push(qa),qa=!1}function as(){const e=Vw.pop();qa=e===void 0?!0:e}function hg(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=hn;hn=void 0;try{t()}finally{hn=n}}}let gi=0;class aT{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Zh{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!hn||!qa||hn===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==hn)n=this.activeLink=new aT(hn,this),hn.deps?(n.prevDep=hn.depsTail,hn.depsTail.nextDep=n,hn.depsTail=n):hn.deps=hn.depsTail=n,zw(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const a=n.nextDep;a.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=a),n.prevDep=hn.depsTail,n.nextDep=void 0,hn.depsTail.nextDep=n,hn.depsTail=n,hn.deps===n&&(hn.deps=a)}return n}trigger(t){this.version++,gi++,this.notify(t)}notify(t){Gh();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Xh()}}}function zw(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let a=t.deps;a;a=a.nextDep)zw(a)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Dc=new WeakMap,cr=Symbol(""),wp=Symbol(""),bi=Symbol("");function Xn(e,t,n){if(qa&&hn){let a=Dc.get(e);a||Dc.set(e,a=new Map);let o=a.get(n);o||(a.set(n,o=new Zh),o.map=a,o.key=n),o.track()}}function Uo(e,t,n,a,o,s){const r=Dc.get(e);if(!r){gi++;return}const l=u=>{u&&u.trigger()};if(Gh(),t==="clear")r.forEach(l);else{const u=ye(e),c=u&&Ed(n);if(u&&n==="length"){const d=Number(a);r.forEach((f,v)=>{(v==="length"||v===bi||!Ja(v)&&v>=d)&&l(f)})}else switch((n!==void 0||r.has(void 0))&&l(r.get(n)),c&&l(r.get(bi)),t){case"add":u?c&&l(r.get("length")):(l(r.get(cr)),Jr(e)&&l(r.get(wp)));break;case"delete":u||(l(r.get(cr)),Jr(e)&&l(r.get(wp)));break;case"set":Jr(e)&&l(r.get(cr));break}}Xh()}function oT(e,t){const n=Dc.get(e);return n&&n.get(t)}function Lr(e){const t=qt(e);return t===e?t:(Xn(t,"iterate",bi),Oa(e)?t:t.map(Za))}function $d(e){return Xn(e=qt(e),"iterate",bi),e}function wo(e,t){return os(e)?il(dr(e)?Za(t):t):Za(t)}const sT={__proto__:null,[Symbol.iterator](){return $f(this,Symbol.iterator,e=>wo(this,e))},concat(...e){return Lr(this).concat(...e.map(t=>ye(t)?Lr(t):t))},entries(){return $f(this,"entries",e=>(e[1]=wo(this,e[1]),e))},every(e,t){return Ho(this,"every",e,t,void 0,arguments)},filter(e,t){return Ho(this,"filter",e,t,n=>n.map(a=>wo(this,a)),arguments)},find(e,t){return Ho(this,"find",e,t,n=>wo(this,n),arguments)},findIndex(e,t){return Ho(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ho(this,"findLast",e,t,n=>wo(this,n),arguments)},findLastIndex(e,t){return Ho(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ho(this,"forEach",e,t,void 0,arguments)},includes(...e){return Of(this,"includes",e)},indexOf(...e){return Of(this,"indexOf",e)},join(e){return Lr(this).join(e)},lastIndexOf(...e){return Of(this,"lastIndexOf",e)},map(e,t){return Ho(this,"map",e,t,void 0,arguments)},pop(){return Fl(this,"pop")},push(...e){return Fl(this,"push",e)},reduce(e,...t){return vg(this,"reduce",e,t)},reduceRight(e,...t){return vg(this,"reduceRight",e,t)},shift(){return Fl(this,"shift")},some(e,t){return Ho(this,"some",e,t,void 0,arguments)},splice(...e){return Fl(this,"splice",e)},toReversed(){return Lr(this).toReversed()},toSorted(e){return Lr(this).toSorted(e)},toSpliced(...e){return Lr(this).toSpliced(...e)},unshift(...e){return Fl(this,"unshift",e)},values(){return $f(this,"values",e=>wo(this,e))}};function $f(e,t,n){const a=$d(e),o=a[t]();return a!==e&&!Oa(e)&&(o._next=o.next,o.next=()=>{const s=o._next();return s.done||(s.value=n(s.value)),s}),o}const rT=Array.prototype;function Ho(e,t,n,a,o,s){const r=$d(e),l=r!==e&&!Oa(e),u=r[t];if(u!==rT[t]){const f=u.apply(e,s);return l?Za(f):f}let c=n;r!==e&&(l?c=function(f,v){return n.call(this,wo(e,f),v,e)}:n.length>2&&(c=function(f,v){return n.call(this,f,v,e)}));const d=u.call(r,c,a);return l&&o?o(d):d}function vg(e,t,n,a){const o=$d(e),s=o!==e&&!Oa(e);let r=n,l=!1;o!==e&&(s?(l=a.length===0,r=function(c,d,f){return l&&(l=!1,c=wo(e,c)),n.call(this,c,wo(e,d),f,e)}):n.length>3&&(r=function(c,d,f){return n.call(this,c,d,f,e)}));const u=o[t](r,...a);return l?wo(e,u):u}function Of(e,t,n){const a=qt(e);Xn(a,"iterate",bi);const o=a[t](...n);return(o===-1||o===!1)&&Od(n[0])?(n[0]=qt(n[0]),a[t](...n)):o}function Fl(e,t,n=[]){ns(),Gh();const a=qt(e)[t].apply(e,n);return Xh(),as(),a}const lT=jh("__proto__,__v_isRef,__isVue"),Hw=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ja));function iT(e){Ja(e)||(e=String(e));const t=qt(this);return Xn(t,"has",e),t.hasOwnProperty(e)}class Kw{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,a){if(n==="__v_skip")return t.__v_skip;const o=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return a===(o?s?bT:qw:s?Uw:jw).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(a)?t:void 0;const r=ye(t);if(!o){let u;if(r&&(u=sT[n]))return u;if(n==="hasOwnProperty")return iT}const l=Reflect.get(t,n,Jt(t)?t:a);if((Ja(n)?Hw.has(n):lT(n))||(o||Xn(t,"get",n),s))return l;if(Jt(l)){const u=r&&Ed(n)?l:l.value;return o&&ot(u)?br(u):u}return ot(l)?o?br(l):At(l):l}}class Ww extends Kw{constructor(t=!1){super(!1,t)}set(t,n,a,o){let s=t[n];const r=ye(t)&&Ed(n);if(!this._isShallow){const c=os(s);if(!Oa(a)&&!os(a)&&(s=qt(s),a=qt(a)),!r&&Jt(s)&&!Jt(a))return c||(s.value=a),!0}const l=r?Number(n)e,Pu=e=>Reflect.getPrototypeOf(e);function pT(e,t,n){return function(...a){const o=this.__v_raw,s=qt(o),r=Jr(s),l=e==="entries"||e===Symbol.iterator&&r,u=e==="keys"&&r,c=o[e](...a),d=n?Sp:t?il:Za;return!t&&Xn(s,"iterate",u?wp:cr),Pn(Object.create(c),{next(){const{value:f,done:v}=c.next();return v?{value:f,done:v}:{value:l?[d(f[0]),d(f[1])]:d(f),done:v}}})}}function Mu(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function hT(e,t){const n={get(o){const s=this.__v_raw,r=qt(s),l=qt(o);e||(Co(o,l)&&Xn(r,"get",o),Xn(r,"get",l));const{has:u}=Pu(r),c=t?Sp:e?il:Za;if(u.call(r,o))return c(s.get(o));if(u.call(r,l))return c(s.get(l));s!==r&&s.get(o)},get size(){const o=this.__v_raw;return!e&&Xn(qt(o),"iterate",cr),o.size},has(o){const s=this.__v_raw,r=qt(s),l=qt(o);return e||(Co(o,l)&&Xn(r,"has",o),Xn(r,"has",l)),o===l?s.has(o):s.has(o)||s.has(l)},forEach(o,s){const r=this,l=r.__v_raw,u=qt(l),c=t?Sp:e?il:Za;return!e&&Xn(u,"iterate",cr),l.forEach((d,f)=>o.call(s,c(d),c(f),r))}};return Pn(n,e?{add:Mu("add"),set:Mu("set"),delete:Mu("delete"),clear:Mu("clear")}:{add(o){const s=qt(this),r=Pu(s),l=qt(o),u=!t&&!Oa(o)&&!os(o)?l:o;return r.has.call(s,u)||Co(o,u)&&r.has.call(s,o)||Co(l,u)&&r.has.call(s,l)||(s.add(u),Uo(s,"add",u,u)),this},set(o,s){!t&&!Oa(s)&&!os(s)&&(s=qt(s));const r=qt(this),{has:l,get:u}=Pu(r);let c=l.call(r,o);c||(o=qt(o),c=l.call(r,o));const d=u.call(r,o);return r.set(o,s),c?Co(s,d)&&Uo(r,"set",o,s):Uo(r,"add",o,s),this},delete(o){const s=qt(this),{has:r,get:l}=Pu(s);let u=r.call(s,o);u||(o=qt(o),u=r.call(s,o)),l&&l.call(s,o);const c=s.delete(o);return u&&Uo(s,"delete",o,void 0),c},clear(){const o=qt(this),s=o.size!==0,r=o.clear();return s&&Uo(o,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(o=>{n[o]=pT(o,e,t)}),n}function Qh(e,t){const n=hT(e,t);return(a,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?a:Reflect.get(Nt(n,o)&&o in a?n:a,o,s)}const vT={get:Qh(!1,!1)},mT={get:Qh(!1,!0)},gT={get:Qh(!0,!1)};const jw=new WeakMap,Uw=new WeakMap,qw=new WeakMap,bT=new WeakMap;function yT(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function wT(e){return e.__v_skip||!Object.isExtensible(e)?0:yT(Wx(e))}function At(e){return os(e)?e:tv(e,!1,cT,vT,jw)}function ev(e){return tv(e,!1,fT,mT,Uw)}function br(e){return tv(e,!0,dT,gT,qw)}function tv(e,t,n,a,o){if(!ot(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=wT(e);if(s===0)return e;const r=o.get(e);if(r)return r;const l=new Proxy(e,s===2?a:n);return o.set(e,l),l}function dr(e){return os(e)?dr(e.__v_raw):!!(e&&e.__v_isReactive)}function os(e){return!!(e&&e.__v_isReadonly)}function Oa(e){return!!(e&&e.__v_isShallow)}function Od(e){return e?!!e.__v_raw:!1}function qt(e){const t=e&&e.__v_raw;return t?qt(t):e}function xo(e){return!Nt(e,"__v_skip")&&Object.isExtensible(e)&&Tw(e,"__v_skip",!0),e}const Za=e=>ot(e)?At(e):e,il=e=>ot(e)?br(e):e;function Jt(e){return e?e.__v_isRef===!0:!1}function M(e){return Yw(e,!1)}function Xt(e){return Yw(e,!0)}function Yw(e,t){return Jt(e)?e:new ST(e,t)}class ST{constructor(t,n){this.dep=new Zh,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:qt(t),this._value=n?t:Za(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,a=this.__v_isShallow||Oa(t)||os(t);t=a?t:qt(t),Co(t,n)&&(this._rawValue=t,this._value=a?t:Za(t),this.dep.trigger())}}function oc(e){e.dep&&e.dep.trigger()}function i(e){return Jt(e)?e.value:e}function mg(e){return Ve(e)?e():i(e)}const CT={get:(e,t,n)=>t==="__v_raw"?e:i(Reflect.get(e,t,n)),set:(e,t,n,a)=>{const o=e[t];return Jt(o)&&!Jt(n)?(o.value=n,!0):Reflect.set(e,t,n,a)}};function Gw(e){return dr(e)?e:new Proxy(e,CT)}function Mn(e){const t=ye(e)?new Array(e.length):{};for(const n in e)t[n]=Xw(e,n);return t}class kT{constructor(t,n,a){this._object=t,this._key=n,this._defaultValue=a,this.__v_isRef=!0,this._value=void 0,this._raw=qt(t);let o=!0,s=t;if(!ye(t)||!Ed(String(n)))do o=!Od(s)||Oa(s);while(o&&(s=s.__v_raw));this._shallow=o}get value(){let t=this._object[this._key];return this._shallow&&(t=i(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Jt(this._raw[this._key])){const n=this._object[this._key];if(Jt(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return oT(this._raw,this._key)}}class ET{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Vt(e,t,n){return Jt(e)?e:Ve(e)?new ET(e):ot(e)&&arguments.length>1?Xw(e,t,n):M(e)}function Xw(e,t,n){return new kT(e,t,n)}class xT{constructor(t,n,a){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Zh(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=gi-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=a}notify(){if(this.flags|=16,!(this.flags&8)&&hn!==this)return Lw(this,!0),!0}get value(){const t=this.dep.track();return Fw(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function TT(e,t,n=!1){let a,o;return Ve(e)?a=e:(a=e.get,o=e.set),new xT(a,o,n)}const _u={},Bc=new WeakMap;let Js;function $T(e,t=!1,n=Js){if(n){let a=Bc.get(n);a||Bc.set(n,a=[]),a.push(e)}}function OT(e,t,n=cn){const{immediate:a,deep:o,once:s,scheduler:r,augmentJob:l,call:u}=n,c=S=>o?S:Oa(S)||o===!1||o===0?qo(S,1):qo(S);let d,f,v,g,p=!1,h=!1;if(Jt(e)?(f=()=>e.value,p=Oa(e)):dr(e)?(f=()=>c(e),p=!0):ye(e)?(h=!0,p=e.some(S=>dr(S)||Oa(S)),f=()=>e.map(S=>{if(Jt(S))return S.value;if(dr(S))return c(S);if(Ve(S))return u?u(S,2):S()})):Ve(e)?t?f=u?()=>u(e,2):e:f=()=>{if(v){ns();try{v()}finally{as()}}const S=Js;Js=d;try{return u?u(e,3,[g]):e(g)}finally{Js=S}}:f=Dt,t&&o){const S=f,C=o===!0?1/0:o;f=()=>qo(S(),C)}const m=Pw(),b=()=>{d.stop(),m&&m.active&&qh(m.effects,d)};if(s&&t){const S=t;t=(...C)=>{S(...C),b()}}let k=h?new Array(e.length).fill(_u):_u;const y=S=>{if(!(!(d.flags&1)||!d.dirty&&!S))if(t){const C=d.run();if(o||p||(h?C.some((E,$)=>Co(E,k[$])):Co(C,k))){v&&v();const E=Js;Js=d;try{const $=[C,k===_u?void 0:h&&k[0]===_u?[]:k,g];k=C,u?u(t,3,$):t(...$)}finally{Js=E}}}else d.run()};return l&&l(y),d=new _w(f),d.scheduler=r?()=>r(y,!1):y,g=S=>$T(S,!1,d),v=d.onStop=()=>{const S=Bc.get(d);if(S){if(u)u(S,4);else for(const C of S)C();Bc.delete(d)}},t?a?y(!0):k=d.run():r?r(y.bind(null,!0),!0):d.run(),b.pause=d.pause.bind(d),b.resume=d.resume.bind(d),b.stop=b,b}function qo(e,t=1/0,n){if(t<=0||!ot(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Jt(e))qo(e.value,t,n);else if(ye(e))for(let a=0;a{qo(a,t,n)});else if(mi(e)){for(const a in e)qo(e[a],t,n);for(const a of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,a)&&qo(e[a],t,n)}return e}function Yi(e,t,n,a){try{return a?e(...a):e()}catch(o){Rd(o,t,n)}}function Qa(e,t,n,a){if(Ve(e)){const o=Yi(e,t,n,a);return o&&mr(o)&&o.catch(s=>{Rd(s,t,n)}),o}if(ye(e)){const o=[];for(let s=0;s>>1,o=la[a],s=yi(o);s=yi(n)?la.push(e):la.splice(NT(t),0,e),e.flags|=1,Zw()}}function Zw(){Fc||(Fc=Jw.then(e1))}function IT(e){ye(e)?Zr.push(...e):xs&&e.id===-1?xs.splice(Wr+1,0,e):e.flags&1||(Zr.push(e),e.flags|=1),Zw()}function gg(e,t,n=bo+1){for(;nyi(n)-yi(a));if(Zr.length=0,xs){xs.push(...t);return}for(xs=t,Wr=0;Wre.id==null?e.flags&2?-1:1/0:e.id;function e1(e){try{for(bo=0;bo{a._d&&Kc(-1);const s=Vc(t);let r;try{r=e(...o)}finally{Vc(s),a._d&&Kc(1)}return r};return a._n=!0,a._c=!0,a._d=!0,a}function ut(e,t){if(Kn===null)return e;const n=_d(Kn),a=e.dirs||(e.dirs=[]);for(let o=0;o1)return n&&Ve(t)?t.call(a&&a.proxy):t}}const PT=Symbol.for("v-scx"),MT=()=>_e(PT);function wa(e,t){return av(e,null,t)}function le(e,t,n){return av(e,t,n)}function av(e,t,n=cn){const{immediate:a,deep:o,flush:s,once:r}=n,l=Pn({},n),u=t&&a||!t&&s!=="post";let c;if(Ci){if(s==="sync"){const g=MT();c=g.__watcherHandles||(g.__watcherHandles=[])}else if(!u){const g=()=>{};return g.stop=Dt,g.resume=Dt,g.pause=Dt,g}}const d=Jn;l.call=(g,p,h)=>Qa(g,d,p,h);let f=!1;s==="post"?l.scheduler=g=>{qn(g,d&&d.suspense)}:s!=="sync"&&(f=!0,l.scheduler=(g,p)=>{p?g():nv(g)}),l.augmentJob=g=>{t&&(g.flags|=4),f&&(g.flags|=2,d&&(g.id=d.uid,g.i=d))};const v=OT(e,t,l);return Ci&&(c?c.push(v):u&&v()),v}function _T(e,t,n){const a=this.proxy,o=Le(e)?e.includes(".")?n1(a,e):()=>a[e]:e.bind(a,a);let s;Ve(t)?s=t:(s=t.handler,n=t);const r=Xi(this),l=av(o,s.bind(a),n);return r(),l}function n1(e,t){const n=t.split(".");return()=>{let a=e;for(let o=0;oe.__isTeleport,oi=e=>e&&(e.disabled||e.disabled===""),bg=e=>e&&(e.defer||e.defer===""),yg=e=>typeof SVGElement<"u"&&e instanceof SVGElement,wg=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Cp=(e,t)=>{const n=e&&e.to;return Le(n)?t?t(n):null:n},s1={name:"Teleport",__isTeleport:!0,process(e,t,n,a,o,s,r,l,u,c){const{mc:d,pc:f,pbc:v,o:{insert:g,querySelector:p,createText:h,createComment:m}}=c,b=oi(t.props);let{shapeFlag:k,children:y,dynamicChildren:S}=t;if(e==null){const C=t.el=h(""),E=t.anchor=h("");g(C,n,a),g(E,n,a);const $=(N,R)=>{k&16&&d(y,N,R,o,s,r,l,u)},O=()=>{const N=t.target=Cp(t.props,p),R=kp(N,t,h,g);N&&(r!=="svg"&&yg(N)?r="svg":r!=="mathml"&&wg(N)&&(r="mathml"),o&&o.isCE&&(o.ce._teleportTargets||(o.ce._teleportTargets=new Set)).add(N),b||($(N,R),sc(t,!1)))};b&&($(n,E),sc(t,!0)),bg(t.props)?(t.el.__isMounted=!1,qn(()=>{O(),delete t.el.__isMounted},s)):O()}else{if(bg(t.props)&&e.el.__isMounted===!1){qn(()=>{s1.process(e,t,n,a,o,s,r,l,u,c)},s);return}t.el=e.el,t.targetStart=e.targetStart;const C=t.anchor=e.anchor,E=t.target=e.target,$=t.targetAnchor=e.targetAnchor,O=oi(e.props),N=O?n:E,R=O?C:$;if(r==="svg"||yg(E)?r="svg":(r==="mathml"||wg(E))&&(r="mathml"),S?(v(e.dynamicChildren,S,N,o,s,r,l),fv(e,t,!0)):u||f(e,t,N,R,o,s,r,l,!1),b)O?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Au(t,n,C,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const A=t.target=Cp(t.props,p);A&&Au(t,A,null,c,0)}else O&&Au(t,E,$,c,1);sc(t,b)}},remove(e,t,n,{um:a,o:{remove:o}},s){const{shapeFlag:r,children:l,anchor:u,targetStart:c,targetAnchor:d,target:f,props:v}=e;if(f&&(o(c),o(d)),s&&o(u),r&16){const g=s||!oi(v);for(let p=0;p{e.isMounted=!0}),Bt(()=>{e.isUnmounting=!0}),e}const Pa=[Function,Array],l1={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Pa,onEnter:Pa,onAfterEnter:Pa,onEnterCancelled:Pa,onBeforeLeave:Pa,onLeave:Pa,onAfterLeave:Pa,onLeaveCancelled:Pa,onBeforeAppear:Pa,onAppear:Pa,onAfterAppear:Pa,onAppearCancelled:Pa},i1=e=>{const t=e.subTree;return t.component?i1(t.component):t},DT={name:"BaseTransition",props:l1,setup(e,{slots:t}){const n=ft(),a=r1();return()=>{const o=t.default&&ov(t.default(),!0);if(!o||!o.length)return;const s=u1(o),r=qt(e),{mode:l}=r;if(a.isLeaving)return Rf(s);const u=Sg(s);if(!u)return Rf(s);let c=wi(u,r,a,n,f=>c=f);u.type!==gn&&yr(u,c);let d=n.subTree&&Sg(n.subTree);if(d&&d.type!==gn&&!Qs(d,u)&&i1(n).type!==gn){let f=wi(d,r,a,n);if(yr(d,f),l==="out-in"&&u.type!==gn)return a.isLeaving=!0,f.afterLeave=()=>{a.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,d=void 0},Rf(s);l==="in-out"&&u.type!==gn?f.delayLeave=(v,g,p)=>{const h=c1(a,d);h[String(d.key)]=d,v[yo]=()=>{g(),v[yo]=void 0,delete c.delayedLeave,d=void 0},c.delayedLeave=()=>{p(),delete c.delayedLeave,d=void 0}}:d=void 0}else d&&(d=void 0);return s}}};function u1(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==gn){t=n;break}}return t}const BT=DT;function c1(e,t){const{leavingVNodes:n}=e;let a=n.get(t.type);return a||(a=Object.create(null),n.set(t.type,a)),a}function wi(e,t,n,a,o){const{appear:s,mode:r,persisted:l=!1,onBeforeEnter:u,onEnter:c,onAfterEnter:d,onEnterCancelled:f,onBeforeLeave:v,onLeave:g,onAfterLeave:p,onLeaveCancelled:h,onBeforeAppear:m,onAppear:b,onAfterAppear:k,onAppearCancelled:y}=t,S=String(e.key),C=c1(n,e),E=(N,R)=>{N&&Qa(N,a,9,R)},$=(N,R)=>{const A=R[1];E(N,R),ye(N)?N.every(_=>_.length<=1)&&A():N.length<=1&&A()},O={mode:r,persisted:l,beforeEnter(N){let R=u;if(!n.isMounted)if(s)R=m||u;else return;N[yo]&&N[yo](!0);const A=C[S];A&&Qs(e,A)&&A.el[yo]&&A.el[yo](),E(R,[N])},enter(N){if(C[S]===e)return;let R=c,A=d,_=f;if(!n.isMounted)if(s)R=b||c,A=k||d,_=y||f;else return;let V=!1;N[Vl]=U=>{V||(V=!0,U?E(_,[N]):E(A,[N]),O.delayedLeave&&O.delayedLeave(),N[Vl]=void 0)};const H=N[Vl].bind(null,!1);R?$(R,[N,H]):H()},leave(N,R){const A=String(e.key);if(N[Vl]&&N[Vl](!0),n.isUnmounting)return R();E(v,[N]);let _=!1;N[yo]=H=>{_||(_=!0,R(),H?E(h,[N]):E(p,[N]),N[yo]=void 0,C[A]===e&&delete C[A])};const V=N[yo].bind(null,!1);C[A]=e,g?$(g,[N,V]):V()},clone(N){const R=wi(N,t,n,a,o);return o&&o(R),R}};return O}function Rf(e){if(Nd(e))return e=Io(e),e.children=null,e}function Sg(e){if(!Nd(e))return o1(e.type)&&e.children?u1(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Ve(n.default))return n.default()}}function yr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,yr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function ov(e,t=!1,n){let a=[],o=0;for(let s=0;s1)for(let s=0;ssi(h,t&&(ye(t)?t[m]:t),n,a,o));return}if(Qr(a)&&!o){a.shapeFlag&512&&a.type.__asyncResolved&&a.component.subTree.component&&si(e,t,n,a.component.subTree);return}const s=a.shapeFlag&4?_d(a.component):a.el,r=o?null:s,{i:l,r:u}=e,c=t&&t.r,d=l.refs===cn?l.refs={}:l.refs,f=l.setupState,v=qt(f),g=f===cn?Ew:h=>Cg(d,h)?!1:Nt(v,h),p=(h,m)=>!(m&&Cg(d,m));if(c!=null&&c!==u){if(kg(t),Le(c))d[c]=null,g(c)&&(f[c]=null);else if(Jt(c)){const h=t;p(c,h.k)&&(c.value=null),h.k&&(d[h.k]=null)}}if(Ve(u))Yi(u,l,12,[r,d]);else{const h=Le(u),m=Jt(u);if(h||m){const b=()=>{if(e.f){const k=h?g(u)?f[u]:d[u]:p()||!e.k?u.value:d[e.k];if(o)ye(k)&&qh(k,s);else if(ye(k))k.includes(s)||k.push(s);else if(h)d[u]=[s],g(u)&&(f[u]=d[u]);else{const y=[s];p(u,e.k)&&(u.value=y),e.k&&(d[e.k]=y)}}else h?(d[u]=r,g(u)&&(f[u]=r)):m&&(p(u,e.k)&&(u.value=r),e.k&&(d[e.k]=r))};if(r){const k=()=>{b(),zc.delete(e)};k.id=-1,zc.set(e,k),qn(k,n)}else kg(e),b()}}}function kg(e){const t=zc.get(e);t&&(t.flags|=8,zc.delete(e))}Td().requestIdleCallback;Td().cancelIdleCallback;const Qr=e=>!!e.type.__asyncLoader,Nd=e=>e.type.__isKeepAlive;function Gi(e,t){f1(e,"a",t)}function sv(e,t){f1(e,"da",t)}function f1(e,t,n=Jn){const a=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Id(t,a,n),n){let o=n.parent;for(;o&&o.parent;)Nd(o.parent.vnode)&&FT(a,t,n,o),o=o.parent}}function FT(e,t,n,a){const o=Id(t,e,a,!0);$l(()=>{qh(a[t],o)},n)}function Id(e,t,n=Jn,a=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{ns();const l=Xi(n),u=Qa(t,n,e,r);return l(),as(),u});return a?o.unshift(s):o.push(s),s}}const ds=e=>(t,n=Jn)=>{(!Ci||e==="sp")&&Id(e,(...a)=>t(...a),n)},Pd=ds("bm"),ht=ds("m"),rv=ds("bu"),ro=ds("u"),Bt=ds("bum"),$l=ds("um"),VT=ds("sp"),zT=ds("rtg"),HT=ds("rtc");function KT(e,t=Jn){Id("ec",e,t)}const lv="components",WT="directives";function It(e,t){return uv(lv,e,!0,t)||e}const p1=Symbol.for("v-ndc");function it(e){return Le(e)?uv(lv,e,!1)||e:e||p1}function iv(e){return uv(WT,e)}function uv(e,t,n=!0,a=!1){const o=Kn||Jn;if(o){const s=o.type;if(e===lv){const l=T$(s,!1);if(l&&(l===t||l===Fn(t)||l===qi(Fn(t))))return s}const r=Eg(o[e]||s[e],t)||Eg(o.appContext[e],t);return!r&&a?s:r}}function Eg(e,t){return e&&(e[t]||e[Fn(t)]||e[qi(Fn(t))])}function gt(e,t,n,a){let o;const s=n,r=ye(e);if(r||Le(e)){const l=r&&dr(e);let u=!1,c=!1;l&&(u=!Oa(e),c=os(e),e=$d(e)),o=new Array(e.length);for(let d=0,f=e.length;dt(l,u,void 0,s));else{const l=Object.keys(e);o=new Array(l.length);for(let u=0,c=l.length;u{const s=a.fn(...o);return s&&(s.key=a.key),s}:a.fn)}return e}function ee(e,t,n={},a,o){if(Kn.ce||Kn.parent&&Qr(Kn.parent)&&Kn.parent.ce){const c=Object.keys(n).length>0;return t!=="default"&&(n.name=t),x(),oe(Fe,null,[Y("slot",n,a&&a())],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1),x();const r=s&&h1(s(n)),l=n.key||r&&r.key,u=oe(Fe,{key:(l&&!Ja(l)?l:`_${t}`)+(!r&&a?"_fb":"")},r||(a?a():[]),r&&e._===1?64:-2);return u.scopeId&&(u.slotScopeIds=[u.scopeId+"-s"]),s&&s._c&&(s._d=!0),u}function h1(e){return e.some(t=>Ut(t)?!(t.type===gn||t.type===Fe&&!h1(t.children)):!0)?e:null}function jT(e,t){const n={};for(const a in e)n[ti(a)]=e[a];return n}const Ep=e=>e?_1(e)?_d(e):Ep(e.parent):null,ri=Pn(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ep(e.parent),$root:e=>Ep(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>g1(e),$forceUpdate:e=>e.f||(e.f=()=>{nv(e.update)}),$nextTick:e=>e.n||(e.n=Re.bind(e.proxy)),$watch:e=>_T.bind(e)}),Nf=(e,t)=>e!==cn&&!e.__isScriptSetup&&Nt(e,t),UT={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:a,data:o,props:s,accessCache:r,type:l,appContext:u}=e;if(t[0]!=="$"){const v=r[t];if(v!==void 0)switch(v){case 1:return a[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(Nf(a,t))return r[t]=1,a[t];if(o!==cn&&Nt(o,t))return r[t]=2,o[t];if(Nt(s,t))return r[t]=3,s[t];if(n!==cn&&Nt(n,t))return r[t]=4,n[t];xp&&(r[t]=0)}}const c=ri[t];let d,f;if(c)return t==="$attrs"&&Xn(e.attrs,"get",""),c(e);if((d=l.__cssModules)&&(d=d[t]))return d;if(n!==cn&&Nt(n,t))return r[t]=4,n[t];if(f=u.config.globalProperties,Nt(f,t))return f[t]},set({_:e},t,n){const{data:a,setupState:o,ctx:s}=e;return Nf(o,t)?(o[t]=n,!0):a!==cn&&Nt(a,t)?(a[t]=n,!0):Nt(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:a,appContext:o,props:s,type:r}},l){let u;return!!(n[l]||e!==cn&&l[0]!=="$"&&Nt(e,l)||Nf(t,l)||Nt(s,l)||Nt(a,l)||Nt(ri,l)||Nt(o.config.globalProperties,l)||(u=r.__cssModules)&&u[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Nt(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function vn(){return v1().slots}function fs(){return v1().attrs}function v1(e){const t=ft();return t.setupContext||(t.setupContext=L1(t))}function xg(e){return ye(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let xp=!0;function qT(e){const t=g1(e),n=e.proxy,a=e.ctx;xp=!1,t.beforeCreate&&Tg(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:r,watch:l,provide:u,inject:c,created:d,beforeMount:f,mounted:v,beforeUpdate:g,updated:p,activated:h,deactivated:m,beforeDestroy:b,beforeUnmount:k,destroyed:y,unmounted:S,render:C,renderTracked:E,renderTriggered:$,errorCaptured:O,serverPrefetch:N,expose:R,inheritAttrs:A,components:_,directives:V,filters:H}=t;if(c&&YT(c,a,null),r)for(const P in r){const I=r[P];Ve(I)&&(a[P]=I.bind(n))}if(o){const P=o.call(n,n);ot(P)&&(e.data=At(P))}if(xp=!0,s)for(const P in s){const I=s[P],L=Ve(I)?I.bind(n,n):Ve(I.get)?I.get.bind(n,n):Dt,D=!Ve(I)&&Ve(I.set)?I.set.bind(n):Dt,F=w({get:L,set:D});Object.defineProperty(a,P,{enumerable:!0,configurable:!0,get:()=>F.value,set:q=>F.value=q})}if(l)for(const P in l)m1(l[P],a,n,P);if(u){const P=Ve(u)?u.call(n):u;Reflect.ownKeys(P).forEach(I=>{St(I,P[I])})}d&&Tg(d,e,"c");function W(P,I){ye(I)?I.forEach(L=>P(L.bind(n))):I&&P(I.bind(n))}if(W(Pd,f),W(ht,v),W(rv,g),W(ro,p),W(Gi,h),W(sv,m),W(KT,O),W(HT,E),W(zT,$),W(Bt,k),W($l,S),W(VT,N),ye(R))if(R.length){const P=e.exposed||(e.exposed={});R.forEach(I=>{Object.defineProperty(P,I,{get:()=>n[I],set:L=>n[I]=L,enumerable:!0})})}else e.exposed||(e.exposed={});C&&e.render===Dt&&(e.render=C),A!=null&&(e.inheritAttrs=A),_&&(e.components=_),V&&(e.directives=V),N&&d1(e)}function YT(e,t,n=Dt){ye(e)&&(e=Tp(e));for(const a in e){const o=e[a];let s;ot(o)?"default"in o?s=_e(o.from||a,o.default,!0):s=_e(o.from||a):s=_e(o),Jt(s)?Object.defineProperty(t,a,{enumerable:!0,configurable:!0,get:()=>s.value,set:r=>s.value=r}):t[a]=s}}function Tg(e,t,n){Qa(ye(e)?e.map(a=>a.bind(t.proxy)):e.bind(t.proxy),t,n)}function m1(e,t,n,a){let o=a.includes(".")?n1(n,a):()=>n[a];if(Le(e)){const s=t[e];Ve(s)&&le(o,s)}else if(Ve(e))le(o,e.bind(n));else if(ot(e))if(ye(e))e.forEach(s=>m1(s,t,n,a));else{const s=Ve(e.handler)?e.handler.bind(n):t[e.handler];Ve(s)&&le(o,s,e)}}function g1(e){const t=e.type,{mixins:n,extends:a}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:r}}=e.appContext,l=s.get(t);let u;return l?u=l:!o.length&&!n&&!a?u=t:(u={},o.length&&o.forEach(c=>Hc(u,c,r,!0)),Hc(u,t,r)),ot(t)&&s.set(t,u),u}function Hc(e,t,n,a=!1){const{mixins:o,extends:s}=t;s&&Hc(e,s,n,!0),o&&o.forEach(r=>Hc(e,r,n,!0));for(const r in t)if(!(a&&r==="expose")){const l=GT[r]||n&&n[r];e[r]=l?l(e[r],t[r]):t[r]}return e}const GT={data:$g,props:Og,emits:Og,methods:Xl,computed:Xl,beforeCreate:ra,created:ra,beforeMount:ra,mounted:ra,beforeUpdate:ra,updated:ra,beforeDestroy:ra,beforeUnmount:ra,destroyed:ra,unmounted:ra,activated:ra,deactivated:ra,errorCaptured:ra,serverPrefetch:ra,components:Xl,directives:Xl,watch:JT,provide:$g,inject:XT};function $g(e,t){return t?e?function(){return Pn(Ve(e)?e.call(this,this):e,Ve(t)?t.call(this,this):t)}:t:e}function XT(e,t){return Xl(Tp(e),Tp(t))}function Tp(e){if(ye(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Fn(t)}Modifiers`]||e[`${cs(t)}Modifiers`];function t$(e,t,...n){if(e.isUnmounted)return;const a=e.vnode.props||cn;let o=n;const s=t.startsWith("update:"),r=s&&e$(a,t.slice(7));r&&(r.trim&&(o=n.map(d=>Le(d)?d.trim():d)),r.number&&(o=n.map(Yh)));let l,u=a[l=ti(t)]||a[l=ti(Fn(t))];!u&&s&&(u=a[l=ti(cs(t))]),u&&Qa(u,e,6,o);const c=a[l+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Qa(c,e,6,o)}}const n$=new WeakMap;function y1(e,t,n=!1){const a=n?n$:t.emitsCache,o=a.get(e);if(o!==void 0)return o;const s=e.emits;let r={},l=!1;if(!Ve(e)){const u=c=>{const d=y1(c,t,!0);d&&(l=!0,Pn(r,d))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!s&&!l?(ot(e)&&a.set(e,null),null):(ye(s)?s.forEach(u=>r[u]=null):Pn(r,s),ot(e)&&a.set(e,r),r)}function Md(e,t){return!e||!Cd(t)?!1:(t=t.slice(2).replace(/Once$/,""),Nt(e,t[0].toLowerCase()+t.slice(1))||Nt(e,cs(t))||Nt(e,t))}function Rg(e){const{type:t,vnode:n,proxy:a,withProxy:o,propsOptions:[s],slots:r,attrs:l,emit:u,render:c,renderCache:d,props:f,data:v,setupState:g,ctx:p,inheritAttrs:h}=e,m=Vc(e);let b,k;try{if(n.shapeFlag&4){const S=o||a,C=S;b=So(c.call(C,S,d,f,g,v,p)),k=l}else{const S=t;b=So(S.length>1?S(f,{attrs:l,slots:r,emit:u}):S(f,null)),k=t.props?l:a$(l)}}catch(S){li.length=0,Rd(S,e,1),b=Y(gn)}let y=b;if(k&&h!==!1){const S=Object.keys(k),{shapeFlag:C}=y;S.length&&C&7&&(s&&S.some(Uh)&&(k=o$(k,s)),y=Io(y,k,!1,!0))}return n.dirs&&(y=Io(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition&&yr(y,n.transition),b=y,Vc(m),b}const a$=e=>{let t;for(const n in e)(n==="class"||n==="style"||Cd(n))&&((t||(t={}))[n]=e[n]);return t},o$=(e,t)=>{const n={};for(const a in e)(!Uh(a)||!(a.slice(9)in t))&&(n[a]=e[a]);return n};function s$(e,t,n){const{props:a,children:o,component:s}=e,{props:r,children:l,patchFlag:u}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return a?Ng(a,r,c):!!r;if(u&8){const d=t.dynamicProps;for(let f=0;fObject.create(S1),k1=e=>Object.getPrototypeOf(e)===S1;function l$(e,t,n,a=!1){const o={},s=C1();e.propsDefaults=Object.create(null),E1(e,t,o,s);for(const r in e.propsOptions[0])r in o||(o[r]=void 0);n?e.props=a?o:ev(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function i$(e,t,n,a){const{props:o,attrs:s,vnode:{patchFlag:r}}=e,l=qt(o),[u]=e.propsOptions;let c=!1;if((a||r>0)&&!(r&16)){if(r&8){const d=e.vnode.dynamicProps;for(let f=0;f{u=!0;const[v,g]=x1(f,t,!0);Pn(r,v),g&&l.push(...g)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!s&&!u)return ot(e)&&a.set(e,Xr),Xr;if(ye(s))for(let d=0;de==="_"||e==="_ctx"||e==="$stable",dv=e=>ye(e)?e.map(So):[So(e)],c$=(e,t,n)=>{if(t._n)return t;const a=J((...o)=>dv(t(...o)),n);return a._c=!1,a},T1=(e,t,n)=>{const a=e._ctx;for(const o in e){if(cv(o))continue;const s=e[o];if(Ve(s))t[o]=c$(o,s,a);else if(s!=null){const r=dv(s);t[o]=()=>r}}},$1=(e,t)=>{const n=dv(t);e.slots.default=()=>n},O1=(e,t,n)=>{for(const a in t)(n||!cv(a))&&(e[a]=t[a])},d$=(e,t,n)=>{const a=e.slots=C1();if(e.vnode.shapeFlag&32){const o=t._;o?(O1(a,t,n),n&&Tw(a,"_",o,!0)):T1(t,a)}else t&&$1(e,t)},f$=(e,t,n)=>{const{vnode:a,slots:o}=e;let s=!0,r=cn;if(a.shapeFlag&32){const l=t._;l?n&&l===1?s=!1:O1(o,t,n):(s=!t.$stable,T1(t,o)),r=t}else t&&($1(e,t),r={default:1});if(s)for(const l in o)!cv(l)&&r[l]==null&&delete o[l]},qn=g$;function p$(e){return h$(e)}function h$(e,t){const n=Td();n.__VUE__=!0;const{insert:a,remove:o,patchProp:s,createElement:r,createText:l,createComment:u,setText:c,setElementText:d,parentNode:f,nextSibling:v,setScopeId:g=Dt,insertStaticContent:p}=e,h=(K,Z,re,ce=null,ve=null,ke=null,Ne=void 0,Ie=null,$e=!!Z.dynamicChildren)=>{if(K===Z)return;K&&!Qs(K,Z)&&(ce=ue(K),q(K,ve,ke,!0),K=null),Z.patchFlag===-2&&($e=!1,Z.dynamicChildren=null);const{type:pe,ref:Ee,shapeFlag:me}=Z;switch(pe){case Ol:m(K,Z,re,ce);break;case gn:b(K,Z,re,ce);break;case rc:K==null&&k(Z,re,ce,Ne);break;case Fe:_(K,Z,re,ce,ve,ke,Ne,Ie,$e);break;default:me&1?C(K,Z,re,ce,ve,ke,Ne,Ie,$e):me&6?V(K,Z,re,ce,ve,ke,Ne,Ie,$e):(me&64||me&128)&&pe.process(K,Z,re,ce,ve,ke,Ne,Ie,$e,ae)}Ee!=null&&ve?si(Ee,K&&K.ref,ke,Z||K,!Z):Ee==null&&K&&K.ref!=null&&si(K.ref,null,ke,K,!0)},m=(K,Z,re,ce)=>{if(K==null)a(Z.el=l(Z.children),re,ce);else{const ve=Z.el=K.el;Z.children!==K.children&&c(ve,Z.children)}},b=(K,Z,re,ce)=>{K==null?a(Z.el=u(Z.children||""),re,ce):Z.el=K.el},k=(K,Z,re,ce)=>{[K.el,K.anchor]=p(K.children,Z,re,ce,K.el,K.anchor)},y=({el:K,anchor:Z},re,ce)=>{let ve;for(;K&&K!==Z;)ve=v(K),a(K,re,ce),K=ve;a(Z,re,ce)},S=({el:K,anchor:Z})=>{let re;for(;K&&K!==Z;)re=v(K),o(K),K=re;o(Z)},C=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{if(Z.type==="svg"?Ne="svg":Z.type==="math"&&(Ne="mathml"),K==null)E(Z,re,ce,ve,ke,Ne,Ie,$e);else{const pe=K.el&&K.el._isVueCE?K.el:null;try{pe&&pe._beginPatch(),N(K,Z,ve,ke,Ne,Ie,$e)}finally{pe&&pe._endPatch()}}},E=(K,Z,re,ce,ve,ke,Ne,Ie)=>{let $e,pe;const{props:Ee,shapeFlag:me,transition:Me,dirs:We}=K;if($e=K.el=r(K.type,ke,Ee&&Ee.is,Ee),me&8?d($e,K.children):me&16&&O(K.children,$e,null,ce,ve,If(K,ke),Ne,Ie),We&&Us(K,null,ce,"created"),$($e,K,K.scopeId,Ne,ce),Ee){for(const Pe in Ee)Pe!=="value"&&!ei(Pe)&&s($e,Pe,null,Ee[Pe],ke,ce);"value"in Ee&&s($e,"value",null,Ee.value,ke),(pe=Ee.onVnodeBeforeMount)&&mo(pe,ce,K)}We&&Us(K,null,ce,"beforeMount");const Ze=v$(ve,Me);Ze&&Me.beforeEnter($e),a($e,Z,re),((pe=Ee&&Ee.onVnodeMounted)||Ze||We)&&qn(()=>{pe&&mo(pe,ce,K),Ze&&Me.enter($e),We&&Us(K,null,ce,"mounted")},ve)},$=(K,Z,re,ce,ve)=>{if(re&&g(K,re),ce)for(let ke=0;ke{for(let pe=$e;pe{const Ie=Z.el=K.el;let{patchFlag:$e,dynamicChildren:pe,dirs:Ee}=Z;$e|=K.patchFlag&16;const me=K.props||cn,Me=Z.props||cn;let We;if(re&&qs(re,!1),(We=Me.onVnodeBeforeUpdate)&&mo(We,re,Z,K),Ee&&Us(Z,K,re,"beforeUpdate"),re&&qs(re,!0),(me.innerHTML&&Me.innerHTML==null||me.textContent&&Me.textContent==null)&&d(Ie,""),pe?R(K.dynamicChildren,pe,Ie,re,ce,If(Z,ve),ke):Ne||I(K,Z,Ie,null,re,ce,If(Z,ve),ke,!1),$e>0){if($e&16)A(Ie,me,Me,re,ve);else if($e&2&&me.class!==Me.class&&s(Ie,"class",null,Me.class,ve),$e&4&&s(Ie,"style",me.style,Me.style,ve),$e&8){const Ze=Z.dynamicProps;for(let Pe=0;Pe{We&&mo(We,re,Z,K),Ee&&Us(Z,K,re,"updated")},ce)},R=(K,Z,re,ce,ve,ke,Ne)=>{for(let Ie=0;Ie{if(Z!==re){if(Z!==cn)for(const ke in Z)!ei(ke)&&!(ke in re)&&s(K,ke,Z[ke],null,ve,ce);for(const ke in re){if(ei(ke))continue;const Ne=re[ke],Ie=Z[ke];Ne!==Ie&&ke!=="value"&&s(K,ke,Ie,Ne,ve,ce)}"value"in re&&s(K,"value",Z.value,re.value,ve)}},_=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{const pe=Z.el=K?K.el:l(""),Ee=Z.anchor=K?K.anchor:l("");let{patchFlag:me,dynamicChildren:Me,slotScopeIds:We}=Z;We&&(Ie=Ie?Ie.concat(We):We),K==null?(a(pe,re,ce),a(Ee,re,ce),O(Z.children||[],re,Ee,ve,ke,Ne,Ie,$e)):me>0&&me&64&&Me&&K.dynamicChildren&&K.dynamicChildren.length===Me.length?(R(K.dynamicChildren,Me,re,ve,ke,Ne,Ie),(Z.key!=null||ve&&Z===ve.subTree)&&fv(K,Z,!0)):I(K,Z,re,Ee,ve,ke,Ne,Ie,$e)},V=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{Z.slotScopeIds=Ie,K==null?Z.shapeFlag&512?ve.ctx.activate(Z,re,ce,Ne,$e):H(Z,re,ce,ve,ke,Ne,$e):U(K,Z,$e)},H=(K,Z,re,ce,ve,ke,Ne)=>{const Ie=K.component=C$(K,ce,ve);if(Nd(K)&&(Ie.ctx.renderer=ae),k$(Ie,!1,Ne),Ie.asyncDep){if(ve&&ve.registerDep(Ie,W,Ne),!K.el){const $e=Ie.subTree=Y(gn);b(null,$e,Z,re),K.placeholder=$e.el}}else W(Ie,K,Z,re,ve,ke,Ne)},U=(K,Z,re)=>{const ce=Z.component=K.component;if(s$(K,Z,re))if(ce.asyncDep&&!ce.asyncResolved){P(ce,Z,re);return}else ce.next=Z,ce.update();else Z.el=K.el,ce.vnode=Z},W=(K,Z,re,ce,ve,ke,Ne)=>{const Ie=()=>{if(K.isMounted){let{next:me,bu:Me,u:We,parent:Ze,vnode:Pe}=K;{const lt=R1(K);if(lt){me&&(me.el=Pe.el,P(K,me,Ne)),lt.asyncDep.then(()=>{qn(()=>{K.isUnmounted||pe()},ve)});return}}let Ae=me,je;qs(K,!1),me?(me.el=Pe.el,P(K,me,Ne)):me=Pe,Me&&ac(Me),(je=me.props&&me.props.onVnodeBeforeUpdate)&&mo(je,Ze,me,Pe),qs(K,!0);const Rt=Rg(K),Ue=K.subTree;K.subTree=Rt,h(Ue,Rt,f(Ue.el),ue(Ue),K,ve,ke),me.el=Rt.el,Ae===null&&r$(K,Rt.el),We&&qn(We,ve),(je=me.props&&me.props.onVnodeUpdated)&&qn(()=>mo(je,Ze,me,Pe),ve)}else{let me;const{el:Me,props:We}=Z,{bm:Ze,m:Pe,parent:Ae,root:je,type:Rt}=K,Ue=Qr(Z);qs(K,!1),Ze&&ac(Ze),!Ue&&(me=We&&We.onVnodeBeforeMount)&&mo(me,Ae,Z),qs(K,!0);{je.ce&&je.ce._hasShadowRoot()&&je.ce._injectChildStyle(Rt,K.parent?K.parent.type:void 0);const lt=K.subTree=Rg(K);h(null,lt,re,ce,K,ve,ke),Z.el=lt.el}if(Pe&&qn(Pe,ve),!Ue&&(me=We&&We.onVnodeMounted)){const lt=Z;qn(()=>mo(me,Ae,lt),ve)}(Z.shapeFlag&256||Ae&&Qr(Ae.vnode)&&Ae.vnode.shapeFlag&256)&&K.a&&qn(K.a,ve),K.isMounted=!0,Z=re=ce=null}};K.scope.on();const $e=K.effect=new _w(Ie);K.scope.off();const pe=K.update=$e.run.bind($e),Ee=K.job=$e.runIfDirty.bind($e);Ee.i=K,Ee.id=K.uid,$e.scheduler=()=>nv(Ee),qs(K,!0),pe()},P=(K,Z,re)=>{Z.component=K;const ce=K.vnode.props;K.vnode=Z,K.next=null,i$(K,Z.props,ce,re),f$(K,Z.children,re),ns(),gg(K),as()},I=(K,Z,re,ce,ve,ke,Ne,Ie,$e=!1)=>{const pe=K&&K.children,Ee=K?K.shapeFlag:0,me=Z.children,{patchFlag:Me,shapeFlag:We}=Z;if(Me>0){if(Me&128){D(pe,me,re,ce,ve,ke,Ne,Ie,$e);return}else if(Me&256){L(pe,me,re,ce,ve,ke,Ne,Ie,$e);return}}We&8?(Ee&16&&he(pe,ve,ke),me!==pe&&d(re,me)):Ee&16?We&16?D(pe,me,re,ce,ve,ke,Ne,Ie,$e):he(pe,ve,ke,!0):(Ee&8&&d(re,""),We&16&&O(me,re,ce,ve,ke,Ne,Ie,$e))},L=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{K=K||Xr,Z=Z||Xr;const pe=K.length,Ee=Z.length,me=Math.min(pe,Ee);let Me;for(Me=0;MeEe?he(K,ve,ke,!0,!1,me):O(Z,re,ce,ve,ke,Ne,Ie,$e,me)},D=(K,Z,re,ce,ve,ke,Ne,Ie,$e)=>{let pe=0;const Ee=Z.length;let me=K.length-1,Me=Ee-1;for(;pe<=me&&pe<=Me;){const We=K[pe],Ze=Z[pe]=$e?Wo(Z[pe]):So(Z[pe]);if(Qs(We,Ze))h(We,Ze,re,null,ve,ke,Ne,Ie,$e);else break;pe++}for(;pe<=me&&pe<=Me;){const We=K[me],Ze=Z[Me]=$e?Wo(Z[Me]):So(Z[Me]);if(Qs(We,Ze))h(We,Ze,re,null,ve,ke,Ne,Ie,$e);else break;me--,Me--}if(pe>me){if(pe<=Me){const We=Me+1,Ze=WeMe)for(;pe<=me;)q(K[pe],ve,ke,!0),pe++;else{const We=pe,Ze=pe,Pe=new Map;for(pe=Ze;pe<=Me;pe++){const be=Z[pe]=$e?Wo(Z[pe]):So(Z[pe]);be.key!=null&&Pe.set(be.key,pe)}let Ae,je=0;const Rt=Me-Ze+1;let Ue=!1,lt=0;const mt=new Array(Rt);for(pe=0;pe=Rt){q(be,ve,ke,!0);continue}let ze;if(be.key!=null)ze=Pe.get(be.key);else for(Ae=Ze;Ae<=Me;Ae++)if(mt[Ae-Ze]===0&&Qs(be,Z[Ae])){ze=Ae;break}ze===void 0?q(be,ve,ke,!0):(mt[ze-Ze]=pe+1,ze>=lt?lt=ze:Ue=!0,h(be,Z[ze],re,null,ve,ke,Ne,Ie,$e),je++)}const kt=Ue?m$(mt):Xr;for(Ae=kt.length-1,pe=Rt-1;pe>=0;pe--){const be=Ze+pe,ze=Z[be],de=Z[be+1],Ge=be+1{const{el:ke,type:Ne,transition:Ie,children:$e,shapeFlag:pe}=K;if(pe&6){F(K.component.subTree,Z,re,ce);return}if(pe&128){K.suspense.move(Z,re,ce);return}if(pe&64){Ne.move(K,Z,re,ae);return}if(Ne===Fe){a(ke,Z,re);for(let me=0;me<$e.length;me++)F($e[me],Z,re,ce);a(K.anchor,Z,re);return}if(Ne===rc){y(K,Z,re);return}if(ce!==2&&pe&1&&Ie)if(ce===0)Ie.beforeEnter(ke),a(ke,Z,re),qn(()=>Ie.enter(ke),ve);else{const{leave:me,delayLeave:Me,afterLeave:We}=Ie,Ze=()=>{K.ctx.isUnmounted?o(ke):a(ke,Z,re)},Pe=()=>{ke._isLeaving&&ke[yo](!0),me(ke,()=>{Ze(),We&&We()})};Me?Me(ke,Ze,Pe):Pe()}else a(ke,Z,re)},q=(K,Z,re,ce=!1,ve=!1)=>{const{type:ke,props:Ne,ref:Ie,children:$e,dynamicChildren:pe,shapeFlag:Ee,patchFlag:me,dirs:Me,cacheIndex:We}=K;if(me===-2&&(ve=!1),Ie!=null&&(ns(),si(Ie,null,re,K,!0),as()),We!=null&&(Z.renderCache[We]=void 0),Ee&256){Z.ctx.deactivate(K);return}const Ze=Ee&1&&Me,Pe=!Qr(K);let Ae;if(Pe&&(Ae=Ne&&Ne.onVnodeBeforeUnmount)&&mo(Ae,Z,K),Ee&6)Q(K.component,re,ce);else{if(Ee&128){K.suspense.unmount(re,ce);return}Ze&&Us(K,null,Z,"beforeUnmount"),Ee&64?K.type.remove(K,Z,re,ae,ce):pe&&!pe.hasOnce&&(ke!==Fe||me>0&&me&64)?he(pe,Z,re,!1,!0):(ke===Fe&&me&384||!ve&&Ee&16)&&he($e,Z,re),ce&&j(K)}(Pe&&(Ae=Ne&&Ne.onVnodeUnmounted)||Ze)&&qn(()=>{Ae&&mo(Ae,Z,K),Ze&&Us(K,null,Z,"unmounted")},re)},j=K=>{const{type:Z,el:re,anchor:ce,transition:ve}=K;if(Z===Fe){X(re,ce);return}if(Z===rc){S(K);return}const ke=()=>{o(re),ve&&!ve.persisted&&ve.afterLeave&&ve.afterLeave()};if(K.shapeFlag&1&&ve&&!ve.persisted){const{leave:Ne,delayLeave:Ie}=ve,$e=()=>Ne(re,ke);Ie?Ie(K.el,ke,$e):$e()}else ke()},X=(K,Z)=>{let re;for(;K!==Z;)re=v(K),o(K),K=re;o(Z)},Q=(K,Z,re)=>{const{bum:ce,scope:ve,job:ke,subTree:Ne,um:Ie,m:$e,a:pe}=K;Pg($e),Pg(pe),ce&&ac(ce),ve.stop(),ke&&(ke.flags|=8,q(Ne,K,Z,re)),Ie&&qn(Ie,Z),qn(()=>{K.isUnmounted=!0},Z)},he=(K,Z,re,ce=!1,ve=!1,ke=0)=>{for(let Ne=ke;Ne{if(K.shapeFlag&6)return ue(K.component.subTree);if(K.shapeFlag&128)return K.suspense.next();const Z=v(K.anchor||K.el),re=Z&&Z[a1];return re?v(re):Z};let ge=!1;const ie=(K,Z,re)=>{let ce;K==null?Z._vnode&&(q(Z._vnode,null,null,!0),ce=Z._vnode.component):h(Z._vnode||null,K,Z,null,null,null,re),Z._vnode=K,ge||(ge=!0,gg(ce),Qw(),ge=!1)},ae={p:h,um:q,m:F,r:j,mt:H,mc:O,pc:I,pbc:R,n:ue,o:e};return{render:ie,hydrate:void 0,createApp:QT(ie)}}function If({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function qs({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function v$(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function fv(e,t,n=!1){const a=e.children,o=t.children;if(ye(a)&&ye(o))for(let s=0;s>1,e[n[l]]0&&(t[a]=n[s-1]),n[s]=a)}}for(s=n.length,r=n[s-1];s-- >0;)n[s]=r,r=t[r];return n}function R1(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:R1(t)}function Pg(e){if(e)for(let t=0;te.__isSuspense;function g$(e,t){t&&t.pendingBranch?ye(e)?t.effects.push(...e):t.effects.push(e):IT(e)}const Fe=Symbol.for("v-fgt"),Ol=Symbol.for("v-txt"),gn=Symbol.for("v-cmt"),rc=Symbol.for("v-stc"),li=[];let xa=null;function x(e=!1){li.push(xa=e?null:[])}function b$(){li.pop(),xa=li[li.length-1]||null}let Si=1;function Kc(e,t=!1){Si+=e,e<0&&xa&&t&&(xa.hasOnce=!0)}function P1(e){return e.dynamicChildren=Si>0?xa||Xr:null,b$(),Si>0&&xa&&xa.push(e),e}function B(e,t,n,a,o,s){return P1(z(e,t,n,a,o,s,!0))}function oe(e,t,n,a,o){return P1(Y(e,t,n,a,o,!0))}function Ut(e){return e?e.__v_isVNode===!0:!1}function Qs(e,t){return e.type===t.type&&e.key===t.key}const M1=({key:e})=>e??null,lc=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Le(e)||Jt(e)||Ve(e)?{i:Kn,r:e,k:t,f:!!n}:e:null);function z(e,t=null,n=null,a=0,o=null,s=e===Fe?0:1,r=!1,l=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&M1(t),ref:t&&lc(t),scopeId:t1,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:a,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Kn};return l?(pv(u,n),s&128&&e.normalize(u)):n&&(u.shapeFlag|=Le(n)?8:16),Si>0&&!r&&xa&&(u.patchFlag>0||s&6)&&u.patchFlag!==32&&xa.push(u),u}const Y=y$;function y$(e,t=null,n=null,a=0,o=null,s=!1){if((!e||e===p1)&&(e=gn),Ut(e)){const l=Io(e,t,!0);return n&&pv(l,n),Si>0&&!s&&xa&&(l.shapeFlag&6?xa[xa.indexOf(e)]=l:xa.push(l)),l.patchFlag=-2,l}if($$(e)&&(e=e.__vccOpts),t){t=Zo(t);let{class:l,style:u}=t;l&&!Le(l)&&(t.class=T(l)),ot(u)&&(Od(u)&&!ye(u)&&(u=Pn({},u)),t.style=Ke(u))}const r=Le(e)?1:I1(e)?128:o1(e)?64:ot(e)?4:Ve(e)?2:0;return z(e,t,n,a,o,r,s,!0)}function Zo(e){return e?Od(e)||k1(e)?Pn({},e):e:null}function Io(e,t,n=!1,a=!1){const{props:o,ref:s,patchFlag:r,children:l,transition:u}=e,c=t?dt(o||{},t):o,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&M1(c),ref:t&&t.ref?n&&s?ye(s)?s.concat(lc(t)):[s,lc(t)]:lc(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Fe?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Io(e.ssContent),ssFallback:e.ssFallback&&Io(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return u&&a&&yr(d,u.clone(d)),d}function wt(e=" ",t=0){return Y(Ol,null,e,t)}function ute(e,t){const n=Y(rc,null,e);return n.staticCount=t,n}function te(e="",t=!1){return t?(x(),oe(gn,null,e)):Y(gn,null,e)}function So(e){return e==null||typeof e=="boolean"?Y(gn):ye(e)?Y(Fe,null,e.slice()):Ut(e)?Wo(e):Y(Ol,null,String(e))}function Wo(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Io(e)}function pv(e,t){let n=0;const{shapeFlag:a}=e;if(t==null)t=null;else if(ye(t))n=16;else if(typeof t=="object")if(a&65){const o=t.default;o&&(o._c&&(o._d=!1),pv(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!k1(t)?t._ctx=Kn:o===3&&Kn&&(Kn.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Ve(t)?(t={default:t,_ctx:Kn},n=32):(t=String(t),a&64?(n=16,t=[wt(t)]):n=8);e.children=t,e.shapeFlag|=n}function dt(...e){const t={};for(let n=0;nJn||Kn;let Wc,Op;{const e=Td(),t=(n,a)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(a),s=>{o.length>1?o.forEach(r=>r(s)):o[0](s)}};Wc=t("__VUE_INSTANCE_SETTERS__",n=>Jn=n),Op=t("__VUE_SSR_SETTERS__",n=>Ci=n)}const Xi=e=>{const t=Jn;return Wc(e),e.scope.on(),()=>{e.scope.off(),Wc(t)}},Mg=()=>{Jn&&Jn.scope.off(),Wc(null)};function _1(e){return e.vnode.shapeFlag&4}let Ci=!1;function k$(e,t=!1,n=!1){t&&Op(t);const{props:a,children:o}=e.vnode,s=_1(e);l$(e,a,s,t),d$(e,o,n||t);const r=s?E$(e,t):void 0;return t&&Op(!1),r}function E$(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,UT);const{setup:a}=n;if(a){ns();const o=e.setupContext=a.length>1?L1(e):null,s=Xi(e),r=Yi(a,e,0,[e.props,o]),l=mr(r);if(as(),s(),(l||e.sp)&&!Qr(e)&&d1(e),l){if(r.then(Mg,Mg),t)return r.then(u=>{_g(e,u)}).catch(u=>{Rd(u,e,0)});e.asyncDep=r}else _g(e,r)}else A1(e)}function _g(e,t,n){Ve(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ot(t)&&(e.setupState=Gw(t)),A1(e)}function A1(e,t,n){const a=e.type;e.render||(e.render=a.render||Dt);{const o=Xi(e);ns();try{qT(e)}finally{as(),o()}}}const x$={get(e,t){return Xn(e,"get",""),e[t]}};function L1(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,x$),slots:e.slots,emit:e.emit,expose:t}}function _d(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Gw(xo(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in ri)return ri[n](e)},has(t,n){return n in t||n in ri}})):e.proxy}function T$(e,t=!0){return Ve(e)?e.displayName||e.name:e.name||t&&e.__name}function $$(e){return Ve(e)&&"__vccOpts"in e}const w=(e,t)=>TT(e,t,Ci);function Ye(e,t,n){try{Kc(-1);const a=arguments.length;return a===2?ot(t)&&!ye(t)?Ut(t)?Y(e,null,[t]):Y(e,t):Y(e,null,t):(a>3?n=Array.prototype.slice.call(arguments,2):a===3&&Ut(n)&&(n=[n]),Y(e,t,n))}finally{Kc(1)}}const O$="3.5.30",R$=Dt;let Rp;const Ag=typeof window<"u"&&window.trustedTypes;if(Ag)try{Rp=Ag.createPolicy("vue",{createHTML:e=>e})}catch{}const D1=Rp?e=>Rp.createHTML(e):e=>e,N$="http://www.w3.org/2000/svg",I$="http://www.w3.org/1998/Math/MathML",Ko=typeof document<"u"?document:null,Lg=Ko&&Ko.createElement("template"),P$={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,a)=>{const o=t==="svg"?Ko.createElementNS(N$,e):t==="mathml"?Ko.createElementNS(I$,e):n?Ko.createElement(e,{is:n}):Ko.createElement(e);return e==="select"&&a&&a.multiple!=null&&o.setAttribute("multiple",a.multiple),o},createText:e=>Ko.createTextNode(e),createComment:e=>Ko.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Ko.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,a,o,s){const r=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{Lg.innerHTML=D1(a==="svg"?`${e}`:a==="mathml"?`${e}`:e);const l=Lg.content;if(a==="svg"||a==="mathml"){const u=l.firstChild;for(;u.firstChild;)l.appendChild(u.firstChild);l.removeChild(u)}t.insertBefore(l,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ys="transition",zl="animation",ul=Symbol("_vtc"),B1={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},F1=Pn({},l1,B1),M$=e=>(e.displayName="Transition",e.props=F1,e),Vn=M$((e,{slots:t})=>Ye(BT,V1(e),t)),Ys=(e,t=[])=>{ye(e)?e.forEach(n=>n(...t)):e&&e(...t)},Dg=e=>e?ye(e)?e.some(t=>t.length>1):e.length>1:!1;function V1(e){const t={};for(const _ in e)_ in B1||(t[_]=e[_]);if(e.css===!1)return t;const{name:n="v",type:a,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:r=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:u=s,appearActiveClass:c=r,appearToClass:d=l,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:v=`${n}-leave-active`,leaveToClass:g=`${n}-leave-to`}=e,p=_$(o),h=p&&p[0],m=p&&p[1],{onBeforeEnter:b,onEnter:k,onEnterCancelled:y,onLeave:S,onLeaveCancelled:C,onBeforeAppear:E=b,onAppear:$=k,onAppearCancelled:O=y}=t,N=(_,V,H,U)=>{_._enterCancelled=U,Ss(_,V?d:l),Ss(_,V?c:r),H&&H()},R=(_,V)=>{_._isLeaving=!1,Ss(_,f),Ss(_,g),Ss(_,v),V&&V()},A=_=>(V,H)=>{const U=_?$:k,W=()=>N(V,_,H);Ys(U,[V,W]),Bg(()=>{Ss(V,_?u:s),go(V,_?d:l),Dg(U)||Fg(V,a,h,W)})};return Pn(t,{onBeforeEnter(_){Ys(b,[_]),go(_,s),go(_,r)},onBeforeAppear(_){Ys(E,[_]),go(_,u),go(_,c)},onEnter:A(!1),onAppear:A(!0),onLeave(_,V){_._isLeaving=!0;const H=()=>R(_,V);go(_,f),_._enterCancelled?(go(_,v),Np(_)):(Np(_),go(_,v)),Bg(()=>{_._isLeaving&&(Ss(_,f),go(_,g),Dg(S)||Fg(_,a,m,H))}),Ys(S,[_,H])},onEnterCancelled(_){N(_,!1,void 0,!0),Ys(y,[_])},onAppearCancelled(_){N(_,!0,void 0,!0),Ys(O,[_])},onLeaveCancelled(_){R(_),Ys(C,[_])}})}function _$(e){if(e==null)return null;if(ot(e))return[Pf(e.enter),Pf(e.leave)];{const t=Pf(e);return[t,t]}}function Pf(e){return qx(e)}function go(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[ul]||(e[ul]=new Set)).add(t)}function Ss(e,t){t.split(/\s+/).forEach(a=>a&&e.classList.remove(a));const n=e[ul];n&&(n.delete(t),n.size||(e[ul]=void 0))}function Bg(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let A$=0;function Fg(e,t,n,a){const o=e._endId=++A$,s=()=>{o===e._endId&&a()};if(n!=null)return setTimeout(s,n);const{type:r,timeout:l,propCount:u}=z1(e,t);if(!r)return a();const c=r+"end";let d=0;const f=()=>{e.removeEventListener(c,v),s()},v=g=>{g.target===e&&++d>=u&&f()};setTimeout(()=>{d(n[p]||"").split(", "),o=a(`${ys}Delay`),s=a(`${ys}Duration`),r=Vg(o,s),l=a(`${zl}Delay`),u=a(`${zl}Duration`),c=Vg(l,u);let d=null,f=0,v=0;t===ys?r>0&&(d=ys,f=r,v=s.length):t===zl?c>0&&(d=zl,f=c,v=u.length):(f=Math.max(r,c),d=f>0?r>c?ys:zl:null,v=d?d===ys?s.length:u.length:0);const g=d===ys&&/\b(?:transform|all)(?:,|$)/.test(a(`${ys}Property`).toString());return{type:d,timeout:f,propCount:v,hasTransform:g}}function Vg(e,t){for(;e.lengthzg(n)+zg(e[a])))}function zg(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Np(e){return(e?e.ownerDocument:document).body.offsetHeight}function L$(e,t,n){const a=e[ul];a&&(t=(t?[t,...a]:[...a]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const jc=Symbol("_vod"),H1=Symbol("_vsh"),Pt={name:"show",beforeMount(e,{value:t},{transition:n}){e[jc]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Hl(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:a}){!t!=!n&&(a?t?(a.beforeEnter(e),Hl(e,!0),a.enter(e)):a.leave(e,()=>{Hl(e,!1)}):Hl(e,t))},beforeUnmount(e,{value:t}){Hl(e,t)}};function Hl(e,t){e.style.display=t?e[jc]:"none",e[H1]=!t}const D$=Symbol(""),B$=/(?:^|;)\s*display\s*:/;function F$(e,t,n){const a=e.style,o=Le(n);let s=!1;if(n&&!o){if(t)if(Le(t))for(const r of t.split(";")){const l=r.slice(0,r.indexOf(":")).trim();n[l]==null&&ic(a,l,"")}else for(const r in t)n[r]==null&&ic(a,r,"");for(const r in n)r==="display"&&(s=!0),ic(a,r,n[r])}else if(o){if(t!==n){const r=a[D$];r&&(n+=";"+r),a.cssText=n,s=B$.test(n)}}else t&&e.removeAttribute("style");jc in e&&(e[jc]=s?a.display:"",e[H1]&&(a.display="none"))}const Hg=/\s*!important$/;function ic(e,t,n){if(ye(n))n.forEach(a=>ic(e,t,a));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const a=V$(e,t);Hg.test(n)?e.setProperty(cs(a),n.replace(Hg,""),"important"):e[a]=n}}const Kg=["Webkit","Moz","ms"],Mf={};function V$(e,t){const n=Mf[t];if(n)return n;let a=Fn(t);if(a!=="filter"&&a in e)return Mf[t]=a;a=qi(a);for(let o=0;o_f||(W$.then(()=>_f=0),_f=Date.now());function U$(e,t){const n=a=>{if(!a._vts)a._vts=Date.now();else if(a._vts<=n.attached)return;Qa(q$(a,n.value),t,5,[a])};return n.value=e,n.attached=j$(),n}function q$(e,t){if(ye(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(a=>o=>!o._stopped&&a&&a(o))}else return t}const Gg=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Y$=(e,t,n,a,o,s)=>{const r=o==="svg";t==="class"?L$(e,a,r):t==="style"?F$(e,n,a):Cd(t)?Uh(t)||H$(e,t,n,a,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):G$(e,t,a,r))?(Ug(e,t,a),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&jg(e,t,a,r,s,t!=="value")):e._isVueCE&&(X$(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Le(a)))?Ug(e,Fn(t),a,s,t):(t==="true-value"?e._trueValue=a:t==="false-value"&&(e._falseValue=a),jg(e,t,a,r))};function G$(e,t,n,a){if(a)return!!(t==="innerHTML"||t==="textContent"||t in e&&Gg(t)&&Ve(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return Gg(t)&&Le(n)?!1:t in e}function X$(e,t){const n=e._def.props;if(!n)return!1;const a=Fn(t);return Array.isArray(n)?n.some(o=>Fn(o)===a):Object.keys(n).some(o=>Fn(o)===a)}const K1=new WeakMap,W1=new WeakMap,Uc=Symbol("_moveCb"),Xg=Symbol("_enterCb"),J$=e=>(delete e.props.mode,e),Z$=J$({name:"TransitionGroup",props:Pn({},F1,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=ft(),a=r1();let o,s;return ro(()=>{if(!o.length)return;const r=e.moveClass||`${e.name||"v"}-move`;if(!nO(o[0].el,n.vnode.el,r)){o=[];return}o.forEach(Q$),o.forEach(eO);const l=o.filter(tO);Np(n.vnode.el),l.forEach(u=>{const c=u.el,d=c.style;go(c,r),d.transform=d.webkitTransform=d.transitionDuration="";const f=c[Uc]=v=>{v&&v.target!==c||(!v||v.propertyName.endsWith("transform"))&&(c.removeEventListener("transitionend",f),c[Uc]=null,Ss(c,r))};c.addEventListener("transitionend",f)}),o=[]}),()=>{const r=qt(e),l=V1(r);let u=r.tag||Fe;if(o=[],s)for(let c=0;c{l.split(/\s+/).forEach(u=>u&&a.classList.remove(u))}),n.split(/\s+/).forEach(l=>l&&a.classList.add(l)),a.style.display="none";const s=t.nodeType===1?t:t.parentNode;s.appendChild(a);const{hasTransform:r}=z1(a);return s.removeChild(a),r}const cl=e=>{const t=e.props["onUpdate:modelValue"]||!1;return ye(t)?n=>ac(t,n):t};function aO(e){e.target.composing=!0}function Jg(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Qo=Symbol("_assign");function Zg(e,t,n){return t&&(e=e.trim()),n&&(e=Yh(e)),e}const hv={created(e,{modifiers:{lazy:t,trim:n,number:a}},o){e[Qo]=cl(o);const s=a||o.props&&o.props.type==="number";Ts(e,t?"change":"input",r=>{r.target.composing||e[Qo](Zg(e.value,n,s))}),(n||s)&&Ts(e,"change",()=>{e.value=Zg(e.value,n,s)}),t||(Ts(e,"compositionstart",aO),Ts(e,"compositionend",Jg),Ts(e,"change",Jg))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:a,trim:o,number:s}},r){if(e[Qo]=cl(r),e.composing)return;const l=(s||e.type==="number")&&!/^0\d/.test(e.value)?Yh(e.value):e.value,u=t??"";l!==u&&(document.activeElement===e&&e.type!=="range"&&(a&&t===n||o&&e.value.trim()===u)||(e.value=u))}},q1={deep:!0,created(e,t,n){e[Qo]=cl(n),Ts(e,"change",()=>{const a=e._modelValue,o=Y1(e),s=e.checked,r=e[Qo];if(ye(a)){const l=Ow(a,o),u=l!==-1;if(s&&!u)r(a.concat(o));else if(!s&&u){const c=[...a];c.splice(l,1),r(c)}}else if(kd(a)){const l=new Set(a);s?l.add(o):l.delete(o),r(l)}else r(G1(e,s))})},mounted:Qg,beforeUpdate(e,t,n){e[Qo]=cl(n),Qg(e,t,n)}};function Qg(e,{value:t,oldValue:n},a){e._modelValue=t;let o;if(ye(t))o=Ow(t,a.props.value)>-1;else if(kd(t))o=t.has(a.props.value);else{if(t===n)return;o=gr(t,G1(e,!0))}e.checked!==o&&(e.checked=o)}const vv={created(e,{value:t},n){e.checked=gr(t,n.props.value),e[Qo]=cl(n),Ts(e,"change",()=>{e[Qo](Y1(e))})},beforeUpdate(e,{value:t,oldValue:n},a){e[Qo]=cl(a),t!==n&&(e.checked=gr(t,a.props.value))}};function Y1(e){return"_value"in e?e._value:e.value}function G1(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const oO=["ctrl","shift","alt","meta"],sO={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>oO.some(n=>e[`${n}Key`]&&!t.includes(n))},Xe=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),a=t.join(".");return n[a]||(n[a]=((o,...s)=>{for(let r=0;r{const n=e._withKeys||(e._withKeys={}),a=t.join(".");return n[a]||(n[a]=(o=>{if(!("key"in o))return;const s=cs(o.key);if(t.some(r=>r===s||rO[r]===s))return e(o)}))},lO=Pn({patchProp:Y$},P$);let eb;function X1(){return eb||(eb=p$(lO))}const Ls=((...e)=>{X1().render(...e)}),iO=((...e)=>{const t=X1().createApp(...e),{mount:n}=t;return t.mount=a=>{const o=cO(a);if(!o)return;const s=t._component;!Ve(s)&&!s.render&&!s.template&&(s.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const r=n(o,!1,uO(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),r},t});function uO(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function cO(e){return Le(e)?document.querySelector(e):e}const we={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",backspace:"Backspace",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"},dO=["year","years","month","months","date","dates","week","datetime","datetimerange","daterange","monthrange","yearrange"],Af=["sun","mon","tue","wed","thu","fri","sat"],at="update:modelValue",yt="change",Sn="input",tb=Symbol("INSTALLED_KEY"),lo=["","default","small","large"],nb=["left","center","right"],Ad=11,J1=2;var Z1=typeof global=="object"&&global&&global.Object===Object&&global,fO=typeof self=="object"&&self&&self.Object===Object&&self,io=Z1||fO||Function("return this")(),Fa=io.Symbol,Q1=Object.prototype,pO=Q1.hasOwnProperty,hO=Q1.toString,Kl=Fa?Fa.toStringTag:void 0;function vO(e){var t=pO.call(e,Kl),n=e[Kl];try{e[Kl]=void 0;var a=!0}catch{}var o=hO.call(e);return a&&(t?e[Kl]=n:delete e[Kl]),o}var mO=Object.prototype,gO=mO.toString;function bO(e){return gO.call(e)}var yO="[object Null]",wO="[object Undefined]",ab=Fa?Fa.toStringTag:void 0;function Or(e){return e==null?e===void 0?wO:yO:ab&&ab in Object(e)?vO(e):bO(e)}function Po(e){return e!=null&&typeof e=="object"}var SO="[object Symbol]";function Ld(e){return typeof e=="symbol"||Po(e)&&Or(e)==SO}function mv(e,t){for(var n=-1,a=e==null?0:e.length,o=Array(a);++n0){if(++t>=GO)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function QO(e){return function(){return e}}var qc=(function(){try{var e=Nr(Object,"defineProperty");return e({},"",{}),e}catch{}})(),eR=qc?function(e,t){return qc(e,"toString",{configurable:!0,enumerable:!1,value:QO(t),writable:!0})}:gv,nS=ZO(eR);function tR(e,t){for(var n=-1,a=e==null?0:e.length;++n-1}var rR=9007199254740991,lR=/^(?:0|[1-9]\d*)$/;function Dd(e,t){var n=typeof e;return t=t??rR,!!t&&(n=="number"||n!="symbol"&&lR.test(e))&&e>-1&&e%1==0&&e-1&&e%1==0&&e<=cR}function Nl(e){return e!=null&&Sv(e.length)&&!bv(e)}function dR(e,t,n){if(!da(n))return!1;var a=typeof t;return(a=="number"?Nl(n)&&Dd(t,n.length):a=="string"&&t in n)?Ji(n[t],e):!1}function fR(e){return sS(function(t,n){var a=-1,o=n.length,s=o>1?n[o-1]:void 0,r=o>2?n[2]:void 0;for(s=e.length>3&&typeof s=="function"?(o--,s):void 0,r&&dR(n[0],n[1],r)&&(s=o<3?void 0:s,o=1),t=Object(t);++a-1}function CN(e,t){var n=this.__data__,a=Bd(n,e);return a<0?(++this.size,n.push([e,t])):n[a][1]=t,this}function ps(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t0&&n(l)?t>1?eu(l,t-1,n,a,o):Tv(o,l):a||(o[o.length]=l)}return o}function Yc(e){var t=e==null?0:e.length;return t?eu(e,1):[]}function dS(e){return nS(oS(e,void 0,Yc),e+"")}var $v=cS(Object.getPrototypeOf,Object),DN="[object Object]",BN=Function.prototype,FN=Object.prototype,fS=BN.toString,VN=FN.hasOwnProperty,zN=fS.call(Object);function Ov(e){if(!Po(e)||Or(e)!=DN)return!1;var t=$v(e);if(t===null)return!0;var n=VN.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&fS.call(n)==zN}function HN(e,t,n){var a=-1,o=e.length;t<0&&(t=-t>o?0:o+t),n=n>o?o:n,n<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(o);++a=t?e:t)),e}function ar(e,t,n){return n===void 0&&(n=t,t=void 0),n!==void 0&&(n=ii(n),n=n===n?n:0),t!==void 0&&(t=ii(t),t=t===t?t:0),KN(ii(e),t,n)}function WN(){this.__data__=new ps,this.size=0}function jN(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}function UN(e){return this.__data__.get(e)}function qN(e){return this.__data__.has(e)}var YN=200;function GN(e,t){var n=this.__data__;if(n instanceof ps){var a=n.__data__;if(!Ti||a.lengthl))return!1;var c=s.get(e),d=s.get(t);if(c&&d)return c==t&&d==e;var f=-1,v=!0,g=n&kP?new $i:void 0;for(s.set(e,t),s.set(t,e);++f=t||$<0||f&&O>=s}function b(){var E=Ff();if(m(E))return k(E);l=setTimeout(b,h(E))}function k(E){return l=void 0,v&&a?g(E):(a=o=void 0,r)}function y(){l!==void 0&&clearTimeout(l),c=0,a=u=o=l=void 0}function S(){return l===void 0?r:k(Ff())}function C(){var E=Ff(),$=m(E);if(a=arguments,o=this,u=E,$){if(l===void 0)return p(u);if(f)return clearTimeout(l),l=setTimeout(b,t),g(u)}return l===void 0&&(l=setTimeout(b,t)),r}return C.cancel=y,C.flush=S,C}function Ap(e,t,n){(n!==void 0&&!Ji(e[t],n)||n===void 0&&!(t in e))&&yv(e,t,n)}function IS(e){return Po(e)&&Nl(e)}function Lp(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}function fM(e){return Rl(e,Qi(e))}function pM(e,t,n,a,o,s,r){var l=Lp(e,n),u=Lp(t,n),c=r.get(u);if(c){Ap(e,n,c);return}var d=s?s(l,u,n+"",e,t,r):void 0,f=d===void 0;if(f){var v=ca(u),g=!v&&Ei(u),p=!v&&!g&&Ev(u);d=u,v||g||p?ca(l)?d=l:IS(l)?d=tS(l):g?(f=!1,d=hS(u,!0)):p?(f=!1,d=yS(u,!0)):d=[]:Ov(u)||ki(u)?(d=l,ki(l)?d=fM(l):(!da(l)||bv(l))&&(d=wS(u))):f=!1}f&&(r.set(u,d),o(d,u,a,s,r),r.delete(u)),Ap(e,n,d)}function PS(e,t,n,a,o){e!==t&&NS(t,function(s,r){if(o||(o=new Ya),da(s))pM(e,t,r,n,PS,a,o);else{var l=a?a(Lp(e,r),s,r+"",e,t,o):void 0;l===void 0&&(l=s),Ap(e,r,l)}},Qi)}function hM(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function MS(e,t,n){var a=e==null?0:e.length;if(!a)return-1;var o=a-1;return aS(e,RS(t),o,!0)}function vM(e,t){var n=-1,a=Nl(e)?Array(e.length):[];return iM(e,function(o,s,r){a[++n]=t(o,s,r)}),a}function mM(e,t){var n=ca(e)?mv:vM;return n(e,RS(t))}function _S(e,t){return eu(mM(e,t),1)}var gM=1/0;function bM(e){var t=e==null?0:e.length;return t?eu(e,gM):[]}function fl(e){for(var t=-1,n=e==null?0:e.length,a={};++t1),s}),Rl(e,bS(e),n),a&&(n=ci(n,xM|TM|$M,EM));for(var o=t.length;o--;)kM(n,t[o]);return n});function LS(e,t,n,a){if(!da(e))return e;t=Il(t,e);for(var o=-1,s=t.length,r=s-1,l=e;l!=null&&++o=_M){var c=MM(e);if(c)return Iv(c);r=!1,o=ES,u=new $i}else u=l;e:for(;++ae===void 0,Ht=e=>typeof e=="boolean",He=e=>typeof e=="number",ia=e=>!e&&e!==0||ye(e)&&e.length===0||ot(e)&&!Object.keys(e).length,ha=e=>typeof Element>"u"?!1:e instanceof Element,va=e=>bn(e),LM=e=>Le(e)?!Number.isNaN(Number(e)):!1,nu=e=>e===window,Oi=e=>Object.keys(e),DS=e=>Object.entries(e),Ms=(e,t,n)=>({get value(){return wn(e,t,n)},set value(a){NM(e,t,a)}}),BS="__epPropKey",G=e=>e,DM=e=>ot(e)&&!!e[BS],uo=(e,t)=>{if(!ot(e)||DM(e))return e;const{values:n,required:a,default:o,type:s,validator:r}=e,l={type:s,required:!!a,validator:n||r?u=>{let c=!1,d=[];if(n&&(d=Array.from(n),Nt(e,"default")&&d.push(o),c||=d.includes(u)),r&&(c||=r(u)),!c&&d.length>0){const f=[...new Set(d)].map(v=>JSON.stringify(v)).join(", ");R$(`Invalid prop: validation failed${t?` for prop "${t}"`:""}. Expected one of [${f}], got value ${JSON.stringify(u)}.`)}return c}:void 0,[BS]:!0};return Nt(e,"default")&&(l.default=o),l},Ce=e=>fl(Object.entries(e).map(([t,n])=>[t,uo(n,t)])),au=Ce({to:{type:G([String,Object]),required:!0},disabled:Boolean}),BM=Ce({zIndex:{type:G([Number,String]),default:100},target:{type:String,default:""},offset:{type:Number,default:0},position:{type:String,values:["top","bottom"],default:"top"},teleported:Boolean,appendTo:{type:au.to.type,default:"body"}}),FM={scroll:({scrollTop:e,fixed:t})=>He(e)&&Ht(t),[yt]:e=>Ht(e)};var FS=class extends Error{constructor(e){super(e),this.name="ElementPlusError"}};function nn(e,t){throw new FS(`[${e}] ${t}`)}function pt(e,t){{const n=Le(e)?new FS(`[${e}] ${t}`):e;console.warn(n)}}const VM=["class","style"],zM=/^on[A-Z]/,Wd=(e={})=>{const{excludeListeners:t=!1,excludeKeys:n}=e,a=w(()=>(n?.value||[]).concat(VM)),o=ft();return o?w(()=>fl(Object.entries(o.proxy?.$attrs).filter(([s])=>!a.value.includes(s)&&!(t&&zM.test(s))))):(pt("use-attrs","getCurrentInstance() returned null. useAttrs() must be called at the top of a setup function"),w(()=>({})))};function VS(e,t){var n;const a=Xt();return wa(()=>{a.value=e()},{...t,flush:(n=void 0)!=null?n:"sync"}),br(a)}function Ir(e){return Pw()?(Mw(e),!0):!1}function Wn(e){return typeof e=="function"?e():i(e)}function HM(e){if(!Jt(e))return At(e);const t=new Proxy({},{get(n,a,o){return i(Reflect.get(e.value,a,o))},set(n,a,o){return Jt(e.value[a])&&!Jt(o)?e.value[a].value=o:e.value[a]=o,!0},deleteProperty(n,a){return Reflect.deleteProperty(e.value,a)},has(n,a){return Reflect.has(e.value,a)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return At(t)}function KM(e){return HM(w(e))}const Mt=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const WM=e=>typeof e<"u",zS=e=>e!=null,jM=Object.prototype.toString,UM=e=>jM.call(e)==="[object Object]",HS=(e,t,n)=>Math.min(n,Math.max(t,e)),Ga=()=>{},Xc=qM();function qM(){var e,t;return Mt&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function KS(e,t){function n(...a){return new Promise((o,s)=>{Promise.resolve(e(()=>t.apply(this,a),{fn:t,thisArg:this,args:a})).then(o).catch(s)})}return n}function YM(e,t={}){let n,a,o=Ga;const s=l=>{clearTimeout(l),o(),o=Ga};return l=>{const u=Wn(e),c=Wn(t.maxWait);return n&&s(n),u<=0||c!==void 0&&c<=0?(a&&(s(a),a=null),Promise.resolve(l())):new Promise((d,f)=>{o=t.rejectOnCancel?f:d,c&&!a&&(a=setTimeout(()=>{n&&s(n),a=null,d(l())},c)),n=setTimeout(()=>{a&&s(a),a=null,d(l())},u)})}}function GM(...e){let t=0,n,a=!0,o=Ga,s,r,l,u,c;!Jt(e[0])&&typeof e[0]=="object"?{delay:r,trailing:l=!0,leading:u=!0,rejectOnCancel:c=!1}=e[0]:[r,l=!0,u=!0,c=!1]=e;const d=()=>{n&&(clearTimeout(n),n=void 0,o(),o=Ga)};return v=>{const g=Wn(r),p=Date.now()-t,h=()=>s=v();return d(),g<=0?(t=Date.now(),h()):(p>g&&(u||!a)?(t=Date.now(),h()):l&&(s=new Promise((m,b)=>{o=c?b:m,n=setTimeout(()=>{t=Date.now(),a=!0,m(h()),d()},Math.max(0,g-p))})),!u&&!n&&(n=setTimeout(()=>a=!0,g)),a=!1,s)}}function XM(e){return ft()}function ou(e,t=200,n={}){return KS(YM(t,n),e)}function JM(e,t=200,n={}){const a=M(e.value),o=ou(()=>{a.value=e.value},t,n);return le(e,()=>o()),a}function WS(e,t=200,n=!1,a=!0,o=!1){return KS(GM(t,n,a,o),e)}function Pv(e,t=!0,n){XM()?ht(e,n):t?e():Re(e)}function pl(e,t,n={}){const{immediate:a=!0}=n,o=M(!1);let s=null;function r(){s&&(clearTimeout(s),s=null)}function l(){o.value=!1,r()}function u(...c){r(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...c)},Wn(t))}return a&&(o.value=!0,Mt&&u()),Ir(l),{isPending:br(o),start:u,stop:l}}const co=Mt?window:void 0,ZM=Mt?window.document:void 0;function xn(e){var t;const n=Wn(e);return(t=n?.$el)!=null?t:n}function Ft(...e){let t,n,a,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,a,o]=e,t=co):[t,n,a,o]=e,!t)return Ga;Array.isArray(n)||(n=[n]),Array.isArray(a)||(a=[a]);const s=[],r=()=>{s.forEach(d=>d()),s.length=0},l=(d,f,v,g)=>(d.addEventListener(f,v,g),()=>d.removeEventListener(f,v,g)),u=le(()=>[xn(t),Wn(o)],([d,f])=>{if(r(),!d)return;const v=UM(f)?{...f}:f;s.push(...n.flatMap(g=>a.map(p=>l(d,g,p,v))))},{immediate:!0,flush:"post"}),c=()=>{u(),r()};return Ir(c),c}let Pb=!1;function Mv(e,t,n={}){const{window:a=co,ignore:o=[],capture:s=!0,detectIframe:r=!1}=n;if(!a)return Ga;Xc&&!Pb&&(Pb=!0,Array.from(a.document.body.children).forEach(h=>h.addEventListener("click",Ga)),a.document.documentElement.addEventListener("click",Ga));let l=!0;const u=h=>Wn(o).some(m=>{if(typeof m=="string")return Array.from(a.document.querySelectorAll(m)).some(b=>b===h.target||h.composedPath().includes(b));{const b=xn(m);return b&&(h.target===b||h.composedPath().includes(b))}});function c(h){const m=Wn(h);return m&&m.$.subTree.shapeFlag===16}function d(h,m){const b=Wn(h),k=b.$.subTree&&b.$.subTree.children;return k==null||!Array.isArray(k)?!1:k.some(y=>y.el===m.target||m.composedPath().includes(y.el))}const f=h=>{const m=xn(e);if(h.target!=null&&!(!(m instanceof Element)&&c(e)&&d(e,h))&&!(!m||m===h.target||h.composedPath().includes(m))){if(h.detail===0&&(l=!u(h)),!l){l=!0;return}t(h)}};let v=!1;const g=[Ft(a,"click",h=>{v||(v=!0,setTimeout(()=>{v=!1},0),f(h))},{passive:!0,capture:s}),Ft(a,"pointerdown",h=>{const m=xn(e);l=!u(h)&&!!(m&&!h.composedPath().includes(m))},{passive:!0}),r&&Ft(a,"blur",h=>{setTimeout(()=>{var m;const b=xn(e);((m=a.document.activeElement)==null?void 0:m.tagName)==="IFRAME"&&!b?.contains(a.document.activeElement)&&t(h)},0)})].filter(Boolean);return()=>g.forEach(h=>h())}function QM(){const e=M(!1),t=ft();return t&&ht(()=>{e.value=!0},t),e}function jd(e){const t=QM();return w(()=>(t.value,!!e()))}function su(e,t,n={}){const{window:a=co,...o}=n;let s;const r=jd(()=>a&&"MutationObserver"in a),l=()=>{s&&(s.disconnect(),s=void 0)},u=w(()=>{const v=Wn(e),g=(Array.isArray(v)?v:[v]).map(xn).filter(zS);return new Set(g)}),c=le(()=>u.value,v=>{l(),r.value&&v.size&&(s=new MutationObserver(t),v.forEach(g=>s.observe(g,o)))},{immediate:!0,flush:"post"}),d=()=>s?.takeRecords(),f=()=>{c(),l()};return Ir(f),{isSupported:r,stop:f,takeRecords:d}}function e_(e={}){var t;const{window:n=co,deep:a=!0,triggerOnRemoval:o=!1}=e,s=(t=e.document)!=null?t:n?.document,r=()=>{var c;let d=s?.activeElement;if(a)for(;d?.shadowRoot;)d=(c=d?.shadowRoot)==null?void 0:c.activeElement;return d},l=M(),u=()=>{l.value=r()};return n&&(Ft(n,"blur",c=>{c.relatedTarget===null&&u()},!0),Ft(n,"focus",u,!0)),o&&su(s,c=>{c.filter(d=>d.removedNodes.length).map(d=>Array.from(d.removedNodes)).flat().forEach(d=>{d===l.value&&u()})},{childList:!0,subtree:!0}),u(),l}function t_(e,t={}){const{window:n=co}=t,a=jd(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const s=M(!1),r=c=>{s.value=c.matches},l=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",r):o.removeListener(r))},u=wa(()=>{a.value&&(l(),o=n.matchMedia(Wn(e)),"addEventListener"in o?o.addEventListener("change",r):o.addListener(r),s.value=o.matches)});return Ir(()=>{u(),l(),o=void 0}),s}function n_(e){return JSON.parse(JSON.stringify(e))}function a_(e,t,n={}){const{window:a=co,initialValue:o,observe:s=!1}=n,r=M(o),l=w(()=>{var c;return xn(t)||((c=a?.document)==null?void 0:c.documentElement)});function u(){var c;const d=Wn(e),f=Wn(l);if(f&&a&&d){const v=(c=a.getComputedStyle(f).getPropertyValue(d))==null?void 0:c.trim();r.value=v||o}}return s&&su(l,u,{attributeFilter:["style","class"],window:a}),le([l,()=>Wn(e)],(c,d)=>{d[0]&&d[1]&&d[0].style.removeProperty(d[1]),u()},{immediate:!0}),le(r,c=>{var d;const f=Wn(e);(d=l.value)!=null&&d.style&&f&&(c==null?l.value.style.removeProperty(f):l.value.style.setProperty(f,c))}),r}function o_(e={}){const{document:t=ZM}=e;if(!t)return M("visible");const n=M(t.visibilityState);return Ft(t,"visibilitychange",()=>{n.value=t.visibilityState}),n}function en(e,t,n={}){const{window:a=co,...o}=n;let s;const r=jd(()=>a&&"ResizeObserver"in a),l=()=>{s&&(s.disconnect(),s=void 0)},u=w(()=>{const f=Wn(e);return Array.isArray(f)?f.map(v=>xn(v)):[xn(f)]}),c=le(u,f=>{if(l(),r.value&&a){s=new ResizeObserver(t);for(const v of f)v&&s.observe(v,o)}},{immediate:!0,flush:"post"}),d=()=>{l(),c()};return Ir(d),{isSupported:r,stop:d}}function Mb(e,t={}){const{reset:n=!0,windowResize:a=!0,windowScroll:o=!0,immediate:s=!0,updateTiming:r="sync"}=t,l=M(0),u=M(0),c=M(0),d=M(0),f=M(0),v=M(0),g=M(0),p=M(0);function h(){const b=xn(e);if(!b){n&&(l.value=0,u.value=0,c.value=0,d.value=0,f.value=0,v.value=0,g.value=0,p.value=0);return}const k=b.getBoundingClientRect();l.value=k.height,u.value=k.bottom,c.value=k.left,d.value=k.right,f.value=k.top,v.value=k.width,g.value=k.x,p.value=k.y}function m(){r==="sync"?h():r==="next-frame"&&requestAnimationFrame(()=>h())}return en(e,m),le(()=>xn(e),b=>!b&&m()),su(e,m,{attributeFilter:["style","class"]}),o&&Ft("scroll",m,{capture:!0,passive:!0}),a&&Ft("resize",m,{passive:!0}),Pv(()=>{s&&m()}),{height:l,bottom:u,left:c,right:d,top:f,width:v,x:g,y:p,update:m}}function Dp(e,t={width:0,height:0},n={}){const{window:a=co,box:o="content-box"}=n,s=w(()=>{var f,v;return(v=(f=xn(e))==null?void 0:f.namespaceURI)==null?void 0:v.includes("svg")}),r=M(t.width),l=M(t.height),{stop:u}=en(e,([f])=>{const v=o==="border-box"?f.borderBoxSize:o==="content-box"?f.contentBoxSize:f.devicePixelContentBoxSize;if(a&&s.value){const g=xn(e);if(g){const p=g.getBoundingClientRect();r.value=p.width,l.value=p.height}}else if(v){const g=Array.isArray(v)?v:[v];r.value=g.reduce((p,{inlineSize:h})=>p+h,0),l.value=g.reduce((p,{blockSize:h})=>p+h,0)}else r.value=f.contentRect.width,l.value=f.contentRect.height},n);Pv(()=>{const f=xn(e);f&&(r.value="offsetWidth"in f?f.offsetWidth:t.width,l.value="offsetHeight"in f?f.offsetHeight:t.height)});const c=le(()=>xn(e),f=>{r.value=f?t.width:0,l.value=f?t.height:0});function d(){u(),c()}return{width:r,height:l,stop:d}}function s_(e,t,n={}){const{root:a,rootMargin:o="0px",threshold:s=0,window:r=co,immediate:l=!0}=n,u=jd(()=>r&&"IntersectionObserver"in r),c=w(()=>{const p=Wn(e);return(Array.isArray(p)?p:[p]).map(xn).filter(zS)});let d=Ga;const f=M(l),v=u.value?le(()=>[c.value,xn(a),f.value],([p,h])=>{if(d(),!f.value||!p.length)return;const m=new IntersectionObserver(t,{root:xn(h),rootMargin:o,threshold:s});p.forEach(b=>b&&m.observe(b)),d=()=>{m.disconnect(),d=Ga}},{immediate:l,flush:"post"}):Ga,g=()=>{d(),v(),f.value=!1};return Ir(g),{isSupported:u,isActive:f,pause(){d(),f.value=!1},resume(){f.value=!0},stop:g}}function jS(e,t,n,a={}){var o,s,r;const{clone:l=!1,passive:u=!1,eventName:c,deep:d=!1,defaultValue:f,shouldEmit:v}=a,g=ft(),p=n||g?.emit||((o=g?.$emit)==null?void 0:o.bind(g))||((r=(s=g?.proxy)==null?void 0:s.$emit)==null?void 0:r.bind(g?.proxy));let h=c;t||(t="modelValue"),h=h||`update:${t.toString()}`;const m=y=>l?typeof l=="function"?l(y):n_(y):y,b=()=>WM(e[t])?m(e[t]):f,k=y=>{v?v(y)&&p(h,y):p(h,y)};if(u){const y=b(),S=M(y);let C=!1;return le(()=>e[t],E=>{C||(C=!0,S.value=m(E),Re(()=>C=!1))}),le(S,E=>{!C&&(E!==e[t]||d)&&k(E)},{deep:d}),S}else return w({get(){return b()},set(y){k(y)}})}function r_(e={}){const{window:t=co}=e;if(!t)return M(!1);const n=M(t.document.hasFocus());return Ft(t,"blur",()=>{n.value=!1}),Ft(t,"focus",()=>{n.value=!0}),n}function _v(e={}){const{window:t=co,initialWidth:n=Number.POSITIVE_INFINITY,initialHeight:a=Number.POSITIVE_INFINITY,listenOrientation:o=!0,includeScrollbar:s=!0,type:r="inner"}=e,l=M(n),u=M(a),c=()=>{t&&(r==="outer"?(l.value=t.outerWidth,u.value=t.outerHeight):s?(l.value=t.innerWidth,u.value=t.innerHeight):(l.value=t.document.documentElement.clientWidth,u.value=t.document.documentElement.clientHeight))};if(c(),Pv(c),Ft("resize",c,{passive:!0}),o){const d=t_("(orientation: portrait)");le(d,()=>c())}return{width:l,height:u}}function Av(){const e=Xt(),t=M(0),n=w(()=>({minWidth:`${Math.max(t.value,Ad)}px`}));return en(e,()=>{t.value=e.value?.getBoundingClientRect().width??0}),{calculatorRef:e,calculatorWidth:t,inputStyle:n}}const To=({from:e,replacement:t,scope:n,version:a,ref:o,type:s="API"},r)=>{le(()=>i(r),l=>{l&&pt(n,`[${s}] ${e} is about to be deprecated in version ${a}, please use ${t} instead. -For more detail, please visit: ${o} -`)},{immediate:!0})},l_='a[href],button:not([disabled]),button:not([hidden]),:not([tabindex="-1"]),input:not([disabled]),input:not([type="hidden"]),select:not([disabled]),textarea:not([disabled])',US=e=>typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot,_b=e=>typeof Element>"u"?!1:e instanceof Element,i_=e=>getComputedStyle(e).position==="fixed"?!1:e.offsetParent!==null,Ab=e=>Array.from(e.querySelectorAll(l_)).filter(t=>Ri(t)&&i_(t)),Ri=e=>{if(e.tabIndex>0||e.tabIndex===0&&e.getAttribute("tabIndex")!==null)return!0;if(e.tabIndex<0||e.hasAttribute("disabled")||e.getAttribute("aria-disabled")==="true")return!1;switch(e.nodeName){case"A":return!!e.href&&e.rel!=="ignore";case"INPUT":return!(e.type==="hidden"||e.type==="file");case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},uc=function(e,t,...n){let a;t.includes("mouse")||t.includes("click")?a="MouseEvents":t.includes("key")?a="KeyboardEvent":a="HTMLEvents";const o=document.createEvent(a);return o.initEvent(t,...n),e.dispatchEvent(o),e},qS=e=>!e.getAttribute("aria-owns"),YS=(e,t,n)=>{const{parentNode:a}=e;if(!a)return null;const o=a.querySelectorAll(n);return o[Array.prototype.indexOf.call(o,e)+t]||null},ru=(e,t)=>{if(!e||!e.focus)return;let n=!1;_b(e)&&!Ri(e)&&!e.getAttribute("tabindex")&&(e.setAttribute("tabindex","-1"),n=!0),e.focus(t),_b(e)&&n&&e.removeAttribute("tabindex")},cc=e=>{e&&(ru(e),!qS(e)&&e.click())},Ud=()=>Mt&&/firefox/i.test(window.navigator.userAgent),GS=()=>Mt&&/android/i.test(window.navigator.userAgent),Lv=(e="")=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),$s=e=>qi(e),u_="utils/dom/style",XS=(e="")=>e.split(" ").filter(t=>!!t.trim()),$o=(e,t)=>{if(!e||!t)return!1;if(t.includes(" "))throw new Error("className should not contain space.");return e.classList.contains(t)},La=(e,t)=>{!e||!t.trim()||e.classList.add(...XS(t))},ta=(e,t)=>{!e||!t.trim()||e.classList.remove(...XS(t))},Yo=(e,t)=>{if(!Mt||!e||!t||US(e))return"";let n=Fn(t);n==="float"&&(n="cssFloat");try{const a=e.style[n];if(a)return a;const o=document.defaultView?.getComputedStyle(e,"");return o?o[n]:""}catch{return e.style[n]}},JS=(e,t,n)=>{if(!(!e||!t))if(ot(t))DS(t).forEach(([a,o])=>JS(e,a,o));else{const a=Fn(t);e.style[a]=n}};function ln(e,t="px"){if(!e&&e!==0)return"";if(He(e)||LM(e))return`${e}${t}`;if(Le(e))return e;pt(u_,"binding value must be a string or number")}const ZS=(e,t,n,a)=>{const o={offsetX:0,offsetY:0},s=M(!1),r=(v,g)=>{if(e.value){const{offsetX:p,offsetY:h}=o,m=e.value.getBoundingClientRect(),b=m.left,k=m.top,y=m.width,S=m.height,C=document.documentElement.clientWidth,E=document.documentElement.clientHeight,$=-b+p,O=-k+h,N=C-b-y+p,R=E-k-(S{const g=v.clientX,p=v.clientY,{offsetX:h,offsetY:m}=o,b=y=>{s.value||(s.value=!0),r(h+y.clientX-g,m+y.clientY-p)},k=()=>{s.value=!1,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",k)};document.addEventListener("mousemove",b),document.addEventListener("mouseup",k)},u=()=>{t.value&&e.value&&(t.value.addEventListener("mousedown",l),window.addEventListener("resize",f))},c=()=>{t.value&&e.value&&(t.value.removeEventListener("mousedown",l),window.removeEventListener("resize",f))},d=()=>{o.offsetX=0,o.offsetY=0,e.value&&(e.value.style.transform="")},f=()=>{const{offsetX:v,offsetY:g}=o;r(v,g)};return ht(()=>{wa(()=>{n.value?u():c()})}),Bt(()=>{c()}),{isDragging:s,resetPosition:d,updatePosition:f}};var c_={name:"en",el:{breadcrumb:{label:"Breadcrumb"},colorpicker:{confirm:"OK",clear:"Clear",defaultLabel:"color picker",description:"current color is {color}. press enter to select a new color.",alphaLabel:"pick alpha value",alphaDescription:"alpha {alpha}, current color is {color}",hueLabel:"pick hue value",hueDescription:"hue {hue}, current color is {color}",svLabel:"pick saturation and brightness value",svDescription:"saturation {saturation}, brightness {brightness}, current color is {color}",predefineDescription:"select {value} as the color"},datepicker:{now:"Now",today:"Today",cancel:"Cancel",clear:"Clear",confirm:"OK",dateTablePrompt:"Use the arrow keys and enter to select the day of the month",monthTablePrompt:"Use the arrow keys and enter to select the month",yearTablePrompt:"Use the arrow keys and enter to select the year",selectedDate:"Selected date",selectDate:"Select date",selectTime:"Select time",startDate:"Start Date",startTime:"Start Time",endDate:"End Date",endTime:"End Time",prevYear:"Previous Year",nextYear:"Next Year",prevMonth:"Previous Month",nextMonth:"Next Month",year:"",month1:"January",month2:"February",month3:"March",month4:"April",month5:"May",month6:"June",month7:"July",month8:"August",month9:"September",month10:"October",month11:"November",month12:"December",weeks:{sun:"Sun",mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat"},weeksFull:{sun:"Sunday",mon:"Monday",tue:"Tuesday",wed:"Wednesday",thu:"Thursday",fri:"Friday",sat:"Saturday"},months:{jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"}},inputNumber:{decrease:"decrease number",increase:"increase number"},select:{loading:"Loading",noMatch:"No matching data",noData:"No data",placeholder:"Select"},mention:{loading:"Loading"},dropdown:{toggleDropdown:"Toggle Dropdown"},cascader:{noMatch:"No matching data",loading:"Loading",placeholder:"Select",noData:"No data"},pagination:{goto:"Go to",pagesize:"/page",total:"Total {total}",pageClassifier:"",page:"Page",prev:"Go to previous page",next:"Go to next page",currentPage:"page {pager}",prevPages:"Previous {pager} pages",nextPages:"Next {pager} pages",deprecationWarning:"Deprecated usages detected, please refer to the el-pagination documentation for more details"},dialog:{close:"Close this dialog"},drawer:{close:"Close this dialog"},messagebox:{title:"Message",confirm:"OK",cancel:"Cancel",error:"Illegal input",close:"Close this dialog"},upload:{deleteTip:"press delete to remove",delete:"Delete",preview:"Preview",continue:"Continue"},slider:{defaultLabel:"slider between {min} and {max}",defaultRangeStartLabel:"pick start value",defaultRangeEndLabel:"pick end value"},table:{emptyText:"No Data",confirmFilter:"Confirm",resetFilter:"Reset",clearFilter:"All",sumText:"Sum",selectAllLabel:"Select all rows",selectRowLabel:"Select this row",expandRowLabel:"Expand this row",collapseRowLabel:"Collapse this row",sortLabel:"Sort by {column}",filterLabel:"Filter by {column}"},tag:{close:"Close this tag"},tour:{next:"Next",previous:"Previous",finish:"Finish",close:"Close this dialog"},tree:{emptyText:"No Data"},transfer:{noMatch:"No matching data",noData:"No data",titles:["List 1","List 2"],filterPlaceholder:"Enter keyword",noCheckedFormat:"{total} items",hasCheckedFormat:"{checked}/{total} checked"},image:{error:"FAILED"},pageHeader:{title:"Back"},popconfirm:{confirmButtonText:"Yes",cancelButtonText:"No"},carousel:{leftArrow:"Carousel arrow left",rightArrow:"Carousel arrow right",indicator:"Carousel switch to index {index}"}}};const d_=e=>(t,n)=>f_(t,n,i(e)),f_=(e,t,n)=>wn(n,e,e).replace(/\{(\w+)\}/g,(a,o)=>`${t?.[o]??`{${o}}`}`),p_=e=>({lang:w(()=>i(e).name),locale:Jt(e)?e:M(e),t:d_(e)}),QS=Symbol("localeContextKey"),Ct=e=>{const t=e||_e(QS,M());return p_(w(()=>t.value||c_))},di="el",h_="is-",Gs=(e,t,n,a,o)=>{let s=`${e}-${t}`;return n&&(s+=`-${n}`),a&&(s+=`__${a}`),o&&(s+=`--${o}`),s},eC=Symbol("namespaceContextKey"),Dv=e=>{const t=e||(ft()?_e(eC,M(di)):M(di));return w(()=>i(t)||di)},fe=(e,t)=>{const n=Dv(t);return{namespace:n,b:(h="")=>Gs(n.value,e,h,"",""),e:h=>h?Gs(n.value,e,"",h,""):"",m:h=>h?Gs(n.value,e,"","",h):"",be:(h,m)=>h&&m?Gs(n.value,e,h,m,""):"",em:(h,m)=>h&&m?Gs(n.value,e,"",h,m):"",bm:(h,m)=>h&&m?Gs(n.value,e,h,"",m):"",bem:(h,m,b)=>h&&m&&b?Gs(n.value,e,h,m,b):"",is:(h,...m)=>{const b=m.length>=1?m[0]:!0;return h&&b?`${h_}${h}`:""},cssVar:h=>{const m={};for(const b in h)h[b]&&(m[`--${n.value}-${b}`]=h[b]);return m},cssVarName:h=>`--${n.value}-${h}`,cssVarBlock:h=>{const m={};for(const b in h)h[b]&&(m[`--${n.value}-${e}-${b}`]=h[b]);return m},cssVarBlockName:h=>`--${n.value}-${e}-${h}`}};function v_(e,t,n,a){const o=n-t;return e/=a/2,e<1?o/2*e*e*e+t:o/2*((e-=2)*e*e+2)+t}const eo=e=>Mt?window.requestAnimationFrame(e):setTimeout(e,16),rs=e=>Mt?window.cancelAnimationFrame(e):clearTimeout(e),m_=(e,t)=>{if(!Mt)return!1;const n={undefined:"overflow",true:"overflow-y",false:"overflow-x"}[String(t)],a=Yo(e,n);return["scroll","auto","overlay"].some(o=>a.includes(o))},Bv=(e,t)=>{if(!Mt)return;let n=e;for(;n;){if([window,document,document.documentElement].includes(n))return window;if(m_(n,t))return n;US(n)?n=n.host:n=n.parentNode}return n};let Du;const tC=e=>{if(!Mt)return 0;if(Du!==void 0)return Du;const t=document.createElement("div");t.className=`${e}-scrollbar__wrap`,t.style.visibility="hidden",t.style.width="100px",t.style.position="absolute",t.style.top="-9999px",document.body.appendChild(t);const n=t.offsetWidth;t.style.overflow="scroll";const a=document.createElement("div");a.style.width="100%",t.appendChild(a);const o=a.offsetWidth;return t.parentNode?.removeChild(t),Du=n-o,Du};function Fv(e,t){if(!Mt)return;if(!t){e.scrollTop=0;return}const n=[];let a=t.offsetParent;for(;a!==null&&e!==a&&e.contains(a);)n.push(a),a=a.offsetParent;const o=t.offsetTop+n.reduce((u,c)=>u+c.offsetTop,0),s=o+t.offsetHeight,r=e.scrollTop,l=r+e.clientHeight;ol&&(e.scrollTop=s-e.clientHeight)}function g_(e,t,n,a,o){const s=Date.now();let r;const l=()=>{const u=Date.now()-s,c=v_(u>a?a:u,t,n,a);nu(e)?e.scrollTo(window.pageXOffset,c):e.scrollTop=c,u{r&&rs(r)}}const Lb=(e,t)=>nu(t)?e.ownerDocument.documentElement:t,Db=e=>nu(e)?window.scrollY:e.scrollTop,qd=(e,t={})=>{Jt(e)||nn("[useLockscreen]","You need to pass a ref param to this function");const n=t.ns||fe("popup"),a=w(()=>n.bm("parent","hidden"));let o=0,s=!1,r="0",l=!1;const u=()=>{l||(l=!0,setTimeout(()=>{typeof document>"u"||s&&document&&(document.body.style.width=r,ta(document.body,a.value))},200))};le(e,c=>{if(!c){u();return}l=!1,s=!$o(document.body,a.value),s&&(r=document.body.style.width,La(document.body,a.value)),o=tC(n.namespace.value);const d=document.documentElement.clientHeight0&&(d||f==="scroll")&&s&&(document.body.style.width=`calc(100% - ${o}px)`)}),Mw(()=>u())},Rn=(e,t,{checkForDefaultPrevented:n=!0}={})=>o=>{const s=e?.(o);if(n===!1||!s)return t?.(o)},Bb=e=>t=>t.pointerType==="mouse"?e(t):void 0,jt=e=>{if(e.code&&e.code!=="Unidentified")return e.code;const t=nC(e);return t?Object.values(we).includes(t)?t:t===" "?we.space:"":""},nC=e=>{let t=e.key&&e.key!=="Unidentified"?e.key:"";if(!t&&e.type==="keyup"&&GS()){const n=e.target;t=n.value.charAt(n.selectionStart-1)}return t},b_=uo({type:G(Boolean),default:null}),y_=uo({type:G(Function)}),w_=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,a=[t],o={[e]:b_,[n]:y_};return{useModelToggle:({indicator:r,toggleReason:l,shouldHideWhenRouteChanges:u,shouldProceed:c,onShow:d,onHide:f})=>{const v=ft(),{emit:g}=v,p=v.props,h=w(()=>Ve(p[n])),m=w(()=>p[e]===null),b=$=>{r.value!==!0&&(r.value=!0,l&&(l.value=$),Ve(d)&&d($))},k=$=>{r.value!==!1&&(r.value=!1,l&&(l.value=$),Ve(f)&&f($))},y=$=>{if(p.disabled===!0||Ve(c)&&!c())return;const O=h.value&&Mt;O&&g(t,!0),(m.value||!O)&&b($)},S=$=>{if(p.disabled===!0||!Mt)return;const O=h.value&&Mt;O&&g(t,!1),(m.value||!O)&&k($)},C=$=>{Ht($)&&(p.disabled&&$?h.value&&g(t,!1):r.value!==$&&($?b():k()))},E=()=>{r.value?S():y()};return le(()=>p[e],C),u&&v.appContext.config.globalProperties.$route!==void 0&&le(()=>({...v.proxy.$route}),()=>{u.value&&r.value&&S()}),ht(()=>{C(p[e])}),{hide:S,show:y,toggle:E,hasUpdateHandler:h}},useModelToggleProps:o,useModelToggleEmits:a}},aC=e=>{const t=ft();return w(()=>t?.proxy?.$props?.[e])};var ma="top",Va="bottom",za="right",ga="left",Vv="auto",lu=[ma,Va,za,ga],hl="start",Ni="end",S_="clippingParents",oC="viewport",Wl="popper",C_="reference",Fb=lu.reduce(function(e,t){return e.concat([t+"-"+hl,t+"-"+Ni])},[]),Do=[].concat(lu,[Vv]).reduce(function(e,t){return e.concat([t,t+"-"+hl,t+"-"+Ni])},[]),k_="beforeRead",E_="read",x_="afterRead",T_="beforeMain",$_="main",O_="afterMain",R_="beforeWrite",N_="write",I_="afterWrite",P_=[k_,E_,x_,T_,$_,O_,R_,N_,I_];function _o(e){return e?(e.nodeName||"").toLowerCase():null}function Na(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Sr(e){var t=Na(e).Element;return e instanceof t||e instanceof Element}function Ba(e){var t=Na(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function zv(e){if(typeof ShadowRoot>"u")return!1;var t=Na(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function M_(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var a=t.styles[n]||{},o=t.attributes[n]||{},s=t.elements[n];!Ba(s)||!_o(s)||(Object.assign(s.style,a),Object.keys(o).forEach(function(r){var l=o[r];l===!1?s.removeAttribute(r):s.setAttribute(r,l===!0?"":l)}))})}function __(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(a){var o=t.elements[a],s=t.attributes[a]||{},r=Object.keys(t.styles.hasOwnProperty(a)?t.styles[a]:n[a]),l=r.reduce(function(u,c){return u[c]="",u},{});!Ba(o)||!_o(o)||(Object.assign(o.style,l),Object.keys(s).forEach(function(u){o.removeAttribute(u)}))})}}var sC={name:"applyStyles",enabled:!0,phase:"write",fn:M_,effect:__,requires:["computeStyles"]};function Oo(e){return e.split("-")[0]}var fr=Math.max,Jc=Math.min,vl=Math.round;function Bp(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function rC(){return!/^((?!chrome|android).)*safari/i.test(Bp())}function ml(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var a=e.getBoundingClientRect(),o=1,s=1;t&&Ba(e)&&(o=e.offsetWidth>0&&vl(a.width)/e.offsetWidth||1,s=e.offsetHeight>0&&vl(a.height)/e.offsetHeight||1);var r=Sr(e)?Na(e):window,l=r.visualViewport,u=!rC()&&n,c=(a.left+(u&&l?l.offsetLeft:0))/o,d=(a.top+(u&&l?l.offsetTop:0))/s,f=a.width/o,v=a.height/s;return{width:f,height:v,top:d,right:c+f,bottom:d+v,left:c,x:c,y:d}}function Hv(e){var t=ml(e),n=e.offsetWidth,a=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-a)<=1&&(a=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:a}}function lC(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&zv(n)){var a=t;do{if(a&&e.isSameNode(a))return!0;a=a.parentNode||a.host}while(a)}return!1}function ls(e){return Na(e).getComputedStyle(e)}function A_(e){return["table","td","th"].indexOf(_o(e))>=0}function Ks(e){return((Sr(e)?e.ownerDocument:e.document)||window.document).documentElement}function Yd(e){return _o(e)==="html"?e:e.assignedSlot||e.parentNode||(zv(e)?e.host:null)||Ks(e)}function Vb(e){return!Ba(e)||ls(e).position==="fixed"?null:e.offsetParent}function L_(e){var t=/firefox/i.test(Bp()),n=/Trident/i.test(Bp());if(n&&Ba(e)){var a=ls(e);if(a.position==="fixed")return null}var o=Yd(e);for(zv(o)&&(o=o.host);Ba(o)&&["html","body"].indexOf(_o(o))<0;){var s=ls(o);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||t&&s.willChange==="filter"||t&&s.filter&&s.filter!=="none")return o;o=o.parentNode}return null}function iu(e){for(var t=Na(e),n=Vb(e);n&&A_(n)&&ls(n).position==="static";)n=Vb(n);return n&&(_o(n)==="html"||_o(n)==="body"&&ls(n).position==="static")?t:n||L_(e)||t}function Kv(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function fi(e,t,n){return fr(e,Jc(t,n))}function D_(e,t,n){var a=fi(e,t,n);return a>n?n:a}function iC(){return{top:0,right:0,bottom:0,left:0}}function uC(e){return Object.assign({},iC(),e)}function cC(e,t){return t.reduce(function(n,a){return n[a]=e,n},{})}var B_=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,uC(typeof e!="number"?e:cC(e,lu))};function F_(e){var t,n=e.state,a=e.name,o=e.options,s=n.elements.arrow,r=n.modifiersData.popperOffsets,l=Oo(n.placement),u=Kv(l),c=[ga,za].indexOf(l)>=0,d=c?"height":"width";if(!(!s||!r)){var f=B_(o.padding,n),v=Hv(s),g=u==="y"?ma:ga,p=u==="y"?Va:za,h=n.rects.reference[d]+n.rects.reference[u]-r[u]-n.rects.popper[d],m=r[u]-n.rects.reference[u],b=iu(s),k=b?u==="y"?b.clientHeight||0:b.clientWidth||0:0,y=h/2-m/2,S=f[g],C=k-v[d]-f[p],E=k/2-v[d]/2+y,$=fi(S,E,C),O=u;n.modifiersData[a]=(t={},t[O]=$,t.centerOffset=$-E,t)}}function V_(e){var t=e.state,n=e.options,a=n.element,o=a===void 0?"[data-popper-arrow]":a;o!=null&&(typeof o=="string"&&(o=t.elements.popper.querySelector(o),!o)||lC(t.elements.popper,o)&&(t.elements.arrow=o))}var z_={name:"arrow",enabled:!0,phase:"main",fn:F_,effect:V_,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function gl(e){return e.split("-")[1]}var H_={top:"auto",right:"auto",bottom:"auto",left:"auto"};function K_(e,t){var n=e.x,a=e.y,o=t.devicePixelRatio||1;return{x:vl(n*o)/o||0,y:vl(a*o)/o||0}}function zb(e){var t,n=e.popper,a=e.popperRect,o=e.placement,s=e.variation,r=e.offsets,l=e.position,u=e.gpuAcceleration,c=e.adaptive,d=e.roundOffsets,f=e.isFixed,v=r.x,g=v===void 0?0:v,p=r.y,h=p===void 0?0:p,m=typeof d=="function"?d({x:g,y:h}):{x:g,y:h};g=m.x,h=m.y;var b=r.hasOwnProperty("x"),k=r.hasOwnProperty("y"),y=ga,S=ma,C=window;if(c){var E=iu(n),$="clientHeight",O="clientWidth";if(E===Na(n)&&(E=Ks(n),ls(E).position!=="static"&&l==="absolute"&&($="scrollHeight",O="scrollWidth")),E=E,o===ma||(o===ga||o===za)&&s===Ni){S=Va;var N=f&&E===C&&C.visualViewport?C.visualViewport.height:E[$];h-=N-a.height,h*=u?1:-1}if(o===ga||(o===ma||o===Va)&&s===Ni){y=za;var R=f&&E===C&&C.visualViewport?C.visualViewport.width:E[O];g-=R-a.width,g*=u?1:-1}}var A=Object.assign({position:l},c&&H_),_=d===!0?K_({x:g,y:h},Na(n)):{x:g,y:h};if(g=_.x,h=_.y,u){var V;return Object.assign({},A,(V={},V[S]=k?"0":"",V[y]=b?"0":"",V.transform=(C.devicePixelRatio||1)<=1?"translate("+g+"px, "+h+"px)":"translate3d("+g+"px, "+h+"px, 0)",V))}return Object.assign({},A,(t={},t[S]=k?h+"px":"",t[y]=b?g+"px":"",t.transform="",t))}function W_(e){var t=e.state,n=e.options,a=n.gpuAcceleration,o=a===void 0?!0:a,s=n.adaptive,r=s===void 0?!0:s,l=n.roundOffsets,u=l===void 0?!0:l,c={placement:Oo(t.placement),variation:gl(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,zb(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:r,roundOffsets:u})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,zb(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var dC={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:W_,data:{}},Bu={passive:!0};function j_(e){var t=e.state,n=e.instance,a=e.options,o=a.scroll,s=o===void 0?!0:o,r=a.resize,l=r===void 0?!0:r,u=Na(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&c.forEach(function(d){d.addEventListener("scroll",n.update,Bu)}),l&&u.addEventListener("resize",n.update,Bu),function(){s&&c.forEach(function(d){d.removeEventListener("scroll",n.update,Bu)}),l&&u.removeEventListener("resize",n.update,Bu)}}var fC={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:j_,data:{}},U_={left:"right",right:"left",bottom:"top",top:"bottom"};function dc(e){return e.replace(/left|right|bottom|top/g,function(t){return U_[t]})}var q_={start:"end",end:"start"};function Hb(e){return e.replace(/start|end/g,function(t){return q_[t]})}function Wv(e){var t=Na(e),n=t.pageXOffset,a=t.pageYOffset;return{scrollLeft:n,scrollTop:a}}function jv(e){return ml(Ks(e)).left+Wv(e).scrollLeft}function Y_(e,t){var n=Na(e),a=Ks(e),o=n.visualViewport,s=a.clientWidth,r=a.clientHeight,l=0,u=0;if(o){s=o.width,r=o.height;var c=rC();(c||!c&&t==="fixed")&&(l=o.offsetLeft,u=o.offsetTop)}return{width:s,height:r,x:l+jv(e),y:u}}function G_(e){var t,n=Ks(e),a=Wv(e),o=(t=e.ownerDocument)==null?void 0:t.body,s=fr(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),r=fr(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),l=-a.scrollLeft+jv(e),u=-a.scrollTop;return ls(o||n).direction==="rtl"&&(l+=fr(n.clientWidth,o?o.clientWidth:0)-s),{width:s,height:r,x:l,y:u}}function Uv(e){var t=ls(e),n=t.overflow,a=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+a)}function pC(e){return["html","body","#document"].indexOf(_o(e))>=0?e.ownerDocument.body:Ba(e)&&Uv(e)?e:pC(Yd(e))}function pi(e,t){var n;t===void 0&&(t=[]);var a=pC(e),o=a===((n=e.ownerDocument)==null?void 0:n.body),s=Na(a),r=o?[s].concat(s.visualViewport||[],Uv(a)?a:[]):a,l=t.concat(r);return o?l:l.concat(pi(Yd(r)))}function Fp(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function X_(e,t){var n=ml(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function Kb(e,t,n){return t===oC?Fp(Y_(e,n)):Sr(t)?X_(t,n):Fp(G_(Ks(e)))}function J_(e){var t=pi(Yd(e)),n=["absolute","fixed"].indexOf(ls(e).position)>=0,a=n&&Ba(e)?iu(e):e;return Sr(a)?t.filter(function(o){return Sr(o)&&lC(o,a)&&_o(o)!=="body"}):[]}function Z_(e,t,n,a){var o=t==="clippingParents"?J_(e):[].concat(t),s=[].concat(o,[n]),r=s[0],l=s.reduce(function(u,c){var d=Kb(e,c,a);return u.top=fr(d.top,u.top),u.right=Jc(d.right,u.right),u.bottom=Jc(d.bottom,u.bottom),u.left=fr(d.left,u.left),u},Kb(e,r,a));return l.width=l.right-l.left,l.height=l.bottom-l.top,l.x=l.left,l.y=l.top,l}function hC(e){var t=e.reference,n=e.element,a=e.placement,o=a?Oo(a):null,s=a?gl(a):null,r=t.x+t.width/2-n.width/2,l=t.y+t.height/2-n.height/2,u;switch(o){case ma:u={x:r,y:t.y-n.height};break;case Va:u={x:r,y:t.y+t.height};break;case za:u={x:t.x+t.width,y:l};break;case ga:u={x:t.x-n.width,y:l};break;default:u={x:t.x,y:t.y}}var c=o?Kv(o):null;if(c!=null){var d=c==="y"?"height":"width";switch(s){case hl:u[c]=u[c]-(t[d]/2-n[d]/2);break;case Ni:u[c]=u[c]+(t[d]/2-n[d]/2);break}}return u}function Ii(e,t){t===void 0&&(t={});var n=t,a=n.placement,o=a===void 0?e.placement:a,s=n.strategy,r=s===void 0?e.strategy:s,l=n.boundary,u=l===void 0?S_:l,c=n.rootBoundary,d=c===void 0?oC:c,f=n.elementContext,v=f===void 0?Wl:f,g=n.altBoundary,p=g===void 0?!1:g,h=n.padding,m=h===void 0?0:h,b=uC(typeof m!="number"?m:cC(m,lu)),k=v===Wl?C_:Wl,y=e.rects.popper,S=e.elements[p?k:v],C=Z_(Sr(S)?S:S.contextElement||Ks(e.elements.popper),u,d,r),E=ml(e.elements.reference),$=hC({reference:E,element:y,placement:o}),O=Fp(Object.assign({},y,$)),N=v===Wl?O:E,R={top:C.top-N.top+b.top,bottom:N.bottom-C.bottom+b.bottom,left:C.left-N.left+b.left,right:N.right-C.right+b.right},A=e.modifiersData.offset;if(v===Wl&&A){var _=A[o];Object.keys(R).forEach(function(V){var H=[za,Va].indexOf(V)>=0?1:-1,U=[ma,Va].indexOf(V)>=0?"y":"x";R[V]+=_[U]*H})}return R}function Q_(e,t){t===void 0&&(t={});var n=t,a=n.placement,o=n.boundary,s=n.rootBoundary,r=n.padding,l=n.flipVariations,u=n.allowedAutoPlacements,c=u===void 0?Do:u,d=gl(a),f=d?l?Fb:Fb.filter(function(p){return gl(p)===d}):lu,v=f.filter(function(p){return c.indexOf(p)>=0});v.length===0&&(v=f);var g=v.reduce(function(p,h){return p[h]=Ii(e,{placement:h,boundary:o,rootBoundary:s,padding:r})[Oo(h)],p},{});return Object.keys(g).sort(function(p,h){return g[p]-g[h]})}function eA(e){if(Oo(e)===Vv)return[];var t=dc(e);return[Hb(e),t,Hb(t)]}function tA(e){var t=e.state,n=e.options,a=e.name;if(!t.modifiersData[a]._skip){for(var o=n.mainAxis,s=o===void 0?!0:o,r=n.altAxis,l=r===void 0?!0:r,u=n.fallbackPlacements,c=n.padding,d=n.boundary,f=n.rootBoundary,v=n.altBoundary,g=n.flipVariations,p=g===void 0?!0:g,h=n.allowedAutoPlacements,m=t.options.placement,b=Oo(m),k=b===m,y=u||(k||!p?[dc(m)]:eA(m)),S=[m].concat(y).reduce(function(X,Q){return X.concat(Oo(Q)===Vv?Q_(t,{placement:Q,boundary:d,rootBoundary:f,padding:c,flipVariations:p,allowedAutoPlacements:h}):Q)},[]),C=t.rects.reference,E=t.rects.popper,$=new Map,O=!0,N=S[0],R=0;R=0,U=H?"width":"height",W=Ii(t,{placement:A,boundary:d,rootBoundary:f,altBoundary:v,padding:c}),P=H?V?za:ga:V?Va:ma;C[U]>E[U]&&(P=dc(P));var I=dc(P),L=[];if(s&&L.push(W[_]<=0),l&&L.push(W[P]<=0,W[I]<=0),L.every(function(X){return X})){N=A,O=!1;break}$.set(A,L)}if(O)for(var D=p?3:1,F=function(X){var Q=S.find(function(he){var ue=$.get(he);if(ue)return ue.slice(0,X).every(function(ge){return ge})});if(Q)return N=Q,"break"},q=D;q>0;q--){var j=F(q);if(j==="break")break}t.placement!==N&&(t.modifiersData[a]._skip=!0,t.placement=N,t.reset=!0)}}var nA={name:"flip",enabled:!0,phase:"main",fn:tA,requiresIfExists:["offset"],data:{_skip:!1}};function Wb(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function jb(e){return[ma,za,Va,ga].some(function(t){return e[t]>=0})}function aA(e){var t=e.state,n=e.name,a=t.rects.reference,o=t.rects.popper,s=t.modifiersData.preventOverflow,r=Ii(t,{elementContext:"reference"}),l=Ii(t,{altBoundary:!0}),u=Wb(r,a),c=Wb(l,o,s),d=jb(u),f=jb(c);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:c,isReferenceHidden:d,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":f})}var oA={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:aA};function sA(e,t,n){var a=Oo(e),o=[ga,ma].indexOf(a)>=0?-1:1,s=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,r=s[0],l=s[1];return r=r||0,l=(l||0)*o,[ga,za].indexOf(a)>=0?{x:l,y:r}:{x:r,y:l}}function rA(e){var t=e.state,n=e.options,a=e.name,o=n.offset,s=o===void 0?[0,0]:o,r=Do.reduce(function(d,f){return d[f]=sA(f,t.rects,s),d},{}),l=r[t.placement],u=l.x,c=l.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=c),t.modifiersData[a]=r}var lA={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:rA};function iA(e){var t=e.state,n=e.name;t.modifiersData[n]=hC({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}var vC={name:"popperOffsets",enabled:!0,phase:"read",fn:iA,data:{}};function uA(e){return e==="x"?"y":"x"}function cA(e){var t=e.state,n=e.options,a=e.name,o=n.mainAxis,s=o===void 0?!0:o,r=n.altAxis,l=r===void 0?!1:r,u=n.boundary,c=n.rootBoundary,d=n.altBoundary,f=n.padding,v=n.tether,g=v===void 0?!0:v,p=n.tetherOffset,h=p===void 0?0:p,m=Ii(t,{boundary:u,rootBoundary:c,padding:f,altBoundary:d}),b=Oo(t.placement),k=gl(t.placement),y=!k,S=Kv(b),C=uA(S),E=t.modifiersData.popperOffsets,$=t.rects.reference,O=t.rects.popper,N=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,R=typeof N=="number"?{mainAxis:N,altAxis:N}:Object.assign({mainAxis:0,altAxis:0},N),A=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,_={x:0,y:0};if(E){if(s){var V,H=S==="y"?ma:ga,U=S==="y"?Va:za,W=S==="y"?"height":"width",P=E[S],I=P+m[H],L=P-m[U],D=g?-O[W]/2:0,F=k===hl?$[W]:O[W],q=k===hl?-O[W]:-$[W],j=t.elements.arrow,X=g&&j?Hv(j):{width:0,height:0},Q=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:iC(),he=Q[H],ue=Q[U],ge=fi(0,$[W],X[W]),ie=y?$[W]/2-D-ge-he-R.mainAxis:F-ge-he-R.mainAxis,ae=y?-$[W]/2+D+ge+ue+R.mainAxis:q+ge+ue+R.mainAxis,ne=t.elements.arrow&&iu(t.elements.arrow),K=ne?S==="y"?ne.clientTop||0:ne.clientLeft||0:0,Z=(V=A?.[S])!=null?V:0,re=P+ie-Z-K,ce=P+ae-Z,ve=fi(g?Jc(I,re):I,P,g?fr(L,ce):L);E[S]=ve,_[S]=ve-P}if(l){var ke,Ne=S==="x"?ma:ga,Ie=S==="x"?Va:za,$e=E[C],pe=C==="y"?"height":"width",Ee=$e+m[Ne],me=$e-m[Ie],Me=[ma,ga].indexOf(b)!==-1,We=(ke=A?.[C])!=null?ke:0,Ze=Me?Ee:$e-$[pe]-O[pe]-We+R.altAxis,Pe=Me?$e+$[pe]+O[pe]-We-R.altAxis:me,Ae=g&&Me?D_(Ze,$e,Pe):fi(g?Ze:Ee,$e,g?Pe:me);E[C]=Ae,_[C]=Ae-$e}t.modifiersData[a]=_}}var dA={name:"preventOverflow",enabled:!0,phase:"main",fn:cA,requiresIfExists:["offset"]};function fA(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function pA(e){return e===Na(e)||!Ba(e)?Wv(e):fA(e)}function hA(e){var t=e.getBoundingClientRect(),n=vl(t.width)/e.offsetWidth||1,a=vl(t.height)/e.offsetHeight||1;return n!==1||a!==1}function vA(e,t,n){n===void 0&&(n=!1);var a=Ba(t),o=Ba(t)&&hA(t),s=Ks(t),r=ml(e,o,n),l={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(a||!a&&!n)&&((_o(t)!=="body"||Uv(s))&&(l=pA(t)),Ba(t)?(u=ml(t,!0),u.x+=t.clientLeft,u.y+=t.clientTop):s&&(u.x=jv(s))),{x:r.left+l.scrollLeft-u.x,y:r.top+l.scrollTop-u.y,width:r.width,height:r.height}}function mA(e){var t=new Map,n=new Set,a=[];e.forEach(function(s){t.set(s.name,s)});function o(s){n.add(s.name);var r=[].concat(s.requires||[],s.requiresIfExists||[]);r.forEach(function(l){if(!n.has(l)){var u=t.get(l);u&&o(u)}}),a.push(s)}return e.forEach(function(s){n.has(s.name)||o(s)}),a}function gA(e){var t=mA(e);return P_.reduce(function(n,a){return n.concat(t.filter(function(o){return o.phase===a}))},[])}function bA(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function yA(e){var t=e.reduce(function(n,a){var o=n[a.name];return n[a.name]=o?Object.assign({},o,a,{options:Object.assign({},o.options,a.options),data:Object.assign({},o.data,a.data)}):a,n},{});return Object.keys(t).map(function(n){return t[n]})}var Ub={placement:"bottom",modifiers:[],strategy:"absolute"};function qb(){for(var e=arguments.length,t=new Array(e),n=0;n{const a={name:"updateState",enabled:!0,phase:"write",fn:({state:u})=>{const c=EA(u);Object.assign(r.value,c)},requires:["computeStyles"]},o=w(()=>{const{onFirstUpdate:u,placement:c,strategy:d,modifiers:f}=i(n);return{onFirstUpdate:u,placement:c||"bottom",strategy:d||"absolute",modifiers:[...f||[],a,{name:"applyStyles",enabled:!1}]}}),s=Xt(),r=M({styles:{popper:{position:i(o).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),l=()=>{s.value&&(s.value.destroy(),s.value=void 0)};return le(o,u=>{const c=i(s);c&&c.setOptions(u)},{deep:!0}),le([e,t],([u,c])=>{l(),!(!u||!c)&&(s.value=CA(u,c,i(o)))}),Bt(()=>{l()}),{state:w(()=>({...i(s)?.state||{}})),styles:w(()=>i(r).styles),attributes:w(()=>i(r).attributes),update:()=>i(s)?.update(),forceUpdate:()=>i(s)?.forceUpdate(),instanceRef:w(()=>i(s))}};function EA(e){const t=Object.keys(e.elements);return{styles:fl(t.map(n=>[n,e.styles[n]||{}])),attributes:fl(t.map(n=>[n,e.attributes[n]]))}}const Yv=e=>{if(!e)return{onClick:Dt,onMousedown:Dt,onMouseup:Dt};let t=!1,n=!1;return{onClick:r=>{t&&n&&e(r),t=n=!1},onMousedown:r=>{t=r.target===r.currentTarget},onMouseup:r=>{n=r.target===r.currentTarget}}},xA=(e,t=0)=>{if(t===0)return e;const n=M(ot(t)&&!!t.initVal);let a=null;const o=r=>{if(Tt(r)){n.value=e.value;return}a&&clearTimeout(a),a=setTimeout(()=>{n.value=e.value},r)},s=r=>{r==="leading"?He(t)?o(t):o(t.leading):ot(t)?o(t.trailing):n.value=!1};return ht(()=>s("leading")),le(()=>e.value,r=>{s(r?"leading":"trailing")}),n};function Yb(){let e;const t=(a,o)=>{n(),e=window.setTimeout(a,o)},n=()=>window.clearTimeout(e);return Ir(()=>n()),{registerTimeout:t,cancelTimeout:n}}const Vp={prefix:Math.floor(Math.random()*1e4),current:0},TA=Symbol("elIdInjection"),Gv=()=>ft()?_e(TA,Vp):Vp,zn=e=>{const t=Gv();!Mt&&t===Vp&&pt("IdInjection",`Looks like you are using server rendering, you must provide a id provider to ensure the hydration process to be succeed -usage: app.provide(ID_INJECTION_KEY, { - prefix: number, - current: number, -})`);const n=Dv();return VS(()=>i(e)||`${n.value}-id-${t.prefix}-${t.current++}`)};let jr=[];const Gb=e=>{jt(e)===we.esc&&jr.forEach(t=>t(e))},$A=e=>{ht(()=>{jr.length===0&&document.addEventListener("keydown",Gb),Mt&&jr.push(e)}),Bt(()=>{jr=jr.filter(t=>t!==e),jr.length===0&&Mt&&document.removeEventListener("keydown",Gb)})},mC=()=>{const e=Dv(),t=Gv(),n=w(()=>`${e.value}-popper-container-${t.prefix}`);return{id:n,selector:w(()=>`#${n.value}`)}},OA=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},RA=()=>{const{id:e,selector:t}=mC();return Pd(()=>{Mt&&(document.body.querySelector(t.value)||OA(e.value))}),{id:e,selector:t}},NA=Ce({showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0}}),IA=({showAfter:e,hideAfter:t,autoClose:n,open:a,close:o})=>{const{registerTimeout:s}=Yb(),{registerTimeout:r,cancelTimeout:l}=Yb();return{onOpen:(d,f=i(e))=>{s(()=>{a(d);const v=i(n);He(v)&&v>0&&r(()=>{o(d)},v)},f)},onClose:(d,f=i(t))=>{l(),s(()=>{o(d)},f)}}},gC=Symbol("elForwardRef"),PA=e=>{St(gC,{setForwardRef:(n=>{e.value=n})})},MA=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),Xb={current:0},Jb=M(0),bC=2e3,Zb=Symbol("elZIndexContextKey"),yC=Symbol("zIndexContextKey"),uu=e=>{const t=ft()?_e(Zb,Xb):Xb,n=e||(ft()?_e(yC,void 0):void 0),a=w(()=>{const r=i(n);return He(r)?r:bC}),o=w(()=>a.value+Jb.value),s=()=>(t.current++,Jb.value=t.current,o.value);return!Mt&&!_e(Zb)&&pt("ZIndexInjection",`Looks like you are using server rendering, you must provide a z-index provider to ensure the hydration process to be succeed -usage: app.provide(ZINDEX_INJECTION_KEY, { current: 0 })`),{initialZIndex:a,currentZIndex:o,nextZIndex:s}},bl=Math.min,pr=Math.max,Zc=Math.round,Fu=Math.floor,Ro=e=>({x:e,y:e}),_A={left:"right",right:"left",bottom:"top",top:"bottom"};function zp(e,t,n){return pr(e,bl(t,n))}function cu(e,t){return typeof e=="function"?e(t):e}function Cr(e){return e.split("-")[0]}function du(e){return e.split("-")[1]}function wC(e){return e==="x"?"y":"x"}function Xv(e){return e==="y"?"height":"width"}function Ns(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function Jv(e){return wC(Ns(e))}function AA(e,t,n){n===void 0&&(n=!1);const a=du(e),o=Jv(e),s=Xv(o);let r=o==="x"?a===(n?"end":"start")?"right":"left":a==="start"?"bottom":"top";return t.reference[s]>t.floating[s]&&(r=Qc(r)),[r,Qc(r)]}function LA(e){const t=Qc(e);return[Hp(e),t,Hp(t)]}function Hp(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const Qb=["left","right"],ey=["right","left"],DA=["top","bottom"],BA=["bottom","top"];function FA(e,t,n){switch(e){case"top":case"bottom":return n?t?ey:Qb:t?Qb:ey;case"left":case"right":return t?DA:BA;default:return[]}}function VA(e,t,n,a){const o=du(e);let s=FA(Cr(e),n==="start",a);return o&&(s=s.map(r=>r+"-"+o),t&&(s=s.concat(s.map(Hp)))),s}function Qc(e){const t=Cr(e);return _A[t]+e.slice(t.length)}function zA(e){return{top:0,right:0,bottom:0,left:0,...e}}function SC(e){return typeof e!="number"?zA(e):{top:e,right:e,bottom:e,left:e}}function ed(e){const{x:t,y:n,width:a,height:o}=e;return{width:a,height:o,top:n,left:t,right:t+a,bottom:n+o,x:t,y:n}}function ty(e,t,n){let{reference:a,floating:o}=e;const s=Ns(t),r=Jv(t),l=Xv(r),u=Cr(t),c=s==="y",d=a.x+a.width/2-o.width/2,f=a.y+a.height/2-o.height/2,v=a[l]/2-o[l]/2;let g;switch(u){case"top":g={x:d,y:a.y-o.height};break;case"bottom":g={x:d,y:a.y+a.height};break;case"right":g={x:a.x+a.width,y:f};break;case"left":g={x:a.x-o.width,y:f};break;default:g={x:a.x,y:a.y}}switch(du(t)){case"start":g[r]-=v*(n&&c?-1:1);break;case"end":g[r]+=v*(n&&c?-1:1);break}return g}async function CC(e,t){var n;t===void 0&&(t={});const{x:a,y:o,platform:s,rects:r,elements:l,strategy:u}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:f="floating",altBoundary:v=!1,padding:g=0}=cu(t,e),p=SC(g),m=l[v?f==="floating"?"reference":"floating":f],b=ed(await s.getClippingRect({element:(n=await(s.isElement==null?void 0:s.isElement(m)))==null||n?m:m.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(l.floating)),boundary:c,rootBoundary:d,strategy:u})),k=f==="floating"?{x:a,y:o,width:r.floating.width,height:r.floating.height}:r.reference,y=await(s.getOffsetParent==null?void 0:s.getOffsetParent(l.floating)),S=await(s.isElement==null?void 0:s.isElement(y))?await(s.getScale==null?void 0:s.getScale(y))||{x:1,y:1}:{x:1,y:1},C=ed(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:k,offsetParent:y,strategy:u}):k);return{top:(b.top-C.top+p.top)/S.y,bottom:(C.bottom-b.bottom+p.bottom)/S.y,left:(b.left-C.left+p.left)/S.x,right:(C.right-b.right+p.right)/S.x}}const HA=50,KA=async(e,t,n)=>{const{placement:a="bottom",strategy:o="absolute",middleware:s=[],platform:r}=n,l=r.detectOverflow?r:{...r,detectOverflow:CC},u=await(r.isRTL==null?void 0:r.isRTL(t));let c=await r.getElementRects({reference:e,floating:t,strategy:o}),{x:d,y:f}=ty(c,a,u),v=a,g=0;const p={};for(let h=0;h({name:"arrow",options:e,async fn(t){const{x:n,y:a,placement:o,rects:s,platform:r,elements:l,middlewareData:u}=t,{element:c,padding:d=0}=cu(e,t)||{};if(c==null)return{};const f=SC(d),v={x:n,y:a},g=Jv(o),p=Xv(g),h=await r.getDimensions(c),m=g==="y",b=m?"top":"left",k=m?"bottom":"right",y=m?"clientHeight":"clientWidth",S=s.reference[p]+s.reference[g]-v[g]-s.floating[p],C=v[g]-s.reference[g],E=await(r.getOffsetParent==null?void 0:r.getOffsetParent(c));let $=E?E[y]:0;(!$||!await(r.isElement==null?void 0:r.isElement(E)))&&($=l.floating[y]||s.floating[p]);const O=S/2-C/2,N=$/2-h[p]/2-1,R=bl(f[b],N),A=bl(f[k],N),_=R,V=$-h[p]-A,H=$/2-h[p]/2+O,U=zp(_,H,V),W=!u.arrow&&du(o)!=null&&H!==U&&s.reference[p]/2-(H<_?R:A)-h[p]/2<0,P=W?H<_?H-_:H-V:0;return{[g]:v[g]+P,data:{[g]:U,centerOffset:H-U-P,...W&&{alignmentOffset:P}},reset:W}}}),jA=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,a;const{placement:o,middlewareData:s,rects:r,initialPlacement:l,platform:u,elements:c}=t,{mainAxis:d=!0,crossAxis:f=!0,fallbackPlacements:v,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:p="none",flipAlignment:h=!0,...m}=cu(e,t);if((n=s.arrow)!=null&&n.alignmentOffset)return{};const b=Cr(o),k=Ns(l),y=Cr(l)===l,S=await(u.isRTL==null?void 0:u.isRTL(c.floating)),C=v||(y||!h?[Qc(l)]:LA(l)),E=p!=="none";!v&&E&&C.push(...VA(l,h,p,S));const $=[l,...C],O=await u.detectOverflow(t,m),N=[];let R=((a=s.flip)==null?void 0:a.overflows)||[];if(d&&N.push(O[b]),f){const H=AA(o,r,S);N.push(O[H[0]],O[H[1]])}if(R=[...R,{placement:o,overflows:N}],!N.every(H=>H<=0)){var A,_;const H=(((A=s.flip)==null?void 0:A.index)||0)+1,U=$[H];if(U&&(!(f==="alignment"?k!==Ns(U):!1)||R.every(I=>Ns(I.placement)===k?I.overflows[0]>0:!0)))return{data:{index:H,overflows:R},reset:{placement:U}};let W=(_=R.filter(P=>P.overflows[0]<=0).sort((P,I)=>P.overflows[1]-I.overflows[1])[0])==null?void 0:_.placement;if(!W)switch(g){case"bestFit":{var V;const P=(V=R.filter(I=>{if(E){const L=Ns(I.placement);return L===k||L==="y"}return!0}).map(I=>[I.placement,I.overflows.filter(L=>L>0).reduce((L,D)=>L+D,0)]).sort((I,L)=>I[1]-L[1])[0])==null?void 0:V[0];P&&(W=P);break}case"initialPlacement":W=l;break}if(o!==W)return{reset:{placement:W}}}return{}}}},UA=new Set(["left","top"]);async function qA(e,t){const{placement:n,platform:a,elements:o}=e,s=await(a.isRTL==null?void 0:a.isRTL(o.floating)),r=Cr(n),l=du(n),u=Ns(n)==="y",c=UA.has(r)?-1:1,d=s&&u?-1:1,f=cu(t,e);let{mainAxis:v,crossAxis:g,alignmentAxis:p}=typeof f=="number"?{mainAxis:f,crossAxis:0,alignmentAxis:null}:{mainAxis:f.mainAxis||0,crossAxis:f.crossAxis||0,alignmentAxis:f.alignmentAxis};return l&&typeof p=="number"&&(g=l==="end"?p*-1:p),u?{x:g*d,y:v*c}:{x:v*c,y:g*d}}const YA=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,a;const{x:o,y:s,placement:r,middlewareData:l}=t,u=await qA(t,e);return r===((n=l.offset)==null?void 0:n.placement)&&(a=l.arrow)!=null&&a.alignmentOffset?{}:{x:o+u.x,y:s+u.y,data:{...u,placement:r}}}}},GA=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:a,placement:o,platform:s}=t,{mainAxis:r=!0,crossAxis:l=!1,limiter:u={fn:b=>{let{x:k,y}=b;return{x:k,y}}},...c}=cu(e,t),d={x:n,y:a},f=await s.detectOverflow(t,c),v=Ns(Cr(o)),g=wC(v);let p=d[g],h=d[v];if(r){const b=g==="y"?"top":"left",k=g==="y"?"bottom":"right",y=p+f[b],S=p-f[k];p=zp(y,p,S)}if(l){const b=v==="y"?"top":"left",k=v==="y"?"bottom":"right",y=h+f[b],S=h-f[k];h=zp(y,h,S)}const m=u.fn({...t,[g]:p,[v]:h});return{...m,data:{x:m.x-n,y:m.y-a,enabled:{[g]:r,[v]:l}}}}}};function Gd(){return typeof window<"u"}function Ml(e){return kC(e)?(e.nodeName||"").toLowerCase():"#document"}function Ra(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Bo(e){var t;return(t=(kC(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function kC(e){return Gd()?e instanceof Node||e instanceof Ra(e).Node:!1}function to(e){return Gd()?e instanceof Element||e instanceof Ra(e).Element:!1}function vs(e){return Gd()?e instanceof HTMLElement||e instanceof Ra(e).HTMLElement:!1}function ny(e){return!Gd()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof Ra(e).ShadowRoot}function fu(e){const{overflow:t,overflowX:n,overflowY:a,display:o}=no(e);return/auto|scroll|overlay|hidden|clip/.test(t+a+n)&&o!=="inline"&&o!=="contents"}function XA(e){return/^(table|td|th)$/.test(Ml(e))}function Xd(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const JA=/transform|translate|scale|rotate|perspective|filter/,ZA=/paint|layout|strict|content/,Xs=e=>!!e&&e!=="none";let zf;function Zv(e){const t=to(e)?no(e):e;return Xs(t.transform)||Xs(t.translate)||Xs(t.scale)||Xs(t.rotate)||Xs(t.perspective)||!Qv()&&(Xs(t.backdropFilter)||Xs(t.filter))||JA.test(t.willChange||"")||ZA.test(t.contain||"")}function QA(e){let t=Ds(e);for(;vs(t)&&!yl(t);){if(Zv(t))return t;if(Xd(t))return null;t=Ds(t)}return null}function Qv(){return zf==null&&(zf=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),zf}function yl(e){return/^(html|body|#document)$/.test(Ml(e))}function no(e){return Ra(e).getComputedStyle(e)}function Jd(e){return to(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Ds(e){if(Ml(e)==="html")return e;const t=e.assignedSlot||e.parentNode||ny(e)&&e.host||Bo(e);return ny(t)?t.host:t}function EC(e){const t=Ds(e);return yl(t)?e.ownerDocument?e.ownerDocument.body:e.body:vs(t)&&fu(t)?t:EC(t)}function Pi(e,t,n){var a;t===void 0&&(t=[]),n===void 0&&(n=!0);const o=EC(e),s=o===((a=e.ownerDocument)==null?void 0:a.body),r=Ra(o);if(s){const l=Kp(r);return t.concat(r,r.visualViewport||[],fu(o)?o:[],l&&n?Pi(l):[])}else return t.concat(o,Pi(o,[],n))}function Kp(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function xC(e){const t=no(e);let n=parseFloat(t.width)||0,a=parseFloat(t.height)||0;const o=vs(e),s=o?e.offsetWidth:n,r=o?e.offsetHeight:a,l=Zc(n)!==s||Zc(a)!==r;return l&&(n=s,a=r),{width:n,height:a,$:l}}function em(e){return to(e)?e:e.contextElement}function nl(e){const t=em(e);if(!vs(t))return Ro(1);const n=t.getBoundingClientRect(),{width:a,height:o,$:s}=xC(t);let r=(s?Zc(n.width):n.width)/a,l=(s?Zc(n.height):n.height)/o;return(!r||!Number.isFinite(r))&&(r=1),(!l||!Number.isFinite(l))&&(l=1),{x:r,y:l}}const e4=Ro(0);function TC(e){const t=Ra(e);return!Qv()||!t.visualViewport?e4:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function t4(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==Ra(e)?!1:t}function kr(e,t,n,a){t===void 0&&(t=!1),n===void 0&&(n=!1);const o=e.getBoundingClientRect(),s=em(e);let r=Ro(1);t&&(a?to(a)&&(r=nl(a)):r=nl(e));const l=t4(s,n,a)?TC(s):Ro(0);let u=(o.left+l.x)/r.x,c=(o.top+l.y)/r.y,d=o.width/r.x,f=o.height/r.y;if(s){const v=Ra(s),g=a&&to(a)?Ra(a):a;let p=v,h=Kp(p);for(;h&&a&&g!==p;){const m=nl(h),b=h.getBoundingClientRect(),k=no(h),y=b.left+(h.clientLeft+parseFloat(k.paddingLeft))*m.x,S=b.top+(h.clientTop+parseFloat(k.paddingTop))*m.y;u*=m.x,c*=m.y,d*=m.x,f*=m.y,u+=y,c+=S,p=Ra(h),h=Kp(p)}}return ed({width:d,height:f,x:u,y:c})}function Zd(e,t){const n=Jd(e).scrollLeft;return t?t.left+n:kr(Bo(e)).left+n}function $C(e,t){const n=e.getBoundingClientRect(),a=n.left+t.scrollLeft-Zd(e,n),o=n.top+t.scrollTop;return{x:a,y:o}}function n4(e){let{elements:t,rect:n,offsetParent:a,strategy:o}=e;const s=o==="fixed",r=Bo(a),l=t?Xd(t.floating):!1;if(a===r||l&&s)return n;let u={scrollLeft:0,scrollTop:0},c=Ro(1);const d=Ro(0),f=vs(a);if((f||!f&&!s)&&((Ml(a)!=="body"||fu(r))&&(u=Jd(a)),f)){const g=kr(a);c=nl(a),d.x=g.x+a.clientLeft,d.y=g.y+a.clientTop}const v=r&&!f&&!s?$C(r,u):Ro(0);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-u.scrollLeft*c.x+d.x+v.x,y:n.y*c.y-u.scrollTop*c.y+d.y+v.y}}function a4(e){return Array.from(e.getClientRects())}function o4(e){const t=Bo(e),n=Jd(e),a=e.ownerDocument.body,o=pr(t.scrollWidth,t.clientWidth,a.scrollWidth,a.clientWidth),s=pr(t.scrollHeight,t.clientHeight,a.scrollHeight,a.clientHeight);let r=-n.scrollLeft+Zd(e);const l=-n.scrollTop;return no(a).direction==="rtl"&&(r+=pr(t.clientWidth,a.clientWidth)-o),{width:o,height:s,x:r,y:l}}const ay=25;function s4(e,t){const n=Ra(e),a=Bo(e),o=n.visualViewport;let s=a.clientWidth,r=a.clientHeight,l=0,u=0;if(o){s=o.width,r=o.height;const d=Qv();(!d||d&&t==="fixed")&&(l=o.offsetLeft,u=o.offsetTop)}const c=Zd(a);if(c<=0){const d=a.ownerDocument,f=d.body,v=getComputedStyle(f),g=d.compatMode==="CSS1Compat"&&parseFloat(v.marginLeft)+parseFloat(v.marginRight)||0,p=Math.abs(a.clientWidth-f.clientWidth-g);p<=ay&&(s-=p)}else c<=ay&&(s+=c);return{width:s,height:r,x:l,y:u}}function r4(e,t){const n=kr(e,!0,t==="fixed"),a=n.top+e.clientTop,o=n.left+e.clientLeft,s=vs(e)?nl(e):Ro(1),r=e.clientWidth*s.x,l=e.clientHeight*s.y,u=o*s.x,c=a*s.y;return{width:r,height:l,x:u,y:c}}function oy(e,t,n){let a;if(t==="viewport")a=s4(e,n);else if(t==="document")a=o4(Bo(e));else if(to(t))a=r4(t,n);else{const o=TC(e);a={x:t.x-o.x,y:t.y-o.y,width:t.width,height:t.height}}return ed(a)}function OC(e,t){const n=Ds(e);return n===t||!to(n)||yl(n)?!1:no(n).position==="fixed"||OC(n,t)}function l4(e,t){const n=t.get(e);if(n)return n;let a=Pi(e,[],!1).filter(l=>to(l)&&Ml(l)!=="body"),o=null;const s=no(e).position==="fixed";let r=s?Ds(e):e;for(;to(r)&&!yl(r);){const l=no(r),u=Zv(r);!u&&l.position==="fixed"&&(o=null),(s?!u&&!o:!u&&l.position==="static"&&!!o&&(o.position==="absolute"||o.position==="fixed")||fu(r)&&!u&&OC(e,r))?a=a.filter(d=>d!==r):o=l,r=Ds(r)}return t.set(e,a),a}function i4(e){let{element:t,boundary:n,rootBoundary:a,strategy:o}=e;const r=[...n==="clippingAncestors"?Xd(t)?[]:l4(t,this._c):[].concat(n),a],l=oy(t,r[0],o);let u=l.top,c=l.right,d=l.bottom,f=l.left;for(let v=1;v{r(!1,1e-7)},1e3)}$===1&&!NC(c,e.getBoundingClientRect())&&r(),S=!1}try{n=new IntersectionObserver(C,{...y,root:o.ownerDocument})}catch{n=new IntersectionObserver(C,y)}n.observe(e)}return r(!0),s}function v4(e,t,n,a){a===void 0&&(a={});const{ancestorScroll:o=!0,ancestorResize:s=!0,elementResize:r=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:u=!1}=a,c=em(e),d=o||s?[...c?Pi(c):[],...t?Pi(t):[]]:[];d.forEach(b=>{o&&b.addEventListener("scroll",n,{passive:!0}),s&&b.addEventListener("resize",n)});const f=c&&l?h4(c,n):null;let v=-1,g=null;r&&(g=new ResizeObserver(b=>{let[k]=b;k&&k.target===c&&g&&t&&(g.unobserve(t),cancelAnimationFrame(v),v=requestAnimationFrame(()=>{var y;(y=g)==null||y.observe(t)})),n()}),c&&!u&&g.observe(c),t&&g.observe(t));let p,h=u?kr(e):null;u&&m();function m(){const b=kr(e);h&&!NC(h,b)&&n(),h=b,p=requestAnimationFrame(m)}return n(),()=>{var b;d.forEach(k=>{o&&k.removeEventListener("scroll",n),s&&k.removeEventListener("resize",n)}),f?.(),(b=g)==null||b.disconnect(),g=null,u&&cancelAnimationFrame(p)}}const m4=CC,g4=YA,b4=GA,y4=jA,w4=WA,S4=(e,t,n)=>{const a=new Map,o={platform:p4,...n},s={...o.platform,_c:a};return KA(e,t,{...o,platform:s})};function C4(e){let t;function n(){if(e.value==null)return;const{selectionStart:o,selectionEnd:s,value:r}=e.value;o==null||s==null||(t={selectionStart:o,selectionEnd:s,value:r,beforeTxt:r.slice(0,Math.max(0,o)),afterTxt:r.slice(Math.max(0,s))})}function a(){if(e.value==null||t==null)return;const{value:o}=e.value,{beforeTxt:s,afterTxt:r,selectionStart:l}=t;if(s==null||r==null||l==null)return;let u=o.length;if(o.endsWith(r))u=o.length-r.length;else if(o.startsWith(s))u=s.length;else{const c=s[l-1],d=o.indexOf(c,l-1);d!==-1&&(u=d+1)}e.value.setSelectionRange(u,u)}return[n,a]}const k4="utils/vue/vnode";let ja=(function(e){return e[e.TEXT=1]="TEXT",e[e.CLASS=2]="CLASS",e[e.STYLE=4]="STYLE",e[e.PROPS=8]="PROPS",e[e.FULL_PROPS=16]="FULL_PROPS",e[e.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",e[e.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",e[e.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",e[e.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",e[e.NEED_PATCH=512]="NEED_PATCH",e[e.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",e[e.HOISTED=-1]="HOISTED",e[e.BAIL=-2]="BAIL",e})({});function Wp(e){return Ut(e)&&e.type===Fe}function IC(e){return Ut(e)&&e.type===gn}function E4(e){return Ut(e)&&!Wp(e)&&!IC(e)}const x4=e=>{if(!Ut(e))return pt(k4,"[getNormalizedProps] must be a VNode"),{};const t=e.props||{},n=(Ut(e.type)?e.type.props:void 0)||{},a={};return Object.keys(n).forEach(o=>{Nt(n[o],"default")&&(a[o]=n[o].default)}),Object.keys(t).forEach(o=>{a[Fn(o)]=t[o]}),a},Ta=e=>{const t=ye(e)?e:[e],n=[];return t.forEach(a=>{ye(a)?n.push(...Ta(a)):Ut(a)&&a.component?.subTree?n.push(a,...Ta(a.component.subTree)):Ut(a)&&ye(a.children)?n.push(...Ta(a.children)):Ut(a)&&a.shapeFlag===2?n.push(...Ta(a.type())):n.push(a)}),n},T4=(e,t,n)=>Ta(e.subTree).filter(a=>Ut(a)&&a.type?.name===t&&!!a.component).map(a=>a.component.uid).map(a=>n[a]).filter(a=>!!a),Qd=(e,t)=>{const n=Xt({}),a=Xt([]),o=new WeakMap,s=c=>{n.value[c.uid]=c,oc(n),ht(()=>{const d=c.getVnode().el,f=d.parentNode;if(!o.has(f)){o.set(f,[]);const v=f.insertBefore.bind(f);f.insertBefore=(g,p)=>(o.get(f).some(h=>g===h||p===h)&&oc(n),v(g,p))}o.get(f).push(d)})},r=c=>{delete n.value[c.uid],oc(n);const d=c.getVnode().el,f=d.parentNode,v=o.get(f),g=v.indexOf(d);v.splice(g,1)},l=()=>{a.value=T4(e,t,n.value)},u=c=>c.render();return{children:a,addChild:s,removeChild:r,ChildrenSorter:se({setup(c,{slots:d}){return()=>(l(),d.default?Ye(u,{render:d.default}):null)}})}},Tn=uo({type:String,values:lo,required:!1}),PC=Symbol("size"),MC=()=>{const e=_e(PC,{});return w(()=>i(e.size)||"")};function ms(e,{disabled:t,beforeFocus:n,afterFocus:a,beforeBlur:o,afterBlur:s}={}){const{emit:r}=ft(),l=Xt(),u=M(!1),c=v=>{const g=Ve(n)?n(v):!1;i(t)||u.value||g||(u.value=!0,r("focus",v),a?.())},d=v=>{const g=Ve(o)?o(v):!1;i(t)||v.relatedTarget&&l.value?.contains(v.relatedTarget)||g||(u.value=!1,r("blur",v),s?.())},f=v=>{i(t)||Ri(v.target)||l.value?.contains(document.activeElement)&&l.value!==document.activeElement||e.value?.focus()};return le([l,()=>i(t)],([v,g])=>{v&&(g?v.removeAttribute("tabindex"):v.setAttribute("tabindex","-1"))}),Ft(l,"focus",c,!0),Ft(l,"blur",d,!0),Ft(l,"click",f,!0),{isFocused:u,wrapperRef:l,handleFocus:c,handleBlur:d}}const $4=e=>/([\uAC00-\uD7AF\u3130-\u318F])+/gi.test(e);function pu({afterComposition:e,emit:t}){const n=M(!1),a=l=>{t?.("compositionstart",l),n.value=!0},o=l=>{t?.("compositionupdate",l);const u=l.target?.value;n.value=!$4(u[u.length-1]||"")},s=l=>{t?.("compositionend",l),n.value&&(n.value=!1,Re(()=>e(l)))};return{isComposing:n,handleComposition:l=>{l.type==="compositionend"?s(l):o(l)},handleCompositionStart:a,handleCompositionUpdate:o,handleCompositionEnd:s}}const _C=Symbol("emptyValuesContextKey"),O4="use-empty-values",R4=["",void 0,null],N4=void 0,Pr=Ce({emptyValues:Array,valueOnClear:{type:G([String,Number,Boolean,Function]),default:void 0,validator:e=>(e=Ve(e)?e():e,ye(e)?e.every(t=>!t):!e)}}),hu=(e,t)=>{const n=ft()?_e(_C,M({})):M({}),a=w(()=>e.emptyValues||n.value.emptyValues||R4),o=w(()=>Ve(e.valueOnClear)?e.valueOnClear():e.valueOnClear!==void 0?e.valueOnClear:Ve(n.value.valueOnClear)?n.value.valueOnClear():n.value.valueOnClear!==void 0?n.value.valueOnClear:t!==void 0?t:N4),s=r=>{let l=!0;return ye(r)?l=a.value.some(u=>sn(r,u)):l=a.value.includes(r),l};return s(o.value)||pt(O4,"value-on-clear should be a value of empty-values"),{emptyValues:a,valueOnClear:o,isEmptyValue:s}},I4=Ce({ariaLabel:String,ariaOrientation:{type:String,values:["horizontal","vertical","undefined"]},ariaControls:String}),aa=e=>ss(I4,e),AC=e=>{const t=e.props,n=ye(t)?fl(t.map(a=>[a,{}])):t;e.setPropsDefaults=a=>{if(n){for(const[o,s]of Object.entries(a)){const r=n[o];if(Nt(n,o)){if(Ov(r)){n[o]={...r,default:s};continue}n[o]={type:r,default:s}}}e.props=n}}},rt=(e,t)=>{if(e.install=n=>{for(const a of[e,...Object.values(t??{})])n.component(a.name,a)},t)for(const[n,a]of Object.entries(t))e[n]=a;return AC(e),e},LC=(e,t)=>(e.install=n=>{e._context=n._context,n.config.globalProperties[t]=e},e),P4=(e,t)=>(e.install=n=>{n.directive(t,e)},e),an=e=>(e.install=Dt,AC(e),e);var M4=se({__name:"teleport",props:au,setup(e){return(t,n)=>t.disabled?ee(t.$slots,"default",{key:0}):(x(),oe(LT,{key:1,to:t.to},[ee(t.$slots,"default")],8,["to"]))}}),_4=M4;const _l=rt(_4),ry="ElAffix";var A4=se({name:ry,__name:"affix",props:BM,emits:FM,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("affix"),r=Xt(),l=Xt(),u=Xt(),{height:c}=_v(),{height:d,width:f,top:v,bottom:g,left:p,update:h}=Mb(l,{windowScroll:!1}),m=Mb(r),b=M(!1),k=M(0),y=M(0),S=w(()=>!a.teleported||!b.value),C=w(()=>({display:"flow-root",height:b.value?`${d.value}px`:"",width:b.value?`${f.value}px`:""})),E=w(()=>{if(!b.value)return{};const R=ln(a.offset);return{height:`${d.value}px`,width:`${f.value}px`,top:a.position==="top"?R:"",bottom:a.position==="bottom"?R:"",left:a.teleported?`${p.value}px`:"",transform:y.value?`translateY(${y.value}px)`:"",zIndex:a.zIndex}}),$=()=>{if(!u.value)return;k.value=u.value instanceof Window?document.documentElement.scrollTop:u.value.scrollTop||0;const{position:R,target:A,offset:_}=a,V=_+d.value;if(R==="top")if(A){const H=m.bottom.value-V;b.value=_>v.value&&m.bottom.value>0,y.value=H<0?H:0}else b.value=_>v.value;else if(A){const H=c.value-m.top.value-V;b.value=c.value-_m.top.value,y.value=H<0?-H:0}else b.value=c.value-_{if(!b.value){h();return}b.value=!1,await Re(),h(),b.value=!0},N=async()=>{h(),await Re(),o("scroll",{scrollTop:k.value,fixed:b.value})};return le(b,R=>o(yt,R)),ht(()=>{a.target?(r.value=document.querySelector(a.target)??void 0,r.value||nn(ry,`Target does not exist: ${a.target}`)):r.value=document.documentElement,u.value=Bv(l.value,!0),h()}),Gi(()=>{Re(O)}),sv(()=>{b.value=!1}),Ft(u,"scroll",N),wa($),t({update:$,updateRoot:O}),(R,A)=>(x(),B("div",{ref_key:"root",ref:l,class:T(i(s).b()),style:Ke(C.value)},[Y(i(_l),{disabled:S.value,to:e.appendTo},{default:J(()=>[z("div",{class:T({[i(s).m("fixed")]:b.value}),style:Ke(E.value)},[ee(R.$slots,"default")],6)]),_:3},8,["disabled","to"])],6))}}),L4=A4;const D4=rt(L4);var B4=se({name:"ArrowDown",__name:"arrow-down",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M831.872 340.864 512 652.672 192.128 340.864a30.59 30.59 0 0 0-42.752 0 29.12 29.12 0 0 0 0 41.6L489.664 714.24a32 32 0 0 0 44.672 0l340.288-331.712a29.12 29.12 0 0 0 0-41.728 30.59 30.59 0 0 0-42.752 0z"})]))}}),Fo=B4,F4=se({name:"ArrowLeft",__name:"arrow-left",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M609.408 149.376 277.76 489.6a32 32 0 0 0 0 44.672l331.648 340.352a29.12 29.12 0 0 0 41.728 0 30.59 30.59 0 0 0 0-42.752L339.264 511.936l311.872-319.872a30.59 30.59 0 0 0 0-42.688 29.12 29.12 0 0 0-41.728 0"})]))}}),is=F4,V4=se({name:"ArrowRight",__name:"arrow-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M340.864 149.312a30.59 30.59 0 0 0 0 42.752L652.736 512 340.864 831.872a30.59 30.59 0 0 0 0 42.752 29.12 29.12 0 0 0 41.728 0L714.24 534.336a32 32 0 0 0 0-44.672L382.592 149.376a29.12 29.12 0 0 0-41.728 0z"})]))}}),na=V4,z4=se({name:"ArrowUp",__name:"arrow-up",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m488.832 344.32-339.84 356.672a32 32 0 0 0 0 44.16l.384.384a29.44 29.44 0 0 0 42.688 0l320-335.872 319.872 335.872a29.44 29.44 0 0 0 42.688 0l.384-.384a32 32 0 0 0 0-44.16L535.168 344.32a32 32 0 0 0-46.336 0"})]))}}),ef=z4,H4=se({name:"Back",__name:"back",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M224 480h640a32 32 0 1 1 0 64H224a32 32 0 0 1 0-64"}),z("path",{fill:"currentColor",d:"m237.248 512 265.408 265.344a32 32 0 0 1-45.312 45.312l-288-288a32 32 0 0 1 0-45.312l288-288a32 32 0 1 1 45.312 45.312z"})]))}}),K4=H4,W4=se({name:"Calendar",__name:"calendar",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M128 384v512h768V192H768v32a32 32 0 1 1-64 0v-32H320v32a32 32 0 0 1-64 0v-32H128v128h768v64zm192-256h384V96a32 32 0 1 1 64 0v32h160a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h160V96a32 32 0 0 1 64 0zm-32 384h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 0 1 0 64h-64a32 32 0 0 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m192-192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64m0 192h64a32 32 0 1 1 0 64h-64a32 32 0 1 1 0-64"})]))}}),j4=W4,U4=se({name:"CaretRight",__name:"caret-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M384 192v640l384-320.064z"})]))}}),DC=U4,q4=se({name:"CaretTop",__name:"caret-top",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 320 192 704h639.936z"})]))}}),Y4=q4,G4=se({name:"Check",__name:"check",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M406.656 706.944 195.84 496.256a32 32 0 1 0-45.248 45.248l256 256 512-512a32 32 0 0 0-45.248-45.248L406.592 706.944z"})]))}}),vu=G4,X4=se({name:"CircleCheckFilled",__name:"circle-check-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.27 38.27 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),J4=X4,Z4=se({name:"CircleCheck",__name:"circle-check",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),z("path",{fill:"currentColor",d:"M745.344 361.344a32 32 0 0 1 45.312 45.312l-288 288a32 32 0 0 1-45.312 0l-160-160a32 32 0 1 1 45.312-45.312L480 626.752z"})]))}}),tm=Z4,Q4=se({name:"CircleCloseFilled",__name:"circle-close-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 393.664L407.936 353.6a38.4 38.4 0 1 0-54.336 54.336L457.664 512 353.6 616.064a38.4 38.4 0 1 0 54.336 54.336L512 566.336 616.064 670.4a38.4 38.4 0 1 0 54.336-54.336L566.336 512 670.4 407.936a38.4 38.4 0 1 0-54.336-54.336z"})]))}}),nm=Q4,e3=se({name:"CircleClose",__name:"circle-close",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m466.752 512-90.496-90.496a32 32 0 0 1 45.248-45.248L512 466.752l90.496-90.496a32 32 0 1 1 45.248 45.248L557.248 512l90.496 90.496a32 32 0 1 1-45.248 45.248L512 557.248l-90.496 90.496a32 32 0 0 1-45.248-45.248z"}),z("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"})]))}}),Vo=e3,t3=se({name:"Clock",__name:"clock",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 896a384 384 0 1 0 0-768 384 384 0 0 0 0 768m0 64a448 448 0 1 1 0-896 448 448 0 0 1 0 896"}),z("path",{fill:"currentColor",d:"M480 256a32 32 0 0 1 32 32v256a32 32 0 0 1-64 0V288a32 32 0 0 1 32-32"}),z("path",{fill:"currentColor",d:"M480 512h256q32 0 32 32t-32 32H480q-32 0-32-32t32-32"})]))}}),BC=t3,n3=se({name:"Close",__name:"close",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M764.288 214.592 512 466.88 259.712 214.592a31.936 31.936 0 0 0-45.12 45.12L466.752 512 214.528 764.224a31.936 31.936 0 1 0 45.12 45.184L512 557.184l252.288 252.288a31.936 31.936 0 0 0 45.12-45.12L557.12 512.064l252.288-252.352a31.936 31.936 0 1 0-45.12-45.184z"})]))}}),Ha=n3,a3=se({name:"DArrowLeft",__name:"d-arrow-left",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M529.408 149.376a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L259.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L197.76 534.272a32 32 0 0 1 0-44.672zm256 0a29.12 29.12 0 0 1 41.728 0 30.59 30.59 0 0 1 0 42.688L515.264 511.936l311.872 319.936a30.59 30.59 0 0 1-.512 43.264 29.12 29.12 0 0 1-41.216-.512L453.76 534.272a32 32 0 0 1 0-44.672z"})]))}}),Bs=a3,o3=se({name:"DArrowRight",__name:"d-arrow-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M452.864 149.312a29.12 29.12 0 0 1 41.728.064L826.24 489.664a32 32 0 0 1 0 44.672L494.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L764.736 512 452.864 192a30.59 30.59 0 0 1 0-42.688m-256 0a29.12 29.12 0 0 1 41.728.064L570.24 489.664a32 32 0 0 1 0 44.672L238.592 874.624a29.12 29.12 0 0 1-41.728 0 30.59 30.59 0 0 1 0-42.752L508.736 512 196.864 192a30.59 30.59 0 0 1 0-42.688"})]))}}),Fs=o3,s3=se({name:"Delete",__name:"delete",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M160 256H96a32 32 0 0 1 0-64h256V95.936a32 32 0 0 1 32-32h256a32 32 0 0 1 32 32V192h256a32 32 0 1 1 0 64h-64v672a32 32 0 0 1-32 32H192a32 32 0 0 1-32-32zm448-64v-64H416v64zM224 896h576V256H224zm192-128a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32m192 0a32 32 0 0 1-32-32V416a32 32 0 0 1 64 0v320a32 32 0 0 1-32 32"})]))}}),r3=s3,l3=se({name:"Document",__name:"document",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M832 384H576V128H192v768h640zm-26.496-64L640 154.496V320zM160 64h480l256 256v608a32 32 0 0 1-32 32H160a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32m160 448h384v64H320zm0-192h160v64H320zm0 384h384v64H320z"})]))}}),i3=l3,u3=se({name:"FullScreen",__name:"full-screen",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m160 96.064 192 .192a32 32 0 0 1 0 64l-192-.192V352a32 32 0 0 1-64 0V96h64zm0 831.872V928H96V672a32 32 0 1 1 64 0v191.936l192-.192a32 32 0 1 1 0 64zM864 96.064V96h64v256a32 32 0 1 1-64 0V160.064l-192 .192a32 32 0 1 1 0-64zm0 831.872-192-.192a32 32 0 0 1 0-64l192 .192V672a32 32 0 1 1 64 0v256h-64z"})]))}}),c3=u3,d3=se({name:"Hide",__name:"hide",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M876.8 156.8c0-9.6-3.2-16-9.6-22.4s-12.8-9.6-22.4-9.6-16 3.2-22.4 9.6L736 220.8c-64-32-137.6-51.2-224-60.8-160 16-288 73.6-377.6 176S0 496 0 512s48 73.6 134.4 176c22.4 25.6 44.8 48 73.6 67.2l-86.4 89.6c-6.4 6.4-9.6 12.8-9.6 22.4s3.2 16 9.6 22.4 12.8 9.6 22.4 9.6 16-3.2 22.4-9.6l704-710.4c3.2-6.4 6.4-12.8 6.4-22.4m-646.4 528Q115.2 579.2 76.8 512q43.2-72 153.6-172.8C304 272 400 230.4 512 224c64 3.2 124.8 19.2 176 44.8l-54.4 54.4C598.4 300.8 560 288 512 288c-64 0-115.2 22.4-160 64s-64 96-64 160c0 48 12.8 89.6 35.2 124.8L256 707.2c-9.6-6.4-19.2-16-25.6-22.4m140.8-96Q352 555.2 352 512c0-44.8 16-83.2 48-112s67.2-48 112-48c28.8 0 54.4 6.4 73.6 19.2zM889.599 336c-12.8-16-28.8-28.8-41.6-41.6l-48 48c73.6 67.2 124.8 124.8 150.4 169.6q-43.2 72-153.6 172.8c-73.6 67.2-172.8 108.8-284.8 115.2-51.2-3.2-99.2-12.8-140.8-28.8l-48 48c57.6 22.4 118.4 38.4 188.8 44.8 160-16 288-73.6 377.6-176S1024 528 1024 512s-48.001-73.6-134.401-176"}),z("path",{fill:"currentColor",d:"M511.998 672c-12.8 0-25.6-3.2-38.4-6.4l-51.2 51.2c28.8 12.8 57.6 19.2 89.6 19.2 64 0 115.2-22.4 160-64 41.6-41.6 64-96 64-160 0-32-6.4-64-19.2-89.6l-51.2 51.2c3.2 12.8 6.4 25.6 6.4 38.4 0 44.8-16 83.2-48 112s-67.2 48-112 48"})]))}}),f3=d3,p3=se({name:"InfoFilled",__name:"info-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896.064A448 448 0 0 1 512 64m67.2 275.072c33.28 0 60.288-23.104 60.288-57.344s-27.072-57.344-60.288-57.344c-33.28 0-60.16 23.104-60.16 57.344s26.88 57.344 60.16 57.344M590.912 699.2c0-6.848 2.368-24.64 1.024-34.752l-52.608 60.544c-10.88 11.456-24.512 19.392-30.912 17.28a12.99 12.99 0 0 1-8.256-14.72l87.68-276.992c7.168-35.136-12.544-67.2-54.336-71.296-44.096 0-108.992 44.736-148.48 101.504 0 6.784-1.28 23.68.064 33.792l52.544-60.608c10.88-11.328 23.552-19.328 29.952-17.152a12.8 12.8 0 0 1 7.808 16.128L388.48 728.576c-10.048 32.256 8.96 63.872 55.04 71.04 67.84 0 107.904-43.648 147.456-100.416z"})]))}}),Mi=p3,h3=se({name:"Loading",__name:"loading",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a32 32 0 0 1 32 32v192a32 32 0 0 1-64 0V96a32 32 0 0 1 32-32m0 640a32 32 0 0 1 32 32v192a32 32 0 1 1-64 0V736a32 32 0 0 1 32-32m448-192a32 32 0 0 1-32 32H736a32 32 0 1 1 0-64h192a32 32 0 0 1 32 32m-640 0a32 32 0 0 1-32 32H96a32 32 0 0 1 0-64h192a32 32 0 0 1 32 32M195.2 195.2a32 32 0 0 1 45.248 0L376.32 331.008a32 32 0 0 1-45.248 45.248L195.2 240.448a32 32 0 0 1 0-45.248m452.544 452.544a32 32 0 0 1 45.248 0L828.8 783.552a32 32 0 0 1-45.248 45.248L647.744 692.992a32 32 0 0 1 0-45.248M828.8 195.264a32 32 0 0 1 0 45.184L692.992 376.32a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0m-452.544 452.48a32 32 0 0 1 0 45.248L240.448 828.8a32 32 0 0 1-45.248-45.248l135.808-135.808a32 32 0 0 1 45.248 0"})]))}}),Ao=h3,v3=se({name:"Minus",__name:"minus",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M128 544h768a32 32 0 1 0 0-64H128a32 32 0 0 0 0 64"})]))}}),m3=v3,g3=se({name:"MoreFilled",__name:"more-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M176 416a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224m336 0a112 112 0 1 1 0 224 112 112 0 0 1 0-224"})]))}}),ly=g3,b3=se({name:"More",__name:"more",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M176 416a112 112 0 1 0 0 224 112 112 0 0 0 0-224m0 64a48 48 0 1 1 0 96 48 48 0 0 1 0-96m336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224m0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96m336-64a112 112 0 1 1 0 224 112 112 0 0 1 0-224m0 64a48 48 0 1 0 0 96 48 48 0 0 0 0-96"})]))}}),y3=b3,w3=se({name:"PictureFilled",__name:"picture-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M96 896a32 32 0 0 1-32-32V160a32 32 0 0 1 32-32h832a32 32 0 0 1 32 32v704a32 32 0 0 1-32 32zm315.52-228.48-68.928-68.928a32 32 0 0 0-45.248 0L128 768.064h778.688l-242.112-290.56a32 32 0 0 0-49.216 0L458.752 665.408a32 32 0 0 1-47.232 2.112M256 384a96 96 0 1 0 192.064-.064A96 96 0 0 0 256 384"})]))}}),S3=w3,C3=se({name:"Plus",__name:"plus",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M480 480V128a32 32 0 0 1 64 0v352h352a32 32 0 1 1 0 64H544v352a32 32 0 1 1-64 0V544H128a32 32 0 0 1 0-64z"})]))}}),FC=C3,k3=se({name:"QuestionFilled",__name:"question-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m23.744 191.488c-52.096 0-92.928 14.784-123.2 44.352-30.976 29.568-45.76 70.4-45.76 122.496h80.256c0-29.568 5.632-52.8 17.6-68.992 13.376-19.712 35.2-28.864 66.176-28.864 23.936 0 42.944 6.336 56.32 19.712 12.672 13.376 19.712 31.68 19.712 54.912 0 17.6-6.336 34.496-19.008 49.984l-8.448 9.856c-45.76 40.832-73.216 70.4-82.368 89.408-9.856 19.008-14.08 42.24-14.08 68.992v9.856h80.96v-9.856c0-16.896 3.52-31.68 10.56-45.76 6.336-12.672 15.488-24.64 28.16-35.2 33.792-29.568 54.208-48.576 60.544-55.616 16.896-22.528 26.048-51.392 26.048-86.592q0-64.416-42.24-101.376c-28.16-25.344-65.472-37.312-111.232-37.312m-12.672 406.208a54.27 54.27 0 0 0-38.72 14.784 49.4 49.4 0 0 0-15.488 38.016c0 15.488 4.928 28.16 15.488 38.016A54.85 54.85 0 0 0 523.072 768c15.488 0 28.16-4.928 38.72-14.784a51.52 51.52 0 0 0 16.192-38.72 51.97 51.97 0 0 0-15.488-38.016 55.94 55.94 0 0 0-39.424-14.784"})]))}}),E3=k3,x3=se({name:"RefreshLeft",__name:"refresh-left",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M289.088 296.704h92.992a32 32 0 0 1 0 64H232.96a32 32 0 0 1-32-32V179.712a32 32 0 0 1 64 0v50.56a384 384 0 0 1 643.84 282.88 384 384 0 0 1-383.936 384 384 384 0 0 1-384-384h64a320 320 0 1 0 640 0 320 320 0 0 0-555.712-216.448z"})]))}}),T3=x3,$3=se({name:"RefreshRight",__name:"refresh-right",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M784.512 230.272v-50.56a32 32 0 1 1 64 0v149.056a32 32 0 0 1-32 32H667.52a32 32 0 1 1 0-64h92.992A320 320 0 1 0 524.8 833.152a320 320 0 0 0 320-320h64a384 384 0 0 1-384 384 384 384 0 0 1-384-384 384 384 0 0 1 643.712-282.88"})]))}}),O3=$3,R3=se({name:"ScaleToOriginal",__name:"scale-to-original",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M813.176 180.706a60.235 60.235 0 0 1 60.236 60.235v481.883a60.235 60.235 0 0 1-60.236 60.235H210.824a60.235 60.235 0 0 1-60.236-60.235V240.94a60.235 60.235 0 0 1 60.236-60.235h602.352zm0-60.235H210.824A120.47 120.47 0 0 0 90.353 240.94v481.883a120.47 120.47 0 0 0 120.47 120.47h602.353a120.47 120.47 0 0 0 120.471-120.47V240.94a120.47 120.47 0 0 0-120.47-120.47zm-120.47 180.705a30.12 30.12 0 0 0-30.118 30.118v301.177a30.118 30.118 0 0 0 60.236 0V331.294a30.12 30.12 0 0 0-30.118-30.118m-361.412 0a30.12 30.12 0 0 0-30.118 30.118v301.177a30.118 30.118 0 1 0 60.236 0V331.294a30.12 30.12 0 0 0-30.118-30.118M512 361.412a30.12 30.12 0 0 0-30.118 30.117v30.118a30.118 30.118 0 0 0 60.236 0V391.53A30.12 30.12 0 0 0 512 361.412M512 512a30.12 30.12 0 0 0-30.118 30.118v30.117a30.118 30.118 0 0 0 60.236 0v-30.117A30.12 30.12 0 0 0 512 512"})]))}}),N3=R3,I3=se({name:"Search",__name:"search",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704"})]))}}),P3=I3,M3=se({name:"SortDown",__name:"sort-down",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M576 96v709.568L333.312 562.816A32 32 0 1 0 288 608l297.408 297.344A32 32 0 0 0 640 882.688V96a32 32 0 0 0-64 0"})]))}}),_3=M3,A3=se({name:"SortUp",__name:"sort-up",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M384 141.248V928a32 32 0 1 0 64 0V218.56l242.688 242.688A32 32 0 1 0 736 416L438.592 118.656A32 32 0 0 0 384 141.248"})]))}}),L3=A3,D3=se({name:"StarFilled",__name:"star-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M313.6 924.48a70.4 70.4 0 0 1-74.152-5.365 70.4 70.4 0 0 1-27.992-68.875l37.888-220.928L88.96 472.96a70.4 70.4 0 0 1 3.788-104.225A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 100.246-28.595 70.4 70.4 0 0 1 25.962 28.595l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),Vu=D3,B3=se({name:"Star",__name:"star",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m512 747.84 228.16 119.936a6.4 6.4 0 0 0 9.28-6.72l-43.52-254.08 184.512-179.904a6.4 6.4 0 0 0-3.52-10.88l-255.104-37.12L517.76 147.904a6.4 6.4 0 0 0-11.52 0L392.192 379.072l-255.104 37.12a6.4 6.4 0 0 0-3.52 10.88L318.08 606.976l-43.584 254.08a6.4 6.4 0 0 0 9.28 6.72zM313.6 924.48a70.4 70.4 0 0 1-102.144-74.24l37.888-220.928L88.96 472.96A70.4 70.4 0 0 1 128 352.896l221.76-32.256 99.2-200.96a70.4 70.4 0 0 1 126.208 0l99.2 200.96 221.824 32.256a70.4 70.4 0 0 1 39.04 120.064L774.72 629.376l37.888 220.928a70.4 70.4 0 0 1-102.144 74.24L512 820.096l-198.4 104.32z"})]))}}),F3=B3,V3=se({name:"SuccessFilled",__name:"success-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m-55.808 536.384-99.52-99.584a38.4 38.4 0 1 0-54.336 54.336l126.72 126.72a38.27 38.27 0 0 0 54.336 0l262.4-262.464a38.4 38.4 0 1 0-54.272-54.336z"})]))}}),VC=V3,z3=se({name:"View",__name:"view",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 160c320 0 512 352 512 352S832 864 512 864 0 512 0 512s192-352 512-352m0 64c-225.28 0-384.128 208.064-436.8 288 52.608 79.872 211.456 288 436.8 288 225.28 0 384.128-208.064 436.8-288-52.608-79.872-211.456-288-436.8-288m0 64a224 224 0 1 1 0 448 224 224 0 0 1 0-448m0 64a160.19 160.19 0 0 0-160 160c0 88.192 71.744 160 160 160s160-71.808 160-160-71.744-160-160-160"})]))}}),H3=z3,K3=se({name:"WarningFilled",__name:"warning-filled",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"M512 64a448 448 0 1 1 0 896 448 448 0 0 1 0-896m0 192a58.43 58.43 0 0 0-58.24 63.744l23.36 256.384a35.072 35.072 0 0 0 69.76 0l23.296-256.384A58.43 58.43 0 0 0 512 256m0 512a51.2 51.2 0 1 0 0-102.4 51.2 51.2 0 0 0 0 102.4"})]))}}),tf=K3,W3=se({name:"ZoomIn",__name:"zoom-in",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704m-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64z"})]))}}),zC=W3,j3=se({name:"ZoomOut",__name:"zoom-out",setup(e){return(t,n)=>(x(),B("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 1024 1024"},[z("path",{fill:"currentColor",d:"m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704M352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64"})]))}}),U3=j3;const Kt=G([String,Object,Function]),HC={Close:Ha},am={Close:Ha,SuccessFilled:VC,InfoFilled:Mi,WarningFilled:tf,CircleCloseFilled:nm},Vs={primary:Mi,success:VC,warning:tf,error:nm,info:Mi},nf={validating:Ao,success:tm,error:Vo},q3=["light","dark"],Y3=Ce({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:Oi(Vs),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:q3,default:"light"}}),G3={close:e=>e instanceof MouseEvent},X3=Ce({size:{type:G([Number,String])},color:{type:String}});var J3=se({name:"ElIcon",inheritAttrs:!1,__name:"icon",props:X3,setup(e){const t=e,n=fe("icon"),a=w(()=>{const{size:o,color:s}=t,r=ln(o);return!r&&!s?{}:{fontSize:r,"--color":s}});return(o,s)=>(x(),B("i",dt({class:i(n).b(),style:a.value},o.$attrs),[ee(o.$slots,"default")],16))}}),Z3=J3;const De=rt(Z3);var Q3=se({name:"ElAlert",__name:"alert",props:Y3,emits:G3,setup(e,{emit:t}){const{Close:n}=am,a=e,o=t,s=vn(),r=fe("alert"),l=M(!0),u=w(()=>Vs[a.type]),c=w(()=>{if(a.description)return!0;const f=s.default?.();return f?Ta(f).some(v=>!IC(v)):!1}),d=f=>{l.value=!1,o("close",f)};return(f,v)=>(x(),oe(Vn,{name:i(r).b("fade"),persisted:""},{default:J(()=>[ut(z("div",{class:T([i(r).b(),i(r).m(e.type),i(r).is("center",e.center),i(r).is(e.effect)]),role:"alert"},[e.showIcon&&(f.$slots.icon||u.value)?(x(),oe(i(De),{key:0,class:T([i(r).e("icon"),i(r).is("big",c.value)])},{default:J(()=>[ee(f.$slots,"icon",{},()=>[(x(),oe(it(u.value)))])]),_:3},8,["class"])):te("v-if",!0),z("div",{class:T(i(r).e("content"))},[e.title||f.$slots.title?(x(),B("span",{key:0,class:T([i(r).e("title"),{"with-description":c.value}])},[ee(f.$slots,"title",{},()=>[wt(Se(e.title),1)])],2)):te("v-if",!0),c.value?(x(),B("p",{key:1,class:T(i(r).e("description"))},[ee(f.$slots,"default",{},()=>[wt(Se(e.description),1)])],2)):te("v-if",!0),e.closable?(x(),B(Fe,{key:2},[e.closeText?(x(),B("div",{key:0,class:T([i(r).e("close-btn"),i(r).is("customed")]),onClick:d},Se(e.closeText),3)):(x(),oe(i(De),{key:1,class:T(i(r).e("close-btn")),onClick:d},{default:J(()=>[Y(i(n))]),_:1},8,["class"]))],64)):te("v-if",!0)],2)],2),[[Pt,l.value]])]),_:3},8,["name"]))}}),eL=Q3;const tL=rt(eL),KC=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],WC=Ce({role:{type:String,values:KC,default:"tooltip"}}),om=Symbol("popper"),jC=Symbol("popperContent");var nL=se({name:"ElPopperArrow",inheritAttrs:!1,__name:"arrow",setup(e,{expose:t}){const n=fe("popper"),{arrowRef:a,arrowStyle:o}=_e(jC,void 0);return Bt(()=>{a.value=void 0}),t({arrowRef:a}),(s,r)=>(x(),B("span",{ref_key:"arrowRef",ref:a,class:T(i(n).e("arrow")),style:Ke(i(o)),"data-popper-arrow":""},null,6))}}),aL=nL;const UC=Ce({virtualRef:{type:G(Object)},virtualTriggering:Boolean,onMouseenter:{type:G(Function)},onMouseleave:{type:G(Function)},onClick:{type:G(Function)},onKeydown:{type:G(Function)},onFocus:{type:G(Function)},onBlur:{type:G(Function)},onContextmenu:{type:G(Function)},id:String,open:Boolean}),Kf="ElOnlyChild",qC=se({name:Kf,setup(e,{slots:t,attrs:n}){const a=MA(_e(gC)?.setForwardRef??Dt);return()=>{const o=t.default?.(n);if(!o)return null;const[s,r]=YC(o);return s?(r>1&&pt(Kf,"requires exact only one valid child."),ut(Io(s,n),[[a]])):(pt(Kf,"no valid child node found"),null)}}});function YC(e){if(!e)return[null,0];const t=e,n=t.filter(a=>a.type!==gn).length;for(const a of t){if(ot(a))switch(a.type){case gn:continue;case Ol:case"svg":return[iy(a),n];case Fe:return YC(a.children);default:return[a,n]}return[iy(a),n]}return[null,0]}function iy(e){const t=fe("only-child");return Y("span",{class:t.e("content")},[e])}var oL=se({name:"ElPopperTrigger",inheritAttrs:!1,__name:"trigger",props:UC,setup(e,{expose:t}){const n=e,{role:a,triggerRef:o}=_e(om,void 0);PA(o);const s=w(()=>l.value?n.id:void 0),r=w(()=>{if(a&&a.value==="tooltip")return n.open&&n.id?n.id:void 0}),l=w(()=>{if(a&&a.value!=="tooltip")return a.value}),u=w(()=>l.value?`${n.open}`:void 0);let c;const d=["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"];return ht(()=>{le(()=>n.virtualRef,f=>{f&&(o.value=xn(f))},{immediate:!0}),le(o,(f,v)=>{c?.(),c=void 0,ha(v)&&d.forEach(g=>{const p=n[g];p&&v.removeEventListener(g.slice(2).toLowerCase(),p,["onFocus","onBlur"].includes(g))}),ha(f)&&(d.forEach(g=>{const p=n[g];p&&f.addEventListener(g.slice(2).toLowerCase(),p,["onFocus","onBlur"].includes(g))}),Ri(f)&&(c=le([s,r,l,u],g=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((p,h)=>{bn(g[h])?f.removeAttribute(p):f.setAttribute(p,g[h])})},{immediate:!0}))),ha(v)&&Ri(v)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(g=>v.removeAttribute(g))},{immediate:!0})}),Bt(()=>{if(c?.(),c=void 0,o.value&&ha(o.value)){const f=o.value;d.forEach(v=>{const g=n[v];g&&f.removeEventListener(v.slice(2).toLowerCase(),g,["onFocus","onBlur"].includes(v))}),o.value=void 0}}),t({triggerRef:o}),(f,v)=>e.virtualTriggering?te("v-if",!0):(x(),oe(i(qC),dt({key:0},f.$attrs,{"aria-controls":s.value,"aria-describedby":r.value,"aria-expanded":u.value,"aria-haspopup":l.value}),{default:J(()=>[ee(f.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}}),sL=oL;const GC=Ce({arrowOffset:{type:Number,default:5}}),rL=["fixed","absolute"],lL=Ce({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:G(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:Do,default:"bottom"},popperOptions:{type:G(Object),default:()=>({})},strategy:{type:String,values:rL,default:"absolute"}}),XC=Ce({...lL,...GC,id:String,style:{type:G([String,Array,Object])},className:{type:G([String,Array,Object])},effect:{type:G(String),default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:Boolean,trapping:Boolean,popperClass:{type:G([String,Array,Object])},popperStyle:{type:G([String,Array,Object])},referenceEl:{type:G(Object)},triggerTargetEl:{type:G(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},virtualTriggering:Boolean,zIndex:Number,...aa(["ariaLabel"]),loop:Boolean}),iL={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},uL=Ce({size:{type:String,values:lo},disabled:Boolean}),cL=Ce({...uL,model:Object,rules:{type:G(Object)},labelPosition:{type:String,values:["left","right","top"],default:"right"},requireAsteriskPosition:{type:String,values:["left","right"],default:"left"},labelWidth:{type:[String,Number],default:""},labelSuffix:{type:String,default:""},inline:Boolean,inlineMessage:Boolean,statusIcon:Boolean,showMessage:{type:Boolean,default:!0},validateOnRuleChange:{type:Boolean,default:!0},hideRequiredAsterisk:Boolean,scrollToError:Boolean,scrollIntoViewOptions:{type:G([Object,Boolean]),default:!0}}),dL={validate:(e,t,n)=>(ye(e)||Le(e))&&Ht(t)&&Le(n)},Mr=Symbol("formContextKey"),Lo=Symbol("formItemContextKey"),Cn=(e,t={})=>{const n=M(void 0),a=t.prop?n:aC("size"),o=t.global?n:MC(),s=t.form?{size:void 0}:_e(Mr,void 0),r=t.formItem?{size:void 0}:_e(Lo,void 0);return w(()=>a.value||i(e)||r?.size||s?.size||o.value||"")},un=e=>{const t=aC("disabled"),n=_e(Mr,void 0);return w(()=>t.value??i(e)??n?.disabled??!1)},Dn=()=>({form:_e(Mr,void 0),formItem:_e(Lo,void 0)}),Ia=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:a})=>{n||(n=M(!1)),a||(a=M(!1));const o=ft(),s=()=>{let c=o?.parent;for(;c;){if(c.type.name==="ElFormItem")return!1;if(c.type.name==="ElLabelWrap")return!0;c=c.parent}return!1},r=M();let l;const u=w(()=>!!(!(e.label||e.ariaLabel)&&t&&t.inputIds&&t.inputIds?.length<=1));return ht(()=>{l=le([Vt(e,"id"),n],([c,d])=>{const f=c??(d?void 0:zn().value);f!==r.value&&(t?.removeInputId&&!s()&&(r.value&&t.removeInputId(r.value),!a?.value&&!d&&f&&t.addInputId(f)),r.value=f)},{immediate:!0})}),$l(()=>{l&&l(),t?.removeInputId&&r.value&&t.removeInputId(r.value)}),{isLabeledByFormItem:u,inputId:r}},fL=["","error","validating","success"],pL=Ce({label:String,labelWidth:{type:[String,Number]},labelPosition:{type:String,values:["left","right","top",""],default:""},prop:{type:G([String,Array])},required:{type:Boolean,default:void 0},rules:{type:G([Object,Array])},error:String,validateStatus:{type:String,values:fL},for:String,inlineMessage:{type:Boolean,default:void 0},showMessage:{type:Boolean,default:!0},size:{type:String,values:lo}}),uy=e=>[...new Set(e)],jl=e=>ye(e)?e[0]:e,Zn=e=>!e&&e!==0?[]:ye(e)?e:[e],hL="ElForm";function vL(){const e=M([]),t=w(()=>{if(!e.value.length)return"0";const s=Math.max(...e.value);return s?`${s}px`:""});function n(s){const r=e.value.indexOf(s);return r===-1&&t.value==="0"&&pt(hL,`unexpected width ${s}`),r}function a(s,r){if(s&&r){const l=n(r);e.value.splice(l,1,s)}else s&&e.value.push(s)}function o(s){const r=n(s);r>-1&&e.value.splice(r,1)}return{autoLabelWidth:t,registerLabelWidth:a,deregisterLabelWidth:o}}const zu=(e,t)=>{const n=Nn(t).map(a=>ye(a)?a.join("."):a);return n.length>0?e.filter(a=>a.propString&&n.includes(a.propString)):e},Dr="ElForm";var mL=se({name:Dr,__name:"form",props:cL,emits:dL,setup(e,{expose:t,emit:n}){const a=e,o=n,s=M(),r=At([]),l=new Map,u=Cn(),c=fe("form"),d=w(()=>{const{labelPosition:$,inline:O}=a;return[c.b(),c.m(u.value||"default"),{[c.m(`label-${$}`)]:$,[c.m("inline")]:O}]}),f=$=>zu(r,[$])[0],v=$=>{r.push($),$.propString&&(l.has($.propString)?$.setInitialValue(l.get($.propString)):l.set($.propString,es($.fieldValue)))},g=$=>{$.prop&&r.splice(r.indexOf($),1)},p=$=>{if(!a.model){pt(Dr,"model is required for setInitialValues to work.");return}if(!$){pt(Dr,"initModel is required for setInitialValues to work.");return}for(const O of l.keys())l.set(O,es(Ms($,O).value));r.forEach(O=>{O.prop&&O.setInitialValue(Ms($,O.prop).value)})},h=($=[])=>{if(!a.model){pt(Dr,"model is required for resetFields to work.");return}zu(r,$).forEach(R=>R.resetField());const O=new Set(r.map(R=>R.propString).filter(Boolean)),N=$.length>0?Nn($).map(R=>ye(R)?R.join("."):R):[...l.keys()];for(const R of N)!O.has(R)&&l.has(R)&&(Ms(a.model,R).value=es(l.get(R)))},m=($=[])=>{zu(r,$).forEach(O=>O.clearValidate())},b=w(()=>{const $=!!a.model;return $||pt(Dr,"model is required for validate to work."),$}),k=$=>{if(r.length===0)return[];const O=zu(r,$);return O.length?O:(pt(Dr,"please pass correct props!"),[])},y=async $=>C(void 0,$),S=async($=[])=>{if(!b.value)return!1;const O=k($);if(O.length===0)return!0;let N={};for(const R of O)try{await R.validate(""),R.validateState==="error"&&!R.error&&R.resetField()}catch(A){N={...N,...A}}return Object.keys(N).length===0?!0:Promise.reject(N)},C=async($=[],O)=>{let N=!1;const R=!Ve(O);try{return N=await S($),N===!0&&await O?.(N),N}catch(A){if(A instanceof Error)throw A;const _=A;return a.scrollToError&&s.value&&s.value.querySelector(`.${c.b()}-item.is-error`)?.scrollIntoView(a.scrollIntoViewOptions),!N&&await O?.(!1,_),R&&Promise.reject(_)}},E=$=>{const O=f($);O&&O.$el?.scrollIntoView(a.scrollIntoViewOptions)};return le(()=>a.rules,()=>{a.validateOnRuleChange&&y().catch($=>pt($))},{deep:!0,flush:"post"}),St(Mr,At({...Mn(a),emit:o,resetFields:h,clearValidate:m,validateField:C,getField:f,addField:v,removeField:g,setInitialValues:p,...vL()})),t({validate:y,validateField:C,resetFields:h,clearValidate:m,scrollToField:E,getField:f,fields:r,setInitialValues:p}),($,O)=>(x(),B("form",{ref_key:"formRef",ref:s,class:T(d.value)},[ee($.$slots,"default")],2))}}),gL=mL;const cy="ElLabelWrap";var bL=se({name:cy,props:{isAutoWidth:Boolean,updateAll:Boolean},setup(e,{slots:t}){const n=_e(Mr,void 0),a=_e(Lo);a||nn(cy,"usage: ");const o=fe("form"),s=M(),r=M(0),l=()=>{if(s.value?.firstElementChild){const d=window.getComputedStyle(s.value.firstElementChild).width;return Math.ceil(Number.parseFloat(d))}else return 0},u=(d="update")=>{Re(()=>{t.default&&e.isAutoWidth&&(d==="update"?r.value=l():d==="remove"&&n?.deregisterLabelWidth(r.value))})},c=()=>u("update");return ht(()=>{c()}),Bt(()=>{u("remove")}),ro(()=>c()),le(r,(d,f)=>{e.updateAll&&n?.registerLabelWidth(d,f)}),en(w(()=>s.value?.firstElementChild??null),c),()=>{if(!t)return null;const{isAutoWidth:d}=e;if(d){const f=n?.autoLabelWidth,v=a?.hasLabel,g={};if(v&&f&&f!=="auto"){const p=Math.max(0,Number.parseInt(f,10)-r.value),h=(a.labelPosition||n.labelPosition)==="left"?"marginRight":"marginLeft";p&&(g[h]=`${p}px`)}return Y("div",{ref:s,class:[o.be("item","label-wrap")],style:g},[t.default?.()])}else return Y(Fe,{ref:s},[t.default?.()])}}});function or(){return or=Object.assign?Object.assign.bind():function(e){for(var t=1;t"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 fc(e,t,n){return wL()?fc=Reflect.construct.bind():fc=function(o,s,r){var l=[null];l.push.apply(l,s);var u=Function.bind.apply(o,l),c=new u;return r&&_i(c,r.prototype),c},fc.apply(null,arguments)}function SL(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function Up(e){var t=typeof Map=="function"?new Map:void 0;return Up=function(a){if(a===null||!SL(a))return a;if(typeof a!="function")throw new TypeError("Super expression must either be null or a function");if(typeof t<"u"){if(t.has(a))return t.get(a);t.set(a,o)}function o(){return fc(a,arguments,jp(this).constructor)}return o.prototype=Object.create(a.prototype,{constructor:{value:o,enumerable:!1,writable:!0,configurable:!0}}),_i(o,a)},Up(e)}var CL=/%[sdj%]/g,kL=function(){};function qp(e){if(!e||!e.length)return null;var t={};return e.forEach(function(n){var a=n.field;t[a]=t[a]||[],t[a].push(n)}),t}function $a(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),a=1;a=s)return l;switch(l){case"%s":return String(n[o++]);case"%d":return Number(n[o++]);case"%j":try{return JSON.stringify(n[o++])}catch{return"[Circular]"}break;default:return l}});return r}return e}function EL(e){return e==="string"||e==="url"||e==="hex"||e==="email"||e==="date"||e==="pattern"}function An(e,t){return!!(e==null||t==="array"&&Array.isArray(e)&&!e.length||EL(t)&&typeof e=="string"&&!e)}function xL(e,t,n){var a=[],o=0,s=e.length;function r(l){a.push.apply(a,l||[]),o++,o===s&&n(a)}e.forEach(function(l){t(l,r)})}function dy(e,t,n){var a=0,o=e.length;function s(r){if(r&&r.length){n(r);return}var l=a;a=a+1,l()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+\.)+[a-zA-Z\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}))$/,hex:/^#?([a-f0-9]{6}|[a-f0-9]{3})$/i},Jl={integer:function(t){return Jl.number(t)&&parseInt(t,10)===t},float:function(t){return Jl.number(t)&&!Jl.integer(t)},array:function(t){return Array.isArray(t)},regexp:function(t){if(t instanceof RegExp)return!0;try{return!!new RegExp(t)}catch{return!1}},date:function(t){return typeof t.getTime=="function"&&typeof t.getMonth=="function"&&typeof t.getYear=="function"&&!isNaN(t.getTime())},number:function(t){return isNaN(t)?!1:typeof t=="number"},object:function(t){return typeof t=="object"&&!Jl.array(t)},method:function(t){return typeof t=="function"},email:function(t){return typeof t=="string"&&t.length<=320&&!!t.match(vy.email)},url:function(t){return typeof t=="string"&&t.length<=2048&&!!t.match(IL())},hex:function(t){return typeof t=="string"&&!!t.match(vy.hex)}},PL=function(t,n,a,o,s){if(t.required&&n===void 0){JC(t,n,a,o,s);return}var r=["integer","float","array","regexp","object","method","email","number","date","url","hex"],l=t.type;r.indexOf(l)>-1?Jl[l](n)||o.push($a(s.messages.types[l],t.fullField,t.type)):l&&typeof n!==t.type&&o.push($a(s.messages.types[l],t.fullField,t.type))},ML=function(t,n,a,o,s){var r=typeof t.len=="number",l=typeof t.min=="number",u=typeof t.max=="number",c=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,d=n,f=null,v=typeof n=="number",g=typeof n=="string",p=Array.isArray(n);if(v?f="number":g?f="string":p&&(f="array"),!f)return!1;p&&(d=n.length),g&&(d=n.replace(c,"_").length),r?d!==t.len&&o.push($a(s.messages[f].len,t.fullField,t.len)):l&&!u&&dt.max?o.push($a(s.messages[f].max,t.fullField,t.max)):l&&u&&(dt.max)&&o.push($a(s.messages[f].range,t.fullField,t.min,t.max))},Br="enum",_L=function(t,n,a,o,s){t[Br]=Array.isArray(t[Br])?t[Br]:[],t[Br].indexOf(n)===-1&&o.push($a(s.messages[Br],t.fullField,t[Br].join(", ")))},AL=function(t,n,a,o,s){if(t.pattern){if(t.pattern instanceof RegExp)t.pattern.lastIndex=0,t.pattern.test(n)||o.push($a(s.messages.pattern.mismatch,t.fullField,n,t.pattern));else if(typeof t.pattern=="string"){var r=new RegExp(t.pattern);r.test(n)||o.push($a(s.messages.pattern.mismatch,t.fullField,n,t.pattern))}}},Gt={required:JC,whitespace:NL,type:PL,range:ML,enum:_L,pattern:AL},LL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n,"string")&&!t.required)return a();Gt.required(t,n,o,r,s,"string"),An(n,"string")||(Gt.type(t,n,o,r,s),Gt.range(t,n,o,r,s),Gt.pattern(t,n,o,r,s),t.whitespace===!0&&Gt.whitespace(t,n,o,r,s))}a(r)},DL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&Gt.type(t,n,o,r,s)}a(r)},BL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(n===""&&(n=void 0),An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&(Gt.type(t,n,o,r,s),Gt.range(t,n,o,r,s))}a(r)},FL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&Gt.type(t,n,o,r,s)}a(r)},VL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),An(n)||Gt.type(t,n,o,r,s)}a(r)},zL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&(Gt.type(t,n,o,r,s),Gt.range(t,n,o,r,s))}a(r)},HL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&(Gt.type(t,n,o,r,s),Gt.range(t,n,o,r,s))}a(r)},KL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(n==null&&!t.required)return a();Gt.required(t,n,o,r,s,"array"),n!=null&&(Gt.type(t,n,o,r,s),Gt.range(t,n,o,r,s))}a(r)},WL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&Gt.type(t,n,o,r,s)}a(r)},jL="enum",UL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s),n!==void 0&&Gt[jL](t,n,o,r,s)}a(r)},qL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n,"string")&&!t.required)return a();Gt.required(t,n,o,r,s),An(n,"string")||Gt.pattern(t,n,o,r,s)}a(r)},YL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n,"date")&&!t.required)return a();if(Gt.required(t,n,o,r,s),!An(n,"date")){var u;n instanceof Date?u=n:u=new Date(n),Gt.type(t,u,o,r,s),u&&Gt.range(t,u.getTime(),o,r,s)}}a(r)},GL=function(t,n,a,o,s){var r=[],l=Array.isArray(n)?"array":typeof n;Gt.required(t,n,o,r,s,l),a(r)},Wf=function(t,n,a,o,s){var r=t.type,l=[],u=t.required||!t.required&&o.hasOwnProperty(t.field);if(u){if(An(n,r)&&!t.required)return a();Gt.required(t,n,o,l,s,r),An(n,r)||Gt.type(t,n,o,l,s)}a(l)},XL=function(t,n,a,o,s){var r=[],l=t.required||!t.required&&o.hasOwnProperty(t.field);if(l){if(An(n)&&!t.required)return a();Gt.required(t,n,o,r,s)}a(r)},hi={string:LL,method:DL,number:BL,boolean:FL,regexp:VL,integer:zL,float:HL,array:KL,object:WL,enum:UL,pattern:qL,date:YL,url:Wf,hex:Wf,email:Wf,required:GL,any:XL};function Yp(){return{default:"Validation error on field %s",required:"%s is required",enum:"%s must be one of %s",whitespace:"%s cannot be empty",date:{format:"%s date %s is invalid for format %s",parse:"%s date could not be parsed, %s is invalid ",invalid:"%s date %s is invalid"},types:{string:"%s is not a %s",method:"%s is not a %s (function)",array:"%s is not an %s",object:"%s is not an %s",number:"%s is not a %s",date:"%s is not a %s",boolean:"%s is not a %s",integer:"%s is not an %s",float:"%s is not a %s",regexp:"%s is not a valid %s",email:"%s is not a valid %s",url:"%s is not a valid %s",hex:"%s is not a valid %s"},string:{len:"%s must be exactly %s characters",min:"%s must be at least %s characters",max:"%s cannot be longer than %s characters",range:"%s must be between %s and %s characters"},number:{len:"%s must equal %s",min:"%s cannot be less than %s",max:"%s cannot be greater than %s",range:"%s must be between %s and %s"},array:{len:"%s must be exactly %s in length",min:"%s cannot be less than %s in length",max:"%s cannot be greater than %s in length",range:"%s must be between %s and %s in length"},pattern:{mismatch:"%s value %s does not match pattern %s"},clone:function(){var t=JSON.parse(JSON.stringify(this));return t.clone=this.clone,t}}}var Gp=Yp(),mu=(function(){function e(n){this.rules=null,this._messages=Gp,this.define(n)}var t=e.prototype;return t.define=function(a){var o=this;if(!a)throw new Error("Cannot configure a schema with no rules");if(typeof a!="object"||Array.isArray(a))throw new Error("Rules must be an object");this.rules={},Object.keys(a).forEach(function(s){var r=a[s];o.rules[s]=Array.isArray(r)?r:[r]})},t.messages=function(a){return a&&(this._messages=hy(Yp(),a)),this._messages},t.validate=function(a,o,s){var r=this;o===void 0&&(o={}),s===void 0&&(s=function(){});var l=a,u=o,c=s;if(typeof u=="function"&&(c=u,u={}),!this.rules||Object.keys(this.rules).length===0)return c&&c(null,l),Promise.resolve(l);function d(h){var m=[],b={};function k(S){if(Array.isArray(S)){var C;m=(C=m).concat.apply(C,S)}else m.push(S)}for(var y=0;yn.labelPosition||o?.labelPosition),b=w(()=>m.value==="top"?{}:{width:ln(n.labelWidth??o?.labelWidth)}),k=w(()=>{if(m.value==="top"||o?.inline)return{};if(!n.label&&!n.labelWidth&&R)return{};const ie=ln(n.labelWidth??o?.labelWidth);return!n.label&&!a.label?{marginLeft:ie}:{}}),y=w(()=>[l.b(),l.m(r.value),l.is("error",d.value==="error"),l.is("validating",d.value==="validating"),l.is("success",d.value==="success"),l.is("required",U.value||n.required),l.is("no-asterisk",o?.hideRequiredAsterisk),o?.requireAsteriskPosition==="right"?"asterisk-right":"asterisk-left",{[l.m("feedback")]:o?.statusIcon,[l.m(`label-${m.value}`)]:m.value}]),S=w(()=>Ht(n.inlineMessage)?n.inlineMessage:o?.inlineMessage||!1),C=w(()=>[l.e("error"),{[l.em("error","inline")]:S.value}]),E=w(()=>n.prop?ye(n.prop)?n.prop.join("."):n.prop:""),$=w(()=>!!(n.label||a.label)),O=w(()=>n.for??(c.value.length===1?c.value[0]:void 0)),N=w(()=>!O.value&&$.value),R=!!s,A=w(()=>{const ie=o?.model;if(!(!ie||!n.prop))return Ms(ie,n.prop).value}),_=w(()=>{const{required:ie}=n,ae=[];n.rules&&ae.push(...Nn(n.rules));const ne=o?.rules;if(ne&&n.prop){const K=Ms(ne,n.prop).value;K&&ae.push(...Nn(K))}if(ie!==void 0){const K=ae.map((Z,re)=>[Z,re]).filter(([Z])=>"required"in Z);if(K.length>0)for(const[Z,re]of K)Z.required!==ie&&(ae[re]={...Z,required:ie});else ae.push({required:ie})}return ae}),V=w(()=>_.value.length>0),H=ie=>_.value.filter(ae=>!ae.trigger||!ie?!0:ye(ae.trigger)?ae.trigger.includes(ie):ae.trigger===ie).map(({trigger:ae,...ne})=>ne),U=w(()=>_.value.some(ie=>ie.required)),W=w(()=>f.value==="error"&&n.showMessage&&(o?.showMessage??!0)),P=w(()=>`${n.label||""}${o?.labelSuffix||""}`),I=ie=>{d.value=ie},L=ie=>{const{errors:ae,fields:ne}=ie;(!ae||!ne)&&console.error(ie),I("error"),v.value=ae?ae?.[0]?.message??`${n.prop} is required`:"",o?.emit("validate",n.prop,!1,v.value)},D=()=>{I("success"),o?.emit("validate",n.prop,!0,"")},F=async ie=>{const ae=E.value;return new mu({[ae]:ie}).validate({[ae]:A.value},{firstFields:!0}).then(()=>(D(),!0)).catch(ne=>(L(ne),Promise.reject(ne)))},q=async(ie,ae)=>{if(h||!n.prop)return!1;const ne=Ve(ae);if(!V.value)return ae?.(!1),!1;const K=H(ie);return K.length===0?(ae?.(!0),!0):(I("validating"),F(K).then(()=>(ae?.(!0),!0)).catch(Z=>{const{fields:re}=Z;return ae?.(!1,re),ne?!1:Promise.reject(re)}))},j=()=>{I(""),v.value="",h=!1},X=async()=>{const ie=o?.model;if(!ie||!n.prop)return;const ae=Ms(ie,n.prop);h=!0,ae.value=es(p),await Re(),j(),h=!1},Q=ie=>{c.value.includes(ie)||c.value.push(ie)},he=ie=>{c.value=c.value.filter(ae=>ae!==ie)},ue=ie=>{p=es(ie)};le(()=>n.error,ie=>{v.value=ie||"",I(ie?"error":"")},{immediate:!0}),le(()=>n.validateStatus,ie=>I(ie||""));const ge=At({...Mn(n),$el:g,size:r,validateMessage:v,validateState:d,labelId:u,inputIds:c,isGroup:N,hasLabel:$,fieldValue:A,addInputId:Q,removeInputId:he,resetField:X,clearValidate:j,validate:q,propString:E,setInitialValue:ue});return St(Lo,ge),ht(()=>{n.prop&&(ue(A.value),o?.addField(ge))}),Bt(()=>{o?.removeField(ge)}),t({size:r,validateMessage:v,validateState:d,validate:q,clearValidate:j,resetField:X,setInitialValue:ue}),(ie,ae)=>(x(),B("div",{ref_key:"formItemRef",ref:g,class:T(y.value),role:N.value?"group":void 0,"aria-labelledby":N.value?i(u):void 0},[Y(i(bL),{"is-auto-width":b.value.width==="auto","update-all":i(o)?.labelWidth==="auto"},{default:J(()=>[e.label||ie.$slots.label?(x(),oe(it(O.value?"label":"div"),{key:0,id:i(u),for:O.value,class:T(i(l).e("label")),style:Ke(b.value)},{default:J(()=>[ee(ie.$slots,"label",{label:P.value},()=>[wt(Se(P.value),1)])]),_:3},8,["id","for","class","style"])):te("v-if",!0)]),_:3},8,["is-auto-width","update-all"]),z("div",{class:T(i(l).e("content")),style:Ke(k.value)},[ee(ie.$slots,"default"),Y(j1,{name:`${i(l).namespace.value}-zoom-in-top`},{default:J(()=>[W.value?ee(ie.$slots,"error",{key:0,error:v.value},()=>[z("div",{class:T(C.value)},Se(v.value),3)]):te("v-if",!0)]),_:3},8,["name"])],6)],10,JL))}}),ZC=ZL;const QL=rt(gL,{FormItem:ZC}),eD=an(ZC),jf="focus-trap.focus-after-trapped",Uf="focus-trap.focus-after-released",tD="focus-trap.focusout-prevented",my={cancelable:!0,bubbles:!1},nD={cancelable:!0,bubbles:!1},gy="focusAfterTrapped",by="focusAfterReleased",QC=Symbol("elFocusTrap"),sm=M(),af=M(0),rm=M(0);let Ku=0;const ek=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{const o=a.tagName==="INPUT"&&a.type==="hidden";return a.disabled||a.hidden||o?NodeFilter.FILTER_SKIP:a.tabIndex>=0||a===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},yy=(e,t)=>{for(const n of e)if(!aD(n,t))return n},aD=(e,t)=>{if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1},oD=e=>{const t=ek(e);return[yy(t,e),yy(t.reverse(),e)]},sD=e=>e instanceof HTMLInputElement&&"select"in e,Cs=(e,t)=>{if(e){const n=document.activeElement;ru(e,{preventScroll:!0}),rm.value=window.performance.now(),e!==n&&sD(e)&&t&&e.select()}};function wy(e,t){const n=[...e],a=e.indexOf(t);return a!==-1&&n.splice(a,1),n}const rD=()=>{let e=[];return{push:a=>{const o=e[0];o&&a!==o&&o.pause(),e=wy(e,a),e.unshift(a)},remove:a=>{e=wy(e,a),e[0]?.resume?.()}}},lD=(e,t=!1)=>{const n=document.activeElement;for(const a of e)if(Cs(a,t),document.activeElement!==n)return},Sy=rD(),iD=()=>af.value>rm.value,Wu=()=>{sm.value="pointer",af.value=window.performance.now()},Cy=()=>{sm.value="keyboard",af.value=window.performance.now()},uD=()=>(ht(()=>{Ku===0&&(document.addEventListener("mousedown",Wu),document.addEventListener("touchstart",Wu),document.addEventListener("keydown",Cy)),Ku++}),Bt(()=>{Ku--,Ku<=0&&(document.removeEventListener("mousedown",Wu),document.removeEventListener("touchstart",Wu),document.removeEventListener("keydown",Cy))}),{focusReason:sm,lastUserFocusTimestamp:af,lastAutomatedFocusTimestamp:rm}),ju=e=>new CustomEvent(tD,{...nD,detail:e});var cD=se({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[gy,by,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=M();let a,o;const{focusReason:s}=uD();$A(p=>{e.trapped&&!r.paused&&t("release-requested",p)});const r={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},l=p=>{if(!e.loop&&!e.trapped||r.paused)return;const{altKey:h,ctrlKey:m,metaKey:b,currentTarget:k,shiftKey:y}=p,{loop:S}=e,C=jt(p)===we.tab&&!h&&!m&&!b,E=document.activeElement;if(C&&E){const $=k,[O,N]=oD($);if(O&&N){if(!y&&E===N){const R=ju({focusReason:s.value});t("focusout-prevented",R),R.defaultPrevented||(p.preventDefault(),S&&Cs(O,!0))}else if(y&&[O,$].includes(E)){const R=ju({focusReason:s.value});t("focusout-prevented",R),R.defaultPrevented||(p.preventDefault(),S&&Cs(N,!0))}}else if(E===$){const R=ju({focusReason:s.value});t("focusout-prevented",R),R.defaultPrevented||p.preventDefault()}}};St(QC,{focusTrapRef:n,onKeydown:l}),le(()=>e.focusTrapEl,p=>{p&&(n.value=p)},{immediate:!0}),le([n],([p],[h])=>{p&&(p.addEventListener("keydown",l),p.addEventListener("focusin",d),p.addEventListener("focusout",f)),h&&(h.removeEventListener("keydown",l),h.removeEventListener("focusin",d),h.removeEventListener("focusout",f))});const u=p=>{t(gy,p)},c=p=>t(by,p),d=p=>{const h=i(n);if(!h)return;const m=p.target,b=p.relatedTarget,k=m&&h.contains(m);e.trapped||b&&h.contains(b)||(a=b),k&&t("focusin",p),!r.paused&&e.trapped&&(k?o=m:Cs(o,!0))},f=p=>{const h=i(n);if(!(r.paused||!h))if(e.trapped){const m=p.relatedTarget;!bn(m)&&!h.contains(m)&&setTimeout(()=>{if(!r.paused&&e.trapped){const b=ju({focusReason:s.value});t("focusout-prevented",b),b.defaultPrevented||Cs(o,!0)}},0)}else{const m=p.target;m&&h.contains(m)||t("focusout",p)}};async function v(){await Re();const p=i(n);if(p){Sy.push(r);const h=p.contains(document.activeElement)?a:document.activeElement;if(a=h,!p.contains(h)){const m=new Event(jf,my);p.addEventListener(jf,u),p.dispatchEvent(m),m.defaultPrevented||Re(()=>{let b=e.focusStartEl;Le(b)||(Cs(b),document.activeElement!==b&&(b="first")),b==="first"&&lD(ek(p),!0),(document.activeElement===h||b==="container")&&Cs(p)})}}}function g(){const p=i(n);if(p){p.removeEventListener(jf,u);const h=new CustomEvent(Uf,{...my,detail:{focusReason:s.value}});p.addEventListener(Uf,c),p.dispatchEvent(h),!h.defaultPrevented&&(s.value=="keyboard"||!iD()||p.contains(document.activeElement))&&Cs(a??document.body),p.removeEventListener(Uf,c),Sy.remove(r),a=null,o=null}}return ht(()=>{e.trapped&&v(),le(()=>e.trapped,p=>{p?v():g()})}),Bt(()=>{e.trapped&&g(),n.value&&(n.value.removeEventListener("keydown",l),n.value.removeEventListener("focusin",d),n.value.removeEventListener("focusout",f),n.value=void 0),a=null,o=null}),{onKeydown:l}}}),$n=(e,t)=>{const n=e.__vccOpts||e;for(const[a,o]of t)n[a]=o;return n};function dD(e,t,n,a,o,s){return ee(e.$slots,"default",{handleKeydown:e.onKeydown})}var fD=$n(cD,[["render",dD]]),Al=fD;const pD=(e,t=[])=>{const{placement:n,strategy:a,popperOptions:o}=e,s={placement:n,strategy:a,...o,modifiers:[...vD(e),...t]};return mD(s,o?.modifiers),s},hD=e=>{if(Mt)return xn(e)};function vD(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:a}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:0,bottom:0,left:0,right:0}}},{name:"flip",options:{padding:5,fallbackPlacements:a}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function mD(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const gD=0,bD=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:a,role:o}=_e(om,void 0),s=M(),r=w(()=>e.arrowOffset),l=w(()=>({name:"eventListeners",enabled:!!e.visible})),u=w(()=>{const b=i(s),k=i(r)??gD;return{name:"arrow",enabled:!wM(b),options:{element:b,padding:k}}}),c=w(()=>({onFirstUpdate:()=>{p()},...pD(e,[i(u),i(l)])})),d=w(()=>hD(e.referenceEl)||i(a)),{attributes:f,state:v,styles:g,update:p,forceUpdate:h,instanceRef:m}=kA(d,n,c);return le(m,b=>t.value=b,{flush:"sync"}),ht(()=>{le(()=>i(d)?.getBoundingClientRect?.(),()=>{p()})}),Bt(()=>{t.value=void 0}),{attributes:f,arrowRef:s,contentRef:n,instanceRef:m,state:v,styles:g,role:o,forceUpdate:h,update:p}},yD=(e,{attributes:t,styles:n,role:a})=>{const{nextZIndex:o}=uu(),s=fe("popper"),r=w(()=>i(t).popper),l=M(He(e.zIndex)?e.zIndex:o()),u=w(()=>[s.b(),s.is("pure",e.pure),s.is(e.effect),e.popperClass]),c=w(()=>[{zIndex:i(l)},i(n).popper,e.popperStyle||{}]),d=w(()=>a.value==="dialog"?"false":void 0),f=w(()=>i(n).arrow||{});return{ariaModal:d,arrowStyle:f,contentAttrs:r,contentClass:u,contentStyle:c,contentZIndex:l,updateZIndex:()=>{l.value=He(e.zIndex)?e.zIndex:o()}}},wD=(e,t)=>{const n=M(!1),a=M(),o=()=>{t("focus")},s=c=>{c.detail?.focusReason!=="pointer"&&(a.value="first",t("blur"))},r=c=>{e.visible&&!n.value&&(c.target&&(a.value=c.target),n.value=!0)},l=c=>{e.trapping||(c.detail.focusReason==="pointer"&&c.preventDefault(),n.value=!1)},u=()=>{n.value=!1,t("close")};return Bt(()=>{a.value=void 0}),{focusStartRef:a,trapped:n,onFocusAfterReleased:s,onFocusAfterTrapped:o,onFocusInTrap:r,onFocusoutPrevented:l,onReleaseRequested:u}};var SD=se({name:"ElPopperContent",__name:"content",props:XC,emits:iL,setup(e,{expose:t,emit:n}){const a=n,o=e,{focusStartRef:s,trapped:r,onFocusAfterReleased:l,onFocusAfterTrapped:u,onFocusInTrap:c,onFocusoutPrevented:d,onReleaseRequested:f}=wD(o,a),{attributes:v,arrowRef:g,contentRef:p,styles:h,instanceRef:m,role:b,update:k}=bD(o),{ariaModal:y,arrowStyle:S,contentAttrs:C,contentClass:E,contentStyle:$,updateZIndex:O}=yD(o,{styles:h,attributes:v,role:b}),N=_e(Lo,void 0);St(jC,{arrowStyle:S,arrowRef:g}),N&&St(Lo,{...N,addInputId:Dt,removeInputId:Dt});let R;const A=(V=!0)=>{k(),V&&O()},_=()=>{A(!1),o.visible&&o.focusOnShow?r.value=!0:o.visible===!1&&(r.value=!1)};return ht(()=>{le(()=>o.triggerTargetEl,(V,H)=>{R?.(),R=void 0;const U=i(V||p.value),W=i(H||p.value);ha(U)&&(R=le([b,()=>o.ariaLabel,y,()=>o.id],P=>{["role","aria-label","aria-modal","id"].forEach((I,L)=>{bn(P[L])?U.removeAttribute(I):U.setAttribute(I,P[L])})},{immediate:!0})),W!==U&&ha(W)&&["role","aria-label","aria-modal","id"].forEach(P=>{W.removeAttribute(P)})},{immediate:!0}),le(()=>o.visible,_,{immediate:!0})}),Bt(()=>{R?.(),R=void 0,p.value=void 0}),t({popperContentRef:p,popperInstanceRef:m,updatePopper:A,contentStyle:$}),(V,H)=>(x(),B("div",dt({ref_key:"contentRef",ref:p},i(C),{style:i($),class:i(E),tabindex:"-1",onMouseenter:H[0]||(H[0]=U=>V.$emit("mouseenter",U)),onMouseleave:H[1]||(H[1]=U=>V.$emit("mouseleave",U))}),[Y(i(Al),{loop:e.loop,trapped:i(r),"trap-on-focus-in":!0,"focus-trap-el":i(p),"focus-start-el":i(s),onFocusAfterTrapped:i(u),onFocusAfterReleased:i(l),onFocusin:i(c),onFocusoutPrevented:i(d),onReleaseRequested:i(f)},{default:J(()=>[ee(V.$slots,"default")]),_:3},8,["loop","trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16))}}),CD=SD,kD=se({name:"ElPopper",inheritAttrs:!1,__name:"popper",props:WC,setup(e,{expose:t}){const n=e,a={triggerRef:M(),popperInstanceRef:M(),contentRef:M(),referenceRef:M(),role:w(()=>n.role)};return t(a),St(om,a),(o,s)=>ee(o.$slots,"default")}}),ED=kD;const tk=rt(ED),zt=Ce({...NA,...XC,appendTo:{type:au.to.type},content:{type:String,default:""},rawContent:Boolean,persistent:Boolean,visible:{type:G(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean,...aa(["ariaLabel"])}),No=Ce({...UC,disabled:Boolean,trigger:{type:G([String,Array]),default:"hover"},triggerKeys:{type:G(Array),default:()=>[we.enter,we.numpadEnter,we.space]},focusOnTarget:Boolean}),{useModelToggleProps:xD,useModelToggleEmits:TD,useModelToggle:$D}=w_("visible"),OD=Ce({...WC,...xD,...zt,...No,...GC,showArrow:{type:Boolean,default:!0}}),RD=[...TD,"before-show","before-hide","show","hide","open","close"],lm=Symbol("elTooltip"),Xp=(e,t)=>ye(e)?e.includes(t):e===t,Fr=(e,t,n)=>a=>{Xp(i(e),t)&&n(a)};var ND=se({name:"ElTooltipTrigger",__name:"trigger",props:No,setup(e,{expose:t}){const n=e,a=fe("tooltip"),{controlled:o,id:s,open:r,onOpen:l,onClose:u,onToggle:c}=_e(lm,void 0),d=M(null),f=()=>{if(i(o)||n.disabled)return!0},v=Vt(n,"trigger"),g=Rn(f,Fr(v,"hover",S=>{l(S),n.focusOnTarget&&S.target&&Re(()=>{ru(S.target,{preventScroll:!0})})})),p=Rn(f,Fr(v,"hover",u)),h=Rn(f,Fr(v,"click",S=>{S.button===0&&c(S)})),m=Rn(f,Fr(v,"focus",l)),b=Rn(f,Fr(v,"focus",u)),k=Rn(f,Fr(v,"contextmenu",S=>{S.preventDefault(),c(S)})),y=Rn(f,S=>{const C=jt(S);n.triggerKeys.includes(C)&&(S.preventDefault(),c(S))});return t({triggerRef:d}),(S,C)=>(x(),oe(i(sL),{id:i(s),"virtual-ref":e.virtualRef,open:i(r),"virtual-triggering":e.virtualTriggering,class:T(i(a).e("trigger")),onBlur:i(b),onClick:i(h),onContextmenu:i(k),onFocus:i(m),onMouseenter:i(g),onMouseleave:i(p),onKeydown:i(y)},{default:J(()=>[ee(S.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}}),ID=ND,PD=se({name:"ElTooltipContent",inheritAttrs:!1,__name:"content",props:zt,setup(e,{expose:t}){const n=e,{selector:a}=mC(),o=fe("tooltip"),s=M(),r=VS(()=>s.value?.popperContentRef);let l;const{controlled:u,id:c,open:d,trigger:f,onClose:v,onOpen:g,onShow:p,onHide:h,onBeforeShow:m,onBeforeHide:b}=_e(lm,void 0),k=w(()=>n.transition||`${o.namespace.value}-fade-in-linear`),y=w(()=>n.persistent);Bt(()=>{l?.()});const S=w(()=>i(y)?!0:i(d)),C=w(()=>n.disabled?!1:i(d)),E=w(()=>n.appendTo||a.value),$=w(()=>n.style??{}),O=M(!0),N=()=>{h(),P()&&ru(document.body,{preventScroll:!0}),O.value=!0},R=()=>{if(i(u))return!0},A=Rn(R,()=>{n.enterable&&Xp(i(f),"hover")&&g()}),_=Rn(R,()=>{Xp(i(f),"hover")&&v()}),V=()=>{s.value?.updatePopper?.(),m?.()},H=()=>{b?.()},U=()=>{p()},W=()=>{n.virtualTriggering||v()},P=I=>{const L=s.value?.popperContentRef,D=I?.relatedTarget||document.activeElement;return L?.contains(D)};return le(()=>i(d),I=>{I?(O.value=!1,l=Mv(r,()=>{i(u)||Zn(i(f)).every(L=>L!=="hover"&&L!=="focus")&&v()},{detectIframe:!0})):l?.()},{flush:"post"}),le(()=>n.content,()=>{s.value?.updatePopper?.()}),t({contentRef:s,isFocusInsideContent:P}),(I,L)=>(x(),oe(i(_l),{disabled:!e.teleported,to:E.value},{default:J(()=>[S.value||!O.value?(x(),oe(Vn,{key:0,name:k.value,appear:!y.value,onAfterLeave:N,onBeforeEnter:V,onAfterEnter:U,onBeforeLeave:H,persisted:""},{default:J(()=>[ut(Y(i(CD),dt({id:i(c),ref_key:"contentRef",ref:s},I.$attrs,{"aria-label":e.ariaLabel,"aria-hidden":O.value,"boundaries-padding":e.boundariesPadding,"fallback-placements":e.fallbackPlacements,"gpu-acceleration":e.gpuAcceleration,offset:e.offset,placement:e.placement,"popper-options":e.popperOptions,"arrow-offset":e.arrowOffset,strategy:e.strategy,effect:e.effect,enterable:e.enterable,pure:e.pure,"popper-class":e.popperClass,"popper-style":[e.popperStyle,$.value],"reference-el":e.referenceEl,"trigger-target-el":e.triggerTargetEl,visible:C.value,"z-index":e.zIndex,loop:e.loop,onMouseenter:i(A),onMouseleave:i(_),onBlur:W,onClose:i(v)}),{default:J(()=>[ee(I.$slots,"default")]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","arrow-offset","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","loop","onMouseenter","onMouseleave","onClose"]),[[Pt,C.value]])]),_:3},8,["name","appear"])):te("v-if",!0)]),_:3},8,["disabled","to"]))}}),MD=PD;const _D=["innerHTML"],AD={key:1};var LD=se({name:"ElTooltip",__name:"tooltip",props:OD,emits:RD,setup(e,{expose:t,emit:n}){const a=e,o=n;RA();const s=fe("tooltip"),r=zn(),l=M(),u=M(),c=()=>{const S=i(l);S&&S.popperInstanceRef?.update()},d=M(!1),f=M(),{show:v,hide:g,hasUpdateHandler:p}=$D({indicator:d,toggleReason:f}),{onOpen:h,onClose:m}=IA({showAfter:Vt(a,"showAfter"),hideAfter:Vt(a,"hideAfter"),autoClose:Vt(a,"autoClose"),open:v,close:g}),b=w(()=>Ht(a.visible)&&!p.value),k=w(()=>[s.b(),a.popperClass]);St(lm,{controlled:b,id:r,open:br(d),trigger:Vt(a,"trigger"),onOpen:h,onClose:m,onToggle:S=>{i(d)?m(S):h(S)},onShow:()=>{o("show",f.value)},onHide:()=>{o("hide",f.value)},onBeforeShow:()=>{o("before-show",f.value)},onBeforeHide:()=>{o("before-hide",f.value)},updatePopper:c}),le(()=>a.disabled,S=>{S&&d.value&&(d.value=!1)});const y=S=>u.value?.isFocusInsideContent(S);return sv(()=>d.value&&g()),Bt(()=>{f.value=void 0}),t({popperRef:l,contentRef:u,isFocusInsideContent:y,updatePopper:c,onOpen:h,onClose:m,hide:g}),(S,C)=>(x(),oe(i(tk),{ref_key:"popperRef",ref:l,role:e.role},{default:J(()=>[Y(ID,{disabled:e.disabled,trigger:e.trigger,"trigger-keys":e.triggerKeys,"virtual-ref":e.virtualRef,"virtual-triggering":e.virtualTriggering,"focus-on-target":e.focusOnTarget},{default:J(()=>[S.$slots.default?ee(S.$slots,"default",{key:0}):te("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering","focus-on-target"]),Y(MD,{ref_key:"contentRef",ref:u,"aria-label":e.ariaLabel,"boundaries-padding":e.boundariesPadding,content:e.content,disabled:e.disabled,effect:e.effect,enterable:e.enterable,"fallback-placements":e.fallbackPlacements,"hide-after":e.hideAfter,"gpu-acceleration":e.gpuAcceleration,offset:e.offset,persistent:e.persistent,"popper-class":k.value,"popper-style":e.popperStyle,placement:e.placement,"popper-options":e.popperOptions,"arrow-offset":e.arrowOffset,pure:e.pure,"raw-content":e.rawContent,"reference-el":e.referenceEl,"trigger-target-el":e.triggerTargetEl,"show-after":e.showAfter,strategy:e.strategy,teleported:e.teleported,transition:e.transition,"virtual-triggering":e.virtualTriggering,"z-index":e.zIndex,"append-to":e.appendTo,loop:e.loop},{default:J(()=>[ee(S.$slots,"content",{},()=>[e.rawContent?(x(),B("span",{key:0,innerHTML:e.content},null,8,_D)):(x(),B("span",AD,Se(e.content),1))]),e.showArrow?(x(),oe(i(aL),{key:0})):te("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","arrow-offset","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to","loop"])]),_:3},8,["role"]))}}),DD=LD;const Ln=rt(DD),rn=e=>e,gu=Ce({id:{type:String,default:void 0},size:Tn,disabled:{type:Boolean,default:void 0},modelValue:{type:G([String,Number,Object]),default:""},modelModifiers:{type:G(Object),default:()=>({})},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},type:{type:G(String),default:"text"},resize:{type:String,values:["none","both","horizontal","vertical"]},autosize:{type:G([Boolean,Object]),default:!1},autocomplete:{type:G(String),default:"off"},formatter:{type:Function},parser:{type:Function},placeholder:{type:String},form:{type:String},readonly:Boolean,clearable:Boolean,clearIcon:{type:Kt,default:Vo},showPassword:Boolean,showWordLimit:Boolean,wordLimitPosition:{type:String,values:["inside","outside"],default:"inside"},suffixIcon:{type:Kt},prefixIcon:{type:Kt},containerRole:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:G([Object,Array,String]),default:()=>rn({})},autofocus:Boolean,rows:{type:Number,default:2},...aa(["ariaLabel"]),inputmode:{type:G(String),default:void 0},name:String}),BD={[at]:e=>Le(e),input:e=>Le(e),change:(e,t)=>Le(e)&&(t instanceof Event||t===void 0),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:e=>e===void 0||e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,mouseenter:e=>e instanceof MouseEvent,keydown:e=>e instanceof Event,compositionstart:e=>e instanceof CompositionEvent,compositionupdate:e=>e instanceof CompositionEvent,compositionend:e=>e instanceof CompositionEvent};xo(Vo);let Ma;const FD={height:"0",visibility:"hidden",overflow:Ud()?"":"hidden",position:"absolute","z-index":"-1000",top:"0",right:"0"},VD=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break"],ky=e=>{const t=Number.parseFloat(e);return Number.isNaN(t)?e:t};function zD(e){const t=window.getComputedStyle(e),n=t.getPropertyValue("box-sizing"),a=Number.parseFloat(t.getPropertyValue("padding-bottom"))+Number.parseFloat(t.getPropertyValue("padding-top")),o=Number.parseFloat(t.getPropertyValue("border-bottom-width"))+Number.parseFloat(t.getPropertyValue("border-top-width"));return{contextStyle:VD.map(s=>[s,t.getPropertyValue(s)]),paddingSize:a,borderSize:o,boxSizing:n}}function Ey(e,t=1,n){if(!Ma){Ma=document.createElement("textarea");let d=document.body;!Ud()&&e.parentNode&&(d=e.parentNode),d.appendChild(Ma)}const{paddingSize:a,borderSize:o,boxSizing:s,contextStyle:r}=zD(e);r.forEach(([d,f])=>Ma?.style.setProperty(d,f)),Object.entries(FD).forEach(([d,f])=>Ma?.style.setProperty(d,f,"important")),Ma.value=e.value||e.placeholder||"";let l=Ma.scrollHeight;const u={};s==="border-box"?l=l+o:s==="content-box"&&(l=l-a),Ma.value="";const c=Ma.scrollHeight-a;if(He(t)){let d=c*t;s==="border-box"&&(d=d+a+o),l=Math.max(d,l),u.minHeight=`${d}px`}if(He(n)){let d=c*n;s==="border-box"&&(d=d+a+o),l=Math.min(d,l)}return u.height=`${l}px`,Ma.parentNode?.removeChild(Ma),Ma=void 0,u}const HD=["id","name","minlength","maxlength","type","disabled","readonly","autocomplete","tabindex","aria-label","placeholder","form","autofocus","role","inputmode"],KD=["id","name","minlength","maxlength","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form","autofocus","rows","role"],xy="ElInput";var WD=se({name:xy,inheritAttrs:!1,__name:"input",props:gu,emits:BD,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fs(),r=Wd(),l=vn(),u=w(()=>[a.type==="textarea"?m.b():h.b(),h.m(g.value),h.is("disabled",p.value),h.is("exceed",j.value),{[h.b("group")]:l.prepend||l.append,[h.m("prefix")]:l.prefix||a.prefixIcon,[h.m("suffix")]:l.suffix||a.suffixIcon||a.clearable||a.showPassword,[h.bm("suffix","password-clear")]:L.value&&D.value,[h.b("hidden")]:a.type==="hidden"},s.class]),c=w(()=>[h.e("wrapper"),h.is("focus",N.value)]),{form:d,formItem:f}=Dn(),{inputId:v}=Ia(a,{formItemContext:f}),g=Cn(),p=un(),h=fe("input"),m=fe("textarea"),b=Xt(),k=Xt(),y=M(!1),S=M(!1),C=M(),E=Xt(a.inputStyle),$=w(()=>b.value||k.value),{wrapperRef:O,isFocused:N,handleFocus:R,handleBlur:A}=ms($,{disabled:p,afterBlur(){a.validateEvent&&f?.validate?.("blur").catch(Pe=>pt(Pe))}}),_=w(()=>d?.statusIcon??!1),V=w(()=>f?.validateState||""),H=w(()=>V.value&&nf[V.value]),U=w(()=>S.value?H3:f3),W=w(()=>[s.style]),P=w(()=>[a.inputStyle,E.value,{resize:a.resize}]),I=w(()=>bn(a.modelValue)?"":String(a.modelValue)),L=w(()=>a.clearable&&!p.value&&!a.readonly&&!!I.value&&(N.value||y.value)),D=w(()=>a.showPassword&&!p.value&&!!I.value),F=w(()=>a.showWordLimit&&!!a.maxlength&&(a.type==="text"||a.type==="textarea")&&!p.value&&!a.readonly&&!a.showPassword),q=w(()=>I.value.length),j=w(()=>!!F.value&&q.value>Number(a.maxlength)),X=w(()=>!!l.suffix||!!a.suffixIcon||L.value||a.showPassword||F.value||!!V.value&&_.value),Q=w(()=>!!Object.keys(a.modelModifiers).length),[he,ue]=C4(b);en(k,Pe=>{if(ae(),!F.value||a.resize!=="both"&&a.resize!=="horizontal")return;const{width:Ae}=Pe[0].contentRect;C.value={right:`calc(100% - ${Ae+22-10}px)`}});const ge=()=>{const{type:Pe,autosize:Ae}=a;if(!(!Mt||Pe!=="textarea"||!k.value))if(Ae){const je=ot(Ae)?Ae.minRows:void 0,Rt=ot(Ae)?Ae.maxRows:void 0,Ue=Ey(k.value,je,Rt);E.value={overflowY:"hidden",...Ue},Re(()=>{k.value.offsetHeight,E.value=Ue})}else E.value={minHeight:Ey(k.value).minHeight}},ae=(Pe=>{let Ae=!1;return()=>{Ae||!a.autosize||k.value?.offsetParent!==null&&(setTimeout(Pe),Ae=!0)}})(ge),ne=()=>{const Pe=$.value,Ae=a.formatter?a.formatter(I.value):I.value;!Pe||Pe.value===Ae||a.type==="file"||(Pe.value=Ae)},K=Pe=>{const{trim:Ae,number:je}=a.modelModifiers;return Ae&&(Pe=Pe.trim()),je&&(Pe=`${ky(Pe)}`),a.formatter&&a.parser&&(Pe=a.parser(Pe)),Pe},Z=async Pe=>{if(ce.value)return;const{lazy:Ae}=a.modelModifiers;let{value:je}=Pe.target;if(Ae){o(Sn,je);return}if(je=K(je),String(je)===I.value){a.formatter&&ne();return}he(),o(at,je),o(Sn,je),await Re(),(a.formatter&&a.parser||!Q.value)&&ne(),ue()},re=async Pe=>{let{value:Ae}=Pe.target;Ae=K(Ae),a.modelModifiers.lazy&&o(at,Ae),o(yt,Ae,Pe),await Re(),ne()},{isComposing:ce,handleCompositionStart:ve,handleCompositionUpdate:ke,handleCompositionEnd:Ne}=pu({emit:o,afterComposition:Z}),Ie=()=>{S.value=!S.value},$e=()=>$.value?.focus(),pe=()=>$.value?.blur(),Ee=Pe=>{y.value=!1,o("mouseleave",Pe)},me=Pe=>{y.value=!0,o("mouseenter",Pe)},Me=Pe=>{o("keydown",Pe)},We=()=>{$.value?.select()},Ze=Pe=>{o(at,""),o(yt,""),o("clear",Pe),o(Sn,"")};return le(()=>a.modelValue,()=>{Re(()=>ge()),a.validateEvent&&f?.validate?.("change").catch(Pe=>pt(Pe))}),le(I,Pe=>{if(!$.value)return;const{trim:Ae,number:je}=a.modelModifiers,Rt=$.value.value,Ue=(je||a.type==="number")&&!/^0\d/.test(Rt)?`${ky(Rt)}`:Rt;Ue!==Pe&&(document.activeElement===$.value&&$.value.type!=="range"&&Ae&&Ue.trim()===Pe||ne())}),le(()=>a.type,async()=>{await Re(),ne(),ge()}),ht(()=>{!a.formatter&&a.parser&&pt(xy,"If you set the parser, you also need to set the formatter."),ne(),Re(ge)}),t({input:b,textarea:k,ref:$,textareaStyle:P,autosize:Vt(a,"autosize"),isComposing:ce,focus:$e,blur:pe,select:We,clear:Ze,resizeTextarea:ge}),(Pe,Ae)=>(x(),B("div",{class:T([u.value,{[i(h).bm("group","append")]:Pe.$slots.append,[i(h).bm("group","prepend")]:Pe.$slots.prepend}]),style:Ke(W.value),onMouseenter:me,onMouseleave:Ee},[te(" input "),e.type!=="textarea"?(x(),B(Fe,{key:0},[te(" prepend slot "),Pe.$slots.prepend?(x(),B("div",{key:0,class:T(i(h).be("group","prepend"))},[ee(Pe.$slots,"prepend")],2)):te("v-if",!0),z("div",{ref_key:"wrapperRef",ref:O,class:T(c.value)},[te(" prefix slot "),Pe.$slots.prefix||e.prefixIcon?(x(),B("span",{key:0,class:T(i(h).e("prefix"))},[z("span",{class:T(i(h).e("prefix-inner"))},[ee(Pe.$slots,"prefix"),e.prefixIcon?(x(),oe(i(De),{key:0,class:T(i(h).e("icon"))},{default:J(()=>[(x(),oe(it(e.prefixIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)):te("v-if",!0),z("input",dt({id:i(v),ref_key:"input",ref:b,class:i(h).e("inner")},i(r),{name:e.name,minlength:e.minlength,maxlength:e.maxlength,type:e.showPassword?S.value?"text":"password":e.type,disabled:i(p),readonly:e.readonly,autocomplete:e.autocomplete,tabindex:e.tabindex,"aria-label":e.ariaLabel,placeholder:e.placeholder,style:e.inputStyle,form:e.form,autofocus:e.autofocus,role:e.containerRole,inputmode:e.inputmode,onCompositionstart:Ae[0]||(Ae[0]=(...je)=>i(ve)&&i(ve)(...je)),onCompositionupdate:Ae[1]||(Ae[1]=(...je)=>i(ke)&&i(ke)(...je)),onCompositionend:Ae[2]||(Ae[2]=(...je)=>i(Ne)&&i(Ne)(...je)),onInput:Z,onChange:re,onKeydown:Me}),null,16,HD),te(" suffix slot "),X.value?(x(),B("span",{key:1,class:T(i(h).e("suffix"))},[z("span",{class:T(i(h).e("suffix-inner"))},[!L.value||!D.value||!F.value?(x(),B(Fe,{key:0},[ee(Pe.$slots,"suffix"),e.suffixIcon?(x(),oe(i(De),{key:0,class:T(i(h).e("icon"))},{default:J(()=>[(x(),oe(it(e.suffixIcon)))]),_:1},8,["class"])):te("v-if",!0)],64)):te("v-if",!0),L.value?(x(),oe(i(De),{key:1,class:T([i(h).e("icon"),i(h).e("clear")]),onMousedown:Xe(i(Dt),["prevent"]),onClick:Ze},{default:J(()=>[(x(),oe(it(e.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0),D.value?(x(),oe(i(De),{key:2,class:T([i(h).e("icon"),i(h).e("password")]),onClick:Ie,onMousedown:Xe(i(Dt),["prevent"]),onMouseup:Xe(i(Dt),["prevent"])},{default:J(()=>[(x(),oe(it(U.value)))]),_:1},8,["class","onMousedown","onMouseup"])):te("v-if",!0),F.value?(x(),B("span",{key:3,class:T([i(h).e("count"),i(h).is("outside",e.wordLimitPosition==="outside")])},[z("span",{class:T(i(h).e("count-inner"))},Se(q.value)+" / "+Se(e.maxlength),3)],2)):te("v-if",!0),V.value&&H.value&&_.value?(x(),oe(i(De),{key:4,class:T([i(h).e("icon"),i(h).e("validateIcon"),i(h).is("loading",V.value==="validating")])},{default:J(()=>[(x(),oe(it(H.value)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)):te("v-if",!0)],2),te(" append slot "),Pe.$slots.append?(x(),B("div",{key:1,class:T(i(h).be("group","append"))},[ee(Pe.$slots,"append")],2)):te("v-if",!0)],64)):(x(),B(Fe,{key:1},[te(" textarea "),z("textarea",dt({id:i(v),ref_key:"textarea",ref:k,class:[i(m).e("inner"),i(h).is("focus",i(N)),i(m).is("clearable",e.clearable)]},i(r),{name:e.name,minlength:e.minlength,maxlength:e.maxlength,tabindex:e.tabindex,disabled:i(p),readonly:e.readonly,autocomplete:e.autocomplete,style:P.value,"aria-label":e.ariaLabel,placeholder:e.placeholder,form:e.form,autofocus:e.autofocus,rows:e.rows,role:e.containerRole,onCompositionstart:Ae[3]||(Ae[3]=(...je)=>i(ve)&&i(ve)(...je)),onCompositionupdate:Ae[4]||(Ae[4]=(...je)=>i(ke)&&i(ke)(...je)),onCompositionend:Ae[5]||(Ae[5]=(...je)=>i(Ne)&&i(Ne)(...je)),onInput:Z,onFocus:Ae[6]||(Ae[6]=(...je)=>i(R)&&i(R)(...je)),onBlur:Ae[7]||(Ae[7]=(...je)=>i(A)&&i(A)(...je)),onChange:re,onKeydown:Me}),null,16,KD),L.value?(x(),oe(i(De),{key:0,class:T([i(m).e("icon"),i(m).e("clear")]),onMousedown:Xe(i(Dt),["prevent"]),onClick:Ze},{default:J(()=>[(x(),oe(it(e.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0),F.value?(x(),B("span",{key:1,style:Ke(C.value),class:T([i(h).e("count"),i(h).is("outside",e.wordLimitPosition==="outside")])},Se(q.value)+" / "+Se(e.maxlength),7)):te("v-if",!0)],64))],38))}}),jD=WD;const ea=rt(jD),UD=Ce({...gu,valueKey:{type:String,default:"value"},modelValue:{type:[String,Number],default:""},debounce:{type:Number,default:300},placement:{type:G(String),values:["top","top-start","top-end","bottom","bottom-start","bottom-end"],default:"bottom-start"},fetchSuggestions:{type:G([Function,Array]),default:Dt},popperClass:zt.popperClass,popperStyle:zt.popperStyle,triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:zt.teleported,appendTo:zt.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean,loopNavigation:{type:Boolean,default:!0}}),qD={[at]:e=>Le(e)||He(e),[Sn]:e=>Le(e)||He(e),[yt]:e=>Le(e)||He(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>ot(e)},YD=Ce({distance:{type:Number,default:0},height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:Boolean,wrapStyle:{type:G([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20},tabindex:{type:[String,Number],default:void 0},id:String,role:String,...aa(["ariaLabel","ariaOrientation"])}),nk={"end-reached":e=>["left","right","top","bottom"].includes(e),scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(He)},Vr=4,ak={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},GD=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),XD=Ce({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),im=Symbol("scrollbarContextKey"),JD=Ce({always:{type:Boolean,default:!0},minSize:{type:Number,required:!0}}),ZD="Thumb";var QD=se({__name:"thumb",props:XD,setup(e){const t=e,n=_e(im),a=fe("scrollbar");n||nn(ZD,"can not inject scrollbar context");const o=M(),s=M(),r=M({}),l=M(!1);let u=!1,c=!1,d=0,f=0,v=Mt?document.onselectstart:null;const g=w(()=>ak[t.vertical?"vertical":"horizontal"]),p=w(()=>GD({size:t.size,move:t.move,bar:g.value})),h=w(()=>o.value[g.value.offset]**2/n.wrapElement[g.value.scrollSize]/t.ratio/s.value[g.value.offset]),m=O=>{if(O.stopPropagation(),O.ctrlKey||[1,2].includes(O.button))return;window.getSelection()?.removeAllRanges(),k(O);const N=O.currentTarget;N&&(r.value[g.value.axis]=N[g.value.offset]-(O[g.value.client]-N.getBoundingClientRect()[g.value.direction]))},b=O=>{if(!s.value||!o.value||!n.wrapElement)return;const N=(Math.abs(O.target.getBoundingClientRect()[g.value.direction]-O[g.value.client])-s.value[g.value.offset]/2)*100*h.value/o.value[g.value.offset];n.wrapElement[g.value.scroll]=N*n.wrapElement[g.value.scrollSize]/100},k=O=>{O.stopImmediatePropagation(),u=!0,d=n.wrapElement.scrollHeight,f=n.wrapElement.scrollWidth,document.addEventListener("mousemove",y),document.addEventListener("mouseup",S),v=document.onselectstart,document.onselectstart=()=>!1},y=O=>{if(!o.value||!s.value||u===!1)return;const N=r.value[g.value.axis];if(!N)return;const R=((o.value.getBoundingClientRect()[g.value.direction]-O[g.value.client])*-1-(s.value[g.value.offset]-N))*100*h.value/o.value[g.value.offset];g.value.scroll==="scrollLeft"?n.wrapElement[g.value.scroll]=R*f/100:n.wrapElement[g.value.scroll]=R*d/100},S=()=>{u=!1,r.value[g.value.axis]=0,document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",S),$(),c&&(l.value=!1)},C=()=>{c=!1,l.value=!!t.size},E=()=>{c=!0,l.value=u};Bt(()=>{$(),document.removeEventListener("mouseup",S)});const $=()=>{document.onselectstart!==v&&(document.onselectstart=v)};return Ft(Vt(n,"scrollbarElement"),"mousemove",C),Ft(Vt(n,"scrollbarElement"),"mouseleave",E),(O,N)=>(x(),oe(Vn,{name:i(a).b("fade"),persisted:""},{default:J(()=>[ut(z("div",{ref_key:"instance",ref:o,class:T([i(a).e("bar"),i(a).is(g.value.key)]),onMousedown:b,onClick:N[0]||(N[0]=Xe(()=>{},["stop"]))},[z("div",{ref_key:"thumb",ref:s,class:T(i(a).e("thumb")),style:Ke(p.value),onMousedown:m},null,38)],34),[[Pt,e.always||l.value]])]),_:1},8,["name"]))}}),Ty=QD,eB=se({__name:"bar",props:JD,setup(e,{expose:t}){const n=e,a=_e(im),o=M(0),s=M(0),r=M(""),l=M(""),u=M(1),c=M(1);return t({handleScroll:v=>{if(v){const g=v.offsetHeight-Vr,p=v.offsetWidth-Vr;s.value=v.scrollTop*100/g*u.value,o.value=v.scrollLeft*100/p*c.value}},update:()=>{const v=a?.wrapElement;if(!v)return;const g=v.offsetHeight-Vr,p=v.offsetWidth-Vr,h=g**2/v.scrollHeight,m=p**2/v.scrollWidth,b=Math.max(h,n.minSize),k=Math.max(m,n.minSize);u.value=h/(g-h)/(b/(g-b)),c.value=m/(p-m)/(k/(p-k)),l.value=b+Vr(x(),B(Fe,null,[Y(Ty,{move:o.value,ratio:c.value,size:r.value,always:e.always},null,8,["move","ratio","size","always"]),Y(Ty,{move:s.value,ratio:u.value,size:l.value,vertical:"",always:e.always},null,8,["move","ratio","size","always"])],64))}}),tB=eB;const nB=["tabindex"],qf="ElScrollbar";var aB=se({name:qf,__name:"scrollbar",props:YD,emits:nk,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("scrollbar");let r,l,u,c=0,d=0,f="";const v={bottom:!1,top:!1,right:!1,left:!1},g=M(),p=M(),h=M(),m=M(),b=w(()=>{const _={},V=ln(a.height),H=ln(a.maxHeight);return V&&(_.height=V),H&&(_.maxHeight=H),[a.wrapStyle,_]}),k=w(()=>[a.wrapClass,s.e("wrap"),{[s.em("wrap","hidden-default")]:!a.native}]),y=w(()=>[s.e("view"),a.viewClass]),S=_=>v[_]??!1,C={top:"bottom",bottom:"top",left:"right",right:"left"},E=_=>{const V=C[f];if(!V)return;const H=_[f],U=_[V];H&&!v[f]&&(v[f]=!0),!U&&v[V]&&(v[V]=!1)},$=()=>{if(p.value){m.value?.handleScroll(p.value);const _=c,V=d;c=p.value.scrollTop,d=p.value.scrollLeft;const H={bottom:c+p.value.clientHeight>=p.value.scrollHeight-a.distance,top:c<=a.distance&&_!==0,right:d+p.value.clientWidth>=p.value.scrollWidth-a.distance&&V!==d,left:d<=a.distance&&V!==0};if(o("scroll",{scrollTop:c,scrollLeft:d}),_!==c&&(f=c>_?"bottom":"top"),V!==d&&(f=d>V?"right":"left"),a.distance>0){if(S(f))return;E(H)}H[f]&&o("end-reached",f)}};function O(_,V){ot(_)?p.value.scrollTo(_):He(_)&&He(V)&&p.value.scrollTo(_,V)}const N=_=>{if(!He(_)){pt(qf,"value must be a number");return}p.value.scrollTop=_},R=_=>{if(!He(_)){pt(qf,"value must be a number");return}p.value.scrollLeft=_},A=()=>{m.value?.update(),v[f]=!1};return le(()=>a.noresize,_=>{_?(r?.(),l?.(),u?.()):({stop:r}=en(h,A),{stop:l}=en(p,A),u=Ft("resize",A))},{immediate:!0}),le(()=>[a.maxHeight,a.height],()=>{a.native||Re(()=>{A(),p.value&&m.value?.handleScroll(p.value)})}),St(im,At({scrollbarElement:g,wrapElement:p})),Gi(()=>{p.value&&(p.value.scrollTop=c,p.value.scrollLeft=d)}),ht(()=>{a.native||Re(()=>{A()})}),ro(()=>A()),t({wrapRef:p,update:A,scrollTo:O,setScrollTop:N,setScrollLeft:R,handleScroll:$}),(_,V)=>(x(),B("div",{ref_key:"scrollbarRef",ref:g,class:T(i(s).b())},[z("div",{ref_key:"wrapRef",ref:p,class:T(k.value),style:Ke(b.value),tabindex:e.tabindex,onScroll:$},[(x(),oe(it(e.tag),{id:e.id,ref_key:"resizeRef",ref:h,class:T(y.value),style:Ke(e.viewStyle),role:e.role,"aria-label":e.ariaLabel,"aria-orientation":e.ariaOrientation},{default:J(()=>[ee(_.$slots,"default")]),_:3},8,["id","class","style","role","aria-label","aria-orientation"]))],46,nB),e.native?te("v-if",!0):(x(),oe(tB,{key:0,ref_key:"barRef",ref:m,always:e.always,"min-size":e.minSize},null,8,["always","min-size"]))],2))}}),oB=aB;const ao=rt(oB),sB=["aria-expanded","aria-owns"],rB={key:0},lB=["id","aria-selected","onClick"],$y="ElAutocomplete";var iB=se({name:$y,inheritAttrs:!1,__name:"autocomplete",props:UD,emits:qD,setup(e,{expose:t,emit:n}){const a=e,o=n,s=w(()=>ss(a,Object.keys(gu))),r=fs(),l=un(),u=fe("autocomplete"),c=M(),d=M(),f=M(),v=M();let g=!1,p=!1;const h=M([]),m=M(-1),b=M(""),k=M(!1),y=M(!1),S=M(!1),C=zn(),E=w(()=>r.style),$=w(()=>(h.value.length>0||S.value)&&k.value),O=w(()=>!a.hideLoading&&S.value),N=w(()=>c.value?Array.from(c.value.$el.querySelectorAll("input")):[]),R=()=>{$.value&&(b.value=`${c.value.$el.offsetWidth}px`)},A=()=>{m.value=-1},_=async ae=>{if(y.value)return;const ne=K=>{S.value=!1,!y.value&&(ye(K)?(h.value=K,m.value=a.highlightFirstItem?0:-1):nn($y,"autocomplete suggestions must be an array"))};if(S.value=!0,ye(a.fetchSuggestions))ne(a.fetchSuggestions);else{const K=await a.fetchSuggestions(ae,ne);ye(K)&&ne(K)}},V=ou(_,w(()=>a.debounce)),H=ae=>{const ne=!!ae;if(o(Sn,ae),o(at,ae),y.value=!1,k.value||=ne,!a.triggerOnFocus&&!ae){y.value=!0,h.value=[];return}V(ae)},U=ae=>{l.value||(ae.target?.tagName!=="INPUT"||N.value.includes(document.activeElement))&&(k.value=!0)},W=ae=>{o(yt,ae)},P=ae=>{if(p)p=!1;else{k.value=!0,o("focus",ae);const ne=a.modelValue??"";a.triggerOnFocus&&!g&&V(String(ne))}},I=ae=>{setTimeout(()=>{if(f.value?.isFocusInsideContent()){p=!0;return}k.value&&q(),o("blur",ae)})},L=()=>{k.value=!1,o(at,""),o("clear")},D=async()=>{c.value?.isComposing||($.value&&m.value>=0&&m.value{$.value&&(ae.preventDefault(),ae.stopPropagation(),q())},q=()=>{k.value=!1},j=()=>{c.value?.focus()},X=()=>{c.value?.blur()},Q=async ae=>{o(Sn,ae[a.valueKey]),o(at,ae[a.valueKey]),o("select",ae),h.value=[],m.value=-1},he=ae=>{if(!$.value||S.value)return;if(ae<0){if(!a.loopNavigation){m.value=-1;return}ae=h.value.length-1}ae>=h.value.length&&(ae=a.loopNavigation?0:h.value.length-1);const[ne,K]=ue(),Z=K[ae],re=ne.scrollTop,{offsetTop:ce,scrollHeight:ve}=Z;ce+ve>re+ne.clientHeight&&(ne.scrollTop=ce+ve-ne.clientHeight),ce{const ae=d.value.querySelector(`.${u.be("suggestion","wrap")}`);return[ae,ae.querySelectorAll(`.${u.be("suggestion","list")} li`)]},ge=Mv(v,ae=>{if(f.value?.isFocusInsideContent())return;const ne=p;p=!1,$.value&&(ne?I(new FocusEvent("blur",ae)):q())}),ie=ae=>{switch(jt(ae)){case we.up:ae.preventDefault(),he(m.value-1);break;case we.down:ae.preventDefault(),he(m.value+1);break;case we.enter:case we.numpadEnter:ae.preventDefault(),D();break;case we.tab:q();break;case we.esc:F(ae);break;case we.home:ae.preventDefault(),he(0);break;case we.end:ae.preventDefault(),he(h.value.length-1);break;case we.pageUp:ae.preventDefault(),he(Math.max(0,m.value-10));break;case we.pageDown:ae.preventDefault(),he(Math.min(h.value.length-1,m.value+10));break}};return Bt(()=>{ge?.()}),ht(()=>{const ae=c.value?.ref;ae&&([{key:"role",value:"textbox"},{key:"aria-autocomplete",value:"list"},{key:"aria-controls",value:C.value},{key:"aria-activedescendant",value:`${C.value}-item-${m.value}`}].forEach(({key:ne,value:K})=>ae.setAttribute(ne,K)),g=ae.hasAttribute("readonly"))}),t({highlightedIndex:m,activated:k,loading:S,inputRef:c,popperRef:f,suggestions:h,handleSelect:Q,handleKeyEnter:D,focus:j,blur:X,close:q,highlight:he,getData:_}),(ae,ne)=>(x(),oe(i(Ln),{ref_key:"popperRef",ref:f,visible:$.value,placement:e.placement,"fallback-placements":["bottom-start","top-start"],"popper-class":[i(u).e("popper"),e.popperClass],"popper-style":e.popperStyle,teleported:e.teleported,"append-to":e.appendTo,"gpu-acceleration":!1,pure:"","manual-mode":"",effect:"light",trigger:"click",transition:`${i(u).namespace.value}-zoom-in-top`,persistent:"",role:"listbox",onBeforeShow:R,onHide:A},{content:J(()=>[z("div",{ref_key:"regionRef",ref:d,class:T([i(u).b("suggestion"),i(u).is("loading",O.value)]),style:Ke({[e.fitInputWidth?"width":"minWidth"]:b.value,outline:"none"}),role:"region"},[ae.$slots.header?(x(),B("div",{key:0,class:T(i(u).be("suggestion","header")),onClick:ne[0]||(ne[0]=Xe(()=>{},["stop"]))},[ee(ae.$slots,"header")],2)):te("v-if",!0),Y(i(ao),{id:i(C),tag:"ul","wrap-class":i(u).be("suggestion","wrap"),"view-class":i(u).be("suggestion","list"),role:"listbox"},{default:J(()=>[O.value?(x(),B("li",rB,[ee(ae.$slots,"loading",{},()=>[Y(i(De),{class:T(i(u).is("loading"))},{default:J(()=>[Y(i(Ao))]),_:1},8,["class"])])])):(x(!0),B(Fe,{key:1},gt(h.value,(K,Z)=>(x(),B("li",{id:`${i(C)}-item-${Z}`,key:Z,class:T({highlighted:m.value===Z}),role:"option","aria-selected":m.value===Z,onClick:re=>Q(K)},[ee(ae.$slots,"default",{item:K},()=>[wt(Se(K[e.valueKey]),1)])],10,lB))),128))]),_:3},8,["id","wrap-class","view-class"]),ae.$slots.footer?(x(),B("div",{key:1,class:T(i(u).be("suggestion","footer")),onClick:ne[1]||(ne[1]=Xe(()=>{},["stop"]))},[ee(ae.$slots,"footer")],2)):te("v-if",!0)],6)]),default:J(()=>[z("div",{ref_key:"listboxRef",ref:v,class:T([i(u).b(),ae.$attrs.class]),style:Ke(E.value),role:"combobox","aria-haspopup":"listbox","aria-expanded":$.value,"aria-owns":i(C)},[Y(i(ea),dt({ref_key:"inputRef",ref:c},dt(s.value,ae.$attrs),{"model-value":e.modelValue,disabled:i(l),onInput:H,onChange:W,onFocus:P,onBlur:I,onClear:L,onKeydown:ie,onMousedown:U}),ua({_:2},[ae.$slots.prepend?{name:"prepend",fn:J(()=>[ee(ae.$slots,"prepend")]),key:"0"}:void 0,ae.$slots.append?{name:"append",fn:J(()=>[ee(ae.$slots,"append")]),key:"1"}:void 0,ae.$slots.prefix?{name:"prefix",fn:J(()=>[ee(ae.$slots,"prefix")]),key:"2"}:void 0,ae.$slots.suffix?{name:"suffix",fn:J(()=>[ee(ae.$slots,"suffix")]),key:"3"}:void 0]),1040,["model-value","disabled"])],14,sB)]),_:3},8,["visible","placement","popper-class","popper-style","teleported","append-to","transition"]))}}),uB=iB;const cB=rt(uB),dB=Ce({size:{type:[Number,String],values:lo,validator:e=>He(e)},shape:{type:String,values:["circle","square"]},icon:{type:Kt},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:G(String),default:"cover"}}),fB={error:e=>e instanceof Event},ok=Symbol("avatarGroupContextKey"),pB={size:{type:G([Number,String]),values:lo,validator:e=>He(e)},shape:{type:G(String),values:["circle","square"]},collapseAvatars:Boolean,collapseAvatarsTooltip:Boolean,maxCollapseAvatars:{type:Number,default:1},effect:{type:G(String),default:"light"},placement:{type:G(String),values:Do,default:"top"},popperClass:zt.popperClass,popperStyle:zt.popperStyle,collapseClass:String,collapseStyle:{type:G([String,Array,Object])}},hB=["src","alt","srcset"];var vB=se({name:"ElAvatar",__name:"avatar",props:dB,emits:fB,setup(e,{emit:t}){const n=e,a=t,o=_e(ok,void 0),s=fe("avatar"),r=M(!1),l=w(()=>n.size??o?.size),u=w(()=>n.shape??o?.shape??"circle"),c=w(()=>{const{icon:g}=n,p=[s.b()];return Le(l.value)&&p.push(s.m(l.value)),g&&p.push(s.m("icon")),u.value&&p.push(s.m(u.value)),p}),d=w(()=>He(l.value)?s.cssVarBlock({size:ln(l.value)}):void 0),f=w(()=>({objectFit:n.fit}));le(()=>[n.src,n.srcSet],()=>r.value=!1);function v(g){r.value=!0,a("error",g)}return(g,p)=>(x(),B("span",{class:T(c.value),style:Ke(d.value)},[(e.src||e.srcSet)&&!r.value?(x(),B("img",{key:0,src:e.src,alt:e.alt,srcset:e.srcSet,style:Ke(f.value),onError:v},null,44,hB)):e.icon?(x(),oe(i(De),{key:1},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1})):ee(g.$slots,"default",{key:2})],6))}}),sk=vB,rk=se({name:"ElAvatarGroup",props:pB,setup(e,{slots:t}){const n=fe("avatar-group");return St(ok,At({size:Vt(e,"size"),shape:Vt(e,"shape")})),()=>{const a=Ta(t.default?.()??[]);let o=a;if(e.collapseAvatars&&a.length>e.maxCollapseAvatars){o=a.slice(0,e.maxCollapseAvatars);const s=a.slice(e.maxCollapseAvatars);o.push(Y(Ln,{popperClass:e.popperClass,popperStyle:e.popperStyle,placement:e.placement,effect:e.effect,disabled:!e.collapseAvatarsTooltip},{default:()=>Y(sk,{size:e.size,shape:e.shape,class:e.collapseClass,style:e.collapseStyle},{default:()=>[wt("+ "),s.length]}),content:()=>Y("div",{class:n.e("collapse-avatars")},[s.map((r,l)=>Ut(r)?Io(r,{key:r.key??l}):r)])}))}return Y("div",{class:n.b()},[o])}}});const mB=rt(sk,{AvatarGroup:rk}),gB=an(rk),bB={visibilityHeight:{type:Number,default:200},target:{type:String,default:""},right:{type:Number,default:40},bottom:{type:Number,default:40}},yB={click:e=>e instanceof MouseEvent},wB=(e,t,n)=>{const a=Xt(),o=Xt(),s=M(!1),r=()=>{a.value&&(s.value=a.value.scrollTop>=e.visibilityHeight)},l=u=>{a.value?.scrollTo({top:0,behavior:"smooth"}),t("click",u)};return Ft(o,"scroll",WS(r,300,!0)),ht(()=>{o.value=document,a.value=document.documentElement,e.target&&(a.value=document.querySelector(e.target)??void 0,a.value||nn(n,`target does not exist: ${e.target}`),o.value=a.value),r()}),{visible:s,handleClick:l}},Oy="ElBacktop";var SB=se({name:Oy,__name:"backtop",props:bB,emits:yB,setup(e,{emit:t}){const n=e,a=t,o=fe("backtop"),{handleClick:s,visible:r}=wB(n,a,Oy),l=w(()=>({right:`${n.right}px`,bottom:`${n.bottom}px`}));return(u,c)=>(x(),oe(Vn,{name:`${i(o).namespace.value}-fade-in`},{default:J(()=>[i(r)?(x(),B("div",{key:0,style:Ke(l.value),class:T(i(o).b()),onClick:c[0]||(c[0]=Xe((...d)=>i(s)&&i(s)(...d),["stop"]))},[ee(u.$slots,"default",{},()=>[Y(i(De),{class:T(i(o).e("icon"))},{default:J(()=>[Y(i(Y4))]),_:1},8,["class"])])],6)):te("v-if",!0)]),_:3},8,["name"]))}}),CB=SB;const kB=rt(CB),EB=Ce({value:{type:[String,Number],default:""},max:{type:Number,default:99},isDot:Boolean,hidden:Boolean,type:{type:String,values:["primary","success","warning","info","danger"],default:"danger"},showZero:{type:Boolean,default:!0},color:String,badgeStyle:{type:G([String,Object,Array])},offset:{type:G(Array),default:()=>[0,0]},badgeClass:{type:String}});var xB=se({name:"ElBadge",__name:"badge",props:EB,setup(e,{expose:t}){const n=e,a=fe("badge"),o=w(()=>n.isDot?"":He(n.value)&&He(n.max)?n.max[{backgroundColor:n.color,marginRight:ln(-n.offset[0]),marginTop:ln(n.offset[1])},n.badgeStyle??{}]);return t({content:o}),(r,l)=>(x(),B("div",{class:T(i(a).b())},[ee(r.$slots,"default"),Y(Vn,{name:`${i(a).namespace.value}-zoom-in-center`},{default:J(()=>[!e.hidden&&(o.value||e.isDot||r.$slots.content)?(x(),B("sup",{key:0,class:T([i(a).e("content"),i(a).em("content",e.type),i(a).is("fixed",!!r.$slots.default),i(a).is("dot",e.isDot),i(a).is("hide-zero",!e.showZero&&e.value===0),e.badgeClass]),style:Ke(s.value)},[ee(r.$slots,"content",{value:o.value},()=>[wt(Se(o.value),1)])],6)):te("v-if",!0)]),_:3},8,["name"])],2))}}),TB=xB;const lk=rt(TB),$B=Ce({separator:{type:String,default:"/"},separatorIcon:{type:Kt}}),ik=Symbol("breadcrumbKey"),OB=Ce({to:{type:G([String,Object]),default:""},replace:Boolean}),RB=["aria-label"];var NB=se({name:"ElBreadcrumb",__name:"breadcrumb",props:$B,setup(e){const{t}=Ct(),n=e,a=fe("breadcrumb"),o=M();return St(ik,n),ht(()=>{const s=o.value.querySelectorAll(`.${a.e("item")}`);s.length&&s[s.length-1].setAttribute("aria-current","page")}),(s,r)=>(x(),B("div",{ref_key:"breadcrumb",ref:o,class:T(i(a).b()),"aria-label":i(t)("el.breadcrumb.label"),role:"navigation"},[ee(s.$slots,"default")],10,RB))}}),IB=NB,PB=se({name:"ElBreadcrumbItem",__name:"breadcrumb-item",props:OB,setup(e){const t=e,n=ft(),a=_e(ik,void 0),o=fe("breadcrumb"),s=n.appContext.config.globalProperties.$router,r=()=>{!t.to||!s||(t.replace?s.replace(t.to):s.push(t.to))};return(l,u)=>(x(),B("span",{class:T(i(o).e("item"))},[z("span",{class:T([i(o).e("inner"),i(o).is("link",!!e.to)]),role:"link",onClick:r},[ee(l.$slots,"default")],2),i(a)?.separatorIcon?(x(),oe(i(De),{key:0,class:T(i(o).e("separator"))},{default:J(()=>[(x(),oe(it(i(a).separatorIcon)))]),_:1},8,["class"])):(x(),B("span",{key:1,class:T(i(o).e("separator")),role:"presentation"},Se(i(a)?.separator),3))],2))}}),uk=PB;const MB=rt(IB,{BreadcrumbItem:uk}),_B=an(uk),Jp=["default","primary","success","warning","info","danger","text",""],AB=["button","submit","reset"],Zp=Ce({size:Tn,disabled:{type:Boolean,default:void 0},type:{type:String,values:Jp,default:""},icon:{type:Kt},nativeType:{type:String,values:AB,default:"button"},loading:Boolean,loadingIcon:{type:Kt,default:()=>Ao},plain:{type:Boolean,default:void 0},text:{type:Boolean,default:void 0},link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,dashed:{type:Boolean,default:void 0},color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:G([String,Object]),default:"button"}}),LB={click:e=>e instanceof MouseEvent},ck=Symbol(),td=M();function gs(e,t=void 0){const n=ft()?_e(ck,td):td;return e?w(()=>n.value?.[e]??t):n}function of(e,t){const n=gs(),a=fe(e,w(()=>n.value?.namespace||di)),o=Ct(w(()=>n.value?.locale)),s=uu(w(()=>n.value?.zIndex||bC)),r=w(()=>i(t)||n.value?.size||"");return um(w(()=>i(n)||{})),{ns:a,locale:o,zIndex:s,size:r}}const um=(e,t,n=!1)=>{const a=!!ft(),o=a?gs():void 0,s=t?.provide??(a?St:void 0);if(!s){pt("provideGlobalConfig","provideGlobalConfig() can only be used inside setup().");return}const r=w(()=>{const l=i(e);return o?.value?DB(o.value,l):l});return s(ck,r),s(QS,w(()=>r.value.locale)),s(eC,w(()=>r.value.namespace)),s(yC,w(()=>r.value.zIndex)),s(PC,{size:w(()=>r.value.size||"")}),s(_C,w(()=>({emptyValues:r.value.emptyValues,valueOnClear:r.value.valueOnClear}))),(n||!td.value)&&(td.value=r.value),r},DB=(e,t)=>{const n=[...new Set([...Oi(e),...Oi(t)])],a={};for(const o of n)a[o]=t[o]!==void 0?t[o]:e[o];return a},BB=Ce({a11y:{type:Boolean,default:!0},locale:{type:G(Object)},size:Tn,button:{type:G(Object)},card:{type:G(Object)},dialog:{type:G(Object)},link:{type:G(Object)},experimentalFeatures:{type:G(Object)},keyboardNavigation:{type:Boolean,default:!0},message:{type:G(Object)},zIndex:Number,namespace:{type:String,default:"el"},table:{type:G(Object)},...Pr}),Gn={placement:"top"},FB=se({name:"ElConfigProvider",props:BB,setup(e,{slots:t}){const n=um(e);return le(()=>e.message,a=>{Object.assign(Gn,n?.value?.message??{},a??{})},{immediate:!0,deep:!0}),()=>ee(t,"default",{config:n?.value})}}),VB=rt(FB),dk=Symbol("buttonGroupContextKey"),zB=(e,t)=>{To({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},w(()=>e.type==="text"));const n=_e(dk,void 0),a=gs("button"),{form:o}=Dn(),s=Cn(w(()=>n?.size)),r=un(),l=M(),u=vn(),c=w(()=>e.type||n?.type||a.value?.type||""),d=w(()=>e.autoInsertSpace??a.value?.autoInsertSpace??!1),f=w(()=>e.plain??a.value?.plain??!1),v=w(()=>e.round??a.value?.round??!1),g=w(()=>e.text??a.value?.text??!1),p=w(()=>e.dashed??a.value?.dashed??!1),h=w(()=>e.tag==="button"?{ariaDisabled:r.value||e.loading,disabled:r.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),m=w(()=>{const k=u.default?.();if(d.value&&k?.length===1){const y=k[0];if(y?.type===Ol){const S=y.children;return new RegExp("^\\p{Unified_Ideograph}{2}$","u").test(S.trim())}}return!1});return{_disabled:r,_size:s,_type:c,_ref:l,_props:h,_plain:f,_round:v,_text:g,_dashed:p,shouldAddSpace:m,handleClick:k=>{if(r.value||e.loading){k.stopPropagation();return}e.nativeType==="reset"&&o?.resetFields(),t("click",k)}}};function jn(e,t){HB(e)&&(e="100%");const n=KB(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(t===360?e=(e<0?e%t+t:e%t)/parseFloat(String(t)):e=e%t/parseFloat(String(t)),e)}function Uu(e){return Math.min(1,Math.max(0,e))}function HB(e){return typeof e=="string"&&e.indexOf(".")!==-1&&parseFloat(e)===1}function KB(e){return typeof e=="string"&&e.indexOf("%")!==-1}function fk(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function qu(e){return Number(e)<=1?`${Number(e)*100}%`:e}function sr(e){return e.length===1?"0"+e:String(e)}function WB(e,t,n){return{r:jn(e,255)*255,g:jn(t,255)*255,b:jn(n,255)*255}}function Ry(e,t,n){e=jn(e,255),t=jn(t,255),n=jn(n,255);const a=Math.max(e,t,n),o=Math.min(e,t,n);let s=0,r=0;const l=(a+o)/2;if(a===o)r=0,s=0;else{const u=a-o;switch(r=l>.5?u/(2-a-o):u/(a+o),a){case e:s=(t-n)/u+(t1&&(n-=1),n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function jB(e,t,n){let a,o,s;if(e=jn(e,360),t=jn(t,100),n=jn(n,100),t===0)o=n,s=n,a=n;else{const r=n<.5?n*(1+t):n+t-n*t,l=2*n-r;a=Yf(l,r,e+1/3),o=Yf(l,r,e),s=Yf(l,r,e-1/3)}return{r:a*255,g:o*255,b:s*255}}function Ny(e,t,n){e=jn(e,255),t=jn(t,255),n=jn(n,255);const a=Math.max(e,t,n),o=Math.min(e,t,n);let s=0;const r=a,l=a-o,u=a===0?0:l/a;if(a===o)s=0;else{switch(a){case e:s=(t-n)/l+(t>16,g:(e&65280)>>8,b:e&255}}const Qp={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function JB(e){let t={r:0,g:0,b:0},n=1,a=null,o=null,s=null,r=!1,l=!1;return typeof e=="string"&&(e=e8(e)),typeof e=="object"&&(Ca(e.r)&&Ca(e.g)&&Ca(e.b)?(t=WB(e.r,e.g,e.b),r=!0,l=String(e.r).substr(-1)==="%"?"prgb":"rgb"):Ca(e.h)&&Ca(e.s)&&Ca(e.v)?(a=qu(e.s),o=qu(e.v),t=UB(e.h,a,o),r=!0,l="hsv"):Ca(e.h)&&Ca(e.s)&&Ca(e.l)?(a=qu(e.s),s=qu(e.l),t=jB(e.h,a,s),r=!0,l="hsl"):Ca(e.c)&&Ca(e.m)&&Ca(e.y)&&Ca(e.k)&&(t=YB(e.c,e.m,e.y,e.k),r=!0,l="cmyk"),Object.prototype.hasOwnProperty.call(e,"a")&&(n=e.a)),n=fk(n),{ok:r,format:e.format||l,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}const ZB="[-\\+]?\\d+%?",QB="[-\\+]?\\d*\\.\\d+%?",Is="(?:"+QB+")|(?:"+ZB+")",Gf="[\\s|\\(]+("+Is+")[,|\\s]+("+Is+")[,|\\s]+("+Is+")\\s*\\)?",Yu="[\\s|\\(]+("+Is+")[,|\\s]+("+Is+")[,|\\s]+("+Is+")[,|\\s]+("+Is+")\\s*\\)?",Aa={CSS_UNIT:new RegExp(Is),rgb:new RegExp("rgb"+Gf),rgba:new RegExp("rgba"+Yu),hsl:new RegExp("hsl"+Gf),hsla:new RegExp("hsla"+Yu),hsv:new RegExp("hsv"+Gf),hsva:new RegExp("hsva"+Yu),cmyk:new RegExp("cmyk"+Yu),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function e8(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;let t=!1;if(Qp[e])e=Qp[e],t=!0;else if(e==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};let n=Aa.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=Aa.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=Aa.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=Aa.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=Aa.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=Aa.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=Aa.cmyk.exec(e),n?{c:n[1],m:n[2],y:n[3],k:n[4]}:(n=Aa.hex8.exec(e),n?{r:ka(n[1]),g:ka(n[2]),b:ka(n[3]),a:My(n[4]),format:t?"name":"hex8"}:(n=Aa.hex6.exec(e),n?{r:ka(n[1]),g:ka(n[2]),b:ka(n[3]),format:t?"name":"hex"}:(n=Aa.hex4.exec(e),n?{r:ka(n[1]+n[1]),g:ka(n[2]+n[2]),b:ka(n[3]+n[3]),a:My(n[4]+n[4]),format:t?"name":"hex8"}:(n=Aa.hex3.exec(e),n?{r:ka(n[1]+n[1]),g:ka(n[2]+n[2]),b:ka(n[3]+n[3]),format:t?"name":"hex"}:!1))))))))))}function Ca(e){return typeof e=="number"?!Number.isNaN(e):Aa.CSS_UNIT.test(e)}class pn{constructor(t="",n={}){if(t instanceof pn)return t;typeof t=="number"&&(t=XB(t)),this.originalInput=t;const a=JB(t);this.originalInput=t,this.r=a.r,this.g=a.g,this.b=a.b,this.a=a.a,this.roundA=Math.round(100*this.a)/100,this.format=n.format??a.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=a.ok}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}getBrightness(){const t=this.toRgb();return(t.r*299+t.g*587+t.b*114)/1e3}getLuminance(){const t=this.toRgb();let n,a,o;const s=t.r/255,r=t.g/255,l=t.b/255;return s<=.03928?n=s/12.92:n=Math.pow((s+.055)/1.055,2.4),r<=.03928?a=r/12.92:a=Math.pow((r+.055)/1.055,2.4),l<=.03928?o=l/12.92:o=Math.pow((l+.055)/1.055,2.4),.2126*n+.7152*a+.0722*o}getAlpha(){return this.a}setAlpha(t){return this.a=fk(t),this.roundA=Math.round(100*this.a)/100,this}isMonochrome(){const{s:t}=this.toHsl();return t===0}toHsv(){const t=Ny(this.r,this.g,this.b);return{h:t.h*360,s:t.s,v:t.v,a:this.a}}toHsvString(){const t=Ny(this.r,this.g,this.b),n=Math.round(t.h*360),a=Math.round(t.s*100),o=Math.round(t.v*100);return this.a===1?`hsv(${n}, ${a}%, ${o}%)`:`hsva(${n}, ${a}%, ${o}%, ${this.roundA})`}toHsl(){const t=Ry(this.r,this.g,this.b);return{h:t.h*360,s:t.s,l:t.l,a:this.a}}toHslString(){const t=Ry(this.r,this.g,this.b),n=Math.round(t.h*360),a=Math.round(t.s*100),o=Math.round(t.l*100);return this.a===1?`hsl(${n}, ${a}%, ${o}%)`:`hsla(${n}, ${a}%, ${o}%, ${this.roundA})`}toHex(t=!1){return Iy(this.r,this.g,this.b,t)}toHexString(t=!1){return"#"+this.toHex(t)}toHex8(t=!1){return qB(this.r,this.g,this.b,this.a,t)}toHex8String(t=!1){return"#"+this.toHex8(t)}toHexShortString(t=!1){return this.a===1?this.toHexString(t):this.toHex8String(t)}toRgb(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}}toRgbString(){const t=Math.round(this.r),n=Math.round(this.g),a=Math.round(this.b);return this.a===1?`rgb(${t}, ${n}, ${a})`:`rgba(${t}, ${n}, ${a}, ${this.roundA})`}toPercentageRgb(){const t=n=>`${Math.round(jn(n,255)*100)}%`;return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}}toPercentageRgbString(){const t=n=>Math.round(jn(n,255)*100);return this.a===1?`rgb(${t(this.r)}%, ${t(this.g)}%, ${t(this.b)}%)`:`rgba(${t(this.r)}%, ${t(this.g)}%, ${t(this.b)}%, ${this.roundA})`}toCmyk(){return{...Py(this.r,this.g,this.b)}}toCmykString(){const{c:t,m:n,y:a,k:o}=Py(this.r,this.g,this.b);return`cmyk(${t}, ${n}, ${a}, ${o})`}toName(){if(this.a===0)return"transparent";if(this.a<1)return!1;const t="#"+Iy(this.r,this.g,this.b,!1);for(const[n,a]of Object.entries(Qp))if(t===a)return n;return!1}toString(t){const n=!!t;t=t??this.format;let a=!1;const o=this.a<1&&this.a>=0;return!n&&o&&(t.startsWith("hex")||t==="name")?t==="name"&&this.a===0?this.toName():this.toRgbString():(t==="rgb"&&(a=this.toRgbString()),t==="prgb"&&(a=this.toPercentageRgbString()),(t==="hex"||t==="hex6")&&(a=this.toHexString()),t==="hex3"&&(a=this.toHexString(!0)),t==="hex4"&&(a=this.toHex8String(!0)),t==="hex8"&&(a=this.toHex8String()),t==="name"&&(a=this.toName()),t==="hsl"&&(a=this.toHslString()),t==="hsv"&&(a=this.toHsvString()),t==="cmyk"&&(a=this.toCmykString()),a||this.toHexString())}toNumber(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)}clone(){return new pn(this.toString())}lighten(t=10){const n=this.toHsl();return n.l+=t/100,n.l=Uu(n.l),new pn(n)}brighten(t=10){const n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new pn(n)}darken(t=10){const n=this.toHsl();return n.l-=t/100,n.l=Uu(n.l),new pn(n)}tint(t=10){return this.mix("white",t)}shade(t=10){return this.mix("black",t)}desaturate(t=10){const n=this.toHsl();return n.s-=t/100,n.s=Uu(n.s),new pn(n)}saturate(t=10){const n=this.toHsl();return n.s+=t/100,n.s=Uu(n.s),new pn(n)}greyscale(){return this.desaturate(100)}spin(t){const n=this.toHsl(),a=(n.h+t)%360;return n.h=a<0?360+a:a,new pn(n)}mix(t,n=50){const a=this.toRgb(),o=new pn(t).toRgb(),s=n/100,r={r:(o.r-a.r)*s+a.r,g:(o.g-a.g)*s+a.g,b:(o.b-a.b)*s+a.b,a:(o.a-a.a)*s+a.a};return new pn(r)}analogous(t=6,n=30){const a=this.toHsl(),o=360/n,s=[this];for(a.h=(a.h-(o*t>>1)+720)%360;--t;)a.h=(a.h+o)%360,s.push(new pn(a));return s}complement(){const t=this.toHsl();return t.h=(t.h+180)%360,new pn(t)}monochromatic(t=6){const n=this.toHsv(),{h:a}=n,{s:o}=n;let{v:s}=n;const r=[],l=1/t;for(;t--;)r.push(new pn({h:a,s:o,v:s})),s=(s+l)%1;return r}splitcomplement(){const t=this.toHsl(),{h:n}=t;return[this,new pn({h:(n+72)%360,s:t.s,l:t.l}),new pn({h:(n+216)%360,s:t.s,l:t.l})]}onBackground(t){const n=this.toRgb(),a=new pn(t).toRgb(),o=n.a+a.a*(1-n.a);return new pn({r:(n.r*n.a+a.r*a.a*(1-n.a))/o,g:(n.g*n.a+a.g*a.a*(1-n.a))/o,b:(n.b*n.a+a.b*a.a*(1-n.a))/o,a:o})}triad(){return this.polyad(3)}tetrad(){return this.polyad(4)}polyad(t){const n=this.toHsl(),{h:a}=n,o=[this],s=360/t;for(let r=1;r{let a={},o=e.color;if(o){const s=o.match(/var\((.*?)\)/);s&&(o=window.getComputedStyle(window.document.documentElement).getPropertyValue(s[1]));const r=new pn(o),l=e.dark?r.tint(20).toString():ws(r,20);if(e.plain)a=n.cssVarBlock({"bg-color":e.dark?ws(r,90):r.tint(90).toString(),"text-color":o,"border-color":e.dark?ws(r,50):r.tint(50).toString(),"hover-text-color":`var(${n.cssVarName("color-white")})`,"hover-bg-color":o,"hover-border-color":o,"active-bg-color":l,"active-text-color":`var(${n.cssVarName("color-white")})`,"active-border-color":l}),t.value&&(a[n.cssVarBlockName("disabled-bg-color")]=e.dark?ws(r,90):r.tint(90).toString(),a[n.cssVarBlockName("disabled-text-color")]=e.dark?ws(r,50):r.tint(50).toString(),a[n.cssVarBlockName("disabled-border-color")]=e.dark?ws(r,80):r.tint(80).toString());else{const u=e.dark?ws(r,30):r.tint(30).toString(),c=r.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(a=n.cssVarBlock({"bg-color":o,"text-color":c,"border-color":o,"hover-bg-color":u,"hover-text-color":c,"hover-border-color":u,"active-bg-color":l,"active-border-color":l}),t.value){const d=e.dark?ws(r,50):r.tint(50).toString();a[n.cssVarBlockName("disabled-bg-color")]=d,a[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,a[n.cssVarBlockName("disabled-border-color")]=d}}}return a})}var n8=se({name:"ElButton",__name:"button",props:Zp,emits:LB,setup(e,{expose:t,emit:n}){const a=e,o=n,s=t8(a),r=fe("button"),{_ref:l,_size:u,_type:c,_disabled:d,_props:f,_plain:v,_round:g,_text:p,_dashed:h,shouldAddSpace:m,handleClick:b}=zB(a,o),k=w(()=>[r.b(),r.m(c.value),r.m(u.value),r.is("disabled",d.value),r.is("loading",a.loading),r.is("plain",v.value),r.is("round",g.value),r.is("circle",a.circle),r.is("text",p.value),r.is("dashed",h.value),r.is("link",a.link),r.is("has-bg",a.bg)]);return t({ref:l,size:u,type:c,disabled:d,shouldAddSpace:m}),(y,S)=>(x(),oe(it(e.tag),dt({ref_key:"_ref",ref:l},i(f),{class:k.value,style:i(s),onClick:i(b)}),{default:J(()=>[e.loading?(x(),B(Fe,{key:0},[y.$slots.loading?ee(y.$slots,"loading",{key:0}):(x(),oe(i(De),{key:1,class:T(i(r).is("loading"))},{default:J(()=>[(x(),oe(it(e.loadingIcon)))]),_:1},8,["class"]))],64)):e.icon||y.$slots.icon?(x(),oe(i(De),{key:1},{default:J(()=>[e.icon?(x(),oe(it(e.icon),{key:0})):ee(y.$slots,"icon",{key:1})]),_:3})):te("v-if",!0),y.$slots.default?(x(),B("span",{key:2,class:T({[i(r).em("text","expand")]:i(m)})},[ee(y.$slots,"default")],2)):te("v-if",!0)]),_:3},16,["class","style","onClick"]))}}),a8=n8;const o8={size:Zp.size,type:Zp.type,direction:{type:G(String),values:["horizontal","vertical"],default:"horizontal"}};var s8=se({name:"ElButtonGroup",__name:"button-group",props:o8,setup(e){const t=e;St(dk,At({size:Vt(t,"size"),type:Vt(t,"type")}));const n=fe("button");return(a,o)=>(x(),B("div",{class:T([i(n).b("group"),i(n).bm("group",t.direction)])},[ee(a.$slots,"default")],2))}}),pk=s8;const In=rt(a8,{ButtonGroup:pk}),hk=an(pk),r8=e=>ye(e)&&e.length===2&&e.every(t=>As(t)),l8=Ce({modelValue:{type:Date},range:{type:G(Array),validator:r8},controllerType:{type:String,values:["button","select"],default:"button"},formatter:{type:G(Function)}}),i8={[at]:e=>As(e),[Sn]:e=>As(e)},_y=["hours","minutes","seconds"],oo="EP_PICKER_BASE",cm="ElPopperOptions",vk=Symbol("commonPickerContextKey"),wl="HH:mm:ss",Os="YYYY-MM-DD",u8={date:Os,dates:Os,week:"gggg[w]ww",year:"YYYY",years:"YYYY",month:"YYYY-MM",months:"YYYY-MM",datetime:`${Os} ${wl}`,monthrange:"YYYY-MM",yearrange:"YYYY",daterange:Os,datetimerange:`${Os} ${wl}`};function bs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pc={exports:{}},c8=pc.exports,Ay;function d8(){return Ay||(Ay=1,(function(e,t){(function(n,a){e.exports=a()})(c8,(function(){var n=1e3,a=6e4,o=36e5,s="millisecond",r="second",l="minute",u="hour",c="day",d="week",f="month",v="quarter",g="year",p="date",h="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,k={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(H){var U=["th","st","nd","rd"],W=H%100;return"["+H+(U[(W-20)%10]||U[W]||U[0])+"]"}},y=function(H,U,W){var P=String(H);return!P||P.length>=U?H:""+Array(U+1-P.length).join(W)+H},S={s:y,z:function(H){var U=-H.utcOffset(),W=Math.abs(U),P=Math.floor(W/60),I=W%60;return(U<=0?"+":"-")+y(P,2,"0")+":"+y(I,2,"0")},m:function H(U,W){if(U.date()1)return H(D[0])}else{var F=U.name;E[F]=U,I=F}return!P&&I&&(C=I),I||!P&&C},R=function(H,U){if(O(H))return H.clone();var W=typeof U=="object"?U:{};return W.date=H,W.args=arguments,new _(W)},A=S;A.l=N,A.i=O,A.w=function(H,U){return R(H,{locale:U.$L,utc:U.$u,x:U.$x,$offset:U.$offset})};var _=(function(){function H(W){this.$L=N(W.locale,null,!0),this.parse(W),this.$x=this.$x||W.x||{},this[$]=!0}var U=H.prototype;return U.parse=function(W){this.$d=(function(P){var I=P.date,L=P.utc;if(I===null)return new Date(NaN);if(A.u(I))return new Date;if(I instanceof Date)return new Date(I);if(typeof I=="string"&&!/Z$/i.test(I)){var D=I.match(m);if(D){var F=D[2]-1||0,q=(D[7]||"0").substring(0,3);return L?new Date(Date.UTC(D[1],F,D[3]||1,D[4]||0,D[5]||0,D[6]||0,q)):new Date(D[1],F,D[3]||1,D[4]||0,D[5]||0,D[6]||0,q)}}return new Date(I)})(W),this.init()},U.init=function(){var W=this.$d;this.$y=W.getFullYear(),this.$M=W.getMonth(),this.$D=W.getDate(),this.$W=W.getDay(),this.$H=W.getHours(),this.$m=W.getMinutes(),this.$s=W.getSeconds(),this.$ms=W.getMilliseconds()},U.$utils=function(){return A},U.isValid=function(){return this.$d.toString()!==h},U.isSame=function(W,P){var I=R(W);return this.startOf(P)<=I&&I<=this.endOf(P)},U.isAfter=function(W,P){return R(W)[e>0?e-1:void 0,e,eArray.from(Array.from({length:e}).keys()),mk=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),gk=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),Ly=function(e,t){const n=As(e),a=As(t);return n&&a?e.getTime()===t.getTime():!n&&!a?e===t:!1},bk=function(e,t){const n=ye(e),a=ye(t);return n&&a?e.length!==t.length?!1:e.every((o,s)=>Ly(o,t[s])):!n&&!a?Ly(e,t):!1},Dy=function(e,t,n){const a=ia(t)||t==="x"?st(e).locale(n):st(e,t).locale(n);return a.isValid()?a:void 0},By=function(e,t,n){return ia(t)?e:t==="x"?+e:st(e).locale(n).format(t)},Jf=(e,t)=>{const n=[],a=t?.();for(let o=0;oye(e)?e.map(t=>t.toDate()):e.toDate(),dm=Ce({disabledHours:{type:G(Function)},disabledMinutes:{type:G(Function)},disabledSeconds:{type:G(Function)}}),yk=Ce({visible:Boolean,actualVisible:{type:Boolean,default:void 0},format:{type:String,default:""}}),fm=Ce({automaticDropdown:{type:Boolean,default:!0},id:{type:G([Array,String])},name:{type:G([Array,String])},popperClass:zt.popperClass,popperStyle:zt.popperStyle,format:String,valueFormat:String,dateFormat:String,timeFormat:String,type:{type:String,default:""},clearable:{type:Boolean,default:!0},clearIcon:{type:G([String,Object]),default:Vo},editable:{type:Boolean,default:!0},saveOnBlur:{type:Boolean,default:!0},prefixIcon:{type:G([String,Object]),default:""},size:Tn,readonly:Boolean,disabled:{type:Boolean,default:void 0},placeholder:{type:String,default:""},popperOptions:{type:G(Object),default:()=>({})},modelValue:{type:G([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:G([Date,Array])},defaultTime:{type:G([Date,Array])},isRange:Boolean,...dm,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,tabindex:{type:G([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean,placement:{type:G(String),values:Do,default:"bottom"},fallbackPlacements:{type:G(Array),default:["bottom","top","right","left"]},...Pr,...aa(["ariaLabel"]),showNow:{type:Boolean,default:!0},showConfirm:{type:Boolean,default:!0},showFooter:{type:Boolean,default:!0},showWeekNumber:Boolean}),p8=Ce({id:{type:G(Array)},name:{type:G(Array)},modelValue:{type:G([Array,String])},startPlaceholder:String,endPlaceholder:String,disabled:Boolean}),wk=(e,t)=>{const{lang:n}=Ct(),a=M(!1),o=M(!1),s=M(null),r=w(()=>{const{modelValue:p}=e;return!p||ye(p)&&!p.filter(Boolean).length}),l=p=>{if(!bk(e.modelValue,p)){let h;ye(p)?h=p.map(m=>By(m,e.valueFormat,n.value)):p&&(h=By(p,e.valueFormat,n.value)),t(at,p&&h,n.value)}},u=w(()=>{let p;if(r.value?c.value.getDefaultValue&&(p=c.value.getDefaultValue()):ye(e.modelValue)?p=e.modelValue.map(h=>Dy(h,e.valueFormat,n.value)):p=Dy(e.modelValue??"",e.valueFormat,n.value),c.value.getRangeAvailableTime){const h=c.value.getRangeAvailableTime(p);sn(h,p)||(p=h,r.value||l(hc(p)))}return ye(p)&&p.some(h=>!h)&&(p=[]),p}),c=M({});return{parsedValue:u,pickerActualVisible:o,pickerOptions:c,pickerVisible:a,userInput:s,valueIsEmpty:r,emitInput:l,onCalendarChange:p=>{t("calendar-change",p)},onPanelChange:(p,h,m)=>{t("panel-change",p,h,m)},onPick:(p="",h=!1)=>{a.value=h;let m;ye(p)?m=p.map(b=>b.toDate()):m=p&&p.toDate(),s.value=null,l(m)},onSetPickerOption:p=>{c.value[p[0]]=p[1],c.value.panelReady=!0}}},h8=["id","name","placeholder","value","disabled"],v8=["id","name","placeholder","value","disabled"];var m8=se({name:"PickerRangeTrigger",inheritAttrs:!1,__name:"picker-range-trigger",props:p8,emits:["mouseenter","mouseleave","click","touchstart","focus","blur","startInput","endInput","startChange","endChange"],setup(e,{expose:t,emit:n}){const a=e,o=n,{formItem:s}=Dn(),{inputId:r}=Ia(At({id:w(()=>a.id?.[0])}),{formItemContext:s}),l=Wd(),u=fe("date"),c=fe("range"),d=M(),f=M(),{wrapperRef:v,isFocused:g}=ms(d,{disabled:w(()=>a.disabled)}),p=O=>{o("click",O)},h=O=>{o("mouseenter",O)},m=O=>{o("mouseleave",O)},b=O=>{o("touchstart",O)},k=O=>{o("startInput",O)},y=O=>{o("endInput",O)},S=O=>{o("startChange",O)},C=O=>{o("endChange",O)};return t({focus:()=>{d.value?.focus()},blur:()=>{d.value?.blur(),f.value?.blur()}}),(O,N)=>(x(),B("div",{ref_key:"wrapperRef",ref:v,class:T([i(u).is("active",i(g)),O.$attrs.class]),style:Ke(O.$attrs.style),onClick:p,onMouseenter:h,onMouseleave:m,onTouchstartPassive:b},[ee(O.$slots,"prefix"),z("input",dt(i(l),{id:i(r),ref_key:"inputRef",ref:d,name:O.name&&O.name[0],placeholder:O.startPlaceholder,value:O.modelValue&&O.modelValue[0],class:i(c).b("input"),disabled:O.disabled,onInput:k,onChange:S}),null,16,h8),ee(O.$slots,"range-separator"),z("input",dt(i(l),{id:O.id&&O.id[1],ref_key:"endInputRef",ref:f,name:O.name&&O.name[1],placeholder:O.endPlaceholder,value:O.modelValue&&O.modelValue[1],class:i(c).b("input"),disabled:O.disabled,onInput:y,onChange:C}),null,16,v8),ee(O.$slots,"suffix")],38))}}),g8=m8,b8=se({name:"Picker",__name:"picker",props:fm,emits:[at,yt,"focus","blur","clear","calendar-change","panel-change","visible-change","keydown"],setup(e,{expose:t,emit:n}){const a=e,o=n,s=fs(),r=fe("date"),l=fe("input"),u=fe("range"),{formItem:c}=Dn(),d=_e(cm,{}),f=hu(a,null),v=M(),g=M(),p=M(null);let h=!1;const m=un(),b=wk(a,o),{parsedValue:k,pickerActualVisible:y,userInput:S,pickerVisible:C,pickerOptions:E,valueIsEmpty:$,emitInput:O,onPick:N,onSetPickerOption:R,onCalendarChange:A,onPanelChange:_}=b,{isFocused:V,handleFocus:H,handleBlur:U}=ms(g,{disabled:m,beforeFocus(){return a.readonly},afterFocus(){a.automaticDropdown&&(C.value=!0)},beforeBlur(de){return!h&&v.value?.isFocusInsideContent(de)},afterBlur(){ae.value&&!a.saveOnBlur?$.value||E.value.handleCancel?.():We(),C.value=!1,h=!1,a.validateEvent&&c?.validate("blur").catch(de=>pt(de))}}),W=M(!1),P=w(()=>[r.b("editor"),r.bm("editor",a.type),l.e("wrapper"),r.is("disabled",m.value),r.is("active",C.value),u.b("editor"),Ee?u.bm("editor",Ee.value):"",s.class]),I=w(()=>[l.e("icon"),u.e("close-icon"),ce.value?"":u.em("close-icon","hidden")]);le(C,de=>{de?Re(()=>{de&&(p.value=a.modelValue)}):(S.value=null,Re(()=>{L(a.modelValue)}))});const L=(de,Ge)=>{(Ge||!bk(de,p.value))&&(o(yt,de),Ge&&(p.value=de),a.validateEvent&&c?.validate("change").catch($t=>pt($t)))},D=de=>{o("keydown",de)},F=w(()=>g.value?Array.from(g.value.$el.querySelectorAll("input")):[]),q=(de,Ge,$t)=>{const tn=F.value;tn.length&&(!$t||$t==="min"?(tn[0].setSelectionRange(de,Ge),tn[0].focus()):$t==="max"&&(tn[1].setSelectionRange(de,Ge),tn[1].focus()))},j=()=>{y.value=!0},X=()=>{o("visible-change",!0)},Q=()=>{y.value=!1,C.value=!1,o("visible-change",!1)},he=()=>{C.value=!0},ue=()=>{C.value=!1},ge=w(()=>{const de=Pe(k.value);return ye(S.value)?[S.value[0]||de&&de[0]||"",S.value[1]||de&&de[1]||""]:S.value!==null?S.value:ae.value&&$.value&&!a.saveOnBlur||!ae.value&&$.value||!C.value&&$.value?"":de?ne.value||K.value||Z.value?de.join(", "):de:""}),ie=w(()=>a.type.includes("time")),ae=w(()=>a.type.startsWith("time")),ne=w(()=>a.type==="dates"),K=w(()=>a.type==="months"),Z=w(()=>a.type==="years"),re=w(()=>a.prefixIcon||(ie.value?BC:j4)),ce=w(()=>a.clearable&&!m.value&&!a.readonly&&!$.value&&(W.value||V.value)),ve=de=>{a.readonly||m.value||(ce.value&&(de?.stopPropagation(),E.value.handleClear?E.value.handleClear():O(f.valueOnClear.value),L(f.valueOnClear.value,!0),Q()),o("clear"))},ke=async de=>{a.readonly||m.value||(de.target?.tagName!=="INPUT"||V.value||!a.automaticDropdown)&&(C.value=!0)},Ne=()=>{a.readonly||m.value||!$.value&&a.clearable&&(W.value=!0)},Ie=()=>{W.value=!1},$e=de=>{a.readonly||m.value||(de.touches[0].target?.tagName!=="INPUT"||V.value||!a.automaticDropdown)&&(C.value=!0)},pe=w(()=>a.type.includes("range")),Ee=Cn(),me=w(()=>i(v)?.popperRef?.contentRef),Me=Mv(g,de=>{const Ge=i(me),$t=xn(g);Ge&&(de.target===Ge||de.composedPath().includes(Ge))||de.target===$t||$t&&de.composedPath().includes($t)||(C.value=!1)});Bt(()=>{Me?.()});const We=()=>{if(!(ae.value&&!a.saveOnBlur)){if(S.value){const de=Ze(ge.value);de&&(Ae(de)&&O(hc(de)),S.value=null)}S.value===""&&(O(f.valueOnClear.value),L(f.valueOnClear.value,!0),S.value=null)}},Ze=de=>de?E.value.parseUserInput(de):null,Pe=de=>de?ye(de)?de.map(Ge=>Ge.format(a.format)):de.format(a.format):null,Ae=de=>E.value.isValidValue(de),je=async de=>{if(a.readonly||m.value)return;const Ge=jt(de);if(D(de),Ge===we.esc){C.value===!0&&(C.value=!1,de.preventDefault(),de.stopPropagation());return}if(Ge===we.down&&(E.value.handleFocusPicker&&(de.preventDefault(),de.stopPropagation()),C.value===!1&&(C.value=!0,await Re()),E.value.handleFocusPicker)){E.value.handleFocusPicker();return}if(Ge===we.tab){h=!0;return}if(Ge===we.enter||Ge===we.numpadEnter){C.value?(S.value===null||S.value===""||Ae(Ze(ge.value)))&&(We(),C.value=!1):C.value=!0,de.preventDefault(),de.stopPropagation();return}if(S.value){de.stopPropagation();return}E.value.handleKeydownInput&&E.value.handleKeydownInput(de)},Rt=de=>{S.value=de,C.value||(C.value=!0)},Ue=de=>{const Ge=de.target;S.value?S.value=[Ge.value,S.value[1]]:S.value=[Ge.value,null]},lt=de=>{const Ge=de.target;S.value?S.value=[S.value[0],Ge.value]:S.value=[null,Ge.value]},mt=()=>{const de=S.value,Ge=Ze(de&&de[0]),$t=i(k);if(Ge&&Ge.isValid()){S.value=[Pe(Ge),ge.value?.[1]||null];const tn=[Ge,$t&&($t[1]||null)];Ae(tn)&&(O(hc(tn)),S.value=null)}},kt=()=>{const de=i(S),Ge=Ze(de&&de[1]),$t=i(k);if(Ge&&Ge.isValid()){S.value=[i(ge)?.[0]||null,Pe(Ge)];const tn=[$t&&$t[0],Ge];Ae(tn)&&(O(hc(tn)),S.value=null)}},be=()=>{g.value?.focus()},ze=()=>{g.value?.blur()};return St(oo,{props:a,emptyValues:f}),St(vk,b),t({focus:be,blur:ze,handleOpen:he,handleClose:ue,onPick:N}),(de,Ge)=>(x(),oe(i(Ln),dt({ref_key:"refPopper",ref:v,visible:i(C),effect:"light",pure:"",trigger:"click"},de.$attrs,{role:"dialog",teleported:"",transition:`${i(r).namespace.value}-zoom-in-top`,"popper-class":[`${i(r).namespace.value}-picker__popper`,de.popperClass],"popper-style":de.popperStyle,"popper-options":i(d),"fallback-placements":de.fallbackPlacements,"gpu-acceleration":!1,placement:de.placement,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:j,onShow:X,onHide:Q}),{default:J(()=>[pe.value?(x(),oe(g8,{key:1,id:de.id,ref_key:"inputRef",ref:g,"model-value":ge.value,name:de.name,disabled:i(m),readonly:!de.editable||de.readonly,"start-placeholder":de.startPlaceholder,"end-placeholder":de.endPlaceholder,class:T(P.value),style:Ke(de.$attrs.style),"aria-label":de.ariaLabel,tabindex:de.tabindex,autocomplete:"off",role:"combobox",onClick:ke,onFocus:i(H),onBlur:i(U),onStartInput:Ue,onStartChange:mt,onEndInput:lt,onEndChange:kt,onMousedown:ke,onMouseenter:Ne,onMouseleave:Ie,onTouchstartPassive:$e,onKeydown:je},{prefix:J(()=>[re.value?(x(),oe(i(De),{key:0,class:T([i(l).e("icon"),i(u).e("icon")])},{default:J(()=>[(x(),oe(it(re.value)))]),_:1},8,["class"])):te("v-if",!0)]),"range-separator":J(()=>[ee(de.$slots,"range-separator",{},()=>[z("span",{class:T(i(u).b("separator"))},Se(de.rangeSeparator),3)])]),suffix:J(()=>[de.clearIcon?(x(),oe(i(De),{key:0,class:T(I.value),onMousedown:Xe(i(Dt),["prevent"]),onClick:ve},{default:J(()=>[(x(),oe(it(de.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0)]),_:3},8,["id","model-value","name","disabled","readonly","start-placeholder","end-placeholder","class","style","aria-label","tabindex","onFocus","onBlur"])):(x(),oe(i(ea),{key:0,id:de.id,ref_key:"inputRef",ref:g,"container-role":"combobox","model-value":ge.value,name:de.name,size:i(Ee),disabled:i(m),placeholder:de.placeholder,class:T([i(r).b("editor"),i(r).bm("editor",de.type),i(r).is("focus",i(C)),de.$attrs.class]),style:Ke(de.$attrs.style),readonly:!de.editable||de.readonly||ne.value||K.value||Z.value||de.type==="week","aria-label":de.ariaLabel,tabindex:de.tabindex,"validate-event":!1,onInput:Rt,onFocus:i(H),onBlur:i(U),onKeydown:je,onChange:We,onMousedown:ke,onMouseenter:Ne,onMouseleave:Ie,onTouchstartPassive:$e,onClick:Ge[0]||(Ge[0]=Xe(()=>{},["stop"]))},{prefix:J(()=>[re.value?(x(),oe(i(De),{key:0,class:T(i(l).e("icon")),onMousedown:Xe(ke,["prevent"]),onTouchstartPassive:$e},{default:J(()=>[(x(),oe(it(re.value)))]),_:1},8,["class"])):te("v-if",!0)]),suffix:J(()=>[ce.value&&de.clearIcon?(x(),oe(i(De),{key:0,class:T(`${i(l).e("icon")} clear-icon`),onMousedown:Xe(i(Dt),["prevent"]),onClick:ve},{default:J(()=>[(x(),oe(it(de.clearIcon)))]),_:1},8,["class","onMousedown"])):te("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","aria-label","tabindex","onFocus","onBlur"]))]),content:J(()=>[ee(de.$slots,"default",{visible:i(C),actualVisible:i(y),parsedValue:i(k),format:de.format,dateFormat:de.dateFormat,timeFormat:de.timeFormat,unlinkPanels:de.unlinkPanels,type:de.type,defaultValue:de.defaultValue,showNow:de.showNow,showConfirm:de.showConfirm,showFooter:de.showFooter,showWeekNumber:de.showWeekNumber,onPick:Ge[1]||(Ge[1]=(...$t)=>i(N)&&i(N)(...$t)),onSelectRange:q,onSetPickerOption:Ge[2]||(Ge[2]=(...$t)=>i(R)&&i(R)(...$t)),onCalendarChange:Ge[3]||(Ge[3]=(...$t)=>i(A)&&i(A)(...$t)),onClear:ve,onPanelChange:Ge[4]||(Ge[4]=(...$t)=>i(_)&&i(_)(...$t)),onMousedown:Ge[5]||(Ge[5]=Xe(()=>{},["stop"]))})]),_:3},16,["visible","transition","popper-class","popper-style","popper-options","fallback-placements","placement"]))}}),Sk=b8;const ks=new Map;if(Mt){let e;document.addEventListener("mousedown",t=>e=t),document.addEventListener("mouseup",t=>{if(e){for(const n of ks.values())for(const{documentHandler:a}of n)a(t,e);e=void 0}})}function Fy(e,t){let n=[];return ye(t.arg)?n=t.arg:ha(t.arg)&&n.push(t.arg),function(a,o){const s=t.instance.popperRef,r=a.target,l=o?.target,u=!t||!t.instance,c=!r||!l,d=e.contains(r)||e.contains(l),f=e===r,v=n.length&&n.some(p=>p?.contains(r))||n.length&&n.includes(l),g=s&&(s.contains(r)||s.contains(l));u||c||d||f||v||g||t.value(a,o)}}const zs={beforeMount(e,t){ks.has(e)||ks.set(e,[]),ks.get(e).push({documentHandler:Fy(e,t),bindingFn:t.value})},updated(e,t){ks.has(e)||ks.set(e,[]);const n=ks.get(e),a=n.findIndex(s=>s.bindingFn===t.oldValue),o={documentHandler:Fy(e,t),bindingFn:t.value};a>=0?n.splice(a,1,o):n.push(o)},unmounted(e){ks.delete(e)}},y8=100,w8=600,Gu="_RepeatClick",nd={beforeMount(e,t){const n=t.value,{interval:a=y8,delay:o=w8}=Ve(n)?{}:n;let s,r;const l=()=>Ve(n)?n():n.handler(),u=()=>{r&&(clearTimeout(r),r=void 0),s&&(clearInterval(s),s=void 0)},c=d=>{d.button===0&&(u(),l(),document.addEventListener("mouseup",u,{once:!0}),r=setTimeout(()=>{s=setInterval(()=>{l()},a)},o))};e[Gu]={start:c,clear:u},e.addEventListener("mousedown",c)},unmounted(e){if(!e[Gu])return;const{start:t,clear:n}=e[Gu];t&&e.removeEventListener("mousedown",t),n&&(n(),document.removeEventListener("mouseup",n)),e[Gu]=null}},eh="_trap-focus-children",rr=[],Vy=e=>{if(rr.length===0)return;const t=jt(e),n=rr[rr.length-1][eh];if(n.length>0&&t===we.tab){if(n.length===1){e.preventDefault(),document.activeElement!==n[0]&&n[0].focus();return}const a=e.shiftKey,o=e.target===n[0],s=e.target===n[n.length-1];o&&a&&(e.preventDefault(),n[n.length-1].focus()),s&&!a&&(e.preventDefault(),n[0].focus())}},S8={beforeMount(e){e[eh]=Ab(e),rr.push(e),rr.length<=1&&document.addEventListener("keydown",Vy)},updated(e){Re(()=>{e[eh]=Ab(e)})},unmounted(){rr.shift(),rr.length===0&&document.removeEventListener("keydown",Vy)}};var zy=!1,er,th,nh,vc,mc,Ck,gc,ah,oh,sh,kk,rh,lh,Ek,xk;function fa(){if(!zy){zy=!0;var e=navigator.userAgent,t=/(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(e),n=/(Mac OS X)|(Windows)|(Linux)/.exec(e);if(rh=/\b(iPhone|iP[ao]d)/.exec(e),lh=/\b(iP[ao]d)/.exec(e),sh=/Android/i.exec(e),Ek=/FBAN\/\w+;/i.exec(e),xk=/Mobile/i.exec(e),kk=!!/Win64/.exec(e),t){er=t[1]?parseFloat(t[1]):t[5]?parseFloat(t[5]):NaN,er&&document&&document.documentMode&&(er=document.documentMode);var a=/(?:Trident\/(\d+.\d+))/.exec(e);Ck=a?parseFloat(a[1])+4:er,th=t[2]?parseFloat(t[2]):NaN,nh=t[3]?parseFloat(t[3]):NaN,vc=t[4]?parseFloat(t[4]):NaN,vc?(t=/(?:Chrome\/(\d+\.\d+))/.exec(e),mc=t&&t[1]?parseFloat(t[1]):NaN):mc=NaN}else er=th=nh=mc=vc=NaN;if(n){if(n[1]){var o=/(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(e);gc=o?parseFloat(o[1].replace("_",".")):!0}else gc=!1;ah=!!n[2],oh=!!n[3]}else gc=ah=oh=!1}}var ih={ie:function(){return fa()||er},ieCompatibilityMode:function(){return fa()||Ck>er},ie64:function(){return ih.ie()&&kk},firefox:function(){return fa()||th},opera:function(){return fa()||nh},webkit:function(){return fa()||vc},safari:function(){return ih.webkit()},chrome:function(){return fa()||mc},windows:function(){return fa()||ah},osx:function(){return fa()||gc},linux:function(){return fa()||oh},iphone:function(){return fa()||rh},mobile:function(){return fa()||rh||lh||sh||xk},nativeApp:function(){return fa()||Ek},android:function(){return fa()||sh},ipad:function(){return fa()||lh}},C8=ih,k8=!!(typeof window<"u"&&window.document&&window.document.createElement),E8={canUseDOM:k8},Tk=E8,$k;Tk.canUseDOM&&($k=document.implementation&&document.implementation.hasFeature&&document.implementation.hasFeature("","")!==!0);function x8(e,t){if(!Tk.canUseDOM||t&&!("addEventListener"in document))return!1;var n="on"+e,a=n in document;if(!a){var o=document.createElement("div");o.setAttribute(n,"return;"),a=typeof o[n]=="function"}return!a&&$k&&e==="wheel"&&(a=document.implementation.hasFeature("Events.wheel","3.0")),a}var T8=x8,Hy=10,Ky=40,Wy=800;function Ok(e){var t=0,n=0,a=0,o=0;return"detail"in e&&(n=e.detail),"wheelDelta"in e&&(n=-e.wheelDelta/120),"wheelDeltaY"in e&&(n=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=n,n=0),a=t*Hy,o=n*Hy,"deltaY"in e&&(o=e.deltaY),"deltaX"in e&&(a=e.deltaX),(a||o)&&e.deltaMode&&(e.deltaMode==1?(a*=Ky,o*=Ky):(a*=Wy,o*=Wy)),a&&!t&&(t=a<1?-1:1),o&&!n&&(n=o<1?-1:1),{spinX:t,spinY:n,pixelX:a,pixelY:o}}Ok.getEventType=function(){return C8.firefox()?"DOMMouseScroll":T8("wheel")?"wheel":"mousewheel"};var $8=Ok;const bc="_Mousewheel",jy=function(e,t){if(e&&e.addEventListener){Rk(e);const n=function(a){const o=$8(a);t&&Reflect.apply(t,this,[a,o])};e[bc]={wheelHandler:n},e.addEventListener("wheel",n,{passive:!0})}},Rk=e=>{e[bc]?.wheelHandler&&(e.removeEventListener("wheel",e[bc].wheelHandler),e[bc]=null)},O8={beforeMount(e,t){jy(e,t.value)},unmounted(e){Rk(e)},updated(e,t){t.value!==t.oldValue&&jy(e,t.value)}},R8=Ce({...yk,datetimeRole:String,parsedValue:{type:G(Object)}}),Nk=({getAvailableHours:e,getAvailableMinutes:t,getAvailableSeconds:n})=>{const a=(r,l,u,c)=>{const d={hour:e,minute:t,second:n};let f=r;return["hour","minute","second"].forEach(v=>{if(d[v]){let g;const p=d[v];switch(v){case"minute":g=p(f.hour(),l,c);break;case"second":g=p(f.hour(),f.minute(),l,c);break;default:g=p(l,c);break}if(g?.length&&!g.includes(f[v]())){const h=u?0:g.length-1;f=f[v](g[h])}}}),f},o={};return{timePickerOptions:o,getAvailableTime:a,onSetOption:([r,l])=>{o[r]=l}}},Zf=e=>{const t=(a,o)=>a||o,n=a=>a!==!0;return e.map(t).filter(n)},Ik=(e,t,n)=>({getHoursList:(r,l)=>Jf(24,e&&(()=>e?.(r,l))),getMinutesList:(r,l,u)=>Jf(60,t&&(()=>t?.(r,l,u))),getSecondsList:(r,l,u,c)=>Jf(60,n&&(()=>n?.(r,l,u,c)))}),Pk=(e,t,n)=>{const{getHoursList:a,getMinutesList:o,getSecondsList:s}=Ik(e,t,n);return{getAvailableHours:(c,d)=>Zf(a(c,d)),getAvailableMinutes:(c,d,f)=>Zf(o(c,d,f)),getAvailableSeconds:(c,d,f,v)=>Zf(s(c,d,f,v))}},Mk=(e,t)=>{const n=M(e.parsedValue);return le(()=>e.visible,a=>{const o=mg(t.modelValue),s=mg(t.valueOnClear);if(a&&o===s){n.value=s;return}a||(n.value=e.parsedValue)}),n},N8=Ce({role:{type:String,required:!0},spinnerDate:{type:G(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:G(String),default:""},...dm}),I8=["onClick"],P8=["onMouseenter"];var M8=se({__name:"basic-time-spinner",props:N8,emits:[yt,"select-range","set-option"],setup(e,{emit:t}){const n=e,{isRange:a,format:o,saveOnBlur:s}=_e(oo).props,r=t,l=fe("time"),{getHoursList:u,getMinutesList:c,getSecondsList:d}=Ik(n.disabledHours,n.disabledMinutes,n.disabledSeconds);let f=!1;const v={hours:!1,minutes:!1,seconds:!1},g=M(),p={hours:M(),minutes:M(),seconds:M()},h=w(()=>n.showSeconds?_y:_y.slice(0,2)),m=w(()=>{const{spinnerDate:F}=n;return{hours:F.hour(),minutes:F.minute(),seconds:F.second()}}),b=w(()=>{const{hours:F,minutes:q}=i(m),{role:j,spinnerDate:X}=n,Q=a?void 0:X;return{hours:u(j,Q),minutes:c(F,j,Q),seconds:d(F,q,j,Q)}}),k=w(()=>{const{hours:F,minutes:q,seconds:j}=i(m);return{hours:Xf(F,23),minutes:Xf(q,59),seconds:Xf(j,59)}}),y=Mo(F=>{f=!1,E(F)},200),S=F=>{if(!n.amPmMode)return"";const q=n.amPmMode==="A";let j=F<12?" am":" pm";return q&&(j=j.toUpperCase()),j},C=F=>{let q=[0,0];const j=o||wl,X=j.indexOf("HH"),Q=j.indexOf("mm"),he=j.indexOf("ss");switch(F){case"hours":X!==-1&&(q=[X,X+2]);break;case"minutes":Q!==-1&&(q=[Q,Q+2]);break;case"seconds":he!==-1&&(q=[he,he+2]);break}const[ue,ge]=q;r("select-range",ue,ge),g.value=F},E=F=>{N(F,i(m)[F])},$=()=>{E("hours"),E("minutes"),E("seconds")},O=F=>F.querySelector(`.${l.namespace.value}-scrollbar__wrap`),N=(F,q)=>{if(n.arrowControl)return;const j=i(p[F]);j&&j.$el&&(s||(v[F]=!0,eo(()=>{v[F]=!1})),O(j.$el).scrollTop=Math.max(0,q*R(F)))},R=F=>{const q=i(p[F])?.$el.querySelector("li");return q&&Number.parseFloat(Yo(q,"height"))||0},A=()=>{V(1)},_=()=>{V(-1)},V=F=>{g.value||C("hours");const q=g.value,j=i(m)[q],X=H(q,j,F,g.value==="hours"?24:60);U(q,X),N(q,X),Re(()=>C(q))},H=(F,q,j,X)=>{let Q=(q+j+X)%X;const he=i(b)[F];for(;he[Q]&&Q!==q;)Q=(Q+j+X)%X;return Q},U=(F,q)=>{if(i(b)[F][q])return;const{hours:j,minutes:X,seconds:Q}=i(m);let he;switch(F){case"hours":he=n.spinnerDate.hour(q).minute(X).second(Q);break;case"minutes":he=n.spinnerDate.hour(j).minute(q).second(Q);break;case"seconds":he=n.spinnerDate.hour(j).minute(X).second(q);break}r(yt,he)},W=(F,{value:q,disabled:j})=>{j||(U(F,q),C(F),N(F,q))},P=F=>{if(!s&&v[F])return;const q=i(p[F]);q&&(f=!0,y(F),U(F,Math.min(Math.round((O(q.$el).scrollTop-(I(F)*.5-10)/R(F)+3)/R(F)),F==="hours"?23:59)))},I=F=>i(p[F]).$el.offsetHeight,L=()=>{const F=q=>{const j=i(p[q]);j&&j.$el&&(O(j.$el).onscroll=()=>{P(q)})};F("hours"),F("minutes"),F("seconds")};ht(()=>{Re(()=>{!n.arrowControl&&L(),$(),n.role==="start"&&C("hours")})});const D=(F,q)=>{p[q].value=F??void 0};return r("set-option",[`${n.role}_scrollDown`,V]),r("set-option",[`${n.role}_emitSelectRange`,C]),le(()=>n.spinnerDate,()=>{f||$()}),(F,q)=>(x(),B("div",{class:T([i(l).b("spinner"),{"has-seconds":F.showSeconds}])},[F.arrowControl?te("v-if",!0):(x(!0),B(Fe,{key:0},gt(h.value,j=>(x(),oe(i(ao),{key:j,ref_for:!0,ref:X=>D(X,j),class:T(i(l).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":i(l).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:X=>C(j),onMousemove:X=>E(j)},{default:J(()=>[(x(!0),B(Fe,null,gt(b.value[j],(X,Q)=>(x(),B("li",{key:Q,class:T([i(l).be("spinner","item"),i(l).is("active",Q===m.value[j]),i(l).is("disabled",X)]),onClick:he=>W(j,{value:Q,disabled:X})},[j==="hours"?(x(),B(Fe,{key:0},[wt(Se(("0"+(F.amPmMode?Q%12||12:Q)).slice(-2))+Se(S(Q)),1)],64)):(x(),B(Fe,{key:1},[wt(Se(("0"+Q).slice(-2)),1)],64))],10,I8))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),F.arrowControl?(x(!0),B(Fe,{key:1},gt(h.value,j=>(x(),B("div",{key:j,class:T([i(l).be("spinner","wrapper"),i(l).is("arrow")]),onMouseenter:X=>C(j)},[ut((x(),oe(i(De),{class:T(["arrow-up",i(l).be("spinner","arrow")])},{default:J(()=>[Y(i(ef))]),_:1},8,["class"])),[[i(nd),_]]),ut((x(),oe(i(De),{class:T(["arrow-down",i(l).be("spinner","arrow")])},{default:J(()=>[Y(i(Fo))]),_:1},8,["class"])),[[i(nd),A]]),z("ul",{class:T(i(l).be("spinner","list"))},[(x(!0),B(Fe,null,gt(k.value[j],(X,Q)=>(x(),B("li",{key:Q,class:T([i(l).be("spinner","item"),i(l).is("active",X===m.value[j]),i(l).is("disabled",b.value[j][X])])},[i(He)(X)?(x(),B(Fe,{key:0},[j==="hours"?(x(),B(Fe,{key:0},[wt(Se(("0"+(F.amPmMode?X%12||12:X)).slice(-2))+Se(S(X)),1)],64)):(x(),B(Fe,{key:1},[wt(Se(("0"+X).slice(-2)),1)],64))],64)):te("v-if",!0)],2))),128))],2)],42,P8))),128)):te("v-if",!0)],2))}}),uh=M8,_8=se({__name:"panel-time-pick",props:R8,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,a=t,o=_e(oo),{arrowControl:s,disabledHours:r,disabledMinutes:l,disabledSeconds:u,defaultValue:c}=o.props,{getAvailableHours:d,getAvailableMinutes:f,getAvailableSeconds:v}=Pk(r,l,u),g=fe("time"),{t:p,lang:h}=Ct(),m=M([0,2]),b=Mk(n,{modelValue:w(()=>o.props.modelValue),valueOnClear:w(()=>o?.emptyValues?o.emptyValues.valueOnClear.value:null)}),k=w(()=>Tt(n.actualVisible)?`${g.namespace.value}-zoom-in-top`:""),y=w(()=>n.format.includes("ss")),S=w(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),C=I=>{const L=st(I).locale(h.value),D=U(L);return L.isSame(D)},E=()=>{const I=b.value;a("pick",I,!1),Re(()=>{b.value=I})},$=(I=!1,L=!1)=>{L||a("pick",n.parsedValue,I)},O=I=>{n.visible&&a("pick",U(I).millisecond(0),!0)},N=(I,L)=>{a("select-range",I,L),m.value=[I,L]},R=I=>{const L=n.format,D=L.indexOf("HH"),F=L.indexOf("mm"),q=L.indexOf("ss"),j=[],X=[];D!==-1&&(j.push(D),X.push("hours")),F!==-1&&(j.push(F),X.push("minutes")),q!==-1&&y.value&&(j.push(q),X.push("seconds"));const Q=(j.indexOf(m.value[0])+I+j.length)%j.length;_.start_emitSelectRange(X[Q])},A=I=>{const L=jt(I),{left:D,right:F,up:q,down:j}=we;if([D,F].includes(L)){R(L===D?-1:1),I.preventDefault();return}if([q,j].includes(L)){const X=L===q?-1:1;_.start_scrollDown(X),I.preventDefault();return}},{timePickerOptions:_,onSetOption:V,getAvailableTime:H}=Nk({getAvailableHours:d,getAvailableMinutes:f,getAvailableSeconds:v}),U=I=>H(I,n.datetimeRole||"",!0),W=I=>I?st(I,n.format).locale(h.value):null,P=()=>st(c).locale(h.value);return a("set-picker-option",["isValidValue",C]),a("set-picker-option",["parseUserInput",W]),a("set-picker-option",["handleKeydownInput",A]),a("set-picker-option",["getRangeAvailableTime",U]),a("set-picker-option",["getDefaultValue",P]),a("set-picker-option",["handleCancel",E]),(I,L)=>(x(),oe(Vn,{name:k.value},{default:J(()=>[I.actualVisible||I.visible?(x(),B("div",{key:0,class:T(i(g).b("panel"))},[z("div",{class:T([i(g).be("panel","content"),{"has-seconds":y.value}])},[Y(uh,{ref:"spinner",role:I.datetimeRole||"start","arrow-control":i(s),"show-seconds":y.value,"am-pm-mode":S.value,"spinner-date":I.parsedValue,"disabled-hours":i(r),"disabled-minutes":i(l),"disabled-seconds":i(u),onChange:O,onSetOption:i(V),onSelectRange:N},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),z("div",{class:T(i(g).be("panel","footer"))},[z("button",{type:"button",class:T([i(g).be("panel","btn"),"cancel"]),onClick:E},Se(i(p)("el.datepicker.cancel")),3),z("button",{type:"button",class:T([i(g).be("panel","btn"),"confirm"]),onClick:L[0]||(L[0]=D=>$())},Se(i(p)("el.datepicker.confirm")),3)],2)],2)):te("v-if",!0)]),_:1},8,["name"]))}}),ad=_8;const A8=Ce({...yk,parsedValue:{type:G(Array)}}),L8=["disabled"];var D8=se({__name:"panel-time-range",props:A8,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,a=t,o=(ne,K)=>{const Z=[];for(let re=ne;re<=K;re++)Z.push(re);return Z},{t:s,lang:r}=Ct(),l=fe("time"),u=fe("picker"),c=_e(oo),{arrowControl:d,disabledHours:f,disabledMinutes:v,disabledSeconds:g,defaultValue:p}=c.props,h=w(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),C.value?"has-seconds":""]),m=w(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),C.value?"has-seconds":""]),b=w(()=>n.parsedValue[0]),k=w(()=>n.parsedValue[1]),y=Mk(n,{modelValue:w(()=>c.props.modelValue),valueOnClear:w(()=>c?.emptyValues?c.emptyValues.valueOnClear.value:null)}),S=()=>{const ne=y.value;a("pick",ne,!1),Re(()=>{y.value=ne})},C=w(()=>n.format.includes("ss")),E=w(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),$=(ne=!1)=>{a("pick",[b.value,k.value],ne)},O=ne=>{A(ne.millisecond(0),k.value)},N=ne=>{A(b.value,ne.millisecond(0))},R=ne=>{const K=ne.map(re=>st(re).locale(r.value)),Z=q(K);return K[0].isSame(Z[0])&&K[1].isSame(Z[1])},A=(ne,K)=>{n.visible&&a("pick",[ne,K],!0)},_=w(()=>b.value>k.value),V=M([0,2]),H=(ne,K)=>{a("select-range",ne,K,"min"),V.value=[ne,K]},U=w(()=>C.value?11:8),W=(ne,K)=>{a("select-range",ne,K,"max");const Z=i(U);V.value=[ne+Z,K+Z]},P=ne=>{const K=C.value?[0,3,6,11,14,17]:[0,3,8,11],Z=["hours","minutes"].concat(C.value?["seconds"]:[]),re=(K.indexOf(V.value[0])+ne+K.length)%K.length,ce=K.length/2;re{const K=jt(ne),{left:Z,right:re,up:ce,down:ve}=we;if([Z,re].includes(K)){P(K===Z?-1:1),ne.preventDefault();return}if([ce,ve].includes(K)){const ke=K===ce?-1:1;he[`${V.value[0]{const Z=f?f(ne):[],re=ne==="start",ce=(K||(re?k.value:b.value)).hour();return Vf(Z,re?o(ce+1,23):o(0,ce-1))},D=(ne,K,Z)=>{const re=v?v(ne,K):[],ce=K==="start",ve=Z||(ce?k.value:b.value);if(ne!==ve.hour())return re;const ke=ve.minute();return Vf(re,ce?o(ke+1,59):o(0,ke-1))},F=(ne,K,Z,re)=>{const ce=g?g(ne,K,Z):[],ve=Z==="start",ke=re||(ve?k.value:b.value),Ne=ke.hour(),Ie=ke.minute();if(ne!==Ne||K!==Ie)return ce;const $e=ke.second();return Vf(ce,ve?o($e+1,59):o(0,$e-1))},q=([ne,K])=>[ue(ne,"start",!0,K),ue(K,"end",!1,ne)],{getAvailableHours:j,getAvailableMinutes:X,getAvailableSeconds:Q}=Pk(L,D,F),{timePickerOptions:he,getAvailableTime:ue,onSetOption:ge}=Nk({getAvailableHours:j,getAvailableMinutes:X,getAvailableSeconds:Q}),ie=ne=>ne?ye(ne)?ne.map(K=>st(K,n.format).locale(r.value)):st(ne,n.format).locale(r.value):null,ae=()=>{if(ye(p))return p.map(K=>st(K).locale(r.value));const ne=st(p).locale(r.value);return[ne,ne.add(60,"m")]};return a("set-picker-option",["parseUserInput",ie]),a("set-picker-option",["isValidValue",R]),a("set-picker-option",["handleKeydownInput",I]),a("set-picker-option",["getDefaultValue",ae]),a("set-picker-option",["getRangeAvailableTime",q]),a("set-picker-option",["handleCancel",S]),(ne,K)=>ne.actualVisible?(x(),B("div",{key:0,class:T([i(l).b("range-picker"),i(u).b("panel")])},[z("div",{class:T(i(l).be("range-picker","content"))},[z("div",{class:T(i(l).be("range-picker","cell"))},[z("div",{class:T(i(l).be("range-picker","header"))},Se(i(s)("el.datepicker.startTime")),3),z("div",{class:T(h.value)},[Y(uh,{ref:"minSpinner",role:"start","show-seconds":C.value,"am-pm-mode":E.value,"arrow-control":i(d),"spinner-date":b.value,"disabled-hours":L,"disabled-minutes":D,"disabled-seconds":F,onChange:O,onSetOption:i(ge),onSelectRange:H},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),z("div",{class:T(i(l).be("range-picker","cell"))},[z("div",{class:T(i(l).be("range-picker","header"))},Se(i(s)("el.datepicker.endTime")),3),z("div",{class:T(m.value)},[Y(uh,{ref:"maxSpinner",role:"end","show-seconds":C.value,"am-pm-mode":E.value,"arrow-control":i(d),"spinner-date":k.value,"disabled-hours":L,"disabled-minutes":D,"disabled-seconds":F,onChange:N,onSetOption:i(ge),onSelectRange:W},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),z("div",{class:T(i(l).be("panel","footer"))},[z("button",{type:"button",class:T([i(l).be("panel","btn"),"cancel"]),onClick:K[0]||(K[0]=Z=>S())},Se(i(s)("el.datepicker.cancel")),3),z("button",{type:"button",class:T([i(l).be("panel","btn"),"confirm"]),disabled:_.value,onClick:K[1]||(K[1]=Z=>$())},Se(i(s)("el.datepicker.confirm")),11,L8)],2)],2)):te("v-if",!0)}}),B8=D8,yc={exports:{}},F8=yc.exports,Uy;function V8(){return Uy||(Uy=1,(function(e,t){(function(n,a){e.exports=a()})(F8,(function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},a=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,o=/\d/,s=/\d\d/,r=/\d\d?/,l=/\d*[^-_:/,()\s\d]+/,u={},c=function(m){return(m=+m)+(m>68?1900:2e3)},d=function(m){return function(b){this[m]=+b}},f=[/[+-]\d\d:?(\d\d)?|Z/,function(m){(this.zone||(this.zone={})).offset=(function(b){if(!b||b==="Z")return 0;var k=b.match(/([+-]|\d\d)/g),y=60*k[1]+(+k[2]||0);return y===0?0:k[0]==="+"?-y:y})(m)}],v=function(m){var b=u[m];return b&&(b.indexOf?b:b.s.concat(b.f))},g=function(m,b){var k,y=u.meridiem;if(y){for(var S=1;S<=24;S+=1)if(m.indexOf(y(S,0,b))>-1){k=S>12;break}}else k=m===(b?"pm":"PM");return k},p={A:[l,function(m){this.afternoon=g(m,!1)}],a:[l,function(m){this.afternoon=g(m,!0)}],Q:[o,function(m){this.month=3*(m-1)+1}],S:[o,function(m){this.milliseconds=100*+m}],SS:[s,function(m){this.milliseconds=10*+m}],SSS:[/\d{3}/,function(m){this.milliseconds=+m}],s:[r,d("seconds")],ss:[r,d("seconds")],m:[r,d("minutes")],mm:[r,d("minutes")],H:[r,d("hours")],h:[r,d("hours")],HH:[r,d("hours")],hh:[r,d("hours")],D:[r,d("day")],DD:[s,d("day")],Do:[l,function(m){var b=u.ordinal,k=m.match(/\d+/);if(this.day=k[0],b)for(var y=1;y<=31;y+=1)b(y).replace(/\[|\]/g,"")===m&&(this.day=y)}],w:[r,d("week")],ww:[s,d("week")],M:[r,d("month")],MM:[s,d("month")],MMM:[l,function(m){var b=v("months"),k=(v("monthsShort")||b.map((function(y){return y.slice(0,3)}))).indexOf(m)+1;if(k<1)throw new Error;this.month=k%12||k}],MMMM:[l,function(m){var b=v("months").indexOf(m)+1;if(b<1)throw new Error;this.month=b%12||b}],Y:[/[+-]?\d+/,d("year")],YY:[s,function(m){this.year=c(m)}],YYYY:[/\d{4}/,d("year")],Z:f,ZZ:f};function h(m){var b,k;b=m,k=u&&u.formats;for(var y=(m=b.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(R,A,_){var V=_&&_.toUpperCase();return A||k[_]||n[_]||k[V].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(H,U,W){return U||W.slice(1)}))}))).match(a),S=y.length,C=0;C-1)return new Date((I==="X"?1e3:1)*P);var F=h(I)(P),q=F.year,j=F.month,X=F.day,Q=F.hours,he=F.minutes,ue=F.seconds,ge=F.milliseconds,ie=F.zone,ae=F.week,ne=new Date,K=X||(q||j?1:ne.getDate()),Z=q||ne.getFullYear(),re=0;q&&!j||(re=j>0?j-1:ne.getMonth());var ce,ve=Q||0,ke=he||0,Ne=ue||0,Ie=ge||0;return ie?new Date(Date.UTC(Z,re,K,ve,ke,Ne,Ie+60*ie.offset*1e3)):L?new Date(Date.UTC(Z,re,K,ve,ke,Ne,Ie)):(ce=new Date(Z,re,K,ve,ke,Ne,Ie),ae&&(ce=D(ce).week(ae).toDate()),ce)}catch{return new Date("")}})(E,N,$,k),this.init(),V&&V!==!0&&(this.$L=this.locale(V).$L),_&&E!=this.format(N)&&(this.$d=new Date("")),u={}}else if(N instanceof Array)for(var H=N.length,U=1;U<=H;U+=1){O[1]=N[U-1];var W=k.apply(this,O);if(W.isValid()){this.$d=W.$d,this.$L=W.$L,this.init();break}U===H&&(this.$d=new Date(""))}else S.call(this,C)}}}))})(yc)),yc.exports}var z8=V8();const pm=bs(z8);st.extend(pm);var H8=se({name:"ElTimePicker",install:null,props:{...fm,isRange:Boolean},emits:[at],setup(e,t){const n=M(),[a,o]=e.isRange?["timerange",B8]:["time",ad],s=r=>t.emit(at,r);return St(cm,e.popperOptions),t.expose({focus:()=>{n.value?.focus()},blur:()=>{n.value?.blur()},handleOpen:()=>{n.value?.handleOpen()},handleClose:()=>{n.value?.handleClose()}}),()=>{const r=e.format??wl;return Y(Sk,dt(e,{ref:n,type:a,format:r,"onUpdate:modelValue":s}),{default:l=>Y(o,l,null)})}}});const K8=rt(H8),us=Ce({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:lo},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),W8={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},j8=["aria-label"],U8=["aria-label"];var q8=se({name:"ElTag",__name:"tag",props:us,emits:W8,setup(e,{emit:t}){const n=e,a=t,o=Cn(),{t:s}=Ct(),r=fe("tag"),l=w(()=>{const{type:f,hit:v,effect:g,closable:p,round:h}=n;return[r.b(),r.is("closable",p),r.m(f||"primary"),r.m(o.value),r.m(g),r.is("hit",v),r.is("round",h)]}),u=f=>{a("close",f)},c=f=>{a("click",f)},d=f=>{f?.component?.subTree?.component?.bum&&(f.component.subTree.component.bum=null)};return(f,v)=>e.disableTransitions?(x(),B("span",{key:0,class:T(l.value),style:Ke({backgroundColor:e.color}),onClick:c},[z("span",{class:T(i(r).e("content"))},[ee(f.$slots,"default")],2),e.closable?(x(),B("button",{key:0,"aria-label":i(s)("el.tag.close"),class:T(i(r).e("close")),type:"button",onClick:Xe(u,["stop"])},[Y(i(De),null,{default:J(()=>[Y(i(Ha))]),_:1})],10,j8)):te("v-if",!0)],6)):(x(),oe(Vn,{key:1,name:`${i(r).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:d},{default:J(()=>[z("span",{class:T(l.value),style:Ke({backgroundColor:e.color}),onClick:c},[z("span",{class:T(i(r).e("content"))},[ee(f.$slots,"default")],2),e.closable?(x(),B("button",{key:0,"aria-label":i(s)("el.tag.close"),class:T(i(r).e("close")),type:"button",onClick:Xe(u,["stop"])},[Y(i(De),null,{default:J(()=>[Y(i(Ha))]),_:1})],10,U8)):te("v-if",!0)],6)]),_:3},8,["name"]))}}),Y8=q8;const ts=rt(Y8),_k=Symbol("ElSelectGroup"),bu=Symbol("ElSelect"),od={label:"label",value:"value",disabled:"disabled",options:"options"};function yu(e){const t=M({...od,...e.props});let n={...e.props};return le(()=>e.props,l=>{sn(l,n)||(t.value={...od,...l},n={...l})},{deep:!0}),{aliasProps:t,getLabel:l=>wn(l,t.value.label),getValue:l=>wn(l,t.value.value),getDisabled:l=>wn(l,t.value.disabled),getOptions:l=>wn(l,t.value.options)}}const Ak=Ce({name:String,id:String,modelValue:{type:G([Array,String,Number,Boolean,Object]),default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:Tn,effect:{type:G(String),default:"light"},disabled:{type:Boolean,default:void 0},clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},popperStyle:{type:G([String,Object])},popperOptions:{type:G(Object),default:()=>({})},remote:Boolean,debounce:{type:Number,default:300},loadingText:String,noMatchText:String,noDataText:String,remoteMethod:{type:G(Function)},filterMethod:{type:G(Function)},multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:Boolean,tagTooltip:{type:G(Object),default:()=>({})},maxCollapseTags:{type:Number,default:1},teleported:zt.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:Kt,default:Vo},fitInputWidth:Boolean,suffixIcon:{type:Kt,default:Fo},tagType:{...us.type,default:"info"},tagEffect:{...us.effect,default:"light"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:G(String),values:Do,default:"bottom-start"},fallbackPlacements:{type:G(Array),default:["bottom-start","top-start","right","left"]},tabindex:{type:[String,Number],default:0},appendTo:zt.appendTo,options:{type:G(Array)},props:{type:G(Object),default:()=>od},...Pr,...aa(["ariaLabel"])});nk.scroll;const ch="ElOption",G8=Ce({value:{type:[String,Number,Boolean,Object],required:!0},label:{type:[String,Number]},created:Boolean,disabled:Boolean});function X8(e,t){const n=_e(bu);n||nn(ch,"usage: ");const a=_e(_k,{disabled:!1}),o=w(()=>d(Nn(n.props.modelValue),e.value)),s=w(()=>{if(n.props.multiple){const g=Nn(n.props.modelValue??[]);return!o.value&&g.length>=n.props.multipleLimit&&n.props.multipleLimit>0}else return!1}),r=w(()=>e.label??(ot(e.value)?"":e.value)),l=w(()=>e.value||e.label||""),u=w(()=>e.disabled||t.groupDisabled||s.value),c=ft(),d=(g=[],p)=>{if(ot(e.value)){const h=n.props.valueKey;return g&&g.some(m=>qt(wn(m,h))===wn(p,h))}else return g&&g.includes(p)},f=()=>{u.value||(n.states.hoveringIndex=n.optionsArray.indexOf(c.proxy))},v=g=>{t.visible=new RegExp(Lv(g),"i").test(String(r.value))||e.created};return le(()=>r.value,()=>{!e.created&&!n.props.remote&&n.setSelected()}),le(()=>e.value,(g,p)=>{const{remote:h,valueKey:m}=n.props;if((h?g!==p:!sn(g,p))&&(n.onOptionDestroy(p,c.proxy),n.onOptionCreate(c.proxy)),!e.created&&!h){if(m&&ot(g)&&ot(p)&&g[m]===p[m])return;n.setSelected()}}),le(()=>a.disabled,()=>{t.groupDisabled=a.disabled},{immediate:!0}),{select:n,currentLabel:r,currentValue:l,itemSelected:o,isDisabled:u,hoverItem:f,updateOption:v}}var J8=se({name:ch,componentName:ch,props:G8,setup(e){const t=fe("select"),n=zn(),a=w(()=>[t.be("dropdown","item"),t.is("disabled",i(l)),t.is("selected",i(r)),t.is("hovering",i(v))]),o=At({index:-1,groupDisabled:!1,visible:!0,hover:!1}),{currentLabel:s,itemSelected:r,isDisabled:l,select:u,hoverItem:c,updateOption:d}=X8(e,o),{visible:f,hover:v}=Mn(o),g=ft().proxy;u.onOptionCreate(g),Bt(()=>{const h=g.value;Re(()=>{const{selected:m}=u.states,b=m.some(k=>k.value===g.value);u.states.cachedOptions.get(h)===g&&!b&&u.states.cachedOptions.delete(h)}),u.onOptionDestroy(h,g)});function p(){l.value||u.handleOptionSelect(g)}return{ns:t,id:n,containerKls:a,currentLabel:s,itemSelected:r,isDisabled:l,select:u,visible:f,hover:v,states:o,hoverItem:c,updateOption:d,selectOptionClick:p}}});const Z8=["id","aria-disabled","aria-selected"];function Q8(e,t,n,a,o,s){return ut((x(),B("li",{id:e.id,class:T(e.containerKls),role:"option","aria-disabled":e.isDisabled||void 0,"aria-selected":e.itemSelected,onMousemove:t[0]||(t[0]=(...r)=>e.hoverItem&&e.hoverItem(...r)),onClick:t[1]||(t[1]=Xe((...r)=>e.selectOptionClick&&e.selectOptionClick(...r),["stop"]))},[ee(e.$slots,"default",{},()=>[z("span",null,Se(e.currentLabel),1)])],42,Z8)),[[Pt,e.visible]])}var hm=$n(J8,[["render",Q8]]),eF=se({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:Boolean},setup(e){const t=fe("select"),n=M(),a=ft(),o=M([]);St(_k,At({...Mn(e)}));const s=w(()=>o.value.some(c=>c.visible===!0)),r=c=>c.type.name==="ElOption"&&!!c.component?.proxy,l=c=>{const d=Nn(c),f=[];return d.forEach(v=>{Ut(v)&&(r(v)?f.push(v.component.proxy):ye(v.children)&&v.children.length?f.push(...l(v.children)):v.component?.subTree&&f.push(...l(v.component.subTree)))}),f},u=()=>{o.value=l(a.subTree)};return ht(()=>{u()}),su(n,u,{attributes:!0,subtree:!0,childList:!0}),{groupRef:n,visible:s,ns:t}}});function tF(e,t,n,a,o,s){return ut((x(),B("ul",{ref:"groupRef",class:T(e.ns.be("group","wrap"))},[z("li",{class:T(e.ns.be("group","title"))},Se(e.label),3),z("li",null,[z("ul",{class:T(e.ns.b("group"))},[ee(e.$slots,"default")],2)])],2)),[[Pt,e.visible]])}var vm=$n(eF,[["render",tF]]),nF=se({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=_e(bu),t=fe("select"),n=w(()=>e.props.popperClass),a=w(()=>e.props.multiple),o=w(()=>e.props.fitInputWidth),s=M("");function r(){const l=e.selectRef?.offsetWidth;l?s.value=`${l-J1}px`:s.value=""}return ht(()=>{r(),en(e.selectRef,r)}),{ns:t,minWidth:s,popperClass:n,isMultiple:a,isFitInputWidth:o}}});function aF(e,t,n,a,o,s){return x(),B("div",{class:T([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:Ke({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[e.$slots.header?(x(),B("div",{key:0,class:T(e.ns.be("dropdown","header"))},[ee(e.$slots,"header")],2)):te("v-if",!0),ee(e.$slots,"default"),e.$slots.footer?(x(),B("div",{key:1,class:T(e.ns.be("dropdown","footer"))},[ee(e.$slots,"footer")],2)):te("v-if",!0)],6)}var oF=$n(nF,[["render",aF]]);const sF=(e,t)=>{const{t:n}=Ct(),a=vn(),o=zn(),s=fe("select"),r=fe("input"),l=At({inputValue:"",options:new Map,cachedOptions:new Map,optionValues:[],selected:[],selectionWidth:0,collapseItemWidth:0,selectedLabel:"",hoveringIndex:-1,previousQuery:null,inputHovering:!1,menuVisibleOnFocus:!1,isBeforeHide:!1}),u=M(),c=M(),d=M(),f=M(),v=M(),g=M(),p=M(),h=M(),m=M(),b=M(),k=M(),y=M(!1),S=M(),C=M(!1),{form:E,formItem:$}=Dn(),{inputId:O}=Ia(e,{formItemContext:$}),{valueOnClear:N,isEmptyValue:R}=hu(e),{isComposing:A,handleCompositionStart:_,handleCompositionUpdate:V,handleCompositionEnd:H}=pu({afterComposition:Te=>Rt(Te)}),U=un(),{wrapperRef:W,isFocused:P,handleBlur:I}=ms(v,{disabled:U,afterFocus(){e.automaticDropdown&&!y.value&&(y.value=!0,l.menuVisibleOnFocus=!0)},beforeBlur(Te){return d.value?.isFocusInsideContent(Te)||f.value?.isFocusInsideContent(Te)},afterBlur(){y.value=!1,l.menuVisibleOnFocus=!1,e.validateEvent&&$?.validate?.("blur").catch(Te=>pt(Te))}}),L=w(()=>ye(e.modelValue)?e.modelValue.length>0:!R(e.modelValue)),D=w(()=>E?.statusIcon??!1),F=w(()=>e.clearable&&!U.value&&L.value&&(P.value||l.inputHovering)),q=w(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),j=w(()=>s.is("reverse",!!(q.value&&y.value))),X=w(()=>$?.validateState||""),Q=w(()=>X.value&&nf[X.value]),he=w(()=>e.remote?e.debounce:0),ue=w(()=>e.remote&&!l.inputValue&&l.options.size===0),ge=w(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&l.inputValue&&l.options.size>0&&ie.value===0?e.noMatchText||n("el.select.noMatch"):l.options.size===0?e.noDataText||n("el.select.noData"):null),ie=w(()=>ae.value.filter(Te=>Te.visible).length),ae=w(()=>{const Te=Array.from(l.options.values()),vt=[];return l.optionValues.forEach(Lt=>{const Yt=Te.findIndex(En=>En.value===Lt);Yt>-1&&vt.push(Te[Yt])}),vt.length>=Te.length?vt:Te}),ne=w(()=>Array.from(l.cachedOptions.values())),K=w(()=>{const Te=ae.value.filter(vt=>!vt.created).some(vt=>vt.currentLabel===l.inputValue);return e.filterable&&e.allowCreate&&l.inputValue!==""&&!Te}),Z=()=>{e.filterable&&Ve(e.filterMethod)||e.filterable&&e.remote&&Ve(e.remoteMethod)||ae.value.forEach(Te=>{Te.updateOption?.(l.inputValue)})},re=Cn(),ce=w(()=>["small"].includes(re.value)?"small":"default"),ve=w({get(){return y.value&&(e.loading||!ue.value||e.remote&&!!a.empty)&&(!C.value||!ia(l.previousQuery))},set(Te){y.value=Te}}),ke=w(()=>{if(e.multiple&&!Tt(e.modelValue))return Nn(e.modelValue).length===0&&!l.inputValue;const Te=ye(e.modelValue)?e.modelValue[0]:e.modelValue;return e.filterable||Tt(Te)?!l.inputValue:!0}),Ne=w(()=>{const Te=e.placeholder??n("el.select.placeholder");return e.multiple||!L.value?Te:l.selectedLabel}),Ie=w(()=>Xc?null:"mouseenter");le(()=>e.modelValue,(Te,vt)=>{e.multiple&&e.filterable&&!e.reserveKeyword&&(l.inputValue="",$e("")),Ee(),!sn(Te,vt)&&e.validateEvent&&$?.validate("change").catch(Lt=>pt(Lt))},{flush:"post",deep:!0}),le(()=>y.value,Te=>{Te?$e(l.inputValue):(l.inputValue="",l.previousQuery=null,l.isBeforeHide=!0,l.menuVisibleOnFocus=!1)}),le(()=>l.options.entries(),()=>{Mt&&(Ee(),e.defaultFirstOption&&(e.filterable||e.remote)&&ie.value&&pe())},{flush:"post"}),le([()=>l.hoveringIndex,ae],([Te])=>{He(Te)&&Te>-1?S.value=ae.value[Te]||{}:S.value={},ae.value.forEach(vt=>{vt.hover=S.value===vt})}),wa(()=>{l.isBeforeHide||Z()});const $e=Te=>{l.previousQuery===Te||A.value||(l.previousQuery=Te,e.filterable&&Ve(e.filterMethod)?e.filterMethod(Te):e.filterable&&e.remote&&Ve(e.remoteMethod)&&e.remoteMethod(Te),e.defaultFirstOption&&(e.filterable||e.remote)&&ie.value?Re(pe):Re(Me))},pe=()=>{const Te=ae.value.filter(Yt=>Yt.visible&&!Yt.disabled&&!Yt.states.groupDisabled),vt=Te.find(Yt=>Yt.created),Lt=Te[0];l.hoveringIndex=Ge(ae.value.map(Yt=>Yt.value),vt||Lt)},Ee=()=>{if(e.multiple)l.selectedLabel="";else{const vt=me(ye(e.modelValue)?e.modelValue[0]:e.modelValue);l.selectedLabel=vt.currentLabel,l.selected=[vt];return}const Te=[];Tt(e.modelValue)||Nn(e.modelValue).forEach(vt=>{Te.push(me(vt))}),l.selected=Te},me=Te=>{let vt;const Lt=mi(Te);for(let Yt=l.cachedOptions.size-1;Yt>=0;Yt--){const En=ne.value[Yt];if(Lt?wn(En.value,e.valueKey)===wn(Te,e.valueKey):En.value===Te){vt={index:ae.value.filter(vo=>!vo.created).indexOf(En),value:Te,currentLabel:En.currentLabel,get isDisabled(){return En.isDisabled}};break}}return vt||{index:-1,value:Te,currentLabel:Lt?Te.label:Te??""}},Me=()=>{const Te=l.selected.length;if(Te>0){const vt=l.selected[Te-1];l.hoveringIndex=ae.value.findIndex(Lt=>oa(vt)===oa(Lt))}else l.hoveringIndex=-1},We=()=>{l.selectionWidth=Number.parseFloat(window.getComputedStyle(c.value).width)},Ze=()=>{l.collapseItemWidth=b.value.getBoundingClientRect().width},Pe=()=>{d.value?.updatePopper?.()},Ae=()=>{f.value?.updatePopper?.()},je=()=>{l.inputValue.length>0&&!y.value&&(y.value=!0),$e(l.inputValue)},Rt=Te=>{if(l.inputValue=Te.target.value,e.remote)C.value=!0,Ue();else return je()},Ue=ou(()=>{je(),C.value=!1},he),lt=Te=>{sn(e.modelValue,Te)||t(yt,Te)},mt=Te=>MS(Te,vt=>{const Lt=l.cachedOptions.get(vt);return!Lt?.disabled&&!Lt?.states.groupDisabled}),kt=Te=>{const vt=jt(Te);if(e.multiple&&vt!==we.delete&&Te.target.value.length<=0){const Lt=Nn(e.modelValue).slice(),Yt=mt(Lt);if(Yt<0)return;const En=Lt[Yt];Lt.splice(Yt,1),t(at,Lt),lt(Lt),t("remove-tag",En)}},be=(Te,vt)=>{const Lt=l.selected.indexOf(vt);if(Lt>-1&&!U.value){const Yt=Nn(e.modelValue).slice();Yt.splice(Lt,1),t(at,Yt),lt(Yt),t("remove-tag",vt.value)}Te.stopPropagation(),ct()},ze=Te=>{Te.stopPropagation();const vt=e.multiple?[]:N.value;if(e.multiple)for(const Lt of l.selected)Lt.isDisabled&&vt.push(Lt.value);t(at,vt),lt(vt),l.hoveringIndex=-1,y.value=!1,t("clear"),ct()},de=Te=>{if(e.multiple){const vt=Nn(e.modelValue??[]).slice(),Lt=Ge(vt,Te);Lt>-1?vt.splice(Lt,1):(e.multipleLimit<=0||vt.length{$t(Te)})},Ge=(Te,vt)=>Tt(vt)?-1:ot(vt.value)?Te.findIndex(Lt=>sn(wn(Lt,e.valueKey),oa(vt))):Te.indexOf(vt.value),$t=Te=>{const vt=ye(Te)?Te[Te.length-1]:Te;let Lt=null;if(!bn(vt?.value)){const Yt=ae.value.filter(En=>En.value===vt.value);Yt.length>0&&(Lt=Yt[0].$el)}if(d.value&&Lt){const Yt=d.value?.popperRef?.contentRef?.querySelector?.(`.${s.be("dropdown","wrap")}`);Yt&&Fv(Yt,Lt)}k.value?.handleScroll()},tn=Te=>{l.options.set(Te.value,Te),l.cachedOptions.set(Te.value,Te)},_n=(Te,vt)=>{l.options.get(Te)===vt&&l.options.delete(Te)},Be=w(()=>d.value?.popperRef?.contentRef),nt=()=>{l.isBeforeHide=!1,Re(()=>{k.value?.update(),$t(l.selected)})},ct=()=>{v.value?.focus()},kn=()=>{if(y.value){y.value=!1,Re(()=>v.value?.blur());return}v.value?.blur()},Wt=Te=>{ze(Te)},yn=Te=>{if(y.value=!1,P.value){const vt=new FocusEvent("blur",Te);Re(()=>I(vt))}},Qe=()=>{l.inputValue.length>0?l.inputValue="":y.value=!1},tt=Te=>{U.value||e.filterable&&y.value&&Te&&!p.value?.contains(Te.target)||(Xc&&(l.inputHovering=!0),l.menuVisibleOnFocus?l.menuVisibleOnFocus=!1:y.value=!y.value)},bt=()=>{if(!y.value)tt();else{const Te=ae.value[l.hoveringIndex];Te&&!Te.isDisabled&&de(Te)}},oa=Te=>ot(Te.value)?wn(Te.value,e.valueKey):Te.value,ho=w(()=>ae.value.filter(Te=>Te.visible).every(Te=>Te.isDisabled)),Wa=w(()=>e.multiple?e.collapseTags?l.selected.slice(0,e.maxCollapseTags):l.selected:[]),Ou=w(()=>e.multiple?e.collapseTags?l.selected.slice(e.maxCollapseTags):[]:[]),js=Te=>{if(!y.value){y.value=!0;return}if(!(l.options.size===0||ie.value===0||A.value)&&!ho.value){Te==="next"?(l.hoveringIndex++,l.hoveringIndex===l.options.size&&(l.hoveringIndex=0)):Te==="prev"&&(l.hoveringIndex--,l.hoveringIndex<0&&(l.hoveringIndex=l.options.size-1));const vt=ae.value[l.hoveringIndex];(vt.isDisabled||!vt.visible)&&js(Te),Re(()=>$t(S.value))}},Ru=(Te,vt,Lt,Yt)=>{for(let En=vt;En>=0&&En{const Lt=l.options.size;if(Lt===0)return;const Yt=ar(Te,0,Lt-1),En=ae.value,vo=vt==="up"?-1:1,Ar=Ru(En,Yt,vo,Lt)??Ru(En,Yt-vo,-vo,Lt);Ar!=null&&(l.hoveringIndex=Ar,Re(()=>$t(S.value)))},yf=Te=>{const vt=jt(Te);let Lt=!0;switch(vt){case we.up:js("prev");break;case we.down:js("next");break;case we.enter:case we.numpadEnter:A.value||bt();break;case we.esc:Qe();break;case we.backspace:Lt=!1,kt(Te);return;case we.home:if(!y.value)return;zo(0,"down");break;case we.end:if(!y.value)return;zo(l.options.size-1,"up");break;case we.pageUp:if(!y.value)return;zo(l.hoveringIndex-10,"up");break;case we.pageDown:if(!y.value)return;zo(l.hoveringIndex+10,"down");break;default:Lt=!1;break}Lt&&(Te.preventDefault(),Te.stopPropagation())},wf=()=>{if(!c.value)return 0;const Te=window.getComputedStyle(c.value);return Number.parseFloat(Te.gap||"6px")},Sf=w(()=>{const Te=wf(),vt=e.filterable?Te+Ad:0;return{maxWidth:`${b.value&&e.maxCollapseTags===1?l.selectionWidth-l.collapseItemWidth-Te-vt:l.selectionWidth-vt}px`}}),Cf=w(()=>({maxWidth:`${l.selectionWidth}px`})),kf=Te=>{t("popup-scroll",Te)};en(c,We),en(W,Pe),en(m,Ae),en(b,Ze);let _r;return le(()=>ve.value,Te=>{Te?_r=en(h,Pe).stop:(_r?.(),_r=void 0),t("visible-change",Te)}),ht(()=>{Ee()}),{inputId:O,contentId:o,nsSelect:s,nsInput:r,states:l,isFocused:P,expanded:y,optionsArray:ae,hoverOption:S,selectSize:re,filteredOptionsCount:ie,updateTooltip:Pe,updateTagTooltip:Ae,debouncedOnInputChange:Ue,onInput:Rt,deletePrevTag:kt,deleteTag:be,deleteSelected:ze,handleOptionSelect:de,scrollToOption:$t,hasModelValue:L,shouldShowPlaceholder:ke,currentPlaceholder:Ne,mouseEnterEventName:Ie,needStatusIcon:D,showClearBtn:F,iconComponent:q,iconReverse:j,validateState:X,validateIcon:Q,showNewOption:K,updateOptions:Z,collapseTagSize:ce,setSelected:Ee,selectDisabled:U,emptyText:ge,handleCompositionStart:_,handleCompositionUpdate:V,handleCompositionEnd:H,handleKeydown:yf,onOptionCreate:tn,onOptionDestroy:_n,handleMenuEnter:nt,focus:ct,blur:kn,handleClearClick:Wt,handleClickOutside:yn,handleEsc:Qe,toggleMenu:tt,selectOption:bt,getValueKey:oa,navigateOptions:js,dropdownMenuVisible:ve,showTagList:Wa,collapseTagList:Ou,popupScroll:kf,getOption:me,tagStyle:Sf,collapseTagStyle:Cf,popperRef:Be,inputRef:v,tooltipRef:d,tagTooltipRef:f,prefixRef:g,suffixRef:p,selectRef:u,wrapperRef:W,selectionRef:c,scrollbarRef:k,menuRef:h,tagMenuRef:m,collapseItemRef:b}};var rF=se({name:"ElOptions",setup(e,{slots:t}){const n=_e(bu);let a=[];return()=>{const o=t.default?.(),s=[];function r(l){ye(l)&&l.forEach(u=>{const c=(u?.type||{})?.name;c==="ElOptionGroup"?r(!Le(u.children)&&!ye(u.children)&&Ve(u.children?.default)?u.children?.default():u.children):c==="ElOption"?s.push(u.props?.value):ye(u.children)&&r(u.children)})}return o.length&&r(o[0]?.children),sn(s,a)||(a=s,n&&(n.states.optionValues=s)),o}}});const qy="ElSelect",Ai=new WeakMap,lF=e=>(...t)=>{const n=t[0];if(!n||n.includes('Slot "default" invoked outside of the render function')&&t[2]?.includes("ElTreeSelect"))return;const a=Ai.get(e)?.originalWarnHandler;if(a){a(...t);return}console.warn(...t)},iF=e=>{let t=Ai.get(e);return t||(t={originalWarnHandler:e.config.warnHandler,handler:lF(e),count:0},Ai.set(e,t)),t};var uF=se({name:qy,componentName:qy,components:{ElSelectMenu:oF,ElOption:hm,ElOptions:rF,ElOptionGroup:vm,ElTag:ts,ElScrollbar:ao,ElTooltip:Ln,ElIcon:De},directives:{ClickOutside:zs},props:Ak,emits:[at,yt,"remove-tag","clear","visible-change","focus","blur","popup-scroll"],setup(e,{emit:t,slots:n}){const a=ft(),o=iF(a.appContext);o.count+=1,a.appContext.config.warnHandler=o.handler;const s=w(()=>{const{modelValue:k,multiple:y}=e,S=y?[]:void 0;return ye(k)?y?k:S:y?S:k}),r=At({...Mn(e),modelValue:s}),l=sF(r,t),{calculatorRef:u,inputStyle:c}=Av(),{getLabel:d,getValue:f,getOptions:v,getDisabled:g}=yu(e),p=k=>({label:d(k),value:f(k),disabled:g(k)}),h=k=>k.reduce((y,S)=>(y.push(S),S.children&&S.children.length>0&&y.push(...h(S.children)),y),[]),m=k=>{Ta(k||[]).forEach(y=>{if(ot(y)&&(y.type.name==="ElOption"||y.type.name==="ElTree")){const S=y.type.name;if(S==="ElTree")h(y.props?.data||[]).forEach(C=>{C.currentLabel=C.label||(ot(C.value)?"":C.value),l.onOptionCreate(C)});else if(S==="ElOption"){const C={...y.props};C.currentLabel=C.label||(ot(C.value)?"":C.value),l.onOptionCreate(C)}}})};le(()=>[e.persistent||l.expanded.value||!n.default?void 0:n.default?.(),s.value],()=>{e.persistent||l.expanded.value||(l.states.options.clear(),m(n.default?.()))},{immediate:!0}),St(bu,At({props:r,states:l.states,selectRef:l.selectRef,optionsArray:l.optionsArray,setSelected:l.setSelected,handleOptionSelect:l.handleOptionSelect,onOptionCreate:l.onOptionCreate,onOptionDestroy:l.onOptionDestroy}));const b=w(()=>e.multiple?l.states.selected.map(k=>k.currentLabel):l.states.selectedLabel);return Bt(()=>{const k=Ai.get(a.appContext);k&&(k.count-=1,k.count<=0&&(a.appContext.config.warnHandler=k.originalWarnHandler,Ai.delete(a.appContext)))}),{...l,modelValue:s,selectedLabel:b,calculatorRef:u,inputStyle:c,getLabel:d,getValue:f,getOptions:v,getDisabled:g,getOptionProps:p}}});const cF=["id","value","name","disabled","autocomplete","tabindex","readonly","aria-activedescendant","aria-controls","aria-expanded","aria-label"],dF=["textContent"],fF={key:1};function pF(e,t,n,a,o,s){const r=It("el-tag"),l=It("el-tooltip"),u=It("el-icon"),c=It("el-option"),d=It("el-option-group"),f=It("el-options"),v=It("el-scrollbar"),g=It("el-select-menu"),p=iv("click-outside");return ut((x(),B("div",dt({ref:"selectRef",class:[e.nsSelect.b(),e.nsSelect.m(e.selectSize)]},{[ti(e.mouseEnterEventName)]:t[11]||(t[11]=h=>e.states.inputHovering=!0)},{onMouseleave:t[12]||(t[12]=h=>e.states.inputHovering=!1)}),[Y(l,{ref:"tooltipRef",visible:e.dropdownMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-style":e.popperStyle,"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:t[10]||(t[10]=h=>e.states.isBeforeHide=!1)},{default:J(()=>[z("div",{ref:"wrapperRef",class:T([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:t[7]||(t[7]=Xe((...h)=>e.toggleMenu&&e.toggleMenu(...h),["prevent"]))},[e.$slots.prefix?(x(),B("div",{key:0,ref:"prefixRef",class:T(e.nsSelect.e("prefix"))},[ee(e.$slots,"prefix")],2)):te("v-if",!0),z("div",{ref:"selectionRef",class:T([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.states.selected.length)])},[e.multiple?ee(e.$slots,"tag",{key:0,data:e.states.selected,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(x(!0),B(Fe,null,gt(e.showTagList,h=>(x(),B("div",{key:e.getValueKey(h),class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!e.selectDisabled&&!h.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:Ke(e.tagStyle),onClose:m=>e.deleteTag(m,h)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:h.index,label:h.currentLabel,value:h.value},()=>[wt(Se(h.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.selected.length>e.maxCollapseTags?(x(),oe(l,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":e.tagTooltip?.fallbackPlacements??["bottom","top","right","left"],effect:e.tagTooltip?.effect??e.effect,placement:e.tagTooltip?.placement??"bottom","popper-class":e.tagTooltip?.popperClass??e.popperClass,"popper-style":e.tagTooltip?.popperStyle??e.popperStyle,teleported:e.tagTooltip?.teleported??e.teleported,"append-to":e.tagTooltip?.appendTo??e.appendTo,"popper-options":e.tagTooltip?.popperOptions??e.popperOptions,transition:e.tagTooltip?.transition,"show-after":e.tagTooltip?.showAfter,"hide-after":e.tagTooltip?.hideAfter,"auto-close":e.tagTooltip?.autoClose,offset:e.tagTooltip?.offset},{default:J(()=>[z("div",{ref:"collapseItemRef",class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:Ke(e.collapseTagStyle)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))}," + "+Se(e.states.selected.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:J(()=>[z("div",{ref:"tagMenuRef",class:T(e.nsSelect.e("selection"))},[(x(!0),B(Fe,null,gt(e.collapseTagList,h=>(x(),B("div",{key:e.getValueKey(h),class:T(e.nsSelect.e("selected-item"))},[Y(r,{class:"in-tooltip",closable:!e.selectDisabled&&!h.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:m=>e.deleteTag(m,h)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:h.index,label:h.currentLabel,value:h.value},()=>[wt(Se(h.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","fallback-placements","effect","placement","popper-class","popper-style","teleported","append-to","popper-options","transition","show-after","hide-after","auto-close","offset"])):te("v-if",!0)]):te("v-if",!0),z("div",{class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable||e.selectDisabled||!e.states.inputValue&&!e.isFocused)])},[z("input",{id:e.inputId,ref:"inputRef",value:e.states.inputValue,type:"text",name:e.name,class:T([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:Ke(e.inputStyle),tabindex:e.tabindex,role:"combobox",readonly:!e.filterable,spellcheck:"false","aria-activedescendant":e.hoverOption?.id||"","aria-controls":e.contentId,"aria-expanded":e.dropdownMenuVisible,"aria-label":e.ariaLabel,"aria-autocomplete":"none","aria-haspopup":"listbox",onKeydown:t[0]||(t[0]=(...h)=>e.handleKeydown&&e.handleKeydown(...h)),onCompositionstart:t[1]||(t[1]=(...h)=>e.handleCompositionStart&&e.handleCompositionStart(...h)),onCompositionupdate:t[2]||(t[2]=(...h)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...h)),onCompositionend:t[3]||(t[3]=(...h)=>e.handleCompositionEnd&&e.handleCompositionEnd(...h)),onInput:t[4]||(t[4]=(...h)=>e.onInput&&e.onInput(...h)),onChange:t[5]||(t[5]=Xe(()=>{},["stop"])),onClick:t[6]||(t[6]=Xe((...h)=>e.toggleMenu&&e.toggleMenu(...h),["stop"]))},null,46,cF),e.filterable?(x(),B("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:T(e.nsSelect.e("input-calculator")),textContent:Se(e.states.inputValue)},null,10,dF)):te("v-if",!0)],2),e.shouldShowPlaceholder?(x(),B("div",{key:1,class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?ee(e.$slots,"label",{key:0,index:e.getOption(e.modelValue).index,label:e.currentPlaceholder,value:e.modelValue},()=>[z("span",null,Se(e.currentPlaceholder),1)]):(x(),B("span",fF,Se(e.currentPlaceholder),1))],2)):te("v-if",!0)],2),z("div",{ref:"suffixRef",class:T(e.nsSelect.e("suffix"))},[e.iconComponent&&!e.showClearBtn?(x(),oe(u,{key:0,class:T([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:J(()=>[(x(),oe(it(e.iconComponent)))]),_:1},8,["class"])):te("v-if",!0),e.showClearBtn&&e.clearIcon?(x(),oe(u,{key:1,class:T([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.nsSelect.e("clear")]),onClick:e.handleClearClick},{default:J(()=>[(x(),oe(it(e.clearIcon)))]),_:1},8,["class","onClick"])):te("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(x(),oe(u,{key:2,class:T([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:J(()=>[(x(),oe(it(e.validateIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)]),content:J(()=>[Y(g,{ref:"menuRef"},{default:J(()=>[e.$slots.header?(x(),B("div",{key:0,class:T(e.nsSelect.be("dropdown","header")),onClick:t[8]||(t[8]=Xe(()=>{},["stop"]))},[ee(e.$slots,"header")],2)):te("v-if",!0),ut(Y(v,{id:e.contentId,ref:"scrollbarRef",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:T([e.nsSelect.is("empty",e.filteredOptionsCount===0)]),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical",onScroll:e.popupScroll},{default:J(()=>[e.showNewOption?(x(),oe(c,{key:0,value:e.states.inputValue,created:!0},null,8,["value"])):te("v-if",!0),Y(f,null,{default:J(()=>[ee(e.$slots,"default",{},()=>[(x(!0),B(Fe,null,gt(e.options,(h,m)=>(x(),B(Fe,{key:m},[e.getOptions(h)?.length?(x(),oe(d,{key:0,label:e.getLabel(h),disabled:e.getDisabled(h)},{default:J(()=>[(x(!0),B(Fe,null,gt(e.getOptions(h),b=>(x(),oe(c,dt({key:e.getValue(b)},{ref_for:!0},e.getOptionProps(b)),null,16))),128))]),_:2},1032,["label","disabled"])):(x(),oe(c,dt({key:1,ref_for:!0},e.getOptionProps(h)),null,16))],64))),128))])]),_:3})]),_:3},8,["id","wrap-class","view-class","class","aria-label","onScroll"]),[[Pt,e.states.options.size>0&&!e.loading]]),e.$slots.loading&&e.loading?(x(),B("div",{key:1,class:T(e.nsSelect.be("dropdown","loading"))},[ee(e.$slots,"loading")],2)):e.loading||e.filteredOptionsCount===0?(x(),B("div",{key:2,class:T(e.nsSelect.be("dropdown","empty"))},[ee(e.$slots,"empty",{},()=>[z("span",null,Se(e.emptyText),1)])],2)):te("v-if",!0),e.$slots.footer?(x(),B("div",{key:3,class:T(e.nsSelect.be("dropdown","footer")),onClick:t[9]||(t[9]=Xe(()=>{},["stop"]))},[ee(e.$slots,"footer")],2)):te("v-if",!0)]),_:3},512)]),_:3},8,["visible","placement","teleported","popper-class","popper-style","popper-options","fallback-placements","effect","transition","persistent","append-to","show-arrow","offset","onBeforeShow"])],16)),[[p,e.handleClickOutside,e.popperRef]])}var hF=$n(uF,[["render",pF]]);const Hs=rt(hF,{Option:hm,OptionGroup:vm}),sd=an(hm),vF=an(vm),mF=(e,t)=>{const n=e.subtract(1,"month").endOf("month").date();return _s(t).map((a,o)=>n-(t-o-1))},gF=e=>_s(e.daysInMonth()).map((t,n)=>n+1),bF=e=>_s(e.length/7).map(t=>{const n=t*7;return e.slice(n,n+7)}),yF=Ce({selectedDay:{type:G(Object)},range:{type:G(Array)},date:{type:G(Object),required:!0},hideHeader:{type:Boolean}}),wF={pick:e=>ot(e)};var wc={exports:{}},SF=wc.exports,Yy;function CF(){return Yy||(Yy=1,(function(e,t){(function(n,a){e.exports=a()})(SF,(function(){return function(n,a,o){var s=a.prototype,r=function(f){return f&&(f.indexOf?f:f.s)},l=function(f,v,g,p,h){var m=f.name?f:f.$locale(),b=r(m[v]),k=r(m[g]),y=b||k.map((function(C){return C.slice(0,p)}));if(!h)return y;var S=m.weekStart;return y.map((function(C,E){return y[(E+(S||0))%7]}))},u=function(){return o.Ls[o.locale()]},c=function(f,v){return f.formats[v]||(function(g){return g.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(p,h,m){return h||m.slice(1)}))})(f.formats[v.toUpperCase()])},d=function(){var f=this;return{months:function(v){return v?v.format("MMMM"):l(f,"months")},monthsShort:function(v){return v?v.format("MMM"):l(f,"monthsShort","months",3)},firstDayOfWeek:function(){return f.$locale().weekStart||0},weekdays:function(v){return v?v.format("dddd"):l(f,"weekdays")},weekdaysMin:function(v){return v?v.format("dd"):l(f,"weekdaysMin","weekdays",2)},weekdaysShort:function(v){return v?v.format("ddd"):l(f,"weekdaysShort","weekdays",3)},longDateFormat:function(v){return c(f.$locale(),v)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};s.localeData=function(){return d.bind(this)()},o.localeData=function(){var f=u();return{firstDayOfWeek:function(){return f.weekStart||0},weekdays:function(){return o.weekdays()},weekdaysShort:function(){return o.weekdaysShort()},weekdaysMin:function(){return o.weekdaysMin()},months:function(){return o.months()},monthsShort:function(){return o.monthsShort()},longDateFormat:function(v){return c(f,v)},meridiem:f.meridiem,ordinal:f.ordinal}},o.months=function(){return l(u(),"months")},o.monthsShort=function(){return l(u(),"monthsShort","months",3)},o.weekdays=function(f){return l(u(),"weekdays",null,null,f)},o.weekdaysShort=function(f){return l(u(),"weekdaysShort","weekdays",3,f)},o.weekdaysMin=function(f){return l(u(),"weekdaysMin","weekdays",2,f)}}}))})(wc)),wc.exports}var kF=CF();const Lk=bs(kF),EF=(e,t)=>{st.extend(Lk);const n=st.localeData().firstDayOfWeek(),{t:a,lang:o}=Ct(),s=st().locale(o.value),r=w(()=>!!e.range&&!!e.range.length),l=w(()=>{let v=[];if(r.value){const[g,p]=e.range,h=_s(p.date()-g.date()+1).map(k=>({text:g.date()+k,type:"current"}));let m=h.length%7;m=m===0?0:7-m;const b=_s(m).map((k,y)=>({text:y+1,type:"next"}));v=h.concat(b)}else{const g=e.date.startOf("month").day(),p=mF(e.date,(g-n+7)%7).map(b=>({text:b,type:"prev"})),h=gF(e.date).map(b=>({text:b,type:"current"}));v=[...p,...h];const m=_s(7-(v.length%7||7)).map((b,k)=>({text:k+1,type:"next"}));v=v.concat(m)}return bF(v)}),u=w(()=>{const v=n;return v===0?Af.map(g=>a(`el.datepicker.weeks.${g}`)):Af.slice(v).concat(Af.slice(0,v)).map(g=>a(`el.datepicker.weeks.${g}`))}),c=(v,g)=>{switch(g){case"prev":return e.date.startOf("month").subtract(1,"month").date(v);case"next":return e.date.startOf("month").add(1,"month").date(v);case"current":return e.date.date(v)}};return{now:s,isInRange:r,rows:l,weekDays:u,getFormattedDate:c,handlePickDay:({text:v,type:g})=>{t("pick",c(v,g))},getSlotData:({text:v,type:g})=>{const p=c(v,g);return{isSelected:p.isSame(e.selectedDay),type:`${g}-month`,day:p.format("YYYY-MM-DD"),date:p.toDate()}}}},xF={key:0},TF=["onClick"];var $F=se({name:"DateTable",__name:"date-table",props:yF,emits:wF,setup(e,{expose:t,emit:n}){const a=e,{isInRange:o,now:s,rows:r,weekDays:l,getFormattedDate:u,handlePickDay:c,getSlotData:d}=EF(a,n),f=fe("calendar-table"),v=fe("calendar-day"),g=({text:p,type:h})=>{const m=[h];if(h==="current"){const b=u(p,h);b.isSame(a.selectedDay,"day")&&m.push(v.is("selected")),b.isSame(s,"day")&&m.push(v.is("today"))}return m};return t({getFormattedDate:u}),(p,h)=>(x(),B("table",{class:T([i(f).b(),i(f).is("range",i(o))]),cellspacing:"0",cellpadding:"0"},[e.hideHeader?te("v-if",!0):(x(),B("thead",xF,[z("tr",null,[(x(!0),B(Fe,null,gt(i(l),m=>(x(),B("th",{key:m,scope:"col"},Se(m),1))),128))])])),z("tbody",null,[(x(!0),B(Fe,null,gt(i(r),(m,b)=>(x(),B("tr",{key:b,class:T({[i(f).e("row")]:!0,[i(f).em("row","hide-border")]:b===0&&e.hideHeader})},[(x(!0),B(Fe,null,gt(m,(k,y)=>(x(),B("td",{key:y,class:T(g(k)),onClick:S=>i(c)(k)},[z("div",{class:T(i(v).b())},[ee(p.$slots,"date-cell",{data:i(d)(k)},()=>[z("span",null,Se(k.text),1)])],2)],10,TF))),128))],2))),128))])],2))}}),Gy=$F;const OF=(e,t)=>{const n=e.endOf("month"),a=t.startOf("month"),o=n.isSame(a,"week")?a.add(1,"week"):a;return[[e,n],[o.startOf("week"),t]]},RF=(e,t)=>{const n=e.endOf("month"),a=e.add(1,"month").startOf("month"),o=n.isSame(a,"week")?a.add(1,"week"):a,s=o.endOf("month"),r=t.startOf("month"),l=s.isSame(r,"week")?r.add(1,"week"):r;return[[e,n],[o.startOf("week"),s],[l.startOf("week"),t]]},NF=(e,t,n)=>{const{lang:a}=Ct(),o=M(),s=st().locale(a.value),r=w({get(){return e.modelValue?u.value:o.value},set(b){if(!b)return;o.value=b;const k=b.toDate();t(Sn,k),t(at,k)}}),l=w(()=>{if(!e.range||!ye(e.range)||e.range.length!==2||e.range.some(y=>!As(y)))return[];const[b,k]=e.range.map(y=>st(y).locale(a.value));return b.isAfter(k)?(pt(n,"end time should be greater than start time"),[]):b.isSame(k,"month")?g(b,k):b.add(1,"month").month()!==k.month()?(pt(n,"start time and end time interval must not exceed two months"),[]):g(b,k)}),u=w(()=>e.modelValue?st(e.modelValue).locale(a.value):r.value||(l.value.length?l.value[0][0]:s)),c=w(()=>u.value.subtract(1,"month").date(1)),d=w(()=>u.value.add(1,"month").date(1)),f=w(()=>u.value.subtract(1,"year").date(1)),v=w(()=>u.value.add(1,"year").date(1)),g=(b,k)=>{const y=b.startOf("week"),S=k.endOf("week"),C=y.get("month"),E=S.get("month");return C===E?[[y,S]]:(C+1)%12===E?OF(y,S):C+2===E||(C+1)%11===E?RF(y,S):(pt(n,"start time and end time interval must not exceed two months"),[])},p=b=>{r.value=b},h=b=>{const k={"prev-month":c.value,"next-month":d.value,"prev-year":f.value,"next-year":v.value,today:s}[b];k.isSame(u.value,"day")||p(k)};return{calculateValidatedDateRange:g,date:u,realSelectedDay:r,pickDay:p,selectDate:h,validatedRange:l,handleDateChange:b=>{b==="today"?h("today"):p(b)}}},IF=Ce({date:{type:G(Object),required:!0},formatter:{type:G(Function)}}),PF={"date-change":e=>ot(e)||Le(e)};var MF=se({name:"SelectController",__name:"select-controller",props:IF,emits:PF,setup(e,{emit:t}){const n=e,a=t,o=fe("calendar-select"),{t:s,lang:r}=Ct(),l=Array.from({length:12},(p,h)=>{const m=h+1;return{value:m,label:Ve(n.formatter)?n.formatter(m,"month"):m}}),u=w(()=>n.date.year()),c=w(()=>n.date.month()+1),d=w(()=>{const p=[];for(let h=-10;h<10;h++){const m=u.value+h;if(m>0){const b=Ve(n.formatter)?n.formatter(m,"year"):m;p.push({value:m,label:b})}}return p}),f=p=>{a("date-change",st(new Date(p,c.value-1,1)).locale(r.value))},v=p=>{a("date-change",st(new Date(u.value,p-1,1)).locale(r.value))},g=()=>{a("date-change","today")};return(p,h)=>(x(),B(Fe,null,[Y(i(Hs),{"model-value":u.value,size:"small",class:T(i(o).e("year")),"validate-event":!1,options:d.value,onChange:f},null,8,["model-value","class","options"]),Y(i(Hs),{"model-value":c.value,size:"small",class:T(i(o).e("month")),"validate-event":!1,options:i(l),onChange:v},null,8,["model-value","class","options"]),Y(i(In),{size:"small",onClick:g},{default:J(()=>[wt(Se(i(s)("el.datepicker.today")),1)]),_:1})],64))}}),_F=MF;const Xy="ElCalendar";var AF=se({name:Xy,__name:"calendar",props:l8,emits:i8,setup(e,{expose:t,emit:n}){const a=fe("calendar"),{calculateValidatedDateRange:o,date:s,pickDay:r,realSelectedDay:l,selectDate:u,validatedRange:c,handleDateChange:d}=NF(e,n,Xy),{t:f}=Ct(),v=w(()=>{const g=`el.datepicker.month${s.value.format("M")}`;return`${s.value.year()} ${f("el.datepicker.year")} ${f(g)}`});return t({selectedDay:l,pickDay:r,selectDate:u,calculateValidatedDateRange:o}),(g,p)=>(x(),B("div",{class:T(i(a).b())},[z("div",{class:T(i(a).e("header"))},[ee(g.$slots,"header",{date:v.value},()=>[z("div",{class:T(i(a).e("title"))},Se(v.value),3),i(c).length===0&&e.controllerType==="button"?(x(),B("div",{key:0,class:T(i(a).e("button-group"))},[Y(i(hk),null,{default:J(()=>[Y(i(In),{size:"small",onClick:p[0]||(p[0]=h=>i(u)("prev-month"))},{default:J(()=>[wt(Se(i(f)("el.datepicker.prevMonth")),1)]),_:1}),Y(i(In),{size:"small",onClick:p[1]||(p[1]=h=>i(u)("today"))},{default:J(()=>[wt(Se(i(f)("el.datepicker.today")),1)]),_:1}),Y(i(In),{size:"small",onClick:p[2]||(p[2]=h=>i(u)("next-month"))},{default:J(()=>[wt(Se(i(f)("el.datepicker.nextMonth")),1)]),_:1})]),_:1})],2)):i(c).length===0&&e.controllerType==="select"?(x(),B("div",{key:1,class:T(i(a).e("select-controller"))},[Y(_F,{date:i(s),formatter:e.formatter,onDateChange:i(d)},null,8,["date","formatter","onDateChange"])],2)):te("v-if",!0)])],2),i(c).length===0?(x(),B("div",{key:0,class:T(i(a).e("body"))},[Y(Gy,{date:i(s),"selected-day":i(l),onPick:i(r)},ua({_:2},[g.$slots["date-cell"]?{name:"date-cell",fn:J(h=>[ee(g.$slots,"date-cell",Jo(Zo(h)))]),key:"0"}:void 0]),1032,["date","selected-day","onPick"])],2)):(x(),B("div",{key:1,class:T(i(a).e("body"))},[(x(!0),B(Fe,null,gt(i(c),(h,m)=>(x(),oe(Gy,{key:m,date:h[0],"selected-day":i(l),range:h,"hide-header":m!==0,onPick:i(r)},ua({_:2},[g.$slots["date-cell"]?{name:"date-cell",fn:J(b=>[ee(g.$slots,"date-cell",dt({ref_for:!0},b))]),key:"0"}:void 0]),1032,["date","selected-day","range","hide-header","onPick"]))),128))],2))],2))}}),LF=AF;const DF=rt(LF),BF=Ce({header:{type:String,default:""},footer:{type:String,default:""},bodyStyle:{type:G([String,Object,Array]),default:""},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:["always","hover","never"],default:void 0}});var FF=se({name:"ElCard",__name:"card",props:BF,setup(e){const t=gs("card"),n=fe("card");return(a,o)=>(x(),B("div",{class:T([i(n).b(),i(n).is(`${e.shadow||i(t)?.shadow||"always"}-shadow`)])},[a.$slots.header||e.header?(x(),B("div",{key:0,class:T([i(n).e("header"),e.headerClass])},[ee(a.$slots,"header",{},()=>[wt(Se(e.header),1)])],2)):te("v-if",!0),z("div",{class:T([i(n).e("body"),e.bodyClass]),style:Ke(e.bodyStyle)},[ee(a.$slots,"default")],6),a.$slots.footer||e.footer?(x(),B("div",{key:1,class:T([i(n).e("footer"),e.footerClass])},[ee(a.$slots,"footer",{},()=>[wt(Se(e.footer),1)])],2)):te("v-if",!0)],2))}}),VF=FF;const zF=rt(VF),HF=Ce({initialIndex:{type:Number,default:0},height:{type:String,default:""},trigger:{type:String,values:["hover","click"],default:"hover"},autoplay:{type:Boolean,default:!0},interval:{type:Number,default:3e3},indicatorPosition:{type:String,values:["","none","outside"],default:""},arrow:{type:String,values:["always","hover","never"],default:"hover"},type:{type:String,values:["","card"],default:""},cardScale:{type:Number,default:.83},loop:{type:Boolean,default:!0},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},pauseOnHover:{type:Boolean,default:!0},motionBlur:Boolean}),KF={change:(e,t)=>[e,t].every(He)},Dk=Symbol("carouselContextKey"),Li="ElCarouselItem",WF=Ce({name:{type:String,default:""},label:{type:[String,Number],default:""}}),Jy=300,jF=(e,t,n)=>{const{children:a,addChild:o,removeChild:s,ChildrenSorter:r}=Qd(ft(),Li),l=vn(),u=M(-1),c=M(null),d=M(!1),f=M(),v=M(0),g=M(!0),p=w(()=>e.arrow!=="never"&&!i(b)),h=w(()=>a.value.some(Q=>Q.props.label.toString().length>0)),m=w(()=>e.type==="card"),b=w(()=>e.direction==="vertical"),k=w(()=>e.height!=="auto"?{height:e.height}:{height:`${v.value}px`,overflow:"hidden"}),y=Rs(Q=>{N(Q)},Jy,{trailing:!0}),S=Rs(Q=>{P(Q)},Jy),C=Q=>g.value?u.value<=1?Q<=1:Q>1:!0;function E(){c.value&&(clearInterval(c.value),c.value=null)}function $(){e.interval<=0||!e.autoplay||c.value||(c.value=setInterval(()=>O(),e.interval))}const O=()=>{u.valueie.props.name===Q);ge.length>0&&(Q=a.value.indexOf(ge[0]))}if(Q=Number(Q),Number.isNaN(Q)||Q!==Math.floor(Q)){pt(n,"index must be integer.");return}const he=a.value.length,ue=u.value;Q<0?u.value=e.loop?he-1:0:Q>=he?u.value=e.loop?0:he-1:u.value=Q,ue===u.value&&R(ue),D()}function R(Q){a.value.forEach((he,ue)=>{he.translateItem(ue,u.value,Q)})}function A(Q,he){const ue=i(a),ge=ue.length;if(ge===0||!Q.states.inStage)return!1;const ie=he+1,ae=he-1,ne=ge-1,K=ue[ne].states.active,Z=ue[0].states.active,re=ue[ie]?.states?.active,ce=ue[ae]?.states?.active;return he===ne&&Z||re?"left":he===0&&K||ce?"right":!1}function _(){d.value=!0,e.pauseOnHover&&E()}function V(){d.value=!1,$()}function H(Q){i(b)||a.value.forEach((he,ue)=>{Q===A(he,ue)&&(he.states.hover=!0)})}function U(){i(b)||a.value.forEach(Q=>{Q.states.hover=!1})}function W(Q){u.value=Q}function P(Q){e.trigger==="hover"&&Q!==u.value&&(u.value=Q)}function I(){N(u.value-1)}function L(){N(u.value+1)}function D(){E(),(!e.pauseOnHover||!d.value)&&$()}function F(Q){e.height==="auto"&&(v.value=Q)}function q(){const Q=l.default?.();if(!Q)return null;const he=Ta(Q).filter(ue=>Ut(ue)&&ue.type.name===Li);return he?.length===2&&e.loop&&!m.value?(g.value=!0,he):(g.value=!1,null)}le(()=>u.value,(Q,he)=>{R(he),g.value&&(Q=Q%2,he=he%2),he>-1&&t(yt,Q,he)});const j=w({get:()=>g.value?u.value%2:u.value,set:Q=>u.value=Q});le(()=>e.autoplay,Q=>{Q?$():E()}),le(()=>e.loop,()=>{N(u.value)}),le(()=>e.interval,()=>{D()});const X=Xt();return ht(()=>{le(()=>a.value,()=>{a.value.length>0&&N(e.initialIndex)},{immediate:!0}),X.value=en(f.value,()=>{R()}),$()}),Bt(()=>{E(),f.value&&X.value&&X.value.stop()}),St(Dk,{root:f,isCardType:m,isVertical:b,items:a,loop:e.loop,cardScale:e.cardScale,addItem:o,removeItem:s,setActiveItem:N,setContainerHeight:F}),{root:f,activeIndex:u,exposeActiveIndex:j,arrowDisplay:p,hasLabel:h,hover:d,isCardType:m,items:a,isVertical:b,containerStyle:k,isItemsTwoLength:g,handleButtonEnter:H,handleButtonLeave:U,handleIndicatorClick:W,handleMouseEnter:_,handleMouseLeave:V,setActiveItem:N,prev:I,next:L,PlaceholderItem:q,isTwoLengthShow:C,ItemsSorter:r,throttledArrowClick:y,throttledIndicatorHover:S}},UF=["aria-label"],qF=["aria-label"],YF=["onMouseenter","onClick"],GF=["aria-label"],XF={key:0},JF={key:2,xmlns:"http://www.w3.org/2000/svg",version:"1.1",style:{display:"none"}},Zy="ElCarousel";var ZF=se({name:Zy,__name:"carousel",props:HF,emits:KF,setup(e,{expose:t,emit:n}){const a=e,{root:o,activeIndex:s,exposeActiveIndex:r,arrowDisplay:l,hasLabel:u,hover:c,isCardType:d,items:f,isVertical:v,containerStyle:g,handleButtonEnter:p,handleButtonLeave:h,handleIndicatorClick:m,handleMouseEnter:b,handleMouseLeave:k,setActiveItem:y,prev:S,next:C,PlaceholderItem:E,isTwoLengthShow:$,ItemsSorter:O,throttledArrowClick:N,throttledIndicatorHover:R}=jF(a,n,Zy),A=fe("carousel"),{t:_}=Ct(),V=w(()=>{const P=[A.b(),A.m(a.direction)];return i(d)&&P.push(A.m("card")),P.push(A.is("vertical-outside",i(v)&&a.indicatorPosition==="outside")),P}),H=w(()=>{const P=[A.e("indicators"),A.em("indicators",a.direction)];return i(u)&&P.push(A.em("indicators","labels")),a.indicatorPosition==="outside"&&P.push(A.em("indicators","outside")),i(v)&&P.push(A.em("indicators","right")),P});function U(P){if(!a.motionBlur)return;const I=i(v)?`${A.namespace.value}-transitioning-vertical`:`${A.namespace.value}-transitioning`;P.currentTarget.classList.add(I)}function W(P){if(!a.motionBlur)return;const I=i(v)?`${A.namespace.value}-transitioning-vertical`:`${A.namespace.value}-transitioning`;P.currentTarget.classList.remove(I)}return t({activeIndex:r,setActiveItem:y,prev:S,next:C}),(P,I)=>(x(),B("div",{ref_key:"root",ref:o,class:T(V.value),onMouseenter:I[6]||(I[6]=Xe((...L)=>i(b)&&i(b)(...L),["stop"])),onMouseleave:I[7]||(I[7]=Xe((...L)=>i(k)&&i(k)(...L),["stop"]))},[i(l)?(x(),oe(Vn,{key:0,name:"carousel-arrow-left",persisted:""},{default:J(()=>[ut(z("button",{type:"button",class:T([i(A).e("arrow"),i(A).em("arrow","left")]),"aria-label":i(_)("el.carousel.leftArrow"),onMouseenter:I[0]||(I[0]=L=>i(p)("left")),onMouseleave:I[1]||(I[1]=(...L)=>i(h)&&i(h)(...L)),onClick:I[2]||(I[2]=Xe(L=>i(N)(i(s)-1),["stop"]))},[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})],42,UF),[[Pt,(e.arrow==="always"||i(c))&&(e.loop||i(s)>0)]])]),_:1})):te("v-if",!0),i(l)?(x(),oe(Vn,{key:1,name:"carousel-arrow-right",persisted:""},{default:J(()=>[ut(z("button",{type:"button",class:T([i(A).e("arrow"),i(A).em("arrow","right")]),"aria-label":i(_)("el.carousel.rightArrow"),onMouseenter:I[3]||(I[3]=L=>i(p)("right")),onMouseleave:I[4]||(I[4]=(...L)=>i(h)&&i(h)(...L)),onClick:I[5]||(I[5]=Xe(L=>i(N)(i(s)+1),["stop"]))},[Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})],42,qF),[[Pt,(e.arrow==="always"||i(c))&&(e.loop||i(s)[e.indicatorPosition!=="none"?(x(),B("ul",{key:0,class:T(H.value)},[(x(!0),B(Fe,null,gt(i(f),(L,D)=>ut((x(),B("li",{key:D,class:T([i(A).e("indicator"),i(A).em("indicator",e.direction),i(A).is("active",D===i(s))]),onMouseenter:F=>i(R)(D),onClick:Xe(F=>i(m)(D),["stop"])},[z("button",{class:T(i(A).e("button")),"aria-label":i(_)("el.carousel.indicator",{index:D+1})},[i(u)?(x(),B("span",XF,Se(L.props.label),1)):te("v-if",!0)],10,GF)],42,YF)),[[Pt,i($)(D)]])),128))],2)):te("v-if",!0)]),_:1}),e.motionBlur?(x(),B("svg",JF,[...I[8]||(I[8]=[z("defs",null,[z("filter",{id:"elCarouselHorizontal"},[z("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"12,0"})]),z("filter",{id:"elCarouselVertical"},[z("feGaussianBlur",{in:"SourceGraphic",stdDeviation:"0,10"})])],-1)])])):te("v-if",!0)],34))}}),QF=ZF;const eV=e=>{const t=_e(Dk),n=ft();t||pt(Li,"usage: "),n||pt(Li,"compositional hook can only be invoked inside setups");const a=M(),o=M(!1),s=M(0),r=M(1),l=M(!1),u=M(!1),c=M(!1),d=M(!1),{isCardType:f,isVertical:v,cardScale:g}=t;function p(S,C,E){const $=E-1,O=C-1,N=C+1,R=E/2;return C===0&&S===$?-1:C===$&&S===0?E:S=R?E+1:S>N&&S-C>=R?-2:S}function h(S,C){const E=i(v)?t.root.value?.offsetHeight||0:t.root.value?.offsetWidth||0;return c.value?E*((2-g)*(S-C)+1)/4:S{const $=i(f),O=t.items.value.length??NaN,N=S===C;!$&&!Tt(E)&&(d.value=N||S===E),!N&&O>2&&t.loop&&(S=p(S,C,O));const R=i(v);l.value=N,$?(c.value=Math.round(Math.abs(S-C))<=1,s.value=h(S,C),r.value=i(l)?1:g):s.value=m(S,C,R),u.value=!0,N&&a.value&&t.setContainerHeight(a.value.offsetHeight)};function k(){if(t&&i(f)){const S=t.items.value.findIndex(({uid:C})=>C===n.uid);t.setActiveItem(S)}}const y={props:e,states:At({hover:o,translate:s,scale:r,active:l,ready:u,inStage:c,animating:d}),uid:n.uid,getVnode:()=>n.vnode,translateItem:b};return t.addItem(y),Bt(()=>{t.removeItem(y)}),{carouselItemRef:a,active:l,animating:d,hover:o,inStage:c,isVertical:v,translate:s,isCardType:f,scale:r,ready:u,handleItemClick:k}};var tV=se({name:Li,__name:"carousel-item",props:WF,setup(e){const t=e,n=fe("carousel"),{carouselItemRef:a,active:o,animating:s,hover:r,inStage:l,isVertical:u,translate:c,isCardType:d,scale:f,ready:v,handleItemClick:g}=eV(t),p=w(()=>[n.e("item"),n.is("active",o.value),n.is("in-stage",l.value),n.is("hover",r.value),n.is("animating",s.value),{[n.em("item","card")]:d.value,[n.em("item","card-vertical")]:d.value&&u.value}]),h=w(()=>({transform:[`${`translate${i(u)?"Y":"X"}`}(${i(c)}px)`,`scale(${i(f)})`].join(" ")}));return(m,b)=>ut((x(),B("div",{ref_key:"carouselItemRef",ref:a,class:T(p.value),style:Ke(h.value),onClick:b[0]||(b[0]=(...k)=>i(g)&&i(g)(...k))},[i(d)?ut((x(),B("div",{key:0,class:T(i(n).e("mask"))},null,2)),[[Pt,!i(o)]]):te("v-if",!0),ee(m.$slots,"default")],6)),[[Pt,i(v)]])}}),Bk=tV;const nV=rt(QF,{CarouselItem:Bk}),aV=an(Bk),Fk=Ce({modelValue:{type:G([Number,String,Array,Object])},options:{type:G(Array),default:()=>[]},props:{type:G(Object),default:()=>({})}}),oV={expandTrigger:"click",multiple:!1,checkStrictly:!1,emitPath:!0,lazy:!1,lazyLoad:Dt,value:"value",label:"label",children:"children",leaf:"leaf",disabled:"disabled",hoverThreshold:500,checkOnClickNode:!1,checkOnClickLeaf:!0,showPrefix:!0},sV=Ce({...Fk,border:{type:Boolean,default:!0},renderLabel:{type:Function}}),Qy=e=>!0,rV={[at]:Qy,[yt]:Qy,close:()=>!0,"expand-change":e=>e},lV=e=>w(()=>({...oV,...e.props})),Vk={modelValue:{type:[Number,String,Boolean],default:void 0},label:{type:[String,Boolean,Number,Object],default:void 0},value:{type:[String,Boolean,Number,Object],default:void 0},indeterminate:Boolean,disabled:{type:Boolean,default:void 0},checked:Boolean,name:{type:String,default:void 0},trueValue:{type:[String,Number],default:void 0},falseValue:{type:[String,Number],default:void 0},trueLabel:{type:[String,Number],default:void 0},falseLabel:{type:[String,Number],default:void 0},id:{type:String,default:void 0},border:Boolean,size:Tn,tabindex:[String,Number],validateEvent:{type:Boolean,default:!0},ariaLabel:String,...aa(["ariaControls"])},zk={[at]:e=>Le(e)||He(e)||Ht(e),change:e=>Le(e)||He(e)||Ht(e)},Ll=Symbol("checkboxGroupContextKey"),iV=Ce({modelValue:{type:G(Array),default:()=>[]},disabled:{type:Boolean,default:void 0},min:Number,max:Number,size:Tn,fill:String,textColor:String,tag:{type:String,default:"div"},validateEvent:{type:Boolean,default:!0},options:{type:G(Array)},props:{type:G(Object),default:()=>Hk},type:{type:String,values:["checkbox","button"],default:"checkbox"},...aa(["ariaLabel"])}),uV={[at]:e=>ye(e),change:e=>ye(e)},Hk={label:"label",value:"value",disabled:"disabled"},cV=({model:e,isChecked:t})=>{const n=_e(Ll,void 0),a=_e(Mr,void 0),o=w(()=>{const s=n?.max?.value,r=n?.min?.value;return!Tt(s)&&e.value.length>=s&&!t.value||!Tt(r)&&e.value.length<=r&&t.value});return{isDisabled:un(w(()=>n===void 0?a?.disabled??o.value:n.disabled?.value||o.value)),isLimitDisabled:o}},dV=(e,{model:t,isLimitExceeded:n,hasOwnLabel:a,isDisabled:o,isLabeledByFormItem:s})=>{const r=_e(Ll,void 0),{formItem:l}=Dn(),{emit:u}=ft();function c(p){return[!0,e.trueValue,e.trueLabel].includes(p)?e.trueValue??e.trueLabel??!0:e.falseValue??e.falseLabel??!1}function d(p,h){u(yt,c(p),h)}function f(p){if(n.value)return;const h=p.target;u(yt,c(h.checked),p)}async function v(p){n.value||!a.value&&!o.value&&s.value&&(p.composedPath().some(h=>h.tagName==="LABEL")||(t.value=c([!1,e.falseValue,e.falseLabel].includes(t.value)),await Re(),d(t.value,p)))}const g=w(()=>r?.validateEvent||e.validateEvent);return le(()=>e.modelValue,()=>{g.value&&l?.validate("change").catch(p=>pt(p))}),{handleChange:f,onClickRoot:v}},fV=e=>{const t=M(!1),{emit:n}=ft(),a=_e(Ll,void 0),o=w(()=>Tt(a)===!1),s=M(!1),r=w({get(){return o.value?a?.modelValue?.value:e.modelValue??t.value},set(l){o.value&&ye(l)?(s.value=a?.max?.value!==void 0&&l.length>a?.max.value&&l.length>r.value.length,s.value===!1&&a?.changeEvent?.(l)):(n(at,l),t.value=l)}});return{model:r,isGroup:o,isLimitExceeded:s}},pV=(e,t,{model:n})=>{const a=_e(Ll,void 0),o=M(!1),s=w(()=>va(e.value)?e.label:e.value),r=w(()=>{const l=n.value;return Ht(l)?l:ye(l)?ot(s.value)?l.map(qt).some(u=>sn(u,s.value)):l.map(qt).includes(s.value):l!=null?l===e.trueValue||l===e.trueLabel:!!l});return{checkboxButtonSize:Cn(w(()=>a?.size?.value),{prop:!0}),isChecked:r,isFocused:o,checkboxSize:Cn(w(()=>a?.size?.value)),hasOwnLabel:w(()=>!!t.default||!va(s.value)),actualValue:s}},Kk=(e,t)=>{const{formItem:n}=Dn(),{model:a,isGroup:o,isLimitExceeded:s}=fV(e),{isFocused:r,isChecked:l,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,actualValue:f}=pV(e,t,{model:a}),{isDisabled:v}=cV({model:a,isChecked:l}),{inputId:g,isLabeledByFormItem:p}=Ia(e,{formItemContext:n,disableIdGeneration:d,disableIdManagement:o}),{handleChange:h,onClickRoot:m}=dV(e,{model:a,isLimitExceeded:s,hasOwnLabel:d,isDisabled:v,isLabeledByFormItem:p});return(()=>{function k(){ye(a.value)&&!a.value.includes(f.value)?a.value.push(f.value):a.value=e.trueValue??e.trueLabel??!0}e.checked&&k()})(),To({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},w(()=>o.value&&va(e.value))),To({from:"true-label",replacement:"true-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},w(()=>!!e.trueLabel)),To({from:"false-label",replacement:"false-value",version:"3.0.0",scope:"el-checkbox",ref:"https://element-plus.org/en-US/component/checkbox.html"},w(()=>!!e.falseLabel)),{inputId:g,isLabeledByFormItem:p,isChecked:l,isDisabled:v,isFocused:r,checkboxButtonSize:u,checkboxSize:c,hasOwnLabel:d,model:a,actualValue:f,handleChange:h,onClickRoot:m}},hV=["id","indeterminate","name","tabindex","disabled"];var vV=se({name:"ElCheckbox",__name:"checkbox",props:Vk,emits:zk,setup(e){const t=e,{inputId:n,isLabeledByFormItem:a,isChecked:o,isDisabled:s,isFocused:r,checkboxSize:l,hasOwnLabel:u,model:c,actualValue:d,handleChange:f,onClickRoot:v}=Kk(t,vn()),g=w(()=>t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?{"true-value":t.trueValue??t.trueLabel??!0,"false-value":t.falseValue??t.falseLabel??!1}:{value:d.value}),p=fe("checkbox"),h=w(()=>[p.b(),p.m(l.value),p.is("disabled",s.value),p.is("bordered",t.border),p.is("checked",o.value)]),m=w(()=>[p.e("input"),p.is("disabled",s.value),p.is("checked",o.value),p.is("indeterminate",t.indeterminate),p.is("focus",r.value)]);return(b,k)=>(x(),oe(it(!i(u)&&i(a)?"span":"label"),{for:!i(u)&&i(a)?null:i(n),class:T(h.value),"aria-controls":e.indeterminate?e.ariaControls:null,"aria-checked":e.indeterminate?"mixed":void 0,"aria-label":e.ariaLabel,onClick:i(v)},{default:J(()=>[z("span",{class:T(m.value)},[ut(z("input",dt({id:i(n),"onUpdate:modelValue":k[0]||(k[0]=y=>Jt(c)?c.value=y:null),class:i(p).e("original"),type:"checkbox",indeterminate:e.indeterminate,name:e.name,tabindex:e.tabindex,disabled:i(s)},g.value,{onChange:k[1]||(k[1]=(...y)=>i(f)&&i(f)(...y)),onFocus:k[2]||(k[2]=y=>r.value=!0),onBlur:k[3]||(k[3]=y=>r.value=!1),onClick:k[4]||(k[4]=Xe(()=>{},["stop"]))}),null,16,hV),[[q1,i(c)]]),z("span",{class:T(i(p).e("inner"))},null,2)],2),i(u)?(x(),B("span",{key:0,class:T(i(p).e("label"))},[ee(b.$slots,"default"),b.$slots.default?te("v-if",!0):(x(),B(Fe,{key:0},[wt(Se(e.label),1)],64))],2)):te("v-if",!0)]),_:3},8,["for","class","aria-controls","aria-checked","aria-label","onClick"]))}}),Wk=vV;const mV=["name","tabindex","disabled"];var gV=se({name:"ElCheckboxButton",__name:"checkbox-button",props:Vk,emits:zk,setup(e){const t=e,{isFocused:n,isChecked:a,isDisabled:o,checkboxButtonSize:s,model:r,actualValue:l,handleChange:u}=Kk(t,vn()),c=w(()=>t.trueValue||t.falseValue||t.trueLabel||t.falseLabel?{"true-value":t.trueValue??t.trueLabel??!0,"false-value":t.falseValue??t.falseLabel??!1}:{value:l.value}),d=_e(Ll,void 0),f=fe("checkbox"),v=w(()=>{const p=d?.fill?.value??"";return{backgroundColor:p,borderColor:p,color:d?.textColor?.value??"",boxShadow:p?`-1px 0 0 0 ${p}`:void 0}}),g=w(()=>[f.b("button"),f.bm("button",s.value),f.is("disabled",o.value),f.is("checked",a.value),f.is("focus",n.value)]);return(p,h)=>(x(),B("label",{class:T(g.value)},[ut(z("input",dt({"onUpdate:modelValue":h[0]||(h[0]=m=>Jt(r)?r.value=m:null),class:i(f).be("button","original"),type:"checkbox",name:e.name,tabindex:e.tabindex,disabled:i(o)},c.value,{onChange:h[1]||(h[1]=(...m)=>i(u)&&i(u)(...m)),onFocus:h[2]||(h[2]=m=>n.value=!0),onBlur:h[3]||(h[3]=m=>n.value=!1),onClick:h[4]||(h[4]=Xe(()=>{},["stop"]))}),null,16,mV),[[q1,i(r)]]),p.$slots.default||e.label?(x(),B("span",{key:0,class:T(i(f).be("button","inner")),style:Ke(i(a)?v.value:void 0)},[ee(p.$slots,"default",{},()=>[wt(Se(e.label),1)])],6)):te("v-if",!0)],2))}}),mm=gV,bV=se({name:"ElCheckboxGroup",__name:"checkbox-group",props:iV,emits:uV,setup(e,{emit:t}){const n=e,a=t,o=fe("checkbox"),s=un(),{formItem:r}=Dn(),{inputId:l,isLabeledByFormItem:u}=Ia(n,{formItemContext:r}),c=async p=>{a(at,p),await Re(),a(yt,p)},d=w({get(){return n.modelValue},set(p){c(p)}}),f=w(()=>({...Hk,...n.props})),v=p=>{const{label:h,value:m,disabled:b}=f.value,k={label:p[h],value:p[m],disabled:p[b]};return{...tu(p,[h,m,b]),...k}},g=w(()=>n.type==="button"?mm:Wk);return St(Ll,{...ss(Mn(n),["size","min","max","validateEvent","fill","textColor"]),disabled:s,modelValue:d,changeEvent:c}),le(()=>n.modelValue,(p,h)=>{n.validateEvent&&!sn(p,h)&&r?.validate("change").catch(m=>pt(m))}),(p,h)=>(x(),oe(it(e.tag),{id:i(l),class:T(i(o).b("group")),role:"group","aria-label":i(u)?void 0:e.ariaLabel||"checkbox-group","aria-labelledby":i(u)?i(r)?.labelId:void 0},{default:J(()=>[ee(p.$slots,"default",{},()=>[(x(!0),B(Fe,null,gt(e.options,(m,b)=>(x(),oe(it(g.value),dt({key:b},{ref_for:!0},v(m)),null,16))),128))])]),_:3},8,["id","class","aria-label","aria-labelledby"]))}}),jk=bV;const so=rt(Wk,{CheckboxButton:mm,CheckboxGroup:jk}),yV=an(mm),gm=an(jk),Uk=Ce({modelValue:{type:[String,Number,Boolean],default:void 0},size:Tn,disabled:{type:Boolean,default:void 0},label:{type:[String,Number,Boolean],default:void 0},value:{type:[String,Number,Boolean],default:void 0},name:{type:String,default:void 0}}),wV=Ce({...Uk,border:Boolean}),qk={[at]:e=>Le(e)||He(e)||Ht(e),[yt]:e=>Le(e)||He(e)||Ht(e)},Yk=Symbol("radioGroupKey"),SV=Ce({...Uk}),Gk={label:"label",value:"value",disabled:"disabled"},CV=Ce({id:{type:String,default:void 0},size:Tn,disabled:{type:Boolean,default:void 0},modelValue:{type:[String,Number,Boolean],default:void 0},fill:{type:String,default:""},textColor:{type:String,default:""},name:{type:String,default:void 0},validateEvent:{type:Boolean,default:!0},options:{type:G(Array)},props:{type:G(Object),default:()=>Gk},type:{type:String,values:["radio","button"],default:"radio"},...aa(["ariaLabel"])}),kV=qk,Xk=(e,t)=>{const n=M(),a=_e(Yk,void 0),o=w(()=>!!a),s=w(()=>va(e.value)?e.label:e.value),r=w({get(){return o.value?a.modelValue:e.modelValue},set(f){o.value?a.changeEvent(f):t&&t(at,f),n.value.checked=e.modelValue===s.value}}),l=Cn(w(()=>a?.size)),u=un(w(()=>a?.disabled)),c=M(!1),d=w(()=>u.value||o.value&&r.value!==s.value?-1:0);return To({from:"label act as value",replacement:"value",version:"3.0.0",scope:"el-radio",ref:"https://element-plus.org/en-US/component/radio.html"},w(()=>o.value&&va(e.value))),{radioRef:n,isGroup:o,radioGroup:a,focus:c,size:l,disabled:u,tabIndex:d,modelValue:r,actualValue:s}},EV=["value","name","disabled","checked"];var xV=se({name:"ElRadio",__name:"radio",props:wV,emits:qk,setup(e,{emit:t}){const n=e,a=t,o=fe("radio"),{radioRef:s,radioGroup:r,focus:l,size:u,disabled:c,modelValue:d,actualValue:f}=Xk(n,a);function v(){Re(()=>a(yt,d.value))}return(g,p)=>(x(),B("label",{class:T([i(o).b(),i(o).is("disabled",i(c)),i(o).is("focus",i(l)),i(o).is("bordered",e.border),i(o).is("checked",i(d)===i(f)),i(o).m(i(u))])},[z("span",{class:T([i(o).e("input"),i(o).is("disabled",i(c)),i(o).is("checked",i(d)===i(f))])},[ut(z("input",{ref_key:"radioRef",ref:s,"onUpdate:modelValue":p[0]||(p[0]=h=>Jt(d)?d.value=h:null),class:T(i(o).e("original")),value:i(f),name:e.name||i(r)?.name,disabled:i(c),checked:i(d)===i(f),type:"radio",onFocus:p[1]||(p[1]=h=>l.value=!0),onBlur:p[2]||(p[2]=h=>l.value=!1),onChange:v,onClick:p[3]||(p[3]=Xe(()=>{},["stop"]))},null,42,EV),[[vv,i(d)]]),z("span",{class:T(i(o).e("inner"))},null,2)],2),z("span",{class:T(i(o).e("label")),onKeydown:p[4]||(p[4]=Xe(()=>{},["stop"]))},[ee(g.$slots,"default",{},()=>[wt(Se(e.label),1)])],34)],2))}}),Jk=xV;const TV=["value","name","disabled"];var $V=se({name:"ElRadioButton",__name:"radio-button",props:SV,setup(e){const t=e,n=fe("radio"),{radioRef:a,focus:o,size:s,disabled:r,modelValue:l,radioGroup:u,actualValue:c}=Xk(t),d=w(()=>({backgroundColor:u?.fill||"",borderColor:u?.fill||"",boxShadow:u?.fill?`-1px 0 0 0 ${u.fill}`:"",color:u?.textColor||""}));return(f,v)=>(x(),B("label",{class:T([i(n).b("button"),i(n).is("active",i(l)===i(c)),i(n).is("disabled",i(r)),i(n).is("focus",i(o)),i(n).bm("button",i(s))])},[ut(z("input",{ref_key:"radioRef",ref:a,"onUpdate:modelValue":v[0]||(v[0]=g=>Jt(l)?l.value=g:null),class:T(i(n).be("button","original-radio")),value:i(c),type:"radio",name:e.name||i(u)?.name,disabled:i(r),onFocus:v[1]||(v[1]=g=>o.value=!0),onBlur:v[2]||(v[2]=g=>o.value=!1),onClick:v[3]||(v[3]=Xe(()=>{},["stop"]))},null,42,TV),[[vv,i(l)]]),z("span",{class:T(i(n).be("button","inner")),style:Ke(i(l)===i(c)?d.value:{}),onKeydown:v[4]||(v[4]=Xe(()=>{},["stop"]))},[ee(f.$slots,"default",{},()=>[wt(Se(e.label),1)])],38)],2))}}),bm=$V;const OV=["id","aria-label","aria-labelledby"];var RV=se({name:"ElRadioGroup",__name:"radio-group",props:CV,emits:kV,setup(e,{emit:t}){const n=e,a=t,o=fe("radio"),s=zn(),r=M(),{formItem:l}=Dn(),{inputId:u,isLabeledByFormItem:c}=Ia(n,{formItemContext:l}),d=h=>{a(at,h),Re(()=>a(yt,h))};ht(()=>{const h=r.value.querySelectorAll("[type=radio]"),m=h[0];!Array.from(h).some(b=>b.checked)&&m&&(m.tabIndex=0)});const f=w(()=>n.name||s.value),v=w(()=>({...Gk,...n.props})),g=h=>{const{label:m,value:b,disabled:k}=v.value,y={label:h[m],value:h[b],disabled:h[k]};return{...tu(h,[m,b,k]),...y}},p=w(()=>n.type==="button"?bm:Jk);return St(Yk,At({...Mn(n),changeEvent:d,name:f})),le(()=>n.modelValue,(h,m)=>{n.validateEvent&&!sn(h,m)&&l?.validate("change").catch(b=>pt(b))}),(h,m)=>(x(),B("div",{id:i(u),ref_key:"radioGroupRef",ref:r,class:T(i(o).b("group")),role:"radiogroup","aria-label":i(c)?void 0:e.ariaLabel||"radio-group","aria-labelledby":i(c)?i(l).labelId:void 0},[ee(h.$slots,"default",{},()=>[(x(!0),B(Fe,null,gt(e.options,(b,k)=>(x(),oe(it(p.value),dt({key:k},{ref_for:!0},g(b)),null,16))),128))])],10,OV))}}),Zk=RV;const Qk=rt(Jk,{RadioButton:bm,RadioGroup:Zk}),NV=an(Zk),IV=an(bm),sf=Symbol();function PV(e){return!!(ye(e)?e.every(({type:t})=>t===gn):e?.type===gn)}var MV=se({name:"NodeContent",props:{node:{type:Object,required:!0}},setup(e){const t=fe("cascader-node"),{renderLabelFn:n}=_e(sf),{node:a}=e,{data:o,label:s}=a,r=()=>{const l=n?.({node:a,data:o});return PV(l)?s:l??s};return()=>Y("span",{class:t.e("label")},[r()])}});const _V=["id","aria-haspopup","aria-owns","aria-expanded","tabindex"];var AV=se({name:"ElCascaderNode",__name:"node",props:{node:{type:Object,required:!0},menuId:String},emits:["expand"],setup(e,{emit:t}){const n=e,a=t,o=_e(sf),s=fe("cascader-node"),r=w(()=>o.isHoverMenu),l=w(()=>o.config.multiple),u=w(()=>o.config.checkStrictly),c=w(()=>o.config.showPrefix),d=w(()=>o.checkedNodes[0]?.uid),f=w(()=>n.node.isDisabled),v=w(()=>n.node.isLeaf),g=w(()=>u.value&&!v.value||!f.value),p=w(()=>m(o.expandingNode)),h=w(()=>u.value&&o.checkedNodes.some(m)),m=N=>{const{level:R,uid:A}=n.node;return N?.pathNodes[R-1]?.uid===A},b=()=>{p.value||o.expandNode(n.node)},k=N=>{const{node:R}=n;N!==R.checked&&o.handleCheckChange(R,N)},y=()=>{o.lazyLoad(n.node,()=>{v.value||b()})},S=N=>{r.value&&(C(),!v.value&&a("expand",N))},C=()=>{const{node:N}=n;!g.value||N.loading||(N.loaded?b():y())},E=()=>{v.value&&!f.value&&!u.value&&!l.value?O(!0):(o.config.checkOnClickNode&&(l.value||u.value)||v.value&&o.config.checkOnClickLeaf)&&!f.value?$(!n.node.checked):r.value||C()},$=N=>{u.value?(k(N),n.node.loaded&&b()):O(N)},O=N=>{n.node.loaded?(k(N),!u.value&&b()):y()};return(N,R)=>(x(),B("li",{id:`${e.menuId}-${e.node.uid}`,role:"menuitem","aria-haspopup":!v.value,"aria-owns":v.value?void 0:e.menuId,"aria-expanded":p.value,tabindex:g.value?-1:void 0,class:T([i(s).b(),i(s).is("selectable",u.value),i(s).is("active",e.node.checked),i(s).is("disabled",!g.value),p.value&&"in-active-path",h.value&&"in-checked-path"]),onMouseenter:S,onFocus:S,onClick:E},[te(" prefix "),l.value&&c.value?(x(),oe(i(so),{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:f.value,onClick:R[0]||(R[0]=Xe(()=>{},["stop"])),"onUpdate:modelValue":$},null,8,["model-value","indeterminate","disabled"])):u.value&&c.value?(x(),oe(i(Qk),{key:1,"model-value":d.value,label:e.node.uid,disabled:f.value,"onUpdate:modelValue":$,onClick:R[1]||(R[1]=Xe(()=>{},["stop"]))},{default:J(()=>[te(` - Add an empty element to avoid render label, - do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 - `),R[2]||(R[2]=z("span",null,null,-1))]),_:1},8,["model-value","label","disabled"])):v.value&&e.node.checked?(x(),oe(i(De),{key:2,class:T(i(s).e("prefix"))},{default:J(()=>[Y(i(vu))]),_:1},8,["class"])):te("v-if",!0),te(" content "),Y(i(MV),{node:e.node},null,8,["node"]),te(" postfix "),v.value?te("v-if",!0):(x(),B(Fe,{key:3},[e.node.loading?(x(),oe(i(De),{key:0,class:T([i(s).is("loading"),i(s).e("postfix")])},{default:J(()=>[Y(i(Ao))]),_:1},8,["class"])):(x(),oe(i(De),{key:1,class:T(["arrow-right",i(s).e("postfix")])},{default:J(()=>[Y(i(na))]),_:1},8,["class"]))],64))],42,_V))}}),LV=AV,DV=se({name:"ElCascaderMenu",__name:"menu",props:{nodes:{type:Array,required:!0},index:{type:Number,required:!0}},setup(e){const t=e,n=ft(),a=fe("cascader-menu"),{t:o}=Ct(),s=zn();let r,l;const u=_e(sf),c=M(),d=w(()=>!t.nodes.length),f=w(()=>!u.initialLoaded),v=w(()=>`${s.value}-${t.index}`),g=b=>{r=b.target},p=b=>{if(!(!u.isHoverMenu||!r||!c.value))if(r.contains(b.target)){h();const k=n.vnode.el,{left:y}=k.getBoundingClientRect(),{offsetWidth:S,offsetHeight:C}=k,E=b.clientX-y,$=r.offsetTop,O=$+r.offsetHeight,N=k.querySelector(`.${a.e("wrap")}`)?.scrollTop||0;c.value.innerHTML=` - - - `}else l||(l=window.setTimeout(m,u.config.hoverThreshold))},h=()=>{l&&(clearTimeout(l),l=void 0)},m=()=>{c.value&&(c.value.innerHTML="",h())};return(b,k)=>(x(),oe(i(ao),{key:v.value,tag:"ul",role:"menu",class:T(i(a).b()),"wrap-class":i(a).e("wrap"),"view-class":[i(a).e("list"),i(a).is("empty",d.value)],onMousemove:p,onMouseleave:m},{default:J(()=>[(x(!0),B(Fe,null,gt(e.nodes,y=>(x(),oe(LV,{key:y.uid,node:y,"menu-id":v.value,onExpand:g},null,8,["node","menu-id"]))),128)),f.value?(x(),B("div",{key:0,class:T(i(a).e("empty-text"))},[Y(i(De),{size:"14",class:T(i(a).is("loading"))},{default:J(()=>[Y(i(Ao))]),_:1},8,["class"]),wt(" "+Se(i(o)("el.cascader.loading")),1)],2)):d.value?(x(),B("div",{key:1,class:T(i(a).e("empty-text"))},[ee(b.$slots,"empty",{},()=>[wt(Se(i(o)("el.cascader.noData")),1)])],2)):i(u)?.isHoverMenu?(x(),B(Fe,{key:2},[te(" eslint-disable vue/html-self-closing "),(x(),B("svg",{ref_key:"hoverZone",ref:c,class:T(i(a).e("hover-zone"))},null,2))],2112)):te("v-if",!0),te(" eslint-enable vue/html-self-closing ")]),_:3},8,["class","wrap-class","view-class"]))}}),BV=DV;let FV=0;const VV=e=>{const t=[e];let{parent:n}=e;for(;n;)t.unshift(n),n=n.parent;return t};var dh=class fh{constructor(t,n,a,o=!1){this.data=t,this.config=n,this.parent=a,this.root=o,this.uid=FV++,this.checked=!1,this.indeterminate=!1,this.loading=!1;const{value:s,label:r,children:l}=n,u=t[l],c=VV(this);this.level=o?0:a?a.level+1:1,this.value=t[s],this.label=t[r],this.pathNodes=c,this.pathValues=c.map(d=>d.value),this.pathLabels=c.map(d=>d.label),this.childrenData=u,this.children=(u||[]).map(d=>new fh(d,n,this)),this.loaded=!n.lazy||this.isLeaf||!ia(u),this.text=""}get isDisabled(){const{data:t,parent:n,config:a}=this,{disabled:o,checkStrictly:s}=a;return(Ve(o)?o(t,this):!!t[o])||!s&&!!n?.isDisabled}get isLeaf(){const{data:t,config:n,childrenData:a,loaded:o}=this,{lazy:s,leaf:r}=n,l=Ve(r)?r(t,this):t[r];return Tt(l)?s&&!o?!1:!(ye(a)&&a.length):!!l}get valueByOption(){return this.config.emitPath?this.pathValues:this.value}appendChild(t){const{childrenData:n,children:a}=this,o=new fh(t,this.config,this);return ye(n)?n.push(t):this.childrenData=[t],a.push(o),o}calcText(t,n){const a=t?this.pathLabels.join(n):this.label;return this.text=a,a}broadcast(t){this.children.forEach(n=>{n&&(n.broadcast(t),n.onParentCheck?.(t))})}emit(){const{parent:t}=this;t&&(t.onChildCheck?.(),t.emit())}onParentCheck(t){this.isDisabled||this.setCheckState(t)}onChildCheck(){const{children:t}=this,n=t.filter(o=>!o.isDisabled),a=n.length?n.every(o=>o.checked):!1;this.setCheckState(a)}setCheckState(t){const n=this.children.length,a=this.children.reduce((o,s)=>o+(s.checked?1:s.indeterminate?.5:0),0);this.checked=this.loaded&&this.children.filter(o=>!o.isDisabled).every(o=>o.loaded&&o.checked)&&t,this.indeterminate=this.loaded&&a!==n&&a>0}doCheck(t){if(this.checked===t)return;const{checkStrictly:n,multiple:a}=this.config;n||!a?this.checked=t:(this.broadcast(t),this.setCheckState(t),this.emit())}};const ph=(e,t)=>e.reduce((n,a)=>(a.isLeaf?n.push(a):(!t&&n.push(a),n=n.concat(ph(a.children,t))),n),[]);var e0=class{constructor(e,t){this.config=t;const n=(e||[]).map(a=>new dh(a,this.config));this.nodes=n,this.allNodes=ph(n,!1),this.leafNodes=ph(n,!0)}getNodes(){return this.nodes}getFlattedNodes(e){return e?this.leafNodes:this.allNodes}appendNode(e,t){const n=t?t.appendChild(e):new dh(e,this.config);t||this.nodes.push(n),this.appendAllNodesAndLeafNodes(n)}appendNodes(e,t){e.length>0?e.forEach(n=>this.appendNode(n,t)):t&&t.isLeaf&&this.leafNodes.push(t)}appendAllNodesAndLeafNodes(e){this.allNodes.push(e),e.isLeaf&&this.leafNodes.push(e),e.children&&e.children.forEach(t=>{this.appendAllNodesAndLeafNodes(t)})}getNodeByValue(e,t=!1){return va(e)?null:this.getFlattedNodes(t).find(n=>sn(n.value,e)||sn(n.pathValues,e))||null}getSameNode(e){return e&&this.getFlattedNodes(!1).find(({value:t,level:n})=>sn(e.value,t)&&e.level===n)||null}};const t0=e=>{if(!e)return 0;const t=e.id.split("-");return Number(t[t.length-2])},zV=e=>{if(!e)return;const t=e.querySelector("input");t?t.click():qS(e)&&e.click()},HV=(e,t)=>{const n=t.slice(0),a=n.map(s=>s.uid),o=e.reduce((s,r)=>{const l=a.indexOf(r.uid);return l>-1&&(s.push(r),n.splice(l,1),a.splice(l,1)),s},[]);return o.push(...n),o};var KV=se({name:"ElCascaderPanel",__name:"index",props:sV,emits:rV,setup(e,{expose:t,emit:n}){const a=e,o=n;let s=!1;const r=fe("cascader"),l=lV(a),u=vn();let c;const d=M(!0),f=M(!1),v=M([]),g=M(),p=M([]),h=M(),m=M([]),b=w(()=>l.value.expandTrigger==="hover"),k=w(()=>a.renderLabel||u.default),y=()=>{const{options:P}=a,I=l.value;s=!1,c=new e0(P,I),p.value=[c.getNodes()],I.lazy&&ia(a.options)?(d.value=!1,S(void 0,L=>{L&&(c=new e0(L,I),p.value=[c.getNodes()]),d.value=!0,_(!1,!0)})):_(!1,!0)},S=(P,I)=>{const L=l.value;P=P||new dh({},L,void 0,!0),P.loading=!0;const D=q=>{const j=P,X=j.root?null:j;j.loading=!1,j.loaded=!0,j.childrenData=j.childrenData||[],q&&c?.appendNodes(q,X),q&&I?.(q),P.level===0&&(f.value=!0)},F=()=>{P.loading=!1,P.loaded=!1,P.level===0&&(d.value=!0)};L.lazyLoad(P,D,F)},C=(P,I)=>{const{level:L}=P,D=p.value.slice(0,L);let F;P.isLeaf?F=P.pathNodes[L-2]:(F=P,D.push(P.children)),h.value?.uid!==F?.uid&&(h.value=P,p.value=D,!I&&o("expand-change",P?.pathValues||[]))},E=(P,I,L=!0)=>{const{checkStrictly:D,multiple:F}=l.value,q=m.value[0];s=!0,!F&&q?.doCheck(!1),P.doCheck(I),A(),L&&!F&&!D&&o("close"),!L&&!F&&$(P)},$=P=>{P&&(P=P.parent,$(P),P&&C(P))},O=P=>c?.getFlattedNodes(P),N=P=>O(P)?.filter(({checked:I})=>I!==!1),R=()=>{m.value.forEach(P=>P.doCheck(!1)),A(),p.value=p.value.slice(0,1),h.value=void 0,o("expand-change",[])},A=()=>{const{checkStrictly:P,multiple:I}=l.value,L=m.value,D=HV(L,N(!P)),F=D.map(q=>q.valueByOption);m.value=D,g.value=I?F:F[0]??null},_=(P=!1,I=!1)=>{const{modelValue:L}=a,{lazy:D,multiple:F,checkStrictly:q}=l.value,j=!q;if(!(!d.value||s||!I&&sn(L,g.value)))if(D&&!P){const X=uy(bM(Zn(L))).map(Q=>c?.getNodeByValue(Q)).filter(Q=>!!Q&&!Q.loaded&&!Q.loading);X.length?X.forEach(Q=>{S(Q,()=>_(!1,I))}):_(!0,I)}else V(uy((F?Zn(L):[L]).map(X=>c?.getNodeByValue(X,j))),I),g.value=es(L??void 0)},V=(P,I=!0)=>{const{checkStrictly:L}=l.value,D=m.value,F=P.filter(X=>!!X&&(L||X.isLeaf)),q=c?.getSameNode(h.value),j=I&&q||F[0];j?j.pathNodes.forEach(X=>C(X,!0)):h.value=void 0,D.forEach(X=>X.doCheck(!1)),At(F).forEach(X=>X.doCheck(!0)),m.value=F,Re(H)},H=()=>{Mt&&v.value.forEach(P=>{const I=P?.$el;if(I){const L=I.querySelector(`.${r.namespace.value}-scrollbar__wrap`);let D=I.querySelector(`.${r.b("node")}.in-active-path`);if(!D){const F=I.querySelectorAll(`.${r.b("node")}.${r.is("active")}`);D=F[F.length-1]}Fv(L,D)}})},U=P=>{const I=P.target,L=jt(P);switch(L){case we.up:case we.down:P.preventDefault(),cc(YS(I,L===we.up?-1:1,`.${r.b("node")}[tabindex="-1"]`));break;case we.left:{P.preventDefault();const D=v.value[t0(I)-1]?.$el.querySelector(`.${r.b("node")}[aria-expanded="true"]`);cc(D);break}case we.right:{P.preventDefault();const D=v.value[t0(I)+1]?.$el.querySelector(`.${r.b("node")}[tabindex="-1"]`);cc(D);break}case we.enter:case we.numpadEnter:zV(I);break}};St(sf,At({config:l,expandingNode:h,checkedNodes:m,isHoverMenu:b,initialLoaded:d,renderLabelFn:k,lazyLoad:S,expandNode:C,handleCheckChange:E})),le(l,(P,I)=>{sn(P,I)||y()},{immediate:!0}),le(()=>a.options,y,{deep:!0}),le(()=>a.modelValue,()=>{s=!1,_()},{deep:!0}),le(()=>g.value,P=>{sn(P,a.modelValue)||(o(at,P),o(yt,P))});const W=()=>{f.value||y()};return rv(()=>v.value=[]),ht(()=>!ia(a.modelValue)&&_()),t({menuList:v,menus:p,checkedNodes:m,handleKeyDown:U,handleCheckChange:E,getFlattedNodes:O,getCheckedNodes:N,clearCheckedNodes:R,calculateCheckedValue:A,scrollToExpandingNode:H,loadLazyRootNodes:W}),(P,I)=>(x(),B("div",{class:T([i(r).b("panel"),i(r).is("bordered",e.border)]),onKeydown:U},[(x(!0),B(Fe,null,gt(p.value,(L,D)=>(x(),oe(BV,{key:D,ref_for:!0,ref:F=>v.value[D]=F,index:D,nodes:[...L]},{empty:J(()=>[ee(P.$slots,"empty")]),_:3},8,["index","nodes"]))),128))],34))}}),WV=KV;const e2=rt(WV),jV=Ce({...Fk,size:Tn,placeholder:String,disabled:{type:Boolean,default:void 0},clearable:Boolean,clearIcon:{type:Kt,default:Vo},filterable:Boolean,filterMethod:{type:G(Function),default:(e,t)=>e.text.includes(t)},separator:{type:String,default:" / "},showAllLevels:{type:Boolean,default:!0},collapseTags:Boolean,maxCollapseTags:{type:Number,default:1},collapseTagsTooltip:Boolean,maxCollapseTagsTooltipHeight:{type:[String,Number]},debounce:{type:Number,default:300},beforeFilter:{type:G(Function),default:()=>!0},placement:{type:G(String),values:Do,default:"bottom-start"},fallbackPlacements:{type:G(Array),default:["bottom-start","bottom","top-start","top","right","left"]},popperClass:zt.popperClass,popperStyle:zt.popperStyle,teleported:zt.teleported,effect:{type:G(String),default:"light"},tagType:{...us.type,default:"info"},tagEffect:{...us.effect,default:"light"},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},showCheckedStrategy:{type:String,values:["parent","child"],default:"child"},checkOnClickNode:Boolean,showPrefix:{type:Boolean,default:!0},...Pr}),n0=e=>!0,UV={[at]:n0,[yt]:n0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,visibleChange:e=>Ht(e),expandChange:e=>!!e,removeTag:e=>!!e},qV=["placeholder"],YV=["onClick"];var GV=se({name:"ElCascader",__name:"cascader",props:jV,emits:UV,setup(e,{expose:t,emit:n}){const a={modifiers:[{name:"arrowPosition",enabled:!0,phase:"main",fn:({state:Be})=>{const{modifiersData:nt,placement:ct}=Be;["right","left","bottom","top"].includes(ct)||nt.arrow&&(nt.arrow.x=35)},requires:["arrow"]}]},o=e,s=n,r=fs(),l=vn();let u=0,c=0;const d=fe("cascader"),f=fe("input"),v={small:7,default:11,large:15},{t:g}=Ct(),{formItem:p}=Dn(),h=un(),{valueOnClear:m}=hu(o),{isComposing:b,handleComposition:k}=pu({afterComposition(Be){const nt=Be.target?.value;Ge(nt)}}),y=M(),S=M(),C=M(),E=M(),$=M(),O=M(),N=M(!1),R=M(!1),A=M(!1),_=M(""),V=M(""),H=M([]),U=M([]),W=w(()=>o.props.multiple?o.collapseTags?H.value.slice(0,o.maxCollapseTags):H.value:[]),P=w(()=>o.props.multiple?o.collapseTags?H.value.slice(o.maxCollapseTags):[]:[]),I=w(()=>r.style),L=w(()=>o.placeholder??g("el.cascader.placeholder")),D=w(()=>V.value||H.value.length>0||b.value?"":L.value),F=Cn(),q=w(()=>F.value==="small"?"small":"default"),j=w(()=>!!o.props.multiple),X=w(()=>!o.filterable||j.value),Q=w(()=>j.value?V.value:_.value),he=w(()=>$.value?.checkedNodes||[]),{wrapperRef:ue,isFocused:ge,handleBlur:ie}=ms(C,{disabled:h,beforeBlur(Be){return y.value?.isFocusInsideContent(Be)||S.value?.isFocusInsideContent(Be)},afterBlur(){o.validateEvent&&p?.validate?.("blur").catch(Be=>pt(Be))}}),ae=w(()=>!o.clearable||h.value||A.value||!R.value&&!ge.value?!1:!!he.value.length),ne=w(()=>{const{showAllLevels:Be,separator:nt}=o,ct=he.value;return ct.length?j.value?"":ct[0].calcText(Be,nt):""}),K=w(()=>p?.validateState||""),Z=w({get(){return es(o.modelValue)},set(Be){const nt=Be??m.value;s(at,nt),s(yt,nt),o.validateEvent&&p?.validate("change").catch(ct=>pt(ct))}}),re=w(()=>[d.b(),d.m(F.value),d.is("disabled",h.value),r.class]),ce=w(()=>[f.e("icon"),"icon-arrow-down",d.is("reverse",N.value)]),ve=w(()=>d.is("focus",ge.value)),ke=w(()=>y.value?.popperRef?.contentRef),Ne=Be=>{ge.value&&ie(new FocusEvent("blur",Be)),Ie(!1)},Ie=Be=>{h.value||(Be=Be??!N.value,Be!==N.value&&(N.value=Be,C.value?.input?.setAttribute("aria-expanded",`${Be}`),Be?($e(),$.value&&Re($.value.scrollToExpandingNode)):o.filterable&&mt(),s("visibleChange",Be)))},$e=()=>{Re(()=>{y.value?.updatePopper()})},pe=()=>{A.value=!1},Ee=Be=>{const{showAllLevels:nt,separator:ct}=o;return{node:Be,key:Be.uid,text:Be.calcText(nt,ct),hitState:!1,closable:!h.value&&!Be.isDisabled}},me=Be=>{const nt=Be.node;nt.doCheck(!1),$.value?.calculateCheckedValue(),s("removeTag",nt.valueByOption)},Me=()=>{switch(o.showCheckedStrategy){case"child":return he.value;case"parent":{const Be=je(!1),nt=Be.map(ct=>ct.value);return Be.filter(ct=>!ct.parent||!nt.includes(ct.parent.value))}default:return[]}},We=()=>{if(!j.value)return;const Be=Me(),nt=[];Be.forEach(ct=>nt.push(Ee(ct))),H.value=nt},Ze=()=>{const{filterMethod:Be,showAllLevels:nt,separator:ct}=o,kn=$.value?.getFlattedNodes(!o.props.checkStrictly)?.filter(Wt=>Wt.isDisabled?!1:(Wt.calcText(nt,ct),Be(Wt,Q.value)));j.value&&H.value.forEach(Wt=>{Wt.hitState=!1}),A.value=!0,U.value=kn,$e()},Pe=()=>{let Be;A.value&&O.value?Be=O.value.$el.querySelector(`.${d.e("suggestion-item")}`):Be=$.value?.$el.querySelector(`.${d.b("node")}[tabindex="-1"]`),Be&&(Be.focus(),!A.value&&Be.click())},Ae=()=>{const Be=C.value?.input,nt=E.value,ct=O.value?.$el;if(!(!Mt||!Be)){if(ct){const kn=ct.querySelector(`.${d.e("suggestion-list")}`);kn.style.minWidth=`${Be.offsetWidth}px`}if(nt){const{offsetHeight:kn}=nt,Wt=H.value.length>0?`${Math.max(kn,u)-2}px`:`${u}px`;if(Be.style.height=Wt,l.prefix){const yn=C.value?.$el.querySelector(`.${f.e("prefix")}`);let Qe=0;yn&&(Qe=yn.offsetWidth,Qe>0&&(Qe+=v[F.value||"default"])),nt.style.left=`${Qe}px`}else nt.style.left="0";$e()}}},je=Be=>$.value?.getCheckedNodes(Be),Rt=Be=>{$e(),s("expandChange",Be)},Ue=Be=>{if(!b.value)switch(jt(Be)){case we.enter:case we.numpadEnter:Ie();break;case we.down:Ie(!0),Re(Pe),Be.preventDefault();break;case we.esc:N.value===!0&&(Be.preventDefault(),Be.stopPropagation(),Ie(!1));break;case we.tab:Ie(!1);break}},lt=()=>{$.value?.clearCheckedNodes(),!N.value&&o.filterable&&mt(),Ie(!1),s("clear")},mt=()=>{const{value:Be}=ne;_.value=Be,V.value=Be},kt=Be=>{const{checked:nt}=Be;j.value?$.value?.handleCheckChange(Be,!nt,!1):(!nt&&$.value?.handleCheckChange(Be,!0,!1),Ie(!1))},be=Be=>{const nt=Be.target,ct=jt(Be);switch(ct){case we.up:case we.down:Be.preventDefault(),cc(YS(nt,ct===we.up?-1:1,`.${d.e("suggestion-item")}[tabindex="-1"]`));break;case we.enter:case we.numpadEnter:nt.click();break}},ze=()=>{const Be=H.value[H.value.length-1];c=V.value?0:c+1,!(!Be||!c||o.collapseTags&&H.value.length>1)&&(Be.hitState?me(Be):Be.hitState=!0)},de=ou(()=>{const{value:Be}=Q;if(!Be)return;const nt=o.beforeFilter(Be);mr(nt)?nt.then(Ze).catch(()=>{}):nt!==!1?Ze():pe()},w(()=>o.debounce)),Ge=(Be,nt)=>{!N.value&&Ie(!0),!nt?.isComposing&&(Be?de():pe())},$t=Be=>Number.parseFloat(a_(f.cssVarName("input-height"),Be).value)-2,tn=()=>{C.value?.focus()},_n=()=>{C.value?.blur()};return le(A,$e),le([he,h,()=>o.collapseTags,()=>o.maxCollapseTags],We),le(H,()=>{Re(()=>Ae())}),le(F,async()=>{await Re();const Be=C.value.input;u=$t(Be)||u,Ae()}),le(ne,mt,{immediate:!0}),le(()=>N.value,Be=>{Be&&o.props.lazy&&o.props.lazyLoad&&$.value?.loadLazyRootNodes()}),ht(()=>{const Be=C.value.input,nt=$t(Be);u=Be.offsetHeight||nt,en(Be,Ae)}),t({getCheckedNodes:je,cascaderPanelRef:$,togglePopperVisible:Ie,contentRef:ke,presentText:ne,focus:tn,blur:_n}),(Be,nt)=>(x(),oe(i(Ln),{ref_key:"tooltipRef",ref:y,visible:N.value,teleported:e.teleported,"popper-class":[i(d).e("dropdown"),e.popperClass],"popper-style":e.popperStyle,"popper-options":a,"fallback-placements":e.fallbackPlacements,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,placement:e.placement,transition:`${i(d).namespace.value}-zoom-in-top`,effect:e.effect,pure:"",persistent:e.persistent,onHide:pe},{default:J(()=>[ut((x(),B("div",{ref_key:"wrapperRef",ref:ue,class:T(re.value),style:Ke(I.value),onClick:nt[8]||(nt[8]=()=>Ie(X.value?void 0:!0)),onKeydown:Ue,onMouseenter:nt[9]||(nt[9]=ct=>R.value=!0),onMouseleave:nt[10]||(nt[10]=ct=>R.value=!1)},[Y(i(ea),{ref_key:"inputRef",ref:C,modelValue:_.value,"onUpdate:modelValue":nt[1]||(nt[1]=ct=>_.value=ct),placeholder:D.value,readonly:X.value,disabled:i(h),"validate-event":!1,size:i(F),class:T(ve.value),tabindex:j.value&&e.filterable&&!i(h)?-1:void 0,onCompositionstart:i(k),onCompositionupdate:i(k),onCompositionend:i(k),onInput:Ge},ua({suffix:J(()=>[ae.value?(x(),oe(i(De),{key:"clear",class:T([i(f).e("icon"),"icon-circle-close"]),onClick:Xe(lt,["stop"])},{default:J(()=>[(x(),oe(it(e.clearIcon)))]),_:1},8,["class"])):(x(),oe(i(De),{key:"arrow-down",class:T(ce.value),onClick:nt[0]||(nt[0]=Xe(ct=>Ie(),["stop"]))},{default:J(()=>[Y(i(Fo))]),_:1},8,["class"]))]),_:2},[Be.$slots.prefix?{name:"prefix",fn:J(()=>[ee(Be.$slots,"prefix")]),key:"0"}:void 0]),1032,["modelValue","placeholder","readonly","disabled","size","class","tabindex","onCompositionstart","onCompositionupdate","onCompositionend"]),j.value?(x(),B("div",{key:0,ref_key:"tagWrapper",ref:E,class:T([i(d).e("tags"),i(d).is("validate",!!K.value)])},[ee(Be.$slots,"tag",{data:H.value,deleteTag:me},()=>[(x(!0),B(Fe,null,gt(W.value,ct=>(x(),oe(i(ts),{key:ct.key,type:e.tagType,size:q.value,effect:e.tagEffect,hit:ct.hitState,closable:ct.closable,"disable-transitions":"",onClose:kn=>me(ct)},{default:J(()=>[z("span",null,Se(ct.text),1)]),_:2},1032,["type","size","effect","hit","closable","onClose"]))),128))]),e.collapseTags&&H.value.length>e.maxCollapseTags?(x(),oe(i(Ln),{key:0,ref_key:"tagTooltipRef",ref:S,disabled:N.value||!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],placement:"bottom","popper-class":e.popperClass,"popper-style":e.popperStyle,effect:e.effect,persistent:e.persistent},{default:J(()=>[Y(i(ts),{closable:!1,size:q.value,type:e.tagType,effect:e.tagEffect,"disable-transitions":""},{default:J(()=>[z("span",{class:T(i(d).e("tags-text"))}," + "+Se(H.value.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect"])]),content:J(()=>[Y(i(ao),{"max-height":e.maxCollapseTagsTooltipHeight},{default:J(()=>[z("div",{class:T(i(d).e("collapse-tags"))},[(x(!0),B(Fe,null,gt(P.value,(ct,kn)=>(x(),B("div",{key:kn,class:T(i(d).e("collapse-tag"))},[(x(),oe(i(ts),{key:ct.key,class:"in-tooltip",type:e.tagType,size:q.value,effect:e.tagEffect,hit:ct.hitState,closable:ct.closable,"disable-transitions":"",onClose:Wt=>me(ct)},{default:J(()=>[z("span",null,Se(ct.text),1)]),_:2},1032,["type","size","effect","hit","closable","onClose"]))],2))),128))],2)]),_:1},8,["max-height"])]),_:1},8,["disabled","popper-class","popper-style","effect","persistent"])):te("v-if",!0),e.filterable&&!i(h)?ut((x(),B("input",{key:1,"onUpdate:modelValue":nt[2]||(nt[2]=ct=>V.value=ct),type:"text",class:T(i(d).e("search-input")),placeholder:ne.value?"":L.value,onInput:nt[3]||(nt[3]=ct=>Ge(V.value,ct)),onClick:nt[4]||(nt[4]=Xe(ct=>Ie(!0),["stop"])),onKeydown:on(ze,["delete"]),onCompositionstart:nt[5]||(nt[5]=(...ct)=>i(k)&&i(k)(...ct)),onCompositionupdate:nt[6]||(nt[6]=(...ct)=>i(k)&&i(k)(...ct)),onCompositionend:nt[7]||(nt[7]=(...ct)=>i(k)&&i(k)(...ct))},null,42,qV)),[[hv,V.value]]):te("v-if",!0)],2)):te("v-if",!0)],38)),[[i(zs),Ne,ke.value]])]),content:J(()=>[Be.$slots.header?(x(),B("div",{key:0,class:T(i(d).e("header")),onClick:nt[11]||(nt[11]=Xe(()=>{},["stop"]))},[ee(Be.$slots,"header")],2)):te("v-if",!0),ut(Y(i(e2),{ref_key:"cascaderPanelRef",ref:$,modelValue:Z.value,"onUpdate:modelValue":nt[12]||(nt[12]=ct=>Z.value=ct),options:e.options,props:o.props,border:!1,"render-label":Be.$slots.default,onExpandChange:Rt,onClose:nt[13]||(nt[13]=ct=>Be.$nextTick(()=>Ie(!1)))},{empty:J(()=>[ee(Be.$slots,"empty")]),_:3},8,["modelValue","options","props","render-label"]),[[Pt,!A.value]]),e.filterable?ut((x(),oe(i(ao),{key:1,ref_key:"suggestionPanel",ref:O,tag:"ul",class:T(i(d).e("suggestion-panel")),"view-class":i(d).e("suggestion-list"),onKeydown:be},{default:J(()=>[U.value.length?(x(!0),B(Fe,{key:0},gt(U.value,ct=>(x(),B("li",{key:ct.uid,class:T([i(d).e("suggestion-item"),i(d).is("checked",ct.checked)]),tabindex:-1,onClick:kn=>kt(ct)},[ee(Be.$slots,"suggestion-item",{item:ct},()=>[z("span",null,Se(ct.text),1),ct.checked?(x(),oe(i(De),{key:0},{default:J(()=>[Y(i(vu))]),_:1})):te("v-if",!0)])],10,YV))),128)):ee(Be.$slots,"empty",{key:1},()=>[z("li",{class:T(i(d).e("empty-text"))},Se(i(g)("el.cascader.noMatch")),3)])]),_:3},8,["class","view-class"])),[[Pt,A.value]]):te("v-if",!0),Be.$slots.footer?(x(),B("div",{key:2,class:T(i(d).e("footer")),onClick:nt[14]||(nt[14]=Xe(()=>{},["stop"]))},[ee(Be.$slots,"footer")],2)):te("v-if",!0)]),_:3},8,["visible","teleported","popper-class","popper-style","fallback-placements","placement","transition","effect","persistent"]))}}),XV=GV;const JV=rt(XV),ZV=Ce({checked:Boolean,disabled:Boolean,type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"}}),QV={"update:checked":e=>Ht(e),[yt]:e=>Ht(e)};var e6=se({name:"ElCheckTag",__name:"check-tag",props:ZV,emits:QV,setup(e,{emit:t}){const n=e,a=t,o=fe("check-tag"),s=w(()=>[o.b(),o.is("checked",n.checked),o.is("disabled",n.disabled),o.m(n.type||"primary")]),r=()=>{if(n.disabled)return;const l=!n.checked;a(yt,l),a("update:checked",l)};return(l,u)=>(x(),B("span",{class:T(s.value),onClick:r},[ee(l.$slots,"default")],2))}}),t6=e6;const n6=rt(t6),a6=Ce({tag:{type:String,default:"div"},span:{type:Number,default:24},offset:{type:Number,default:0},pull:{type:Number,default:0},push:{type:Number,default:0},xs:{type:G([Number,Object]),default:()=>rn({})},sm:{type:G([Number,Object]),default:()=>rn({})},md:{type:G([Number,Object]),default:()=>rn({})},lg:{type:G([Number,Object]),default:()=>rn({})},xl:{type:G([Number,Object]),default:()=>rn({})}}),o6=["start","center","end","space-around","space-between","space-evenly"],s6=["top","middle","bottom"],r6=Ce({tag:{type:String,default:"div"},gutter:{type:Number,default:0},justify:{type:String,values:o6,default:"start"},align:{type:String,values:s6}}),t2=Symbol("rowContextKey");var l6=se({name:"ElRow",__name:"row",props:r6,setup(e){const t=e,n=fe("row");St(t2,{gutter:w(()=>t.gutter)});const a=w(()=>{const s={};return t.gutter&&(s.marginRight=s.marginLeft=`-${t.gutter/2}px`),s}),o=w(()=>[n.b(),n.is(`justify-${t.justify}`,t.justify!=="start"),n.is(`align-${t.align}`,!!t.align)]);return(s,r)=>(x(),oe(it(e.tag),{class:T(o.value),style:Ke(a.value)},{default:J(()=>[ee(s.$slots,"default")]),_:3},8,["class","style"]))}}),i6=l6;const u6=rt(i6);var c6=se({name:"ElCol",__name:"col",props:a6,setup(e){const t=e,{gutter:n}=_e(t2,{gutter:w(()=>0)}),a=fe("col"),o=w(()=>{const r={};return n.value&&(r.paddingLeft=r.paddingRight=`${n.value/2}px`),r}),s=w(()=>{const r=[];return["span","offset","pull","push"].forEach(l=>{const u=t[l];He(u)&&(l==="span"?r.push(a.b(`${t[l]}`)):u>0&&r.push(a.b(`${l}-${t[l]}`)))}),["xs","sm","md","lg","xl"].forEach(l=>{He(t[l])?r.push(a.b(`${l}-${t[l]}`)):ot(t[l])&&Object.entries(t[l]).forEach(([u,c])=>{r.push(u!=="span"?a.b(`${l}-${u}-${c}`):a.b(`${l}-${c}`))})}),n.value&&r.push(a.is("guttered")),[a.b(),r]});return(r,l)=>(x(),oe(it(e.tag),{class:T(s.value),style:Ke(o.value)},{default:J(()=>[ee(r.$slots,"default")]),_:3},8,["class","style"]))}}),d6=c6;const f6=rt(d6),a0=e=>He(e)||Le(e)||ye(e),p6=Ce({accordion:Boolean,modelValue:{type:G([Array,String,Number]),default:()=>rn([])},expandIconPosition:{type:G([String]),default:"right"},beforeCollapse:{type:G(Function)}}),h6={[at]:a0,[yt]:a0},n2=Symbol("collapseContextKey"),v6=Ce({title:{type:String,default:""},name:{type:G([String,Number]),default:void 0},icon:{type:Kt,default:na},disabled:Boolean});var m6=se({name:"ElCollapseTransition",__name:"collapse-transition",setup(e){const t=fe("collapse-transition"),n=o=>{o.style.maxHeight="",o.style.overflow=o.dataset.oldOverflow,o.style.paddingTop=o.dataset.oldPaddingTop,o.style.paddingBottom=o.dataset.oldPaddingBottom},a={beforeEnter(o){o.dataset||(o.dataset={}),o.dataset.oldPaddingTop=o.style.paddingTop,o.dataset.oldPaddingBottom=o.style.paddingBottom,o.style.height&&(o.dataset.elExistsHeight=o.style.height),o.style.maxHeight=0,o.style.paddingTop=0,o.style.paddingBottom=0},enter(o){requestAnimationFrame(()=>{o.dataset.oldOverflow=o.style.overflow,o.dataset.elExistsHeight?o.style.maxHeight=o.dataset.elExistsHeight:o.scrollHeight!==0?o.style.maxHeight=`${o.scrollHeight}px`:o.style.maxHeight=0,o.style.paddingTop=o.dataset.oldPaddingTop,o.style.paddingBottom=o.dataset.oldPaddingBottom,o.style.overflow="hidden"})},afterEnter(o){o.style.maxHeight="",o.style.overflow=o.dataset.oldOverflow},enterCancelled(o){n(o)},beforeLeave(o){o.dataset||(o.dataset={}),o.dataset.oldPaddingTop=o.style.paddingTop,o.dataset.oldPaddingBottom=o.style.paddingBottom,o.dataset.oldOverflow=o.style.overflow,o.style.maxHeight=`${o.scrollHeight}px`,o.style.overflow="hidden"},leave(o){o.scrollHeight!==0&&(o.style.maxHeight=0,o.style.paddingTop=0,o.style.paddingBottom=0)},afterLeave(o){n(o)},leaveCancelled(o){n(o)}};return(o,s)=>(x(),oe(Vn,dt({name:i(t).b()},jT(a)),{default:J(()=>[ee(o.$slots,"default")]),_:3},16,["name"]))}}),g6=m6;const rf=rt(g6),o0="ElCollapse",b6=(e,t)=>{const n=M(Nn(e.modelValue)),a=r=>{n.value=r;const l=e.accordion?n.value[0]:n.value;t(at,l),t(yt,l)},o=r=>{if(e.accordion)a([n.value[0]===r?"":r]);else{const l=[...n.value],u=l.indexOf(r);u>-1?l.splice(u,1):l.push(r),a(l)}},s=async r=>{const{beforeCollapse:l}=e;if(!l){o(r);return}const u=l(r);[mr(u),Ht(u)].includes(!0)||nn(o0,"beforeCollapse must return type `Promise` or `boolean`"),mr(u)?u.then(c=>{c!==!1&&o(r)}).catch(c=>{pt(o0,`some error occurred: ${c}`)}):u&&o(r)};return le(()=>e.modelValue,()=>n.value=Nn(e.modelValue),{deep:!0}),St(n2,{activeNames:n,handleItemClick:s}),{activeNames:n,setActiveNames:a}},y6=e=>{const t=fe("collapse");return{rootKls:w(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}};var w6=se({name:"ElCollapse",__name:"collapse",props:p6,emits:h6,setup(e,{expose:t,emit:n}){const a=e,{activeNames:o,setActiveNames:s}=b6(a,n),{rootKls:r}=y6(a);return t({activeNames:o,setActiveNames:s}),(l,u)=>(x(),B("div",{class:T(i(r))},[ee(l.$slots,"default")],2))}}),S6=w6;const C6=e=>{const t=_e(n2),{namespace:n}=fe("collapse"),a=M(!1),o=M(!1),s=Gv(),r=w(()=>s.current++),l=w(()=>e.name??`${n.value}-id-${s.prefix}-${i(r)}`),u=w(()=>t?.activeNames.value.includes(i(l)));return{focusing:a,id:r,isActive:u,handleFocus:()=>{setTimeout(()=>{o.value?o.value=!1:a.value=!0},50)},handleHeaderClick:v=>{e.disabled||v.target?.closest("input, textarea, select")||(t?.handleItemClick(i(l)),a.value=!1,o.value=!0)},handleEnterClick:v=>{v.target?.closest("input, textarea, select")||(v.preventDefault(),t?.handleItemClick(i(l)))}}},k6=(e,{focusing:t,isActive:n,id:a})=>{const o=fe("collapse"),s=w(()=>[o.b("item"),o.is("active",i(n)),o.is("disabled",e.disabled)]),r=w(()=>[o.be("item","header"),o.is("active",i(n)),{focusing:i(t)&&!e.disabled}]),l=w(()=>[o.be("item","arrow"),o.is("active",i(n))]);return{itemTitleKls:w(()=>[o.be("item","title")]),arrowKls:l,headKls:r,rootKls:s,itemWrapperKls:w(()=>o.be("item","wrap")),itemContentKls:w(()=>o.be("item","content")),scopedContentId:w(()=>o.b(`content-${i(a)}`)),scopedHeadId:w(()=>o.b(`head-${i(a)}`))}},E6=["id","aria-expanded","aria-controls","aria-describedby","tabindex","aria-disabled"],x6=["id","aria-hidden","aria-labelledby"];var T6=se({name:"ElCollapseItem",__name:"collapse-item",props:v6,setup(e,{expose:t}){const n=e,{focusing:a,id:o,isActive:s,handleFocus:r,handleHeaderClick:l,handleEnterClick:u}=C6(n),{arrowKls:c,headKls:d,rootKls:f,itemTitleKls:v,itemWrapperKls:g,itemContentKls:p,scopedContentId:h,scopedHeadId:m}=k6(n,{focusing:a,isActive:s,id:o});return t({isActive:s}),(b,k)=>(x(),B("div",{class:T(i(f))},[z("div",{id:i(m),class:T(i(d)),"aria-expanded":i(s),"aria-controls":i(h),"aria-describedby":i(h),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"button",onClick:k[0]||(k[0]=(...y)=>i(l)&&i(l)(...y)),onKeydown:k[1]||(k[1]=on(Xe((...y)=>i(u)&&i(u)(...y),["stop"]),["space","enter"])),onFocus:k[2]||(k[2]=(...y)=>i(r)&&i(r)(...y)),onBlur:k[3]||(k[3]=y=>a.value=!1)},[z("span",{class:T(i(v))},[ee(b.$slots,"title",{isActive:i(s)},()=>[wt(Se(e.title),1)])],2),ee(b.$slots,"icon",{isActive:i(s)},()=>[Y(i(De),{class:T(i(c))},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1},8,["class"])])],42,E6),Y(i(rf),null,{default:J(()=>[ut(z("div",{id:i(h),role:"region",class:T(i(g)),"aria-hidden":!i(s),"aria-labelledby":i(m)},[z("div",{class:T(i(p))},[ee(b.$slots,"default")],2)],10,x6),[[Pt,i(s)]])]),_:3})],2))}}),a2=T6;const $6=rt(S6,{CollapseItem:a2}),O6=an(a2),o2=Ce({modelValue:{type:G(String),default:void 0},border:{type:Boolean,default:!0},showAlpha:Boolean,colorFormat:{type:G(String)},disabled:Boolean,predefine:{type:G(Array)},validateEvent:{type:Boolean,default:!0}}),R6={[at]:e=>Le(e)||bn(e)},s2=Symbol("colorCommonPickerKey"),r2=Symbol("colorPickerPanelContextKey"),l2=Ce({color:{type:G(Object),required:!0},vertical:Boolean,disabled:Boolean}),N6=l2,s0=e=>{let t=0,n=e;for(;n;)t+=n.offsetTop,n=n.offsetParent;return t},hh=(e,t)=>Math.abs(s0(e)-s0(t)),i2=e=>{let t,n;return e.type==="touchend"?(n=e.changedTouches[0].clientY,t=e.changedTouches[0].clientX):e.type.startsWith("touch")?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}};let Qf=!1;function vh(e,t){if(!Mt)return;const n=function(s){t.drag?.(s)},a=function(s){document.removeEventListener("mousemove",n),document.removeEventListener("mouseup",a),document.removeEventListener("touchmove",n),document.removeEventListener("touchend",a),document.onselectstart=null,document.ondragstart=null,Qf=!1,t.end?.(s)},o=function(s){Qf||(document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener("mousemove",n),document.addEventListener("mouseup",a),document.addEventListener("touchmove",n),document.addEventListener("touchend",a),Qf=!0,t.start?.(s))};e.addEventListener("mousedown",o),e.addEventListener("touchstart",o,{passive:!1})}const u2=(e,{key:t,minValue:n,maxValue:a})=>{const o=ft(),s=Xt(),r=Xt(),l=w(()=>e.color.get(t));function u(v){e.disabled||(v.target!==s.value&&c(v),s.value?.focus())}function c(v){if(!r.value||!s.value||e.disabled)return;const g=o.vnode.el.getBoundingClientRect(),{clientX:p,clientY:h}=i2(v);let m;if(e.vertical){let b=h-g.top;b=Math.max(s.value.offsetHeight/2,b),b=Math.min(b,g.height-s.value.offsetHeight/2),m=Math.round((b-s.value.offsetHeight/2)/(g.height-s.value.offsetHeight)*a)}else{let b=p-g.left;b=Math.max(s.value.offsetWidth/2,b),b=Math.min(b,g.width-s.value.offsetWidth/2),m=Math.round((b-s.value.offsetWidth/2)/(g.width-s.value.offsetWidth)*a)}e.color.set(t,m)}function d(v){if(e.disabled)return;const{shiftKey:g}=v,p=jt(v),h=g?10:1,m=t==="hue"?-1:1;let b=!0;switch(p){case we.left:case we.down:f(-h*m);break;case we.right:case we.up:f(h*m);break;case we.home:e.color.set(t,t==="hue"?a:n);break;case we.end:e.color.set(t,t==="hue"?n:a);break;case we.pageDown:f(-4*m);break;case we.pageUp:f(4*m);break;default:b=!1;break}b&&v.preventDefault()}function f(v){let g=l.value+v;g=ga?a:g,e.color.set(t,g)}return{thumb:s,bar:r,currentValue:l,handleDrag:c,handleClick:u,handleKeydown:d}},c2=(e,{namespace:t,maxValue:n,bar:a,thumb:o,currentValue:s,handleDrag:r,getBackground:l})=>{const u=ft(),c=fe(t),d=M(0),f=M(0),v=M();function g(){if(!o.value||e.vertical)return 0;const y=u.vnode.el,S=s.value;return y?Math.round(S*(y.offsetWidth-o.value.offsetWidth/2)/n):0}function p(){if(!o.value)return 0;const y=u.vnode.el;if(!e.vertical)return 0;const S=s.value;return y?Math.round(S*(y.offsetHeight-o.value.offsetHeight/2)/n):0}function h(){d.value=g(),f.value=p(),v.value=l?.()}ht(()=>{if(!a.value||!o.value)return;const y={drag:S=>{r(S)},end:S=>{r(S)}};vh(a.value,y),vh(o.value,y),h()}),le(s,()=>h()),le(()=>e.color.value,()=>h());const m=w(()=>[c.b(),c.is("vertical",e.vertical),c.is("disabled",e.disabled)]),b=w(()=>c.e("bar")),k=w(()=>c.e("thumb"));return{rootKls:m,barKls:b,barStyle:w(()=>({background:v.value})),thumbKls:k,thumbStyle:w(()=>({left:ln(d.value),top:ln(f.value)})),thumbLeft:d,thumbTop:f,update:h}},I6=["aria-label","aria-valuenow","aria-valuetext","aria-orientation","tabindex","aria-disabled"],r0=0,ep=100;var P6=se({name:"ElColorAlphaSlider",__name:"alpha-slider",props:l2,setup(e,{expose:t}){const n=e,{currentValue:a,bar:o,thumb:s,handleDrag:r,handleClick:l,handleKeydown:u}=u2(n,{key:"alpha",minValue:r0,maxValue:ep}),{rootKls:c,barKls:d,barStyle:f,thumbKls:v,thumbStyle:g,update:p}=c2(n,{namespace:"color-alpha-slider",maxValue:ep,currentValue:a,bar:o,thumb:s,handleDrag:r,getBackground:k}),{t:h}=Ct(),m=w(()=>h("el.colorpicker.alphaLabel")),b=w(()=>h("el.colorpicker.alphaDescription",{alpha:a.value,color:n.color.value}));function k(){if(n.color&&n.color.value){const{r:y,g:S,b:C}=n.color.toRgb();return`linear-gradient(to right, rgba(${y}, ${S}, ${C}, 0) 0%, rgba(${y}, ${S}, ${C}, 1) 100%)`}return""}return t({update:p,bar:o,thumb:s}),(y,S)=>(x(),B("div",{class:T(i(c))},[z("div",{ref_key:"bar",ref:o,class:T(i(d)),style:Ke(i(f)),onClick:S[0]||(S[0]=(...C)=>i(l)&&i(l)(...C))},null,6),z("div",{ref_key:"thumb",ref:s,class:T(i(v)),style:Ke(i(g)),"aria-label":m.value,"aria-valuenow":i(a),"aria-valuetext":b.value,"aria-orientation":e.vertical?"vertical":"horizontal","aria-valuemin":r0,"aria-valuemax":ep,role:"slider",tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,onKeydown:S[1]||(S[1]=(...C)=>i(u)&&i(u)(...C))},null,46,I6)],2))}}),M6=P6;const _6=["aria-label","aria-valuenow","aria-valuetext","aria-orientation","tabindex","aria-disabled"],l0=0,tp=360;var A6=se({name:"ElColorHueSlider",__name:"hue-slider",props:N6,setup(e,{expose:t}){const n=e,{currentValue:a,bar:o,thumb:s,handleDrag:r,handleClick:l,handleKeydown:u}=u2(n,{key:"hue",minValue:l0,maxValue:tp}),{rootKls:c,barKls:d,thumbKls:f,thumbStyle:v,thumbTop:g,update:p}=c2(n,{namespace:"color-hue-slider",maxValue:tp,currentValue:a,bar:o,thumb:s,handleDrag:r}),{t:h}=Ct(),m=w(()=>h("el.colorpicker.hueLabel")),b=w(()=>h("el.colorpicker.hueDescription",{hue:a.value,color:n.color.value}));return t({bar:o,thumb:s,thumbTop:g,update:p}),(k,y)=>(x(),B("div",{class:T(i(c))},[z("div",{ref_key:"bar",ref:o,class:T(i(d)),onClick:y[0]||(y[0]=(...S)=>i(l)&&i(l)(...S))},null,2),z("div",{ref_key:"thumb",ref:s,class:T(i(f)),style:Ke(i(v)),"aria-label":m.value,"aria-valuenow":i(a),"aria-valuetext":b.value,"aria-orientation":e.vertical?"vertical":"horizontal","aria-valuemin":l0,"aria-valuemax":tp,role:"slider",tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,onKeydown:y[1]||(y[1]=(...S)=>i(u)&&i(u)(...S))},null,46,_6)],2))}}),L6=A6;const D6=Ce({colors:{type:G(Array),required:!0},color:{type:G(Object),required:!0},enableAlpha:{type:Boolean,required:!0},disabled:Boolean});var rd=class{constructor(e={}){this._hue=0,this._saturation=100,this._value=100,this._alpha=100,this._tiny=new pn,this._isValid=!1,this.enableAlpha=!1,this.format="",this.value="";for(const t in e)Nt(e,t)&&(this[t]=e[t]);e.value?this.fromString(e.value):this.doOnChange()}set(e,t){if(arguments.length===1&&typeof e=="object"){for(const n in e)Nt(e,n)&&this.set(n,e[n]);return}this[`_${e}`]=t,this._isValid=!0,this.doOnChange()}get(e){return["hue","saturation","value","alpha"].includes(e)?Math.round(this[`_${e}`]):this[`_${e}`]}toRgb(){return this._isValid?this._tiny.toRgb():{r:255,g:255,b:255,a:0}}fromString(e){const t=new pn(e);if(this._isValid=t.isValid,t.isValid){const{h:n,s:a,v:o,a:s}=t.toHsv();this._hue=n,this._saturation=a*100,this._value=o*100,this._alpha=s*100}else this._hue=0,this._saturation=100,this._value=100,this._alpha=100;this.doOnChange()}clear(){this._isValid=!1,this.value="",this._hue=0,this._saturation=100,this._value=100,this._alpha=100}compare(e){const t=new pn({h:e._hue,s:e._saturation/100,v:e._value/100,a:e._alpha/100});return this._tiny.equals(t)}doOnChange(){const{_hue:e,_saturation:t,_value:n,_alpha:a,format:o,enableAlpha:s}=this;let r=o||(s?"rgb":"hex");o==="hex"&&s&&(r="hex8"),this._tiny=new pn({h:e,s:t/100,v:n/100,a:a/100}),this.value=this._isValid?this._tiny.toString(r):""}};const B6=e=>{const{currentColor:t}=_e(r2),n=M(o(e.colors,e.color));le(()=>t.value,s=>{const r=new rd({value:s,enableAlpha:e.enableAlpha});n.value.forEach(l=>{l.selected=r.compare(l)})}),wa(()=>{n.value=o(e.colors,e.color)});function a(s){e.color.fromString(e.colors[s])}function o(s,r){return s.map(l=>{const u=new rd({value:l,enableAlpha:e.enableAlpha});return u.selected=u.compare(r),u})}return{rgbaColors:n,handleSelect:a}},F6=e=>{const t=fe("color-predefine"),n=w(()=>[t.b(),t.is("disabled",e.disabled)]),a=w(()=>t.e("colors"));function o(s){return[t.e("color-selector"),t.is("alpha",s.get("alpha")<100),{selected:s.selected}]}return{rootKls:n,colorsKls:a,colorSelectorKls:o}},V6=["disabled","aria-label","onClick"];var z6=se({name:"ElColorPredefine",__name:"predefine",props:D6,setup(e){const t=e,{rgbaColors:n,handleSelect:a}=B6(t),{rootKls:o,colorsKls:s,colorSelectorKls:r}=F6(t),{t:l}=Ct(),u=c=>l("el.colorpicker.predefineDescription",{value:c});return(c,d)=>(x(),B("div",{class:T(i(o))},[z("div",{class:T(i(s))},[(x(!0),B(Fe,null,gt(i(n),(f,v)=>(x(),B("button",{key:e.colors[v],type:"button",disabled:e.disabled,"aria-label":u(f.value),class:T(i(r)(f)),onClick:g=>i(a)(v)},[z("div",{style:Ke({backgroundColor:f.value})},null,4)],10,V6))),128))],2)],2))}}),H6=z6;const K6=Ce({color:{type:G(Object),required:!0},disabled:Boolean}),W6=e=>{const t=ft(),n=M(),a=M(0),o=M(0),s=M("hsl(0, 100%, 50%)"),r=w(()=>e.color.get("saturation")),l=w(()=>e.color.get("value")),u=w(()=>e.color.get("hue"));function c(p){e.disabled||(p.target!==n.value&&d(p),n.value?.focus({preventScroll:!0}))}function d(p){if(e.disabled)return;const h=t.vnode.el.getBoundingClientRect(),{clientX:m,clientY:b}=i2(p);let k=m-h.left,y=b-h.top;k=Math.max(0,k),k=Math.min(k,h.width),y=Math.max(0,y),y=Math.min(y,h.height),o.value=k,a.value=y,e.color.set({saturation:k/h.width*100,value:100-y/h.height*100})}function f(p){if(e.disabled)return;const{shiftKey:h}=p,m=jt(p),b=h?10:1;let k=!0;switch(m){case we.left:v(-b);break;case we.right:v(b);break;case we.up:g(b);break;case we.down:g(-b);break;default:k=!1;break}k&&p.preventDefault()}function v(p){let h=r.value+p;h=h<0?0:h>100?100:h,e.color.set("saturation",h)}function g(p){let h=l.value+p;h=h<0?0:h>100?100:h,e.color.set("value",h)}return{cursorRef:n,cursorTop:a,cursorLeft:o,background:s,saturation:r,brightness:l,hue:u,handleClick:c,handleDrag:d,handleKeydown:f}},j6=(e,{cursorTop:t,cursorLeft:n,background:a,handleDrag:o})=>{const s=ft(),r=fe("color-svpanel");function l(){const u=e.color.get("saturation"),c=e.color.get("value"),{clientWidth:d,clientHeight:f}=s.vnode.el;n.value=u*d/100,t.value=(100-c)*f/100,a.value=`hsl(${e.color.get("hue")}, 100%, 50%)`}return ht(()=>{vh(s.vnode.el,{drag:u=>{o(u)},end:u=>{o(u)}}),l()}),le([()=>e.color.get("hue"),()=>e.color.get("value"),()=>e.color.value],()=>l()),{rootKls:w(()=>r.b()),cursorKls:w(()=>r.e("cursor")),rootStyle:w(()=>({backgroundColor:a.value})),cursorStyle:w(()=>({top:ln(t.value),left:ln(n.value)})),update:l}},U6=["tabindex","aria-disabled","aria-label","aria-valuenow","aria-valuetext"];var q6=se({name:"ElSvPanel",__name:"sv-panel",props:K6,setup(e,{expose:t}){const n=e,{cursorRef:a,cursorTop:o,cursorLeft:s,background:r,saturation:l,brightness:u,handleClick:c,handleDrag:d,handleKeydown:f}=W6(n),{rootKls:v,cursorKls:g,rootStyle:p,cursorStyle:h,update:m}=j6(n,{cursorTop:o,cursorLeft:s,background:r,handleDrag:d}),{t:b}=Ct(),k=w(()=>b("el.colorpicker.svLabel")),y=w(()=>b("el.colorpicker.svDescription",{saturation:l.value,brightness:u.value,color:n.color.value}));return t({update:m}),(S,C)=>(x(),B("div",{class:T(i(v)),style:Ke(i(p)),onClick:C[1]||(C[1]=(...E)=>i(c)&&i(c)(...E))},[z("div",{ref_key:"cursorRef",ref:a,class:T(i(g)),style:Ke(i(h)),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"slider","aria-valuemin":"0,0","aria-valuemax":"100,100","aria-label":k.value,"aria-valuenow":`${i(l)},${i(u)}`,"aria-valuetext":y.value,onKeydown:C[0]||(C[0]=(...E)=>i(f)&&i(f)(...E))},null,46,U6)],6))}}),Y6=q6;const d2=(e,t)=>{const n=At(new rd({enableAlpha:e.showAlpha,format:e.colorFormat||"",value:e.modelValue}));return le(()=>[e.colorFormat,e.showAlpha],()=>{n.enableAlpha=e.showAlpha,n.format=e.colorFormat||n.format,n.doOnChange(),t(at,n.value)}),{color:n}};var G6=se({name:"ElColorPickerPanel",__name:"color-picker-panel",props:o2,emits:R6,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("color-picker-panel"),{formItem:r}=Dn(),l=un(),u=M(),c=M(),d=M(),f=M(),v=M(""),{color:g}=_e(s2,()=>d2(a,o),!0);function p(){g.fromString(v.value),g.value!==v.value&&(v.value=g.value)}function h(){a.validateEvent&&r?.validate?.("blur").catch(b=>pt(b))}function m(){u.value?.update(),c.value?.update(),d.value?.update()}return ht(()=>{a.modelValue&&(v.value=g.value),Re(m)}),le(()=>a.modelValue,b=>{b!==g.value&&(b?g.fromString(b):g.clear())}),le(()=>g.value,b=>{o(at,b),v.value=b,a.validateEvent&&r?.validate("change").catch(k=>pt(k))}),St(r2,{currentColor:w(()=>g.value)}),t({color:g,inputRef:f,update:m}),(b,k)=>(x(),B("div",{class:T([i(s).b(),i(s).is("disabled",i(l)),i(s).is("border",e.border)]),onFocusout:h},[z("div",{class:T(i(s).e("wrapper"))},[Y(L6,{ref_key:"hueRef",ref:u,class:"hue-slider",color:i(g),vertical:"",disabled:i(l)},null,8,["color","disabled"]),Y(Y6,{ref_key:"svRef",ref:c,color:i(g),disabled:i(l)},null,8,["color","disabled"])],2),e.showAlpha?(x(),oe(M6,{key:0,ref_key:"alphaRef",ref:d,color:i(g),disabled:i(l)},null,8,["color","disabled"])):te("v-if",!0),e.predefine?(x(),oe(H6,{key:1,ref:"predefine","enable-alpha":e.showAlpha,color:i(g),colors:e.predefine,disabled:i(l)},null,8,["enable-alpha","color","colors","disabled"])):te("v-if",!0),z("div",{class:T(i(s).e("footer"))},[Y(i(ea),{ref_key:"inputRef",ref:f,modelValue:v.value,"onUpdate:modelValue":k[0]||(k[0]=y=>v.value=y),"validate-event":!1,size:"small",disabled:i(l),onChange:p},null,8,["modelValue","disabled"]),ee(b.$slots,"footer")],2)],34))}}),X6=G6;const f2=rt(X6),J6=Ce({persistent:{type:Boolean,default:!0},modelValue:{type:G(String),default:void 0},id:String,showAlpha:Boolean,colorFormat:{type:G(String)},disabled:{type:Boolean,default:void 0},clearable:{type:Boolean,default:!0},size:Tn,popperClass:zt.popperClass,popperStyle:zt.popperStyle,tabindex:{type:[String,Number],default:0},teleported:zt.teleported,appendTo:zt.appendTo,predefine:{type:G(Array)},validateEvent:{type:Boolean,default:!0},...Pr,...aa(["ariaLabel"])}),Z6={[at]:e=>Le(e)||bn(e),[yt]:e=>Le(e)||bn(e),activeChange:e=>Le(e)||bn(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},Q6=["id","aria-label","aria-labelledby","aria-description","aria-disabled","tabindex"];var ez=se({name:"ElColorPicker",__name:"color-picker",props:J6,emits:Z6,setup(e,{expose:t,emit:n}){const a=e,o=n,{t:s}=Ct(),r=fe("color"),{formItem:l}=Dn(),u=Cn(),c=un(),{valueOnClear:d,isEmptyValue:f}=hu(a,null),v=d2(a,o),{inputId:g,isLabeledByFormItem:p}=Ia(a,{formItemContext:l}),h=M(),m=M(),b=M(),k=M(!1),y=M(!1);let S=!0;const{isFocused:C,handleFocus:E,handleBlur:$}=ms(m,{disabled:c,beforeBlur(ae){return h.value?.isFocusInsideContent(ae)},afterBlur(){W(!1),D(),a.validateEvent&&l?.validate?.("blur").catch(ae=>pt(ae))}}),O=KM(()=>b.value?.color??v.color),N=w(()=>ss(a,Object.keys(o2))),R=w(()=>!a.modelValue&&!y.value?"transparent":U(O,a.showAlpha)),A=w(()=>!a.modelValue&&!y.value?"":O.value),_=w(()=>p.value?void 0:a.ariaLabel||s("el.colorpicker.defaultLabel")),V=w(()=>p.value?l?.labelId:void 0),H=w(()=>[r.b("picker"),r.is("disabled",c.value),r.bm("picker",u.value),r.is("focused",C.value)]);function U(ae,ne){const{r:K,g:Z,b:re,a:ce}=ae.toRgb();return ne?`rgba(${K}, ${Z}, ${re}, ${ce})`:`rgb(${K}, ${Z}, ${re})`}function W(ae){k.value=ae}const P=Mo(W,100,{leading:!0});function I(){c.value||W(!0)}function L(){P(!1),D()}function D(){Re(()=>{a.modelValue?O.fromString(a.modelValue):(O.value="",Re(()=>{y.value=!1}))})}function F(){c.value||(k.value&&D(),P(!k.value))}function q(){const ae=f(O.value)?d.value:O.value;o(at,ae),o(yt,ae),a.validateEvent&&l?.validate("change").catch(ne=>pt(ne)),P(!1),Re(()=>{const ne=new rd({enableAlpha:a.showAlpha,format:a.colorFormat||"",value:a.modelValue});O.compare(ne)||D()})}function j(){P(!1),o(at,d.value),o(yt,d.value),a.modelValue!==d.value&&a.validateEvent&&l?.validate("change").catch(ae=>pt(ae)),D(),o("clear")}function X(){b?.value?.inputRef?.focus()}function Q(){k.value&&(L(),C.value&&ge())}function he(ae){ae.preventDefault(),ae.stopPropagation(),W(!1),D()}function ue(ae){switch(jt(ae)){case we.enter:case we.numpadEnter:case we.space:ae.preventDefault(),ae.stopPropagation(),I();break;case we.esc:he(ae);break}}function ge(){m.value.focus()}function ie(){m.value.blur()}return le(()=>A.value,ae=>{S&&o("activeChange",ae),S=!0}),le(()=>O.value,()=>{!a.modelValue&&!y.value&&(y.value=!0)}),le(()=>a.modelValue,ae=>{ae?ae&&ae!==O.value&&(S=!1,O.fromString(ae)):y.value=!1}),le(()=>k.value,()=>{b.value&&Re(b.value.update)}),St(s2,v),t({color:O,show:I,hide:L,focus:ge,blur:ie}),(ae,ne)=>(x(),oe(i(Ln),{ref_key:"popper",ref:h,visible:k.value,"show-arrow":!1,"fallback-placements":["bottom","top","right","left"],offset:0,"gpu-acceleration":!1,"popper-class":[i(r).be("picker","panel"),e.popperClass],"popper-style":e.popperStyle,"stop-popper-mouse-event":!1,pure:"",loop:"",role:"dialog",effect:"light",trigger:"click",teleported:e.teleported,transition:`${i(r).namespace.value}-zoom-in-top`,persistent:e.persistent,"append-to":e.appendTo,onShow:X,onHide:ne[2]||(ne[2]=K=>W(!1))},{content:J(()=>[ut((x(),oe(i(f2),dt({ref_key:"pickerPanelRef",ref:b},N.value,{border:!1,"validate-event":!1,onKeydown:on(he,["esc"])}),{footer:J(()=>[z("div",null,[e.clearable?(x(),oe(i(In),{key:0,class:T(i(r).be("footer","link-btn")),text:"",size:"small",onClick:j},{default:J(()=>[wt(Se(i(s)("el.colorpicker.clear")),1)]),_:1},8,["class"])):te("v-if",!0),Y(i(In),{plain:"",size:"small",class:T(i(r).be("footer","btn")),onClick:q},{default:J(()=>[wt(Se(i(s)("el.colorpicker.confirm")),1)]),_:1},8,["class"])])]),_:1},16)),[[i(zs),Q,m.value]])]),default:J(()=>[z("div",dt({id:i(g),ref_key:"triggerRef",ref:m},ae.$attrs,{class:H.value,role:"button","aria-label":_.value,"aria-labelledby":V.value,"aria-description":i(s)("el.colorpicker.description",{color:e.modelValue||""}),"aria-disabled":i(c),tabindex:i(c)?void 0:e.tabindex,onKeydown:ue,onFocus:ne[0]||(ne[0]=(...K)=>i(E)&&i(E)(...K)),onBlur:ne[1]||(ne[1]=(...K)=>i($)&&i($)(...K))}),[z("div",{class:T(i(r).be("picker","trigger")),onClick:F},[z("span",{class:T([i(r).be("picker","color"),i(r).is("alpha",e.showAlpha)])},[z("span",{class:T(i(r).be("picker","color-inner")),style:Ke({backgroundColor:R.value})},[ut(Y(i(De),{class:T([i(r).be("picker","icon"),i(r).is("icon-arrow-down")])},{default:J(()=>[Y(i(Fo))]),_:1},8,["class"]),[[Pt,e.modelValue||y.value]]),ut(Y(i(De),{class:T([i(r).be("picker","empty"),i(r).is("icon-close")])},{default:J(()=>[Y(i(Ha))]),_:1},8,["class"]),[[Pt,!e.modelValue&&!y.value]])],6)],2)],2)],16,Q6)]),_:1},8,["visible","popper-class","popper-style","teleported","transition","persistent","append-to"]))}}),tz=ez;const nz=rt(tz);var az=se({name:"ElContainer",__name:"container",props:{direction:{type:String,required:!1}},setup(e){const t=e,n=vn(),a=fe("container"),o=w(()=>t.direction==="vertical"?!0:t.direction==="horizontal"?!1:n&&n.default?n.default().some(s=>{const r=s.type.name;return r==="ElHeader"||r==="ElFooter"}):!1);return(s,r)=>(x(),B("section",{class:T([i(a).b(),i(a).is("vertical",o.value)])},[ee(s.$slots,"default")],2))}}),oz=az,sz=se({name:"ElAside",__name:"aside",props:{width:{type:[String,null],required:!1,default:null}},setup(e){const t=e,n=fe("aside"),a=w(()=>t.width?n.cssVarBlock({width:t.width}):{});return(o,s)=>(x(),B("aside",{class:T(i(n).b()),style:Ke(a.value)},[ee(o.$slots,"default")],6))}}),p2=sz,rz=se({name:"ElFooter",__name:"footer",props:{height:{type:[String,null],required:!1,default:null}},setup(e){const t=e,n=fe("footer"),a=w(()=>t.height?n.cssVarBlock({height:t.height}):{});return(o,s)=>(x(),B("footer",{class:T(i(n).b()),style:Ke(a.value)},[ee(o.$slots,"default")],6))}}),h2=rz,lz=se({name:"ElHeader",__name:"header",props:{height:{type:[String,null],required:!1,default:null}},setup(e){const t=e,n=fe("header"),a=w(()=>t.height?n.cssVarBlock({height:t.height}):{});return(o,s)=>(x(),B("header",{class:T(i(n).b()),style:Ke(a.value)},[ee(o.$slots,"default")],6))}}),v2=lz,iz=se({name:"ElMain",__name:"main",setup(e){const t=fe("main");return(n,a)=>(x(),B("main",{class:T(i(t).b())},[ee(n.$slots,"default")],2))}}),m2=iz;const uz=rt(oz,{Aside:p2,Footer:h2,Header:v2,Main:m2}),cz=an(p2),dz=an(h2),fz=an(v2),pz=an(m2),hz=Ce({format:{type:String,default:"HH:mm:ss"},prefix:String,suffix:String,title:String,value:{type:G([Number,Object]),default:0},valueStyle:{type:G([String,Object,Array])}}),vz={finish:()=>!0,[yt]:e=>He(e)},mz=Ce({decimalSeparator:{type:String,default:"."},groupSeparator:{type:String,default:","},precision:{type:Number,default:0},formatter:Function,value:{type:G([Number,Object]),default:0},prefix:String,suffix:String,title:String,valueStyle:{type:G([String,Object,Array])}});var gz=se({name:"ElStatistic",__name:"statistic",props:mz,setup(e,{expose:t}){const n=e,a=fe("statistic"),o=w(()=>{const{value:s,formatter:r,precision:l,decimalSeparator:u,groupSeparator:c}=n;if(Ve(r))return r(s);if(!He(s)||Number.isNaN(s))return s;let[d,f=""]=String(s).split(".");return f=f.padEnd(l,"0").slice(0,l>0?l:0),d=d.replace(/\B(?=(\d{3})+(?!\d))/g,c),[d,f].join(f?u:"")});return t({displayValue:o}),(s,r)=>(x(),B("div",{class:T(i(a).b())},[s.$slots.title||e.title?(x(),B("div",{key:0,class:T(i(a).e("head"))},[ee(s.$slots,"title",{},()=>[wt(Se(e.title),1)])],2)):te("v-if",!0),z("div",{class:T(i(a).e("content"))},[s.$slots.prefix||e.prefix?(x(),B("div",{key:0,class:T(i(a).e("prefix"))},[ee(s.$slots,"prefix",{},()=>[z("span",null,Se(e.prefix),1)])],2)):te("v-if",!0),z("span",{class:T(i(a).e("number")),style:Ke(e.valueStyle)},Se(o.value),7),s.$slots.suffix||e.suffix?(x(),B("div",{key:1,class:T(i(a).e("suffix"))},[ee(s.$slots,"suffix",{},()=>[z("span",null,Se(e.suffix),1)])],2)):te("v-if",!0)],2)],2))}}),bz=gz;const g2=rt(bz),yz=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]],i0=e=>He(e)?new Date(e).getTime():e.valueOf(),u0=(e,t)=>{let n=e;return yz.reduce((a,[o,s])=>{const r=new RegExp(`${o}+(?![^\\[\\]]*\\])`,"g");if(r.test(a)){const l=Math.floor(n/s);return n-=l*s,a.replace(r,u=>String(l).padStart(u.length,"0"))}return a},t).replace(/\[([^\]]*)]/g,"$1")};var wz=se({name:"ElCountdown",__name:"countdown",props:hz,emits:vz,setup(e,{expose:t,emit:n}){const a=e,o=n;let s;const r=M(0),l=w(()=>u0(r.value,a.format)),u=f=>u0(f,a.format),c=()=>{s&&(rs(s),s=void 0)},d=()=>{const f=i0(a.value),v=()=>{let g=f-Date.now();o(yt,g),g<=0?(g=0,c(),o("finish")):s=eo(v),r.value=g};s=eo(v)};return ht(()=>{r.value=i0(a.value)-Date.now(),le(()=>[a.value,a.format],()=>{c(),d()},{immediate:!0})}),Bt(()=>{c()}),t({displayValue:l}),(f,v)=>(x(),oe(i(g2),{value:r.value,title:e.title,prefix:e.prefix,suffix:e.suffix,"value-style":e.valueStyle,formatter:u},ua({_:2},[gt(f.$slots,(g,p)=>({name:p,fn:J(()=>[ee(f.$slots,p)])}))]),1032,["value","title","prefix","suffix","value-style"]))}}),Sz=wz;const Cz=rt(Sz),kz=Ce({valueFormat:String,dateFormat:String,timeFormat:String,disabled:{type:Boolean,default:void 0},modelValue:{type:G([Date,Array,String,Number]),default:""},defaultValue:{type:G([Date,Array])},defaultTime:{type:G([Date,Array])},isRange:Boolean,...dm,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,unlinkPanels:Boolean,showNow:{type:Boolean,default:!0},showConfirm:Boolean,showFooter:Boolean,showWeekNumber:Boolean,type:{type:G(String),default:"date"},clearable:{type:Boolean,default:!0},border:{type:Boolean,default:!0},editable:{type:Boolean,default:!0}}),ym=Symbol("rootPickerContextKey"),wu="ElIsDefaultFormat",Ez=["date","dates","year","years","month","months","week","range"],wm=Ce({cellClassName:{type:G(Function)},disabledDate:{type:G(Function)},date:{type:G(Object),required:!0},minDate:{type:G(Object)},maxDate:{type:G(Object)},parsedValue:{type:G([Object,Array])},rangeState:{type:G(Object),default:()=>({endDate:null,selecting:!1})},disabled:Boolean}),b2=Ce({type:{type:G(String),required:!0,values:dO},dateFormat:String,timeFormat:String,showNow:{type:Boolean,default:!0},showConfirm:Boolean,showFooter:{type:Boolean,default:!0},showWeekNumber:Boolean,border:Boolean,disabled:Boolean,editable:{type:Boolean,default:!0}}),Sm=Ce({unlinkPanels:Boolean,visible:{type:Boolean,default:!0},showConfirm:Boolean,showFooter:{type:Boolean,default:!0},border:Boolean,disabled:Boolean,parsedValue:{type:G(Array)}}),Cm=e=>({type:String,values:Ez,default:e}),xz=Ce({...b2,parsedValue:{type:G([Object,Array])},visible:{type:Boolean,default:!0},format:{type:String,default:""}}),Di=e=>{if(!ye(e))return!1;const[t,n]=e;return st.isDayjs(t)&&st.isDayjs(n)&&st(t).isValid()&&st(n).isValid()&&t.isSameOrBefore(n)},lf=(e,{lang:t,step:n=1,unit:a,unlinkPanels:o})=>{let s;if(ye(e)){let[r,l]=e.map(u=>st(u).locale(t));return o||(l=r.add(n,a)),[r,l]}else e?s=st(e):s=st();return s=s.locale(t),[s,s.add(n,a)]},Tz=(e,t,{columnIndexOffset:n,startDate:a,nextEndDate:o,now:s,unit:r,relativeDateGetter:l,setCellMetadata:u,setRowMetadata:c})=>{for(let d=0;d{const o=st().locale(a).startOf("month").month(n).year(t).hour(e.hour()).minute(e.minute()).second(e.second());return _s(o.daysInMonth()).map(s=>o.add(s,"day").toDate())},Sl=(e,t,n,a,o)=>{const s=st().year(t).month(n).startOf("month").hour(e.hour()).minute(e.minute()).second(e.second()),r=ld(e,t,n,a).find(l=>!o?.(l));return r?st(r).locale(a):s.locale(a)},id=(e,t,n)=>{const a=e.year();if(!n?.(e.toDate()))return e.locale(t);const o=e.month();if(!ld(e,a,o,t).every(n))return Sl(e,a,o,t,n);for(let s=0;s<12;s++)if(!ld(e,a,s,t).every(n))return Sl(e,a,s,t,n);return e},Cl=(e,t,n,a)=>{if(ye(e))return e.map(o=>Cl(o,t,n,a));if(Le(e)){const o=a?.value?st(e):st(e,t);if(!o.isValid())return o}return st(e,t).locale(n)},$z=Ce({...wm,showWeekNumber:Boolean,selectionMode:Cm("date")}),Oz=["changerange","pick","select"],ud=(e="")=>["normal","today"].includes(e),Rz=(e,t)=>{const{lang:n}=Ct(),a=M(),o=M(),s=M(),r=M(),l=M([[],[],[],[],[],[]]);let u=!1;const c=e.date.$locale().weekStart||7,d=e.date.locale("en").localeData().weekdaysShort().map(L=>L.toLowerCase()),f=w(()=>c>3?7-c:-c),v=w(()=>{const L=e.date.startOf("month");return L.subtract(L.day()||7,"day")}),g=w(()=>d.concat(d).slice(c,c+7)),p=w(()=>Yc(i(S)).some(L=>L.isCurrent)),h=w(()=>{const L=e.date.startOf("month");return{startOfMonthDay:L.day()||7,dateCountOfMonth:L.daysInMonth(),dateCountOfLastMonth:L.subtract(1,"month").daysInMonth()}}),m=w(()=>e.selectionMode==="dates"?Zn(e.parsedValue):[]),b=(L,{count:D,rowIndex:F,columnIndex:q})=>{const{startOfMonthDay:j,dateCountOfMonth:X,dateCountOfLastMonth:Q}=i(h),he=i(f);if(F>=0&&F<=1){const ue=j+he<0?7+j+he:j+he;if(q+F*7>=ue)return L.text=D,!0;L.text=Q-(ue-q%7)+1+F*7,L.type="prev-month"}else return D<=X?L.text=D:(L.text=D-X,L.type="next-month"),!0;return!1},k=(L,{columnIndex:D,rowIndex:F},q)=>{const{disabledDate:j,cellClassName:X}=e,Q=i(m),he=b(L,{count:q,rowIndex:F,columnIndex:D}),ue=L.dayjs.toDate();return L.selected=Q.find(ge=>ge.isSame(L.dayjs,"day")),L.isSelected=!!L.selected,L.isCurrent=E(L),L.disabled=j?.(ue),L.customClass=X?.(ue),he},y=L=>{if(e.selectionMode==="week"){const[D,F]=e.showWeekNumber?[1,7]:[0,6],q=I(L[D+1]);L[D].inRange=q,L[D].start=q,L[F].inRange=q,L[F].end=q}},S=w(()=>{const{minDate:L,maxDate:D,rangeState:F,showWeekNumber:q}=e,j=i(f),X=i(l),Q="day";let he=1;if(Tz({row:6,column:7},X,{startDate:L,columnIndexOffset:q?1:0,nextEndDate:F.endDate||D||F.selecting&&L||null,now:st().locale(i(n)).startOf(Q),unit:Q,relativeDateGetter:ue=>i(v).add(ue-j,Q),setCellMetadata:(...ue)=>{k(...ue,he)&&(he+=1)},setRowMetadata:y}),q)for(let ue=0;ue<6;ue++)X[ue][1].dayjs&&(X[ue][0]={type:"week",text:X[ue][1].dayjs.week()});return X});le(()=>e.date,async()=>{i(a)?.contains(document.activeElement)&&(await Re(),await C())});const C=async()=>i(o)?.focus(),E=L=>e.selectionMode==="date"&&ud(L.type)&&$(L,e.parsedValue),$=(L,D)=>D?st(D).locale(i(n)).isSame(e.date.date(Number(L.text)),"day"):!1,O=(L,D)=>{const F=i(h).startOfMonthDay,q=i(f),j=F+q<0?7+F+q:F+q,X=L*7+(D-(e.showWeekNumber?1:0));return e.date.startOf("month").subtract(j,"day").add(X,"day")},N=L=>{if(!e.rangeState.selecting)return;let D=L.target;if(D.tagName==="SPAN"&&(D=D.parentNode?.parentNode),D.tagName==="DIV"&&(D=D.parentNode),D.tagName!=="TD")return;const F=D.parentNode.rowIndex-1,q=D.cellIndex;i(S)[F][q].disabled||(F!==i(s)||q!==i(r))&&(s.value=F,r.value=q,t("changerange",{selecting:!0,endDate:O(F,q)}))},R=L=>!i(p)&&L?.text===1&&ud(L.type)||L.isCurrent,A=L=>{u||i(p)||e.selectionMode!=="date"||P(L,!0)},_=L=>{L.target.closest("td")&&(u=!0)},V=L=>{L.target.closest("td")&&(u=!1)},H=L=>{!e.rangeState.selecting||!e.minDate?(t("pick",{minDate:L,maxDate:null}),t("select",!0)):(L>=e.minDate?t("pick",{minDate:e.minDate,maxDate:L}):t("pick",{minDate:L,maxDate:e.minDate}),t("select",!1))},U=L=>{const D=L.week(),F=`${L.year()}w${D}`;t("pick",{year:L.year(),week:D,value:F,date:L.startOf("week")})},W=(L,D)=>{t("pick",D?Zn(e.parsedValue).filter(F=>F?.valueOf()!==L.valueOf()):Zn(e.parsedValue).concat([L]))},P=(L,D=!1)=>{if(e.disabled)return;const F=L.target.closest("td");if(!F)return;const q=F.parentNode.rowIndex-1,j=F.cellIndex,X=i(S)[q][j];if(X.disabled||X.type==="week")return;const Q=O(q,j);switch(e.selectionMode){case"range":H(Q);break;case"date":t("pick",Q,D);break;case"week":U(Q);break;case"dates":W(Q,!!X.selected);break}},I=L=>{if(e.selectionMode!=="week")return!1;let D=e.date.startOf("day");if(L.type==="prev-month"&&(D=D.subtract(1,"month")),L.type==="next-month"&&(D=D.add(1,"month")),D=D.date(Number.parseInt(L.text,10)),e.parsedValue&&!ye(e.parsedValue)){const F=(e.parsedValue.day()-c+7)%7-1;return e.parsedValue.subtract(F,"day").isSame(D,"day")}return!1};return{WEEKS:g,rows:S,tbodyRef:a,currentCellRef:o,focus:C,isCurrent:E,isWeekActive:I,isSelectedCell:R,handlePickDate:P,handleMouseUp:V,handleMouseDown:_,handleMouseMove:N,handleFocus:A}},Nz=(e,{isCurrent:t,isWeekActive:n})=>{const a=fe("date-table"),{t:o}=Ct(),s=w(()=>[a.b(),a.is("week-mode",e.selectionMode==="week"&&!e.disabled)]),r=w(()=>o("el.datepicker.dateTablePrompt")),l=c=>{const d=[];return ud(c.type)&&!c.disabled?(d.push("available"),c.type==="today"&&d.push("today")):d.push(c.type),t(c)&&d.push("current"),c.inRange&&(ud(c.type)||e.selectionMode==="week")&&(d.push("in-range"),c.start&&d.push("start-date"),c.end&&d.push("end-date")),(c.disabled||e.disabled)&&d.push("disabled"),c.selected&&d.push("selected"),c.customClass&&d.push(c.customClass),d.join(" ")},u=c=>[a.e("row"),{current:n(c)}];return{tableKls:s,tableLabel:r,weekHeaderClass:a.e("week-header"),getCellClasses:l,getRowKls:u,t:o}},Iz=Ce({cell:{type:G(Object)}});var km=se({name:"ElDatePickerCell",props:Iz,setup(e){const t=fe("date-table-cell"),{slots:n}=_e(ym);return()=>{const{cell:a}=e;return ee(n,"default",{...a},()=>[Y("div",{class:t.b()},[Y("span",{class:t.e("text")},[a?.renderText??a?.text])])])}}});const Pz=["aria-label"],Mz=["aria-label"],_z=["aria-current","aria-selected","tabindex","aria-disabled"];var Az=se({__name:"basic-date-table",props:$z,emits:Oz,setup(e,{expose:t,emit:n}){const a=e,{WEEKS:o,rows:s,tbodyRef:r,currentCellRef:l,focus:u,isCurrent:c,isWeekActive:d,isSelectedCell:f,handlePickDate:v,handleMouseUp:g,handleMouseDown:p,handleMouseMove:h,handleFocus:m}=Rz(a,n),{tableLabel:b,tableKls:k,getCellClasses:y,getRowKls:S,weekHeaderClass:C,t:E}=Nz(a,{isCurrent:c,isWeekActive:d});let $=!1;return Bt(()=>{$=!0}),t({focus:u}),(O,N)=>(x(),B("table",{"aria-label":i(b),class:T(i(k)),cellspacing:"0",cellpadding:"0",role:"grid",onClick:N[1]||(N[1]=(...R)=>i(v)&&i(v)(...R)),onMousemove:N[2]||(N[2]=(...R)=>i(h)&&i(h)(...R)),onMousedown:N[3]||(N[3]=(...R)=>i(p)&&i(p)(...R)),onMouseup:N[4]||(N[4]=(...R)=>i(g)&&i(g)(...R))},[z("tbody",{ref_key:"tbodyRef",ref:r},[z("tr",null,[O.showWeekNumber?(x(),B("th",{key:0,scope:"col",class:T(i(C))},null,2)):te("v-if",!0),(x(!0),B(Fe,null,gt(i(o),(R,A)=>(x(),B("th",{key:A,"aria-label":i(E)("el.datepicker.weeksFull."+R),scope:"col"},Se(i(E)("el.datepicker.weeks."+R)),9,Mz))),128))]),(x(!0),B(Fe,null,gt(i(s),(R,A)=>(x(),B("tr",{key:A,class:T(i(S)(O.showWeekNumber?R[2]:R[1]))},[(x(!0),B(Fe,null,gt(R,(_,V)=>(x(),B("td",{key:`${A}.${V}`,ref_for:!0,ref:H=>!i($)&&i(f)(_)&&(l.value=H),class:T(i(y)(_)),"aria-current":_.isCurrent?"date":void 0,"aria-selected":_.isCurrent,tabindex:O.disabled?void 0:i(f)(_)?0:-1,"aria-disabled":O.disabled,onFocus:N[0]||(N[0]=(...H)=>i(m)&&i(m)(...H))},[Y(i(km),{cell:_},null,8,["cell"])],42,_z))),128))],2))),128))],512)],42,Pz))}}),mh=Az;const Lz=Ce({...wm,selectionMode:Cm("month")}),Dz=["aria-label"],Bz=["aria-selected","aria-label","tabindex","onKeydown"];var Fz=se({__name:"basic-month-table",props:Lz,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("month-table"),{t:r,lang:l}=Ct(),u=M(),c=M(),d=M(a.date.locale("en").localeData().monthsShort().map(S=>S.toLowerCase())),f=M([[],[],[]]),v=M(),g=M(),p=w(()=>{const S=f.value,C=st().locale(l.value).startOf("month");for(let E=0;E<3;E++){const $=S[E];for(let O=0;O<4;O++){const N=$[O]||={row:E,column:O,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1,isSelected:!1,customClass:void 0,date:void 0,dayjs:void 0,isCurrent:void 0,selected:void 0,renderText:void 0,timestamp:void 0};N.type="normal";const R=E*4+O,A=a.date.startOf("year").month(R),_=a.rangeState.endDate||a.maxDate||a.rangeState.selecting&&a.minDate||null;N.inRange=!!(a.minDate&&A.isSameOrAfter(a.minDate,"month")&&_&&A.isSameOrBefore(_,"month"))||!!(a.minDate&&A.isSameOrBefore(a.minDate,"month")&&_&&A.isSameOrAfter(_,"month")),a.minDate?.isSameOrAfter(_)?(N.start=!!(_&&A.isSame(_,"month")),N.end=a.minDate&&A.isSame(a.minDate,"month")):(N.start=!!(a.minDate&&A.isSame(a.minDate,"month")),N.end=!!(_&&A.isSame(_,"month"))),C.isSame(A)&&(N.type="today");const V=A.toDate();N.text=R,N.disabled=a.disabledDate?.(V)||!1,N.date=V,N.customClass=a.cellClassName?.(V),N.dayjs=A,N.timestamp=A.valueOf(),N.isSelected=b(N)}}return S}),h=()=>{c.value?.focus()},m=S=>{const C={},E=a.date.year(),$=new Date,O=S.text;return C.disabled=a.disabled||(a.disabledDate?ld(a.date,E,O,l.value).every(a.disabledDate):!1),C.current=Zn(a.parsedValue).some(N=>st.isDayjs(N)&&N.year()===E&&N.month()===O),C.today=$.getFullYear()===E&&$.getMonth()===O,S.customClass&&(C[S.customClass]=!0),S.inRange&&(C["in-range"]=!0,S.start&&(C["start-date"]=!0),S.end&&(C["end-date"]=!0)),C},b=S=>{const C=a.date.year(),E=S.text;return Zn(a.date).some($=>$.year()===C&&$.month()===E)},k=S=>{if(!a.rangeState.selecting)return;let C=S.target;if(C.tagName==="SPAN"&&(C=C.parentNode?.parentNode),C.tagName==="DIV"&&(C=C.parentNode),C.tagName!=="TD")return;const E=C.parentNode.rowIndex,$=C.cellIndex;p.value[E][$].disabled||(E!==v.value||$!==g.value)&&(v.value=E,g.value=$,o("changerange",{selecting:!0,endDate:a.date.startOf("year").month(E*4+$)}))},y=S=>{if(a.disabled)return;const C=S.target?.closest("td");if(C?.tagName!=="TD"||$o(C,"disabled"))return;const E=C.cellIndex,$=C.parentNode.rowIndex*4+E,O=a.date.startOf("year").month($);if(a.selectionMode==="months"){if(S.type==="keydown"){o("pick",Zn(a.parsedValue),!1);return}const N=Sl(a.date,a.date.year(),$,l.value,a.disabledDate);o("pick",$o(C,"current")?Zn(a.parsedValue).filter(R=>R?.year()!==N.year()||R?.month()!==N.month()):Zn(a.parsedValue).concat([st(N)]))}else a.selectionMode==="range"?a.rangeState.selecting?(a.minDate&&O>=a.minDate?o("pick",{minDate:a.minDate,maxDate:O}):o("pick",{minDate:O,maxDate:a.minDate}),o("select",!1)):(o("pick",{minDate:O,maxDate:null}),o("select",!0)):o("pick",$)};return le(()=>a.date,async()=>{u.value?.contains(document.activeElement)&&(await Re(),c.value?.focus())}),t({focus:h}),(S,C)=>(x(),B("table",{role:"grid","aria-label":i(r)("el.datepicker.monthTablePrompt"),class:T(i(s).b()),onClick:y,onMousemove:k},[z("tbody",{ref_key:"tbodyRef",ref:u},[(x(!0),B(Fe,null,gt(p.value,(E,$)=>(x(),B("tr",{key:$},[(x(!0),B(Fe,null,gt(E,(O,N)=>(x(),B("td",{key:N,ref_for:!0,ref:R=>O.isSelected&&(c.value=R),class:T(m(O)),"aria-selected":!!O.isSelected,"aria-label":i(r)(`el.datepicker.month${+O.text+1}`),tabindex:O.isSelected?0:-1,onKeydown:[on(Xe(y,["prevent","stop"]),["space"]),on(Xe(y,["prevent","stop"]),["enter"])]},[Y(i(km),{cell:{...O,renderText:i(r)("el.datepicker.months."+d.value[O.text])}},null,8,["cell"])],42,Bz))),128))]))),128))],512)],42,Dz))}}),Bi=Fz;const Vz=Ce({...wm,selectionMode:Cm("year")}),zz=["aria-label"],Hz=["aria-selected","aria-label","tabindex","onKeydown"];var Kz=se({__name:"basic-year-table",props:Vz,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const a=(C,E)=>{const $=st(String(C)).locale(E).startOf("year");return _s($.endOf("year").dayOfYear()).map(O=>$.add(O,"day").toDate())},o=e,s=n,r=fe("year-table"),{t:l,lang:u}=Ct(),c=M(),d=M(),f=w(()=>Math.floor(o.date.year()/10)*10),v=M([[],[],[]]),g=M(),p=M(),h=w(()=>{const C=v.value,E=st().locale(u.value).startOf("year");for(let $=0;$<3;$++){const O=C[$];for(let N=0;N<4&&!($*4+N>=10);N++){let R=O[N];R||(R={row:$,column:N,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1,isSelected:!1,customClass:void 0,date:void 0,dayjs:void 0,isCurrent:void 0,selected:void 0,renderText:void 0,timestamp:void 0}),R.type="normal";const A=$*4+N+f.value,_=st().year(A),V=o.rangeState.endDate||o.maxDate||o.rangeState.selecting&&o.minDate||null;R.inRange=!!(o.minDate&&_.isSameOrAfter(o.minDate,"year")&&V&&_.isSameOrBefore(V,"year"))||!!(o.minDate&&_.isSameOrBefore(o.minDate,"year")&&V&&_.isSameOrAfter(V,"year")),o.minDate?.isSameOrAfter(V)?(R.start=!!(V&&_.isSame(V,"year")),R.end=!!(o.minDate&&_.isSame(o.minDate,"year"))):(R.start=!!(o.minDate&&_.isSame(o.minDate,"year")),R.end=!!(V&&_.isSame(V,"year"))),E.isSame(_)&&(R.type="today"),R.text=A;const H=_.toDate();R.disabled=o.disabledDate?.(H)||!1,R.date=H,R.customClass=o.cellClassName?.(H),R.dayjs=_,R.timestamp=_.valueOf(),R.isSelected=k(R),O[N]=R}}return C}),m=()=>{d.value?.focus()},b=C=>{const E={},$=st().locale(u.value),O=C.text;return E.disabled=o.disabled||(o.disabledDate?a(O,u.value).every(o.disabledDate):!1),E.today=$.year()===O,E.current=Zn(o.parsedValue).some(N=>N.year()===O),C.customClass&&(E[C.customClass]=!0),C.inRange&&(E["in-range"]=!0,C.start&&(E["start-date"]=!0),C.end&&(E["end-date"]=!0)),E},k=C=>{const E=C.text;return Zn(o.date).some($=>$.year()===E)},y=C=>{if(o.disabled)return;const E=C.target?.closest("td");if(!E||!E.textContent||$o(E,"disabled"))return;const $=E.cellIndex,O=E.parentNode.rowIndex*4+$+f.value,N=st().year(O);if(o.selectionMode==="range")o.rangeState.selecting?(o.minDate&&N>=o.minDate?s("pick",{minDate:o.minDate,maxDate:N}):s("pick",{minDate:N,maxDate:o.minDate}),s("select",!1)):(s("pick",{minDate:N,maxDate:null}),s("select",!0));else if(o.selectionMode==="years"){if(C.type==="keydown"){s("pick",Zn(o.parsedValue),!1);return}const R=id(N.startOf("year"),u.value,o.disabledDate);s("pick",$o(E,"current")?Zn(o.parsedValue).filter(A=>A?.year()!==O):Zn(o.parsedValue).concat([R]))}else s("pick",O)},S=C=>{if(!o.rangeState.selecting)return;const E=C.target?.closest("td");if(!E)return;const $=E.parentNode.rowIndex,O=E.cellIndex;h.value[$][O].disabled||($!==g.value||O!==p.value)&&(g.value=$,p.value=O,s("changerange",{selecting:!0,endDate:st().year(f.value).add($*4+O,"year")}))};return le(()=>o.date,async()=>{c.value?.contains(document.activeElement)&&(await Re(),d.value?.focus())}),t({focus:m}),(C,E)=>(x(),B("table",{role:"grid","aria-label":i(l)("el.datepicker.yearTablePrompt"),class:T(i(r).b()),onClick:y,onMousemove:S},[z("tbody",{ref_key:"tbodyRef",ref:c},[(x(!0),B(Fe,null,gt(h.value,($,O)=>(x(),B("tr",{key:O},[(x(!0),B(Fe,null,gt($,(N,R)=>(x(),B("td",{key:`${O}_${R}`,ref_for:!0,ref:A=>N.isSelected&&(d.value=A),class:T(["available",b(N)]),"aria-selected":N.isSelected,"aria-label":String(N.text),tabindex:N.isSelected?0:-1,onKeydown:[on(Xe(y,["prevent","stop"]),["space"]),on(Xe(y,["prevent","stop"]),["enter"])]},[Y(i(km),{cell:N},null,8,["cell"])],42,Hz))),128))]))),128))],512)],42,zz))}}),Fi=Kz;const Wz=["disabled","onClick"],jz=["aria-label","disabled"],Uz=["aria-label","disabled"],qz=["tabindex","aria-disabled"],Yz=["tabindex","aria-disabled"],Gz=["aria-label","disabled"],Xz=["aria-label","disabled"];var Jz=se({__name:"panel-date-pick",props:xz,emits:["pick","set-picker-option","panel-change"],setup(e,{emit:t}){const n=(be,ze,de)=>!0,a=e,o=t,s=fe("picker-panel"),r=fe("date-picker"),l=fs(),u=vn(),{t:c,lang:d}=Ct(),f=_e(oo),v=_e(wu,void 0),{shortcuts:g,disabledDate:p,cellClassName:h,defaultTime:m}=f.props,b=Vt(f.props,"defaultValue"),k=M(),y=M(st().locale(d.value)),S=M(!1);let C=!1;const E=w(()=>st(m).locale(d.value)),$=w(()=>y.value.month()),O=w(()=>y.value.year()),N=M([]),R=M(null),A=M(null),_=be=>N.value.length>0?n(be,N.value,a.format||"HH:mm:ss"):!0,V=be=>m&&!Ne.value&&!S.value&&!C?E.value.year(be.year()).month(be.month()).date(be.date()):ie.value?be.millisecond(0):be.startOf("day"),H=(be,...ze)=>{be?ye(be)?o("pick",be.map(V),...ze):o("pick",V(be),...ze):o("pick",be,...ze),R.value=null,A.value=null,S.value=!1,C=!1},U=async(be,ze)=>{if(F.value==="date"&&st.isDayjs(be)){const de=jl(a.parsedValue);let Ge=de?de.year(be.year()).month(be.month()).date(be.date()):be;_(Ge),y.value=Ge,H(Ge,ie.value||ze)}else F.value==="week"?H(be.date):F.value==="dates"&&H(be,!0)},W=be=>{const ze=be?"add":"subtract";y.value=y.value[ze](1,"month"),kt("month")},P=be=>{const ze=y.value,de=be?"add":"subtract";y.value=I.value==="year"?ze[de](10,"year"):ze[de](1,"year"),kt("year")},I=M("date"),L=w(()=>{const be=c("el.datepicker.year");if(I.value==="year"){const ze=Math.floor(O.value/10)*10;return be?`${ze} ${be} - ${ze+9} ${be}`:`${ze} - ${ze+9}`}return`${O.value} ${be}`}),D=be=>{const ze=Ve(be.value)?be.value():be.value;if(ze){C=!0,H(st(ze).locale(d.value));return}be.onClick&&be.onClick({attrs:l,slots:u,emit:o})},F=w(()=>{const{type:be}=a;return["week","month","months","year","years","dates"].includes(be)?be:"date"}),q=w(()=>F.value==="dates"||F.value==="months"||F.value==="years"),j=w(()=>F.value==="date"?I.value:F.value),X=w(()=>!!g.length),Q=async(be,ze)=>{F.value==="month"?(y.value=Sl(y.value,y.value.year(),be,d.value,p),H(y.value,!1)):F.value==="months"?H(be,ze??!0):(y.value=Sl(y.value,y.value.year(),be,d.value,p),I.value="date",["month","year","date","week"].includes(F.value)&&(H(y.value,!0),await Re(),Rt())),kt("month")},he=async(be,ze)=>{F.value==="year"?(y.value=id(y.value.startOf("year").year(be),d.value,p),H(y.value,!1)):F.value==="years"?H(be,ze??!0):(y.value=id(y.value.year(be),d.value,p),I.value="month",["month","year","date","week"].includes(F.value)&&(H(y.value,!0),await Re(),Rt())),kt("year")},ue=un(),ge=async be=>{ue.value||(I.value=be,await Re(),Rt())},ie=w(()=>a.type==="datetime"||a.type==="datetimerange"),ae=w(()=>{const be=ie.value||F.value==="dates",ze=F.value==="years",de=F.value==="months",Ge=I.value==="date",$t=I.value==="year",tn=I.value==="month";return be&&Ge||ze&&$t||de&&tn}),ne=w(()=>!q.value&&a.showNow||a.showConfirm),K=w(()=>p?a.parsedValue?ye(a.parsedValue)?p(a.parsedValue[0].toDate()):p(a.parsedValue.toDate()):!0:!1),Z=()=>{if(q.value)H(a.parsedValue);else{let be=jl(a.parsedValue);if(!be){const ze=st(m).locale(d.value),de=je();be=ze.year(de.year()).month(de.month()).date(de.date())}y.value=be,H(be)}},re=w(()=>p?p(st().locale(d.value).toDate()):!1),ce=()=>{const be=st().locale(d.value).toDate();S.value=!0,(!p||!p(be))&&_(be)&&(y.value=st().locale(d.value),H(y.value))},ve=w(()=>a.timeFormat||gk(a.format)||wl),ke=w(()=>a.dateFormat||mk(a.format)||Os),Ne=w(()=>{if(A.value)return A.value;if(!(!a.parsedValue&&!b.value))return(jl(a.parsedValue)||y.value).format(ve.value)}),Ie=w(()=>{if(R.value)return R.value;if(!(!a.parsedValue&&!b.value))return(jl(a.parsedValue)||y.value).format(ke.value)}),$e=M(!1),pe=()=>{$e.value=!0},Ee=()=>{$e.value=!1},me=be=>({hour:be.hour(),minute:be.minute(),second:be.second(),year:be.year(),month:be.month(),date:be.date()}),Me=(be,ze,de)=>{const{hour:Ge,minute:$t,second:tn}=me(be),_n=jl(a.parsedValue);y.value=_n?_n.hour(Ge).minute($t).second(tn):be,H(y.value,!0),de||($e.value=ze)},We=be=>{const ze=st(be,ve.value).locale(d.value);if(ze.isValid()&&_(ze)){const{year:de,month:Ge,date:$t}=me(y.value);y.value=ze.year(de).month(Ge).date($t),A.value=null,$e.value=!1,H(y.value,!0)}},Ze=be=>{const ze=Cl(be,ke.value,d.value,v);if(ze.isValid()){if(p&&p(ze.toDate()))return;const{hour:de,minute:Ge,second:$t}=me(y.value);y.value=ze.hour(de).minute(Ge).second($t),R.value=null,H(y.value,!0)}},Pe=be=>st.isDayjs(be)&&be.isValid()&&(p?!p(be.toDate()):!0),Ae=be=>Cl(be,a.format,d.value,v),je=()=>{const be=st(b.value).locale(d.value);if(!b.value){const ze=E.value;return st().hour(ze.hour()).minute(ze.minute()).second(ze.second()).locale(d.value)}return be},Rt=()=>{["week","month","year","date"].includes(F.value)&&k.value?.focus()},Ue=()=>{Rt(),F.value==="week"&&mt(we.down)},lt=be=>{const ze=jt(be);[we.up,we.down,we.left,we.right,we.home,we.end,we.pageUp,we.pageDown].includes(ze)&&(mt(ze),be.stopPropagation(),be.preventDefault()),[we.enter,we.space,we.numpadEnter].includes(ze)&&R.value===null&&A.value===null&&(be.preventDefault(),H(y.value,!1))},mt=be=>{const{up:ze,down:de,left:Ge,right:$t,home:tn,end:_n,pageUp:Be,pageDown:nt}=we,ct={year:{[ze]:-4,[de]:4,[Ge]:-1,[$t]:1,offset:(Wt,yn)=>Wt.setFullYear(Wt.getFullYear()+yn)},month:{[ze]:-4,[de]:4,[Ge]:-1,[$t]:1,offset:(Wt,yn)=>Wt.setMonth(Wt.getMonth()+yn)},week:{[ze]:-1,[de]:1,[Ge]:-1,[$t]:1,offset:(Wt,yn)=>Wt.setDate(Wt.getDate()+yn*7)},date:{[ze]:-7,[de]:7,[Ge]:-1,[$t]:1,[tn]:Wt=>-Wt.getDay(),[_n]:Wt=>-Wt.getDay()+6,[Be]:Wt=>-new Date(Wt.getFullYear(),Wt.getMonth(),0).getDate(),[nt]:Wt=>new Date(Wt.getFullYear(),Wt.getMonth()+1,0).getDate(),offset:(Wt,yn)=>Wt.setDate(Wt.getDate()+yn)}},kn=y.value.toDate();for(;Math.abs(y.value.diff(kn,"year",!0))<1;){const Wt=ct[j.value];if(!Wt)return;if(Wt.offset(kn,Ve(Wt[be])?Wt[be](kn):Wt[be]??0),p&&p(kn))break;const yn=st(kn).locale(d.value);y.value=yn,o("pick",yn,!0);break}},kt=be=>{o("panel-change",y.value.toDate(),be,I.value)};return le(()=>F.value,be=>{if(["month","year"].includes(be)){I.value=be;return}else if(be==="years"){I.value="year";return}else if(be==="months"){I.value="month";return}I.value="date"},{immediate:!0}),le(()=>b.value,be=>{be&&(y.value=je())},{immediate:!0}),le(()=>a.parsedValue,be=>{if(be){if(q.value||ye(be))return;y.value=be}else y.value=je()},{immediate:!0}),o("set-picker-option",["isValidValue",Pe]),o("set-picker-option",["parseUserInput",Ae]),o("set-picker-option",["handleFocusPicker",Ue]),(be,ze)=>(x(),B("div",{class:T([i(s).b(),i(r).b(),i(s).is("border",be.border),i(s).is("disabled",i(ue)),{"has-sidebar":be.$slots.sidebar||X.value,"has-time":ie.value}])},[z("div",{class:T(i(s).e("body-wrapper"))},[ee(be.$slots,"sidebar",{class:T(i(s).e("sidebar"))}),X.value?(x(),B("div",{key:0,class:T(i(s).e("sidebar"))},[(x(!0),B(Fe,null,gt(i(g),(de,Ge)=>(x(),B("button",{key:Ge,type:"button",disabled:i(ue),class:T(i(s).e("shortcut")),onClick:$t=>D(de)},Se(de.text),11,Wz))),128))],2)):te("v-if",!0),z("div",{class:T(i(s).e("body"))},[ie.value?(x(),B("div",{key:0,class:T(i(r).e("time-header"))},[z("span",{class:T(i(r).e("editor-wrap"))},[Y(i(ea),{placeholder:i(c)("el.datepicker.selectDate"),"model-value":Ie.value,size:"small","validate-event":!1,disabled:i(ue),readonly:!be.editable,onInput:ze[0]||(ze[0]=de=>R.value=de),onChange:Ze},null,8,["placeholder","model-value","disabled","readonly"])],2),ut((x(),B("span",{class:T(i(r).e("editor-wrap"))},[Y(i(ea),{placeholder:i(c)("el.datepicker.selectTime"),"model-value":Ne.value,size:"small","validate-event":!1,disabled:i(ue),readonly:!be.editable,onFocus:pe,onInput:ze[1]||(ze[1]=de=>A.value=de),onChange:We},null,8,["placeholder","model-value","disabled","readonly"]),Y(i(ad),{visible:$e.value,format:ve.value,"parsed-value":y.value,onPick:Me},null,8,["visible","format","parsed-value"])],2)),[[i(zs),Ee]])],2)):te("v-if",!0),ut(z("div",{class:T([i(r).e("header"),(I.value==="year"||I.value==="month")&&i(r).em("header","bordered")])},[z("span",{class:T(i(r).e("prev-btn"))},[z("button",{type:"button","aria-label":i(c)("el.datepicker.prevYear"),class:T(["d-arrow-left",i(s).e("icon-btn")]),disabled:i(ue),onClick:ze[2]||(ze[2]=de=>P(!1))},[ee(be.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,jz),ut(z("button",{type:"button","aria-label":i(c)("el.datepicker.prevMonth"),class:T([i(s).e("icon-btn"),"arrow-left"]),disabled:i(ue),onClick:ze[3]||(ze[3]=de=>W(!1))},[ee(be.$slots,"prev-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})])],10,Uz),[[Pt,I.value==="date"]])],2),z("span",{role:"button",class:T(i(r).e("header-label")),"aria-live":"polite",tabindex:be.disabled?void 0:0,"aria-disabled":be.disabled,onKeydown:ze[4]||(ze[4]=on(de=>ge("year"),["enter"])),onClick:ze[5]||(ze[5]=de=>ge("year"))},Se(L.value),43,qz),ut(z("span",{role:"button","aria-live":"polite",tabindex:be.disabled?void 0:0,"aria-disabled":be.disabled,class:T([i(r).e("header-label"),{active:I.value==="month"}]),onKeydown:ze[6]||(ze[6]=on(de=>ge("month"),["enter"])),onClick:ze[7]||(ze[7]=de=>ge("month"))},Se(i(c)(`el.datepicker.month${$.value+1}`)),43,Yz),[[Pt,I.value==="date"]]),z("span",{class:T(i(r).e("next-btn"))},[ut(z("button",{type:"button","aria-label":i(c)("el.datepicker.nextMonth"),class:T([i(s).e("icon-btn"),"arrow-right"]),disabled:i(ue),onClick:ze[8]||(ze[8]=de=>W(!0))},[ee(be.$slots,"next-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})])],10,Gz),[[Pt,I.value==="date"]]),z("button",{type:"button","aria-label":i(c)("el.datepicker.nextYear"),class:T([i(s).e("icon-btn"),"d-arrow-right"]),disabled:i(ue),onClick:ze[9]||(ze[9]=de=>P(!0))},[ee(be.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,Xz)],2)],2),[[Pt,I.value!=="time"]]),z("div",{class:T(i(s).e("content")),onKeydown:lt},[I.value==="date"?(x(),oe(mh,{key:0,ref_key:"currentViewRef",ref:k,"selection-mode":F.value,date:y.value,"parsed-value":be.parsedValue,"disabled-date":i(p),disabled:i(ue),"cell-class-name":i(h),"show-week-number":be.showWeekNumber,onPick:U},null,8,["selection-mode","date","parsed-value","disabled-date","disabled","cell-class-name","show-week-number"])):te("v-if",!0),I.value==="year"?(x(),oe(Fi,{key:1,ref_key:"currentViewRef",ref:k,"selection-mode":F.value,date:y.value,"disabled-date":i(p),disabled:i(ue),"parsed-value":be.parsedValue,"cell-class-name":i(h),onPick:he},null,8,["selection-mode","date","disabled-date","disabled","parsed-value","cell-class-name"])):te("v-if",!0),I.value==="month"?(x(),oe(Bi,{key:2,ref_key:"currentViewRef",ref:k,"selection-mode":F.value,date:y.value,"parsed-value":be.parsedValue,"disabled-date":i(p),disabled:i(ue),"cell-class-name":i(h),onPick:Q},null,8,["selection-mode","date","parsed-value","disabled-date","disabled","cell-class-name"])):te("v-if",!0)],34)],2)],2),be.showFooter&&ae.value&&ne.value?(x(),B("div",{key:0,class:T(i(s).e("footer"))},[ut(Y(i(In),{text:"",size:"small",class:T(i(s).e("link-btn")),disabled:re.value,onClick:ce},{default:J(()=>[wt(Se(i(c)("el.datepicker.now")),1)]),_:1},8,["class","disabled"]),[[Pt,!q.value&&be.showNow]]),be.showConfirm?(x(),oe(i(In),{key:0,plain:"",size:"small",class:T(i(s).e("link-btn")),disabled:K.value,onClick:Z},{default:J(()=>[wt(Se(i(c)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])):te("v-if",!0)],2)):te("v-if",!0)],2))}}),Zz=Jz;const Qz=Ce({...b2,...Sm}),eH=e=>{const{emit:t}=ft(),n=fs(),a=vn();return s=>{const r=Ve(s.value)?s.value():s.value;if(r){t("pick",[st(r[0]).locale(e.value),st(r[1]).locale(e.value)]);return}s.onClick&&s.onClick({attrs:n,slots:a,emit:t})}},Em=(e,{defaultValue:t,defaultTime:n,leftDate:a,rightDate:o,step:s,unit:r,sortDates:l})=>{const{emit:u}=ft(),{pickerNs:c}=_e(ym),d=fe("date-range-picker"),{t:f,lang:v}=Ct(),g=eH(v),p=M(),h=M(),m=M({endDate:null,selecting:!1}),b=E=>{m.value=E},k=(E=!1)=>{const $=i(p),O=i(h);Di([$,O])&&u("pick",[$,O],E)},y=E=>{m.value.selecting=E,E||(m.value.endDate=null)},S=E=>{if(ye(E)&&E.length===2){const[$,O]=E;p.value=$,a.value=$,h.value=O,l(i(p),i(h))}else C()},C=()=>{let[E,$]=lf(i(t),{lang:i(v),step:s,unit:r,unlinkPanels:e.unlinkPanels});const O=R=>R.diff(R.startOf("d"),"ms"),N=i(n);if(N){let R=0,A=0;if(ye(N)){const[_,V]=N.map(st);R=O(_),A=O(V)}else{const _=O(st(N));R=_,A=_}E=E.startOf("d").add(R,"ms"),$=$.startOf("d").add(A,"ms")}p.value=void 0,h.value=void 0,a.value=E,o.value=$};return le(t,E=>{E&&C()},{immediate:!0}),le(()=>e.parsedValue,E=>{(!E?.length||!sn(E,[p.value,h.value]))&&S(E)},{immediate:!0}),le(()=>e.visible,()=>{e.visible&&S(e.parsedValue)},{immediate:!0}),{minDate:p,maxDate:h,rangeState:m,lang:v,ppNs:c,drpNs:d,handleChangeRange:b,handleRangeConfirm:k,handleShortcutClick:g,onSelect:y,parseValue:S,t:f}},tH=(e,t,n,a)=>{const o=M("date"),s=M(),r=M("date"),l=M(),{disabledDate:u}=_e(oo).props,{t:c,lang:d}=Ct(),f=w(()=>n.value.year()),v=w(()=>n.value.month()),g=w(()=>a.value.year()),p=w(()=>a.value.month());function h(C,E){const $=c("el.datepicker.year");if(C.value==="year"){const O=Math.floor(E.value/10)*10;return $?`${O} ${$} - ${O+9} ${$}`:`${O} - ${O+9}`}return`${E.value} ${$}`}function m(C){C?.focus()}async function b(C,E){if(e.disabled)return;const $=C==="left"?o:r,O=C==="left"?s:l;$.value=E,await Re(),m(O.value)}async function k(C,E,$){if(e.disabled)return;const O=E==="left",N=O?n:a,R=O?a:n,A=O?o:r,_=O?s:l;C==="year"&&(N.value=id(N.value.year($),d.value,u)),C==="month"&&(N.value=Sl(N.value,N.value.year(),$,d.value,u)),e.unlinkPanels||(R.value=E==="left"?N.value.add(1,"month"):N.value.subtract(1,"month")),A.value=C==="year"?"month":"date",await Re(),m(_.value),y(C)}function y(C){t("panel-change",[n.value.toDate(),a.value.toDate()],C)}function S(C,E,$){const O=$?"add":"subtract";return C==="year"?E[O](10,"year"):E[O](1,"year")}return{leftCurrentView:o,rightCurrentView:r,leftCurrentViewRef:s,rightCurrentViewRef:l,leftYear:f,rightYear:g,leftMonth:v,rightMonth:p,leftYearLabel:w(()=>h(o,f)),rightYearLabel:w(()=>h(r,g)),showLeftPicker:C=>b("left",C),showRightPicker:C=>b("right",C),handleLeftYearPick:C=>k("year","left",C),handleRightYearPick:C=>k("year","right",C),handleLeftMonthPick:C=>k("month","left",C),handleRightMonthPick:C=>k("month","right",C),handlePanelChange:y,adjustDateByView:S}},nH=["disabled","onClick"],aH=["aria-label","disabled"],oH=["aria-label","disabled"],sH=["disabled","aria-label"],rH=["disabled","aria-label"],lH=["tabindex","aria-disabled"],iH=["tabindex","aria-disabled"],uH=["disabled","aria-label"],cH=["disabled","aria-label"],dH=["aria-label","disabled"],fH=["disabled","aria-label"],pH=["tabindex","aria-disabled"],hH=["tabindex","aria-disabled"],Xu="month";var vH=se({__name:"panel-date-range",props:Qz,emits:["pick","set-picker-option","calendar-change","panel-change","clear"],setup(e,{emit:t}){const n=e,a=t,o=_e(oo),s=_e(wu,void 0),{disabledDate:r,cellClassName:l,defaultTime:u,clearable:c}=o.props,d=Vt(o.props,"format"),f=Vt(o.props,"shortcuts"),v=Vt(o.props,"defaultValue"),{lang:g}=Ct(),p=M(st().locale(g.value)),h=M(st().locale(g.value).add(1,Xu)),{minDate:m,maxDate:b,rangeState:k,ppNs:y,drpNs:S,handleChangeRange:C,handleRangeConfirm:E,handleShortcutClick:$,onSelect:O,parseValue:N,t:R}=Em(n,{defaultValue:v,defaultTime:u,leftDate:p,rightDate:h,unit:Xu,sortDates:yn});le(()=>n.visible,Qe=>{!Qe&&k.value.selecting&&(N(n.parsedValue),O(!1))});const A=M({min:null,max:null}),_=M({min:null,max:null}),{leftCurrentView:V,rightCurrentView:H,leftCurrentViewRef:U,rightCurrentViewRef:W,leftYear:P,rightYear:I,leftMonth:L,rightMonth:D,leftYearLabel:F,rightYearLabel:q,showLeftPicker:j,showRightPicker:X,handleLeftYearPick:Q,handleRightYearPick:he,handleLeftMonthPick:ue,handleRightMonthPick:ge,handlePanelChange:ie,adjustDateByView:ae}=tH(n,a,p,h),ne=w(()=>!!f.value.length),K=w(()=>A.value.min!==null?A.value.min:m.value?m.value.format(ke.value):""),Z=w(()=>A.value.max!==null?A.value.max:b.value||m.value?(b.value||m.value).format(ke.value):""),re=w(()=>_.value.min!==null?_.value.min:m.value?m.value.format(ve.value):""),ce=w(()=>_.value.max!==null?_.value.max:b.value||m.value?(b.value||m.value).format(ve.value):""),ve=w(()=>n.timeFormat||gk(d.value||"")||wl),ke=w(()=>n.dateFormat||mk(d.value||"")||Os),Ne=Qe=>Di(Qe)&&(r?!r(Qe[0].toDate())&&!r(Qe[1].toDate()):!0),Ie=()=>{p.value=ae(V.value,p.value,!1),n.unlinkPanels||(h.value=p.value.add(1,"month")),ie("year")},$e=()=>{p.value=p.value.subtract(1,"month"),n.unlinkPanels||(h.value=p.value.add(1,"month")),ie("month")},pe=()=>{n.unlinkPanels?h.value=ae(H.value,h.value,!0):(p.value=ae(H.value,p.value,!0),h.value=p.value.add(1,"month")),ie("year")},Ee=()=>{n.unlinkPanels?h.value=h.value.add(1,"month"):(p.value=p.value.add(1,"month"),h.value=p.value.add(1,"month")),ie("month")},me=()=>{p.value=ae(V.value,p.value,!0),ie("year")},Me=()=>{p.value=p.value.add(1,"month"),ie("month")},We=()=>{h.value=ae(H.value,h.value,!1),ie("year")},Ze=()=>{h.value=h.value.subtract(1,"month"),ie("month")},Pe=w(()=>{const Qe=(L.value+1)%12,tt=L.value+1>=12?1:0;return n.unlinkPanels&&new Date(P.value+tt,Qe)n.unlinkPanels&&I.value*12+D.value-(P.value*12+L.value+1)>=12),je=un(),Rt=w(()=>!(m.value&&b.value&&!k.value.selecting&&Di([m.value,b.value])&&!je.value)),Ue=w(()=>n.type==="datetime"||n.type==="datetimerange"),lt=(Qe,tt)=>{if(Qe)return u?st(u[tt]||u).locale(g.value).year(Qe.year()).month(Qe.month()).date(Qe.date()):Qe},mt=(Qe,tt=!0)=>{const bt=Qe.minDate,oa=Qe.maxDate,ho=lt(bt,0),Wa=lt(oa,1);b.value===Wa&&m.value===ho||(a("calendar-change",[bt.toDate(),oa&&oa.toDate()]),b.value=Wa,m.value=ho,!Ue.value&&tt&&(tt=!ho||!Wa),E(tt))},kt=M(!1),be=M(!1),ze=()=>{kt.value=!1},de=()=>{be.value=!1},Ge=(Qe,tt)=>{A.value[tt]=Qe;const bt=st(Qe,ke.value).locale(g.value);if(bt.isValid()){if(r&&r(bt.toDate()))return;tt==="min"?(p.value=bt,m.value=(m.value||p.value).year(bt.year()).month(bt.month()).date(bt.date()),!n.unlinkPanels&&(!b.value||b.value.isBefore(m.value))&&(h.value=bt.add(1,"month"),b.value=m.value.add(1,"month"))):(h.value=bt,b.value=(b.value||h.value).year(bt.year()).month(bt.month()).date(bt.date()),!n.unlinkPanels&&(!m.value||m.value.isAfter(b.value))&&(p.value=bt.subtract(1,"month"),m.value=b.value.subtract(1,"month"))),yn(m.value,b.value),E(!0)}},$t=(Qe,tt)=>{A.value[tt]=null},tn=(Qe,tt)=>{_.value[tt]=Qe;const bt=st(Qe,ve.value).locale(g.value);bt.isValid()&&(tt==="min"?(kt.value=!0,m.value=(m.value||p.value).hour(bt.hour()).minute(bt.minute()).second(bt.second()),p.value=m.value):(be.value=!0,b.value=(b.value||h.value).hour(bt.hour()).minute(bt.minute()).second(bt.second()),h.value=b.value))},_n=(Qe,tt)=>{_.value[tt]=null,tt==="min"?(p.value=m.value,kt.value=!1,(!b.value||b.value.isBefore(m.value))&&(b.value=m.value)):(h.value=b.value,be.value=!1,b.value&&b.value.isBefore(m.value)&&(m.value=b.value)),E(!0)},Be=(Qe,tt,bt)=>{_.value.min||(Qe&&(m.value=(m.value||p.value).hour(Qe.hour()).minute(Qe.minute()).second(Qe.second())),bt||(kt.value=tt),(!b.value||b.value.isBefore(m.value))&&(b.value=m.value,h.value=Qe,Re(()=>{N(n.parsedValue)})),E(!0))},nt=(Qe,tt,bt)=>{_.value.max||(Qe&&(b.value=(b.value||h.value).hour(Qe.hour()).minute(Qe.minute()).second(Qe.second())),bt||(be.value=tt),b.value&&b.value.isBefore(m.value)&&(m.value=b.value),E(!0))},ct=()=>{kn(),a("clear")},kn=()=>{let Qe=null;o?.emptyValues&&(Qe=o.emptyValues.valueOnClear.value),p.value=lf(i(v),{lang:i(g),unit:"month",unlinkPanels:n.unlinkPanels})[0],h.value=p.value.add(1,"month"),b.value=void 0,m.value=void 0,E(!0),a("pick",Qe)},Wt=Qe=>Cl(Qe,d.value||"",g.value,s);function yn(Qe,tt){if(n.unlinkPanels&&tt){const bt=Qe?.year()||0,oa=Qe?.month()||0,ho=tt.year(),Wa=tt.month();h.value=bt===ho&&oa===Wa?tt.add(1,Xu):tt}else h.value=p.value.add(1,Xu),tt&&(h.value=h.value.hour(tt.hour()).minute(tt.minute()).second(tt.second()))}return a("set-picker-option",["isValidValue",Ne]),a("set-picker-option",["parseUserInput",Wt]),a("set-picker-option",["handleClear",kn]),(Qe,tt)=>(x(),B("div",{class:T([i(y).b(),i(S).b(),i(y).is("border",Qe.border),i(y).is("disabled",i(je)),{"has-sidebar":Qe.$slots.sidebar||ne.value,"has-time":Ue.value}])},[z("div",{class:T(i(y).e("body-wrapper"))},[ee(Qe.$slots,"sidebar",{class:T(i(y).e("sidebar"))}),ne.value?(x(),B("div",{key:0,class:T(i(y).e("sidebar"))},[(x(!0),B(Fe,null,gt(f.value,(bt,oa)=>(x(),B("button",{key:oa,type:"button",disabled:i(je),class:T(i(y).e("shortcut")),onClick:ho=>i($)(bt)},Se(bt.text),11,nH))),128))],2)):te("v-if",!0),z("div",{class:T(i(y).e("body"))},[Ue.value?(x(),B("div",{key:0,class:T(i(S).e("time-header"))},[z("span",{class:T(i(S).e("editors-wrap"))},[z("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(ea),{size:"small",disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.startDate"),class:T(i(S).e("editor")),"model-value":K.value,"validate-event":!1,readonly:!Qe.editable,onInput:tt[0]||(tt[0]=bt=>Ge(bt,"min")),onChange:tt[1]||(tt[1]=bt=>$t(bt,"min"))},null,8,["disabled","placeholder","class","model-value","readonly"])],2),ut((x(),B("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(ea),{size:"small",class:T(i(S).e("editor")),disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.startTime"),"model-value":re.value,"validate-event":!1,readonly:!Qe.editable,onFocus:tt[2]||(tt[2]=bt=>kt.value=!0),onInput:tt[3]||(tt[3]=bt=>tn(bt,"min")),onChange:tt[4]||(tt[4]=bt=>_n(bt,"min"))},null,8,["class","disabled","placeholder","model-value","readonly"]),Y(i(ad),{visible:kt.value,format:ve.value,"datetime-role":"start","parsed-value":i(m)||p.value,onPick:Be},null,8,["visible","format","parsed-value"])],2)),[[i(zs),ze]])],2),z("span",null,[Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})]),z("span",{class:T([i(S).e("editors-wrap"),"is-right"])},[z("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(ea),{size:"small",class:T(i(S).e("editor")),disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.endDate"),"model-value":Z.value,readonly:!i(m)||!Qe.editable,"validate-event":!1,onInput:tt[5]||(tt[5]=bt=>Ge(bt,"max")),onChange:tt[6]||(tt[6]=bt=>$t(bt,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"])],2),ut((x(),B("span",{class:T(i(S).e("time-picker-wrap"))},[Y(i(ea),{size:"small",class:T(i(S).e("editor")),disabled:i(k).selecting||i(je),placeholder:i(R)("el.datepicker.endTime"),"model-value":ce.value,readonly:!i(m)||!Qe.editable,"validate-event":!1,onFocus:tt[7]||(tt[7]=bt=>i(m)&&(be.value=!0)),onInput:tt[8]||(tt[8]=bt=>tn(bt,"max")),onChange:tt[9]||(tt[9]=bt=>_n(bt,"max"))},null,8,["class","disabled","placeholder","model-value","readonly"]),Y(i(ad),{"datetime-role":"end",visible:be.value,format:ve.value,"parsed-value":i(b)||h.value,onPick:nt},null,8,["visible","format","parsed-value"])],2)),[[i(zs),de]])],2)],2)):te("v-if",!0),z("div",{class:T([[i(y).e("content"),i(S).e("content")],"is-left"])},[z("div",{class:T(i(S).e("header"))},[z("button",{type:"button",class:T([i(y).e("icon-btn"),"d-arrow-left"]),"aria-label":i(R)("el.datepicker.prevYear"),disabled:i(je),onClick:Ie},[ee(Qe.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,aH),ut(z("button",{type:"button",class:T([i(y).e("icon-btn"),"arrow-left"]),"aria-label":i(R)("el.datepicker.prevMonth"),disabled:i(je),onClick:$e},[ee(Qe.$slots,"prev-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})])],10,oH),[[Pt,i(V)==="date"]]),Qe.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!Ae.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Ae.value||i(je))],"d-arrow-right"]),"aria-label":i(R)("el.datepicker.nextYear"),onClick:me},[ee(Qe.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,sH)):te("v-if",!0),Qe.unlinkPanels&&i(V)==="date"?(x(),B("button",{key:1,type:"button",disabled:!Pe.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Pe.value||i(je))],"arrow-right"]),"aria-label":i(R)("el.datepicker.nextMonth"),onClick:Me},[ee(Qe.$slots,"next-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})])],10,rH)):te("v-if",!0),z("div",null,[z("span",{role:"button",class:T(i(S).e("header-label")),"aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,onKeydown:tt[10]||(tt[10]=on(bt=>i(j)("year"),["enter"])),onClick:tt[11]||(tt[11]=bt=>i(j)("year"))},Se(i(F)),43,lH),ut(z("span",{role:"button","aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,class:T([i(S).e("header-label"),{active:i(V)==="month"}]),onKeydown:tt[12]||(tt[12]=on(bt=>i(j)("month"),["enter"])),onClick:tt[13]||(tt[13]=bt=>i(j)("month"))},Se(i(R)(`el.datepicker.month${p.value.month()+1}`)),43,iH),[[Pt,i(V)==="date"]])])],2),i(V)==="date"?(x(),oe(mh,{key:0,ref_key:"leftCurrentViewRef",ref:U,"selection-mode":"range",date:p.value,"min-date":i(m),"max-date":i(b),"range-state":i(k),"disabled-date":i(r),"cell-class-name":i(l),"show-week-number":Qe.showWeekNumber,disabled:i(je),onChangerange:i(C),onPick:mt,onSelect:i(O)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","show-week-number","disabled","onChangerange","onSelect"])):te("v-if",!0),i(V)==="year"?(x(),oe(Fi,{key:1,ref_key:"leftCurrentViewRef",ref:U,"selection-mode":"year",date:p.value,"disabled-date":i(r),"parsed-value":Qe.parsedValue,disabled:i(je),onPick:i(Q)},null,8,["date","disabled-date","parsed-value","disabled","onPick"])):te("v-if",!0),i(V)==="month"?(x(),oe(Bi,{key:2,ref_key:"leftCurrentViewRef",ref:U,"selection-mode":"month",date:p.value,"parsed-value":Qe.parsedValue,"disabled-date":i(r),disabled:i(je),onPick:i(ue)},null,8,["date","parsed-value","disabled-date","disabled","onPick"])):te("v-if",!0)],2),z("div",{class:T([[i(y).e("content"),i(S).e("content")],"is-right"])},[z("div",{class:T(i(S).e("header"))},[Qe.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!Ae.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Ae.value||i(je))],"d-arrow-left"]),"aria-label":i(R)("el.datepicker.prevYear"),onClick:We},[ee(Qe.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,uH)):te("v-if",!0),Qe.unlinkPanels&&i(H)==="date"?(x(),B("button",{key:1,type:"button",disabled:!Pe.value||i(je),class:T([[i(y).e("icon-btn"),i(y).is("disabled",!Pe.value||i(je))],"arrow-left"]),"aria-label":i(R)("el.datepicker.prevMonth"),onClick:Ze},[ee(Qe.$slots,"prev-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})])],10,cH)):te("v-if",!0),z("button",{type:"button","aria-label":i(R)("el.datepicker.nextYear"),class:T([i(y).e("icon-btn"),"d-arrow-right"]),disabled:i(je),onClick:pe},[ee(Qe.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,dH),ut(z("button",{type:"button",class:T([i(y).e("icon-btn"),"arrow-right"]),disabled:i(je),"aria-label":i(R)("el.datepicker.nextMonth"),onClick:Ee},[ee(Qe.$slots,"next-month",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})])],10,fH),[[Pt,i(H)==="date"]]),z("div",null,[z("span",{role:"button",class:T(i(S).e("header-label")),"aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,onKeydown:tt[14]||(tt[14]=on(bt=>i(X)("year"),["enter"])),onClick:tt[15]||(tt[15]=bt=>i(X)("year"))},Se(i(q)),43,pH),ut(z("span",{role:"button","aria-live":"polite",tabindex:Qe.disabled?void 0:0,"aria-disabled":Qe.disabled,class:T([i(S).e("header-label"),{active:i(H)==="month"}]),onKeydown:tt[16]||(tt[16]=on(bt=>i(X)("month"),["enter"])),onClick:tt[17]||(tt[17]=bt=>i(X)("month"))},Se(i(R)(`el.datepicker.month${h.value.month()+1}`)),43,hH),[[Pt,i(H)==="date"]])])],2),i(H)==="date"?(x(),oe(mh,{key:0,ref_key:"rightCurrentViewRef",ref:W,"selection-mode":"range",date:h.value,"min-date":i(m),"max-date":i(b),"range-state":i(k),"disabled-date":i(r),"cell-class-name":i(l),"show-week-number":Qe.showWeekNumber,disabled:i(je),onChangerange:i(C),onPick:mt,onSelect:i(O)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","show-week-number","disabled","onChangerange","onSelect"])):te("v-if",!0),i(H)==="year"?(x(),oe(Fi,{key:1,ref_key:"rightCurrentViewRef",ref:W,"selection-mode":"year",date:h.value,"disabled-date":i(r),"parsed-value":Qe.parsedValue,disabled:i(je),onPick:i(he)},null,8,["date","disabled-date","parsed-value","disabled","onPick"])):te("v-if",!0),i(H)==="month"?(x(),oe(Bi,{key:2,ref_key:"rightCurrentViewRef",ref:W,"selection-mode":"month",date:h.value,"parsed-value":Qe.parsedValue,"disabled-date":i(r),disabled:i(je),onPick:i(ge)},null,8,["date","parsed-value","disabled-date","disabled","onPick"])):te("v-if",!0)],2)],2)],2),Qe.showFooter&&Ue.value&&(Qe.showConfirm||i(c))?(x(),B("div",{key:0,class:T(i(y).e("footer"))},[i(c)?(x(),oe(i(In),{key:0,text:"",size:"small",class:T(i(y).e("link-btn")),onClick:ct},{default:J(()=>[wt(Se(i(R)("el.datepicker.clear")),1)]),_:1},8,["class"])):te("v-if",!0),Qe.showConfirm?(x(),oe(i(In),{key:1,plain:"",size:"small",class:T(i(y).e("link-btn")),disabled:Rt.value,onClick:tt[18]||(tt[18]=bt=>i(E)(!1))},{default:J(()=>[wt(Se(i(R)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])):te("v-if",!0)],2)):te("v-if",!0)],2))}}),mH=vH;const gH=Ce({...Sm}),bH=["pick","set-picker-option","calendar-change"],yH=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const{t:a}=Ct();return{leftPrevYear:()=>{t.value=t.value.subtract(1,"year"),e.value||(n.value=n.value.subtract(1,"year"))},rightNextYear:()=>{e.value||(t.value=t.value.add(1,"year")),n.value=n.value.add(1,"year")},leftNextYear:()=>{t.value=t.value.add(1,"year")},rightPrevYear:()=>{n.value=n.value.subtract(1,"year")},leftLabel:w(()=>`${t.value.year()} ${a("el.datepicker.year")}`),rightLabel:w(()=>`${n.value.year()} ${a("el.datepicker.year")}`),leftYear:w(()=>t.value.year()),rightYear:w(()=>n.value.year()===t.value.year()?t.value.year()+1:n.value.year())}},wH=["disabled","onClick"],SH=["disabled"],CH=["disabled"],kH=["disabled"],EH=["disabled"],Ju="year";var xH=se({name:"DatePickerMonthRange",__name:"panel-month-range",props:gH,emits:bH,setup(e,{emit:t}){const n=e,a=t,{lang:o}=Ct(),s=_e(oo),r=_e(wu,void 0),{shortcuts:l,disabledDate:u,cellClassName:c}=s.props,d=Vt(s.props,"format"),f=Vt(s.props,"defaultValue"),v=M(st().locale(o.value)),g=M(st().locale(o.value).add(1,Ju)),{minDate:p,maxDate:h,rangeState:m,ppNs:b,drpNs:k,handleChangeRange:y,handleRangeConfirm:S,handleShortcutClick:C,onSelect:E,parseValue:$}=Em(n,{defaultValue:f,leftDate:v,rightDate:g,unit:Ju,sortDates:F}),O=w(()=>!!l.length),{leftPrevYear:N,rightNextYear:R,leftNextYear:A,rightPrevYear:_,leftLabel:V,rightLabel:H,leftYear:U,rightYear:W}=yH({unlinkPanels:Vt(n,"unlinkPanels"),leftDate:v,rightDate:g}),P=w(()=>n.unlinkPanels&&W.value>U.value+1),I=(j,X=!0)=>{const Q=j.minDate,he=j.maxDate;h.value===he&&p.value===Q||(a("calendar-change",[Q.toDate(),he&&he.toDate()]),h.value=he,p.value=Q,X&&S())},L=()=>{let j=null;s?.emptyValues&&(j=s.emptyValues.valueOnClear.value),v.value=lf(i(f),{lang:i(o),unit:"year",unlinkPanels:n.unlinkPanels})[0],g.value=v.value.add(1,"year"),a("pick",j)},D=j=>Cl(j,d.value,o.value,r);function F(j,X){n.unlinkPanels&&X?g.value=(j?.year()||0)===X.year()?X.add(1,Ju):X:g.value=v.value.add(1,Ju)}const q=un();return le(()=>n.visible,j=>{!j&&m.value.selecting&&($(n.parsedValue),E(!1))}),a("set-picker-option",["isValidValue",Di]),a("set-picker-option",["parseUserInput",D]),a("set-picker-option",["handleClear",L]),(j,X)=>(x(),B("div",{class:T([i(b).b(),i(k).b(),i(b).is("border",j.border),i(b).is("disabled",i(q)),{"has-sidebar":!!j.$slots.sidebar||O.value}])},[z("div",{class:T(i(b).e("body-wrapper"))},[ee(j.$slots,"sidebar",{class:T(i(b).e("sidebar"))}),O.value?(x(),B("div",{key:0,class:T(i(b).e("sidebar"))},[(x(!0),B(Fe,null,gt(i(l),(Q,he)=>(x(),B("button",{key:he,type:"button",class:T(i(b).e("shortcut")),disabled:i(q),onClick:ue=>i(C)(Q)},Se(Q.text),11,wH))),128))],2)):te("v-if",!0),z("div",{class:T(i(b).e("body"))},[z("div",{class:T([[i(b).e("content"),i(k).e("content")],"is-left"])},[z("div",{class:T(i(k).e("header"))},[z("button",{type:"button",class:T([i(b).e("icon-btn"),"d-arrow-left"]),disabled:i(q),onClick:X[0]||(X[0]=(...Q)=>i(N)&&i(N)(...Q))},[ee(j.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,SH),j.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!P.value||i(q),class:T([[i(b).e("icon-btn"),i(b).is("disabled",!P.value||i(q))],"d-arrow-right"]),onClick:X[1]||(X[1]=(...Q)=>i(A)&&i(A)(...Q))},[ee(j.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,CH)):te("v-if",!0),z("div",null,Se(i(V)),1)],2),Y(Bi,{"selection-mode":"range",date:v.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(u),disabled:i(q),"cell-class-name":i(c),onChangerange:i(y),onPick:I,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2),z("div",{class:T([[i(b).e("content"),i(k).e("content")],"is-right"])},[z("div",{class:T(i(k).e("header"))},[j.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!P.value||i(q),class:T([[i(b).e("icon-btn"),i(b).is("disabled",!P.value||i(q))],"d-arrow-left"]),onClick:X[2]||(X[2]=(...Q)=>i(_)&&i(_)(...Q))},[ee(j.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,kH)):te("v-if",!0),z("button",{type:"button",class:T([i(b).e("icon-btn"),"d-arrow-right"]),disabled:i(q),onClick:X[3]||(X[3]=(...Q)=>i(R)&&i(R)(...Q))},[ee(j.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,EH),z("div",null,Se(i(H)),1)],2),Y(Bi,{"selection-mode":"range",date:g.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(u),disabled:i(q),"cell-class-name":i(c),onChangerange:i(y),onPick:I,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2)],2)],2)],2))}}),TH=xH;const $H=Ce({...Sm}),OH=["pick","set-picker-option","calendar-change"],RH=({unlinkPanels:e,leftDate:t,rightDate:n})=>({leftPrevYear:()=>{t.value=t.value.subtract(10,"year"),e.value||(n.value=n.value.subtract(10,"year"))},rightNextYear:()=>{e.value||(t.value=t.value.add(10,"year")),n.value=n.value.add(10,"year")},leftNextYear:()=>{t.value=t.value.add(10,"year")},rightPrevYear:()=>{n.value=n.value.subtract(10,"year")},leftLabel:w(()=>{const l=Math.floor(t.value.year()/10)*10;return`${l}-${l+9}`}),rightLabel:w(()=>{const l=Math.floor(n.value.year()/10)*10;return`${l}-${l+9}`}),leftYear:w(()=>Math.floor(t.value.year()/10)*10+9),rightYear:w(()=>Math.floor(n.value.year()/10)*10)}),NH=["disabled","onClick"],IH=["disabled"],PH=["disabled"],MH=["disabled"],_H=["disabled"],zr=10,Ul="year";var AH=se({name:"DatePickerYearRange",__name:"panel-year-range",props:$H,emits:OH,setup(e,{emit:t}){const n=e,a=t,{lang:o}=Ct(),s=M(st().locale(o.value)),r=M(st().locale(o.value).add(zr,Ul)),l=_e(wu,void 0),u=_e(oo),{shortcuts:c,disabledDate:d,cellClassName:f}=u.props,v=Vt(u.props,"format"),g=Vt(u.props,"defaultValue"),{minDate:p,maxDate:h,rangeState:m,ppNs:b,drpNs:k,handleChangeRange:y,handleRangeConfirm:S,handleShortcutClick:C,onSelect:E,parseValue:$}=Em(n,{defaultValue:g,leftDate:s,rightDate:r,step:zr,unit:Ul,sortDates:he}),{leftPrevYear:O,rightNextYear:N,leftNextYear:R,rightPrevYear:A,leftLabel:_,rightLabel:V,leftYear:H,rightYear:U}=RH({unlinkPanels:Vt(n,"unlinkPanels"),leftDate:s,rightDate:r}),W=un(),P=w(()=>!!c.length),I=w(()=>[b.b(),k.b(),b.is("border",n.border),b.is("disabled",W.value),{"has-sidebar":!!vn().sidebar||P.value}]),L=w(()=>({content:[b.e("content"),k.e("content"),"is-left"],arrowLeftBtn:[b.e("icon-btn"),"d-arrow-left"],arrowRightBtn:[b.e("icon-btn"),b.is("disabled",!F.value||W.value),"d-arrow-right"]})),D=w(()=>({content:[b.e("content"),k.e("content"),"is-right"],arrowLeftBtn:[b.e("icon-btn"),b.is("disabled",!F.value||W.value),"d-arrow-left"],arrowRightBtn:[b.e("icon-btn"),"d-arrow-right"]})),F=w(()=>n.unlinkPanels&&U.value>H.value+1),q=(ue,ge=!0)=>{const ie=ue.minDate,ae=ue.maxDate;h.value===ae&&p.value===ie||(a("calendar-change",[ie.toDate(),ae&&ae.toDate()]),h.value=ae,p.value=ie,ge&&S())},j=ue=>Cl(ue,v.value,o.value,l),X=ue=>Di(ue)&&(d?!d(ue[0].toDate())&&!d(ue[1].toDate()):!0),Q=()=>{let ue=null;u?.emptyValues&&(ue=u.emptyValues.valueOnClear.value);const ge=lf(i(g),{lang:i(o),step:zr,unit:Ul,unlinkPanels:n.unlinkPanels});s.value=ge[0],r.value=ge[1],a("pick",ue)};function he(ue,ge){if(n.unlinkPanels&&ge){const ie=ue?.year()||0,ae=ge.year();r.value=ie+zr>ae?ge.add(zr,Ul):ge}else r.value=s.value.add(zr,Ul)}return le(()=>n.visible,ue=>{!ue&&m.value.selecting&&($(n.parsedValue),E(!1))}),a("set-picker-option",["isValidValue",X]),a("set-picker-option",["parseUserInput",j]),a("set-picker-option",["handleClear",Q]),(ue,ge)=>(x(),B("div",{class:T(I.value)},[z("div",{class:T(i(b).e("body-wrapper"))},[ee(ue.$slots,"sidebar",{class:T(i(b).e("sidebar"))}),P.value?(x(),B("div",{key:0,class:T(i(b).e("sidebar"))},[(x(!0),B(Fe,null,gt(i(c),(ie,ae)=>(x(),B("button",{key:ae,type:"button",class:T(i(b).e("shortcut")),disabled:i(W),onClick:ne=>i(C)(ie)},Se(ie.text),11,NH))),128))],2)):te("v-if",!0),z("div",{class:T(i(b).e("body"))},[z("div",{class:T(L.value.content)},[z("div",{class:T(i(k).e("header"))},[z("button",{type:"button",class:T(L.value.arrowLeftBtn),disabled:i(W),onClick:ge[0]||(ge[0]=(...ie)=>i(O)&&i(O)(...ie))},[ee(ue.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,IH),ue.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!F.value||i(W),class:T(L.value.arrowRightBtn),onClick:ge[1]||(ge[1]=(...ie)=>i(R)&&i(R)(...ie))},[ee(ue.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,PH)):te("v-if",!0),z("div",null,Se(i(_)),1)],2),Y(Fi,{"selection-mode":"range",date:s.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(d),disabled:i(W),"cell-class-name":i(f),onChangerange:i(y),onPick:q,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2),z("div",{class:T(D.value.content)},[z("div",{class:T(i(k).e("header"))},[ue.unlinkPanels?(x(),B("button",{key:0,type:"button",disabled:!F.value||i(W),class:T(D.value.arrowLeftBtn),onClick:ge[2]||(ge[2]=(...ie)=>i(A)&&i(A)(...ie))},[ee(ue.$slots,"prev-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Bs))]),_:1})])],10,MH)):te("v-if",!0),z("button",{type:"button",class:T(D.value.arrowRightBtn),disabled:i(W),onClick:ge[3]||(ge[3]=(...ie)=>i(N)&&i(N)(...ie))},[ee(ue.$slots,"next-year",{},()=>[Y(i(De),null,{default:J(()=>[Y(i(Fs))]),_:1})])],10,_H),z("div",null,Se(i(V)),1)],2),Y(Fi,{"selection-mode":"range",date:r.value,"min-date":i(p),"max-date":i(h),"range-state":i(m),"disabled-date":i(d),disabled:i(W),"cell-class-name":i(f),onChangerange:i(y),onPick:q,onSelect:i(E)},null,8,["date","min-date","max-date","range-state","disabled-date","disabled","cell-class-name","onChangerange","onSelect"])],2)],2)],2)],2))}}),LH=AH;const DH=function(e){switch(e){case"daterange":case"datetimerange":return mH;case"monthrange":return TH;case"yearrange":return LH;default:return Zz}};var Sc={exports:{}},BH=Sc.exports,c0;function FH(){return c0||(c0=1,(function(e,t){(function(n,a){e.exports=a()})(BH,(function(){return function(n,a){var o=a.prototype,s=o.format;o.format=function(r){var l=this,u=this.$locale();if(!this.isValid())return s.bind(this)(r);var c=this.$utils(),d=(r||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(f){switch(f){case"Q":return Math.ceil((l.$M+1)/3);case"Do":return u.ordinal(l.$D);case"gggg":return l.weekYear();case"GGGG":return l.isoWeekYear();case"wo":return u.ordinal(l.week(),"W");case"w":case"ww":return c.s(l.week(),f==="w"?1:2,"0");case"W":case"WW":return c.s(l.isoWeek(),f==="W"?1:2,"0");case"k":case"kk":return c.s(String(l.$H===0?24:l.$H),f==="k"?1:2,"0");case"X":return Math.floor(l.$d.getTime()/1e3);case"x":return l.$d.getTime();case"z":return"["+l.offsetName()+"]";case"zzz":return"["+l.offsetName("long")+"]";default:return f}}));return s.bind(this)(d)}}}))})(Sc)),Sc.exports}var VH=FH();const zH=bs(VH);var Cc={exports:{}},HH=Cc.exports,d0;function KH(){return d0||(d0=1,(function(e,t){(function(n,a){e.exports=a()})(HH,(function(){var n="week",a="year";return function(o,s,r){var l=s.prototype;l.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var c=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var d=r(this).startOf(a).add(1,a).date(c),f=r(this).endOf(n);if(d.isBefore(f))return 1}var v=r(this).startOf(a).date(c).startOf(n).subtract(1,"millisecond"),g=this.diff(v,n,!0);return g<0?r(this).startOf("week").week():Math.ceil(g)},l.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}}))})(Cc)),Cc.exports}var WH=KH();const jH=bs(WH);var kc={exports:{}},UH=kc.exports,f0;function qH(){return f0||(f0=1,(function(e,t){(function(n,a){e.exports=a()})(UH,(function(){return function(n,a){a.prototype.weekYear=function(){var o=this.month(),s=this.week(),r=this.year();return s===1&&o===11?r+1:o===0&&s>=52?r-1:r}}}))})(kc)),kc.exports}var YH=qH();const GH=bs(YH);var Ec={exports:{}},XH=Ec.exports,p0;function JH(){return p0||(p0=1,(function(e,t){(function(n,a){e.exports=a()})(XH,(function(){return function(n,a,o){a.prototype.dayOfYear=function(s){var r=Math.round((o(this).startOf("day")-o(this).startOf("year"))/864e5)+1;return s==null?r:this.add(s-r,"day")}}}))})(Ec)),Ec.exports}var ZH=JH();const QH=bs(ZH);var xc={exports:{}},e5=xc.exports,h0;function t5(){return h0||(h0=1,(function(e,t){(function(n,a){e.exports=a()})(e5,(function(){return function(n,a){a.prototype.isSameOrAfter=function(o,s){return this.isSame(o,s)||this.isAfter(o,s)}}}))})(xc)),xc.exports}var n5=t5();const a5=bs(n5);var Tc={exports:{}},o5=Tc.exports,v0;function s5(){return v0||(v0=1,(function(e,t){(function(n,a){e.exports=a()})(o5,(function(){return function(n,a){a.prototype.isSameOrBefore=function(o,s){return this.isSame(o,s)||this.isBefore(o,s)}}}))})(Tc)),Tc.exports}var r5=s5();const l5=bs(r5);function i5(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}st.extend(Lk);st.extend(zH);st.extend(pm);st.extend(jH);st.extend(GH);st.extend(QH);st.extend(a5);st.extend(l5);var u5=se({name:"ElDatePickerPanel",install:null,inheritAttrs:!1,props:kz,emits:[at,"calendar-change","panel-change","visible-change","clear"],setup(e,{slots:t,emit:n,attrs:a}){const o=fe("picker-panel");Tt(_e(oo,void 0))&&St(oo,{props:At({...Mn(e)})}),St(ym,{slots:t,pickerNs:o});const{parsedValue:s,onCalendarChange:r,onPanelChange:l,onSetPickerOption:u,onPick:c}=_e(vk,()=>wk(e,n),!0);return()=>Y(DH(e.type),dt(tu(a,"onPick"),e,{parsedValue:s.value,"onSet-picker-option":u,"onCalendar-change":r,"onPanel-change":l,onClear:()=>n("clear"),onPick:c}),i5(t)?t:{default:()=>[t]})}});const y2=rt(u5),c5=Ce({...fm,type:{type:G(String),default:"date"}});function d5(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}var f5=se({name:"ElDatePicker",install:null,props:c5,emits:[at],setup(e,{expose:t,emit:n,slots:a}){St(wu,w(()=>!e.format)),St(cm,At(Vt(e,"popperOptions")));const o=M();t({focus:()=>{o.value?.focus()},blur:()=>{o.value?.blur()},handleOpen:()=>{o.value?.handleOpen()},handleClose:()=>{o.value?.handleClose()}});const s=r=>{n(at,r)};return()=>{const r=e.format??(u8[e.type]||Os);return Y(Sk,dt(e,{format:r,type:e.type,ref:o,"onUpdate:modelValue":s}),{default:l=>Y(y2,dt({disabled:e.disabled,editable:e.editable,border:!1},l),d5(a)?a:{default:()=>[a]}),"range-separator":a["range-separator"]})}}});const p5=rt(f5),h5=Ce({border:Boolean,column:{type:Number,default:3},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},size:Tn,title:{type:String,default:""},extra:{type:String,default:""},labelWidth:{type:[String,Number]}}),w2="ElDescriptionsItem",v5=Ce({label:{type:String,default:""},span:{type:Number,default:1},rowspan:{type:Number,default:1},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},labelWidth:{type:[String,Number]},align:{type:String,values:nb,default:"left"},labelAlign:{type:String,values:nb},className:{type:String,default:""},labelClassName:{type:String,default:""}}),S2=se({name:w2,props:v5}),xm=Symbol("elDescriptions"),m5=Ce({row:{type:G(Array),default:()=>[]}});var ql=se({name:"ElDescriptionsCell",props:{cell:{type:Object},tag:{type:String,default:"td"},type:{type:String}},setup(){return{descriptions:_e(xm,{})}},render(){const e=x4(this.cell),t=(this.cell?.dirs||[]).map(h=>{const{dir:m,arg:b,modifiers:k,value:y}=h;return[m,y,b,k]}),{border:n,direction:a}=this.descriptions,o=a==="vertical",s=()=>this.cell?.children?.label?.()||e.label,r=()=>this.cell?.children?.default?.(),l=e.span,u=e.rowspan,c=e.align?`is-${e.align}`:"",d=e.labelAlign?`is-${e.labelAlign}`:c,f=e.className,v=e.labelClassName,g={width:ln(this.type==="label"?e.labelWidth??this.descriptions.labelWidth??e.width:e.width),minWidth:ln(e.minWidth)},p=fe("descriptions");switch(this.type){case"label":return ut(Ye(this.tag,{style:g,class:[p.e("cell"),p.e("label"),p.is("bordered-label",n),p.is("vertical-label",o),d,v],colSpan:o?l:1,rowspan:o?1:u},s()),t);case"content":return ut(Ye(this.tag,{style:g,class:[p.e("cell"),p.e("content"),p.is("bordered-content",n),p.is("vertical-content",o),c,f],colSpan:o?l:l*2-1,rowspan:o?u*2-1:u},r()),t);default:{const h=s(),m={},b=ln(e.labelWidth??this.descriptions.labelWidth);return b&&(m.width=b,m.display="inline-block"),ut(Ye("td",{style:g,class:[p.e("cell"),c],colSpan:l,rowspan:u},[bn(h)?void 0:Ye("span",{style:m,class:[p.e("label"),v]},h),Ye("span",{class:[p.e("content"),f]},r())]),t)}}}});const g5={key:1};var b5=se({name:"ElDescriptionsRow",__name:"descriptions-row",props:m5,setup(e){const t=_e(xm,{});return(n,a)=>i(t).direction==="vertical"?(x(),B(Fe,{key:0},[z("tr",null,[(x(!0),B(Fe,null,gt(e.row,(o,s)=>(x(),oe(i(ql),{key:`tr1-${s}`,cell:o,tag:"th",type:"label"},null,8,["cell"]))),128))]),z("tr",null,[(x(!0),B(Fe,null,gt(e.row,(o,s)=>(x(),oe(i(ql),{key:`tr2-${s}`,cell:o,tag:"td",type:"content"},null,8,["cell"]))),128))])],64)):(x(),B("tr",g5,[(x(!0),B(Fe,null,gt(e.row,(o,s)=>(x(),B(Fe,{key:`tr3-${s}`},[i(t).border?(x(),B(Fe,{key:0},[Y(i(ql),{cell:o,tag:"td",type:"label"},null,8,["cell"]),Y(i(ql),{cell:o,tag:"td",type:"content"},null,8,["cell"])],64)):(x(),oe(i(ql),{key:1,cell:o,tag:"td",type:"both"},null,8,["cell"]))],64))),128))]))}}),y5=b5,w5=se({name:"ElDescriptions",__name:"description",props:h5,setup(e){const t=e,n=fe("descriptions"),a=Cn(),o=vn();St(xm,t);const s=w(()=>[n.b(),n.m(a.value)]),r=(u,c,d,f=!1)=>(u.props||(u.props={}),c>d&&(u.props.span=d),f&&(u.props.span=c),u),l=()=>{if(!o.default)return[];const u=Ta(o.default()).filter(p=>p?.type?.name===w2),c=[];let d=[],f=t.column,v=0;const g=[];return u.forEach((p,h)=>{const m=p.props?.span||1,b=p.props?.rowspan||1,k=c.length;if(g[k]||=0,b>1)for(let y=1;y0&&(f-=g[k],g[k]=0),hf?f:m),h===u.length-1){const y=t.column-v%t.column;d.push(r(p,y,f,!0)),c.push(d);return}m(x(),B("div",{class:T(s.value)},[e.title||e.extra||u.$slots.title||u.$slots.extra?(x(),B("div",{key:0,class:T(i(n).e("header"))},[z("div",{class:T(i(n).e("title"))},[ee(u.$slots,"title",{},()=>[wt(Se(e.title),1)])],2),z("div",{class:T(i(n).e("extra"))},[ee(u.$slots,"extra",{},()=>[wt(Se(e.extra),1)])],2)],2)):te("v-if",!0),z("div",{class:T(i(n).e("body"))},[z("table",{class:T([i(n).e("table"),i(n).is("bordered",e.border)])},[z("tbody",null,[(x(!0),B(Fe,null,gt(l(),(d,f)=>(x(),oe(y5,{key:f,row:d},null,8,["row"]))),128))])],2)],2)],2))}}),S5=w5;const C5=rt(S5,{DescriptionsItem:S2}),k5=an(S2),C2=Ce({center:Boolean,alignCenter:{type:Boolean,default:void 0},closeIcon:{type:Kt},draggable:{type:Boolean,default:void 0},overflow:{type:Boolean,default:void 0},fullscreen:Boolean,headerClass:String,bodyClass:String,footerClass:String,showClose:{type:Boolean,default:!0},title:{type:String,default:""},ariaLevel:{type:String,default:"2"}}),E5={close:()=>!0},k2=Ce({...C2,appendToBody:Boolean,appendTo:{type:au.to.type,default:"body"},beforeClose:{type:G(Function)},destroyOnClose:Boolean,closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},modalPenetrable:Boolean,openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:Boolean,modalClass:String,headerClass:String,bodyClass:String,footerClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:Boolean,headerAriaLevel:{type:String,default:"2"},transition:{type:G([String,Object]),default:void 0}}),E2={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[at]:e=>Ht(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},x5=Ce({mask:{type:Boolean,default:!0},customMaskEvent:Boolean,overlayClass:{type:G([String,Array,Object])},zIndex:{type:G([String,Number])}}),T5={click:e=>e instanceof MouseEvent},$5="overlay";var O5=se({name:"ElOverlay",props:x5,emits:T5,setup(e,{slots:t,emit:n}){const a=fe($5),o=u=>{n("click",u)},{onClick:s,onMousedown:r,onMouseup:l}=Yv(e.customMaskEvent?void 0:o);return()=>e.mask?Y("div",{class:[a.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:s,onMousedown:r,onMouseup:l},[ee(t,"default")],ja.STYLE|ja.CLASS|ja.PROPS,["onClick","onMouseup","onMousedown"]):Ye("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[ee(t,"default")])}});const Tm=O5,x2=Symbol("dialogInjectionKey"),np="dialog-fade",R5="ElDialog",T2=(e,t)=>{const n=ft().emit,{nextZIndex:a}=uu();let o="";const s=zn(),r=zn(),l=M(!1),u=M(!1),c=M(!1),d=M(e.zIndex??a()),f=M(!1);let v,g;const p=gs(),h=w(()=>p.value?.namespace??di),m=w(()=>p.value?.dialog),b=w(()=>{const D={},F=`--${h.value}-dialog`;if(!e.fullscreen){e.top&&(D[`${F}-margin-top`]=e.top);const q=ln(e.width);q&&(D[`${F}-width`]=q)}return D}),k=w(()=>(e.draggable??m.value?.draggable??!1)&&!e.fullscreen),y=w(()=>e.alignCenter??m.value?.alignCenter??!1),S=w(()=>e.overflow??m.value?.overflow??!1),C=w(()=>y.value?{display:"flex"}:{}),E=w(()=>{const D=e.transition??m.value?.transition??np,F={name:D,onAfterEnter:$,onBeforeLeave:N,onAfterLeave:O};if(ot(D)){const q={...D},j=(X,Q)=>he=>{ye(X)?X.forEach(ue=>{Ve(ue)&&ue(he)}):Ve(X)&&X(he),Q()};return q.onAfterEnter=j(q.onAfterEnter,$),q.onBeforeLeave=j(q.onBeforeLeave,N),q.onAfterLeave=j(q.onAfterLeave,O),q.name||(q.name=np,pt(R5,`transition.name is missing when using object syntax, fallback to '${np}'`)),q}return F});function $(){n("opened")}function O(){n("closed"),n(at,!1),e.destroyOnClose&&(c.value=!1),f.value=!1}function N(){f.value=!0,n("close")}function R(){g?.(),v?.(),e.openDelay&&e.openDelay>0?{stop:v}=pl(()=>H(),e.openDelay):H()}function A(){v?.(),g?.(),e.closeDelay&&e.closeDelay>0?{stop:g}=pl(()=>U(),e.closeDelay):U()}function _(){function D(F){F||(u.value=!0,l.value=!1)}e.beforeClose?e.beforeClose(D):A()}function V(){e.closeOnClickModal&&_()}function H(){Mt&&(l.value=!0)}function U(){l.value=!1}function W(){n("openAutoFocus")}function P(){n("closeAutoFocus")}function I(D){D.detail?.focusReason==="pointer"&&D.preventDefault()}e.lockScroll&&qd(l);function L(){e.closeOnPressEscape&&_()}return le(()=>e.zIndex,()=>{d.value=e.zIndex??a()}),le(()=>e.modelValue,D=>{D?(u.value=!1,f.value=!1,R(),c.value=!0,d.value=e.zIndex??a(),Re(()=>{n("open"),t.value&&(t.value.parentElement.scrollTop=0,t.value.parentElement.scrollLeft=0,t.value.scrollTop=0)})):l.value&&A()}),le(()=>e.fullscreen,D=>{t.value&&(D?(o=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=o)}),ht(()=>{e.modelValue&&(l.value=!0,c.value=!0,R())}),{afterEnter:$,afterLeave:O,beforeLeave:N,handleClose:_,onModalClick:V,close:A,doClose:U,onOpenAutoFocus:W,onCloseAutoFocus:P,onCloseRequested:L,onFocusoutPrevented:I,titleId:s,bodyId:r,closed:u,style:b,overlayDialogStyle:C,rendered:c,visible:l,zIndex:d,transitionConfig:E,_draggable:k,_alignCenter:y,_overflow:S,closing:f}},$m=(...e)=>t=>{e.forEach(n=>{n.value=t})},N5=["aria-level"],I5=["aria-label"],P5=["id"];var M5=se({name:"ElDialogContent",__name:"dialog-content",props:C2,emits:E5,setup(e,{expose:t}){const{t:n}=Ct(),{Close:a}=HC,o=e,{dialogRef:s,headerRef:r,bodyId:l,ns:u,style:c}=_e(x2),{focusTrapRef:d}=_e(QC),f=$m(d,s),v=w(()=>!!o.draggable),{resetPosition:g,updatePosition:p,isDragging:h}=ZS(s,r,v,w(()=>!!o.overflow)),m=w(()=>[u.b(),u.is("fullscreen",o.fullscreen),u.is("draggable",v.value),u.is("dragging",h.value),u.is("align-center",!!o.alignCenter),{[u.m("center")]:o.center}]);return t({resetPosition:g,updatePosition:p}),(b,k)=>(x(),B("div",{ref:i(f),class:T(m.value),style:Ke(i(c)),tabindex:"-1"},[z("header",{ref_key:"headerRef",ref:r,class:T([i(u).e("header"),e.headerClass,{"show-close":e.showClose}])},[ee(b.$slots,"header",{},()=>[z("span",{role:"heading","aria-level":e.ariaLevel,class:T(i(u).e("title"))},Se(e.title),11,N5)]),e.showClose?(x(),B("button",{key:0,"aria-label":i(n)("el.dialog.close"),class:T(i(u).e("headerbtn")),type:"button",onClick:k[0]||(k[0]=y=>b.$emit("close"))},[Y(i(De),{class:T(i(u).e("close"))},{default:J(()=>[(x(),oe(it(e.closeIcon||i(a))))]),_:1},8,["class"])],10,I5)):te("v-if",!0)],2),z("div",{id:i(l),class:T([i(u).e("body"),e.bodyClass])},[ee(b.$slots,"default")],10,P5),b.$slots.footer?(x(),B("footer",{key:0,class:T([i(u).e("footer"),e.footerClass])},[ee(b.$slots,"footer")],2)):te("v-if",!0)],6))}}),_5=M5;const A5=["aria-label","aria-labelledby","aria-describedby"];var L5=se({name:"ElDialog",inheritAttrs:!1,__name:"dialog",props:k2,emits:E2,setup(e,{expose:t}){const n=e,a=vn();To({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},w(()=>!!a.title));const o=fe("dialog"),s=M(),r=M(),l=M(),{visible:u,titleId:c,bodyId:d,style:f,overlayDialogStyle:v,rendered:g,transitionConfig:p,zIndex:h,_draggable:m,_alignCenter:b,_overflow:k,handleClose:y,onModalClick:S,onOpenAutoFocus:C,onCloseAutoFocus:E,onCloseRequested:$,onFocusoutPrevented:O,closing:N}=T2(n,s);St(x2,{dialogRef:s,headerRef:r,bodyId:d,ns:o,rendered:g,style:f});const R=Yv(S),A=w(()=>n.modalPenetrable&&!n.modal&&!n.fullscreen);return t({visible:u,dialogContentRef:l,resetPosition:()=>{l.value?.resetPosition()},handleClose:y}),(V,H)=>(x(),oe(i(_l),{to:e.appendTo,disabled:e.appendTo!=="body"?!1:!e.appendToBody},{default:J(()=>[Y(Vn,dt(i(p),{persisted:""}),{default:J(()=>[ut(Y(i(Tm),{"custom-mask-event":"",mask:e.modal,"overlay-class":[e.modalClass??"",`${i(o).namespace.value}-modal-dialog`,i(o).is("penetrable",A.value)],"z-index":i(h)},{default:J(()=>[z("div",{role:"dialog","aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:i(c),"aria-describedby":i(d),class:T([`${i(o).namespace.value}-overlay-dialog`,i(o).is("closing",i(N))]),style:Ke(i(v)),onClick:H[0]||(H[0]=(...U)=>i(R).onClick&&i(R).onClick(...U)),onMousedown:H[1]||(H[1]=(...U)=>i(R).onMousedown&&i(R).onMousedown(...U)),onMouseup:H[2]||(H[2]=(...U)=>i(R).onMouseup&&i(R).onMouseup(...U))},[Y(i(Al),{loop:"",trapped:i(u),"focus-start-el":"container",onFocusAfterTrapped:i(C),onFocusAfterReleased:i(E),onFocusoutPrevented:i(O),onReleaseRequested:i($)},{default:J(()=>[i(g)?(x(),oe(_5,dt({key:0,ref_key:"dialogContentRef",ref:l},V.$attrs,{center:e.center,"align-center":i(b),"close-icon":e.closeIcon,draggable:i(m),overflow:i(k),fullscreen:e.fullscreen,"header-class":e.headerClass,"body-class":e.bodyClass,"footer-class":e.footerClass,"show-close":e.showClose,title:e.title,"aria-level":e.headerAriaLevel,onClose:i(y)}),ua({header:J(()=>[V.$slots.title?ee(V.$slots,"title",{key:1}):ee(V.$slots,"header",{key:0,close:i(y),titleId:i(c),titleClass:i(o).e("title")})]),default:J(()=>[ee(V.$slots,"default")]),_:2},[V.$slots.footer?{name:"footer",fn:J(()=>[ee(V.$slots,"footer")]),key:"0"}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose"])):te("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,A5)]),_:3},8,["mask","overlay-class","z-index"]),[[Pt,i(u)]])]),_:3},16)]),_:3},8,["to","disabled"]))}}),D5=L5;const $2=rt(D5),B5=Ce({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},contentPosition:{type:String,values:["left","center","right"],default:"center"},borderStyle:{type:G(String),default:"solid"}});var F5=se({name:"ElDivider",__name:"divider",props:B5,setup(e){const t=e,n=fe("divider"),a=w(()=>n.cssVar({"border-style":t.borderStyle}));return(o,s)=>(x(),B("div",{class:T([i(n).b(),i(n).m(e.direction)]),style:Ke(a.value),role:"separator"},[o.$slots.default&&e.direction!=="vertical"?(x(),B("div",{key:0,class:T([i(n).e("text"),i(n).is(e.contentPosition)])},[ee(o.$slots,"default")],2)):te("v-if",!0)],6))}}),V5=F5;const O2=rt(V5),z5=Ce({...k2,direction:{type:String,default:"rtl",values:["ltr","rtl","ttb","btt"]},resizable:Boolean,size:{type:[String,Number],default:"30%"},withHeader:{type:Boolean,default:!0},modalFade:{type:Boolean,default:!0},headerAriaLevel:{type:String,default:"2"}}),H5={...E2,"resize-start":(e,t)=>e instanceof MouseEvent&&typeof t=="number",resize:(e,t)=>e instanceof MouseEvent&&typeof t=="number","resize-end":(e,t)=>e instanceof MouseEvent&&typeof t=="number"};function K5(e,t,n){const{width:a,height:o}=_v(),s=w(()=>["ltr","rtl"].includes(e.direction)),r=w(()=>["ltr","ttb"].includes(e.direction)?1:-1),l=w(()=>s.value?a.value:o.value),u=w(()=>HS(c.value+r.value*d.value,4,l.value)),c=M(0),d=M(0),f=M(!1),v=M(!1);let g=[],p=[];const h=()=>{const S=t.value?.closest('[aria-modal="true"]');return S?s.value?S.offsetWidth:S.offsetHeight:100};le(()=>[e.size,e.resizable],()=>{v.value=!1,c.value=0,d.value=0,k()});const m=S=>{e.resizable&&(v.value||(c.value=h(),v.value=!0),g=[S.pageX,S.pageY],f.value=!0,n("resize-start",S,c.value),p.push(Ft(window,"mouseup",k),Ft(window,"mousemove",b)))},b=S=>{const{pageX:C,pageY:E}=S,$=C-g[0],O=E-g[1];d.value=s.value?$:O,n("resize",S,u.value)},k=S=>{f.value&&(g=[],c.value=u.value,d.value=0,f.value=!1,p.forEach(C=>C?.()),p=[],S&&n("resize-end",S,c.value))},y=Ft(t,"mousedown",m);return Bt(()=>{y(),k()}),{size:w(()=>v.value?`${u.value}px`:ln(e.size)),isResizing:f,isHorizontal:s}}const W5=["aria-label","aria-labelledby","aria-describedby"],j5=["id","aria-level"],U5=["aria-label"],q5=["id"];var Y5=se({name:"ElDrawer",inheritAttrs:!1,__name:"drawer",props:z5,emits:H5,setup(e,{expose:t,emit:n}){const a=e,o=n,s=vn();To({scope:"el-drawer",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/drawer.html#slots"},w(()=>!!s.title));const r=M(),l=M(),u=M(),c=fe("drawer"),{t:d}=Ct(),{afterEnter:f,afterLeave:v,beforeLeave:g,visible:p,rendered:h,titleId:m,bodyId:b,zIndex:k,onModalClick:y,onOpenAutoFocus:S,onCloseAutoFocus:C,onFocusoutPrevented:E,onCloseRequested:$,handleClose:O}=T2(a,r),{isHorizontal:N,size:R,isResizing:A}=K5(a,u,o),_=w(()=>a.modalPenetrable&&!a.modal);return t({handleClose:O,afterEnter:f,afterLeave:v}),(V,H)=>(x(),oe(i(_l),{to:e.appendTo,disabled:e.appendTo!=="body"?!1:!e.appendToBody},{default:J(()=>[Y(Vn,{name:i(c).b("fade"),onAfterEnter:i(f),onAfterLeave:i(v),onBeforeLeave:i(g),persisted:""},{default:J(()=>[ut(Y(i(Tm),{mask:e.modal,"overlay-class":[i(c).is("drawer"),e.modalClass??"",`${i(c).namespace.value}-modal-drawer`,i(c).is("penetrable",_.value)],"z-index":i(k),onClick:i(y)},{default:J(()=>[Y(i(Al),{loop:"",trapped:i(p),"focus-trap-el":r.value,"focus-start-el":l.value,onFocusAfterTrapped:i(S),onFocusAfterReleased:i(C),onFocusoutPrevented:i(E),onReleaseRequested:i($)},{default:J(()=>[z("div",dt({ref_key:"drawerRef",ref:r,"aria-modal":"true","aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:i(m),"aria-describedby":i(b)},V.$attrs,{class:[i(c).b(),e.direction,i(p)&&"open",i(c).is("dragging",i(A))],style:{[i(N)?"width":"height"]:i(R)},role:"dialog",onClick:H[1]||(H[1]=Xe(()=>{},["stop"]))}),[z("span",{ref_key:"focusStartRef",ref:l,class:T(i(c).e("sr-focus")),tabindex:"-1"},null,2),e.withHeader?(x(),B("header",{key:0,class:T([i(c).e("header"),e.headerClass])},[V.$slots.title?ee(V.$slots,"title",{key:1},()=>[te(" DEPRECATED SLOT ")]):ee(V.$slots,"header",{key:0,close:i(O),titleId:i(m),titleClass:i(c).e("title")},()=>[z("span",{id:i(m),role:"heading","aria-level":e.headerAriaLevel,class:T(i(c).e("title"))},Se(e.title),11,j5)]),e.showClose?(x(),B("button",{key:2,"aria-label":i(d)("el.drawer.close"),class:T(i(c).e("close-btn")),type:"button",onClick:H[0]||(H[0]=(...U)=>i(O)&&i(O)(...U))},[Y(i(De),{class:T(i(c).e("close"))},{default:J(()=>[Y(i(Ha))]),_:1},8,["class"])],10,U5)):te("v-if",!0)],2)):te("v-if",!0),i(h)?(x(),B("div",{key:1,id:i(b),class:T([i(c).e("body"),e.bodyClass])},[ee(V.$slots,"default")],10,q5)):te("v-if",!0),V.$slots.footer?(x(),B("div",{key:2,class:T([i(c).e("footer"),e.footerClass])},[ee(V.$slots,"footer")],2)):te("v-if",!0),e.resizable?(x(),B("div",{key:3,ref_key:"draggerRef",ref:u,style:Ke({zIndex:i(k)}),class:T(i(c).e("dragger"))},null,6)):te("v-if",!0)],16,W5)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])]),_:3},8,["mask","overlay-class","z-index","onClick"]),[[Pt,i(p)]])]),_:3},8,["name","onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}}),G5=Y5;const X5=rt(G5),$c=Ce({trigger:{...No.trigger,type:G([String,Array])},triggerKeys:{type:G(Array),default:()=>[we.enter,we.numpadEnter,we.space,we.down]},virtualTriggering:No.virtualTriggering,virtualRef:No.virtualRef,effect:{...zt.effect,default:"light"},type:{type:G(String)},placement:{type:G(String),default:"bottom"},popperOptions:{type:G(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showArrow:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:G([Number,String]),default:0},maxHeight:{type:G([Number,String]),default:""},popperClass:zt.popperClass,popperStyle:zt.popperStyle,disabled:Boolean,role:{type:String,values:KC,default:"menu"},buttonProps:{type:G(Object)},teleported:zt.teleported,appendTo:zt.appendTo,persistent:{type:Boolean,default:!0}}),R2=Ce({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:Kt}}),J5=Ce({onKeydown:{type:G(Function)}}),uf=Symbol("elDropdown"),N2="elDropdown";var Z5=se({inheritAttrs:!1});function Q5(e,t,n,a,o,s){return ee(e.$slots,"default")}var eK=$n(Z5,[["render",Q5]]),tK=se({name:"ElCollectionItem",inheritAttrs:!1});function nK(e,t,n,a,o,s){return ee(e.$slots,"default")}var aK=$n(tK,[["render",nK]]);const I2="data-el-collection-item",oK=e=>{const t=`El${e}Collection`,n=`${t}Item`,a=Symbol(t),o=Symbol(n);return{COLLECTION_INJECTION_KEY:a,COLLECTION_ITEM_INJECTION_KEY:o,ElCollection:Object.assign({},eK,{name:t,setup(){const s=M(),r=new Map;St(a,{itemMap:r,getItems:(()=>{const u=i(s);if(!u)return[];const c=Array.from(u.querySelectorAll(`[${I2}]`));return[...r.values()].sort((d,f)=>c.indexOf(d.ref)-c.indexOf(f.ref))}),collectionRef:s})}}),ElCollectionItem:Object.assign({},aK,{name:n,setup(s,{attrs:r}){const l=M(),u=_e(a,void 0);St(o,{collectionItemRef:l}),ht(()=>{const c=i(l);c&&u.itemMap.set(c,{ref:c,...r})}),Bt(()=>{const c=i(l);u.itemMap.delete(c)})}})}},sK=Ce({style:{type:G([String,Array,Object])},currentTabId:{type:G(String)},defaultCurrentTabId:String,loop:Boolean,dir:{type:String,values:["ltr","rtl"],default:"ltr"},orientation:{type:G(String)},onBlur:Function,onFocus:Function,onMousedown:Function}),{ElCollection:rK,ElCollectionItem:lK,COLLECTION_INJECTION_KEY:P2,COLLECTION_ITEM_INJECTION_KEY:iK}=oK("RovingFocusGroup"),Om=Symbol("elRovingFocusGroup"),M2=Symbol("elRovingFocusGroupItem"),uK={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"},cK=(e,t)=>e,dK=(e,t,n)=>{const a=cK(jt(e));return uK[a]},fK=(e,t)=>e.map((n,a)=>e[(a+t)%e.length]),m0=e=>{const{activeElement:t}=document;for(const n of e)if(n===t||(n.focus(),t!==document.activeElement))return},g0="currentTabIdChange",b0="rovingFocusGroup.entryFocus",pK={bubbles:!1,cancelable:!0};var hK=se({name:"ElRovingFocusGroupImpl",inheritAttrs:!1,props:sK,emits:[g0,"entryFocus"],setup(e,{emit:t}){const n=M((e.currentTabId||e.defaultCurrentTabId)??null),a=M(!1),o=M(!1),s=M(),{getItems:r}=_e(P2,void 0),l=w(()=>[{outline:"none"},e.style]),u=h=>{t(g0,h)},c=()=>{a.value=!0},d=Rn(h=>{e.onMousedown?.(h)},()=>{o.value=!0}),f=Rn(h=>{e.onFocus?.(h)},h=>{const m=!i(o),{target:b,currentTarget:k}=h;if(b===k&&m&&!i(a)){const y=new Event(b0,pK);if(k?.dispatchEvent(y),!y.defaultPrevented){const S=r().filter(C=>C.focusable);m0([S.find(C=>C.active),S.find(C=>C.id===i(n)),...S].filter(Boolean).map(C=>C.ref))}}o.value=!1}),v=Rn(h=>{e.onBlur?.(h)},()=>{a.value=!1}),g=(...h)=>{t("entryFocus",...h)},p=h=>{const m=dK(h);if(m){h.preventDefault();let b=r().filter(k=>k.focusable).map(k=>k.ref);switch(m){case"last":b.reverse();break;case"prev":case"next":{m==="prev"&&b.reverse();const k=b.indexOf(h.currentTarget);b=e.loop?fK(b,k+1):b.slice(k+1);break}}Re(()=>{m0(b)})}};St(Om,{currentTabbedId:br(n),loop:Vt(e,"loop"),tabIndex:w(()=>i(a)?-1:0),rovingFocusGroupRef:s,rovingFocusGroupRootStyle:l,orientation:Vt(e,"orientation"),dir:Vt(e,"dir"),onItemFocus:u,onItemShiftTab:c,onBlur:v,onFocus:f,onMousedown:d,onKeydown:p}),le(()=>e.currentTabId,h=>{n.value=h??null}),Ft(s,b0,g)}});function vK(e,t,n,a,o,s){return ee(e.$slots,"default")}var mK=$n(hK,[["render",vK]]),gK=se({name:"ElRovingFocusGroup",components:{ElFocusGroupCollection:rK,ElRovingFocusGroupImpl:mK}});function bK(e,t,n,a,o,s){const r=It("el-roving-focus-group-impl"),l=It("el-focus-group-collection");return x(),oe(l,null,{default:J(()=>[Y(r,Jo(Zo(e.$attrs)),{default:J(()=>[ee(e.$slots,"default")]),_:3},16)]),_:3})}var yK=$n(gK,[["render",bK]]),wK=se({components:{ElRovingFocusCollectionItem:lK},props:{focusable:{type:Boolean,default:!0},active:Boolean},emits:["mousedown","focus","keydown"],setup(e,{emit:t}){const{currentTabbedId:n,onItemFocus:a,onItemShiftTab:o,onKeydown:s}=_e(Om,void 0),r=zn(),l=M(),u=Rn(v=>{t("mousedown",v)},v=>{e.focusable?a(i(r)):v.preventDefault()}),c=Rn(v=>{t("focus",v)},()=>{a(i(r))}),d=Rn(v=>{t("keydown",v)},v=>{const{shiftKey:g,target:p,currentTarget:h}=v;if(jt(v)===we.tab&&g){o();return}p===h&&s(v)}),f=w(()=>n.value===i(r));return St(M2,{rovingFocusGroupItemRef:l,tabIndex:w(()=>i(f)?0:-1),handleMousedown:u,handleFocus:c,handleKeydown:d}),{id:r,handleKeydown:d,handleFocus:c,handleMousedown:u}}});function SK(e,t,n,a,o,s){const r=It("el-roving-focus-collection-item");return x(),oe(r,{id:e.id,focusable:e.focusable,active:e.active},{default:J(()=>[ee(e.$slots,"default")]),_:3},8,["id","focusable","active"])}var CK=$n(wK,[["render",SK]]),kK=yK;const{ButtonGroup:EK}=In;var xK=se({name:"ElDropdown",components:{ElButton:In,ElButtonGroup:EK,ElScrollbar:ao,ElTooltip:Ln,ElRovingFocusGroup:kK,ElOnlyChild:qC,ElIcon:De,ArrowDown:Fo},props:$c,emits:["visible-change","click","command"],setup(e,{emit:t}){const n=ft(),a=fe("dropdown"),{t:o}=Ct(),s=M(),r=M(),l=M(),u=M(),c=M(null),d=M(null),f=M(!1),v=w(()=>({maxHeight:ln(e.maxHeight)})),g=w(()=>[a.m(S.value)]),p=w(()=>Nn(e.trigger)),h=zn().value,m=w(()=>e.id||h);function b(){l.value?.onClose(void 0,0)}function k(){l.value?.onClose()}function y(){l.value?.onOpen()}const S=Cn();function C(...V){t("command",...V)}function E(){}function $(){const V=i(u);p.value.includes("hover")&&V?.focus({preventScroll:!0}),d.value=null}function O(V){d.value=V}function N(){t("visible-change",!0)}function R(V){f.value=V?.type==="keydown",u.value?.focus()}function A(){t("visible-change",!1)}return St(uf,{contentRef:u,role:w(()=>e.role),triggerId:m,isUsingKeyboard:f,onItemEnter:E,onItemLeave:$,handleClose:k}),St(N2,{instance:n,dropdownSize:S,handleClick:b,commandHandler:C,trigger:Vt(e,"trigger"),hideOnClick:Vt(e,"hideOnClick")}),{t:o,ns:a,scrollbar:c,wrapStyle:v,dropdownTriggerKls:g,dropdownSize:S,triggerId:m,currentTabId:d,handleCurrentTabIdChange:O,handlerMainButtonClick:V=>{t("click",V)},handleClose:k,handleOpen:y,handleBeforeShowTooltip:N,handleShowTooltip:R,handleBeforeHideTooltip:A,popperRef:l,contentRef:u,triggeringElementRef:s,referenceElementRef:r}}});function TK(e,t,n,a,o,s){const r=It("el-roving-focus-group"),l=It("el-scrollbar"),u=It("el-only-child"),c=It("el-tooltip"),d=It("el-button"),f=It("arrow-down"),v=It("el-icon"),g=It("el-button-group");return x(),B("div",{class:T([e.ns.b(),e.ns.is("disabled",e.disabled)])},[Y(c,{ref:"popperRef",role:e.role,effect:e.effect,"fallback-placements":["bottom","top"],"popper-options":e.popperOptions,"gpu-acceleration":!1,placement:e.placement,"popper-class":[e.ns.e("popper"),e.popperClass],"popper-style":e.popperStyle,trigger:e.trigger,"trigger-keys":e.triggerKeys,"trigger-target-el":e.contentRef,"show-arrow":e.showArrow,"show-after":e.trigger==="hover"?e.showTimeout:0,"hide-after":e.trigger==="hover"?e.hideTimeout:0,"virtual-ref":e.virtualRef??e.triggeringElementRef,"virtual-triggering":e.virtualTriggering||e.splitButton,disabled:e.disabled,transition:`${e.ns.namespace.value}-zoom-in-top`,teleported:e.teleported,"append-to":e.appendTo,pure:"","focus-on-target":"",persistent:e.persistent,onBeforeShow:e.handleBeforeShowTooltip,onShow:e.handleShowTooltip,onBeforeHide:e.handleBeforeHideTooltip},ua({content:J(()=>[Y(l,{ref:"scrollbar","wrap-style":e.wrapStyle,tag:"div","view-class":e.ns.e("list")},{default:J(()=>[Y(r,{loop:e.loop,"current-tab-id":e.currentTabId,orientation:"horizontal",onCurrentTabIdChange:e.handleCurrentTabIdChange},{default:J(()=>[ee(e.$slots,"dropdown")]),_:3},8,["loop","current-tab-id","onCurrentTabIdChange"])]),_:3},8,["wrap-style","view-class"])]),_:2},[e.splitButton?void 0:{name:"default",fn:J(()=>[Y(u,{id:e.triggerId,ref:"triggeringElementRef",role:"button",tabindex:e.tabindex},{default:J(()=>[ee(e.$slots,"default")]),_:3},8,["id","tabindex"])]),key:"0"}]),1032,["role","effect","popper-options","placement","popper-class","popper-style","trigger","trigger-keys","trigger-target-el","show-arrow","show-after","hide-after","virtual-ref","virtual-triggering","disabled","transition","teleported","append-to","persistent","onBeforeShow","onShow","onBeforeHide"]),e.splitButton?(x(),oe(g,{key:0},{default:J(()=>[Y(d,dt({ref:"referenceElementRef"},e.buttonProps,{size:e.dropdownSize,type:e.type,disabled:e.disabled,tabindex:e.tabindex,onClick:e.handlerMainButtonClick}),{default:J(()=>[ee(e.$slots,"default")]),_:3},16,["size","type","disabled","tabindex","onClick"]),Y(d,dt({id:e.triggerId,ref:"triggeringElementRef"},e.buttonProps,{role:"button",size:e.dropdownSize,type:e.type,class:e.ns.e("caret-button"),disabled:e.disabled,tabindex:e.tabindex,"aria-label":e.t("el.dropdown.toggleDropdown")}),{default:J(()=>[Y(v,{class:T(e.ns.e("icon"))},{default:J(()=>[Y(f)]),_:1},8,["class"])]),_:1},16,["id","size","type","class","disabled","tabindex","aria-label"])]),_:3})):te("v-if",!0)],2)}var $K=$n(xK,[["render",TK]]),OK=se({name:"DropdownItemImpl",components:{ElIcon:De},props:R2,emits:["pointermove","pointerleave","click","clickimpl"],setup(e,{emit:t}){const n=fe("dropdown"),{role:a}=_e(uf,void 0),{collectionItemRef:o}=_e(iK,void 0),{rovingFocusGroupItemRef:s,tabIndex:r,handleFocus:l,handleKeydown:u,handleMousedown:c}=_e(M2,void 0),d=$m(o,s),f=w(()=>a.value==="menu"?"menuitem":a.value==="navigation"?"link":"button"),v=Rn(g=>{const p=jt(g);if([we.enter,we.numpadEnter,we.space].includes(p))return g.preventDefault(),g.stopImmediatePropagation(),t("clickimpl",g),!0},u);return{ns:n,itemRef:d,dataset:{[I2]:""},role:f,tabIndex:r,handleFocus:l,handleKeydown:v,handleMousedown:c}}});const RK=["aria-disabled","tabindex","role"];function NK(e,t,n,a,o,s){const r=It("el-icon");return x(),B(Fe,null,[e.divided?(x(),B("li",{key:0,role:"separator",class:T(e.ns.bem("menu","item","divided"))},null,2)):te("v-if",!0),z("li",dt({ref:e.itemRef},{...e.dataset,...e.$attrs},{"aria-disabled":e.disabled,class:[e.ns.be("menu","item"),e.ns.is("disabled",e.disabled)],tabindex:e.tabIndex,role:e.role,onClick:t[0]||(t[0]=l=>e.$emit("clickimpl",l)),onFocus:t[1]||(t[1]=(...l)=>e.handleFocus&&e.handleFocus(...l)),onKeydown:t[2]||(t[2]=Xe((...l)=>e.handleKeydown&&e.handleKeydown(...l),["self"])),onMousedown:t[3]||(t[3]=(...l)=>e.handleMousedown&&e.handleMousedown(...l)),onPointermove:t[4]||(t[4]=l=>e.$emit("pointermove",l)),onPointerleave:t[5]||(t[5]=l=>e.$emit("pointerleave",l))}),[e.icon||e.$slots.icon?(x(),oe(r,{key:0},{default:J(()=>[ee(e.$slots,"icon",{},()=>[(x(),oe(it(e.icon)))])]),_:3})):te("v-if",!0),ee(e.$slots,"default")],16,RK)],64)}var IK=$n(OK,[["render",NK]]);const _2=()=>{const e=_e(N2,{});return{elDropdown:e,_elDropdownSize:w(()=>e?.dropdownSize)}};var PK=se({name:"ElDropdownItem",components:{ElRovingFocusItem:CK,ElDropdownItemImpl:IK},inheritAttrs:!1,props:R2,emits:["pointermove","pointerleave","click"],setup(e,{emit:t,attrs:n}){const{elDropdown:a}=_2(),o=ft(),{onItemEnter:s,onItemLeave:r}=_e(uf,void 0),l=Rn(c=>(t("pointermove",c),c.defaultPrevented),Bb(c=>{if(e.disabled){r(c);return}const d=c.currentTarget;d===document.activeElement||d.contains(document.activeElement)||(s(c),c.defaultPrevented||d?.focus({preventScroll:!0}))})),u=Rn(c=>(t("pointerleave",c),c.defaultPrevented),Bb(r));return{handleClick:Rn(c=>{if(!e.disabled)return t("click",c),c.type!=="keydown"&&c.defaultPrevented},c=>{if(e.disabled){c.stopImmediatePropagation();return}a?.hideOnClick?.value&&a.handleClick?.(),a.commandHandler?.(e.command,o,c)}),handlePointerMove:l,handlePointerLeave:u,propsAndAttrs:w(()=>({...e,...n}))}}});function MK(e,t,n,a,o,s){const r=It("el-dropdown-item-impl"),l=It("el-roving-focus-item");return x(),oe(l,{focusable:!e.disabled},{default:J(()=>[Y(r,dt(e.propsAndAttrs,{onPointerleave:e.handlePointerLeave,onPointermove:e.handlePointerMove,onClickimpl:e.handleClick}),ua({default:J(()=>[ee(e.$slots,"default")]),_:2},[e.$slots.icon?{name:"icon",fn:J(()=>[ee(e.$slots,"icon")]),key:"0"}:void 0]),1040,["onPointerleave","onPointermove","onClickimpl"])]),_:3},8,["focusable"])}var A2=$n(PK,[["render",MK]]),_K=se({name:"ElDropdownMenu",props:J5,setup(e){const t=fe("dropdown"),{_elDropdownSize:n}=_2(),a=n.value,{contentRef:o,role:s,triggerId:r,isUsingKeyboard:l,handleClose:u}=_e(uf,void 0),{rovingFocusGroupRef:c,rovingFocusGroupRootStyle:d,onBlur:f,onFocus:v,onKeydown:g,onMousedown:p}=_e(Om,void 0),{collectionRef:h}=_e(P2,void 0),m=w(()=>[t.b("menu"),t.bm("menu",a?.value)]),b=$m(o,c,h),k=Rn(S=>{e.onKeydown?.(S)},S=>{const{currentTarget:C,target:E}=S,$=jt(S);if(C.contains(E),we.tab===$)return u();g(S)});function y(S){l.value&&v(S)}return{size:a,rovingFocusGroupRootStyle:d,dropdownKls:m,role:s,triggerId:r,dropdownListWrapperRef:b,handleKeydown:k,onBlur:f,handleFocus:y,onMousedown:p}}});const AK=["role","aria-labelledby"];function LK(e,t,n,a,o,s){return x(),B("ul",{ref:e.dropdownListWrapperRef,class:T(e.dropdownKls),style:Ke(e.rovingFocusGroupRootStyle),tabindex:-1,role:e.role,"aria-labelledby":e.triggerId,onFocusin:t[0]||(t[0]=(...r)=>e.handleFocus&&e.handleFocus(...r)),onFocusout:t[1]||(t[1]=(...r)=>e.onBlur&&e.onBlur(...r)),onKeydown:t[2]||(t[2]=Xe((...r)=>e.handleKeydown&&e.handleKeydown(...r),["self"])),onMousedown:t[3]||(t[3]=Xe((...r)=>e.onMousedown&&e.onMousedown(...r),["self"]))},[ee(e.$slots,"default")],46,AK)}var L2=$n(_K,[["render",LK]]);const DK=rt($K,{DropdownItem:A2,DropdownMenu:L2}),BK=an(A2),FK=an(L2),VK=Ce({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),zK={viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},HK=["id"],KK=["stop-color"],WK=["stop-color"],jK=["id"],UK=["stop-color"],qK=["stop-color"],YK=["id"],GK={stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},XK={transform:"translate(-1268.000000, -535.000000)"},JK={transform:"translate(1268.000000, 535.000000)"},ZK=["fill"],QK=["fill"],eW={transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},tW=["fill"],nW=["fill"],aW=["fill"],oW=["fill"],sW=["fill"],rW={transform:"translate(53.000000, 45.000000)"},lW=["fill","xlink:href"],iW=["fill","mask"],uW=["fill"];var cW=se({name:"ImgEmpty",__name:"img-empty",setup(e){const t=fe("empty"),n=zn();return(a,o)=>(x(),B("svg",zK,[z("defs",null,[z("linearGradient",{id:`linearGradient-1-${i(n)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,KK),z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,WK)],8,HK),z("linearGradient",{id:`linearGradient-2-${i(n)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,UK),z("stop",{"stop-color":`var(${i(t).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,qK)],8,jK),z("rect",{id:`path-3-${i(n)}`,x:"0",y:"0",width:"17",height:"36"},null,8,YK)]),z("g",GK,[z("g",XK,[z("g",JK,[z("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${i(t).cssVarBlockName("fill-color-3")})`},null,8,ZK),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,QK),z("g",eW,[z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,tW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,nW),z("rect",{fill:`url(#linearGradient-1-${i(n)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,aW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,oW)]),z("rect",{fill:`url(#linearGradient-2-${i(n)})`,x:"13",y:"45",width:"40",height:"36"},null,8,sW),z("g",rW,[z("use",{fill:`var(${i(t).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${i(n)}`},null,8,lW),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${i(n)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,iW)]),z("polygon",{fill:`var(${i(t).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,uW)])])])]))}}),dW=cW;const fW=["src"],pW={key:1};var hW=se({name:"ElEmpty",__name:"empty",props:VK,setup(e){const t=e,{t:n}=Ct(),a=fe("empty"),o=w(()=>t.description||n("el.table.emptyText")),s=w(()=>({width:ln(t.imageSize)}));return(r,l)=>(x(),B("div",{class:T(i(a).b())},[z("div",{class:T(i(a).e("image")),style:Ke(s.value)},[e.image?(x(),B("img",{key:0,src:e.image,ondragstart:"return false"},null,8,fW)):ee(r.$slots,"image",{key:1},()=>[Y(dW)])],6),z("div",{class:T(i(a).e("description"))},[r.$slots.description?ee(r.$slots,"description",{key:0}):(x(),B("p",pW,Se(o.value),1))],2),r.$slots.default?(x(),B("div",{key:0,class:T(i(a).e("bottom"))},[ee(r.$slots,"default")],2)):te("v-if",!0)],2))}}),vW=hW;const D2=rt(vW),mW=Ce({hideOnClickModal:Boolean,src:{type:String,default:""},fit:{type:String,values:["","contain","cover","fill","none","scale-down"],default:""},loading:{type:String,values:["eager","lazy"]},lazy:Boolean,scrollContainer:{type:G([String,Object])},previewSrcList:{type:G(Array),default:()=>rn([])},previewTeleported:Boolean,zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},scale:{type:Number,default:1},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:G(String)}}),gW={load:e=>e instanceof Event,error:e=>e instanceof Event,switch:e=>He(e),close:()=>!0,show:()=>!0},bW=Ce({urlList:{type:G(Array),default:()=>rn([])},zIndex:{type:Number},initialIndex:{type:Number,default:0},infinite:{type:Boolean,default:!0},hideOnClickModal:Boolean,teleported:Boolean,closeOnPressEscape:{type:Boolean,default:!0},zoomRate:{type:Number,default:1.2},scale:{type:Number,default:1},minScale:{type:Number,default:.2},maxScale:{type:Number,default:7},showProgress:Boolean,crossorigin:{type:G(String)}}),yW={close:()=>!0,error:e=>e instanceof Event,switch:e=>He(e),rotate:e=>He(e)},wW=["src","crossorigin"];var SW=se({name:"ElImageViewer",__name:"image-viewer",props:bW,emits:yW,setup(e,{expose:t,emit:n}){const a={CONTAIN:{name:"contain",icon:xo(c3)},ORIGINAL:{name:"original",icon:xo(N3)}},o=e,s=n;let r;const{t:l}=Ct(),u=fe("image-viewer"),{nextZIndex:c}=uu(),d=M(),f=M(),v=tT(),g=w(()=>{const{scale:ie,minScale:ae,maxScale:ne}=o;return HS(ie,ae,ne)}),p=M(!0),h=M(!1),m=M(!1),b=M(o.initialIndex),k=Xt(a.CONTAIN),y=M({scale:g.value,deg:0,offsetX:0,offsetY:0,enableTransition:!1}),S=M(o.zIndex??c());qd(m,{ns:u});const C=w(()=>{const{urlList:ie}=o;return ie.length<=1}),E=w(()=>b.value===0),$=w(()=>b.value===o.urlList.length-1),O=w(()=>o.urlList[b.value]),N=w(()=>[u.e("btn"),u.e("prev"),u.is("disabled",!o.infinite&&E.value)]),R=w(()=>[u.e("btn"),u.e("next"),u.is("disabled",!o.infinite&&$.value)]),A=w(()=>{const{scale:ie,deg:ae,offsetX:ne,offsetY:K,enableTransition:Z}=y.value;let re=ne/ie,ce=K/ie;const ve=ae*Math.PI/180,ke=Math.cos(ve),Ne=Math.sin(ve);re=re*ke+ce*Ne,ce=ce*ke-ne/ie*Ne;const Ie={transform:`scale(${ie}) rotate(${ae}deg) translate(${re}px, ${ce}px)`,transition:Z?"transform .3s":""};return k.value.name===a.CONTAIN.name&&(Ie.maxWidth=Ie.maxHeight="100%"),Ie}),_=w(()=>`${b.value+1} / ${o.urlList.length}`);function V(){U(),r?.(),m.value=!1,s("close")}function H(){const ie=Rs(ne=>{switch(jt(ne)){case we.esc:o.closeOnPressEscape&&V();break;case we.space:F();break;case we.left:j();break;case we.up:Q("zoomIn");break;case we.right:X();break;case we.down:Q("zoomOut");break}}),ae=Rs(ne=>{Q((ne.deltaY||ne.deltaX)<0?"zoomIn":"zoomOut",{zoomRate:o.zoomRate,enableTransition:!1})});v.run(()=>{Ft(document,"keydown",ie),Ft(d,"wheel",ae)})}function U(){v.stop()}function W(){p.value=!1}function P(ie){h.value=!0,p.value=!1,s("error",ie),ie.target.alt=l("el.image.error")}function I(ie){if(p.value||ie.button!==0||!d.value)return;y.value.enableTransition=!1;const{offsetX:ae,offsetY:ne}=y.value,K=ie.pageX,Z=ie.pageY,re=Rs(ke=>{y.value={...y.value,offsetX:ae+ke.pageX-K,offsetY:ne+ke.pageY-Z}}),ce=Ft(document,"mousemove",re),ve=Ft(document,"mouseup",()=>{ce(),ve()});ie.preventDefault()}function L(ie){if(p.value||!d.value||ie.touches.length!==1)return;y.value.enableTransition=!1;const{offsetX:ae,offsetY:ne}=y.value,{pageX:K,pageY:Z}=ie.touches[0],re=Rs(ke=>{const Ne=ke.touches[0];y.value={...y.value,offsetX:ae+Ne.pageX-K,offsetY:ne+Ne.pageY-Z}}),ce=Ft(document,"touchmove",re),ve=Ft(document,"touchend",()=>{ce(),ve()});ie.preventDefault()}function D(){y.value={scale:g.value,deg:0,offsetX:0,offsetY:0,enableTransition:!1}}function F(){if(p.value||h.value)return;const ie=Oi(a),ae=Object.values(a),ne=k.value.name;k.value=a[ie[(ae.findIndex(K=>K.name===ne)+1)%ie.length]],D()}function q(ie){h.value=!1;const ae=o.urlList.length;b.value=(ie+ae)%ae}function j(){E.value&&!o.infinite||q(b.value-1)}function X(){$.value&&!o.infinite||q(b.value+1)}function Q(ie,ae={}){if(p.value||h.value)return;const{minScale:ne,maxScale:K}=o,{zoomRate:Z,rotateDeg:re,enableTransition:ce}={zoomRate:o.zoomRate,rotateDeg:90,enableTransition:!0,...ae};switch(ie){case"zoomOut":y.value.scale>ne&&(y.value.scale=Number.parseFloat((y.value.scale/Z).toFixed(3)));break;case"zoomIn":y.value.scale0)return ie.preventDefault(),!1}}return le(()=>g.value,ie=>{y.value.scale=ie}),le(O,()=>{Re(()=>{f.value?.complete||(p.value=!0)})}),le(b,ie=>{D(),s("switch",ie)}),ht(()=>{m.value=!0,H(),r=Ft("wheel",ge,{passive:!1})}),t({setActiveItem:q}),(ie,ae)=>(x(),oe(i(_l),{to:"body",disabled:!e.teleported},{default:J(()=>[Y(Vn,{name:"viewer-fade",appear:""},{default:J(()=>[z("div",{ref_key:"wrapper",ref:d,tabindex:-1,class:T(i(u).e("wrapper")),style:Ke({zIndex:S.value})},[Y(i(Al),{loop:"",trapped:"","focus-trap-el":d.value,"focus-start-el":"container",onFocusoutPrevented:he,onReleaseRequested:ue},{default:J(()=>[z("div",{class:T(i(u).e("mask")),onClick:ae[0]||(ae[0]=Xe(ne=>e.hideOnClickModal&&V(),["self"]))},null,2),te(" CLOSE "),z("span",{class:T([i(u).e("btn"),i(u).e("close")]),onClick:V},[Y(i(De),null,{default:J(()=>[Y(i(Ha))]),_:1})],2),te(" ARROW "),C.value?te("v-if",!0):(x(),B(Fe,{key:0},[z("span",{class:T(N.value),onClick:j},[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1})],2),z("span",{class:T(R.value),onClick:X},[Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})],2)],64)),ie.$slots.progress||e.showProgress?(x(),B("div",{key:1,class:T([i(u).e("btn"),i(u).e("progress")])},[ee(ie.$slots,"progress",{activeIndex:b.value,total:e.urlList.length},()=>[wt(Se(_.value),1)])],2)):te("v-if",!0),te(" ACTIONS "),z("div",{class:T([i(u).e("btn"),i(u).e("actions")])},[z("div",{class:T(i(u).e("actions__inner"))},[ee(ie.$slots,"toolbar",{actions:Q,prev:j,next:X,reset:F,activeIndex:b.value,setActiveItem:q},()=>[Y(i(De),{onClick:ae[1]||(ae[1]=ne=>Q("zoomOut"))},{default:J(()=>[Y(i(U3))]),_:1}),Y(i(De),{onClick:ae[2]||(ae[2]=ne=>Q("zoomIn"))},{default:J(()=>[Y(i(zC))]),_:1}),z("i",{class:T(i(u).e("actions__divider"))},null,2),Y(i(De),{onClick:F},{default:J(()=>[(x(),oe(it(k.value.icon)))]),_:1}),z("i",{class:T(i(u).e("actions__divider"))},null,2),Y(i(De),{onClick:ae[3]||(ae[3]=ne=>Q("anticlockwise"))},{default:J(()=>[Y(i(T3))]),_:1}),Y(i(De),{onClick:ae[4]||(ae[4]=ne=>Q("clockwise"))},{default:J(()=>[Y(i(O3))]),_:1})])],2)],2),te(" CANVAS "),z("div",{class:T(i(u).e("canvas"))},[h.value&&ie.$slots["viewer-error"]?ee(ie.$slots,"viewer-error",{key:0,activeIndex:b.value,src:O.value}):(x(),B("img",{ref_key:"imgRef",ref:f,key:O.value,src:O.value,style:Ke(A.value),class:T(i(u).e("img")),crossorigin:e.crossorigin,onLoad:W,onError:P,onMousedown:I,onTouchstart:L},null,46,wW))],2),ee(ie.$slots,"default")]),_:3},8,["focus-trap-el"])],6)]),_:3})]),_:3},8,["disabled"]))}}),CW=SW;const B2=rt(CW),kW=["src","loading","crossorigin"],EW={key:0};var xW=se({name:"ElImage",inheritAttrs:!1,__name:"image",props:mW,emits:gW,setup(e,{expose:t,emit:n}){const a=e,o=n,{t:s}=Ct(),r=fe("image"),l=fs(),u=w(()=>fl(Object.entries(l).filter(([P])=>/^(data-|on[A-Z])/i.test(P)||["id","style"].includes(P)))),c=Wd({excludeListeners:!0,excludeKeys:w(()=>Object.keys(u.value))}),d=M(),f=M(!1),v=M(!0),g=M(!1),p=M(),h=M(),m=Mt&&"loading"in HTMLImageElement.prototype;let b;const k=w(()=>[r.e("inner"),S.value&&r.e("preview"),v.value&&r.is("loading")]),y=w(()=>{const{fit:P}=a;return Mt&&P?{objectFit:P}:{}}),S=w(()=>{const{previewSrcList:P}=a;return ye(P)&&P.length>0}),C=w(()=>{const{previewSrcList:P,initialIndex:I}=a;let L=I;return I>P.length-1&&(L=0),L}),E=w(()=>a.loading==="eager"?!1:!m&&a.loading==="lazy"||a.lazy),$=()=>{Mt&&(v.value=!0,f.value=!1,d.value=a.src)};function O(P){v.value=!1,f.value=!1,o("load",P)}function N(P){v.value=!1,f.value=!0,o("error",P)}function R(P){P&&($(),V())}const A=WS(R,200,!0);async function _(){if(!Mt)return;await Re();const{scrollContainer:P}=a;if(ha(P))h.value=P;else if(Le(P)&&P!=="")h.value=document.querySelector(P)??void 0;else if(p.value){const L=Bv(p.value);h.value=nu(L)?void 0:L}const{stop:I}=s_(p,([L])=>{A(L.isIntersecting)},{root:h});b=I}function V(){!Mt||!A||(b?.(),h.value=void 0,b=void 0)}function H(){S.value&&(g.value=!0,o("show"))}function U(){g.value=!1,o("close")}function W(P){o("switch",P)}return le(()=>a.src,()=>{E.value?(v.value=!0,f.value=!1,V(),_()):$()}),ht(()=>{E.value?_():$()}),t({showPreview:H}),(P,I)=>(x(),B("div",dt({ref_key:"container",ref:p},u.value,{class:[i(r).b(),P.$attrs.class]}),[f.value?ee(P.$slots,"error",{key:0},()=>[z("div",{class:T(i(r).e("error"))},Se(i(s)("el.image.error")),3)]):(x(),B(Fe,{key:1},[d.value!==void 0?(x(),B("img",dt({key:0},i(c),{src:d.value,loading:e.loading,style:y.value,class:k.value,crossorigin:e.crossorigin,onClick:H,onLoad:O,onError:N}),null,16,kW)):te("v-if",!0),v.value?(x(),B("div",{key:1,class:T(i(r).e("wrapper"))},[ee(P.$slots,"placeholder",{},()=>[z("div",{class:T(i(r).e("placeholder"))},null,2)])],2)):te("v-if",!0)],64)),S.value?(x(),B(Fe,{key:2},[g.value?(x(),oe(i(B2),{key:0,"z-index":e.zIndex,"initial-index":C.value,infinite:e.infinite,"zoom-rate":e.zoomRate,"min-scale":e.minScale,"max-scale":e.maxScale,"show-progress":e.showProgress,"url-list":e.previewSrcList,scale:e.scale,crossorigin:e.crossorigin,"hide-on-click-modal":e.hideOnClickModal,teleported:e.previewTeleported,"close-on-press-escape":e.closeOnPressEscape,onClose:U,onSwitch:W},ua({toolbar:J(L=>[ee(P.$slots,"toolbar",Jo(Zo(L)))]),default:J(()=>[P.$slots.viewer?(x(),B("div",EW,[ee(P.$slots,"viewer")])):te("v-if",!0)]),_:2},[P.$slots.progress?{name:"progress",fn:J(L=>[ee(P.$slots,"progress",Jo(Zo(L)))]),key:"0"}:void 0,P.$slots["viewer-error"]?{name:"viewer-error",fn:J(L=>[ee(P.$slots,"viewer-error",Jo(Zo(L)))]),key:"1"}:void 0]),1032,["z-index","initial-index","infinite","zoom-rate","min-scale","max-scale","show-progress","url-list","scale","crossorigin","hide-on-click-modal","teleported","close-on-press-escape"])):te("v-if",!0)],64)):te("v-if",!0)],16))}}),TW=xW;const $W=rt(TW),OW=Ce({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.MAX_SAFE_INTEGER},min:{type:Number,default:Number.MIN_SAFE_INTEGER},modelValue:{type:[Number,null]},readonly:Boolean,disabled:{type:Boolean,default:void 0},size:Tn,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:G([String,Number,null]),validator:e=>e===null||He(e)||["min","max"].includes(e),default:null},name:String,placeholder:String,precision:{type:Number,validator:e=>e>=0&&e===Number.parseInt(`${e}`,10)},validateEvent:{type:Boolean,default:!0},...aa(["ariaLabel"]),inputmode:{type:G(String),default:void 0},align:{type:G(String),default:"center"},disabledScientific:Boolean}),RW={[yt]:(e,t)=>t!==e,blur:e=>e instanceof FocusEvent,focus:e=>e instanceof FocusEvent,[Sn]:e=>He(e)||bn(e),[at]:e=>He(e)||bn(e)},NW=["aria-label"],IW=["aria-label"];var PW=se({name:"ElInputNumber",__name:"input-number",props:OW,emits:RW,setup(e,{expose:t,emit:n}){const a=e,o=n,{t:s}=Ct(),r=fe("input-number"),l=M(),u=At({currentValue:a.modelValue,userInput:null}),{formItem:c}=Dn(),d=w(()=>He(a.modelValue)&&a.modelValue<=a.min),f=w(()=>He(a.modelValue)&&a.modelValue>=a.max),v=w(()=>{const P=k(a.step);return Tt(a.precision)?Math.max(k(a.modelValue),P):(P>a.precision&&pt("InputNumber","precision should not be less than the decimal places of step"),a.precision)}),g=w(()=>a.controls&&a.controlsPosition==="right"),p=Cn(),h=un(),m=w(()=>{if(u.userInput!==null)return u.userInput;let P=u.currentValue;if(bn(P))return"";if(He(P)){if(Number.isNaN(P))return"";Tt(a.precision)||(P=P.toFixed(a.precision))}return P}),b=(P,I)=>{if(Tt(I)&&(I=v.value),I===0)return Math.round(P);let L=String(P);const D=L.indexOf(".");if(D===-1||!L.replace(".","").split("")[D+I])return P;const F=L.length;return L.charAt(F-1)==="5"&&(L=`${L.slice(0,Math.max(0,F-1))}6`),Number.parseFloat(Number(L).toFixed(I))},k=P=>{if(bn(P))return 0;const I=P.toString(),L=I.indexOf(".");let D=0;return L!==-1&&(D=I.length-L-1),D},y=(P,I=1)=>He(P)?P>=Number.MAX_SAFE_INTEGER&&I===1?(pt("InputNumber","The value has reached the maximum safe integer limit."),P):P<=Number.MIN_SAFE_INTEGER&&I===-1?(pt("InputNumber","The value has reached the minimum safe integer limit."),P):b(P+a.step*I):u.currentValue,S=P=>{const I=jt(P),L=nC(P);if(a.disabledScientific&&["e","E"].includes(L)){P.preventDefault();return}switch(I){case we.up:P.preventDefault(),C();break;case we.down:P.preventDefault(),E();break}},C=()=>{a.readonly||h.value||f.value||(O(y(Number(m.value)||0)),o(Sn,u.currentValue),U())},E=()=>{a.readonly||h.value||d.value||(O(y(Number(m.value)||0,-1)),o(Sn,u.currentValue),U())},$=(P,I)=>{const{max:L,min:D,step:F,precision:q,stepStrictly:j,valueOnClear:X}=a;LL||QL?L:D,I&&o(at,Q)),Q},O=(P,I=!0)=>{const L=u.currentValue,D=$(P);if(!I){o(at,D);return}u.userInput=null,!(L===D&&P)&&(o(at,D),L!==D&&o(yt,D,L),a.validateEvent&&c?.validate?.("change").catch(F=>pt(F)),u.currentValue=D)},N=P=>{u.userInput=P;const I=P===""?null:Number(P);o(Sn,I),O(I,!1)},R=P=>{const I=P!==""?Number(P):"";(He(I)&&!Number.isNaN(I)||P==="")&&O(I),U(),u.userInput=null},A=()=>{l.value?.focus?.()},_=()=>{l.value?.blur?.()},V=P=>{o("focus",P)},H=P=>{u.userInput=null,u.currentValue===null&&l.value?.input&&(l.value.input.value=""),o("blur",P),a.validateEvent&&c?.validate?.("blur").catch(I=>pt(I))},U=()=>{u.currentValue!==a.modelValue&&(u.currentValue=a.modelValue)},W=P=>{document.activeElement===P.target&&P.preventDefault()};return le(()=>a.modelValue,(P,I)=>{const L=$(P,!0);u.userInput===null&&L!==I&&(u.currentValue=L)},{immediate:!0}),le(()=>a.precision,()=>{u.currentValue=$(a.modelValue)}),ht(()=>{const{min:P,max:I,modelValue:L}=a,D=l.value?.input;if(D.setAttribute("role","spinbutton"),Number.isFinite(I)?D.setAttribute("aria-valuemax",String(I)):D.removeAttribute("aria-valuemax"),Number.isFinite(P)?D.setAttribute("aria-valuemin",String(P)):D.removeAttribute("aria-valuemin"),D.setAttribute("aria-valuenow",u.currentValue||u.currentValue===0?String(u.currentValue):""),D.setAttribute("aria-disabled",String(h.value)),!He(L)&&L!=null){let F=Number(L);Number.isNaN(F)&&(F=null),o(at,F)}D.addEventListener("wheel",W,{passive:!1})}),ro(()=>{l.value?.input?.setAttribute("aria-valuenow",`${u.currentValue??""}`)}),t({focus:A,blur:_}),(P,I)=>(x(),B("div",{class:T([i(r).b(),i(r).m(i(p)),i(r).is("disabled",i(h)),i(r).is("without-controls",!e.controls),i(r).is("controls-right",g.value),i(r).is(e.align,!!e.align)]),onDragstart:I[0]||(I[0]=Xe(()=>{},["prevent"]))},[e.controls?ut((x(),B("span",{key:0,role:"button","aria-label":i(s)("el.inputNumber.decrease"),class:T([i(r).e("decrease"),i(r).is("disabled",d.value)]),onKeydown:on(E,["enter"])},[ee(P.$slots,"decrease-icon",{},()=>[Y(i(De),null,{default:J(()=>[g.value?(x(),oe(i(Fo),{key:0})):(x(),oe(i(m3),{key:1}))]),_:1})])],42,NW)),[[i(nd),E]]):te("v-if",!0),e.controls?ut((x(),B("span",{key:1,role:"button","aria-label":i(s)("el.inputNumber.increase"),class:T([i(r).e("increase"),i(r).is("disabled",f.value)]),onKeydown:on(C,["enter"])},[ee(P.$slots,"increase-icon",{},()=>[Y(i(De),null,{default:J(()=>[g.value?(x(),oe(i(ef),{key:0})):(x(),oe(i(FC),{key:1}))]),_:1})])],42,IW)),[[i(nd),C]]):te("v-if",!0),Y(i(ea),{id:e.id,ref_key:"input",ref:l,type:"number",step:e.step,"model-value":m.value,placeholder:e.placeholder,readonly:e.readonly,disabled:i(h),size:i(p),max:e.max,min:e.min,name:e.name,"aria-label":e.ariaLabel,"validate-event":!1,inputmode:e.inputmode,onKeydown:S,onBlur:H,onFocus:V,onInput:N,onChange:R},ua({_:2},[P.$slots.prefix?{name:"prefix",fn:J(()=>[ee(P.$slots,"prefix")]),key:"0"}:void 0,P.$slots.suffix?{name:"suffix",fn:J(()=>[ee(P.$slots,"suffix")]),key:"1"}:void 0]),1032,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","aria-label","inputmode"])],34))}}),MW=PW;const F2=rt(MW),_W=Ce({modelValue:{type:G(Array)},max:Number,tagType:{...us.type,default:"info"},tagEffect:us.effect,effect:{type:G(String),default:"light"},trigger:{type:G(String),default:we.enter},draggable:Boolean,delimiter:{type:[String,RegExp],default:""},size:Tn,clearable:Boolean,clearIcon:{type:Kt,default:Vo},disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},readonly:Boolean,autofocus:Boolean,id:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},placeholder:String,autocomplete:{type:G(String),default:"off"},saveOnBlur:{type:Boolean,default:!0},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},ariaLabel:String}),AW={[at]:e=>ye(e)||Tt(e),[yt]:e=>ye(e)||Tt(e),[Sn]:e=>Le(e),"add-tag":e=>Le(e)||ye(e),"remove-tag":(e,t)=>Le(e)&&He(t),"drag-tag":(e,t,n)=>He(e)&&He(t)&&Le(n),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0};function LW({wrapperRef:e,handleDragged:t,afterDragged:n}){const a=fe("input-tag"),o=Xt(),s=M(!1);let r,l,u,c;function d(p){return`.${a.e("inner")} .${a.namespace.value}-tag:nth-child(${p+1})`}function f(p,h){r=h,l=e.value.querySelector(d(h)),l&&(l.style.opacity="0.5"),p.dataTransfer.effectAllowed="move"}function v(p,h){if(u=h,p.preventDefault(),p.dataTransfer.dropEffect="move",Tt(r)||r===h){s.value=!1;return}const m=e.value.querySelector(d(h)).getBoundingClientRect(),b=r+1!==h,k=r-1!==h,y=p.clientX-m.left,S=b?k?.5:1:-1,C=k?b?.5:0:1;y<=m.width*S?c="before":y>m.width*C?c="after":c=void 0;const E=e.value.querySelector(`.${a.e("inner")}`),$=E.getBoundingClientRect(),O=Number.parseFloat(Yo(E,"gap"))/2,N=m.top-$.top;let R=-9999;if(c==="before")R=Math.max(m.left-$.left-O,Math.floor(-O/2));else if(c==="after"){const A=m.right-$.left;R=A+($.width===A?Math.floor(O/2):O)}JS(o.value,{top:`${N}px`,left:`${R}px`}),s.value=!!c}function g(p){p.preventDefault(),l&&(l.style.opacity=""),c&&!Tt(r)&&!Tt(u)&&r!==u&&t(r,u,c),s.value=!1,r=void 0,l=null,u=void 0,c=void 0,n?.()}return{dropIndicatorRef:o,showDropIndicator:s,handleDragStart:f,handleDragOver:v,handleDragEnd:g}}function DW(){const e=M(!1);return{hovering:e,handleMouseEnter:()=>{e.value=!0},handleMouseLeave:()=>{e.value=!1}}}function BW({props:e,emit:t,formItem:n}){const a=un(),o=Cn(),s=Xt(),r=M(),l=M(),u=w(()=>["small"].includes(o.value)?"small":"default"),c=w(()=>e.modelValue?.length?void 0:e.placeholder),d=w(()=>!(e.readonly||a.value)),f=w(()=>Tt(e.max)?!1:(e.modelValue?.length??0)>=e.max),v=w(()=>e.collapseTags?e.modelValue?.slice(0,e.maxCollapseTags):e.modelValue),g=w(()=>e.collapseTags?e.modelValue?.slice(e.maxCollapseTags):[]),p=W=>{const P=[...e.modelValue??[],...Nn(W)];t(at,P),t(yt,P),t("add-tag",W),r.value=void 0},h=W=>{const P=W.split(e.delimiter),I=P.length>1?P.map(L=>L.trim()).filter(Boolean):[];if(e.max){const L=e.max-(e.modelValue?.length??0);I.splice(L)}return I.length===1?I[0]:I},m=W=>{const P=W.clipboardData?.getData("text");if(e.readonly||f.value||!e.delimiter||!P)return;const{selectionStart:I=0,selectionEnd:L=0,value:D}=W.target,F=D.slice(0,I)+P+D.slice(L),q=h(F);q.length&&(p(q),t(Sn,F),W.preventDefault())},b=W=>{if(f.value){r.value=void 0;return}if(!_.value){if(e.delimiter&&r.value){const P=h(r.value);P.length&&p(P)}t(Sn,W.target.value)}},k=W=>{if(!_.value)switch(jt(W)){case e.trigger:W.preventDefault(),W.stopPropagation(),S();break;case we.numpadEnter:e.trigger===we.enter&&(W.preventDefault(),W.stopPropagation(),S());break;case we.backspace:!r.value&&e.modelValue?.length&&(W.preventDefault(),W.stopPropagation(),C(e.modelValue.length-1));break}},y=W=>{_.value||!GS()||jt(W)===we.space&&e.trigger===we.space&&(W.preventDefault(),W.stopPropagation(),S())},S=()=>{const W=r.value?.trim();!W||f.value||p(W)},C=W=>{const P=(e.modelValue??[]).slice(),[I]=P.splice(W,1);t(at,P),t(yt,P),t("remove-tag",I,W)},E=()=>{r.value=void 0,t(at,void 0),t(yt,void 0),t("clear")},$=(W,P,I)=>{const L=(e.modelValue??[]).slice(),[D]=L.splice(W,1),F=P>W&&I==="before"?-1:P{s.value?.focus()},N=()=>{s.value?.blur()},{wrapperRef:R,isFocused:A}=ms(s,{disabled:a,beforeBlur(W){return l.value?.isFocusInsideContent(W)},afterBlur(){e.saveOnBlur?S():r.value=void 0,e.validateEvent&&n?.validate?.("blur").catch(W=>pt(W))}}),{isComposing:_,handleCompositionStart:V,handleCompositionUpdate:H,handleCompositionEnd:U}=pu({afterComposition:b});return le(()=>e.modelValue,()=>{e.validateEvent&&n?.validate?.(yt).catch(W=>pt(W))}),{inputRef:s,wrapperRef:R,tagTooltipRef:l,isFocused:A,isComposing:_,inputValue:r,size:o,tagSize:u,placeholder:c,closable:d,disabled:a,inputLimit:f,showTagList:v,collapseTagList:g,handleDragged:$,handlePaste:m,handleInput:b,handleKeydown:k,handleKeyup:y,handleAddTag:S,handleRemoveTag:C,handleClear:E,handleCompositionStart:V,handleCompositionUpdate:H,handleCompositionEnd:U,focus:O,blur:N}}function FW({props:e,isFocused:t,hovering:n,disabled:a,inputValue:o,size:s,validateState:r,validateIcon:l,needStatusIcon:u}){const c=fs(),d=vn(),f=fe("input-tag"),v=fe("input"),g=M(),p=M(),h=w(()=>[f.b(),f.is("focused",t.value),f.is("hovering",n.value),f.is("disabled",a.value),f.m(s.value),f.e("wrapper"),c.class]),m=w(()=>[c.style]),b=w(()=>[f.e("inner"),f.is("draggable",e.draggable),f.is("left-space",!e.modelValue?.length&&!d.prefix),f.is("right-space",!e.modelValue?.length&&!y.value)]),k=w(()=>e.clearable&&!a.value&&!e.readonly&&(e.modelValue?.length||o.value)&&(t.value||n.value)),y=w(()=>d.suffix||k.value||r.value&&l.value&&u.value),S=At({innerWidth:0,collapseItemWidth:0}),C=()=>{if(!p.value)return 0;const N=window.getComputedStyle(p.value);return Number.parseFloat(N.gap||"6px")},E=()=>{S.innerWidth=Number.parseFloat(window.getComputedStyle(p.value).width)},$=()=>{S.collapseItemWidth=g.value.getBoundingClientRect().width},O=w(()=>{if(!e.collapseTags)return{};const N=C(),R=N+Ad,A=g.value&&e.maxCollapseTags===1?S.innerWidth-S.collapseItemWidth-N-R:S.innerWidth-R;return{maxWidth:`${Math.max(A,0)}px`}});return en(p,E),en(g,$),{ns:f,nsInput:v,containerKls:h,containerStyle:m,innerKls:b,showClear:k,showSuffix:y,tagStyle:O,collapseItemRef:g,innerRef:p}}const VW=["id","minlength","maxlength","disabled","readonly","autocomplete","tabindex","placeholder","autofocus","ariaLabel"],zW=["textContent"];var HW=se({name:"ElInputTag",inheritAttrs:!1,__name:"input-tag",props:_W,emits:AW,setup(e,{expose:t,emit:n}){const a=e,o=n,s=Wd(),r=vn(),{form:l,formItem:u}=Dn(),{inputId:c}=Ia(a,{formItemContext:u}),d=w(()=>l?.statusIcon??!1),f=w(()=>u?.validateState||""),v=w(()=>f.value&&nf[f.value]),{inputRef:g,wrapperRef:p,tagTooltipRef:h,isFocused:m,inputValue:b,size:k,tagSize:y,placeholder:S,closable:C,disabled:E,showTagList:$,collapseTagList:O,handleDragged:N,handlePaste:R,handleInput:A,handleKeydown:_,handleKeyup:V,handleRemoveTag:H,handleClear:U,handleCompositionStart:W,handleCompositionUpdate:P,handleCompositionEnd:I,focus:L,blur:D}=BW({props:a,emit:o,formItem:u}),{hovering:F,handleMouseEnter:q,handleMouseLeave:j}=DW(),{calculatorRef:X,inputStyle:Q}=Av(),{dropIndicatorRef:he,showDropIndicator:ue,handleDragStart:ge,handleDragOver:ie,handleDragEnd:ae}=LW({wrapperRef:p,handleDragged:N,afterDragged:L}),{ns:ne,nsInput:K,containerKls:Z,containerStyle:re,innerKls:ce,showClear:ve,showSuffix:ke,tagStyle:Ne,collapseItemRef:Ie,innerRef:$e}=FW({props:a,hovering:F,isFocused:m,inputValue:b,disabled:E,size:k,validateState:f,validateIcon:v,needStatusIcon:d});return t({focus:L,blur:D}),(pe,Ee)=>(x(),B("div",{ref_key:"wrapperRef",ref:p,class:T(i(Z)),style:Ke(i(re)),onMouseenter:Ee[9]||(Ee[9]=(...me)=>i(q)&&i(q)(...me)),onMouseleave:Ee[10]||(Ee[10]=(...me)=>i(j)&&i(j)(...me))},[i(r).prefix?(x(),B("div",{key:0,class:T(i(ne).e("prefix"))},[ee(pe.$slots,"prefix")],2)):te("v-if",!0),z("div",{ref_key:"innerRef",ref:$e,class:T(i(ce))},[(x(!0),B(Fe,null,gt(i($),(me,Me)=>(x(),oe(i(ts),{key:Me,size:i(y),closable:i(C),type:e.tagType,effect:e.tagEffect,draggable:i(C)&&e.draggable,style:Ke(i(Ne)),"disable-transitions":"",onClose:We=>i(H)(Me),onDragstart:We=>i(ge)(We,Me),onDragover:We=>i(ie)(We,Me),onDragend:i(ae),onDrop:Ee[0]||(Ee[0]=Xe(()=>{},["stop"]))},{default:J(()=>[ee(pe.$slots,"tag",{value:me,index:Me},()=>[wt(Se(me),1)])]),_:2},1032,["size","closable","type","effect","draggable","style","onClose","onDragstart","onDragover","onDragend"]))),128)),e.collapseTags&&e.modelValue&&e.modelValue.length>e.maxCollapseTags?(x(),oe(i(Ln),{key:0,ref_key:"tagTooltipRef",ref:h,disabled:!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom"},{default:J(()=>[z("div",{ref_key:"collapseItemRef",ref:Ie,class:T(i(ne).e("collapse-tag"))},[Y(i(ts),{closable:!1,size:i(y),type:e.tagType,effect:e.tagEffect,"disable-transitions":""},{default:J(()=>[wt(" + "+Se(e.modelValue.length-e.maxCollapseTags),1)]),_:1},8,["size","type","effect"])],2)]),content:J(()=>[z("div",{class:T(i(ne).e("input-tag-list"))},[(x(!0),B(Fe,null,gt(i(O),(me,Me)=>(x(),oe(i(ts),{key:Me,size:i(y),closable:i(C),type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:We=>i(H)(Me+e.maxCollapseTags)},{default:J(()=>[ee(pe.$slots,"tag",{value:me,index:Me+e.maxCollapseTags},()=>[wt(Se(me),1)])]),_:2},1032,["size","closable","type","effect","onClose"]))),128))],2)]),_:3},8,["disabled","effect"])):te("v-if",!0),z("div",{class:T(i(ne).e("input-wrapper"))},[ut(z("input",dt({id:i(c),ref_key:"inputRef",ref:g,"onUpdate:modelValue":Ee[1]||(Ee[1]=me=>Jt(b)?b.value=me:null)},i(s),{type:"text",minlength:e.minlength,maxlength:e.maxlength,disabled:i(E),readonly:e.readonly,autocomplete:e.autocomplete,tabindex:e.tabindex,placeholder:i(S),autofocus:e.autofocus,ariaLabel:e.ariaLabel,class:i(ne).e("input"),style:i(Q),onCompositionstart:Ee[2]||(Ee[2]=(...me)=>i(W)&&i(W)(...me)),onCompositionupdate:Ee[3]||(Ee[3]=(...me)=>i(P)&&i(P)(...me)),onCompositionend:Ee[4]||(Ee[4]=(...me)=>i(I)&&i(I)(...me)),onPaste:Ee[5]||(Ee[5]=(...me)=>i(R)&&i(R)(...me)),onInput:Ee[6]||(Ee[6]=(...me)=>i(A)&&i(A)(...me)),onKeydown:Ee[7]||(Ee[7]=(...me)=>i(_)&&i(_)(...me)),onKeyup:Ee[8]||(Ee[8]=(...me)=>i(V)&&i(V)(...me))}),null,16,VW),[[hv,i(b)]]),z("span",{ref_key:"calculatorRef",ref:X,"aria-hidden":"true",class:T(i(ne).e("input-calculator")),textContent:Se(i(b))},null,10,zW)],2),ut(z("div",{ref_key:"dropIndicatorRef",ref:he,class:T(i(ne).e("drop-indicator"))},null,2),[[Pt,i(ue)]])],2),i(ke)?(x(),B("div",{key:1,class:T(i(ne).e("suffix"))},[ee(pe.$slots,"suffix"),i(ve)?(x(),oe(i(De),{key:0,class:T([i(ne).e("icon"),i(ne).e("clear")]),onMousedown:Xe(i(Dt),["prevent"]),onClick:i(U)},{default:J(()=>[(x(),oe(it(e.clearIcon)))]),_:1},8,["class","onMousedown","onClick"])):te("v-if",!0),f.value&&v.value&&d.value?(x(),oe(i(De),{key:1,class:T([i(K).e("icon"),i(K).e("validateIcon"),i(K).is("loading",f.value==="validating")])},{default:J(()=>[(x(),oe(it(v.value)))]),_:1},8,["class"])):te("v-if",!0)],2)):te("v-if",!0)],38))}}),KW=HW;const WW=rt(KW),jW=Ce({type:{type:String,values:["primary","success","warning","info","danger","default"],default:void 0},underline:{type:[Boolean,String],values:[!0,!1,"always","never","hover"],default:void 0},disabled:Boolean,href:{type:String,default:""},target:{type:String,default:"_self"},icon:{type:Kt}}),UW={click:e=>e instanceof MouseEvent},qW=["href","target"];var YW=se({name:"ElLink",__name:"link",props:jW,emits:UW,setup(e,{emit:t}){const n=e,a=t,o=gs("link");To({scope:"el-link",from:"The underline option (boolean)",replacement:"'always' | 'hover' | 'never'",version:"3.0.0",ref:"https://element-plus.org/en-US/component/link.html#underline"},w(()=>Ht(n.underline)));const s=fe("link"),r=w(()=>[s.b(),s.m(n.type??o.value?.type??"default"),s.is("disabled",n.disabled),s.is("underline",l.value==="always"),s.is("hover-underline",l.value==="hover"&&!n.disabled)]),l=w(()=>Ht(n.underline)?n.underline?"hover":"never":n.underline??o.value?.underline??"hover");function u(c){n.disabled||a("click",c)}return(c,d)=>(x(),B("a",{class:T(r.value),href:e.disabled||!e.href?void 0:e.href,target:e.disabled||!e.href?void 0:e.target,onClick:u},[e.icon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1})):te("v-if",!0),c.$slots.default?(x(),B("span",{key:1,class:T(i(s).e("inner"))},[ee(c.$slots,"default")],2)):te("v-if",!0),c.$slots.icon?ee(c.$slots,"icon",{key:2}):te("v-if",!0)],10,qW))}}),GW=YW;const XW=rt(GW),Rm="rootMenu",cd="subMenu:";function V2(e,t){const n=w(()=>{let a=e.parent;const o=[t.value];for(;a.type.name!=="ElMenu";)a.props.index&&o.unshift(a.props.index),a=a.parent;return o});return{parentMenu:w(()=>{let a=e.parent;for(;a&&!["ElMenu","ElSubMenu"].includes(a.type.name);)a=a.parent;return a}),indexPath:n}}function JW(e){return w(()=>{const t=e.backgroundColor;return t?new pn(t).shade(20).toString():""})}const z2=(e,t)=>{const n=fe("menu");return w(()=>n.cssVarBlock({"text-color":e.textColor||"","hover-text-color":e.textColor||"","bg-color":e.backgroundColor||"","hover-bg-color":JW(e).value||"","active-color":e.activeTextColor||"",level:`${t}`}))},ZW=Ce({index:{type:String,required:!0},showTimeout:Number,hideTimeout:Number,popperClass:String,popperStyle:{type:G([String,Object])},disabled:Boolean,teleported:{type:Boolean,default:void 0},popperOffset:Number,expandCloseIcon:{type:Kt},expandOpenIcon:{type:Kt},collapseCloseIcon:{type:Kt},collapseOpenIcon:{type:Kt}}),ap="ElSubMenu";var Nm=se({name:ap,props:ZW,setup(e,{slots:t,expose:n}){const a=ft(),{indexPath:o,parentMenu:s}=V2(a,w(()=>e.index)),r=fe("menu"),l=fe("sub-menu"),u=_e(Rm);u||nn(ap,"can not inject root menu");const c=_e(`${cd}${s.value.uid}`);c||nn(ap,"can not inject sub menu");const d=M({}),f=M({});let v;const g=M(!1),p=M(),h=M(),m=w(()=>c.level===0),b=w(()=>O.value==="horizontal"&&m.value?"bottom-start":"right-start"),k=w(()=>O.value==="horizontal"&&m.value||O.value==="vertical"&&!u.props.collapse?e.expandCloseIcon&&e.expandOpenIcon?E.value?e.expandOpenIcon:e.expandCloseIcon:Fo:e.collapseCloseIcon&&e.collapseOpenIcon?E.value?e.collapseOpenIcon:e.collapseCloseIcon:na),y=w(()=>{const q=e.teleported;return Tt(q)?m.value:q}),S=w(()=>u.props.collapse?`${r.namespace.value}-zoom-in-left`:`${r.namespace.value}-zoom-in-top`),C=w(()=>O.value==="horizontal"&&m.value?["bottom-start","bottom-end","top-start","top-end","right-start","left-start"]:["right-start","right","right-end","left-start","bottom-start","bottom-end","top-start","top-end"]),E=w(()=>u.openedMenus.includes(e.index)),$=w(()=>[...Object.values(d.value),...Object.values(f.value)].some(({active:q})=>q)),O=w(()=>u.props.mode),N=w(()=>u.props.persistent),R=At({index:e.index,indexPath:o,active:$}),A=z2(u.props,c.level+1),_=w(()=>e.popperOffset??u.props.popperOffset),V=w(()=>e.popperClass??u.props.popperClass),H=w(()=>e.popperStyle??u.props.popperStyle),U=w(()=>e.showTimeout??u.props.showTimeout),W=w(()=>e.hideTimeout??u.props.hideTimeout),P=()=>h.value?.popperRef?.popperInstanceRef?.destroy(),I=q=>{q||P()},L=()=>{u.props.menuTrigger==="hover"&&u.props.mode==="horizontal"||u.props.collapse&&u.props.mode==="vertical"||e.disabled||u.handleSubMenuClick({index:e.index,indexPath:o.value,active:$.value})},D=(q,j=U.value)=>{if(q.type!=="focus"){if(u.props.menuTrigger==="click"&&u.props.mode==="horizontal"||!u.props.collapse&&u.props.mode==="vertical"||e.disabled){c.mouseInChild.value=!0;return}c.mouseInChild.value=!0,v?.(),{stop:v}=pl(()=>{u.openMenu(e.index,o.value)},j),y.value&&s.value.vnode.el?.dispatchEvent(new MouseEvent("mouseenter")),q.type==="mouseenter"&&q.target&&Re(()=>{ru(q.target,{preventScroll:!0})})}},F=(q=!1)=>{if(u.props.menuTrigger==="click"&&u.props.mode==="horizontal"||!u.props.collapse&&u.props.mode==="vertical"){c.mouseInChild.value=!1;return}v?.(),c.mouseInChild.value=!1,{stop:v}=pl(()=>!g.value&&u.closeMenu(e.index,o.value),W.value),y.value&&q&&c.handleMouseleave?.(!0)};le(()=>u.props.collapse,q=>I(!!q));{const q=X=>{f.value[X.index]=X},j=X=>{delete f.value[X.index]};St(`${cd}${a.uid}`,{addSubMenu:q,removeSubMenu:j,handleMouseleave:F,mouseInChild:g,level:c.level+1})}return n({opened:E}),ht(()=>{u.addSubMenu(R),c.addSubMenu(R)}),Bt(()=>{c.removeSubMenu(R),u.removeSubMenu(R)}),()=>{const q=[t.title?.(),Ye(De,{class:l.e("icon-arrow"),style:{transform:E.value?e.expandCloseIcon&&e.expandOpenIcon||e.collapseCloseIcon&&e.collapseOpenIcon&&u.props.collapse?"none":"rotateZ(180deg)":"none"}},{default:()=>Le(k.value)?Ye(a.appContext.components[k.value]):Ye(k.value)})],j=u.isMenuPopup?Ye(Ln,{ref:h,visible:E.value,effect:"light",pure:!0,offset:_.value,showArrow:!1,persistent:N.value,popperClass:V.value,popperStyle:H.value,placement:b.value,teleported:y.value,fallbackPlacements:C.value,transition:S.value,gpuAcceleration:!1},{content:()=>Ye("div",{class:[r.m(O.value),r.m("popup-container"),V.value],onMouseenter:X=>D(X,100),onMouseleave:()=>F(!0),onFocus:X=>D(X,100)},[Ye("ul",{class:[r.b(),r.m("popup"),r.m(`popup-${b.value}`)],style:A.value},[t.default?.()])]),default:()=>Ye("div",{class:l.e("title"),onClick:L},q)}):Ye(Fe,{},[Ye("div",{class:l.e("title"),ref:p,onClick:L},q),Ye(rf,{},{default:()=>ut(Ye("ul",{role:"menu",class:[r.b(),r.m("inline")],style:A.value},[t.default?.()]),[[Pt,E.value]])})]);return Ye("li",{class:[l.b(),l.is("active",$.value),l.is("opened",E.value),l.is("disabled",e.disabled)],role:"menuitem",ariaHaspopup:!0,ariaExpanded:E.value,onMouseenter:D,onMouseleave:()=>F(),onFocus:D},[j])}}}),QW=class{constructor(e,t){this.parent=e,this.domNode=t,this.subIndex=0,this.subIndex=0,this.init()}init(){this.subMenuItems=this.domNode.querySelectorAll("li"),this.addListeners()}gotoSubIndex(e){e===this.subMenuItems.length?e=0:e<0&&(e=this.subMenuItems.length-1),this.subMenuItems[e].focus(),this.subIndex=e}addListeners(){const e=this.parent.domNode;Array.prototype.forEach.call(this.subMenuItems,t=>{t.addEventListener("keydown",n=>{const a=jt(n);let o=!1;switch(a){case we.down:this.gotoSubIndex(this.subIndex+1),o=!0;break;case we.up:this.gotoSubIndex(this.subIndex-1),o=!0;break;case we.tab:uc(e,"mouseleave");break;case we.enter:case we.numpadEnter:case we.space:o=!0,n.currentTarget.click();break}return o&&(n.preventDefault(),n.stopPropagation()),!1})})}},ej=class{constructor(e,t){this.domNode=e,this.submenu=null,this.submenu=null,this.init(t)}init(e){this.domNode.setAttribute("tabindex","0");const t=this.domNode.querySelector(`.${e}-menu`);t&&(this.submenu=new QW(this,t)),this.addListeners()}addListeners(){this.domNode.addEventListener("keydown",e=>{const t=jt(e);let n=!1;switch(t){case we.down:uc(e.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(0),n=!0;break;case we.up:uc(e.currentTarget,"mouseenter"),this.submenu&&this.submenu.gotoSubIndex(this.submenu.subMenuItems.length-1),n=!0;break;case we.tab:uc(e.currentTarget,"mouseleave");break;case we.enter:case we.numpadEnter:case we.space:n=!0,e.currentTarget.click();break}n&&e.preventDefault()})}},tj=class{constructor(e,t){this.domNode=e,this.init(t)}init(e){const t=this.domNode.childNodes;Array.from(t).forEach(n=>{n.nodeType===1&&new ej(n,e)})}},nj=se({name:"ElMenuCollapseTransition",__name:"menu-collapse-transition",setup(e){const t=fe("menu"),n={onBeforeEnter:a=>a.style.opacity="0.2",onEnter(a,o){La(a,`${t.namespace.value}-opacity-transition`),a.style.opacity="1",o()},onAfterEnter(a){ta(a,`${t.namespace.value}-opacity-transition`),a.style.opacity=""},onBeforeLeave(a){a.dataset||(a.dataset={}),$o(a,t.m("collapse"))?(ta(a,t.m("collapse")),a.dataset.oldOverflow=a.style.overflow,a.dataset.scrollWidth=a.clientWidth.toString(),La(a,t.m("collapse"))):(La(a,t.m("collapse")),a.dataset.oldOverflow=a.style.overflow,a.dataset.scrollWidth=a.clientWidth.toString(),ta(a,t.m("collapse"))),a.style.width=`${a.scrollWidth}px`,a.style.overflow="hidden"},onLeave(a){La(a,"horizontal-collapse-transition"),a.style.width=`${a.dataset.scrollWidth}px`}};return(a,o)=>(x(),oe(Vn,dt({mode:"out-in"},n),{default:J(()=>[ee(a.$slots,"default")]),_:3},16))}}),aj=nj;const oj=Ce({mode:{type:String,values:["horizontal","vertical"],default:"vertical"},defaultActive:{type:String,default:""},defaultOpeneds:{type:G(Array),default:()=>rn([])},uniqueOpened:Boolean,router:Boolean,menuTrigger:{type:String,values:["hover","click"],default:"hover"},collapse:Boolean,backgroundColor:String,textColor:String,activeTextColor:String,closeOnClickOutside:Boolean,collapseTransition:{type:Boolean,default:!0},ellipsis:{type:Boolean,default:!0},popperOffset:{type:Number,default:6},ellipsisIcon:{type:Kt,default:()=>y3},popperEffect:{type:G(String),default:"dark"},popperClass:String,popperStyle:{type:G([String,Object])},showTimeout:{type:Number,default:300},hideTimeout:{type:Number,default:300},persistent:{type:Boolean,default:!0}}),op=e=>ye(e)&&e.every(t=>Le(t)),sj={close:(e,t)=>Le(e)&&op(t),open:(e,t)=>Le(e)&&op(t),select:(e,t,n,a)=>Le(e)&&op(t)&&ot(n)&&(Tt(a)||a instanceof Promise)},y0=64;var rj=se({name:"ElMenu",props:oj,emits:sj,setup(e,{emit:t,slots:n,expose:a}){const o=ft(),s=o.appContext.config.globalProperties.$router,r=M(),l=M(),u=fe("menu"),c=fe("sub-menu");let d=y0;const f=M(-1),v=M(e.defaultOpeneds&&!e.collapse?e.defaultOpeneds.slice(0):[]),g=M(e.defaultActive),p=M({}),h=M({}),m=w(()=>e.mode==="horizontal"||e.mode==="vertical"&&e.collapse),b=()=>{const P=g.value&&p.value[g.value];!P||e.mode==="horizontal"||e.collapse||P.indexPath.forEach(I=>{const L=h.value[I];L&&k(I,L.indexPath)})},k=(P,I)=>{v.value.includes(P)||(e.uniqueOpened&&(v.value=v.value.filter(L=>I.includes(L))),v.value.push(P),t("open",P,I))},y=P=>{const I=v.value.indexOf(P);I!==-1&&v.value.splice(I,1)},S=(P,I)=>{y(P),t("close",P,I)},C=({index:P,indexPath:I})=>{v.value.includes(P)?S(P,I):k(P,I)},E=P=>{(e.mode==="horizontal"||e.collapse)&&(v.value=[]);const{index:I,indexPath:L}=P;if(!(bn(I)||bn(L)))if(e.router&&s){const D=P.route||I,F=s.push(D).then(q=>(q||(g.value=I),q));t("select",I,L,{index:I,indexPath:L,route:D},F)}else g.value=I,t("select",I,L,{index:I,indexPath:L})},$=P=>{const I=p.value;g.value=(I[P]||g.value&&I[g.value]||I[e.defaultActive])?.index??P},O=P=>{const I=getComputedStyle(P),L=Number.parseInt(I.marginLeft,10),D=Number.parseInt(I.marginRight,10);return P.offsetWidth+L+D||0},N=()=>{if(!r.value)return-1;const P=Array.from(r.value.childNodes).filter(X=>X.nodeName!=="#comment"&&(X.nodeName!=="#text"||X.nodeValue)),I=getComputedStyle(r.value),L=Number.parseInt(I.paddingLeft,10),D=Number.parseInt(I.paddingRight,10),F=r.value.clientWidth-L-D;let q=0,j=0;return P.forEach((X,Q)=>{q+=O(X),q<=F-d&&(j=Q+1)}),j===P.length?-1:j},R=P=>h.value[P].indexPath,A=(P,I=33.34)=>{let L;return()=>{L&&clearTimeout(L),L=setTimeout(()=>{P()},I)}};let _=!0;const V=()=>{const P=xn(l);if(P&&(d=O(P)||y0),f.value===N())return;const I=()=>{f.value=-1,Re(()=>{f.value=N()})};_?I():A(I)(),_=!1};le(()=>e.defaultActive,P=>{p.value[P]||(g.value=""),$(P)}),le(()=>e.collapse,P=>{P&&(v.value=[])}),le(p.value,b);let H;wa(()=>{e.mode==="horizontal"&&e.ellipsis?H=en(r,V).stop:H?.()});const U=M(!1);{const P=F=>{h.value[F.index]=F},I=F=>{delete h.value[F.index]};St(Rm,At({props:e,openedMenus:v,items:p,subMenus:h,activeIndex:g,isMenuPopup:m,addMenuItem:F=>{p.value[F.index]=F},removeMenuItem:F=>{delete p.value[F.index]},addSubMenu:P,removeSubMenu:I,openMenu:k,closeMenu:S,handleMenuItemClick:E,handleSubMenuClick:C})),St(`${cd}${o.uid}`,{addSubMenu:P,removeSubMenu:I,mouseInChild:U,level:0})}ht(()=>{e.mode==="horizontal"&&new tj(o.vnode.el,u.namespace.value)}),a({open:I=>{const{indexPath:L}=h.value[I];L.forEach(D=>k(D,L))},close:y,updateActiveIndex:$,handleResize:V});const W=z2(e,0);return()=>{let P=n.default?.()??[];const I=[];if(e.mode==="horizontal"&&r.value){const F=Ta(P).filter(X=>X?.shapeFlag!==8),q=f.value===-1?F:F.slice(0,f.value),j=f.value===-1?[]:F.slice(f.value);j?.length&&e.ellipsis&&(P=q,I.push(Ye(Nm,{ref:l,index:"sub-menu-more",class:c.e("hide-arrow"),popperOffset:e.popperOffset},{title:()=>Ye(De,{class:c.e("icon-more")},{default:()=>Ye(e.ellipsisIcon)}),default:()=>j})))}const L=e.closeOnClickOutside?[[zs,()=>{v.value.length&&(U.value||(v.value.forEach(F=>t("close",F,R(F))),v.value=[]))}]]:[],D=ut(Ye("ul",{key:String(e.collapse),role:"menubar",ref:r,style:W.value,class:{[u.b()]:!0,[u.m(e.mode)]:!0,[u.m("collapse")]:e.collapse}},[...P,...I]),L);return e.collapseTransition&&e.mode==="vertical"?Ye(aj,()=>D):D}}});const lj=Ce({index:{type:G([String,null]),default:null},route:{type:G([String,Object])},disabled:Boolean}),ij={click:e=>Le(e.index)&&ye(e.indexPath)},uj={title:String},Zu="ElMenuItem";var cj=se({name:Zu,__name:"menu-item",props:lj,emits:ij,setup(e,{expose:t,emit:n}){const a=e,o=n;va(a.index)&&pt(Zu,'Missing required prop: "index"');const s=ft(),r=_e(Rm),l=fe("menu"),u=fe("menu-item");r||nn(Zu,"can not inject root menu");const{parentMenu:c,indexPath:d}=V2(s,Vt(a,"index")),f=_e(`${cd}${c.value.uid}`);f||nn(Zu,"can not inject sub menu");const v=w(()=>a.index===r.activeIndex),g=At({index:a.index,indexPath:d,active:v}),p=()=>{a.disabled||(r.handleMenuItemClick({index:a.index,indexPath:d.value,route:a.route}),o("click",g))};return ht(()=>{f.addSubMenu(g),r.addMenuItem(g)}),Bt(()=>{f.removeSubMenu(g),r.removeMenuItem(g)}),t({parentMenu:c,rootMenu:r,active:v,nsMenu:l,nsMenuItem:u,handleClick:p}),(h,m)=>(x(),B("li",{class:T([i(u).b(),i(u).is("active",v.value),i(u).is("disabled",e.disabled)]),role:"menuitem",tabindex:"-1",onClick:p},[i(c).type.name==="ElMenu"&&i(r).props.collapse&&h.$slots.title?(x(),oe(i(Ln),{key:0,effect:i(r).props.popperEffect,placement:"right","fallback-placements":["left"],"popper-class":i(r).props.popperClass,"popper-style":i(r).props.popperStyle,persistent:i(r).props.persistent,"focus-on-target":""},{content:J(()=>[ee(h.$slots,"title")]),default:J(()=>[z("div",{class:T(i(l).be("tooltip","trigger"))},[ee(h.$slots,"default")],2)]),_:3},8,["effect","popper-class","popper-style","persistent"])):(x(),B(Fe,{key:1},[ee(h.$slots,"default"),ee(h.$slots,"title")],64))],2))}}),H2=cj,dj=se({name:"ElMenuItemGroup",__name:"menu-item-group",props:uj,setup(e){const t=fe("menu-item-group");return(n,a)=>(x(),B("li",{class:T(i(t).b())},[z("div",{class:T(i(t).e("title"))},[n.$slots.title?ee(n.$slots,"title",{key:1}):(x(),B(Fe,{key:0},[wt(Se(e.title),1)],64))],2),z("ul",null,[ee(n.$slots,"default")])],2))}}),K2=dj;const fj=rt(rj,{MenuItem:H2,MenuItemGroup:K2,SubMenu:Nm}),pj=an(H2),hj=an(K2),vj=an(Nm),mj=Ce({icon:{type:Kt,default:()=>K4},title:String,content:{type:String,default:""}}),gj={back:()=>!0},bj=["aria-label"];var yj=se({name:"ElPageHeader",__name:"page-header",props:mj,emits:gj,setup(e,{emit:t}){const n=t,{t:a}=Ct(),o=fe("page-header");function s(){n("back")}return(r,l)=>(x(),B("div",{class:T([i(o).b(),i(o).is("contentful",!!r.$slots.default),{[i(o).m("has-breadcrumb")]:!!r.$slots.breadcrumb,[i(o).m("has-extra")]:!!r.$slots.extra}])},[r.$slots.breadcrumb?(x(),B("div",{key:0,class:T(i(o).e("breadcrumb"))},[ee(r.$slots,"breadcrumb")],2)):te("v-if",!0),z("div",{class:T(i(o).e("header"))},[z("div",{class:T(i(o).e("left"))},[z("div",{class:T(i(o).e("back")),role:"button",tabindex:"0",onClick:s},[e.icon||r.$slots.icon?(x(),B("div",{key:0,"aria-label":e.title||i(a)("el.pageHeader.title"),class:T(i(o).e("icon"))},[ee(r.$slots,"icon",{},()=>[e.icon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1})):te("v-if",!0)])],10,bj)):te("v-if",!0),z("div",{class:T(i(o).e("title"))},[ee(r.$slots,"title",{},()=>[wt(Se(e.title||i(a)("el.pageHeader.title")),1)])],2)],2),Y(i(O2),{direction:"vertical"}),z("div",{class:T(i(o).e("content"))},[ee(r.$slots,"content",{},()=>[wt(Se(e.content),1)])],2)],2),r.$slots.extra?(x(),B("div",{key:0,class:T(i(o).e("extra"))},[ee(r.$slots,"extra")],2)):te("v-if",!0)],2),r.$slots.default?(x(),B("div",{key:1,class:T(i(o).e("main"))},[ee(r.$slots,"default")],2)):te("v-if",!0)],2))}}),wj=yj;const Sj=rt(wj),W2=Symbol("elPaginationKey"),Cj=Ce({disabled:Boolean,currentPage:{type:Number,default:1},prevText:{type:String},prevIcon:{type:Kt}}),kj={click:e=>e instanceof MouseEvent},Ej=["disabled","aria-label","aria-disabled"],xj={key:0};var Tj=se({name:"ElPaginationPrev",__name:"prev",props:Cj,emits:kj,setup(e){const t=e,{t:n}=Ct(),a=w(()=>t.disabled||t.currentPage<=1);return(o,s)=>(x(),B("button",{type:"button",class:"btn-prev",disabled:a.value,"aria-label":o.prevText||i(n)("el.pagination.prev"),"aria-disabled":a.value,onClick:s[0]||(s[0]=r=>o.$emit("click",r))},[o.prevText?(x(),B("span",xj,Se(o.prevText),1)):(x(),oe(i(De),{key:1},{default:J(()=>[(x(),oe(it(o.prevIcon)))]),_:1}))],8,Ej))}}),$j=Tj;const Oj=Ce({disabled:Boolean,currentPage:{type:Number,default:1},pageCount:{type:Number,default:50},nextText:{type:String},nextIcon:{type:Kt}}),Rj=["disabled","aria-label","aria-disabled"],Nj={key:0};var Ij=se({name:"ElPaginationNext",__name:"next",props:Oj,emits:["click"],setup(e){const t=e,{t:n}=Ct(),a=w(()=>t.disabled||t.currentPage===t.pageCount||t.pageCount===0);return(o,s)=>(x(),B("button",{type:"button",class:"btn-next",disabled:a.value,"aria-label":o.nextText||i(n)("el.pagination.next"),"aria-disabled":a.value,onClick:s[0]||(s[0]=r=>o.$emit("click",r))},[o.nextText?(x(),B("span",Nj,Se(o.nextText),1)):(x(),oe(i(De),{key:1},{default:J(()=>[(x(),oe(it(o.nextIcon)))]),_:1}))],8,Rj))}}),Pj=Ij;const Im=()=>_e(W2,{}),Mj=Ce({pageSize:{type:Number,required:!0},pageSizes:{type:G(Array),default:()=>rn([10,20,30,40,50,100])},popperClass:{type:String},popperStyle:{type:G([String,Object])},disabled:Boolean,teleported:Boolean,size:{type:String,values:lo},appendSizeTo:String});var _j=se({name:"ElPaginationSizes",__name:"sizes",props:Mj,emits:["page-size-change"],setup(e,{emit:t}){const n=e,a=t,{t:o}=Ct(),s=fe("pagination"),r=Im(),l=M(n.pageSize);le(()=>n.pageSizes,(d,f)=>{sn(d,f)||ye(d)&&a("page-size-change",d.includes(n.pageSize)?n.pageSize:n.pageSizes[0])}),le(()=>n.pageSize,d=>{l.value=d});const u=w(()=>n.pageSizes);function c(d){d!==l.value&&(l.value=d,r.handleSizeChange?.(Number(d)))}return(d,f)=>(x(),B("span",{class:T(i(s).e("sizes"))},[Y(i(Hs),{"model-value":l.value,disabled:d.disabled,"popper-class":d.popperClass,"popper-style":d.popperStyle,size:d.size,teleported:d.teleported,"validate-event":!1,"append-to":d.appendSizeTo,onChange:c},{default:J(()=>[(x(!0),B(Fe,null,gt(u.value,v=>(x(),oe(i(sd),{key:v,value:v,label:v+i(o)("el.pagination.pagesize")},null,8,["value","label"]))),128))]),_:1},8,["model-value","disabled","popper-class","popper-style","size","teleported","append-to"])],2))}}),Aj=_j;const Lj=Ce({size:{type:String,values:lo}}),Dj=["disabled"];var Bj=se({name:"ElPaginationJumper",__name:"jumper",props:Lj,setup(e){const{t}=Ct(),n=fe("pagination"),{pageCount:a,disabled:o,currentPage:s,changeEvent:r}=Im(),l=M(),u=w(()=>l.value??s?.value);function c(f){l.value=f?+f:""}function d(f){f=Math.trunc(+f),r?.(f),l.value=void 0}return(f,v)=>(x(),B("span",{class:T(i(n).e("jump")),disabled:i(o)},[z("span",{class:T([i(n).e("goto")])},Se(i(t)("el.pagination.goto")),3),Y(i(ea),{size:f.size,class:T([i(n).e("editor"),i(n).is("in-pagination")]),min:1,max:i(a),disabled:i(o),"model-value":u.value,"validate-event":!1,"aria-label":i(t)("el.pagination.page"),type:"number","onUpdate:modelValue":c,onChange:d},null,8,["size","class","max","disabled","model-value","aria-label"]),z("span",{class:T([i(n).e("classifier")])},Se(i(t)("el.pagination.pageClassifier")),3)],10,Dj))}}),Fj=Bj;const Vj=Ce({total:{type:Number,default:1e3}}),zj=["disabled"];var Hj=se({name:"ElPaginationTotal",__name:"total",props:Vj,setup(e){const{t}=Ct(),n=fe("pagination"),{disabled:a}=Im();return(o,s)=>(x(),B("span",{class:T(i(n).e("total")),disabled:i(a)},Se(i(t)("el.pagination.total",{total:o.total})),11,zj))}}),Kj=Hj;const Wj=Ce({currentPage:{type:Number,default:1},pageCount:{type:Number,required:!0},pagerCount:{type:Number,default:7},disabled:Boolean}),jj=["aria-current","aria-label","tabindex"],Uj=["tabindex","aria-label"],qj=["aria-current","aria-label","tabindex"],Yj=["tabindex","aria-label"],Gj=["aria-current","aria-label","tabindex"];var Xj=se({name:"ElPaginationPager",__name:"pager",props:Wj,emits:[yt],setup(e,{emit:t}){const n=e,a=t,o=fe("pager"),s=fe("icon"),{t:r}=Ct(),l=M(!1),u=M(!1),c=M(!1),d=M(!1),f=M(!1),v=M(!1),g=w(()=>{const C=n.pagerCount,E=(C-1)/2,$=Number(n.currentPage),O=Number(n.pageCount);let N=!1,R=!1;O>C&&($>C-E&&(N=!0),$["more","btn-quickprev",s.b(),o.is("disabled",n.disabled)]),h=w(()=>["more","btn-quicknext",s.b(),o.is("disabled",n.disabled)]),m=w(()=>n.disabled?-1:0);le(()=>[n.pageCount,n.pagerCount,n.currentPage],([C,E,$])=>{const O=(E-1)/2;let N=!1,R=!1;C>E&&(N=$>E-O,R=$O&&($=O)),$!==N&&a(yt,$)}return(C,E)=>(x(),B("ul",{class:T(i(o).b()),onClick:S,onKeyup:on(y,["enter"])},[C.pageCount>0?(x(),B("li",{key:0,class:T([[i(o).is("active",C.currentPage===1),i(o).is("disabled",C.disabled)],"number"]),"aria-current":C.currentPage===1,"aria-label":i(r)("el.pagination.currentPage",{pager:1}),tabindex:m.value}," 1 ",10,jj)):te("v-if",!0),l.value?(x(),B("li",{key:1,class:T(p.value),tabindex:m.value,"aria-label":i(r)("el.pagination.prevPages",{pager:C.pagerCount-2}),onMouseenter:E[0]||(E[0]=$=>b(!0)),onMouseleave:E[1]||(E[1]=$=>c.value=!1),onFocus:E[2]||(E[2]=$=>k(!0)),onBlur:E[3]||(E[3]=$=>f.value=!1)},[(c.value||f.value)&&!C.disabled?(x(),oe(i(Bs),{key:0})):(x(),oe(i(ly),{key:1}))],42,Uj)):te("v-if",!0),(x(!0),B(Fe,null,gt(g.value,$=>(x(),B("li",{key:$,class:T([[i(o).is("active",C.currentPage===$),i(o).is("disabled",C.disabled)],"number"]),"aria-current":C.currentPage===$,"aria-label":i(r)("el.pagination.currentPage",{pager:$}),tabindex:m.value},Se($),11,qj))),128)),u.value?(x(),B("li",{key:2,class:T(h.value),tabindex:m.value,"aria-label":i(r)("el.pagination.nextPages",{pager:C.pagerCount-2}),onMouseenter:E[4]||(E[4]=$=>b()),onMouseleave:E[5]||(E[5]=$=>d.value=!1),onFocus:E[6]||(E[6]=$=>k()),onBlur:E[7]||(E[7]=$=>v.value=!1)},[(d.value||v.value)&&!C.disabled?(x(),oe(i(Fs),{key:0})):(x(),oe(i(ly),{key:1}))],42,Yj)):te("v-if",!0),C.pageCount>1?(x(),B("li",{key:3,class:T([[i(o).is("active",C.currentPage===C.pageCount),i(o).is("disabled",C.disabled)],"number"]),"aria-current":C.currentPage===C.pageCount,"aria-label":i(r)("el.pagination.currentPage",{pager:C.pageCount}),tabindex:m.value},Se(C.pageCount),11,Gj)):te("v-if",!0)],34))}}),Jj=Xj;const sa=e=>typeof e!="number",Zj=Ce({pageSize:Number,defaultPageSize:Number,total:Number,pageCount:Number,pagerCount:{type:Number,validator:e=>He(e)&&Math.trunc(e)===e&&e>4&&e<22&&e%2===1,default:7},currentPage:Number,defaultCurrentPage:Number,layout:{type:String,default:["prev","pager","next","jumper","->","total"].join(", ")},pageSizes:{type:G(Array),default:()=>rn([10,20,30,40,50,100])},popperClass:{type:String,default:""},popperStyle:{type:G([String,Object])},prevText:{type:String,default:""},prevIcon:{type:Kt,default:()=>is},nextText:{type:String,default:""},nextIcon:{type:Kt,default:()=>na},teleported:{type:Boolean,default:!0},small:Boolean,size:Tn,background:Boolean,disabled:Boolean,hideOnSinglePage:Boolean,appendSizeTo:String}),Qj={"update:current-page":e=>He(e),"update:page-size":e=>He(e),"size-change":e=>He(e),change:(e,t)=>He(e)&&He(t),"current-change":e=>He(e),"prev-click":e=>He(e),"next-click":e=>He(e)},w0="ElPagination";var e9=se({name:w0,props:Zj,emits:Qj,setup(e,{emit:t,slots:n}){const{t:a}=Ct(),o=fe("pagination"),s=ft().vnode.props||{},r=MC(),l=w(()=>e.small?"small":e.size??r.value);To({from:"small",replacement:"size",version:"3.0.0",scope:"el-pagination",ref:"https://element-plus.org/zh-CN/component/pagination.html"},w(()=>!!e.small));const u="onUpdate:currentPage"in s||"onUpdate:current-page"in s||"onCurrentChange"in s,c="onUpdate:pageSize"in s||"onUpdate:page-size"in s||"onSizeChange"in s,d=w(()=>{if(sa(e.total)&&sa(e.pageCount)||!sa(e.currentPage)&&!u)return!1;if(e.layout.includes("sizes")){if(sa(e.pageCount)){if(!sa(e.total)&&!sa(e.pageSize)&&!c)return!1}else if(!c)return!1}return!0}),f=M(sa(e.defaultPageSize)?10:e.defaultPageSize),v=M(sa(e.defaultCurrentPage)?1:e.defaultCurrentPage),g=w({get(){return sa(e.pageSize)?f.value:e.pageSize},set(C){sa(e.pageSize)&&(f.value=C),c&&(t("update:page-size",C),t("size-change",C))}}),p=w(()=>{let C=0;return sa(e.pageCount)?sa(e.total)||(C=Math.max(1,Math.ceil(e.total/g.value))):C=e.pageCount,C}),h=w({get(){return sa(e.currentPage)?v.value:e.currentPage},set(C){let E=C;C<1?E=1:C>p.value&&(E=p.value),sa(e.currentPage)&&(v.value=E),u&&(t("update:current-page",E),t("current-change",E))}});le(p,C=>{h.value>C&&(h.value=C)}),le([h,g],C=>{t(yt,...C)},{flush:"post"});function m(C){h.value=C}function b(C){g.value=C;const E=p.value;h.value>E&&(h.value=E)}function k(){e.disabled||(h.value-=1,t("prev-click",h.value))}function y(){e.disabled||(h.value+=1,t("next-click",h.value))}function S(C,E){C&&(C.props||(C.props={}),C.props.class=[C.props.class,E].join(" "))}return St(W2,{pageCount:p,disabled:w(()=>e.disabled),currentPage:h,changeEvent:m,handleSizeChange:b}),()=>{if(!d.value)return pt(w0,a("el.pagination.deprecationWarning")),null;if(!e.layout||e.hideOnSinglePage&&p.value<=1)return null;const C=[],E=[],$=Ye("div",{class:o.e("rightwrapper")},E),O={prev:Ye($j,{disabled:e.disabled,currentPage:h.value,prevText:e.prevText,prevIcon:e.prevIcon,onClick:k}),jumper:Ye(Fj,{size:l.value}),pager:Ye(Jj,{currentPage:h.value,pageCount:p.value,pagerCount:e.pagerCount,onChange:m,disabled:e.disabled}),next:Ye(Pj,{disabled:e.disabled,currentPage:h.value,pageCount:p.value,nextText:e.nextText,nextIcon:e.nextIcon,onClick:y}),sizes:Ye(Aj,{pageSize:g.value,pageSizes:e.pageSizes,popperClass:e.popperClass,popperStyle:e.popperStyle,disabled:e.disabled,teleported:e.teleported,size:l.value,appendSizeTo:e.appendSizeTo}),slot:n?.default?.()??null,total:Ye(Kj,{total:sa(e.total)?0:e.total})},N=e.layout.split(",").map(A=>A.trim());let R=!1;return N.forEach(A=>{if(A==="->"){R=!0;return}R?E.push(O[A]):C.push(O[A])}),S(C[0],o.is("first")),S(C[C.length-1],o.is("last")),R&&E.length>0&&(S(E[0],o.is("first")),S(E[E.length-1],o.is("last")),C.push($)),Ye("div",{class:[o.b(),o.is("background",e.background),o.m(l.value)]},C)}}});const t9=rt(e9),n9=Ce({title:String,confirmButtonText:String,cancelButtonText:String,confirmButtonType:{type:String,values:Jp,default:"primary"},cancelButtonType:{type:String,values:Jp,default:"text"},icon:{type:Kt,default:()=>E3},iconColor:{type:String,default:"#f90"},hideIcon:Boolean,hideAfter:{type:Number,default:200},effect:{...zt.effect,default:"light"},teleported:zt.teleported,persistent:zt.persistent,width:{type:[String,Number],default:150},virtualTriggering:No.virtualTriggering,virtualRef:No.virtualRef}),a9={confirm:e=>e instanceof MouseEvent,cancel:e=>e instanceof MouseEvent};var o9=se({name:"ElPopconfirm",__name:"popconfirm",props:n9,emits:a9,setup(e,{expose:t,emit:n}){const a=e,o=n,{t:s}=Ct(),r=fe("popconfirm"),l=M(),u=M(),c=w(()=>i(l)?.popperRef),d=()=>{u.value?.focus?.()},f=()=>{l.value?.onClose?.()},v=w(()=>({width:ln(a.width)})),g=b=>{o("confirm",b),f()},p=b=>{o("cancel",b),f()},h=w(()=>a.confirmButtonText||s("el.popconfirm.confirmButtonText")),m=w(()=>a.cancelButtonText||s("el.popconfirm.cancelButtonText"));return t({popperRef:c,hide:f}),(b,k)=>(x(),oe(i(Ln),dt({ref_key:"tooltipRef",ref:l,trigger:"click",effect:e.effect},b.$attrs,{"virtual-triggering":e.virtualTriggering,"virtual-ref":e.virtualRef,"popper-class":`${i(r).namespace.value}-popover`,"popper-style":v.value,teleported:e.teleported,"fallback-placements":["bottom","top","right","left"],"hide-after":e.hideAfter,persistent:e.persistent,loop:"",onShow:d}),{content:J(()=>[z("div",{ref_key:"rootRef",ref:u,tabindex:"-1",class:T(i(r).b())},[z("div",{class:T(i(r).e("main"))},[!e.hideIcon&&e.icon?(x(),oe(i(De),{key:0,class:T(i(r).e("icon")),style:Ke({color:e.iconColor})},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1},8,["class","style"])):te("v-if",!0),wt(" "+Se(e.title),1)],2),z("div",{class:T(i(r).e("action"))},[ee(b.$slots,"actions",{confirm:g,cancel:p},()=>[Y(i(In),{size:"small",type:e.cancelButtonType==="text"?"":e.cancelButtonType,text:e.cancelButtonType==="text",onClick:p},{default:J(()=>[wt(Se(m.value),1)]),_:1},8,["type","text"]),Y(i(In),{size:"small",type:e.confirmButtonType==="text"?"":e.confirmButtonType,text:e.confirmButtonType==="text",onClick:g},{default:J(()=>[wt(Se(h.value),1)]),_:1},8,["type","text"])])],2)],2)]),default:J(()=>[b.$slots.reference?ee(b.$slots,"reference",{key:0}):te("v-if",!0)]),_:3},16,["effect","virtual-triggering","virtual-ref","popper-class","popper-style","teleported","hide-after","persistent"]))}}),s9=o9;const r9=rt(s9),l9=Ce({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:Boolean,duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:G(String),default:"round"},textInside:Boolean,width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:G([String,Array,Function]),default:""},striped:Boolean,stripedFlow:Boolean,format:{type:G(Function),default:e=>`${e}%`}}),i9=["aria-valuenow"],u9={viewBox:"0 0 100 100"},c9=["d","stroke","stroke-linecap","stroke-width"],d9=["d","stroke","opacity","stroke-linecap","stroke-width"],f9={key:0};var p9=se({name:"ElProgress",__name:"progress",props:l9,setup(e){const t={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},n=e,a=fe("progress"),o=w(()=>{const y={width:`${n.percentage}%`,animationDuration:`${n.duration}s`},S=k(n.percentage);return S.includes("gradient")?y.background=S:y.backgroundColor=S,y}),s=w(()=>(n.strokeWidth/n.width*100).toFixed(1)),r=w(()=>["circle","dashboard"].includes(n.type)?Number.parseInt(`${50-Number.parseFloat(s.value)/2}`,10):0),l=w(()=>{const y=r.value,S=n.type==="dashboard";return` - M 50 50 - m 0 ${S?"":"-"}${y} - a ${y} ${y} 0 1 1 0 ${S?"-":""}${y*2} - a ${y} ${y} 0 1 1 0 ${S?"":"-"}${y*2} - `}),u=w(()=>2*Math.PI*r.value),c=w(()=>n.type==="dashboard"?.75:1),d=w(()=>`${-1*u.value*(1-c.value)/2}px`),f=w(()=>({strokeDasharray:`${u.value*c.value}px, ${u.value}px`,strokeDashoffset:d.value})),v=w(()=>({strokeDasharray:`${u.value*c.value*(n.percentage/100)}px, ${u.value}px`,strokeDashoffset:d.value,transition:"stroke-dasharray 0.6s ease 0s, stroke 0.6s ease, opacity ease 0.6s"})),g=w(()=>{let y;return n.color?y=k(n.percentage):y=t[n.status]||t.default,y}),p=w(()=>n.status==="warning"?tf:n.type==="line"?n.status==="success"?tm:Vo:n.status==="success"?vu:Ha),h=w(()=>n.type==="line"?12+n.strokeWidth*.4:n.width*.111111+2),m=w(()=>n.format(n.percentage));function b(y){const S=100/y.length;return y.map((C,E)=>Le(C)?{color:C,percentage:(E+1)*S}:C).sort((C,E)=>C.percentage-E.percentage)}const k=y=>{const{color:S}=n;if(Ve(S))return S(y);if(Le(S))return S;{const C=b(S);for(const E of C)if(E.percentage>y)return E.color;return C[C.length-1]?.color}};return(y,S)=>(x(),B("div",{class:T([i(a).b(),i(a).m(e.type),i(a).is(e.status),{[i(a).m("without-text")]:!e.showText,[i(a).m("text-inside")]:e.textInside}]),role:"progressbar","aria-valuenow":e.percentage,"aria-valuemin":"0","aria-valuemax":"100"},[e.type==="line"?(x(),B("div",{key:0,class:T(i(a).b("bar"))},[z("div",{class:T(i(a).be("bar","outer")),style:Ke({height:`${e.strokeWidth}px`})},[z("div",{class:T([i(a).be("bar","inner"),{[i(a).bem("bar","inner","indeterminate")]:e.indeterminate},{[i(a).bem("bar","inner","striped")]:e.striped},{[i(a).bem("bar","inner","striped-flow")]:e.stripedFlow}]),style:Ke(o.value)},[(e.showText||y.$slots.default)&&e.textInside?(x(),B("div",{key:0,class:T(i(a).be("bar","innerText"))},[ee(y.$slots,"default",{percentage:e.percentage},()=>[z("span",null,Se(m.value),1)])],2)):te("v-if",!0)],6)],6)],2)):(x(),B("div",{key:1,class:T(i(a).b("circle")),style:Ke({height:`${e.width}px`,width:`${e.width}px`})},[(x(),B("svg",u9,[z("path",{class:T(i(a).be("circle","track")),d:l.value,stroke:`var(${i(a).cssVarName("fill-color-light")}, #e5e9f2)`,"stroke-linecap":e.strokeLinecap,"stroke-width":s.value,fill:"none",style:Ke(f.value)},null,14,c9),z("path",{class:T(i(a).be("circle","path")),d:l.value,stroke:g.value,fill:"none",opacity:e.percentage?1:0,"stroke-linecap":e.strokeLinecap,"stroke-width":s.value,style:Ke(v.value)},null,14,d9)]))],6)),(e.showText||y.$slots.default)&&!e.textInside?(x(),B("div",{key:2,class:T(i(a).e("text")),style:Ke({fontSize:`${h.value}px`})},[ee(y.$slots,"default",{percentage:e.percentage},()=>[e.status?(x(),oe(i(De),{key:1},{default:J(()=>[(x(),oe(it(p.value)))]),_:1})):(x(),B("span",f9,Se(m.value),1))])],6)):te("v-if",!0)],10,i9))}}),h9=p9;const j2=rt(h9),v9=Ce({modelValue:{type:Number,default:0},id:{type:String,default:void 0},lowThreshold:{type:Number,default:2},highThreshold:{type:Number,default:4},max:{type:Number,default:5},colors:{type:G([Array,Object]),default:()=>rn(["","",""])},voidColor:{type:String,default:""},disabledVoidColor:{type:String,default:""},icons:{type:G([Array,Object]),default:()=>[Vu,Vu,Vu]},voidIcon:{type:Kt,default:()=>F3},disabledVoidIcon:{type:Kt,default:()=>Vu},disabled:{type:Boolean,default:void 0},allowHalf:Boolean,showText:Boolean,showScore:Boolean,textColor:{type:String,default:""},texts:{type:G(Array),default:()=>rn(["Extremely bad","Disappointed","Fair","Satisfied","Surprise"])},scoreTemplate:{type:String,default:"{value}"},size:Tn,clearable:Boolean,...aa(["ariaLabel"])}),m9={[yt]:e=>He(e),[at]:e=>He(e)},g9=["id","aria-label","aria-labelledby","aria-valuenow","aria-valuetext","aria-valuemax","tabindex","aria-disabled"],b9=["onMousemove","onClick"];var y9=se({name:"ElRate",__name:"rate",props:v9,emits:m9,setup(e,{expose:t,emit:n}){function a(I,L){const D=q=>ot(q),F=L[Object.keys(L).map(q=>+q).filter(q=>{const j=L[q];return D(j)&&j.excluded?Iq-j)[0]];return D(F)&&F.value||F}const o=e,s=n,r=_e(Lo,void 0),l=Cn(),u=fe("rate"),{inputId:c,isLabeledByFormItem:d}=Ia(o,{formItemContext:r}),f=M(ar(o.modelValue,0,o.max)),v=M(-1),g=M(!0),p=M([]),h=w(()=>p.value.map(I=>I.$el.clientWidth)),m=w(()=>[u.b(),u.m(l.value)]),b=un(),k=w(()=>u.cssVarBlock({"void-color":o.voidColor,"disabled-void-color":o.disabledVoidColor,"fill-color":E.value})),y=w(()=>{let I="";return o.showScore?I=o.scoreTemplate.replace(/\{\s*value\s*\}/,b.value?`${o.modelValue}`:`${f.value}`):o.showText&&(I=o.texts[Math.ceil(f.value)-1]),I}),S=w(()=>o.modelValue*100-Math.floor(o.modelValue)*100),C=w(()=>ye(o.colors)?{[o.lowThreshold]:o.colors[0],[o.highThreshold]:{value:o.colors[1],excluded:!0},[o.max]:o.colors[2]}:o.colors),E=w(()=>{const I=a(f.value,C.value);return ot(I)?"":I}),$=w(()=>{let I="";return b.value?I=`${S.value}%`:o.allowHalf&&(I="50%"),{color:E.value,width:I}}),O=w(()=>{let I=ye(o.icons)?[...o.icons]:{...o.icons};return I=xo(I),ye(I)?{[o.lowThreshold]:I[0],[o.highThreshold]:{value:I[1],excluded:!0},[o.max]:I[2]}:I}),N=w(()=>a(o.modelValue,O.value)),R=w(()=>b.value?Le(o.disabledVoidIcon)?o.disabledVoidIcon:xo(o.disabledVoidIcon):Le(o.voidIcon)?o.voidIcon:xo(o.voidIcon)),A=w(()=>a(f.value,O.value));function _(I){const L=b.value&&S.value>0&&I-1o.modelValue,D=o.allowHalf&&g.value&&I-.5<=f.value&&I>f.value;return L||D}function V(I){o.clearable&&I===o.modelValue&&(I=0),s(at,I),o.modelValue!==I&&s(yt,I)}function H(I){b.value||(o.allowHalf&&g.value?V(f.value):V(I))}function U(I){if(b.value)return;const L=jt(I),D=o.allowHalf?.5:1;let F=f.value;switch(L){case we.up:case we.right:F+=D;break;case we.left:case we.down:F-=D;break}if(F=ar(F,0,o.max),F!==f.value)return I.stopPropagation(),I.preventDefault(),s(at,F),s(yt,F),F}function W(I,L){b.value||(o.allowHalf&&L?(g.value=L.offsetX*2<=h.value[I-1],f.value=g.value?I-.5:I):f.value=I,v.value=I)}function P(){b.value||(o.allowHalf&&(g.value=o.modelValue!==Math.floor(o.modelValue)),f.value=ar(o.modelValue,0,o.max),v.value=-1)}return le(()=>o.modelValue,I=>{f.value=ar(I,0,o.max),g.value=o.modelValue!==Math.floor(o.modelValue)}),o.modelValue||s(at,0),t({setCurrentValue:W,resetCurrentValue:P}),(I,L)=>(x(),B("div",{id:i(c),class:T([m.value,i(u).is("disabled",i(b))]),role:"slider","aria-label":i(d)?void 0:e.ariaLabel||"rating","aria-labelledby":i(d)?i(r)?.labelId:void 0,"aria-valuenow":f.value,"aria-valuetext":y.value||void 0,"aria-valuemin":"0","aria-valuemax":e.max,style:Ke(k.value),tabindex:i(b)?void 0:0,"aria-disabled":i(b),onKeydown:U},[(x(!0),B(Fe,null,gt(e.max,(D,F)=>(x(),B("span",{key:F,class:T(i(u).e("item")),onMousemove:q=>W(D,q),onMouseleave:P,onClick:q=>H(D)},[Y(i(De),{ref_for:!0,ref_key:"iconRefs",ref:p,class:T([i(u).e("icon"),{hover:v.value===D},i(u).is("active",D<=f.value),i(u).is("focus-visible",D===Math.ceil(f.value||1))])},{default:J(()=>[ut((x(),oe(it(A.value),null,null,512)),[[Pt,!_(D)&&D<=f.value]]),ut((x(),oe(it(R.value),null,null,512)),[[Pt,!_(D)&&D>f.value]]),ut((x(),oe(it(R.value),{class:T([i(u).em("decimal","box")])},null,8,["class"])),[[Pt,_(D)]]),ut(Y(i(De),{style:Ke($.value),class:T([i(u).e("icon"),i(u).e("decimal")])},{default:J(()=>[(x(),oe(it(N.value)))]),_:1},8,["style","class"]),[[Pt,_(D)]])]),_:2},1032,["class"])],42,b9))),128)),e.showText||e.showScore?(x(),B("span",{key:0,class:T(i(u).e("text")),style:Ke({color:e.textColor})},Se(y.value),7)):te("v-if",!0)],46,g9))}}),w9=y9;const S9=rt(w9),tr={primary:"icon-primary",success:"icon-success",warning:"icon-warning",error:"icon-error",info:"icon-info"},S0={[tr.primary]:Mi,[tr.success]:J4,[tr.warning]:tf,[tr.error]:nm,[tr.info]:Mi},C9=Ce({title:{type:String,default:""},subTitle:{type:String,default:""},icon:{type:String,values:["primary","success","warning","info","error"],default:"info"}});var k9=se({name:"ElResult",__name:"result",props:C9,setup(e){const t=e,n=fe("result"),a=w(()=>{const o=t.icon,s=o&&tr[o]?tr[o]:"icon-info";return{class:s,component:S0[s]||S0["icon-info"]}});return(o,s)=>(x(),B("div",{class:T(i(n).b())},[z("div",{class:T(i(n).e("icon"))},[ee(o.$slots,"icon",{},()=>[a.value.component?(x(),oe(it(a.value.component),{key:0,class:T(a.value.class)},null,8,["class"])):te("v-if",!0)])],2),e.title||o.$slots.title?(x(),B("div",{key:0,class:T(i(n).e("title"))},[ee(o.$slots,"title",{},()=>[z("p",null,Se(e.title),1)])],2)):te("v-if",!0),e.subTitle||o.$slots["sub-title"]?(x(),B("div",{key:1,class:T(i(n).e("subtitle"))},[ee(o.$slots,"sub-title",{},()=>[z("p",null,Se(e.subTitle),1)])],2)):te("v-if",!0),o.$slots.extra?(x(),B("div",{key:2,class:T(i(n).e("extra"))},[ee(o.$slots,"extra")],2)):te("v-if",!0)],2))}}),E9=k9;const x9=rt(E9),gh=50,dd="itemRendered",fd="scroll",Yr="forward",pd="backward",Da="auto",cf="smart",Vi="start",ko="center",zi="end",kl="horizontal",U2="vertical",T9="ltr",al="rtl",Hi="negative",Pm="positive-ascending",Mm="positive-descending",$9={[kl]:"left",[U2]:"top"},O9=20,bh=uo({type:G([Number,Function]),required:!0}),yh=uo({type:Number}),wh=uo({type:Number,default:2}),R9=uo({type:String,values:["ltr","rtl"],default:"ltr"}),Sh=uo({type:Number,default:0}),hd=uo({type:Number,required:!0}),q2=uo({type:String,values:["horizontal","vertical"],default:U2}),Y2=Ce({className:{type:String,default:""},containerElement:{type:G([String,Object]),default:"div"},data:{type:G(Array),default:()=>rn([])},direction:R9,height:{type:[String,Number],required:!0},innerElement:{type:[String,Object],default:"div"},innerProps:{type:G(Object),default:()=>({})},style:{type:G([Object,String,Array])},useIsScrolling:Boolean,width:{type:[Number,String],required:!1},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),G2=Ce({cache:wh,estimatedItemSize:yh,layout:q2,initScrollOffset:Sh,total:hd,itemSize:bh,...Y2}),Ch={type:Number,default:6},X2={type:Number,default:0},J2={type:Number,default:2},hr=Ce({columnCache:wh,columnWidth:bh,estimatedColumnWidth:yh,estimatedRowHeight:yh,initScrollLeft:Sh,initScrollTop:Sh,itemKey:{type:G(Function),default:({columnIndex:e,rowIndex:t})=>`${t}:${e}`},rowCache:wh,rowHeight:bh,totalColumn:hd,totalRow:hd,hScrollbarSize:Ch,vScrollbarSize:Ch,scrollbarStartGap:X2,scrollbarEndGap:J2,role:String,...Y2}),Z2=Ce({alwaysOn:Boolean,class:String,layout:q2,total:hd,ratio:{type:Number,required:!0},clientSize:{type:Number,required:!0},scrollFrom:{type:Number,required:!0},scrollbarSize:Ch,startGap:X2,endGap:J2,visible:Boolean}),lr=(e,t)=>ee===T9||e===al||e===kl,C0=e=>e===al;let Hr=null;function vd(e=!1){if(Hr===null||e){const t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";const a=document.createElement("div"),o=a.style;return o.width="100px",o.height="100px",t.appendChild(a),document.body.appendChild(t),t.scrollLeft>0?Hr=Mm:(t.scrollLeft=1,t.scrollLeft===0?Hr=Hi:Hr=Pm),document.body.removeChild(t),Hr}return Hr}function N9({move:e,size:t,bar:n},a){const o={},s=`translate${n.axis}(${e}px)`;return o[n.size]=t,o.transform=s,a==="horizontal"?o.height="100%":o.width="100%",o}var k0=Number.isNaN||function(t){return typeof t=="number"&&t!==t};function I9(e,t){return!!(e===t||k0(e)&&k0(t))}function P9(e,t){if(e.length!==t.length)return!1;for(var n=0;n{const e=ft().proxy.$props;return w(()=>{const t=(n,a,o)=>({});return e.perfMode?Vd(t):M9(t)})},eE=({atEndEdge:e,atStartEdge:t,layout:n},a)=>{let o,s=0;const r=u=>u<0&&t.value||u>0&&e.value;return{hasReachedEdge:r,onWheel:u=>{rs(o);let{deltaX:c,deltaY:d}=u;u.shiftKey&&d!==0&&(c=d,d=0);const f=n.value===kl?c:d;r(f)||(s+=f,!Ud()&&f!==0&&u.preventDefault(),o=eo(()=>{a(s),s=0}))}}},kh=se({name:"ElVirtualScrollBar",props:Z2,emits:["scroll","start-move","stop-move"],setup(e,{emit:t}){const n=w(()=>e.startGap+e.endGap),a=fe("virtual-scrollbar"),o=fe("scrollbar"),s=M(),r=M();let l=null,u=null;const c=At({isDragging:!1,traveled:0}),d=w(()=>ak[e.layout]),f=w(()=>e.clientSize-i(n)),v=w(()=>({position:"absolute",width:`${kl===e.layout?f.value:e.scrollbarSize}px`,height:`${kl===e.layout?e.scrollbarSize:f.value}px`,[$9[e.layout]]:"2px",right:"2px",bottom:"2px",borderRadius:"4px"})),g=w(()=>{const E=e.ratio;if(E>=100)return Number.POSITIVE_INFINITY;if(E>=50)return E*f.value/100;const $=f.value/3;return Math.floor(Math.min(Math.max(E*f.value/100,O9),$))}),p=w(()=>{if(!Number.isFinite(g.value))return{display:"none"};const E=`${g.value}px`;return N9({bar:d.value,size:E,move:c.traveled},e.layout)}),h=w(()=>Math.ceil(e.clientSize-g.value-i(n))),m=()=>{window.addEventListener("mousemove",S),window.addEventListener("mouseup",y);const E=i(r);E&&(u=document.onselectstart,document.onselectstart=()=>!1,E.addEventListener("touchmove",S,{passive:!0}),E.addEventListener("touchend",y))},b=()=>{window.removeEventListener("mousemove",S),window.removeEventListener("mouseup",y),document.onselectstart=u,u=null;const E=i(r);E&&(E.removeEventListener("touchmove",S),E.removeEventListener("touchend",y))},k=E=>{E.stopImmediatePropagation(),!(E.ctrlKey||[1,2].includes(E.button))&&(c.isDragging=!0,c[d.value.axis]=E.currentTarget[d.value.offset]-(E[d.value.client]-E.currentTarget.getBoundingClientRect()[d.value.direction]),t("start-move"),m())},y=()=>{c.isDragging=!1,c[d.value.axis]=0,t("stop-move"),b()},S=E=>{const{isDragging:$}=c;if(!$||!r.value||!s.value)return;const O=c[d.value.axis];if(!O)return;rs(l);const N=(s.value.getBoundingClientRect()[d.value.direction]-E[d.value.client])*-1-(r.value[d.value.offset]-O);l=eo(()=>{c.traveled=Math.max(0,Math.min(N,h.value)),t("scroll",N,h.value)})},C=E=>{const $=Math.abs(E.target.getBoundingClientRect()[d.value.direction]-E[d.value.client])-r.value[d.value.offset]/2;c.traveled=Math.max(0,Math.min($,h.value)),t("scroll",$,h.value)};return le(()=>e.scrollFrom,E=>{c.isDragging||(c.traveled=Math.ceil(E*h.value))}),Bt(()=>{b()}),()=>Ye("div",{role:"presentation",ref:s,class:[a.b(),e.class,(e.alwaysOn||c.isDragging)&&"always-on"],style:v.value,onMousedown:Xe(C,["stop","prevent"]),onTouchstartPrevent:k},Ye("div",{ref:r,class:o.e("thumb"),style:p.value,onMousedown:k},[]))}}),tE=({name:e,getOffset:t,getItemSize:n,getItemOffset:a,getEstimatedTotalSize:o,getStartIndexForOffset:s,getStopIndexForStartIndex:r,initCache:l,clearCache:u,validateProps:c})=>se({name:e??"ElVirtualList",props:G2,emits:[dd,fd],setup(d,{emit:f,expose:v}){c(d);const g=ft(),p=fe("vl"),h=M(l(d,g)),m=Q2(),b=M(),k=M(),y=M(),S=M({isScrolling:!1,scrollDir:"forward",scrollOffset:He(d.initScrollOffset)?d.initScrollOffset:0,updateRequested:!1,isScrollbarDragging:!1,scrollbarAlwaysOn:d.scrollbarAlwaysOn}),C=w(()=>{const{total:j,cache:X}=d,{isScrolling:Q,scrollDir:he,scrollOffset:ue}=i(S);if(j===0)return[0,0,0,0];const ge=s(d,ue,i(h)),ie=r(d,ge,ue,i(h)),ae=!Q||he===pd?Math.max(1,X):1,ne=!Q||he===Yr?Math.max(1,X):1;return[Math.max(0,ge-ae),Math.max(0,Math.min(j-1,ie+ne)),ge,ie]}),E=w(()=>o(d,i(h))),$=w(()=>Ki(d.layout)),O=w(()=>[{position:"relative",[`overflow-${$.value?"x":"y"}`]:"scroll",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:d.direction,height:He(d.height)?`${d.height}px`:d.height,width:He(d.width)?`${d.width}px`:d.width},d.style]),N=w(()=>{const j=i(E),X=i($);return{height:X?"100%":`${j}px`,pointerEvents:i(S).isScrolling?"none":void 0,width:X?`${j}px`:"100%",margin:0,boxSizing:"border-box"}}),R=w(()=>$.value?d.width:d.height),{onWheel:A}=eE({atStartEdge:w(()=>S.value.scrollOffset<=0),atEndEdge:w(()=>S.value.scrollOffset>=E.value),layout:w(()=>d.layout)},j=>{y.value.onMouseUp?.(),P(Math.min(S.value.scrollOffset+j,E.value-R.value))});Ft(b,"wheel",A,{passive:!1});const _=()=>{const{total:j}=d;if(j>0){const[ue,ge,ie,ae]=i(C);f(dd,ue,ge,ie,ae)}const{scrollDir:X,scrollOffset:Q,updateRequested:he}=i(S);f(fd,X,Q,he)},V=j=>{const{clientHeight:X,scrollHeight:Q,scrollTop:he}=j.currentTarget,ue=i(S);if(ue.scrollOffset===he)return;const ge=Math.max(0,Math.min(he,Q-X));S.value={...ue,isScrolling:!0,scrollDir:lr(ue.scrollOffset,ge),scrollOffset:ge,updateRequested:!1},Re(D)},H=j=>{const{clientWidth:X,scrollLeft:Q,scrollWidth:he}=j.currentTarget,ue=i(S);if(ue.scrollOffset===Q)return;const{direction:ge}=d;let ie=Q;if(ge===al)switch(vd()){case Hi:ie=-Q;break;case Mm:ie=he-X-Q;break}ie=Math.max(0,Math.min(ie,he-X)),S.value={...ue,isScrolling:!0,scrollDir:lr(ue.scrollOffset,ie),scrollOffset:ie,updateRequested:!1},Re(D)},U=j=>{i($)?H(j):V(j),_()},W=(j,X)=>{const Q=(E.value-R.value)/X*j;P(Math.min(E.value-R.value,Q))},P=j=>{j=Math.max(j,0),j!==i(S).scrollOffset&&(S.value={...i(S),scrollOffset:j,scrollDir:lr(i(S).scrollOffset,j),updateRequested:!0},Re(D))},I=(j,X=Da)=>{const{scrollOffset:Q}=i(S);j=Math.max(0,Math.min(j,d.total-1)),P(t(d,j,X,Q,i(h)))},L=j=>{const{direction:X,itemSize:Q,layout:he}=d,ue=m.value(u&&Q,u&&he,u&&X);let ge;if(Nt(ue,String(j)))ge=ue[j];else{const ie=a(d,j,i(h)),ae=n(d,j,i(h)),ne=i($),K=X===al,Z=ne?ie:0;ue[j]=ge={position:"absolute",left:K?void 0:`${Z}px`,right:K?`${Z}px`:void 0,top:ne?0:`${ie}px`,height:ne?"100%":`${ae}px`,width:ne?`${ae}px`:"100%"}}return ge},D=()=>{S.value.isScrolling=!1,Re(()=>{m.value(-1,null,null)})},F=()=>{const j=b.value;j&&(j.scrollTop=0)};ht(()=>{if(!Mt)return;const{initScrollOffset:j}=d,X=i(b);He(j)&&X&&(i($)?X.scrollLeft=j:X.scrollTop=j),_()}),ro(()=>{const{direction:j,layout:X}=d,{scrollOffset:Q,updateRequested:he}=i(S),ue=i(b);if(he&&ue)if(X===kl)if(j===al)switch(vd()){case Hi:ue.scrollLeft=-Q;break;case Pm:ue.scrollLeft=Q;break;default:{const{clientWidth:ge,scrollWidth:ie}=ue;ue.scrollLeft=ie-ge-Q;break}}else ue.scrollLeft=Q;else ue.scrollTop=Q}),Gi(()=>{i(b).scrollTop=i(S).scrollOffset});const q={ns:p,clientSize:R,estimatedTotalSize:E,windowStyle:O,windowRef:b,innerRef:k,innerStyle:N,itemsToRender:C,scrollbarRef:y,states:S,getItemStyle:L,onScroll:U,onScrollbarScroll:W,onWheel:A,scrollTo:P,scrollToItem:I,resetScrollTop:F};return v({windowRef:b,innerRef:k,getItemStyleCache:m,scrollTo:P,scrollToItem:I,resetScrollTop:F,states:S}),q},render(d){const{$slots:f,className:v,clientSize:g,containerElement:p,data:h,getItemStyle:m,innerElement:b,itemsToRender:k,innerStyle:y,layout:S,total:C,onScroll:E,onScrollbarScroll:$,states:O,useIsScrolling:N,windowStyle:R,ns:A}=d,[_,V]=k,H=it(p),U=it(b),W=[];if(C>0)for(let D=_;D<=V;D++)W.push(Ye(Fe,{key:D},f.default?.({data:h,index:D,isScrolling:N?O.isScrolling:void 0,style:m(D)})));const P=[Ye(U,dt(d.innerProps,{style:y,ref:"innerRef"}),Le(U)?W:{default:()=>W})],I=Ye(kh,{ref:"scrollbarRef",clientSize:g,layout:S,onScroll:$,ratio:g*100/this.estimatedTotalSize,scrollFrom:O.scrollOffset/(this.estimatedTotalSize-g),total:C,alwaysOn:O.scrollbarAlwaysOn}),L=Ye(H,{class:[A.e("window"),v],style:R,onScroll:E,ref:"windowRef",key:0},Le(H)?[P]:{default:()=>[P]});return Ye("div",{key:0,class:[A.e("wrapper"),O.scrollbarAlwaysOn?"always-on":""]},[L,I])}}),nE=tE({name:"ElFixedSizeList",getItemOffset:({itemSize:e},t)=>t*e,getItemSize:({itemSize:e})=>e,getEstimatedTotalSize:({total:e,itemSize:t})=>t*e,getOffset:({height:e,total:t,itemSize:n,layout:a,width:o},s,r,l)=>{const u=Ki(a)?o:e;Le(u)&&nn("[ElVirtualList]",` - You should set - width/height - to number when your layout is - horizontal/vertical - `);const c=Math.max(0,t*n-u),d=Math.min(c,s*n),f=Math.max(0,(s+1)*n-u);switch(r===cf&&(l>=f-u&&l<=d+u?r=Da:r=ko),r){case Vi:return d;case zi:return f;case ko:{const v=Math.round(f+(d-f)/2);return vc+Math.floor(u/2)?c:v}case Da:default:return l>=f&&l<=d?l:lMath.max(0,Math.min(e-1,Math.floor(n/t))),getStopIndexForStartIndex:({height:e,total:t,itemSize:n,layout:a,width:o},s,r)=>{const l=s*n,u=Ki(a)?o:e,c=Math.ceil((u+r-l)/n);return Math.max(0,Math.min(t-1,s+c-1))},initCache(){},clearCache:!0,validateProps(){}}),_9="ElDynamicSizeList",Gr=(e,t,n)=>{const{itemSize:a}=e,{items:o,lastVisitedIndex:s}=n;if(t>s){let r=0;if(s>=0){const l=o[s];r=l.offset+l.size}for(let l=s+1;l<=t;l++){const u=a(l);o[l]={offset:r,size:u},r+=u}n.lastVisitedIndex=t}return o[t]},A9=(e,t,n)=>{const{items:a,lastVisitedIndex:o}=t;return(o>0?a[o].offset:0)>=n?aE(e,t,0,o,n):L9(e,t,Math.max(0,o),n)},aE=(e,t,n,a,o)=>{for(;n<=a;){const s=n+Math.floor((a-n)/2),r=Gr(e,s,t).offset;if(r===o)return s;ro&&(a=s-1)}return Math.max(0,n-1)},L9=(e,t,n,a)=>{const{total:o}=e;let s=1;for(;n{let o=0;if(a>=e&&(a=e-1),a>=0){const r=t[a];o=r.offset+r.size}const s=(e-a-1)*n;return o+s},D9=tE({name:"ElDynamicSizeList",getItemOffset:(e,t,n)=>Gr(e,t,n).offset,getItemSize:(e,t,{items:n})=>n[t].size,getEstimatedTotalSize:E0,getOffset:(e,t,n,a,o)=>{const{height:s,layout:r,width:l}=e,u=Ki(r)?l:s,c=Gr(e,t,o),d=E0(e,o),f=Math.max(0,Math.min(d-u,c.offset)),v=Math.max(0,c.offset-u+c.size);switch(n===cf&&(a>=v-u&&a<=f+u?n=Da:n=ko),n){case Vi:return f;case zi:return v;case ko:return Math.round(v+(f-v)/2);case Da:default:return a>=v&&a<=f?a:aA9(e,n,t),getStopIndexForStartIndex:(e,t,n,a)=>{const{height:o,total:s,layout:r,width:l}=e,u=Ki(r)?l:o,c=Gr(e,t,a),d=n+u;let f=c.offset+c.size,v=t;for(;v{n.lastVisitedIndex=Math.min(n.lastVisitedIndex,a-1),t.exposed?.getItemStyleCache(-1),o&&t.proxy?.$forceUpdate()},n},clearCache:!1,validateProps:({itemSize:e})=>{typeof e!="function"&&nn(_9,` - itemSize is required as function, but the given value was ${typeof e} - `)}}),B9=({atXEndEdge:e,atXStartEdge:t,atYEndEdge:n,atYStartEdge:a},o)=>{let s=null,r=0,l=0;const u=(d,f)=>{const v=d<0&&t.value||d>0&&e.value,g=f<0&&a.value||f>0&&n.value;return v||g};return{hasReachedEdge:u,onWheel:d=>{rs(s);let f=d.deltaX,v=d.deltaY;if(Math.abs(f)>Math.abs(v)?v=0:f=0,d.shiftKey&&v!==0&&(f=v,v=0),u(f,v)){d.deltaX!==0&&f===0&&d.preventDefault();return}r+=f,l+=v,d.preventDefault(),s=eo(()=>{o(r,l),r=0,l=0})}}},F9=(e,t,n,a,o,s,r)=>{const l=M(0),u=M(0);let c,d=0,f=0;const v=p=>{rs(c),l.value=p.touches[0].clientX,u.value=p.touches[0].clientY,d=0,f=0},g=p=>{p.preventDefault(),rs(c),d+=l.value-p.touches[0].clientX,f+=u.value-p.touches[0].clientY,l.value=p.touches[0].clientX,u.value=p.touches[0].clientY,c=eo(()=>{const h=a.value-i(s),m=o.value-i(r);n({scrollLeft:Math.min(t.value.scrollLeft+d,h),scrollTop:Math.min(t.value.scrollTop+f,m)}),d=0,f=0})};return Ft(e,"touchstart",v,{passive:!0}),Ft(e,"touchmove",g,{passive:!1}),{touchStartX:l,touchStartY:u,handleTouchStart:v,handleTouchMove:g}},oE=({name:e,clearCache:t,getColumnPosition:n,getColumnStartIndexForOffset:a,getColumnStopIndexForStartIndex:o,getEstimatedTotalHeight:s,getEstimatedTotalWidth:r,getColumnOffset:l,getRowOffset:u,getRowPosition:c,getRowStartIndexForOffset:d,getRowStopIndexForStartIndex:f,initCache:v,injectToInstance:g,validateProps:p})=>se({name:e??"ElVirtualList",props:hr,emits:[dd,fd],setup(h,{emit:m,expose:b,slots:k}){const y=fe("vl");p(h);const S=ft(),C=M(v(h,S));g?.(S,C);const E=M(),$=M(),O=M(),N=M(),R=M({isScrolling:!1,scrollLeft:He(h.initScrollLeft)?h.initScrollLeft:0,scrollTop:He(h.initScrollTop)?h.initScrollTop:0,updateRequested:!1,xAxisScrollDir:Yr,yAxisScrollDir:Yr}),A=Q2(),_=w(()=>Number.parseInt(`${h.height}`,10)),V=w(()=>Number.parseInt(`${h.width}`,10)),H=w(()=>{const{totalColumn:pe,totalRow:Ee,columnCache:me}=h,{isScrolling:Me,xAxisScrollDir:We,scrollLeft:Ze}=i(R);if(pe===0||Ee===0)return[0,0,0,0];const Pe=a(h,Ze,i(C)),Ae=o(h,Pe,Ze,i(C)),je=!Me||We===pd?Math.max(1,me):1,Rt=!Me||We===Yr?Math.max(1,me):1;return[Math.max(0,Pe-je),Math.max(0,Math.min(pe-1,Ae+Rt)),Pe,Ae]}),U=w(()=>{const{totalColumn:pe,totalRow:Ee,rowCache:me}=h,{isScrolling:Me,yAxisScrollDir:We,scrollTop:Ze}=i(R);if(pe===0||Ee===0)return[0,0,0,0];const Pe=d(h,Ze,i(C)),Ae=f(h,Pe,Ze,i(C)),je=!Me||We===pd?Math.max(1,me):1,Rt=!Me||We===Yr?Math.max(1,me):1;return[Math.max(0,Pe-je),Math.max(0,Math.min(Ee-1,Ae+Rt)),Pe,Ae]}),W=w(()=>s(h,i(C))),P=w(()=>r(h,i(C))),I=w(()=>[{position:"relative",overflow:"hidden",WebkitOverflowScrolling:"touch",willChange:"transform"},{direction:h.direction,height:He(h.height)?`${h.height}px`:h.height,width:He(h.width)?`${h.width}px`:h.width},h.style??{}]),L=w(()=>{const pe=`${i(P)}px`;return{height:`${i(W)}px`,pointerEvents:i(R).isScrolling?"none":void 0,width:pe,margin:0,boxSizing:"border-box"}}),D=()=>{const{totalColumn:pe,totalRow:Ee}=h;if(pe>0&&Ee>0){const[Ae,je,Rt,Ue]=i(H),[lt,mt,kt,be]=i(U);m(dd,{columnCacheStart:Ae,columnCacheEnd:je,rowCacheStart:lt,rowCacheEnd:mt,columnVisibleStart:Rt,columnVisibleEnd:Ue,rowVisibleStart:kt,rowVisibleEnd:be})}const{scrollLeft:me,scrollTop:Me,updateRequested:We,xAxisScrollDir:Ze,yAxisScrollDir:Pe}=i(R);m(fd,{xAxisScrollDir:Ze,scrollLeft:me,yAxisScrollDir:Pe,scrollTop:Me,updateRequested:We})},F=pe=>{const{clientHeight:Ee,clientWidth:me,scrollHeight:Me,scrollLeft:We,scrollTop:Ze,scrollWidth:Pe}=pe.currentTarget,Ae=i(R);if(Ae.scrollTop===Ze&&Ae.scrollLeft===We)return;let je=We;if(C0(h.direction))switch(vd()){case Hi:je=-We;break;case Mm:je=Pe-me-We;break}R.value={...Ae,isScrolling:!0,scrollLeft:je,scrollTop:Math.max(0,Math.min(Ze,Me-Ee)),updateRequested:!0,xAxisScrollDir:lr(Ae.scrollLeft,je),yAxisScrollDir:lr(Ae.scrollTop,Ze)},Re(()=>K()),Z(),D()},q=(pe,Ee)=>{const me=i(_),Me=(W.value-me)/Ee*pe;Q({scrollTop:Math.min(W.value-me,Me)})},j=(pe,Ee)=>{const me=i(V),Me=(P.value-me)/Ee*pe;Q({scrollLeft:Math.min(P.value-me,Me)})},{onWheel:X}=B9({atXStartEdge:w(()=>R.value.scrollLeft<=0),atXEndEdge:w(()=>R.value.scrollLeft>=P.value-i(V)),atYStartEdge:w(()=>R.value.scrollTop<=0),atYEndEdge:w(()=>R.value.scrollTop>=W.value-i(_))},(pe,Ee)=>{$.value?.onMouseUp?.(),O.value?.onMouseUp?.();const me=i(V),Me=i(_);Q({scrollLeft:Math.min(R.value.scrollLeft+pe,P.value-me),scrollTop:Math.min(R.value.scrollTop+Ee,W.value-Me)})});Ft(E,"wheel",X,{passive:!1});const Q=({scrollLeft:pe=R.value.scrollLeft,scrollTop:Ee=R.value.scrollTop})=>{pe=Math.max(pe,0),Ee=Math.max(Ee,0);const me=i(R);Ee===me.scrollTop&&pe===me.scrollLeft||(R.value={...me,xAxisScrollDir:lr(me.scrollLeft,pe),yAxisScrollDir:lr(me.scrollTop,Ee),scrollLeft:pe,scrollTop:Ee,updateRequested:!0},Re(()=>K()),Z(),D())},{touchStartX:he,touchStartY:ue,handleTouchStart:ge,handleTouchMove:ie}=F9(E,R,Q,P,W,V,_),ae=(pe=0,Ee=0,me=Da)=>{const Me=i(R);Ee=Math.max(0,Math.min(Ee,h.totalColumn-1)),pe=Math.max(0,Math.min(pe,h.totalRow-1));const We=tC(y.namespace.value),Ze=i(C),Pe=s(h,Ze),Ae=r(h,Ze);Q({scrollLeft:l(h,Ee,me,Me.scrollLeft,Ze,Ae>h.width?We:0),scrollTop:u(h,pe,me,Me.scrollTop,Ze,Pe>h.height?We:0)})},ne=(pe,Ee)=>{const{columnWidth:me,direction:Me,rowHeight:We}=h,Ze=A.value(t&&me,t&&We,t&&Me),Pe=`${pe},${Ee}`;if(Nt(Ze,Pe))return Ze[Pe];{const[,Ae]=n(h,Ee,i(C)),je=i(C),Rt=C0(Me),[Ue,lt]=c(h,pe,je),[mt]=n(h,Ee,je);return Ze[Pe]={position:"absolute",left:Rt?void 0:`${Ae}px`,right:Rt?`${Ae}px`:void 0,top:`${lt}px`,height:`${Ue}px`,width:`${mt}px`},Ze[Pe]}},K=()=>{R.value.isScrolling=!1,Re(()=>{A.value(-1,null,null)})};ht(()=>{if(!Mt)return;const{initScrollLeft:pe,initScrollTop:Ee}=h,me=i(E);me&&(He(pe)&&(me.scrollLeft=pe),He(Ee)&&(me.scrollTop=Ee)),D()});const Z=()=>{const{direction:pe}=h,{scrollLeft:Ee,scrollTop:me,updateRequested:Me}=i(R),We=i(E);if(Me&&We){if(pe===al)switch(vd()){case Hi:We.scrollLeft=-Ee;break;case Pm:We.scrollLeft=Ee;break;default:{const{clientWidth:Ze,scrollWidth:Pe}=We;We.scrollLeft=Pe-Ze-Ee;break}}else We.scrollLeft=Math.max(0,Ee);We.scrollTop=Math.max(0,me)}},{resetAfterColumnIndex:re,resetAfterRowIndex:ce,resetAfter:ve}=S.proxy;b({windowRef:E,innerRef:N,getItemStyleCache:A,touchStartX:he,touchStartY:ue,handleTouchStart:ge,handleTouchMove:ie,scrollTo:Q,scrollToItem:ae,states:R,resetAfterColumnIndex:re,resetAfterRowIndex:ce,resetAfter:ve});const ke=()=>{const{scrollbarAlwaysOn:pe,scrollbarStartGap:Ee,scrollbarEndGap:me,totalColumn:Me,totalRow:We}=h,Ze=i(V),Pe=i(_),Ae=i(P),je=i(W),{scrollLeft:Rt,scrollTop:Ue}=i(R);return{horizontalScrollbar:Ye(kh,{ref:$,alwaysOn:pe,startGap:Ee,endGap:me,class:y.e("horizontal"),clientSize:Ze,layout:"horizontal",onScroll:j,ratio:Ze*100/Ae,scrollFrom:Rt/(Ae-Ze),total:We,visible:!0}),verticalScrollbar:Ye(kh,{ref:O,alwaysOn:pe,startGap:Ee,endGap:me,class:y.e("vertical"),clientSize:Pe,layout:"vertical",onScroll:q,ratio:Pe*100/je,scrollFrom:Ue/(je-Pe),total:Me,visible:!0})}},Ne=()=>{const[pe,Ee]=i(H),[me,Me]=i(U),{data:We,totalColumn:Ze,totalRow:Pe,useIsScrolling:Ae,itemKey:je}=h,Rt=[];if(Pe>0&&Ze>0)for(let Ue=me;Ue<=Me;Ue++)for(let lt=pe;lt<=Ee;lt++){const mt=je({columnIndex:lt,data:We,rowIndex:Ue});Rt.push(Ye(Fe,{key:mt},k.default?.({columnIndex:lt,data:We,isScrolling:Ae?i(R).isScrolling:void 0,style:ne(Ue,lt),rowIndex:Ue})))}return Rt},Ie=()=>{const pe=it(h.innerElement),Ee=Ne();return[Ye(pe,dt(h.innerProps,{style:i(L),ref:N}),Le(pe)?Ee:{default:()=>Ee})]};return()=>{const pe=it(h.containerElement),{horizontalScrollbar:Ee,verticalScrollbar:me}=ke(),Me=Ie();return Ye("div",{key:0,class:y.e("wrapper"),role:h.role},[Ye(pe,{class:h.className,style:i(I),onScroll:F,ref:E},Le(pe)?Me:{default:()=>Me}),Ee,me])}}}),x0="ElFixedSizeGrid",V9=oE({name:"ElFixedSizeGrid",getColumnPosition:({columnWidth:e},t)=>[e,t*e],getRowPosition:({rowHeight:e},t)=>[e,t*e],getEstimatedTotalHeight:({totalRow:e,rowHeight:t})=>t*e,getEstimatedTotalWidth:({totalColumn:e,columnWidth:t})=>t*e,getColumnOffset:({totalColumn:e,columnWidth:t,width:n},a,o,s,r,l)=>{n=Number(n);const u=Math.max(0,e*t-n),c=Math.min(u,a*t),d=Math.max(0,a*t-n+l+t);switch(o==="smart"&&(s>=d-n&&s<=c+n?o=Da:o=ko),o){case Vi:return c;case zi:return d;case ko:{const f=Math.round(d+(c-d)/2);return fu+Math.floor(n/2)?u:f}case Da:default:return s>=d&&s<=c?s:d>c||s{t=Number(t);const u=Math.max(0,n*e-t),c=Math.min(u,a*e),d=Math.max(0,a*e-t+l+e);switch(o===cf&&(s>=d-t&&s<=c+t?o=Da:o=ko),o){case Vi:return c;case zi:return d;case ko:{const f=Math.round(d+(c-d)/2);return fu+Math.floor(t/2)?u:f}case Da:default:return s>=d&&s<=c?s:d>c||sMath.max(0,Math.min(t-1,Math.floor(n/e))),getColumnStopIndexForStartIndex:({columnWidth:e,totalColumn:t,width:n},a,o)=>{const s=a*e,r=Math.ceil((n+o-s)/e);return Math.max(0,Math.min(t-1,a+r-1))},getRowStartIndexForOffset:({rowHeight:e,totalRow:t},n)=>Math.max(0,Math.min(t-1,Math.floor(n/e))),getRowStopIndexForStartIndex:({rowHeight:e,totalRow:t,height:n},a,o)=>{const s=a*e,r=Math.ceil((n+o-s)/e);return Math.max(0,Math.min(t-1,a+r-1))},initCache:()=>{},clearCache:!0,validateProps:({columnWidth:e,rowHeight:t})=>{He(e)||nn(x0,` - "columnWidth" must be passed as number, - instead ${typeof e} was given. - `),He(t)||nn(x0,` - "columnWidth" must be passed as number, - instead ${typeof t} was given. - `)}}),{max:md,min:sE,floor:rE}=Math,T0="ElDynamicSizeGrid",z9={column:"columnWidth",row:"rowHeight"},Eh={column:"lastVisitedColumnIndex",row:"lastVisitedRowIndex"},jo=(e,t,n,a)=>{const[o,s,r]=[n[a],e[z9[a]],n[Eh[a]]];if(t>r){let l=0;if(r>=0){const u=o[r];l=u.offset+u.size}for(let u=r+1;u<=t;u++){const c=s(u);o[u]={offset:l,size:c},l+=c}n[Eh[a]]=t}return o[t]},lE=(e,t,n,a,o,s)=>{for(;n<=a;){const r=n+rE((a-n)/2),l=jo(e,r,t,s).offset;if(l===o)return r;l{const s=o==="column"?e.totalColumn:e.totalRow;let r=1;for(;n{const[o,s]=[t[a],t[Eh[a]]];return(s>0?o[s].offset:0)>=n?lE(e,t,0,s,n,a):H9(e,t,md(0,s),n,a)},iE=({totalRow:e},{estimatedRowHeight:t,lastVisitedRowIndex:n,row:a})=>{let o=0;if(n>=e&&(n=e-1),n>=0){const r=a[n];o=r.offset+r.size}const s=(e-n-1)*t;return o+s},uE=({totalColumn:e},{column:t,estimatedColumnWidth:n,lastVisitedColumnIndex:a})=>{let o=0;if(a>e&&(a=e-1),a>=0){const r=t[a];o=r.offset+r.size}const s=(e-a-1)*n;return o+s},K9={column:uE,row:iE},O0=(e,t,n,a,o,s,r)=>{const[l,u]=[s==="row"?e.height:e.width,K9[s]],c=jo(e,t,o,s),d=md(0,sE(u(e,o)-l,c.offset)),f=md(0,c.offset-l+r+c.size);switch(n===cf&&(a>=f-l&&a<=d+l?n=Da:n=ko),n){case Vi:return d;case zi:return f;case ko:return Math.round(f+(d-f)/2);case Da:default:return a>=f&&a<=d?a:f>d||a{const a=jo(e,t,n,"column");return[a.size,a.offset]},getRowPosition:(e,t,n)=>{const a=jo(e,t,n,"row");return[a.size,a.offset]},getColumnOffset:(e,t,n,a,o,s)=>O0(e,t,n,a,o,"column",s),getRowOffset:(e,t,n,a,o,s)=>O0(e,t,n,a,o,"row",s),getColumnStartIndexForOffset:(e,t,n)=>$0(e,n,t,"column"),getColumnStopIndexForStartIndex:(e,t,n,a)=>{const o=jo(e,t,a,"column"),s=n+e.width;let r=o.offset+o.size,l=t;for(;l$0(e,n,t,"row"),getRowStopIndexForStartIndex:(e,t,n,a)=>{const{totalRow:o,height:s}=e,r=jo(e,t,a,"row"),l=n+s;let u=r.size+r.offset,c=t;for(;c{const n=({columnIndex:s,rowIndex:r},l)=>{l=Tt(l)?!0:l,He(s)&&(t.value.lastVisitedColumnIndex=Math.min(t.value.lastVisitedColumnIndex,s-1)),He(r)&&(t.value.lastVisitedRowIndex=Math.min(t.value.lastVisitedRowIndex,r-1)),e.exposed?.getItemStyleCache.value(-1,null,null),l&&e.proxy?.$forceUpdate()},a=(s,r)=>{n({columnIndex:s},r)},o=(s,r)=>{n({rowIndex:s},r)};Object.assign(e.proxy,{resetAfterColumnIndex:a,resetAfterRowIndex:o,resetAfter:n})},initCache:({estimatedColumnWidth:e=gh,estimatedRowHeight:t=gh})=>({column:{},estimatedColumnWidth:e,estimatedRowHeight:t,lastVisitedColumnIndex:-1,lastVisitedRowIndex:-1,row:{}}),clearCache:!1,validateProps:({columnWidth:e,rowHeight:t})=>{Ve(e)||nn(T0,` - "columnWidth" must be passed as function, - instead ${typeof e} was given. - `),Ve(t)||nn(T0,` - "rowHeight" must be passed as function, - instead ${typeof t} was given. - `)}}),_m=Symbol("ElSelectV2Injection"),j9=Ce({allowCreate:Boolean,autocomplete:{type:G(String),default:"none"},automaticDropdown:Boolean,clearable:Boolean,clearIcon:{type:Kt,default:Vo},effect:{type:G(String),default:"light"},collapseTags:Boolean,collapseTagsTooltip:Boolean,tagTooltip:{type:G(Object),default:()=>({})},maxCollapseTags:{type:Number,default:1},defaultFirstOption:Boolean,disabled:{type:Boolean,default:void 0},estimatedOptionHeight:{type:Number,default:void 0},filterable:Boolean,filterMethod:{type:G(Function)},height:{type:Number,default:274},itemHeight:{type:Number,default:34},id:String,loading:Boolean,loadingText:String,modelValue:{type:G([Array,String,Number,Boolean,Object]),default:void 0},multiple:Boolean,multipleLimit:{type:Number,default:0},name:String,noDataText:String,noMatchText:String,remoteMethod:{type:G(Function)},reserveKeyword:{type:Boolean,default:!0},options:{type:G(Array),required:!0},placeholder:{type:String},teleported:zt.teleported,persistent:{type:Boolean,default:!0},popperClass:zt.popperClass,popperStyle:zt.popperStyle,popperOptions:{type:G(Object),default:()=>({})},remote:Boolean,debounce:{type:Number,default:300},size:Tn,props:{type:G(Object),default:()=>od},valueKey:{type:String,default:"value"},scrollbarAlwaysOn:Boolean,validateEvent:{type:Boolean,default:!0},offset:{type:Number,default:12},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},placement:{type:G(String),values:Do,default:"bottom-start"},fallbackPlacements:{type:G(Array),default:["bottom-start","top-start","right","left"]},tagType:{...us.type,default:"info"},tagEffect:{...us.effect,default:"light"},tabindex:{type:[String,Number],default:0},appendTo:zt.appendTo,fitInputWidth:{type:[Boolean,Number],default:!0,validator(e){return Ht(e)||He(e)}},suffixIcon:{type:Kt,default:Fo},...Pr,...aa(["ariaLabel"])}),U9=Ce({data:Array,disabled:Boolean,hovering:Boolean,item:{type:G(Object),required:!0},index:Number,style:Object,selected:Boolean,created:Boolean}),q9={[at]:e=>!0,[yt]:e=>!0,"remove-tag":e=>!0,"visible-change":e=>!0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},Y9={hover:e=>He(e),select:(e,t)=>!0};var G9=se({props:{item:{type:Object,required:!0},style:{type:Object},height:Number},setup(){return{ns:fe("select")}}});function X9(e,t,n,a,o,s){return x(),B("div",{class:T(e.ns.be("group","title")),style:Ke({...e.style,lineHeight:`${e.height}px`})},Se(e.item.label),7)}var J9=$n(G9,[["render",X9]]);function Z9(e,{emit:t}){return{hoverItem:()=>{e.disabled||t("hover",e.index)},selectOptionClick:()=>{e.disabled||t("select",e.item,e.index)}}}var Q9=se({props:U9,emits:Y9,setup(e,{emit:t}){const n=_e(_m),a=fe("select"),{hoverItem:o,selectOptionClick:s}=Z9(e,{emit:t}),{getLabel:r}=yu(n.props);return{ns:a,contentId:n.contentId,hoverItem:o,selectOptionClick:s,getLabel:r}}});const e7=["id","aria-selected","aria-disabled"];function t7(e,t,n,a,o,s){return x(),B("li",{id:`${e.contentId}-${e.index}`,role:"option","aria-selected":e.selected,"aria-disabled":e.disabled||void 0,style:Ke(e.style),class:T([e.ns.be("dropdown","item"),e.ns.is("selected",e.selected),e.ns.is("disabled",e.disabled),e.ns.is("created",e.created),e.ns.is("hovering",e.hovering)]),onMousemove:t[0]||(t[0]=(...r)=>e.hoverItem&&e.hoverItem(...r)),onClick:t[1]||(t[1]=Xe((...r)=>e.selectOptionClick&&e.selectOptionClick(...r),["stop"]))},[ee(e.$slots,"default",{item:e.item,index:e.index,disabled:e.disabled},()=>[z("span",null,Se(e.getLabel(e.item)),1)])],46,e7)}var n7=$n(Q9,[["render",t7]]);const a7={loading:Boolean,data:{type:Array,required:!0},hoveringIndex:Number,width:Number,id:String,ariaLabel:String};var o7=se({name:"ElSelectDropdown",props:a7,setup(e,{slots:t,expose:n}){const a=_e(_m),o=fe("select"),{getLabel:s,getValue:r,getDisabled:l}=yu(a.props),u=M([]),c=M(),d=w(()=>e.data.length);le(()=>d.value,()=>{a.tooltipRef.value?.updatePopper?.()});const f=w(()=>Tt(a.props.estimatedOptionHeight)),v=w(()=>f.value?{itemSize:a.props.itemHeight}:{estimatedSize:a.props.estimatedOptionHeight,itemSize:R=>u.value[R]}),g=(R=[],A)=>{const{props:{valueKey:_}}=a;return ot(A)?R&&R.some(V=>qt(wn(V,_))===wn(A,_)):R.includes(A)},p=(R,A)=>{if(ot(A)){const{valueKey:_}=a.props;return wn(R,_)===wn(A,_)}else return R===A},h=(R,A)=>a.props.multiple?g(R,r(A)):p(R,r(A)),m=(R,A)=>{const{disabled:_,multiple:V,multipleLimit:H}=a.props;return _||!A&&(V?H>0&&R.length>=H:!1)},b=R=>e.hoveringIndex===R;n({listRef:c,isSized:f,isItemDisabled:m,isItemHovering:b,isItemSelected:h,scrollToItem:R=>{const A=c.value;A&&A.scrollToItem(R)},resetScrollTop:()=>{const R=c.value;R&&R.resetScrollTop()}});const S=R=>{const{index:A,data:_,style:V}=R,H=i(f),{itemSize:U,estimatedSize:W}=i(v),{modelValue:P}=a.props,{onSelect:I,onHover:L}=a,D=_[A];if(D.type==="Group")return Y(J9,{item:D,style:V,height:H?U:W},null);const F=h(P,D),q=m(P,F),j=b(A);return Y(n7,dt(R,{selected:F,disabled:l(D)||q,created:!!D.created,hovering:j,item:D,onSelect:I,onHover:L}),{default:X=>t.default?.(X)||Y("span",null,[s(D)])})},{onKeyboardNavigate:C,onKeyboardSelect:E}=a,$=()=>{C("forward")},O=()=>{C("backward")},N=R=>{const A=jt(R),{tab:_,esc:V,down:H,up:U,enter:W,numpadEnter:P}=we;switch([V,H,U,W,P].includes(A)&&(R.preventDefault(),R.stopPropagation()),A){case _:case V:break;case H:$();break;case U:O();break;case W:case P:E();break}};return()=>{const{data:R,width:A}=e,{height:_,multiple:V,scrollbarAlwaysOn:H}=a.props,U=w(()=>Xc?!0:H),W=i(f)?nE:D9;return Y("div",{class:[o.b("dropdown"),o.is("multiple",V)],style:{width:`${A}px`}},[t.header?.(),t.loading?.()||t.empty?.()||Y(W,dt({ref:c},i(v),{className:o.be("dropdown","list"),scrollbarAlwaysOn:U.value,data:R,height:_,width:A,total:R.length,innerElement:"ul",innerProps:{id:e.id,role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical"},onKeydown:N}),{default:P=>Y(S,P,null)}),t.footer?.()])}}});function s7(e,t){const{aliasProps:n,getLabel:a,getValue:o}=yu(e),s=M(0),r=M(),l=w(()=>e.allowCreate&&e.filterable);le(()=>e.options,g=>{const p=new Set(g.map(h=>a(h)));t.createdOptions=t.createdOptions.filter(h=>!p.has(a(h)))});function u(g){const p=h=>a(h)===g;return e.options&&e.options.some(p)||t.createdOptions.some(p)}function c(g){l.value&&(e.multiple&&g.created?s.value++:r.value=g)}function d(g){if(l.value)if(g&&g.length>0){if(u(g)){t.createdOptions=t.createdOptions.filter(h=>a(h)!==t.previousQuery);return}const p={[n.value.value]:g,[n.value.label]:g,created:!0,[n.value.disabled]:!1};t.createdOptions.length>=s.value?t.createdOptions[s.value]=p:t.createdOptions.push(p)}else if(e.multiple)t.createdOptions.length=s.value;else{const p=r.value;t.createdOptions.length=0,p&&p.created&&t.createdOptions.push(p)}}function f(g){if(!l.value||!g||!g.created||g.created&&e.reserveKeyword&&t.inputValue===a(g))return;const p=t.createdOptions.findIndex(h=>o(h)===o(g));~p&&(t.createdOptions.splice(p,1),s.value--)}function v(){l.value&&(t.createdOptions.length=0,s.value=0)}return{createNewOption:d,removeNewOption:f,selectNewOption:c,clearAllNewOption:v}}const r7=(e,t)=>{const{t:n}=Ct(),a=vn(),o=fe("select"),s=fe("input"),{form:r,formItem:l}=Dn(),{inputId:u}=Ia(e,{formItemContext:l}),{aliasProps:c,getLabel:d,getValue:f,getDisabled:v,getOptions:g}=yu(e),{valueOnClear:p,isEmptyValue:h}=hu(e),m=At({inputValue:"",cachedOptions:[],createdOptions:[],hoveringIndex:-1,inputHovering:!1,selectionWidth:0,collapseItemWidth:0,previousQuery:null,previousValue:void 0,selectedLabel:"",menuVisibleOnFocus:!1,isBeforeHide:!1}),b=M(-1),k=M(!1),y=M(),S=M(),C=M(),E=M(),$=M(),O=M(),N=M(),R=M(),A=M(),_=M(),{isComposing:V,handleCompositionStart:H,handleCompositionEnd:U,handleCompositionUpdate:W}=pu({afterComposition:Oe=>Yt(Oe)}),P=un(),{wrapperRef:I,isFocused:L,handleBlur:D}=ms($,{disabled:P,afterFocus(){e.automaticDropdown&&!X.value&&(X.value=!0,m.menuVisibleOnFocus=!0)},beforeBlur(Oe){return C.value?.isFocusInsideContent(Oe)||E.value?.isFocusInsideContent(Oe)},afterBlur(){X.value=!1,m.menuVisibleOnFocus=!1,e.validateEvent&&l?.validate?.("blur").catch(Oe=>pt(Oe))}}),F=w(()=>Ne("")),q=w(()=>e.loading?!1:e.options.length>0||m.createdOptions.length>0),j=M([]),X=M(!1),Q=w(()=>r?.statusIcon??!1),he=w(()=>{const Oe=j.value.length*e.itemHeight;return Oe>e.height?e.height:Oe}),ue=w(()=>e.multiple?ye(e.modelValue)&&e.modelValue.length>0:!h(e.modelValue)),ge=w(()=>e.clearable&&!P.value&&ue.value&&(L.value||m.inputHovering)),ie=w(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),ae=w(()=>ie.value&&o.is("reverse",X.value)),ne=w(()=>l?.validateState||""),K=w(()=>{if(ne.value)return nf[ne.value]}),Z=w(()=>e.remote?e.debounce:0),re=w(()=>e.remote&&!m.inputValue&&!q.value),ce=w(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&m.inputValue&&q.value&&j.value.length===0?e.noMatchText||n("el.select.noMatch"):q.value?null:e.noDataText||n("el.select.noData")),ve=w(()=>e.filterable&&Ve(e.filterMethod)),ke=w(()=>e.filterable&&e.remote&&Ve(e.remoteMethod)),Ne=Oe=>{const Ot=new RegExp(Lv(Oe),"i"),Et=xt=>ve.value||ke.value?!0:Oe?Ot.test(d(xt)||""):!0;return e.loading?[]:[...m.createdOptions,...e.options].reduce((xt,Bn)=>{const Sa=g(Bn);if(ye(Sa)){const Iu=Sa.filter(Et);Iu.length>0&&xt.push({label:d(Bn),type:"Group"},...Iu)}else(e.remote||Et(Bn))&&xt.push(Bn);return xt},[])},Ie=()=>{j.value=Ne(m.inputValue)},$e=w(()=>{const Oe=new Map;return F.value.forEach((Ot,Et)=>{Oe.set(tt(f(Ot)),{option:Ot,index:Et})}),Oe}),pe=w(()=>{const Oe=new Map;return j.value.forEach((Ot,Et)=>{Oe.set(tt(f(Ot)),{option:Ot,index:Et})}),Oe}),Ee=w(()=>j.value.every(Oe=>v(Oe))),me=Cn(),Me=w(()=>me.value==="small"?"small":"default"),We=()=>{if(He(e.fitInputWidth)){b.value=e.fitInputWidth;return}const Oe=y.value?.offsetWidth||200;!e.fitInputWidth&&q.value?Re(()=>{b.value=Math.max(Oe,Ze())}):b.value=Oe},Ze=()=>{const Oe=document.createElement("canvas").getContext("2d"),Ot=o.be("dropdown","item"),Et=(R.value?.listRef?.innerRef||document).querySelector(`.${Ot}`);if(Et===null||Oe===null)return 0;const xt=getComputedStyle(Et),Bn=Number.parseFloat(xt.paddingLeft)+Number.parseFloat(xt.paddingRight);return Oe.font=`bold ${xt.font.replace(new RegExp(`\\b${xt.fontWeight}\\b`),"")}`,j.value.reduce((Sa,Iu)=>{const Hx=Oe.measureText(d(Iu));return Math.max(Hx.width,Sa)},0)+Bn},Pe=()=>{if(!S.value)return 0;const Oe=window.getComputedStyle(S.value);return Number.parseFloat(Oe.gap||"6px")},Ae=w(()=>{const Oe=Pe(),Ot=e.filterable?Oe+Ad:0;return{maxWidth:`${_.value&&e.maxCollapseTags===1?m.selectionWidth-m.collapseItemWidth-Oe-Ot:m.selectionWidth-Ot}px`}}),je=w(()=>({maxWidth:`${m.selectionWidth}px`})),Rt=w(()=>ye(e.modelValue)?e.modelValue.length===0&&!m.inputValue:e.filterable?!m.inputValue:!0),Ue=w(()=>{const Oe=e.placeholder??n("el.select.placeholder");return e.multiple||!ue.value?Oe:m.selectedLabel}),lt=w(()=>C.value?.popperRef?.contentRef),mt=w(()=>{if(e.multiple){const Oe=e.modelValue.length;if(Oe>0&&pe.value.has(e.modelValue[Oe-1])){const{index:Ot}=pe.value.get(e.modelValue[Oe-1]);return Ot}}else if(!h(e.modelValue)&&pe.value.has(e.modelValue)){const{index:Oe}=pe.value.get(e.modelValue);return Oe}return-1}),kt=w({get(){return X.value&&(e.loading||!re.value||e.remote&&!!a.empty)&&(!k.value||!ia(m.previousQuery))},set(Oe){X.value=Oe}}),be=w(()=>e.multiple?e.collapseTags?m.cachedOptions.slice(0,e.maxCollapseTags):m.cachedOptions:[]),ze=w(()=>e.multiple?e.collapseTags?m.cachedOptions.slice(e.maxCollapseTags):[]:[]),{createNewOption:de,removeNewOption:Ge,selectNewOption:$t,clearAllNewOption:tn}=s7(e,m),_n=Oe=>{P.value||e.filterable&&X.value&&Oe&&!N.value?.contains(Oe.target)||(m.menuVisibleOnFocus?m.menuVisibleOnFocus=!1:X.value=!X.value)},Be=()=>{m.inputValue.length>0&&!X.value&&(X.value=!0),de(m.inputValue),Re(()=>{ct(m.inputValue)})},nt=ou(()=>{Be(),k.value=!1},Z),ct=Oe=>{m.previousQuery===Oe||V.value||(m.previousQuery=Oe,e.filterable&&Ve(e.filterMethod)?e.filterMethod(Oe):e.filterable&&e.remote&&Ve(e.remoteMethod)&&e.remoteMethod(Oe),e.defaultFirstOption&&(e.filterable||e.remote)&&j.value.length?Re(kn):Re(Lt))},kn=()=>{const Oe=j.value.filter(xt=>!xt.disabled&&xt.type!=="Group"),Ot=Oe.find(xt=>xt.created),Et=Oe[0];m.hoveringIndex=Qe(j.value,Ot||Et)},Wt=Oe=>{sn(e.modelValue,Oe)||t(yt,Oe)},yn=Oe=>{t(at,Oe),Wt(Oe),m.previousValue=e.multiple?String(Oe):Oe,Re(()=>{if(e.multiple&&ye(e.modelValue)){const Ot=m.cachedOptions.slice(),Et=e.modelValue.map(xt=>fg(xt,Ot));sn(m.cachedOptions,Et)||(m.cachedOptions=Et)}else Nu(!0)})},Qe=(Oe=[],Ot)=>{if(!ot(Ot))return Oe.indexOf(Ot);const Et=e.valueKey;let xt=-1;return Oe.some((Bn,Sa)=>wn(Bn,Et)===wn(Ot,Et)?(xt=Sa,!0):!1),xt},tt=Oe=>ot(Oe)?wn(Oe,e.valueKey):Oe,bt=()=>{We()},oa=()=>{m.selectionWidth=Number.parseFloat(window.getComputedStyle(S.value).width)},ho=()=>{m.collapseItemWidth=_.value.getBoundingClientRect().width},Wa=()=>{C.value?.updatePopper?.()},Ou=()=>{E.value?.updatePopper?.()},js=Oe=>{const Ot=f(Oe);if(e.multiple){let Et=e.modelValue.slice();const xt=Qe(Et,Ot);xt>-1?(Et=[...Et.slice(0,xt),...Et.slice(xt+1)],m.cachedOptions.splice(xt,1),Ge(Oe)):(e.multipleLimit<=0||Et.length{let Et=e.modelValue.slice();const xt=Qe(Et,f(Ot));xt>-1&&!P.value&&(Et=[...e.modelValue.slice(0,xt),...e.modelValue.slice(xt+1)],m.cachedOptions.splice(xt,1),yn(Et),t("remove-tag",f(Ot)),Ge(Ot)),Oe.stopPropagation(),zo()},zo=()=>{$.value?.focus()},yf=()=>{if(X.value){X.value=!1,Re(()=>$.value?.blur());return}$.value?.blur()},wf=()=>{m.inputValue.length>0?m.inputValue="":X.value=!1},Sf=Oe=>MS(Oe,Ot=>!m.cachedOptions.some(Et=>f(Et)===Ot&&v(Et))),Cf=Oe=>{const Ot=jt(Oe);if(e.multiple&&Ot!==we.delete&&m.inputValue.length===0){Oe.preventDefault();const Et=e.modelValue.slice(),xt=Sf(Et);if(xt<0)return;const Bn=Et[xt];Et.splice(xt,1);const Sa=m.cachedOptions[xt];m.cachedOptions.splice(xt,1),Ge(Sa),yn(Et),t("remove-tag",Bn)}},kf=()=>{let Oe;ye(e.modelValue)?Oe=[]:Oe=p.value,m.selectedLabel="",X.value=!1,yn(Oe),t("clear"),tn(),zo()},_r=(Oe,Ot=void 0)=>{const Et=j.value;if(!["forward","backward"].includes(Oe)||P.value||Et.length<=0||Ee.value||V.value)return;if(!X.value)return _n();Tt(Ot)&&(Ot=m.hoveringIndex);let xt=-1;Oe==="forward"?(xt=Ot+1,xt>=Et.length&&(xt=0)):Oe==="backward"&&(xt=Ot-1,(xt<0||xt>=Et.length)&&(xt=Et.length-1));const Bn=Et[xt];if(v(Bn)||Bn.type==="Group")return _r(Oe,xt);m.hoveringIndex=xt,Ar(xt)},Te=()=>{if(X.value)~m.hoveringIndex&&j.value[m.hoveringIndex]&&js(j.value[m.hoveringIndex]);else return _n()},vt=Oe=>{m.hoveringIndex=Oe??-1},Lt=()=>{if(!e.multiple)m.hoveringIndex=j.value.findIndex(Oe=>tt(f(Oe))===tt(e.modelValue));else{const Oe=e.modelValue.length;if(Oe>0){const Ot=e.modelValue[Oe-1];m.hoveringIndex=j.value.findIndex(Et=>tt(Ot)===tt(f(Et)))}else m.hoveringIndex=-1}},Yt=Oe=>{if(m.inputValue=Oe.target.value,e.remote)k.value=!0,nt();else return Be()},En=Oe=>{X.value=!1,L.value&&D(new FocusEvent("blur",Oe))},vo=()=>(m.isBeforeHide=!1,Re(()=>{~mt.value&&Ar(mt.value)})),Ar=Oe=>{R.value.scrollToItem(Oe)},fg=(Oe,Ot)=>{const Et=tt(Oe);if($e.value.has(Et)){const{option:xt}=$e.value.get(Et);return xt}if(Ot&&Ot.length){const xt=Ot.find(Bn=>tt(f(Bn))===Et);if(xt)return xt}return{[c.value.value]:Oe,[c.value.label]:Oe}},zx=Oe=>$e.value.get(f(Oe))?.index??-1,Nu=(Oe=!1)=>{if(e.multiple)if(e.modelValue.length>0){const Ot=m.cachedOptions.slice();m.cachedOptions.length=0,m.previousValue=e.modelValue.toString();for(const Et of e.modelValue){const xt=fg(Et,Ot);m.cachedOptions.push(xt)}}else m.cachedOptions=[],m.previousValue=void 0;else if(ue.value){m.previousValue=e.modelValue;const Ot=j.value,Et=Ot.findIndex(xt=>tt(f(xt))===tt(e.modelValue));~Et?m.selectedLabel=d(Ot[Et]):(!m.selectedLabel||Oe)&&(m.selectedLabel=tt(e.modelValue))}else m.selectedLabel="",m.previousValue=void 0;tn(),We()};le(()=>e.fitInputWidth,()=>{We()}),le(X,Oe=>{Oe?(e.persistent||We(),ct("")):(m.inputValue="",m.previousQuery=null,m.isBeforeHide=!0,m.menuVisibleOnFocus=!1,de(""))}),le(()=>e.modelValue,(Oe,Ot)=>{(!Oe||ye(Oe)&&Oe.length===0||e.multiple&&!sn(Oe.toString(),m.previousValue)||!e.multiple&&tt(Oe)!==tt(m.previousValue))&&Nu(!0),!sn(Oe,Ot)&&e.validateEvent&&l?.validate?.("change").catch(Et=>pt(Et))},{deep:!0}),le(()=>e.options,()=>{const Oe=$.value;(!Oe||Oe&&document.activeElement!==Oe)&&Nu()},{deep:!0,flush:"post"}),le(()=>j.value,()=>(We(),R.value&&Re(R.value.resetScrollTop))),wa(()=>{m.isBeforeHide||Ie()}),wa(()=>{const{valueKey:Oe,options:Ot}=e,Et=new Map;for(const xt of Ot){const Bn=f(xt);let Sa=Bn;if(ot(Sa)&&(Sa=wn(Bn,Oe)),Et.get(Sa)){pt("ElSelectV2","The option values you provided seem to be duplicated, which may cause some problems, please check.");break}else Et.set(Sa,!0)}}),ht(()=>{Nu()}),en(y,bt),en(S,oa),en(I,Wa),en(A,Ou),en(_,ho);let Ef;return le(()=>kt.value,Oe=>{Oe?Ef=en(R,Wa).stop:(Ef?.(),Ef=void 0),t("visible-change",Oe)}),{inputId:u,collapseTagSize:Me,currentPlaceholder:Ue,expanded:X,emptyText:ce,popupHeight:he,debounce:Z,allOptions:F,allOptionsValueMap:$e,filteredOptions:j,iconComponent:ie,iconReverse:ae,tagStyle:Ae,collapseTagStyle:je,popperSize:b,dropdownMenuVisible:kt,hasModelValue:ue,shouldShowPlaceholder:Rt,selectDisabled:P,selectSize:me,needStatusIcon:Q,showClearBtn:ge,states:m,isFocused:L,nsSelect:o,nsInput:s,inputRef:$,menuRef:R,tagMenuRef:A,tooltipRef:C,tagTooltipRef:E,selectRef:y,wrapperRef:I,selectionRef:S,prefixRef:O,suffixRef:N,collapseItemRef:_,popperRef:lt,validateState:ne,validateIcon:K,showTagList:be,collapseTagList:ze,debouncedOnInputChange:nt,deleteTag:Ru,getLabel:d,getValue:f,getDisabled:v,getValueKey:tt,getIndex:zx,handleClear:kf,handleClickOutside:En,handleDel:Cf,handleEsc:wf,focus:zo,blur:yf,handleMenuEnter:vo,handleResize:bt,resetSelectionWidth:oa,updateTooltip:Wa,updateTagTooltip:Ou,updateOptions:Ie,toggleMenu:_n,scrollTo:Ar,onInput:Yt,onKeyboardNavigate:_r,onKeyboardSelect:Te,onSelect:js,onHover:vt,handleCompositionStart:H,handleCompositionEnd:U,handleCompositionUpdate:W}};var l7=se({name:"ElSelectV2",components:{ElSelectMenu:o7,ElTag:ts,ElTooltip:Ln,ElIcon:De},directives:{ClickOutside:zs},props:j9,emits:q9,setup(e,{emit:t}){const n=w(()=>{const{modelValue:u,multiple:c}=e,d=c?[]:void 0;return ye(u)?c?u:d:c?d:u}),a=r7(At({...Mn(e),modelValue:n}),t),{calculatorRef:o,inputStyle:s}=Av(),r=zn();St(_m,{props:At({...Mn(e),height:a.popupHeight,modelValue:n}),expanded:a.expanded,tooltipRef:a.tooltipRef,contentId:r,onSelect:a.onSelect,onHover:a.onHover,onKeyboardNavigate:a.onKeyboardNavigate,onKeyboardSelect:a.onKeyboardSelect});const l=w(()=>e.multiple?a.states.cachedOptions.map(u=>a.getLabel(u)):a.states.selectedLabel);return{...a,modelValue:n,selectedLabel:l,calculatorRef:o,inputStyle:s,contentId:r,BORDER_HORIZONTAL_WIDTH:J1}}});const i7=["id","value","autocomplete","tabindex","aria-expanded","aria-label","disabled","aria-controls","aria-activedescendant","readonly","name"],u7=["textContent"],c7={key:1};function d7(e,t,n,a,o,s){const r=It("el-tag"),l=It("el-tooltip"),u=It("el-icon"),c=It("el-select-menu"),d=iv("click-outside");return ut((x(),B("div",{ref:"selectRef",class:T([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),onMouseenter:t[15]||(t[15]=f=>e.states.inputHovering=!0),onMouseleave:t[16]||(t[16]=f=>e.states.inputHovering=!1)},[Y(l,{ref:"tooltipRef",visible:e.dropdownMenuVisible,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-style":e.popperStyle,"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,placement:e.placement,pure:"",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,trigger:"click",persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:t[14]||(t[14]=f=>e.states.isBeforeHide=!1)},{default:J(()=>[z("div",{ref:"wrapperRef",class:T([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:t[11]||(t[11]=Xe((...f)=>e.toggleMenu&&e.toggleMenu(...f),["prevent"]))},[e.$slots.prefix?(x(),B("div",{key:0,ref:"prefixRef",class:T(e.nsSelect.e("prefix"))},[ee(e.$slots,"prefix")],2)):te("v-if",!0),z("div",{ref:"selectionRef",class:T([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.modelValue.length)])},[e.multiple?ee(e.$slots,"tag",{key:0,data:e.states.cachedOptions,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(x(!0),B(Fe,null,gt(e.showTagList,f=>(x(),B("div",{key:e.getValueKey(e.getValue(f)),class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!e.selectDisabled&&!e.getDisabled(f),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:Ke(e.tagStyle),onClose:v=>e.deleteTag(v,f)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:e.getIndex(f),label:e.getLabel(f),value:e.getValue(f)},()=>[wt(Se(e.getLabel(f)),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.cachedOptions.length>e.maxCollapseTags?(x(),oe(l,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":e.tagTooltip?.fallbackPlacements??["bottom","top","right","left"],effect:e.tagTooltip?.effect??e.effect,placement:e.tagTooltip?.placement??"bottom","popper-class":e.tagTooltip?.popperClass??e.popperClass,"popper-style":e.tagTooltip?.popperStyle??e.popperStyle,teleported:e.tagTooltip?.teleported??e.teleported,"append-to":e.tagTooltip?.appendTo??e.appendTo,"popper-options":e.tagTooltip?.popperOptions??e.popperOptions,transition:e.tagTooltip?.transition,"show-after":e.tagTooltip?.showAfter,"hide-after":e.tagTooltip?.hideAfter,"auto-close":e.tagTooltip?.autoClose,offset:e.tagTooltip?.offset},{default:J(()=>[z("div",{ref:"collapseItemRef",class:T(e.nsSelect.e("selected-item"))},[Y(r,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,style:Ke(e.collapseTagStyle),"disable-transitions":""},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))}," + "+Se(e.states.cachedOptions.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:J(()=>[z("div",{ref:"tagMenuRef",class:T(e.nsSelect.e("selection"))},[(x(!0),B(Fe,null,gt(e.collapseTagList,f=>(x(),B("div",{key:e.getValueKey(e.getValue(f)),class:T(e.nsSelect.e("selected-item"))},[Y(r,{class:"in-tooltip",closable:!e.selectDisabled&&!e.getDisabled(f),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:v=>e.deleteTag(v,f)},{default:J(()=>[z("span",{class:T(e.nsSelect.e("tags-text"))},[ee(e.$slots,"label",{index:e.getIndex(f),label:e.getLabel(f),value:e.getValue(f)},()=>[wt(Se(e.getLabel(f)),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","fallback-placements","effect","placement","popper-class","popper-style","teleported","append-to","popper-options","transition","show-after","hide-after","auto-close","offset"])):te("v-if",!0)]):te("v-if",!0),z("div",{class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable||e.selectDisabled||!e.states.inputValue&&!e.isFocused)])},[z("input",{id:e.inputId,ref:"inputRef",value:e.states.inputValue,style:Ke(e.inputStyle),autocomplete:e.autocomplete,tabindex:e.tabindex,"aria-autocomplete":"none","aria-haspopup":"listbox",autocapitalize:"off","aria-expanded":e.expanded,"aria-label":e.ariaLabel,class:T([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,role:"combobox","aria-controls":e.contentId,"aria-activedescendant":e.states.hoveringIndex>=0?`${e.contentId}-${e.states.hoveringIndex}`:"",readonly:!e.filterable,spellcheck:"false",type:"text",name:e.name,onInput:t[0]||(t[0]=(...f)=>e.onInput&&e.onInput(...f)),onChange:t[1]||(t[1]=Xe(()=>{},["stop"])),onCompositionstart:t[2]||(t[2]=(...f)=>e.handleCompositionStart&&e.handleCompositionStart(...f)),onCompositionupdate:t[3]||(t[3]=(...f)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...f)),onCompositionend:t[4]||(t[4]=(...f)=>e.handleCompositionEnd&&e.handleCompositionEnd(...f)),onKeydown:[t[5]||(t[5]=on(Xe(f=>e.onKeyboardNavigate("backward"),["stop","prevent"]),["up"])),t[6]||(t[6]=on(Xe(f=>e.onKeyboardNavigate("forward"),["stop","prevent"]),["down"])),t[7]||(t[7]=on(Xe((...f)=>e.onKeyboardSelect&&e.onKeyboardSelect(...f),["stop","prevent"]),["enter"])),t[8]||(t[8]=on(Xe((...f)=>e.handleEsc&&e.handleEsc(...f),["stop","prevent"]),["esc"])),t[9]||(t[9]=on(Xe((...f)=>e.handleDel&&e.handleDel(...f),["stop"]),["delete"]))],onClick:t[10]||(t[10]=Xe((...f)=>e.toggleMenu&&e.toggleMenu(...f),["stop"]))},null,46,i7),e.filterable?(x(),B("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:T(e.nsSelect.e("input-calculator")),textContent:Se(e.states.inputValue)},null,10,u7)):te("v-if",!0)],2),e.shouldShowPlaceholder?(x(),B("div",{key:1,class:T([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?ee(e.$slots,"label",{key:0,index:e.allOptionsValueMap.get(e.modelValue)?.index??-1,label:e.currentPlaceholder,value:e.modelValue},()=>[z("span",null,Se(e.currentPlaceholder),1)]):(x(),B("span",c7,Se(e.currentPlaceholder),1))],2)):te("v-if",!0)],2),z("div",{ref:"suffixRef",class:T(e.nsSelect.e("suffix"))},[e.iconComponent?ut((x(),oe(u,{key:0,class:T([e.nsSelect.e("caret"),e.nsInput.e("icon"),e.iconReverse])},{default:J(()=>[(x(),oe(it(e.iconComponent)))]),_:1},8,["class"])),[[Pt,!e.showClearBtn]]):te("v-if",!0),e.showClearBtn&&e.clearIcon?(x(),oe(u,{key:1,class:T([e.nsSelect.e("caret"),e.nsInput.e("icon"),e.nsSelect.e("clear")]),onClick:Xe(e.handleClear,["prevent","stop"])},{default:J(()=>[(x(),oe(it(e.clearIcon)))]),_:1},8,["class","onClick"])):te("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(x(),oe(u,{key:2,class:T([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:J(()=>[(x(),oe(it(e.validateIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],2)]),content:J(()=>[Y(c,{id:e.contentId,ref:"menuRef",data:e.filteredOptions,width:e.popperSize-e.BORDER_HORIZONTAL_WIDTH,"hovering-index":e.states.hoveringIndex,"scrollbar-always-on":e.scrollbarAlwaysOn,"aria-label":e.ariaLabel},ua({default:J(f=>[ee(e.$slots,"default",Jo(Zo(f)))]),_:2},[e.$slots.header?{name:"header",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","header")),onClick:t[12]||(t[12]=Xe(()=>{},["stop"]))},[ee(e.$slots,"header")],2)]),key:"0"}:void 0,e.$slots.loading&&e.loading?{name:"loading",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","loading"))},[ee(e.$slots,"loading")],2)]),key:"1"}:e.loading||e.filteredOptions.length===0?{name:"empty",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","empty"))},[ee(e.$slots,"empty",{},()=>[z("span",null,Se(e.emptyText),1)])],2)]),key:"2"}:void 0,e.$slots.footer?{name:"footer",fn:J(()=>[z("div",{class:T(e.nsSelect.be("dropdown","footer")),onClick:t[13]||(t[13]=Xe(()=>{},["stop"]))},[ee(e.$slots,"footer")],2)]),key:"3"}:void 0]),1032,["id","data","width","hovering-index","scrollbar-always-on","aria-label"])]),_:3},8,["visible","teleported","popper-class","popper-style","popper-options","fallback-placements","effect","placement","transition","persistent","append-to","show-arrow","offset","onBeforeShow"])],34)),[[d,e.handleClickOutside,e.popperRef]])}var f7=$n(l7,[["render",d7]]);const p7=rt(f7),h7=Ce({animated:Boolean,count:{type:Number,default:1},rows:{type:Number,default:3},loading:{type:Boolean,default:!0},throttle:{type:G([Number,Object])}}),v7=Ce({variant:{type:String,values:["circle","rect","h1","h3","text","caption","p","image","button"],default:"text"}});var m7=se({name:"ElSkeletonItem",__name:"skeleton-item",props:v7,setup(e){const t=fe("skeleton");return(n,a)=>(x(),B("div",{class:T([i(t).e("item"),i(t).e(e.variant)])},[e.variant==="image"?(x(),oe(i(S3),{key:0})):te("v-if",!0)],2))}}),gd=m7,g7=se({name:"ElSkeleton",__name:"skeleton",props:h7,setup(e,{expose:t}){const n=e,a=fe("skeleton"),o=xA(Vt(n,"loading"),n.throttle);return t({uiLoading:o}),(s,r)=>i(o)?(x(),B("div",dt({key:0,class:[i(a).b(),i(a).is("animated",e.animated)]},s.$attrs),[(x(!0),B(Fe,null,gt(e.count,l=>(x(),B(Fe,{key:l},[i(o)?ee(s.$slots,"template",{key:l},()=>[Y(gd,{class:T(i(a).is("first")),variant:"p"},null,8,["class"]),(x(!0),B(Fe,null,gt(e.rows,u=>(x(),oe(gd,{key:u,class:T([i(a).e("paragraph"),i(a).is("last",u===e.rows&&e.rows>1)]),variant:"p"},null,8,["class"]))),128))]):te("v-if",!0)],64))),128))],16)):ee(s.$slots,"default",Jo(dt({key:1},s.$attrs)))}}),b7=g7;const y7=rt(b7,{SkeletonItem:gd}),w7=an(gd),cE=Symbol("sliderContextKey"),S7=Ce({modelValue:{type:G([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:Tn,inputSize:Tn,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:G(Function),default:void 0},disabled:{type:Boolean,default:void 0},range:Boolean,vertical:Boolean,height:String,rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:G(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:Do,default:"top"},marks:{type:G(Object)},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},...aa(["ariaLabel"])}),sp=e=>He(e)||ye(e)&&e.every(He),C7={[at]:sp,[Sn]:sp,[yt]:sp},k7=(e,t,n)=>{const a=M();return ht(async()=>{e.range?(ye(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(!He(e.modelValue)||Number.isNaN(e.modelValue)?t.firstValue=e.min:t.firstValue=Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),Ft(window,"resize",n),await Re(),n()}),{sliderWrapper:a}},E7=e=>w(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((t,n)=>t-n).filter(t=>t<=e.max&&t>=e.min).map(t=>({point:t,position:(t-e.min)*100/(e.max-e.min),mark:e.marks[t]})):[]),x7=(e,t,n)=>{const{formItem:a}=Dn(),o=Xt(),s=M(),r=M(),l={firstButton:s,secondButton:r},u=un(),c=w(()=>Math.min(t.firstValue,t.secondValue)),d=w(()=>Math.max(t.firstValue,t.secondValue)),f=w(()=>e.range?`${100*(d.value-c.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),v=w(()=>e.range?`${100*(c.value-e.min)/(e.max-e.min)}%`:"0%"),g=w(()=>e.vertical?{height:e.height}:{}),p=w(()=>e.vertical?{height:f.value,bottom:v.value}:{width:f.value,left:v.value}),h=()=>{o.value&&(t.sliderSize=o.value.getBoundingClientRect()[e.vertical?"height":"width"])},m=A=>{const _=e.min+A*(e.max-e.min)/100;if(!e.range)return s;let V;return Math.abs(c.value-_)t.secondValue?"firstButton":"secondButton",l[V]},b=A=>{const _=m(A);return _.value.setPosition(A),_},k=A=>{t.firstValue=A??e.min,S(e.range?[c.value,d.value]:A??e.min)},y=A=>{t.secondValue=A,e.range&&S([c.value,d.value])},S=A=>{n(at,A),n(Sn,A)},C=async()=>{await Re(),n(yt,e.range?[c.value,d.value]:e.modelValue)},E=A=>{if(u.value||t.dragging)return;h();let _=0;if(e.vertical){const V=A.touches?.item(0)?.clientY??A.clientY;_=(o.value.getBoundingClientRect().bottom-V)/t.sliderSize*100}else _=((A.touches?.item(0)?.clientX??A.clientX)-o.value.getBoundingClientRect().left)/t.sliderSize*100;if(!(_<0||_>100))return b(_)};return{elFormItem:a,slider:o,firstButton:s,secondButton:r,sliderDisabled:u,minValue:c,maxValue:d,runwayStyle:g,barStyle:p,resetSize:h,setPosition:b,emitChange:C,onSliderWrapperPrevent:A=>{(l.firstButton.value?.dragging||l.secondButton.value?.dragging)&&A.preventDefault()},onSliderClick:A=>{E(A)&&C()},onSliderDown:async A=>{const _=E(A);_&&(await Re(),_.value.onButtonDown(A))},onSliderMarkerDown:A=>{u.value||t.dragging||b(A)&&C()},setFirstValue:k,setSecondValue:y}},T7=(e,t,n,a)=>({stops:w(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===0)return pt("ElSlider","step should not be 0."),[];const r=Math.ceil((e.max-e.min)/e.step),l=100*e.step/(e.max-e.min),u=Array.from({length:r-1}).map((c,d)=>(d+1)*l);return e.range?u.filter(c=>c<100*(n.value-e.min)/(e.max-e.min)||c>100*(a.value-e.min)/(e.max-e.min)):u.filter(c=>c>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:r=>e.vertical?{bottom:`${r}%`}:{left:`${r}%`}}),$7=(e,t,n,a,o,s)=>{const r=c=>{o(at,c),o(Sn,c)},l=()=>e.range?![n.value,a.value].every((c,d)=>c===t.oldValue[d]):e.modelValue!==t.oldValue,u=()=>{e.min>e.max&&nn("Slider","min should not be greater than max.");const c=e.modelValue;e.range&&ye(c)?c[1]e.max?r([e.max,e.max]):c[0]e.max?r([c[0],e.max]):(t.firstValue=c[0],t.secondValue=c[1],l()&&(e.validateEvent&&s?.validate?.("change").catch(d=>pt(d)),t.oldValue=c.slice())):!e.range&&He(c)&&!Number.isNaN(c)&&(ce.max?r(e.max):(t.firstValue=c,l()&&(e.validateEvent&&s?.validate?.("change").catch(d=>pt(d)),t.oldValue=c)))};u(),le(()=>t.dragging,c=>{c||u()}),le(()=>e.modelValue,(c,d)=>{t.dragging||ye(c)&&ye(d)&&c.every((f,v)=>f===d[v])&&t.firstValue===c[0]&&t.secondValue===c[1]||u()},{deep:!0}),le(()=>[e.min,e.max],()=>{u()})},O7=(e,t,n)=>{const a=M(),o=M(!1),s=w(()=>t.value instanceof Function);return{tooltip:a,tooltipVisible:o,formatValue:w(()=>s.value&&t.value(e.modelValue)||e.modelValue),displayTooltip:Mo(()=>{n.value&&(o.value=!0)},50),hideTooltip:Mo(()=>{n.value&&(o.value=!1)},50)}},R7=(e,t,n)=>{const{disabled:a,min:o,max:s,step:r,showTooltip:l,persistent:u,precision:c,sliderSize:d,formatTooltip:f,emitChange:v,resetSize:g,updateDragging:p}=_e(cE),{tooltip:h,tooltipVisible:m,formatValue:b,displayTooltip:k,hideTooltip:y}=O7(e,f,l),S=M(),C=w(()=>`${(e.modelValue-o.value)/(s.value-o.value)*100}%`),E=w(()=>e.vertical?{bottom:C.value}:{left:C.value}),$=()=>{t.hovering=!0,k()},O=()=>{t.hovering=!1,t.dragging||y()},N=j=>{a.value||(j.preventDefault(),L(j),window.addEventListener("mousemove",D),window.addEventListener("touchmove",D),window.addEventListener("mouseup",F),window.addEventListener("touchend",F),window.addEventListener("contextmenu",F),S.value.focus())},R=j=>{a.value||(t.newPosition=Number.parseFloat(C.value)+j/(s.value-o.value)*100,q(t.newPosition),v())},A=()=>{R(-r.value)},_=()=>{R(r.value)},V=()=>{R(-r.value*4)},H=()=>{R(r.value*4)},U=()=>{a.value||(q(0),v())},W=()=>{a.value||(q(100),v())},P=j=>{const X=jt(j);let Q=!0;switch(X){case we.left:case we.down:A();break;case we.right:case we.up:_();break;case we.home:U();break;case we.end:W();break;case we.pageDown:V();break;case we.pageUp:H();break;default:Q=!1;break}Q&&j.preventDefault()},I=j=>{let X,Q;return j.type.startsWith("touch")?(Q=j.touches[0].clientY,X=j.touches[0].clientX):(Q=j.clientY,X=j.clientX),{clientX:X,clientY:Q}},L=j=>{t.dragging=!0,t.isClick=!0;const{clientX:X,clientY:Q}=I(j);e.vertical?t.startY=Q:t.startX=X,t.startPosition=Number.parseFloat(C.value),t.newPosition=t.startPosition},D=j=>{if(t.dragging){t.isClick=!1,k(),g();let X;const{clientX:Q,clientY:he}=I(j);e.vertical?(t.currentY=he,X=(t.startY-t.currentY)/d.value*100):(t.currentX=Q,X=(t.currentX-t.startX)/d.value*100),t.newPosition=t.startPosition+X,q(t.newPosition)}},F=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||y(),t.isClick||q(t.newPosition),v()},0),window.removeEventListener("mousemove",D),window.removeEventListener("touchmove",D),window.removeEventListener("mouseup",F),window.removeEventListener("touchend",F),window.removeEventListener("contextmenu",F))},q=async j=>{if(j===null||Number.isNaN(+j))return;j=ar(j,0,100);const X=Math.floor((s.value-o.value)/r.value),Q=X*r.value/(s.value-o.value)*100,he=Q+(100-Q)/2;let ue;if(jt.dragging,j=>{p(j)}),Ft(S,"touchstart",N,{passive:!1}),{disabled:a,button:S,tooltip:h,tooltipVisible:m,showTooltip:l,persistent:u,wrapperStyle:E,formatValue:b,handleMouseEnter:$,handleMouseLeave:O,onButtonDown:N,onKeyDown:P,setPosition:q}},N7=Ce({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:Do,default:"top"}}),I7={[at]:e=>He(e)},P7=["tabindex"];var M7=se({name:"ElSliderButton",__name:"button",props:N7,emits:I7,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("slider"),r=At({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:a.modelValue}),l=w(()=>f.value?v.value:!1),{disabled:u,button:c,tooltip:d,showTooltip:f,persistent:v,tooltipVisible:g,wrapperStyle:p,formatValue:h,handleMouseEnter:m,handleMouseLeave:b,onButtonDown:k,onKeyDown:y,setPosition:S}=R7(a,r,o),{hovering:C,dragging:E}=Mn(r);return t({onButtonDown:k,onKeyDown:y,setPosition:S,hovering:C,dragging:E}),($,O)=>(x(),B("div",{ref_key:"button",ref:c,class:T([i(s).e("button-wrapper"),{hover:i(C),dragging:i(E)}]),style:Ke(i(p)),tabindex:i(u)?void 0:0,onMouseenter:O[0]||(O[0]=(...N)=>i(m)&&i(m)(...N)),onMouseleave:O[1]||(O[1]=(...N)=>i(b)&&i(b)(...N)),onMousedown:O[2]||(O[2]=(...N)=>i(k)&&i(k)(...N)),onFocus:O[3]||(O[3]=(...N)=>i(m)&&i(m)(...N)),onBlur:O[4]||(O[4]=(...N)=>i(b)&&i(b)(...N)),onKeydown:O[5]||(O[5]=(...N)=>i(y)&&i(y)(...N))},[Y(i(Ln),{ref_key:"tooltip",ref:d,visible:i(g),placement:$.placement,"fallback-placements":["top","bottom","right","left"],"stop-popper-mouse-event":!1,"popper-class":$.tooltipClass,disabled:!i(f),persistent:l.value},{content:J(()=>[z("span",null,Se(i(h)),1)]),default:J(()=>[z("div",{class:T([i(s).e("button"),{hover:i(C),dragging:i(E)}])},null,2)]),_:1},8,["visible","placement","popper-class","disabled","persistent"])],46,P7))}}),R0=M7;const _7=Ce({mark:{type:G([String,Object]),default:void 0}});var A7=se({name:"ElSliderMarker",props:_7,setup(e){const t=fe("slider"),n=w(()=>Le(e.mark)?e.mark:e.mark.label),a=w(()=>Le(e.mark)?void 0:e.mark.style);return()=>Ye("div",{class:t.e("marks-text"),style:a.value},n.value)}});const L7=["id","role","aria-label","aria-labelledby"],D7={key:1};var B7=se({name:"ElSlider",__name:"slider",props:S7,emits:C7,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("slider"),{t:r}=Ct(),l=At({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:u,slider:c,firstButton:d,secondButton:f,sliderDisabled:v,minValue:g,maxValue:p,runwayStyle:h,barStyle:m,resetSize:b,emitChange:k,onSliderWrapperPrevent:y,onSliderClick:S,onSliderDown:C,onSliderMarkerDown:E,setFirstValue:$,setSecondValue:O}=x7(a,l,o),{stops:N,getStopStyle:R}=T7(a,l,g,p),{inputId:A,isLabeledByFormItem:_}=Ia(a,{formItemContext:u}),V=Cn(),H=w(()=>a.inputSize||V.value),U=w(()=>a.ariaLabel||r("el.slider.defaultLabel",{min:a.min,max:a.max})),W=w(()=>a.range?a.rangeStartLabel||r("el.slider.defaultRangeStartLabel"):U.value),P=w(()=>a.formatValueText?a.formatValueText(X.value):`${X.value}`),I=w(()=>a.rangeEndLabel||r("el.slider.defaultRangeEndLabel")),L=w(()=>a.formatValueText?a.formatValueText(Q.value):`${Q.value}`),D=w(()=>[s.b(),s.m(V.value),s.is("vertical",a.vertical),{[s.m("with-input")]:a.showInput}]),F=E7(a);$7(a,l,g,p,o,u);const q=w(()=>{const ge=[a.min,a.max,a.step].map(ie=>{const ae=`${ie}`.split(".")[1];return ae?ae.length:0});return Math.max.apply(null,ge)}),{sliderWrapper:j}=k7(a,l,b),{firstValue:X,secondValue:Q,sliderSize:he}=Mn(l),ue=ge=>{l.dragging=ge};return Ft(j,"touchstart",y,{passive:!1}),Ft(j,"touchmove",y,{passive:!1}),St(cE,{...Mn(a),sliderSize:he,disabled:v,precision:q,emitChange:k,resetSize:b,updateDragging:ue}),t({onSliderClick:S}),(ge,ie)=>(x(),B("div",{id:ge.range?i(A):void 0,ref_key:"sliderWrapper",ref:j,class:T(D.value),role:ge.range?"group":void 0,"aria-label":ge.range&&!i(_)?U.value:void 0,"aria-labelledby":ge.range&&i(_)?i(u)?.labelId:void 0},[z("div",{ref_key:"slider",ref:c,class:T([i(s).e("runway"),{"show-input":ge.showInput&&!ge.range},i(s).is("disabled",i(v))]),style:Ke(i(h)),onMousedown:ie[0]||(ie[0]=(...ae)=>i(C)&&i(C)(...ae)),onTouchstartPassive:ie[1]||(ie[1]=(...ae)=>i(C)&&i(C)(...ae))},[z("div",{class:T(i(s).e("bar")),style:Ke(i(m))},null,6),Y(R0,{id:ge.range?void 0:i(A),ref_key:"firstButton",ref:d,"model-value":i(X),vertical:ge.vertical,"tooltip-class":ge.tooltipClass,placement:ge.placement,role:"slider","aria-label":ge.range||!i(_)?W.value:void 0,"aria-labelledby":!ge.range&&i(_)?i(u)?.labelId:void 0,"aria-valuemin":ge.min,"aria-valuemax":ge.range?i(Q):ge.max,"aria-valuenow":i(X),"aria-valuetext":P.value,"aria-orientation":ge.vertical?"vertical":"horizontal","aria-disabled":i(v),"onUpdate:modelValue":i($)},null,8,["id","model-value","vertical","tooltip-class","placement","aria-label","aria-labelledby","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"]),ge.range?(x(),oe(R0,{key:0,ref_key:"secondButton",ref:f,"model-value":i(Q),vertical:ge.vertical,"tooltip-class":ge.tooltipClass,placement:ge.placement,role:"slider","aria-label":I.value,"aria-valuemin":i(X),"aria-valuemax":ge.max,"aria-valuenow":i(Q),"aria-valuetext":L.value,"aria-orientation":ge.vertical?"vertical":"horizontal","aria-disabled":i(v),"onUpdate:modelValue":i(O)},null,8,["model-value","vertical","tooltip-class","placement","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","aria-valuetext","aria-orientation","aria-disabled","onUpdate:modelValue"])):te("v-if",!0),ge.showStops?(x(),B("div",D7,[(x(!0),B(Fe,null,gt(i(N),(ae,ne)=>(x(),B("div",{key:ne,class:T(i(s).e("stop")),style:Ke(i(R)(ae))},null,6))),128))])):te("v-if",!0),i(F).length>0?(x(),B(Fe,{key:2},[z("div",null,[(x(!0),B(Fe,null,gt(i(F),(ae,ne)=>(x(),B("div",{key:ne,style:Ke(i(R)(ae.position)),class:T([i(s).e("stop"),i(s).e("marks-stop")])},null,6))),128))]),z("div",{class:T(i(s).e("marks"))},[(x(!0),B(Fe,null,gt(i(F),(ae,ne)=>(x(),oe(i(A7),{key:ne,mark:ae.mark,style:Ke(i(R)(ae.position)),onMousedown:Xe(K=>i(E)(ae.position),["stop"])},null,8,["mark","style","onMousedown"]))),128))],2)],64)):te("v-if",!0)],38),ge.showInput&&!ge.range?(x(),oe(i(F2),{key:0,ref:"input","model-value":i(X),class:T(i(s).e("input")),step:ge.step,disabled:i(v),controls:ge.showInputControls,min:ge.min,max:ge.max,precision:q.value,size:H.value,"onUpdate:modelValue":i($),onChange:i(k)},null,8,["model-value","class","step","disabled","controls","min","max","precision","size","onUpdate:modelValue","onChange"])):te("v-if",!0)],10,L7))}}),F7=B7;const V7=rt(F7),z7=Ce({prefixCls:{type:String}}),N0=se({name:"ElSpaceItem",props:z7,setup(e,{slots:t}){const n=fe("space"),a=w(()=>`${e.prefixCls||n.b()}__item`);return()=>Ye("div",{class:a.value},ee(t,"default"))}}),I0={small:8,default:12,large:16};function H7(e){const t=fe("space"),n=w(()=>[t.b(),t.m(e.direction),e.class]),a=M(0),o=M(0),s=w(()=>[e.wrap||e.fill?{flexWrap:"wrap"}:{},{alignItems:e.alignment},{rowGap:`${o.value}px`,columnGap:`${a.value}px`},e.style]),r=w(()=>e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{});return wa(()=>{const{size:l="small",wrap:u,direction:c,fill:d}=e;if(ye(l)){const[f=0,v=0]=l;a.value=f,o.value=v}else{let f;He(l)?f=l:f=I0[l||"small"]||I0.small,(u||d)&&c==="horizontal"?a.value=o.value=f:c==="horizontal"?(a.value=f,o.value=0):(o.value=f,a.value=0)}}),{classes:n,containerStyle:s,itemStyle:r}}const K7=Ce({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},class:{type:G([String,Object,Array]),default:""},style:{type:G([String,Array,Object]),default:""},alignment:{type:G(String),default:"center"},prefixCls:{type:String},spacer:{type:G([Object,String,Number,Array]),default:null,validator:e=>Ut(e)||He(e)||Le(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:lo,validator:e=>He(e)||ye(e)&&e.length===2&&e.every(He)}}),W7=se({name:"ElSpace",props:K7,setup(e,{slots:t}){const{classes:n,containerStyle:a,itemStyle:o}=H7(e);function s(r,l="",u=[]){const{prefixCls:c}=e;return r.forEach((d,f)=>{Wp(d)?ye(d.children)&&d.children.forEach((v,g)=>{Wp(v)&&ye(v.children)?s(v.children,`${l+g}-`,u):Ut(v)&&v?.type===gn?u.push(v):u.push(Y(N0,{style:o.value,prefixCls:c,key:`nested-${l+g}`},{default:()=>[v]},ja.PROPS|ja.STYLE,["style","prefixCls"]))}):E4(d)&&u.push(Y(N0,{style:o.value,prefixCls:c,key:`LoopKey${l+f}`},{default:()=>[d]},ja.PROPS|ja.STYLE,["style","prefixCls"]))}),u}return()=>{const{spacer:r,direction:l}=e,u=ee(t,"default",{key:0},()=>[]);if((u.children??[]).length===0)return null;if(ye(u.children)){let c=s(u.children);if(r){const d=c.length-1;c=c.reduce((f,v,g)=>{const p=[...f,v];return g!==d&&p.push(Y("span",{style:[o.value,l==="vertical"?"width: 100%":null],key:g},[Ut(r)?r:wt(r,ja.TEXT)],ja.STYLE)),p},[])}return Y("div",{class:n.value,style:a.value},c,ja.STYLE|ja.CLASS)}return u.children}}}),j7=rt(W7),U7=Ce({space:{type:[Number,String],default:""},active:{type:Number,default:0},direction:{type:String,default:"horizontal",values:["horizontal","vertical"]},alignCenter:{type:Boolean},simple:{type:Boolean},finishStatus:{type:String,values:["wait","process","finish","error","success"],default:"finish"},processStatus:{type:String,values:["wait","process","finish","error","success"],default:"process"}}),q7={[yt]:(e,t)=>[e,t].every(He)},dE="ElSteps",Y7=Ce({title:{type:String,default:""},icon:{type:Kt},description:{type:String,default:""},status:{type:String,values:["","wait","process","finish","error","success"],default:""}});var G7=se({name:"ElSteps",__name:"steps",props:U7,emits:q7,setup(e,{emit:t}){const n=e,a=t,o=fe("steps"),{children:s,addChild:r,removeChild:l,ChildrenSorter:u}=Qd(ft(),"ElStep");return le(s,()=>{s.value.forEach((c,d)=>{c.setIndex(d)})}),St(dE,{props:n,steps:s,addStep:r,removeStep:l}),le(()=>n.active,(c,d)=>{a(yt,c,d)}),(c,d)=>(x(),B("div",{class:T([i(o).b(),i(o).m(e.simple?"simple":e.direction)])},[ee(c.$slots,"default"),Y(i(u))],2))}}),X7=G7,J7=se({name:"ElStep",__name:"item",props:Y7,setup(e){const t=e,n=fe("step"),a=M(-1),o=M({}),s=M(""),r=_e(dE),l=ft();let u=0,c=0;ht(()=>{le([()=>r.props.active,()=>r.props.processStatus,()=>r.props.finishStatus],([O],[N])=>{c=N||0,u=O-c,E(O)},{immediate:!0})});const d=w(()=>t.status||s.value),f=w(()=>{const O=r.steps.value[a.value-1];return O?O.internalStatus.value:"wait"}),v=w(()=>r.props.alignCenter),g=w(()=>r.props.direction==="vertical"),p=w(()=>r.props.simple),h=w(()=>r.steps.value.length),m=w(()=>r.steps.value[h.value-1]?.uid===l.uid),b=w(()=>p.value?"":r.props.space),k=w(()=>[n.b(),n.is(p.value?"simple":r.props.direction),n.is("flex",m.value&&!b.value&&!v.value),n.is("center",v.value&&!g.value&&!p.value)]),y=w(()=>{const O={flexBasis:He(b.value)?`${b.value}px`:b.value?b.value:`${100/(h.value-(v.value?0:1))}%`};return g.value||m.value&&(O.maxWidth=`${100/h.value}%`),O}),S=O=>{a.value=O},C=O=>{const N=O==="wait",R={transitionDelay:`${Math.abs(u)===1?0:u>0?(a.value+1-c)*150:-(a.value+1-r.props.active)*150}ms`},A=O===r.props.processStatus||N?0:100;R.borderWidth=A&&!p.value?"1px":0,R[r.props.direction==="vertical"?"height":"width"]=`${A}%`,o.value=R},E=O=>{O>a.value?s.value=r.props.finishStatus:O===a.value&&f.value!=="error"?s.value=r.props.processStatus:s.value="wait";const N=r.steps.value[a.value-1];N&&N.calcProgress(s.value)},$={uid:l.uid,getVnode:()=>l.vnode,currentStatus:d,internalStatus:s,setIndex:S,calcProgress:C};return r.addStep($),Bt(()=>{r.removeStep($)}),(O,N)=>(x(),B("div",{style:Ke(y.value),class:T(k.value)},[te(" icon & line "),z("div",{class:T([i(n).e("head"),i(n).is(d.value)])},[p.value?te("v-if",!0):(x(),B("div",{key:0,class:T(i(n).e("line"))},[z("i",{class:T(i(n).e("line-inner")),style:Ke(o.value)},null,6)],2)),z("div",{class:T([i(n).e("icon"),i(n).is(e.icon||O.$slots.icon?"icon":"text")])},[ee(O.$slots,"icon",{},()=>[e.icon?(x(),oe(i(De),{key:0,class:T(i(n).e("icon-inner"))},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1},8,["class"])):d.value==="success"?(x(),oe(i(De),{key:1,class:T([i(n).e("icon-inner"),i(n).is("status")])},{default:J(()=>[Y(i(vu))]),_:1},8,["class"])):d.value==="error"?(x(),oe(i(De),{key:2,class:T([i(n).e("icon-inner"),i(n).is("status")])},{default:J(()=>[Y(i(Ha))]),_:1},8,["class"])):p.value?te("v-if",!0):(x(),B("div",{key:3,class:T(i(n).e("icon-inner"))},Se(a.value+1),3))])],2)],2),te(" title & description "),z("div",{class:T(i(n).e("main"))},[z("div",{class:T([i(n).e("title"),i(n).is(d.value)])},[ee(O.$slots,"title",{},()=>[wt(Se(e.title),1)])],2),p.value?(x(),B("div",{key:0,class:T(i(n).e("arrow"))},null,2)):(x(),B("div",{key:1,class:T([i(n).e("description"),i(n).is(d.value)])},[ee(O.$slots,"description",{},()=>[wt(Se(e.description),1)])],2))],2)],6))}}),fE=J7;const Z7=rt(X7,{Step:fE}),Q7=an(fE),pE=e=>["",...lo].includes(e),eU=Ce({modelValue:{type:[Boolean,String,Number],default:!1},disabled:{type:Boolean,default:void 0},loading:Boolean,size:{type:String,validator:pE},width:{type:[String,Number],default:""},inlinePrompt:Boolean,inactiveActionIcon:{type:Kt},activeActionIcon:{type:Kt},activeIcon:{type:Kt},inactiveIcon:{type:Kt},activeText:{type:String,default:""},inactiveText:{type:String,default:""},activeValue:{type:[Boolean,String,Number],default:!0},inactiveValue:{type:[Boolean,String,Number],default:!1},name:{type:String,default:""},validateEvent:{type:Boolean,default:!0},beforeChange:{type:G(Function)},id:String,tabindex:{type:[String,Number]},...aa(["ariaLabel"])}),tU={[at]:e=>Ht(e)||Le(e)||He(e),[yt]:e=>Ht(e)||Le(e)||He(e),[Sn]:e=>Ht(e)||Le(e)||He(e)},nU=["id","aria-checked","aria-disabled","aria-label","name","true-value","false-value","disabled","tabindex"],aU=["aria-hidden"],oU={key:1},sU={key:1},rU=["aria-hidden"],rp="ElSwitch";var lU=se({name:rp,__name:"switch",props:eU,emits:tU,setup(e,{expose:t,emit:n}){const a=e,o=n,{formItem:s}=Dn(),r=Cn(),l=fe("switch"),{inputId:u}=Ia(a,{formItemContext:s}),c=un(w(()=>{if(a.loading)return!0})),d=M(a.modelValue!==!1),f=Xt(),v=w(()=>[l.b(),l.m(r.value),l.is("disabled",c.value),l.is("checked",b.value)]),g=w(()=>[l.e("label"),l.em("label","left"),l.is("active",!b.value)]),p=w(()=>[l.e("label"),l.em("label","right"),l.is("active",b.value)]),h=w(()=>({width:ln(a.width)}));le(()=>a.modelValue,()=>{d.value=!0});const m=w(()=>d.value?a.modelValue:!1),b=w(()=>m.value===a.activeValue);[a.activeValue,a.inactiveValue].includes(m.value)||(o(at,a.inactiveValue),o(yt,a.inactiveValue),o(Sn,a.inactiveValue)),le(b,C=>{f.value.checked=C,a.validateEvent&&s?.validate?.("change").catch(E=>pt(E))});const k=()=>{const C=b.value?a.inactiveValue:a.activeValue;o(at,C),o(yt,C),o(Sn,C),Re(()=>{f.value.checked=b.value})},y=()=>{if(c.value)return;const{beforeChange:C}=a;if(!C){k();return}const E=C();[mr(E),Ht(E)].includes(!0)||nn(rp,"beforeChange must return type `Promise` or `boolean`"),mr(E)?E.then($=>{$&&k()}).catch($=>{pt(rp,`some error occurred: ${$}`)}):E&&k()},S=()=>{f.value?.focus?.()};return ht(()=>{f.value.checked=b.value}),t({focus:S,checked:b}),(C,E)=>(x(),B("div",{class:T(v.value),onClick:Xe(y,["prevent"])},[z("input",{id:i(u),ref_key:"input",ref:f,class:T(i(l).e("input")),type:"checkbox",role:"switch","aria-checked":b.value,"aria-disabled":i(c),"aria-label":e.ariaLabel,name:e.name,"true-value":e.activeValue,"false-value":e.inactiveValue,disabled:i(c),tabindex:e.tabindex,onChange:k,onKeydown:on(y,["enter"])},null,42,nU),!e.inlinePrompt&&(e.inactiveIcon||e.inactiveText||C.$slots.inactive)?(x(),B("span",{key:0,class:T(g.value)},[ee(C.$slots,"inactive",{},()=>[e.inactiveIcon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.inactiveIcon)))]),_:1})):te("v-if",!0),!e.inactiveIcon&&e.inactiveText?(x(),B("span",{key:1,"aria-hidden":b.value},Se(e.inactiveText),9,aU)):te("v-if",!0)])],2)):te("v-if",!0),z("span",{class:T(i(l).e("core")),style:Ke(h.value)},[e.inlinePrompt?(x(),B("div",{key:0,class:T(i(l).e("inner"))},[b.value?(x(),B("div",{key:1,class:T(i(l).e("inner-wrapper"))},[ee(C.$slots,"active",{},()=>[e.activeIcon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.activeIcon)))]),_:1})):te("v-if",!0),!e.activeIcon&&e.activeText?(x(),B("span",sU,Se(e.activeText),1)):te("v-if",!0)])],2)):(x(),B("div",{key:0,class:T(i(l).e("inner-wrapper"))},[ee(C.$slots,"inactive",{},()=>[e.inactiveIcon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.inactiveIcon)))]),_:1})):te("v-if",!0),!e.inactiveIcon&&e.inactiveText?(x(),B("span",oU,Se(e.inactiveText),1)):te("v-if",!0)])],2))],2)):te("v-if",!0),z("div",{class:T(i(l).e("action"))},[e.loading?(x(),oe(i(De),{key:0,class:T(i(l).is("loading"))},{default:J(()=>[Y(i(Ao))]),_:1},8,["class"])):b.value?ee(C.$slots,"active-action",{key:1},()=>[e.activeActionIcon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.activeActionIcon)))]),_:1})):te("v-if",!0)]):b.value?te("v-if",!0):ee(C.$slots,"inactive-action",{key:2},()=>[e.inactiveActionIcon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.inactiveActionIcon)))]),_:1})):te("v-if",!0)])],2)],6),!e.inlinePrompt&&(e.activeIcon||e.activeText||C.$slots.active)?(x(),B("span",{key:1,class:T(p.value)},[ee(C.$slots,"active",{},()=>[e.activeIcon?(x(),oe(i(De),{key:0},{default:J(()=>[(x(),oe(it(e.activeIcon)))]),_:1})):te("v-if",!0),!e.activeIcon&&e.activeText?(x(),B("span",{key:1,"aria-hidden":!b.value},Se(e.activeText),9,rU)):te("v-if",!0)])],2)):te("v-if",!0)],2))}}),iU=lU;const uU=rt(iU),lp=function(e){return e.target?.closest("td")},cU=function(e,t,n,a,o){if(!t&&!a&&(!o||ye(o)&&!o.length))return e;Le(n)?n=n==="descending"?-1:1:n=n&&n<0?-1:1;const s=a?null:function(l,u){return o?_S(Nn(o),c=>Le(c)?wn(l,c):c(l,u,e)):(t!=="$key"&&ot(l)&&"$value"in l&&(l=l.$value),[ot(l)?t?wn(l,t):null:l])},r=function(l,u){if(a)return a(l.value,u.value);for(let c=0,d=l.key?.length??0;cu.key?.[c])return 1}return 0};return e.map((l,u)=>({value:l,index:u,key:s?s(l,u):null})).sort((l,u)=>{let c=r(l,u);return c||(c=l.index-u.index),c*+n}).map(l=>l.value)},hE=function(e,t){let n=null;return e.columns.forEach(a=>{a.id===t&&(n=a)}),n},dU=function(e,t){let n=null;for(let a=0;a{if(!e)throw new Error("Row is required when get row identity");if(Le(t)){if(!t.includes("."))return`${e[t]}`;const n=t.split(".");let a=e;for(const o of n)a=a[o];return`${a}`}else if(Ve(t))return t.call(null,e);return""},ol=function(e,t,n=!1,a="children"){const o=e||[],s={};return o.forEach((r,l)=>{if(s[Hn(r,t)]={row:r,index:l},n){const u=r[a];ye(u)&&Object.assign(s,ol(u,t,!0,a))}}),s};function fU(e,t){const n={};let a;for(a in e)n[a]=e[a];for(a in t)if(Nt(t,a)){const o=t[a];Tt(o)||(n[a]=o)}return n}function Am(e){return e===""||Tt(e)||(e=Number.parseInt(e,10),Number.isNaN(e)&&(e="")),e}function vE(e){return e===""||Tt(e)||(e=Am(e),Number.isNaN(e)&&(e=80)),e}function pU(e){return He(e)?e:Le(e)?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null}function hU(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...a)=>t(n(...a)))}function bd(e,t,n,a,o,s,r){let l=s??0,u=!1;const d=(()=>{if(!r)return e.indexOf(t);const h=Hn(t,r);return e.findIndex(m=>Hn(m,r)===h)})(),f=d!==-1,v=o?.call(null,t,l),g=h=>{h==="add"?e.push(t):e.splice(d,1),u=!0},p=h=>{let m=0;const b=a?.children&&h[a.children];return b&&ye(b)&&(m+=b.length,b.forEach(k=>{m+=p(k)})),m};return(!o||v)&&(Ht(n)?n&&!f?g("add"):!n&&f&&g("remove"):g(f?"remove":"add")),!a?.checkStrictly&&a?.children&&ye(t[a.children])&&t[a.children].forEach(h=>{const m=bd(e,h,n??!f,a,o,l+1,r);l+=p(h)+1,m&&(u=m)}),u}function vU(e,t,n="children",a="hasChildren",o=!1){const s=l=>!(ye(l)&&l.length);function r(l,u,c){t(l,u,c),u.forEach(d=>{if(d[a]&&o){t(d,null,c+1);return}const f=d[n];s(f)||r(d,f,c+1)})}e.forEach(l=>{if(l[a]&&o){t(l,null,0);return}const u=l[n];s(u)||r(l,u,0)})}const mU=(e,t,n,a)=>{const o={strategy:"fixed",...e.popperOptions},s=Ve(a?.tooltipFormatter)?a.tooltipFormatter({row:n,column:a,cellValue:Ms(n,a.property).value}):void 0;return Ut(s)?{slotContent:s,content:null,...e,popperOptions:o}:{slotContent:null,content:s??t,...e,popperOptions:o}};let pa=null;function gU(e,t,n,a,o,s){const r=mU(e,t,n,a),l={...r,slotContent:void 0};if(pa?.trigger===o){const g=pa.vm?.component;AS(g?.props,l),g&&r.slotContent&&(g.slots.content=()=>[r.slotContent]);return}pa?.();const u=s?.refs.tableWrapper,c=u?.dataset.prefix,d=Y(Ln,{virtualTriggering:!0,virtualRef:o,appendTo:u,placement:"top",transition:"none",offset:0,hideAfter:0,...l},r.slotContent?{content:()=>r.slotContent}:void 0);d.appContext={...s.appContext,...s};const f=document.createElement("div");Ls(d,f),d.component.exposed.onOpen();const v=u?.querySelector(`.${c}-scrollbar__wrap`);pa=()=>{d.component?.exposed?.onClose&&d.component.exposed.onClose(),Ls(null,f);const g=pa;v?.removeEventListener("scroll",g),g.trigger=void 0,g.vm=void 0,pa=null},pa.trigger=o??void 0,pa.vm=d,v?.addEventListener("scroll",pa)}function mE(e){return e.children?_S(e.children,mE):[e]}function M0(e,t){return e+t.colSpan}const gE=(e,t,n,a)=>{let o=0,s=e;const r=n.states.columns.value;if(a){const u=mE(a[e]);o=r.slice(0,r.indexOf(u[0])).reduce(M0,0),s=o+u.reduce(M0,0)-1}else o=e;let l;switch(t){case"left":s=r.length-n.states.rightFixedLeafColumnsLength.value&&(l="right");break;default:s=r.length-n.states.rightFixedLeafColumnsLength.value&&(l="right")}return l?{direction:l,start:o,after:s}:{}},Lm=(e,t,n,a,o,s=0)=>{const r=[],{direction:l,start:u,after:c}=gE(t,n,a,o);if(l){const d=l==="left";r.push(`${e}-fixed-column--${l}`),d&&c+s===a.states.fixedLeafColumnsLength.value-1?r.push("is-last-column"):!d&&u-s===a.states.columns.value.length-a.states.rightFixedLeafColumnsLength.value&&r.push("is-first-column")}return r};function _0(e,t){return e+(Kd(t.realWidth)||Number.isNaN(t.realWidth)?Number(t.width):t.realWidth)}const Dm=(e,t,n,a)=>{const{direction:o,start:s=0,after:r=0}=gE(e,t,n,a);if(!o)return;const l={},u=o==="left",c=n.states.columns.value;return u?l.left=c.slice(0,s).reduce(_0,0):l.right=c.slice(r+1).reverse().reduce(_0,0),l},El=(e,t)=>{e&&(Number.isNaN(e[t])||(e[t]=`${e[t]}px`))};function bE(e){return e.some(t=>Ut(t)?!(t.type===gn||t.type===Fe&&!bE(t.children)):!0)?e:null}function bU(e){const t=ft(),n=M(!1),a=M([]),o=(c,d)=>{const f=t.store.states.rowExpandable.value;return f?.(c,d)??!0};return{updateExpandRows:()=>{const c=e.data.value||[],d=e.rowKey.value;if(n.value)a.value=t.store.states.rowExpandable.value?c.filter(o):c.slice();else if(d){const f=ol(a.value,d);a.value=c.filter((v,g)=>!!f[Hn(v,d)]&&o(v,g))}else a.value=[]},toggleRowExpansion:(c,d)=>{const f=(e.data.value||[]).indexOf(c);f>-1&&!o(c,f)||bd(a.value,c,d,void 0,void 0,void 0,e.rowKey.value)&&t.emit("expand-change",c,a.value.slice())},setExpandRowKeys:c=>{t.store.assertRowKey();const d=e.data.value||[],f=e.rowKey.value,v=ol(d,f);a.value=c.reduce((g,p)=>{const h=v[p];return h&&o(h.row,h.index)&&g.push(h.row),g},[])},isRowExpanded:c=>{const d=e.rowKey.value;return d?!!ol(a.value,d)[Hn(c,d)]:a.value.includes(c)},states:{expandRows:a,defaultExpandAll:n}}}function yU(e){const t=ft(),n=M(null),a=M(null),o=c=>{t.store.assertRowKey(),n.value=c,r(c)},s=()=>{n.value=null},r=c=>{const{data:d,rowKey:f}=e,v=a.value;let g=null;f.value&&(g=(i(d)||[]).find(p=>Hn(p,f.value)===c)??null),a.value=g??null,t.emit("current-change",a.value,v)};return{setCurrentRowKey:o,restoreCurrentRowKey:s,setCurrentRowByKey:r,updateCurrentRow:c=>{const d=a.value;if(c&&c!==d){a.value=c,t.emit("current-change",a.value,d);return}!c&&d&&(a.value=null,t.emit("current-change",null,d))},updateCurrentRowData:()=>{const c=e.rowKey.value,d=e.data.value||[],f=a.value;f&&!d.includes(f)?c?r(Hn(f,c)):(a.value=null,t.emit("current-change",null,f)):n.value&&(r(n.value),s())},states:{_currentRowKey:n,currentRow:a}}}function wU(e){const t=M([]),n=M({}),a=M(16),o=M(!1),s=M({}),r=M("hasChildren"),l=M("children"),u=M(!1),c=ft(),d=w(()=>e.rowKey.value?v(e.data.value||[]):{}),f=w(()=>{const S=e.rowKey.value,C=Object.keys(s.value),E={};return C.length&&C.forEach($=>{if(s.value[$].length){const O={children:[]};s.value[$].forEach(N=>{const R=Hn(N,S);O.children.push(R),N[r.value]&&!E[R]&&(E[R]={children:[]})}),E[$]=O}}),E}),v=S=>{const C=e.rowKey.value,E={};return vU(S,($,O,N)=>{const R=Hn($,C);ye(O)?E[R]={children:O.map(A=>Hn(A,C)),level:N}:o.value&&(E[R]={children:[],lazy:!0,level:N})},l.value,r.value,o.value),E},g=(S=!1,C)=>{C||=c.store?.states.defaultExpandAll.value;const E=d.value,$=f.value,O=Object.keys(E),N={};if(O.length){const R=i(n),A=[],_=(H,U)=>{if(S)return t.value?C||t.value.includes(U):!!(C||H?.expanded);{const W=C||t.value&&t.value.includes(U);return!!(H?.expanded||W)}};O.forEach(H=>{const U=R[H],W={...E[H]};if(W.expanded=_(U,H),W.lazy){const{loaded:P=!1,loading:I=!1}=U||{};W.loaded=!!P,W.loading=!!I,A.push(H)}N[H]=W});const V=Object.keys($);o.value&&V.length&&A.length&&V.forEach(H=>{const U=R[H],W=$[H].children;if(A.includes(H)){if(N[H].children?.length!==0)throw new Error("[ElTable]children must be an empty array.");N[H].children=W}else{const{loaded:P=!1,loading:I=!1}=U||{};N[H]={lazy:!0,loaded:!!P,loading:!!I,expanded:_(U,H),children:W,level:void 0}}})}n.value=N,c.store?.updateTableScrollY()};le(()=>t.value,()=>{g(!0)}),le(()=>d.value,()=>{g()}),le(()=>f.value,()=>{g()});const p=S=>{t.value=S,g()},h=S=>o.value&&S&&"loaded"in S&&!S.loaded,m=(S,C)=>{c.store.assertRowKey();const E=e.rowKey.value,$=Hn(S,E),O=$&&n.value[$];if($&&O&&"expanded"in O){const N=O.expanded;C=Tt(C)?!O.expanded:C,n.value[$].expanded=C,N!==C&&c.emit("expand-change",S,C),C&&h(O)&&k(S,$,O),c.store.updateTableScrollY()}},b=S=>{c.store.assertRowKey();const C=e.rowKey.value,E=Hn(S,C),$=n.value[E];h($)?k(S,E,$):m(S,void 0)},k=(S,C,E)=>{const{load:$}=c.props;$&&!n.value[C].loaded&&(n.value[C].loading=!0,$(S,E,O=>{if(!ye(O))throw new TypeError("[ElTable] data must be an array");n.value[C].loading=!1,n.value[C].loaded=!0,n.value[C].expanded=!0,O.length&&(s.value[C]=O),c.emit("expand-change",S,!0)}))};return{loadData:k,loadOrToggle:b,toggleTreeExpansion:m,updateTreeExpandKeys:p,updateTreeData:g,updateKeyChildren:(S,C)=>{const{lazy:E,rowKey:$}=c.props;if(E){if(!$)throw new Error("[Table] rowKey is required in updateKeyChild");s.value[S]&&(s.value[S]=C)}},normalize:v,states:{expandRowKeys:t,treeData:n,indent:a,lazy:o,lazyTreeNodeMap:s,lazyColumnIdentifier:r,childrenColumnName:l,checkStrictly:u}}}const SU=(e,t)=>{const n=t.sortingColumn;return!n||Le(n.sortable)?e:cU(e,t.sortProp,t.sortOrder,n.sortMethod,n.sortBy)},Oc=e=>{const t=[];return e.forEach(n=>{n.children&&n.children.length>0?t.push.apply(t,Oc(n.children)):t.push(n)}),t};function CU(){const e=ft(),{size:t}=Mn(e.proxy?.$props),n=M(null),a=M([]),o=M([]),s=M(!1),r=M([]),l=M([]),u=M([]),c=M([]),d=M([]),f=M([]),v=M([]),g=M([]),p=[],h=M(0),m=M(0),b=M(0),k=M(!1),y=M([]),S=M(!1),C=M(!1),E=M(null),$=M(null),O=M({}),N=M(null),R=M(null),A=M(null),_=M(null),V=M(null),H=w(()=>n.value?ol(y.value,n.value):void 0);le(a,()=>{e.state&&(I(!1),e.props.tableLayout==="auto"&&e.refs.tableHeaderRef?.updateFixedColumnStyle())},{deep:!0});const U=()=>{if(!n.value)throw new Error("[ElTable] prop row-key is required")},W=Ue=>{Ue.children?.forEach(lt=>{lt.fixed=Ue.fixed,W(lt)})},P=()=>{r.value.forEach(de=>{W(de)}),c.value=r.value.filter(de=>[!0,"left"].includes(de.fixed));const Ue=r.value.find(de=>de.type==="selection");let lt;Ue&&Ue.fixed!=="right"&&!c.value.includes(Ue)&&r.value.indexOf(Ue)===0&&c.value.length&&(c.value.unshift(Ue),lt=!0),d.value=r.value.filter(de=>de.fixed==="right");const mt=r.value.filter(de=>(lt?de.type!=="selection":!0)&&!de.fixed);l.value=Array.from(c.value).concat(mt).concat(d.value);const kt=Oc(mt),be=Oc(c.value),ze=Oc(d.value);h.value=kt.length,m.value=be.length,b.value=ze.length,u.value=Array.from(be).concat(kt).concat(ze),s.value=c.value.length>0||d.value.length>0},I=(Ue,lt=!1)=>{Ue&&P(),lt?e.state.doLayout():e.state.debouncedUpdateLayout()},L=Ue=>H.value?!!H.value[Hn(Ue,n.value)]:y.value.includes(Ue),D=()=>{k.value=!1;const Ue=y.value;y.value=[],Ue.length&&e.emit("selection-change",[])},F=()=>{let Ue;if(n.value){Ue=[];const lt=e?.store?.states?.childrenColumnName.value,mt=ol(a.value,n.value,!0,lt);for(const kt in H.value)Nt(H.value,kt)&&!mt[kt]&&Ue.push(H.value[kt].row)}else Ue=y.value.filter(lt=>!a.value.includes(lt));if(Ue.length){const lt=y.value.filter(mt=>!Ue.includes(mt));y.value=lt,e.emit("selection-change",lt.slice())}},q=()=>(y.value||[]).slice(),j=(Ue,lt,mt=!0,kt=!1)=>{const be={children:e?.store?.states?.childrenColumnName.value,checkStrictly:e?.store?.states?.checkStrictly.value};if(bd(y.value,Ue,lt,be,kt?void 0:E.value,a.value.indexOf(Ue),n.value)){const ze=(y.value||[]).slice();mt&&e.emit("select",ze,Ue),e.emit("selection-change",ze)}},X=()=>{const Ue=C.value?!k.value:!(k.value||y.value.length);k.value=Ue;let lt=!1,mt=0;const kt=e?.store?.states?.rowKey.value,{childrenColumnName:be}=e.store.states,ze={children:be.value,checkStrictly:!1};a.value.forEach((de,Ge)=>{const $t=Ge+mt;bd(y.value,de,Ue,ze,E.value,$t,kt)&&(lt=!0),mt+=he(Hn(de,kt))}),lt&&e.emit("selection-change",y.value?y.value.slice():[]),e.emit("select-all",(y.value||[]).slice())},Q=()=>{if(a.value?.length===0){k.value=!1;return}const{childrenColumnName:Ue}=e.store.states;let lt=0,mt=0;const kt=ze=>{for(const de of ze){const Ge=E.value&&E.value.call(null,de,lt);if(L(de))mt++;else if(!E.value||Ge)return!1;if(lt++,de[Ue.value]?.length&&!kt(de[Ue.value]))return!1}return!0},be=kt(a.value||[]);k.value=mt===0?!1:be},he=Ue=>{if(!e||!e.store)return 0;const{treeData:lt}=e.store.states;let mt=0;const kt=lt.value[Ue]?.children;return kt&&(mt+=kt.length,kt.forEach(be=>{mt+=he(be)})),mt},ue=(Ue,lt)=>{const mt={};return Nn(Ue).forEach(kt=>{O.value[kt.id]=lt,mt[kt.columnKey||kt.id]=lt}),mt},ge=(Ue,lt,mt)=>{R.value&&R.value!==Ue&&(R.value.order=null),R.value=Ue,A.value=lt,_.value=mt},ie=()=>{let Ue=i(o);Object.keys(O.value).forEach(lt=>{const mt=O.value[lt];if(!mt||mt.length===0)return;const kt=hE({columns:u.value},lt);kt&&kt.filterMethod&&(Ue=Ue.filter(be=>mt.some(ze=>kt.filterMethod.call(null,ze,be,kt))))}),N.value=Ue},ae=()=>{a.value=SU(N.value??[],{sortingColumn:R.value,sortProp:A.value,sortOrder:_.value})},ne=(Ue=void 0)=>{Ue?.filter||ie(),ae()},K=Ue=>{const{tableHeaderRef:lt}=e.refs;if(!lt)return;const mt=Object.assign({},lt.filterPanels),kt=Object.keys(mt);if(kt.length)if(Le(Ue)&&(Ue=[Ue]),ye(Ue)){const be=Ue.map(ze=>dU({columns:u.value},ze));kt.forEach(ze=>{const de=be.find(Ge=>Ge.id===ze);de&&(de.filteredValue=[])}),e.store.commit("filterChange",{column:be,values:[],silent:!0,multi:!0})}else kt.forEach(be=>{const ze=u.value.find(de=>de.id===be);ze&&(ze.filteredValue=[])}),O.value={},e.store.commit("filterChange",{column:{},values:[],silent:!0})},Z=()=>{R.value&&(ge(null,null,null),e.store.commit("changeSortCondition",{silent:!0}))},{setExpandRowKeys:re,toggleRowExpansion:ce,updateExpandRows:ve,states:ke,isRowExpanded:Ne}=bU({data:a,rowKey:n}),{updateTreeExpandKeys:Ie,toggleTreeExpansion:$e,updateTreeData:pe,updateKeyChildren:Ee,loadOrToggle:me,states:Me}=wU({data:a,rowKey:n}),{updateCurrentRowData:We,updateCurrentRow:Ze,setCurrentRowKey:Pe,states:Ae}=yU({data:a,rowKey:n});return{assertRowKey:U,updateColumns:P,scheduleLayout:I,isSelected:L,clearSelection:D,cleanSelection:F,getSelectionRows:q,toggleRowSelection:j,_toggleAllSelection:X,toggleAllSelection:null,updateAllSelected:Q,updateFilters:ue,updateCurrentRow:Ze,updateSort:ge,execFilter:ie,execSort:ae,execQuery:ne,clearFilter:K,clearSort:Z,toggleRowExpansion:ce,setExpandRowKeysAdapter:Ue=>{re(Ue),Ie(Ue)},setCurrentRowKey:Pe,toggleRowExpansionAdapter:(Ue,lt)=>{u.value.some(({type:mt})=>mt==="expand")?ce(Ue,lt):$e(Ue,lt)},isRowExpanded:Ne,updateExpandRows:ve,updateCurrentRowData:We,loadOrToggle:me,updateTreeData:pe,updateKeyChildren:Ee,states:{tableSize:t,rowKey:n,data:a,_data:o,isComplex:s,_columns:r,originColumns:l,columns:u,fixedColumns:c,rightFixedColumns:d,leafColumns:f,fixedLeafColumns:v,rightFixedLeafColumns:g,updateOrderFns:p,leafColumnsLength:h,fixedLeafColumnsLength:m,rightFixedLeafColumnsLength:b,isAllSelected:k,selection:y,reserveSelection:S,selectOnIndeterminate:C,selectable:E,rowExpandable:$,filters:O,filteredData:N,sortingColumn:R,sortProp:A,sortOrder:_,hoverRow:V,...ke,...Me,...Ae}}}function xh(e,t){return e.map(n=>n.id===t.id?t:(n.children?.length&&(n.children=xh(n.children,t)),n))}function Th(e){e.forEach(t=>{t.no=t.getColumnIndex?.(),t.children?.length&&Th(t.children)}),e.sort((t,n)=>t.no-n.no)}function kU(){const e=ft(),t=CU(),n=fe("table"),{t:a}=Ct();return{ns:n,t:a,...t,mutations:{setData(l,u){const c=i(l._data)!==u;l.data.value=u,l._data.value=u,e.store.execQuery(),e.store.updateCurrentRowData(),e.store.updateExpandRows(),e.store.updateTreeData(e.store.states.defaultExpandAll.value),i(l.reserveSelection)?e.store.assertRowKey():c?e.store.clearSelection():e.store.cleanSelection(),e.store.updateAllSelected(),e.$ready&&e.store.scheduleLayout()},insertColumn(l,u,c,d){const f=i(l._columns);let v=[];c?(c&&!c.children&&(c.children=[]),c.children?.push(u),v=xh(f,c)):(f.push(u),v=f),Th(v),l._columns.value=v,l.updateOrderFns.push(d),u.type==="selection"&&(l.selectable.value=u.selectable,l.reserveSelection.value=u.reserveSelection),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},updateColumnOrder(l,u){u.getColumnIndex?.()!==u.no&&(Th(l._columns.value),e.$ready&&e.store.updateColumns())},removeColumn(l,u,c,d){const f=i(l._columns)||[];if(c)c.children?.splice(c.children.findIndex(g=>g.id===u.id),1),Re(()=>{c.children?.length===0&&delete c.children}),l._columns.value=xh(f,c);else{const g=f.indexOf(u);g>-1&&(f.splice(g,1),l._columns.value=f)}const v=l.updateOrderFns.indexOf(d);v>-1&&l.updateOrderFns.splice(v,1),e.$ready&&(e.store.updateColumns(),e.store.scheduleLayout())},sort(l,u){const{prop:c,order:d,init:f}=u;if(c){const v=i(l.columns).find(g=>g.property===c);v&&(v.order=d,e.store.updateSort(v,c,d),e.store.commit("changeSortCondition",{init:f}))}},changeSortCondition(l,u){const{sortingColumn:c,sortProp:d,sortOrder:f}=l,v=i(c),g=i(d),p=i(f);Kd(p)&&(l.sortingColumn.value=null,l.sortProp.value=null),e.store.execQuery({filter:!0}),(!u||!(u.silent||u.init))&&e.emit("sort-change",{column:v,prop:g,order:p}),e.store.updateTableScrollY()},filterChange(l,u){const{column:c,values:d,silent:f}=u,v=e.store.updateFilters(c,d);e.store.execQuery(),f||e.emit("filter-change",v),e.store.updateTableScrollY()},toggleAllSelection(){e.store.toggleAllSelection?.()},rowSelectedChanged(l,u){e.store.toggleRowSelection(u),e.store.updateAllSelected()},setHoverRow(l,u){l.hoverRow.value=u},setCurrentRow(l,u){e.store.updateCurrentRow(u)}},commit:function(l,...u){const c=e.store.mutations;if(c[l])c[l].apply(e,[e.store.states,...u]);else throw new Error(`Action not found: ${l}`)},updateTableScrollY:function(){Re(()=>e.layout.updateScrollY.apply(e.layout))}}}const Bm={rowKey:"rowKey",defaultExpandAll:"defaultExpandAll",rowExpandable:"rowExpandable",selectOnIndeterminate:"selectOnIndeterminate",indent:"indent",lazy:"lazy","treeProps.hasChildren":{key:"lazyColumnIdentifier",default:"hasChildren"},"treeProps.children":{key:"childrenColumnName",default:"children"},"treeProps.checkStrictly":{key:"checkStrictly",default:!1}};function EU(e,t){if(!e)throw new Error("Table is required.");const n=kU();return n.toggleAllSelection=Mo(n._toggleAllSelection,10),Object.keys(Bm).forEach(a=>{yE(wE(t,a),a,n)}),xU(n,t),n}function xU(e,t){Object.keys(Bm).forEach(n=>{le(()=>wE(t,n),a=>{yE(a,n,e)})})}function yE(e,t,n){let a=e,o=Bm[t];ot(o)&&(a=a||o.default,o=o.key),n.states[o].value=a}function wE(e,t){if(t.includes(".")){const n=t.split(".");let a=e;return n.forEach(o=>{a=a[o]}),a}else return e[t]}var TU=class{constructor(e){this.observers=[],this.table=null,this.store=null,this.columns=[],this.fit=!0,this.showHeader=!0,this.height=M(null),this.scrollX=M(!1),this.scrollY=M(!1),this.bodyWidth=M(null),this.fixedWidth=M(null),this.rightFixedWidth=M(null),this.gutterWidth=0;for(const t in e)Nt(e,t)&&(Jt(this[t])?this[t].value=e[t]:this[t]=e[t]);if(!this.table)throw new Error("Table is required for Table Layout");if(!this.store)throw new Error("Store is required for Table Layout")}updateScrollY(){const e=this.height.value;if(Kd(e))return!1;const t=this.table.refs.scrollBarRef;if(this.table.vnode.el&&t?.wrapRef){let n=!0;const a=this.scrollY.value;return n=t.wrapRef.scrollHeight>t.wrapRef.clientHeight,this.scrollY.value=n,a!==n}return!1}setHeight(e,t="height"){if(!Mt)return;const n=this.table.vnode.el;if(e=pU(e),this.height.value=Number(e),!n&&(e||e===0)){Re(()=>this.setHeight(e,t));return}n&&He(e)?(n.style[t]=`${e}px`,this.updateElsHeight()):n&&Le(e)&&(n.style[t]=e,this.updateElsHeight())}setMaxHeight(e){this.setHeight(e,"max-height")}getFlattenColumns(){const e=[];return this.table.store.states.columns.value.forEach(t=>{t.isColumnGroup?e.push.apply(e,t.columns):e.push(t)}),e}updateElsHeight(){this.updateScrollY(),this.notifyObservers("scrollable")}headerDisplayNone(e){if(!e)return!0;let t=e;for(;t.tagName!=="DIV";){if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}updateColumnsWidth(){if(!Mt)return;const e=this.fit,t=this.table.vnode.el?.clientWidth;let n=0;const a=this.getFlattenColumns(),o=a.filter(l=>!He(l.width));if(a.forEach(l=>{He(l.width)&&l.realWidth&&(l.realWidth=null)}),o.length>0&&e){if(a.forEach(l=>{n+=Number(l.width||l.minWidth||80)}),n<=t){this.scrollX.value=!1;const l=t-n;if(o.length===1)o[0].realWidth=Number(o[0].minWidth||80)+l;else{const u=l/o.reduce((d,f)=>d+Number(f.minWidth||80),0);let c=0;o.forEach((d,f)=>{if(f===0)return;const v=Math.floor(Number(d.minWidth||80)*u);c+=v,d.realWidth=Number(d.minWidth||80)+v}),o[0].realWidth=Number(o[0].minWidth||80)+l-c}}else this.scrollX.value=!0,o.forEach(l=>{l.realWidth=Number(l.minWidth)});this.bodyWidth.value=Math.max(n,t),this.table.state.resizeState.value.width=this.bodyWidth.value}else a.forEach(l=>{!l.width&&!l.minWidth?l.realWidth=80:l.realWidth=Number(l.width||l.minWidth),n+=l.realWidth}),this.scrollX.value=n>t,this.bodyWidth.value=n;const s=this.store.states.fixedColumns.value;if(s.length>0){let l=0;s.forEach(u=>{l+=Number(u.realWidth||u.width)}),this.fixedWidth.value=l}const r=this.store.states.rightFixedColumns.value;if(r.length>0){let l=0;r.forEach(u=>{l+=Number(u.realWidth||u.width)}),this.rightFixedWidth.value=l}this.notifyObservers("columns")}addObserver(e){this.observers.push(e)}removeObserver(e){const t=this.observers.indexOf(e);t!==-1&&this.observers.splice(t,1)}notifyObservers(e){this.observers.forEach(t=>{switch(e){case"columns":t.state?.onColumnsChange(this);break;case"scrollable":t.state?.onScrollableChange(this);break;default:throw new Error(`Table Layout don't have event ${e}.`)}})}};const fo=Symbol("ElTable"),SE=e=>{const t=[];return e.forEach(n=>{n.children?(t.push(n),t.push.apply(t,SE(n.children))):t.push(n)}),t},CE=e=>{let t=1;const n=(o,s)=>{if(s&&(o.level=s.level+1,t{n(l,o),r+=l.colSpan}),o.colSpan=r}else o.colSpan=1};e.forEach(o=>{o.level=1,n(o,void 0)});const a=[];for(let o=0;o{o.children?(o.rowSpan=1,o.children.forEach(s=>s.isSubColumn=!0)):o.rowSpan=t-o.level+1,a[o.level-1].push(o)}),a};function $U(e){const t=_e(fo),n=w(()=>CE(e.store.states.originColumns.value));return{isGroup:w(()=>{const s=n.value.length>1;return s&&t&&(t.state.isGroup.value=!0),s}),toggleAllSelection:s=>{s.stopPropagation(),t?.store.commit("toggleAllSelection")},columnRows:n}}var OU=se({name:"ElTableFilterPanel",components:{ElCheckbox:so,ElCheckboxGroup:gm,ElScrollbar:ao,ElTooltip:Ln,ElIcon:De,ArrowDown:Fo,ArrowUp:ef},props:{placement:{type:String,default:"bottom-start"},store:{type:Object},column:{type:Object},upDataColumn:{type:Function},appendTo:zt.appendTo},setup(e){const t=ft(),{t:n}=Ct(),a=fe("table-filter"),o=t?.parent;e.column&&!o.filterPanels.value[e.column.id]&&(o.filterPanels.value[e.column.id]=t);const s=M(null),r=M(null),l=M(0),u=w(()=>e.column&&e.column.filters),c=w(()=>e.column&&e.column.filterClassName?`${a.b()} ${e.column.filterClassName}`:a.b()),d=w({get:()=>(e.column?.filteredValue||[])[0],set:$=>{f.value&&(va($)?f.value.splice(0,1):f.value.splice(0,1,$))}}),f=w({get(){return e.column?e.column.filteredValue||[]:[]},set($){e.column&&e.upDataColumn?.("filteredValue",$)}}),v=w(()=>e.column?e.column.filterMultiple:!0),g=$=>$.value===d.value,p=()=>{s.value?.onClose()},h=()=>{k(f.value),p()},m=()=>{f.value=[],k(f.value),p()},b=($,O)=>{d.value=$,l.value=O,va($)?k([]):k(f.value),p()},k=$=>{e.store?.commit("filterChange",{column:e.column,values:$}),e.store?.updateAllSelected()},y=()=>{r.value?.focus(),!v.value&&C(),e.column&&e.upDataColumn?.("filterOpened",!0)},S=()=>{e.column&&e.upDataColumn?.("filterOpened",!1)},C=()=>{if(va(d)){l.value=0;return}const $=(u.value||[]).findIndex(O=>O.value===d.value);l.value=$>=0?$+1:0};return{multiple:v,filterClassName:c,filteredValue:f,filterValue:d,filters:u,handleConfirm:h,handleReset:m,handleSelect:b,isPropAbsent:va,isActive:g,t:n,ns:a,tooltipRef:s,rootRef:r,checkedIndex:l,handleShowTooltip:y,handleHideTooltip:S,handleKeydown:$=>{const O=jt($),N=(u.value?u.value.length:0)+1;let R=l.value,A=!0;switch(O){case we.down:case we.right:R=(R+1)%N;break;case we.up:case we.left:R=(R-1+N)%N;break;case we.tab:p(),A=!1;break;case we.enter:case we.space:if(R===0)b(null,0);else{const _=(u.value||[])[R-1];_.value&&b(_.value,R)}break;default:A=!1;break}A&&$.preventDefault(),l.value=R,r.value?.querySelector(`.${a.e("list-item")}:nth-child(${R+1})`)?.focus()}}}});const RU=["disabled"],NU=["tabindex","aria-checked"],IU=["tabindex","aria-checked","onClick"],PU=["aria-label"];function MU(e,t,n,a,o,s){const r=It("el-checkbox"),l=It("el-checkbox-group"),u=It("el-scrollbar"),c=It("arrow-up"),d=It("arrow-down"),f=It("el-icon"),v=It("el-tooltip");return x(),oe(v,{ref:"tooltipRef",offset:0,placement:e.placement,"show-arrow":!1,trigger:"click",role:"dialog",teleported:"",effect:"light",pure:"",loop:"","popper-class":e.filterClassName,persistent:"","append-to":e.appendTo,onShow:e.handleShowTooltip,onHide:e.handleHideTooltip},{content:J(()=>[e.multiple?(x(),B("div",{key:0,ref:"rootRef",tabindex:"-1",class:T(e.ns.e("multiple"))},[z("div",{class:T(e.ns.e("content"))},[Y(u,{"wrap-class":e.ns.e("wrap")},{default:J(()=>[Y(l,{modelValue:e.filteredValue,"onUpdate:modelValue":t[0]||(t[0]=g=>e.filteredValue=g),class:T(e.ns.e("checkbox-group"))},{default:J(()=>[(x(!0),B(Fe,null,gt(e.filters,g=>(x(),oe(r,{key:g.value,value:g.value},{default:J(()=>[wt(Se(g.text),1)]),_:2},1032,["value"]))),128))]),_:1},8,["modelValue","class"])]),_:1},8,["wrap-class"])],2),z("div",{class:T(e.ns.e("bottom"))},[z("button",{class:T(e.ns.is("disabled",e.filteredValue.length===0)),disabled:e.filteredValue.length===0,type:"button",onClick:t[1]||(t[1]=(...g)=>e.handleConfirm&&e.handleConfirm(...g))},Se(e.t("el.table.confirmFilter")),11,RU),z("button",{type:"button",onClick:t[2]||(t[2]=(...g)=>e.handleReset&&e.handleReset(...g))},Se(e.t("el.table.resetFilter")),1)],2)],2)):(x(),B("ul",{key:1,ref:"rootRef",tabindex:"-1",role:"radiogroup",class:T(e.ns.e("list")),onKeydown:t[4]||(t[4]=(...g)=>e.handleKeydown&&e.handleKeydown(...g))},[z("li",{role:"radio",class:T([e.ns.e("list-item"),e.ns.is("active",e.isPropAbsent(e.filterValue))]),tabindex:e.checkedIndex===0?0:-1,"aria-checked":e.isPropAbsent(e.filterValue),onClick:t[3]||(t[3]=g=>e.handleSelect(null,0))},Se(e.t("el.table.clearFilter")),11,NU),(x(!0),B(Fe,null,gt(e.filters,(g,p)=>(x(),B("li",{key:g.value,role:"radio",class:T([e.ns.e("list-item"),e.ns.is("active",e.isActive(g))]),tabindex:e.checkedIndex===p+1?0:-1,"aria-checked":e.isActive(g),onClick:h=>e.handleSelect(g.value,p+1)},Se(g.text),11,IU))),128))],34))]),default:J(()=>[z("button",{type:"button",class:T(`${e.ns.namespace.value}-table__column-filter-trigger`),"aria-label":e.t("el.table.filterLabel",{column:e.column?.label||""})},[Y(f,null,{default:J(()=>[ee(e.$slots,"filter-icon",{},()=>[e.column?.filterOpened?(x(),oe(c,{key:0})):(x(),oe(d,{key:1}))])]),_:3})],10,PU)]),_:3},8,["placement","popper-class","append-to","onShow","onHide"])}var _U=$n(OU,[["render",MU]]);function Fm(e){const t=ft();Pd(()=>{n.value.addObserver(t)}),ht(()=>{a(n.value),o(n.value)}),ro(()=>{a(n.value),o(n.value)}),$l(()=>{n.value.removeObserver(t)});const n=w(()=>{const s=e.layout;if(!s)throw new Error("Can not find table layout.");return s}),a=s=>{const r=e.vnode.el?.querySelectorAll("colgroup > col")||[];if(!r.length)return;const l=s.getFlattenColumns(),u={};l.forEach(c=>{u[c.id]=c});for(let c=0,d=r.length;c{const r=e.vnode.el?.querySelectorAll("colgroup > col[name=gutter]")||[];for(let u=0,c=r.length;u{h.stopPropagation()},s=(h,m)=>{!m.filters&&m.sortable?p(h,m,!1):m.filterable&&!m.sortable&&o(h),a?.emit("header-click",m,h)},r=(h,m)=>{a?.emit("header-contextmenu",m,h)},l=M(null),u=M(!1),c=M(),d=(h,m)=>{if(Mt&&!(m.children&&m.children.length>0)&&l.value&&e.border&&l.value.id===m.id){u.value=!0;const b=a;t("set-drag-visible",!0);const k=b?.vnode.el?.getBoundingClientRect().left,y=n?.vnode?.el?.querySelector(`th.${m.id}`),S=y.getBoundingClientRect(),C=S.left-k+30;La(y,"noclick"),c.value={startMouseLeft:h.clientX,startLeft:S.right-k,startColumnLeft:S.left-k,tableLeft:k};const E=b?.refs.resizeProxy;E.style.left=`${c.value.startLeft}px`,document.onselectstart=function(){return!1},document.ondragstart=function(){return!1};const $=N=>{const R=N.clientX-c.value.startMouseLeft,A=c.value.startLeft+R;E.style.left=`${Math.max(C,A)}px`},O=()=>{if(u.value){const{startColumnLeft:N,startLeft:R}=c.value;m.width=m.realWidth=Number.parseInt(E.style.left,10)-N,b?.emit("header-dragend",m.width,R-N,m,h),requestAnimationFrame(()=>{e.store.scheduleLayout(!1,!0)}),document.body.style.cursor="",u.value=!1,l.value=null,c.value=void 0,t("set-drag-visible",!1)}document.removeEventListener("mousemove",$),document.removeEventListener("mouseup",O),document.onselectstart=null,document.ondragstart=null,setTimeout(()=>{ta(y,"noclick")},0)};document.addEventListener("mousemove",$),document.addEventListener("mouseup",O)}},f=(h,m)=>{if(!e.border||m.children&&m.children.length>0)return;const b=h.target,k=ha(b)?b.closest("th"):null;if(!k)return;const y=$o(k,"is-sortable");if(y){const N=u.value?"col-resize":"";k.style.cursor=N;const R=k.querySelector(".caret-wrapper");R&&(R.style.cursor=N)}if(!m.resizable||u.value){l.value=null;return}const S=k.getBoundingClientRect(),C=k.parentNode?.lastElementChild===k,E=e.allowDragLastColumn||!C,$=S.width>12&&S.right-h.clientX<8&&E,O=$?"col-resize":"";document.body.style.cursor=O,l.value=$?m:null,y&&(k.style.cursor=O)},v=()=>{!Mt||u.value||(document.body.style.cursor="")},g=({order:h,sortOrders:m})=>{if(h==="")return m[0];const b=m.indexOf(h||null);return m[b>m.length-2?0:b+1]},p=(h,m,b)=>{h.stopPropagation();const k=m.order===b?null:b||g(m),y=h.target?.closest("th");if(y&&$o(y,"noclick")){ta(y,"noclick");return}if(!m.sortable)return;const S=h.currentTarget;if(["ascending","descending"].some(N=>$o(S,N)&&!m.sortOrders.includes(N)))return;const C=e.store.states;let E=C.sortProp.value,$;const O=C.sortingColumn.value;(O!==m||O===m&&Kd(O.order))&&(O&&(O.order=null),C.sortingColumn.value=m,E=m.property),k?$=m.order=k:$=m.order=null,C.sortProp.value=E,C.sortOrder.value=$,a?.store.commit("changeSortCondition")};return{handleHeaderClick:s,handleHeaderContextMenu:r,handleMouseDown:d,handleMouseMove:f,handleMouseOut:v,handleSortClick:p,handleFilterClick:o}}function LU(e){const t=_e(fo),n=fe("table");return{getHeaderRowStyle:l=>{const u=t?.props.headerRowStyle;return Ve(u)?u.call(null,{rowIndex:l}):u},getHeaderRowClass:l=>{const u=[],c=t?.props.headerRowClassName;return Le(c)?u.push(c):Ve(c)&&u.push(c.call(null,{rowIndex:l})),u.join(" ")},getHeaderCellStyle:(l,u,c,d)=>{let f=t?.props.headerCellStyle??{};Ve(f)&&(f=f.call(null,{rowIndex:l,columnIndex:u,row:c,column:d}));const v=Dm(u,d.fixed,e.store,c);return El(v,"left"),El(v,"right"),Object.assign({},f,v)},getHeaderCellClass:(l,u,c,d)=>{const f=Lm(n.b(),u,d.fixed,e.store,c),v=[d.id,d.order,d.headerAlign,d.className,d.labelClassName,...f];d.children||v.push("is-leaf"),d.sortable&&v.push("is-sortable");const g=t?.props.headerCellClassName;return Le(g)?v.push(g):Ve(g)&&v.push(g.call(null,{rowIndex:l,columnIndex:u,row:c,column:d})),v.push(n.e("cell")),v.filter(p=>!!p).join(" ")}}}var DU=se({name:"ElTableHeader",components:{ElCheckbox:so},props:{fixed:{type:String,default:""},store:{required:!0,type:Object},border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})},appendFilterPanelTo:{type:String},allowDragLastColumn:{type:Boolean}},setup(e,{emit:t}){const n=ft(),a=_e(fo),o=fe("table"),s=M({}),{onColumnsChange:r,onScrollableChange:l}=Fm(a),u=a?.props.tableLayout==="auto",c=At(new Map),d=M();let f;const v=()=>{f=setTimeout(()=>{c.size>0&&(c.forEach((_,V)=>{const H=d.value.querySelector(`.${V.replace(/\s/g,".")}`);H&&(_.width=H.getBoundingClientRect().width||_.width)}),c.clear())})};le(c,v),Bt(()=>{f&&(clearTimeout(f),f=void 0)}),ht(async()=>{await Re(),await Re();const{prop:_,order:V}=e.defaultSort;a?.store.commit("sort",{prop:_,order:V,init:!0}),v()});const{handleHeaderClick:g,handleHeaderContextMenu:p,handleMouseDown:h,handleMouseMove:m,handleMouseOut:b,handleSortClick:k,handleFilterClick:y}=AU(e,t),{getHeaderRowStyle:S,getHeaderRowClass:C,getHeaderCellStyle:E,getHeaderCellClass:$}=LU(e),{isGroup:O,toggleAllSelection:N,columnRows:R}=$U(e),{t:A}=Ct();return n.state={onColumnsChange:r,onScrollableChange:l},n.filterPanels=s,{ns:o,t:A,filterPanels:s,onColumnsChange:r,onScrollableChange:l,columnRows:R,getHeaderRowClass:C,getHeaderRowStyle:S,getHeaderCellClass:$,getHeaderCellStyle:E,handleHeaderClick:g,handleHeaderContextMenu:p,handleMouseDown:h,handleMouseMove:m,handleMouseOut:b,handleSortClick:k,handleFilterClick:y,isGroup:O,toggleAllSelection:N,saveIndexSelection:c,isTableLayoutAuto:u,theadRef:d,updateFixedColumnStyle:v}},render(){const{ns:e,t,isGroup:n,columnRows:a,getHeaderCellStyle:o,getHeaderCellClass:s,getHeaderRowClass:r,getHeaderRowStyle:l,handleHeaderClick:u,handleHeaderContextMenu:c,handleMouseDown:d,handleMouseMove:f,handleSortClick:v,handleMouseOut:g,store:p,$parent:h,saveIndexSelection:m,isTableLayoutAuto:b}=this;let k=1;return Ye("thead",{ref:"theadRef",class:e.is("group",n)},a.map((y,S)=>Ye("tr",{class:r(S),key:S,style:l(S)},y.map((C,E)=>{C.rowSpan>k&&(k=C.rowSpan);const $=s(S,E,y,C);return b&&C.fixed&&m.set($,C),Ye("th",{class:$,colspan:C.colSpan,key:`${C.id}-thead`,rowspan:C.rowSpan,scope:C.colSpan>1?"colgroup":"col",ariaSort:C.sortable?C.order:void 0,style:o(S,E,y,C),onClick:O=>{O.currentTarget?.classList.contains("noclick")||u(O,C)},onContextmenu:O=>c(O,C),onMousedown:O=>d(O,C),onMousemove:O=>f(O,C),onMouseout:g},[Ye("div",{class:["cell",C.filteredValue&&C.filteredValue.length>0?"highlight":""]},[C.renderHeader?C.renderHeader({column:C,$index:E,store:p,_self:h}):C.label,C.sortable&&Ye("button",{type:"button",class:"caret-wrapper","aria-label":t("el.table.sortLabel",{column:C.label||""}),onClick:O=>v(O,C)},[Ye("i",{onClick:O=>v(O,C,"ascending"),class:"sort-caret ascending"}),Ye("i",{onClick:O=>v(O,C,"descending"),class:"sort-caret descending"})]),C.filterable&&Ye(_U,{store:p,placement:C.filterPlacement||"bottom-start",appendTo:h?.appendFilterPanelTo,column:C,upDataColumn:(O,N)=>{C[O]=N}},{"filter-icon":()=>C.renderFilterIcon?C.renderFilterIcon({filterOpened:C.filterOpened}):null})])])}))))}});function ip(e,t,n=.03){return e-t>n}function BU(e){const t=_e(fo),n=M(""),a=M(Ye("div")),o=(p,h,m)=>{const b=t,k=lp(p);let y=null;const S=b?.vnode.el?.dataset.prefix;k&&(y=P0({columns:e.store?.states.columns.value??[]},k,S),y&&b?.emit(`cell-${m}`,h,y,k,p)),b?.emit(`row-${m}`,h,y,p)},s=(p,h)=>{o(p,h,"dblclick")},r=(p,h)=>{e.store?.commit("setCurrentRow",h),o(p,h,"click")},l=(p,h)=>{o(p,h,"contextmenu")},u=Mo(p=>{e.store?.commit("setHoverRow",p)},30),c=Mo(()=>{e.store?.commit("setHoverRow",null)},30),d=p=>{const h=window.getComputedStyle(p,null);return{left:Number.parseInt(h.paddingLeft,10)||0,right:Number.parseInt(h.paddingRight,10)||0,top:Number.parseInt(h.paddingTop,10)||0,bottom:Number.parseInt(h.paddingBottom,10)||0}},f=(p,h,m)=>{let b=h?.target?.parentNode;for(;p>1&&(b=b?.nextSibling,!(!b||b.nodeName!=="TR"));)m(b,"hover-row hover-fixed-row"),p--};return{handleDoubleClick:s,handleClick:r,handleContextMenu:l,handleMouseEnter:u,handleMouseLeave:c,handleCellMouseEnter:(p,h,m)=>{if(!t)return;const b=t,k=lp(p),y=b?.vnode.el?.dataset.prefix;let S=null;if(k){if(S=P0({columns:e.store?.states.columns.value??[]},k,y),!S)return;k.rowSpan>1&&f(k.rowSpan,p,La);const P=b.hoverState={cell:k,column:S,row:h};b?.emit("cell-mouse-enter",P.row,P.column,P.cell,p)}if(!m){pa?.trigger===k&&pa?.();return}const C=p.target.querySelector(".cell");if(!($o(C,`${y}-tooltip`)&&C.childNodes.length&&C.textContent?.trim()))return;const E=document.createRange();E.setStart(C,0),E.setEnd(C,C.childNodes.length);const{width:$,height:O}=E.getBoundingClientRect(),{width:N,height:R}=C.getBoundingClientRect(),{top:A,left:_,right:V,bottom:H}=d(C),U=_+V,W=A+H;ip($+U,N)||ip(O+W,R)||ip(C.scrollWidth,N)?gU(m,(k?.innerText||k?.textContent)??"",h,S,k,b):pa?.trigger===k&&pa?.()},handleCellMouseLeave:p=>{const h=lp(p);if(!h)return;h.rowSpan>1&&f(h.rowSpan,p,ta);const m=t?.hoverState;t?.emit("cell-mouse-leave",m?.row,m?.column,m?.cell,p)},tooltipContent:n,tooltipTrigger:a}}function FU(e){const t=_e(fo),n=fe("table");return{getRowStyle:(c,d)=>{const f=t?.props.rowStyle;return Ve(f)?f.call(null,{row:c,rowIndex:d}):f||null},getRowClass:(c,d,f)=>{const v=[n.e("row")];t?.props.highlightCurrentRow&&c===e.store?.states.currentRow.value&&v.push("current-row"),e.stripe&&f%2===1&&v.push(n.em("row","striped"));const g=t?.props.rowClassName;return Le(g)?v.push(g):Ve(g)&&v.push(g.call(null,{row:c,rowIndex:d})),v},getCellStyle:(c,d,f,v)=>{const g=t?.props.cellStyle;let p=g??{};Ve(g)&&(p=g.call(null,{rowIndex:c,columnIndex:d,row:f,column:v}));const h=Dm(d,e?.fixed,e.store);return El(h,"left"),El(h,"right"),Object.assign({},p,h)},getCellClass:(c,d,f,v,g)=>{const p=Lm(n.b(),d,e?.fixed,e.store,void 0,g),h=[v.id,v.align,v.className,...p],m=t?.props.cellClassName;return Le(m)?h.push(m):Ve(m)&&h.push(m.call(null,{rowIndex:c,columnIndex:d,row:f,column:v})),h.push(n.e("cell")),h.filter(b=>!!b).join(" ")},getSpan:(c,d,f,v)=>{let g=1,p=1;const h=t?.props.spanMethod;if(Ve(h)){const m=h({row:c,column:d,rowIndex:f,columnIndex:v});ye(m)?(g=m[0],p=m[1]):ot(m)&&(g=m.rowspan,p=m.colspan)}return{rowspan:g,colspan:p}},getColspanRealWidth:(c,d,f)=>{if(d<1)return c[f].realWidth;const v=c.map(({realWidth:g,width:p})=>g||p).slice(f,f+d);return Number(v.reduce((g,p)=>Number(g)+Number(p),-1))}}}const VU=["colspan","rowspan"];var zU=se({name:"TableTdWrapper",__name:"td-wrapper",props:{colspan:{type:Number,default:1},rowspan:{type:Number,default:1}},setup(e){return(t,n)=>(x(),B("td",{colspan:e.colspan,rowspan:e.rowspan},[ee(t.$slots,"default")],8,VU))}}),HU=zU;function KU(e){const t=_e(fo),n=fe("table"),{handleDoubleClick:a,handleClick:o,handleContextMenu:s,handleMouseEnter:r,handleMouseLeave:l,handleCellMouseEnter:u,handleCellMouseLeave:c,tooltipContent:d,tooltipTrigger:f}=BU(e),{getRowStyle:v,getRowClass:g,getCellStyle:p,getCellClass:h,getSpan:m,getColspanRealWidth:b}=FU(e);let k=-1;const y=w(()=>e.store?.states.columns.value.findIndex(({type:O})=>O==="default")),S=(O,N)=>{const R=t?.props?.rowKey;return R?Hn(O,R):N},C=(O,N,R,A=!1)=>{const{tooltipEffect:_,tooltipOptions:V,store:H}=e,{indent:U,columns:W}=H.states,P=[];let I=!0;return R&&(P.push(n.em("row",`level-${R.level}`)),I=!!R.display),N===0&&(k=-1),e.stripe&&I&&k++,P.push(...g(O,N,k)),Ye("tr",{style:[I?null:{display:"none"},v(O,N)],class:P,key:S(O,N),onDblclick:L=>a(L,O),onClick:L=>o(L,O),onContextmenu:L=>s(L,O),onMouseenter:()=>r(N),onMouseleave:l},W.value.map((L,D)=>{const{rowspan:F,colspan:q}=m(O,L,N,D);if(!F||!q)return null;const j=Object.assign({},L);j.realWidth=b(W.value,q,D);const X={store:H,_self:e.context||t,column:j,row:O,$index:N,cellIndex:D,expanded:A};D===y.value&&R&&(X.treeNode={indent:R.level&&R.level*U.value,level:R.level},Ht(R.expanded)&&(X.treeNode.expanded=R.expanded,"loading"in R&&(X.treeNode.loading=R.loading),"noLazyChildren"in R&&(X.treeNode.noLazyChildren=R.noLazyChildren)));const Q=`${S(O,N)},${D}`,he=j.columnKey||j.rawColumnKey||"",ue=L.showOverflowTooltip&&AS({effect:_},V,L.showOverflowTooltip);return Ye(HU,{style:p(N,D,O,L),class:h(N,D,O,L,q-1),key:`${he}${Q}`,rowspan:F,colspan:q,onMouseenter:ge=>u(ge,O,ue),onMouseleave:c},{default:()=>E(D,L,X)})}))},E=(O,N,R)=>N.renderCell(R);return{wrappedRowRender:(O,N)=>{const R=e.store,{isRowExpanded:A,assertRowKey:_}=R,{treeData:V,lazyTreeNodeMap:H,childrenColumnName:U,rowKey:W}=R.states,P=R.states.columns.value;if(P.some(({type:I})=>I==="expand")){const I=A(O),L=C(O,N,void 0,I),D=t?.renderExpanded;if(!D)return console.error("[Element Error]renderExpanded is required."),L;const F=[[L]];return(t.props.preserveExpandedContent||I)&&F[0].push(Ye("tr",{key:`expanded-row__${L.key}`,style:{display:I?"":"none"}},[Ye("td",{colspan:P.length,class:`${n.e("cell")} ${n.e("expanded-cell")}`},[D({row:O,$index:N,store:R,expanded:I})])])),F}else if(Object.keys(V.value).length){_();const I=Hn(O,W.value);let L=V.value[I],D=null;L&&(D={expanded:L.expanded,level:L.level,display:!0,noLazyChildren:void 0,loading:void 0},Ht(L.lazy)&&(D&&Ht(L.loaded)&&L.loaded&&(D.noLazyChildren=!(L.children&&L.children.length)),D.loading=L.loading));const F=[C(O,N,D??void 0)];if(L){let q=0;const j=(X,Q)=>{X&&X.length&&Q&&X.forEach(he=>{const ue={display:Q.display&&Q.expanded,level:Q.level+1,expanded:!1,noLazyChildren:!1,loading:!1},ge=Hn(he,W.value);if(va(ge))throw new Error("For nested data item, row-key is required.");L={...V.value[ge]},L&&(ue.expanded=L.expanded,L.level=L.level||ue.level,L.display=!!(L.expanded&&ue.display),Ht(L.lazy)&&(Ht(L.loaded)&&L.loaded&&(ue.noLazyChildren=!(L.children&&L.children.length)),ue.loading=L.loading)),q++,F.push(C(he,N+q,ue)),L&&j(H.value[ge]||he[U.value],L)})};L.display=!0,j(H.value[I]||O[U.value],L)}return F}else return C(O,N,void 0)},tooltipContent:d,tooltipTrigger:f}}const WU={store:{required:!0,type:Object},stripe:Boolean,tooltipEffect:String,tooltipOptions:{type:Object},context:{default:()=>({}),type:Object},rowClassName:[String,Function],rowStyle:[Object,Function],fixed:{type:String,default:""},highlight:Boolean};var jU=se({name:"ElTableBody",props:WU,setup(e){const t=ft(),n=_e(fo),a=fe("table"),{wrappedRowRender:o,tooltipContent:s,tooltipTrigger:r}=KU(e),{onColumnsChange:l,onScrollableChange:u}=Fm(n),c=[];return le(e.store?.states.hoverRow,(d,f)=>{const v=t?.vnode.el,g=Array.from(v?.children||[]).filter(m=>m?.classList.contains(`${a.e("row")}`));let p=d;const h=g[p]?.childNodes;if(h?.length){let m=0;Array.from(h).reduce((b,k,y)=>(h[y]?.colSpan>1&&(m=h[y]?.colSpan),k.nodeName!=="TD"&&m===0&&b.push(y),m>0&&m--,b),[]).forEach(b=>{for(p=d;p>0;){const k=g[p-1]?.childNodes;if(k[b]&&k[b].nodeName==="TD"&&k[b].rowSpan>1){La(k[b],"hover-cell"),c.push(k[b]);break}p--}})}else c.forEach(m=>ta(m,"hover-cell")),c.length=0;!e.store?.states.isComplex.value||!Mt||eo(()=>{const m=g[f],b=g[d];m&&!m.classList.contains("hover-fixed-row")&&ta(m,"hover-row"),b&&La(b,"hover-row")})}),$l(()=>{pa?.()}),{ns:a,onColumnsChange:l,onScrollableChange:u,wrappedRowRender:o,tooltipContent:s,tooltipTrigger:r}},render(){const{wrappedRowRender:e,store:t}=this;return Ye("tbody",{tabIndex:-1},[(t?.states.data.value||[]).reduce((n,a)=>n.concat(e(a,n.length)),[])])}});function UU(){const e=_e(fo)?.store;return{leftFixedLeafCount:w(()=>e?.states.fixedLeafColumnsLength.value??0),rightFixedLeafCount:w(()=>e?.states.rightFixedColumns.value.length??0),columnsCount:w(()=>e?.states.columns.value.length??0),leftFixedCount:w(()=>e?.states.fixedColumns.value.length??0),rightFixedCount:w(()=>e?.states.rightFixedColumns.value.length??0),columns:w(()=>e?.states.columns.value??[])}}function qU(e){const{columns:t}=UU(),n=fe("table");return{getCellClasses:(s,r)=>{const l=s[r],u=[n.e("cell"),l.id,l.align,l.labelClassName,...Lm(n.b(),r,l.fixed,e.store)];return l.className&&u.push(l.className),l.children||u.push(n.is("leaf")),u},getCellStyles:(s,r)=>{const l=Dm(r,s.fixed,e.store);return El(l,"left"),El(l,"right"),l},columns:t}}var YU=se({name:"ElTableFooter",props:{fixed:{type:String,default:""},store:{required:!0,type:Object},summaryMethod:Function,sumText:String,border:Boolean,defaultSort:{type:Object,default:()=>({prop:"",order:""})}},setup(e){const t=_e(fo),n=fe("table"),{getCellClasses:a,getCellStyles:o,columns:s}=qU(e),{onScrollableChange:r,onColumnsChange:l}=Fm(t);return{ns:n,onScrollableChange:r,onColumnsChange:l,getCellClasses:a,getCellStyles:o,columns:s}},render(){const{columns:e,getCellStyles:t,getCellClasses:n,summaryMethod:a,sumText:o}=this,s=this.store.states.data.value;let r=[];return a?r=a({columns:e,data:s}):e.forEach((l,u)=>{if(u===0){r[u]=o;return}const c=s.map(g=>Number(g[l.property])),d=[];let f=!0;c.forEach(g=>{if(!Number.isNaN(+g)){f=!1;const p=`${g}`.split(".")[1];d.push(p?p.length:0)}});const v=Math.max.apply(null,d);f?r[u]="":r[u]=c.reduce((g,p)=>{const h=Number(p);return Number.isNaN(+h)?g:Number.parseFloat((g+p).toFixed(Math.min(v,20)))},0)}),Ye(Ye("tfoot",[Ye("tr",{},[...e.map((l,u)=>Ye("td",{key:u,colspan:l.colSpan,rowspan:l.rowSpan,class:n(e,u),style:t(l,u)},[Ye("div",{class:["cell",l.labelClassName]},[r[u]])]))])]))}});function GU(e){return{setCurrentRow:f=>{e.commit("setCurrentRow",f)},getSelectionRows:()=>e.getSelectionRows(),toggleRowSelection:(f,v,g=!0)=>{e.toggleRowSelection(f,v,!1,g),e.updateAllSelected()},clearSelection:()=>{e.clearSelection()},clearFilter:f=>{e.clearFilter(f)},toggleAllSelection:()=>{e.commit("toggleAllSelection")},toggleRowExpansion:(f,v)=>{e.toggleRowExpansionAdapter(f,v)},clearSort:()=>{e.clearSort()},sort:(f,v)=>{e.commit("sort",{prop:f,order:v})},updateKeyChildren:(f,v)=>{e.updateKeyChildren(f,v)}}}function XU(e,t,n,a){const o=M(!1),s=M(null),r=M(!1),l=U=>{r.value=U},u=M({width:null,height:null,headerHeight:null}),c=M(!1),d={display:"inline-block",verticalAlign:"middle"},f=M(),v=M(0),g=M(0),p=M(0),h=M(0),m=M(0);le(()=>e.height,U=>{t.setHeight(U??null)},{immediate:!0}),le(()=>e.maxHeight,U=>{t.setMaxHeight(U??null)},{immediate:!0}),le(()=>[e.currentRowKey,n.states.rowKey],([U,W])=>{!i(W)||!i(U)||n.setCurrentRowKey(`${U}`)},{immediate:!0}),le(()=>e.data,U=>{a.store.commit("setData",U)},{immediate:!0,deep:!0}),wa(()=>{e.expandRowKeys&&n.setExpandRowKeysAdapter(e.expandRowKeys)});const b=()=>{a.store.commit("setHoverRow",null),a.hoverState&&(a.hoverState=null)},k=(U,W)=>{const{pixelX:P,pixelY:I}=W;Math.abs(P)>=Math.abs(I)&&(a.refs.bodyWrapper.scrollLeft+=W.pixelX/5)},y=w(()=>e.height||e.maxHeight||n.states.fixedColumns.value.length>0||n.states.rightFixedColumns.value.length>0),S=w(()=>({width:t.bodyWidth.value?`${t.bodyWidth.value}px`:""})),C=()=>{y.value&&t.updateElsHeight(),t.updateColumnsWidth(),!(typeof window>"u")&&requestAnimationFrame(N)};ht(async()=>{await Re(),n.updateColumns(),R(),requestAnimationFrame(C);const U=a.vnode.el,W=a.refs.headerWrapper;e.flexible&&U&&U.parentElement&&(U.parentElement.style.minWidth="0"),u.value={width:f.value=U.offsetWidth,height:U.offsetHeight,headerHeight:e.showHeader&&W?W.offsetHeight:null},n.states.columns.value.forEach(P=>{P.filteredValue&&P.filteredValue.length&&a.store.commit("filterChange",{column:P,values:P.filteredValue,silent:!0})}),a.$ready=!0});const E=(U,W)=>{if(!U)return;const P=Array.from(U.classList).filter(I=>!I.startsWith("is-scrolling-"));P.push(t.scrollX.value?W:"is-scrolling-none"),U.className=P.join(" ")},$=U=>{const{tableWrapper:W}=a.refs;E(W,U)},O=U=>{const{tableWrapper:W}=a.refs;return!!(W&&W.classList.contains(U))},N=function(){if(!a.refs.scrollBarRef)return;if(!t.scrollX.value){const F="is-scrolling-none";O(F)||$(F);return}const U=a.refs.scrollBarRef.wrapRef;if(!U)return;const{scrollLeft:W,offsetWidth:P,scrollWidth:I}=U,{headerWrapper:L,footerWrapper:D}=a.refs;L&&(L.scrollLeft=W),D&&(D.scrollLeft=W),W>=I-P-1?$("is-scrolling-right"):$(W===0?"is-scrolling-left":"is-scrolling-middle")},R=()=>{a.refs.scrollBarRef&&(a.refs.scrollBarRef.wrapRef&&Ft(a.refs.scrollBarRef.wrapRef,"scroll",N,{passive:!0}),e.fit?en(a.vnode.el,A):Ft(window,"resize",A),en(a.refs.tableInnerWrapper,()=>{A(),a.refs?.scrollBarRef?.update()}))},A=()=>{const U=a.vnode.el;if(!a.$ready||!U)return;let W=!1;const{width:P,height:I,headerHeight:L}=u.value,D=f.value=U.offsetWidth;P!==D&&(W=!0);const F=U.offsetHeight;(e.height||y.value)&&I!==F&&(W=!0);const q=e.tableLayout==="fixed"?a.refs.headerWrapper:a.refs.tableHeaderRef?.$el;e.showHeader&&q?.offsetHeight!==L&&(W=!0),v.value=a.refs.tableWrapper?.scrollHeight||0,p.value=q?.scrollHeight||0,h.value=a.refs.footerWrapper?.offsetHeight||0,m.value=a.refs.appendWrapper?.offsetHeight||0,g.value=v.value-p.value-h.value-m.value,W&&(u.value={width:D,height:F,headerHeight:e.showHeader&&q?.offsetHeight||0},C())},_=Cn(),V=w(()=>{const{bodyWidth:U,scrollY:W,gutterWidth:P}=t;return U.value?`${U.value-(W.value?P:0)}px`:""}),H=w(()=>e.maxHeight?"fixed":e.tableLayout);return{isHidden:o,renderExpanded:s,setDragVisible:l,isGroup:c,handleMouseLeave:b,handleHeaderFooterMousewheel:k,tableSize:_,emptyBlockStyle:w(()=>{if(e.data&&e.data.length)return;let U="100%";e.height&&g.value&&(U=`${g.value}px`);const W=f.value;return{width:W?`${W}px`:"",height:U}}),resizeProxyVisible:r,bodyWidth:V,resizeState:u,doLayout:C,tableBodyStyles:S,tableLayout:H,scrollbarViewStyle:d,scrollbarStyle:w(()=>e.height?{height:"100%"}:e.maxHeight?Number.isNaN(Number(e.maxHeight))?{maxHeight:`calc(${e.maxHeight} - ${p.value+h.value}px)`}:{maxHeight:`${+e.maxHeight-p.value-h.value}px`}:{})}}function JU(e){let t;const n=()=>{const a=e.vnode.el.querySelector(".hidden-columns"),o={childList:!0,subtree:!0},s=e.store.states.updateOrderFns;t=new MutationObserver(()=>{s.forEach(r=>r())}),t.observe(a,o)};ht(()=>{n()}),$l(()=>{t?.disconnect()})}var ZU={data:{type:Array,default:()=>[]},size:Tn,width:[String,Number],height:[String,Number],maxHeight:[String,Number],fit:{type:Boolean,default:!0},stripe:Boolean,border:Boolean,rowKey:[String,Function],showHeader:{type:Boolean,default:!0},showSummary:Boolean,sumText:String,summaryMethod:Function,rowClassName:[String,Function],rowStyle:[Object,Function],cellClassName:[String,Function],cellStyle:[Object,Function],headerRowClassName:[String,Function],headerRowStyle:[Object,Function],headerCellClassName:[String,Function],headerCellStyle:[Object,Function],highlightCurrentRow:Boolean,currentRowKey:[String,Number],emptyText:String,expandRowKeys:Array,defaultExpandAll:Boolean,rowExpandable:{type:Function},defaultSort:Object,tooltipEffect:String,tooltipOptions:Object,spanMethod:Function,selectOnIndeterminate:{type:Boolean,default:!0},indent:{type:Number,default:16},treeProps:{type:Object,default:()=>({hasChildren:"hasChildren",children:"children",checkStrictly:!1})},lazy:Boolean,load:Function,style:{type:[String,Object,Array],default:()=>({})},className:{type:String,default:""},tableLayout:{type:String,default:"fixed"},scrollbarAlwaysOn:Boolean,flexible:Boolean,showOverflowTooltip:{type:[Boolean,Object],default:void 0},tooltipFormatter:Function,appendFilterPanelTo:String,scrollbarTabindex:{type:[Number,String],default:void 0},allowDragLastColumn:{type:Boolean,default:!0},preserveExpandedContent:Boolean,nativeScrollbar:Boolean};function kE(e){const t=e.tableLayout==="auto";let n=e.columns||[];t&&n.every(({width:o})=>Tt(o))&&(n=[]);const a=o=>{const s={key:`${e.tableLayout}_${o.id}`,style:{},name:void 0};return t?s.style={width:`${o.width}px`}:s.name=o.id,s};return Ye("colgroup",{},n.map(o=>Ye("col",a(o))))}kE.props=["columns","tableLayout"];const QU=()=>{const e=M(),t=(s,r)=>{const l=e.value;l&&l.scrollTo(s,r)},n=(s,r)=>{const l=e.value;l&&He(r)&&["Top","Left"].includes(s)&&l[`setScroll${s}`](r)};return{scrollBarRef:e,scrollTo:t,setScrollTop:s=>n("Top",s),setScrollLeft:s=>n("Left",s)}};let eq=1;var tq=se({name:"ElTable",directives:{Mousewheel:O8},components:{TableHeader:DU,TableBody:jU,TableFooter:YU,ElScrollbar:ao,hColgroup:kE},props:ZU,emits:["select","select-all","selection-change","cell-mouse-enter","cell-mouse-leave","cell-contextmenu","cell-click","cell-dblclick","row-click","row-contextmenu","row-dblclick","header-click","header-contextmenu","sort-change","filter-change","current-change","header-dragend","expand-change","scroll"],setup(e){const{t}=Ct(),n=fe("table"),a=gs("table"),o=ft();St(fo,o);const s=EU(o,e);o.store=s;const r=new TU({store:o.store,table:o,fit:e.fit,showHeader:e.showHeader});o.layout=r;const l=w(()=>(s.states.data.value||[]).length===0),{setCurrentRow:u,getSelectionRows:c,toggleRowSelection:d,clearSelection:f,clearFilter:v,toggleAllSelection:g,toggleRowExpansion:p,clearSort:h,sort:m,updateKeyChildren:b}=GU(s),{isHidden:k,renderExpanded:y,setDragVisible:S,isGroup:C,handleMouseLeave:E,handleHeaderFooterMousewheel:$,tableSize:O,emptyBlockStyle:N,resizeProxyVisible:R,bodyWidth:A,resizeState:_,doLayout:V,tableBodyStyles:H,tableLayout:U,scrollbarViewStyle:W,scrollbarStyle:P}=XU(e,r,s,o),{scrollBarRef:I,scrollTo:L,setScrollLeft:D,setScrollTop:F}=QU(),q=Mo(V,50),j=`${n.namespace.value}-table_${eq++}`;o.tableId=j,o.state={isGroup:C,resizeState:_,doLayout:V,debouncedUpdateLayout:q};const X=w(()=>e.sumText??t("el.table.sumText")),Q=w(()=>e.emptyText??t("el.table.emptyText")),he=w(()=>e.tooltipEffect??a.value?.tooltipEffect),ue=w(()=>e.tooltipOptions??a.value?.tooltipOptions),ge=w(()=>CE(s.states.originColumns.value)[0]);return JU(o),Bt(()=>{q.cancel()}),{ns:n,layout:r,store:s,columns:ge,handleHeaderFooterMousewheel:$,handleMouseLeave:E,tableId:j,tableSize:O,isHidden:k,isEmpty:l,renderExpanded:y,resizeProxyVisible:R,resizeState:_,isGroup:C,bodyWidth:A,tableBodyStyles:H,emptyBlockStyle:N,debouncedUpdateLayout:q,setCurrentRow:u,getSelectionRows:c,toggleRowSelection:d,clearSelection:f,clearFilter:v,toggleAllSelection:g,toggleRowExpansion:p,clearSort:h,doLayout:V,sort:m,updateKeyChildren:b,t,setDragVisible:S,context:o,computedSumText:X,computedEmptyText:Q,computedTooltipEffect:he,computedTooltipOptions:ue,tableLayout:U,scrollbarViewStyle:W,scrollbarStyle:P,scrollBarRef:I,scrollTo:L,setScrollLeft:D,setScrollTop:F,allowDragLastColumn:e.allowDragLastColumn}}});const nq=["data-prefix"],aq={ref:"hiddenColumns",class:"hidden-columns"};function oq(e,t,n,a,o,s){const r=It("hColgroup"),l=It("table-header"),u=It("table-body"),c=It("table-footer"),d=It("el-scrollbar"),f=iv("mousewheel");return x(),B("div",{ref:"tableWrapper",class:T([{[e.ns.m("fit")]:e.fit,[e.ns.m("striped")]:e.stripe,[e.ns.m("border")]:e.border||e.isGroup,[e.ns.m("hidden")]:e.isHidden,[e.ns.m("group")]:e.isGroup,[e.ns.m("fluid-height")]:e.maxHeight,[e.ns.m("scrollable-x")]:e.layout.scrollX.value,[e.ns.m("scrollable-y")]:e.layout.scrollY.value,[e.ns.m("enable-row-hover")]:!e.store.states.isComplex.value,[e.ns.m("enable-row-transition")]:(e.store.states.data.value||[]).length!==0&&(e.store.states.data.value||[]).length<100,"has-footer":e.showSummary},e.ns.m(e.tableSize),e.className,e.ns.b(),e.ns.m(`layout-${e.tableLayout}`)]),style:Ke(e.style),"data-prefix":e.ns.namespace.value,onMouseleave:t[1]||(t[1]=(...v)=>e.handleMouseLeave&&e.handleMouseLeave(...v))},[z("div",{ref:"tableInnerWrapper",class:T(e.ns.e("inner-wrapper"))},[z("div",aq,[ee(e.$slots,"default")],512),e.showHeader&&e.tableLayout==="fixed"?ut((x(),B("div",{key:0,ref:"headerWrapper",class:T(e.ns.e("header-wrapper"))},[z("table",{ref:"tableHeader",class:T(e.ns.e("header")),style:Ke(e.tableBodyStyles),border:"0",cellpadding:"0",cellspacing:"0"},[Y(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),Y(l,{ref:"tableHeaderRef",border:e.border,"default-sort":e.defaultSort,store:e.store,"append-filter-panel-to":e.appendFilterPanelTo,"allow-drag-last-column":e.allowDragLastColumn,onSetDragVisible:e.setDragVisible},null,8,["border","default-sort","store","append-filter-panel-to","allow-drag-last-column","onSetDragVisible"])],6)],2)),[[f,e.handleHeaderFooterMousewheel]]):te("v-if",!0),z("div",{ref:"bodyWrapper",class:T(e.ns.e("body-wrapper"))},[Y(d,{ref:"scrollBarRef","view-style":e.scrollbarViewStyle,"wrap-style":e.scrollbarStyle,always:e.scrollbarAlwaysOn,tabindex:e.scrollbarTabindex,native:e.nativeScrollbar,onScroll:t[0]||(t[0]=v=>e.$emit("scroll",v))},{default:J(()=>[z("table",{ref:"tableBody",class:T(e.ns.e("body")),cellspacing:"0",cellpadding:"0",border:"0",style:Ke({width:e.bodyWidth,tableLayout:e.tableLayout})},[Y(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),e.showHeader&&e.tableLayout==="auto"?(x(),oe(l,{key:0,ref:"tableHeaderRef",class:T(e.ns.e("body-header")),border:e.border,"default-sort":e.defaultSort,store:e.store,"append-filter-panel-to":e.appendFilterPanelTo,onSetDragVisible:e.setDragVisible},null,8,["class","border","default-sort","store","append-filter-panel-to","onSetDragVisible"])):te("v-if",!0),Y(u,{context:e.context,highlight:e.highlightCurrentRow,"row-class-name":e.rowClassName,"tooltip-effect":e.computedTooltipEffect,"tooltip-options":e.computedTooltipOptions,"row-style":e.rowStyle,store:e.store,stripe:e.stripe},null,8,["context","highlight","row-class-name","tooltip-effect","tooltip-options","row-style","store","stripe"]),e.showSummary&&e.tableLayout==="auto"?(x(),oe(c,{key:1,class:T(e.ns.e("body-footer")),border:e.border,"default-sort":e.defaultSort,store:e.store,"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["class","border","default-sort","store","sum-text","summary-method"])):te("v-if",!0)],6),e.isEmpty?(x(),B("div",{key:0,ref:"emptyBlock",style:Ke(e.emptyBlockStyle),class:T(e.ns.e("empty-block"))},[z("span",{class:T(e.ns.e("empty-text"))},[ee(e.$slots,"empty",{},()=>[wt(Se(e.computedEmptyText),1)])],2)],6)):te("v-if",!0),e.$slots.append?(x(),B("div",{key:1,ref:"appendWrapper",class:T(e.ns.e("append-wrapper"))},[ee(e.$slots,"append")],2)):te("v-if",!0)]),_:3},8,["view-style","wrap-style","always","tabindex","native"])],2),e.showSummary&&e.tableLayout==="fixed"?ut((x(),B("div",{key:1,ref:"footerWrapper",class:T(e.ns.e("footer-wrapper"))},[z("table",{class:T(e.ns.e("footer")),cellspacing:"0",cellpadding:"0",border:"0",style:Ke(e.tableBodyStyles)},[Y(r,{columns:e.store.states.columns.value,"table-layout":e.tableLayout},null,8,["columns","table-layout"]),Y(c,{border:e.border,"default-sort":e.defaultSort,store:e.store,"sum-text":e.computedSumText,"summary-method":e.summaryMethod},null,8,["border","default-sort","store","sum-text","summary-method"])],6)],2)),[[Pt,!e.isEmpty],[f,e.handleHeaderFooterMousewheel]]):te("v-if",!0),e.border||e.isGroup?(x(),B("div",{key:2,class:T(e.ns.e("border-left-patch"))},null,2)):te("v-if",!0)],2),ut(z("div",{ref:"resizeProxy",class:T(e.ns.e("column-resize-proxy"))},null,2),[[Pt,e.resizeProxyVisible]])],46,nq)}var sq=$n(tq,[["render",oq]]);const rq={selection:"table-column--selection",expand:"table__expand-column"},lq={default:{order:""},selection:{width:48,minWidth:48,realWidth:48,order:""},expand:{width:48,minWidth:48,realWidth:48,order:""},index:{width:48,minWidth:48,realWidth:48,order:""}},iq=e=>rq[e]||"",uq={selection:{renderHeader({store:e}){function t(){return e.states.data.value&&e.states.data.value.length===0}return Ye(so,{disabled:t(),size:e.states.tableSize.value,indeterminate:e.states.selection.value.length>0&&!e.states.isAllSelected.value,"onUpdate:modelValue":e.toggleAllSelection??void 0,modelValue:e.states.isAllSelected.value,ariaLabel:e.t("el.table.selectAllLabel")})},renderCell({row:e,column:t,store:n,$index:a}){return Ye(so,{disabled:t.selectable?!t.selectable.call(null,e,a):!1,size:n.states.tableSize.value,onChange:()=>{n.commit("rowSelectedChanged",e)},onClick:o=>o.stopPropagation(),modelValue:n.isSelected(e),ariaLabel:n.t("el.table.selectRowLabel")})},sortable:!1,resizable:!1},index:{renderHeader({column:e}){return e.label||"#"},renderCell({column:e,$index:t}){let n=t+1;const a=e.index;return He(a)?n=t+a:Ve(a)&&(n=a(t)),Ye("div",{},[n])},sortable:!1},expand:{renderHeader({column:e}){return e.label||""},renderCell({column:e,row:t,store:n,expanded:a,$index:o}){const{ns:s}=n,r=[s.e("expand-icon")];!e.renderExpand&&a&&r.push(s.em("expand-icon","expanded"));const l=function(c){c.stopPropagation(),n.toggleRowExpansion(t)},u=n.states.rowExpandable.value?.(t,o)??!0;return u||r.push(s.is("disabled")),Ye("button",{type:"button",disabled:!u,"aria-label":n.t(a?"el.table.collapseRowLabel":"el.table.expandRowLabel"),"aria-expanded":a,class:r,onClick:l},{default:()=>e.renderExpand?[e.renderExpand({expanded:a,expandable:u})]:[Ye(De,null,{default:()=>[Ye(na)]})]})},sortable:!1,resizable:!1}};function cq({row:e,column:t,$index:n}){const a=t.property,o=a&&Ms(e,a).value;return t&&t.formatter?t.formatter(e,t,o,n):o?.toString?.()||""}function dq({row:e,treeNode:t,store:n},a=!1){const{ns:o}=n;if(!t)return a?[Ye("span",{class:o.e("placeholder")})]:null;const s=[],r=function(l){l.stopPropagation(),!t.loading&&n.loadOrToggle(e)};if(t.indent&&s.push(Ye("span",{class:o.e("indent"),style:{"padding-left":`${t.indent}px`}})),Ht(t.expanded)&&!t.noLazyChildren){const l=[o.e("expand-icon"),t.expanded?o.em("expand-icon","expanded"):""];let u=na;t.loading&&(u=Ao),s.push(Ye("button",{type:"button","aria-label":n.t(t.expanded?"el.table.collapseRowLabel":"el.table.expandRowLabel"),"aria-expanded":t.expanded,class:l,onClick:r},{default:()=>[Ye(De,{class:o.is("loading",t.loading)},{default:()=>[Ye(u)]})]}))}else s.push(Ye("span",{class:o.e("placeholder")}));return s}function A0(e,t){return e.reduce((n,a)=>(n[a]=a,n),t)}function fq(e,t){const n=ft();return{registerComplexWatchers:()=>{const s=["fixed"],r={realWidth:"width",realMinWidth:"minWidth"},l=A0(s,r);Object.keys(l).forEach(u=>{const c=r[u];Nt(t,c)&&le(()=>t[c],d=>{let f=d;c==="width"&&u==="realWidth"&&(f=Am(d)),c==="minWidth"&&u==="realMinWidth"&&(f=vE(d)),n.columnConfig.value[c]=f,n.columnConfig.value[u]=f;const v=c==="fixed";e.value.store.scheduleLayout(v)})})},registerNormalWatchers:()=>{const s=["label","filters","filterMultiple","filteredValue","sortable","index","formatter","className","labelClassName","filterClassName","showOverflowTooltip","tooltipFormatter","resizable"],r=["showOverflowTooltip"],l={property:"prop",align:"realAlign",headerAlign:"realHeaderAlign"},u=A0(s,l);Object.keys(u).forEach(d=>{const f=l[d];Nt(t,f)&&le(()=>t[f],v=>{n.columnConfig.value[d]=v,(d==="filters"||d==="filterMethod")&&(n.columnConfig.value.filterable=!!(n.columnConfig.value.filters||n.columnConfig.value.filterMethod))})}),r.forEach(d=>{Nt(e.value.props,d)&&le(()=>e.value.props[d],f=>{n.columnConfig.value.type!=="selection"&&Tt(t[d])&&(n.columnConfig.value[d]=f)})});const c=gs("table");c.value&&Nt(c.value,"showOverflowTooltip")&&le(()=>c.value?.showOverflowTooltip,d=>{n.columnConfig.value.type!=="selection"&&(!Tt(t.showOverflowTooltip)||!Tt(e.value.props.showOverflowTooltip)||(n.columnConfig.value.showOverflowTooltip=d))})}}}function pq(e,t,n){const a=ft(),o=M(""),s=M(!1),r=M(),l=M(),u=fe("table");wa(()=>{r.value=e.align?`is-${e.align}`:null,r.value}),wa(()=>{l.value=e.headerAlign?`is-${e.headerAlign}`:r.value,l.value});const c=w(()=>{let S=a.vnode.vParent||a.parent;for(;S&&!S.tableId&&!S.columnId;)S=S.vnode.vParent||S.parent;return S}),d=w(()=>{const{store:S}=a.parent;if(!S)return!1;const{treeData:C}=S.states,E=C.value;return E&&Object.keys(E).length>0}),f=M(Am(e.width)),v=M(vE(e.minWidth)),g=S=>(f.value&&(S.width=f.value),v.value&&(S.minWidth=v.value),!f.value&&v.value&&(S.width=void 0),S.minWidth||(S.minWidth=80),S.realWidth=Number(Tt(S.width)?S.minWidth:S.width),S),p=S=>{const C=S.type,E=uq[C]||{};Object.keys(E).forEach(O=>{const N=E[O];O!=="className"&&!Tt(N)&&(S[O]=N)});const $=iq(C);if($){const O=`${i(u.namespace)}-${$}`;S.className=S.className?`${S.className} ${O}`:O}return S},h=S=>{ye(S)?S.forEach(E=>C(E)):C(S);function C(E){E?.type?.name==="ElTableColumn"&&(E.vParent=a)}};return{columnId:o,realAlign:r,isSubColumn:s,realHeaderAlign:l,columnOrTableParent:c,setColumnWidth:g,setColumnForcedProps:p,setColumnRenders:S=>{e.renderHeader?pt("TableColumn","Comparing to render-header, scoped-slot header is easier to use. We recommend users to use scoped-slot header."):S.type!=="selection"&&(S.renderHeader=E=>{if(a.columnConfig.value.label,t.header){const $=t.header(E);if(bE($))return Ye(Fe,$)}return wt(S.label)}),t["filter-icon"]&&(S.renderFilterIcon=E=>ee(t,"filter-icon",E)),t.expand&&(S.renderExpand=E=>ee(t,"expand",E));let C=S.renderCell;return S.type==="expand"?(S.renderCell=E=>Ye("div",{class:"cell"},[C(E)]),n.value.renderExpanded=E=>t.default?t.default(E):t.default):(C=C||cq,S.renderCell=E=>{let $=null;if(t.default){const _=t.default(E);$=_.some(V=>V.type!==gn)?_:C(E)}else $=C(E);const{columns:O}=n.value.store.states,N=O.value.findIndex(_=>_.type==="default"),R=dq(E,d.value&&E.cellIndex===N),A={class:"cell",style:{}};return S.showOverflowTooltip&&(A.class=`${A.class} ${i(u.namespace)}-tooltip`,A.style={width:`${(E.column.realWidth||Number(E.column.width))-1}px`}),h($),Ye("div",A,[R,$])}),S},getPropsData:(...S)=>S.reduce((C,E)=>(ye(E)&&E.forEach($=>{C[$]=e[$]}),C),{}),getColumnElIndex:(S,C)=>Array.prototype.indexOf.call(S,C),updateColumnOrder:()=>{n.value.store.commit("updateColumnOrder",a.columnConfig.value)}}}var hq={type:{type:String,default:"default"},label:String,className:String,labelClassName:String,property:String,prop:String,width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},renderHeader:Function,sortable:{type:[Boolean,String],default:!1},sortMethod:Function,sortBy:[String,Function,Array],resizable:{type:Boolean,default:!0},columnKey:String,align:String,headerAlign:String,showOverflowTooltip:{type:[Boolean,Object],default:void 0},tooltipFormatter:Function,fixed:[Boolean,String],formatter:Function,selectable:Function,reserveSelection:Boolean,filterMethod:Function,filteredValue:Array,filters:Array,filterPlacement:String,filterMultiple:{type:Boolean,default:!0},filterClassName:String,index:[Number,Function],sortOrders:{type:Array,default:()=>["ascending","descending",null],validator:e=>e.every(t=>["ascending","descending",null].includes(t))}};let vq=1;var mq=se({name:"ElTableColumn",components:{ElCheckbox:so},props:hq,setup(e,{slots:t}){const n=ft(),a=gs("table"),o=M({}),s=w(()=>{let S=n.parent;for(;S&&!S.tableId;)S=S.parent;return S}),{registerNormalWatchers:r,registerComplexWatchers:l}=fq(s,e),{columnId:u,isSubColumn:c,realHeaderAlign:d,columnOrTableParent:f,setColumnWidth:v,setColumnForcedProps:g,setColumnRenders:p,getPropsData:h,getColumnElIndex:m,realAlign:b,updateColumnOrder:k}=pq(e,t,s),y=f.value;u.value=`${"tableId"in y&&y.tableId||"columnId"in y&&y.columnId}_column_${vq++}`,Pd(()=>{c.value=s.value!==y;const S=e.type||"default",C=e.sortable===""?!0:e.sortable,E=S==="selection"?!1:Tt(e.showOverflowTooltip)?y.props.showOverflowTooltip??a.value?.showOverflowTooltip:e.showOverflowTooltip,$=Tt(e.tooltipFormatter)?y.props.tooltipFormatter??a.value?.tooltipFormatter:e.tooltipFormatter,O={...lq[S],id:u.value,type:S,property:e.prop||e.property,align:b,headerAlign:d,showOverflowTooltip:E,tooltipFormatter:$,filterable:e.filters||e.filterMethod,filteredValue:[],filterPlacement:"",filterClassName:"",isColumnGroup:!1,isSubColumn:!1,filterOpened:!1,sortable:C,index:e.index,rawColumnKey:n.vnode.key};let N=h(["columnKey","label","className","labelClassName","type","renderHeader","formatter","fixed","resizable"],["sortMethod","sortBy","sortOrders"],["selectable","reserveSelection"],["filterMethod","filters","filterMultiple","filterOpened","filteredValue","filterPlacement","filterClassName"]);N=fU(O,N),N=hU(p,v,g)(N),o.value=N,r(),l()}),ht(()=>{const S=f.value,C=c.value?S.vnode.el?.children:S.refs.hiddenColumns?.children,E=()=>m(C||[],n.vnode.el);o.value.getColumnIndex=E,E()>-1&&s.value.store.commit("insertColumn",o.value,c.value?"columnConfig"in S&&S.columnConfig.value:null,k)}),Bt(()=>{const S=o.value.getColumnIndex;(S?S():-1)>-1&&s.value.store.commit("removeColumn",o.value,c.value?"columnConfig"in y&&y.columnConfig.value:null,k)}),n.columnId=u.value,n.columnConfig=o},render(){try{const e=this.$slots.default?.({row:{},column:{},$index:-1}),t=[];if(ye(e))for(const n of e)n.type?.name==="ElTableColumn"||n.shapeFlag&2?t.push(n):n.type===Fe&&ye(n.children)&&n.children.forEach(a=>{a?.patchFlag!==1024&&!Le(a?.children)&&t.push(a)});return Ye("div",t)}catch{return Ye("div",[])}}}),EE=mq;const gq=rt(sq,{TableColumn:EE}),bq=an(EE);let Eo=(function(e){return e.ASC="asc",e.DESC="desc",e})({}),yd=(function(e){return e.LEFT="left",e.CENTER="center",e.RIGHT="right",e})({}),yq=(function(e){return e.LEFT="left",e.RIGHT="right",e})({});const $h={[Eo.ASC]:Eo.DESC,[Eo.DESC]:Eo.ASC},Wi=Symbol("placeholder"),xE=String,Su={type:G(Array),required:!0},Vm={type:G(Array)},TE={...Vm,required:!0},wq=String,L0={type:G(Array),default:()=>rn([])},nr={type:Number,required:!0},$E={type:G([String,Number,Symbol]),default:"id"},D0={type:G(Object)},ir=Ce({class:String,columns:Su,columnsStyles:{type:G(Object),required:!0},depth:Number,expandColumnKey:wq,estimatedRowHeight:{...hr.estimatedRowHeight,default:void 0},isScrolling:Boolean,onRowExpand:{type:G(Function)},onRowHover:{type:G(Function)},onRowHeightChange:{type:G(Function)},rowData:{type:G(Object),required:!0},rowEventHandlers:{type:G(Object)},rowIndex:{type:Number,required:!0},rowKey:$E,style:{type:G(Object)}}),up={type:Number,required:!0},zm=Ce({class:String,columns:Su,fixedHeaderData:{type:G(Array)},headerData:{type:G(Array),required:!0},headerHeight:{type:G([Number,Array]),default:50},rowWidth:up,rowHeight:{type:Number,default:50},height:up,width:up}),Rc=Ce({columns:Su,data:TE,fixedData:Vm,estimatedRowHeight:ir.estimatedRowHeight,width:nr,height:nr,headerWidth:nr,headerHeight:zm.headerHeight,bodyWidth:nr,rowHeight:nr,cache:G2.cache,useIsScrolling:Boolean,scrollbarAlwaysOn:hr.scrollbarAlwaysOn,scrollbarStartGap:hr.scrollbarStartGap,scrollbarEndGap:hr.scrollbarEndGap,class:xE,style:D0,containerStyle:D0,getRowHeight:{type:G(Function),required:!0},rowKey:ir.rowKey,onRowsRendered:{type:G(Function)},onScroll:{type:G(Function)}}),Sq=Ce({cache:Rc.cache,estimatedRowHeight:ir.estimatedRowHeight,rowKey:$E,headerClass:{type:G([String,Function])},headerProps:{type:G([Object,Function])},headerCellProps:{type:G([Object,Function])},headerHeight:zm.headerHeight,footerHeight:{type:Number,default:0},rowClass:{type:G([String,Function])},rowProps:{type:G([Object,Function])},rowHeight:{type:Number,default:50},cellProps:{type:G([Object,Function])},columns:Su,data:TE,dataGetter:{type:G(Function)},fixedData:Vm,expandColumnKey:ir.expandColumnKey,expandedRowKeys:L0,defaultExpandedRowKeys:L0,class:xE,fixed:Boolean,style:{type:G(Object)},width:nr,height:nr,maxHeight:Number,useIsScrolling:Boolean,indentSize:{type:Number,default:12},iconSize:{type:Number,default:12},hScrollbarSize:hr.hScrollbarSize,vScrollbarSize:hr.vScrollbarSize,scrollbarAlwaysOn:Z2.alwaysOn,sortBy:{type:G(Object),default:()=>({})},sortState:{type:G(Object),default:void 0},onColumnSort:{type:G(Function)},onExpandedRowsChange:{type:G(Function)},onEndReached:{type:G(Function)},onRowExpand:ir.onRowExpand,onScroll:Rc.onScroll,onRowsRendered:Rc.onRowsRendered,rowEventHandlers:ir.rowEventHandlers}),Cq=(e,t,n)=>{const a={flexGrow:0,flexShrink:0,...n?{}:{flexGrow:e.flexGrow??0,flexShrink:e.flexShrink??1}},o={...e.style??{},...a,flexBasis:"auto",width:e.width};return t||(e.maxWidth&&(o.maxWidth=e.maxWidth),e.minWidth&&(o.minWidth=e.minWidth)),o};function kq(e,t,n){const a=w(()=>i(t).map((m,b)=>({...m,key:m.key??m.dataKey??b}))),o=w(()=>i(a).filter(m=>!m.hidden)),s=w(()=>i(o).filter(m=>m.fixed==="left"||m.fixed===!0)),r=w(()=>i(o).filter(m=>m.fixed==="right")),l=w(()=>i(o).filter(m=>!m.fixed)),u=w(()=>{const m=[];return i(s).forEach(b=>{m.push({...b,placeholderSign:Wi})}),i(l).forEach(b=>{m.push(b)}),i(r).forEach(b=>{m.push({...b,placeholderSign:Wi})}),m}),c=w(()=>i(s).length||i(r).length),d=w(()=>i(a).reduce((m,b)=>(m[b.key]=Cq(b,i(n),e.fixed),m),{})),f=w(()=>i(o).reduce((m,b)=>m+b.width,0)),v=m=>i(a).find(b=>b.key===m),g=m=>i(d)[m],p=(m,b)=>{m.width=b};function h(m){const{key:b}=m.currentTarget.dataset;if(!b)return;const{sortState:k,sortBy:y}=e;let S=Eo.ASC;ot(k)?S=$h[k[b]]:S=$h[y.order],e.onColumnSort?.({column:v(b),key:b,order:S})}return{columns:a,columnsStyles:d,columnsTotalWidth:f,fixedColumnsOnLeft:s,fixedColumnsOnRight:r,hasFixedColumns:c,mainColumns:u,normalColumns:l,visibleColumns:o,getColumn:v,getColumnStyle:g,updateColumnWidth:p,onColumnSorted:h}}const Eq=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:a,onMaybeEndReached:o})=>{const s=M({scrollLeft:0,scrollTop:0});function r(g){const{scrollTop:p}=g;t.value?.scrollTo(g),n.value?.scrollToTop(p),a.value?.scrollToTop(p)}function l(g){s.value=g,r(g)}function u(g){s.value.scrollTop=g,r(i(s))}function c(g){s.value.scrollLeft=g,t.value?.scrollTo?.(i(s))}function d(g){l(g),e.onScroll?.(g)}function f({scrollTop:g}){const{scrollTop:p}=i(s);g!==p&&u(g)}function v(g,p="auto"){t.value?.scrollToRow(g,p)}return le(()=>i(s).scrollTop,(g,p)=>{g>p&&o()}),{scrollPos:s,scrollTo:l,scrollToLeft:c,scrollToTop:u,scrollToRow:v,onScroll:d,onVerticalScroll:f}},xq=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:a,tableInstance:o,ns:s,isScrolling:r})=>{const l=ft(),{emit:u}=l,c=Xt(!1),d=M(e.defaultExpandedRowKeys||[]),f=M(-1),v=Xt(null),g=M({}),p=M({}),h=Xt({}),m=Xt({}),b=Xt({}),k=w(()=>He(e.estimatedRowHeight));function y(R){e.onRowsRendered?.(R),R.rowCacheEnd>i(f)&&(f.value=R.rowCacheEnd)}function S({hovered:R,rowKey:A}){r.value||o.vnode.el.querySelectorAll(`[rowkey="${String(A)}"]`).forEach(_=>{R?_.classList.add(s.is("hovered")):_.classList.remove(s.is("hovered"))})}function C({expanded:R,rowData:A,rowIndex:_,rowKey:V}){const H=[...i(d)],U=H.indexOf(V);R?U===-1&&H.push(V):U>-1&&H.splice(U,1),d.value=H,u("update:expandedRowKeys",H),e.onRowExpand?.({expanded:R,rowData:A,rowIndex:_,rowKey:V}),e.onExpandedRowsChange?.(H),o.vnode.el.querySelector(`.${s.is("hovered")}[rowkey="${String(V)}"]`)&&Re(()=>S({hovered:!0,rowKey:V}))}const E=Mo(()=>{c.value=!0,g.value={...i(g),...i(p)},$(i(v),!1),p.value={},v.value=null,t.value?.forceUpdate(),n.value?.forceUpdate(),a.value?.forceUpdate(),l.proxy?.$forceUpdate(),c.value=!1},0);function $(R,A=!1){i(k)&&[t,n,a].forEach(_=>{const V=i(_);V&&V.resetAfterRowIndex(R,A)})}function O(R,A,_){const V=i(v);(V===null||V>_)&&(v.value=_),p.value[R]=A}function N({rowKey:R,height:A,rowIndex:_},V){V?V===yq.RIGHT?b.value[R]=A:h.value[R]=A:m.value[R]=A;const H=Math.max(...[h,b,m].map(U=>U.value[R]||0));i(g)[R]!==H&&(O(R,H,_),E())}return{expandedRowKeys:d,lastRenderedRowIndex:f,isDynamic:k,isResetting:c,rowHeights:g,resetAfterIndex:$,onRowExpanded:C,onRowHovered:S,onRowsRendered:y,onRowHeightChange:N}},Tq=(e,{expandedRowKeys:t,lastRenderedRowIndex:n,resetAfterIndex:a})=>{const o=M({}),s=w(()=>{const l={},{data:u,rowKey:c}=e,d=i(t);if(!d||!d.length)return u;const f=[],v=new Set;d.forEach(p=>v.add(p));let g=u.slice();for(g.forEach(p=>l[p[c]]=0);g.length>0;){const p=g.shift();f.push(p),v.has(p[c])&&ye(p.children)&&p.children.length>0&&(g=[...p.children,...g],p.children.forEach(h=>l[h[c]]=l[p[c]]+1))}return o.value=l,f}),r=w(()=>{const{data:l,expandColumnKey:u}=e;return u?i(s):l});return le(r,(l,u)=>{l!==u&&(n.value=-1,a(0,!0))}),{data:r,depthMap:o}},$q=(e,t)=>e+t,Nc=e=>ye(e)?e.reduce($q,0):e,Er=(e,t,n={})=>Ve(e)?e(t):e??n,Ps=e=>(["width","maxWidth","minWidth","height"].forEach(t=>{e[t]=ln(e[t])}),e),OE=e=>Ut(e)?t=>Ye(e,t):e,Oq=(e,{columnsTotalWidth:t,rowsHeight:n,fixedColumnsOnLeft:a,fixedColumnsOnRight:o})=>{const s=w(()=>{const{fixed:h,width:m,vScrollbarSize:b}=e,k=m-b;return h?Math.max(Math.round(i(t)),k):k}),r=w(()=>{const{height:h=0,maxHeight:m=0,footerHeight:b,hScrollbarSize:k}=e;if(m>0){const y=i(v),S=i(n),C=i(f)+y+S+k;return Math.min(C,m-b)}return h-b}),l=w(()=>{const{maxHeight:h}=e,m=i(r);if(He(h)&&h>0)return m;const b=i(n)+i(f)+i(v);return Math.min(m,b)}),u=h=>h.width,c=w(()=>Nc(i(a).map(u))),d=w(()=>Nc(i(o).map(u))),f=w(()=>Nc(e.headerHeight)),v=w(()=>(e.fixedData?.length||0)*e.rowHeight),g=w(()=>i(r)-i(f)-i(v)),p=w(()=>{const{style:h={},height:m,width:b}=e;return Ps({...h,height:m,width:b})});return{bodyWidth:s,fixedTableHeight:l,mainTableHeight:r,leftTableWidth:c,rightTableWidth:d,windowHeight:g,footerHeight:w(()=>Ps({height:e.footerHeight})),emptyStyle:w(()=>({top:ln(i(f)),bottom:ln(e.footerHeight),width:ln(e.width)})),rootStyle:p,headerHeight:f}};function Rq(e){const t=M(),n=M(),a=M(),{columns:o,columnsStyles:s,columnsTotalWidth:r,fixedColumnsOnLeft:l,fixedColumnsOnRight:u,hasFixedColumns:c,mainColumns:d,onColumnSorted:f}=kq(e,Vt(e,"columns"),Vt(e,"fixed")),{scrollTo:v,scrollToLeft:g,scrollToTop:p,scrollToRow:h,onScroll:m,onVerticalScroll:b,scrollPos:k}=Eq(e,{mainTableRef:t,leftTableRef:n,rightTableRef:a,onMaybeEndReached:Z}),y=fe("table-v2"),S=ft(),C=Xt(!1),{expandedRowKeys:E,lastRenderedRowIndex:$,isDynamic:O,isResetting:N,rowHeights:R,resetAfterIndex:A,onRowExpanded:_,onRowHeightChange:V,onRowHovered:H,onRowsRendered:U}=xq(e,{mainTableRef:t,leftTableRef:n,rightTableRef:a,tableInstance:S,ns:y,isScrolling:C}),{data:W,depthMap:P}=Tq(e,{expandedRowKeys:E,lastRenderedRowIndex:$,resetAfterIndex:A}),I=w(()=>{const{estimatedRowHeight:re,rowHeight:ce}=e,ve=i(W);return He(re)?Object.values(i(R)).reduce((ke,Ne)=>ke+Ne,0):ve.length*ce}),{bodyWidth:L,fixedTableHeight:D,mainTableHeight:F,leftTableWidth:q,rightTableWidth:j,windowHeight:X,footerHeight:Q,emptyStyle:he,rootStyle:ue,headerHeight:ge}=Oq(e,{columnsTotalWidth:r,fixedColumnsOnLeft:l,fixedColumnsOnRight:u,rowsHeight:I}),ie=M(),ae=w(()=>{const re=i(W).length===0;return ye(e.fixedData)?e.fixedData.length===0&&re:re});function ne(re){const{estimatedRowHeight:ce,rowHeight:ve,rowKey:ke}=e;return ce?i(R)[i(W)[re][ke]]||ce:ve}const K=M(!1);function Z(){const{onEndReached:re}=e;if(!re)return;const{scrollTop:ce}=i(k),ve=i(I),ke=ve-(ce+i(X))+e.hScrollbarSize;!K.value&&i($)>=0&&ve<=ce+i(F)-i(ge)?(K.value=!0,re(ke)):K.value=!1}return le(()=>i(I),()=>K.value=!1),le(()=>e.expandedRowKeys,re=>E.value=re,{deep:!0}),{columns:o,containerRef:ie,mainTableRef:t,leftTableRef:n,rightTableRef:a,isDynamic:O,isResetting:N,isScrolling:C,hasFixedColumns:c,columnsStyles:s,columnsTotalWidth:r,data:W,expandedRowKeys:E,depthMap:P,fixedColumnsOnLeft:l,fixedColumnsOnRight:u,mainColumns:d,bodyWidth:L,emptyStyle:he,rootStyle:ue,footerHeight:Q,mainTableHeight:F,fixedTableHeight:D,leftTableWidth:q,rightTableWidth:j,showEmpty:ae,getRowHeight:ne,onColumnSorted:f,onRowHovered:H,onRowExpanded:_,onRowsRendered:U,onRowHeightChange:V,scrollTo:v,scrollToLeft:g,scrollToTop:p,scrollToRow:h,onScroll:m,onVerticalScroll:b}}const Hm=Symbol("tableV2"),RE="tableV2GridScrollLeft",Nq=se({name:"ElTableV2Header",props:zm,setup(e,{slots:t,expose:n}){const a=fe("table-v2"),o=_e(RE),s=M(),r=w(()=>Ps({width:e.width,height:e.height})),l=w(()=>Ps({width:e.rowWidth,height:e.height})),u=w(()=>Nn(i(e.headerHeight))),c=v=>{const g=i(s);Re(()=>{g?.scroll&&g.scroll({left:v})})},d=()=>{const v=a.e("fixed-header-row"),{columns:g,fixedHeaderData:p,rowHeight:h}=e;return p?.map((m,b)=>{const k=Ps({height:h,width:"100%"});return t.fixed?.({class:v,columns:g,rowData:m,rowIndex:-(b+1),style:k})})},f=()=>{const v=a.e("dynamic-header-row"),{columns:g}=e;return i(u).map((p,h)=>{const m=Ps({width:"100%",height:p});return t.dynamic?.({class:v,columns:g,headerIndex:h,style:m})})};return ro(()=>{o?.value&&c(o.value)}),n({scrollToLeft:c}),()=>{if(!(e.height<=0))return Y("div",{ref:s,class:e.class,style:i(r),role:"rowgroup"},[Y("div",{style:i(l),class:a.e("header")},[f(),d()])])}}}),Iq="ElTableV2Grid",Pq=e=>{const t=M(),n=M(),a=M(0),o=w(()=>{const{data:m,rowHeight:b,estimatedRowHeight:k}=e;if(!k)return m.length*b}),s=w(()=>{const{fixedData:m,rowHeight:b}=e;return(m?.length||0)*b}),r=w(()=>Nc(e.headerHeight)),l=w(()=>{const{height:m}=e;return Math.max(0,m-i(r)-i(s))}),u=w(()=>i(r)+i(s)>0),c=({data:m,rowIndex:b})=>m[b][e.rowKey];function d({rowCacheStart:m,rowCacheEnd:b,rowVisibleStart:k,rowVisibleEnd:y}){e.onRowsRendered?.({rowCacheStart:m,rowCacheEnd:b,rowVisibleStart:k,rowVisibleEnd:y})}function f(m,b){n.value?.resetAfterRowIndex(m,b)}function v(m,b){const k=i(t),y=i(n);ot(m)?(k?.scrollToLeft(m.scrollLeft),a.value=m.scrollLeft,y?.scrollTo(m)):(k?.scrollToLeft(m),a.value=m,y?.scrollTo({scrollLeft:m,scrollTop:b}))}function g(m){i(n)?.scrollTo({scrollTop:m})}function p(m,b){const k=i(n);if(!k)return;const y=a.value;k.scrollToItem(m,0,b),y&&v({scrollLeft:y})}function h(){i(n)?.$forceUpdate(),i(t)?.$forceUpdate()}return le(()=>e.bodyWidth,()=>{He(e.estimatedRowHeight)&&n.value?.resetAfter({columnIndex:0},!1)}),{bodyRef:n,forceUpdate:h,fixedRowHeight:s,gridHeight:l,hasHeader:u,headerHeight:r,headerRef:t,totalHeight:o,itemKey:c,onItemRendered:d,resetAfterRowIndex:f,scrollTo:v,scrollToTop:g,scrollToRow:p,scrollLeft:a}},Km=se({name:Iq,props:Rc,setup(e,{slots:t,expose:n}){const{ns:a}=_e(Hm),{bodyRef:o,fixedRowHeight:s,gridHeight:r,hasHeader:l,headerRef:u,headerHeight:c,totalHeight:d,forceUpdate:f,itemKey:v,onItemRendered:g,resetAfterRowIndex:p,scrollTo:h,scrollToTop:m,scrollToRow:b,scrollLeft:k}=Pq(e);St(RE,k),Gi(async()=>{await Re();const S=o.value?.states.scrollTop;S&&m(Math.round(S)+1)}),n({forceUpdate:f,totalHeight:d,scrollTo:h,scrollToTop:m,scrollToRow:b,resetAfterRowIndex:p});const y=()=>e.bodyWidth;return()=>{const{cache:S,columns:C,data:E,fixedData:$,useIsScrolling:O,scrollbarAlwaysOn:N,scrollbarEndGap:R,scrollbarStartGap:A,style:_,rowHeight:V,bodyWidth:H,estimatedRowHeight:U,headerWidth:W,height:P,width:I,getRowHeight:L,onScroll:D}=e,F=He(U),q=F?W9:V9,j=i(c);return Y("div",{role:"table",class:[a.e("table"),e.class],style:_},[Y(q,{ref:o,data:E,useIsScrolling:O,itemKey:v,columnCache:0,columnWidth:F?y:H,totalColumn:1,totalRow:E.length,rowCache:S,rowHeight:F?L:V,width:I,height:i(r),class:a.e("body"),role:"rowgroup",scrollbarStartGap:A,scrollbarEndGap:R,scrollbarAlwaysOn:N,onScroll:D,onItemRendered:g,perfMode:!1},{default:X=>{const Q=E[X.rowIndex];return t.row?.({...X,columns:C,rowData:Q})}}),i(l)&&Y(Nq,{ref:u,class:a.e("header-wrapper"),columns:C,headerData:E,headerHeight:e.headerHeight,fixedHeaderData:$,rowWidth:W,rowHeight:V,width:I,height:Math.min(j+i(s),P)},{dynamic:t.header,fixed:t.row})])}}});function Mq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const _q=(e,{slots:t})=>{const{mainTableRef:n,...a}=e;return Y(Km,dt({ref:n},a),Mq(t)?t:{default:()=>[t]})};function Aq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Lq=(e,{slots:t})=>{if(!e.columns.length)return;const{leftTableRef:n,...a}=e;return Y(Km,dt({ref:n},a),Aq(t)?t:{default:()=>[t]})};function Dq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Bq=(e,{slots:t})=>{if(!e.columns.length)return;const{rightTableRef:n,...a}=e;return Y(Km,dt({ref:n},a),Dq(t)?t:{default:()=>[t]})},Fq=e=>{const{isScrolling:t}=_e(Hm),n=M(!1),a=M(),o=w(()=>He(e.estimatedRowHeight)&&e.rowIndex>=0),s=(u=!1)=>{const c=i(a);if(!c)return;const{columns:d,onRowHeightChange:f,rowKey:v,rowIndex:g,style:p}=e,{height:h}=c.getBoundingClientRect();n.value=!0,Re(()=>{if(u||h!==Number.parseInt(p.height)){const m=d[0],b=m?.placeholderSign===Wi;f?.({rowKey:v,height:h,rowIndex:g},m&&!b&&m.fixed)}})},r=w(()=>{const{rowData:u,rowIndex:c,rowKey:d,onRowHover:f}=e,v=e.rowEventHandlers||{},g={};return Object.entries(v).forEach(([p,h])=>{Ve(h)&&(g[p]=m=>{h({event:m,rowData:u,rowIndex:c,rowKey:d})})}),f&&[{name:"onMouseleave",hovered:!1},{name:"onMouseenter",hovered:!0}].forEach(({name:p,hovered:h})=>{const m=g[p];g[p]=b=>{f({event:b,hovered:h,rowData:u,rowIndex:c,rowKey:d}),m?.(b)}}),g}),l=u=>{const{onRowExpand:c,rowData:d,rowIndex:f,rowKey:v}=e;c?.({expanded:u,rowData:d,rowIndex:f,rowKey:v})};return ht(()=>{i(o)&&s(!0)}),{isScrolling:t,measurable:o,measured:n,rowRef:a,eventHandlers:r,onExpand:l}},Vq=se({name:"ElTableV2TableRow",props:ir,setup(e,{expose:t,slots:n,attrs:a}){const{eventHandlers:o,isScrolling:s,measurable:r,measured:l,rowRef:u,onExpand:c}=Fq(e);return t({onExpand:c}),()=>{const{columns:d,columnsStyles:f,expandColumnKey:v,depth:g,rowData:p,rowIndex:h,style:m}=e;let b=d.map((k,y)=>{const S=ye(p.children)&&p.children.length>0&&k.key===v;return n.cell({column:k,columns:d,columnIndex:y,depth:g,style:f[k.key],rowData:p,rowIndex:h,isScrolling:i(s),expandIconProps:S?{rowData:p,rowIndex:h,onExpand:c}:void 0})});if(n.row&&(b=n.row({cells:b.map(k=>ye(k)&&k.length===1?k[0]:k),style:m,columns:d,depth:g,rowData:p,rowIndex:h,isScrolling:i(s)})),i(r)){const{height:k,...y}=m||{},S=i(l);return Y("div",dt({ref:u,class:e.class,style:S?m:y,role:"row"},a,i(o)),[b])}return Y("div",dt(a,{ref:u,class:e.class,style:m,role:"row"},i(o)),[b])}}});function zq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Hq=(e,{slots:t})=>{const{columns:n,columnsStyles:a,depthMap:o,expandColumnKey:s,expandedRowKeys:r,estimatedRowHeight:l,hasFixedColumns:u,rowData:c,rowIndex:d,style:f,isScrolling:v,rowProps:g,rowClass:p,rowKey:h,rowEventHandlers:m,ns:b,onRowHovered:k,onRowExpanded:y}=e,S=Er(p,{columns:n,rowData:c,rowIndex:d},""),C=Er(g,{columns:n,rowData:c,rowIndex:d}),E=c[h],$=o[E]||0,O=!!s,N=d<0,R=[b.e("row"),S,b.is("expanded",O&&r.includes(E)),b.is("fixed",!$&&N),b.is("customized",!!t.row),{[b.e(`row-depth-${$}`)]:O&&d>=0}],A=u?k:void 0,_={...C,columns:n,columnsStyles:a,class:R,depth:$,expandColumnKey:s,estimatedRowHeight:N?void 0:l,isScrolling:v,rowIndex:d,rowData:c,rowKey:E,rowEventHandlers:m,style:f};return Y(Vq,dt(_,{onRowExpand:y,onMouseenter:U=>{A?.({hovered:!0,rowKey:E,event:U,rowData:c,rowIndex:d})},onMouseleave:U=>{A?.({hovered:!1,rowKey:E,event:U,rowData:c,rowIndex:d})},rowkey:E}),zq(t)?t:{default:()=>[t]})},Wm=(e,{slots:t})=>{const{cellData:n,style:a}=e,o=n?.toString?.()||"",s=ee(t,"default",e,()=>[o]);return Y("div",{class:e.class,title:o,style:a},[s])};Wm.displayName="ElTableV2Cell";Wm.inheritAttrs=!1;const NE=e=>{const{expanded:t,expandable:n,onExpand:a,style:o,size:s,ariaLabel:r}=e;return Y("button",dt({onClick:n?()=>a(!t):void 0,ariaLabel:r,ariaExpanded:t,class:e.class},{type:"button"}),[Y(De,{size:s,style:o},{default:()=>[Y(na,null,null)]})])};NE.inheritAttrs=!1;const Oh=({columns:e,column:t,columnIndex:n,depth:a,expandIconProps:o,isScrolling:s,rowData:r,rowIndex:l,style:u,expandedRowKeys:c,ns:d,t:f,cellProps:v,expandColumnKey:g,indentSize:p,iconSize:h,rowKey:m},{slots:b})=>{const k=Ps(u);if(t.placeholderSign===Wi)return Y("div",{class:d.em("row-cell","placeholder"),style:k},null);const{cellRenderer:y,dataKey:S,dataGetter:C}=t,E=Ve(C)?C({columns:e,column:t,columnIndex:n,rowData:r,rowIndex:l}):wn(r,S??""),$=Er(v,{cellData:E,columns:e,column:t,columnIndex:n,rowIndex:l,rowData:r}),O={class:d.e("cell-text"),columns:e,column:t,columnIndex:n,cellData:E,isScrolling:s,rowData:r,rowIndex:l},N=OE(y),R=N?N(O):ee(b,"default",O,()=>[Y(Wm,O,null)]),A=[d.e("row-cell"),t.class,t.align===yd.CENTER&&d.is("align-center"),t.align===yd.RIGHT&&d.is("align-right")],_=l>=0&&g&&t.key===g,V=l>=0&&c.includes(r[m]);let H;const U=`margin-inline-start: ${a*p}px;`;return _&&(ot(o)?H=Y(NE,dt(o,{class:[d.e("expand-icon"),d.is("expanded",V)],size:h,expanded:V,ariaLabel:f(V?"el.table.collapseRowLabel":"el.table.expandRowLabel"),style:U,expandable:!0}),null):H=Y("div",{style:[U,`width: ${h}px; height: ${h}px;`].join(" ")},null)),Y("div",dt({class:A,style:k},$,{role:"cell"}),[H,R])};Oh.inheritAttrs=!1;const Kq=Ce({class:String,columns:Su,columnsStyles:{type:G(Object),required:!0},headerIndex:Number,style:{type:G(Object)}}),Wq=se({name:"ElTableV2HeaderRow",props:Kq,setup(e,{slots:t}){return()=>{const{columns:n,columnsStyles:a,headerIndex:o,style:s}=e;let r=n.map((l,u)=>t.cell({columns:n,column:l,columnIndex:u,headerIndex:o,style:a[l.key]}));return t.header&&(r=t.header({cells:r.map(l=>ye(l)&&l.length===1?l[0]:l),columns:n,headerIndex:o})),Y("div",{class:e.class,style:s,role:"row"},[r])}}});function jq(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Uq=({columns:e,columnsStyles:t,headerIndex:n,style:a,headerClass:o,headerProps:s,ns:r},{slots:l})=>{const u={columns:e,headerIndex:n},c=[r.e("header-row"),Er(o,u,""),r.is("customized",!!l.header)];return Y(Wq,{...Er(s,u),columnsStyles:t,class:c,columns:e,headerIndex:n,style:a},jq(l)?l:{default:()=>[l]})},jm=(e,{slots:t})=>ee(t,"default",e,()=>[Y("div",{class:e.class,title:e.column?.title},[e.column?.title])]);jm.displayName="ElTableV2HeaderCell";jm.inheritAttrs=!1;const qq=e=>{const{sortOrder:t}=e;return Y("button",{type:"button","aria-label":e.ariaLabel,class:e.class},[Y(De,{size:14},{default:()=>[t===Eo.ASC?Y(L3,null,null):Y(_3,null,null)]})])},B0=(e,{slots:t})=>{const{column:n,ns:a,t:o,style:s,onColumnSorted:r}=e,l=Ps(s);if(n.placeholderSign===Wi)return Y("div",{class:a.em("header-row-cell","placeholder"),style:l},null);const{headerCellRenderer:u,headerClass:c,sortable:d}=n,f={...e,class:a.e("header-cell-text")},v=OE(u),g=v?v(f):ee(t,"default",f,()=>[Y(jm,f,null)]),{sortBy:p,sortState:h,headerCellProps:m}=e;let b,k,y;if(h){const C=h[n.key];b=!!$h[C],k=b?C:Eo.ASC}else b=n.key===p.key,k=b?p.order:Eo.ASC;k===Eo.ASC?y="ascending":k===Eo.DESC?y="descending":y=void 0;const S=[a.e("header-cell"),Er(c,e,""),n.align===yd.CENTER&&a.is("align-center"),n.align===yd.RIGHT&&a.is("align-right"),d&&a.is("sortable")];return Y("div",dt({...Er(m,e),onClick:n.sortable?r:void 0,ariaSort:d?y:void 0,class:S,style:l,"data-key":n.key},{role:"columnheader"}),[g,d&&Y(qq,{class:[a.e("sort-icon"),b&&a.is("sorting")],sortOrder:k,ariaLabel:o("el.table.sortLabel",{column:n.title||""})},null)])},IE=(e,{slots:t})=>Y("div",{class:e.class,style:e.style},[t.default?.()]);IE.displayName="ElTableV2Footer";const PE=(e,{slots:t})=>{const n=ee(t,"default",{},()=>[Y(D2,null,null)]);return Y("div",{class:e.class,style:e.style},[n])};PE.displayName="ElTableV2Empty";const ME=(e,{slots:t})=>Y("div",{class:e.class,style:e.style},[t.default?.()]);ME.displayName="ElTableV2Overlay";function Yl(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!Ut(e)}const Yq=se({name:"ElTableV2",props:Sq,setup(e,{slots:t,expose:n}){const a=fe("table-v2"),{t:o}=Ct(),{columnsStyles:s,fixedColumnsOnLeft:r,fixedColumnsOnRight:l,mainColumns:u,mainTableHeight:c,fixedTableHeight:d,leftTableWidth:f,rightTableWidth:v,data:g,depthMap:p,expandedRowKeys:h,hasFixedColumns:m,mainTableRef:b,leftTableRef:k,rightTableRef:y,isDynamic:S,isResetting:C,isScrolling:E,bodyWidth:$,emptyStyle:O,rootStyle:N,footerHeight:R,showEmpty:A,scrollTo:_,scrollToLeft:V,scrollToTop:H,scrollToRow:U,getRowHeight:W,onColumnSorted:P,onRowHeightChange:I,onRowHovered:L,onRowExpanded:D,onRowsRendered:F,onScroll:q,onVerticalScroll:j}=Rq(e);return n({scrollTo:_,scrollToLeft:V,scrollToTop:H,scrollToRow:U}),St(Hm,{ns:a,isResetting:C,isScrolling:E}),()=>{const{cache:X,cellProps:Q,estimatedRowHeight:he,expandColumnKey:ue,fixedData:ge,headerHeight:ie,headerClass:ae,headerProps:ne,headerCellProps:K,sortBy:Z,sortState:re,rowHeight:ce,rowClass:ve,rowEventHandlers:ke,rowKey:Ne,rowProps:Ie,scrollbarAlwaysOn:$e,indentSize:pe,iconSize:Ee,useIsScrolling:me,vScrollbarSize:Me,width:We}=e,Ze=i(g),Pe={cache:X,class:a.e("main"),columns:i(u),data:Ze,fixedData:ge,estimatedRowHeight:he,bodyWidth:i($),headerHeight:ie,headerWidth:i($),height:i(c),mainTableRef:b,rowKey:Ne,rowHeight:ce,scrollbarAlwaysOn:$e,scrollbarStartGap:2,scrollbarEndGap:Me,useIsScrolling:me,width:We,getRowHeight:W,onRowsRendered:F,onScroll:q},Ae=i(f),je=i(d),Rt={cache:X,class:a.e("left"),columns:i(r),data:Ze,fixedData:ge,estimatedRowHeight:he,leftTableRef:k,rowHeight:ce,bodyWidth:Ae,headerWidth:Ae,headerHeight:ie,height:je,rowKey:Ne,scrollbarAlwaysOn:$e,scrollbarStartGap:2,scrollbarEndGap:Me,useIsScrolling:me,width:Ae,getRowHeight:W,onScroll:j},Ue=i(v),lt={cache:X,class:a.e("right"),columns:i(l),data:Ze,fixedData:ge,estimatedRowHeight:he,rightTableRef:y,rowHeight:ce,bodyWidth:Ue,headerWidth:Ue,headerHeight:ie,height:je,rowKey:Ne,scrollbarAlwaysOn:$e,scrollbarStartGap:2,scrollbarEndGap:Me,width:Ue,style:`${a.cssVarName("table-scrollbar-size")}: ${Me}px`,useIsScrolling:me,getRowHeight:W,onScroll:j},mt=i(s),kt={ns:a,depthMap:i(p),columnsStyles:mt,expandColumnKey:ue,expandedRowKeys:i(h),estimatedRowHeight:he,hasFixedColumns:i(m),rowProps:Ie,rowClass:ve,rowKey:Ne,rowEventHandlers:ke,onRowHovered:L,onRowExpanded:D,onRowHeightChange:I},be={cellProps:Q,expandColumnKey:ue,indentSize:pe,iconSize:Ee,rowKey:Ne,expandedRowKeys:i(h),ns:a,t:o},ze={ns:a,headerClass:ae,headerProps:ne,columnsStyles:mt},de={ns:a,t:o,sortBy:Z,sortState:re,headerCellProps:K,onColumnSorted:P},Ge={row:_n=>Y(Hq,dt(_n,kt),{row:t.row,cell:Be=>{let nt;return t.cell?Y(Oh,dt(Be,be,{style:mt[Be.column.key]}),Yl(nt=t.cell(Be))?nt:{default:()=>[nt]}):Y(Oh,dt(Be,be,{style:mt[Be.column.key]}),null)}}),header:_n=>Y(Uq,dt(_n,ze),{header:t.header,cell:Be=>{let nt;return t["header-cell"]?Y(B0,dt(Be,de,{style:mt[Be.column.key]}),Yl(nt=t["header-cell"](Be))?nt:{default:()=>[nt]}):Y(B0,dt(Be,de,{style:mt[Be.column.key]}),null)}})},$t=[e.class,a.b(),a.e("root"),a.is("dynamic",i(S))],tn={class:a.e("footer"),style:i(R)};return Y("div",{class:$t,style:i(N)},[Y(_q,Pe,Yl(Ge)?Ge:{default:()=>[Ge]}),Y(Lq,Rt,Yl(Ge)?Ge:{default:()=>[Ge]}),Y(Bq,lt,Yl(Ge)?Ge:{default:()=>[Ge]}),t.footer&&Y(IE,tn,{default:t.footer}),i(A)&&Y(PE,{class:a.e("empty"),style:i(O)},{default:t.empty}),t.overlay&&Y(ME,{class:a.e("overlay")},{default:t.overlay})])}}}),Gq=Ce({disableWidth:Boolean,disableHeight:Boolean,onResize:{type:G(Function)}}),Xq=e=>{const t=M(),n=M(0),a=M(0);let o;return ht(()=>{o=en(t,([s])=>{const{width:r,height:l}=s.contentRect,{paddingLeft:u,paddingRight:c,paddingTop:d,paddingBottom:f}=getComputedStyle(s.target),v=Number.parseInt(u)||0,g=Number.parseInt(c)||0,p=Number.parseInt(d)||0,h=Number.parseInt(f)||0;n.value=r-v-g,a.value=l-p-h}).stop}),Bt(()=>{o?.()}),le([n,a],([s,r])=>{e.onResize?.({width:s,height:r})}),{sizer:t,width:n,height:a}},Jq=se({name:"ElAutoResizer",props:Gq,setup(e,{slots:t}){const n=fe("auto-resizer"),{height:a,width:o,sizer:s}=Xq(e),r={width:"100%",height:"100%"};return()=>Y("div",{ref:s,class:n.b(),style:r},[t.default?.({height:a.value,width:o.value})])}}),Zq=rt(Yq),Qq=rt(Jq),df=Symbol("tabsRootContextKey"),eY=Ce({tabs:{type:G(Array),default:()=>rn([])},tabRefs:{type:G(Object),default:()=>rn({})}}),F0="ElTabBar";var tY=se({name:F0,__name:"tab-bar",props:eY,setup(e,{expose:t}){const n=e,a=_e(df);a||nn(F0,"");const o=fe("tabs"),s=M(),r=M(),l=w(()=>Tt(a.props.defaultValue)||!!r.value?.transform),u=()=>{let g=0,p=0;const h=["top","bottom"].includes(a.props.tabPosition)?"width":"height",m=h==="width"?"x":"y",b=m==="x"?"left":"top";return n.tabs.every(k=>{if(Tt(k.paneName))return!1;const y=n.tabRefs[k.paneName];if(!y)return!1;if(!k.active)return!0;g=y[`offset${$s(b)}`],p=y[`client${$s(h)}`];const S=window.getComputedStyle(y);return h==="width"&&(p-=Number.parseFloat(S.paddingLeft)+Number.parseFloat(S.paddingRight),g+=Number.parseFloat(S.paddingLeft)),!1}),{[h]:`${p}px`,transform:`translate${$s(m)}(${g}px)`}},c=()=>r.value=u(),d=[],f=()=>{d.forEach(g=>g.stop()),d.length=0,Object.values(n.tabRefs).forEach(g=>{d.push(en(g,c))})};le(()=>n.tabs,async()=>{await Re(),c(),f()},{immediate:!0});const v=en(s,()=>c());return Bt(()=>{d.forEach(g=>g.stop()),d.length=0,v.stop()}),t({ref:s,update:c}),(g,p)=>l.value?(x(),B("div",{key:0,ref_key:"barRef",ref:s,class:T([i(o).e("active-bar"),i(o).is(i(a).props.tabPosition)]),style:Ke(r.value)},null,6)):te("v-if",!0)}}),nY=tY;const aY=Ce({panes:{type:G(Array),default:()=>rn([])},currentName:{type:[String,Number],default:""},editable:Boolean,type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean,tabindex:{type:[String,Number],default:void 0}}),oY={tabClick:(e,t,n)=>n instanceof Event,tabRemove:(e,t)=>t instanceof Event},V0="ElTabNav",sY=se({name:V0,props:aY,emits:oY,setup(e,{expose:t,emit:n}){const a=_e(df);a||nn(V0,"");const o=fe("tabs"),s=o_(),r=r_(),l=M(),u=M(),c=M(),d=M({}),f=M(),v=M(!1),g=M(0),p=M(!1),h=M(!0),m=Xt(),b=w(()=>["top","bottom"].includes(a.props.tabPosition)),k=w(()=>b.value?"width":"height"),y=w(()=>({transform:`translate${k.value==="width"?"X":"Y"}(-${g.value}px)`})),{width:S,height:C}=Dp(l),{width:E,height:$}=Dp(u,{width:0,height:0},{box:"border-box"}),O=w(()=>b.value?S.value:C.value),N=w(()=>b.value?E.value:$.value),{onWheel:R}=eE({atStartEdge:w(()=>g.value<=0),atEndEdge:w(()=>N.value-g.value<=O.value),layout:w(()=>b.value?"horizontal":"vertical")},D=>{g.value=ar(g.value+D,0,N.value-O.value)}),A=()=>{if(!l.value)return;const D=l.value[`offset${$s(k.value)}`],F=g.value;F&&(g.value=F>D?F-D:0)},_=()=>{if(!l.value||!u.value)return;const D=u.value[`offset${$s(k.value)}`],F=l.value[`offset${$s(k.value)}`],q=g.value;D-q<=F||(g.value=D-q>F*2?q+F:D-F)},V=async()=>{const D=u.value;if(!v.value||!c.value||!l.value||!D)return;await Re();const F=d.value[e.currentName];if(!F)return;const q=l.value,j=F.getBoundingClientRect(),X=q.getBoundingClientRect(),Q=b.value?D.offsetWidth-X.width:D.offsetHeight-X.height,he=g.value;let ue=he;b.value?(j.leftX.right&&(ue=he+j.right-X.right)):(j.topX.bottom&&(ue=he+(j.bottom-X.bottom))),ue=Math.max(ue,0),g.value=Math.min(ue,Q)},H=()=>{if(!u.value||!l.value)return;e.stretch&&f.value?.update();const D=u.value[`offset${$s(k.value)}`],F=l.value[`offset${$s(k.value)}`],q=g.value;F0&&(g.value=0))},U=D=>{const F=jt(D);let q=0;switch(F){case we.left:case we.up:q=-1;break;case we.right:case we.down:q=1;break;default:return}const j=Array.from(D.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)"));let X=j.indexOf(D.target)+q;X<0?X=j.length-1:X>=j.length&&(X=0),j[X].focus({preventScroll:!0}),j[X].click(),W()},W=()=>{h.value&&(p.value=!0)},P=()=>p.value=!1,I=(D,F)=>{d.value[F]=D},L=async()=>{await Re(),d.value[e.currentName]?.focus({preventScroll:!0})};return le(s,D=>{D==="hidden"?h.value=!1:D==="visible"&&setTimeout(()=>h.value=!0,50)}),le(r,D=>{D?setTimeout(()=>h.value=!0,50):h.value=!1}),en(c,()=>{eo(H)}),ht(()=>setTimeout(()=>V(),0)),ro(()=>H()),t({scrollToActiveTab:V,removeFocus:P,focusActiveTab:L,tabListRef:u,tabBarRef:f,scheduleRender:()=>oc(m)}),()=>{const D=v.value?[Y("span",{class:[o.e("nav-prev"),o.is("disabled",!v.value.prev)],onClick:A},[Y(De,null,{default:()=>[Y(is,null,null)]})]),Y("span",{class:[o.e("nav-next"),o.is("disabled",!v.value.next)],onClick:_},[Y(De,null,{default:()=>[Y(na,null,null)]})])]:null,F=e.panes.map((q,j)=>{const X=q.uid,Q=q.props.disabled,he=q.props.name??q.index??`${j}`,ue=!Q&&(q.isClosable||q.props.closable!==!1&&e.editable);q.index=`${j}`;const ge=ue?Y(De,{class:"is-icon-close",onClick:ne=>n("tabRemove",q,ne)},{default:()=>[Y(Ha,null,null)]}):null,ie=q.slots.label?.()||q.props.label,ae=!Q&&q.active?e.tabindex??a.props.tabindex:-1;return Y("div",{ref:ne=>I(ne,he),class:[o.e("item"),o.is(a.props.tabPosition),o.is("active",q.active),o.is("disabled",Q),o.is("closable",ue),o.is("focus",p.value)],id:`tab-${he}`,key:`tab-${X}`,"aria-controls":`pane-${he}`,role:"tab","aria-selected":q.active,tabindex:ae,onFocus:()=>W(),onBlur:()=>P(),onClick:ne=>{P(),n("tabClick",q,he,ne)},onKeydown:ne=>{const K=jt(ne);ue&&(K===we.delete||K===we.backspace)&&n("tabRemove",q,ne)}},[ie,ge])});return m.value,Y("div",{ref:c,class:[o.e("nav-wrap"),o.is("scrollable",!!v.value),o.is(a.props.tabPosition)]},[D,Y("div",{class:o.e("nav-scroll"),ref:l},[e.panes.length>0?Y("div",{class:[o.e("nav"),o.is(a.props.tabPosition),o.is("stretch",e.stretch&&["top","bottom"].includes(a.props.tabPosition))],ref:u,style:y.value,role:"tablist",onKeydown:U,onWheel:R},[e.type?null:Y(nY,{ref:f,tabs:[...e.panes],tabRefs:d.value},null),F]):null])])}}}),rY=Ce({type:{type:String,values:["card","border-card",""],default:""},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},defaultValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:G(Function),default:()=>!0},stretch:Boolean,tabindex:{type:[String,Number],default:0}}),cp=e=>Le(e)||He(e),lY={[at]:e=>cp(e),tabClick:(e,t)=>t instanceof Event,tabChange:e=>cp(e),edit:(e,t)=>["remove","add"].includes(t),tabRemove:e=>cp(e),tabAdd:()=>!0},iY=se({name:"ElTabs",props:rY,emits:lY,setup(e,{emit:t,slots:n,expose:a}){const o=fe("tabs"),s=w(()=>["left","right"].includes(e.tabPosition)),{children:r,addChild:l,removeChild:u,ChildrenSorter:c}=Qd(ft(),"ElTabPane"),d=M(),f=M((Tt(e.modelValue)?e.defaultValue:e.modelValue)??"0"),v=async(k,y=!1)=>{if(!(f.value===k||Tt(k)))try{let S;if(e.beforeLeave){const C=e.beforeLeave(k,f.value);S=C instanceof Promise?await C:C}else S=!0;if(S!==!1){const C=r.value.find(E=>E.paneName===f.value)?.isFocusInsidePane();f.value=k,y&&(t(at,k),t("tabChange",k)),d.value?.removeFocus?.(),C&&d.value?.focusActiveTab()}}catch{}},g=(k,y,S)=>{k.props.disabled||(t("tabClick",k,S),v(y,!0))},p=(k,y)=>{k.props.disabled||Tt(k.props.name)||(y.stopPropagation(),t("edit",k.props.name,"remove"),t("tabRemove",k.props.name))},h=()=>{t("edit",void 0,"add"),t("tabAdd")},m=k=>{const y=jt(k);[we.enter,we.numpadEnter].includes(y)&&h()},b=k=>{const y=k.el.firstChild,S=["bottom","right"].includes(e.tabPosition)?k.children[0].el:k.children[1].el;y!==S&&y.before(S)};return le(()=>e.modelValue,k=>v(k)),le(f,async()=>{await Re(),d.value?.scrollToActiveTab()}),St(df,{props:e,currentName:f,registerPane:l,unregisterPane:u,nav$:d}),a({currentName:f,get tabNavRef(){return tu(d.value,["scheduleRender"])}}),()=>{const k=n["add-icon"],y=e.editable||e.addable?Y("div",{class:[o.e("new-tab"),s.value&&o.e("new-tab-vertical")],tabindex:e.tabindex,onClick:h,onKeydown:m},[k?ee(n,"add-icon"):Y(De,{class:o.is("icon-plus")},{default:()=>[Y(FC,null,null)]})]):null,S=()=>Y(sY,{ref:d,currentName:f.value,editable:e.editable,type:e.type,panes:r.value,stretch:e.stretch,onTabClick:g,onTabRemove:p},null),C=Y("div",{class:[o.e("header"),s.value&&o.e("header-vertical"),o.is(e.tabPosition)]},[Y(c,null,{default:S,$stable:!0}),y]),E=Y("div",{class:o.e("content")},[ee(n,"default")]);return Y("div",{class:[o.b(),o.m(e.tabPosition),{[o.m("card")]:e.type==="card",[o.m("border-card")]:e.type==="border-card"}],onVnodeMounted:b,onVnodeUpdated:b},[E,C])}}}),uY=Ce({label:{type:String,default:""},name:{type:[String,Number]},closable:{type:Boolean,default:void 0},disabled:Boolean,lazy:Boolean}),cY=["id","aria-hidden","aria-labelledby"],z0="ElTabPane";var dY=se({name:z0,__name:"tab-pane",props:uY,setup(e){const t=e,n=ft(),a=vn(),o=_e(df);o||nn(z0,"usage: ");const s=fe("tab-pane"),r=M(),l=M(),u=w(()=>t.closable??o.props.closable),c=w(()=>o.currentName.value===(t.name??l.value)),d=M(c.value),f=w(()=>t.name??l.value),v=w(()=>!t.lazy||d.value||c.value),g=()=>r.value?.contains(document.activeElement);le(c,h=>{h&&(d.value=!0)});const p=At({uid:n.uid,getVnode:()=>n.vnode,slots:a,props:t,paneName:f,active:c,index:l,isClosable:u,isFocusInsidePane:g});return o.registerPane(p),Bt(()=>{o.unregisterPane(p)}),rv(()=>{a.label&&o.nav$.value?.scheduleRender()}),(h,m)=>v.value?ut((x(),B("div",{key:0,id:`pane-${f.value}`,ref_key:"paneRef",ref:r,class:T(i(s).b()),role:"tabpanel","aria-hidden":!c.value,"aria-labelledby":`tab-${f.value}`},[ee(h.$slots,"default")],10,cY)),[[Pt,c.value]]):te("v-if",!0)}}),_E=dY;const fY=rt(iY,{TabPane:_E}),pY=an(_E),hY=Ce({type:{type:String,values:["primary","success","info","warning","danger",""],default:""},size:{type:String,values:lo,default:""},truncated:Boolean,lineClamp:{type:[String,Number]},tag:{type:String,default:"span"}});var vY=se({name:"ElText",__name:"text",props:hY,setup(e){const t=e,n=M(),a=Cn(),o=fe("text"),s=w(()=>[o.b(),o.m(t.type),o.m(a.value),o.is("truncated",t.truncated),o.is("line-clamp",!Tt(t.lineClamp))]),r=()=>{if(fs().title)return;let l=!1;const u=n.value?.textContent||"";if(t.truncated){const c=n.value?.offsetWidth,d=n.value?.scrollWidth;c&&d&&d>c&&(l=!0)}else if(!Tt(t.lineClamp)){const c=n.value?.offsetHeight,d=n.value?.scrollHeight;c&&d&&d>c&&(l=!0)}l?n.value?.setAttribute("title",u):n.value?.removeAttribute("title")};return ht(r),ro(r),(l,u)=>(x(),oe(it(e.tag),{ref_key:"textRef",ref:n,class:T(s.value),style:Ke({"-webkit-line-clamp":e.lineClamp})},{default:J(()=>[ee(l.$slots,"default")]),_:3},8,["class","style"]))}}),mY=vY;const Um=rt(mY),Rh="00:30",gY=Ce({format:{type:String,default:"HH:mm"},modelValue:{type:G(String)},disabled:{type:Boolean,default:void 0},editable:{type:Boolean,default:!0},effect:{type:G(String),default:"light"},clearable:{type:Boolean,default:!0},size:Tn,placeholder:String,start:{type:String,default:"09:00"},end:{type:String,default:"18:00"},step:{type:String,default:Rh},minTime:{type:G(String)},maxTime:{type:G(String)},includeEndTime:Boolean,name:String,prefixIcon:{type:G([String,Object]),default:()=>BC},clearIcon:{type:G([String,Object]),default:()=>Vo},popperClass:{type:String,default:""},popperStyle:{type:G([String,Object])},...Pr}),Go=e=>{const t=(e||"").split(":");if(t.length>=2){let n=Number.parseInt(t[0],10);const a=Number.parseInt(t[1],10),o=e.toUpperCase();return o.includes("AM")&&n===12?n=0:o.includes("PM")&&n!==12&&(n+=12),{hours:n,minutes:a}}return null},dp=(e,t)=>{const n=Go(e);if(!n)return-1;const a=Go(t);if(!a)return-1;const o=n.minutes+n.hours*60,s=a.minutes+a.hours*60;return o===s?0:o>s?1:-1},H0=e=>`${e}`.padStart(2,"0"),Ur=e=>`${H0(e.hours)}:${H0(e.minutes)}`,bY=(e,t)=>{const n=Go(e);if(!n)return"";const a=Go(t);if(!a)return"";const o={hours:n.hours,minutes:n.minutes};return o.minutes+=a.minutes,o.hours+=a.hours,o.hours+=Math.floor(o.minutes/60),o.minutes=o.minutes%60,Ur(o)};var yY=se({name:"ElTimeSelect",__name:"time-select",props:gY,emits:[yt,"blur","focus","clear",at],setup(e,{expose:t}){st.extend(pm);const{Option:n}=Hs,a=e,o=fe("input"),s=M(),r=un(),{lang:l}=Ct(),u=w(()=>a.modelValue),c=w(()=>{const b=Go(a.start);return b?Ur(b):null}),d=w(()=>{const b=Go(a.end);return b?Ur(b):null}),f=w(()=>{const b=Go(a.minTime||"");return b?Ur(b):null}),v=w(()=>{const b=Go(a.maxTime||"");return b?Ur(b):null}),g=w(()=>{const b=Go(a.step),k=!b||b.hours<0||b.minutes<0||Number.isNaN(b.hours)||Number.isNaN(b.minutes)||b.hours===0&&b.minutes===0;return k&&pt("ElTimeSelect",`invalid step, fallback to default step (${Rh}).`),k?Rh:Ur(b)}),p=w(()=>{const b=[],k=(y,S)=>{b.push({value:y,rawValue:S,disabled:dp(S,f.value||"-1:-1")<=0||dp(S,v.value||"100:100")>=0})};if(a.start&&a.end&&a.step){let y=c.value,S;for(;y&&d.value&&dp(y,d.value)<=0;)S=st(y,"HH:mm").locale(l.value).format(a.format),k(S,y),y=bY(y,g.value);a.includeEndTime&&d.value&&b[b.length-1]?.rawValue!==d.value&&k(st(d.value,"HH:mm").locale(l.value).format(a.format),d.value)}return b});return t({blur:()=>{s.value?.blur?.()},focus:()=>{s.value?.focus?.()}}),(b,k)=>(x(),oe(i(Hs),{ref_key:"select",ref:s,name:e.name,"model-value":u.value,disabled:i(r),clearable:e.clearable,"clear-icon":e.clearIcon,size:e.size,effect:e.effect,placeholder:e.placeholder,"default-first-option":"",filterable:e.editable,"empty-values":e.emptyValues,"value-on-clear":e.valueOnClear,"popper-class":e.popperClass,"popper-style":e.popperStyle,"onUpdate:modelValue":k[0]||(k[0]=y=>b.$emit(i(at),y)),onChange:k[1]||(k[1]=y=>b.$emit(i(yt),y)),onBlur:k[2]||(k[2]=y=>b.$emit("blur",y)),onFocus:k[3]||(k[3]=y=>b.$emit("focus",y)),onClear:k[4]||(k[4]=()=>b.$emit("clear"))},{prefix:J(()=>[e.prefixIcon?(x(),oe(i(De),{key:0,class:T(i(o).e("prefix-icon"))},{default:J(()=>[(x(),oe(it(e.prefixIcon)))]),_:1},8,["class"])):te("v-if",!0)]),default:J(()=>[(x(!0),B(Fe,null,gt(p.value,y=>(x(),oe(i(n),{key:y.value,label:y.value,value:y.value,disabled:y.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["name","model-value","disabled","clearable","clear-icon","size","effect","placeholder","filterable","empty-values","value-on-clear","popper-class","popper-style"]))}}),wY=yY;const SY=rt(wY),AE="timeline",CY=Ce({mode:{type:String,values:["start","alternate","alternate-reverse","end"],default:"start"},reverse:Boolean}),kY=se({name:"ElTimeline",props:CY,setup(e,{slots:t}){const n=fe("timeline");St(AE,{props:e,slots:t});const a=w(()=>[n.b(),n.is(e.mode)]);return()=>{const o=Ta(t.default?.()??[]);return Ye("ul",{class:a.value},e.reverse?o.reverse():o)}}}),EY=Ce({timestamp:{type:String,default:""},hideTimestamp:Boolean,center:Boolean,placement:{type:String,values:["top","bottom"],default:"bottom"},type:{type:String,values:["primary","success","warning","danger","info"],default:""},color:{type:String,default:""},size:{type:String,values:["normal","large"],default:"normal"},icon:{type:Kt},hollow:Boolean});var xY=se({name:"ElTimelineItem",__name:"timeline-item",props:EY,setup(e){const t=e,{props:n}=_e(AE),a=fe("timeline-item"),o=w(()=>[a.e("node"),a.em("node",t.size||""),a.em("node",t.type||""),a.is("hollow",t.hollow)]),s=w(()=>[a.b(),{[a.e("center")]:t.center},a.is(n.mode)]);return(r,l)=>(x(),B("li",{class:T(s.value)},[z("div",{class:T(i(a).e("tail"))},null,2),r.$slots.dot?te("v-if",!0):(x(),B("div",{key:0,class:T(o.value),style:Ke({backgroundColor:e.color})},[e.icon?(x(),oe(i(De),{key:0,class:T(i(a).e("icon"))},{default:J(()=>[(x(),oe(it(e.icon)))]),_:1},8,["class"])):te("v-if",!0)],6)),r.$slots.dot?(x(),B("div",{key:1,class:T(i(a).e("dot"))},[ee(r.$slots,"dot")],2)):te("v-if",!0),z("div",{class:T(i(a).e("wrapper"))},[!e.hideTimestamp&&e.placement==="top"?(x(),B("div",{key:0,class:T([i(a).e("timestamp"),i(a).is("top")])},Se(e.timestamp),3)):te("v-if",!0),z("div",{class:T(i(a).e("content"))},[ee(r.$slots,"default")],2),!e.hideTimestamp&&e.placement==="bottom"?(x(),B("div",{key:1,class:T([i(a).e("timestamp"),i(a).is("bottom")])},Se(e.timestamp),3)):te("v-if",!0)],2)],2))}}),LE=xY;const TY=rt(kY,{TimelineItem:LE}),$Y=an(LE),DE="left-check-change",BE="right-check-change",qr=Ce({data:{type:G(Array),default:()=>[]},titles:{type:G(Array),default:()=>[]},buttonTexts:{type:G(Array),default:()=>[]},filterPlaceholder:String,filterMethod:{type:G(Function)},leftDefaultChecked:{type:G(Array),default:()=>[]},rightDefaultChecked:{type:G(Array),default:()=>[]},renderContent:{type:G(Function)},modelValue:{type:G(Array),default:()=>[]},format:{type:G(Object),default:()=>({})},filterable:Boolean,props:{type:G(Object),default:()=>rn({label:"label",key:"key",disabled:"disabled"})},targetOrder:{type:String,values:["original","push","unshift"],default:"original"},validateEvent:{type:Boolean,default:!0}}),Nh=(e,t)=>[e,t].every(ye)||ye(e)&&bn(t),OY={[yt]:(e,t,n)=>[e,n].every(ye)&&["left","right"].includes(t),[at]:e=>ye(e),[DE]:Nh,[BE]:Nh},Cu=e=>{const t={label:"label",key:"key",disabled:"disabled"};return w(()=>({...t,...e.props}))},RY=(e,t)=>({onSourceCheckedChange:(o,s)=>{e.leftChecked=o,s&&t(DE,o,s)},onTargetCheckedChange:(o,s)=>{e.rightChecked=o,s&&t(BE,o,s)}}),NY=e=>{const t=Cu(e),n=w(()=>e.data.reduce((a,o)=>(a[o[t.value.key]]=o)&&a,{}));return{sourceData:w(()=>e.data.filter(a=>!e.modelValue.includes(a[t.value.key]))),targetData:w(()=>e.targetOrder==="original"?e.data.filter(a=>e.modelValue.includes(a[t.value.key])):e.modelValue.reduce((a,o)=>{const s=n.value[o];return s&&a.push(s),a},[]))}},IY=(e,t,n)=>{const a=Cu(e),o=(l,u,c)=>{n(at,l),n(yt,l,u,c)};return{addToLeft:()=>{const l=e.modelValue.slice();t.rightChecked.forEach(u=>{const c=l.indexOf(u);c>-1&&l.splice(c,1)}),o(l,"left",t.rightChecked)},addToRight:()=>{let l=e.modelValue.slice();const u=e.data.filter(c=>{const d=c[a.value.key];return t.leftChecked.includes(d)&&!e.modelValue.includes(d)}).map(c=>c[a.value.key]);l=e.targetOrder==="unshift"?u.concat(l):l.concat(u),e.targetOrder==="original"&&(l=e.data.filter(c=>l.includes(c[a.value.key])).map(c=>c[a.value.key])),o(l,"right",t.leftChecked)}}},Ih="checked-change",PY=Ce({data:qr.data,optionRender:{type:G(Function)},placeholder:String,title:String,filterable:Boolean,format:qr.format,filterMethod:qr.filterMethod,defaultChecked:qr.leftDefaultChecked,props:qr.props}),MY={[Ih]:Nh},_Y=(e,t,n)=>{const a=Cu(e),o=w(()=>e.data.filter(d=>Ve(e.filterMethod)?e.filterMethod(t.query,d):String(d[a.value.label]||d[a.value.key]).toLowerCase().includes(t.query.toLowerCase()))),s=w(()=>o.value.filter(d=>!d[a.value.disabled])),r=w(()=>{const d=t.checked.length,f=e.data.length,{noChecked:v,hasChecked:g}=e.format;return v&&g?d>0?g.replace(/\${checked}/g,d.toString()).replace(/\${total}/g,f.toString()):v.replace(/\${total}/g,f.toString()):`${d}/${f}`}),l=w(()=>{const d=t.checked.length;return d>0&&d{const d=s.value.map(f=>f[a.value.key]);t.allChecked=d.length>0&&d.every(f=>t.checked.includes(f))},c=d=>{t.checked=d?s.value.map(f=>f[a.value.key]):[]};return le(()=>t.checked,(d,f)=>{u(),t.checkChangeByUser?n(Ih,d,d.concat(f).filter(v=>!d.includes(v)||!f.includes(v))):(n(Ih,d),t.checkChangeByUser=!0)}),le(s,()=>{u()}),le(()=>e.data,()=>{const d=[],f=o.value.map(v=>v[a.value.key]);t.checked.forEach(v=>{f.includes(v)&&d.push(v)}),t.checkChangeByUser=!1,t.checked=d}),le(()=>e.defaultChecked,(d,f)=>{if(f&&d.length===f.length&&d.every(p=>f.includes(p)))return;const v=[],g=s.value.map(p=>p[a.value.key]);d.forEach(p=>{g.includes(p)&&v.push(p)}),t.checkChangeByUser=!1,t.checked=v},{immediate:!0}),{filteredData:o,checkableData:s,checkedSummary:r,isIndeterminate:l,updateAllChecked:u,handleAllCheckedChange:c}};var AY=se({name:"ElTransferPanel",__name:"transfer-panel",props:PY,emits:MY,setup(e,{expose:t,emit:n}){const a=e,o=n,s=vn(),r=({option:S})=>S,{t:l}=Ct(),u=fe("transfer"),c=At({checked:[],allChecked:!1,query:"",checkChangeByUser:!0}),d=Cu(a),{filteredData:f,checkedSummary:v,isIndeterminate:g,handleAllCheckedChange:p}=_Y(a,c,o),h=w(()=>!ia(c.query)&&ia(f.value)),m=w(()=>!ia(s.default()[0].children)),{checked:b,allChecked:k,query:y}=Mn(c);return t({query:y}),(S,C)=>(x(),B("div",{class:T(i(u).b("panel"))},[z("p",{class:T(i(u).be("panel","header"))},[Y(i(so),{modelValue:i(k),"onUpdate:modelValue":C[0]||(C[0]=E=>Jt(k)?k.value=E:null),indeterminate:i(g),"validate-event":!1,onChange:i(p)},{default:J(()=>[z("span",{class:T(i(u).be("panel","header-title"))},Se(e.title),3),z("span",{class:T(i(u).be("panel","header-count"))},Se(i(v)),3)]),_:1},8,["modelValue","indeterminate","onChange"])],2),z("div",{class:T([i(u).be("panel","body"),i(u).is("with-footer",m.value)])},[e.filterable?(x(),oe(i(ea),{key:0,modelValue:i(y),"onUpdate:modelValue":C[1]||(C[1]=E=>Jt(y)?y.value=E:null),class:T(i(u).be("panel","filter")),size:"default",placeholder:e.placeholder,"prefix-icon":i(P3),clearable:"","validate-event":!1},null,8,["modelValue","class","placeholder","prefix-icon"])):te("v-if",!0),ut(Y(i(gm),{modelValue:i(b),"onUpdate:modelValue":C[2]||(C[2]=E=>Jt(b)?b.value=E:null),"validate-event":!1,class:T([i(u).is("filterable",e.filterable),i(u).be("panel","list")])},{default:J(()=>[(x(!0),B(Fe,null,gt(i(f),E=>(x(),oe(i(so),{key:E[i(d).key],class:T(i(u).be("panel","item")),value:E[i(d).key],disabled:E[i(d).disabled],"validate-event":!1},{default:J(()=>[Y(r,{option:e.optionRender?.(E)},null,8,["option"])]),_:2},1032,["class","value","disabled"]))),128))]),_:1},8,["modelValue","class"]),[[Pt,!h.value&&!i(ia)(e.data)]]),ut(z("div",{class:T(i(u).be("panel","empty"))},[ee(S.$slots,"empty",{},()=>[wt(Se(h.value?i(l)("el.transfer.noMatch"):i(l)("el.transfer.noData")),1)])],2),[[Pt,h.value||i(ia)(e.data)]])],2),m.value?(x(),B("p",{key:0,class:T(i(u).be("panel","footer"))},[ee(S.$slots,"default")],2)):te("v-if",!0)],2))}}),K0=AY;const LY={key:0},DY={key:0};var BY=se({name:"ElTransfer",__name:"transfer",props:qr,emits:OY,setup(e,{expose:t,emit:n}){const a=e,o=n,s=vn(),{t:r}=Ct(),l=fe("transfer"),{formItem:u}=Dn(),c=At({leftChecked:[],rightChecked:[]}),d=Cu(a),{sourceData:f,targetData:v}=NY(a),{onSourceCheckedChange:g,onTargetCheckedChange:p}=RY(c,o),{addToLeft:h,addToRight:m}=IY(a,c,o),b=M(),k=M(),y=N=>{switch(N){case"left":b.value.query="";break;case"right":k.value.query="";break}},S=w(()=>a.buttonTexts.length===2),C=w(()=>a.titles[0]||r("el.transfer.titles.0")),E=w(()=>a.titles[1]||r("el.transfer.titles.1")),$=w(()=>a.filterPlaceholder||r("el.transfer.filterPlaceholder"));le(()=>a.modelValue,()=>{a.validateEvent&&u?.validate?.("change").catch(N=>pt(N))});const O=w(()=>N=>{if(a.renderContent)return a.renderContent(Ye,N);const R=(s.default?.({option:N})||[]).filter(A=>A.type!==gn);return R.length?R:Ye("span",N[d.value.label]||N[d.value.key])});return t({clearQuery:y,leftPanel:b,rightPanel:k}),(N,R)=>(x(),B("div",{class:T(i(l).b())},[Y(K0,{ref_key:"leftPanel",ref:b,data:i(f),"option-render":O.value,placeholder:$.value,title:C.value,filterable:e.filterable,format:e.format,"filter-method":e.filterMethod,"default-checked":e.leftDefaultChecked,props:a.props,onCheckedChange:i(g)},{empty:J(()=>[ee(N.$slots,"left-empty")]),default:J(()=>[ee(N.$slots,"left-footer")]),_:3},8,["data","option-render","placeholder","title","filterable","format","filter-method","default-checked","props","onCheckedChange"]),z("div",{class:T(i(l).e("buttons"))},[Y(i(In),{type:"primary",class:T([i(l).e("button"),i(l).is("with-texts",S.value)]),disabled:i(ia)(c.rightChecked),onClick:i(h)},{default:J(()=>[Y(i(De),null,{default:J(()=>[Y(i(is))]),_:1}),i(Tt)(e.buttonTexts[0])?te("v-if",!0):(x(),B("span",LY,Se(e.buttonTexts[0]),1))]),_:1},8,["class","disabled","onClick"]),Y(i(In),{type:"primary",class:T([i(l).e("button"),i(l).is("with-texts",S.value)]),disabled:i(ia)(c.leftChecked),onClick:i(m)},{default:J(()=>[i(Tt)(e.buttonTexts[1])?te("v-if",!0):(x(),B("span",DY,Se(e.buttonTexts[1]),1)),Y(i(De),null,{default:J(()=>[Y(i(na))]),_:1})]),_:1},8,["class","disabled","onClick"])],2),Y(K0,{ref_key:"rightPanel",ref:k,data:i(v),"option-render":O.value,placeholder:$.value,filterable:e.filterable,format:e.format,"filter-method":e.filterMethod,title:E.value,"default-checked":e.rightDefaultChecked,props:a.props,onCheckedChange:i(p)},{empty:J(()=>[ee(N.$slots,"right-empty")]),default:J(()=>[ee(N.$slots,"right-footer")]),_:3},8,["data","option-render","placeholder","filterable","format","filter-method","title","default-checked","props","onCheckedChange"])],2))}}),FY=BY;const VY=rt(FY),qm="RootTree",FE="NodeInstance",W0="TreeNodeMap",VE=Ce({data:{type:G(Array),default:()=>[]},emptyText:{type:String},renderAfterExpand:{type:Boolean,default:!0},nodeKey:String,checkStrictly:Boolean,defaultExpandAll:Boolean,expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},checkDescendants:Boolean,autoExpandParent:{type:Boolean,default:!0},defaultCheckedKeys:{type:Array},defaultExpandedKeys:{type:Array},currentNodeKey:{type:[String,Number]},renderContent:{type:G(Function)},showCheckbox:Boolean,draggable:Boolean,allowDrag:{type:G(Function)},allowDrop:{type:G(Function)},props:{type:Object,default:()=>({children:"children",label:"label",disabled:"disabled"})},lazy:Boolean,highlightCurrent:Boolean,load:{type:Function},filterNodeMethod:{type:Function},accordion:Boolean,indent:{type:Number,default:18},icon:{type:Kt}}),zY={"check-change":(e,t,n)=>e&&Ht(t)&&Ht(n),"current-change":(e,t)=>!0,"node-click":(e,t,n,a)=>e&&t&&a instanceof Event,"node-contextmenu":(e,t,n,a)=>e instanceof Event&&t&&n,"node-collapse":(e,t,n)=>e&&t,"node-expand":(e,t,n)=>e&&t,check:(e,t)=>e&&t,"node-drag-start":(e,t)=>e&&t,"node-drag-end":(e,t,n,a)=>e&&a,"node-drop":(e,t,n,a)=>e&&t&&a,"node-drag-leave":(e,t,n)=>e&&t&&n,"node-drag-enter":(e,t,n)=>e&&t&&n,"node-drag-over":(e,t,n)=>e&&t&&n},sl="$treeNodeId",j0=function(e,t){!t||t[sl]||Object.defineProperty(t,sl,{value:e.id,enumerable:!1,configurable:!1,writable:!1})},Ym=(e,t)=>t?.[e||sl],Ph=(e,t,n)=>{const a=e.value.currentNode;n();const o=e.value.currentNode;a!==o&&t("current-change",o?o.data:null,o)},zE=e=>{let t=!0,n=!0,a=!0,o=!0;for(let s=0,r=e.length;s{n.canFocus=t,Mh(n.childNodes,t)})};let HY=0;var _h=class Ic{constructor(t){this.isLeafByUser=void 0,this.isLeaf=void 0,this.isEffectivelyChecked=!1,this.id=HY++,this.text=null,this.checked=!1,this.indeterminate=!1,this.data=null,this.expanded=!1,this.parent=null,this.visible=!0,this.isCurrent=!1,this.canFocus=!1;for(const n in t)Nt(t,n)&&(this[n]=t[n]);this.level=0,this.loaded=!1,this.childNodes=[],this.loading=!1,this.parent&&(this.level=this.parent.level+1)}initialize(){const t=this.store;if(!t)throw new Error("[Node]store is required!");t.registerNode(this);const n=t.props;if(n&&typeof n.isLeaf<"u"){const s=Qu(this,"isLeaf");Ht(s)&&(this.isLeafByUser=s)}if(t.lazy!==!0&&this.data?(this.setData(this.data),t.defaultExpandAll&&(this.expanded=!0,this.canFocus=!0)):this.level>0&&t.lazy&&t.defaultExpandAll&&!this.isLeafByUser&&this.expand(),ye(this.data)||j0(this,this.data),!this.data)return;const a=t.defaultExpandedKeys,o=t.key;o&&!bn(this.key)&&a&&a.includes(this.key)&&this.expand(null,t.autoExpandParent),o&&t.currentNodeKey!==void 0&&this.key===t.currentNodeKey&&(t.currentNode&&(t.currentNode.isCurrent=!1),t.currentNode=this,t.currentNode.isCurrent=!0),t.lazy&&t._initDefaultCheckedNode(this),this.updateLeafState(),(this.level===1||this.parent?.expanded===!0)&&(this.canFocus=!0)}setData(t){ye(t)||j0(this,t),this.data=t,this.childNodes=[];let n;this.level===0&&ye(this.data)?n=this.data:n=Qu(this,"children")||[];for(let a=0,o=n.length;a-1)return t.childNodes[n+1]}return null}get previousSibling(){const t=this.parent;if(t){const n=t.childNodes.indexOf(this);if(n>-1)return n>0?t.childNodes[n-1]:null}return null}contains(t,n=!0){return(this.childNodes||[]).some(a=>a===t||n&&a.contains(t))}remove(){const t=this.parent;t&&t.removeChild(this)}insertChild(t,n,a){if(!t)throw new Error("InsertChild error: child is required.");if(!(t instanceof Ic)){if(!a){const o=this.getChildren(!0);o?.includes(t.data)||(Tt(n)||n<0?o?.push(t.data):o?.splice(n,0,t.data))}Object.assign(t,{parent:this,store:this.store}),t=At(new Ic(t)),t instanceof Ic&&t.initialize()}t.level=this.level+1,Tt(n)||n<0?this.childNodes.push(t):this.childNodes.splice(n,0,t),this.updateLeafState()}insertBefore(t,n){let a;n&&(a=this.childNodes.indexOf(n)),this.insertChild(t,a)}insertAfter(t,n){let a;n&&(a=this.childNodes.indexOf(n),a!==-1&&(a+=1)),this.insertChild(t,a)}removeChild(t){const n=this.getChildren()||[],a=n.indexOf(t.data);a>-1&&n.splice(a,1);const o=this.childNodes.indexOf(t);o>-1&&(this.store&&this.store.deregisterNode(t),t.parent=null,this.childNodes.splice(o,1)),this.updateLeafState()}removeChildByData(t){const n=this.childNodes.find(a=>a.data===t);n&&this.removeChild(n)}expand(t,n){const a=()=>{if(n){let o=this.parent;for(;o&&o.level>0;)o.expanded=!0,o=o.parent}this.expanded=!0,t&&t(),Mh(this.childNodes,!0)};this.shouldLoadData()?this.loadData(o=>{ye(o)&&(this.checked?this.setChecked(!0,!0):this.store.checkStrictly||Zl(this),a())}):a()}doCreateChildren(t,n={}){t.forEach(a=>{this.insertChild(Object.assign({data:a},n),void 0,!0)})}collapse(){this.expanded=!1,Mh(this.childNodes,!1)}shouldLoadData(){return!!(this.store.lazy===!0&&this.store.load&&!this.loaded)}updateLeafState(){if(this.store.lazy===!0&&this.loaded!==!0&&typeof this.isLeafByUser<"u"){this.isLeaf=this.isLeafByUser,this.isEffectivelyChecked=this.isLeaf&&this.disabled;return}const t=this.childNodes;if(!this.store.lazy||this.store.lazy===!0&&this.loaded===!0){this.isLeaf=!t||t.length===0,this.isEffectivelyChecked=this.isLeaf&&this.disabled;return}this.isLeaf=!1}setChecked(t,n,a,o){if(this.indeterminate=t==="half",this.checked=t===!0,this.isEffectivelyChecked=!this.childNodes.length&&(this.disabled||this.checked),this.store.checkStrictly)return;if(!(this.shouldLoadData()&&!this.store.checkDescendants)){const r=()=>{if(n){const l=this.childNodes;for(let f=0,v=l.length;f{r(),Zl(this)},{checked:t!==!1});return}else r()}const s=this.parent;!s||s.level===0||a||Zl(s)}getChildren(t=!1){if(this.level===0)return this.data;const n=this.data;if(!n)return null;const a=this.store.props;let o="children";return a&&(o=a.children||"children"),Tt(n[o])&&(n[o]=null),t&&!n[o]&&(n[o]=[]),n[o]}updateChildren(){const t=this.getChildren()||[],n=this.childNodes.map(s=>s.data),a={},o=[];t.forEach((s,r)=>{const l=s[sl];l&&n.some(u=>u?.[sl]===l)?a[l]={index:r,data:s}:o.push({index:r,data:s})}),this.store.lazy||n.forEach(s=>{a[s?.[sl]]||this.removeChildByData(s)}),o.forEach(({index:s,data:r})=>{this.insertChild({data:r},s)}),this.updateLeafState()}loadData(t,n={}){if(this.store.lazy===!0&&this.store.load&&!this.loaded&&(!this.loading||Object.keys(n).length)){this.loading=!0;const a=s=>{this.childNodes=[],this.doCreateChildren(s,n),this.loaded=!0,this.loading=!1,this.updateLeafState(),t&&t.call(this,s)},o=()=>{this.loading=!1};this.store.load(this,a,o)}else t&&t.call(this)}eachNode(t){const n=[this];for(;n.length;){const a=n.shift();n.unshift(...a.childNodes),t(a)}}reInitChecked(){this.store.checkStrictly||Zl(this)}},KY=class{constructor(e){this.lazy=!1,this.checkStrictly=!1,this.autoExpandParent=!1,this.defaultExpandAll=!1,this.checkDescendants=!1,this.currentNode=null,this.currentNodeKey=null;for(const t in e)Nt(e,t)&&(this[t]=e[t]);this.nodesMap={}}initialize(){if(this.root=new _h({data:this.data,store:this}),this.root.initialize(),this.lazy&&this.load){const e=this.load;e(this.root,t=>{this.root.doCreateChildren(t),this._initDefaultCheckedNodes()},Dt)}else this._initDefaultCheckedNodes()}filter(e){const t=this.filterNodeMethod,n=this.lazy,a=async function(o){const s=o.root?o.root.childNodes:o.childNodes;for(const[r,l]of s.entries())l.visible=!!t?.call(l,e,l.data,l),r%80===0&&r>0&&await Re(),await a(l);if(!o.visible&&s.length){let r=!0;r=!s.some(l=>l.visible),o.root?o.root.visible=r===!1:o.visible=r===!1}e&&o.visible&&!o.isLeaf&&(!n||o.loaded)&&o.expand()};a(this)}setData(e){e!==this.root.data?(this.nodesMap={},this.root.setData(e),this._initDefaultCheckedNodes(),this.setCurrentNodeKey(this.currentNodeKey)):this.root.updateChildren()}getNode(e){if(e instanceof _h)return e;const t=ot(e)?Ym(this.key,e):e;return this.nodesMap[t]||null}insertBefore(e,t){const n=this.getNode(t);n.parent?.insertBefore({data:e},n)}insertAfter(e,t){const n=this.getNode(t);n.parent?.insertAfter({data:e},n)}remove(e){const t=this.getNode(e);t&&t.parent&&(t===this.currentNode&&(this.currentNode=null),t.parent.removeChild(t))}append(e,t){const n=va(t)?this.root:this.getNode(t);n&&n.insertChild({data:e})}_initDefaultCheckedNodes(){const e=this.defaultCheckedKeys||[],t=this.nodesMap;e.forEach(n=>{const a=t[n];a&&a.setChecked(!0,!this.checkStrictly)})}_initDefaultCheckedNode(e){const t=this.defaultCheckedKeys||[];!bn(e.key)&&t.includes(e.key)&&e.setChecked(!0,!this.checkStrictly)}setDefaultCheckedKey(e){e!==this.defaultCheckedKeys&&(this.defaultCheckedKeys=e,this._initDefaultCheckedNodes())}registerNode(e){const t=this.key;if(!(!e||!e.data))if(!t)this.nodesMap[e.id]=e;else{const n=e.key;bn(n)||(this.nodesMap[n]=e)}}deregisterNode(e){!this.key||!e||!e.data||(e.childNodes.forEach(t=>{this.deregisterNode(t)}),delete this.nodesMap[e.key])}getCheckedNodes(e=!1,t=!1){const n=[],a=function(o){(o.root?o.root.childNodes:o.childNodes).forEach(s=>{(s.checked||t&&s.indeterminate)&&(!e||e&&s.isLeaf)&&n.push(s.data),a(s)})};return a(this),n}getCheckedKeys(e=!1){return this.getCheckedNodes(e).map(t=>(t||{})[this.key])}getHalfCheckedNodes(){const e=[],t=function(n){(n.root?n.root.childNodes:n.childNodes).forEach(a=>{a.indeterminate&&e.push(a.data),t(a)})};return t(this),e}getHalfCheckedKeys(){return this.getHalfCheckedNodes().map(e=>(e||{})[this.key])}_getAllNodes(){const e=[],t=this.nodesMap;for(const n in t)Nt(t,n)&&e.push(t[n]);return e}updateChildren(e,t){const n=this.nodesMap[e];if(!n)return;const a=n.childNodes;for(let o=a.length-1;o>=0;o--){const s=a[o];this.remove(s.data)}for(let o=0,s=t.length;ol.level-u.level),o=Object.create(null),s=Object.keys(n);a.forEach(l=>l.setChecked(!1,!1));const r=l=>{l.childNodes.forEach(u=>{o[u.data[e]]=!0,u.childNodes?.length&&r(u)})};for(let l=0,u=a.length;l{g.isLeaf||g.setChecked(!1,!1,!0),f(g)}),v.reInitChecked()};f(c)}}}setCheckedNodes(e,t=!1){const n=this.key,a={};e.forEach(o=>{a[(o||{})[n]]=!0}),this._setCheckedKeys(n,t,a)}setCheckedKeys(e,t=!1){this.defaultCheckedKeys=e;const n=this.key,a={};e.forEach(o=>{a[o]=!0}),this._setCheckedKeys(n,t,a)}setDefaultExpandedKeys(e){e=e||[],this.defaultExpandedKeys=e,e.forEach(t=>{const n=this.getNode(t);n&&n.expand(null,this.autoExpandParent)})}setChecked(e,t,n){const a=this.getNode(e);a&&a.setChecked(!!t,n)}getCurrentNode(){return this.currentNode}setCurrentNode(e){const t=this.currentNode;t&&(t.isCurrent=!1),this.currentNode=e,this.currentNode.isCurrent=!0}setUserCurrentNode(e,t=!0){const n=e[this.key],a=this.nodesMap[n];this.setCurrentNode(a),t&&this.currentNode&&this.currentNode.level>1&&this.currentNode.parent?.expand(null,!0)}setCurrentNodeKey(e,t=!0){if(this.currentNodeKey=e,va(e)){this.currentNode&&(this.currentNode.isCurrent=!1),this.currentNode=null;return}const n=this.getNode(e);n&&(this.setCurrentNode(n),t&&this.currentNode&&this.currentNode.level>1&&this.currentNode.parent?.expand(null,!0))}};function HE(e){const t=_e(W0,null);let n={treeNodeExpand:a=>{e.node!==a&&e.node?.collapse()},children:new Set};return t&&t.children.add(n),Bt(()=>{t&&t.children.delete(n),n=null}),St(W0,n),{broadcastExpanded:a=>{if(e.accordion)for(const o of n.children)o.treeNodeExpand(a)}}}const KE=Symbol("dragEvents");function WY({props:e,ctx:t,el$:n,dropIndicator$:a,store:o}){const s=fe("tree"),r=M({showDropIndicator:!1,draggingNode:null,dropNode:null,allowDrop:!0,dropType:null});return St(KE,{treeNodeDragStart:({event:d,treeNode:f})=>{if(d.dataTransfer){if(Ve(e.allowDrag)&&!e.allowDrag(f.node))return d.preventDefault(),!1;d.dataTransfer.effectAllowed="move";try{d.dataTransfer.setData("text/plain","")}catch{}r.value.draggingNode=f,t.emit("node-drag-start",f.node,d)}},treeNodeDragOver:({event:d,treeNode:f})=>{if(!d.dataTransfer)return;const v=f,g=r.value.dropNode;g&&g.node.id!==v.node.id&&ta(g.$el,s.is("drop-inner"));const p=r.value.draggingNode;if(!p||!v)return;let h=!0,m=!0,b=!0,k=!0;Ve(e.allowDrop)&&(h=e.allowDrop(p.node,v.node,"prev"),k=m=e.allowDrop(p.node,v.node,"inner"),b=e.allowDrop(p.node,v.node,"next")),d.dataTransfer.dropEffect=m||h||b?"move":"none",(h||m||b)&&g?.node.id!==v.node.id&&(g&&t.emit("node-drag-leave",p.node,g.node,d),t.emit("node-drag-enter",p.node,v.node,d)),h||m||b?r.value.dropNode=v:r.value.dropNode=null,v.node.nextSibling===p.node&&(b=!1),v.node.previousSibling===p.node&&(h=!1),v.node.contains(p.node,!1)&&(m=!1),(p.node===v.node||p.node.contains(v.node))&&(h=!1,m=!1,b=!1);const y=v.$el,S=y.querySelector(`.${s.be("node","content")}`).getBoundingClientRect(),C=n.value.getBoundingClientRect(),E=n.value.scrollTop;let $;const O=h?m?.25:b?.45:1:Number.NEGATIVE_INFINITY,N=b?m?.75:h?.55:0:Number.POSITIVE_INFINITY;let R=-9999;const A=d.clientY-S.top;AS.height*N?$="after":m?$="inner":$="none";const _=y.querySelector(`.${s.be("node","expand-icon")}`).getBoundingClientRect(),V=a.value;$==="before"?R=_.top-C.top+E:$==="after"&&(R=_.bottom-C.top+E),V.style.top=`${R}px`,V.style.left=`${_.right-C.left}px`,$==="inner"?La(y,s.is("drop-inner")):ta(y,s.is("drop-inner")),r.value.showDropIndicator=$==="before"||$==="after",r.value.allowDrop=r.value.showDropIndicator||k,r.value.dropType=$,t.emit("node-drag-over",p.node,v.node,d)},treeNodeDragEnd:d=>{const{draggingNode:f,dropType:v,dropNode:g}=r.value;if(d.preventDefault(),d.dataTransfer&&(d.dataTransfer.dropEffect="move"),f?.node.data&&g){const p={data:f.node.data};v!=="none"&&f.node.remove(),v==="before"?g.node.parent?.insertBefore(p,g.node):v==="after"?g.node.parent?.insertAfter(p,g.node):v==="inner"&&g.node.insertChild(p),v!=="none"&&(o.value.registerNode(p),o.value.key&&f.node.eachNode(h=>{o.value.nodesMap[h.data[o.value.key]]?.setChecked(h.checked,!o.value.checkStrictly)})),ta(g.$el,s.is("drop-inner")),t.emit("node-drag-end",f.node,g.node,v,d),v!=="none"&&t.emit("node-drop",f.node,g.node,v,d)}f&&!g&&t.emit("node-drag-end",f.node,null,v,d),r.value.showDropIndicator=!1,r.value.draggingNode=null,r.value.dropNode=null,r.value.allowDrop=!0}}),{dragState:r}}var jY=se({name:"ElTreeNodeContent",props:{node:{type:Object,required:!0},renderContent:Function},setup(e){const t=fe("tree"),n=_e(FE),a=_e(qm);return()=>{const o=e.node,{data:s,store:r}=o;return e.renderContent?e.renderContent(Ye,{_self:n,node:o,data:s,store:r}):ee(a.ctx.slots,"default",{node:o,data:s},()=>[Ye(Um,{tag:"span",truncated:!0,class:t.be("node","label")},()=>[o.label])])}}}),UY=jY,qY=se({name:"ElTreeNode",components:{ElCollapseTransition:rf,ElCheckbox:so,NodeContent:UY,ElIcon:De,Loading:Ao},props:{node:{type:_h,default:()=>({})},props:{type:Object,default:()=>({})},accordion:Boolean,renderContent:Function,renderAfterExpand:Boolean,showCheckbox:Boolean},emits:["node-expand"],setup(e,t){const n=fe("tree"),{broadcastExpanded:a}=HE(e),o=_e(qm),s=M(!1),r=M(!1),l=M(),u=M(),c=M(),d=_e(KE),f=ft();St(FE,f),o||pt("Tree","Can not find node's tree."),e.node.expanded&&(s.value=!0,r.value=!0);const v=o.props.props.children||"children";le(()=>{const N=e.node.data?.[v];return N&&[...N]},()=>{e.node.updateChildren()}),le(()=>e.node.indeterminate,N=>{h(e.node.checked,N)}),le(()=>e.node.checked,N=>{h(N,e.node.indeterminate)}),le(()=>e.node.childNodes.length,()=>e.node.reInitChecked()),le(()=>e.node.expanded,N=>{Re(()=>s.value=N),N&&(r.value=!0)});const g=N=>o.props.nodeKey?Ym(o.props.nodeKey,N.data):N.id,p=N=>{const R=e.props.class;if(!R)return{};let A;if(Ve(R)){const{data:_}=N;A=R(_,N)}else A=R;return Le(A)?{[A]:!0}:A},h=(N,R)=>{(l.value!==N||u.value!==R)&&o.ctx.emit("check-change",e.node.data,N,R),l.value=N,u.value=R},m=N=>{Ph(o.store,o.ctx.emit,()=>{if(o?.props?.nodeKey){const R=g(e.node);o.store.value.setCurrentNodeKey(R)}else o.store.value.setCurrentNode(e.node)}),o.currentNode.value=e.node,o.props.expandOnClickNode&&k(),(o.props.checkOnClickNode||e.node.isLeaf&&o.props.checkOnClickLeaf&&e.showCheckbox)&&!e.node.disabled&&y(!e.node.checked),o.ctx.emit("node-click",e.node.data,e.node,f,N)},b=N=>{o.instance.vnode.props?.onNodeContextmenu&&(N.stopPropagation(),N.preventDefault()),o.ctx.emit("node-contextmenu",N,e.node.data,e.node,f)},k=()=>{e.node.isLeaf||(s.value?(o.ctx.emit("node-collapse",e.node.data,e.node,f),e.node.collapse()):e.node.expand(()=>{t.emit("node-expand",e.node.data,e.node,f)}))},y=N=>{const R=o?.props.checkStrictly,A=e.node.childNodes;!R&&A.length&&(N=A.some(_=>!_.isEffectivelyChecked)),e.node.setChecked(N,!R),Re(()=>{const _=o.store.value;o.ctx.emit("check",e.node.data,{checkedNodes:_.getCheckedNodes(),checkedKeys:_.getCheckedKeys(),halfCheckedNodes:_.getHalfCheckedNodes(),halfCheckedKeys:_.getHalfCheckedKeys()})})};return{ns:n,node$:c,tree:o,expanded:s,childNodeRendered:r,oldChecked:l,oldIndeterminate:u,getNodeKey:g,getNodeClass:p,handleSelectChange:h,handleClick:m,handleContextMenu:b,handleExpandIconClick:k,handleCheckChange:y,handleChildNodeExpand:(N,R,A)=>{a(R),o.ctx.emit("node-expand",N,R,A)},handleDragStart:N=>{o.props.draggable&&d.treeNodeDragStart({event:N,treeNode:e})},handleDragOver:N=>{N.preventDefault(),o.props.draggable&&d.treeNodeDragOver({event:N,treeNode:{$el:c.value,node:e.node}})},handleDrop:N=>{N.preventDefault()},handleDragEnd:N=>{o.props.draggable&&d.treeNodeDragEnd(N)},CaretRight:DC}}});const YY=["aria-expanded","aria-disabled","aria-checked","draggable","data-key"],GY=["aria-expanded"];function XY(e,t,n,a,o,s){const r=It("el-icon"),l=It("el-checkbox"),u=It("loading"),c=It("node-content"),d=It("el-tree-node"),f=It("el-collapse-transition");return ut((x(),B("div",{ref:"node$",class:T([e.ns.b("node"),e.ns.is("expanded",e.expanded),e.ns.is("current",e.node.isCurrent),e.ns.is("hidden",!e.node.visible),e.ns.is("focusable",!e.node.disabled),e.ns.is("checked",!e.node.disabled&&e.node.checked),e.getNodeClass(e.node)]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.node.disabled,"aria-checked":e.node.checked,draggable:e.tree.props.draggable,"data-key":e.getNodeKey(e.node),onClick:t[2]||(t[2]=Xe((...v)=>e.handleClick&&e.handleClick(...v),["stop"])),onContextmenu:t[3]||(t[3]=(...v)=>e.handleContextMenu&&e.handleContextMenu(...v)),onDragstart:t[4]||(t[4]=Xe((...v)=>e.handleDragStart&&e.handleDragStart(...v),["stop"])),onDragover:t[5]||(t[5]=Xe((...v)=>e.handleDragOver&&e.handleDragOver(...v),["stop"])),onDragend:t[6]||(t[6]=Xe((...v)=>e.handleDragEnd&&e.handleDragEnd(...v),["stop"])),onDrop:t[7]||(t[7]=Xe((...v)=>e.handleDrop&&e.handleDrop(...v),["stop"]))},[z("div",{class:T(e.ns.be("node","content")),style:Ke({paddingLeft:(e.node.level-1)*e.tree.props.indent+"px"})},[e.tree.props.icon||e.CaretRight?(x(),oe(r,{key:0,class:T([e.ns.be("node","expand-icon"),e.ns.is("leaf",e.node.isLeaf),{expanded:!e.node.isLeaf&&e.expanded}]),onClick:Xe(e.handleExpandIconClick,["stop"])},{default:J(()=>[(x(),oe(it(e.tree.props.icon||e.CaretRight)))]),_:1},8,["class","onClick"])):te("v-if",!0),e.showCheckbox?(x(),oe(l,{key:1,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:!!e.node.disabled,onClick:t[0]||(t[0]=Xe(()=>{},["stop"])),onChange:e.handleCheckChange},null,8,["model-value","indeterminate","disabled","onChange"])):te("v-if",!0),e.node.loading?(x(),oe(r,{key:2,class:T([e.ns.be("node","loading-icon"),e.ns.is("loading")])},{default:J(()=>[Y(u)]),_:1},8,["class"])):te("v-if",!0),Y(c,{node:e.node,"render-content":e.renderContent},null,8,["node","render-content"])],6),Y(f,null,{default:J(()=>[!e.renderAfterExpand||e.childNodeRendered?ut((x(),B("div",{key:0,class:T(e.ns.be("node","children")),role:"group","aria-expanded":e.expanded,onClick:t[1]||(t[1]=Xe(()=>{},["stop"]))},[(x(!0),B(Fe,null,gt(e.node.childNodes,v=>(x(),oe(d,{key:e.getNodeKey(v),"render-content":e.renderContent,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,node:v,accordion:e.accordion,props:e.props,onNodeExpand:e.handleChildNodeExpand},null,8,["render-content","render-after-expand","show-checkbox","node","accordion","props","onNodeExpand"]))),128))],10,GY)),[[Pt,e.expanded]]):te("v-if",!0)]),_:1})],42,YY)),[[Pt,e.node.visible]])}var JY=$n(qY,[["render",XY]]);function ZY({el$:e},t){const n=fe("tree");ht(()=>{s()}),ro(()=>{e.value?.querySelectorAll("input[type=checkbox]").forEach(r=>{r.setAttribute("tabindex","-1")})});function a(r,l){const u=t.value.getNode(r[l].dataset.key);return u.canFocus&&u.visible&&(u.parent?.expanded||u.parent?.level===0)}Ft(e,"keydown",r=>{const l=r.target;if(!l.className.includes(n.b("node")))return;const u=jt(r),c=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`)),d=c.indexOf(l);let f;if([we.up,we.down].includes(u)){if(r.preventDefault(),u===we.up){f=d===-1?0:d!==0?d-1:c.length-1;const g=f;for(;!a(c,f);){if(f--,f===g){f=-1;break}f<0&&(f=c.length-1)}}else{f=d===-1?0:d=c.length&&(f=0)}}f!==-1&&c[f].focus()}[we.left,we.right].includes(u)&&(r.preventDefault(),l.click());const v=l.querySelector('[type="checkbox"]');[we.enter,we.numpadEnter,we.space].includes(u)&&v&&(r.preventDefault(),v.click())});const s=()=>{if(!e.value)return;const r=Array.from(e.value.querySelectorAll(`.${n.is("focusable")}[role=treeitem]`));Array.from(e.value.querySelectorAll("input[type=checkbox]")).forEach(u=>{u.setAttribute("tabindex","-1")});const l=e.value.querySelectorAll(`.${n.is("checked")}[role=treeitem]`);if(l.length){l[0].setAttribute("tabindex","0");return}r[0]?.setAttribute("tabindex","0")}}var QY=se({name:"ElTree",components:{ElTreeNode:JY},props:VE,emits:zY,setup(e,t){const{t:n}=Ct(),a=fe("tree"),o=M(new KY({key:e.nodeKey,data:e.data,lazy:e.lazy,props:e.props,load:e.load,currentNodeKey:e.currentNodeKey,checkStrictly:e.checkStrictly,checkDescendants:e.checkDescendants,defaultCheckedKeys:e.defaultCheckedKeys,defaultExpandedKeys:e.defaultExpandedKeys,autoExpandParent:e.autoExpandParent,defaultExpandAll:e.defaultExpandAll,filterNodeMethod:e.filterNodeMethod}));o.value.initialize();const s=M(o.value.root),r=M(null),l=M(null),u=M(null),{broadcastExpanded:c}=HE(e),{dragState:d}=WY({props:e,ctx:t,el$:l,dropIndicator$:u,store:o});ZY({el$:l},o);const f=ft(),v=w(()=>{let D=f?.parent;for(;D;){if(D.type.name==="ElTreeSelect")return!0;D=D.parent}return!1}),g=w(()=>{const{childNodes:D}=s.value;return(!D||D.length===0||D.every(({visible:F})=>!F))&&!v.value});le(()=>e.currentNodeKey,D=>{o.value.setCurrentNodeKey(D??null)}),le(()=>e.defaultCheckedKeys,(D,F)=>{sn(D,F)||o.value.setDefaultCheckedKey(D??[])}),le(()=>e.defaultExpandedKeys,D=>{o.value.setDefaultExpandedKeys(D??[])}),le(()=>e.data,D=>{o.value.setData(D)},{deep:!0}),le(()=>e.checkStrictly,D=>{o.value.checkStrictly=D});const p=D=>{if(!e.filterNodeMethod)throw new Error("[Tree] filterNodeMethod is required when filter");o.value.filter(D)},h=D=>e.nodeKey?Ym(e.nodeKey,D.data):D.id,m=D=>{if(!e.nodeKey)throw new Error(`[Tree] nodeKey is required in ${D}`)},b=D=>{m("getNodePath");const F=o.value.getNode(D);if(!F)return[];const q=[F.data];let j=F.parent;for(;j&&j!==s.value;)q.push(j.data),j=j.parent;return q.reverse()},k=(D,F)=>o.value.getCheckedNodes(D,F),y=D=>o.value.getCheckedKeys(D),S=()=>{const D=o.value.getCurrentNode();return D?D.data:null},C=()=>{m("getCurrentKey");const D=S();return D?D[e.nodeKey]:null},E=(D,F)=>{m("setCheckedNodes"),o.value.setCheckedNodes(D,F)},$=(D,F)=>{m("setCheckedKeys"),o.value.setCheckedKeys(D,F)},O=(D,F,q)=>{o.value.setChecked(D,F,q)},N=()=>o.value.getHalfCheckedNodes(),R=()=>o.value.getHalfCheckedKeys(),A=(D,F=!0)=>{m("setCurrentNode"),Ph(o,t.emit,()=>{c(D),o.value.setUserCurrentNode(D,F)})},_=(D=null,F=!0)=>{m("setCurrentKey"),Ph(o,t.emit,()=>{c(),o.value.setCurrentNodeKey(D,F)})},V=D=>o.value.getNode(D),H=D=>{o.value.remove(D)},U=(D,F)=>{o.value.append(D,F)},W=(D,F)=>{o.value.insertBefore(D,F)},P=(D,F)=>{o.value.insertAfter(D,F)},I=(D,F,q)=>{c(F),t.emit("node-expand",D,F,q)},L=(D,F)=>{m("updateKeyChildren"),o.value.updateChildren(D,F)};return St(qm,{ctx:t,props:e,store:o,root:s,currentNode:r,instance:f}),St(Lo,void 0),{ns:a,store:o,root:s,currentNode:r,dragState:d,el$:l,dropIndicator$:u,isEmpty:g,filter:p,getNodeKey:h,getNodePath:b,getCheckedNodes:k,getCheckedKeys:y,getCurrentNode:S,getCurrentKey:C,setCheckedNodes:E,setCheckedKeys:$,setChecked:O,getHalfCheckedNodes:N,getHalfCheckedKeys:R,setCurrentNode:A,setCurrentKey:_,t:n,getNode:V,remove:H,append:U,insertBefore:W,insertAfter:P,handleNodeExpand:I,updateKeyChildren:L}}});function eG(e,t,n,a,o,s){const r=It("el-tree-node");return x(),B("div",{ref:"el$",class:T([e.ns.b(),e.ns.is("dragging",!!e.dragState.draggingNode),e.ns.is("drop-not-allow",!e.dragState.allowDrop),e.ns.is("drop-inner",e.dragState.dropType==="inner"),{[e.ns.m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[(x(!0),B(Fe,null,gt(e.root.childNodes,l=>(x(),oe(r,{key:e.getNodeKey(l),node:l,props:e.props,accordion:e.accordion,"render-after-expand":e.renderAfterExpand,"show-checkbox":e.showCheckbox,"render-content":e.renderContent,onNodeExpand:e.handleNodeExpand},null,8,["node","props","accordion","render-after-expand","show-checkbox","render-content","onNodeExpand"]))),128)),e.isEmpty?(x(),B("div",{key:0,class:T(e.ns.e("empty-block"))},[ee(e.$slots,"empty",{},()=>[z("span",{class:T(e.ns.e("empty-text"))},Se(e.emptyText??e.t("el.tree.emptyText")),3)])],2)):te("v-if",!0),ut(z("div",{ref:"dropIndicator$",class:T(e.ns.e("drop-indicator"))},null,2),[[Pt,e.dragState.showDropIndicator]])],2)}var tG=$n(QY,[["render",eG]]);const Gm=rt(tG),nG=(e,{attrs:t,emit:n},{select:a,tree:o,key:s})=>{const r=fe("tree-select");le(()=>e.data,()=>{e.filterable&&Re(()=>{o.value?.filter(a.value?.states.inputValue)})},{flush:"post"});const l=u=>{const c=u.at(-1);if(c.expanded&&c.childNodes.at(-1))l([c.childNodes.at(-1)]);else{o.value.el$?.querySelector(`[data-key="${u.at(-1).key}"]`)?.focus({preventScroll:!0});return}};return ht(()=>{Ft(()=>a.value?.$el,"keydown",async u=>{const c=jt(u),{dropdownMenuVisible:d}=a.value;[we.down,we.up].includes(c)&&d&&(await Re(),setTimeout(()=>{if(we.up===c){const f=o.value.store.root.childNodes;l(f);return}a.value.optionsArray[a.value.states.hoveringIndex].$el?.parentNode?.parentNode?.focus({preventScroll:!0})}))},{capture:!0})}),{...ss(Mn(e),Object.keys(Hs.props)),...t,class:w(()=>t.class),style:w(()=>t.style),"onUpdate:modelValue":u=>n(at,u),valueKey:s,popperClass:w(()=>{const u=[r.e("popper")];return e.popperClass&&u.push(e.popperClass),u.join(" ")}),filterMethod:(u="")=>{e.filterMethod?e.filterMethod(u):e.remoteMethod?e.remoteMethod(u):o.value?.filter(u)}}},aG=se({extends:sd,setup(e,t){const n=sd.setup(e,t);delete n.selectOptionClick;const a=ft().proxy;return Re(()=>{n.select.states.cachedOptions.get(a.value)||n.select.onOptionCreate(a)}),le(()=>t.attrs.visible,o=>{Re(()=>{n.states.visible=o})},{immediate:!0}),n},methods:{selectOptionClick(){this.$el.parentElement.click()}}});function Ah(e){return e||e===0}function Xm(e){return ye(e)&&e.length}function Kr(e){return ye(e)?e:Ah(e)?[e]:[]}function Pc(e,t,n,a,o){for(let s=0;s{le([()=>e.modelValue,s],()=>{e.showCheckbox&&Re(()=>{const p=s.value;p&&!sn(p.getCheckedKeys(),Kr(e.modelValue))&&p.setCheckedKeys(Kr(e.modelValue))})},{immediate:!0,deep:!0});const l=w(()=>({value:r.value,label:"label",children:"children",disabled:"disabled",isLeaf:"isLeaf",...e.props})),u=(p,h)=>{const m=l.value[p];return Ve(m)?m(h,s.value?.getNode(u("value",h))):h[m]},c=Kr(e.modelValue).map(p=>Pc(e.data||[],h=>u("value",h)===p,h=>u("children",h),(h,m,b,k)=>k&&u("value",k))).filter(p=>Ah(p)),d=w(()=>{if(!e.renderAfterExpand&&!e.lazy)return[];const p=[];return Mc(e.data.concat(e.cacheData),h=>{const m=u("value",h);p.push({value:m,currentLabel:u("label",h),isDisabled:u("disabled",h)})},h=>u("children",h)),p}),f=()=>s.value?.getCheckedKeys().filter(p=>{const h=s.value?.getNode(p);return!bn(h)&&ia(h.childNodes)}),v=p=>{sn(e.modelValue,p)||a(yt,p)};function g(p){a(at,p),v(p)}return{...ss(Mn(e),Object.keys(Gm.props)),...t,nodeKey:r,expandOnClickNode:w(()=>!e.checkStrictly&&e.expandOnClickNode),defaultExpandedKeys:w(()=>e.defaultExpandedKeys?e.defaultExpandedKeys.concat(c):c),renderContent:(p,{node:h,data:m,store:b})=>p(aG,{value:u("value",m),label:u("label",m),disabled:u("disabled",m),visible:h.visible},e.renderContent?()=>e.renderContent(p,{node:h,data:m,store:b}):n.default?()=>n.default({node:h,data:m,store:b}):void 0),filterNodeMethod:(p,h,m)=>e.filterNodeMethod?e.filterNodeMethod(p,h,m):p?new RegExp(Lv(p),"i").test(u("label",h)||""):!0,onNodeClick:(p,h,m)=>{if(t.onNodeClick?.(p,h,m),!(e.showCheckbox&&e.checkOnClickNode))if(!e.showCheckbox&&(e.checkStrictly||h.isLeaf)){if(!u("disabled",p)){const b=o.value?.states.options.get(u("value",p));o.value?.handleOptionSelect(b)}}else e.expandOnClickNode&&m.proxy.handleExpandIconClick()},onCheck:(p,h)=>{if(!e.showCheckbox)return;const m=u("value",p),b={};Mc([s.value.store.root],C=>b[C.key]=C,C=>C.childNodes);const k=h.checkedKeys,y=e.multiple?Kr(e.modelValue).filter(C=>!(C in b)&&!k.includes(C)):[],S=y.concat(k);if(e.checkStrictly)g(e.multiple?S:S.includes(m)?m:void 0);else if(e.multiple){const C=f();g(y.concat(C))}else{const C=Pc([p],O=>!Xm(u("children",O))&&!u("disabled",O),O=>u("children",O)),E=C?u("value",C):void 0,$=Ah(e.modelValue)&&!!Pc([p],O=>u("value",O)===e.modelValue,O=>u("children",O));g(E===e.modelValue||$?void 0:E)}Re(()=>{const C=Kr(e.modelValue);s.value.setCheckedKeys(C),t.onCheck?.(p,{checkedKeys:s.value.getCheckedKeys(),checkedNodes:s.value.getCheckedNodes(),halfCheckedKeys:s.value.getHalfCheckedKeys(),halfCheckedNodes:s.value.getHalfCheckedNodes()})}),o.value?.focus()},onNodeExpand:(p,h,m)=>{t.onNodeExpand?.(p,h,m),Re(()=>{if(!e.checkStrictly&&e.lazy&&e.multiple&&h.checked){const b={},k=s.value.getCheckedKeys();Mc([s.value.store.root],C=>b[C.key]=C,C=>C.childNodes);const y=Kr(e.modelValue).filter(C=>!(C in b)&&!k.includes(C)),S=f();g(y.concat(S))}})},cacheOptions:d}};var sG=se({props:{data:{type:Array,default:()=>[]}},setup(e){const t=_e(bu);return le(()=>e.data,()=>{e.data.forEach(a=>{t.states.cachedOptions.has(a.value)||t.states.cachedOptions.set(a.value,a)});const n=t.selectRef?.querySelectorAll("input")||[];Mt&&!Array.from(n).includes(document.activeElement)&&t.setSelected()},{flush:"post",immediate:!0}),()=>{}}}),rG=se({name:"ElTreeSelect",inheritAttrs:!1,props:{...Ak,...VE,cacheData:{type:Array,default:()=>[]}},setup(e,t){const{slots:n,expose:a,emit:o,attrs:s}=t,r={...s,onChange:void 0},l=M(),u=M(),c=w(()=>e.nodeKey||e.valueKey||"value"),d=nG(e,{attrs:s,emit:o},{select:l,tree:u,key:c}),{cacheOptions:f,...v}=oG(e,{attrs:r,slots:n,emit:o},{select:l,tree:u,key:c}),g=At({});return a(g),ht(()=>{Object.assign(g,{...ss(u.value,["filter","updateKeyChildren","getCheckedNodes","setCheckedNodes","getCheckedKeys","setCheckedKeys","setChecked","getHalfCheckedNodes","getHalfCheckedKeys","getCurrentKey","getCurrentNode","setCurrentKey","setCurrentNode","getNode","remove","append","insertBefore","insertAfter"]),...ss(l.value,["focus","blur","selectedLabel"]),treeRef:u.value,selectRef:l.value})}),()=>Ye(Hs,At({...d,ref:p=>l.value=p}),{...n,default:()=>[Ye(sG,{data:f.value}),Ye(Gm,At({...v,ref:p=>u.value=p}))]})}}),lG=rG;const iG=rt(lG),Jm=Symbol(),uG={key:-1,level:-1,data:{}};let Xo=(function(e){return e.KEY="id",e.LABEL="label",e.CHILDREN="children",e.DISABLED="disabled",e.CLASS="",e})({}),U0=(function(e){return e.ADD="add",e.DELETE="delete",e})({});const WE={type:Number,default:26},cG=Ce({data:{type:G(Array),default:()=>rn([])},emptyText:{type:String},height:{type:Number,default:200},props:{type:G(Object),default:()=>rn({children:Xo.CHILDREN,label:Xo.LABEL,disabled:Xo.DISABLED,value:Xo.KEY,class:Xo.CLASS})},highlightCurrent:Boolean,showCheckbox:Boolean,defaultCheckedKeys:{type:G(Array),default:()=>rn([])},checkStrictly:Boolean,defaultExpandedKeys:{type:G(Array),default:()=>rn([])},indent:{type:Number,default:16},itemSize:WE,icon:{type:Kt},expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},currentNodeKey:{type:G([String,Number])},accordion:Boolean,filterMethod:{type:G(Function)},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),dG=Ce({node:{type:G(Object),default:()=>rn(uG)},expanded:Boolean,checked:Boolean,indeterminate:Boolean,showCheckbox:Boolean,disabled:Boolean,current:Boolean,hiddenExpandIcon:Boolean,itemSize:WE}),fG=Ce({node:{type:G(Object),required:!0}}),jE="node-click",UE="node-drop",qE="node-expand",YE="node-collapse",GE="current-change",XE="check",JE="check-change",ZE="node-contextmenu",pG={[jE]:(e,t,n)=>e&&t&&n,[UE]:(e,t,n)=>e&&t&&n,[qE]:(e,t)=>e&&t,[YE]:(e,t)=>e&&t,[GE]:(e,t)=>e&&t,[XE]:(e,t)=>e&&t,[JE]:(e,t)=>e&&Ht(t),[ZE]:(e,t,n)=>e&&t&&n},hG={click:(e,t)=>!!(e&&t),drop:(e,t)=>!!(e&&t),toggle:e=>!!e,check:(e,t)=>e&&Ht(t)};function vG(e,t){const n=M(new Set),a=M(new Set),{emit:o}=ft();le([()=>t.value,()=>e.defaultCheckedKeys],()=>Re(()=>{k(e.defaultCheckedKeys)}),{immediate:!0});const s=()=>{if(!t.value||!e.showCheckbox||e.checkStrictly)return;const{levelTreeNodeMap:y,maxLevel:S}=t.value,C=n.value,E=new Set;for(let $=S;$>=1;--$){const O=y.get($);O&&O.forEach(N=>{const R=N.children;let A=!N.isLeaf||N.disabled||C.has(N.key);if(R){let _=!0,V=!1;for(const H of R){const U=H.key;if(H.isEffectivelyChecked||(A=!1),C.has(U))V=!0;else if(E.has(U)){_=!1,V=!0;break}else _=!1}_?C.add(N.key):V?(E.add(N.key),C.delete(N.key)):(C.delete(N.key),E.delete(N.key))}N.isEffectivelyChecked=A})}a.value=E},r=y=>n.value.has(y.key),l=y=>a.value.has(y.key),u=(y,S,C=!0,E=!0)=>{const $=n.value,O=y.children;!e.checkStrictly&&C&&O?.length&&(S=O.some(R=>!R.isEffectivelyChecked));const N=(R,A)=>{$[A?U0.ADD:U0.DELETE](R.key);const _=R.children;!e.checkStrictly&&_&&_.forEach(V=>{(!V.disabled||V.children)&&N(V,A)})};N(y,S),E&&s(),C&&c(y,S)},c=(y,S)=>{const{checkedNodes:C,checkedKeys:E}=p(),{halfCheckedNodes:$,halfCheckedKeys:O}=h();o(XE,y.data,{checkedKeys:E,checkedNodes:C,halfCheckedKeys:O,halfCheckedNodes:$}),o(JE,y.data,S)};function d(y=!1){return p(y).checkedKeys}function f(y=!1){return p(y).checkedNodes}function v(){return h().halfCheckedKeys}function g(){return h().halfCheckedNodes}function p(y=!1){const S=[],C=[];if(t?.value&&e.showCheckbox){const{treeNodeMap:E}=t.value;n.value.forEach($=>{const O=E.get($);O&&(!y||y&&O.isLeaf)&&(C.push($),S.push(O.data))})}return{checkedKeys:C,checkedNodes:S}}function h(){const y=[],S=[];if(t?.value&&e.showCheckbox){const{treeNodeMap:C}=t.value;a.value.forEach(E=>{const $=C.get(E);$&&(S.push(E),y.push($.data))})}return{halfCheckedNodes:y,halfCheckedKeys:S}}function m(y){n.value.clear(),a.value.clear(),Re(()=>{k(y)})}function b(y,S){if(t?.value&&e.showCheckbox){const C=t.value.treeNodeMap.get(y);C&&u(C,S,!1)}}function k(y){if(t?.value){const{treeNodeMap:S}=t.value;if(e.showCheckbox&&S&&y?.length>0){for(const C of y){const E=S.get(C);E&&!r(E)&&u(E,!0,!1,!1)}s()}}}return{updateCheckedKeys:s,toggleCheckbox:u,isChecked:r,isIndeterminate:l,getCheckedKeys:d,getCheckedNodes:f,getHalfCheckedKeys:v,getHalfCheckedNodes:g,setChecked:b,setCheckedKeys:m}}function mG(e,t){const n=M(new Set([])),a=M(new Set([])),o=w(()=>Ve(e.filterMethod));function s(l){if(!o.value)return;const u=new Set,c=a.value,d=n.value,f=[],v=t.value?.treeNodes||[],g=e.filterMethod;d.clear();function p(h){h.forEach(m=>{f.push(m),g?.(l,m.data,m)?f.forEach(k=>{u.add(k.key),k.expanded=!0}):(m.expanded=!1,m.isLeaf&&d.add(m.key));const b=m.children;if(b&&p(b),!m.isLeaf){if(!u.has(m.key))d.add(m.key);else if(b){let k=!0;for(const y of b)if(!d.has(y.key)){k=!1;break}k?c.add(m.key):c.delete(m.key)}}f.pop()})}return p(v),u}function r(l){return a.value.has(l.key)}return{hiddenExpandIconKeySet:a,hiddenNodeKeySet:n,doFilter:s,isForceHiddenExpandIcon:r}}function gG(e,t){const n=M(new Set),a=M(),o=Xt(),s=M(),{isIndeterminate:r,isChecked:l,toggleCheckbox:u,getCheckedKeys:c,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:v,setChecked:g,setCheckedKeys:p}=vG(e,o),{doFilter:h,hiddenNodeKeySet:m,isForceHiddenExpandIcon:b}=mG(e,o),k=w(()=>e.props?.value||Xo.KEY),y=w(()=>e.props?.children||Xo.CHILDREN),S=w(()=>e.props?.disabled||Xo.DISABLED),C=w(()=>e.props?.label||Xo.LABEL),E=w(()=>{const ne=n.value,K=m.value,Z=[],re=o.value?.treeNodes||[],ce=[];for(let ve=re.length-1;ve>=0;--ve)ce.push(re[ve]);for(;ce.length;){const ve=ce.pop();if(!K.has(ve.key)&&(Z.push(ve),ve.children&&ne.has(ve.key)))for(let ke=ve.children.length-1;ke>=0;--ke)ce.push(ve.children[ke])}return Z}),$=w(()=>E.value.length>0);function O(ne){const K=new Map,Z=new Map;let re=1;function ce(ke,Ne=1,Ie=void 0){const $e=[];for(const pe of ke){const Ee=A(pe),me={level:Ne,key:Ee,data:pe};me.label=V(pe),me.parent=Ie;const Me=R(pe);me.disabled=_(pe),me.isLeaf=!Me||Me.length===0,me.expanded=n.value.has(Ee),Me&&Me.length&&(me.children=ce(Me,Ne+1,me)),$e.push(me),K.set(Ee,me),Z.has(Ne)||Z.set(Ne,[]),Z.get(Ne)?.push(me)}return Ne>re&&(re=Ne),$e}const ve=ce(ne);return{treeNodeMap:K,levelTreeNodeMap:Z,maxLevel:re,treeNodes:ve}}function N(ne){const K=h(ne);K&&(n.value=K)}function R(ne){return ne[y.value]}function A(ne){return ne?ne[k.value]:""}function _(ne){return ne[S.value]}function V(ne){return ne[C.value]}function H(ne){n.value.has(ne.key)?F(ne):D(ne)}function U(ne){const K=new Set,Z=o.value.treeNodeMap;n.value.forEach(re=>{const ce=Z.get(re);n.value.delete(ce.key),ce.expanded=!1}),ne.forEach(re=>{let ce=Z.get(re);for(;ce&&!K.has(ce.key);)K.add(ce.key),ce.expanded=!0,ce=ce.parent}),n.value=K}function W(ne,K){t(jE,ne.data,ne,K),I(ne),e.expandOnClickNode&&H(ne),e.showCheckbox&&(e.checkOnClickNode||ne.isLeaf&&e.checkOnClickLeaf)&&!ne.disabled&&u(ne,!l(ne),!0)}function P(ne,K){t(UE,ne.data,ne,K)}function I(ne){j(ne)||(a.value=ne.key,t(GE,ne.data,ne))}function L(ne,K){u(ne,K)}function D(ne){const K=n.value;if(o.value&&e.accordion){const{treeNodeMap:re}=o.value;K.forEach(ce=>{const ve=re.get(ce);ne&&ne.level===ve?.level&&(K.delete(ce),ve.expanded=!1)})}K.add(ne.key);const Z=ge(ne.key);Z&&(Z.expanded=!0,t(qE,Z.data,Z))}function F(ne){n.value.delete(ne.key);const K=ge(ne.key);K&&(K.expanded=!1,t(YE,K.data,K))}function q(ne){return!!ne.disabled}function j(ne){const K=a.value;return K!==void 0&&K===ne.key}function X(){if(a.value)return o.value?.treeNodeMap.get(a.value)?.data}function Q(){return a.value}function he(ne){a.value=ne}function ue(ne){o.value=O(ne)}function ge(ne){const K=ot(ne)?A(ne):ne;return o.value?.treeNodeMap.get(K)}function ie(ne,K="auto"){const Z=ge(ne);Z&&s.value&&s.value.scrollToItem(E.value.indexOf(Z),K)}function ae(ne){s.value?.scrollTo(ne)}return le(()=>e.currentNodeKey,ne=>{a.value=ne},{immediate:!0}),le(()=>e.defaultExpandedKeys,ne=>{n.value=new Set(ne)},{immediate:!0}),le(()=>e.data,ne=>{ue(ne)},{immediate:!0}),{tree:o,flattenTree:E,isNotEmpty:$,listRef:s,getKey:A,getChildren:R,toggleExpand:H,toggleCheckbox:u,isChecked:l,isIndeterminate:r,isDisabled:q,isCurrent:j,isForceHiddenExpandIcon:b,handleNodeClick:W,handleNodeDrop:P,handleNodeCheck:L,getCurrentNode:X,getCurrentKey:Q,setCurrentKey:he,getCheckedKeys:c,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:v,setChecked:g,setCheckedKeys:p,filter:N,setData:ue,getNode:ge,expandNode:D,collapseNode:F,setExpandedKeys:U,scrollToNode:ie,scrollTo:ae}}var bG=se({name:"ElTreeNodeContent",props:fG,setup(e){const t=_e(Jm),n=fe("tree");return()=>{const a=e.node,{data:o}=a;return t?.ctx.slots.default?t.ctx.slots.default({node:a,data:o}):Ye(Um,{tag:"span",truncated:!0,class:n.be("node","label")},()=>[a?.label])}}});const yG=["aria-expanded","aria-disabled","aria-checked","data-key"];var wG=se({name:"ElTreeNode",__name:"tree-node",props:dG,emits:hG,setup(e,{emit:t}){const n=e,a=t,o=_e(Jm),s=fe("tree"),r=w(()=>o?.props.indent??16),l=w(()=>o?.props.icon??DC),u=p=>{const h=o?.props.props?.class;if(!h)return{};let m;if(Ve(h)){const{data:b}=p;m=h(b,p)}else m=h;return Le(m)?{[m]:!0}:m},c=p=>{a("click",n.node,p)},d=p=>{a("drop",n.node,p)},f=()=>{a("toggle",n.node)},v=p=>{a("check",n.node,p)},g=p=>{o?.instance?.vnode?.props?.onNodeContextmenu&&(p.stopPropagation(),p.preventDefault()),o?.ctx.emit(ZE,p,n.node?.data,n.node)};return(p,h)=>(x(),B("div",{ref:"node$",class:T([i(s).b("node"),i(s).is("expanded",e.expanded),i(s).is("current",e.current),i(s).is("focusable",!e.disabled),i(s).is("checked",!e.disabled&&e.checked),u(e.node)]),role:"treeitem",tabindex:"-1","aria-expanded":e.expanded,"aria-disabled":e.disabled,"aria-checked":e.checked,"data-key":e.node?.key,onClick:Xe(c,["stop"]),onContextmenu:g,onDragover:h[1]||(h[1]=Xe(()=>{},["prevent"])),onDragenter:h[2]||(h[2]=Xe(()=>{},["prevent"])),onDrop:Xe(d,["stop"])},[z("div",{class:T(i(s).be("node","content")),style:Ke({paddingLeft:`${(e.node.level-1)*r.value}px`,height:e.itemSize+"px"})},[l.value?(x(),oe(i(De),{key:0,class:T([i(s).is("leaf",!!e.node?.isLeaf),i(s).is("hidden",e.hiddenExpandIcon),{expanded:!e.node?.isLeaf&&e.expanded},i(s).be("node","expand-icon")]),onClick:Xe(f,["stop"])},{default:J(()=>[(x(),oe(it(l.value)))]),_:1},8,["class"])):te("v-if",!0),e.showCheckbox?(x(),oe(i(so),{key:1,"model-value":e.checked,indeterminate:e.indeterminate,disabled:e.disabled,onChange:v,onClick:h[0]||(h[0]=Xe(()=>{},["stop"]))},null,8,["model-value","indeterminate","disabled"])):te("v-if",!0),Y(i(bG),{node:{...e.node,expanded:e.expanded}},null,8,["node"])],6)],42,yG))}}),SG=wG,CG=se({name:"ElTreeV2",__name:"tree",props:cG,emits:pG,setup(e,{expose:t,emit:n}){const a=e,o=n,s=vn(),r=w(()=>a.itemSize);St(Jm,{ctx:{emit:o,slots:s},props:a,instance:ft()}),St(Lo,void 0);const{t:l}=Ct(),u=fe("tree"),{flattenTree:c,isNotEmpty:d,listRef:f,toggleExpand:v,isIndeterminate:g,isChecked:p,isDisabled:h,isCurrent:m,isForceHiddenExpandIcon:b,handleNodeClick:k,handleNodeDrop:y,handleNodeCheck:S,toggleCheckbox:C,getCurrentNode:E,getCurrentKey:$,setCurrentKey:O,getCheckedKeys:N,getCheckedNodes:R,getHalfCheckedKeys:A,getHalfCheckedNodes:_,setChecked:V,setCheckedKeys:H,filter:U,setData:W,getNode:P,expandNode:I,collapseNode:L,setExpandedKeys:D,scrollToNode:F,scrollTo:q}=gG(a,o);return t({toggleCheckbox:C,getCurrentNode:E,getCurrentKey:$,setCurrentKey:O,getCheckedKeys:N,getCheckedNodes:R,getHalfCheckedKeys:A,getHalfCheckedNodes:_,setChecked:V,setCheckedKeys:H,filter:U,setData:W,getNode:P,expandNode:I,collapseNode:L,setExpandedKeys:D,scrollToNode:F,scrollTo:q}),(j,X)=>(x(),B("div",{class:T([i(u).b(),{[i(u).m("highlight-current")]:e.highlightCurrent}]),role:"tree"},[i(d)?(x(),oe(i(nE),{key:0,ref_key:"listRef",ref:f,"class-name":i(u).b("virtual-list"),data:i(c),total:i(c).length,height:e.height,"item-size":r.value,"perf-mode":e.perfMode,"scrollbar-always-on":e.scrollbarAlwaysOn},{default:J(({data:Q,index:he,style:ue})=>[(x(),oe(SG,{key:Q[he].key,style:Ke(ue),node:Q[he],expanded:Q[he].expanded,"show-checkbox":e.showCheckbox,checked:i(p)(Q[he]),indeterminate:i(g)(Q[he]),"item-size":r.value,disabled:i(h)(Q[he]),current:i(m)(Q[he]),"hidden-expand-icon":i(b)(Q[he]),onClick:i(k),onToggle:i(v),onCheck:i(S),onDrop:i(y)},null,8,["style","node","expanded","show-checkbox","checked","indeterminate","item-size","disabled","current","hidden-expand-icon","onClick","onToggle","onCheck","onDrop"]))]),_:1},8,["class-name","data","total","height","item-size","perf-mode","scrollbar-always-on"])):(x(),B("div",{key:1,class:T(i(u).e("empty-block"))},[ee(j.$slots,"empty",{},()=>[z("span",{class:T(i(u).e("empty-text"))},Se(e.emptyText??i(l)("el.tree.emptyText")),3)])],2))],2))}}),kG=CG;const EG=rt(kG),xG="ElUpload";var TG=class extends Error{constructor(e,t,n,a){super(e),this.name="UploadAjaxError",this.status=t,this.method=n,this.url=a}};function q0(e,t,n){let a;return n.response?a=`${n.response.error||n.response}`:n.responseText?a=`${n.responseText}`:a=`fail to ${t.method} ${e} ${n.status}`,new TG(a,n.status,t.method,e)}function $G(e){const t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch{return t}}const OG=e=>{typeof XMLHttpRequest>"u"&&nn(xG,"XMLHttpRequest is undefined");const t=new XMLHttpRequest,n=e.action;t.upload&&t.upload.addEventListener("progress",s=>{const r=s;r.percent=s.total>0?s.loaded/s.total*100:0,e.onProgress(r)});const a=new FormData;if(e.data)for(const[s,r]of Object.entries(e.data))ye(r)?r.length===2&&r[0]instanceof Blob&&Le(r[1])?a.append(s,r[0],r[1]):r.forEach(l=>{a.append(s,l)}):a.append(s,r);a.append(e.filename,e.file,e.file.name),t.addEventListener("error",()=>{e.onError(q0(n,e,t))}),t.addEventListener("load",()=>{if(t.status<200||t.status>=300)return e.onError(q0(n,e,t));e.onSuccess($G(t))}),t.open(e.method,n,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);const o=e.headers||{};if(o instanceof Headers)o.forEach((s,r)=>t.setRequestHeader(r,s));else for(const[s,r]of Object.entries(o))bn(r)||t.setRequestHeader(s,String(r));return t.send(a),t},QE=["text","picture","picture-card"];let RG=1;const Lh=()=>Date.now()+RG++,ex=Ce({action:{type:String,default:"#"},headers:{type:G(Object)},method:{type:String,default:"post"},data:{type:G([Object,Function,Promise]),default:()=>rn({})},multiple:Boolean,name:{type:String,default:"file"},drag:Boolean,withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:""},fileList:{type:G(Array),default:()=>rn([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:QE,default:"text"},httpRequest:{type:G(Function),default:OG},disabled:{type:Boolean,default:void 0},limit:Number,directory:Boolean}),NG=Ce({...ex,beforeUpload:{type:G(Function),default:Dt},beforeRemove:{type:G(Function)},onRemove:{type:G(Function),default:Dt},onChange:{type:G(Function),default:Dt},onPreview:{type:G(Function),default:Dt},onSuccess:{type:G(Function),default:Dt},onProgress:{type:G(Function),default:Dt},onError:{type:G(Function),default:Dt},onExceed:{type:G(Function),default:Dt},crossorigin:{type:G(String)}}),tx=Symbol("uploadContextKey"),IG=Ce({files:{type:G(Array),default:()=>rn([])},disabled:{type:Boolean,default:void 0},handlePreview:{type:G(Function),default:Dt},listType:{type:String,values:QE,default:"text"},crossorigin:{type:G(String)}}),PG={remove:e=>!!e},MG=Ce({...ex,beforeUpload:{type:G(Function),default:Dt},onRemove:{type:G(Function),default:Dt},onStart:{type:G(Function),default:Dt},onSuccess:{type:G(Function),default:Dt},onProgress:{type:G(Function),default:Dt},onError:{type:G(Function),default:Dt},onExceed:{type:G(Function),default:Dt}}),_G=Ce({disabled:{type:Boolean,default:void 0},directory:Boolean}),AG={file:e=>ye(e)},LG=["tabindex","aria-disabled","onKeydown"],DG=["src","crossorigin"],BG=["onClick"],FG=["title"],VG=["onClick"],zG=["onClick"];var HG=se({name:"ElUploadList",__name:"upload-list",props:IG,emits:PG,setup(e,{emit:t}){const n=e,a=t,{t:o}=Ct(),s=fe("upload"),r=fe("icon"),l=fe("list"),u=un(),c=M(!1),d=w(()=>[s.b("list"),s.bm("list",n.listType),s.is("disabled",u.value)]),f=v=>{a("remove",v)};return(v,g)=>(x(),oe(j1,{tag:"ul",class:T(d.value),name:i(l).b()},{default:J(()=>[(x(!0),B(Fe,null,gt(e.files,(p,h)=>(x(),B("li",{key:p.uid||p.name,class:T([i(s).be("list","item"),i(s).is(p.status),{focusing:c.value}]),tabindex:i(u)?void 0:0,"aria-disabled":i(u),role:"button",onKeydown:on(m=>!i(u)&&f(p),["delete"]),onFocus:g[0]||(g[0]=m=>c.value=!0),onBlur:g[1]||(g[1]=m=>c.value=!1),onClick:g[2]||(g[2]=m=>c.value=!1)},[ee(v.$slots,"default",{file:p,index:h},()=>[e.listType==="picture"||p.status!=="uploading"&&e.listType==="picture-card"?(x(),B("img",{key:0,class:T(i(s).be("list","item-thumbnail")),src:p.url,crossorigin:e.crossorigin,alt:""},null,10,DG)):te("v-if",!0),p.status==="uploading"||e.listType!=="picture-card"?(x(),B("div",{key:1,class:T(i(s).be("list","item-info"))},[z("a",{class:T(i(s).be("list","item-name")),onClick:Xe(m=>e.handlePreview(p),["prevent"])},[Y(i(De),{class:T(i(r).m("document"))},{default:J(()=>[Y(i(i3))]),_:1},8,["class"]),z("span",{class:T(i(s).be("list","item-file-name")),title:p.name},Se(p.name),11,FG)],10,BG),p.status==="uploading"?(x(),oe(i(j2),{key:0,type:e.listType==="picture-card"?"circle":"line","stroke-width":e.listType==="picture-card"?6:2,percentage:Number(p.percentage),style:Ke(e.listType==="picture-card"?"":"margin-top: 0.5rem")},null,8,["type","stroke-width","percentage","style"])):te("v-if",!0)],2)):te("v-if",!0),z("label",{class:T(i(s).be("list","item-status-label"))},[e.listType==="text"?(x(),oe(i(De),{key:0,class:T([i(r).m("upload-success"),i(r).m("circle-check")])},{default:J(()=>[Y(i(tm))]),_:1},8,["class"])):["picture-card","picture"].includes(e.listType)?(x(),oe(i(De),{key:1,class:T([i(r).m("upload-success"),i(r).m("check")])},{default:J(()=>[Y(i(vu))]),_:1},8,["class"])):te("v-if",!0)],2),i(u)?te("v-if",!0):(x(),oe(i(De),{key:2,class:T(i(r).m("close")),"aria-label":i(o)("el.upload.delete"),role:"button",tabindex:"0",onClick:m=>f(p),onKeydown:on(Xe(m=>f(p),["prevent"]),["enter","space"])},{default:J(()=>[Y(i(Ha))]),_:1},8,["class","aria-label","onClick","onKeydown"])),i(u)?te("v-if",!0):(x(),B("i",{key:3,class:T(i(r).m("close-tip"))},Se(i(o)("el.upload.deleteTip")),3)),e.listType==="picture-card"?(x(),B("span",{key:4,class:T(i(s).be("list","item-actions"))},[z("span",{class:T(i(s).be("list","item-preview")),onClick:m=>e.handlePreview(p)},[Y(i(De),{class:T(i(r).m("zoom-in"))},{default:J(()=>[Y(i(zC))]),_:1},8,["class"])],10,VG),i(u)?te("v-if",!0):(x(),B("span",{key:0,class:T(i(s).be("list","item-delete")),onClick:m=>f(p)},[Y(i(De),{class:T(i(r).m("delete"))},{default:J(()=>[Y(i(r3))]),_:1},8,["class"])],10,zG))],2)):te("v-if",!0)])],42,LG))),128)),ee(v.$slots,"append")]),_:3},8,["class","name"]))}}),Y0=HG;const G0="ElUploadDrag";var KG=se({name:G0,__name:"upload-dragger",props:_G,emits:AG,setup(e,{emit:t}){const n=e,a=t;_e(tx)||nn(G0,"usage: ");const o=fe("upload"),s=M(!1),r=un(),l=v=>new Promise((g,p)=>v.file(g,p)),u=async v=>{try{if(v.isFile){const g=await l(v);return g.isDirectory=!1,[g]}if(v.isDirectory){const g=v.createReader(),p=()=>new Promise((k,y)=>g.readEntries(k,y)),h=[];let m=await p();for(;m.length>0;)h.push(...m),m=await p();const b=h.map(k=>u(k).catch(()=>[]));return Yc(await Promise.all(b))}}catch{return[]}return[]},c=async v=>{if(r.value)return;s.value=!1,v.stopPropagation();const g=Array.from(v.dataTransfer.files),p=v.dataTransfer.items||[];if(n.directory){const h=Array.from(p).map(m=>m?.webkitGetAsEntry?.()).filter(m=>m);a("file",Yc(await Promise.all(h.map(u))));return}g.forEach((h,m)=>{const b=p[m]?.webkitGetAsEntry?.();b&&(h.isDirectory=b.isDirectory)}),a("file",g)},d=()=>{r.value||(s.value=!0)},f=v=>{v.currentTarget.contains(v.relatedTarget)||(s.value=!1)};return(v,g)=>(x(),B("div",{class:T([i(o).b("dragger"),i(o).is("dragover",s.value)]),onDrop:Xe(c,["prevent"]),onDragover:Xe(d,["prevent"]),onDragleave:Xe(f,["prevent"])},[ee(v.$slots,"default")],34))}}),WG=KG;const jG=["tabindex","aria-disabled","onKeydown"],UG=["name","disabled","multiple","accept","webkitdirectory"];var qG=se({name:"ElUploadContent",inheritAttrs:!1,__name:"upload-content",props:MG,setup(e,{expose:t}){const n=e,a=fe("upload"),o=un(),s=Xt({}),r=Xt(),l=h=>{if(h.length===0)return;const{autoUpload:m,limit:b,fileList:k,multiple:y,onStart:S,onExceed:C}=n;if(b&&k.length+h.length>b){C(h,k);return}y||(h=h.slice(0,1));for(const E of h){const $=E;$.uid=Lh(),S($),m&&u($)}},u=async h=>{if(r.value.value="",!n.beforeUpload)return d(h);let m,b={};try{const y=n.data,S=n.beforeUpload(h);b=mi(n.data)?es(n.data):n.data,m=await S,mi(n.data)&&sn(y,b)&&(b=es(n.data))}catch{m=!1}if(m===!1){n.onRemove(h);return}let k=h;m instanceof Blob&&(m instanceof File?k=m:k=new File([m],h.name,{type:h.type})),d(Object.assign(k,{uid:h.uid}),b)},c=async(h,m)=>Ve(h)?h(m):h,d=async(h,m)=>{const{headers:b,data:k,method:y,withCredentials:S,name:C,action:E,onProgress:$,onSuccess:O,onError:N,httpRequest:R}=n;try{m=await c(m??k,h)}catch{n.onRemove(h);return}const{uid:A}=h,_={headers:b||{},withCredentials:S,file:h,data:m,method:y,filename:C,action:E,onProgress:H=>{$(H,h)},onSuccess:H=>{O(H,h),delete s.value[A]},onError:H=>{N(H,h),delete s.value[A]}},V=R(_);s.value[A]=V,V instanceof Promise&&V.then(_.onSuccess,_.onError)},f=h=>{const m=h.target.files;m&&l(Array.from(m))},v=()=>{o.value||(r.value.value="",r.value.click())},g=()=>{v()};return t({abort:h=>{DS(s.value).filter(h?([m])=>String(h.uid)===m:()=>!0).forEach(([m,b])=>{b instanceof XMLHttpRequest&&b.abort(),delete s.value[m]})},upload:u}),(h,m)=>(x(),B("div",{class:T([i(a).b(),i(a).m(e.listType),i(a).is("drag",e.drag),i(a).is("disabled",i(o))]),tabindex:i(o)?void 0:0,"aria-disabled":i(o),role:"button",onClick:v,onKeydown:on(Xe(g,["self"]),["enter","space"])},[e.drag?(x(),oe(WG,{key:0,disabled:i(o),directory:e.directory,onFile:l},{default:J(()=>[ee(h.$slots,"default")]),_:3},8,["disabled","directory"])):ee(h.$slots,"default",{key:1}),z("input",{ref_key:"inputRef",ref:r,class:T(i(a).e("input")),name:e.name,disabled:i(o),multiple:e.multiple,accept:e.accept,webkitdirectory:e.directory||void 0,type:"file",onChange:f,onClick:m[0]||(m[0]=Xe(()=>{},["stop"]))},null,42,UG)],42,jG))}}),X0=qG;const J0="ElUpload",Z0=e=>{e.url?.startsWith("blob:")&&URL.revokeObjectURL(e.url)},YG=(e,t)=>{const n=jS(e,"fileList",void 0,{passive:!0}),a=p=>n.value.find(h=>h.uid===p.uid);function o(p){t.value?.abort(p)}function s(p=["ready","uploading","success","fail"]){n.value=n.value.filter(h=>!p.includes(h.status))}function r(p){n.value=n.value.filter(h=>h.uid!==p.uid)}const l=p=>{Re(()=>e.onChange(p,n.value))},u=(p,h)=>{const m=a(h);m&&(console.error(p),m.status="fail",r(m),e.onError(p,m,n.value),l(m))},c=(p,h)=>{const m=a(h);m&&(e.onProgress(p,m,n.value),m.status="uploading",m.percentage=Math.round(p.percent))},d=(p,h)=>{const m=a(h);m&&(m.status="success",m.response=p,e.onSuccess(p,m,n.value),l(m))},f=p=>{bn(p.uid)&&(p.uid=Lh());const h={name:p.name,percentage:0,status:"ready",size:p.size,raw:p,uid:p.uid};if(e.listType==="picture-card"||e.listType==="picture")try{h.url=URL.createObjectURL(p)}catch(m){pt(J0,m.message),e.onError(m,h,n.value)}n.value=[...n.value,h],l(h)},v=async p=>{const h=p instanceof File?a(p):p;h||nn(J0,"file to be removed not found");const m=b=>{o(b),r(b),e.onRemove(b,n.value),Z0(b)};e.beforeRemove?await e.beforeRemove(h,n.value)!==!1&&m(h):m(h)};function g(){n.value.filter(({status:p})=>p==="ready").forEach(({raw:p})=>p&&t.value?.upload(p))}return le(()=>e.listType,p=>{p!=="picture-card"&&p!=="picture"||(n.value=n.value.map(h=>{const{raw:m,url:b}=h;if(!b&&m)try{h.url=URL.createObjectURL(m)}catch(k){e.onError(k,h,n.value)}return h}))}),le(n,p=>{for(const h of p)h.uid||=Lh(),h.status||="success"},{immediate:!0,deep:!0}),{uploadFiles:n,abort:o,clearFiles:s,handleError:u,handleProgress:c,handleStart:f,handleSuccess:d,handleRemove:v,submit:g,revokeFileObjectURL:Z0}};var GG=se({name:"ElUpload",__name:"upload",props:NG,setup(e,{expose:t}){const n=e,a=un(),o=Xt(),{abort:s,submit:r,clearFiles:l,uploadFiles:u,handleStart:c,handleError:d,handleRemove:f,handleSuccess:v,handleProgress:g,revokeFileObjectURL:p}=YG(n,o),h=w(()=>n.listType==="picture-card"),m=w(()=>({...n,fileList:u.value,onStart:c,onProgress:g,onSuccess:v,onError:d,onRemove:f}));return Bt(()=>{u.value.forEach(p)}),St(tx,{accept:Vt(n,"accept")}),t({abort:s,submit:r,clearFiles:l,handleStart:c,handleRemove:f}),(b,k)=>(x(),B("div",null,[h.value&&e.showFileList?(x(),oe(Y0,{key:0,disabled:i(a),"list-type":e.listType,files:i(u),crossorigin:e.crossorigin,"handle-preview":e.onPreview,onRemove:i(f)},ua({append:J(()=>[Y(X0,dt({ref_key:"uploadRef",ref:o},m.value),{default:J(()=>[b.$slots.trigger?ee(b.$slots,"trigger",{key:0}):te("v-if",!0),!b.$slots.trigger&&b.$slots.default?ee(b.$slots,"default",{key:1}):te("v-if",!0)]),_:3},16)]),_:2},[b.$slots.file?{name:"default",fn:J(({file:y,index:S})=>[ee(b.$slots,"file",{file:y,index:S})]),key:"0"}:void 0]),1032,["disabled","list-type","files","crossorigin","handle-preview","onRemove"])):te("v-if",!0),!h.value||h.value&&!e.showFileList?(x(),oe(X0,dt({key:1,ref_key:"uploadRef",ref:o},m.value),{default:J(()=>[b.$slots.trigger?ee(b.$slots,"trigger",{key:0}):te("v-if",!0),!b.$slots.trigger&&b.$slots.default?ee(b.$slots,"default",{key:1}):te("v-if",!0)]),_:3},16)):te("v-if",!0),b.$slots.trigger?ee(b.$slots,"default",{key:2}):te("v-if",!0),ee(b.$slots,"tip"),!h.value&&e.showFileList?(x(),oe(Y0,{key:3,disabled:i(a),"list-type":e.listType,files:i(u),crossorigin:e.crossorigin,"handle-preview":e.onPreview,onRemove:i(f)},ua({_:2},[b.$slots.file?{name:"default",fn:J(({file:y,index:S})=>[ee(b.$slots,"file",{file:y,index:S})]),key:"0"}:void 0]),1032,["disabled","list-type","files","crossorigin","handle-preview","onRemove"])):te("v-if",!0)]))}}),XG=GG;const JG=rt(XG),ZG=Ce({zIndex:{type:Number,default:9},rotate:{type:Number,default:-22},width:Number,height:Number,image:String,content:{type:G([String,Array]),default:"Element Plus"},font:{type:G(Object)},gap:{type:G(Array),default:()=>[100,100]},offset:{type:G(Array)}});function QG(e){return e.replace(/([A-Z])/g,"-$1").toLowerCase()}function eX(e){return Object.keys(e).map(t=>`${QG(t)}: ${e[t]};`).join(" ")}function tX(){return window.devicePixelRatio||1}const nX=(e,t)=>{let n=!1;return e.removedNodes.length&&t&&(n=Array.from(e.removedNodes).includes(t)),e.type==="attributes"&&e.target===t&&(n=!0),n},aX={left:[0,.5],start:[0,.5],center:[.5,0],right:[1,-.5],end:[1,-.5]};function fp(e,t,n=1){const a=document.createElement("canvas"),o=a.getContext("2d"),s=e*n,r=t*n;return a.setAttribute("width",`${s}px`),a.setAttribute("height",`${r}px`),o.save(),[o,a,s,r]}function oX(){function e(t,n,a,o,s,r,l,u,c){const[d,f,v,g]=fp(o,s,a);let p=0;if(t instanceof HTMLImageElement)d.drawImage(t,0,0,v,g);else{const{color:q,fontSize:j,fontStyle:X,fontWeight:Q,fontFamily:he,textAlign:ue,textBaseline:ge}=r,ie=Number(j)*a;d.font=`${X} normal ${Q} ${ie}px/${s}px ${he}`,d.fillStyle=q,d.textAlign=ue,d.textBaseline=ge;const ae=ye(t)?t:[t];if(ge!=="top"&&ae[0]){const ne=d.measureText(ae[0]);d.textBaseline="top";const K=d.measureText(ae[0]);p=ne.actualBoundingBoxAscent-K.actualBoundingBoxAscent}ae?.forEach((ne,K)=>{const[Z,re]=aX[ue];d.fillText(ne??"",v*Z+c*re,K*(ie+r.fontGap*a))})}const h=Math.PI/180*Number(n),m=Math.max(o,s),[b,k,y]=fp(m,m,a);b.translate(y/2,y/2),b.rotate(h),v>0&&g>0&&b.drawImage(f,-v/2,-g/2);function S(q,j){return[q*Math.cos(h)-j*Math.sin(h),q*Math.sin(h)+j*Math.cos(h)]}let C=0,E=0,$=0,O=0;const N=v/2,R=g/2;[[0-N,0-R],[0+N,0-R],[0+N,0+R],[0-N,0+R]].forEach(([q,j])=>{const[X,Q]=S(q,j);C=Math.min(C,X),E=Math.max(E,X),$=Math.min($,Q),O=Math.max(O,Q)});const A=C+y/2,_=$+y/2,V=E-C,H=O-$,U=l*a,W=u*a,P=(V+U)*2,I=H+W,[L,D]=fp(P,I);function F(q=0,j=0){L.drawImage(k,A,_,V,H,q,j+p,V,H)}return F(),F(V+U,-H/2-W/2),F(V+U,+H/2+W/2),[D.toDataURL(),P/a,I/a]}return e}var sX=se({name:"ElWatermark",__name:"watermark",props:ZG,setup(e){const t={position:"relative"},n=e,a=w(()=>n.font?.fontGap??3),o=w(()=>n.font?.color??"rgba(0,0,0,.15)"),s=w(()=>n.font?.fontSize??16),r=w(()=>n.font?.fontWeight??"normal"),l=w(()=>n.font?.fontStyle??"normal"),u=w(()=>n.font?.fontFamily??"sans-serif"),c=w(()=>n.font?.textAlign??"center"),d=w(()=>n.font?.textBaseline??"hanging"),f=w(()=>n.gap[0]),v=w(()=>n.gap[1]),g=w(()=>f.value/2),p=w(()=>v.value/2),h=w(()=>n.offset?.[0]??g.value),m=w(()=>n.offset?.[1]??p.value),b=()=>{const A={zIndex:n.zIndex,position:"absolute",left:0,top:0,width:"100%",height:"100%",pointerEvents:"none",backgroundRepeat:"repeat"};let _=h.value-g.value,V=m.value-p.value;return _>0&&(A.left=`${_}px`,A.width=`calc(100% - ${_}px)`,_=0),V>0&&(A.top=`${V}px`,A.height=`calc(100% - ${V}px)`,V=0),A.backgroundPosition=`${_}px ${V}px`,A},k=Xt(null),y=Xt(),S=M(!1),C=()=>{y.value&&(y.value.remove(),y.value=void 0)},E=(A,_)=>{k.value&&y.value&&(S.value=!0,y.value.setAttribute("style",eX({...b(),backgroundImage:`url('${A}')`,backgroundSize:`${Math.floor(_)}px`})),k.value?.append(y.value),setTimeout(()=>{S.value=!1}))},$=A=>{let _=120,V=64,H=0;const{image:U,content:W,width:P,height:I,rotate:L}=n;if(!U&&A.measureText){A.font=`${Number(s.value)}px ${u.value}`;const D=ye(W)?W:[W];let F=0,q=0;D.forEach(X=>{const{width:Q,fontBoundingBoxAscent:he,fontBoundingBoxDescent:ue,actualBoundingBoxAscent:ge,actualBoundingBoxDescent:ie}=A.measureText(X),ae=Tt(he)?ge+ie:he+ue;Q>F&&(F=Math.ceil(Q)),ae>q&&(q=Math.ceil(ae))}),_=F,V=q*D.length+(D.length-1)*a.value;const j=Math.PI/180*Number(L);H=Math.ceil(Math.abs(Math.sin(j)*V)/2),_+=H}return[P??_,I??V,H]},O=oX(),N=()=>{const A=document.createElement("canvas").getContext("2d"),_=n.image,V=n.content,H=n.rotate;if(A){y.value||(y.value=document.createElement("div"));const U=tX(),[W,P,I]=$(A),L=D=>{const[F,q]=O(D||"",H,U,W,P,{color:o.value,fontSize:s.value,fontStyle:l.value,fontWeight:r.value,fontFamily:u.value,fontGap:a.value,textAlign:c.value,textBaseline:d.value},f.value,v.value,I);E(F,q)};if(_){const D=new Image;D.onload=()=>{L(D)},D.onerror=()=>{L(V)},D.crossOrigin="anonymous",D.referrerPolicy="no-referrer",D.src=_}else L(V)}};return ht(()=>{N()}),le(()=>n,()=>{N()},{deep:!0,flush:"post"}),Bt(()=>{C()}),su(k,A=>{S.value||A.forEach(_=>{nX(_,y.value)&&(C(),N())})},{attributes:!0,subtree:!0,childList:!0}),(A,_)=>(x(),B("div",{ref_key:"containerRef",ref:k,style:Ke([t])},[ee(A.$slots,"default")],4))}}),rX=sX;const lX=rt(rX),iX=["absolute","fixed"],uX=["top-start","top-end","top","bottom-start","bottom-end","bottom","left-start","left-end","left","right-start","right-end","right"],Zm=Ce({placement:{type:G(String),values:uX,default:"bottom"},reference:{type:G(Object),default:null},strategy:{type:G(String),values:iX,default:"absolute"},offset:{type:Number,default:10},showArrow:Boolean,zIndex:{type:Number,default:2001}}),cX={close:()=>!0},dX=Ce({modelValue:Boolean,current:{type:Number,default:0},showArrow:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeIcon:{type:Kt},placement:Zm.placement,contentStyle:{type:G([Object])},mask:{type:G([Boolean,Object]),default:!0},gap:{type:G(Object),default:()=>({offset:6,radius:2})},zIndex:{type:Number},scrollIntoViewOptions:{type:G([Boolean,Object]),default:()=>({block:"center"})},type:{type:G(String)},appendTo:{type:au.to.type,default:"body"},closeOnPressEscape:{type:Boolean,default:!0},targetAreaClickable:{type:Boolean,default:!0}}),fX={[at]:e=>Ht(e),"update:current":e=>He(e),close:e=>He(e),finish:()=>!0,change:e=>He(e)},pX=Ce({target:{type:G([String,Object,Function])},title:String,description:String,showClose:{type:Boolean,default:void 0},closeIcon:{type:Kt},showArrow:{type:Boolean,default:void 0},placement:Zm.placement,mask:{type:G([Boolean,Object]),default:void 0},contentStyle:{type:G([Object])},prevButtonProps:{type:G(Object)},nextButtonProps:{type:G(Object)},scrollIntoViewOptions:{type:G([Boolean,Object]),default:void 0},type:{type:G(String)}}),hX={close:()=>!0},vX=(e,t,n,a,o)=>{const s=M(null),r=()=>{let d;return Le(e.value)?d=document.querySelector(e.value):Ve(e.value)?d=e.value():d=e.value,d},l=()=>{const d=r();if(!d||!t.value){s.value=null;return}mX(d)||d.scrollIntoView(o.value);const{left:f,top:v,width:g,height:p}=d.getBoundingClientRect();s.value={left:f,top:v,width:g,height:p,radius:0}};ht(()=>{le([t,e],()=>{l()},{immediate:!0}),window.addEventListener("resize",l)}),Bt(()=>{window.removeEventListener("resize",l)});const u=d=>(ye(n.value.offset)?n.value.offset[d]:n.value.offset)??6,c=w(()=>{if(!s.value)return s.value;const d=u(0),f=u(1),v=n.value?.radius||2;return{left:s.value.left-d,top:s.value.top-f,width:s.value.width+d*2,height:s.value.height+f*2,radius:v}});return{mergedPosInfo:c,triggerTarget:w(()=>{const d=r();return!a.value||!d||!window.DOMRect?d||void 0:{getBoundingClientRect(){return window.DOMRect.fromRect({width:c.value?.width||0,height:c.value?.height||0,x:c.value?.left||0,y:c.value?.top||0})}}})}},ff=Symbol("ElTour");function mX(e){const t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,{top:a,right:o,bottom:s,left:r}=e.getBoundingClientRect();return a>=0&&r>=0&&o<=t&&s<=n}const gX=(e,t,n,a,o,s,r,l)=>{const u=M(),c=M(),d=M({}),f={x:u,y:c,placement:a,strategy:o,middlewareData:d},v=w(()=>{const b=[g4(i(s)),y4(),b4(),bX()];return i(l)&&i(n)&&b.push(w4({element:i(n)})),b}),g=async()=>{if(!Mt)return;const b=i(e),k=i(t);if(!b||!k)return;const y=await S4(b,k,{placement:i(a),strategy:i(o),middleware:i(v)});Oi(f).forEach(S=>{f[S].value=y[S]})},p=w(()=>{if(!i(e))return{position:"fixed",top:"50%",left:"50%",transform:"translate3d(-50%, -50%, 0)",maxWidth:"100vw",zIndex:i(r)};const{overflow:b}=i(d);return{position:i(o),zIndex:i(r),top:i(c)!=null?`${i(c)}px`:"",left:i(u)!=null?`${i(u)}px`:"",maxWidth:b?.maxWidth?`${b?.maxWidth}px`:""}}),h=w(()=>{if(!i(l))return{};const{arrow:b}=i(d);return{left:b?.x!=null?`${b?.x}px`:"",top:b?.y!=null?`${b?.y}px`:""}});let m;return ht(()=>{const b=i(e),k=i(t);b&&k&&(m=v4(b,k,g)),wa(()=>{g()})}),Bt(()=>{m&&m()}),{update:g,contentStyle:p,arrowStyle:h}},bX=()=>({name:"overflow",async fn(e){const t=await m4(e);let n=0;return t.left>0&&(n=t.left),t.right>0&&(n=t.right),{data:{maxWidth:e.rects.floating.width-n}}}}),yX=Ce({zIndex:{type:Number,default:1001},visible:Boolean,fill:{type:String,default:"rgba(0,0,0,0.5)"},pos:{type:G(Object)},targetAreaClickable:{type:Boolean,default:!0}}),wX={style:{width:"100%",height:"100%"}},SX=["d"];var CX=se({name:"ElTourMask",inheritAttrs:!1,__name:"mask",props:yX,setup(e){const t=e,{ns:n}=_e(ff),a=w(()=>t.pos?.radius??2),o=w(()=>{const d=a.value,f=`a${d},${d} 0 0 1`;return{topRight:`${f} ${d},${d}`,bottomRight:`${f} ${-d},${d}`,bottomLeft:`${f} ${-d},${-d}`,topLeft:`${f} ${d},${-d}`}}),{width:s,height:r}=_v(),l=w(()=>{const d=s.value,f=r.value,v=o.value,g=`M${d},0 L0,0 L0,${f} L${d},${f} L${d},0 Z`,p=a.value;return t.pos?`${g} M${t.pos.left+p},${t.pos.top} h${t.pos.width-p*2} ${v.topRight} v${t.pos.height-p*2} ${v.bottomRight} h${-t.pos.width+p*2} ${v.bottomLeft} v${-t.pos.height+p*2} ${v.topLeft} z`:g}),u=w(()=>({position:"fixed",left:0,right:0,top:0,bottom:0,zIndex:t.zIndex,pointerEvents:t.pos&&t.targetAreaClickable?"none":"auto"})),c=w(()=>({fill:t.fill,pointerEvents:"auto",cursor:"auto"}));return qd(Vt(t,"visible"),{ns:n}),(d,f)=>e.visible?(x(),B("div",dt({key:0,class:i(n).e("mask"),style:u.value},d.$attrs),[(x(),B("svg",wX,[z("path",{class:T(i(n).e("hollow")),style:Ke(c.value),d:l.value},null,14,SX)]))],16)):te("v-if",!0)}}),kX=CX;const EX=["data-side"];var xX=se({name:"ElTourContent",__name:"content",props:Zm,emits:cX,setup(e,{emit:t}){const n=e,a=t,o=M(n.placement),s=M(n.strategy),r=M(null),l=M(null);le(()=>n.placement,()=>{o.value=n.placement});const{contentStyle:u,arrowStyle:c}=gX(Vt(n,"reference"),r,l,o,s,Vt(n,"offset"),Vt(n,"zIndex"),Vt(n,"showArrow")),d=w(()=>o.value.split("-")[0]),{ns:f}=_e(ff),v=()=>{a("close")},g=p=>{p.detail.focusReason==="pointer"&&p.preventDefault()};return(p,h)=>(x(),B("div",{ref_key:"contentRef",ref:r,style:Ke(i(u)),class:T(i(f).e("content")),"data-side":d.value,tabindex:"-1"},[Y(i(Al),{loop:"",trapped:"","focus-start-el":"container","focus-trap-el":r.value||void 0,onReleaseRequested:v,onFocusoutPrevented:g},{default:J(()=>[ee(p.$slots,"default")]),_:3},8,["focus-trap-el"]),e.showArrow?(x(),B("span",{key:0,ref_key:"arrowRef",ref:l,style:Ke(i(c)),class:T(i(f).e("arrow"))},null,6)):te("v-if",!0)],14,EX))}}),TX=xX,$X=se({name:"ElTourSteps",props:{current:{type:Number,default:0}},emits:["update-total"],setup(e,{slots:t,emit:n}){let a=0;return()=>{const o=t.default?.(),s=[];let r=0;function l(u){ye(u)&&u.forEach(c=>{(c?.type||{})?.name==="ElTourStep"&&(s.push(c),r+=1)})}return o.length&&l(Ta(o[0]?.children)),a!==r&&(a=r,n("update-total",r)),s.length?s[e.current]:null}}}),OX=se({name:"ElTour",inheritAttrs:!1,__name:"tour",props:dX,emits:fX,setup(e,{emit:t}){const n=e,a=t,o=fe("tour"),s=M(0),r=M(),l=jS(n,"current",a,{passive:!0}),u=w(()=>r.value?.target),c=w(()=>[o.b(),b.value==="primary"?o.m("primary"):""]),d=w(()=>r.value?.placement||n.placement),f=w(()=>r.value?.contentStyle??n.contentStyle),v=w(()=>r.value?.mask??n.mask),g=w(()=>!!v.value&&n.modelValue),p=w(()=>Ht(v.value)?void 0:v.value),h=w(()=>!!u.value&&(r.value?.showArrow??n.showArrow)),m=w(()=>r.value?.scrollIntoViewOptions??n.scrollIntoViewOptions),b=w(()=>r.value?.type??n.type),{nextZIndex:k}=uu(),y=k(),S=w(()=>n.zIndex??y),{mergedPosInfo:C,triggerTarget:E}=vX(u,Vt(n,"modelValue"),Vt(n,"gap"),v,m);le(()=>n.modelValue,R=>{R||(l.value=0)});const $=()=>{n.closeOnPressEscape&&(a(at,!1),a("close",l.value))},O=R=>{s.value=R},N=vn();return St(ff,{currentStep:r,current:l,total:s,showClose:Vt(n,"showClose"),closeIcon:Vt(n,"closeIcon"),mergedType:b,ns:o,slots:N,updateModelValue(R){a(at,R)},onClose(){a("close",l.value)},onFinish(){a("finish")},onChange(){a(yt,l.value)}}),(R,A)=>(x(),B(Fe,null,[Y(i(_l),{to:e.appendTo},{default:J(()=>[z("div",dt({class:c.value},R.$attrs),[Y(kX,{visible:g.value,fill:p.value?.color,style:Ke(p.value?.style),pos:i(C),"z-index":S.value,"target-area-clickable":e.targetAreaClickable},null,8,["visible","fill","style","pos","z-index","target-area-clickable"]),e.modelValue?(x(),oe(TX,{key:i(l),reference:i(E),placement:d.value,"show-arrow":h.value,"z-index":S.value,style:Ke(f.value),onClose:$},{default:J(()=>[Y(i($X),{current:i(l),onUpdateTotal:O},{default:J(()=>[ee(R.$slots,"default")]),_:3},8,["current"])]),_:3},8,["reference","placement","show-arrow","z-index","style"])):te("v-if",!0)],16)]),_:3},8,["to"]),te(" just for IDE "),te("v-if",!0)],64))}}),RX=OX;const NX=["aria-label"];var IX=se({name:"ElTourStep",__name:"step",props:pX,emits:hX,setup(e,{emit:t}){const n=e,a=t,{Close:o}=HC,{t:s}=Ct(),{currentStep:r,current:l,total:u,showClose:c,closeIcon:d,mergedType:f,ns:v,slots:g,updateModelValue:p,onClose:h,onFinish:m,onChange:b}=_e(ff);le(n,R=>{r.value=R},{immediate:!0});const k=w(()=>n.showClose??c.value),y=w(()=>n.closeIcon??d.value??o),S=R=>{if(R)return tu(R,["children","onClick"])},C=()=>{l.value-=1,n.prevButtonProps?.onClick&&n.prevButtonProps?.onClick(),b()},E=()=>{l.value>=u.value-1?$():l.value+=1,n.nextButtonProps?.onClick&&n.nextButtonProps.onClick(),b()},$=()=>{O(),m()},O=()=>{p(!1),h(),a("close")},N=R=>{if(!R.target?.isContentEditable)switch(jt(R)){case we.left:R.preventDefault(),l.value>0&&C();break;case we.right:R.preventDefault(),E();break}};return ht(()=>{window.addEventListener("keydown",N)}),Bt(()=>{window.removeEventListener("keydown",N)}),(R,A)=>(x(),B(Fe,null,[k.value?(x(),B("button",{key:0,"aria-label":i(s)("el.tour.close"),class:T(i(v).e("closebtn")),type:"button",onClick:O},[Y(i(De),{class:T(i(v).e("close"))},{default:J(()=>[(x(),oe(it(y.value)))]),_:1},8,["class"])],10,NX)):te("v-if",!0),z("header",{class:T([i(v).e("header"),{"show-close":i(c)}])},[ee(R.$slots,"header",{},()=>[z("span",{role:"heading",class:T(i(v).e("title"))},Se(e.title),3)])],2),z("div",{class:T(i(v).e("body"))},[ee(R.$slots,"default",{},()=>[z("span",null,Se(e.description),1)])],2),z("footer",{class:T(i(v).e("footer"))},[z("div",{class:T(i(v).b("indicators"))},[i(g).indicators?(x(),oe(it(i(g).indicators),{key:0,current:i(l),total:i(u)},null,8,["current","total"])):(x(!0),B(Fe,{key:1},gt(i(u),(_,V)=>(x(),B("span",{key:_,class:T([i(v).b("indicator"),i(v).is("active",V===i(l))])},null,2))),128))],2),z("div",{class:T(i(v).b("buttons"))},[i(l)>0?(x(),oe(i(In),dt({key:0,size:"small",type:i(f)},S(e.prevButtonProps),{onClick:C}),{default:J(()=>[wt(Se(e.prevButtonProps?.children??i(s)("el.tour.previous")),1)]),_:1},16,["type"])):te("v-if",!0),i(l)<=i(u)-1?(x(),oe(i(In),dt({key:1,size:"small",type:i(f)==="primary"?"default":"primary"},S(e.nextButtonProps),{onClick:E}),{default:J(()=>[wt(Se(e.nextButtonProps?.children??(i(l)===i(u)-1?i(s)("el.tour.finish"):i(s)("el.tour.next"))),1)]),_:1},16,["type"])):te("v-if",!0)],2)],2)],64))}}),nx=IX;const PX=rt(RX,{TourStep:nx}),MX=an(nx),_X=Ce({container:{type:G([String,Object])},offset:{type:Number,default:0},bound:{type:Number,default:15},duration:{type:Number,default:300},marker:{type:Boolean,default:!0},type:{type:G(String),default:"default"},direction:{type:G(String),default:"vertical"},selectScrollTop:Boolean}),AX={change:e=>Le(e),click:(e,t)=>e instanceof MouseEvent&&(Le(t)||Tt(t))},ec=(e=>{if(!Mt||e==="")return null;if(Le(e))try{return document.querySelector(e)}catch{return null}return e});function LX(e){let t=0;const n=(...a)=>{t&&rs(t),t=eo(()=>{e(...a),t=0})};return n.cancel=()=>{rs(t),t=0},n}const ax=Symbol("anchor");var DX=se({name:"ElAnchor",__name:"anchor",props:_X,emits:AX,setup(e,{expose:t,emit:n}){const a=e,o=n,s=vn(),r=M(""),l=M({}),u=M(null),c=M(null),d=M(),f={};let v=!1,g=0;const p=fe("anchor"),h=w(()=>[p.b(),a.type==="underline"?p.m("underline"):"",p.m(a.direction)]),m=_=>{f[_.href]=_.el},b=_=>{delete f[_]},k=_=>{r.value!==_&&(r.value=_,o(yt,_))};let y=null,S="";const C=_=>{if(!d.value)return;const V=ec(_);if(!V)return;if(y){if(S===_)return;y()}S=_,v=!0;const H=Lb(V,d.value),U=hh(V,H),W=H.scrollHeight-H.clientHeight,P=Math.min(U-a.offset,W);y=g_(d.value,g,P,a.duration,()=>{setTimeout(()=>{v=!1,S=""},20)})},E=_=>{_&&(k(_),C(_))},$=(_,V)=>{o("click",_,V),E(V)},O=LX(()=>{d.value&&(g=Db(d.value));const _=N();v||Tt(_)||k(_)}),N=()=>{if(!d.value)return;const _=Db(d.value),V=[];for(const H of Object.keys(f)){const U=ec(H);if(!U)continue;const W=hh(U,Lb(U,d.value));V.push({top:W-a.offset-a.bound,href:H})}V.sort((H,U)=>H.top-U.top);for(let H=0;H_))return U.href}},R=()=>{const _=ec(a.container);!_||nu(_)?d.value=window:d.value=_};Ft(d,"scroll",O);const A=()=>{Re(()=>{if(!u.value||!c.value||!r.value){l.value={};return}const _=f[r.value];if(!_){l.value={};return}const V=u.value.getBoundingClientRect(),H=c.value.getBoundingClientRect(),U=_.getBoundingClientRect();a.direction==="horizontal"?l.value={left:`${U.left-V.left}px`,width:`${U.width}px`,opacity:1}:l.value={top:`${U.top-V.top+(U.height-H.height)/2}px`,opacity:1}})};return le(r,A),le(()=>s.default?.(),A),ht(()=>{R();const _=decodeURIComponent(window.location.hash);ec(_)?E(_):O()}),le(()=>a.container,()=>{R()}),St(ax,{ns:p,direction:a.direction,currentAnchor:r,addLink:m,removeLink:b,handleClick:$}),t({scrollTo:E}),(_,V)=>(x(),B("div",{ref_key:"anchorRef",ref:u,class:T(h.value)},[e.marker?(x(),B("div",{key:0,ref_key:"markerRef",ref:c,class:T(i(p).e("marker")),style:Ke(l.value)},null,6)):te("v-if",!0),z("div",{class:T(i(p).e("list"))},[ee(_.$slots,"default")],2)],2))}}),BX=DX;const FX=Ce({title:String,href:String}),VX=["href"];var zX=se({name:"ElAnchorLink",__name:"anchor-link",props:FX,setup(e){const t=e,n=M(null),{ns:a,direction:o,currentAnchor:s,addLink:r,removeLink:l,handleClick:u}=_e(ax),c=w(()=>[a.e("link"),a.is("active",s.value===t.href)]),d=f=>{u(f,t.href)};return le(()=>t.href,(f,v)=>{Re(()=>{v&&l(v),f&&r({href:f,el:n.value})})}),ht(()=>{const{href:f}=t;f&&r({href:f,el:n.value})}),Bt(()=>{const{href:f}=t;f&&l(f)}),(f,v)=>(x(),B("div",{class:T(i(a).e("item"))},[z("a",{ref_key:"linkRef",ref:n,class:T(c.value),href:e.href,onClick:d},[ee(f.$slots,"default",{},()=>[wt(Se(e.title),1)])],10,VX),f.$slots["sub-link"]&&i(o)==="vertical"?(x(),B("div",{key:0,class:T(i(a).e("list"))},[ee(f.$slots,"sub-link")],2)):te("v-if",!0)],2))}}),ox=zX;const HX=rt(BX,{AnchorLink:ox}),KX=an(ox),sx={label:"label",value:"value",disabled:"disabled"},WX=Ce({direction:{type:G(String),default:"horizontal"},options:{type:G(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:G(Object),default:()=>sx},block:Boolean,size:Tn,disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},id:String,name:String,...aa(["ariaLabel"])}),jX={[at]:e=>Le(e)||He(e)||Ht(e),[yt]:e=>Le(e)||He(e)||Ht(e)},UX=["id","aria-label","aria-labelledby"],qX=["name","disabled","checked","onChange"];var YX=se({name:"ElSegmented",__name:"segmented",props:WX,emits:jX,setup(e,{emit:t}){const n=e,a=t,o=fe("segmented"),s=zn(),r=Cn(),l=un(),{formItem:u}=Dn(),{inputId:c,isLabeledByFormItem:d}=Ia(n,{formItemContext:u}),f=M(null),v=e_(),g=At({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),p=(_,V)=>{const H=b(V);a(at,H),a(yt,H),_.target.checked=H===n.modelValue},h=w(()=>({...sx,...n.props})),m=_=>_,b=_=>ot(_)?_[h.value.value]:_,k=_=>ot(_)?_[h.value.label]:_,y=_=>!!(l.value||ot(_)&&_[h.value.disabled]),S=_=>n.modelValue===b(_),C=_=>n.options.find(V=>b(V)===_),E=_=>[o.e("item"),o.is("selected",S(_)),o.is("disabled",y(_))],$=()=>{if(!f.value)return;const _=f.value.querySelector(".is-selected"),V=f.value.querySelector(".is-selected input");if(!_||!V){g.width=0,g.height=0,g.translateX=0,g.translateY=0,g.focusVisible=!1;return}g.isInit=!0,n.direction==="vertical"?(g.height=_.offsetHeight,g.translateY=_.offsetTop):(g.width=_.offsetWidth,g.translateX=_.offsetLeft);try{g.focusVisible=V.matches(":focus-visible")}catch{}},O=w(()=>[o.b(),o.m(r.value),o.is("block",n.block)]),N=w(()=>({width:n.direction==="vertical"?"100%":`${g.width}px`,height:n.direction==="vertical"?`${g.height}px`:"100%",transform:n.direction==="vertical"?`translateY(${g.translateY}px)`:`translateX(${g.translateX}px)`,display:g.isInit?"block":"none"})),R=w(()=>[o.e("item-selected"),o.is("disabled",y(C(n.modelValue))),o.is("focus-visible",g.focusVisible)]),A=w(()=>n.name||s.value);return en(f,$),le(v,$),le(()=>n.modelValue,()=>{$(),n.validateEvent&&u?.validate?.("change").catch(_=>pt(_))},{flush:"post"}),(_,V)=>e.options.length?(x(),B("div",{key:0,id:i(c),ref_key:"segmentedRef",ref:f,class:T(O.value),role:"radiogroup","aria-label":i(d)?void 0:e.ariaLabel||"segmented","aria-labelledby":i(d)?i(u).labelId:void 0},[z("div",{class:T([i(o).e("group"),i(o).m(e.direction)])},[z("div",{style:Ke(N.value),class:T(R.value)},null,6),(x(!0),B(Fe,null,gt(e.options,(H,U)=>(x(),B("label",{key:U,class:T(E(H))},[z("input",{class:T(i(o).e("item-input")),type:"radio",name:A.value,disabled:y(H),checked:S(H),onChange:W=>p(W,H)},null,42,qX),z("div",{class:T(i(o).e("item-label"))},[ee(_.$slots,"default",{item:m(H)},()=>[wt(Se(k(H)),1)])],2)],2))),128))],2)],10,UX)):te("v-if",!0)}}),GX=YX;const XX=rt(GX),JX=(e,t)=>{const n=e.toLowerCase();return(t.label||t.value||"").toLowerCase().includes(n)},ZX=(e,t,n)=>{const{selectionEnd:a}=e;if(a===null)return;const o=e.value,s=Nn(t);let r=-1,l;for(let u=a-1;u>=0;--u){const c=o[u];if(c===n||c===` -`||c==="\r"){r=u;continue}if(s.includes(c)){const d=r===-1?a:r;l={pattern:o.slice(u+1,d),start:u+1,end:d,prefix:c,prefixIndex:u,splitIndex:r,selectionEnd:a};break}}return l},QX=(e,t={debug:!1,useSelectionEnd:!1})=>{const n=e.selectionStart!==null?e.selectionStart:0,a=e.selectionEnd!==null?e.selectionEnd:0,o=t.useSelectionEnd?a:n,s=["direction","boxSizing","width","height","overflowX","overflowY","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","paddingTop","paddingRight","paddingBottom","paddingLeft","fontStyle","fontVariant","fontWeight","fontStretch","fontSize","fontSizeAdjust","lineHeight","fontFamily","textAlign","textTransform","textIndent","textDecoration","letterSpacing","wordSpacing","tabSize","MozTabSize"];if(t.debug){const v=document.querySelector("#input-textarea-caret-position-mirror-div");v?.parentNode&&v.parentNode.removeChild(v)}const r=document.createElement("div");r.id="input-textarea-caret-position-mirror-div",document.body.appendChild(r);const l=r.style,u=window.getComputedStyle(e),c=e.nodeName==="INPUT";l.whiteSpace=c?"nowrap":"pre-wrap",c||(l.wordWrap="break-word"),l.position="absolute",t.debug||(l.visibility="hidden"),s.forEach(v=>{if(c&&v==="lineHeight")if(u.boxSizing==="border-box"){const g=Number.parseInt(u.height),p=Number.parseInt(u.paddingTop)+Number.parseInt(u.paddingBottom)+Number.parseInt(u.borderTopWidth)+Number.parseInt(u.borderBottomWidth),h=p+Number.parseInt(u.lineHeight);g>h?l.lineHeight=`${g-p}px`:g===h?l.lineHeight=u.lineHeight:l.lineHeight="0"}else l.lineHeight=u.height;else l[v]=u[v]}),Ud()?e.scrollHeight>Number.parseInt(u.height)&&(l.overflowY="scroll"):l.overflow="hidden",r.textContent=e.value.slice(0,Math.max(0,o)),c&&r.textContent&&(r.textContent=r.textContent.replace(/\s/g," "));const d=document.createElement("span");d.textContent=e.value.slice(Math.max(0,o))||".",d.style.position="relative",d.style.left=`${-e.scrollLeft}px`,d.style.top=`${-e.scrollTop}px`,r.appendChild(d);const f={top:d.offsetTop+Number.parseInt(u.borderTopWidth),left:d.offsetLeft+Number.parseInt(u.borderLeftWidth),height:Number.parseInt(u.fontSize)*1.5};return t.debug?d.style.backgroundColor="#aaa":document.body.removeChild(r),f.left>=e.clientWidth&&(f.left=e.clientWidth),f},eJ=Ce({...gu,options:{type:G(Array),default:()=>[]},prefix:{type:G([String,Array]),default:"@",validator:e=>Le(e)?e.length===1:e.every(t=>Le(t)&&t.length===1)},split:{type:String,default:" ",validator:e=>e.length===1},filterOption:{type:G([Boolean,Function]),default:()=>JX,validator:e=>e===!1?!0:Ve(e)},placement:{type:G(String),default:"bottom"},showArrow:Boolean,offset:{type:Number,default:0},whole:Boolean,checkIsWhole:{type:G(Function)},modelValue:String,loading:Boolean,popperClass:zt.popperClass,popperStyle:zt.popperStyle,popperOptions:{type:G(Object),default:()=>({})},props:{type:G(Object),default:()=>rx}}),tJ={[at]:e=>Le(e),"whole-remove":(e,t)=>Le(e)&&Le(t),input:e=>Le(e),search:(e,t)=>Le(e)&&Le(t),select:(e,t)=>ot(e)&&Le(t),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},rx={value:"value",label:"label",disabled:"disabled"},nJ=Ce({options:{type:G(Array),default:()=>[]},loading:Boolean,disabled:Boolean,contentId:String,ariaLabel:String}),aJ={select:e=>Le(e.value)},oJ=["id","aria-disabled","aria-selected","onMousemove","onClick"];var sJ=se({name:"ElMentionDropdown",__name:"mention-dropdown",props:nJ,emits:aJ,setup(e,{expose:t,emit:n}){const a=e,o=n,s=fe("mention"),{t:r}=Ct(),l=M(-1),u=M(),c=M(),d=M(),f=(S,C)=>[s.be("dropdown","item"),s.is("hovering",l.value===C),s.is("disabled",S.disabled||a.disabled)],v=S=>{S.disabled||a.disabled||o("select",S)},g=S=>{l.value=S},p=w(()=>a.disabled||a.options.every(S=>S.disabled)),h=w(()=>a.options[l.value]),m=()=>{!h.value||h.value.disabled||a.disabled||o("select",h.value)},b=S=>{const{options:C}=a;if(C.length===0||p.value)return;S==="next"?(l.value++,l.value===C.length&&(l.value=0)):S==="prev"&&(l.value--,l.value<0&&(l.value=C.length-1));const E=C[l.value];if(E.disabled){b(S);return}Re(()=>k(E))},k=S=>{const{options:C}=a,E=C.findIndex(O=>O.value===S.value),$=c.value?.[E];if($){const O=d.value?.querySelector?.(`.${s.be("dropdown","wrap")}`);O&&Fv(O,$)}u.value?.handleScroll()};return le(()=>a.options,()=>{p.value||a.options.length===0?l.value=-1:l.value=a.options.findIndex(S=>!S.disabled)},{immediate:!0}),t({hoveringIndex:l,navigateOptions:b,selectHoverOption:m,hoverOption:h}),(S,C)=>(x(),B("div",{ref_key:"dropdownRef",ref:d,class:T(i(s).b("dropdown"))},[S.$slots.header?(x(),B("div",{key:0,class:T(i(s).be("dropdown","header"))},[ee(S.$slots,"header")],2)):te("v-if",!0),ut(Y(i(ao),{id:e.contentId,ref_key:"scrollbarRef",ref:u,tag:"ul","wrap-class":i(s).be("dropdown","wrap"),"view-class":i(s).be("dropdown","list"),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical"},{default:J(()=>[(x(!0),B(Fe,null,gt(e.options,(E,$)=>(x(),B("li",{id:`${e.contentId}-${$}`,ref_for:!0,ref_key:"optionRefs",ref:c,key:$,class:T(f(E,$)),role:"option","aria-disabled":E.disabled||e.disabled||void 0,"aria-selected":l.value===$,onMousemove:O=>g($),onClick:Xe(O=>v(E),["stop"])},[ee(S.$slots,"label",{item:E,index:$},()=>[z("span",null,Se(E.label??E.value),1)])],42,oJ))),128))]),_:3},8,["id","wrap-class","view-class","aria-label"]),[[Pt,e.options.length>0&&!e.loading]]),e.loading?(x(),B("div",{key:1,class:T(i(s).be("dropdown","loading"))},[ee(S.$slots,"loading",{},()=>[wt(Se(i(r)("el.mention.loading")),1)])],2)):te("v-if",!0),S.$slots.footer?(x(),B("div",{key:2,class:T(i(s).be("dropdown","footer"))},[ee(S.$slots,"footer")],2)):te("v-if",!0)],2))}}),rJ=sJ,lJ=se({name:"ElMention",inheritAttrs:!1,__name:"mention",props:eJ,emits:tJ,setup(e,{expose:t,emit:n}){const a=e,o=n,s=w(()=>ss(a,Object.keys(gu))),r=fe("mention"),l=un(),u=zn(),c=M(),d=M(),f=M(),v=M(!1),g=M(),p=M(),h=w(()=>a.showArrow?a.placement:`${a.placement}-start`),m=w(()=>a.showArrow?["bottom","top"]:["bottom-start","top-start"]),b=w(()=>({...rx,...a.props})),k=P=>{const I={label:P[b.value.label],value:P[b.value.value],disabled:P[b.value.disabled]};return{...P,...I}},y=w(()=>a.options.map(k)),S=w(()=>{const{filterOption:P}=a;return!p.value||!P?y.value:y.value.filter(I=>P(p.value.pattern,I))}),C=w(()=>v.value&&(!!S.value.length||a.loading)),E=w(()=>`${u.value}-${f.value?.hoveringIndex}`),$=P=>{o(at,P),o(Sn,P),H()},O=P=>{if(c.value?.isComposing)return;const I=jt(P);switch(I){case we.left:case we.right:H();break;case we.up:case we.down:if(!v.value)return;P.preventDefault(),f.value?.navigateOptions(I===we.up?"prev":"next");break;case we.enter:case we.numpadEnter:if(!v.value){a.type!=="textarea"&&H();return}P.preventDefault(),f.value?.hoverOption?f.value?.selectHoverOption():v.value=!1;break;case we.esc:if(!v.value)return;P.preventDefault(),v.value=!1;break;case we.backspace:if(a.whole&&p.value){const{splitIndex:L,selectionEnd:D,pattern:F,prefixIndex:q,prefix:j}=p.value,X=V();if(!X)return;const Q=X.value,he=y.value.find(ue=>ue.value===F);if((Ve(a.checkIsWhole)?a.checkIsWhole(F,j):he)&&L!==-1&&L+1===D){P.preventDefault();const ue=Q.slice(0,q)+Q.slice(L+1);o(at,ue),o(Sn,ue),o("whole-remove",F,j);const ge=q;Re(()=>{X.selectionStart=ge,X.selectionEnd=ge,W()})}}}},{wrapperRef:N}=ms(c,{disabled:l,afterFocus(){H()},beforeBlur(P){return d.value?.isFocusInsideContent(P)},afterBlur(){v.value=!1}}),R=()=>{H()},A=P=>a.options.find(I=>P.value===I[b.value.value]),_=P=>{if(!p.value)return;const I=V();if(!I)return;const L=I.value,{split:D}=a,F=L.slice(p.value.end),q=F.startsWith(D),j=`${P.value}${q?"":D}`,X=L.slice(0,p.value.start)+j+F;o(at,X),o(Sn,X),o("select",A(P),p.value.prefix);const Q=p.value.start+j.length+(q?1:0);Re(()=>{I.selectionStart=Q,I.selectionEnd=Q,I.focus(),W()})},V=()=>a.type==="textarea"?c.value?.textarea:c.value?.input,H=()=>{setTimeout(()=>{U(),W(),Re(()=>d.value?.updatePopper())},0)},U=()=>{const P=V();if(!P)return;const I=QX(P),L=P.getBoundingClientRect(),D=N.value.getBoundingClientRect();g.value={position:"absolute",width:0,height:`${I.height}px`,left:`${I.left+L.left-D.left}px`,top:`${I.top+L.top-D.top}px`}},W=()=>{const P=V();if(document.activeElement!==P){v.value=!1;return}const{prefix:I,split:L}=a;if(p.value=ZX(P,I,L),p.value&&p.value.splitIndex===-1){v.value=!0,o("search",p.value.pattern,p.value.prefix);return}v.value=!1};return t({input:c,tooltip:d,dropdownVisible:C}),(P,I)=>(x(),B("div",{ref_key:"wrapperRef",ref:N,class:T(i(r).b())},[Y(i(ea),dt(dt(s.value,P.$attrs),{ref_key:"elInputRef",ref:c,"model-value":e.modelValue,disabled:i(l),role:C.value?"combobox":void 0,"aria-activedescendant":C.value?E.value||"":void 0,"aria-controls":C.value?i(u):void 0,"aria-expanded":C.value||void 0,"aria-label":e.ariaLabel,"aria-autocomplete":C.value?"none":void 0,"aria-haspopup":C.value?"listbox":void 0,onInput:$,onKeydown:O,onMousedown:R}),ua({_:2},[gt(P.$slots,(L,D)=>({name:D,fn:J(F=>[ee(P.$slots,D,Jo(Zo(F)))])}))]),1040,["model-value","disabled","role","aria-activedescendant","aria-controls","aria-expanded","aria-label","aria-autocomplete","aria-haspopup"]),Y(i(Ln),{ref_key:"tooltipRef",ref:d,visible:C.value,"popper-class":[i(r).e("popper"),e.popperClass],"popper-style":e.popperStyle,"popper-options":e.popperOptions,placement:h.value,"fallback-placements":m.value,effect:"light",pure:"",offset:e.offset,"show-arrow":e.showArrow},{default:J(()=>[z("div",{style:Ke(g.value)},null,4)]),content:J(()=>[Y(rJ,{ref_key:"dropdownRef",ref:f,options:S.value,disabled:i(l),loading:e.loading,"content-id":i(u),"aria-label":e.ariaLabel,onSelect:_,onClick:I[0]||(I[0]=Xe(L=>c.value?.focus(),["stop"]))},ua({_:2},[gt(P.$slots,(L,D)=>({name:D,fn:J(F=>[ee(P.$slots,D,Jo(Zo(F)))])}))]),1032,["options","disabled","loading","content-id","aria-label"])]),_:3},8,["visible","popper-class","popper-style","popper-options","placement","fallback-placements","offset","show-arrow"])],2))}}),iJ=lJ;const uJ=rt(iJ),cJ=Ce({layout:{type:String,default:"horizontal",values:["horizontal","vertical"]},lazy:Boolean}),dJ={resizeStart:(e,t)=>!0,resize:(e,t)=>!0,resizeEnd:(e,t)=>!0,collapse:(e,t,n)=>!0},fJ=Ce({min:{type:[String,Number]},max:{type:[String,Number]},size:{type:[String,Number]},resizable:{type:Boolean,default:!0},collapsible:Boolean}),pJ={"update:size":e=>typeof e=="number"||typeof e=="string"};function hJ(e){const t=M(),{width:n,height:a}=Dp(t);return{containerEl:t,containerSize:w(()=>e.value==="horizontal"?n.value:a.value)}}function Qm(e){return Number(e.slice(0,-1))/100}function eg(e){return Number(e.slice(0,-2))}function tg(e){return Le(e)&&e.endsWith("%")}function ng(e){return Le(e)&&e.endsWith("px")}function vJ(e,t){const n=w(()=>e.value.map(r=>r.size)),a=w(()=>e.value.length),o=M([]);le([n,a,t],()=>{let r=[],l=0;for(let c=0;cc+(d||0),0);if(u>1||!l){const c=1/u;r=r.map(d=>d===void 0?0:d*c)}else{const c=(1-u)/l;r=r.map(d=>d===void 0?c:d)}o.value=r});const s=r=>r*t.value;return{percentSizes:o,pxSizes:w(()=>o.value.map(s))}}function mJ(e,t,n,a){const o=m=>m*t.value||0;function s(m,b){return tg(m)?o(Qm(m)):ng(m)?eg(m):m??b}const r=M(0),l=M(null);let u=[],c=Dt;const d=w(()=>e.value.map(m=>[m.min,m.max]));le(a,()=>{if(r.value){const m=new MouseEvent("mouseup",{bubbles:!0});window.dispatchEvent(m)}});const f=m=>{r.value=0,l.value={index:m,confirmed:!1},u=n.value},v=(m,b)=>{let k=null;if((!l.value||!l.value.confirmed)&&b!==0){if(b>0)k=m,l.value={index:m,confirmed:!0};else for(let A=m;A>=0;A-=1)if(u[A]>0){k=A,l.value={index:A,confirmed:!0};break}}const y=k??l.value?.index??m,S=[...u],C=y+1,E=s(d.value[y][0],0),$=s(d.value[C][0],0),O=s(d.value[y][1],t.value||0),N=s(d.value[C][1],t.value||0);let R=b;S[y]+RO&&(R=O-S[y]),S[C]-R>N&&(R=S[C]-N),S[y]+=R,S[C]-=R,r.value=R,c=()=>{e.value.forEach((A,_)=>{A.size=S[_]}),c=Dt},a.value||c()},g=()=>{a.value&&c(),r.value=0,l.value=null,u=[]},p=[];return{lazyOffset:r,onMoveStart:f,onMoving:v,onMoveEnd:g,movingIndex:l,onCollapse:(m,b)=>{p.length||p.push(...n.value);const k=n.value,y=b==="start"?m:m+1,S=b==="start"?m+1:m,C=k[y],E=k[S];if(C!==0&&E!==0)k[y]=0,k[S]+=C,p[m]=C;else{const $=C+E,O=p[m],N=$-O;k[S]=O,k[y]=N}e.value.forEach(($,O)=>{$.size=k[O]})}}}const lx=Symbol("splitterRootContextKey");var gJ=se({name:"ElSplitter",__name:"splitter",props:cJ,emits:dJ,setup(e,{emit:t}){const n=fe("splitter"),a=t,o=e,s=Vt(o,"layout"),r=Vt(o,"lazy"),{containerEl:l,containerSize:u}=hJ(s),{removeChild:c,children:d,addChild:f,ChildrenSorter:v}=Qd(ft(),"ElSplitterPanel");le(d,()=>{m.value=null,d.value.forEach((R,A)=>{R.setIndex(A)})});const{percentSizes:g,pxSizes:p}=vJ(d,u),{lazyOffset:h,movingIndex:m,onMoveStart:b,onMoving:k,onMoveEnd:y,onCollapse:S}=mJ(d,u,p,r),C=w(()=>({[n.cssVarBlockName("bar-offset")]:r.value?`${h.value}px`:void 0}));return St(lx,At({panels:d,percentSizes:g,pxSizes:p,layout:s,lazy:r,movingIndex:m,containerSize:u,onMoveStart:R=>{b(R),a("resizeStart",R,p.value)},onMoving:(R,A)=>{k(R,A),r.value||a("resize",R,p.value)},onMoveEnd:async R=>{y(),await Re(),a("resizeEnd",R,p.value)},onCollapse:(R,A)=>{S(R,A),a("collapse",R,A,p.value)},registerPanel:f,unregisterPanel:c})),(R,A)=>(x(),B("div",{ref_key:"containerEl",ref:l,class:T([i(n).b(),i(n).e(s.value)]),style:Ke(C.value)},[ee(R.$slots,"default"),Y(i(v)),te(" Prevent iframe touch events from breaking "),i(m)?(x(),B("div",{key:0,class:T([i(n).e("mask"),i(n).e(`mask-${s.value}`)])},null,2)):te("v-if",!0)],6))}}),bJ=gJ;function yJ(e){return e&&ot(e)?e:{start:!!e,end:!!e}}function Q0(e,t,n,a){return!!(e?.collapsible.end&&t>0||n?.collapsible.start&&a===0&&t>0)}var wJ=se({name:"ElSplitterBar",__name:"split-bar",props:{index:{type:Number,required:!0},layout:{type:String,values:["horizontal","vertical"],default:"horizontal"},resizable:{type:Boolean,default:!0},lazy:Boolean,startCollapsible:Boolean,endCollapsible:Boolean},emits:["moveStart","moving","moveEnd","collapse"],setup(e,{emit:t}){const n=fe("splitter-bar"),a=e,o=t,s=w(()=>a.layout==="horizontal"),r=w(()=>s.value?{width:0}:{height:0}),l=w(()=>({width:s.value?"16px":"100%",height:s.value?"100%":"16px",cursor:a.resizable?s.value?"ew-resize":"ns-resize":"auto",touchAction:"none"})),u=w(()=>{const k=n.e("dragger");return{[`${k}-horizontal`]:s.value,[`${k}-vertical`]:!s.value,[`${k}-active`]:!!c.value}}),c=M(null),d=k=>{a.resizable&&(c.value=[k.pageX,k.pageY],o("moveStart",a.index),window.addEventListener("mouseup",p),window.addEventListener("mousemove",v))},f=k=>{if(a.resizable&&k.touches.length===1){k.preventDefault();const y=k.touches[0];c.value=[y.pageX,y.pageY],o("moveStart",a.index),window.addEventListener("touchend",h),window.addEventListener("touchmove",g)}},v=k=>{const{pageX:y,pageY:S}=k,C=y-c.value[0],E=S-c.value[1],$=s.value?C:E;o("moving",a.index,$)},g=k=>{if(k.touches.length===1){k.preventDefault();const y=k.touches[0],S=y.pageX-c.value[0],C=y.pageY-c.value[1],E=s.value?S:C;o("moving",a.index,E)}},p=()=>{c.value=null,window.removeEventListener("mouseup",p),window.removeEventListener("mousemove",v),o("moveEnd",a.index)},h=()=>{c.value=null,window.removeEventListener("touchend",h),window.removeEventListener("touchmove",g),o("moveEnd",a.index)},m=w(()=>s.value?is:ef),b=w(()=>s.value?na:Fo);return(k,y)=>(x(),B("div",{class:T([i(n).b()]),style:Ke(r.value)},[e.startCollapsible?(x(),B("div",{key:0,class:T([i(n).e("collapse-icon"),i(n).e(`${e.layout}-collapse-icon-start`)]),onClick:y[0]||(y[0]=S=>o("collapse",e.index,"start"))},[ee(k.$slots,"start-collapsible",{},()=>[(x(),oe(it(m.value),{style:{width:"12px",height:"12px"}}))])],2)):te("v-if",!0),z("div",{class:T([i(n).e("dragger"),u.value,i(n).is("disabled",!e.resizable),i(n).is("lazy",e.resizable&&e.lazy)]),style:Ke(l.value),onMousedown:d,onTouchstart:f},null,38),e.endCollapsible?(x(),B("div",{key:1,class:T([i(n).e("collapse-icon"),i(n).e(`${e.layout}-collapse-icon-end`)]),onClick:y[1]||(y[1]=S=>o("collapse",e.index,"end"))},[ee(k.$slots,"end-collapsible",{},()=>[(x(),oe(it(b.value),{style:{width:"12px",height:"12px"}}))])],2)):te("v-if",!0)],6))}}),SJ=wJ;const ew="ElSplitterPanel";var CJ=se({name:ew,__name:"split-panel",props:fJ,emits:pJ,setup(e,{expose:t,emit:n}){const a=fe("splitter-panel"),o=e,s=n,r=_e(lx);r||nn(ew,"usage: ");const{panels:l,layout:u,lazy:c,containerSize:d,pxSizes:f}=Mn(r),{registerPanel:v,unregisterPanel:g,onCollapse:p,onMoveEnd:h,onMoveStart:m,onMoving:b}=r,k=M(),y=ft(),S=y.uid,C=M(0),E=w(()=>l.value[C.value]),$=I=>{C.value=I},O=w(()=>E.value?f.value[C.value]??0:0),N=w(()=>E.value?f.value[C.value+1]??0:0),R=w(()=>E.value?l.value[C.value+1]:null),A=w(()=>R.value?o.resizable&&R.value?.resizable&&(O.value!==0||!o.min)&&(N.value!==0||!R.value.min):!1),_=w(()=>E.value?C.value!==l.value.length-1:!1),V=w(()=>Q0(E.value,O.value,R.value,N.value)),H=w(()=>Q0(R.value,N.value,E.value,O.value));function U(I){return tg(I)?Qm(I)*d.value||0:ng(I)?eg(I):I??0}let W=!1;le(()=>o.size,()=>{if(!W&&E.value){if(!d.value){E.value.size=o.size;return}const I=U(o.size),L=U(o.max),D=U(o.min),F=Math.min(Math.max(I,D||0),L||I);F!==I&&s("update:size",F),E.value.size=F}}),le(()=>E.value?.size,I=>{I!==o.size&&(W=!0,s("update:size",I),Re(()=>W=!1))}),le(()=>o.resizable,I=>{E.value&&(E.value.resizable=I)});const P=At({uid:S,getVnode:()=>y.vnode,setIndex:$,...o,collapsible:w(()=>yJ(o.collapsible))});return v(P),Bt(()=>g(P)),t({splitterPanelRef:k}),(I,L)=>(x(),B(Fe,null,[z("div",dt({ref_key:"panelEl",ref:k,class:[i(a).b()],style:{flexBasis:`${O.value}px`}},I.$attrs),[ee(I.$slots,"default")],16),_.value?(x(),oe(SJ,{key:0,index:C.value,layout:i(u),lazy:i(c),resizable:A.value,"start-collapsible":V.value,"end-collapsible":H.value,onMoveStart:i(m),onMoving:i(b),onMoveEnd:i(h),onCollapse:i(p)},{"start-collapsible":J(()=>[ee(I.$slots,"start-collapsible")]),"end-collapsible":J(()=>[ee(I.$slots,"end-collapsible")]),_:3},8,["index","layout","lazy","resizable","start-collapsible","end-collapsible","onMoveStart","onMoving","onMoveEnd","onCollapse"])):te("v-if",!0)],64))}}),ix=CJ;const kJ=rt(bJ,{SplitPanel:ix}),EJ=an(ix),Ea="ElInfiniteScroll",xJ=50,TJ=200,$J=0,OJ={delay:{type:Number,default:TJ},distance:{type:Number,default:$J},disabled:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0}},ag=(e,t)=>Object.entries(OJ).reduce((n,[a,o])=>{const{type:s,default:r}=o,l=e.getAttribute(`infinite-scroll-${a}`);let u=t[l]??l??r;return u=u==="false"?!1:u,u=s(u),n[a]=Number.isNaN(u)?r:u,n},{}),ux=e=>{const{observer:t}=e[Ea];t&&(t.disconnect(),delete e[Ea].observer)},RJ=(e,t)=>{const{container:n,containerEl:a,instance:o,observer:s,lastScrollTop:r}=e[Ea],{disabled:l,distance:u}=ag(e,o),{clientHeight:c,scrollHeight:d,scrollTop:f}=a,v=f-r;if(e[Ea].lastScrollTop=f,s||l||v<0)return;let g=!1;if(n===e)g=d-(c+f)<=u;else{const{clientTop:p,scrollHeight:h}=e,m=hh(e,a);g=f+c>=m+p+h-u}g&&t.call(o)};function pp(e,t){const{containerEl:n,instance:a}=e[Ea],{disabled:o}=ag(e,a);o||n.clientHeight===0||(n.scrollHeight<=n.clientHeight?t.call(a):ux(e))}const NJ={async mounted(e,t){const{instance:n,value:a}=t;To({scope:Ea,from:"the directive v-infinite-scroll",replacement:"the el-scrollbar infinite scroll",version:"3.0.0",ref:"https://element-plus.org/en-US/component/scrollbar#infinite-scroll"},!0),Ve(a)||nn(Ea,"'v-infinite-scroll' binding value must be a function"),await Re();const{delay:o,immediate:s}=ag(e,n),r=Bv(e,!0),l=r===window?document.documentElement:r,u=Rs(RJ.bind(null,e,a),o);if(r){if(e[Ea]={instance:n,container:r,containerEl:l,delay:o,cb:a,onScroll:u,lastScrollTop:l.scrollTop},s){const c=new MutationObserver(Rs(pp.bind(null,e,a),xJ));e[Ea].observer=c,c.observe(e,{childList:!0,subtree:!0}),pp(e,a)}r.addEventListener("scroll",u)}},unmounted(e){if(!e[Ea])return;const{container:t,onScroll:n}=e[Ea];t?.removeEventListener("scroll",n),ux(e)},async updated(e){if(!e[Ea])await Re();else{const{containerEl:t,cb:n,observer:a}=e[Ea];t.clientHeight&&a&&pp(e,n)}}},Dh=NJ;Dh.install=e=>{e.directive("InfiniteScroll",Dh)};const IJ=Dh;function PJ(e,t){let n;const a=M(!1),o=At({...e,originalPosition:"",originalOverflow:"",visible:!1});function s(v){o.text=v}function r(){const v=o.parent,g=f.ns;if(!v.vLoadingAddClassList){let p=v.getAttribute("loading-number");p=Number.parseInt(p)-1,p?v.setAttribute("loading-number",p.toString()):(ta(v,g.bm("parent","relative")),v.removeAttribute("loading-number")),ta(v,g.bm("parent","hidden"))}l(),d.unmount()}function l(){f.$el?.parentNode?.removeChild(f.$el)}function u(){e.beforeClose&&!e.beforeClose()||(a.value=!0,clearTimeout(n),n=setTimeout(c,400),o.visible=!1,e.closed?.())}function c(){if(!a.value)return;const v=o.parent;a.value=!1,v.vLoadingAddClassList=void 0,r()}const d=iO(se({name:"ElLoading",setup(v,{expose:g}){const{ns:p,zIndex:h}=of("loading");return g({ns:p,zIndex:h}),()=>{const m=o.spinner||o.svg,b=Ye("svg",{class:"circular",viewBox:o.svgViewBox?o.svgViewBox:"0 0 50 50",...m?{innerHTML:m}:{}},[Ye("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),k=o.text?Ye("p",{class:p.b("text")},[o.text]):void 0;return Ye(Vn,{name:p.b("fade"),onAfterLeave:c},{default:J(()=>[ut(Y("div",{style:{backgroundColor:o.background||""},class:[p.b("mask"),o.customClass,p.is("fullscreen",o.fullscreen)]},[Ye("div",{class:p.b("spinner")},[b,k])]),[[Pt,o.visible]])])})}}}));Object.assign(d._context,t??{});const f=d.mount(document.createElement("div"));return{...Mn(o),setText:s,removeElLoadingChild:l,close:u,handleAfterLeave:c,vm:f,get $el(){return f.$el}}}let tc;const rl=function(e={},t){if(!Mt)return;const n=MJ(e);if(n.fullscreen&&tc)return tc;const a=PJ({...n,closed:()=>{n.closed?.(),n.fullscreen&&(tc=void 0)}},t??rl._context);_J(n,n.parent,a),tw(n,n.parent,a),n.parent.vLoadingAddClassList=()=>tw(n,n.parent,a);let o=n.parent.getAttribute("loading-number");return o?o=`${Number.parseInt(o)+1}`:o="1",n.parent.setAttribute("loading-number",o),n.parent.appendChild(a.$el),Re(()=>a.visible.value=n.visible),n.fullscreen&&(tc=a),a},MJ=e=>{let t;return Le(e.target)?t=document.querySelector(e.target)??document.body:t=e.target||document.body,{parent:t===document.body||e.body?document.body:t,background:e.background||"",svg:e.svg||"",svgViewBox:e.svgViewBox||"",spinner:e.spinner||!1,text:e.text||"",fullscreen:t===document.body&&(e.fullscreen??!0),lock:e.lock??!1,customClass:e.customClass||"",visible:e.visible??!0,beforeClose:e.beforeClose,closed:e.closed,target:t}},_J=async(e,t,n)=>{const{nextZIndex:a}=n.vm.zIndex||n.vm._.exposed.zIndex,o={};if(e.fullscreen)n.originalPosition.value=Yo(document.body,"position"),n.originalOverflow.value=Yo(document.body,"overflow"),o.zIndex=a();else if(e.parent===document.body){n.originalPosition.value=Yo(document.body,"position"),await Re();for(const s of["top","left"]){const r=s==="top"?"scrollTop":"scrollLeft";o[s]=`${e.target.getBoundingClientRect()[s]+document.body[r]+document.documentElement[r]-Number.parseInt(Yo(document.body,`margin-${s}`),10)}px`}for(const s of["height","width"])o[s]=`${e.target.getBoundingClientRect()[s]}px`}else n.originalPosition.value=Yo(t,"position");for(const[s,r]of Object.entries(o))n.$el.style[s]=r},tw=(e,t,n)=>{const a=n.vm.ns||n.vm._.exposed.ns;["absolute","fixed","sticky"].includes(n.originalPosition.value)?ta(t,a.bm("parent","relative")):La(t,a.bm("parent","relative")),e.fullscreen&&e.lock?La(t,a.bm("parent","hidden")):ta(t,a.bm("parent","hidden"))};rl._context=null;const Ql=Symbol("ElLoading"),Zs=e=>`element-loading-${cs(e)}`,nw=(e,t)=>{const n=t.instance,a=c=>ot(t.value)?t.value[c]:void 0,o=c=>M(Le(c)&&n?.[c]||c),s=c=>o(a(c)||e.getAttribute(Zs(c))),r=a("fullscreen")??t.modifiers.fullscreen,l={text:s("text"),svg:s("svg"),svgViewBox:s("svgViewBox"),spinner:s("spinner"),background:s("background"),customClass:s("customClass"),fullscreen:r,target:a("target")??(r?void 0:e),body:a("body")??t.modifiers.body,lock:a("lock")??t.modifiers.lock},u=rl(l);u._context=vi._context,e[Ql]={options:l,instance:u}},AJ=(e,t)=>{for(const n of Object.keys(e))Jt(e[n])&&(e[n].value=t[n])},vi={mounted(e,t){t.value&&nw(e,t)},updated(e,t){const n=e[Ql];if(!t.value){n?.instance.close(),e[Ql]=null;return}n?AJ(n.options,ot(t.value)?t.value:{text:e.getAttribute(Zs("text")),svg:e.getAttribute(Zs("svg")),svgViewBox:e.getAttribute(Zs("svgViewBox")),spinner:e.getAttribute(Zs("spinner")),background:e.getAttribute(Zs("background")),customClass:e.getAttribute(Zs("customClass"))}):nw(e,t)},unmounted(e){e[Ql]?.instance.close(),e[Ql]=null}};vi._context=null;const LJ={install(e){rl._context=e._context,vi._context=e._context,e.directive("loading",vi),e.config.globalProperties.$loading=rl},directive:vi,service:rl},cx=["primary","success","info","warning","error"],dx=["top","top-left","top-right","bottom","bottom-left","bottom-right"],ll="top",Un=rn({customClass:"",dangerouslyUseHTMLString:!1,duration:3e3,icon:void 0,id:"",message:"",onClose:void 0,showClose:!1,type:"info",plain:!1,offset:16,placement:void 0,zIndex:0,grouping:!1,repeatNum:1,appendTo:Mt?document.body:void 0}),DJ=Ce({customClass:{type:String,default:Un.customClass},dangerouslyUseHTMLString:{type:Boolean,default:Un.dangerouslyUseHTMLString},duration:{type:Number,default:Un.duration},icon:{type:Kt,default:Un.icon},id:{type:String,default:Un.id},message:{type:G([String,Object,Function]),default:Un.message},onClose:{type:G(Function),default:Un.onClose},showClose:{type:Boolean,default:Un.showClose},type:{type:String,values:cx,default:Un.type},plain:{type:Boolean,default:Un.plain},offset:{type:Number,default:Un.offset},placement:{type:String,values:dx,default:Un.placement},zIndex:{type:Number,default:Un.zIndex},grouping:{type:Boolean,default:Un.grouping},repeatNum:{type:Number,default:Un.repeatNum}}),BJ={destroy:()=>!0},Xa=ev({}),FJ=e=>(Xa[e]||(Xa[e]=ev([])),Xa[e]),VJ=(e,t)=>{const n=Xa[t]||[],a=n.findIndex(r=>r.id===e),o=n[a];let s;return a>0&&(s=n[a-1]),{current:o,prev:s}},zJ=(e,t)=>{const{prev:n}=VJ(e,t);return n?n.vm.exposed.bottom.value:0},HJ=(e,t,n)=>(Xa[n]||[]).findIndex(a=>a.id===e)>0?16:t,KJ=["id"],WJ=["innerHTML"];var jJ=se({name:"ElMessage",__name:"message",props:DJ,emits:BJ,setup(e,{expose:t,emit:n}){const{Close:a}=am,o=e,s=n,r=M(!1),{ns:l,zIndex:u}=of("message"),{currentZIndex:c,nextZIndex:d}=u,f=M(),v=M(!1),g=M(0);let p;const h=w(()=>o.type?o.type==="error"?"danger":o.type:"info"),m=w(()=>{const V=o.type;return{[l.bm("icon",V)]:V&&Vs[V]}}),b=w(()=>o.icon||Vs[o.type]||""),k=w(()=>o.placement||ll),y=w(()=>zJ(o.id,k.value)),S=w(()=>HJ(o.id,o.offset,k.value)+y.value),C=w(()=>g.value+S.value),E=w(()=>k.value.includes("left")?l.is("left"):k.value.includes("right")?l.is("right"):l.is("center")),$=w(()=>k.value.startsWith("top")?"top":"bottom"),O=w(()=>({[$.value]:`${S.value}px`,zIndex:c.value}));function N(){o.duration!==0&&({stop:p}=pl(()=>{A()},o.duration))}function R(){p?.()}function A(){v.value=!1,Re(()=>{r.value||(o.onClose?.(),s("destroy"))})}function _(V){jt(V)===we.esc&&A()}return ht(()=>{N(),d(),v.value=!0}),le(()=>o.repeatNum,()=>{R(),N()}),Ft(document,"keydown",_),en(f,()=>{g.value=f.value.getBoundingClientRect().height}),t({visible:v,bottom:C,close:A}),(V,H)=>(x(),oe(Vn,{name:i(l).b("fade"),onBeforeEnter:H[0]||(H[0]=U=>r.value=!0),onBeforeLeave:e.onClose,onAfterLeave:H[1]||(H[1]=U=>V.$emit("destroy")),persisted:""},{default:J(()=>[ut(z("div",{id:e.id,ref_key:"messageRef",ref:f,class:T([i(l).b(),{[i(l).m(e.type)]:e.type},i(l).is("closable",e.showClose),i(l).is("plain",e.plain),i(l).is("bottom",$.value==="bottom"),E.value,e.customClass]),style:Ke(O.value),role:"alert",onMouseenter:R,onMouseleave:N},[e.repeatNum>1?(x(),oe(i(lk),{key:0,value:e.repeatNum,type:h.value,class:T(i(l).e("badge"))},null,8,["value","type","class"])):te("v-if",!0),b.value?(x(),oe(i(De),{key:1,class:T([i(l).e("icon"),m.value])},{default:J(()=>[(x(),oe(it(b.value)))]),_:1},8,["class"])):te("v-if",!0),ee(V.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(x(),B(Fe,{key:1},[te(" Caution here, message could've been compromised, never use user's input as message "),z("p",{class:T(i(l).e("content")),innerHTML:e.message},null,10,WJ)],2112)):(x(),B("p",{key:0,class:T(i(l).e("content"))},Se(e.message),3))]),e.showClose?(x(),oe(i(De),{key:2,class:T(i(l).e("closeBtn")),onClick:Xe(A,["stop"])},{default:J(()=>[Y(i(a))]),_:1},8,["class"])):te("v-if",!0)],46,KJ),[[Pt,v.value]])]),_:3},8,["name","onBeforeLeave"]))}}),UJ=jJ;let qJ=1;const YJ=e=>{if(!e.appendTo)e.appendTo=document.body;else if(Le(e.appendTo)){let t=document.querySelector(e.appendTo);ha(t)||(pt("ElMessage","the appendTo option is not an HTMLElement. Falling back to document.body."),t=document.body),e.appendTo=t}},GJ=e=>{!e.placement&&Le(Gn.placement)&&Gn.placement&&(e.placement=Gn.placement),e.placement||(e.placement=ll),dx.includes(e.placement)||(pt("ElMessage",`Invalid placement: ${e.placement}. Falling back to '${ll}'.`),e.placement=ll)},fx=e=>{const t=!e||Le(e)||Ut(e)||Ve(e)?{message:e}:e,n={...Un,...t};return YJ(n),GJ(n),Ht(Gn.grouping)&&!n.grouping&&(n.grouping=Gn.grouping),He(Gn.duration)&&n.duration===3e3&&(n.duration=Gn.duration),He(Gn.offset)&&n.offset===16&&(n.offset=Gn.offset),Ht(Gn.showClose)&&!n.showClose&&(n.showClose=Gn.showClose),Ht(Gn.plain)&&!n.plain&&(n.plain=Gn.plain),n},XJ=e=>{const t=Xa[e.props.placement||ll],n=t.indexOf(e);if(n===-1)return;t.splice(n,1);const{handler:a}=e;a.close()},JJ=({appendTo:e,...t},n)=>{const a=`message_${qJ++}`,o=t.onClose,s=document.createElement("div"),r={...t,id:a,onClose:()=>{o?.(),XJ(c)},onDestroy:()=>{Ls(null,s)}},l=Y(UJ,r,Ve(r.message)||Ut(r.message)?{default:Ve(r.message)?r.message:()=>r.message}:null);l.appContext=n||xr._context,Ls(l,s),e.appendChild(s.firstElementChild);const u=l.component,c={id:a,vnode:l,vm:u,handler:{close:()=>{u.exposed.close()}},props:l.component.props};return c},xr=(e={},t)=>{if(!Mt)return{close:()=>{}};const n=fx(e),a=FJ(n.placement||ll);if(n.grouping&&a.length){const s=a.find(({vnode:r})=>r.props?.message===n.message);if(s)return s.props.repeatNum+=1,s.props.type=n.type,s.handler}if(He(Gn.max)&&a.length>=Gn.max)return{close:()=>{}};const o=JJ(n,t);return a.push(o),o.handler};cx.forEach(e=>{xr[e]=(t={},n)=>xr({...fx(t),type:e},n)});function ZJ(e){for(const t in Xa)if(Nt(Xa,t)){const n=[...Xa[t]];for(const a of n)(!e||e===a.props.type)&&a.handler.close()}}function QJ(e){Xa[e]&&[...Xa[e]].forEach(t=>t.handler.close())}xr.closeAll=ZJ;xr.closeAllByPlacement=QJ;xr._context=null;const Bh=LC(xr,"$message");var eZ=se({name:"ElMessageBox",directives:{TrapFocus:S8},components:{ElButton:In,ElFocusTrap:Al,ElInput:ea,ElOverlay:Tm,ElIcon:De,...am},inheritAttrs:!1,props:{buttonSize:{type:String,validator:pE},modal:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},closeOnHashChange:{type:Boolean,default:!0},center:Boolean,draggable:Boolean,overflow:Boolean,roundButton:Boolean,container:{type:String,default:"body"},boxType:{type:String,default:""}},emits:["vanish","action"],setup(e,{emit:t}){const{locale:n,zIndex:a,ns:o,size:s}=of("message-box",w(()=>e.buttonSize)),{t:r}=n,{nextZIndex:l}=a,u=M(!1),c=At({autofocus:!0,beforeClose:null,callback:null,cancelButtonText:"",cancelButtonClass:"",confirmButtonText:"",confirmButtonClass:"",cancelButtonType:"",confirmButtonType:"primary",customClass:"",customStyle:{},dangerouslyUseHTMLString:!1,distinguishCancelAndClose:!1,icon:"",closeIcon:"",inputPattern:null,inputPlaceholder:"",inputType:"text",inputValue:"",inputValidator:void 0,inputErrorMessage:"",message:"",modalFade:!0,modalClass:"",showCancelButton:!1,showConfirmButton:!0,type:"",title:void 0,showInput:!1,action:"",confirmButtonLoading:!1,cancelButtonLoading:!1,confirmButtonLoadingIcon:xo(Ao),cancelButtonLoadingIcon:xo(Ao),confirmButtonDisabled:!1,editorErrorMessage:"",validateError:!1,zIndex:l()}),d=w(()=>{const U=c.type;return{[o.bm("icon",U)]:U&&Vs[U]}}),f=zn(),v=zn(),g=w(()=>{const U=c.type;return c.icon||U&&Vs[U]||""}),p=w(()=>!!c.message),h=M(),m=M(),b=M(),k=M(),y=M(),S=w(()=>c.confirmButtonClass);le(()=>c.inputValue,async U=>{await Re(),e.boxType==="prompt"&&U&&A()},{immediate:!0}),le(()=>u.value,U=>{U&&(e.boxType!=="prompt"&&(c.autofocus?b.value=y.value?.$el??h.value:b.value=h.value),c.zIndex=l()),e.boxType==="prompt"&&(U?Re().then(()=>{k.value&&k.value.$el&&(c.autofocus?b.value=_()??h.value:b.value=h.value)}):(c.editorErrorMessage="",c.validateError=!1))});const{isDragging:C}=ZS(h,m,w(()=>e.draggable),w(()=>e.overflow));ht(async()=>{await Re(),e.closeOnHashChange&&window.addEventListener("hashchange",E)}),Bt(()=>{e.closeOnHashChange&&window.removeEventListener("hashchange",E)});function E(){u.value&&(u.value=!1,Re(()=>{c.action&&t("action",c.action)}))}const $=()=>{e.closeOnClickModal&&R(c.distinguishCancelAndClose?"close":"cancel")},O=Yv($),N=U=>{if(c.inputType!=="textarea"&&!k.value?.isComposing)return U.preventDefault(),R("confirm")},R=U=>{e.boxType==="prompt"&&U==="confirm"&&!A()||(c.action=U,c.beforeClose?c.beforeClose?.(U,c,E):E())},A=()=>{if(e.boxType==="prompt"){const U=c.inputPattern;if(U&&!U.test(c.inputValue||""))return c.editorErrorMessage=c.inputErrorMessage||r("el.messagebox.error"),c.validateError=!0,!1;const W=c.inputValidator;if(Ve(W)){const P=W(c.inputValue);if(P===!1)return c.editorErrorMessage=c.inputErrorMessage||r("el.messagebox.error"),c.validateError=!0,!1;if(Le(P))return c.editorErrorMessage=P,c.validateError=!0,!1}}return c.editorErrorMessage="",c.validateError=!1,!0},_=()=>{const U=k.value?.$refs;return U?.input??U?.textarea},V=()=>{R("close")},H=()=>{e.closeOnPressEscape&&V()};return e.lockScroll&&qd(u,{ns:o}),{...Mn(c),ns:o,overlayEvent:O,visible:u,hasMessage:p,typeClass:d,contentId:f,inputId:v,btnSize:s,iconComponent:g,confirmButtonClasses:S,rootRef:h,focusStartRef:b,headerRef:m,inputRef:k,isDragging:C,confirmRef:y,doClose:E,handleClose:V,onCloseRequested:H,handleWrapperClick:$,handleInputEnter:N,handleAction:R,t:r}}});const tZ=["aria-label","aria-describedby"],nZ=["aria-label"],aZ=["id"];function oZ(e,t,n,a,o,s){const r=It("el-icon"),l=It("el-input"),u=It("el-button"),c=It("el-focus-trap"),d=It("el-overlay");return x(),oe(Vn,{name:"fade-in-linear",onAfterLeave:t[11]||(t[11]=f=>e.$emit("vanish")),persisted:""},{default:J(()=>[ut(Y(d,{"z-index":e.zIndex,"overlay-class":[e.ns.is("message-box"),e.modalClass],mask:e.modal},{default:J(()=>[z("div",{role:"dialog","aria-label":e.title,"aria-modal":"true","aria-describedby":e.showInput?void 0:e.contentId,class:T(`${e.ns.namespace.value}-overlay-message-box`),onClick:t[8]||(t[8]=(...f)=>e.overlayEvent.onClick&&e.overlayEvent.onClick(...f)),onMousedown:t[9]||(t[9]=(...f)=>e.overlayEvent.onMousedown&&e.overlayEvent.onMousedown(...f)),onMouseup:t[10]||(t[10]=(...f)=>e.overlayEvent.onMouseup&&e.overlayEvent.onMouseup(...f))},[Y(c,{loop:"",trapped:e.visible,"focus-trap-el":e.rootRef,"focus-start-el":e.focusStartRef,onReleaseRequested:e.onCloseRequested},{default:J(()=>[z("div",{ref:"rootRef",class:T([e.ns.b(),e.customClass,e.ns.is("draggable",e.draggable),e.ns.is("dragging",e.isDragging),{[e.ns.m("center")]:e.center}]),style:Ke(e.customStyle),tabindex:"-1",onClick:t[7]||(t[7]=Xe(()=>{},["stop"]))},[e.title!==null&&e.title!==void 0?(x(),B("div",{key:0,ref:"headerRef",class:T([e.ns.e("header"),{"show-close":e.showClose}])},[z("div",{class:T(e.ns.e("title"))},[e.iconComponent&&e.center?(x(),oe(r,{key:0,class:T([e.ns.e("status"),e.typeClass])},{default:J(()=>[(x(),oe(it(e.iconComponent)))]),_:1},8,["class"])):te("v-if",!0),z("span",null,Se(e.title),1)],2),e.showClose?(x(),B("button",{key:0,type:"button",class:T(e.ns.e("headerbtn")),"aria-label":e.t("el.messagebox.close"),onClick:t[0]||(t[0]=f=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel")),onKeydown:t[1]||(t[1]=on(Xe(f=>e.handleAction(e.distinguishCancelAndClose?"close":"cancel"),["prevent"]),["enter"]))},[Y(r,{class:T(e.ns.e("close"))},{default:J(()=>[(x(),oe(it(e.closeIcon||"close")))]),_:1},8,["class"])],42,nZ)):te("v-if",!0)],2)):te("v-if",!0),z("div",{id:e.contentId,class:T(e.ns.e("content"))},[z("div",{class:T(e.ns.e("container"))},[e.iconComponent&&!e.center&&e.hasMessage?(x(),oe(r,{key:0,class:T([e.ns.e("status"),e.typeClass])},{default:J(()=>[(x(),oe(it(e.iconComponent)))]),_:1},8,["class"])):te("v-if",!0),e.hasMessage?(x(),B("div",{key:1,class:T(e.ns.e("message"))},[ee(e.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(x(),oe(it(e.showInput?"label":"p"),{key:1,for:e.showInput?e.inputId:void 0,innerHTML:e.message},null,8,["for","innerHTML"])):(x(),oe(it(e.showInput?"label":"p"),{key:0,for:e.showInput?e.inputId:void 0,textContent:Se(e.message)},null,8,["for","textContent"]))])],2)):te("v-if",!0)],2),ut(z("div",{class:T(e.ns.e("input"))},[Y(l,{id:e.inputId,ref:"inputRef",modelValue:e.inputValue,"onUpdate:modelValue":t[2]||(t[2]=f=>e.inputValue=f),type:e.inputType,placeholder:e.inputPlaceholder,"aria-invalid":e.validateError,class:T({invalid:e.validateError}),onKeydown:on(e.handleInputEnter,["enter"])},null,8,["id","modelValue","type","placeholder","aria-invalid","class","onKeydown"]),z("div",{class:T(e.ns.e("errormsg")),style:Ke({visibility:e.editorErrorMessage?"visible":"hidden"})},Se(e.editorErrorMessage),7)],2),[[Pt,e.showInput]])],10,aZ),z("div",{class:T(e.ns.e("btns"))},[e.showCancelButton?(x(),oe(u,{key:0,type:e.cancelButtonType==="text"?"":e.cancelButtonType,text:e.cancelButtonType==="text",loading:e.cancelButtonLoading,"loading-icon":e.cancelButtonLoadingIcon,class:T([e.cancelButtonClass]),round:e.roundButton,size:e.btnSize,onClick:t[3]||(t[3]=f=>e.handleAction("cancel")),onKeydown:t[4]||(t[4]=on(Xe(f=>e.handleAction("cancel"),["prevent"]),["enter"]))},{default:J(()=>[wt(Se(e.cancelButtonText||e.t("el.messagebox.cancel")),1)]),_:1},8,["type","text","loading","loading-icon","class","round","size"])):te("v-if",!0),ut(Y(u,{ref:"confirmRef",type:e.confirmButtonType==="text"?"":e.confirmButtonType,text:e.confirmButtonType==="text",loading:e.confirmButtonLoading,"loading-icon":e.confirmButtonLoadingIcon,class:T([e.confirmButtonClasses]),round:e.roundButton,disabled:e.confirmButtonDisabled,size:e.btnSize,onClick:t[5]||(t[5]=f=>e.handleAction("confirm")),onKeydown:t[6]||(t[6]=on(Xe(f=>e.handleAction("confirm"),["prevent"]),["enter"]))},{default:J(()=>[wt(Se(e.confirmButtonText||e.t("el.messagebox.confirm")),1)]),_:1},8,["type","text","loading","loading-icon","class","round","disabled","size"]),[[Pt,e.showConfirmButton]])],2)],6)]),_:3},8,["trapped","focus-trap-el","focus-start-el","onReleaseRequested"])],42,tZ)]),_:3},8,["z-index","overlay-class","mask"]),[[Pt,e.visible]])]),_:3})}var sZ=$n(eZ,[["render",oZ]]);const ji=new Map,rZ=e=>{let t=document.body;return e.appendTo&&(Le(e.appendTo)&&(t=document.querySelector(e.appendTo)),ha(e.appendTo)&&(t=e.appendTo),ha(t)||(pt("ElMessageBox","the appendTo option is not an HTMLElement. Falling back to document.body."),t=document.body)),t},lZ=(e,t,n=null)=>{const a=Y(sZ,e,Ve(e.message)||Ut(e.message)?{default:Ve(e.message)?e.message:()=>e.message}:null);return a.appContext=n,Ls(a,t),rZ(e).appendChild(t.firstElementChild),a.component},iZ=()=>document.createElement("div"),uZ=(e,t)=>{const n=iZ();e.onVanish=()=>{Ls(null,n),ji.delete(o)},e.onAction=s=>{const r=ji.get(o);let l;e.showInput?l={value:o.inputValue,action:s}:l=s,e.callback?e.callback(l,a.proxy):s==="cancel"||s==="close"?e.distinguishCancelAndClose&&s!=="cancel"?r.reject("close"):r.reject("cancel"):r.resolve(l)};const a=lZ(e,n,t),o=a.proxy;for(const s in e)Nt(e,s)&&!Nt(o.$props,s)&&(s==="closeIcon"&&ot(e[s])?o[s]=xo(e[s]):o[s]=e[s]);return o.visible=!0,o};function Dl(e,t=null){if(!Mt)return Promise.reject();let n;return Le(e)||Ut(e)?e={message:e}:n=e.callback,new Promise((a,o)=>{const s=uZ(e,t??Dl._context);ji.set(s,{options:e,callback:n,resolve:a,reject:o})})}const cZ=["alert","confirm","prompt"],dZ={alert:{closeOnPressEscape:!1,closeOnClickModal:!1},confirm:{showCancelButton:!0},prompt:{showCancelButton:!0,showInput:!0}};cZ.forEach(e=>{Dl[e]=fZ(e)});function fZ(e){return(t,n,a,o)=>{let s="";return ot(n)?(a=n,s=""):Tt(n)?s="":s=n,Dl(Object.assign({title:s,message:t,type:"",...dZ[e]},a,{boxType:e}),o)}}Dl.close=()=>{ji.forEach((e,t)=>{t.doClose()}),ji.clear()};Dl._context=null;const Es=Dl;Es.install=e=>{Es._context=e._context,e.config.globalProperties.$msgbox=Es,e.config.globalProperties.$messageBox=Es,e.config.globalProperties.$alert=Es.alert,e.config.globalProperties.$confirm=Es.confirm,e.config.globalProperties.$prompt=Es.prompt};const pZ=Es,px=["primary","success","info","warning","error"],hZ=Ce({customClass:{type:String,default:""},dangerouslyUseHTMLString:Boolean,duration:{type:Number,default:4500},icon:{type:Kt},id:{type:String,default:""},message:{type:G([String,Object,Function]),default:""},offset:{type:Number,default:0},onClick:{type:G(Function),default:()=>{}},onClose:{type:G(Function),required:!0},position:{type:String,values:["top-right","top-left","bottom-right","bottom-left"],default:"top-right"},showClose:{type:Boolean,default:!0},title:{type:String,default:""},type:{type:String,values:[...px,""],default:""},zIndex:Number,closeIcon:{type:Kt,default:Ha}}),vZ={destroy:()=>!0},mZ=["id"],gZ=["textContent"],bZ={key:0},yZ=["innerHTML"];var wZ=se({name:"ElNotification",__name:"notification",props:hZ,emits:vZ,setup(e,{expose:t}){const n=e,{ns:a,zIndex:o}=of("notification"),{nextZIndex:s,currentZIndex:r}=o,l=M(!1);let u;const c=w(()=>{const k=n.type;return k&&Vs[n.type]?a.m(k):""}),d=w(()=>n.type&&Vs[n.type]||n.icon),f=w(()=>n.position.endsWith("right")?"right":"left"),v=w(()=>n.position.startsWith("top")?"top":"bottom"),g=w(()=>({[v.value]:`${n.offset}px`,zIndex:n.zIndex??r.value}));function p(){n.duration>0&&({stop:u}=pl(()=>{l.value&&m()},n.duration))}function h(){u?.()}function m(){l.value=!1}function b(k){switch(jt(k)){case we.delete:case we.backspace:h();break;case we.esc:l.value&&m();break;default:p();break}}return ht(()=>{p(),s(),l.value=!0}),Ft(document,"keydown",b),t({visible:l,close:m}),(k,y)=>(x(),oe(Vn,{name:i(a).b("fade"),onBeforeLeave:e.onClose,onAfterLeave:y[1]||(y[1]=S=>k.$emit("destroy")),persisted:""},{default:J(()=>[ut(z("div",{id:e.id,class:T([i(a).b(),e.customClass,f.value]),style:Ke(g.value),role:"alert",onMouseenter:h,onMouseleave:p,onClick:y[0]||(y[0]=(...S)=>e.onClick&&e.onClick(...S))},[d.value?(x(),oe(i(De),{key:0,class:T([i(a).e("icon"),c.value])},{default:J(()=>[(x(),oe(it(d.value)))]),_:1},8,["class"])):te("v-if",!0),z("div",{class:T(i(a).e("group"))},[z("h2",{class:T(i(a).e("title")),textContent:Se(e.title)},null,10,gZ),ut(z("div",{class:T(i(a).e("content")),style:Ke(e.title?void 0:{margin:0})},[ee(k.$slots,"default",{},()=>[e.dangerouslyUseHTMLString?(x(),B(Fe,{key:1},[te(" Caution here, message could've been compromised, never use user's input as message "),z("p",{innerHTML:e.message},null,8,yZ)],2112)):(x(),B("p",bZ,Se(e.message),1))])],6),[[Pt,e.message]]),e.showClose?(x(),oe(i(De),{key:0,class:T(i(a).e("closeBtn")),onClick:Xe(m,["stop"])},{default:J(()=>[(x(),oe(it(e.closeIcon)))]),_:1},8,["class"])):te("v-if",!0)],2)],46,mZ),[[Pt,l.value]])]),_:3},8,["name","onBeforeLeave"]))}}),SZ=wZ;const xl={"top-left":[],"top-right":[],"bottom-left":[],"bottom-right":[]},wd=16;let CZ=1;const Tr=function(e={},t){if(!Mt)return{close:()=>{}};(Le(e)||Ut(e))&&(e={message:e});const n=e.position||"top-right";let a=e.offset||0;xl[n].forEach(({vm:d})=>{a+=(d.el?.offsetHeight||0)+wd}),a+=wd;const o=`notification_${CZ++}`,s=e.onClose,r={...e,offset:a,id:o,onClose:()=>{kZ(o,n,s)}};let l=document.body;ha(e.appendTo)?l=e.appendTo:Le(e.appendTo)&&(l=document.querySelector(e.appendTo)),ha(l)||(pt("ElNotification","the appendTo option is not an HTMLElement. Falling back to document.body."),l=document.body);const u=document.createElement("div"),c=Y(SZ,r,Ve(r.message)?r.message:Ut(r.message)?()=>r.message:null);return c.appContext=Tt(t)?Tr._context:t,c.props.onDestroy=()=>{Ls(null,u)},Ls(c,u),xl[n].push({vm:c}),l.appendChild(u.firstElementChild),{close:()=>{c.component.exposed.visible.value=!1}}};px.forEach(e=>{Tr[e]=(t={},n)=>((Le(t)||Ut(t))&&(t={message:t}),Tr({...t,type:e},n))});function kZ(e,t,n){const a=xl[t],o=a.findIndex(({vm:c})=>c.component?.props.id===e);if(o===-1)return;const{vm:s}=a[o];if(!s)return;n?.(s);const r=s.el.offsetHeight,l=t.split("-")[0];a.splice(o,1);const u=a.length;if(!(u<1))for(let c=o;c{t.component.exposed.visible.value=!1})}function xZ(e="top-right"){let t=xl[e][0]?.vm.component?.props?.offset||0;for(const{vm:n}of xl[e])n.component.props.offset=t,t+=(n.el?.offsetHeight||0)+wd}Tr.closeAll=EZ;Tr.updateOffsets=xZ;Tr._context=null;const TZ=LC(Tr,"$notify"),$Z=Ce({trigger:No.trigger,triggerKeys:No.triggerKeys,placement:$c.placement,disabled:No.disabled,visible:zt.visible,transition:zt.transition,popperOptions:$c.popperOptions,tabindex:$c.tabindex,content:zt.content,popperStyle:zt.popperStyle,popperClass:zt.popperClass,enterable:{...zt.enterable,default:!0},effect:{...zt.effect,default:"light"},teleported:zt.teleported,appendTo:zt.appendTo,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),OZ={"update:visible":e=>Ht(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},RZ="onUpdate:visible";var NZ=se({name:"ElPopover",__name:"popover",props:$Z,emits:OZ,setup(e,{expose:t,emit:n}){const a=e,o=n,s=w(()=>a[RZ]),r=fe("popover"),l=M(),u=w(()=>i(l)?.popperRef),c=w(()=>[{width:ln(a.width)},a.popperStyle]),d=w(()=>[r.b(),a.popperClass,{[r.m("plain")]:!!a.content}]),f=w(()=>a.transition===`${r.namespace.value}-fade-in-linear`),v=()=>{l.value?.hide()},g=()=>{o("before-enter")},p=()=>{o("before-leave")},h=()=>{o("after-enter")},m=()=>{o("update:visible",!1),o("after-leave")};return t({popperRef:u,hide:v}),(b,k)=>(x(),oe(i(Ln),dt({ref_key:"tooltipRef",ref:l},b.$attrs,{trigger:e.trigger,"trigger-keys":e.triggerKeys,placement:e.placement,disabled:e.disabled,visible:e.visible,transition:e.transition,"popper-options":e.popperOptions,tabindex:e.tabindex,content:e.content,offset:e.offset,"show-after":e.showAfter,"hide-after":e.hideAfter,"auto-close":e.autoClose,"show-arrow":e.showArrow,"aria-label":e.title,effect:e.effect,enterable:e.enterable,"popper-class":d.value,"popper-style":c.value,teleported:e.teleported,"append-to":e.appendTo,persistent:e.persistent,"gpu-acceleration":f.value,"onUpdate:visible":s.value,onBeforeShow:g,onBeforeHide:p,onShow:h,onHide:m}),{content:J(()=>[e.title?(x(),B("div",{key:0,class:T(i(r).e("title")),role:"title"},Se(e.title),3)):te("v-if",!0),ee(b.$slots,"default",{hide:v},()=>[wt(Se(e.content),1)])]),default:J(()=>[b.$slots.reference?ee(b.$slots,"reference",{key:0}):te("v-if",!0)]),_:3},16,["trigger","trigger-keys","placement","disabled","visible","transition","popper-options","tabindex","content","offset","show-after","hide-after","auto-close","show-arrow","aria-label","effect","enterable","popper-class","popper-style","teleported","append-to","persistent","gpu-acceleration","onUpdate:visible"]))}}),IZ=NZ;const aw=(e,t)=>{const n=(t.arg||t.value)?.popperRef;n&&(n.triggerRef=e)};var PZ={mounted(e,t){aw(e,t)},updated(e,t){aw(e,t)}};const MZ="popover",hx=P4(PZ,MZ),_Z=rt(IZ,{directive:hx}),AZ="2.13.5",LZ=(e=[])=>({version:AZ,install:(n,a)=>{n[tb]||(n[tb]=!0,e.forEach(o=>n.use(o)),a&&um(a,n,!0))}});var DZ=[D4,tL,cB,Qq,mB,gB,kB,lk,MB,_B,In,hk,DF,zF,nV,aV,JV,e2,n6,so,yV,gm,f6,$6,O6,rf,f2,nz,VB,uz,cz,dz,fz,pz,p5,y2,C5,k5,$2,O2,X5,DK,BK,FK,D2,QL,eD,De,$W,B2,ea,F2,WW,XW,fj,pj,hj,vj,Sj,t9,r9,_Z,tk,j2,Qk,IV,NV,S9,x9,u6,ao,Hs,sd,vF,p7,y7,w7,V7,j7,g2,Cz,Z7,Q7,uU,gq,bq,Zq,fY,pY,ts,Um,K8,SY,TY,$Y,Ln,VY,Gm,iG,EG,JG,lX,PX,MX,HX,KX,XX,uJ,kJ,EJ],BZ=[IJ,LJ,Bh,pZ,TZ,hx],og=LZ([...DZ,...BZ]);og.install;og.version;var cte=og;const FZ="brand:api-secret";function VZ(){return typeof window>"u"?"0":window.localStorage.getItem("uid")||"0"}function sg(e){return`${FZ}:${VZ()}:${e}`}function ow(e,t){const n=e.getItem(sg(t));if(!n)return null;try{const a=JSON.parse(n);if(typeof a.value!="string")return null;const o=zZ(a.retention),s=typeof a.expiresAt=="number"?a.expiresAt:null,r=typeof a.updatedAt=="number"?a.updatedAt:Date.now();return{value:a.value,retention:o,expiresAt:s,updatedAt:r}}catch{return null}}function zZ(e){switch(e){case"1d":case"7d":case"30d":case"forever":case"session":return e;default:return"session"}}function HZ(e,t){switch(e){case"1d":return t+1440*60*1e3;case"7d":return t+10080*60*1e3;case"30d":return t+720*60*60*1e3;case"forever":return null;default:return null}}function KZ(e){return e.expiresAt!=null&&e.expiresAt<=Date.now()}function Fh(e,t){e.removeItem(sg(t))}function vx(e){if(typeof window>"u")return null;const t=ow(window.sessionStorage,e);if(t)return t;const n=ow(window.localStorage,e);return n?KZ(n)?(Fh(window.localStorage,e),null):n:null}function dte(e){return vx(e)?.value||""}function WZ(e){const t=vx(e);return t?{value:t.value,retention:t.retention,expiresAt:t.expiresAt,updatedAt:t.updatedAt,exists:!0}:{value:"",retention:"session",expiresAt:null,updatedAt:null,exists:!1}}function jZ(e,t,n){if(typeof window>"u")return;const a=t.trim();if(mx(e),!a)return;const o=Date.now(),s={value:a,retention:n,expiresAt:HZ(n,o),updatedAt:o};(n==="session"?window.sessionStorage:window.localStorage).setItem(sg(e),JSON.stringify(s))}function mx(e){typeof window>"u"||(Fh(window.sessionStorage,e),Fh(window.localStorage,e))}const UZ={class:"secret-settings-entry"},qZ={class:"secret-settings-body"},YZ={class:"secret-card-head"},GZ={class:"secret-card-title"},XZ={class:"secret-card-desc"},JZ=["onClick"],ZZ=["onUpdate:modelValue","placeholder"],QZ={class:"retention-block"},eQ={class:"retention-options"},tQ=["onUpdate:modelValue","value"],nQ={class:"secret-meta"},aQ={key:0},oQ={key:1},sQ={class:"dialog-footer"},rQ=se({__name:"BrandApiSecretSettingsButton",setup(e){const t=M(!1),n=[{value:"session",label:"仅本次打开有效"},{value:"1d",label:"1天"},{value:"7d",label:"7天"},{value:"30d",label:"30天"},{value:"forever",label:"长期保留"}],a=M([]);function o(c,d,f){const v=WZ(c);return{moduleKey:c,title:d,description:f,value:v.value,retention:v.retention,expiresAt:v.expiresAt,exists:v.exists}}function s(){a.value=[o("appearance-patent","外观专利","用于外观专利检测的 Coze 接口密钥。"),o("similar-asin","货源查询","用于货源查询的 Coze 接口密钥。")]}function r(c,d){if(c==="session")return"关闭软件后自动清空";if(c==="forever")return"长期保留,直到手动清空";if(!d)return"已保存";const f=new Date(d),v=f.getFullYear(),g=String(f.getMonth()+1).padStart(2,"0"),p=String(f.getDate()).padStart(2,"0"),h=String(f.getHours()).padStart(2,"0"),m=String(f.getMinutes()).padStart(2,"0");return`有效期至 ${v}-${g}-${p} ${h}:${m}`}function l(c){mx(c),s(),Bh.success("已清空密钥")}function u(){for(const c of a.value)jZ(c.moduleKey,c.value,c.retention);s(),t.value=!1,Bh.success("密钥设置已保存")}return le(t,c=>{c&&s()}),s(),(c,d)=>{const f=$2;return x(),B("div",UZ,[z("button",{type:"button",class:"secret-settings-trigger",onClick:d[0]||(d[0]=v=>t.value=!0)},[...d[3]||(d[3]=[z("span",{class:"secret-settings-icon","aria-hidden":"true"},"◎",-1),z("span",null,"密钥设置",-1)])]),Y(f,{modelValue:t.value,"onUpdate:modelValue":d[2]||(d[2]=v=>t.value=v),width:"560px",class:"secret-settings-dialog","append-to-body":!0},{header:J(()=>[...d[4]||(d[4]=[z("div",{class:"dialog-header"},[z("div",{class:"dialog-title"},"设置"),z("div",{class:"dialog-subtitle"},"按当前登录用户保存在本机,可分别管理外观专利和货源查询密钥。")],-1)])]),footer:J(()=>[z("div",sQ,[z("button",{type:"button",class:"footer-btn footer-btn-ghost",onClick:d[1]||(d[1]=v=>t.value=!1)},"取消"),z("button",{type:"button",class:"footer-btn footer-btn-primary",onClick:u},"保存")])]),default:J(()=>[z("div",qZ,[(x(!0),B(Fe,null,gt(a.value,v=>(x(),B("section",{key:v.moduleKey,class:"secret-card"},[z("div",YZ,[z("div",null,[z("div",GZ,Se(v.title),1),z("div",XZ,Se(v.description),1)]),v.exists?(x(),B("button",{key:0,type:"button",class:"link-danger",onClick:g=>l(v.moduleKey)}," 清空 ",8,JZ)):te("",!0)]),ut(z("input",{"onUpdate:modelValue":g=>v.value=g,class:"secret-input",type:"password",placeholder:`请输入${v.title}密钥`,autocomplete:"off",spellcheck:"false"},null,8,ZZ),[[hv,v.value]]),z("div",QZ,[d[5]||(d[5]=z("div",{class:"retention-label"},"保留时长",-1)),z("div",eQ,[(x(),B(Fe,null,gt(n,g=>z("label",{key:g.value,class:"retention-option"},[ut(z("input",{"onUpdate:modelValue":p=>v.retention=p,type:"radio",value:g.value},null,8,tQ),[[vv,v.retention]]),z("span",null,Se(g.label),1)])),64))])]),z("div",nQ,[v.exists?(x(),B("span",aQ,Se(r(v.retention,v.expiresAt)),1)):(x(),B("span",oQ,"当前未保存"))])]))),128))])]),_:1},8,["modelValue"])])}}}),gx=(e,t)=>{const n=e.__vccOpts||e;for(const[a,o]of t)n[a]=o;return n},lQ=gx(rQ,[["__scopeId","data-v-6bbc0070"]]);function bx(e,t){return function(){return e.apply(t,arguments)}}const{toString:iQ}=Object.prototype,{getPrototypeOf:rg}=Object,{iterator:pf,toStringTag:yx}=Symbol,hf=(e=>t=>{const n=iQ.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),po=e=>(e=e.toLowerCase(),t=>hf(t)===e),vf=e=>t=>typeof t===e,{isArray:Bl}=Array,Tl=vf("undefined");function ku(e){return e!==null&&!Tl(e)&&e.constructor!==null&&!Tl(e.constructor)&&ba(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const wx=po("ArrayBuffer");function uQ(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&wx(e.buffer),t}const cQ=vf("string"),ba=vf("function"),Sx=vf("number"),Eu=e=>e!==null&&typeof e=="object",dQ=e=>e===!0||e===!1,_c=e=>{if(hf(e)!=="object")return!1;const t=rg(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(yx in e)&&!(pf in e)},fQ=e=>{if(!Eu(e)||ku(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},pQ=po("Date"),hQ=po("File"),vQ=e=>!!(e&&typeof e.uri<"u"),mQ=e=>e&&typeof e.getParts<"u",gQ=po("Blob"),bQ=po("FileList"),yQ=e=>Eu(e)&&ba(e.pipe);function wQ(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const sw=wQ(),rw=typeof sw.FormData<"u"?sw.FormData:void 0,SQ=e=>{let t;return e&&(rw&&e instanceof rw||ba(e.append)&&((t=hf(e))==="formdata"||t==="object"&&ba(e.toString)&&e.toString()==="[object FormData]"))},CQ=po("URLSearchParams"),[kQ,EQ,xQ,TQ]=["ReadableStream","Request","Response","Headers"].map(po),$Q=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function xu(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let a,o;if(typeof e!="object"&&(e=[e]),Bl(e))for(a=0,o=e.length;a0;)if(o=n[a],t===o.toLowerCase())return o;return null}const ur=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,kx=e=>!Tl(e)&&e!==ur;function Vh(){const{caseless:e,skipUndefined:t}=kx(this)&&this||{},n={},a=(o,s)=>{if(s==="__proto__"||s==="constructor"||s==="prototype")return;const r=e&&Cx(n,s)||s;_c(n[r])&&_c(o)?n[r]=Vh(n[r],o):_c(o)?n[r]=Vh({},o):Bl(o)?n[r]=o.slice():(!t||!Tl(o))&&(n[r]=o)};for(let o=0,s=arguments.length;o(xu(t,(o,s)=>{n&&ba(o)?Object.defineProperty(e,s,{value:bx(o,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,s,{value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:a}),e),RQ=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),NQ=(e,t,n,a)=>{e.prototype=Object.create(t.prototype,a),Object.defineProperty(e.prototype,"constructor",{value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},IQ=(e,t,n,a)=>{let o,s,r;const l={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)r=o[s],(!a||a(r,e,t))&&!l[r]&&(t[r]=e[r],l[r]=!0);e=n!==!1&&rg(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},PQ=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const a=e.indexOf(t,n);return a!==-1&&a===n},MQ=e=>{if(!e)return null;if(Bl(e))return e;let t=e.length;if(!Sx(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},_Q=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&rg(Uint8Array)),AQ=(e,t)=>{const a=(e&&e[pf]).call(e);let o;for(;(o=a.next())&&!o.done;){const s=o.value;t.call(e,s[0],s[1])}},LQ=(e,t)=>{let n;const a=[];for(;(n=e.exec(t))!==null;)a.push(n);return a},DQ=po("HTMLFormElement"),BQ=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,a,o){return a.toUpperCase()+o}),lw=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),FQ=po("RegExp"),Ex=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),a={};xu(n,(o,s)=>{let r;(r=t(o,s,e))!==!1&&(a[s]=r||o)}),Object.defineProperties(e,a)},VQ=e=>{Ex(e,(t,n)=>{if(ba(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const a=e[n];if(ba(a)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},zQ=(e,t)=>{const n={},a=o=>{o.forEach(s=>{n[s]=!0})};return Bl(e)?a(e):a(String(e).split(t)),n},HQ=()=>{},KQ=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function WQ(e){return!!(e&&ba(e.append)&&e[yx]==="FormData"&&e[pf])}const jQ=e=>{const t=new Array(10),n=(a,o)=>{if(Eu(a)){if(t.indexOf(a)>=0)return;if(ku(a))return a;if(!("toJSON"in a)){t[o]=a;const s=Bl(a)?[]:{};return xu(a,(r,l)=>{const u=n(r,o+1);!Tl(u)&&(s[l]=u)}),t[o]=void 0,s}}return a};return n(e,0)},UQ=po("AsyncFunction"),qQ=e=>e&&(Eu(e)||ba(e))&&ba(e.then)&&ba(e.catch),xx=((e,t)=>e?setImmediate:t?((n,a)=>(ur.addEventListener("message",({source:o,data:s})=>{o===ur&&s===n&&a.length&&a.shift()()},!1),o=>{a.push(o),ur.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",ba(ur.postMessage)),YQ=typeof queueMicrotask<"u"?queueMicrotask.bind(ur):typeof process<"u"&&process.nextTick||xx,GQ=e=>e!=null&&ba(e[pf]),xe={isArray:Bl,isArrayBuffer:wx,isBuffer:ku,isFormData:SQ,isArrayBufferView:uQ,isString:cQ,isNumber:Sx,isBoolean:dQ,isObject:Eu,isPlainObject:_c,isEmptyObject:fQ,isReadableStream:kQ,isRequest:EQ,isResponse:xQ,isHeaders:TQ,isUndefined:Tl,isDate:pQ,isFile:hQ,isReactNativeBlob:vQ,isReactNative:mQ,isBlob:gQ,isRegExp:FQ,isFunction:ba,isStream:yQ,isURLSearchParams:CQ,isTypedArray:_Q,isFileList:bQ,forEach:xu,merge:Vh,extend:OQ,trim:$Q,stripBOM:RQ,inherits:NQ,toFlatObject:IQ,kindOf:hf,kindOfTest:po,endsWith:PQ,toArray:MQ,forEachEntry:AQ,matchAll:LQ,isHTMLForm:DQ,hasOwnProperty:lw,hasOwnProp:lw,reduceDescriptors:Ex,freezeMethods:VQ,toObjectSet:zQ,toCamelCase:BQ,noop:HQ,toFiniteNumber:KQ,findKey:Cx,global:ur,isContextDefined:kx,isSpecCompliantForm:WQ,toJSONObject:jQ,isAsyncFn:UQ,isThenable:qQ,setImmediate:xx,asap:YQ,isIterable:GQ};let _t=class Tx extends Error{static from(t,n,a,o,s,r){const l=new Tx(t.message,n||t.code,a,o,s);return l.cause=t,l.name=t.name,t.status!=null&&l.status==null&&(l.status=t.status),r&&Object.assign(l,r),l}constructor(t,n,a,o,s){super(t),Object.defineProperty(this,"message",{value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),a&&(this.config=a),o&&(this.request=o),s&&(this.response=s,this.status=s.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:xe.toJSONObject(this.config),code:this.code,status:this.status}}};_t.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";_t.ERR_BAD_OPTION="ERR_BAD_OPTION";_t.ECONNABORTED="ECONNABORTED";_t.ETIMEDOUT="ETIMEDOUT";_t.ERR_NETWORK="ERR_NETWORK";_t.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";_t.ERR_DEPRECATED="ERR_DEPRECATED";_t.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";_t.ERR_BAD_REQUEST="ERR_BAD_REQUEST";_t.ERR_CANCELED="ERR_CANCELED";_t.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";_t.ERR_INVALID_URL="ERR_INVALID_URL";const XQ=null;function zh(e){return xe.isPlainObject(e)||xe.isArray(e)}function $x(e){return xe.endsWith(e,"[]")?e.slice(0,-2):e}function hp(e,t,n){return e?e.concat(t).map(function(o,s){return o=$x(o),!n&&s?"["+o+"]":o}).join(n?".":""):t}function JQ(e){return xe.isArray(e)&&!e.some(zh)}const ZQ=xe.toFlatObject(xe,{},null,function(t){return/^is[A-Z]/.test(t)});function mf(e,t,n){if(!xe.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=xe.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,m){return!xe.isUndefined(m[h])});const a=n.metaTokens,o=n.visitor||d,s=n.dots,r=n.indexes,u=(n.Blob||typeof Blob<"u"&&Blob)&&xe.isSpecCompliantForm(t);if(!xe.isFunction(o))throw new TypeError("visitor must be a function");function c(p){if(p===null)return"";if(xe.isDate(p))return p.toISOString();if(xe.isBoolean(p))return p.toString();if(!u&&xe.isBlob(p))throw new _t("Blob is not supported. Use a Buffer instead.");return xe.isArrayBuffer(p)||xe.isTypedArray(p)?u&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function d(p,h,m){let b=p;if(xe.isReactNative(t)&&xe.isReactNativeBlob(p))return t.append(hp(m,h,s),c(p)),!1;if(p&&!m&&typeof p=="object"){if(xe.endsWith(h,"{}"))h=a?h:h.slice(0,-2),p=JSON.stringify(p);else if(xe.isArray(p)&&JQ(p)||(xe.isFileList(p)||xe.endsWith(h,"[]"))&&(b=xe.toArray(p)))return h=$x(h),b.forEach(function(y,S){!(xe.isUndefined(y)||y===null)&&t.append(r===!0?hp([h],S,s):r===null?h:h+"[]",c(y))}),!1}return zh(p)?!0:(t.append(hp(m,h,s),c(p)),!1)}const f=[],v=Object.assign(ZQ,{defaultVisitor:d,convertValue:c,isVisitable:zh});function g(p,h){if(!xe.isUndefined(p)){if(f.indexOf(p)!==-1)throw Error("Circular reference detected in "+h.join("."));f.push(p),xe.forEach(p,function(b,k){(!(xe.isUndefined(b)||b===null)&&o.call(t,b,xe.isString(k)?k.trim():k,h,v))===!0&&g(b,h?h.concat(k):[k])}),f.pop()}}if(!xe.isObject(e))throw new TypeError("data must be an object");return g(e),t}function iw(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(a){return t[a]})}function lg(e,t){this._pairs=[],e&&mf(e,this,t)}const Ox=lg.prototype;Ox.append=function(t,n){this._pairs.push([t,n])};Ox.toString=function(t){const n=t?function(a){return t.call(this,a,iw)}:iw;return this._pairs.map(function(o){return n(o[0])+"="+n(o[1])},"").join("&")};function QQ(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Rx(e,t,n){if(!t)return e;const a=n&&n.encode||QQ,o=xe.isFunction(n)?{serialize:n}:n,s=o&&o.serialize;let r;if(s?r=s(t,o):r=xe.isURLSearchParams(t)?t.toString():new lg(t,o).toString(a),r){const l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+r}return e}class uw{constructor(){this.handlers=[]}use(t,n,a){return this.handlers.push({fulfilled:t,rejected:n,synchronous:a?a.synchronous:!1,runWhen:a?a.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){xe.forEach(this.handlers,function(a){a!==null&&t(a)})}}const ig={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},eee=typeof URLSearchParams<"u"?URLSearchParams:lg,tee=typeof FormData<"u"?FormData:null,nee=typeof Blob<"u"?Blob:null,aee={isBrowser:!0,classes:{URLSearchParams:eee,FormData:tee,Blob:nee},protocols:["http","https","file","blob","url","data"]},ug=typeof window<"u"&&typeof document<"u",Hh=typeof navigator=="object"&&navigator||void 0,oee=ug&&(!Hh||["ReactNative","NativeScript","NS"].indexOf(Hh.product)<0),see=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",ree=ug&&window.location.href||"http://localhost",lee=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ug,hasStandardBrowserEnv:oee,hasStandardBrowserWebWorkerEnv:see,navigator:Hh,origin:ree},Symbol.toStringTag,{value:"Module"})),Qn={...lee,...aee};function iee(e,t){return mf(e,new Qn.classes.URLSearchParams,{visitor:function(n,a,o,s){return Qn.isNode&&xe.isBuffer(n)?(this.append(a,n.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}function uee(e){return xe.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function cee(e){const t={},n=Object.keys(e);let a;const o=n.length;let s;for(a=0;a=n.length;return r=!r&&xe.isArray(o)?o.length:r,u?(xe.hasOwnProp(o,r)?o[r]=[o[r],a]:o[r]=a,!l):((!o[r]||!xe.isObject(o[r]))&&(o[r]=[]),t(n,a,o[r],s)&&xe.isArray(o[r])&&(o[r]=cee(o[r])),!l)}if(xe.isFormData(e)&&xe.isFunction(e.entries)){const n={};return xe.forEachEntry(e,(a,o)=>{t(uee(a),o,n,0)}),n}return null}function dee(e,t,n){if(xe.isString(e))try{return(t||JSON.parse)(e),xe.trim(e)}catch(a){if(a.name!=="SyntaxError")throw a}return(n||JSON.stringify)(e)}const Tu={transitional:ig,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const a=n.getContentType()||"",o=a.indexOf("application/json")>-1,s=xe.isObject(t);if(s&&xe.isHTMLForm(t)&&(t=new FormData(t)),xe.isFormData(t))return o?JSON.stringify(Nx(t)):t;if(xe.isArrayBuffer(t)||xe.isBuffer(t)||xe.isStream(t)||xe.isFile(t)||xe.isBlob(t)||xe.isReadableStream(t))return t;if(xe.isArrayBufferView(t))return t.buffer;if(xe.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){if(a.indexOf("application/x-www-form-urlencoded")>-1)return iee(t,this.formSerializer).toString();if((l=xe.isFileList(t))||a.indexOf("multipart/form-data")>-1){const u=this.env&&this.env.FormData;return mf(l?{"files[]":t}:t,u&&new u,this.formSerializer)}}return s||o?(n.setContentType("application/json",!1),dee(t)):t}],transformResponse:[function(t){const n=this.transitional||Tu.transitional,a=n&&n.forcedJSONParsing,o=this.responseType==="json";if(xe.isResponse(t)||xe.isReadableStream(t))return t;if(t&&xe.isString(t)&&(a&&!this.responseType||o)){const r=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(t,this.parseReviver)}catch(l){if(r)throw l.name==="SyntaxError"?_t.from(l,_t.ERR_BAD_RESPONSE,this,null,this.response):l}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Qn.classes.FormData,Blob:Qn.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};xe.forEach(["delete","get","head","post","put","patch"],e=>{Tu.headers[e]={}});const fee=xe.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),pee=e=>{const t={};let n,a,o;return e&&e.split(` -`).forEach(function(r){o=r.indexOf(":"),n=r.substring(0,o).trim().toLowerCase(),a=r.substring(o+1).trim(),!(!n||t[n]&&fee[n])&&(n==="set-cookie"?t[n]?t[n].push(a):t[n]=[a]:t[n]=t[n]?t[n]+", "+a:a)}),t},cw=Symbol("internals");function Gl(e){return e&&String(e).trim().toLowerCase()}function Ac(e){return e===!1||e==null?e:xe.isArray(e)?e.map(Ac):String(e)}function hee(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let a;for(;a=n.exec(e);)t[a[1]]=a[2];return t}const vee=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function vp(e,t,n,a,o){if(xe.isFunction(a))return a.call(this,t,n);if(o&&(t=n),!!xe.isString(t)){if(xe.isString(a))return t.indexOf(a)!==-1;if(xe.isRegExp(a))return a.test(t)}}function mee(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,a)=>n.toUpperCase()+a)}function gee(e,t){const n=xe.toCamelCase(" "+t);["get","set","has"].forEach(a=>{Object.defineProperty(e,a+n,{value:function(o,s,r){return this[a].call(this,t,o,s,r)},configurable:!0})})}let ya=class{constructor(t){t&&this.set(t)}set(t,n,a){const o=this;function s(l,u,c){const d=Gl(u);if(!d)throw new Error("header name must be a non-empty string");const f=xe.findKey(o,d);(!f||o[f]===void 0||c===!0||c===void 0&&o[f]!==!1)&&(o[f||u]=Ac(l))}const r=(l,u)=>xe.forEach(l,(c,d)=>s(c,d,u));if(xe.isPlainObject(t)||t instanceof this.constructor)r(t,n);else if(xe.isString(t)&&(t=t.trim())&&!vee(t))r(pee(t),n);else if(xe.isObject(t)&&xe.isIterable(t)){let l={},u,c;for(const d of t){if(!xe.isArray(d))throw TypeError("Object iterator must return a key-value pair");l[c=d[0]]=(u=l[c])?xe.isArray(u)?[...u,d[1]]:[u,d[1]]:d[1]}r(l,n)}else t!=null&&s(n,t,a);return this}get(t,n){if(t=Gl(t),t){const a=xe.findKey(this,t);if(a){const o=this[a];if(!n)return o;if(n===!0)return hee(o);if(xe.isFunction(n))return n.call(this,o,a);if(xe.isRegExp(n))return n.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Gl(t),t){const a=xe.findKey(this,t);return!!(a&&this[a]!==void 0&&(!n||vp(this,this[a],a,n)))}return!1}delete(t,n){const a=this;let o=!1;function s(r){if(r=Gl(r),r){const l=xe.findKey(a,r);l&&(!n||vp(a,a[l],l,n))&&(delete a[l],o=!0)}}return xe.isArray(t)?t.forEach(s):s(t),o}clear(t){const n=Object.keys(this);let a=n.length,o=!1;for(;a--;){const s=n[a];(!t||vp(this,this[s],s,t,!0))&&(delete this[s],o=!0)}return o}normalize(t){const n=this,a={};return xe.forEach(this,(o,s)=>{const r=xe.findKey(a,s);if(r){n[r]=Ac(o),delete n[s];return}const l=t?mee(s):String(s).trim();l!==s&&delete n[s],n[l]=Ac(o),a[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return xe.forEach(this,(a,o)=>{a!=null&&a!==!1&&(n[o]=t&&xe.isArray(a)?a.join(", "):a)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(` -`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const a=new this(t);return n.forEach(o=>a.set(o)),a}static accessor(t){const a=(this[cw]=this[cw]={accessors:{}}).accessors,o=this.prototype;function s(r){const l=Gl(r);a[l]||(gee(o,r),a[l]=!0)}return xe.isArray(t)?t.forEach(s):s(t),this}};ya.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);xe.reduceDescriptors(ya.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(a){this[n]=a}}});xe.freezeMethods(ya);function mp(e,t){const n=this||Tu,a=t||n,o=ya.from(a.headers);let s=a.data;return xe.forEach(e,function(l){s=l.call(n,s,o.normalize(),t?t.status:void 0)}),o.normalize(),s}function Ix(e){return!!(e&&e.__CANCEL__)}let $u=class extends _t{constructor(t,n,a){super(t??"canceled",_t.ERR_CANCELED,n,a),this.name="CanceledError",this.__CANCEL__=!0}};function Px(e,t,n){const a=n.config.validateStatus;!n.status||!a||a(n.status)?e(n):t(new _t("Request failed with status code "+n.status,[_t.ERR_BAD_REQUEST,_t.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function bee(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function yee(e,t){e=e||10;const n=new Array(e),a=new Array(e);let o=0,s=0,r;return t=t!==void 0?t:1e3,function(u){const c=Date.now(),d=a[s];r||(r=c),n[o]=u,a[o]=c;let f=s,v=0;for(;f!==o;)v+=n[f++],f=f%e;if(o=(o+1)%e,o===s&&(s=(s+1)%e),c-r{n=d,o=null,s&&(clearTimeout(s),s=null),e(...c)};return[(...c)=>{const d=Date.now(),f=d-n;f>=a?r(c,d):(o=c,s||(s=setTimeout(()=>{s=null,r(o)},a-f)))},()=>o&&r(o)]}const Sd=(e,t,n=3)=>{let a=0;const o=yee(50,250);return wee(s=>{const r=s.loaded,l=s.lengthComputable?s.total:void 0,u=r-a,c=o(u),d=r<=l;a=r;const f={loaded:r,total:l,progress:l?r/l:void 0,bytes:u,rate:c||void 0,estimated:c&&l&&d?(l-r)/c:void 0,event:s,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},dw=(e,t)=>{const n=e!=null;return[a=>t[0]({lengthComputable:n,total:e,loaded:a}),t[1]]},fw=e=>(...t)=>xe.asap(()=>e(...t)),See=Qn.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,Qn.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(Qn.origin),Qn.navigator&&/(msie|trident)/i.test(Qn.navigator.userAgent)):()=>!0,Cee=Qn.hasStandardBrowserEnv?{write(e,t,n,a,o,s,r){if(typeof document>"u")return;const l=[`${e}=${encodeURIComponent(t)}`];xe.isNumber(n)&&l.push(`expires=${new Date(n).toUTCString()}`),xe.isString(a)&&l.push(`path=${a}`),xe.isString(o)&&l.push(`domain=${o}`),s===!0&&l.push("secure"),xe.isString(r)&&l.push(`SameSite=${r}`),document.cookie=l.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function kee(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Eee(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function Mx(e,t,n){let a=!kee(t);return e&&(a||n==!1)?Eee(e,t):t}const pw=e=>e instanceof ya?{...e}:e;function $r(e,t){t=t||{};const n={};function a(c,d,f,v){return xe.isPlainObject(c)&&xe.isPlainObject(d)?xe.merge.call({caseless:v},c,d):xe.isPlainObject(d)?xe.merge({},d):xe.isArray(d)?d.slice():d}function o(c,d,f,v){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return a(void 0,c,f,v)}else return a(c,d,f,v)}function s(c,d){if(!xe.isUndefined(d))return a(void 0,d)}function r(c,d){if(xe.isUndefined(d)){if(!xe.isUndefined(c))return a(void 0,c)}else return a(void 0,d)}function l(c,d,f){if(f in t)return a(c,d);if(f in e)return a(void 0,c)}const u={url:s,method:s,data:s,baseURL:r,transformRequest:r,transformResponse:r,paramsSerializer:r,timeout:r,timeoutMessage:r,withCredentials:r,withXSRFToken:r,adapter:r,responseType:r,xsrfCookieName:r,xsrfHeaderName:r,onUploadProgress:r,onDownloadProgress:r,decompress:r,maxContentLength:r,maxBodyLength:r,beforeRedirect:r,transport:r,httpAgent:r,httpsAgent:r,cancelToken:r,socketPath:r,responseEncoding:r,validateStatus:l,headers:(c,d,f)=>o(pw(c),pw(d),f,!0)};return xe.forEach(Object.keys({...e,...t}),function(d){if(d==="__proto__"||d==="constructor"||d==="prototype")return;const f=xe.hasOwnProp(u,d)?u[d]:o,v=f(e[d],t[d],d);xe.isUndefined(v)&&f!==l||(n[d]=v)}),n}const _x=e=>{const t=$r({},e);let{data:n,withXSRFToken:a,xsrfHeaderName:o,xsrfCookieName:s,headers:r,auth:l}=t;if(t.headers=r=ya.from(r),t.url=Rx(Mx(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),l&&r.set("Authorization","Basic "+btoa((l.username||"")+":"+(l.password?unescape(encodeURIComponent(l.password)):""))),xe.isFormData(n)){if(Qn.hasStandardBrowserEnv||Qn.hasStandardBrowserWebWorkerEnv)r.setContentType(void 0);else if(xe.isFunction(n.getHeaders)){const u=n.getHeaders(),c=["content-type","content-length"];Object.entries(u).forEach(([d,f])=>{c.includes(d.toLowerCase())&&r.set(d,f)})}}if(Qn.hasStandardBrowserEnv&&(a&&xe.isFunction(a)&&(a=a(t)),a||a!==!1&&See(t.url))){const u=o&&s&&Cee.read(s);u&&r.set(o,u)}return t},xee=typeof XMLHttpRequest<"u",Tee=xee&&function(e){return new Promise(function(n,a){const o=_x(e);let s=o.data;const r=ya.from(o.headers).normalize();let{responseType:l,onUploadProgress:u,onDownloadProgress:c}=o,d,f,v,g,p;function h(){g&&g(),p&&p(),o.cancelToken&&o.cancelToken.unsubscribe(d),o.signal&&o.signal.removeEventListener("abort",d)}let m=new XMLHttpRequest;m.open(o.method.toUpperCase(),o.url,!0),m.timeout=o.timeout;function b(){if(!m)return;const y=ya.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),C={data:!l||l==="text"||l==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:y,config:e,request:m};Px(function($){n($),h()},function($){a($),h()},C),m=null}"onloadend"in m?m.onloadend=b:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.indexOf("file:")===0)||setTimeout(b)},m.onabort=function(){m&&(a(new _t("Request aborted",_t.ECONNABORTED,e,m)),m=null)},m.onerror=function(S){const C=S&&S.message?S.message:"Network Error",E=new _t(C,_t.ERR_NETWORK,e,m);E.event=S||null,a(E),m=null},m.ontimeout=function(){let S=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const C=o.transitional||ig;o.timeoutErrorMessage&&(S=o.timeoutErrorMessage),a(new _t(S,C.clarifyTimeoutError?_t.ETIMEDOUT:_t.ECONNABORTED,e,m)),m=null},s===void 0&&r.setContentType(null),"setRequestHeader"in m&&xe.forEach(r.toJSON(),function(S,C){m.setRequestHeader(C,S)}),xe.isUndefined(o.withCredentials)||(m.withCredentials=!!o.withCredentials),l&&l!=="json"&&(m.responseType=o.responseType),c&&([v,p]=Sd(c,!0),m.addEventListener("progress",v)),u&&m.upload&&([f,g]=Sd(u),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",g)),(o.cancelToken||o.signal)&&(d=y=>{m&&(a(!y||y.type?new $u(null,e,m):y),m.abort(),m=null)},o.cancelToken&&o.cancelToken.subscribe(d),o.signal&&(o.signal.aborted?d():o.signal.addEventListener("abort",d)));const k=bee(o.url);if(k&&Qn.protocols.indexOf(k)===-1){a(new _t("Unsupported protocol "+k+":",_t.ERR_BAD_REQUEST,e));return}m.send(s||null)})},$ee=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let a=new AbortController,o;const s=function(c){if(!o){o=!0,l();const d=c instanceof Error?c:this.reason;a.abort(d instanceof _t?d:new $u(d instanceof Error?d.message:d))}};let r=t&&setTimeout(()=>{r=null,s(new _t(`timeout of ${t}ms exceeded`,_t.ETIMEDOUT))},t);const l=()=>{e&&(r&&clearTimeout(r),r=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(s):c.removeEventListener("abort",s)}),e=null)};e.forEach(c=>c.addEventListener("abort",s));const{signal:u}=a;return u.unsubscribe=()=>xe.asap(l),u}},Oee=function*(e,t){let n=e.byteLength;if(n{const o=Ree(e,t);let s=0,r,l=u=>{r||(r=!0,a&&a(u))};return new ReadableStream({async pull(u){try{const{done:c,value:d}=await o.next();if(c){l(),u.close();return}let f=d.byteLength;if(n){let v=s+=f;n(v)}u.enqueue(new Uint8Array(d))}catch(c){throw l(c),c}},cancel(u){return l(u),o.return()}},{highWaterMark:2})},vw=64*1024,{isFunction:nc}=xe,Iee=(({Request:e,Response:t})=>({Request:e,Response:t}))(xe.global),{ReadableStream:mw,TextEncoder:gw}=xe.global,bw=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Pee=e=>{e=xe.merge.call({skipUndefined:!0},Iee,e);const{fetch:t,Request:n,Response:a}=e,o=t?nc(t):typeof fetch=="function",s=nc(n),r=nc(a);if(!o)return!1;const l=o&&nc(mw),u=o&&(typeof gw=="function"?(p=>h=>p.encode(h))(new gw):async p=>new Uint8Array(await new n(p).arrayBuffer())),c=s&&l&&bw(()=>{let p=!1;const h=new n(Qn.origin,{body:new mw,method:"POST",get duplex(){return p=!0,"half"}}).headers.has("Content-Type");return p&&!h}),d=r&&l&&bw(()=>xe.isReadableStream(new a("").body)),f={stream:d&&(p=>p.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach(p=>{!f[p]&&(f[p]=(h,m)=>{let b=h&&h[p];if(b)return b.call(h);throw new _t(`Response type '${p}' is not supported`,_t.ERR_NOT_SUPPORT,m)})});const v=async p=>{if(p==null)return 0;if(xe.isBlob(p))return p.size;if(xe.isSpecCompliantForm(p))return(await new n(Qn.origin,{method:"POST",body:p}).arrayBuffer()).byteLength;if(xe.isArrayBufferView(p)||xe.isArrayBuffer(p))return p.byteLength;if(xe.isURLSearchParams(p)&&(p=p+""),xe.isString(p))return(await u(p)).byteLength},g=async(p,h)=>{const m=xe.toFiniteNumber(p.getContentLength());return m??v(h)};return async p=>{let{url:h,method:m,data:b,signal:k,cancelToken:y,timeout:S,onDownloadProgress:C,onUploadProgress:E,responseType:$,headers:O,withCredentials:N="same-origin",fetchOptions:R}=_x(p),A=t||fetch;$=$?($+"").toLowerCase():"text";let _=$ee([k,y&&y.toAbortSignal()],S),V=null;const H=_&&_.unsubscribe&&(()=>{_.unsubscribe()});let U;try{if(E&&c&&m!=="get"&&m!=="head"&&(U=await g(O,b))!==0){let F=new n(h,{method:"POST",body:b,duplex:"half"}),q;if(xe.isFormData(b)&&(q=F.headers.get("content-type"))&&O.setContentType(q),F.body){const[j,X]=dw(U,Sd(fw(E)));b=hw(F.body,vw,j,X)}}xe.isString(N)||(N=N?"include":"omit");const W=s&&"credentials"in n.prototype,P={...R,signal:_,method:m.toUpperCase(),headers:O.normalize().toJSON(),body:b,duplex:"half",credentials:W?N:void 0};V=s&&new n(h,P);let I=await(s?A(V,R):A(h,P));const L=d&&($==="stream"||$==="response");if(d&&(C||L&&H)){const F={};["status","statusText","headers"].forEach(Q=>{F[Q]=I[Q]});const q=xe.toFiniteNumber(I.headers.get("content-length")),[j,X]=C&&dw(q,Sd(fw(C),!0))||[];I=new a(hw(I.body,vw,j,()=>{X&&X(),H&&H()}),F)}$=$||"text";let D=await f[xe.findKey(f,$)||"text"](I,p);return!L&&H&&H(),await new Promise((F,q)=>{Px(F,q,{data:D,headers:ya.from(I.headers),status:I.status,statusText:I.statusText,config:p,request:V})})}catch(W){throw H&&H(),W&&W.name==="TypeError"&&/Load failed|fetch/i.test(W.message)?Object.assign(new _t("Network Error",_t.ERR_NETWORK,p,V,W&&W.response),{cause:W.cause||W}):_t.from(W,W&&W.code,p,V,W&&W.response)}}},Mee=new Map,Ax=e=>{let t=e&&e.env||{};const{fetch:n,Request:a,Response:o}=t,s=[a,o,n];let r=s.length,l=r,u,c,d=Mee;for(;l--;)u=s[l],c=d.get(u),c===void 0&&d.set(u,c=l?new Map:Pee(t)),d=c;return c};Ax();const cg={http:XQ,xhr:Tee,fetch:{get:Ax}};xe.forEach(cg,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const yw=e=>`- ${e}`,_ee=e=>xe.isFunction(e)||e===null||e===!1;function Aee(e,t){e=xe.isArray(e)?e:[e];const{length:n}=e;let a,o;const s={};for(let r=0;r`adapter ${u} `+(c===!1?"is not supported by the environment":"is not available in the build"));let l=n?r.length>1?`since : -`+r.map(yw).join(` -`):" "+yw(r[0]):"as no adapter specified";throw new _t("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return o}const Lx={getAdapter:Aee,adapters:cg};function gp(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new $u(null,e)}function ww(e){return gp(e),e.headers=ya.from(e.headers),e.data=mp.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Lx.getAdapter(e.adapter||Tu.adapter,e)(e).then(function(a){return gp(e),a.data=mp.call(e,e.transformResponse,a),a.headers=ya.from(a.headers),a},function(a){return Ix(a)||(gp(e),a&&a.response&&(a.response.data=mp.call(e,e.transformResponse,a.response),a.response.headers=ya.from(a.response.headers))),Promise.reject(a)})}const Dx="1.13.6",gf={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{gf[e]=function(a){return typeof a===e||"a"+(t<1?"n ":" ")+e}});const Sw={};gf.transitional=function(t,n,a){function o(s,r){return"[Axios v"+Dx+"] Transitional option '"+s+"'"+r+(a?". "+a:"")}return(s,r,l)=>{if(t===!1)throw new _t(o(r," has been removed"+(n?" in "+n:"")),_t.ERR_DEPRECATED);return n&&!Sw[r]&&(Sw[r]=!0,console.warn(o(r," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,r,l):!0}};gf.spelling=function(t){return(n,a)=>(console.warn(`${a} is likely a misspelling of ${t}`),!0)};function Lee(e,t,n){if(typeof e!="object")throw new _t("options must be an object",_t.ERR_BAD_OPTION_VALUE);const a=Object.keys(e);let o=a.length;for(;o-- >0;){const s=a[o],r=t[s];if(r){const l=e[s],u=l===void 0||r(l,s,e);if(u!==!0)throw new _t("option "+s+" must be "+u,_t.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new _t("Unknown option "+s,_t.ERR_BAD_OPTION)}}const Lc={assertOptions:Lee,validators:gf},_a=Lc.validators;let vr=class{constructor(t){this.defaults=t||{},this.interceptors={request:new uw,response:new uw}}async request(t,n){try{return await this._request(t,n)}catch(a){if(a instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;const s=o.stack?o.stack.replace(/^.+\n/,""):"";try{a.stack?s&&!String(a.stack).endsWith(s.replace(/^.+\n.+\n/,""))&&(a.stack+=` -`+s):a.stack=s}catch{}}throw a}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=$r(this.defaults,n);const{transitional:a,paramsSerializer:o,headers:s}=n;a!==void 0&&Lc.assertOptions(a,{silentJSONParsing:_a.transitional(_a.boolean),forcedJSONParsing:_a.transitional(_a.boolean),clarifyTimeoutError:_a.transitional(_a.boolean),legacyInterceptorReqResOrdering:_a.transitional(_a.boolean)},!1),o!=null&&(xe.isFunction(o)?n.paramsSerializer={serialize:o}:Lc.assertOptions(o,{encode:_a.function,serialize:_a.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Lc.assertOptions(n,{baseUrl:_a.spelling("baseURL"),withXsrfToken:_a.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let r=s&&xe.merge(s.common,s[n.method]);s&&xe.forEach(["delete","get","head","post","put","patch","common"],p=>{delete s[p]}),n.headers=ya.concat(r,s);const l=[];let u=!0;this.interceptors.request.forEach(function(h){if(typeof h.runWhen=="function"&&h.runWhen(n)===!1)return;u=u&&h.synchronous;const m=n.transitional||ig;m&&m.legacyInterceptorReqResOrdering?l.unshift(h.fulfilled,h.rejected):l.push(h.fulfilled,h.rejected)});const c=[];this.interceptors.response.forEach(function(h){c.push(h.fulfilled,h.rejected)});let d,f=0,v;if(!u){const p=[ww.bind(this),void 0];for(p.unshift(...l),p.push(...c),v=p.length,d=Promise.resolve(n);f{if(!a._listeners)return;let s=a._listeners.length;for(;s-- >0;)a._listeners[s](o);a._listeners=null}),this.promise.then=o=>{let s;const r=new Promise(l=>{a.subscribe(l),s=l}).then(o);return r.cancel=function(){a.unsubscribe(s)},r},t(function(s,r,l){a.reason||(a.reason=new $u(s,r,l),n(a.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=a=>{t.abort(a)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Bx(function(o){t=o}),cancel:t}}};function Bee(e){return function(n){return e.apply(null,n)}}function Fee(e){return xe.isObject(e)&&e.isAxiosError===!0}const Kh={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Kh).forEach(([e,t])=>{Kh[t]=e});function Fx(e){const t=new vr(e),n=bx(vr.prototype.request,t);return xe.extend(n,vr.prototype,t,{allOwnKeys:!0}),xe.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return Fx($r(e,o))},n}const On=Fx(Tu);On.Axios=vr;On.CanceledError=$u;On.CancelToken=Dee;On.isCancel=Ix;On.VERSION=Dx;On.toFormData=mf;On.AxiosError=_t;On.Cancel=On.CanceledError;On.all=function(t){return Promise.all(t)};On.spread=Bee;On.isAxiosError=Fee;On.mergeConfig=$r;On.AxiosHeaders=ya;On.formToJSON=e=>Nx(xe.isHTMLForm(e)?new FormData(e):e);On.getAdapter=Lx.getAdapter;On.HttpStatusCode=Kh;On.default=On;const{Axios:vte,AxiosError:Vee,CanceledError:mte,isCancel:gte,CancelToken:bte,VERSION:yte,all:wte,Cancel:Ste,isAxiosError:Cte,spread:kte,toFormData:Ete,AxiosHeaders:xte,HttpStatusCode:Tte,formToJSON:$te,getAdapter:Ote,mergeConfig:Rte}=On;function zee(e){if(e instanceof Vee){const t=e.response?.data;if(t&&typeof t=="object"){if("error"in t&&t.error)return String(t.error);if("message"in t&&t.message)return String(t.message)}return typeof t=="string"&&t.trim()?t:e.message||"请求失败"}return e instanceof Error?e.message:"请求失败"}function Hee(){const e=On.create({withCredentials:!0,timeout:3e4,headers:{"X-Requested-With":"XMLHttpRequest"}});return e.interceptors.request.use(t=>t),e.interceptors.response.use(t=>t,t=>Promise.reject(new Error(zee(t)))),e}const Kee=Hee();async function bf(e){return(await Kee.request(e)).data}function Zt(e,t){return bf({url:e,method:"GET",...t})}function Qt(e,t,n){return bf({url:e,method:"POST",data:t,...n})}function dg(e,t,n){return bf({url:e,method:"PUT",data:t,...n})}function dn(e,t){return bf({url:e,method:"DELETE",...t})}const Wee=Zt,Nte=Qt;async function Je(e){const t=await e;if(!t.success)throw new Error(t.message||"请求失败");return t.data}function jee(){const e=typeof window>"u"?"":window.localStorage.getItem("uid")||"",t=Number(e);if(!Number.isFinite(t)||t<=0)throw new Error("未获取到用户ID");return t}function Uee(e){return`app_column_permissions:${String(e)}`}async function qee(){const e=jee(),t=Uee(e);try{const a=JSON.parse(window.localStorage.getItem(t)||"null");if(Array.isArray(a))return a.map(o=>String(o.column_key||"").trim().toLowerCase()).filter(Boolean)}catch{}const n=await Wee(`/api/admin/user/${encodeURIComponent(String(e))}/column-permissions`,{params:{menu_type:"app"}});if(!n.success)throw new Error(n.error||"获取菜单权限失败");try{window.localStorage.setItem(t,JSON.stringify(n.items||[]))}catch{}return(n.items||[]).map(a=>String(a.column_key||"").trim().toLowerCase()).filter(Boolean)}const Yee={class:"top-bar"},Gee={class:"nav-sections","aria-label":"顶部功能导航"},Xee={class:"nav-section-title"},Jee={class:"nav-section-items"},Zee=["href"],Qee={class:"top-right"},ete=se({__name:"BrandTopBar",props:{active:{}},setup(e){const n=e.active,a=M(null),o=[{columnKey:"brand_front_tools",label:"前端工具",items:[{key:"collect",label:"采集数据"},{key:"variant",label:"变体分析"},{key:"brand",label:"品牌检测",href:"/brand"},{key:"appearance-patent",label:"外观专利检测",href:"/new_web_source/appearance-patent.html"},{key:"similar-asin",label:"货源查询",href:"/new_web_source/similar-asin.html"},{key:"dedupe",label:"数据去重",href:"/new_web_source/dedupe.html"},{key:"split",label:"数据拆分",href:"/new_web_source/split.html"},{key:"convert",label:"格式转换",href:"/new_web_source/convert.html"}]},{columnKey:"brand_operation_tools",label:"运营工具",items:[{key:"delete-brand",label:"删除ASIN",href:"/new_web_source/delete-brand.html"},{key:"product-risk",label:"商品风险解决",href:"/new_web_source/product-risk.html"},{key:"shop-match",label:"定时匹配",href:"/new_web_source/shop-match.html"},{key:"pricing",label:"跟价",href:"/new_web_source/price-track.html"},{key:"patrol-delete",label:"巡店删除",href:"/new_web_source/patrol-delete.html"},{key:"query-asin",label:"查询ASIN",href:"/new_web_source/query-asin.html"},{key:"withdraw",label:"取款"},{key:"shop-status",label:"店铺状态查询"}]},{columnKey:"brand_logistics_tools",label:"后勤工具",items:[{key:"purchase",label:"采购"},{key:"erp",label:"ERP"}]}],s=w(()=>{if(a.value===null)return o;const r=new Set(a.value);return o.filter(l=>r.has(l.columnKey))});return ht(async()=>{try{a.value=await qee()}catch{a.value=null}}),(r,l)=>(x(),B("header",Yee,[l[0]||(l[0]=z("div",{class:"logo-area"},[z("span",{class:"app-name"},"数富AI-亚马逊"),z("a",{href:"/home",class:"btn-home"},"返回首页")],-1)),z("nav",Gee,[(x(!0),B(Fe,null,gt(s.value,u=>(x(),B("section",{key:u.columnKey,class:"nav-section"},[z("div",Xee,Se(u.label),1),z("div",Jee,[(x(!0),B(Fe,null,gt(u.items,c=>(x(),B(Fe,{key:c.key},[c.href?(x(),B("a",{key:0,href:c.href,class:T(["nav-item",{active:i(n)===c.key}])},Se(c.label),11,Zee)):(x(),B("span",{key:1,class:T(["nav-item disabled",{active:i(n)===c.key}])},Se(c.label),3))],64))),128))])]))),128))]),z("div",Qee,[Y(lQ)])]))}}),Ite=gx(ete,[["__scopeId","data-v-0b1391c2"]]),tte=1e4,nte=6e4,ate=5e3,ote=3e4;function Pte(){return typeof document<"u"&&document.visibilityState!=="visible"?nte:tte}function ste(){return typeof document<"u"&&document.hidden?ote:ate}const qe="/newApi/api",Cw=new Map,bp=new Map;function et(){const e=typeof window>"u"?"":window.localStorage.getItem("uid")||"",t=Number(e);if(!Number.isFinite(t)||t<=0)throw new Error("未获取到用户ID");return t}function rte(e){return Array.from(new Set((e||[]).map(t=>Number(t)).filter(t=>Number.isFinite(t)&&t>0))).sort((t,n)=>t-n)}function lte(e,t){return`${e}::${t.join(",")}`}async function Ws(e,t,n={}){const a=rte(t);if(!a.length)return{items:[],missingTaskIds:[]};const o=lte(e,a),s=Date.now(),r=Cw.get(o);if(!n.force&&r&&r.expiresAt>s)return r.data;const l=bp.get(o);if(!n.force&&l)return await l;const u=Je(Qt(e,{taskIds:a})).then(c=>(Cw.set(o,{data:c,expiresAt:Date.now()+ste()}),c)).finally(()=>{bp.delete(o)});return bp.set(o,u),u}function Mte(e){return Je(Zt(`${qe}/files/excel-info`,{params:{fileKey:e}}))}function _te(e){return Je(Qt(`${qe}/dedupe/run`,{...e,user_id:et()}))}function Ate(){return Je(Zt(`${qe}/dedupe/history`,{params:{user_id:et()}}))}function Lte(e){return Je(dn(`${qe}/dedupe/history/${e}`,{params:{user_id:et()}}))}function Dte(e){return Ka(`/dedupe/results/${e}/download`)}function Bte(e){return Je(Qt(`${qe}/split/run`,{...e,user_id:et()}))}function Fte(){return Je(Zt(`${qe}/split/history`,{params:{user_id:et()}}))}function Vte(e){return Je(dn(`${qe}/split/history/${e}`,{params:{user_id:et()}}))}function zte(e){return Ka(`/split/results/${e}/download`)}function Hte(){return Je(Zt(`${qe}/convert/templates`))}function Kte(e){return Je(Qt(`${qe}/convert/run`,{...e,user_id:et()}))}function Wte(){return Je(Zt(`${qe}/convert/history`,{params:{user_id:et()}}))}function jte(e){return Je(dn(`${qe}/convert/history/${e}`,{params:{user_id:et()}}))}function Ute(e){return Ka(`/convert/results/${e}/download`)}function qte(e){return Je(Qt(`${qe}/delete-brand/run`,{...e,user_id:et()},{timeout:18e4}))}function Yte(){return Je(Zt(`${qe}/delete-brand/history`,{params:{user_id:et()}}))}function Gte(e){return Je(dn(`${qe}/delete-brand/history/${e}`,{params:{user_id:et()}}))}function Xte(e){return Ka(`/delete-brand/tasks/${e}/download`)}function Jte(e){return Ka(`/delete-brand/results/${e}/download`)}function Zte(){return Je(Zt(`${qe}/product-risk-resolve/candidates`,{params:{user_id:et()}}))}function Qte(e){return Je(Qt(`${qe}/product-risk-resolve/candidates`,{user_id:et(),shop_name:e}))}function ene(e){return Je(dn(`${qe}/product-risk-resolve/candidates/${e}`,{params:{user_id:et()}}))}function tne(){return Je(Zt(`${qe}/product-risk-resolve/country-preference`,{params:{user_id:et()}}))}function nne(e){return Je(dg(`${qe}/product-risk-resolve/country-preference`,{user_id:et(),country_codes:e}))}function ane(e){return Je(Qt(`${qe}/product-risk-resolve/match-shops`,{user_id:et(),shop_names:e}))}function one(){return Je(Zt(`${qe}/product-risk-resolve/dashboard`,{params:{user_id:et()}}))}function sne(){return Je(Zt(`${qe}/product-risk-resolve/history`,{params:{user_id:et()}}))}function rne(e){return Je(dn(`${qe}/product-risk-resolve/history/${e}`,{params:{user_id:et()}}))}function lne(e){return Je(Qt(`${qe}/product-risk-resolve/tasks`,{user_id:et(),items:e}))}function ine(e){return Je(dn(`${qe}/product-risk-resolve/tasks/${e}`,{params:{user_id:et()}}))}function une(e){return Je(dn(`${qe}/product-risk-resolve/pending-shop-result`,{params:{user_id:et(),shop_name:e}}))}function cne(e){return Ka(`/product-risk-resolve/results/${e}/download`)}function dne(){return Je(Zt(`${qe}/shop-match/candidates`,{params:{user_id:et()}}))}function fne(e){return Je(Qt(`${qe}/shop-match/candidates`,{user_id:et(),shop_name:e}))}function pne(e){return Je(dn(`${qe}/shop-match/candidates/${e}`,{params:{user_id:et()}}))}function hne(){return Je(Zt(`${qe}/shop-match/country-preference`,{params:{user_id:et()}}))}function vne(e){return Je(dg(`${qe}/shop-match/country-preference`,{user_id:et(),country_codes:e}))}function mne(e){return Je(Qt(`${qe}/shop-match/match-shops`,{user_id:et(),shop_names:e}))}function gne(){return Je(Zt(`${qe}/shop-match/dashboard`,{params:{user_id:et()}}))}function bne(){return Je(Zt(`${qe}/shop-match/history`,{params:{user_id:et()}}))}function yne(e){return Je(dn(`${qe}/shop-match/history/${e}`,{params:{user_id:et()}}))}function wne(e,t,n){return Je(Qt(`${qe}/shop-match/tasks`,{user_id:et(),items:e,country_codes:t,schedule_times:n}))}function Sne(e){return Je(dn(`${qe}/shop-match/tasks/${e}`,{params:{user_id:et()}}))}function Cne(e,t){return Je(Qt(`${qe}/shop-match/tasks/${e}/activate?user_id=${encodeURIComponent(String(et()))}&stage_index=${encodeURIComponent(String(t))}`,void 0))}function kne(e){return Ka(`/shop-match/results/${e}/download`)}function Ene(){return Je(Zt(`${qe}/patrol-delete/candidates`,{params:{user_id:et()}}))}function xne(e){return Je(Qt(`${qe}/patrol-delete/candidates`,{user_id:et(),shop_name:e}))}function Tne(e){return Je(dn(`${qe}/patrol-delete/candidates/${e}`,{params:{user_id:et()}}))}function $ne(){return Je(Zt(`${qe}/patrol-delete/conditions`,{params:{user_id:et()}}))}function One(e){return Je(Qt(`${qe}/patrol-delete/conditions`,{user_id:et(),condition_text:e}))}function Rne(e){return Je(dn(`${qe}/patrol-delete/conditions/${e}`,{params:{user_id:et()}}))}function Nne(e){return Je(Qt(`${qe}/patrol-delete/match-shops`,{user_id:et(),shop_names:e}))}function Ine(){return Je(Zt(`${qe}/patrol-delete/dashboard`,{params:{user_id:et()}}))}function Pne(){return Je(Zt(`${qe}/patrol-delete/history`,{params:{user_id:et()}}))}function Mne(e){return Ws(`${qe}/patrol-delete/tasks/progress/batch`,e)}function _ne(e){return Je(Qt(`${qe}/patrol-delete/tasks`,{user_id:et(),items:e}))}function Ane(e,t){return Je(Qt(`${qe}/patrol-delete/tasks/${e}/result`,t))}function Lne(e){return Ka(`/patrol-delete/results/${e}/download`)}function Dne(e){return Je(dn(`${qe}/patrol-delete/tasks/${e}`,{params:{user_id:et()}}))}function Bne(e){return Je(dn(`${qe}/patrol-delete/history/${e}`,{params:{user_id:et()}}))}function Fne(){return Je(Zt(`${qe}/query-asin/candidates`,{params:{user_id:et()}}))}function Vne(e){return Je(Qt(`${qe}/query-asin/candidates`,{user_id:et(),shop_name:e}))}function zne(e){return Je(dn(`${qe}/query-asin/candidates/${e}`,{params:{user_id:et()}}))}function Hne(e){return Je(Qt(`${qe}/query-asin/match-shops`,{user_id:et(),shop_names:e}))}function Kne(){return Je(Zt(`${qe}/query-asin/dashboard`,{params:{user_id:et()}}))}function Wne(){return Je(Zt(`${qe}/query-asin/history`,{params:{user_id:et()}}))}function jne(e){return Ws(`${qe}/query-asin/tasks/progress/batch`,e)}function Une(e){return Je(Qt(`${qe}/query-asin/tasks`,{user_id:et(),items:e}))}function qne(e,t){return Je(Qt(`${qe}/query-asin/tasks/${e}/result`,t))}function Yne(e){return Ka(`/query-asin/results/${e}/download`)}function Gne(e){return Je(dn(`${qe}/query-asin/tasks/${e}`,{params:{user_id:et()}}))}function Xne(e){return Je(dn(`${qe}/query-asin/history/${e}`,{params:{user_id:et()}}))}function Jne(e,t,n){return Je(Qt(`${qe}/appearance-patent/parse`,{user_id:et(),files:e,ai_prompt:t,api_key:n}))}function Zne(e){return Je(Zt(`${qe}/appearance-patent/tasks/${e}/queue-payload`,{params:{user_id:et()}}))}function Qne(){return Je(Zt(`${qe}/appearance-patent/dashboard`,{params:{user_id:et()}}))}function eae(){return Je(Zt(`${qe}/appearance-patent/history`,{params:{user_id:et(),limit:50}}))}function tae(e,t={}){return Ws(`${qe}/appearance-patent/tasks/progress/batch`,e,t)}function nae(e){return Je(Qt(`${qe}/appearance-patent/tasks/${e}/activate?user_id=${encodeURIComponent(String(et()))}`,void 0))}function aae(e){return Je(dn(`${qe}/appearance-patent/tasks/${e}`,{params:{user_id:et()}}))}function oae(e){return Je(dn(`${qe}/appearance-patent/history/${e}`,{params:{user_id:et()}}))}function sae(e){return Ka(`/appearance-patent/results/${e}/download`)}function rae(){return Je(Zt(`${qe}/admin/product-categories`))}function lae(e,t,n){return Je(Qt(`${qe}/similar-asin/parse`,{user_id:et(),files:e,ai_prompt:t,api_key:n}))}function iae(){return Je(Zt(`${qe}/similar-asin/filter-conditions`,{params:{user_id:et()}}))}function uae(e){return Je(Qt(`${qe}/similar-asin/filter-conditions`,{user_id:et(),condition_text:e}))}function cae(e){return Je(dn(`${qe}/similar-asin/filter-conditions/${e}`,{params:{user_id:et()}}))}function dae(){return Je(Zt(`${qe}/similar-asin/dashboard`,{params:{user_id:et()}}))}function fae(){return Je(Zt(`${qe}/similar-asin/history`,{params:{user_id:et(),limit:50}}))}function pae(e,t={}){return Ws(`${qe}/similar-asin/tasks/progress/batch`,e,t)}function hae(e){return Je(Qt(`${qe}/similar-asin/tasks/${e}/activate?user_id=${encodeURIComponent(String(et()))}`,void 0))}function vae(e){return Je(dn(`${qe}/similar-asin/tasks/${e}`,{params:{user_id:et()}}))}function mae(e){return Je(dn(`${qe}/similar-asin/history/${e}`,{params:{user_id:et()}}))}function gae(e){return Ka(`/similar-asin/results/${e}/download`)}function bae(){return Je(Zt(`${qe}/price-track/candidates?user_id=${encodeURIComponent(String(et()))}`))}function yae(e){return Je(Qt(`${qe}/price-track/candidates`,{userId:et(),shopName:e}))}function wae(e){return Je(dn(`${qe}/price-track/candidates/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Sae(){return Je(Zt(`${qe}/price-track/country-preference?user_id=${encodeURIComponent(String(et()))}`))}function Cae(e){return Je(dg(`${qe}/price-track/country-preference`,{userId:et(),countryCodes:e}))}function kae(e,t){return Je(Qt(`${qe}/price-track/match-shops`,{userId:et(),shopNames:e,asinFiles:t?.asinFiles||[],countryCodes:t?.countryCodes||[]}))}function Eae(e){return Ws(`${qe}/shop-match/tasks/progress/batch`,e)}function xae(e){return Ws(`${qe}/product-risk-resolve/tasks/progress/batch`,e)}function Tae(e){return Ws(`${qe}/delete-brand/tasks/progress/batch`,e)}function $ae(){return Je(Zt(`${qe}/price-track/dashboard?user_id=${encodeURIComponent(String(et()))}`))}function Oae(){return Je(Zt(`${qe}/price-track/history?user_id=${encodeURIComponent(String(et()))}`))}function Rae(e){return Je(dn(`${qe}/price-track/history/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Nae(e){return Je(Qt(`${qe}/price-track/tasks`,{...e,userId:et()}))}function Iae(e){return Je(dn(`${qe}/price-track/tasks/${e}?user_id=${encodeURIComponent(String(et()))}`))}function Pae(e){return Je(Qt(`${qe}/price-track/loop-runs`,{...e,userId:et()}))}function Mae(e){return Je(Zt(`${qe}/price-track/loop-runs/${e}?user_id=${encodeURIComponent(String(et()))}`))}function _ae(e){return Je(Qt(`${qe}/price-track/loop-runs/${e}/dispatch-next?user_id=${encodeURIComponent(String(et()))}`,void 0))}function Aae(e,t){return Je(Qt(`${qe}/price-track/loop-runs/${e}/child-finished?user_id=${encodeURIComponent(String(et()))}`,{childTaskId:t}))}function Lae(e){return Je(Qt(`${qe}/price-track/loop-runs/${e}/stop?user_id=${encodeURIComponent(String(et()))}`,void 0))}function Dae(e){return Ws(`${qe}/price-track/tasks/progress/batch`,e)}function Bae(e){return Ka(`/price-track/results/${e}/download`)}function Fae(e){return Je(dn(`${qe}/price-track/pending-shop-result?user_id=${encodeURIComponent(String(et()))}&shop_name=${encodeURIComponent(e)}`))}function Ka(e){let t=e.startsWith("http://")||e.startsWith("https://")?e:`${qe}${e}`;!t.startsWith("http://")&&!t.startsWith("https://")&&typeof window<"u"&&(t=`${window.location.origin}${t}`);const n=t.includes("?")?"&":"?";return`${t}${n}user_id=${encodeURIComponent(String(et()))}`}let Wh,kw=!1;function Vx(){return Wh=window.pywebview?.api,Wh}function ite(){kw||typeof window>"u"||!window.addEventListener||(kw=!0,window.addEventListener("pywebviewready",()=>{Vx()}))}ite();function Vae(){return Vx()||Wh}export{sae as $,Wte as A,Ite as B,jte as C,Ute as D,Bh as E,Fe as F,hv as G,Bte as H,Fte as I,Vte as J,zte as K,$l as L,ute as M,Ke as N,Tae as O,qte as P,Jte as Q,Xte as R,Yte as S,Gte as T,Pte as U,Jne as V,Zne as W,nae as X,Qne as Y,eae as Z,gx as _,x as a,Oae as a$,aae as a0,oae as a1,dte as a2,tae as a3,J as a4,oe as a5,Gm as a6,$2 as a7,rae as a8,iae as a9,xae as aA,Qte as aB,ene as aC,ane as aD,cne as aE,lne as aF,p5 as aG,dne as aH,gne as aI,bne as aJ,hne as aK,fne as aL,pne as aM,mne as aN,kne as aO,Sne as aP,yne as aQ,wne as aR,vne as aS,Eae as aT,Cne as aU,st as aV,F2 as aW,Cae as aX,Sae as aY,bae as aZ,$ae as a_,uae as aa,cae as ab,lae as ac,hae as ad,dae as ae,fae as af,gae as ag,vae as ah,mae as ai,pae as aj,on as ak,ea as al,bq as am,gq as an,Xe as ao,i as ap,sd as aq,Hs as ar,nne as as,tne as at,une as au,rne as av,ine as aw,one as ax,Zte as ay,sne as az,Y as b,yae as b0,wae as b1,kae as b2,Fae as b3,Nae as b4,Mae as b5,Lae as b6,Aae as b7,_ae as b8,Pae as b9,Une as bA,qne as bB,Yne as bC,Gne as bD,Xne as bE,jne as bF,d8 as bG,Bae as ba,Rae as bb,Iae as bc,Dae as bd,Nte as be,Ene as bf,$ne as bg,Ine as bh,Pne as bi,xne as bj,One as bk,Rne as bl,Tne as bm,Nne as bn,_ne as bo,Ane as bp,Lne as bq,Dne as br,Bne as bs,Mne as bt,Fne as bu,Kne as bv,Wne as bw,Vne as bx,zne as by,Hne as bz,B as c,se as d,z as e,te as f,M as g,w as h,Vae as i,_te as j,Ate as k,Lte as l,Dte as m,T as n,ht as o,Mte as p,iO as q,gt as r,cte as s,Se as t,vv as u,q1 as v,ut as w,wt as x,Hte as y,Kte as z}; diff --git a/app/assets/query-asin.js b/app/assets/query-asin.js index 0461ed0..ba8408f 100644 --- a/app/assets/query-asin.js +++ b/app/assets/query-asin.js @@ -1 +1 @@ -import{d as Ye,o as Ze,L as es,a as u,c as i,b as v,B as ss,e as n,ak as ts,al as as,t as r,a4 as b,am as ns,an as os,f as p,a5 as ls,n as ne,x as Se,F as oe,r as Ce,g as h,h as $,bu as rs,bv as us,bw as is,E as d,bx as cs,by as ds,bz as fs,i as Ae,bA as hs,bB as vs,bC as ps,bD as ys,bE as ms,U as j,bF as gs,_ as _s,aV as ws,q as ks,s as Is}from"./pywebview-ZMN052YE.js";import{z as bs}from"./zh-cn-BXYgxART.js";/* empty css *//* empty css */import{c as Ss}from"./categorized-timers-JPA-olTr.js";const Cs={class:"page-shell module-page"},As={class:"main-content"},Ts={class:"left-panel"},Ns={class:"input-zone"},Es={class:"input-row"},$s=["disabled"],Qs={key:0,class:"empty-candidates"},qs={key:1,class:"candidate-table-scroll"},Ds=["onClick"],Ms={class:"run-row"},Ps=["disabled"],Rs=["disabled"],Bs={key:2,class:"queue-debug-card"},Fs={class:"queue-debug-line"},Ls={key:0,class:"queue-debug-payload"},xs={class:"right-panel"},Us={class:"task-list-wrap"},Hs={class:"clean-result-summary"},Os={class:"summary-card"},Vs={class:"summary-card"},zs={class:"summary-card"},Ks={class:"summary-card"},js={key:0,class:"empty-tasks narrow"},Js=["onClick"],Ws={class:"result-list-wrap"},Xs={key:0,class:"empty-tasks"},Gs={key:0,class:"result-subsection"},Ys={class:"task-list"},Zs={class:"left split-result-main"},et=["title"],st={class:"files"},tt={key:0,class:"files"},at={key:1,class:"files"},nt={key:2,class:"files"},ot={class:"files"},lt={class:"files"},rt={key:3,class:"files"},ut={class:"task-right"},it=["onClick"],ct={key:1,class:"result-subsection"},dt={class:"task-list"},ft={class:"left split-result-main"},ht=["title"],vt={class:"files"},pt={key:0,class:"files"},yt={key:1,class:"files"},mt={key:2,class:"files"},gt={class:"files"},_t={key:3,class:"files"},wt={class:"files"},kt={key:4,class:"files"},It={class:"task-right"},bt=["onClick"],St=["onClick"],Te=30,Ct=Ye({__name:"BrandQueryAsinTab",setup(Tt){const R=h(""),J=h([]),B=h([]),m=h([]),w=h([]),Q=h({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),F=h(!1),L=h(!1),W=h(!1),y=h(""),X=h(""),f=h([]),c=h(null),S=h(null),C=h(!1),G=h(!1);let A=null;const T=Ss("query-asin"),le=$(()=>m.value.filter(e=>e.matched&&(e.queryAsins||[]).some(s=>s.asins?.length))),x=$(()=>w.value.filter(e=>!pe(e.taskStatus))),Y=$(()=>w.value.filter(e=>pe(e.taskStatus))),Z=$(()=>!!c.value||f.value.length>0),U=$(()=>C.value||Z.value),re=$(()=>C.value&&Z.value);function ee(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function ue(){return`query-asin:matched:${ee()}`}function ie(){return`query-asin:queue-state:${ee()}`}function I(e){return`${(e.shopName||"").trim()}::${e.shopId||""}`}function H(e){return`${e.taskId??0}:${e.resultId??0}`}let _=!1;function ce(e){return _?Promise.resolve():T.sleep("queue-wait",e)}function Ne(){T.clearCategory("queue-wait")}function de(e){const s=e instanceof Error?e.message.toLowerCase():String(e||"").toLowerCase();return s.includes("network error")||s.includes("failed to fetch")||s.includes("timeout")||s.includes("503")||s.includes("502")||s.includes("504")||s.includes("500")||s.includes("load failed")}async function Ee(e,s,o=20){let a=0;for(;;){if(_)throw new Error("component disposed");try{return await e()}catch(l){if(!de(l)||a>=o-1)throw l;a+=1,s?.(a,o),await ce(j())}}}function fe(e,s){return`query-asin:${e}:${s||"shop"}:${Date.now()}`}function se(e){if(!e)return"-";const s=new Date(e);if(Number.isNaN(s.getTime()))return e;const o=s.getFullYear(),a=String(s.getMonth()+1).padStart(2,"0"),l=String(s.getDate()).padStart(2,"0"),t=String(s.getHours()).padStart(2,"0"),g=String(s.getMinutes()).padStart(2,"0"),ae=String(s.getSeconds()).padStart(2,"0");return`${o}-${a}-${l} ${t}:${g}:${ae}`}function $e(e){const s=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[s]||s||"-"}function Qe(e){const s=(e.matchMessage||"").trim();return s||(e.matched&&e.matchStatus==="MATCHED"?"索引已命中,可推送到 Python 队列":e.matched?"已命中索引,请结合状态列确认":"未命中或未就绪,请检查店铺名")}function qe(e){const s=k(e),o=Math.max(...s.map(a=>a.asins?.length||0),1);return Array.from({length:o},(a,l)=>({shopName:l===0?e.shopName:"",countries:s.map(t=>({country:t.country,asin:t.asins?.[l]||""}))}))}function he(e){const s=k(e),o=s.reduce((l,t)=>l+(t.asins?.length||0),0);return`${s.filter(l=>l.asins?.length).map(l=>l.country).join("、")||"无国家"},共 ${o} 个 ASIN`}function O(e){return(e||[]).map(s=>({country:(s.country||"").trim().toUpperCase(),asins:Array.from(new Set((s.asins||[]).map(o=>(o||"").trim().toUpperCase()).filter(Boolean)))})).filter(s=>s.country&&s.asins.length)}function k(e){return O(e?.queryAsins?.length?e.queryAsins:e?.query_asins)}function V(e){return k(e).some(s=>s.asins.length)}function ve(e){const s=(e||"").trim(),o=[S.value,...f.value,...m.value],a=o.find(t=>(t?.shopName||"").trim()===s&&V(t)),l=o.find(t=>V(t));return k(a||l)}function N(e,s){const o=V(e)?k(e):k(s||void 0);return{...e,queryAsins:o.length?o:ve(e.shopName)}}function pe(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function ye(e){return e==="SUCCESS"||e==="COMPLETED"?"已完成":e==="FAILED"?"失败":"执行中"}function me(e){return e==="SUCCESS"||e==="COMPLETED"?"success":e==="FAILED"?"failed":"running"}function De(e){return!!(e.resultId&&(e.fileReady||e.downloadUrl))}function ge(){typeof window>"u"||window.localStorage.setItem(ue(),JSON.stringify(m.value))}function Me(){try{const e=typeof window<"u"?window.localStorage.getItem(ue()):null;m.value=e?JSON.parse(e):[]}catch{m.value=[]}}function E(){if(typeof window>"u")return;const e={pendingQueue:f.value,activeTaskId:c.value,activeQueueItem:S.value};window.localStorage.setItem(ie(),JSON.stringify(e))}function Pe(){try{const e=typeof window<"u"?window.localStorage.getItem(ie()):null;if(!e)return;const s=JSON.parse(e);f.value=s.pendingQueue||[],c.value=s.activeTaskId??null,S.value=s.activeQueueItem??null}catch{f.value=[],c.value=null,S.value=null}}function q(){c.value=null,S.value=null,E()}function D(){Z.value||(C.value=!1,W.value=!1,G.value=!1,K(),E())}function Re(e){const s=e instanceof Error?e.message:String(e||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(s)}function Be(e){w.value=w.value.filter(s=>!(e.resultId!=null&&s.resultId===e.resultId||e.taskId!=null&&s.taskId===e.taskId))}function Fe(e,s){const o=new Map;for(const a of e)o.set(I(a),a);for(const a of s)o.set(I(a),a);return Array.from(o.values())}async function M(){J.value=await rs()}async function z(){Q.value=await us()}async function te(){const e=await is();w.value=(e.items||[]).map(s=>N(s))}async function P(){await Promise.all([z(),te()])}function _e(){if(!c.value){D();return}if(w.value.some(o=>o.taskId===c.value))return;const s=c.value;q(),y.value=f.value.length?`任务 ${s} 已不存在,已跳过并继续剩余队列`:"当前任务已不存在,已释放本地队列状态",D()}function Le(e){if(!e.length)return;const s=new Map(e.map(a=>[H(a),N(a)])),o=w.value.map(a=>{const l=s.get(H(a));if(!l)return N(a);const t=V(l)?k(l):k(a).length?k(a):ve(l.shopName||a.shopName);return{...a,...l,queryAsins:t}});for(const a of e){const l=H(a);o.some(t=>H(t)===l)||o.push(N(a))}w.value=o}async function we(e){const s=Array.from(new Set((e&&e.length?e:x.value.map(a=>a.taskId??0)).filter(a=>Number.isFinite(a)&&a>0)));if(!s.length)return;const o=await gs(s);Le(o.items||[]),(o.missingTaskIds||[]).length&&(await te(),_e())}function xe(){if(K(),_||!U.value)return;const e=async()=>{A=null,!(_||!U.value)&&(await we(),!_&&U.value&&(A=T.setTimeout("history-poll",e,j()*2)))};A=T.setTimeout("history-poll",e,j()*2)}function K(){A&&(T.clearTimer("history-poll",A),A=null)}function Ue(e){B.value=e}async function ke(){const e=R.value.trim();if(!e){d.warning("请输入店铺名");return}F.value=!0;try{await cs(e),R.value="",await Promise.all([M(),z()]),d.success("已加入备选区")}catch(s){d.error(s instanceof Error?s.message:"添加失败")}finally{F.value=!1}}async function He(e){try{await ds(e),B.value=B.value.filter(s=>s.id!==e),await Promise.all([M(),z()]),d.success("已删除")}catch(s){d.error(s instanceof Error?s.message:"删除失败")}}function Oe(e,s){const o=new Map;for(const a of e)o.set(I(a),a);for(const a of s)o.set(I(a),a);return Array.from(o.values())}async function Ve(){const e=B.value.map(s=>s.shop_name).filter(Boolean);if(!e.length){d.warning("请先勾选备选区店铺");return}L.value=!0;try{const s=await fs(e);m.value=Oe(m.value,s.items||[]),ge(),d.success(`本次返回 ${s.items?.length||0} 条匹配结果`)}catch(s){d.error(s instanceof Error?s.message:"匹配失败")}finally{L.value=!1}}function ze(e){if(U.value){d.warning("队列执行中,请等待当前串行任务结束后再调整");return}m.value=m.value.filter(s=>I(s)!==I(e)),ge()}function Ke(e){return{shopName:e.shopName,matched:e.matched,shopId:e.shopId,platform:e.platform,companyName:e.companyName,matchStatus:e.matchStatus,matchMessage:e.matchMessage,queryAsins:O(e.queryAsins)}}function je(e,s){const o=fe(e,s.shopName);return{type:"query-asin-run",ts:Date.now(),data:{taskId:e,user_id:Number(ee())||0,source:"frontend-vue-query-asin",submissionId:o,items:[{shopName:s.shopName,submissionId:o,shopId:s.shopId,platform:s.platform,companyName:s.companyName,matched:s.matched,matchStatus:s.matchStatus,matchMessage:s.matchMessage,queryAsins:O(s.queryAsins)}],query_asins:O(s.queryAsins),query_asin_rows:qe(s)}}}function Je(e){return w.value.find(s=>s.taskId===e)}async function We(e){let s=0;for(;;){if(_)return"STOPPED";try{if(await we([e]),c.value!==e)return"FAILED";s>0&&(y.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),s=0;const a=Je(e)?.taskStatus||"";if(a==="SUCCESS"||a==="FAILED"||a==="COMPLETED")return a}catch(o){if(!de(o))throw o;if(s+=1,s>=Te)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后刷新查看状态`);y.value=`任务 ${e} 执行中,正在等待后端服务恢复(${s}/${Te})...`}await ce(j())}}async function Ie(){if(!(_||C.value)){C.value=!0,W.value=!0,xe();try{const e=Ae();if(!e?.enqueue_json)throw new Error("当前客户端未提供 enqueue_json");for(;!_&&(c.value||f.value.length);){if(c.value){const g=await We(c.value);y.value=f.value.length>0?`任务 ${c.value} ${g==="SUCCESS"?"已完成":"执行失败"},自动继续下一个(剩余 ${f.value.length} 条)`:`任务 ${c.value} ${g==="SUCCESS"?"已完成":"执行失败"}`,q();continue}const s=f.value.shift();if(E(),!s)break;const o=await Ee(()=>hs([Ke(s)]),(g,ae)=>{y.value=`后端服务暂时不可用,正在重试创建任务(${g}/${ae})...`}),a=o.items?.[0]?N(o.items[0],s):void 0;if(!a?.taskId||!a.resultId)throw new Error("后端未返回有效任务标识");c.value=o.taskId,S.value=N(s,a),E(),await P();const l=je(o.taskId,a);X.value=JSON.stringify(l,null,2);const t=await e.enqueue_json(l);if(!t?.success){await vs(o.taskId,{shops:[{shopName:a.shopName||s.shopName||"",error:t?.error||`任务 ${o.taskId} 推送失败`,shopDone:!0,submissionId:fe(o.taskId,a.shopName||s.shopName)}]}),await P(),y.value=`任务 ${o.taskId} 推送失败,已自动继续下一个任务`,q();continue}y.value=f.value.length>0?`任务 ${o.taskId} 已入队,等待完成后自动继续下一个(剩余 ${f.value.length} 条)`:`任务 ${o.taskId} 已入队,等待执行完成`}y.value="串行队列已执行完成",await P(),d.success("查询ASIN队列已按顺序执行完成")}catch(e){if(_)return;const s=e instanceof Error?e.message:"队列执行失败";y.value=s,d.error(s),await P()}finally{C.value=!1,W.value=!1,K(),E()}}}async function Xe(){G.value=!0,D();const e=le.value;if(!e.length){d.warning("请先匹配可用店铺");return}f.value=Fe(f.value,e),E(),y.value=`已加入 ${e.length} 条店铺,开始串行执行`,await Ie()}async function Ge(e){if(!e.resultId)return;const s=Ae();if(!s?.save_file_from_url_new){d.error("当前客户端未提供下载能力");return}const o=ps(e.resultId),a=e.outputFilename||`${e.shopName||"result"}.xlsx`,l=await s.save_file_from_url_new(o,a);l.success?d.success(`已保存: ${l.path||a}`):l.error&&l.error!=="用户取消"&&d.error(l.error)}async function be(e){try{if(e.taskId)await ys(e.taskId),c.value===e.taskId&&q();else if(e.resultId)await ms(e.resultId);else throw new Error("缺少可删除的任务标识");await Promise.all([M(),P()]),D(),d.success("已删除")}catch(s){if(Re(s)){e.taskId&&c.value===e.taskId&&q(),Be(e),await M(),D(),d.success("后端记录已不存在,已同步移除本地记录");return}d.error(s instanceof Error?s.message:"删除失败")}}return Ze(async()=>{Me(),Pe(),await Promise.all([M(),z(),te()]),_e(),(c.value||f.value.length)&&(G.value=!0,y.value=c.value!=null?`检测到未完成队列,继续等待任务 ${c.value} 完成并自动接续后续店铺`:`检测到未完成队列,继续执行剩余 ${f.value.length} 条店铺`,Ie())}),es(()=>{_=!0,K(),Ne(),T.clearScope()}),(e,s)=>{const o=as,a=ns,l=os;return u(),i("div",Cs,[v(ss,{active:"query-asin"}),n("div",As,[n("aside",Ts,[s[3]||(s[3]=n("div",{class:"section-title"},"店铺输入",-1)),n("div",Ns,[s[1]||(s[1]=n("div",{class:"hint"}," 左侧负责录入店铺并加入备选区,确认命中后推送到 Python 队列。查询ASIN按店铺串行执行:上一个任务完成后会自动开始下一个,失败也会继续下一个。 ",-1)),n("div",Es,[v(o,{modelValue:R.value,"onUpdate:modelValue":s[0]||(s[0]=t=>R.value=t),clearable:"",placeholder:"请输入店铺名后回车或点击添加",onKeyup:ts(ke,["enter"])},null,8,["modelValue"]),n("button",{type:"button",class:"opt-btn",disabled:F.value,onClick:ke},r(F.value?"添加中...":"添加"),9,$s)])]),s[4]||(s[4]=n("div",{class:"section-title"},"备选区",-1)),J.value.length?(u(),i("div",qs,[v(l,{data:J.value,"row-key":"id",height:"260",class:"candidate-table",onSelectionChange:Ue},{default:b(()=>[v(a,{type:"selection",width:"42"}),v(a,{prop:"shop_name",label:"店铺名","min-width":"140","show-overflow-tooltip":""}),v(a,{label:"操作",width:"72",align:"center"},{default:b(({row:t})=>[n("button",{type:"button",class:"link-danger",onClick:g=>He(t.id)}," 删除 ",8,Ds)]),_:1})]),_:1},8,["data"])])):(u(),i("div",Qs," 暂无备选店铺,请先输入并添加 ")),n("div",Ms,[n("button",{type:"button",class:"btn-run",disabled:L.value,onClick:Ve},r(L.value?"匹配中...":"匹配店铺"),9,Ps),n("button",{type:"button",class:"btn-run btn-queue",disabled:re.value||!le.value.length,onClick:Xe},r(re.value?"串行执行中...":"推送到 Python 队列"),9,Rs)]),s[5]||(s[5]=n("p",{class:"loading-msg"}," 当前页面会按店铺串行推送任务,并在任务成功或失败后自动接续下一个任务。服务端临时重启时会自动重试查询状态,恢复后继续后续店铺。 ",-1)),y.value?(u(),i("div",Bs,[s[2]||(s[2]=n("div",{class:"section-title queue-debug-title"},"队列状态",-1)),n("div",Fs,r(y.value),1),X.value?(u(),i("pre",Ls,r(X.value),1)):p("",!0)])):p("",!0)]),n("section",xs,[s[14]||(s[14]=n("div",{class:"panel-header"},"匹配与任务",-1)),n("div",Us,[n("div",Hs,[n("div",Os,[s[6]||(s[6]=n("span",{class:"summary-label"},"备选店铺",-1)),n("strong",null,r(Q.value.candidateCount),1)]),n("div",Vs,[s[7]||(s[7]=n("span",{class:"summary-label"},"已处理任务",-1)),n("strong",null,r(Q.value.processedTaskCount),1)]),n("div",zs,[s[8]||(s[8]=n("span",{class:"summary-label"},"成功任务",-1)),n("strong",null,r(Q.value.successTaskCount),1)]),n("div",Ks,[s[9]||(s[9]=n("span",{class:"summary-label"},"失败任务",-1)),n("strong",null,r(Q.value.failedTaskCount),1)])]),s[13]||(s[13]=n("div",{class:"subsection-title"},"匹配结果",-1)),m.value.length?(u(),ls(l,{key:1,data:m.value,"row-key":I,"highlight-current-row":!1,class:"result-table match-table"},{default:b(()=>[v(a,{prop:"shopName",label:"店铺名","min-width":"120"}),v(a,{label:"匹配",width:"72",align:"center"},{default:b(({row:t})=>[n("span",{class:ne(t.matched?"ok":"fail")},r(t.matched?"是":"否"),3)]),_:1}),v(a,{prop:"shopId",label:"店铺 ID","min-width":"120","show-overflow-tooltip":""}),v(a,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),v(a,{prop:"companyName",label:"公司","min-width":"120","show-overflow-tooltip":""}),v(a,{label:"状态",width:"110","show-overflow-tooltip":""},{default:b(({row:t})=>[Se(r($e(t.matchStatus)),1)]),_:1}),v(a,{label:"说明","min-width":"180","show-overflow-tooltip":""},{default:b(({row:t})=>[Se(r(Qe(t)),1)]),_:1}),v(a,{label:"操作",width:"72",align:"center"},{default:b(({row:t})=>[n("button",{type:"button",class:"link-danger",onClick:g=>ze(t)}," 删除 ",8,Js)]),_:1})]),_:1},8,["data"])):(u(),i("div",js," 完成“匹配店铺”后,这里会展示匹配结果。 ")),n("div",Ws,[s[12]||(s[12]=n("div",{class:"result-list-header"},[n("span",null,"任务记录")],-1)),!x.value.length&&!Y.value.length?(u(),i("div",Xs," 暂无任务记录。推送到 Python 队列后,这里会展示当前任务和历史任务。 ")):(u(),i(oe,{key:1},[x.value.length?(u(),i("div",Gs,[s[10]||(s[10]=n("div",{class:"result-subsection-title"},"当前任务",-1)),n("ul",Ys,[(u(!0),i(oe,null,Ce(x.value,t=>(u(),i("li",{key:`${t.resultId}-${t.taskId}`,class:"task-item"},[n("div",Zs,[n("span",{class:"id",title:t.shopName||""},r(t.shopName||"-"),9,et),n("div",st,"任务 ID: "+r(t.taskId??"-"),1),t.resultId?(u(),i("div",tt," 结果 ID: "+r(t.resultId),1)):p("",!0),t.shopId?(u(),i("div",at," 店铺 ID: "+r(t.shopId),1)):p("",!0),t.platform?(u(),i("div",nt," 平台: "+r(t.platform),1)):p("",!0),n("div",ot," 创建时间: "+r(se(t.createdAt)),1),n("div",lt," ASIN结构: "+r(he(t)),1),t.error?(u(),i("div",rt," 错误: "+r(t.error),1)):p("",!0)]),n("div",ut,[n("span",{class:ne(["status",me(t.taskStatus)])},r(ye(t.taskStatus)),3),n("button",{type:"button",class:"btn-delete",onClick:g=>be(t)}," 删除 ",8,it)])]))),128))])])):p("",!0),Y.value.length?(u(),i("div",ct,[s[11]||(s[11]=n("div",{class:"result-subsection-title"},"历史任务",-1)),n("ul",dt,[(u(!0),i(oe,null,Ce(Y.value,t=>(u(),i("li",{key:`${t.resultId}-${t.taskId}`,class:"task-item"},[n("div",ft,[n("span",{class:"id",title:t.shopName||""},r(t.shopName||"-"),9,ht),n("div",vt,"任务 ID: "+r(t.taskId??"-"),1),t.resultId?(u(),i("div",pt," 结果 ID: "+r(t.resultId),1)):p("",!0),t.shopId?(u(),i("div",yt," 店铺 ID: "+r(t.shopId),1)):p("",!0),t.platform?(u(),i("div",mt," 平台: "+r(t.platform),1)):p("",!0),n("div",gt," 创建时间: "+r(se(t.createdAt)),1),t.finishedAt?(u(),i("div",_t," 完成时间: "+r(se(t.finishedAt)),1)):p("",!0),n("div",wt," ASIN结构: "+r(he(t)),1),t.error?(u(),i("div",kt," 错误: "+r(t.error),1)):p("",!0)]),n("div",It,[n("span",{class:ne(["status",me(t.taskStatus)])},r(ye(t.taskStatus)),3),De(t)?(u(),i("button",{key:0,type:"button",class:"archive",onClick:g=>Ge(t)}," 下载结果 ",8,bt)):p("",!0),n("button",{type:"button",class:"btn-delete",onClick:g=>be(t)}," 删除 ",8,St)])]))),128))])])):p("",!0)],64))])])])])])}}}),At=_s(Ct,[["__scopeId","data-v-40c478d6"]]);ws.locale("zh-cn");ks(At).use(Is,{locale:bs}).mount("#app"); +import{d as Ye,o as Ze,L as es,a as u,c as i,b as v,B as ss,e as n,af as ts,ag as as,t as r,ah as b,ai as ns,aj as os,f as p,am as ls,n as ne,x as Se,F as oe,r as Ce,g as h,h as E,br as rs,bs as us,bt as is,E as d,bu as cs,bv as ds,bw as fs,i as Ae,bx as hs,by as vs,bz as ps,bA as ys,bB as ms,U as K,bC as gs,_ as _s,aS as ws,q as ks,s as Is}from"./pywebview-84Lhn3TI.js";import{z as bs}from"./zh-cn-BJtuqXkB.js";/* empty css */import{c as Ss}from"./categorized-timers-JPA-olTr.js";const Cs={class:"page-shell module-page"},As={class:"main-content"},Ts={class:"left-panel"},Ns={class:"input-zone"},$s={class:"input-row"},Es=["disabled"],Qs={key:0,class:"empty-candidates"},qs={key:1,class:"candidate-table-scroll"},Ds=["onClick"],Ms={class:"run-row"},Ps=["disabled"],Rs=["disabled"],Bs={key:2,class:"queue-debug-card"},Fs={class:"queue-debug-line"},Ls={key:0,class:"queue-debug-payload"},xs={class:"right-panel"},Us={class:"task-list-wrap"},Hs={class:"clean-result-summary"},Os={class:"summary-card"},zs={class:"summary-card"},Vs={class:"summary-card"},js={class:"summary-card"},Ks={key:0,class:"empty-tasks narrow"},Js=["onClick"],Ws={class:"result-list-wrap"},Xs={key:0,class:"empty-tasks"},Gs={key:0,class:"result-subsection"},Ys={class:"task-list"},Zs={class:"left split-result-main"},et=["title"],st={class:"files"},tt={key:0,class:"files"},at={key:1,class:"files"},nt={key:2,class:"files"},ot={class:"files"},lt={class:"files"},rt={key:3,class:"files"},ut={class:"task-right"},it=["onClick"],ct={key:1,class:"result-subsection"},dt={class:"task-list"},ft={class:"left split-result-main"},ht=["title"],vt={class:"files"},pt={key:0,class:"files"},yt={key:1,class:"files"},mt={key:2,class:"files"},gt={class:"files"},_t={key:3,class:"files"},wt={class:"files"},kt={key:4,class:"files"},It={class:"task-right"},bt=["onClick"],St=["onClick"],Te=30,Ct=Ye({__name:"BrandQueryAsinTab",setup(Tt){const R=h(""),J=h([]),B=h([]),m=h([]),w=h([]),Q=h({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),F=h(!1),L=h(!1),W=h(!1),y=h(""),X=h(""),f=h([]),c=h(null),S=h(null),C=h(!1),G=h(!1);let A=null;const T=Ss("query-asin"),le=E(()=>m.value.filter(e=>e.matched&&(e.queryAsins||[]).some(s=>s.asins?.length))),x=E(()=>w.value.filter(e=>!pe(e.taskStatus))),Y=E(()=>w.value.filter(e=>pe(e.taskStatus))),Z=E(()=>!!c.value||f.value.length>0),U=E(()=>C.value||Z.value),re=E(()=>C.value&&Z.value);function ee(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function ue(){return`query-asin:matched:${ee()}`}function ie(){return`query-asin:queue-state:${ee()}`}function I(e){return`${(e.shopName||"").trim()}::${e.shopId||""}`}function H(e){return`${e.taskId??0}:${e.resultId??0}`}let _=!1;function ce(e){return _?Promise.resolve():T.sleep("queue-wait",e)}function Ne(){T.clearCategory("queue-wait")}function de(e){const s=e instanceof Error?e.message.toLowerCase():String(e||"").toLowerCase();return s.includes("network error")||s.includes("failed to fetch")||s.includes("timeout")||s.includes("503")||s.includes("502")||s.includes("504")||s.includes("500")||s.includes("load failed")}async function $e(e,s,o=20){let a=0;for(;;){if(_)throw new Error("component disposed");try{return await e()}catch(l){if(!de(l)||a>=o-1)throw l;a+=1,s?.(a,o),await ce(K())}}}function fe(e,s){return`query-asin:${e}:${s||"shop"}:${Date.now()}`}function se(e){if(!e)return"-";const s=new Date(e);if(Number.isNaN(s.getTime()))return e;const o=s.getFullYear(),a=String(s.getMonth()+1).padStart(2,"0"),l=String(s.getDate()).padStart(2,"0"),t=String(s.getHours()).padStart(2,"0"),g=String(s.getMinutes()).padStart(2,"0"),ae=String(s.getSeconds()).padStart(2,"0");return`${o}-${a}-${l} ${t}:${g}:${ae}`}function Ee(e){const s=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[s]||s||"-"}function Qe(e){const s=(e.matchMessage||"").trim();return s||(e.matched&&e.matchStatus==="MATCHED"?"索引已命中,可推送到 Python 队列":e.matched?"已命中索引,请结合状态列确认":"未命中或未就绪,请检查店铺名")}function qe(e){const s=k(e),o=Math.max(...s.map(a=>a.asins?.length||0),1);return Array.from({length:o},(a,l)=>({shopName:l===0?e.shopName:"",countries:s.map(t=>({country:t.country,asin:t.asins?.[l]||""}))}))}function he(e){const s=k(e),o=s.reduce((l,t)=>l+(t.asins?.length||0),0);return`${s.filter(l=>l.asins?.length).map(l=>l.country).join("、")||"无国家"},共 ${o} 个 ASIN`}function O(e){return(e||[]).map(s=>({country:(s.country||"").trim().toUpperCase(),asins:Array.from(new Set((s.asins||[]).map(o=>(o||"").trim().toUpperCase()).filter(Boolean)))})).filter(s=>s.country&&s.asins.length)}function k(e){return O(e?.queryAsins?.length?e.queryAsins:e?.query_asins)}function z(e){return k(e).some(s=>s.asins.length)}function ve(e){const s=(e||"").trim(),o=[S.value,...f.value,...m.value],a=o.find(t=>(t?.shopName||"").trim()===s&&z(t)),l=o.find(t=>z(t));return k(a||l)}function N(e,s){const o=z(e)?k(e):k(s||void 0);return{...e,queryAsins:o.length?o:ve(e.shopName)}}function pe(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function ye(e){return e==="SUCCESS"||e==="COMPLETED"?"已完成":e==="FAILED"?"失败":"执行中"}function me(e){return e==="SUCCESS"||e==="COMPLETED"?"success":e==="FAILED"?"failed":"running"}function De(e){return!!(e.resultId&&(e.fileReady||e.downloadUrl))}function ge(){typeof window>"u"||window.localStorage.setItem(ue(),JSON.stringify(m.value))}function Me(){try{const e=typeof window<"u"?window.localStorage.getItem(ue()):null;m.value=e?JSON.parse(e):[]}catch{m.value=[]}}function $(){if(typeof window>"u")return;const e={pendingQueue:f.value,activeTaskId:c.value,activeQueueItem:S.value};window.localStorage.setItem(ie(),JSON.stringify(e))}function Pe(){try{const e=typeof window<"u"?window.localStorage.getItem(ie()):null;if(!e)return;const s=JSON.parse(e);f.value=s.pendingQueue||[],c.value=s.activeTaskId??null,S.value=s.activeQueueItem??null}catch{f.value=[],c.value=null,S.value=null}}function q(){c.value=null,S.value=null,$()}function D(){Z.value||(C.value=!1,W.value=!1,G.value=!1,j(),$())}function Re(e){const s=e instanceof Error?e.message:String(e||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(s)}function Be(e){w.value=w.value.filter(s=>!(e.resultId!=null&&s.resultId===e.resultId||e.taskId!=null&&s.taskId===e.taskId))}function Fe(e,s){const o=new Map;for(const a of e)o.set(I(a),a);for(const a of s)o.set(I(a),a);return Array.from(o.values())}async function M(){J.value=await rs()}async function V(){Q.value=await us()}async function te(){const e=await is();w.value=(e.items||[]).map(s=>N(s))}async function P(){await Promise.all([V(),te()])}function _e(){if(!c.value){D();return}if(w.value.some(o=>o.taskId===c.value))return;const s=c.value;q(),y.value=f.value.length?`任务 ${s} 已不存在,已跳过并继续剩余队列`:"当前任务已不存在,已释放本地队列状态",D()}function Le(e){if(!e.length)return;const s=new Map(e.map(a=>[H(a),N(a)])),o=w.value.map(a=>{const l=s.get(H(a));if(!l)return N(a);const t=z(l)?k(l):k(a).length?k(a):ve(l.shopName||a.shopName);return{...a,...l,queryAsins:t}});for(const a of e){const l=H(a);o.some(t=>H(t)===l)||o.push(N(a))}w.value=o}async function we(e){const s=Array.from(new Set((e&&e.length?e:x.value.map(a=>a.taskId??0)).filter(a=>Number.isFinite(a)&&a>0)));if(!s.length)return;const o=await gs(s);Le(o.items||[]),(o.missingTaskIds||[]).length&&(await te(),_e())}function xe(){if(j(),_||!U.value)return;const e=async()=>{A=null,!(_||!U.value)&&(await we(),!_&&U.value&&(A=T.setTimeout("history-poll",e,K()*2)))};A=T.setTimeout("history-poll",e,K()*2)}function j(){A&&(T.clearTimer("history-poll",A),A=null)}function Ue(e){B.value=e}async function ke(){const e=R.value.trim();if(!e){d.warning("请输入店铺名");return}F.value=!0;try{await cs(e),R.value="",await Promise.all([M(),V()]),d.success("已加入备选区")}catch(s){d.error(s instanceof Error?s.message:"添加失败")}finally{F.value=!1}}async function He(e){try{await ds(e),B.value=B.value.filter(s=>s.id!==e),await Promise.all([M(),V()]),d.success("已删除")}catch(s){d.error(s instanceof Error?s.message:"删除失败")}}function Oe(e,s){const o=new Map;for(const a of e)o.set(I(a),a);for(const a of s)o.set(I(a),a);return Array.from(o.values())}async function ze(){const e=B.value.map(s=>s.shop_name).filter(Boolean);if(!e.length){d.warning("请先勾选备选区店铺");return}L.value=!0;try{const s=await fs(e);m.value=Oe(m.value,s.items||[]),ge(),d.success(`本次返回 ${s.items?.length||0} 条匹配结果`)}catch(s){d.error(s instanceof Error?s.message:"匹配失败")}finally{L.value=!1}}function Ve(e){if(U.value){d.warning("队列执行中,请等待当前串行任务结束后再调整");return}m.value=m.value.filter(s=>I(s)!==I(e)),ge()}function je(e){return{shopName:e.shopName,matched:e.matched,shopId:e.shopId,platform:e.platform,companyName:e.companyName,matchStatus:e.matchStatus,matchMessage:e.matchMessage,queryAsins:O(e.queryAsins)}}function Ke(e,s){const o=fe(e,s.shopName);return{type:"query-asin-run",ts:Date.now(),data:{taskId:e,user_id:Number(ee())||0,source:"frontend-vue-query-asin",submissionId:o,items:[{shopName:s.shopName,submissionId:o,shopId:s.shopId,platform:s.platform,companyName:s.companyName,matched:s.matched,matchStatus:s.matchStatus,matchMessage:s.matchMessage,queryAsins:O(s.queryAsins)}],query_asins:O(s.queryAsins),query_asin_rows:qe(s)}}}function Je(e){return w.value.find(s=>s.taskId===e)}async function We(e){let s=0;for(;;){if(_)return"STOPPED";try{if(await we([e]),c.value!==e)return"FAILED";s>0&&(y.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),s=0;const a=Je(e)?.taskStatus||"";if(a==="SUCCESS"||a==="FAILED"||a==="COMPLETED")return a}catch(o){if(!de(o))throw o;if(s+=1,s>=Te)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后刷新查看状态`);y.value=`任务 ${e} 执行中,正在等待后端服务恢复(${s}/${Te})...`}await ce(K())}}async function Ie(){if(!(_||C.value)){C.value=!0,W.value=!0,xe();try{const e=Ae();if(!e?.enqueue_json)throw new Error("当前客户端未提供 enqueue_json");for(;!_&&(c.value||f.value.length);){if(c.value){const g=await We(c.value);y.value=f.value.length>0?`任务 ${c.value} ${g==="SUCCESS"?"已完成":"执行失败"},自动继续下一个(剩余 ${f.value.length} 条)`:`任务 ${c.value} ${g==="SUCCESS"?"已完成":"执行失败"}`,q();continue}const s=f.value.shift();if($(),!s)break;const o=await $e(()=>hs([je(s)]),(g,ae)=>{y.value=`后端服务暂时不可用,正在重试创建任务(${g}/${ae})...`}),a=o.items?.[0]?N(o.items[0],s):void 0;if(!a?.taskId||!a.resultId)throw new Error("后端未返回有效任务标识");c.value=o.taskId,S.value=N(s,a),$(),await P();const l=Ke(o.taskId,a);X.value=JSON.stringify(l,null,2);const t=await e.enqueue_json(l);if(!t?.success){await vs(o.taskId,{shops:[{shopName:a.shopName||s.shopName||"",error:t?.error||`任务 ${o.taskId} 推送失败`,shopDone:!0,submissionId:fe(o.taskId,a.shopName||s.shopName)}]}),await P(),y.value=`任务 ${o.taskId} 推送失败,已自动继续下一个任务`,q();continue}y.value=f.value.length>0?`任务 ${o.taskId} 已入队,等待完成后自动继续下一个(剩余 ${f.value.length} 条)`:`任务 ${o.taskId} 已入队,等待执行完成`}y.value="串行队列已执行完成",await P(),d.success("查询ASIN队列已按顺序执行完成")}catch(e){if(_)return;const s=e instanceof Error?e.message:"队列执行失败";y.value=s,d.error(s),await P()}finally{C.value=!1,W.value=!1,j(),$()}}}async function Xe(){G.value=!0,D();const e=le.value;if(!e.length){d.warning("请先匹配可用店铺");return}f.value=Fe(f.value,e),$(),y.value=`已加入 ${e.length} 条店铺,开始串行执行`,await Ie()}async function Ge(e){if(!e.resultId)return;const s=Ae();if(!s?.save_file_from_url_new){d.error("当前客户端未提供下载能力");return}const o=ps(e.resultId),a=e.outputFilename||`${e.shopName||"result"}.xlsx`,l=await s.save_file_from_url_new(o,a);l.success?d.success(`已保存: ${l.path||a}`):l.error&&l.error!=="用户取消"&&d.error(l.error)}async function be(e){try{if(e.taskId)await ys(e.taskId),c.value===e.taskId&&q();else if(e.resultId)await ms(e.resultId);else throw new Error("缺少可删除的任务标识");await Promise.all([M(),P()]),D(),d.success("已删除")}catch(s){if(Re(s)){e.taskId&&c.value===e.taskId&&q(),Be(e),await M(),D(),d.success("后端记录已不存在,已同步移除本地记录");return}d.error(s instanceof Error?s.message:"删除失败")}}return Ze(async()=>{Me(),Pe(),await Promise.all([M(),V(),te()]),_e(),(c.value||f.value.length)&&(G.value=!0,y.value=c.value!=null?`检测到未完成队列,继续等待任务 ${c.value} 完成并自动接续后续店铺`:`检测到未完成队列,继续执行剩余 ${f.value.length} 条店铺`,Ie())}),es(()=>{_=!0,j(),Ne(),T.clearScope()}),(e,s)=>{const o=as,a=ns,l=os;return u(),i("div",Cs,[v(ss,{active:"query-asin"}),n("div",As,[n("aside",Ts,[s[3]||(s[3]=n("div",{class:"section-title"},"店铺输入",-1)),n("div",Ns,[s[1]||(s[1]=n("div",{class:"hint"}," 左侧负责录入店铺并加入备选区,确认命中后推送到 Python 队列。查询ASIN按店铺串行执行:上一个任务完成后会自动开始下一个,失败也会继续下一个。 ",-1)),n("div",$s,[v(o,{modelValue:R.value,"onUpdate:modelValue":s[0]||(s[0]=t=>R.value=t),clearable:"",placeholder:"请输入店铺名后回车或点击添加",onKeyup:ts(ke,["enter"])},null,8,["modelValue"]),n("button",{type:"button",class:"opt-btn",disabled:F.value,onClick:ke},r(F.value?"添加中...":"添加"),9,Es)])]),s[4]||(s[4]=n("div",{class:"section-title"},"备选区",-1)),J.value.length?(u(),i("div",qs,[v(l,{data:J.value,"row-key":"id",height:"260",class:"candidate-table",onSelectionChange:Ue},{default:b(()=>[v(a,{type:"selection",width:"42"}),v(a,{prop:"shop_name",label:"店铺名","min-width":"140","show-overflow-tooltip":""}),v(a,{label:"操作",width:"72",align:"center"},{default:b(({row:t})=>[n("button",{type:"button",class:"link-danger",onClick:g=>He(t.id)}," 删除 ",8,Ds)]),_:1})]),_:1},8,["data"])])):(u(),i("div",Qs," 暂无备选店铺,请先输入并添加 ")),n("div",Ms,[n("button",{type:"button",class:"btn-run",disabled:L.value,onClick:ze},r(L.value?"匹配中...":"匹配店铺"),9,Ps),n("button",{type:"button",class:"btn-run btn-queue",disabled:re.value||!le.value.length,onClick:Xe},r(re.value?"串行执行中...":"推送到 Python 队列"),9,Rs)]),s[5]||(s[5]=n("p",{class:"loading-msg"}," 当前页面会按店铺串行推送任务,并在任务成功或失败后自动接续下一个任务。服务端临时重启时会自动重试查询状态,恢复后继续后续店铺。 ",-1)),y.value?(u(),i("div",Bs,[s[2]||(s[2]=n("div",{class:"section-title queue-debug-title"},"队列状态",-1)),n("div",Fs,r(y.value),1),X.value?(u(),i("pre",Ls,r(X.value),1)):p("",!0)])):p("",!0)]),n("section",xs,[s[14]||(s[14]=n("div",{class:"panel-header"},"匹配与任务",-1)),n("div",Us,[n("div",Hs,[n("div",Os,[s[6]||(s[6]=n("span",{class:"summary-label"},"备选店铺",-1)),n("strong",null,r(Q.value.candidateCount),1)]),n("div",zs,[s[7]||(s[7]=n("span",{class:"summary-label"},"已处理任务",-1)),n("strong",null,r(Q.value.processedTaskCount),1)]),n("div",Vs,[s[8]||(s[8]=n("span",{class:"summary-label"},"成功任务",-1)),n("strong",null,r(Q.value.successTaskCount),1)]),n("div",js,[s[9]||(s[9]=n("span",{class:"summary-label"},"失败任务",-1)),n("strong",null,r(Q.value.failedTaskCount),1)])]),s[13]||(s[13]=n("div",{class:"subsection-title"},"匹配结果",-1)),m.value.length?(u(),ls(l,{key:1,data:m.value,"row-key":I,"highlight-current-row":!1,class:"result-table match-table"},{default:b(()=>[v(a,{prop:"shopName",label:"店铺名","min-width":"120"}),v(a,{label:"匹配",width:"72",align:"center"},{default:b(({row:t})=>[n("span",{class:ne(t.matched?"ok":"fail")},r(t.matched?"是":"否"),3)]),_:1}),v(a,{prop:"shopId",label:"店铺 ID","min-width":"120","show-overflow-tooltip":""}),v(a,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),v(a,{prop:"companyName",label:"公司","min-width":"120","show-overflow-tooltip":""}),v(a,{label:"状态",width:"110","show-overflow-tooltip":""},{default:b(({row:t})=>[Se(r(Ee(t.matchStatus)),1)]),_:1}),v(a,{label:"说明","min-width":"180","show-overflow-tooltip":""},{default:b(({row:t})=>[Se(r(Qe(t)),1)]),_:1}),v(a,{label:"操作",width:"72",align:"center"},{default:b(({row:t})=>[n("button",{type:"button",class:"link-danger",onClick:g=>Ve(t)}," 删除 ",8,Js)]),_:1})]),_:1},8,["data"])):(u(),i("div",Ks," 完成“匹配店铺”后,这里会展示匹配结果。 ")),n("div",Ws,[s[12]||(s[12]=n("div",{class:"result-list-header"},[n("span",null,"任务记录")],-1)),!x.value.length&&!Y.value.length?(u(),i("div",Xs," 暂无任务记录。推送到 Python 队列后,这里会展示当前任务和历史任务。 ")):(u(),i(oe,{key:1},[x.value.length?(u(),i("div",Gs,[s[10]||(s[10]=n("div",{class:"result-subsection-title"},"当前任务",-1)),n("ul",Ys,[(u(!0),i(oe,null,Ce(x.value,t=>(u(),i("li",{key:`${t.resultId}-${t.taskId}`,class:"task-item"},[n("div",Zs,[n("span",{class:"id",title:t.shopName||""},r(t.shopName||"-"),9,et),n("div",st,"任务 ID: "+r(t.taskId??"-"),1),t.resultId?(u(),i("div",tt," 结果 ID: "+r(t.resultId),1)):p("",!0),t.shopId?(u(),i("div",at," 店铺 ID: "+r(t.shopId),1)):p("",!0),t.platform?(u(),i("div",nt," 平台: "+r(t.platform),1)):p("",!0),n("div",ot," 创建时间: "+r(se(t.createdAt)),1),n("div",lt," ASIN结构: "+r(he(t)),1),t.error?(u(),i("div",rt," 错误: "+r(t.error),1)):p("",!0)]),n("div",ut,[n("span",{class:ne(["status",me(t.taskStatus)])},r(ye(t.taskStatus)),3),n("button",{type:"button",class:"btn-delete",onClick:g=>be(t)}," 删除 ",8,it)])]))),128))])])):p("",!0),Y.value.length?(u(),i("div",ct,[s[11]||(s[11]=n("div",{class:"result-subsection-title"},"历史任务",-1)),n("ul",dt,[(u(!0),i(oe,null,Ce(Y.value,t=>(u(),i("li",{key:`${t.resultId}-${t.taskId}`,class:"task-item"},[n("div",ft,[n("span",{class:"id",title:t.shopName||""},r(t.shopName||"-"),9,ht),n("div",vt,"任务 ID: "+r(t.taskId??"-"),1),t.resultId?(u(),i("div",pt," 结果 ID: "+r(t.resultId),1)):p("",!0),t.shopId?(u(),i("div",yt," 店铺 ID: "+r(t.shopId),1)):p("",!0),t.platform?(u(),i("div",mt," 平台: "+r(t.platform),1)):p("",!0),n("div",gt," 创建时间: "+r(se(t.createdAt)),1),t.finishedAt?(u(),i("div",_t," 完成时间: "+r(se(t.finishedAt)),1)):p("",!0),n("div",wt," ASIN结构: "+r(he(t)),1),t.error?(u(),i("div",kt," 错误: "+r(t.error),1)):p("",!0)]),n("div",It,[n("span",{class:ne(["status",me(t.taskStatus)])},r(ye(t.taskStatus)),3),De(t)?(u(),i("button",{key:0,type:"button",class:"archive",onClick:g=>Ge(t)}," 下载结果 ",8,bt)):p("",!0),n("button",{type:"button",class:"btn-delete",onClick:g=>be(t)}," 删除 ",8,St)])]))),128))])])):p("",!0)],64))])])])])])}}}),At=_s(Ct,[["__scopeId","data-v-40c478d6"]]);ws.locale("zh-cn");ks(At).use(Is,{locale:bs}).mount("#app"); diff --git a/app/assets/shop-match.js b/app/assets/shop-match.js index 141c62a..b344645 100644 --- a/app/assets/shop-match.js +++ b/app/assets/shop-match.js @@ -1 +1 @@ -import{d as ds,g as m,o as fs,L as hs,a as i,c,b,B as vs,e as l,ak as ps,al as ms,t as v,a4 as A,am as gs,an as ys,F as V,r as K,ao as kt,n as pe,f as E,ap as Ss,a5 as wt,aq as ks,ar as ws,w as _s,v as bs,aG as Ts,x as me,h as ge,aH as Cs,aI as Es,aJ as Is,aK as Ds,E as p,aL as $s,aM as Ns,aN as Ms,i as Fe,aO as Ps,aP as xs,aQ as As,aR as Ls,aS as Us,aT as Re,aU as Fs,U as Rs,_ as Os,aV as Vs,q as Hs,s as Bs}from"./pywebview-ZMN052YE.js";import{z as qs}from"./zh-cn-BXYgxART.js";/* empty css */import{L as zs}from"./listingFilters-BpGOU_pJ.js";/* empty css */import{c as Ks}from"./categorized-timers-JPA-olTr.js";const js={class:"page-shell module-page"},Gs={class:"main-content"},Js={class:"left-panel"},Ys={class:"input-zone"},Qs={class:"input-row"},Ws=["disabled"],Xs={key:0,class:"empty-candidates"},Zs={key:1,class:"candidate-table-scroll"},ea=["onClick"],ta={class:"country-pref-checks"},sa=["checked","disabled","onChange"],aa={class:"country-check-text"},na={key:2,class:"country-order-panel"},oa={class:"country-order-list"},la=["onDragstart","onDrop"],ra={class:"country-drag-label"},ua={key:3,class:"country-pref-status"},ia={class:"listing-filter-row"},ca={class:"schedule-switch"},da=["disabled"],fa={key:4,class:"schedule-config"},ha=["disabled","onClick"],va=["disabled"],pa={class:"run-row"},ma=["disabled"],ga=["disabled"],ya={key:5,class:"queue-debug-card"},Sa={class:"queue-debug-line"},ka={key:0,class:"queue-debug-payload"},wa={class:"right-panel"},_a={class:"task-list-wrap"},ba={class:"clean-result-summary"},Ta={class:"summary-card"},Ca={class:"summary-card"},Ea={class:"summary-card"},Ia={class:"summary-card"},Da={key:0,class:"empty-tasks narrow"},$a=["onClick"],Na={class:"result-list-wrap"},Ma={key:0,class:"empty-tasks"},Pa={key:0,class:"result-subsection"},xa={class:"task-list"},Aa={class:"left split-result-main"},La=["title"],Ua={class:"files"},Fa={key:0,class:"files"},Ra={key:1,class:"files"},Oa={key:2,class:"files"},Va={key:3,class:"files"},Ha={class:"task-right"},Ba=["onClick"],qa=["onClick"],za={key:1,class:"result-subsection"},Ka={class:"task-list"},ja={class:"left split-result-main"},Ga=["title"],Ja={class:"files"},Ya={key:0,class:"files"},Qa={key:1,class:"files"},Wa={class:"task-right"},Xa=["onClick"],Za=["onClick"],en=ds({__name:"BrandShopMatchTab",setup(sn){const ye=[{code:"DE",label:"德国"},{code:"UK",label:"英国"},{code:"FR",label:"法国"},{code:"IT",label:"意大利"},{code:"ES",label:"西班牙"}],ae=m(""),Se=m([]),Oe=m([]),T=m([]),ke=m("Active"),ne=m(!1),oe=m(!1),P=m(!1),we=m(!1),_e=m(!1),S=m(""),j=m(""),g=m(["DE","UK","FR","IT","ES"]),G=m(null),be=m(!1),Te=m(!1);let H=null;const x=m(!0),k=m([$e()]),J=m({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),D=m([]),y=m([]),w=m({}),d=m({}),M=m(null),Ce=m(!1),N=new Map,Ee=m(!1);let Y=null,Ve=0,He="",_=!1;const C=Ks("shop-match"),Ie=ge(()=>Ye(D.value.filter(e=>!!I(e.taskId)&&!Ze(e)),d.value,"current")),De=ge(()=>Ye(D.value.filter(e=>!I(e.taskId)||Ze(e)),d.value,"history")),_t=ge(()=>Ie.value.length>0||De.value.length>0),bt=ge(()=>{const e=new Set(g.value);return[...g.value.map(t=>({code:t,label:Ge(t)})),...ye.filter(t=>!e.has(t.code)).map(t=>({code:t.code,label:t.label}))]});function Q(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function Tt(){const e=Number(Q());return Number.isFinite(e)&&e>0?e:0}function I(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Be(){return`shop-match:tasks:${Q()}`}function qe(){return`shop-match:task-status:${Q()}`}function ze(){return`shop-match:task-snapshots:${Q()}`}function Ke(){return`shop-match:matched-items:${Q()}`}function le(e,t,s){s?window.localStorage.removeItem(e):window.localStorage.setItem(e,JSON.stringify(t))}function L(e){return`${(e.shopName||"").trim()}::${e.shopId||""}`}function je(e){return`${I(e.taskId)}-${e.resultId||0}-${e.shopName||""}`}function Ge(e){return ye.find(t=>t.code===e)?.label||e}function Ct(e){const t=e.getFullYear(),s=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0"),n=String(e.getHours()).padStart(2,"0"),u=String(e.getMinutes()).padStart(2,"0"),r=String(e.getSeconds()).padStart(2,"0");return`${t}-${s}-${a}T${n}:${u}:${r}`}function re(e){const t=e.getFullYear(),s=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0"),n=String(e.getHours()).padStart(2,"0"),u=String(e.getMinutes()).padStart(2,"0");return`${t}-${s}-${a} ${n}:${u}:00`}function $e(){const e=new Date;return e.setSeconds(0,0),e.setMinutes(e.getMinutes()+5),re(e)}function W(e){if(!e)return null;const s=e.trim().replace("T"," ").match(/^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2})(?::(\d{2}))?$/);if(!s)return null;const a=Number(s[1]),n=Number(s[2]),u=Number(s[3]),r=Number(s[4]),f=Number(s[5]),o=Number(s[6]||"0"),h=new Date(a,n-1,u,r,f,o,0);return Number.isNaN(h.getTime())||h.getFullYear()!==a||h.getMonth()!==n-1||h.getDate()!==u?null:h}function Et(e,t){const s=W(e)||new Date;return s.setSeconds(0,0),s.setMinutes(s.getMinutes()+t),re(s)}function Je(e){const t=W(e);if(!t)return"-";const s=String(t.getMonth()+1).padStart(2,"0"),a=String(t.getDate()).padStart(2,"0"),n=String(t.getHours()).padStart(2,"0"),u=String(t.getMinutes()).padStart(2,"0");return`${s}-${a} ${n}:${u}`}function Ye(e,t,s){const a=new Map;for(const n of e)a.set(je(n),n);for(const[n,u]of Object.entries(t)){const r=I(n),f=u.items?.[0];if(!f||!r)continue;const o=Xe(r);if(s==="current"&&o||s==="history"&&!o)continue;const h=je({...f,taskId:r});a.has(h)||a.set(h,{...f,taskId:r})}return Array.from(a.values())}function It(){try{const e=window.localStorage.getItem(Be()),t=e?JSON.parse(e):[];y.value=Array.isArray(t)?t.filter(s=>typeof s=="number"&&s>0):[]}catch{y.value=[]}}function ue(){le(Be(),y.value,y.value.length===0)}function Dt(){try{const e=window.localStorage.getItem(qe());w.value=e?JSON.parse(e):{}}catch{w.value={}}}function U(){le(qe(),w.value,Object.keys(w.value).length===0)}function $t(){try{const e=window.localStorage.getItem(ze());d.value=e?JSON.parse(e):{}}catch{d.value={}}}function B(){le(ze(),d.value,Object.keys(d.value).length===0)}function Nt(){try{const e=window.localStorage.getItem(Ke());T.value=e?JSON.parse(e):[]}catch{T.value=[]}}function Ne(){le(Ke(),T.value,T.value.length===0)}function Mt(e){const t=e instanceof Error?e.message:String(e||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(t)}function Pt(){const e=y.value.filter(t=>(w.value[t]||d.value[t]?.task?.status)==="RUNNING");e.length!==y.value.length&&(y.value=e,ue())}function Qe(e){y.value.includes(e)||(y.value=[...y.value,e],ue())}function ie(e){const t=N.get(e);t&&(C.clearTimer("scheduled-dispatch",t),N.delete(e),N.size||fe())}function ce(e){if(ie(e),y.value=y.value.filter(t=>t!==e),delete w.value[e],d.value[e]){const t={...d.value};delete t[e],d.value=t,B()}ue(),U()}function X(e){ce(e),D.value=D.value.filter(t=>I(t.taskId)!==e)}function We(e,t=!0){y.value=y.value.filter(s=>s!==e),t||delete w.value[e],ue(),U()}function Z(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function Xe(e){if(!e)return!1;const t=w.value[e]||d.value[e]?.task?.status;return Z(t)}function Ze(e){const t=I(e.taskId);return t&&Xe(t)||Z(e.taskStatus)?!0:!!e.success}async function ee(){Se.value=await Cs()}async function F(){J.value=await Es()}async function q(){const e=await Is();D.value=e.items||[]}async function xt(){try{const e=await Ds();if(Te.value)return;const t=(e.country_codes||[]).filter(s=>ye.some(a=>a.code===s));t.length&&(g.value=t)}catch{}}async function de(){await Promise.allSettled([q(),F()])}function et(){H&&C.clearTimer("preference-save",H),H=C.setTimeout("preference-save",()=>{H=null,At()},450)}async function At(){if(g.value.length){be.value=!0;try{await Us(g.value)}catch(e){p.error(e instanceof Error?e.message:"保存国家配置失败")}finally{be.value=!1}}}function Lt(e){Oe.value=e}async function tt(){const e=ae.value.trim();if(!e){p.warning("请输入店铺名");return}ne.value=!0;try{await $s(e),ae.value="",await ee(),await F()}catch(t){p.error(t instanceof Error?t.message:"添加失败")}finally{ne.value=!1}}async function Ut(e){try{await Ns(e.id),await ee(),await F()}catch(t){p.error(t instanceof Error?t.message:"删除失败")}}function Ft(e){return g.value.includes(e)}function st(e){return g.value.length===1&&g.value[0]===e}function Rt(e,t){const s=t.target;if(s){if(!s.checked&&st(e)){s.checked=!0,p.warning("至少保留 1 个国家");return}Ot(e,s.checked)}}function Ot(e,t){if(Te.value=!0,t)g.value.includes(e)||(g.value=[...g.value,e]);else{if(g.value.length<=1){p.warning("至少保留 1 个国家");return}g.value=g.value.filter(s=>s!==e)}et()}function Vt(e){G.value=e}function Ht(){G.value=null}function Bt(e){const t=G.value;if(G.value=null,t==null||t===e)return;Te.value=!0;const s=[...g.value],[a]=s.splice(t,1);s.splice(e,0,a),g.value=s,et()}function qt(){x.value&&(k.value=Me(k.value,!0)),x.value||(k.value=[])}function zt(){const e=k.value[k.value.length-1],t=e?Et(e,60):$e();k.value=[...k.value,t]}function Kt(e){k.value.length<=1||(k.value=k.value.filter((t,s)=>s!==e))}function jt(e,t){const s=[...k.value];s[e]=t||"",k.value=Me(s,!1)}function Gt(e,t){const s=new Map;for(const a of e)s.set(L(a),a);for(const a of t)s.set(L(a),a);return Array.from(s.values())}async function Jt(){const e=Oe.value.map(t=>t.shop_name).filter(Boolean);if(!e.length){p.warning("请先选择候选店铺");return}oe.value=!0;try{const t=await Ms(e);T.value=Gt(T.value,t.items||[]),Ne(),_e.value&>(),p.success(`本次返回 ${t.items?.length||0} 条匹配结果`)}catch(t){p.error(t instanceof Error?t.message:"匹配失败")}finally{oe.value=!1}}function Yt(e){T.value=T.value.filter(t=>L(t)!==L(e)),Ne()}function R(e){const t=new Set(e.map(s=>L(s)));T.value=T.value.filter(s=>!t.has(L(s))),Ne()}function Qt(){if(!x.value)return;const e=Date.now(),t=k.value.map(n=>n.trim()).filter(Boolean);if(!t.length)throw new Error("请至少选择一个执行时间");const s=t.map(n=>{const u=W(n);if(!u)throw new Error(`时间格式无效: ${n}`);return{raw:Ct(u),picker:re(u),time:u.getTime()}}).sort((n,u)=>n.time-u.time);for(let n=1;nn.time>e);if(!a.length)throw new Error("执行时间必须晚于当前时间,请重新选择");return a.length!==s.length&&(k.value=a.map(n=>n.picker),p.warning("已自动移除早于当前时间的执行时间")),a.map(n=>n.raw)}function Me(e,t){const s=Date.now(),a=e.map(r=>r.trim()).filter(Boolean).map(r=>{const f=W(r);return f?{value:re(f),time:f.getTime()}:null}).filter(r=>!!r).filter(r=>r.time>s).sort((r,f)=>r.time-f.time),n=[],u=new Set;for(const r of a)u.has(r.value)||(u.add(r.value),n.push(r.value));return!n.length&&t?[$e()]:n}function Wt(e){return e.skipAsinsByCountry||e.skip_asins_by_country||{}}function Xt(e){return e.skipAsinDetailsByCountry||e.skip_asin_details_by_country||{}}function at(e,t,s,a,n=!0){const u=Wt(t),r=Xt(t);return{type:"shop-match-run",ts:Date.now(),data:{taskId:e,user_id:Tt(),items:[{shopName:t.shopName,shopId:t.shopId,platform:t.platform,companyName:t.companyName,matched:!0,matchStatus:t.matchStatus,matchMessage:t.matchMessage,skip_asins_by_country:u,skipAsinsByCountry:u,skip_asin_details_by_country:r,skipAsinDetailsByCountry:r}],country_codes:[...s],skip_asins_by_country:u,skipAsinsByCountry:u,skip_asin_details_by_country:r,skipAsinDetailsByCountry:r,risk_listing_filter:ke.value,stage_index:a,final_stage:n}}}function Pe(e){const t=d.value[e]?.task,s=t?.scheduleStages||[],a=t?.currentStageIndex;if(typeof a!="number")return null;const n=s.find(u=>u.stageIndex===a);return n?.scheduledAt?{stageIndex:a,scheduledAt:n.scheduledAt,finalStage:a===s.length-1}:null}async function Zt(e,t){const s=Fe();if(!s?.enqueue_json)throw new Error("当前客户端未提供 enqueue_json");const a=Pe(e),n=d.value[e],u=n?.task?.countryCodes||g.value;if(!a)throw new Error(`任务 ${e} 缺少待执行阶段`);ie(e),await lt(()=>Fs(e,a.stageIndex),(o,h)=>{S.value=`任务 ${e} 等待后端恢复后再激活执行(${o}/${h})...`}),w.value={...w.value,[e]:"RUNNING"},n?.task&&(d.value={...d.value,[e]:{...n,task:{...n.task,status:"RUNNING",activeStageIndex:a.stageIndex}}}),B(),U();const r=at(e,t,u,a.stageIndex,a.finalStage);j.value=JSON.stringify(r,null,2);const f=await s.enqueue_json(r);if(!f?.success)throw new Error(f?.error||`任务 ${e} 推送失败`);Qe(e),S.value=`任务 ${e} 已推送第 ${a.stageIndex+1} 轮`,se(!0)}function nt(e){const t=W(e);return t?t.getTime():Number.NaN}function es(){const e=new Set(y.value);for(const s of Object.keys(d.value)){const a=I(s);a>0&&e.add(a)}for(const s of D.value){const a=I(s.taskId);a>0&&e.add(a)}const t=Array.from(e).map(s=>{const a=d.value[s],n=w.value[s]||a?.task?.status,u=a?.items?.[0]||D.value.find(o=>I(o.taskId)===s),r=Pe(s);if(n!=="SCHEDULED"||!u||!r?.scheduledAt)return null;const f=nt(r.scheduledAt);return!Number.isFinite(f)||f>Date.now()?null:{taskId:s,item:u,scheduledTime:f}}).filter(s=>!!s);return t.sort((s,a)=>s.scheduledTime-a.scheduledTime||s.taskId-a.taskId),t}async function xe(){if(Ee.value)return;const e=es();if(e.length){Ee.value=!0;try{const t=e[0];try{await Zt(t.taskId,t.item),await ls(t.taskId)}catch(s){const a=s instanceof Error?s.message:`任务 ${t.taskId} 调度失败`,n=`${t.taskId}:${a}`,u=Date.now();S.value=a,(He!==n||u-Ve>1e4)&&(He=n,Ve=u,p.error(a)),await Promise.allSettled([q(),rt()])}}finally{Ee.value=!1,$()}}}function ts(e,t){if(_||!t)return;ie(e);const s=nt(t);if(!Number.isFinite(s))return;const a=Math.max(0,s-Date.now()),n=C.setTimeout("scheduled-dispatch",()=>{N.delete(e),N.size||fe(),_||xe()},a);N.set(e,n),ot()}function $(){if(_)return;const e=new Set(y.value);for(const t of Object.keys(d.value)){const s=I(t);s>0&&e.add(s)}for(const t of D.value){const s=I(t.taskId);s>0&&e.add(s)}for(const t of e){const a=d.value[t]?.task?.status||w.value[t],n=Pe(t);a==="SCHEDULED"&&n?.scheduledAt?ts(t,n.scheduledAt):ie(t)}N.size?ot():fe(),xe()}function ot(){_||Y||!N.size||(Y=C.setInterval("schedule-heartbeat",()=>{_||xe()},3e4))}function fe(){Y&&(C.clearTimer("schedule-heartbeat",Y),Y=null)}function he(){$(),y.value.length&&se(!0)}const ss=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"];function te(e){return _?Promise.resolve():C.sleep("queue-wait",e)}function as(){C.clearCategory("queue-wait")}function Ae(e){const t=(e instanceof Error?e.message:String(e||"")).toLowerCase();return ss.some(s=>t.includes(s.toLowerCase()))}async function lt(e,t,s=10){let a=0;for(;;){if(_)throw new Error("component disposed");try{return await e()}catch(n){if(a+=1,!Ae(n)||a>=s)throw n;t(a,s),await te(O())}}}async function rt(){if(!y.value.length)return{settledTaskIds:[]};try{const e=await Re(y.value),t={...d.value},s=new Set;for(const a of e.missingTaskIds||[])X(a),delete t[a],s.add(a);for(const a of e.items||[]){const n=a.task?.id;if(!n)continue;const u=t[n];t[n]=u?{...u,task:{...u.task||{},...a.task||{}}}:a;const r=a.task?.status||"";if(r){if(w.value[n]=r,Z(r)){ce(n),s.add(n);continue}r==="SCHEDULED"&&(We(n),s.add(n))}}return d.value=t,B(),U(),$(),{settledTaskIds:Array.from(s)}}catch{return{settledTaskIds:[]}}}function O(){return Rs()}function ut(e=!1){if(_)return;if(M.value){if(!e)return;C.clearTimer("task-poll",M.value),M.value=null}const t=async()=>{if(M.value=null,!_){if(Ce.value||!y.value.length){y.value.length&&ut();return}Ce.value=!0;try{const{settledTaskIds:s}=await rt();s.length&&await Promise.allSettled([q(),F()])}finally{Ce.value=!1}!_&&y.value.length&&(M.value=C.setTimeout("task-poll",t,O()))}};e?t():M.value=C.setTimeout("task-poll",t,O())}function se(e=!1){ut(e)}function ns(){M.value&&(C.clearTimer("task-poll",M.value),M.value=null)}async function os(e){let t=0;const s=30;for(;;){if(_)return"STOPPED";try{const a=await Re([e]);if(t>0&&(S.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),t=0,(a.missingTaskIds||[]).includes(e))return X(e),await de(),$(),"FAILED";const n=(a.items||[]).find(r=>r.task?.id===e),u=n?.task?.status||"";if(n){const r=d.value[e];d.value={...d.value,[e]:r?{...r,task:{...r.task||{},...n.task||{}}}:n},B()}if(u&&(w.value[e]=u,U()),Z(u))return ce(e),await de(),$(),u}catch(a){if(!Ae(a))throw a;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后手动刷新查看状态`);S.value=`任务 ${e} 运行中,正在等待后端服务恢复(${t}/${s})...`,(t===1||t%5===0)&&p.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await te(O());continue}await te(O())}}async function ls(e){let t=0;const s=30;for(;;){if(_)return"STOPPED";try{const a=await Re([e]);if(t>0&&(S.value=`任务 ${e} 后端已恢复,继续等待当前轮次结束...`),t=0,(a.missingTaskIds||[]).includes(e))return X(e),await de(),$(),"FAILED";const n=(a.items||[]).find(r=>r.task?.id===e),u=n?.task?.status||"";if(n){const r=d.value[e];d.value={...d.value,[e]:r?{...r,task:{...r.task||{},...n.task||{}}}:n},B()}if(u&&(w.value[e]=u,U()),!u||u==="RUNNING"){await te(O());continue}return Z(u)?(ce(e),await de(),$(),u):(u==="SCHEDULED"&&(We(e),$()),u)}catch(a){if(!Ae(a))throw a;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待当前轮次结束超时,请稍后手动刷新查看状态`);S.value=`任务 ${e} 运行中,正在等待当前轮次结束(${t}/${s})...`,(t===1||t%5===0)&&p.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await te(O())}}}function Le(e){const t=I(e.taskId);return t?w.value[t]||d.value[t]?.task?.status||e.taskStatus||"":e.taskStatus||""}function it(e){const t=I(e.taskId);return t?d.value[t]:void 0}function ct(e){const s=it(e)?.task,a=s?.scheduleStages||[];if(!a.length)return"";const n=a.length,u=typeof s?.activeStageIndex=="number"?s.activeStageIndex:void 0,r=typeof s?.currentStageIndex=="number"?s.currentStageIndex:void 0;return typeof u=="number"?`执行进度: 第 ${u+1}/${n} 次执行中`:typeof r=="number"?`执行进度: 等待第 ${r+1}/${n} 次`:`执行进度: 共 ${n} 次`}function dt(e){const s=it(e)?.task,a=s?.scheduleStages||[];if(typeof s?.currentStageIndex=="number"){const n=a.find(u=>u.stageIndex===s.currentStageIndex);if(n?.scheduledAt)return Je(n.scheduledAt)}return e.scheduledAt?Je(e.scheduledAt):""}function ft(e){const t=Le(e);return t==="SCHEDULED"?"待执行":t==="RUNNING"?"执行中":t==="SUCCESS"||t==="COMPLETED"?"已完成":t==="FAILED"?"失败":e.success?"已完成":"未知"}function ht(e){const t=Le(e);return t==="SUCCESS"||t==="COMPLETED"?"success":t==="FAILED"?"failed":"running"}function vt(e){const t=Le(e);return!!e.resultId&&(!!e.fileReady||!!e.downloadUrl)&&(t==="SUCCESS"||t==="COMPLETED")}async function pt(e){if(!e.resultId)return;const t=Fe();if(!t?.save_file_from_url_new){p.error("当前客户端未提供下载能力");return}const s=Ps(e.resultId),a=e.outputFilename||`${e.shopName||"result"}.xlsx`,n=await t.save_file_from_url_new(s,a);n.success?p.success(`已保存: ${n.path||a}`):n.error&&n.error!=="用户取消"&&p.error(n.error)}async function mt(e){const t=I(e.taskId),s=Number(e.resultId||0);try{if(t>0)await xs(t),X(t);else if(s>0)await As(s),D.value=D.value.filter(a=>Number(a.resultId||0)!==s),R([e]);else throw new Error("缺少可删除的任务标识");await Promise.allSettled([q(),ee(),F()]),p.success("删除成功")}catch(a){if(Mt(a)){t>0?X(t):s>0&&(D.value=D.value.filter(n=>Number(n.resultId||0)!==s)),R([e]),await Promise.allSettled([q(),ee(),F()]),p.success("后端记录已不存在,本地记录已同步清理");return}p.error(a instanceof Error?a.message:"删除失败")}}function rs(e){const t=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[t]||t||"—"}function us(e){const t=(e.matchMessage||"").trim();return t||(e.matched&&e.matchStatus==="MATCHED"?"紫鸟索引已命中,可推送队列":e.matched?"已关联索引,请结合状态列查看是否可推送":"未命中或未就绪,请检查店铺名与索引刷新")}async function is(){_e.value=!0,await gt()}function cs(){return T.value.find(e=>e.matched)}async function gt(){if(_||we.value)return;const e=Fe();if(!e?.enqueue_json){p.error("当前客户端未提供 enqueue_json");return}if(!T.value.filter(r=>r.matched).length){p.warning("请先匹配可用店铺");return}if(!g.value.length){p.warning("请至少勾选一个国家");return}let s;try{s=Qt()}catch(r){p.error(r instanceof Error?r.message:"定时配置无效");return}we.value=!0,P.value=!0,j.value="";let a=0,n=0,u=0;try{for(;!_&&_e.value;){const r=cs();if(!r)break;u+=1;try{const f=await lt(()=>Ls([r],g.value,s),(Ue,ve)=>{S.value=`后端服务暂时不可用,正在重试创建任务(${Ue}/${ve})...`}),o=f.taskId,h=s?.length?"SCHEDULED":"RUNNING",z={task:{id:o,status:h,scheduledAt:s?.[0],countryCodes:[...g.value],currentStageIndex:s?.length?0:void 0,activeStageIndex:void 0,scheduleStages:(s||[]).map((Ue,ve)=>({stageIndex:ve,scheduledAt:Ue,status:ve===0?"SCHEDULED":"PENDING"}))},items:f.items};if(d.value={...d.value,[o]:z},w.value={...w.value,[o]:h},B(),U(),!f.items?.[0]){R([r]);continue}if(s?.length){a+=1,$(),S.value=`任务 ${o} 已创建,共 ${s.length} 个执行时间点`,R([r]);continue}const yt=at(o,r,g.value);j.value=JSON.stringify(yt,null,2);const St=await e.enqueue_json(yt);if(!St?.success){n+=1,S.value=`任务 ${o} 推送失败,已自动继续下一条:${St?.error||"未知错误"}`,p.error(S.value),R([r]);continue}if(Qe(o),se(!0),R([r]),S.value=`任务 ${o} 已入队,等待执行完成`,await os(o)!=="SUCCESS"){n+=1,S.value=`任务 ${o} 执行失败,已自动继续下一条`,p.error(S.value);continue}a+=1,S.value=`任务 ${o} 已完成`}catch(f){if(_)break;n+=1,S.value=`第 ${u} 条任务处理失败,已自动继续下一条:${f instanceof Error?f.message:"未知错误"}`,p.error(S.value),R([r]);continue}}$(),s?.length||se(!0),!_&&(a>0||n>0)&&p.success(s?.length?`定时任务已创建:成功 ${a} 条,失败 ${n} 条`:`店铺推送已完成:成功 ${a} 条,失败 ${n} 条`)}catch(r){if(_)return;const f=r instanceof Error?r.message:"推送失败";S.value=f,p.error(f)}finally{we.value=!1,P.value=!1}}return fs(async()=>{It(),Dt(),$t(),Nt(),k.value=Me(k.value,x.value),Pt(),await Promise.allSettled([ee(),xt(),q(),F()]),window.addEventListener("focus",he),document.addEventListener("visibilitychange",he),$(),y.value.length&&se(!0)}),hs(()=>{_=!0,ns(),fe(),as(),window.removeEventListener("focus",he),document.removeEventListener("visibilitychange",he),H&&C.clearTimer("preference-save",H);for(const e of N.values())C.clearTimer("scheduled-dispatch",e);N.clear(),C.clearScope()}),(e,t)=>{const s=ms,a=gs,n=ys,u=ks,r=ws,f=Ts;return i(),c("div",js,[b(vs,{active:"shop-match"}),l("div",Gs,[l("aside",Js,[t[10]||(t[10]=l("div",{class:"section-title"},"店铺候选",-1)),l("div",Ys,[t[4]||(t[4]=l("div",{class:"hint"},"输入店铺名后点“添加”加入下方备选区。勾选备选店铺后先做“匹配店铺”,确认命中紫鸟索引后再推送到 Python 队列。",-1)),l("div",Qs,[b(s,{modelValue:ae.value,"onUpdate:modelValue":t[0]||(t[0]=o=>ae.value=o),clearable:"",placeholder:"请输入店铺名后回车或点击添加",onKeyup:ps(tt,["enter"])},null,8,["modelValue"]),l("button",{type:"button",class:"opt-btn",disabled:ne.value,onClick:tt},v(ne.value?"添加中...":"添加"),9,Ws)])]),t[11]||(t[11]=l("div",{class:"section-title"},"备选店铺",-1)),Se.value.length?(i(),c("div",Zs,[b(n,{data:Se.value,"row-key":"id",height:"240",class:"candidate-table",onSelectionChange:Lt},{default:A(()=>[b(a,{type:"selection",width:"42"}),b(a,{prop:"shop_name",label:"店铺名","min-width":"120","show-overflow-tooltip":""}),b(a,{label:"操作",width:"72",align:"center"},{default:A(({row:o})=>[l("button",{type:"button",class:"link-danger",onClick:h=>Ut(o)},"删除",8,ea)]),_:1})]),_:1},8,["data"])])):(i(),c("div",Xs,"暂无备选店铺,请先输入并添加")),t[12]||(t[12]=l("div",{class:"section-title"},"国家配置",-1)),t[13]||(t[13]=l("p",{class:"hint country-pref-hint"},"勾选的国家会在每一个执行时间点都执行一遍。勾选区会按照已选顺序排在前面,下方支持拖拽排序,和商品风险页保持一致。",-1)),l("div",ta,[(i(!0),c(V,null,K(bt.value,o=>(i(),c("label",{key:o.code,class:"country-check-row"},[l("input",{type:"checkbox",class:"country-check-input",checked:Ft(o.code),disabled:st(o.code),onChange:h=>Rt(o.code,h)},null,40,sa),l("span",aa,v(o.label)+" ("+v(o.code)+")",1)]))),128))]),g.value.length?(i(),c("div",na,[t[6]||(t[6]=l("div",{class:"country-order-caption"},"已选顺序(拖拽 ⋮⋮ 调整)",-1)),l("div",oa,[(i(!0),c(V,null,K(g.value,(o,h)=>(i(),c("div",{key:o,class:pe(["country-drag-row",{dragging:G.value===h}]),draggable:"true",onDragstart:z=>Vt(h),onDragend:Ht,onDragover:t[1]||(t[1]=kt(()=>{},["prevent"])),onDrop:kt(z=>Bt(h),["prevent"])},[t[5]||(t[5]=l("span",{class:"drag-handle",title:"拖动排序"},"⋮⋮",-1)),l("span",ra,v(Ge(o))+" ("+v(o)+")",1)],42,la))),128))])])):E("",!0),be.value?(i(),c("div",ua,"保存中...")):E("",!0),t[14]||(t[14]=l("div",{class:"section-title"},"商品列表筛选",-1)),t[15]||(t[15]=l("p",{class:"hint listing-filter-hint"},"与“推送到 Python 队列”一并下发,供 Python 区分处理场景。",-1)),l("div",ia,[b(r,{modelValue:ke.value,"onUpdate:modelValue":t[2]||(t[2]=o=>ke.value=o),class:"listing-filter-select",teleported:"",placeholder:"选择筛选类型"},{default:A(()=>[(i(!0),c(V,null,K(Ss(zs),o=>(i(),wt(u,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),t[16]||(t[16]=l("div",{class:"section-title"},"定时执行",-1)),l("label",ca,[_s(l("input",{"onUpdate:modelValue":t[3]||(t[3]=o=>x.value=o),type:"checkbox",disabled:P.value,onChange:qt},null,40,da),[[bs,x.value]]),t[7]||(t[7]=l("span",null,"启用多时间点调度",-1))]),x.value?(i(),c("div",fa,[(i(!0),c(V,null,K(k.value,(o,h)=>(i(),c("div",{key:`schedule-${h}`,class:"schedule-row"},[b(f,{"model-value":o,type:"datetime","value-format":"YYYY-MM-DD HH:mm:ss",format:"MM-DD HH:mm",placeholder:"选择执行时间",disabled:P.value,class:"schedule-picker","onUpdate:modelValue":z=>jt(h,z)},null,8,["model-value","disabled","onUpdate:modelValue"]),l("button",{type:"button",class:"schedule-remove",disabled:P.value||k.value.length<=1,onClick:z=>Kt(h)},"删除",8,ha)]))),128)),l("button",{type:"button",class:"schedule-add",disabled:P.value,onClick:zt},"添加时间点",8,va),t[8]||(t[8]=l("p",{class:"hint schedule-hint"},"默认开启定时;支持按 `MM-DD HH:mm` 配置多个时间点,前端不再限制选择更早时间,实际是否可执行以后端校验为准。",-1))])):E("",!0),l("div",pa,[l("button",{type:"button",class:"btn-run",disabled:oe.value,onClick:Jt},v(oe.value?"匹配中...":"匹配店铺"),9,ma),l("button",{type:"button",class:"btn-run btn-queue",disabled:P.value||!T.value.length,onClick:is},v(P.value?"推送中...":x.value?"创建定时任务":"推送到 Python 队列"),9,ga)]),t[17]||(t[17]=l("p",{class:"loading-msg"},[me("已支持多阶段定时执行;Python 每处理完一店可回传 "),l("code",null,"/api/shop-match/tasks/{taskId}/result"),me(",后端会按阶段汇总并在超时场景自动收尾。")],-1)),S.value?(i(),c("div",ya,[t[9]||(t[9]=l("div",{class:"section-title queue-debug-title"},"推送结果",-1)),l("div",Sa,v(S.value),1),j.value?(i(),c("pre",ka,v(j.value),1)):E("",!0)])):E("",!0)]),l("section",wa,[t[26]||(t[26]=l("div",{class:"panel-header"},"匹配与任务",-1)),l("div",_a,[l("div",ba,[l("div",Ta,[t[18]||(t[18]=l("span",{class:"summary-label"},"候选店铺",-1)),l("strong",null,v(J.value.candidateCount),1)]),l("div",Ca,[t[19]||(t[19]=l("span",{class:"summary-label"},"已结束任务",-1)),l("strong",null,v(J.value.processedTaskCount),1)]),l("div",Ea,[t[20]||(t[20]=l("span",{class:"summary-label"},"成功",-1)),l("strong",null,v(J.value.successTaskCount),1)]),l("div",Ia,[t[21]||(t[21]=l("span",{class:"summary-label"},"失败",-1)),l("strong",null,v(J.value.failedTaskCount),1)])]),t[25]||(t[25]=l("div",{class:"subsection-title"},"匹配结果",-1)),T.value.length?(i(),wt(n,{key:1,data:T.value,"row-key":L,"highlight-current-row":!1,class:"result-table match-table"},{default:A(()=>[b(a,{prop:"shopName",label:"店铺名","min-width":"100"}),b(a,{label:"匹配",width:"72",align:"center"},{default:A(({row:o})=>[l("span",{class:pe(o.matched?"ok":"fail")},v(o.matched?"是":"否"),3)]),_:1}),b(a,{prop:"shopId",label:"店铺ID","min-width":"120","show-overflow-tooltip":""}),b(a,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),b(a,{prop:"companyName",label:"公司","min-width":"100","show-overflow-tooltip":""}),b(a,{label:"状态",width:"100","show-overflow-tooltip":""},{default:A(({row:o})=>[me(v(rs(o.matchStatus)),1)]),_:1}),b(a,{label:"说明","min-width":"140","show-overflow-tooltip":""},{default:A(({row:o})=>[me(v(us(o)),1)]),_:1}),b(a,{label:"操作",width:"72",align:"center"},{default:A(({row:o})=>[l("button",{type:"button",class:"link-danger",onClick:h=>Yt(o)},"删除",8,$a)]),_:1})]),_:1},8,["data"])):(i(),c("div",Da,"完成“匹配店铺”后,在此展示紫鸟索引匹配结果,供核对后再推送队列。")),l("div",Na,[t[24]||(t[24]=l("div",{class:"result-list-header"},[l("span",null,"处理记录")],-1)),_t.value?(i(),c(V,{key:1},[Ie.value.length?(i(),c("div",Pa,[t[22]||(t[22]=l("div",{class:"result-subsection-title"},"当前任务",-1)),l("ul",xa,[(i(!0),c(V,null,K(Ie.value,o=>(i(),c("li",{key:`cur-${o.resultId}-${o.taskId}`,class:"task-item"},[l("div",Aa,[l("span",{class:"id",title:o.shopName||""},v(o.shopName||"-"),9,La),l("div",Ua,"任务 ID: "+v(o.taskId??"-"),1),o.platform?(i(),c("div",Fa,"平台: "+v(o.platform),1)):E("",!0),ct(o)?(i(),c("div",Ra,v(ct(o)),1)):E("",!0),dt(o)?(i(),c("div",Oa,"下一次: "+v(dt(o)),1)):E("",!0),o.error?(i(),c("div",Va,"错误: "+v(o.error),1)):E("",!0)]),l("div",Ha,[l("span",{class:pe(["status",ht(o)])},v(ft(o)),3),vt(o)?(i(),c("button",{key:0,type:"button",class:"download",onClick:h=>pt(o)},"下载",8,Ba)):E("",!0),l("button",{type:"button",class:"btn-delete",onClick:h=>mt(o)},"删除",8,qa)])]))),128))])])):E("",!0),De.value.length?(i(),c("div",za,[t[23]||(t[23]=l("div",{class:"result-subsection-title"},"历史任务",-1)),l("ul",Ka,[(i(!0),c(V,null,K(De.value,o=>(i(),c("li",{key:`his-${o.resultId}-${o.taskId}`,class:"task-item"},[l("div",ja,[l("span",{class:"id",title:o.shopName||""},v(o.shopName||"-"),9,Ga),l("div",Ja,"任务 ID: "+v(o.taskId??"-"),1),o.outputFilename?(i(),c("div",Ya,"文件: "+v(o.outputFilename),1)):E("",!0),o.error?(i(),c("div",Qa,"错误: "+v(o.error),1)):E("",!0)]),l("div",Wa,[l("span",{class:pe(["status",ht(o)])},v(ft(o)),3),vt(o)?(i(),c("button",{key:0,type:"button",class:"download",onClick:h=>pt(o)},"下载",8,Xa)):E("",!0),l("button",{type:"button",class:"btn-delete",onClick:h=>mt(o)},"删除",8,Za)])]))),128))])])):E("",!0)],64)):(i(),c("div",Ma,"暂无处理记录。推送队列并等待 Python 回传后,将在此显示下载链接。"))])])])])])}}}),tn=Os(en,[["__scopeId","data-v-288e061c"]]);Vs.locale("zh-cn");Hs(tn).use(Bs,{locale:qs}).mount("#app"); +import{d as ds,g as m,o as fs,L as hs,a as i,c,b,B as vs,e as l,af as ps,ag as ms,t as v,ah as A,ai as gs,aj as ys,F as H,r as j,ak as kt,n as pe,f as E,al as Ss,am as wt,an as ks,ao as ws,w as _s,v as bs,aD as Ts,x as me,h as ge,aE as Cs,aF as Es,aG as Is,aH as Ds,E as p,aI as $s,aJ as Ns,aK as Ms,i as Ue,aL as Ps,aM as xs,aN as As,aO as Ls,aP as Fs,aQ as Re,aR as Us,U as Rs,_ as Os,aS as Hs,q as Vs,s as Bs}from"./pywebview-84Lhn3TI.js";import{z as qs}from"./zh-cn-BJtuqXkB.js";/* empty css */import{L as zs}from"./listingFilters-BpGOU_pJ.js";import{c as js}from"./categorized-timers-JPA-olTr.js";const Ks={class:"page-shell module-page"},Gs={class:"main-content"},Js={class:"left-panel"},Ys={class:"input-zone"},Qs={class:"input-row"},Ws=["disabled"],Xs={key:0,class:"empty-candidates"},Zs={key:1,class:"candidate-table-scroll"},ea=["onClick"],ta={class:"country-pref-checks"},sa=["checked","disabled","onChange"],aa={class:"country-check-text"},na={key:2,class:"country-order-panel"},oa={class:"country-order-list"},la=["onDragstart","onDrop"],ra={class:"country-drag-label"},ua={key:3,class:"country-pref-status"},ia={class:"listing-filter-row"},ca={class:"schedule-switch"},da=["disabled"],fa={key:4,class:"schedule-config"},ha=["disabled","onClick"],va=["disabled"],pa={class:"run-row"},ma=["disabled"],ga=["disabled"],ya={key:5,class:"queue-debug-card"},Sa={class:"queue-debug-line"},ka={key:0,class:"queue-debug-payload"},wa={class:"right-panel"},_a={class:"task-list-wrap"},ba={class:"clean-result-summary"},Ta={class:"summary-card"},Ca={class:"summary-card"},Ea={class:"summary-card"},Ia={class:"summary-card"},Da={key:0,class:"empty-tasks narrow"},$a=["onClick"],Na={class:"result-list-wrap"},Ma={key:0,class:"empty-tasks"},Pa={key:0,class:"result-subsection"},xa={class:"task-list"},Aa={class:"left split-result-main"},La=["title"],Fa={class:"files"},Ua={key:0,class:"files"},Ra={key:1,class:"files"},Oa={key:2,class:"files"},Ha={key:3,class:"files"},Va={class:"task-right"},Ba=["onClick"],qa=["onClick"],za={key:1,class:"result-subsection"},ja={class:"task-list"},Ka={class:"left split-result-main"},Ga=["title"],Ja={class:"files"},Ya={key:0,class:"files"},Qa={key:1,class:"files"},Wa={class:"task-right"},Xa=["onClick"],Za=["onClick"],en=ds({__name:"BrandShopMatchTab",setup(sn){const ye=[{code:"DE",label:"德国"},{code:"UK",label:"英国"},{code:"FR",label:"法国"},{code:"IT",label:"意大利"},{code:"ES",label:"西班牙"}],ae=m(""),Se=m([]),Oe=m([]),T=m([]),ke=m("Active"),ne=m(!1),oe=m(!1),P=m(!1),we=m(!1),_e=m(!1),S=m(""),K=m(""),g=m(["DE","UK","FR","IT","ES"]),G=m(null),be=m(!1),Te=m(!1);let V=null;const x=m(!0),k=m([$e()]),J=m({candidateCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),D=m([]),y=m([]),w=m({}),d=m({}),M=m(null),Ce=m(!1),N=new Map,Ee=m(!1);let Y=null,He=0,Ve="",_=!1;const C=js("shop-match"),Ie=ge(()=>Ye(D.value.filter(e=>!!I(e.taskId)&&!Ze(e)),d.value,"current")),De=ge(()=>Ye(D.value.filter(e=>!I(e.taskId)||Ze(e)),d.value,"history")),_t=ge(()=>Ie.value.length>0||De.value.length>0),bt=ge(()=>{const e=new Set(g.value);return[...g.value.map(t=>({code:t,label:Ge(t)})),...ye.filter(t=>!e.has(t.code)).map(t=>({code:t.code,label:t.label}))]});function Q(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function Tt(){const e=Number(Q());return Number.isFinite(e)&&e>0?e:0}function I(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Be(){return`shop-match:tasks:${Q()}`}function qe(){return`shop-match:task-status:${Q()}`}function ze(){return`shop-match:task-snapshots:${Q()}`}function je(){return`shop-match:matched-items:${Q()}`}function le(e,t,s){s?window.localStorage.removeItem(e):window.localStorage.setItem(e,JSON.stringify(t))}function L(e){return`${(e.shopName||"").trim()}::${e.shopId||""}`}function Ke(e){return`${I(e.taskId)}-${e.resultId||0}-${e.shopName||""}`}function Ge(e){return ye.find(t=>t.code===e)?.label||e}function Ct(e){const t=e.getFullYear(),s=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0"),n=String(e.getHours()).padStart(2,"0"),u=String(e.getMinutes()).padStart(2,"0"),r=String(e.getSeconds()).padStart(2,"0");return`${t}-${s}-${a}T${n}:${u}:${r}`}function re(e){const t=e.getFullYear(),s=String(e.getMonth()+1).padStart(2,"0"),a=String(e.getDate()).padStart(2,"0"),n=String(e.getHours()).padStart(2,"0"),u=String(e.getMinutes()).padStart(2,"0");return`${t}-${s}-${a} ${n}:${u}:00`}function $e(){const e=new Date;return e.setSeconds(0,0),e.setMinutes(e.getMinutes()+5),re(e)}function W(e){if(!e)return null;const s=e.trim().replace("T"," ").match(/^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2})(?::(\d{2}))?$/);if(!s)return null;const a=Number(s[1]),n=Number(s[2]),u=Number(s[3]),r=Number(s[4]),f=Number(s[5]),o=Number(s[6]||"0"),h=new Date(a,n-1,u,r,f,o,0);return Number.isNaN(h.getTime())||h.getFullYear()!==a||h.getMonth()!==n-1||h.getDate()!==u?null:h}function Et(e,t){const s=W(e)||new Date;return s.setSeconds(0,0),s.setMinutes(s.getMinutes()+t),re(s)}function Je(e){const t=W(e);if(!t)return"-";const s=String(t.getMonth()+1).padStart(2,"0"),a=String(t.getDate()).padStart(2,"0"),n=String(t.getHours()).padStart(2,"0"),u=String(t.getMinutes()).padStart(2,"0");return`${s}-${a} ${n}:${u}`}function Ye(e,t,s){const a=new Map;for(const n of e)a.set(Ke(n),n);for(const[n,u]of Object.entries(t)){const r=I(n),f=u.items?.[0];if(!f||!r)continue;const o=Xe(r);if(s==="current"&&o||s==="history"&&!o)continue;const h=Ke({...f,taskId:r});a.has(h)||a.set(h,{...f,taskId:r})}return Array.from(a.values())}function It(){try{const e=window.localStorage.getItem(Be()),t=e?JSON.parse(e):[];y.value=Array.isArray(t)?t.filter(s=>typeof s=="number"&&s>0):[]}catch{y.value=[]}}function ue(){le(Be(),y.value,y.value.length===0)}function Dt(){try{const e=window.localStorage.getItem(qe());w.value=e?JSON.parse(e):{}}catch{w.value={}}}function F(){le(qe(),w.value,Object.keys(w.value).length===0)}function $t(){try{const e=window.localStorage.getItem(ze());d.value=e?JSON.parse(e):{}}catch{d.value={}}}function B(){le(ze(),d.value,Object.keys(d.value).length===0)}function Nt(){try{const e=window.localStorage.getItem(je());T.value=e?JSON.parse(e):[]}catch{T.value=[]}}function Ne(){le(je(),T.value,T.value.length===0)}function Mt(e){const t=e instanceof Error?e.message:String(e||"");return/记录不存在|任务不存在|不存在|已删除|not\s*found|404/i.test(t)}function Pt(){const e=y.value.filter(t=>(w.value[t]||d.value[t]?.task?.status)==="RUNNING");e.length!==y.value.length&&(y.value=e,ue())}function Qe(e){y.value.includes(e)||(y.value=[...y.value,e],ue())}function ie(e){const t=N.get(e);t&&(C.clearTimer("scheduled-dispatch",t),N.delete(e),N.size||fe())}function ce(e){if(ie(e),y.value=y.value.filter(t=>t!==e),delete w.value[e],d.value[e]){const t={...d.value};delete t[e],d.value=t,B()}ue(),F()}function X(e){ce(e),D.value=D.value.filter(t=>I(t.taskId)!==e)}function We(e,t=!0){y.value=y.value.filter(s=>s!==e),t||delete w.value[e],ue(),F()}function Z(e){return e==="SUCCESS"||e==="FAILED"||e==="COMPLETED"}function Xe(e){if(!e)return!1;const t=w.value[e]||d.value[e]?.task?.status;return Z(t)}function Ze(e){const t=I(e.taskId);return t&&Xe(t)||Z(e.taskStatus)?!0:!!e.success}async function ee(){Se.value=await Cs()}async function U(){J.value=await Es()}async function q(){const e=await Is();D.value=e.items||[]}async function xt(){try{const e=await Ds();if(Te.value)return;const t=(e.country_codes||[]).filter(s=>ye.some(a=>a.code===s));t.length&&(g.value=t)}catch{}}async function de(){await Promise.allSettled([q(),U()])}function et(){V&&C.clearTimer("preference-save",V),V=C.setTimeout("preference-save",()=>{V=null,At()},450)}async function At(){if(g.value.length){be.value=!0;try{await Fs(g.value)}catch(e){p.error(e instanceof Error?e.message:"保存国家配置失败")}finally{be.value=!1}}}function Lt(e){Oe.value=e}async function tt(){const e=ae.value.trim();if(!e){p.warning("请输入店铺名");return}ne.value=!0;try{await $s(e),ae.value="",await ee(),await U()}catch(t){p.error(t instanceof Error?t.message:"添加失败")}finally{ne.value=!1}}async function Ft(e){try{await Ns(e.id),await ee(),await U()}catch(t){p.error(t instanceof Error?t.message:"删除失败")}}function Ut(e){return g.value.includes(e)}function st(e){return g.value.length===1&&g.value[0]===e}function Rt(e,t){const s=t.target;if(s){if(!s.checked&&st(e)){s.checked=!0,p.warning("至少保留 1 个国家");return}Ot(e,s.checked)}}function Ot(e,t){if(Te.value=!0,t)g.value.includes(e)||(g.value=[...g.value,e]);else{if(g.value.length<=1){p.warning("至少保留 1 个国家");return}g.value=g.value.filter(s=>s!==e)}et()}function Ht(e){G.value=e}function Vt(){G.value=null}function Bt(e){const t=G.value;if(G.value=null,t==null||t===e)return;Te.value=!0;const s=[...g.value],[a]=s.splice(t,1);s.splice(e,0,a),g.value=s,et()}function qt(){x.value&&(k.value=Me(k.value,!0)),x.value||(k.value=[])}function zt(){const e=k.value[k.value.length-1],t=e?Et(e,60):$e();k.value=[...k.value,t]}function jt(e){k.value.length<=1||(k.value=k.value.filter((t,s)=>s!==e))}function Kt(e,t){const s=[...k.value];s[e]=t||"",k.value=Me(s,!1)}function Gt(e,t){const s=new Map;for(const a of e)s.set(L(a),a);for(const a of t)s.set(L(a),a);return Array.from(s.values())}async function Jt(){const e=Oe.value.map(t=>t.shop_name).filter(Boolean);if(!e.length){p.warning("请先选择候选店铺");return}oe.value=!0;try{const t=await Ms(e);T.value=Gt(T.value,t.items||[]),Ne(),_e.value&>(),p.success(`本次返回 ${t.items?.length||0} 条匹配结果`)}catch(t){p.error(t instanceof Error?t.message:"匹配失败")}finally{oe.value=!1}}function Yt(e){T.value=T.value.filter(t=>L(t)!==L(e)),Ne()}function R(e){const t=new Set(e.map(s=>L(s)));T.value=T.value.filter(s=>!t.has(L(s))),Ne()}function Qt(){if(!x.value)return;const e=Date.now(),t=k.value.map(n=>n.trim()).filter(Boolean);if(!t.length)throw new Error("请至少选择一个执行时间");const s=t.map(n=>{const u=W(n);if(!u)throw new Error(`时间格式无效: ${n}`);return{raw:Ct(u),picker:re(u),time:u.getTime()}}).sort((n,u)=>n.time-u.time);for(let n=1;nn.time>e);if(!a.length)throw new Error("执行时间必须晚于当前时间,请重新选择");return a.length!==s.length&&(k.value=a.map(n=>n.picker),p.warning("已自动移除早于当前时间的执行时间")),a.map(n=>n.raw)}function Me(e,t){const s=Date.now(),a=e.map(r=>r.trim()).filter(Boolean).map(r=>{const f=W(r);return f?{value:re(f),time:f.getTime()}:null}).filter(r=>!!r).filter(r=>r.time>s).sort((r,f)=>r.time-f.time),n=[],u=new Set;for(const r of a)u.has(r.value)||(u.add(r.value),n.push(r.value));return!n.length&&t?[$e()]:n}function Wt(e){return e.skipAsinsByCountry||e.skip_asins_by_country||{}}function Xt(e){return e.skipAsinDetailsByCountry||e.skip_asin_details_by_country||{}}function at(e,t,s,a,n=!0){const u=Wt(t),r=Xt(t);return{type:"shop-match-run",ts:Date.now(),data:{taskId:e,user_id:Tt(),items:[{shopName:t.shopName,shopId:t.shopId,platform:t.platform,companyName:t.companyName,matched:!0,matchStatus:t.matchStatus,matchMessage:t.matchMessage,skip_asins_by_country:u,skipAsinsByCountry:u,skip_asin_details_by_country:r,skipAsinDetailsByCountry:r}],country_codes:[...s],skip_asins_by_country:u,skipAsinsByCountry:u,skip_asin_details_by_country:r,skipAsinDetailsByCountry:r,risk_listing_filter:ke.value,stage_index:a,final_stage:n}}}function Pe(e){const t=d.value[e]?.task,s=t?.scheduleStages||[],a=t?.currentStageIndex;if(typeof a!="number")return null;const n=s.find(u=>u.stageIndex===a);return n?.scheduledAt?{stageIndex:a,scheduledAt:n.scheduledAt,finalStage:a===s.length-1}:null}async function Zt(e,t){const s=Ue();if(!s?.enqueue_json)throw new Error("当前客户端未提供 enqueue_json");const a=Pe(e),n=d.value[e],u=n?.task?.countryCodes||g.value;if(!a)throw new Error(`任务 ${e} 缺少待执行阶段`);ie(e),await lt(()=>Us(e,a.stageIndex),(o,h)=>{S.value=`任务 ${e} 等待后端恢复后再激活执行(${o}/${h})...`}),w.value={...w.value,[e]:"RUNNING"},n?.task&&(d.value={...d.value,[e]:{...n,task:{...n.task,status:"RUNNING",activeStageIndex:a.stageIndex}}}),B(),F();const r=at(e,t,u,a.stageIndex,a.finalStage);K.value=JSON.stringify(r,null,2);const f=await s.enqueue_json(r);if(!f?.success)throw new Error(f?.error||`任务 ${e} 推送失败`);Qe(e),S.value=`任务 ${e} 已推送第 ${a.stageIndex+1} 轮`,se(!0)}function nt(e){const t=W(e);return t?t.getTime():Number.NaN}function es(){const e=new Set(y.value);for(const s of Object.keys(d.value)){const a=I(s);a>0&&e.add(a)}for(const s of D.value){const a=I(s.taskId);a>0&&e.add(a)}const t=Array.from(e).map(s=>{const a=d.value[s],n=w.value[s]||a?.task?.status,u=a?.items?.[0]||D.value.find(o=>I(o.taskId)===s),r=Pe(s);if(n!=="SCHEDULED"||!u||!r?.scheduledAt)return null;const f=nt(r.scheduledAt);return!Number.isFinite(f)||f>Date.now()?null:{taskId:s,item:u,scheduledTime:f}}).filter(s=>!!s);return t.sort((s,a)=>s.scheduledTime-a.scheduledTime||s.taskId-a.taskId),t}async function xe(){if(Ee.value)return;const e=es();if(e.length){Ee.value=!0;try{const t=e[0];try{await Zt(t.taskId,t.item),await ls(t.taskId)}catch(s){const a=s instanceof Error?s.message:`任务 ${t.taskId} 调度失败`,n=`${t.taskId}:${a}`,u=Date.now();S.value=a,(Ve!==n||u-He>1e4)&&(Ve=n,He=u,p.error(a)),await Promise.allSettled([q(),rt()])}}finally{Ee.value=!1,$()}}}function ts(e,t){if(_||!t)return;ie(e);const s=nt(t);if(!Number.isFinite(s))return;const a=Math.max(0,s-Date.now()),n=C.setTimeout("scheduled-dispatch",()=>{N.delete(e),N.size||fe(),_||xe()},a);N.set(e,n),ot()}function $(){if(_)return;const e=new Set(y.value);for(const t of Object.keys(d.value)){const s=I(t);s>0&&e.add(s)}for(const t of D.value){const s=I(t.taskId);s>0&&e.add(s)}for(const t of e){const a=d.value[t]?.task?.status||w.value[t],n=Pe(t);a==="SCHEDULED"&&n?.scheduledAt?ts(t,n.scheduledAt):ie(t)}N.size?ot():fe(),xe()}function ot(){_||Y||!N.size||(Y=C.setInterval("schedule-heartbeat",()=>{_||xe()},3e4))}function fe(){Y&&(C.clearTimer("schedule-heartbeat",Y),Y=null)}function he(){$(),y.value.length&&se(!0)}const ss=["无法连接到后端服务","bad gateway","gateway timeout","network error","timeout","502","503","504"];function te(e){return _?Promise.resolve():C.sleep("queue-wait",e)}function as(){C.clearCategory("queue-wait")}function Ae(e){const t=(e instanceof Error?e.message:String(e||"")).toLowerCase();return ss.some(s=>t.includes(s.toLowerCase()))}async function lt(e,t,s=10){let a=0;for(;;){if(_)throw new Error("component disposed");try{return await e()}catch(n){if(a+=1,!Ae(n)||a>=s)throw n;t(a,s),await te(O())}}}async function rt(){if(!y.value.length)return{settledTaskIds:[]};try{const e=await Re(y.value),t={...d.value},s=new Set;for(const a of e.missingTaskIds||[])X(a),delete t[a],s.add(a);for(const a of e.items||[]){const n=a.task?.id;if(!n)continue;const u=t[n];t[n]=u?{...u,task:{...u.task||{},...a.task||{}}}:a;const r=a.task?.status||"";if(r){if(w.value[n]=r,Z(r)){ce(n),s.add(n);continue}r==="SCHEDULED"&&(We(n),s.add(n))}}return d.value=t,B(),F(),$(),{settledTaskIds:Array.from(s)}}catch{return{settledTaskIds:[]}}}function O(){return Rs()}function ut(e=!1){if(_)return;if(M.value){if(!e)return;C.clearTimer("task-poll",M.value),M.value=null}const t=async()=>{if(M.value=null,!_){if(Ce.value||!y.value.length){y.value.length&&ut();return}Ce.value=!0;try{const{settledTaskIds:s}=await rt();s.length&&await Promise.allSettled([q(),U()])}finally{Ce.value=!1}!_&&y.value.length&&(M.value=C.setTimeout("task-poll",t,O()))}};e?t():M.value=C.setTimeout("task-poll",t,O())}function se(e=!1){ut(e)}function ns(){M.value&&(C.clearTimer("task-poll",M.value),M.value=null)}async function os(e){let t=0;const s=30;for(;;){if(_)return"STOPPED";try{const a=await Re([e]);if(t>0&&(S.value=`任务 ${e} 后端已恢复,继续等待执行结果...`),t=0,(a.missingTaskIds||[]).includes(e))return X(e),await de(),$(),"FAILED";const n=(a.items||[]).find(r=>r.task?.id===e),u=n?.task?.status||"";if(n){const r=d.value[e];d.value={...d.value,[e]:r?{...r,task:{...r.task||{},...n.task||{}}}:n},B()}if(u&&(w.value[e]=u,F()),Z(u))return ce(e),await de(),$(),u}catch(a){if(!Ae(a))throw a;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待后端恢复超时,请稍后手动刷新查看状态`);S.value=`任务 ${e} 运行中,正在等待后端服务恢复(${t}/${s})...`,(t===1||t%5===0)&&p.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await te(O());continue}await te(O())}}async function ls(e){let t=0;const s=30;for(;;){if(_)return"STOPPED";try{const a=await Re([e]);if(t>0&&(S.value=`任务 ${e} 后端已恢复,继续等待当前轮次结束...`),t=0,(a.missingTaskIds||[]).includes(e))return X(e),await de(),$(),"FAILED";const n=(a.items||[]).find(r=>r.task?.id===e),u=n?.task?.status||"";if(n){const r=d.value[e];d.value={...d.value,[e]:r?{...r,task:{...r.task||{},...n.task||{}}}:n},B()}if(u&&(w.value[e]=u,F()),!u||u==="RUNNING"){await te(O());continue}return Z(u)?(ce(e),await de(),$(),u):(u==="SCHEDULED"&&(We(e),$()),u)}catch(a){if(!Ae(a))throw a;if(t+=1,t>=s)throw new Error(`任务 ${e} 等待当前轮次结束超时,请稍后手动刷新查看状态`);S.value=`任务 ${e} 运行中,正在等待当前轮次结束(${t}/${s})...`,(t===1||t%5===0)&&p.warning(`任务 ${e} 运行中,后端服务暂时不可用,正在自动重试`),await te(O())}}}function Le(e){const t=I(e.taskId);return t?w.value[t]||d.value[t]?.task?.status||e.taskStatus||"":e.taskStatus||""}function it(e){const t=I(e.taskId);return t?d.value[t]:void 0}function ct(e){const s=it(e)?.task,a=s?.scheduleStages||[];if(!a.length)return"";const n=a.length,u=typeof s?.activeStageIndex=="number"?s.activeStageIndex:void 0,r=typeof s?.currentStageIndex=="number"?s.currentStageIndex:void 0;return typeof u=="number"?`执行进度: 第 ${u+1}/${n} 次执行中`:typeof r=="number"?`执行进度: 等待第 ${r+1}/${n} 次`:`执行进度: 共 ${n} 次`}function dt(e){const s=it(e)?.task,a=s?.scheduleStages||[];if(typeof s?.currentStageIndex=="number"){const n=a.find(u=>u.stageIndex===s.currentStageIndex);if(n?.scheduledAt)return Je(n.scheduledAt)}return e.scheduledAt?Je(e.scheduledAt):""}function ft(e){const t=Le(e);return t==="SCHEDULED"?"待执行":t==="RUNNING"?"执行中":t==="SUCCESS"||t==="COMPLETED"?"已完成":t==="FAILED"?"失败":e.success?"已完成":"未知"}function ht(e){const t=Le(e);return t==="SUCCESS"||t==="COMPLETED"?"success":t==="FAILED"?"failed":"running"}function vt(e){const t=Le(e);return!!e.resultId&&(!!e.fileReady||!!e.downloadUrl)&&(t==="SUCCESS"||t==="COMPLETED")}async function pt(e){if(!e.resultId)return;const t=Ue();if(!t?.save_file_from_url_new){p.error("当前客户端未提供下载能力");return}const s=Ps(e.resultId),a=e.outputFilename||`${e.shopName||"result"}.xlsx`,n=await t.save_file_from_url_new(s,a);n.success?p.success(`已保存: ${n.path||a}`):n.error&&n.error!=="用户取消"&&p.error(n.error)}async function mt(e){const t=I(e.taskId),s=Number(e.resultId||0);try{if(t>0)await xs(t),X(t);else if(s>0)await As(s),D.value=D.value.filter(a=>Number(a.resultId||0)!==s),R([e]);else throw new Error("缺少可删除的任务标识");await Promise.allSettled([q(),ee(),U()]),p.success("删除成功")}catch(a){if(Mt(a)){t>0?X(t):s>0&&(D.value=D.value.filter(n=>Number(n.resultId||0)!==s)),R([e]),await Promise.allSettled([q(),ee(),U()]),p.success("后端记录已不存在,本地记录已同步清理");return}p.error(a instanceof Error?a.message:"删除失败")}}function rs(e){const t=(e||"").trim();return{MATCHED:"已匹配",PENDING:"待匹配",CONFLICT:"需人工确认",INDEX_STALE:"索引过期"}[t]||t||"—"}function us(e){const t=(e.matchMessage||"").trim();return t||(e.matched&&e.matchStatus==="MATCHED"?"紫鸟索引已命中,可推送队列":e.matched?"已关联索引,请结合状态列查看是否可推送":"未命中或未就绪,请检查店铺名与索引刷新")}async function is(){_e.value=!0,await gt()}function cs(){return T.value.find(e=>e.matched)}async function gt(){if(_||we.value)return;const e=Ue();if(!e?.enqueue_json){p.error("当前客户端未提供 enqueue_json");return}if(!T.value.filter(r=>r.matched).length){p.warning("请先匹配可用店铺");return}if(!g.value.length){p.warning("请至少勾选一个国家");return}let s;try{s=Qt()}catch(r){p.error(r instanceof Error?r.message:"定时配置无效");return}we.value=!0,P.value=!0,K.value="";let a=0,n=0,u=0;try{for(;!_&&_e.value;){const r=cs();if(!r)break;u+=1;try{const f=await lt(()=>Ls([r],g.value,s),(Fe,ve)=>{S.value=`后端服务暂时不可用,正在重试创建任务(${Fe}/${ve})...`}),o=f.taskId,h=s?.length?"SCHEDULED":"RUNNING",z={task:{id:o,status:h,scheduledAt:s?.[0],countryCodes:[...g.value],currentStageIndex:s?.length?0:void 0,activeStageIndex:void 0,scheduleStages:(s||[]).map((Fe,ve)=>({stageIndex:ve,scheduledAt:Fe,status:ve===0?"SCHEDULED":"PENDING"}))},items:f.items};if(d.value={...d.value,[o]:z},w.value={...w.value,[o]:h},B(),F(),!f.items?.[0]){R([r]);continue}if(s?.length){a+=1,$(),S.value=`任务 ${o} 已创建,共 ${s.length} 个执行时间点`,R([r]);continue}const yt=at(o,r,g.value);K.value=JSON.stringify(yt,null,2);const St=await e.enqueue_json(yt);if(!St?.success){n+=1,S.value=`任务 ${o} 推送失败,已自动继续下一条:${St?.error||"未知错误"}`,p.error(S.value),R([r]);continue}if(Qe(o),se(!0),R([r]),S.value=`任务 ${o} 已入队,等待执行完成`,await os(o)!=="SUCCESS"){n+=1,S.value=`任务 ${o} 执行失败,已自动继续下一条`,p.error(S.value);continue}a+=1,S.value=`任务 ${o} 已完成`}catch(f){if(_)break;n+=1,S.value=`第 ${u} 条任务处理失败,已自动继续下一条:${f instanceof Error?f.message:"未知错误"}`,p.error(S.value),R([r]);continue}}$(),s?.length||se(!0),!_&&(a>0||n>0)&&p.success(s?.length?`定时任务已创建:成功 ${a} 条,失败 ${n} 条`:`店铺推送已完成:成功 ${a} 条,失败 ${n} 条`)}catch(r){if(_)return;const f=r instanceof Error?r.message:"推送失败";S.value=f,p.error(f)}finally{we.value=!1,P.value=!1}}return fs(async()=>{It(),Dt(),$t(),Nt(),k.value=Me(k.value,x.value),Pt(),await Promise.allSettled([ee(),xt(),q(),U()]),window.addEventListener("focus",he),document.addEventListener("visibilitychange",he),$(),y.value.length&&se(!0)}),hs(()=>{_=!0,ns(),fe(),as(),window.removeEventListener("focus",he),document.removeEventListener("visibilitychange",he),V&&C.clearTimer("preference-save",V);for(const e of N.values())C.clearTimer("scheduled-dispatch",e);N.clear(),C.clearScope()}),(e,t)=>{const s=ms,a=gs,n=ys,u=ks,r=ws,f=Ts;return i(),c("div",Ks,[b(vs,{active:"shop-match"}),l("div",Gs,[l("aside",Js,[t[10]||(t[10]=l("div",{class:"section-title"},"店铺候选",-1)),l("div",Ys,[t[4]||(t[4]=l("div",{class:"hint"},"输入店铺名后点“添加”加入下方备选区。勾选备选店铺后先做“匹配店铺”,确认命中紫鸟索引后再推送到 Python 队列。",-1)),l("div",Qs,[b(s,{modelValue:ae.value,"onUpdate:modelValue":t[0]||(t[0]=o=>ae.value=o),clearable:"",placeholder:"请输入店铺名后回车或点击添加",onKeyup:ps(tt,["enter"])},null,8,["modelValue"]),l("button",{type:"button",class:"opt-btn",disabled:ne.value,onClick:tt},v(ne.value?"添加中...":"添加"),9,Ws)])]),t[11]||(t[11]=l("div",{class:"section-title"},"备选店铺",-1)),Se.value.length?(i(),c("div",Zs,[b(n,{data:Se.value,"row-key":"id",height:"240",class:"candidate-table",onSelectionChange:Lt},{default:A(()=>[b(a,{type:"selection",width:"42"}),b(a,{prop:"shop_name",label:"店铺名","min-width":"120","show-overflow-tooltip":""}),b(a,{label:"操作",width:"72",align:"center"},{default:A(({row:o})=>[l("button",{type:"button",class:"link-danger",onClick:h=>Ft(o)},"删除",8,ea)]),_:1})]),_:1},8,["data"])])):(i(),c("div",Xs,"暂无备选店铺,请先输入并添加")),t[12]||(t[12]=l("div",{class:"section-title"},"国家配置",-1)),t[13]||(t[13]=l("p",{class:"hint country-pref-hint"},"勾选的国家会在每一个执行时间点都执行一遍。勾选区会按照已选顺序排在前面,下方支持拖拽排序,和商品风险页保持一致。",-1)),l("div",ta,[(i(!0),c(H,null,j(bt.value,o=>(i(),c("label",{key:o.code,class:"country-check-row"},[l("input",{type:"checkbox",class:"country-check-input",checked:Ut(o.code),disabled:st(o.code),onChange:h=>Rt(o.code,h)},null,40,sa),l("span",aa,v(o.label)+" ("+v(o.code)+")",1)]))),128))]),g.value.length?(i(),c("div",na,[t[6]||(t[6]=l("div",{class:"country-order-caption"},"已选顺序(拖拽 ⋮⋮ 调整)",-1)),l("div",oa,[(i(!0),c(H,null,j(g.value,(o,h)=>(i(),c("div",{key:o,class:pe(["country-drag-row",{dragging:G.value===h}]),draggable:"true",onDragstart:z=>Ht(h),onDragend:Vt,onDragover:t[1]||(t[1]=kt(()=>{},["prevent"])),onDrop:kt(z=>Bt(h),["prevent"])},[t[5]||(t[5]=l("span",{class:"drag-handle",title:"拖动排序"},"⋮⋮",-1)),l("span",ra,v(Ge(o))+" ("+v(o)+")",1)],42,la))),128))])])):E("",!0),be.value?(i(),c("div",ua,"保存中...")):E("",!0),t[14]||(t[14]=l("div",{class:"section-title"},"商品列表筛选",-1)),t[15]||(t[15]=l("p",{class:"hint listing-filter-hint"},"与“推送到 Python 队列”一并下发,供 Python 区分处理场景。",-1)),l("div",ia,[b(r,{modelValue:ke.value,"onUpdate:modelValue":t[2]||(t[2]=o=>ke.value=o),class:"listing-filter-select",teleported:"",placeholder:"选择筛选类型"},{default:A(()=>[(i(!0),c(H,null,j(Ss(zs),o=>(i(),wt(u,{key:o.value,label:o.label,value:o.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),t[16]||(t[16]=l("div",{class:"section-title"},"定时执行",-1)),l("label",ca,[_s(l("input",{"onUpdate:modelValue":t[3]||(t[3]=o=>x.value=o),type:"checkbox",disabled:P.value,onChange:qt},null,40,da),[[bs,x.value]]),t[7]||(t[7]=l("span",null,"启用多时间点调度",-1))]),x.value?(i(),c("div",fa,[(i(!0),c(H,null,j(k.value,(o,h)=>(i(),c("div",{key:`schedule-${h}`,class:"schedule-row"},[b(f,{"model-value":o,type:"datetime","value-format":"YYYY-MM-DD HH:mm:ss",format:"MM-DD HH:mm",placeholder:"选择执行时间",disabled:P.value,class:"schedule-picker","onUpdate:modelValue":z=>Kt(h,z)},null,8,["model-value","disabled","onUpdate:modelValue"]),l("button",{type:"button",class:"schedule-remove",disabled:P.value||k.value.length<=1,onClick:z=>jt(h)},"删除",8,ha)]))),128)),l("button",{type:"button",class:"schedule-add",disabled:P.value,onClick:zt},"添加时间点",8,va),t[8]||(t[8]=l("p",{class:"hint schedule-hint"},"默认开启定时;支持按 `MM-DD HH:mm` 配置多个时间点,前端不再限制选择更早时间,实际是否可执行以后端校验为准。",-1))])):E("",!0),l("div",pa,[l("button",{type:"button",class:"btn-run",disabled:oe.value,onClick:Jt},v(oe.value?"匹配中...":"匹配店铺"),9,ma),l("button",{type:"button",class:"btn-run btn-queue",disabled:P.value||!T.value.length,onClick:is},v(P.value?"推送中...":x.value?"创建定时任务":"推送到 Python 队列"),9,ga)]),t[17]||(t[17]=l("p",{class:"loading-msg"},[me("已支持多阶段定时执行;Python 每处理完一店可回传 "),l("code",null,"/api/shop-match/tasks/{taskId}/result"),me(",后端会按阶段汇总并在超时场景自动收尾。")],-1)),S.value?(i(),c("div",ya,[t[9]||(t[9]=l("div",{class:"section-title queue-debug-title"},"推送结果",-1)),l("div",Sa,v(S.value),1),K.value?(i(),c("pre",ka,v(K.value),1)):E("",!0)])):E("",!0)]),l("section",wa,[t[26]||(t[26]=l("div",{class:"panel-header"},"匹配与任务",-1)),l("div",_a,[l("div",ba,[l("div",Ta,[t[18]||(t[18]=l("span",{class:"summary-label"},"候选店铺",-1)),l("strong",null,v(J.value.candidateCount),1)]),l("div",Ca,[t[19]||(t[19]=l("span",{class:"summary-label"},"已结束任务",-1)),l("strong",null,v(J.value.processedTaskCount),1)]),l("div",Ea,[t[20]||(t[20]=l("span",{class:"summary-label"},"成功",-1)),l("strong",null,v(J.value.successTaskCount),1)]),l("div",Ia,[t[21]||(t[21]=l("span",{class:"summary-label"},"失败",-1)),l("strong",null,v(J.value.failedTaskCount),1)])]),t[25]||(t[25]=l("div",{class:"subsection-title"},"匹配结果",-1)),T.value.length?(i(),wt(n,{key:1,data:T.value,"row-key":L,"highlight-current-row":!1,class:"result-table match-table"},{default:A(()=>[b(a,{prop:"shopName",label:"店铺名","min-width":"100"}),b(a,{label:"匹配",width:"72",align:"center"},{default:A(({row:o})=>[l("span",{class:pe(o.matched?"ok":"fail")},v(o.matched?"是":"否"),3)]),_:1}),b(a,{prop:"shopId",label:"店铺ID","min-width":"120","show-overflow-tooltip":""}),b(a,{prop:"platform",label:"平台",width:"88","show-overflow-tooltip":""}),b(a,{prop:"companyName",label:"公司","min-width":"100","show-overflow-tooltip":""}),b(a,{label:"状态",width:"100","show-overflow-tooltip":""},{default:A(({row:o})=>[me(v(rs(o.matchStatus)),1)]),_:1}),b(a,{label:"说明","min-width":"140","show-overflow-tooltip":""},{default:A(({row:o})=>[me(v(us(o)),1)]),_:1}),b(a,{label:"操作",width:"72",align:"center"},{default:A(({row:o})=>[l("button",{type:"button",class:"link-danger",onClick:h=>Yt(o)},"删除",8,$a)]),_:1})]),_:1},8,["data"])):(i(),c("div",Da,"完成“匹配店铺”后,在此展示紫鸟索引匹配结果,供核对后再推送队列。")),l("div",Na,[t[24]||(t[24]=l("div",{class:"result-list-header"},[l("span",null,"处理记录")],-1)),_t.value?(i(),c(H,{key:1},[Ie.value.length?(i(),c("div",Pa,[t[22]||(t[22]=l("div",{class:"result-subsection-title"},"当前任务",-1)),l("ul",xa,[(i(!0),c(H,null,j(Ie.value,o=>(i(),c("li",{key:`cur-${o.resultId}-${o.taskId}`,class:"task-item"},[l("div",Aa,[l("span",{class:"id",title:o.shopName||""},v(o.shopName||"-"),9,La),l("div",Fa,"任务 ID: "+v(o.taskId??"-"),1),o.platform?(i(),c("div",Ua,"平台: "+v(o.platform),1)):E("",!0),ct(o)?(i(),c("div",Ra,v(ct(o)),1)):E("",!0),dt(o)?(i(),c("div",Oa,"下一次: "+v(dt(o)),1)):E("",!0),o.error?(i(),c("div",Ha,"错误: "+v(o.error),1)):E("",!0)]),l("div",Va,[l("span",{class:pe(["status",ht(o)])},v(ft(o)),3),vt(o)?(i(),c("button",{key:0,type:"button",class:"download",onClick:h=>pt(o)},"下载",8,Ba)):E("",!0),l("button",{type:"button",class:"btn-delete",onClick:h=>mt(o)},"删除",8,qa)])]))),128))])])):E("",!0),De.value.length?(i(),c("div",za,[t[23]||(t[23]=l("div",{class:"result-subsection-title"},"历史任务",-1)),l("ul",ja,[(i(!0),c(H,null,j(De.value,o=>(i(),c("li",{key:`his-${o.resultId}-${o.taskId}`,class:"task-item"},[l("div",Ka,[l("span",{class:"id",title:o.shopName||""},v(o.shopName||"-"),9,Ga),l("div",Ja,"任务 ID: "+v(o.taskId??"-"),1),o.outputFilename?(i(),c("div",Ya,"文件: "+v(o.outputFilename),1)):E("",!0),o.error?(i(),c("div",Qa,"错误: "+v(o.error),1)):E("",!0)]),l("div",Wa,[l("span",{class:pe(["status",ht(o)])},v(ft(o)),3),vt(o)?(i(),c("button",{key:0,type:"button",class:"download",onClick:h=>pt(o)},"下载",8,Xa)):E("",!0),l("button",{type:"button",class:"btn-delete",onClick:h=>mt(o)},"删除",8,Za)])]))),128))])])):E("",!0)],64)):(i(),c("div",Ma,"暂无处理记录。推送队列并等待 Python 回传后,将在此显示下载链接。"))])])])])])}}}),tn=Os(en,[["__scopeId","data-v-288e061c"]]);Hs.locale("zh-cn");Vs(tn).use(Bs,{locale:qs}).mount("#app"); diff --git a/app/assets/similar-asin-BRl3v3y8.css b/app/assets/similar-asin-BRl3v3y8.css new file mode 100644 index 0000000..3169087 --- /dev/null +++ b/app/assets/similar-asin-BRl3v3y8.css @@ -0,0 +1 @@ +.module-page[data-v-bc62f934]{min-height:100vh;background:#1a1a1a}.main-content[data-v-bc62f934]{display:flex;height:calc(100vh - 56px);min-height:calc(100vh - 56px)}.left-panel[data-v-bc62f934]{width:400px;background:#1e1e1e;padding:20px;overflow-y:auto;border-right:1px solid #2a2a2a}.right-panel[data-v-bc62f934]{flex:1;min-width:0;background:#1a1a1a;display:flex;flex-direction:column}.section-title[data-v-bc62f934],.subsection-title[data-v-bc62f934]{font-size:13px;color:#bbb;margin-bottom:10px}.upload-zone[data-v-bc62f934]{border:1px dashed #3a3a3a;border-radius:10px;padding:18px;background:#252525;margin-bottom:18px}.hint[data-v-bc62f934],.loading-msg[data-v-bc62f934],.files[data-v-bc62f934],.muted[data-v-bc62f934]{color:#888;font-size:12px;line-height:1.5}.link[data-v-bc62f934]{color:#6ea8fe;text-decoration:none}.link[data-v-bc62f934]:hover{color:#9fc5ff}.btns[data-v-bc62f934],.run-row[data-v-bc62f934]{display:flex;gap:10px;flex-wrap:wrap}.opt-btn[data-v-bc62f934],.btn-run[data-v-bc62f934],.btn-delete[data-v-bc62f934],.download[data-v-bc62f934]{border:none;cursor:pointer;border-radius:7px}.opt-btn[data-v-bc62f934]{padding:8px 14px;color:#ccc;background:#2a2a2a;border:1px solid #3a3a3a}.btn-run[data-v-bc62f934]{padding:10px 18px;color:#fff;background:#3498db;font-weight:600}.btn-queue[data-v-bc62f934]{background:#27ae60}.btn-run[data-v-bc62f934]:disabled{opacity:.55;cursor:not-allowed}.selected-files[data-v-bc62f934]{margin-top:14px;color:#999;font-size:12px;word-break:break-all}.selected-files span[data-v-bc62f934]{display:block;margin:4px 0}.prompt-card[data-v-bc62f934]{margin-bottom:14px}.prompt-input[data-v-bc62f934]{width:100%;box-sizing:border-box;resize:vertical;min-height:96px;max-height:140px;padding:8px 12px;border:1px solid #333;border-radius:8px;background:#202020;color:#d8d8d8;font-size:12px;line-height:1.5;outline:none}.prompt-input[data-v-bc62f934]:focus{border-color:#3498db}.condition-actions[data-v-bc62f934]{display:flex;justify-content:flex-end;margin-top:8px}.condition-actions .opt-btn[data-v-bc62f934]{padding:6px 14px}.condition-list-title[data-v-bc62f934]{margin-top:10px}.empty-conditions[data-v-bc62f934]{color:#666;font-size:12px;padding:10px 4px}.condition-list[data-v-bc62f934]{list-style:none;margin:0;padding:0;max-height:96px;overflow:auto;display:flex;flex-direction:column;gap:6px}.condition-item[data-v-bc62f934]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px;border-bottom:1px solid #303030}.condition-item[data-v-bc62f934]:last-child{border-bottom:none}.condition-check[data-v-bc62f934]{display:flex;align-items:center;gap:8px;min-width:0;color:#cfd6df;font-size:12px;cursor:pointer}.condition-check input[data-v-bc62f934]{width:16px;height:16px;margin:0;flex:0 0 auto}.condition-check span[data-v-bc62f934]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-danger[data-v-bc62f934]{border:none;background:transparent;color:#ff8f8f;cursor:pointer;font-size:12px;padding:2px 0;white-space:nowrap}.parse-card[data-v-bc62f934],.queue-payload[data-v-bc62f934]{margin-top:14px;padding:12px;border:1px solid #2a2a2a;border-radius:8px;background:#202020;color:#b8c1cc;font-size:12px}.queue-payload[data-v-bc62f934]{max-height:220px;overflow:auto;color:#8fd3ff;white-space:pre-wrap}.panel-header[data-v-bc62f934]{padding:16px 20px;border-bottom:1px solid #2a2a2a;font-size:15px;font-weight:600;color:#ddd}.task-list-wrap[data-v-bc62f934]{flex:1;padding:16px 20px;overflow:auto}.clean-result-summary[data-v-bc62f934]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card[data-v-bc62f934]{padding:14px 16px;border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e}.summary-card strong[data-v-bc62f934]{display:block;margin-top:8px;color:#eaf4ff;font-size:22px}.summary-label[data-v-bc62f934]{color:#8d8d8d;font-size:12px}.result-list-wrap[data-v-bc62f934]{border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e;min-height:180px;margin:0 0 16px}.result-list-header[data-v-bc62f934]{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #2a2a2a;color:#ddd;font-size:14px}.empty-tasks[data-v-bc62f934]{color:#666;font-size:13px;padding:18px;text-align:center}.task-list[data-v-bc62f934]{list-style:none;margin:0;padding:12px}.task-item[data-v-bc62f934]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #2a2a2a;border-radius:8px;margin-bottom:8px;background:#222}.left[data-v-bc62f934]{flex:1;min-width:0}.id[data-v-bc62f934]{color:#e0e0e0;font-size:13px;font-weight:600}.task-right[data-v-bc62f934]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status[data-v-bc62f934]{padding:4px 10px;border-radius:6px;font-size:12px}.status.success[data-v-bc62f934]{background:#2ecc712e;color:#2ecc71}.status.failed[data-v-bc62f934]{background:#e74c3c2e;color:#ff6b6b}.status.running[data-v-bc62f934]{background:#3498db2e;color:#3498db}.status.pending[data-v-bc62f934]{background:#95a5a62e;color:#bdc3c7}.result-hint[data-v-bc62f934]{margin-top:6px;color:#e0b96d}.file-progress[data-v-bc62f934]{margin-top:8px;max-width:520px}.file-progress-meta[data-v-bc62f934]{display:flex;justify-content:space-between;gap:12px;color:#d8c278;font-size:12px}.file-progress-track[data-v-bc62f934]{margin-top:5px;height:8px;border-radius:999px;overflow:hidden;background:#303030;border:1px solid #3b3b3b}.file-progress-bar[data-v-bc62f934]{height:100%;border-radius:inherit;background:linear-gradient(90deg,#4aa3ff,#f0c75e);transition:width .25s ease}.file-progress-count[data-v-bc62f934]{margin-top:4px;color:#858585;font-size:11px}.download[data-v-bc62f934]{padding:6px 10px;color:#d6ecff;background:#3498db2e}.btn-delete[data-v-bc62f934]{padding:6px 10px;color:#ff8f8f;background:#e74c3c1f}@media(max-width:1100px){.main-content[data-v-bc62f934]{flex-direction:column;height:auto}.left-panel[data-v-bc62f934]{width:100%;border-right:none;border-bottom:1px solid #2a2a2a}.clean-result-summary[data-v-bc62f934]{grid-template-columns:repeat(2,minmax(0,1fr))}} diff --git a/app/assets/similar-asin-CSjyVCTW.css b/app/assets/similar-asin-CSjyVCTW.css deleted file mode 100644 index 7b887ad..0000000 --- a/app/assets/similar-asin-CSjyVCTW.css +++ /dev/null @@ -1 +0,0 @@ -.el-text{--el-text-font-size:var(--el-font-size-base);--el-text-color:var(--el-text-color-regular);font-size:var(--el-text-font-size);color:var(--el-text-color);overflow-wrap:break-word;align-self:center;margin:0;padding:0}.el-text.is-truncated{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:inline-block;overflow:hidden}.el-text.is-line-clamp{-webkit-box-orient:vertical;display:-webkit-inline-box;overflow:hidden}.el-text--large{--el-text-font-size:var(--el-font-size-medium)}.el-text--default{--el-text-font-size:var(--el-font-size-base)}.el-text--small{--el-text-font-size:var(--el-font-size-extra-small)}.el-text.el-text--primary{--el-text-color:var(--el-color-primary)}.el-text.el-text--success{--el-text-color:var(--el-color-success)}.el-text.el-text--warning{--el-text-color:var(--el-color-warning)}.el-text.el-text--danger{--el-text-color:var(--el-color-danger)}.el-text.el-text--error{--el-text-color:var(--el-color-error)}.el-text.el-text--info{--el-text-color:var(--el-color-info)}.el-text>.el-icon{vertical-align:-2px}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-tree{--el-tree-node-content-height:26px;--el-tree-node-hover-bg-color:var(--el-fill-color-light);--el-tree-text-color:var(--el-text-color-regular);--el-tree-expand-icon-color:var(--el-text-color-placeholder);cursor:default;background:var(--el-fill-color-blank);color:var(--el-tree-text-color);font-size:var(--el-font-size-base);position:relative}.el-tree__empty-block{text-align:center;width:100%;height:100%;min-height:60px;position:relative}.el-tree__empty-text{color:var(--el-text-color-secondary);font-size:var(--el-font-size-base);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.el-tree__drop-indicator{background-color:var(--el-color-primary);height:1px;position:absolute;left:0;right:0}.el-tree-node{white-space:nowrap;outline:none}.el-tree-node:focus>.el-tree-node__content{background-color:var(--el-tree-node-hover-bg-color)}.el-tree-node.is-drop-inner>.el-tree-node__content .el-tree-node__label{background-color:var(--el-color-primary);color:#fff}.el-tree-node__content{--el-checkbox-height:var(--el-tree-node-content-height);height:var(--el-tree-node-content-height);cursor:pointer;align-items:center;display:flex}.el-tree-node__content>.el-tree-node__expand-icon{box-sizing:content-box;padding:6px}.el-tree-node__content>label.el-checkbox{margin-right:8px}.el-tree-node__content:hover{background-color:var(--el-tree-node-hover-bg-color)}.el-tree.is-dragging .el-tree-node__content{cursor:move}.el-tree.is-dragging .el-tree-node__content *{pointer-events:none}.el-tree.is-dragging.is-drop-not-allow .el-tree-node__content{cursor:not-allowed}.el-tree-node__expand-icon{cursor:pointer;color:var(--el-tree-expand-icon-color);transition:transform var(--el-transition-duration) ease-in-out;font-size:12px;transform:rotate(0)}.el-tree-node__expand-icon.expanded{transform:rotate(90deg)}.el-tree-node__expand-icon.is-leaf{color:#0000;cursor:default;visibility:hidden}.el-tree-node__expand-icon.is-hidden{visibility:hidden}.el-tree-node__loading-icon{font-size:var(--el-font-size-base);color:var(--el-tree-expand-icon-color);margin-right:8px}.el-tree-node>.el-tree-node__children{background-color:#0000;overflow:hidden}.el-tree-node.is-expanded>.el-tree-node__children{display:block}.el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content{background-color:var(--el-color-primary-light-9)}.module-page[data-v-597fff27]{min-height:100vh;background:#1a1a1a}.main-content[data-v-597fff27]{display:flex;height:calc(100vh - 56px);min-height:calc(100vh - 56px)}.left-panel[data-v-597fff27]{width:400px;background:#1e1e1e;padding:20px;overflow-y:auto;border-right:1px solid #2a2a2a}.right-panel[data-v-597fff27]{flex:1;min-width:0;background:#1a1a1a;display:flex;flex-direction:column}.section-title[data-v-597fff27],.subsection-title[data-v-597fff27]{font-size:13px;color:#bbb;margin-bottom:10px}.upload-zone[data-v-597fff27]{border:1px dashed #3a3a3a;border-radius:10px;padding:18px;background:#252525;margin-bottom:18px}.hint[data-v-597fff27],.loading-msg[data-v-597fff27],.files[data-v-597fff27],.muted[data-v-597fff27]{color:#888;font-size:12px;line-height:1.5}.link[data-v-597fff27]{color:#6ea8fe;text-decoration:none}.link[data-v-597fff27]:hover{color:#9fc5ff}.btns[data-v-597fff27],.run-row[data-v-597fff27]{display:flex;gap:10px;flex-wrap:wrap}.opt-btn[data-v-597fff27],.btn-run[data-v-597fff27],.btn-delete[data-v-597fff27],.download[data-v-597fff27]{border:none;cursor:pointer;border-radius:7px}.opt-btn[data-v-597fff27]{padding:8px 14px;color:#ccc;background:#2a2a2a;border:1px solid #3a3a3a}.btn-run[data-v-597fff27]{padding:10px 18px;color:#fff;background:#3498db;font-weight:600}.btn-queue[data-v-597fff27]{background:#27ae60}.btn-run[data-v-597fff27]:disabled{opacity:.55;cursor:not-allowed}.selected-files[data-v-597fff27]{margin-top:14px;color:#999;font-size:12px;word-break:break-all}.selected-files span[data-v-597fff27]{display:block;margin:4px 0}.prompt-card[data-v-597fff27]{margin-bottom:14px}.prompt-input[data-v-597fff27]{width:100%;box-sizing:border-box;resize:vertical;min-height:96px;max-height:140px;padding:8px 12px;border:1px solid #333;border-radius:8px;background:#202020;color:#d8d8d8;font-size:12px;line-height:1.5;outline:none}.prompt-input[data-v-597fff27]:focus{border-color:#3498db}.condition-actions[data-v-597fff27]{display:flex;justify-content:flex-end;margin-top:8px}.condition-actions .opt-btn[data-v-597fff27]{padding:6px 14px}.condition-list-title[data-v-597fff27]{margin-top:10px}.empty-conditions[data-v-597fff27]{color:#666;font-size:12px;padding:10px 4px}.condition-list[data-v-597fff27]{list-style:none;margin:0;padding:0;max-height:96px;overflow:auto;display:flex;flex-direction:column;gap:6px}.condition-item[data-v-597fff27]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px;border-bottom:1px solid #303030}.condition-item[data-v-597fff27]:last-child{border-bottom:none}.condition-check[data-v-597fff27]{display:flex;align-items:center;gap:8px;min-width:0;color:#cfd6df;font-size:12px;cursor:pointer}.condition-check input[data-v-597fff27]{width:16px;height:16px;margin:0;flex:0 0 auto}.condition-check span[data-v-597fff27]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-danger[data-v-597fff27]{border:none;background:transparent;color:#ff8f8f;cursor:pointer;font-size:12px;padding:2px 0;white-space:nowrap}.category-card[data-v-597fff27]{margin:0 0 14px;padding:12px;border:1px solid #2a2a2a;border-radius:8px;background:#202020}.category-card-head[data-v-597fff27]{display:flex;align-items:center;justify-content:space-between;gap:10px}.category-card-head .section-title[data-v-597fff27]{margin-bottom:0}.category-actions[data-v-597fff27]{display:flex;align-items:center;gap:10px}.category-actions .opt-btn[data-v-597fff27]{padding:6px 12px}.selected-category-list[data-v-597fff27]{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;max-height:96px;overflow:auto}.category-chip[data-v-597fff27]{max-width:100%;padding:4px 8px;border-radius:6px;background:#3498db29;color:#cfe7ff;font-size:12px;line-height:1.4}.category-dialog-toolbar[data-v-597fff27]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.category-tree[data-v-597fff27]{max-height:420px;overflow:auto;padding:8px;border:1px solid #2f2f2f;border-radius:8px;background:#202020;--el-tree-bg-color: #202020;--el-tree-text-color: #d8d8d8;--el-tree-node-hover-bg-color: #2a2a2a}.category-tree-node[data-v-597fff27]{display:inline-flex;align-items:center;gap:8px;min-width:0}.category-description[data-v-597fff27]{color:#888;font-size:12px}.category-confirm[data-v-597fff27]{padding:8px 16px}.parse-card[data-v-597fff27],.queue-payload[data-v-597fff27]{margin-top:14px;padding:12px;border:1px solid #2a2a2a;border-radius:8px;background:#202020;color:#b8c1cc;font-size:12px}.queue-payload[data-v-597fff27]{max-height:220px;overflow:auto;color:#8fd3ff;white-space:pre-wrap}.panel-header[data-v-597fff27]{padding:16px 20px;border-bottom:1px solid #2a2a2a;font-size:15px;font-weight:600;color:#ddd}.task-list-wrap[data-v-597fff27]{flex:1;padding:16px 20px;overflow:auto}.clean-result-summary[data-v-597fff27]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.summary-card[data-v-597fff27]{padding:14px 16px;border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e}.summary-card strong[data-v-597fff27]{display:block;margin-top:8px;color:#eaf4ff;font-size:22px}.summary-label[data-v-597fff27]{color:#8d8d8d;font-size:12px}.result-list-wrap[data-v-597fff27]{border:1px solid #2a2a2a;border-radius:8px;background:#1e1e1e;min-height:180px;margin:0 0 16px}.result-list-header[data-v-597fff27]{display:flex;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #2a2a2a;color:#ddd;font-size:14px}.empty-tasks[data-v-597fff27]{color:#666;font-size:13px;padding:18px;text-align:center}.task-list[data-v-597fff27]{list-style:none;margin:0;padding:12px}.task-item[data-v-597fff27]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #2a2a2a;border-radius:8px;margin-bottom:8px;background:#222}.left[data-v-597fff27]{flex:1;min-width:0}.id[data-v-597fff27]{color:#e0e0e0;font-size:13px;font-weight:600}.task-right[data-v-597fff27]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.status[data-v-597fff27]{padding:4px 10px;border-radius:6px;font-size:12px}.status.success[data-v-597fff27]{background:#2ecc712e;color:#2ecc71}.status.failed[data-v-597fff27]{background:#e74c3c2e;color:#ff6b6b}.status.running[data-v-597fff27]{background:#3498db2e;color:#3498db}.status.pending[data-v-597fff27]{background:#95a5a62e;color:#bdc3c7}.result-hint[data-v-597fff27]{margin-top:6px;color:#e0b96d}.file-progress[data-v-597fff27]{margin-top:8px;max-width:520px}.file-progress-meta[data-v-597fff27]{display:flex;justify-content:space-between;gap:12px;color:#d8c278;font-size:12px}.file-progress-track[data-v-597fff27]{margin-top:5px;height:8px;border-radius:999px;overflow:hidden;background:#303030;border:1px solid #3b3b3b}.file-progress-bar[data-v-597fff27]{height:100%;border-radius:inherit;background:linear-gradient(90deg,#4aa3ff,#f0c75e);transition:width .25s ease}.file-progress-count[data-v-597fff27]{margin-top:4px;color:#858585;font-size:11px}.download[data-v-597fff27]{padding:6px 10px;color:#d6ecff;background:#3498db2e}.btn-delete[data-v-597fff27]{padding:6px 10px;color:#ff8f8f;background:#e74c3c1f}@media(max-width:1100px){.main-content[data-v-597fff27]{flex-direction:column;height:auto}.left-panel[data-v-597fff27]{width:100%;border-right:none;border-bottom:1px solid #2a2a2a}.clean-result-summary[data-v-597fff27]{grid-template-columns:repeat(2,minmax(0,1fr))}} diff --git a/app/assets/similar-asin.js b/app/assets/similar-asin.js index 8be34f6..ecd6d78 100644 --- a/app/assets/similar-asin.js +++ b/app/assets/similar-asin.js @@ -1,4 +1 @@ -import{d as Xe,o as Ze,L as et,a as o,c as i,b as me,B as tt,e as a,F as B,r as G,t as r,w as we,G as st,u as at,f as h,N as nt,n as lt,a4 as ne,a5 as ot,a6 as it,a7 as rt,g as d,h as L,a8 as ut,E as u,i as H,a9 as ct,aa as dt,ab as ft,ac as vt,ad as pt,U as Ce,ae as gt,af as yt,ag as ht,ah as _t,ai as kt,a2 as mt,aj as wt,_ as Ct,q as It,s as St}from"./pywebview-ZMN052YE.js";/* empty css */import{e as bt}from"./brand-DfxdJ4w6.js";import{c as Tt}from"./categorized-timers-JPA-olTr.js";const Pt={class:"page-shell module-page"},Ft={class:"main-content"},Et={class:"left-panel"},Nt={class:"upload-zone"},Rt={class:"selected-files"},xt={key:0},At={class:"prompt-card"},Dt={class:"condition-actions"},Ut=["disabled"],$t={key:0,class:"empty-conditions"},Bt={key:1,class:"condition-list"},Gt={class:"condition-check"},Lt=["value","onChange"],Ht=["title"],Mt=["onClick"],jt={class:"category-card"},qt={class:"category-card-head"},Vt={class:"category-actions"},zt={key:0,class:"empty-conditions"},Kt={key:1,class:"selected-category-list"},Ot={class:"run-row"},Jt=["disabled"],Qt=["disabled"],Yt={key:0,class:"parse-card"},Wt={key:1,class:"queue-payload"},Xt={class:"right-panel"},Zt={class:"task-list-wrap"},es={class:"clean-result-summary"},ts={class:"summary-card"},ss={class:"summary-card"},as={class:"summary-card"},ns={class:"summary-card"},ls={class:"result-list-wrap"},os={key:0,class:"empty-tasks"},is={key:1,class:"task-list clean-result-list"},rs={class:"left"},us={class:"id"},cs={class:"files"},ds={class:"files"},fs={class:"task-right"},vs={class:"status running"},ps=["onClick"],gs={class:"result-list-wrap"},ys={key:0,class:"empty-tasks"},hs={key:1,class:"task-list clean-result-list"},_s={class:"left"},ks={class:"id"},ms={class:"files"},ws={key:0,class:"files"},Cs={key:1,class:"files result-hint"},Is={key:2,class:"file-progress"},Ss={class:"file-progress-meta"},bs={class:"file-progress-track"},Ts={class:"file-progress-count"},Ps={key:3,class:"files"},Fs={class:"task-right"},Es=["onClick"],Ns=["onClick"],Rs={key:0,class:"empty-tasks"},xs={key:1,class:"empty-tasks"},As={class:"category-tree-node"},Ds={key:0,class:"category-description"},Us=3e3,$s=Xe({__name:"BrandSimilarAsinTab",setup(Gs){const M=d([]),C=d([]),k=d(null),I=d(null),S=d(""),b=d([]),_=d(null),j=d([]),le=d([]),T=d([]),P=d(!1),q=d(!1),F=d(null),V=d(!1),z=d(!1),K=d(!1),m=d(""),v=d([]),f=d([]),g=d(null),Y=d(!1);let E=null,oe=0,N=!1;const R=Tt("similar-asin"),x=d({pendingTaskCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),p=d([]),A=L(()=>k.value||I.value),W=L(()=>{const e=k.value;return!e?.taskId||p.value.some(n=>n.taskId===e.taskId)?null:{taskId:e.taskId,sourceFilename:e.sourceFilename,rowCount:e.acceptedRows,taskStatus:"PENDING",success:!1}}),ie=L(()=>{const e=new Set([...v.value,...f.value]),t=p.value.filter(l=>{const s=$(l);return l.taskId!=null&&(e.has(l.taskId)||s==="RUNNING"||s==="PENDING")});return W.value?t.some(l=>l.taskId===W.value?.taskId)?t:[W.value,...t]:t}),re=L(()=>p.value.filter(e=>{const t=$(e);return t!=="RUNNING"&&t!=="PENDING"}));function Ie(){const e=_.value;return e==null?"":b.value.find(t=>t.id===e)?.conditionText?.trim()||""}function ue(){return Se(S.value.trim()||Ie())}function O(){return mt("similar-asin").trim()}const X=L(()=>{const e=new Set(T.value);return le.value.filter(t=>e.has(t.id))});function Se(e){const t=X.value.map(l=>{const s=l.path||l.name,c=l.description?.trim();return c?`${s}(${c})`:s}).filter(Boolean);if(!t.length)return e;const n=["商品类目要求:",...t.map(l=>`- ${l}`)].join(` -`);return e?`${e} - -${n}`:n}async function ce(){if(!q.value){q.value=!0;try{const e=await ut();j.value=e.tree||[],le.value=e.items||[]}catch(e){u.error(e instanceof Error?e.message:"加载商品类目失败")}finally{q.value=!1}}}async function be(){P.value=!0,j.value.length||await ce(),requestAnimationFrame(()=>{F.value?.setCheckedKeys?.(T.value)})}function de(e,t){return!!e.children?.some(n=>t.has(n.id)||de(n,t))}function Te(){const e=F.value?.getCheckedNodes?.(!1,!1)||[],t=new Set(e.map(n=>n.id));T.value=e.filter(n=>!de(n,t)).map(n=>n.id),P.value=!1}function Pe(){F.value?.setCheckedKeys?.([])}function Fe(){T.value=[],F.value?.setCheckedKeys?.([])}function Ee(e){return e?e.length<=10?"***":`${e.slice(0,6)}***${e.slice(-4)}`:""}function Ne(e){return{...e,data:e.data?{...e.data,api_key:Ee(String(e.data.api_key||""))}:e.data}}function Re(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function Z(){return`similar-asin:tasks:${Re()}`}function xe(e){return{taskId:e.taskId,totalRows:e.totalRows,acceptedRows:e.acceptedRows,groupCount:e.groupCount,droppedRows:e.droppedRows}}function w(){if(typeof window>"u")return;const e=Array.from(new Set([...v.value,...f.value]));e.length?window.localStorage.setItem(Z(),JSON.stringify(e)):window.localStorage.removeItem(Z())}function Ae(){if(!(typeof window>"u"))try{const e=window.localStorage.getItem(Z()),t=e?JSON.parse(e):[];v.value=Array.isArray(t)?t.filter(n=>typeof n=="number"&&n>0):[]}catch{v.value=[]}}async function fe(e){const t=H();if(!t?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传能力");const n=[];for(const l of e){const s=typeof l=="string"?l:l.absolutePath,c=typeof l=="string"?void 0:l.relativePath,y=await t.upload_file_to_java(s,c);if(!y?.success||!y.data)throw new Error(y?.error||y?.message||`上传失败:${s}`);n.push(y.data)}return n}async function De(){const e=H();if(!e?.select_brand_xlsx_files||!e.upload_file_to_java){u.warning("当前桌面端未提供文件选择或上传能力");return}const t=await e.select_brand_xlsx_files();if(!t?.length)return;const n=await fe(t);C.value=n,M.value=n.map(l=>l.relativePath||l.originalFilename||l.fileKey),k.value=null,I.value=null,m.value=""}async function Ue(){const e=H();if(!e?.select_brand_folder||!e.upload_file_to_java){u.warning("当前桌面端未提供文件夹选择或上传能力");return}try{const t=await e.select_brand_folder();if(!t)return;const n=await bt(t);if(!n.success||!n.items?.length){u.warning(n.error||"该文件夹下没有可用的 xlsx 文件");return}const l=await fe(n.items);C.value=l,M.value=n.items.map(s=>s.relativePath||s.absolutePath),k.value=null,I.value=null,m.value="",u.success(`已选择文件夹内 ${n.items.length} 个 Excel 文件`)}catch(t){u.error(t instanceof Error?t.message:"选择失败")}}async function ee(){try{b.value=await ct();const e=new Set(b.value.map(t=>t.id));_.value!=null&&!e.has(_.value)&&(_.value=null)}catch(e){u.error(e instanceof Error?e.message:"加载筛选条件失败")}}async function $e(){const e=S.value.trim();if(!e){u.warning("请输入筛选条件");return}K.value=!0;try{const t=await dt(e);await ee(),t?.id&&(_.value=t.id),u.success("筛选条件已保存")}catch(t){u.error(t instanceof Error?t.message:"保存筛选条件失败")}finally{K.value=!1}}function Be(e){S.value=e.conditionText||""}async function Ge(e){try{await ft(e),_.value===e&&(_.value=null),await ee(),u.success("筛选条件已删除")}catch(t){u.error(t instanceof Error?t.message:"删除筛选条件失败")}}async function Le(){if(!C.value.length){u.warning("请先选择 Excel");return}const e=ue();if(!e){u.warning("请输入筛选条件,或在备选区选择一个筛选条件");return}if(!O()){u.warning("请先在左上角设置中填写货源查询密钥");return}V.value=!0;try{const t=C.value.map(l=>({fileKey:l.fileKey,originalFilename:l.originalFilename,relativePath:l.relativePath})),n=await vt(t,e,O());k.value=n,I.value=null,m.value="",u.success(`解析完成,共 ${n.acceptedRows} 条`)}catch(t){u.error(t instanceof Error?t.message:"解析失败")}finally{V.value=!1}}async function He(){const e=H(),t=k.value,n=t?.taskId;if(!n){u.warning("请先解析文件");return}if(!e?.enqueue_json){u.error("当前环境未启用 pywebview enqueue_json");return}if(!O()){u.warning("请先在左上角设置中填写货源查询密钥");return}z.value=!0;try{const l={type:"similar-asin-run",ts:Date.now(),data:{taskId:n,prompt:t.aiPrompt||ue(),api_key:O(),sourceFileCount:t.sourceFileCount||0,totalRows:t.totalRows||0,acceptedRows:t.acceptedRows||0,groupCount:t.groupCount||0}};m.value=JSON.stringify(Ne(l),null,2),await pt(n);const s=await e.enqueue_json(l);if(!s?.success){u.error(s?.error||"推送失败");return}I.value=xe(t),je(n),Me(),await J(),await Q({force:!0}),u.success("已推送到 Python 队列")}finally{z.value=!1}}function Me(){k.value=null,m.value=""}function je(e){v.value.includes(e)||(v.value=[...v.value,e],w()),D()}function te(e){v.value=v.value.filter(t=>t!==e),w()}function qe(e){f.value.includes(e)||(f.value=[...f.value,e],w()),D()}function se(e){f.value=f.value.filter(t=>t!==e),w()}function D(){N||g.value==null&&Ve(!0)}function ve(){g.value!=null&&(R.clearTimer("task-poll",g.value),g.value=null)}function Ve(e=!1){if(N)return;if(g.value!=null){if(!e)return;R.clearTimer("task-poll",g.value),g.value=null}const t=async()=>{g.value=null,!N&&(!v.value.length&&!f.value.length||(await ze(),!N&&g.value==null&&(v.value.length||f.value.length)&&(g.value=R.setTimeout("task-poll",t,Ce()))))};e?t():g.value=R.setTimeout("task-poll",t,Ce())}async function ze(){if(Y.value||!v.value.length&&!f.value.length){!v.value.length&&!f.value.length&&ve();return}Y.value=!0;try{let e=!1,t=!1;const n=Array.from(new Set([...v.value,...f.value]));if(n.length){const l=await wt(n,{force:f.value.length>0});for(const s of l.items||[]){const c=s.task;if(!c?.id)continue;const y=s.items?.[0];if(y&&Ke(y),(c.status==="SUCCESS"||c.status==="FAILED")&&(te(c.id),e=!0,c.status==="SUCCESS"?qe(c.id):se(c.id)),y&&c.status==="SUCCESS"&&f.value.includes(c.id)){const ke=(y.fileStatus||"").toUpperCase();(y.fileReady||ke==="SUCCESS"||ke==="FAILED")&&(se(c.id),e=!0,t=!0)}}l.missingTaskIds?.length&&(l.missingTaskIds.forEach(s=>{te(s),se(s)}),t=!0,e=!0)}e&&await J(),t&&await Q(),Oe()}finally{Y.value=!1}}function Ke(e){if(!e.taskId&&!e.resultId)return;const t=p.value.findIndex(n=>e.resultId!=null&&n.resultId===e.resultId||e.taskId!=null&&n.taskId===e.taskId);t>=0?p.value[t]={...p.value[t],...e}:p.value=[e,...p.value]}function Oe(){if(!f.value.length)return;const e=[];for(const t of f.value){const n=p.value.find(c=>c.taskId===t);if(!n){e.push(t);continue}const l=(n.taskStatus||"").toUpperCase(),s=(n.fileStatus||"").toUpperCase();l==="FAILED"||n.fileReady||s==="SUCCESS"||s==="FAILED"||l==="SUCCESS"&&e.push(t)}f.value=e,w(),f.value.length&&D()}function Je(){const e=p.value.filter(t=>t.taskId!=null&&U(t)).map(t=>t.taskId);f.value=Array.from(new Set(e)),w(),f.value.length&&D()}async function J(){x.value=await gt()}async function Q(e={}){const t=Date.now();if(!(!e.force&&p.value.length&&t-oe{p.value=n.items||[],oe=Date.now()}).finally(()=>{E=null}),E)}function pe(e){const t=$(e);return t==="RUNNING"?"执行中":t==="PENDING"?"已解析待推送":U(e)?"结果生成中":ae(e)?"结果生成失败":t==="SUCCESS"||e.success?"已完成":t==="FAILED"?"失败":"等待中"}function Qe(e){const t=$(e);return t==="RUNNING"||U(e)?"running":ae(e)||t==="FAILED"?"failed":t==="SUCCESS"||e.success?"success":"pending"}function U(e){const t=$(e),n=(e.fileStatus||"").toUpperCase();return!(t!=="SUCCESS"||ye(e)||n==="FAILED"||n==="SUCCESS")}function $(e){return(e.taskStatus||"").toUpperCase()}function ae(e){return(e.fileStatus||"").toUpperCase()==="FAILED"}function ge(e){if(ae(e))return e.fileError||"结果文件生成失败,请稍后重试或检查后端日志";if(!U(e))return"";const t=(e.fileStatus||"").toUpperCase();return t==="RUNNING"?"任务已完成,正在等待 Coze 回流并组装结果文件,下载按钮稍后出现":t==="PENDING"?"任务已完成,结果文件已入队,正在等待后端开始处理":"任务已完成,正在生成结果文件,下载按钮稍后出现"}function ye(e){return!!(e.resultId&&(e.fileReady||e.downloadUrl))}function he(e){const t=Number(e.fileProgressPercent||0);return Number.isFinite(t)?Math.max(0,Math.min(100,Math.round(t))):0}function Ye(e){return U(e)&&(e.fileProgressTotal||0)>0}async function We(e){if(!e.resultId)return;const t=H();if(!t?.save_file_from_url_new){u.error("当前客户端未提供下载能力");return}const n=e.downloadUrl||ht(e.resultId),l=e.resultFilename||`${e.sourceFilename||"similar-asin"}.xlsx`,s=await t.save_file_from_url_new(n,l);s.success?u.success(`已保存: ${s.path||l}`):s.error&&s.error!=="用户取消"&&u.error(s.error)}async function _e(e){try{e.taskStatus==="RUNNING"&&e.taskId?(await _t(e.taskId),te(e.taskId)):e.resultId&&await kt(e.resultId),await J(),await Q({force:!0}),u.success("已删除")}catch(t){u.error(t instanceof Error?t.message:"删除失败")}}return Ze(async()=>{Ae(),await Promise.all([ee().catch(()=>{}),ce().catch(()=>{}),J().catch(()=>{}),Q().catch(()=>{})]),Je(),(v.value.length||f.value.length)&&D()}),et(()=>{N=!0,ve(),R.clearScope()}),(e,t)=>{const n=it,l=rt;return o(),i("div",Pt,[me(tt,{active:"similar-asin"}),a("div",Ft,[a("aside",Et,[t[8]||(t[8]=a("div",{class:"section-title"},"上传文件",-1)),a("div",Nt,[t[4]||(t[4]=a("div",{class:"hint"},"选择 Excel 后点击解析,后端会提取 id、ASIN、国家、价格,每一行都会独立送检。",-1)),a("div",{class:"btns"},[a("button",{type:"button",class:"opt-btn",onClick:De},"选择 Excel"),a("button",{type:"button",class:"opt-btn",onClick:Ue},"选择文件夹")]),a("div",Rt,[M.value.length?(o(!0),i(B,{key:1},G(M.value,s=>(o(),i("span",{key:s},r(s),1))),128)):(o(),i("span",xt,"暂未选择文件"))])]),a("div",At,[t[5]||(t[5]=a("div",{class:"section-title"},"筛选条件",-1)),we(a("textarea",{"onUpdate:modelValue":t[0]||(t[0]=s=>S.value=s),class:"prompt-input",rows:"4",placeholder:"请输入筛选条件"},null,512),[[st,S.value]]),a("div",Dt,[a("button",{type:"button",class:"opt-btn",disabled:K.value,onClick:$e},r(K.value?"保存中...":"保存"),9,Ut)]),t[6]||(t[6]=a("div",{class:"section-title condition-list-title"},"备选区",-1)),b.value.length?(o(),i("ul",Bt,[(o(!0),i(B,null,G(b.value,s=>(o(),i("li",{key:s.id,class:"condition-item"},[a("label",Gt,[we(a("input",{"onUpdate:modelValue":t[1]||(t[1]=c=>_.value=c),type:"radio",name:"similar-asin-filter-condition",value:s.id,onChange:c=>Be(s)},null,40,Lt),[[at,_.value]]),a("span",{title:s.conditionText},r(s.conditionText),9,Ht)]),a("button",{type:"button",class:"link-danger",onClick:c=>Ge(s.id)},"删除",8,Mt)]))),128))])):(o(),i("div",$t,"暂无筛选条件,输入后保存即可加入备选区"))]),a("div",jt,[a("div",qt,[t[7]||(t[7]=a("div",{class:"section-title"},"商品类目",-1)),a("div",Vt,[a("button",{type:"button",class:"opt-btn",onClick:be},"选择类目"),T.value.length?(o(),i("button",{key:0,type:"button",class:"link-danger",onClick:Fe}," 清空 ")):h("",!0)])]),X.value.length?(o(),i("div",Kt,[(o(!0),i(B,null,G(X.value,s=>(o(),i("span",{key:s.id,class:"category-chip"},r(s.path||s.name),1))),128))])):(o(),i("div",zt,"暂未选择商品类目"))]),a("div",Ot,[a("button",{type:"button",class:"btn-run",disabled:V.value||!C.value.length,onClick:Le},r(V.value?"解析中...":"解析并创建任务"),9,Jt),a("button",{type:"button",class:"btn-run btn-queue",disabled:z.value||!k.value?.taskId,onClick:He},r(z.value?"推送中...":"推送到 Python 队列"),9,Qt)]),t[9]||(t[9]=a("p",{class:"loading-msg"},"Python 回传字段按 id、asin、国家、价格、标题、图片链接数组提交;后端接收分片后按 10 条一批送检,结果区展示真实 Coze 批次进度。",-1)),A.value?(o(),i("div",Yt,[a("div",null,"任务 ID:"+r(A.value.taskId),1),a("div",null,"总行数:"+r(A.value.totalRows)+",有效:"+r(A.value.acceptedRows)+",过滤:"+r(A.value.droppedRows),1)])):h("",!0),m.value?(o(),i("pre",Wt,r(m.value),1)):h("",!0)]),a("section",Xt,[t[17]||(t[17]=a("div",{class:"panel-header"},"货源查询",-1)),a("div",Zt,[a("div",es,[a("div",ts,[t[10]||(t[10]=a("span",{class:"summary-label"},"运行中任务",-1)),a("strong",null,r(x.value.pendingTaskCount),1)]),a("div",ss,[t[11]||(t[11]=a("span",{class:"summary-label"},"已结束任务",-1)),a("strong",null,r(x.value.processedTaskCount),1)]),a("div",as,[t[12]||(t[12]=a("span",{class:"summary-label"},"成功任务",-1)),a("strong",null,r(x.value.successTaskCount),1)]),a("div",ns,[t[13]||(t[13]=a("span",{class:"summary-label"},"失败任务",-1)),a("strong",null,r(x.value.failedTaskCount),1)])]),t[16]||(t[16]=a("div",{class:"subsection-title"},"匹配任务",-1)),a("div",ls,[t[14]||(t[14]=a("div",{class:"result-list-header"},[a("span",null,"当前任务")],-1)),ie.value.length?(o(),i("ul",is,[(o(!0),i(B,null,G(ie.value,s=>(o(),i("li",{key:`cur-${s.taskId}`,class:"task-item"},[a("div",rs,[a("span",us,r(s.sourceFilename||"货源查询"),1),a("div",cs,"任务 ID:"+r(s.taskId),1),a("div",ds,"行数:"+r(s.rowCount??"-"),1)]),a("div",fs,[a("span",vs,r(pe(s)),1),a("button",{type:"button",class:"btn-delete",onClick:c=>_e(s)},"删除",8,ps)])]))),128))])):(o(),i("div",os,"暂无当前任务"))]),a("div",gs,[t[15]||(t[15]=a("div",{class:"result-list-header"},[a("span",null,"历史记录")],-1)),re.value.length?(o(),i("ul",hs,[(o(!0),i(B,null,G(re.value,s=>(o(),i("li",{key:`his-${s.resultId}-${s.taskId}`,class:"task-item"},[a("div",_s,[a("span",ks,r(s.sourceFilename||"货源查询"),1),a("div",ms,"任务 ID:"+r(s.taskId??"-"),1),s.resultFilename?(o(),i("div",ws,r(s.resultFilename||"下载结果"),1)):h("",!0),ge(s)?(o(),i("div",Cs,r(ge(s)),1)):h("",!0),Ye(s)?(o(),i("div",Is,[a("div",Ss,[a("span",null,r(s.fileProgressMessage||"结果生成中"),1),a("span",null,r(he(s))+"%",1)]),a("div",bs,[a("div",{class:"file-progress-bar",style:nt({width:`${he(s)}%`})},null,4)]),a("div",Ts,r(s.fileProgressCurrent||0)+"/"+r(s.fileProgressTotal||0),1)])):h("",!0),s.error?(o(),i("div",Ps,"错误:"+r(s.error),1)):h("",!0)]),a("div",Fs,[a("span",{class:lt(["status",Qe(s)])},r(pe(s)),3),ye(s)?(o(),i("button",{key:0,type:"button",class:"download",onClick:c=>We(s)},"下载",8,Es)):h("",!0),s.resultId?(o(),i("button",{key:1,type:"button",class:"btn-delete",onClick:c=>_e(s)},"删除",8,Ns)):h("",!0)])]))),128))])):(o(),i("div",ys,"暂无历史记录"))])])])]),me(l,{modelValue:P.value,"onUpdate:modelValue":t[3]||(t[3]=s=>P.value=s),title:"选择商品类目",width:"560px",class:"category-dialog"},{footer:ne(()=>[a("button",{type:"button",class:"opt-btn",onClick:t[2]||(t[2]=s=>P.value=!1)},"取消"),a("button",{type:"button",class:"btn-run category-confirm",onClick:Te},"确定")]),default:ne(()=>[a("div",{class:"category-dialog-toolbar"},[t[18]||(t[18]=a("span",{class:"muted"},"可多选,确认后会追加到筛选条件 prompt 后面。",-1)),a("button",{type:"button",class:"link-danger",onClick:Pe},"清空选择")]),q.value?(o(),i("div",Rs,"正在加载商品类目...")):j.value.length?(o(),ot(n,{key:2,ref_key:"categoryTreeRef",ref:F,class:"category-tree",data:j.value,"node-key":"id","show-checkbox":"","default-expand-all":"",props:{label:"name",children:"children"}},{default:ne(({data:s})=>[a("span",As,[a("span",null,r(s.name),1),s.description?(o(),i("span",Ds,r(s.description),1)):h("",!0)])]),_:1},8,["data"])):(o(),i("div",xs,"暂无商品类目"))]),_:1},8,["modelValue"])])}}}),Bs=Ct($s,[["__scopeId","data-v-597fff27"]]);It(Bs).use(St).mount("#app"); +import{d as $e,o as Be,L as Ge,a as r,c as u,b as Le,B as He,e as a,F as q,r as z,t as l,w as ce,G as Me,u as qe,f as k,N as ze,n as je,g as d,h as j,i as U,E as o,a4 as Ke,a5 as Oe,a6 as Ve,a7 as Je,a8 as Qe,U as de,a9 as Ye,aa as We,ab as Xe,ac as Ze,ad as es,a2 as ss,ae as ts,_ as as,q as ns,s as ls}from"./pywebview-84Lhn3TI.js";import{e as is}from"./brand-DIMFUl0j.js";import{c as os}from"./categorized-timers-JPA-olTr.js";const rs={class:"page-shell module-page"},us={class:"main-content"},cs={class:"left-panel"},ds={class:"upload-zone"},fs={class:"selected-files"},vs={key:0},ps={class:"prompt-card"},gs={class:"condition-actions"},_s=["disabled"],hs={key:0,class:"empty-conditions"},ys={key:1,class:"condition-list"},ks={class:"condition-check"},ws=["value","onChange"],ms=["title"],Is=["onClick"],Ss={class:"run-row"},Cs=["disabled"],bs=["disabled"],Ts={key:0,class:"parse-card"},Fs={key:1,class:"queue-payload"},Ps={class:"right-panel"},Es={class:"task-list-wrap"},Ns={class:"clean-result-summary"},Rs={class:"summary-card"},As={class:"summary-card"},xs={class:"summary-card"},Us={class:"summary-card"},Ds={class:"result-list-wrap"},$s={key:0,class:"empty-tasks"},Bs={key:1,class:"task-list clean-result-list"},Gs={class:"left"},Ls={class:"id"},Hs={class:"files"},Ms={class:"files"},qs={class:"task-right"},zs={class:"status running"},js=["onClick"],Ks={class:"result-list-wrap"},Os={key:0,class:"empty-tasks"},Vs={key:1,class:"task-list clean-result-list"},Js={class:"left"},Qs={class:"id"},Ys={class:"files"},Ws={key:0,class:"files"},Xs={key:1,class:"files result-hint"},Zs={key:2,class:"file-progress"},et={class:"file-progress-meta"},st={class:"file-progress-track"},tt={class:"file-progress-count"},at={key:3,class:"files"},nt={class:"task-right"},lt=["onClick"],it=["onClick"],ot=3e3,rt=$e({__name:"BrandSimilarAsinTab",setup(ct){const D=d([]),I=d([]),y=d(null),S=d(null),C=d(""),b=d([]),h=d(null),$=d(!1),B=d(!1),G=d(!1),w=d(""),f=d([]),c=d([]),g=d(null),K=d(!1);let T=null,X=0,F=!1;const P=os("similar-asin"),E=d({pendingTaskCount:0,processedTaskCount:0,successTaskCount:0,failedTaskCount:0}),p=d([]),N=j(()=>y.value||S.value),O=j(()=>{const e=y.value;return!e?.taskId||p.value.some(t=>t.taskId===e.taskId)?null:{taskId:e.taskId,sourceFilename:e.sourceFilename,rowCount:e.acceptedRows,taskStatus:"PENDING",success:!1}}),Z=j(()=>{const e=new Set([...f.value,...c.value]),s=p.value.filter(n=>{const i=x(n);return n.taskId!=null&&(e.has(n.taskId)||i==="RUNNING"||i==="PENDING")});return O.value?s.some(n=>n.taskId===O.value?.taskId)?s:[O.value,...s]:s}),ee=j(()=>p.value.filter(e=>{const s=x(e);return s!=="RUNNING"&&s!=="PENDING"}));function fe(){const e=h.value;return e==null?"":b.value.find(s=>s.id===e)?.conditionText?.trim()||""}function se(){return C.value.trim()||fe()}function L(){return ss().trim()}function ve(e){return e?e.length<=10?"***":`${e.slice(0,6)}***${e.slice(-4)}`:""}function pe(e){return{...e,data:e.data?{...e.data,api_key:ve(String(e.data.api_key||""))}:e.data}}function ge(){return typeof window<"u"&&window.localStorage.getItem("uid")||"0"}function V(){return`similar-asin:tasks:${ge()}`}function _e(e){return{taskId:e.taskId,totalRows:e.totalRows,acceptedRows:e.acceptedRows,groupCount:e.groupCount,droppedRows:e.droppedRows}}function m(){if(typeof window>"u")return;const e=Array.from(new Set([...f.value,...c.value]));e.length?window.localStorage.setItem(V(),JSON.stringify(e)):window.localStorage.removeItem(V())}function he(){if(!(typeof window>"u"))try{const e=window.localStorage.getItem(V()),s=e?JSON.parse(e):[];f.value=Array.isArray(s)?s.filter(t=>typeof t=="number"&&t>0):[]}catch{f.value=[]}}async function te(e){const s=U();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传能力");const t=[];for(const n of e){const i=typeof n=="string"?n:n.absolutePath,v=typeof n=="string"?void 0:n.relativePath,_=await s.upload_file_to_java(i,v);if(!_?.success||!_.data)throw new Error(_?.error||_?.message||`上传失败:${i}`);t.push(_.data)}return t}async function ye(){const e=U();if(!e?.select_brand_xlsx_files||!e.upload_file_to_java){o.warning("当前桌面端未提供文件选择或上传能力");return}const s=await e.select_brand_xlsx_files();if(!s?.length)return;const t=await te(s);I.value=t,D.value=t.map(n=>n.relativePath||n.originalFilename||n.fileKey),y.value=null,S.value=null,w.value=""}async function ke(){const e=U();if(!e?.select_brand_folder||!e.upload_file_to_java){o.warning("当前桌面端未提供文件夹选择或上传能力");return}try{const s=await e.select_brand_folder();if(!s)return;const t=await is(s);if(!t.success||!t.items?.length){o.warning(t.error||"该文件夹下没有可用的 xlsx 文件");return}const n=await te(t.items);I.value=n,D.value=t.items.map(i=>i.relativePath||i.absolutePath),y.value=null,S.value=null,w.value="",o.success(`已选择文件夹内 ${t.items.length} 个 Excel 文件`)}catch(s){o.error(s instanceof Error?s.message:"选择失败")}}async function J(){try{b.value=await Ke();const e=new Set(b.value.map(s=>s.id));h.value!=null&&!e.has(h.value)&&(h.value=null)}catch(e){o.error(e instanceof Error?e.message:"加载筛选条件失败")}}async function we(){const e=C.value.trim();if(!e){o.warning("请输入筛选条件");return}G.value=!0;try{const s=await Oe(e);await J(),s?.id&&(h.value=s.id),o.success("筛选条件已保存")}catch(s){o.error(s instanceof Error?s.message:"保存筛选条件失败")}finally{G.value=!1}}function me(e){C.value=e.conditionText||""}async function Ie(e){try{await Ve(e),h.value===e&&(h.value=null),await J(),o.success("筛选条件已删除")}catch(s){o.error(s instanceof Error?s.message:"删除筛选条件失败")}}async function Se(){if(!I.value.length){o.warning("请先选择 Excel");return}const e=se();if(!e){o.warning("请输入筛选条件,或在备选区选择一个筛选条件");return}if(!L()){o.warning("请先在左上角设置中填写货源查询密钥");return}$.value=!0;try{const s=I.value.map(n=>({fileKey:n.fileKey,originalFilename:n.originalFilename,relativePath:n.relativePath})),t=await Je(s,e,L());y.value=t,S.value=null,w.value="",o.success(`解析完成,共 ${t.acceptedRows} 条`)}catch(s){o.error(s instanceof Error?s.message:"解析失败")}finally{$.value=!1}}async function Ce(){const e=U(),s=y.value,t=s?.taskId;if(!t){o.warning("请先解析文件");return}if(!e?.enqueue_json){o.error("当前环境未启用 pywebview enqueue_json");return}if(!L()){o.warning("请先在左上角设置中填写货源查询密钥");return}B.value=!0;try{const n={type:"similar-asin-run",ts:Date.now(),data:{taskId:t,prompt:s.aiPrompt||se(),api_key:L(),sourceFileCount:s.sourceFileCount||0,totalRows:s.totalRows||0,acceptedRows:s.acceptedRows||0,groupCount:s.groupCount||0}};w.value=JSON.stringify(pe(n),null,2),await Qe(t);const i=await e.enqueue_json(n);if(!i?.success){o.error(i?.error||"推送失败");return}S.value=_e(s),Te(t),be(),await H(),await M({force:!0}),o.success("已推送到 Python 队列")}finally{B.value=!1}}function be(){y.value=null,w.value=""}function Te(e){f.value.includes(e)||(f.value=[...f.value,e],m()),R()}function Q(e){f.value=f.value.filter(s=>s!==e),m()}function Fe(e){c.value.includes(e)||(c.value=[...c.value,e],m()),R()}function Y(e){c.value=c.value.filter(s=>s!==e),m()}function R(){F||g.value==null&&Pe(!0)}function ae(){g.value!=null&&(P.clearTimer("task-poll",g.value),g.value=null)}function Pe(e=!1){if(F)return;if(g.value!=null){if(!e)return;P.clearTimer("task-poll",g.value),g.value=null}const s=async()=>{g.value=null,!F&&(!f.value.length&&!c.value.length||(await Ee(),!F&&g.value==null&&(f.value.length||c.value.length)&&(g.value=P.setTimeout("task-poll",s,de()))))};e?s():g.value=P.setTimeout("task-poll",s,de())}async function Ee(){if(K.value||!f.value.length&&!c.value.length){!f.value.length&&!c.value.length&&ae();return}K.value=!0;try{let e=!1,s=!1;const t=Array.from(new Set([...f.value,...c.value]));if(t.length){const n=await ts(t,{force:c.value.length>0});for(const i of n.items||[]){const v=i.task;if(!v?.id)continue;const _=i.items?.[0];if(_&&Ne(_),(v.status==="SUCCESS"||v.status==="FAILED")&&(Q(v.id),e=!0,v.status==="SUCCESS"?Fe(v.id):Y(v.id)),_&&v.status==="SUCCESS"&&c.value.includes(v.id)){const ue=(_.fileStatus||"").toUpperCase();(_.fileReady||ue==="SUCCESS"||ue==="FAILED")&&(Y(v.id),e=!0,s=!0)}}n.missingTaskIds?.length&&(n.missingTaskIds.forEach(i=>{Q(i),Y(i)}),s=!0,e=!0)}e&&await H(),s&&await M(),Re()}finally{K.value=!1}}function Ne(e){if(!e.taskId&&!e.resultId)return;const s=p.value.findIndex(t=>e.resultId!=null&&t.resultId===e.resultId||e.taskId!=null&&t.taskId===e.taskId);s>=0?p.value[s]={...p.value[s],...e}:p.value=[e,...p.value]}function Re(){if(!c.value.length)return;const e=[];for(const s of c.value){const t=p.value.find(v=>v.taskId===s);if(!t){e.push(s);continue}const n=(t.taskStatus||"").toUpperCase(),i=(t.fileStatus||"").toUpperCase();n==="FAILED"||t.fileReady||i==="SUCCESS"||i==="FAILED"||n==="SUCCESS"&&e.push(s)}c.value=e,m(),c.value.length&&R()}function Ae(){const e=p.value.filter(s=>s.taskId!=null&&A(s)).map(s=>s.taskId);c.value=Array.from(new Set(e)),m(),c.value.length&&R()}async function H(){E.value=await Ye()}async function M(e={}){const s=Date.now();if(!(!e.force&&p.value.length&&s-X{p.value=t.items||[],X=Date.now()}).finally(()=>{T=null}),T)}function ne(e){const s=x(e);return s==="RUNNING"?"执行中":s==="PENDING"?"已解析待推送":A(e)?"结果生成中":W(e)?"结果生成失败":s==="SUCCESS"||e.success?"已完成":s==="FAILED"?"失败":"等待中"}function xe(e){const s=x(e);return s==="RUNNING"||A(e)?"running":W(e)||s==="FAILED"?"failed":s==="SUCCESS"||e.success?"success":"pending"}function A(e){const s=x(e),t=(e.fileStatus||"").toUpperCase();return!(s!=="SUCCESS"||ie(e)||t==="FAILED"||t==="SUCCESS")}function x(e){return(e.taskStatus||"").toUpperCase()}function W(e){return(e.fileStatus||"").toUpperCase()==="FAILED"}function le(e){if(W(e))return e.fileError||"结果文件生成失败,请稍后重试或检查后端日志";if(!A(e))return"";const s=(e.fileStatus||"").toUpperCase();return s==="RUNNING"?"任务已完成,正在等待 Coze 回流并组装结果文件,下载按钮稍后出现":s==="PENDING"?"任务已完成,结果文件已入队,正在等待后端开始处理":"任务已完成,正在生成结果文件,下载按钮稍后出现"}function ie(e){return!!(e.resultId&&(e.fileReady||e.downloadUrl))}function oe(e){const s=Number(e.fileProgressPercent||0);return Number.isFinite(s)?Math.max(0,Math.min(100,Math.round(s))):0}function Ue(e){return A(e)&&(e.fileProgressTotal||0)>0}async function De(e){if(!e.resultId)return;const s=U();if(!s?.save_file_from_url_new){o.error("当前客户端未提供下载能力");return}const t=e.downloadUrl||Xe(e.resultId),n=e.resultFilename||`${e.sourceFilename||"similar-asin"}.xlsx`,i=await s.save_file_from_url_new(t,n);i.success?o.success(`已保存: ${i.path||n}`):i.error&&i.error!=="用户取消"&&o.error(i.error)}async function re(e){try{e.taskStatus==="RUNNING"&&e.taskId?(await Ze(e.taskId),Q(e.taskId)):e.resultId&&await es(e.resultId),await H(),await M({force:!0}),o.success("已删除")}catch(s){o.error(s instanceof Error?s.message:"删除失败")}}return Be(async()=>{he(),await Promise.all([J().catch(()=>{}),H().catch(()=>{}),M().catch(()=>{})]),Ae(),(f.value.length||c.value.length)&&R()}),Ge(()=>{F=!0,ae(),P.clearScope()}),(e,s)=>(r(),u("div",rs,[Le(He,{active:"similar-asin"}),a("div",us,[a("aside",cs,[s[5]||(s[5]=a("div",{class:"section-title"},"上传文件",-1)),a("div",ds,[s[2]||(s[2]=a("div",{class:"hint"},"选择 Excel 后点击解析,后端会提取 id、ASIN、国家、价格,每一行都会独立送检。",-1)),a("div",{class:"btns"},[a("button",{type:"button",class:"opt-btn",onClick:ye},"选择 Excel"),a("button",{type:"button",class:"opt-btn",onClick:ke},"选择文件夹")]),a("div",fs,[D.value.length?(r(!0),u(q,{key:1},z(D.value,t=>(r(),u("span",{key:t},l(t),1))),128)):(r(),u("span",vs,"暂未选择文件"))])]),a("div",ps,[s[3]||(s[3]=a("div",{class:"section-title"},"筛选条件",-1)),ce(a("textarea",{"onUpdate:modelValue":s[0]||(s[0]=t=>C.value=t),class:"prompt-input",rows:"4",placeholder:"请输入筛选条件"},null,512),[[Me,C.value]]),a("div",gs,[a("button",{type:"button",class:"opt-btn",disabled:G.value,onClick:we},l(G.value?"保存中...":"保存"),9,_s)]),s[4]||(s[4]=a("div",{class:"section-title condition-list-title"},"备选区",-1)),b.value.length?(r(),u("ul",ys,[(r(!0),u(q,null,z(b.value,t=>(r(),u("li",{key:t.id,class:"condition-item"},[a("label",ks,[ce(a("input",{"onUpdate:modelValue":s[1]||(s[1]=n=>h.value=n),type:"radio",name:"similar-asin-filter-condition",value:t.id,onChange:n=>me(t)},null,40,ws),[[qe,h.value]]),a("span",{title:t.conditionText},l(t.conditionText),9,ms)]),a("button",{type:"button",class:"link-danger",onClick:n=>Ie(t.id)},"删除",8,Is)]))),128))])):(r(),u("div",hs,"暂无筛选条件,输入后保存即可加入备选区"))]),a("div",Ss,[a("button",{type:"button",class:"btn-run",disabled:$.value||!I.value.length,onClick:Se},l($.value?"解析中...":"解析并创建任务"),9,Cs),a("button",{type:"button",class:"btn-run btn-queue",disabled:B.value||!y.value?.taskId,onClick:Ce},l(B.value?"推送中...":"推送到 Python 队列"),9,bs)]),s[6]||(s[6]=a("p",{class:"loading-msg"},"Python 回传字段按 id、asin、国家、价格、标题、图片链接数组提交;后端接收分片后按 10 条一批送检,结果区展示真实 Coze 批次进度。",-1)),N.value?(r(),u("div",Ts,[a("div",null,"任务 ID:"+l(N.value.taskId),1),a("div",null,"总行数:"+l(N.value.totalRows)+",有效:"+l(N.value.acceptedRows)+",过滤:"+l(N.value.droppedRows),1)])):k("",!0),w.value?(r(),u("pre",Fs,l(w.value),1)):k("",!0)]),a("section",Ps,[s[14]||(s[14]=a("div",{class:"panel-header"},"货源查询",-1)),a("div",Es,[a("div",Ns,[a("div",Rs,[s[7]||(s[7]=a("span",{class:"summary-label"},"运行中任务",-1)),a("strong",null,l(E.value.pendingTaskCount),1)]),a("div",As,[s[8]||(s[8]=a("span",{class:"summary-label"},"已结束任务",-1)),a("strong",null,l(E.value.processedTaskCount),1)]),a("div",xs,[s[9]||(s[9]=a("span",{class:"summary-label"},"成功任务",-1)),a("strong",null,l(E.value.successTaskCount),1)]),a("div",Us,[s[10]||(s[10]=a("span",{class:"summary-label"},"失败任务",-1)),a("strong",null,l(E.value.failedTaskCount),1)])]),s[13]||(s[13]=a("div",{class:"subsection-title"},"匹配任务",-1)),a("div",Ds,[s[11]||(s[11]=a("div",{class:"result-list-header"},[a("span",null,"当前任务")],-1)),Z.value.length?(r(),u("ul",Bs,[(r(!0),u(q,null,z(Z.value,t=>(r(),u("li",{key:`cur-${t.taskId}`,class:"task-item"},[a("div",Gs,[a("span",Ls,l(t.sourceFilename||"货源查询"),1),a("div",Hs,"任务 ID:"+l(t.taskId),1),a("div",Ms,"行数:"+l(t.rowCount??"-"),1)]),a("div",qs,[a("span",zs,l(ne(t)),1),a("button",{type:"button",class:"btn-delete",onClick:n=>re(t)},"删除",8,js)])]))),128))])):(r(),u("div",$s,"暂无当前任务"))]),a("div",Ks,[s[12]||(s[12]=a("div",{class:"result-list-header"},[a("span",null,"历史记录")],-1)),ee.value.length?(r(),u("ul",Vs,[(r(!0),u(q,null,z(ee.value,t=>(r(),u("li",{key:`his-${t.resultId}-${t.taskId}`,class:"task-item"},[a("div",Js,[a("span",Qs,l(t.sourceFilename||"货源查询"),1),a("div",Ys,"任务 ID:"+l(t.taskId??"-"),1),t.resultFilename?(r(),u("div",Ws,l(t.resultFilename||"下载结果"),1)):k("",!0),le(t)?(r(),u("div",Xs,l(le(t)),1)):k("",!0),Ue(t)?(r(),u("div",Zs,[a("div",et,[a("span",null,l(t.fileProgressMessage||"结果生成中"),1),a("span",null,l(oe(t))+"%",1)]),a("div",st,[a("div",{class:"file-progress-bar",style:ze({width:`${oe(t)}%`})},null,4)]),a("div",tt,l(t.fileProgressCurrent||0)+"/"+l(t.fileProgressTotal||0),1)])):k("",!0),t.error?(r(),u("div",at,"错误:"+l(t.error),1)):k("",!0)]),a("div",nt,[a("span",{class:je(["status",xe(t)])},l(ne(t)),3),ie(t)?(r(),u("button",{key:0,type:"button",class:"download",onClick:n=>De(t)},"下载",8,lt)):k("",!0),t.resultId?(r(),u("button",{key:1,type:"button",class:"btn-delete",onClick:n=>re(t)},"删除",8,it)):k("",!0)])]))),128))])):(r(),u("div",Os,"暂无历史记录"))])])])])]))}}),ut=as(rt,[["__scopeId","data-v-bc62f934"]]);ns(ut).use(ls).mount("#app"); diff --git a/app/assets/split.js b/app/assets/split.js index fef0615..18a95b8 100644 --- a/app/assets/split.js +++ b/app/assets/split.js @@ -1 +1 @@ -import{d as q,o as G,a,c as n,b as L,B as O,e,F as x,r as I,t as i,f,n as F,w as C,u as V,G as M,g as d,h as Q,i as E,E as r,H as W,I as X,p as Y,v as Z,J as ss,K as es,_ as ts,q as ls,s as as}from"./pywebview-ZMN052YE.js";import{e as ns}from"./brand-DfxdJ4w6.js";const os={class:"page-shell module-page"},is={class:"main-content"},rs={class:"left-panel"},us={class:"upload-zone"},ds={class:"selected-files clean-placeholder split-selected-files"},cs={key:0,class:"more-line"},ps={key:1},vs={class:"option-group column-option-group"},fs={class:"column-toolbar"},_s={class:"column-count"},ms={class:"column-actions"},ys={key:0,class:"column-grid"},gs=["value"],hs={key:1,class:"empty-column-state"},bs={class:"option-group"},ws={class:"radio-item active"},ks={class:"desc"},Cs={class:"option-group"},Ss={class:"option-group"},xs={key:0,class:"split-input-card"},Fs={key:1,class:"split-input-card"},Es={class:"run-row"},Ps=["disabled"],$s={class:"loading-msg"},Is={class:"right-panel"},Rs={class:"task-list-wrap"},Bs={class:"clean-result-summary"},Us={class:"summary-card"},Vs={class:"summary-card"},Ms={class:"summary-card"},Ts={class:"result-list-wrap"},Ds={key:0,class:"empty-tasks"},Hs={key:1,class:"task-list clean-result-list"},Ks={class:"left split-result-main"},Ns=["title"],js={key:0,class:"files"},As={key:1,class:"time"},zs={key:2,class:"files"},Js={key:3,class:"files split-entry-list"},qs={key:4,class:"files"},Gs={class:"task-right split-result-actions"},Ls=["onClick"],Os=["onClick"],Qs=q({__name:"BrandSplitTab",setup(Xs){const _=d([]),S=d(""),c=d([]),m=d([]),p=d([]),R=d(0),u=d("rows_per_file"),y=d(2e3),g=d(5),h=d(!1),b=d([]),w=d({total:0,successCount:0,failedCount:0,items:[]}),P=Q(()=>_.value.slice(0,8));function T(l){w.value={total:l.length,successCount:l.filter(s=>s.success).length,failedCount:l.filter(s=>!s.success).length,items:l}}async function B(l){const s=E();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const o of l){const v=typeof o=="string"?o:o.absolutePath,J=typeof o=="string"?void 0:o.relativePath,k=await s.upload_file_to_java(v,J);if(!k?.success||!k.data)throw new Error(k?.error||k?.message||`上传失败:${v}`);t.push(k.data)}return t}async function U(l){const s=await Y(l);m.value=s.headers||[],p.value=[...s.headers||[]],R.value=s.totalRows||0}async function D(l,s){_.value=l,S.value="",c.value=await B(l),c.value.length>0&&await U(c.value[0].fileKey),r.success(s)}async function H(){const l=E();if(!l?.select_brand_xlsx_files){r.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const s=await l.select_brand_xlsx_files();if(!s?.length)return;await D(s,`已选择 ${s.length} 个待拆分文件`)}catch(s){r.error(s instanceof Error?s.message:"选择失败")}}async function K(){const l=E();if(!l?.select_brand_folder){r.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const s=await l.select_brand_folder();if(!s)return;S.value=s.split(/[/\\]/).filter(Boolean).pop()||"";const t=await ns(s);if(t.success&&t.items?.length){_.value=t.items.map(o=>o.relativePath),c.value=await B(t.items),c.value.length>0&&await U(c.value[0].fileKey),r.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`);return}r.warning(t.error||"该文件夹下没有 xlsx 文件")}catch(s){r.error(s instanceof Error?s.message:"选择失败")}}async function N(){if(!c.value.length){r.warning("请先选择待拆分 Excel 文件或文件夹");return}if(!p.value.length){r.warning("请至少选择一列保留列");return}if(u.value==="rows_per_file"&&(!y.value||y.value<=0)){r.warning("请输入有效的每份条数");return}if(u.value==="parts"&&(!g.value||g.value<=0)){r.warning("请输入有效的拆分份数");return}try{h.value=!0;const l=await W({files:c.value.map(s=>({fileKey:s.fileKey,originalFilename:s.originalFilename,relativePath:s.relativePath})),selectedColumns:p.value,splitMode:u.value,rowsPerFile:u.value==="rows_per_file"&&y.value||void 0,parts:u.value==="parts"&&g.value||void 0,archiveName:c.value.some(s=>!!s.relativePath)&&S.value?S.value:void 0});w.value=l,b.value=l.items||[],await $(),r.success("数据拆分完成")}catch(l){r.error(l instanceof Error?l.message:"数据拆分失败")}finally{h.value=!1}}async function $(){try{const l=await X();b.value=l.items||[],T(b.value)}catch{}}async function j(l){try{await ss(l),await $(),r.success("已删除")}catch(s){r.error(s instanceof Error?s.message:"删除失败")}}function A(l){const s=l.slice(0,4).map(o=>o.rowCount!==void 0?`${o.filename}(${o.rowCount}条)`:o.filename);return l.length-s.length>0?`${s.join("、")} 等 ${l.length} 个文件`:s.join("、")}async function z(l){const s=E(),t=l.downloadUrl||(l.resultId?es(l.resultId):"");if(!t){r.warning("当前结果没有下载地址");return}const o=l.outputFilename||`${new Date().toISOString().slice(0,10).replace(/-/g,"")}.zip`;if(s?.save_file_from_url_new){const v=await s.save_file_from_url_new(t,o);v.success?r.success(`已保存:${v.path||o}`):v.error&&v.error!=="用户取消"&&r.error(v.error);return}}return G(()=>{$().catch(()=>{})}),(l,s)=>(a(),n("div",os,[L(O,{active:"split"}),e("div",is,[e("aside",rs,[s[14]||(s[14]=e("div",{class:"section-title"},"选择文件",-1)),e("div",us,[s[7]||(s[7]=e("div",{class:"hint"},"选择需要拆分的 Excel 文件或文件夹,按规则拆成多个 Excel 文件。",-1)),e("div",{class:"btns"},[e("button",{type:"button",class:"opt-btn",onClick:H},"选择 Excel 文件"),e("button",{type:"button",class:"opt-btn",onClick:K},"选择文件夹")]),e("div",ds,[_.value.length?(a(),n(x,{key:0},[(a(!0),n(x,null,I(P.value,t=>(a(),n("span",{key:t},i(t),1))),128)),_.value.length>P.value.length?(a(),n("span",cs," 还有 "+i(_.value.length-P.value.length)+" 个文件未展开显示 ",1)):f("",!0)],64)):(a(),n("span",ps,"暂未选择待拆分文件"))])]),s[15]||(s[15]=e("div",{class:"section-title"},"保留列设置",-1)),e("div",vs,[e("div",fs,[e("span",_s,"已选择 "+i(p.value.length)+" / "+i(m.value.length)+" 列",1),e("div",ms,[e("button",{type:"button",class:"opt-btn small",onClick:s[0]||(s[0]=t=>p.value=[...m.value])},"全选"),e("button",{type:"button",class:"opt-btn small",onClick:s[1]||(s[1]=t=>p.value=[])},"清空")])]),m.value.length?(a(),n("div",ys,[(a(!0),n(x,null,I(m.value,t=>(a(),n("label",{key:t,class:F(["column-item",{active:p.value.includes(t)}])},[C(e("input",{"onUpdate:modelValue":s[2]||(s[2]=o=>p.value=o),type:"checkbox",value:t},null,8,gs),[[Z,p.value]]),e("span",null,i(t),1)],2))),128))])):(a(),n("div",hs,"请选择 Excel 文件后读取表头并填充可保留列"))]),s[16]||(s[16]=e("div",{class:"section-title"},"总条数",-1)),e("div",bs,[e("label",ws,[s[9]||(s[9]=e("input",{type:"checkbox",checked:"",disabled:""},null,-1)),e("div",null,[s[8]||(s[8]=e("span",{class:"label"},"当前数据总条数",-1)),e("div",ks,i(R.value)+" 条(不含表头)",1)])])]),s[17]||(s[17]=e("div",{class:"section-title"},"拆分模式",-1)),e("div",Cs,[e("label",{class:F(["radio-item",{active:u.value==="rows_per_file"}])},[C(e("input",{"onUpdate:modelValue":s[3]||(s[3]=t=>u.value=t),type:"radio",value:"rows_per_file",name:"split-mode"},null,512),[[V,u.value]]),s[10]||(s[10]=e("div",null,[e("span",{class:"label"},"按每份条数"),e("div",{class:"desc"},"例如每份 2000 条,最后一份放剩余数据")],-1))],2),e("label",{class:F(["radio-item",{active:u.value==="parts"}])},[C(e("input",{"onUpdate:modelValue":s[4]||(s[4]=t=>u.value=t),type:"radio",value:"parts",name:"split-mode"},null,512),[[V,u.value]]),s[11]||(s[11]=e("div",null,[e("span",{class:"label"},"按份数平均拆分"),e("div",{class:"desc"},"例如拆 5 份,按总条数尽量平均分配")],-1))],2)]),s[18]||(s[18]=e("div",{class:"section-title"},"拆分参数",-1)),e("div",Ss,[u.value==="rows_per_file"?(a(),n("label",xs,[s[12]||(s[12]=e("span",{class:"label"},"每份条数",-1)),C(e("input",{"onUpdate:modelValue":s[5]||(s[5]=t=>y.value=t),class:"split-number-input",type:"number",min:"1",placeholder:"例如 2000"},null,512),[[M,y.value,void 0,{number:!0}]])])):(a(),n("label",Fs,[s[13]||(s[13]=e("span",{class:"label"},"拆分份数",-1)),C(e("input",{"onUpdate:modelValue":s[6]||(s[6]=t=>g.value=t),class:"split-number-input",type:"number",min:"1",placeholder:"例如 5"},null,512),[[M,g.value,void 0,{number:!0}]])]))]),e("div",Es,[e("button",{type:"button",class:"btn-run",disabled:h.value,onClick:N},i(h.value?"拆分中...":"开始拆分"),9,Ps),e("span",$s,i(h.value?"正在拆分并上传结果,请稍候…":"选择文件、保留列和拆分规则后即可执行拆分,结果会显示在右侧供下载"),1)])]),e("section",Is,[s[23]||(s[23]=e("div",{class:"panel-header"},"拆分结果",-1)),e("div",Rs,[e("div",Bs,[e("div",Us,[s[19]||(s[19]=e("span",{class:"summary-label"},"已处理文件",-1)),e("strong",null,i(w.value.total),1)]),e("div",Vs,[s[20]||(s[20]=e("span",{class:"summary-label"},"成功结果",-1)),e("strong",null,i(w.value.successCount),1)]),e("div",Ms,[s[21]||(s[21]=e("span",{class:"summary-label"},"失败文件",-1)),e("strong",null,i(w.value.failedCount),1)])]),e("div",Ts,[s[22]||(s[22]=e("div",{class:"result-list-header"},[e("span",null,"拆分结果压缩包列表")],-1)),b.value.length===0?(a(),n("div",Ds," 暂无拆分结果,完成数据拆分后会在这里展示压缩包文件 ")):(a(),n("ul",Hs,[(a(!0),n(x,null,I(b.value,t=>(a(),n("li",{key:`${t.resultId||t.outputFilename||t.sourceFilename}-${t.rowCount||0}`,class:"task-item split-result-item"},[e("div",Ks,[e("span",{class:"id",title:t.sourceFilename},i(t.sourceFilename||"-"),9,Ns),t.outputFilename?(a(),n("div",js,"压缩包文件:"+i(t.outputFilename),1)):f("",!0),t.rowCount!==void 0?(a(),n("div",As,"压缩包共包含 "+i(t.rowCount)+" 条数据",1)):f("",!0),t.entryCount&&t.entryCount>0?(a(),n("div",zs,"压缩包内共 "+i(t.entryCount)+" 个拆分文件 ",1)):f("",!0),t.entries&&t.entries.length?(a(),n("div",Js," 压缩包内容:"+i(A(t.entries)),1)):f("",!0),t.error?(a(),n("div",qs,"错误信息:"+i(t.error),1)):f("",!0)]),e("div",Gs,[e("span",{class:F(["status",t.success?"success":"failed"])},i(t.success?"已完成":"失败"),3),t.success&&(t.downloadUrl||t.resultId)?(a(),n("button",{key:0,type:"button",class:"download",onClick:o=>z(t)}," 下载压缩包 ",8,Ls)):f("",!0),t.resultId?(a(),n("button",{key:1,type:"button",class:"btn-delete",onClick:o=>j(t.resultId)}," 删除 ",8,Os)):f("",!0)])]))),128))]))])])])])]))}}),Ws=ts(Qs,[["__scopeId","data-v-f3b42aa3"]]);ls(Ws).use(as).mount("#app"); +import{d as q,o as G,a,c as n,b as L,B as O,e,F as x,r as I,t as i,f,n as F,w as C,u as V,G as M,g as d,h as Q,i as E,E as r,H as W,I as X,p as Y,v as Z,J as ss,K as es,_ as ts,q as ls,s as as}from"./pywebview-84Lhn3TI.js";import{e as ns}from"./brand-DIMFUl0j.js";const os={class:"page-shell module-page"},is={class:"main-content"},rs={class:"left-panel"},us={class:"upload-zone"},ds={class:"selected-files clean-placeholder split-selected-files"},cs={key:0,class:"more-line"},ps={key:1},vs={class:"option-group column-option-group"},fs={class:"column-toolbar"},_s={class:"column-count"},ms={class:"column-actions"},ys={key:0,class:"column-grid"},gs=["value"],hs={key:1,class:"empty-column-state"},bs={class:"option-group"},ws={class:"radio-item active"},ks={class:"desc"},Cs={class:"option-group"},Ss={class:"option-group"},xs={key:0,class:"split-input-card"},Fs={key:1,class:"split-input-card"},Es={class:"run-row"},Ps=["disabled"],$s={class:"loading-msg"},Is={class:"right-panel"},Rs={class:"task-list-wrap"},Bs={class:"clean-result-summary"},Us={class:"summary-card"},Vs={class:"summary-card"},Ms={class:"summary-card"},Ts={class:"result-list-wrap"},Ds={key:0,class:"empty-tasks"},Hs={key:1,class:"task-list clean-result-list"},Ks={class:"left split-result-main"},Ns=["title"],js={key:0,class:"files"},As={key:1,class:"time"},zs={key:2,class:"files"},Js={key:3,class:"files split-entry-list"},qs={key:4,class:"files"},Gs={class:"task-right split-result-actions"},Ls=["onClick"],Os=["onClick"],Qs=q({__name:"BrandSplitTab",setup(Xs){const _=d([]),S=d(""),c=d([]),m=d([]),p=d([]),R=d(0),u=d("rows_per_file"),y=d(2e3),g=d(5),h=d(!1),b=d([]),w=d({total:0,successCount:0,failedCount:0,items:[]}),P=Q(()=>_.value.slice(0,8));function T(l){w.value={total:l.length,successCount:l.filter(s=>s.success).length,failedCount:l.filter(s=>!s.success).length,items:l}}async function B(l){const s=E();if(!s?.upload_file_to_java)throw new Error("当前桌面端未提供文件上传桥接能力");const t=[];for(const o of l){const v=typeof o=="string"?o:o.absolutePath,J=typeof o=="string"?void 0:o.relativePath,k=await s.upload_file_to_java(v,J);if(!k?.success||!k.data)throw new Error(k?.error||k?.message||`上传失败:${v}`);t.push(k.data)}return t}async function U(l){const s=await Y(l);m.value=s.headers||[],p.value=[...s.headers||[]],R.value=s.totalRows||0}async function D(l,s){_.value=l,S.value="",c.value=await B(l),c.value.length>0&&await U(c.value[0].fileKey),r.success(s)}async function H(){const l=E();if(!l?.select_brand_xlsx_files){r.warning("当前环境不支持文件选择,请在本机客户端中打开");return}try{const s=await l.select_brand_xlsx_files();if(!s?.length)return;await D(s,`已选择 ${s.length} 个待拆分文件`)}catch(s){r.error(s instanceof Error?s.message:"选择失败")}}async function K(){const l=E();if(!l?.select_brand_folder){r.warning("当前环境不支持文件夹选择,请在本机客户端中打开");return}try{const s=await l.select_brand_folder();if(!s)return;S.value=s.split(/[/\\]/).filter(Boolean).pop()||"";const t=await ns(s);if(t.success&&t.items?.length){_.value=t.items.map(o=>o.relativePath),c.value=await B(t.items),c.value.length>0&&await U(c.value[0].fileKey),r.success(`已选择文件夹内 ${t.items.length} 个 xlsx 文件`);return}r.warning(t.error||"该文件夹下没有 xlsx 文件")}catch(s){r.error(s instanceof Error?s.message:"选择失败")}}async function N(){if(!c.value.length){r.warning("请先选择待拆分 Excel 文件或文件夹");return}if(!p.value.length){r.warning("请至少选择一列保留列");return}if(u.value==="rows_per_file"&&(!y.value||y.value<=0)){r.warning("请输入有效的每份条数");return}if(u.value==="parts"&&(!g.value||g.value<=0)){r.warning("请输入有效的拆分份数");return}try{h.value=!0;const l=await W({files:c.value.map(s=>({fileKey:s.fileKey,originalFilename:s.originalFilename,relativePath:s.relativePath})),selectedColumns:p.value,splitMode:u.value,rowsPerFile:u.value==="rows_per_file"&&y.value||void 0,parts:u.value==="parts"&&g.value||void 0,archiveName:c.value.some(s=>!!s.relativePath)&&S.value?S.value:void 0});w.value=l,b.value=l.items||[],await $(),r.success("数据拆分完成")}catch(l){r.error(l instanceof Error?l.message:"数据拆分失败")}finally{h.value=!1}}async function $(){try{const l=await X();b.value=l.items||[],T(b.value)}catch{}}async function j(l){try{await ss(l),await $(),r.success("已删除")}catch(s){r.error(s instanceof Error?s.message:"删除失败")}}function A(l){const s=l.slice(0,4).map(o=>o.rowCount!==void 0?`${o.filename}(${o.rowCount}条)`:o.filename);return l.length-s.length>0?`${s.join("、")} 等 ${l.length} 个文件`:s.join("、")}async function z(l){const s=E(),t=l.downloadUrl||(l.resultId?es(l.resultId):"");if(!t){r.warning("当前结果没有下载地址");return}const o=l.outputFilename||`${new Date().toISOString().slice(0,10).replace(/-/g,"")}.zip`;if(s?.save_file_from_url_new){const v=await s.save_file_from_url_new(t,o);v.success?r.success(`已保存:${v.path||o}`):v.error&&v.error!=="用户取消"&&r.error(v.error);return}}return G(()=>{$().catch(()=>{})}),(l,s)=>(a(),n("div",os,[L(O,{active:"split"}),e("div",is,[e("aside",rs,[s[14]||(s[14]=e("div",{class:"section-title"},"选择文件",-1)),e("div",us,[s[7]||(s[7]=e("div",{class:"hint"},"选择需要拆分的 Excel 文件或文件夹,按规则拆成多个 Excel 文件。",-1)),e("div",{class:"btns"},[e("button",{type:"button",class:"opt-btn",onClick:H},"选择 Excel 文件"),e("button",{type:"button",class:"opt-btn",onClick:K},"选择文件夹")]),e("div",ds,[_.value.length?(a(),n(x,{key:0},[(a(!0),n(x,null,I(P.value,t=>(a(),n("span",{key:t},i(t),1))),128)),_.value.length>P.value.length?(a(),n("span",cs," 还有 "+i(_.value.length-P.value.length)+" 个文件未展开显示 ",1)):f("",!0)],64)):(a(),n("span",ps,"暂未选择待拆分文件"))])]),s[15]||(s[15]=e("div",{class:"section-title"},"保留列设置",-1)),e("div",vs,[e("div",fs,[e("span",_s,"已选择 "+i(p.value.length)+" / "+i(m.value.length)+" 列",1),e("div",ms,[e("button",{type:"button",class:"opt-btn small",onClick:s[0]||(s[0]=t=>p.value=[...m.value])},"全选"),e("button",{type:"button",class:"opt-btn small",onClick:s[1]||(s[1]=t=>p.value=[])},"清空")])]),m.value.length?(a(),n("div",ys,[(a(!0),n(x,null,I(m.value,t=>(a(),n("label",{key:t,class:F(["column-item",{active:p.value.includes(t)}])},[C(e("input",{"onUpdate:modelValue":s[2]||(s[2]=o=>p.value=o),type:"checkbox",value:t},null,8,gs),[[Z,p.value]]),e("span",null,i(t),1)],2))),128))])):(a(),n("div",hs,"请选择 Excel 文件后读取表头并填充可保留列"))]),s[16]||(s[16]=e("div",{class:"section-title"},"总条数",-1)),e("div",bs,[e("label",ws,[s[9]||(s[9]=e("input",{type:"checkbox",checked:"",disabled:""},null,-1)),e("div",null,[s[8]||(s[8]=e("span",{class:"label"},"当前数据总条数",-1)),e("div",ks,i(R.value)+" 条(不含表头)",1)])])]),s[17]||(s[17]=e("div",{class:"section-title"},"拆分模式",-1)),e("div",Cs,[e("label",{class:F(["radio-item",{active:u.value==="rows_per_file"}])},[C(e("input",{"onUpdate:modelValue":s[3]||(s[3]=t=>u.value=t),type:"radio",value:"rows_per_file",name:"split-mode"},null,512),[[V,u.value]]),s[10]||(s[10]=e("div",null,[e("span",{class:"label"},"按每份条数"),e("div",{class:"desc"},"例如每份 2000 条,最后一份放剩余数据")],-1))],2),e("label",{class:F(["radio-item",{active:u.value==="parts"}])},[C(e("input",{"onUpdate:modelValue":s[4]||(s[4]=t=>u.value=t),type:"radio",value:"parts",name:"split-mode"},null,512),[[V,u.value]]),s[11]||(s[11]=e("div",null,[e("span",{class:"label"},"按份数平均拆分"),e("div",{class:"desc"},"例如拆 5 份,按总条数尽量平均分配")],-1))],2)]),s[18]||(s[18]=e("div",{class:"section-title"},"拆分参数",-1)),e("div",Ss,[u.value==="rows_per_file"?(a(),n("label",xs,[s[12]||(s[12]=e("span",{class:"label"},"每份条数",-1)),C(e("input",{"onUpdate:modelValue":s[5]||(s[5]=t=>y.value=t),class:"split-number-input",type:"number",min:"1",placeholder:"例如 2000"},null,512),[[M,y.value,void 0,{number:!0}]])])):(a(),n("label",Fs,[s[13]||(s[13]=e("span",{class:"label"},"拆分份数",-1)),C(e("input",{"onUpdate:modelValue":s[6]||(s[6]=t=>g.value=t),class:"split-number-input",type:"number",min:"1",placeholder:"例如 5"},null,512),[[M,g.value,void 0,{number:!0}]])]))]),e("div",Es,[e("button",{type:"button",class:"btn-run",disabled:h.value,onClick:N},i(h.value?"拆分中...":"开始拆分"),9,Ps),e("span",$s,i(h.value?"正在拆分并上传结果,请稍候…":"选择文件、保留列和拆分规则后即可执行拆分,结果会显示在右侧供下载"),1)])]),e("section",Is,[s[23]||(s[23]=e("div",{class:"panel-header"},"拆分结果",-1)),e("div",Rs,[e("div",Bs,[e("div",Us,[s[19]||(s[19]=e("span",{class:"summary-label"},"已处理文件",-1)),e("strong",null,i(w.value.total),1)]),e("div",Vs,[s[20]||(s[20]=e("span",{class:"summary-label"},"成功结果",-1)),e("strong",null,i(w.value.successCount),1)]),e("div",Ms,[s[21]||(s[21]=e("span",{class:"summary-label"},"失败文件",-1)),e("strong",null,i(w.value.failedCount),1)])]),e("div",Ts,[s[22]||(s[22]=e("div",{class:"result-list-header"},[e("span",null,"拆分结果压缩包列表")],-1)),b.value.length===0?(a(),n("div",Ds," 暂无拆分结果,完成数据拆分后会在这里展示压缩包文件 ")):(a(),n("ul",Hs,[(a(!0),n(x,null,I(b.value,t=>(a(),n("li",{key:`${t.resultId||t.outputFilename||t.sourceFilename}-${t.rowCount||0}`,class:"task-item split-result-item"},[e("div",Ks,[e("span",{class:"id",title:t.sourceFilename},i(t.sourceFilename||"-"),9,Ns),t.outputFilename?(a(),n("div",js,"压缩包文件:"+i(t.outputFilename),1)):f("",!0),t.rowCount!==void 0?(a(),n("div",As,"压缩包共包含 "+i(t.rowCount)+" 条数据",1)):f("",!0),t.entryCount&&t.entryCount>0?(a(),n("div",zs,"压缩包内共 "+i(t.entryCount)+" 个拆分文件 ",1)):f("",!0),t.entries&&t.entries.length?(a(),n("div",Js," 压缩包内容:"+i(A(t.entries)),1)):f("",!0),t.error?(a(),n("div",qs,"错误信息:"+i(t.error),1)):f("",!0)]),e("div",Gs,[e("span",{class:F(["status",t.success?"success":"failed"])},i(t.success?"已完成":"失败"),3),t.success&&(t.downloadUrl||t.resultId)?(a(),n("button",{key:0,type:"button",class:"download",onClick:o=>z(t)}," 下载压缩包 ",8,Ls)):f("",!0),t.resultId?(a(),n("button",{key:1,type:"button",class:"btn-delete",onClick:o=>j(t.resultId)}," 删除 ",8,Os)):f("",!0)])]))),128))]))])])])])]))}}),Ws=ts(Qs,[["__scopeId","data-v-f3b42aa3"]]);ls(Ws).use(as).mount("#app"); diff --git a/app/assets/zh-cn-BXYgxART.js b/app/assets/zh-cn-BJtuqXkB.js similarity index 98% rename from app/assets/zh-cn-BXYgxART.js rename to app/assets/zh-cn-BJtuqXkB.js index fd0f119..46a77a2 100644 --- a/app/assets/zh-cn-BXYgxART.js +++ b/app/assets/zh-cn-BJtuqXkB.js @@ -1 +1 @@ -import{bG as m}from"./pywebview-ZMN052YE.js";var _={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值",alphaDescription:"透明度 {alpha}, 当前颜色 {color}",hueLabel:"选择色相值",hueDescription:"色相 {hue}, 当前颜色 {color}",svLabel:"选择饱和度与明度的值",svDescription:"饱和度 {saturation}, 明度 {brightness}, 当前颜色 {color}",predefineDescription:"选择 {value} 作为颜色"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},mention:{loading:"加载中"},dropdown:{toggleDropdown:"切换下拉选项"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 Delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计",selectAllLabel:"选择所有行",selectRowLabel:"选择当前行",expandRowLabel:"展开当前行",collapseRowLabel:"收起当前行",sortLabel:"按 {column} 排序",filterLabel:"按 {column} 过滤"},tag:{close:"关闭此标签"},tour:{next:"下一步",previous:"上一步",finish:"结束导览",close:"关闭此对话框"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}},a={exports:{}},d=a.exports,i;function p(){return i||(i=1,(function(s,u){(function(n,r){s.exports=r(m())})(d,(function(n){function r(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var c=r(n),l={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,o){return o==="W"?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,o){var t=100*e+o;return t<600?"凌晨":t<900?"早上":t<1100?"上午":t<1300?"中午":t<1800?"下午":"晚上"}};return c.default.locale(l,null,!0),l}))})(a)),a.exports}p();export{_ as z}; +import{bD as m}from"./pywebview-84Lhn3TI.js";var _={name:"zh-cn",el:{breadcrumb:{label:"面包屑"},colorpicker:{confirm:"确定",clear:"清空",defaultLabel:"颜色选择器",description:"当前颜色 {color},按 Enter 键选择新颜色",alphaLabel:"选择透明度的值",alphaDescription:"透明度 {alpha}, 当前颜色 {color}",hueLabel:"选择色相值",hueDescription:"色相 {hue}, 当前颜色 {color}",svLabel:"选择饱和度与明度的值",svDescription:"饱和度 {saturation}, 明度 {brightness}, 当前颜色 {color}",predefineDescription:"选择 {value} 作为颜色"},datepicker:{now:"此刻",today:"今天",cancel:"取消",clear:"清空",confirm:"确定",dateTablePrompt:"使用方向键与 Enter 键可选择日期",monthTablePrompt:"使用方向键与 Enter 键可选择月份",yearTablePrompt:"使用方向键与 Enter 键可选择年份",selectedDate:"已选日期",selectDate:"选择日期",selectTime:"选择时间",startDate:"开始日期",startTime:"开始时间",endDate:"结束日期",endTime:"结束时间",prevYear:"前一年",nextYear:"后一年",prevMonth:"上个月",nextMonth:"下个月",year:"年",month1:"1 月",month2:"2 月",month3:"3 月",month4:"4 月",month5:"5 月",month6:"6 月",month7:"7 月",month8:"8 月",month9:"9 月",month10:"10 月",month11:"11 月",month12:"12 月",weeks:{sun:"日",mon:"一",tue:"二",wed:"三",thu:"四",fri:"五",sat:"六"},weeksFull:{sun:"星期日",mon:"星期一",tue:"星期二",wed:"星期三",thu:"星期四",fri:"星期五",sat:"星期六"},months:{jan:"一月",feb:"二月",mar:"三月",apr:"四月",may:"五月",jun:"六月",jul:"七月",aug:"八月",sep:"九月",oct:"十月",nov:"十一月",dec:"十二月"}},inputNumber:{decrease:"减少数值",increase:"增加数值"},select:{loading:"加载中",noMatch:"无匹配数据",noData:"无数据",placeholder:"请选择"},mention:{loading:"加载中"},dropdown:{toggleDropdown:"切换下拉选项"},cascader:{noMatch:"无匹配数据",loading:"加载中",placeholder:"请选择",noData:"暂无数据"},pagination:{goto:"前往",pagesize:"条/页",total:"共 {total} 条",pageClassifier:"页",page:"页",prev:"上一页",next:"下一页",currentPage:"第 {pager} 页",prevPages:"向前 {pager} 页",nextPages:"向后 {pager} 页",deprecationWarning:"你使用了一些已被废弃的用法,请参考 el-pagination 的官方文档"},dialog:{close:"关闭此对话框"},drawer:{close:"关闭此对话框"},messagebox:{title:"提示",confirm:"确定",cancel:"取消",error:"输入的数据不合法!",close:"关闭此对话框"},upload:{deleteTip:"按 Delete 键可删除",delete:"删除",preview:"查看图片",continue:"继续上传"},slider:{defaultLabel:"滑块介于 {min} 至 {max}",defaultRangeStartLabel:"选择起始值",defaultRangeEndLabel:"选择结束值"},table:{emptyText:"暂无数据",confirmFilter:"筛选",resetFilter:"重置",clearFilter:"全部",sumText:"合计",selectAllLabel:"选择所有行",selectRowLabel:"选择当前行",expandRowLabel:"展开当前行",collapseRowLabel:"收起当前行",sortLabel:"按 {column} 排序",filterLabel:"按 {column} 过滤"},tag:{close:"关闭此标签"},tour:{next:"下一步",previous:"上一步",finish:"结束导览",close:"关闭此对话框"},tree:{emptyText:"暂无数据"},transfer:{noMatch:"无匹配数据",noData:"无数据",titles:["列表 1","列表 2"],filterPlaceholder:"请输入搜索内容",noCheckedFormat:"共 {total} 项",hasCheckedFormat:"已选 {checked}/{total} 项"},image:{error:"加载失败"},pageHeader:{title:"返回"},popconfirm:{confirmButtonText:"确定",cancelButtonText:"取消"},carousel:{leftArrow:"上一张幻灯片",rightArrow:"下一张幻灯片",indicator:"幻灯片切换至索引 {index}"}}},a={exports:{}},d=a.exports,i;function p(){return i||(i=1,(function(s,u){(function(n,r){s.exports=r(m())})(d,(function(n){function r(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var c=r(n),l={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,o){return o==="W"?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,o){var t=100*e+o;return t<600?"凌晨":t<900?"早上":t<1100?"上午":t<1300?"中午":t<1800?"下午":"晚上"}};return c.default.locale(l,null,!0),l}))})(a)),a.exports}p();export{_ as z}; diff --git a/app/new_web_source/convert.html b/app/new_web_source/convert.html index 99d6e07..d2f65ab 100644 --- a/app/new_web_source/convert.html +++ b/app/new_web_source/convert.html @@ -5,9 +5,9 @@ 格式转换 - 数富AI - - - + + + diff --git a/app/new_web_source/dedupe.html b/app/new_web_source/dedupe.html index 0a163b0..b643e69 100644 --- a/app/new_web_source/dedupe.html +++ b/app/new_web_source/dedupe.html @@ -5,9 +5,9 @@ 数据去重 - 数富AI - - - + + + diff --git a/app/new_web_source/delete-brand.html b/app/new_web_source/delete-brand.html index 1d2b42d..cc0f50e 100644 --- a/app/new_web_source/delete-brand.html +++ b/app/new_web_source/delete-brand.html @@ -5,10 +5,10 @@ 删除品牌 - 数富AI - - + + - + diff --git a/app/new_web_source/split.html b/app/new_web_source/split.html index 1a2a50a..103ffc0 100644 --- a/app/new_web_source/split.html +++ b/app/new_web_source/split.html @@ -5,9 +5,9 @@ 数据拆分 - 数富AI - - - + + + diff --git a/backend-java/src/main/java/com/nanri/aiimage/common/exception/GlobalExceptionHandler.java b/backend-java/src/main/java/com/nanri/aiimage/common/exception/GlobalExceptionHandler.java index ae7caf4..8e172a8 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/common/exception/GlobalExceptionHandler.java +++ b/backend-java/src/main/java/com/nanri/aiimage/common/exception/GlobalExceptionHandler.java @@ -6,6 +6,9 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; +import org.springframework.web.context.request.async.AsyncRequestNotUsableException; + +import java.io.IOException; @Slf4j @RestControllerAdvice @@ -34,9 +37,33 @@ public class GlobalExceptionHandler { return ApiResponse.fail(ex.getMessage()); } + @ExceptionHandler(AsyncRequestNotUsableException.class) + public void handleAsyncRequestNotUsableException(AsyncRequestNotUsableException ex) { + log.debug("Client disconnected before response completed: {}", ex.getMessage()); + } + @ExceptionHandler(Exception.class) public ApiResponse handleException(Exception ex) { + if (isClientAbort(ex)) { + log.debug("Client disconnected before response completed: {}", ex.getMessage()); + return ApiResponse.fail("客户端已断开连接"); + } log.error("Unhandled exception", ex); return ApiResponse.fail("服务异常: " + ex.getMessage()); } + + private boolean isClientAbort(Throwable ex) { + Throwable cursor = ex; + while (cursor != null) { + String className = cursor.getClass().getName(); + String message = cursor.getMessage() == null ? "" : cursor.getMessage().toLowerCase(); + if (cursor instanceof AsyncRequestNotUsableException + || cursor instanceof IOException && (message.contains("broken pipe") || message.contains("connection reset")) + || className.contains("ClientAbortException")) { + return true; + } + cursor = cursor.getCause(); + } + return false; + } } diff --git a/backend-java/src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java b/backend-java/src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java index 78cfc2d..f8fb85e 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java +++ b/backend-java/src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java @@ -3,6 +3,9 @@ package com.nanri.aiimage.config; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; +import java.util.ArrayList; +import java.util.List; + @Data @ConfigurationProperties(prefix = "aiimage.appearance-patent") public class AppearancePatentProperties { @@ -11,6 +14,8 @@ public class AppearancePatentProperties { private String cozeWorkflowHistoryPath = "/v1/workflows/{workflow_id}/run_histories/{execute_id}"; private String cozeWorkflowId = "7632683471312355338"; private String cozeToken = ""; + private List cozeCredentials = new ArrayList<>(); + private int cozeCredentialStripeSize = 5; private int cozeBatchSize = 50; private int cozeConnectTimeoutMillis = 10000; private int cozeReadTimeoutMillis = 60000; @@ -18,4 +23,11 @@ public class AppearancePatentProperties { private int cozePollTimeoutMillis = 600000; private int staleTimeoutMinutes = 20; private String staleFinalizeCron = "0 */2 * * * *"; + + @Data + public static class CozeCredential { + private String name; + private String workflowId; + private String token; + } } diff --git a/backend-java/src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java b/backend-java/src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java index 82e870c..8fad3e8 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java +++ b/backend-java/src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java @@ -3,6 +3,9 @@ package com.nanri.aiimage.config; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; +import java.util.ArrayList; +import java.util.List; + @Data @ConfigurationProperties(prefix = "aiimage.similar-asin") public class SimilarAsinProperties { @@ -11,6 +14,8 @@ public class SimilarAsinProperties { private String cozeWorkflowHistoryPath = "/v1/workflows/{workflow_id}/run_histories/{execute_id}"; private String cozeWorkflowId = "7635328462404583478"; private String cozeToken = ""; + private List cozeCredentials = new ArrayList<>(); + private int cozeCredentialStripeSize = 5; private int cozeBatchSize = 50; private int cozeConnectTimeoutMillis = 10000; private int cozeReadTimeoutMillis = 60000; @@ -18,4 +23,11 @@ public class SimilarAsinProperties { private int cozePollTimeoutMillis = 600000; private int staleTimeoutMinutes = 20; private String staleFinalizeCron = "0 */2 * * * *"; + + @Data + public static class CozeCredential { + private String name; + private String workflowId; + private String token; + } } diff --git a/backend-java/src/main/java/com/nanri/aiimage/config/TaskFileJobConfig.java b/backend-java/src/main/java/com/nanri/aiimage/config/TaskFileJobConfig.java index fdbbcfb..dd893cf 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/config/TaskFileJobConfig.java +++ b/backend-java/src/main/java/com/nanri/aiimage/config/TaskFileJobConfig.java @@ -9,6 +9,7 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.Semaphore; @Configuration public class TaskFileJobConfig { @@ -37,7 +38,23 @@ public class TaskFileJobConfig { } @Bean("cozeTaskExecutor") - public TaskExecutor cozeTaskExecutor(ExecutorService cozeVirtualThreadExecutor) { - return new ConcurrentTaskExecutor(cozeVirtualThreadExecutor); + public TaskExecutor cozeTaskExecutor( + ExecutorService cozeVirtualThreadExecutor, + @Value("${aiimage.coze-task.max-concurrent:8}") int maxConcurrent) { + Semaphore semaphore = new Semaphore(Math.max(1, maxConcurrent)); + return new ConcurrentTaskExecutor(command -> cozeVirtualThreadExecutor.execute(() -> { + boolean acquired = false; + try { + semaphore.acquire(); + acquired = true; + command.run(); + } catch (InterruptedException ex) { + Thread.currentThread().interrupt(); + } finally { + if (acquired) { + semaphore.release(); + } + } + })); } } diff --git a/backend-java/src/main/java/com/nanri/aiimage/config/TaskOperationLockConfig.java b/backend-java/src/main/java/com/nanri/aiimage/config/TaskOperationLockConfig.java index c6c1601..9f39e47 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/config/TaskOperationLockConfig.java +++ b/backend-java/src/main/java/com/nanri/aiimage/config/TaskOperationLockConfig.java @@ -34,7 +34,7 @@ public class TaskOperationLockConfig implements WebMvcConfigurer { private static final Pattern TASK_PATH = Pattern.compile(".*/api/([^/]+)/tasks/(\\d+)(?:/.*)?$"); private static final Pattern TASK_RESULT_PATH = Pattern.compile(".*/api/([^/]+)/tasks/(\\d+)/result/?$"); private static final Set MUTATING_METHODS = Set.of("POST", "PUT", "PATCH", "DELETE"); - private static final long RESULT_SUBMIT_WAIT_MILLIS = 10 * 60 * 1000L; + private static final long RESULT_SUBMIT_WAIT_MILLIS = 30 * 1000L; private static final long DELETE_WAIT_MILLIS = 60 * 1000L; private static final String LOCK_ATTRIBUTE = TaskOperationLockInterceptor.class.getName() + ".LOCK"; diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentCozeClient.java b/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentCozeClient.java index 53af4d0..56ef765 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentCozeClient.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentCozeClient.java @@ -4,6 +4,7 @@ import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.nanri.aiimage.config.AppearancePatentProperties; import com.nanri.aiimage.modules.appearancepatent.model.dto.AppearancePatentResultRowDto; +import com.nanri.aiimage.modules.coze.service.CozeCredentialPoolService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.http.HttpHeaders; @@ -19,22 +20,26 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.concurrent.atomic.AtomicLong; @Component @RequiredArgsConstructor @Slf4j public class AppearancePatentCozeClient { + private static final String MODULE_TYPE = "APPEARANCE_PATENT"; private static final MediaType APPLICATION_JSON_UTF8 = new MediaType("application", "json", StandardCharsets.UTF_8); private final AppearancePatentProperties properties; private final ObjectMapper objectMapper; + private final CozeCredentialPoolService cozeCredentialPoolService; + private final AtomicLong credentialCursor = new AtomicLong(); public List inspect(List rows, String prompt, String apiKey) { if (rows == null || rows.isEmpty()) { return List.of(); } - if (properties.getCozeToken() == null || properties.getCozeToken().isBlank()) { + if (!hasConfiguredCredential()) { log.warn("[appearance-patent] coze token not configured, keep raw rows size={}", rows.size()); return rows.stream().map(this::copy).toList(); } @@ -48,17 +53,31 @@ public class AppearancePatentCozeClient { } public CozeSubmitResponse submitWorkflow(List rows, String prompt, String apiKey) throws Exception { - JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey)); + return submitWorkflow(rows, prompt, apiKey, nextCredential()); + } + + public CozeSubmitResponse submitWorkflow(List rows, + String prompt, + String apiKey, + CozeCredentialRef credential) throws Exception { + CozeCredentialRef resolvedCredential = resolveCredential(credential); + JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey, resolvedCredential)); ensureSuccess(submitRoot); return new CozeSubmitResponse( extractExecuteId(submitRoot), extractResultDataText(submitRoot), - writeJson(submitRoot) + writeJson(submitRoot), + resolvedCredential.name() ); } public CozePollResponse pollWorkflow(String executeId) throws Exception { - JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId)); + return pollWorkflow(executeId, null); + } + + public CozePollResponse pollWorkflow(String executeId, CozeCredentialRef credential) throws Exception { + CozeCredentialRef resolvedCredential = resolveCredential(credential); + JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId, resolvedCredential)); ensureSuccess(pollRoot); String status = normalize(resolveWorkflowStatus(pollRoot)).toUpperCase(Locale.ROOT); String dataText = extractResultDataText(pollRoot); @@ -66,7 +85,8 @@ public class AppearancePatentCozeClient { String failureMessage = isFailedWorkflowStatus(status) ? firstNonBlank(resolveFailureMessage(pollRoot), "Coze async workflow failed") : ""; - return new CozePollResponse(executeId, status, dataText, outputText, failureMessage, writeJson(pollRoot)); + return new CozePollResponse(executeId, status, dataText, outputText, failureMessage, writeJson(pollRoot), + resolvedCredential.name()); } public List mergeRowsFromDataText(List rows, String dataText) throws Exception { @@ -164,7 +184,8 @@ public class AppearancePatentCozeClient { } private String runWorkflowAsyncAndWait(List rows, String prompt, String apiKey) throws Exception { - JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey)); + CozeCredentialRef credential = nextCredential(); + JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey, credential)); ensureSuccess(submitRoot); String immediateData = extractResultDataText(submitRoot); @@ -180,7 +201,7 @@ public class AppearancePatentCozeClient { long deadline = System.currentTimeMillis() + Math.max(10000, properties.getCozePollTimeoutMillis()); while (System.currentTimeMillis() < deadline) { ensureNotInterrupted(); - JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId)); + JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId, credential)); ensureSuccess(pollRoot); String dataText = extractResultDataText(pollRoot); @@ -205,20 +226,24 @@ public class AppearancePatentCozeClient { throw new IllegalStateException("Coze async workflow poll timeout"); } - private String postWorkflow(List rows, String prompt, String apiKey) { + private String postWorkflow(List rows, + String prompt, + String apiKey, + CozeCredentialRef credential) { Map parameters = buildParameters(rows, prompt, apiKey); Map body = new LinkedHashMap<>(); - body.put("workflow_id", properties.getCozeWorkflowId()); + body.put("workflow_id", credential.workflowId()); body.put("parameters", parameters); body.put("is_async", Boolean.TRUE); - log.info("[appearance-patent] coze request url={} body={}", + log.info("[appearance-patent] coze request credential={} url={} body={}", + credential.name(), joinUrl(properties.getCozeBaseUrl(), properties.getCozeWorkflowPath()), writeJson(maskCozeRequestBody(body))); RestClient.RequestBodySpec request = restClient().post() .uri(joinUrl(properties.getCozeBaseUrl(), properties.getCozeWorkflowPath())) .headers(headers -> { - headers.setBearerAuth(stripBearer(properties.getCozeToken())); + headers.setBearerAuth(stripBearer(credential.token())); headers.setContentType(APPLICATION_JSON_UTF8); headers.set(HttpHeaders.ACCEPT_CHARSET, StandardCharsets.UTF_8.name()); }); @@ -233,28 +258,98 @@ public class AppearancePatentCozeClient { }); } - private String getWorkflowHistory(String executeId) { + private String getWorkflowHistory(String executeId, CozeCredentialRef credential) { String path = properties.getCozeWorkflowHistoryPath() - .replace("{workflow_id}", properties.getCozeWorkflowId()) + .replace("{workflow_id}", credential.workflowId()) .replace("{execute_id}", executeId); return restClient().get() .uri(joinUrl(properties.getCozeBaseUrl(), path)) .headers(headers -> { - headers.setBearerAuth(stripBearer(properties.getCozeToken())); + headers.setBearerAuth(stripBearer(credential.token())); headers.setContentType(APPLICATION_JSON_UTF8); headers.set(HttpHeaders.ACCEPT_CHARSET, StandardCharsets.UTF_8.name()); }) .exchange((clientRequest, clientResponse) -> { byte[] responseBytes = StreamUtils.copyToByteArray(clientResponse.getBody()); String responseText = responseBytes.length == 0 ? "" : new String(responseBytes, StandardCharsets.UTF_8); - log.info("[appearance-patent] coze history response executeId={} status={} body={}", - executeId, + log.info("[appearance-patent] coze history response credential={} executeId={} status={} body={}", + credential.name(), executeId, clientResponse.getStatusCode(), responseText); return responseText; }); } + public CozeCredentialRef nextCredential() { + List pooledCredentials = cozeCredentialPoolService.listEnabled(MODULE_TYPE); + CozeCredentialPoolService.CozeCredential pooledCredential = + cozeCredentialPoolService.chooseRoundRobin(MODULE_TYPE, pooledCredentials, properties.getCozeCredentialStripeSize()); + if (pooledCredential != null) { + return new CozeCredentialRef(pooledCredential.name(), pooledCredential.workflowId(), pooledCredential.token(), + pooledCredential.maxConcurrent()); + } + List credentials = configuredCredentials(); + int stripeSize = Math.max(1, properties.getCozeCredentialStripeSize()); + long cursor = Math.max(0L, credentialCursor.getAndIncrement()); + int index = (int) ((cursor / stripeSize) % credentials.size()); + return credentials.get(index); + } + + public CozeCredentialRef credentialByName(String name) { + if (name == null || name.isBlank()) { + return nextCredential(); + } + String normalizedName = normalize(name); + for (CozeCredentialRef credential : configuredCredentials()) { + if (normalize(credential.name()).equals(normalizedName)) { + return credential; + } + } + return nextCredential(); + } + + public boolean hasConfiguredCredential() { + return !configuredCredentials().isEmpty(); + } + + public int configuredCredentialCount() { + return configuredCredentials().size(); + } + + private CozeCredentialRef resolveCredential(CozeCredentialRef credential) { + return credential == null ? nextCredential() : credential; + } + + private List configuredCredentials() { + List credentials = new ArrayList<>(); + for (CozeCredentialPoolService.CozeCredential credential : cozeCredentialPoolService.listEnabled(MODULE_TYPE)) { + credentials.add(new CozeCredentialRef(credential.name(), credential.workflowId(), credential.token(), + credential.maxConcurrent())); + } + if (!credentials.isEmpty()) { + return credentials; + } + if (properties.getCozeCredentials() != null) { + int index = 1; + for (AppearancePatentProperties.CozeCredential credential : properties.getCozeCredentials()) { + if (credential == null + || normalize(credential.getWorkflowId()).isBlank() + || normalize(credential.getToken()).isBlank()) { + continue; + } + String name = firstNonBlank(credential.getName(), "credential-" + index); + credentials.add(new CozeCredentialRef(name, credential.getWorkflowId(), credential.getToken(), Integer.MAX_VALUE)); + index++; + } + } + if (credentials.isEmpty() + && properties.getCozeWorkflowId() != null && !properties.getCozeWorkflowId().isBlank() + && properties.getCozeToken() != null && !properties.getCozeToken().isBlank()) { + credentials.add(new CozeCredentialRef("default", properties.getCozeWorkflowId(), properties.getCozeToken(), Integer.MAX_VALUE)); + } + return credentials; + } + private Map buildParameters(List rows, String prompt, String apiKey) { List groupKeys = rows.stream().map(row -> nonBlank(row.getGroupKey(), rowKey(row))).toList(); List rowIds = rows.stream().map(row -> nonBlank(row.getId(), "")).toList(); @@ -965,7 +1060,8 @@ public class AppearancePatentCozeClient { public record CozeSubmitResponse( String executeId, String immediateData, - String rawResponse + String rawResponse, + String credentialName ) { } @@ -975,7 +1071,8 @@ public class AppearancePatentCozeClient { String dataText, String outputText, String failureMessage, - String rawResponse + String rawResponse, + String credentialName ) { public boolean hasPayload() { return dataText != null && !dataText.isBlank() || outputText != null && !outputText.isBlank(); @@ -1001,6 +1098,14 @@ public class AppearancePatentCozeClient { } } + public record CozeCredentialRef( + String name, + String workflowId, + String token, + int maxConcurrent + ) { + } + private static final class PartialCozeResultException extends RuntimeException { private final int resolvedCount; diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java b/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java index 9a7be6e..1f3f019 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java @@ -28,6 +28,7 @@ import com.nanri.aiimage.modules.appearancepatent.model.vo.AppearancePatentParse import com.nanri.aiimage.modules.appearancepatent.model.vo.AppearancePatentTaskBatchVo; import com.nanri.aiimage.modules.appearancepatent.model.vo.AppearancePatentTaskDetailVo; import com.nanri.aiimage.modules.appearancepatent.model.vo.AppearancePatentTaskItemVo; +import com.nanri.aiimage.modules.coze.service.CozeCredentialPoolService; import com.nanri.aiimage.modules.file.service.LocalFileStorageService; import com.nanri.aiimage.modules.file.service.oss.OssStorageService; import com.nanri.aiimage.modules.task.mapper.FileResultMapper; @@ -69,6 +70,7 @@ import org.springframework.transaction.support.TransactionTemplate; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.IOException; import java.time.Duration; import java.time.Instant; import java.time.LocalDateTime; @@ -84,6 +86,8 @@ import java.util.Objects; import java.util.Set; import java.util.UUID; import java.util.function.Supplier; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; @Service @RequiredArgsConstructor @@ -100,15 +104,17 @@ public class AppearancePatentTaskService { private static final String COZE_STATUS_DONE = "DONE"; private static final String COZE_STATUS_FAILED = "FAILED"; private static final String CONTENT_TYPE_XLSX = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; + private static final String CONTENT_TYPE_ZIP = "application/zip"; private static final int RESULT_ROWS_READ_RETRY_LIMIT = 3; private static final long RESULT_ROWS_READ_RETRY_DELAY_MS = 500L; private static final Duration TASK_LOCK_TTL = Duration.ofMinutes(5); private static final long TASK_LOCK_WAIT_MILLIS = 10000L; private static final long TASK_LOCK_RETRY_DELAY_MILLIS = 200L; private static final Duration COZE_SUBMIT_LOCK_TTL = Duration.ofMinutes(2); - private static final long COZE_SUBMIT_LOCK_WAIT_MILLIS = 180000L; + private static final long COZE_SUBMIT_LOCK_WAIT_MILLIS = 1000L; private static final long COZE_SUBMIT_LOCK_RETRY_DELAY_MILLIS = 500L; private static final long COZE_SUBMIT_MIN_INTERVAL_MILLIS = 30000L; + private static final long PENDING_COZE_RETRY_INTERVAL_MILLIS = 30000L; private static final int MAX_COZE_SUBMIT_RETRY_COUNT = 5; private static final List RESULT_HEADERS = List.of( "id", @@ -119,7 +125,7 @@ public class AppearancePatentTaskService { "外观维度(外观设计专利)", "专利维度(发明/实用新型专利)", "结论", - "status" + "状态" ); private final LocalFileStorageService localFileStorageService; @@ -140,6 +146,7 @@ public class AppearancePatentTaskService { private final DistributedJobLockService distributedJobLockService; private final TaskDistributedLockService taskDistributedLockService; private final InstanceMetadata instanceMetadata; + private final CozeCredentialPoolService cozeCredentialPoolService; @Autowired @Qualifier("cozeTaskExecutor") private TaskExecutor cozeTaskExecutor; @@ -165,12 +172,12 @@ public class AppearancePatentTaskService { long parseStartedAt = System.nanoTime(); for (AppearancePatentSourceFileDto source : sourceFiles) { if (source.getFileKey() == null || source.getFileKey().isBlank()) { - throw new BusinessException("fileKey 不能为空"); - } - File input = localFileStorageService.findLocalSourceFile(source.getFileKey()); - if (input == null || !input.exists()) { - throw new BusinessException("源文件不存在"); - } + throw new BusinessException("fileKey 不能为空"); + } + File input = localFileStorageService.findLocalSourceFile(source.getFileKey()); + if (input == null || !input.exists()) { + throw new BusinessException("源文件不存在"); + } ParsedWorkbook parsed = parseWorkbook(input, source); totalRows += parsed.totalRows(); @@ -748,7 +755,7 @@ public class AppearancePatentTaskService { touchJavaSideTaskActivity(task.getId()); } else if (isResultSubmissionComplete(task.getId())) { maybeFinalizeCozeJobLocked(task.getId(), new CozeBatchContext( - job.getId(), result.getId(), null, null, 1, 1, currentInstanceId(), 0)); + job.getId(), result.getId(), null, null, 1, 1, currentInstanceId(), 0, null)); } } @@ -1429,18 +1436,7 @@ public class AppearancePatentTaskService { @Scheduled(fixedDelayString = "${aiimage.appearance-patent.coze-poll-delay-ms:30000}") public void pollPendingCozeJobs() { - List states = taskScopeStateMapper.selectList(new LambdaQueryWrapper() - .eq(TaskScopeStateEntity::getModuleType, MODULE_TYPE) - .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) - .isNotNull(TaskScopeStateEntity::getCozeExecuteId) - .and(wrapper -> wrapper - .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) IS NULL") - .or() - .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) = ''") - .or() - .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) = {0}", currentInstanceId())) - .orderByDesc(TaskScopeStateEntity::getUpdatedAt) - .last("limit 50")); + List states = listOwnedPendingCozeStates(); if (states == null || states.isEmpty()) { return; } @@ -1464,6 +1460,41 @@ public class AppearancePatentTaskService { } } + private List listOwnedPendingCozeStates() { + Map merged = new LinkedHashMap<>(); + for (TaskScopeStateEntity state : queryOwnedPendingCozeStates(false, 50)) { + if (state != null && state.getId() != null) { + merged.put(state.getId(), state); + } + } + for (TaskScopeStateEntity state : queryOwnedPendingCozeStates(true, 50)) { + if (state != null && state.getId() != null) { + merged.putIfAbsent(state.getId(), state); + } + } + return new ArrayList<>(merged.values()); + } + + private List queryOwnedPendingCozeStates(boolean oldestFirst, int limit) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper() + .eq(TaskScopeStateEntity::getModuleType, MODULE_TYPE) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .and(ownerWrapper -> ownerWrapper + .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) IS NULL") + .or() + .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) = ''") + .or() + .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) = {0}", currentInstanceId())) + .last("limit " + Math.max(1, Math.min(limit, 100))); + if (oldestFirst) { + wrapper.orderByAsc(TaskScopeStateEntity::getUpdatedAt); + } else { + wrapper.orderByDesc(TaskScopeStateEntity::getUpdatedAt); + } + List states = taskScopeStateMapper.selectList(wrapper); + return states == null ? List.of() : states; + } + private List loadSubmittedChunks(Long taskId) { if (taskId == null || taskId <= 0) { return List.of(); @@ -1492,6 +1523,10 @@ public class AppearancePatentTaskService { if (key.isBlank() || !queuedRowKeys.add(key)) { continue; } + AppearancePatentResultRowDto persistedRow = persistedRows.get(key); + if (hasResolvedCozeFields(persistedRow)) { + continue; + } candidates.add(new CozeCandidate(chunk.getScopeHash(), chunk.getChunkIndex(), row)); } } @@ -1530,7 +1565,7 @@ public class AppearancePatentTaskService { if (chunks == null || chunks.isEmpty()) { return countPendingCozeStates(task.getId()) > 0; } - if (properties.getCozeToken() == null || properties.getCozeToken().isBlank()) { + if (!cozeClient.hasConfiguredCredential()) { log.warn("[appearance-patent] coze token not configured, skip async coze taskId={} jobId={}", task.getId(), job.getId()); return false; @@ -1586,8 +1621,10 @@ public class AppearancePatentTaskService { return COZE_STATUS_SUBMITTED.equals(existing.getCozeStatus()) || COZE_STATUS_RUNNING.equals(existing.getCozeStatus()); } + AppearancePatentCozeClient.CozeCredentialRef credential = cozeClient.nextCredential(); try { - AppearancePatentCozeClient.CozeSubmitResponse submit = submitCozeWorkflowThrottled(batchRows, prompt, apiKey); + AppearancePatentCozeClient.CozeSubmitResponse submit = submitCozeWorkflowThrottled( + batchRows, prompt, apiKey, credential, true); if (submit.immediateData() != null && !submit.immediateData().isBlank()) { List cozeRows = cozeClient.mergeRowsFromDataText(batchRows, submit.immediateData()); mergeCozeRowsIntoSubmittedChunks(task, cozeRows, allRowsByBaseId); @@ -1600,19 +1637,84 @@ public class AppearancePatentTaskService { return false; } saveCozeBatchState(task, result, job, batchRows, batchScopeKey, batchScopeHash, - batchIndex, batchTotal, submit.executeId()); - log.info("[appearance-patent] coze async submitted taskId={} jobId={} rows={} batch={}/{} executeId={}", - task.getId(), job.getId(), batchRows.size(), batchIndex, batchTotal, submit.executeId()); + batchIndex, batchTotal, submit.executeId(), submit.credentialName()); + log.info("[appearance-patent] coze async submitted taskId={} jobId={} rows={} batch={}/{} credential={} executeId={}", + task.getId(), job.getId(), batchRows.size(), batchIndex, batchTotal, + submit.credentialName(), submit.executeId()); return true; } catch (Exception ex) { String message = firstNonBlank(ex.getMessage(), "Coze submit failed"); log.warn("[appearance-patent] coze async submit failed taskId={} jobId={} rows={} batch={}/{} err={}", task.getId(), job.getId(), batchRows.size(), batchIndex, batchTotal, message); + if (isCozeThrottleLockTimeout(message)) { + savePendingCozeBatchState(task, result, job, batchRows, batchScopeKey, batchScopeHash, + batchIndex, batchTotal, message, credential.name()); + taskFileJobService.touchRunning(job.getId()); + touchJavaSideTaskActivity(task.getId()); + return true; + } mergeCozeRowsIntoSubmittedChunks(task, cozeClient.markRowsFailed(batchRows, message), allRowsByBaseId); return false; } } + private boolean isCozeThrottleLockTimeout(String message) { + return normalize(message).toLowerCase(Locale.ROOT).contains("coze submit throttle lock timeout"); + } + + private void savePendingCozeBatchState(FileTaskEntity task, + FileResultEntity result, + TaskFileJobEntity job, + List batchRows, + String batchScopeKey, + String batchScopeHash, + int batchIndex, + int batchTotal, + String pendingReason, + String credentialName) { + LocalDateTime now = LocalDateTime.now(); + CozeBatchContext context = new CozeBatchContext( + job.getId(), + result.getId(), + null, + null, + batchIndex, + batchTotal, + currentInstanceId(), + 0, + credentialName + ); + String batchPayload = writeJson(batchRows, "serialize pending coze batch payload failed"); + String storedBatchPayload = storeSharedCozeBatchPayload(task.getId(), batchScopeHash, batchPayload); + TaskScopeStateEntity state = new TaskScopeStateEntity(); + state.setTaskId(task.getId()); + state.setModuleType(MODULE_TYPE); + state.setScopeKey(batchScopeKey); + state.setScopeHash(batchScopeHash); + state.setParsedPayloadJson(storedBatchPayload); + state.setStateJson(writeJson(context, "serialize pending coze batch context failed")); + state.setCozeStatus(COZE_STATUS_RUNNING); + state.setCozeSubmittedAt(now); + state.setCozeLastPolledAt(null); + state.setCozeAttemptCount(0); + state.setCozeError(firstNonBlank(pendingReason, "Coze submit queued by throttle")); + state.setChunkTotal(batchTotal); + state.setReceivedChunkCount(batchIndex); + state.setCompleted(0); + state.setCreatedAt(now); + state.setUpdatedAt(now); + try { + taskScopeStateMapper.insert(state); + touchJavaSideTaskActivity(task.getId()); + log.info("[appearance-patent] coze async submit queued by throttle taskId={} jobId={} rows={} batch={}/{}", + task.getId(), job.getId(), batchRows.size(), batchIndex, batchTotal); + } catch (DuplicateKeyException ex) { + transientPayloadStorageService.deletePayloadIfPresent(storedBatchPayload); + log.info("[appearance-patent] duplicate pending coze batch state ignored taskId={} scope={}", + task.getId(), batchScopeKey); + } + } + private void saveCozeBatchState(FileTaskEntity task, FileResultEntity result, TaskFileJobEntity job, @@ -1621,7 +1723,8 @@ public class AppearancePatentTaskService { String batchScopeHash, int batchIndex, int batchTotal, - String executeId) { + String executeId, + String credentialName) { LocalDateTime now = LocalDateTime.now(); CozeBatchContext context = new CozeBatchContext( job.getId(), @@ -1631,7 +1734,8 @@ public class AppearancePatentTaskService { batchIndex, batchTotal, currentInstanceId(), - 0 + 0, + credentialName ); String batchPayload = writeJson(batchRows, "serialize coze batch payload failed"); String storedBatchPayload = storeSharedCozeBatchPayload(task.getId(), batchScopeHash, batchPayload); @@ -1689,6 +1793,10 @@ public class AppearancePatentTaskService { try { TaskScopeStateEntity state = taskScopeStateMapper.selectById(stateId); if (state == null || state.getCozeExecuteId() == null || state.getCozeExecuteId().isBlank()) { + if (state != null && state.getCozeExecuteId() == null + && (COZE_STATUS_SUBMITTED.equals(state.getCozeStatus()) || COZE_STATUS_RUNNING.equals(state.getCozeStatus()))) { + retryPendingCozeSubmitState(state); + } return; } if (!(COZE_STATUS_SUBMITTED.equals(state.getCozeStatus()) || COZE_STATUS_RUNNING.equals(state.getCozeStatus()))) { @@ -1715,7 +1823,9 @@ public class AppearancePatentTaskService { log.info("[appearance-patent] coze poll start taskId={} stateId={} executeId={} jobId={} chunk={} batch={}/{}", state.getTaskId(), state.getId(), state.getCozeExecuteId(), context.jobId(), context.chunkIndex(), context.batchIndex(), context.batchTotal()); - AppearancePatentCozeClient.CozePollResponse poll = cozeClient.pollWorkflow(state.getCozeExecuteId()); + AppearancePatentCozeClient.CozePollResponse poll = cozeClient.pollWorkflow( + state.getCozeExecuteId(), + cozeClient.credentialByName(context.credentialName())); if (!poll.hasPayload() && !poll.isFinished() && !isCozeStateTimedOut(state)) { log.info("[appearance-patent] coze poll pending taskId={} stateId={} executeId={} status={}", state.getTaskId(), state.getId(), state.getCozeExecuteId(), poll.status()); @@ -1804,7 +1914,8 @@ public class AppearancePatentTaskService { } try { AppearancePatentCozeClient.CozeSubmitResponse submit = - submitCozeWorkflowThrottled(batchRows, readAiPrompt(task), readApiKey(task)); + submitCozeWorkflowThrottled(batchRows, readAiPrompt(task), readApiKey(task), + cozeClient.credentialByName(context.credentialName()), false); Map> allRowsByBaseId = loadAllRowsByBaseId(task); if (submit.immediateData() != null && !submit.immediateData().isBlank()) { List cozeRows = @@ -1853,23 +1964,54 @@ public class AppearancePatentTaskService { private AppearancePatentCozeClient.CozeSubmitResponse submitCozeWorkflowThrottled( List rows, String prompt, - String apiKey) throws Exception { - DistributedJobLockService.LockHandle lockHandle = acquireCozeSubmitLock(); - if (lockHandle == null) { - throw new IllegalStateException("Coze submit throttle lock timeout"); - } - try (lockHandle) { - AppearancePatentCozeClient.CozeSubmitResponse response = cozeClient.submitWorkflow(rows, prompt, apiKey); - sleepQuietly(COZE_SUBMIT_MIN_INTERVAL_MILLIS); - return response; + String apiKey, + AppearancePatentCozeClient.CozeCredentialRef credential, + boolean allowCredentialFallback) throws Exception { + int attempts = allowCredentialFallback ? Math.max(1, cozeClient.configuredCredentialCount()) : 1; + AppearancePatentCozeClient.CozeCredentialRef currentCredential = + credential == null ? cozeClient.nextCredential() : credential; + Exception lastFailure = null; + for (int i = 0; i < attempts; i++) { + DistributedJobLockService.LockHandle lockHandle = acquireCozeSubmitLock(currentCredential); + if (lockHandle == null) { + lastFailure = new IllegalStateException("Coze submit throttle lock timeout"); + currentCredential = cozeClient.nextCredential(); + continue; + } + CozeCredentialPoolService.BorrowedCredential borrowedCredential = + cozeCredentialPoolService.borrow(MODULE_TYPE, toPoolCredential(currentCredential)); + if (borrowedCredential == null) { + lockHandle.close(); + lastFailure = new IllegalStateException("Coze credential concurrency limit reached"); + currentCredential = cozeClient.nextCredential(); + continue; + } + try (lockHandle; borrowedCredential) { + return cozeClient.submitWorkflow(rows, prompt, apiKey, currentCredential); + } finally { + sleepQuietly(COZE_SUBMIT_MIN_INTERVAL_MILLIS); + } } + throw lastFailure == null ? new IllegalStateException("Coze submit failed") : lastFailure; } - private DistributedJobLockService.LockHandle acquireCozeSubmitLock() { + private CozeCredentialPoolService.CozeCredential toPoolCredential(AppearancePatentCozeClient.CozeCredentialRef credential) { + if (credential == null) { + return null; + } + return new CozeCredentialPoolService.CozeCredential( + credential.name(), + credential.workflowId(), + credential.token(), + credential.maxConcurrent()); + } + + private DistributedJobLockService.LockHandle acquireCozeSubmitLock(AppearancePatentCozeClient.CozeCredentialRef credential) { long deadline = System.currentTimeMillis() + COZE_SUBMIT_LOCK_WAIT_MILLIS; + String credentialName = credential == null ? "default" : firstNonBlank(credential.name(), "default"); while (System.currentTimeMillis() <= deadline) { DistributedJobLockService.LockHandle lockHandle = - distributedJobLockService.tryLock("appearance-patent:coze-submit", COZE_SUBMIT_LOCK_TTL); + distributedJobLockService.tryLock("appearance-patent:coze-submit:" + credentialName, COZE_SUBMIT_LOCK_TTL); if (lockHandle != null) { return lockHandle; } @@ -1915,14 +2057,16 @@ public class AppearancePatentTaskService { int partIndex = 1; for (List partRows : partitions) { AppearancePatentCozeClient.CozeSubmitResponse submit = - submitCozeWorkflowThrottled(partRows, readAiPrompt(task), readApiKey(task)); + submitCozeWorkflowThrottled(partRows, readAiPrompt(task), readApiKey(task), + cozeClient.credentialByName(context.credentialName()), false); if (submit.immediateData() != null && !submit.immediateData().isBlank()) { List cozeRows = cozeClient.mergeRowsFromDataText(partRows, submit.immediateData()); mergeCozeRowsIntoSubmittedChunks(task, cozeRows, allRowsByBaseId); submittedAny = true; } else if (submit.executeId() != null && !submit.executeId().isBlank()) { - saveSplitRetryCozeBatchState(state, context, partRows, partIndex, partitions.size(), retryCount, submit.executeId()); + saveSplitRetryCozeBatchState(state, context, partRows, partIndex, partitions.size(), retryCount, + submit.executeId(), submit.credentialName()); submittedAny = true; } partIndex++; @@ -1950,7 +2094,8 @@ public class AppearancePatentTaskService { int partIndex, int partTotal, int retryCount, - String executeId) { + String executeId, + String credentialName) { String scopeKey = parent.getScopeKey() + ":split:" + retryCount + ":" + partIndex; String scopeHash = DigestUtil.sha256Hex(scopeKey); CozeBatchContext context = new CozeBatchContext( @@ -1961,7 +2106,8 @@ public class AppearancePatentTaskService { partIndex, partTotal, parentContext.ownerInstanceId(), - retryCount + retryCount, + firstNonBlank(credentialName, parentContext.credentialName()) ); LocalDateTime now = LocalDateTime.now(); String batchPayload = writeJson(batchRows, "serialize split coze batch payload failed"); @@ -2058,6 +2204,24 @@ public class AppearancePatentTaskService { .set(TaskScopeStateEntity::getUpdatedAt, now)) > 0; } + private boolean tryClaimPendingCozeSubmitState(TaskScopeStateEntity state) { + if (state == null || state.getId() == null) { + return false; + } + LocalDateTime now = LocalDateTime.now(); + long intervalMillis = Math.max(1000L, PENDING_COZE_RETRY_INTERVAL_MILLIS); + return taskScopeStateMapper.update(null, new LambdaUpdateWrapper() + .eq(TaskScopeStateEntity::getId, state.getId()) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .and(wrapper -> wrapper + .isNull(TaskScopeStateEntity::getCozeLastPolledAt) + .or() + .le(TaskScopeStateEntity::getCozeLastPolledAt, now.minus(Duration.ofMillis(intervalMillis)))) + .set(TaskScopeStateEntity::getCozeStatus, COZE_STATUS_RUNNING) + .set(TaskScopeStateEntity::getCozeLastPolledAt, now) + .set(TaskScopeStateEntity::getUpdatedAt, now)) > 0; + } + private void markCozeStateTerminal(TaskScopeStateEntity state, String status, String error) { taskScopeStateMapper.update(null, new LambdaUpdateWrapper() .eq(TaskScopeStateEntity::getId, state.getId()) @@ -2275,7 +2439,8 @@ public class AppearancePatentTaskService { context.batchIndex(), context.batchTotal(), context.ownerInstanceId(), - submitRetryCount + submitRetryCount, + context.credentialName() ); } @@ -2374,6 +2539,115 @@ public class AppearancePatentTaskService { return "task:" + taskId + ":owner:" + firstNonBlank(ownerFromTask(task), currentInstanceId()); } + private void retryPendingCozeSubmitState(TaskScopeStateEntity state) { + if (state == null || state.getId() == null) { + return; + } + if (!tryClaimPendingCozeSubmitState(state)) { + log.info("[appearance-patent] coze submit retry skipped by claim guard taskId={} stateId={} lastPolledAt={}", + state.getTaskId(), state.getId(), state.getCozeLastPolledAt()); + return; + } + CozeBatchContext context = readCozeBatchContext(state); + if (context == null || context.jobId() == null || context.resultId() == null) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze pending submit context missing"); + return; + } + List batchRows = readCozeBatchRows(state); + if (batchRows.isEmpty()) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze pending submit payload missing"); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + FileTaskEntity task = fileTaskMapper.selectById(state.getTaskId()); + if (task == null || !MODULE_TYPE.equals(task.getModuleType())) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze pending submit task missing"); + return; + } + Map currentRows = loadPersistedResultRows(task.getId()); + List currentBatchRows = batchRows.stream() + .map(row -> currentRows.get(rowKey(row))) + .filter(Objects::nonNull) + .toList(); + if (currentBatchRows.size() == batchRows.size() + && currentBatchRows.stream().allMatch(this::hasResolvedCozeFields)) { + markCozeStateTerminal(state, COZE_STATUS_DONE, "Coze rows already resolved by another batch"); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + log.info("[appearance-patent] coze pending submit skipped because rows already resolved taskId={} stateId={} jobId={} rows={}", + state.getTaskId(), state.getId(), context.jobId(), batchRows.size()); + return; + } + try { + taskFileJobService.touchRunning(context.jobId()); + AppearancePatentCozeClient.CozeSubmitResponse submit = + submitCozeWorkflowThrottled(batchRows, readAiPrompt(task), readApiKey(task), + cozeClient.credentialByName(context.credentialName()), false); + Map> allRowsByBaseId = loadAllRowsByBaseId(task); + if (submit.immediateData() != null && !submit.immediateData().isBlank()) { + List cozeRows = + cozeClient.mergeRowsFromDataText(batchRows, submit.immediateData()); + mergeCozeRowsIntoSubmittedChunks(task, cozeRows, allRowsByBaseId); + markCozeStateTerminal(state, COZE_STATUS_DONE, null); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + if (submit.executeId() == null || submit.executeId().isBlank()) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze async execute_id missing"); + mergeCozeRowsIntoSubmittedChunks(task, + cozeClient.markRowsFailed(batchRows, "Coze async execute_id missing"), + allRowsByBaseId); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + LocalDateTime now = LocalDateTime.now(); + taskScopeStateMapper.update(null, new LambdaUpdateWrapper() + .eq(TaskScopeStateEntity::getId, state.getId()) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .set(TaskScopeStateEntity::getCozeExecuteId, submit.executeId()) + .set(TaskScopeStateEntity::getCozeStatus, COZE_STATUS_SUBMITTED) + .set(TaskScopeStateEntity::getCozeSubmittedAt, now) + .set(TaskScopeStateEntity::getCozeLastPolledAt, null) + .set(TaskScopeStateEntity::getCozeError, null) + .set(TaskScopeStateEntity::getUpdatedAt, now)); + touchJavaSideTaskActivity(state.getTaskId()); + log.info("[appearance-patent] coze pending submit retried taskId={} stateId={} jobId={} rows={} executeId={}", + state.getTaskId(), state.getId(), context.jobId(), batchRows.size(), submit.executeId()); + } catch (Exception ex) { + String message = firstNonBlank(ex.getMessage(), "Coze pending submit retry failed"); + log.warn("[appearance-patent] coze pending submit retry failed taskId={} stateId={} jobId={} rows={} err={}", + state.getTaskId(), state.getId(), context.jobId(), batchRows.size(), message); + if (isCozeThrottleLockTimeout(message)) { + keepPendingCozeSubmitState(state, message); + return; + } + int nextAttemptCount = cozeAttemptCount(state) + 1; + if (nextAttemptCount >= MAX_COZE_SUBMIT_RETRY_COUNT) { + Map> allRowsByBaseId = loadAllRowsByBaseId(task); + String finalMessage = message + " after " + nextAttemptCount + " submit attempts"; + mergeCozeRowsIntoSubmittedChunks(task, + cozeClient.markRowsFailed(batchRows, finalMessage), + allRowsByBaseId); + markCozeStateTerminal(state, COZE_STATUS_FAILED, finalMessage); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + updateCozeStateRunning(state, message); + } + } + + private void keepPendingCozeSubmitState(TaskScopeStateEntity state, String error) { + int updated = taskScopeStateMapper.update(null, new LambdaUpdateWrapper() + .eq(TaskScopeStateEntity::getId, state.getId()) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .set(TaskScopeStateEntity::getCozeStatus, COZE_STATUS_RUNNING) + .set(TaskScopeStateEntity::getCozeExecuteId, null) + .set(TaskScopeStateEntity::getCozeError, error) + .set(TaskScopeStateEntity::getUpdatedAt, LocalDateTime.now())); + if (updated > 0) { + touchJavaSideTaskActivity(state.getTaskId()); + } + } + private String currentInstanceId() { String instanceId = instanceMetadata == null ? null : instanceMetadata.getInstanceId(); return firstNonBlank(instanceId, "unknown-instance"); @@ -2475,6 +2749,12 @@ public class AppearancePatentTaskService { } int safeTotal = Math.max(1, total); int safeCompleted = Math.max(0, Math.min(completed, safeTotal)); + TaskProgressSnapshotEntity existing = taskProgressSnapshotService.find(task.getId(), MODULE_TYPE); + int displayPercent = calculateDisplayProgressPercent(safeCompleted, safeTotal, job, LocalDateTime.now()); + int previousDisplayPercent = calculateSnapshotDisplayPercent(existing, job); + if (previousDisplayPercent > displayPercent && safeCompleted < safeTotal) { + displayPercent = previousDisplayPercent; + } taskProgressSnapshotService.save( task.getId(), MODULE_TYPE, @@ -2484,10 +2764,57 @@ public class AppearancePatentTaskService { 0, job.getScopeKey(), message, - Map.of("phase", "RESULT_FILE", "jobId", job.getId()) + Map.of("phase", "RESULT_FILE", "jobId", job.getId(), "displayPercent", displayPercent) ); } + private int calculateDisplayProgressPercent(int current, + int total, + TaskFileJobEntity job, + LocalDateTime baseTime) { + if (total <= 0) { + return 0; + } + current = Math.max(0, Math.min(current, total)); + int percent = Math.max(1, Math.min(99, (int) Math.floor(current * 100.0 / total))); + if (job != null && STATUS_RUNNING.equals(job.getStatus())) { + long elapsedSeconds = baseTime == null ? 0 : Math.max(0, Duration.between(baseTime, LocalDateTime.now()).getSeconds()); + if (current <= 0) { + int firstRealProgressPercent = Math.max(1, Math.min(99, (int) Math.floor(100.0 / total))); + int waitingCap = Math.max(8, Math.min(35, firstRealProgressPercent - 1)); + percent = Math.max(percent, Math.min(waitingCap, 8 + (int) (elapsedSeconds / 6))); + } else if (current < total) { + percent = Math.max(percent, Math.min(92, percent + (int) (elapsedSeconds / 10))); + } + } + return percent; + } + + private int calculateSnapshotDisplayPercent(TaskProgressSnapshotEntity snapshot, TaskFileJobEntity job) { + if (snapshot == null) { + return 0; + } + int total = snapshot.getTotalCount() == null ? 0 : snapshot.getTotalCount(); + int current = snapshot.getSuccessCount() == null ? 0 : snapshot.getSuccessCount(); + int percent = total <= 0 ? 0 : calculateDisplayProgressPercent(current, total, job, snapshot.getUpdatedAt()); + return Math.max(percent, extractSnapshotDisplayPercent(snapshot)); + } + + private int extractSnapshotDisplayPercent(TaskProgressSnapshotEntity snapshot) { + if (snapshot == null || snapshot.getSnapshotJson() == null || snapshot.getSnapshotJson().isBlank()) { + return 0; + } + try { + JsonNode displayPercent = objectMapper.readTree(snapshot.getSnapshotJson()).path("displayPercent"); + if (!displayPercent.isNumber()) { + return 0; + } + return Math.max(0, Math.min(100, displayPercent.asInt())); + } catch (Exception ignored) { + return 0; + } + } + private void saveCozePipelineProgress(FileTaskEntity task, TaskFileJobEntity job) { if (task == null || task.getId() == null || job == null || job.getId() == null) { return; @@ -2565,28 +2892,160 @@ public class AppearancePatentTaskService { if (!outputDir.exists() && !outputDir.mkdirs()) { throw new BusinessException("创建结果目录失败"); } - String filename = safeFileStem(result.getSourceFilename()) + "-result.xlsx"; - String tempFilename = safeFileStem(result.getSourceFilename()) - + "-" + task.getId() - + "-" + result.getId() - + "-" + UUID.randomUUID() - + "-result.xlsx"; - File xlsx = new File(outputDir, tempFilename); + List sourceRows = splitRowsBySourceFile(parsed, receivedRows, result.getSourceFilename()); + List workbooks = new ArrayList<>(); + File zip = null; try { - writeResultWorkbook(xlsx, parsed, receivedRows, resultMap); - String objectKey = ossStorageService.uploadResultFile(xlsx, MODULE_TYPE); + for (SourceRows item : sourceRows) { + String filename = safeFileStem(item.sourceFilename()) + "-result.xlsx"; + String tempFilename = safeFileStem(item.sourceFilename()) + + "-" + task.getId() + + "-" + result.getId() + + "-" + UUID.randomUUID() + + "-result.xlsx"; + File xlsx = new File(outputDir, tempFilename); + writeResultWorkbook(xlsx, parsed, item.rows(), resultMap); + workbooks.add(new SourceResultWorkbook(xlsx, filename, item.rows().size())); + } + if (workbooks.isEmpty()) { + throw new BusinessException("外观专利检测结果为空,请稍后重试生成结果文件"); + } + + File uploadFile; + String filename; + String contentType; + if (workbooks.size() == 1) { + SourceResultWorkbook workbook = workbooks.get(0); + uploadFile = workbook.file(); + filename = workbook.filename(); + contentType = CONTENT_TYPE_XLSX; + } else { + filename = safeFileStem(result.getSourceFilename()) + "-result.zip"; + String tempFilename = safeFileStem(result.getSourceFilename()) + + "-" + task.getId() + + "-" + result.getId() + + "-" + UUID.randomUUID() + + "-result.zip"; + zip = new File(outputDir, tempFilename); + packageResultWorkbooksAsZip(zip, workbooks); + uploadFile = zip; + contentType = CONTENT_TYPE_ZIP; + } + + String objectKey = ossStorageService.uploadResultFile(uploadFile, MODULE_TYPE); result.setResultFilename(filename); result.setResultFileUrl(objectKey); - result.setResultFileSize(xlsx.length()); - result.setResultContentType(CONTENT_TYPE_XLSX); + result.setResultFileSize(uploadFile.length()); + result.setResultContentType(contentType); result.setRowCount(receivedRows.size()); } finally { - if (xlsx.exists() && !xlsx.delete()) { - log.warn("[appearance-patent] delete temp xlsx failed file={}", xlsx); + for (SourceResultWorkbook workbook : workbooks) { + if (workbook.file().exists() && !workbook.file().delete()) { + log.warn("[appearance-patent] delete temp xlsx failed file={}", workbook.file()); + } + } + if (zip != null && zip.exists() && !zip.delete()) { + log.warn("[appearance-patent] delete temp zip failed file={}", zip); } } } + private List splitRowsBySourceFile(AppearancePatentParsedPayloadDto parsed, + List receivedRows, + String fallbackFilename) { + String defaultFilename = firstNonBlank(fallbackFilename, "appearance-patent"); + Map builders = new LinkedHashMap<>(); + if (parsed != null && parsed.getSourceFiles() != null) { + for (AppearancePatentSourceFileDto sourceFile : parsed.getSourceFiles()) { + if (sourceFile == null) { + continue; + } + String sourceFileKey = normalize(sourceFile.getFileKey()); + if (sourceFileKey.isBlank()) { + continue; + } + builders.putIfAbsent(sourceFileKey, + new SourceRowsBuilder(sourceFileKey, firstNonBlank(sourceFile.getOriginalFilename(), defaultFilename))); + } + } + + for (AppearancePatentParsedRowVo row : receivedRows == null ? List.of() : receivedRows) { + if (row == null) { + continue; + } + String sourceFileKey = normalize(row.getSourceFileKey()); + if (sourceFileKey.isBlank()) { + sourceFileKey = normalize(row.getSourceFilename()); + } + if (sourceFileKey.isBlank()) { + sourceFileKey = "__default__"; + } + SourceRowsBuilder builder = builders.computeIfAbsent(sourceFileKey, + key -> new SourceRowsBuilder(key, firstNonBlank(row.getSourceFilename(), defaultFilename))); + if (builder.sourceFilename().isBlank() || Objects.equals(builder.sourceFilename(), defaultFilename)) { + builder.setSourceFilename(firstNonBlank(row.getSourceFilename(), defaultFilename)); + } + builder.rows().add(row); + } + + return builders.values().stream() + .filter(builder -> !builder.rows().isEmpty()) + .map(builder -> new SourceRows(builder.sourceFileKey(), firstNonBlank(builder.sourceFilename(), defaultFilename), builder.rows())) + .toList(); + } + + private void packageResultWorkbooksAsZip(File zip, List workbooks) { + Set entryNames = new LinkedHashSet<>(); + try (ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zip))) { + byte[] buffer = new byte[8192]; + for (SourceResultWorkbook workbook : workbooks) { + writeResultZipEntry(zos, buffer, workbook.file(), uniqueZipEntryName(workbook.filename(), entryNames)); + } + } catch (IOException ex) { + throw new BusinessException("生成外观专利检测结果压缩包失败"); + } + } + + private void writeResultZipEntry(ZipOutputStream zos, + byte[] buffer, + File file, + String entryName) throws IOException { + zos.putNextEntry(new ZipEntry(entryName)); + try (FileInputStream inputStream = new FileInputStream(file)) { + int len; + while ((len = inputStream.read(buffer)) > 0) { + zos.write(buffer, 0, len); + } + } + zos.closeEntry(); + } + + private String uniqueZipEntryName(String filename, Set entryNames) { + String safeFilename = normalizeZipFilename(filename); + if (entryNames.add(safeFilename)) { + return safeFilename; + } + int dotIndex = safeFilename.lastIndexOf('.'); + String stem = dotIndex > 0 ? safeFilename.substring(0, dotIndex) : safeFilename; + String extension = dotIndex > 0 ? safeFilename.substring(dotIndex) : ""; + int index = 2; + while (true) { + String candidate = stem + "(" + index + ")" + extension; + if (entryNames.add(candidate)) { + return candidate; + } + index++; + } + } + + private String normalizeZipFilename(String filename) { + String normalized = firstNonBlank(filename, "appearance-patent-result.xlsx").replace('\\', '/'); + while (normalized.startsWith("/")) { + normalized = normalized.substring(1); + } + return normalized.isBlank() ? "appearance-patent-result.xlsx" : normalized; + } + private List filterReceivedParsedRows(List parsedRows, Map resultMap) { if (parsedRows == null || parsedRows.isEmpty() || resultMap == null || resultMap.isEmpty()) { @@ -3141,19 +3600,10 @@ public class AppearancePatentTaskService { if (total <= 0) { return; } - current = Math.max(0, Math.min(current, total)); - int percent = Math.max(1, Math.min(99, (int) Math.floor(current * 100.0 / total))); - if (job != null && STATUS_RUNNING.equals(job.getStatus())) { - LocalDateTime baseTime = snapshot.getUpdatedAt() != null ? snapshot.getUpdatedAt() : job.getUpdatedAt(); - long elapsedSeconds = baseTime == null ? 0 : Math.max(0, Duration.between(baseTime, LocalDateTime.now()).getSeconds()); - if (current <= 0) { - int firstRealProgressPercent = Math.max(1, Math.min(99, (int) Math.floor(100.0 / total))); - int waitingCap = Math.max(8, Math.min(35, firstRealProgressPercent - 1)); - percent = Math.max(percent, Math.min(waitingCap, 8 + (int) (elapsedSeconds / 6))); - } else if (current < total) { - percent = Math.max(percent, Math.min(92, percent + (int) (elapsedSeconds / 10))); - } - } + LocalDateTime baseTime = snapshot.getUpdatedAt() != null ? snapshot.getUpdatedAt() : (job == null ? null : job.getUpdatedAt()); + int percent = calculateDisplayProgressPercent(current, total, job, baseTime); + percent = Math.max(percent, extractSnapshotDisplayPercent(snapshot)); + percent = Boolean.TRUE.equals(vo.getFileReady()) ? 100 : Math.min(99, percent); vo.setFileProgressCurrent(current); vo.setFileProgressTotal(total); vo.setFileProgressPercent(percent); @@ -3514,7 +3964,8 @@ public class AppearancePatentTaskService { Integer batchIndex, Integer batchTotal, String ownerInstanceId, - Integer submitRetryCount) { + Integer submitRetryCount, + String credentialName) { } private record CozeCandidate(String chunkScopeHash, @@ -3522,6 +3973,43 @@ public class AppearancePatentTaskService { AppearancePatentResultRowDto row) { } + private static class SourceRowsBuilder { + private final String sourceFileKey; + private String sourceFilename; + private final List rows = new ArrayList<>(); + + private SourceRowsBuilder(String sourceFileKey, String sourceFilename) { + this.sourceFileKey = sourceFileKey; + this.sourceFilename = sourceFilename; + } + + private String sourceFileKey() { + return sourceFileKey; + } + + private String sourceFilename() { + return sourceFilename; + } + + private void setSourceFilename(String sourceFilename) { + this.sourceFilename = sourceFilename; + } + + private List rows() { + return rows; + } + } + + private record SourceRows(String sourceFileKey, + String sourceFilename, + List rows) { + } + + private record SourceResultWorkbook(File file, + String filename, + int rowCount) { + } + private record ParsedWorkbook(int totalRows, int droppedRows, List headers, List allRows) { } } diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/coze/mapper/CozeCredentialMapper.java b/backend-java/src/main/java/com/nanri/aiimage/modules/coze/mapper/CozeCredentialMapper.java new file mode 100644 index 0000000..608fda3 --- /dev/null +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/coze/mapper/CozeCredentialMapper.java @@ -0,0 +1,9 @@ +package com.nanri.aiimage.modules.coze.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.nanri.aiimage.modules.coze.model.entity.CozeCredentialEntity; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface CozeCredentialMapper extends BaseMapper { +} diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/coze/model/entity/CozeCredentialEntity.java b/backend-java/src/main/java/com/nanri/aiimage/modules/coze/model/entity/CozeCredentialEntity.java new file mode 100644 index 0000000..3752f89 --- /dev/null +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/coze/model/entity/CozeCredentialEntity.java @@ -0,0 +1,25 @@ +package com.nanri.aiimage.modules.coze.model.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +@TableName("biz_coze_credential") +public class CozeCredentialEntity { + + @TableId(type = IdType.AUTO) + private Long id; + private String moduleType; + private String credentialName; + private String workflowId; + private String token; + private Integer enabled; + private Integer maxConcurrent; + private Integer sortOrder; + private LocalDateTime createdAt; + private LocalDateTime updatedAt; +} diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/coze/service/CozeCredentialPoolService.java b/backend-java/src/main/java/com/nanri/aiimage/modules/coze/service/CozeCredentialPoolService.java new file mode 100644 index 0000000..28071aa --- /dev/null +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/coze/service/CozeCredentialPoolService.java @@ -0,0 +1,182 @@ +package com.nanri.aiimage.modules.coze.service; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.nanri.aiimage.modules.coze.mapper.CozeCredentialMapper; +import com.nanri.aiimage.modules.coze.model.entity.CozeCredentialEntity; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.data.redis.core.StringRedisTemplate; +import org.springframework.stereotype.Service; + +import java.time.Duration; +import java.util.List; +import java.util.Objects; + +@Slf4j +@Service +@RequiredArgsConstructor +public class CozeCredentialPoolService { + + private static final Duration INFLIGHT_TTL = Duration.ofMinutes(30); + + private final CozeCredentialMapper cozeCredentialMapper; + private final StringRedisTemplate stringRedisTemplate; + + public List listEnabled(String moduleType) { + if (moduleType == null || moduleType.isBlank()) { + return List.of(); + } + try { + List rows = cozeCredentialMapper.selectList(new LambdaQueryWrapper() + .eq(CozeCredentialEntity::getModuleType, moduleType) + .eq(CozeCredentialEntity::getEnabled, 1) + .orderByAsc(CozeCredentialEntity::getSortOrder) + .orderByAsc(CozeCredentialEntity::getId)); + if (rows == null || rows.isEmpty()) { + return List.of(); + } + return rows.stream() + .filter(Objects::nonNull) + .filter(row -> !blank(row.getCredentialName()) + && !blank(row.getWorkflowId()) + && !blank(row.getToken())) + .map(row -> new CozeCredential( + row.getCredentialName().trim(), + row.getWorkflowId().trim(), + row.getToken().trim(), + row.getMaxConcurrent() == null || row.getMaxConcurrent() <= 0 + ? Integer.MAX_VALUE + : row.getMaxConcurrent())) + .toList(); + } catch (Exception ex) { + log.warn("[coze-credential] list enabled failed moduleType={} err={}", moduleType, ex.getMessage()); + return List.of(); + } + } + + public CozeCredential chooseLeastInflight(String moduleType, List credentials) { + return chooseRoundRobin(moduleType, credentials, 1); + } + + public CozeCredential chooseRoundRobin(String moduleType, List credentials, int stripeSize) { + if (credentials == null || credentials.isEmpty()) { + return null; + } + int safeStripeSize = Math.max(1, stripeSize); + long cursor = nextCursor(moduleType); + int index = (int) ((Math.max(0L, cursor) / safeStripeSize) % credentials.size()); + return credentials.get(index); + } + + public BorrowedCredential borrow(String moduleType, CozeCredential credential) { + if (credential == null) { + return null; + } + String key = inflightKey(moduleType, credential.name()); + try { + Long value = stringRedisTemplate.opsForValue().increment(key); + stringRedisTemplate.expire(key, INFLIGHT_TTL); + long inflight = value == null ? 0L : value; + if (inflight > credential.maxConcurrent()) { + release(moduleType, credential.name()); + return null; + } + return new BorrowedCredential(this, moduleType, credential.name()); + } catch (Exception ex) { + log.warn("[coze-credential] borrow failed moduleType={} credential={} err={}", + moduleType, credential.name(), ex.getMessage()); + return BorrowedCredential.noop(); + } + } + + public void release(String moduleType, String credentialName) { + if (blank(moduleType) || blank(credentialName)) { + return; + } + try { + Long value = stringRedisTemplate.opsForValue().decrement(inflightKey(moduleType, credentialName)); + if (value != null && value <= 0L) { + stringRedisTemplate.delete(inflightKey(moduleType, credentialName)); + } + } catch (Exception ex) { + log.warn("[coze-credential] release failed moduleType={} credential={} err={}", + moduleType, credentialName, ex.getMessage()); + } + } + + private long inflight(String moduleType, String credentialName) { + try { + String raw = stringRedisTemplate.opsForValue().get(inflightKey(moduleType, credentialName)); + return raw == null || raw.isBlank() ? 0L : Long.parseLong(raw); + } catch (Exception ex) { + return 0L; + } + } + + private long nextCursor(String moduleType) { + if (blank(moduleType)) { + return 0L; + } + try { + Long value = stringRedisTemplate.opsForValue().increment(cursorKey(moduleType)); + stringRedisTemplate.expire(cursorKey(moduleType), Duration.ofDays(7)); + return value == null ? 0L : Math.max(0L, value - 1L); + } catch (Exception ex) { + log.warn("[coze-credential] cursor increment failed moduleType={} err={}", moduleType, ex.getMessage()); + return System.nanoTime(); + } + } + + private String inflightKey(String moduleType, String credentialName) { + return "coze:credential:inflight:" + moduleType + ":" + credentialName; + } + + private String cursorKey(String moduleType) { + return "coze:credential:cursor:" + moduleType; + } + + private boolean blank(String value) { + return value == null || value.isBlank(); + } + + public record CozeCredential(String name, + String workflowId, + String token, + int maxConcurrent) { + } + + public static final class BorrowedCredential implements AutoCloseable { + private final CozeCredentialPoolService owner; + private final String moduleType; + private final String credentialName; + private final boolean noop; + private boolean released; + + private BorrowedCredential(CozeCredentialPoolService owner, String moduleType, String credentialName) { + this.owner = owner; + this.moduleType = moduleType; + this.credentialName = credentialName; + this.noop = false; + } + + private BorrowedCredential() { + this.owner = null; + this.moduleType = null; + this.credentialName = null; + this.noop = true; + } + + private static BorrowedCredential noop() { + return new BorrowedCredential(); + } + + @Override + public void close() { + if (released || noop) { + return; + } + released = true; + owner.release(moduleType, credentialName); + } + } +} diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/controller/ProductCategoryController.java b/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/controller/ProductCategoryController.java index 910db73..3996374 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/controller/ProductCategoryController.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/controller/ProductCategoryController.java @@ -16,6 +16,7 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController @@ -28,8 +29,26 @@ public class ProductCategoryController { @GetMapping("/product-categories") @Operation(summary = "查询商品类目树") - public ApiResponse list() { - return ApiResponse.success(productCategoryService.list()); + public ApiResponse list(@RequestParam(value = "keyword", required = false) String keyword) { + return ApiResponse.success(productCategoryService.list(keyword)); + } + + @GetMapping("/product-categories/children") + @Operation(summary = "分页查询指定父级下的商品类目") + public ApiResponse children( + @RequestParam(value = "parentId", required = false) Long parentId, + @RequestParam(value = "page", defaultValue = "1") Long page, + @RequestParam(value = "pageSize", defaultValue = "20") Long pageSize) { + return ApiResponse.success(productCategoryService.children(parentId, page, pageSize)); + } + + @GetMapping("/product-categories/search") + @Operation(summary = "分页搜索商品类目") + public ApiResponse search( + @RequestParam(value = "keyword", required = false) String keyword, + @RequestParam(value = "page", defaultValue = "1") Long page, + @RequestParam(value = "pageSize", defaultValue = "20") Long pageSize) { + return ApiResponse.success(productCategoryService.search(keyword, page, pageSize)); } @PostMapping("/product-category") diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/model/vo/ProductCategoryListVo.java b/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/model/vo/ProductCategoryListVo.java index 98a2289..d361f0d 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/model/vo/ProductCategoryListVo.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/model/vo/ProductCategoryListVo.java @@ -8,4 +8,8 @@ import java.util.List; public class ProductCategoryListVo { private List tree; private List items; + private Long total; + private Long page; + private Long pageSize; + private Boolean hasMore; } diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/service/ProductCategoryService.java b/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/service/ProductCategoryService.java index bc072ef..a759ffa 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/service/ProductCategoryService.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/productcategory/service/ProductCategoryService.java @@ -17,6 +17,7 @@ import java.util.Comparator; import java.util.HashMap; import java.util.HashSet; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Set; @@ -27,13 +28,52 @@ public class ProductCategoryService { private final ProductCategoryMapper productCategoryMapper; public ProductCategoryListVo list() { + return list(null); + } + + public ProductCategoryListVo list(String keyword) { List rows = productCategoryMapper.selectList(new LambdaQueryWrapper() .orderByAsc(ProductCategoryEntity::getParentId) .orderByAsc(ProductCategoryEntity::getSortOrder) .orderByAsc(ProductCategoryEntity::getId)); + rows = filterRowsByKeyword(rows, keyword); return buildListVo(rows); } + public ProductCategoryListVo children(Long parentId, long page, long pageSize) { + long safePage = Math.max(page, 1); + long safePageSize = normalizePageSize(pageSize); + Long normalizedParentId = normalizeParentId(parentId); + LambdaQueryWrapper countQuery = new LambdaQueryWrapper<>(); + applyParentFilter(countQuery, normalizedParentId); + Long total = productCategoryMapper.selectCount(countQuery); + + LambdaQueryWrapper pageQuery = new LambdaQueryWrapper() + .orderByAsc(ProductCategoryEntity::getSortOrder) + .orderByAsc(ProductCategoryEntity::getId) + .last("LIMIT " + ((safePage - 1) * safePageSize) + ", " + safePageSize); + applyParentFilter(pageQuery, normalizedParentId); + List rows = productCategoryMapper.selectList(pageQuery); + return buildPageVo(rows, total, safePage, safePageSize); + } + + public ProductCategoryListVo search(String keyword, long page, long pageSize) { + String normalized = normalizeSearchKeyword(keyword); + if (normalized.isBlank()) { + return emptyPageVo(Math.max(page, 1), normalizePageSize(pageSize)); + } + long safePage = Math.max(page, 1); + long safePageSize = normalizePageSize(pageSize); + LambdaQueryWrapper countQuery = buildSearchQuery(normalized); + Long total = productCategoryMapper.selectCount(countQuery); + List rows = productCategoryMapper.selectList(buildSearchQuery(normalized) + .orderByAsc(ProductCategoryEntity::getParentId) + .orderByAsc(ProductCategoryEntity::getSortOrder) + .orderByAsc(ProductCategoryEntity::getId) + .last("LIMIT " + ((safePage - 1) * safePageSize) + ", " + safePageSize)); + return buildSearchPageVo(rows, total, safePage, safePageSize); + } + @Transactional public ProductCategoryItemVo create(ProductCategorySaveRequest request) { String name = normalizeRequired(request.getName(), "类目名称不能为空"); @@ -80,11 +120,13 @@ public class ProductCategoryService { } private ProductCategoryItemVo findItem(Long id) { - ProductCategoryListVo listVo = list(); - return listVo.getItems().stream() - .filter(item -> id.equals(item.getId())) - .findFirst() - .orElseThrow(() -> new BusinessException("类目不存在")); + ProductCategoryEntity entity = getById(id); + Long childCount = productCategoryMapper.selectCount(new LambdaQueryWrapper() + .eq(ProductCategoryEntity::getParentId, entity.getId())); + ProductCategoryItemVo item = toItemVo(entity, childCount == null ? 0 : childCount.intValue()); + item.setLevel(resolveLevel(entity)); + item.setPath(resolvePath(entity)); + return item; } private ProductCategoryListVo buildListVo(List rows) { @@ -105,9 +147,153 @@ public class ProductCategoryService { ProductCategoryListVo vo = new ProductCategoryListVo(); vo.setTree(tree); vo.setItems(flat); + vo.setTotal((long) flat.size()); + vo.setPage(1L); + vo.setPageSize((long) flat.size()); + vo.setHasMore(false); return vo; } + private ProductCategoryListVo buildPageVo(List rows, Long total, long page, long pageSize) { + Map childCountById = buildChildCountById(rows); + List items = rows.stream() + .map(row -> toItemVo(row, childCountById.getOrDefault(row.getId(), 0))) + .toList(); + ProductCategoryListVo vo = new ProductCategoryListVo(); + vo.setItems(items); + vo.setTree(List.of()); + vo.setTotal(total == null ? 0L : total); + vo.setPage(page); + vo.setPageSize(pageSize); + vo.setHasMore(page * pageSize < vo.getTotal()); + return vo; + } + + private ProductCategoryListVo buildSearchPageVo(List rows, Long total, long page, long pageSize) { + Map childCountById = buildChildCountById(rows); + List items = rows.stream() + .map(row -> { + ProductCategoryItemVo item = toItemVo(row, childCountById.getOrDefault(row.getId(), 0)); + item.setLevel(resolveLevel(row)); + item.setPath(resolvePath(row)); + return item; + }) + .toList(); + ProductCategoryListVo vo = new ProductCategoryListVo(); + vo.setItems(items); + vo.setTree(List.of()); + vo.setTotal(total == null ? 0L : total); + vo.setPage(page); + vo.setPageSize(pageSize); + vo.setHasMore(page * pageSize < vo.getTotal()); + return vo; + } + + private ProductCategoryListVo emptyPageVo(long page, long pageSize) { + ProductCategoryListVo vo = new ProductCategoryListVo(); + vo.setItems(List.of()); + vo.setTree(List.of()); + vo.setTotal(0L); + vo.setPage(page); + vo.setPageSize(pageSize); + vo.setHasMore(false); + return vo; + } + + private Map buildChildCountById(List rows) { + Map childCountById = new HashMap<>(); + if (rows.isEmpty()) { + return childCountById; + } + for (ProductCategoryEntity row : rows) { + Long childCount = productCategoryMapper.selectCount(new LambdaQueryWrapper() + .eq(ProductCategoryEntity::getParentId, row.getId())); + childCountById.put(row.getId(), childCount == null ? 0 : childCount.intValue()); + } + return childCountById; + } + + private void applyParentFilter(LambdaQueryWrapper query, Long parentId) { + if (parentId == null) { + query.isNull(ProductCategoryEntity::getParentId); + } else { + query.eq(ProductCategoryEntity::getParentId, parentId); + } + } + + private LambdaQueryWrapper buildSearchQuery(String keyword) { + return new LambdaQueryWrapper() + .like(ProductCategoryEntity::getName, keyword) + .or() + .like(ProductCategoryEntity::getCategoryKey, keyword) + .or() + .like(ProductCategoryEntity::getDescription, keyword); + } + + private List filterRowsByKeyword(List rows, String keyword) { + String normalized = normalizeSearchKeyword(keyword); + if (normalized.isBlank()) { + return rows; + } + Map byId = new HashMap<>(); + Map> byParent = new HashMap<>(); + for (ProductCategoryEntity row : rows) { + byId.put(row.getId(), row); + byParent.computeIfAbsent(row.getParentId(), ignored -> new ArrayList<>()).add(row); + } + Set includedIds = new HashSet<>(); + for (ProductCategoryEntity row : rows) { + if (!matchesKeyword(row, normalized)) { + continue; + } + includeAncestors(row, byId, includedIds); + includeDescendants(row, byParent, includedIds); + } + if (includedIds.isEmpty()) { + return List.of(); + } + return rows.stream() + .filter(row -> includedIds.contains(row.getId())) + .toList(); + } + + private String normalizeSearchKeyword(String keyword) { + return keyword == null ? "" : keyword.trim().toLowerCase(Locale.ROOT); + } + + private boolean matchesKeyword(ProductCategoryEntity row, String keyword) { + return containsKeyword(row.getName(), keyword) + || containsKeyword(row.getCategoryKey(), keyword) + || containsKeyword(row.getDescription(), keyword); + } + + private boolean containsKeyword(String value, String keyword) { + return value != null && value.toLowerCase(Locale.ROOT).contains(keyword); + } + + private void includeAncestors(ProductCategoryEntity row, + Map byId, + Set includedIds) { + ProductCategoryEntity cursor = row; + Set visited = new HashSet<>(); + while (cursor != null && cursor.getId() != null && visited.add(cursor.getId())) { + includedIds.add(cursor.getId()); + cursor = cursor.getParentId() == null ? null : byId.get(cursor.getParentId()); + } + } + + private void includeDescendants(ProductCategoryEntity row, + Map> byParent, + Set includedIds) { + if (row == null || row.getId() == null) { + return; + } + includedIds.add(row.getId()); + for (ProductCategoryEntity child : byParent.getOrDefault(row.getId(), List.of())) { + includeDescendants(child, byParent, includedIds); + } + } + private List buildChildren( Long parentId, int level, @@ -159,6 +345,36 @@ public class ProductCategoryService { return vo; } + private int resolveLevel(ProductCategoryEntity entity) { + int level = 0; + ProductCategoryEntity cursor = entity; + Set visited = new HashSet<>(); + while (cursor != null && cursor.getParentId() != null && visited.add(cursor.getId())) { + ProductCategoryEntity parent = productCategoryMapper.selectById(cursor.getParentId()); + if (parent == null) { + break; + } + level += 1; + cursor = parent; + } + return level; + } + + private String resolvePath(ProductCategoryEntity entity) { + List names = new ArrayList<>(); + ProductCategoryEntity cursor = entity; + Set visited = new HashSet<>(); + while (cursor != null && cursor.getId() != null && visited.add(cursor.getId())) { + names.add(cursor.getName()); + cursor = cursor.getParentId() == null ? null : productCategoryMapper.selectById(cursor.getParentId()); + } + List ordered = new ArrayList<>(); + for (int i = names.size() - 1; i >= 0; i--) { + ordered.add(names.get(i)); + } + return String.join(" / ", ordered); + } + private ProductCategoryEntity getById(Long id) { ProductCategoryEntity entity = productCategoryMapper.selectById(id); if (entity == null) { @@ -225,6 +441,10 @@ public class ProductCategoryService { return value == null ? 100 : value; } + private long normalizePageSize(long value) { + return Math.min(Math.max(value, 1), 100); + } + private String normalizeDescription(String value) { String normalized = value == null ? "" : value.trim(); return normalized.length() > 512 ? normalized.substring(0, 512) : normalized; diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/controller/QueryAsinController.java b/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/controller/QueryAsinController.java index 860bc7a..8fc1869 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/controller/QueryAsinController.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/controller/QueryAsinController.java @@ -1,6 +1,7 @@ package com.nanri.aiimage.modules.shopkey.controller; import com.nanri.aiimage.common.api.ApiResponse; +import com.nanri.aiimage.common.util.DownloadHeaderUtil; import com.nanri.aiimage.modules.shopkey.model.dto.QueryAsinCountryUpdateRequest; import com.nanri.aiimage.modules.shopkey.model.dto.QueryAsinCreateRequest; import com.nanri.aiimage.modules.shopkey.model.vo.QueryAsinImportProgressVo; @@ -13,6 +14,9 @@ import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; @@ -24,12 +28,17 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; + @RestController @RequiredArgsConstructor @RequestMapping("/api/admin/query-asins") @Tag(name = "查询 ASIN", description = "维护店铺按国家查询的 ASIN") public class QueryAsinController { + private static final DateTimeFormatter EXPORT_FILENAME_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMdd_HHmmss"); + private final QueryAsinService queryAsinService; @GetMapping @@ -52,6 +61,23 @@ public class QueryAsinController { Boolean.TRUE.equals(superAdmin))); } + @GetMapping("/export") + @Operation(summary = "导出查询 ASIN") + public ResponseEntity export( + @Parameter(description = "分组ID") @RequestParam(required = false) Long groupId, + @Parameter(description = "店铺名") @RequestParam(required = false) String shopName, + @Parameter(description = "ASIN") @RequestParam(required = false) String asin, + @Parameter(description = "当前操作人用户ID") @RequestParam(required = false) Long operatorId, + @Parameter(description = "是否超级管理员") @RequestParam(defaultValue = "false") Boolean superAdmin) { + byte[] bytes = queryAsinService.export(groupId, shopName, asin, operatorId, Boolean.TRUE.equals(superAdmin)); + String filename = "query-asin-" + LocalDateTime.now().format(EXPORT_FILENAME_FORMATTER) + ".xlsx"; + return ResponseEntity.ok() + .header(HttpHeaders.CONTENT_DISPOSITION, DownloadHeaderUtil.contentDisposition(filename)) + .contentType(MediaType.parseMediaType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")) + .contentLength(bytes.length) + .body(bytes); + } + @PostMapping @Operation(summary = "新增或覆盖查询 ASIN") public ApiResponse create( diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/service/QueryAsinService.java b/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/service/QueryAsinService.java index 8517d93..aa90cef 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/service/QueryAsinService.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/shopkey/service/QueryAsinService.java @@ -16,12 +16,18 @@ import com.nanri.aiimage.modules.shopkey.model.vo.QueryAsinPageVo; import com.nanri.aiimage.modules.shopkey.model.vo.ShopManageGroupItemVo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; +import java.io.ByteArrayOutputStream; import java.io.File; import java.nio.file.Files; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; @@ -41,6 +47,7 @@ public class QueryAsinService { private static final List SUPPORTED_COUNTRIES = List.of("DE", "UK", "FR", "IT", "ES"); private static final String KEY_SEPARATOR = Character.toString((char) 1); private static final String UTF8_BOM = String.valueOf((char) 0xFEFF); + private static final DateTimeFormatter EXPORT_TIME_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); private final QueryAsinMapper queryAsinMapper; private final ShopManageGroupService shopManageGroupService; @@ -52,32 +59,15 @@ public class QueryAsinService { Long operatorId, boolean superAdmin) { long safePage = Math.max(page, 1); long safePageSize = Math.min(Math.max(pageSize, 1), 100); - String safeShopName = normalizeBlank(shopName); - String safeAsin = normalizeBlank(asin); - Set accessibleGroupIds = superAdmin ? Set.of() : shopManageGroupService.listAccessibleGroupIds(operatorId, false); - - LambdaQueryWrapper query = new LambdaQueryWrapper() - .eq(groupId != null && groupId > 0, QueryAsinEntity::getGroupId, groupId) - .like(!safeShopName.isEmpty(), QueryAsinEntity::getShopName, safeShopName) - .and(!safeAsin.isEmpty(), wrapper -> wrapper - .like(QueryAsinEntity::getAsinDe, safeAsin) - .or().like(QueryAsinEntity::getAsinUk, safeAsin) - .or().like(QueryAsinEntity::getAsinFr, safeAsin) - .or().like(QueryAsinEntity::getAsinIt, safeAsin) - .or().like(QueryAsinEntity::getAsinEs, safeAsin)) - .orderByDesc(QueryAsinEntity::getId); - - if (!superAdmin) { - if (accessibleGroupIds.isEmpty()) { - query.eq(QueryAsinEntity::getId, -1L); - } else { - query.in(QueryAsinEntity::getGroupId, accessibleGroupIds); - } - } - - Long total = queryAsinMapper.selectCount(query); - List rows = queryAsinMapper - .selectList(query.last("LIMIT " + ((safePage - 1) * safePageSize) + ", " + safePageSize)); + Long total = countFilteredRows(groupId, shopName, asin, operatorId, superAdmin); + List rows = listFilteredRows( + groupId, + shopName, + asin, + operatorId, + superAdmin, + (safePage - 1) * safePageSize, + safePageSize); Map groupNameById = shopManageGroupService.buildGroupNameMap(rows.stream() .map(QueryAsinEntity::getGroupId) @@ -93,6 +83,110 @@ public class QueryAsinService { return vo; } + public byte[] export(Long groupId, String shopName, String asin, Long operatorId, boolean superAdmin) { + List rows = listFilteredRows(groupId, shopName, asin, operatorId, superAdmin, null, null); + Map groupNameById = shopManageGroupService.buildGroupNameMap(rows.stream() + .map(QueryAsinEntity::getGroupId) + .filter(id -> id != null && id > 0) + .distinct() + .toList()); + try (SXSSFWorkbook workbook = new SXSSFWorkbook(100); + ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) { + Sheet sheet = workbook.createSheet("QueryAsin"); + writeExportHeader(sheet); + for (int index = 0; index < rows.size(); index++) { + writeExportRow(sheet, index + 1, rows.get(index), groupNameById.get(rows.get(index).getGroupId())); + } + applyExportColumnWidths(sheet); + workbook.write(outputStream); + workbook.dispose(); + return outputStream.toByteArray(); + } catch (Exception ex) { + throw new BusinessException("导出查询 ASIN 失败"); + } + } + + private Long countFilteredRows(Long groupId, String shopName, String asin, Long operatorId, boolean superAdmin) { + return queryAsinMapper.selectCount(buildFilterQuery(groupId, shopName, asin, operatorId, superAdmin)); + } + + private List listFilteredRows(Long groupId, String shopName, String asin, + Long operatorId, boolean superAdmin, + Long offset, Long limit) { + LambdaQueryWrapper query = buildFilterQuery(groupId, shopName, asin, operatorId, superAdmin); + if (offset != null && limit != null) { + query.last("LIMIT " + Math.max(0L, offset) + ", " + Math.max(1L, limit)); + } + return queryAsinMapper.selectList(query); + } + + private LambdaQueryWrapper buildFilterQuery(Long groupId, String shopName, String asin, + Long operatorId, boolean superAdmin) { + String safeShopName = normalizeBlank(shopName); + String safeAsin = normalizeBlank(asin); + Set accessibleGroupIds = superAdmin ? Set.of() : shopManageGroupService.listAccessibleGroupIds(operatorId, false); + LambdaQueryWrapper query = new LambdaQueryWrapper() + .eq(groupId != null && groupId > 0, QueryAsinEntity::getGroupId, groupId) + .like(!safeShopName.isEmpty(), QueryAsinEntity::getShopName, safeShopName) + .and(!safeAsin.isEmpty(), wrapper -> wrapper + .like(QueryAsinEntity::getAsinDe, safeAsin) + .or().like(QueryAsinEntity::getAsinUk, safeAsin) + .or().like(QueryAsinEntity::getAsinFr, safeAsin) + .or().like(QueryAsinEntity::getAsinIt, safeAsin) + .or().like(QueryAsinEntity::getAsinEs, safeAsin)) + .orderByDesc(QueryAsinEntity::getId); + if (!superAdmin) { + if (accessibleGroupIds.isEmpty()) { + query.eq(QueryAsinEntity::getId, -1L); + } else { + query.in(QueryAsinEntity::getGroupId, accessibleGroupIds); + } + } + return query; + } + + private void writeExportHeader(Sheet sheet) { + Row header = sheet.createRow(0); + String[] headers = { + "序号", "分组", "店铺名", + "德国ASIN", "英国ASIN", "法国ASIN", "意大利ASIN", "西班牙ASIN", + "创建时间", "更新时间" + }; + for (int i = 0; i < headers.length; i++) { + header.createCell(i).setCellValue(headers[i]); + } + } + + private void writeExportRow(Sheet sheet, int rowNo, QueryAsinEntity entity, String groupName) { + Row row = sheet.createRow(rowNo); + int col = 0; + row.createCell(col++).setCellValue(rowNo); + row.createCell(col++).setCellValue(blankToEmpty(groupName)); + row.createCell(col++).setCellValue(blankToEmpty(entity.getShopName())); + row.createCell(col++).setCellValue(blankToEmpty(entity.getAsinDe())); + row.createCell(col++).setCellValue(blankToEmpty(entity.getAsinUk())); + row.createCell(col++).setCellValue(blankToEmpty(entity.getAsinFr())); + row.createCell(col++).setCellValue(blankToEmpty(entity.getAsinIt())); + row.createCell(col++).setCellValue(blankToEmpty(entity.getAsinEs())); + row.createCell(col++).setCellValue(formatExportTime(entity.getCreatedAt())); + row.createCell(col).setCellValue(formatExportTime(entity.getUpdatedAt())); + } + + private void applyExportColumnWidths(Sheet sheet) { + int[] widths = { + 2800, 5200, 5200, + 4600, 4600, 4600, 4600, 4600, + 5200, 5200 + }; + for (int i = 0; i < widths.length; i++) { + sheet.setColumnWidth(i, widths[i]); + } + } + + private String formatExportTime(LocalDateTime value) { + return value == null ? "" : value.format(EXPORT_TIME_FORMATTER); + } + @Transactional public QueryAsinItemVo createOrUpdate(QueryAsinCreateRequest request, Long operatorId, boolean superAdmin) { ShopManageGroupEntity group = shopManageGroupService.getAccessibleById(request.getGroupId(), operatorId, superAdmin); diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinCozeClient.java b/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinCozeClient.java index 8ab612b..a468dcb 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinCozeClient.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinCozeClient.java @@ -3,6 +3,7 @@ package com.nanri.aiimage.modules.similarasin.client; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.ObjectMapper; import com.nanri.aiimage.config.SimilarAsinProperties; +import com.nanri.aiimage.modules.coze.service.CozeCredentialPoolService; import com.nanri.aiimage.modules.similarasin.model.dto.SimilarAsinResultRowDto; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -19,22 +20,26 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Locale; import java.util.Map; +import java.util.concurrent.atomic.AtomicLong; @Component @RequiredArgsConstructor @Slf4j public class SimilarAsinCozeClient { + private static final String MODULE_TYPE = "SIMILAR_ASIN"; private static final MediaType APPLICATION_JSON_UTF8 = new MediaType("application", "json", StandardCharsets.UTF_8); private final SimilarAsinProperties properties; private final ObjectMapper objectMapper; + private final CozeCredentialPoolService cozeCredentialPoolService; + private final AtomicLong credentialCursor = new AtomicLong(); public List inspect(List rows, String prompt, String apiKey) { if (rows == null || rows.isEmpty()) { return List.of(); } - if (properties.getCozeToken() == null || properties.getCozeToken().isBlank()) { + if (!hasConfiguredCredential()) { log.warn("[similar-asin] coze token not configured, keep raw rows size={}", rows.size()); return rows.stream().map(this::copy).toList(); } @@ -48,17 +53,31 @@ public class SimilarAsinCozeClient { } public CozeSubmitResponse submitWorkflow(List rows, String prompt, String apiKey) throws Exception { - JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey)); + return submitWorkflow(rows, prompt, apiKey, nextCredential()); + } + + public CozeSubmitResponse submitWorkflow(List rows, + String prompt, + String apiKey, + CozeCredentialRef credential) throws Exception { + CozeCredentialRef resolvedCredential = resolveCredential(credential); + JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey, resolvedCredential)); ensureSuccess(submitRoot); return new CozeSubmitResponse( extractExecuteId(submitRoot), extractResultDataText(submitRoot), - writeJson(submitRoot) + writeJson(submitRoot), + resolvedCredential.name() ); } public CozePollResponse pollWorkflow(String executeId) throws Exception { - JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId)); + return pollWorkflow(executeId, null); + } + + public CozePollResponse pollWorkflow(String executeId, CozeCredentialRef credential) throws Exception { + CozeCredentialRef resolvedCredential = resolveCredential(credential); + JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId, resolvedCredential)); ensureSuccess(pollRoot); String status = normalize(resolveWorkflowStatus(pollRoot)).toUpperCase(Locale.ROOT); String dataText = extractResultDataText(pollRoot); @@ -66,7 +85,8 @@ public class SimilarAsinCozeClient { String failureMessage = isFailedWorkflowStatus(status) ? firstNonBlank(resolveFailureMessage(pollRoot), "Coze async workflow failed") : ""; - return new CozePollResponse(executeId, status, dataText, outputText, failureMessage, writeJson(pollRoot)); + return new CozePollResponse(executeId, status, dataText, outputText, failureMessage, writeJson(pollRoot), + resolvedCredential.name()); } public List mergeRowsFromDataText(List rows, String dataText) throws Exception { @@ -161,7 +181,8 @@ public class SimilarAsinCozeClient { } private String runWorkflowAsyncAndWait(List rows, String prompt, String apiKey) throws Exception { - JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey)); + CozeCredentialRef credential = nextCredential(); + JsonNode submitRoot = objectMapper.readTree(postWorkflow(rows, prompt, apiKey, credential)); ensureSuccess(submitRoot); String immediateData = extractResultDataText(submitRoot); @@ -177,7 +198,7 @@ public class SimilarAsinCozeClient { long deadline = System.currentTimeMillis() + Math.max(10000, properties.getCozePollTimeoutMillis()); while (System.currentTimeMillis() < deadline) { ensureNotInterrupted(); - JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId)); + JsonNode pollRoot = objectMapper.readTree(getWorkflowHistory(executeId, credential)); ensureSuccess(pollRoot); String dataText = extractResultDataText(pollRoot); @@ -202,23 +223,27 @@ public class SimilarAsinCozeClient { throw new IllegalStateException("Coze async workflow poll timeout"); } - private String postWorkflow(List rows, String prompt, String apiKey) { + private String postWorkflow(List rows, + String prompt, + String apiKey, + CozeCredentialRef credential) { Map parameters = buildParameters(rows, prompt, apiKey); Map body = new LinkedHashMap<>(); - body.put("workflow_id", properties.getCozeWorkflowId()); + body.put("workflow_id", credential.workflowId()); body.put("parameters", parameters); if (apiKey != null && !apiKey.isBlank()) { body.put("api_key", apiKey.trim()); } body.put("is_async", Boolean.TRUE); - log.info("[similar-asin] coze request url={} body={}", + log.info("[similar-asin] coze request credential={} url={} body={}", + credential.name(), joinUrl(properties.getCozeBaseUrl(), properties.getCozeWorkflowPath()), writeJson(maskCozeRequestBody(body))); RestClient.RequestBodySpec request = restClient().post() .uri(joinUrl(properties.getCozeBaseUrl(), properties.getCozeWorkflowPath())) .headers(headers -> { - headers.setBearerAuth(stripBearer(properties.getCozeToken())); + headers.setBearerAuth(stripBearer(credential.token())); headers.setContentType(APPLICATION_JSON_UTF8); headers.set(HttpHeaders.ACCEPT_CHARSET, StandardCharsets.UTF_8.name()); }); @@ -233,28 +258,98 @@ public class SimilarAsinCozeClient { }); } - private String getWorkflowHistory(String executeId) { + private String getWorkflowHistory(String executeId, CozeCredentialRef credential) { String path = properties.getCozeWorkflowHistoryPath() - .replace("{workflow_id}", properties.getCozeWorkflowId()) + .replace("{workflow_id}", credential.workflowId()) .replace("{execute_id}", executeId); return restClient().get() .uri(joinUrl(properties.getCozeBaseUrl(), path)) .headers(headers -> { - headers.setBearerAuth(stripBearer(properties.getCozeToken())); + headers.setBearerAuth(stripBearer(credential.token())); headers.setContentType(APPLICATION_JSON_UTF8); headers.set(HttpHeaders.ACCEPT_CHARSET, StandardCharsets.UTF_8.name()); }) .exchange((clientRequest, clientResponse) -> { byte[] responseBytes = StreamUtils.copyToByteArray(clientResponse.getBody()); String responseText = responseBytes.length == 0 ? "" : new String(responseBytes, StandardCharsets.UTF_8); - log.info("[similar-asin] coze history response executeId={} status={} body={}", - executeId, + log.info("[similar-asin] coze history response credential={} executeId={} status={} body={}", + credential.name(), executeId, clientResponse.getStatusCode(), responseText); return responseText; }); } + public CozeCredentialRef nextCredential() { + List pooledCredentials = cozeCredentialPoolService.listEnabled(MODULE_TYPE); + CozeCredentialPoolService.CozeCredential pooledCredential = + cozeCredentialPoolService.chooseRoundRobin(MODULE_TYPE, pooledCredentials, properties.getCozeCredentialStripeSize()); + if (pooledCredential != null) { + return new CozeCredentialRef(pooledCredential.name(), pooledCredential.workflowId(), pooledCredential.token(), + pooledCredential.maxConcurrent()); + } + List credentials = configuredCredentials(); + int stripeSize = Math.max(1, properties.getCozeCredentialStripeSize()); + long cursor = Math.max(0L, credentialCursor.getAndIncrement()); + int index = (int) ((cursor / stripeSize) % credentials.size()); + return credentials.get(index); + } + + public CozeCredentialRef credentialByName(String name) { + if (name == null || name.isBlank()) { + return nextCredential(); + } + String normalizedName = normalize(name); + for (CozeCredentialRef credential : configuredCredentials()) { + if (normalize(credential.name()).equals(normalizedName)) { + return credential; + } + } + return nextCredential(); + } + + public boolean hasConfiguredCredential() { + return !configuredCredentials().isEmpty(); + } + + public int configuredCredentialCount() { + return configuredCredentials().size(); + } + + private CozeCredentialRef resolveCredential(CozeCredentialRef credential) { + return credential == null ? nextCredential() : credential; + } + + private List configuredCredentials() { + List credentials = new ArrayList<>(); + for (CozeCredentialPoolService.CozeCredential credential : cozeCredentialPoolService.listEnabled(MODULE_TYPE)) { + credentials.add(new CozeCredentialRef(credential.name(), credential.workflowId(), credential.token(), + credential.maxConcurrent())); + } + if (!credentials.isEmpty()) { + return credentials; + } + if (properties.getCozeCredentials() != null) { + int index = 1; + for (SimilarAsinProperties.CozeCredential credential : properties.getCozeCredentials()) { + if (credential == null + || normalize(credential.getWorkflowId()).isBlank() + || normalize(credential.getToken()).isBlank()) { + continue; + } + String name = firstNonBlank(credential.getName(), "credential-" + index); + credentials.add(new CozeCredentialRef(name, credential.getWorkflowId(), credential.getToken(), Integer.MAX_VALUE)); + index++; + } + } + if (credentials.isEmpty() + && properties.getCozeWorkflowId() != null && !properties.getCozeWorkflowId().isBlank() + && properties.getCozeToken() != null && !properties.getCozeToken().isBlank()) { + credentials.add(new CozeCredentialRef("default", properties.getCozeWorkflowId(), properties.getCozeToken(), Integer.MAX_VALUE)); + } + return credentials; + } + private Map buildParameters(List rows, String prompt, String apiKey) { List asins = rows.stream().map(row -> nonBlank(row.getAsin(), "")).toList(); List skus = rows.stream().map(row -> nonBlank(row.getSku(), "")).toList(); @@ -1045,7 +1140,8 @@ public class SimilarAsinCozeClient { public record CozeSubmitResponse( String executeId, String immediateData, - String rawResponse + String rawResponse, + String credentialName ) { } @@ -1055,7 +1151,8 @@ public class SimilarAsinCozeClient { String dataText, String outputText, String failureMessage, - String rawResponse + String rawResponse, + String credentialName ) { public boolean hasPayload() { return dataText != null && !dataText.isBlank() || outputText != null && !outputText.isBlank(); @@ -1081,6 +1178,14 @@ public class SimilarAsinCozeClient { } } + public record CozeCredentialRef( + String name, + String workflowId, + String token, + int maxConcurrent + ) { + } + private static final class PartialCozeResultException extends RuntimeException { private final int resolvedCount; diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java b/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java index 26d9ef9..8e31a87 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java @@ -11,6 +11,7 @@ import com.nanri.aiimage.common.service.DistributedJobLockService; import com.nanri.aiimage.config.InstanceMetadata; import com.nanri.aiimage.config.SimilarAsinProperties; import com.nanri.aiimage.config.StorageProperties; +import com.nanri.aiimage.modules.coze.service.CozeCredentialPoolService; import com.nanri.aiimage.modules.similarasin.mapper.SimilarAsinFilterConditionMapper; import com.nanri.aiimage.modules.similarasin.client.SimilarAsinCozeClient; import com.nanri.aiimage.modules.similarasin.model.dto.SimilarAsinFilterConditionAddRequest; @@ -72,6 +73,7 @@ import org.springframework.transaction.support.TransactionTemplate; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.IOException; import java.time.Duration; import java.time.Instant; import java.time.LocalDateTime; @@ -86,6 +88,8 @@ import java.util.Objects; import java.util.Set; import java.util.UUID; import java.util.function.Supplier; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; @Service @RequiredArgsConstructor @@ -102,12 +106,13 @@ public class SimilarAsinTaskService { private static final String COZE_STATUS_DONE = "DONE"; private static final String COZE_STATUS_FAILED = "FAILED"; private static final String CONTENT_TYPE_XLSX = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; + private static final String CONTENT_TYPE_ZIP = "application/zip"; private static final int RESULT_ROWS_READ_RETRY_LIMIT = 3; private static final long RESULT_ROWS_READ_RETRY_DELAY_MS = 500L; private static final Duration TASK_LOCK_TTL = Duration.ofMinutes(5); private static final long TASK_LOCK_WAIT_MILLIS = 10000L; private static final Duration COZE_SUBMIT_LOCK_TTL = Duration.ofMinutes(2); - private static final long COZE_SUBMIT_LOCK_WAIT_MILLIS = 180000L; + private static final long COZE_SUBMIT_LOCK_WAIT_MILLIS = 1000L; private static final long COZE_SUBMIT_LOCK_RETRY_DELAY_MILLIS = 500L; private static final long COZE_SUBMIT_MIN_INTERVAL_MILLIS = 30000L; private static final int MAX_COZE_SUBMIT_RETRY_COUNT = 5; @@ -122,7 +127,7 @@ public class SimilarAsinTaskService { "是否符合类目", "不符合理由", "产品类目", - "status" + "状态" ); private final LocalFileStorageService localFileStorageService; @@ -144,6 +149,7 @@ public class SimilarAsinTaskService { private final PlatformTransactionManager transactionManager; private final DistributedJobLockService distributedJobLockService; private final InstanceMetadata instanceMetadata; + private final CozeCredentialPoolService cozeCredentialPoolService; @Autowired @Qualifier("cozeTaskExecutor") private TaskExecutor cozeTaskExecutor; @@ -821,7 +827,7 @@ public class SimilarAsinTaskService { touchJavaSideTaskActivity(task.getId()); } else if (isResultSubmissionComplete(task.getId())) { maybeFinalizeCozeJobLocked(task.getId(), new CozeBatchContext( - job.getId(), result.getId(), context.scopeHash(), context.chunkIndex(), 1, 1, currentInstanceId(), 0)); + job.getId(), result.getId(), context.scopeHash(), context.chunkIndex(), 1, 1, currentInstanceId(), 0, null)); } } @@ -1431,12 +1437,7 @@ public class SimilarAsinTaskService { return; } try (lockHandle) { - List states = taskScopeStateMapper.selectList(new LambdaQueryWrapper() - .eq(TaskScopeStateEntity::getModuleType, MODULE_TYPE) - .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) - .isNotNull(TaskScopeStateEntity::getCozeExecuteId) - .orderByAsc(TaskScopeStateEntity::getUpdatedAt) - .last("limit 50")); + List states = listOwnedPendingCozeStates(); if (states == null || states.isEmpty()) { return; } @@ -1458,7 +1459,7 @@ public class SimilarAsinTaskService { if (chunks == null || chunks.isEmpty()) { return countPendingCozeStates(task.getId()) > 0; } - if (properties.getCozeToken() == null || properties.getCozeToken().isBlank()) { + if (!cozeClient.hasConfiguredCredential()) { log.warn("[similar-asin] coze token not configured, skip async coze taskId={} jobId={}", task.getId(), job.getId()); return false; @@ -1512,8 +1513,10 @@ public class SimilarAsinTaskService { return COZE_STATUS_SUBMITTED.equals(existing.getCozeStatus()) || COZE_STATUS_RUNNING.equals(existing.getCozeStatus()); } + SimilarAsinCozeClient.CozeCredentialRef credential = cozeClient.nextCredential(); try { - SimilarAsinCozeClient.CozeSubmitResponse submit = submitCozeWorkflowThrottled(batchRows, prompt, apiKey); + SimilarAsinCozeClient.CozeSubmitResponse submit = submitCozeWorkflowThrottled( + batchRows, prompt, apiKey, credential, true); if (submit.immediateData() != null && !submit.immediateData().isBlank()) { List cozeRows = cozeClient.mergeRowsFromDataText(batchRows, submit.immediateData()); String emptyResultMessage = emptyCozeResultMessage(cozeRows, batchRows.size()); @@ -1532,14 +1535,22 @@ public class SimilarAsinTaskService { return false; } saveCozeBatchState(task, result, job, chunk, batchRows, batchScopeKey, batchScopeHash, - batchIndex, batchTotal, submit.executeId()); - log.info("[similar-asin] coze async submitted taskId={} jobId={} chunk={} batch={}/{} executeId={}", - task.getId(), job.getId(), chunk.getChunkIndex(), batchIndex, batchTotal, submit.executeId()); + batchIndex, batchTotal, submit.executeId(), submit.credentialName()); + log.info("[similar-asin] coze async submitted taskId={} jobId={} chunk={} batch={}/{} credential={} executeId={}", + task.getId(), job.getId(), chunk.getChunkIndex(), batchIndex, batchTotal, + submit.credentialName(), submit.executeId()); return true; } catch (Exception ex) { String message = firstNonBlank(ex.getMessage(), "Coze submit failed"); log.warn("[similar-asin] coze async submit failed taskId={} jobId={} chunk={} batch={}/{} err={}", task.getId(), job.getId(), chunk.getChunkIndex(), batchIndex, batchTotal, message); + if (isCozeThrottleLockTimeout(message)) { + savePendingCozeBatchState(task, result, job, chunk, batchRows, batchScopeKey, batchScopeHash, + batchIndex, batchTotal, message, credential.name()); + taskFileJobService.touchRunning(job.getId()); + touchJavaSideTaskActivity(task.getId()); + return true; + } mergeCozeRowsIntoChunk(task, chunk.getScopeHash(), chunk.getChunkIndex(), @@ -1549,6 +1560,65 @@ public class SimilarAsinTaskService { } } + private boolean isCozeThrottleLockTimeout(String message) { + return normalize(message).toLowerCase(Locale.ROOT).contains("coze submit throttle lock timeout"); + } + + private void savePendingCozeBatchState(FileTaskEntity task, + FileResultEntity result, + TaskFileJobEntity job, + TaskChunkEntity chunk, + List batchRows, + String batchScopeKey, + String batchScopeHash, + int batchIndex, + int batchTotal, + String pendingReason, + String credentialName) { + LocalDateTime now = LocalDateTime.now(); + CozeBatchContext context = new CozeBatchContext( + job.getId(), + result.getId(), + chunk.getScopeHash(), + chunk.getChunkIndex(), + batchIndex, + batchTotal, + currentInstanceId(), + 0, + credentialName + ); + String batchPayload = writeJson(batchRows, "serialize pending coze batch payload failed"); + String storedBatchPayload = transientPayloadStorageService.storeParsedPayloadFast( + MODULE_TYPE, task.getId(), batchScopeHash, batchPayload, true); + TaskScopeStateEntity state = new TaskScopeStateEntity(); + state.setTaskId(task.getId()); + state.setModuleType(MODULE_TYPE); + state.setScopeKey(batchScopeKey); + state.setScopeHash(batchScopeHash); + state.setParsedPayloadJson(storedBatchPayload); + state.setStateJson(writeJson(context, "serialize pending coze batch context failed")); + state.setCozeStatus(COZE_STATUS_RUNNING); + state.setCozeSubmittedAt(now); + state.setCozeLastPolledAt(null); + state.setCozeAttemptCount(0); + state.setCozeError(firstNonBlank(pendingReason, "Coze submit queued by throttle")); + state.setChunkTotal(batchTotal); + state.setReceivedChunkCount(batchIndex); + state.setCompleted(0); + state.setCreatedAt(now); + state.setUpdatedAt(now); + try { + taskScopeStateMapper.insert(state); + touchJavaSideTaskActivity(task.getId()); + log.info("[similar-asin] coze async submit queued by throttle taskId={} jobId={} chunk={} rows={} batch={}/{}", + task.getId(), job.getId(), chunk.getChunkIndex(), batchRows.size(), batchIndex, batchTotal); + } catch (DuplicateKeyException ex) { + transientPayloadStorageService.deletePayloadIfPresent(storedBatchPayload); + log.info("[similar-asin] duplicate pending coze batch state ignored taskId={} scope={}", + task.getId(), batchScopeKey); + } + } + private void saveCozeBatchState(FileTaskEntity task, FileResultEntity result, TaskFileJobEntity job, @@ -1558,7 +1628,8 @@ public class SimilarAsinTaskService { String batchScopeHash, int batchIndex, int batchTotal, - String executeId) { + String executeId, + String credentialName) { LocalDateTime now = LocalDateTime.now(); CozeBatchContext context = new CozeBatchContext( job.getId(), @@ -1568,7 +1639,8 @@ public class SimilarAsinTaskService { batchIndex, batchTotal, currentInstanceId(), - 0 + 0, + credentialName ); String batchPayload = writeJson(batchRows, "serialize coze batch payload failed"); String storedBatchPayload = transientPayloadStorageService.storeParsedPayloadFast( @@ -1602,6 +1674,10 @@ public class SimilarAsinTaskService { private void pollPendingCozeState(Long stateId) { TaskScopeStateEntity lockState = taskScopeStateMapper.selectById(stateId); if (lockState == null || lockState.getCozeExecuteId() == null || lockState.getCozeExecuteId().isBlank()) { + if (lockState != null && lockState.getCozeExecuteId() == null + && (COZE_STATUS_SUBMITTED.equals(lockState.getCozeStatus()) || COZE_STATUS_RUNNING.equals(lockState.getCozeStatus()))) { + retryPendingCozeSubmitState(lockState); + } return; } if (!isCozeStateOwnedByCurrentInstance(lockState)) { @@ -1621,6 +1697,10 @@ public class SimilarAsinTaskService { private void pollPendingCozeStateLocked(Long stateId) { TaskScopeStateEntity state = taskScopeStateMapper.selectById(stateId); if (state == null || state.getCozeExecuteId() == null || state.getCozeExecuteId().isBlank()) { + if (state != null && state.getCozeExecuteId() == null + && (COZE_STATUS_SUBMITTED.equals(state.getCozeStatus()) || COZE_STATUS_RUNNING.equals(state.getCozeStatus()))) { + retryPendingCozeSubmitState(state); + } return; } if (!(COZE_STATUS_SUBMITTED.equals(state.getCozeStatus()) || COZE_STATUS_RUNNING.equals(state.getCozeStatus()))) { @@ -1644,7 +1724,9 @@ public class SimilarAsinTaskService { } taskFileJobService.touchRunning(context.jobId()); try { - SimilarAsinCozeClient.CozePollResponse poll = cozeClient.pollWorkflow(state.getCozeExecuteId()); + SimilarAsinCozeClient.CozePollResponse poll = cozeClient.pollWorkflow( + state.getCozeExecuteId(), + cozeClient.credentialByName(context.credentialName())); if (!poll.hasPayload() && !poll.isFinished() && !isCozeStateTimedOut(state)) { updateCozeStateRunning(state, null); return; @@ -1725,7 +1807,8 @@ public class SimilarAsinTaskService { } try { SimilarAsinCozeClient.CozeSubmitResponse submit = - submitCozeWorkflowThrottled(batchRows, readAiPrompt(task), readApiKey(task)); + submitCozeWorkflowThrottled(batchRows, readAiPrompt(task), readApiKey(task), + cozeClient.credentialByName(context.credentialName()), false); Map> allRowsByBaseId = loadAllRowsByBaseId(task); if (submit.immediateData() != null && !submit.immediateData().isBlank()) { List cozeRows = @@ -1774,23 +1857,54 @@ public class SimilarAsinTaskService { private SimilarAsinCozeClient.CozeSubmitResponse submitCozeWorkflowThrottled( List rows, String prompt, - String apiKey) throws Exception { - DistributedJobLockService.LockHandle lockHandle = acquireCozeSubmitLock(); - if (lockHandle == null) { - throw new IllegalStateException("Coze submit throttle lock timeout"); - } - try (lockHandle) { - SimilarAsinCozeClient.CozeSubmitResponse response = cozeClient.submitWorkflow(rows, prompt, apiKey); - sleepQuietly(COZE_SUBMIT_MIN_INTERVAL_MILLIS); - return response; + String apiKey, + SimilarAsinCozeClient.CozeCredentialRef credential, + boolean allowCredentialFallback) throws Exception { + int attempts = allowCredentialFallback ? Math.max(1, cozeClient.configuredCredentialCount()) : 1; + SimilarAsinCozeClient.CozeCredentialRef currentCredential = + credential == null ? cozeClient.nextCredential() : credential; + Exception lastFailure = null; + for (int i = 0; i < attempts; i++) { + DistributedJobLockService.LockHandle lockHandle = acquireCozeSubmitLock(currentCredential); + if (lockHandle == null) { + lastFailure = new IllegalStateException("Coze submit throttle lock timeout"); + currentCredential = cozeClient.nextCredential(); + continue; + } + CozeCredentialPoolService.BorrowedCredential borrowedCredential = + cozeCredentialPoolService.borrow(MODULE_TYPE, toPoolCredential(currentCredential)); + if (borrowedCredential == null) { + lockHandle.close(); + lastFailure = new IllegalStateException("Coze credential concurrency limit reached"); + currentCredential = cozeClient.nextCredential(); + continue; + } + try (lockHandle; borrowedCredential) { + return cozeClient.submitWorkflow(rows, prompt, apiKey, currentCredential); + } finally { + sleepQuietly(COZE_SUBMIT_MIN_INTERVAL_MILLIS); + } } + throw lastFailure == null ? new IllegalStateException("Coze submit failed") : lastFailure; } - private DistributedJobLockService.LockHandle acquireCozeSubmitLock() { + private CozeCredentialPoolService.CozeCredential toPoolCredential(SimilarAsinCozeClient.CozeCredentialRef credential) { + if (credential == null) { + return null; + } + return new CozeCredentialPoolService.CozeCredential( + credential.name(), + credential.workflowId(), + credential.token(), + credential.maxConcurrent()); + } + + private DistributedJobLockService.LockHandle acquireCozeSubmitLock(SimilarAsinCozeClient.CozeCredentialRef credential) { long deadline = System.currentTimeMillis() + COZE_SUBMIT_LOCK_WAIT_MILLIS; + String credentialName = credential == null ? "default" : firstNonBlank(credential.name(), "default"); while (System.currentTimeMillis() <= deadline) { DistributedJobLockService.LockHandle lockHandle = - distributedJobLockService.tryLock("similar-asin:coze-submit", COZE_SUBMIT_LOCK_TTL); + distributedJobLockService.tryLock("similar-asin:coze-submit:" + credentialName, COZE_SUBMIT_LOCK_TTL); if (lockHandle != null) { return lockHandle; } @@ -1836,14 +1950,16 @@ public class SimilarAsinTaskService { int partIndex = 1; for (List partRows : partitions) { SimilarAsinCozeClient.CozeSubmitResponse submit = - submitCozeWorkflowThrottled(partRows, readAiPrompt(task), readApiKey(task)); + submitCozeWorkflowThrottled(partRows, readAiPrompt(task), readApiKey(task), + cozeClient.credentialByName(context.credentialName()), false); if (submit.immediateData() != null && !submit.immediateData().isBlank()) { List cozeRows = cozeClient.mergeRowsFromDataText(partRows, submit.immediateData()); mergeCozeRowsIntoChunk(task, context.chunkScopeHash(), context.chunkIndex(), cozeRows, allRowsByBaseId); submittedAny = true; } else if (submit.executeId() != null && !submit.executeId().isBlank()) { - saveSplitRetryCozeBatchState(state, context, partRows, partIndex, partitions.size(), retryCount, submit.executeId()); + saveSplitRetryCozeBatchState(state, context, partRows, partIndex, partitions.size(), retryCount, + submit.executeId(), submit.credentialName()); submittedAny = true; } partIndex++; @@ -1871,7 +1987,8 @@ public class SimilarAsinTaskService { int partIndex, int partTotal, int retryCount, - String executeId) { + String executeId, + String credentialName) { String scopeKey = parent.getScopeKey() + ":split:" + retryCount + ":" + partIndex; String scopeHash = DigestUtil.sha256Hex(scopeKey); CozeBatchContext context = new CozeBatchContext( @@ -1882,7 +1999,8 @@ public class SimilarAsinTaskService { partIndex, partTotal, parentContext.ownerInstanceId(), - retryCount + retryCount, + firstNonBlank(credentialName, parentContext.credentialName()) ); LocalDateTime now = LocalDateTime.now(); String batchPayload = writeJson(batchRows, "serialize split coze batch payload failed"); @@ -1926,6 +2044,130 @@ public class SimilarAsinTaskService { || normalized.contains("\u8c03\u7528\u8d85\u65f6"); } + private void retryPendingCozeSubmitState(TaskScopeStateEntity state) { + if (state == null || state.getId() == null) { + return; + } + if (!tryClaimCozeStateForPoll(state)) { + log.info("[similar-asin] coze submit retry skipped by claim guard taskId={} stateId={} lastPolledAt={}", + state.getTaskId(), state.getId(), state.getCozeLastPolledAt()); + return; + } + CozeBatchContext context = readCozeBatchContext(state); + if (context == null || context.jobId() == null || context.resultId() == null) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze pending submit context missing"); + return; + } + List batchRows = readCozeBatchRows(state); + if (batchRows.isEmpty()) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze pending submit payload missing"); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + FileTaskEntity task = fileTaskMapper.selectById(state.getTaskId()); + if (task == null || !MODULE_TYPE.equals(task.getModuleType())) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze pending submit task missing"); + return; + } + TaskChunkEntity currentChunk = taskChunkMapper.selectOne(new LambdaQueryWrapper() + .eq(TaskChunkEntity::getTaskId, task.getId()) + .eq(TaskChunkEntity::getModuleType, MODULE_TYPE) + .eq(TaskChunkEntity::getScopeHash, context.chunkScopeHash()) + .eq(TaskChunkEntity::getChunkIndex, context.chunkIndex()) + .last("limit 1")); + Map currentRows = readChunkRows(currentChunk); + List currentBatchRows = batchRows.stream() + .map(row -> currentRows.get(rowKey(row))) + .filter(Objects::nonNull) + .toList(); + if (currentBatchRows.size() == batchRows.size() + && currentBatchRows.stream().allMatch(this::hasResolvedCozeFields)) { + markCozeStateTerminal(state, COZE_STATUS_DONE, "Coze rows already resolved by another batch"); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + log.info("[similar-asin] coze pending submit skipped because rows already resolved taskId={} stateId={} jobId={} rows={}", + state.getTaskId(), state.getId(), context.jobId(), batchRows.size()); + return; + } + try { + taskFileJobService.touchRunning(context.jobId()); + SimilarAsinCozeClient.CozeSubmitResponse submit = + submitCozeWorkflowThrottled(batchRows, readAiPrompt(task), readApiKey(task), + cozeClient.credentialByName(context.credentialName()), false); + Map> allRowsByBaseId = loadAllRowsByBaseId(task); + if (submit.immediateData() != null && !submit.immediateData().isBlank()) { + List cozeRows = + cozeClient.mergeRowsFromDataText(batchRows, submit.immediateData()); + String emptyResultMessage = emptyCozeResultMessage(cozeRows, batchRows.size()); + if (!emptyResultMessage.isBlank()) { + throw new IllegalStateException(emptyResultMessage); + } + mergeCozeRowsIntoChunk(task, context.chunkScopeHash(), context.chunkIndex(), cozeRows, allRowsByBaseId); + markCozeStateTerminal(state, COZE_STATUS_DONE, null); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + if (submit.executeId() == null || submit.executeId().isBlank()) { + markCozeStateTerminal(state, COZE_STATUS_FAILED, "Coze async execute_id missing"); + mergeCozeRowsIntoChunk(task, + context.chunkScopeHash(), + context.chunkIndex(), + cozeClient.markRowsFailed(batchRows, "Coze async execute_id missing"), + allRowsByBaseId); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + LocalDateTime now = LocalDateTime.now(); + taskScopeStateMapper.update(null, new LambdaUpdateWrapper() + .eq(TaskScopeStateEntity::getId, state.getId()) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .set(TaskScopeStateEntity::getCozeExecuteId, submit.executeId()) + .set(TaskScopeStateEntity::getCozeStatus, COZE_STATUS_SUBMITTED) + .set(TaskScopeStateEntity::getCozeSubmittedAt, now) + .set(TaskScopeStateEntity::getCozeLastPolledAt, null) + .set(TaskScopeStateEntity::getCozeError, null) + .set(TaskScopeStateEntity::getUpdatedAt, now)); + touchJavaSideTaskActivity(state.getTaskId()); + log.info("[similar-asin] coze pending submit retried taskId={} stateId={} jobId={} rows={} executeId={}", + state.getTaskId(), state.getId(), context.jobId(), batchRows.size(), submit.executeId()); + } catch (Exception ex) { + String message = firstNonBlank(ex.getMessage(), "Coze pending submit retry failed"); + log.warn("[similar-asin] coze pending submit retry failed taskId={} stateId={} jobId={} rows={} err={}", + state.getTaskId(), state.getId(), context.jobId(), batchRows.size(), message); + if (isCozeThrottleLockTimeout(message)) { + keepPendingCozeSubmitState(state, message); + return; + } + int nextAttemptCount = cozeAttemptCount(state) + 1; + if (nextAttemptCount >= MAX_COZE_SUBMIT_RETRY_COUNT) { + Map> allRowsByBaseId = loadAllRowsByBaseId(task); + String finalMessage = message + " after " + nextAttemptCount + " submit attempts"; + mergeCozeRowsIntoChunk(task, + context.chunkScopeHash(), + context.chunkIndex(), + cozeClient.markRowsFailed(batchRows, finalMessage), + allRowsByBaseId); + markCozeStateTerminal(state, COZE_STATUS_FAILED, finalMessage); + maybeFinalizeCozeJobLocked(state.getTaskId(), context); + return; + } + updateCozeStateRunning(state, message); + } + } + + private void keepPendingCozeSubmitState(TaskScopeStateEntity state, String error) { + int updated = taskScopeStateMapper.update(null, new LambdaUpdateWrapper() + .eq(TaskScopeStateEntity::getId, state.getId()) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .set(TaskScopeStateEntity::getCozeStatus, COZE_STATUS_RUNNING) + .set(TaskScopeStateEntity::getCozeExecuteId, null) + .set(TaskScopeStateEntity::getCozeLastPolledAt, LocalDateTime.now()) + .set(TaskScopeStateEntity::getCozeError, error) + .set(TaskScopeStateEntity::getUpdatedAt, LocalDateTime.now())); + if (updated > 0) { + touchJavaSideTaskActivity(state.getTaskId()); + } + } + private boolean isRetryableCozeFailure(String failureMessage) { String normalized = normalize(failureMessage).toLowerCase(Locale.ROOT); return normalized.contains("rate limit") @@ -2173,7 +2415,8 @@ public class SimilarAsinTaskService { context.batchIndex(), context.batchTotal(), context.ownerInstanceId(), - submitRetryCount + submitRetryCount, + context.credentialName() ); } @@ -2338,6 +2581,12 @@ public class SimilarAsinTaskService { } int safeTotal = Math.max(1, total); int safeCompleted = Math.max(0, Math.min(completed, safeTotal)); + TaskProgressSnapshotEntity existing = taskProgressSnapshotService.find(task.getId(), MODULE_TYPE); + int displayPercent = calculateDisplayProgressPercent(safeCompleted, safeTotal, job, LocalDateTime.now()); + int previousDisplayPercent = calculateSnapshotDisplayPercent(existing, job); + if (previousDisplayPercent > displayPercent && safeCompleted < safeTotal) { + displayPercent = previousDisplayPercent; + } taskProgressSnapshotService.save( task.getId(), MODULE_TYPE, @@ -2347,10 +2596,57 @@ public class SimilarAsinTaskService { 0, job.getScopeKey(), message, - Map.of("phase", "RESULT_FILE", "jobId", job.getId()) + Map.of("phase", "RESULT_FILE", "jobId", job.getId(), "displayPercent", displayPercent) ); } + private int calculateDisplayProgressPercent(int current, + int total, + TaskFileJobEntity job, + LocalDateTime baseTime) { + if (total <= 0) { + return 0; + } + current = Math.max(0, Math.min(current, total)); + int percent = Math.max(1, Math.min(99, (int) Math.floor(current * 100.0 / total))); + if (job != null && STATUS_RUNNING.equals(job.getStatus())) { + long elapsedSeconds = baseTime == null ? 0 : Math.max(0, Duration.between(baseTime, LocalDateTime.now()).getSeconds()); + if (current <= 0) { + int firstRealProgressPercent = Math.max(1, Math.min(99, (int) Math.floor(100.0 / total))); + int waitingCap = Math.max(8, Math.min(35, firstRealProgressPercent - 1)); + percent = Math.max(percent, Math.min(waitingCap, 8 + (int) (elapsedSeconds / 6))); + } else if (current < total) { + percent = Math.max(percent, Math.min(92, percent + (int) (elapsedSeconds / 10))); + } + } + return percent; + } + + private int calculateSnapshotDisplayPercent(TaskProgressSnapshotEntity snapshot, TaskFileJobEntity job) { + if (snapshot == null) { + return 0; + } + int total = snapshot.getTotalCount() == null ? 0 : snapshot.getTotalCount(); + int current = snapshot.getSuccessCount() == null ? 0 : snapshot.getSuccessCount(); + int percent = total <= 0 ? 0 : calculateDisplayProgressPercent(current, total, job, snapshot.getUpdatedAt()); + return Math.max(percent, extractSnapshotDisplayPercent(snapshot)); + } + + private int extractSnapshotDisplayPercent(TaskProgressSnapshotEntity snapshot) { + if (snapshot == null || snapshot.getSnapshotJson() == null || snapshot.getSnapshotJson().isBlank()) { + return 0; + } + try { + JsonNode displayPercent = objectMapper.readTree(snapshot.getSnapshotJson()).path("displayPercent"); + if (!displayPercent.isNumber()) { + return 0; + } + return Math.max(0, Math.min(100, displayPercent.asInt())); + } catch (Exception ignored) { + return 0; + } + } + public void cleanupResultFileJob(TaskFileJobEntity job) { if (job == null || job.getTaskId() == null) { return; @@ -2379,28 +2675,195 @@ public class SimilarAsinTaskService { if (!outputDir.exists() && !outputDir.mkdirs()) { throw new BusinessException("创建结果目录失败"); } - String filename = safeFileStem(result.getSourceFilename()) + "-result.xlsx"; - String tempFilename = safeFileStem(result.getSourceFilename()) - + "-" + task.getId() - + "-" + result.getId() - + "-" + UUID.randomUUID() - + "-result.xlsx"; - File xlsx = new File(outputDir, tempFilename); + List sourceRows = splitRowsBySourceFile(parsed, parsed.getAllItems(), result.getSourceFilename()); + List workbooks = new ArrayList<>(); + File zip = null; try { - writeResultWorkbook(xlsx, parsed, resultMap); - String objectKey = ossStorageService.uploadResultFile(xlsx, MODULE_TYPE); + for (SourceRows item : sourceRows) { + String filename = safeFileStem(item.sourceFilename()) + "-result.xlsx"; + String tempFilename = safeFileStem(item.sourceFilename()) + + "-" + task.getId() + + "-" + result.getId() + + "-" + UUID.randomUUID() + + "-result.xlsx"; + File xlsx = new File(outputDir, tempFilename); + writeResultWorkbook(xlsx, item.rows(), resultMap); + workbooks.add(new SourceResultWorkbook(xlsx, filename, item.rows().size())); + } + if (workbooks.isEmpty()) { + throw new BusinessException("相似ASIN检测结果为空,请稍后重试生成结果文件"); + } + + File uploadFile; + String filename; + String contentType; + if (workbooks.size() == 1) { + SourceResultWorkbook workbook = workbooks.get(0); + uploadFile = workbook.file(); + filename = workbook.filename(); + contentType = CONTENT_TYPE_XLSX; + } else { + filename = safeFileStem(result.getSourceFilename()) + "-result.zip"; + String tempFilename = safeFileStem(result.getSourceFilename()) + + "-" + task.getId() + + "-" + result.getId() + + "-" + UUID.randomUUID() + + "-result.zip"; + zip = new File(outputDir, tempFilename); + packageResultWorkbooksAsZip(zip, workbooks); + uploadFile = zip; + contentType = CONTENT_TYPE_ZIP; + } + + String objectKey = ossStorageService.uploadResultFile(uploadFile, MODULE_TYPE); result.setResultFilename(filename); result.setResultFileUrl(objectKey); - result.setResultFileSize(xlsx.length()); - result.setResultContentType(CONTENT_TYPE_XLSX); + result.setResultFileSize(uploadFile.length()); + result.setResultContentType(contentType); result.setRowCount(parsed.getAllItems().size()); } finally { - if (xlsx.exists() && !xlsx.delete()) { - log.warn("[similar-asin] delete temp xlsx failed file={}", xlsx); + for (SourceResultWorkbook workbook : workbooks) { + if (workbook.file().exists() && !workbook.file().delete()) { + log.warn("[similar-asin] delete temp xlsx failed file={}", workbook.file()); + } + } + if (zip != null && zip.exists() && !zip.delete()) { + log.warn("[similar-asin] delete temp zip failed file={}", zip); } } } + private List listOwnedPendingCozeStates() { + Map merged = new LinkedHashMap<>(); + for (TaskScopeStateEntity state : queryOwnedPendingCozeStates(false, 50)) { + if (state != null && state.getId() != null) { + merged.put(state.getId(), state); + } + } + for (TaskScopeStateEntity state : queryOwnedPendingCozeStates(true, 50)) { + if (state != null && state.getId() != null) { + merged.putIfAbsent(state.getId(), state); + } + } + return new ArrayList<>(merged.values()); + } + + private List queryOwnedPendingCozeStates(boolean oldestFirst, int limit) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper() + .eq(TaskScopeStateEntity::getModuleType, MODULE_TYPE) + .in(TaskScopeStateEntity::getCozeStatus, List.of(COZE_STATUS_SUBMITTED, COZE_STATUS_RUNNING)) + .and(query -> query + .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) IS NULL") + .or() + .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) = ''") + .or() + .apply("JSON_UNQUOTE(JSON_EXTRACT(state_json, '$.ownerInstanceId')) = {0}", currentInstanceId())) + .last("limit " + Math.max(1, Math.min(limit, 100))); + if (oldestFirst) { + wrapper.orderByAsc(TaskScopeStateEntity::getUpdatedAt); + } else { + wrapper.orderByDesc(TaskScopeStateEntity::getUpdatedAt); + } + List states = taskScopeStateMapper.selectList(wrapper); + return states == null ? List.of() : states; + } + + private List splitRowsBySourceFile(SimilarAsinParsedPayloadDto parsed, + List rows, + String fallbackFilename) { + String defaultFilename = firstNonBlank(fallbackFilename, "similar-asin"); + Map builders = new LinkedHashMap<>(); + if (parsed != null && parsed.getSourceFiles() != null) { + for (SimilarAsinSourceFileDto sourceFile : parsed.getSourceFiles()) { + if (sourceFile == null) { + continue; + } + String sourceFileKey = normalize(sourceFile.getFileKey()); + if (sourceFileKey.isBlank()) { + continue; + } + builders.putIfAbsent(sourceFileKey, + new SourceRowsBuilder(sourceFileKey, firstNonBlank(sourceFile.getOriginalFilename(), defaultFilename))); + } + } + + for (SimilarAsinParsedRowVo row : rows == null ? List.of() : rows) { + if (row == null) { + continue; + } + String sourceFileKey = normalize(row.getSourceFileKey()); + if (sourceFileKey.isBlank()) { + sourceFileKey = normalize(row.getSourceFilename()); + } + if (sourceFileKey.isBlank()) { + sourceFileKey = "__default__"; + } + SourceRowsBuilder builder = builders.computeIfAbsent(sourceFileKey, + key -> new SourceRowsBuilder(key, firstNonBlank(row.getSourceFilename(), defaultFilename))); + if (builder.sourceFilename().isBlank() || Objects.equals(builder.sourceFilename(), defaultFilename)) { + builder.setSourceFilename(firstNonBlank(row.getSourceFilename(), defaultFilename)); + } + builder.rows().add(row); + } + + return builders.values().stream() + .filter(builder -> !builder.rows().isEmpty()) + .map(builder -> new SourceRows(builder.sourceFileKey(), firstNonBlank(builder.sourceFilename(), defaultFilename), builder.rows())) + .toList(); + } + + private void packageResultWorkbooksAsZip(File zip, List workbooks) { + Set entryNames = new LinkedHashSet<>(); + try (ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zip))) { + byte[] buffer = new byte[8192]; + for (SourceResultWorkbook workbook : workbooks) { + writeResultZipEntry(zos, buffer, workbook.file(), uniqueZipEntryName(workbook.filename(), entryNames)); + } + } catch (IOException ex) { + throw new BusinessException("生成相似ASIN检测结果压缩包失败"); + } + } + + private void writeResultZipEntry(ZipOutputStream zos, + byte[] buffer, + File file, + String entryName) throws IOException { + zos.putNextEntry(new ZipEntry(entryName)); + try (FileInputStream inputStream = new FileInputStream(file)) { + int len; + while ((len = inputStream.read(buffer)) > 0) { + zos.write(buffer, 0, len); + } + } + zos.closeEntry(); + } + + private String uniqueZipEntryName(String filename, Set entryNames) { + String safeFilename = normalizeZipFilename(filename); + if (entryNames.add(safeFilename)) { + return safeFilename; + } + int dotIndex = safeFilename.lastIndexOf('.'); + String stem = dotIndex > 0 ? safeFilename.substring(0, dotIndex) : safeFilename; + String extension = dotIndex > 0 ? safeFilename.substring(dotIndex) : ""; + int index = 2; + while (true) { + String candidate = stem + "(" + index + ")" + extension; + if (entryNames.add(candidate)) { + return candidate; + } + index++; + } + } + + private String normalizeZipFilename(String filename) { + String normalized = firstNonBlank(filename, "similar-asin-result.xlsx").replace('\\', '/'); + while (normalized.startsWith("/")) { + normalized = normalized.substring(1); + } + return normalized.isBlank() ? "similar-asin-result.xlsx" : normalized; + } + private Map loadPersistedResultRows(Long taskId) { Map result = new LinkedHashMap<>(); List chunks = taskChunkMapper.selectList(new LambdaQueryWrapper() @@ -2450,7 +2913,9 @@ public class SimilarAsinTaskService { } } - private void writeResultWorkbook(File xlsx, SimilarAsinParsedPayloadDto parsed, Map resultMap) { + private void writeResultWorkbook(File xlsx, + List rowsToWrite, + Map resultMap) { try (SXSSFWorkbook workbook = new SXSSFWorkbook(200); FileOutputStream fos = new FileOutputStream(xlsx)) { Sheet sheet = workbook.createSheet("相似asin检测"); CellStyle headerStyle = workbook.createCellStyle(); @@ -2467,7 +2932,7 @@ public class SimilarAsinTaskService { } int rowIndex = 1; - for (SimilarAsinParsedRowVo parsedRow : parsed.getAllItems()) { + for (SimilarAsinParsedRowVo parsedRow : rowsToWrite == null ? List.of() : rowsToWrite) { SimilarAsinResultRowDto resultRow = findResultRow(parsedRow, resultMap); Row row = sheet.createRow(rowIndex++); int col = 0; @@ -2807,23 +3272,25 @@ public class SimilarAsinTaskService { } int cozeCompleted = countCompletedCozeStates(taskId); int cozePending = countPendingCozeStates(taskId); + TaskProgressSnapshotEntity snapshot = taskProgressSnapshotService.find(taskId, MODULE_TYPE); if (job != null && STATUS_RUNNING.equals(job.getStatus()) && cozePending > 0) { int total = Math.max(1, cozeCompleted + cozePending); int current = Math.max(0, Math.min(cozeCompleted, total)); vo.setFileProgressCurrent(current); vo.setFileProgressTotal(total); - vo.setFileProgressPercent(Math.max(0, Math.min(100, (int) Math.floor(current * 100.0 / total)))); + int percent = calculateDisplayProgressPercent(current, total, job, snapshot == null ? null : snapshot.getUpdatedAt()); + percent = Math.max(percent, calculateSnapshotDisplayPercent(snapshot, job)); + vo.setFileProgressPercent(Math.min(99, percent)); vo.setFileProgressMessage("Coze 已完成 " + current + "/" + total + ",等待回流"); return; } - TaskProgressSnapshotEntity snapshot = taskProgressSnapshotService.find(taskId, MODULE_TYPE); if (snapshot == null) { if (job != null && STATUS_RUNNING.equals(job.getStatus()) && cozeCompleted + cozePending > 0) { int total = Math.max(1, cozeCompleted + cozePending); int current = Math.max(0, Math.min(cozeCompleted, total)); vo.setFileProgressCurrent(current); vo.setFileProgressTotal(total); - vo.setFileProgressPercent(Math.max(0, Math.min(100, (int) Math.floor(current * 100.0 / total)))); + vo.setFileProgressPercent(Math.min(99, calculateDisplayProgressPercent(current, total, job, job.getUpdatedAt()))); vo.setFileProgressMessage(cozePending > 0 ? "Coze 已完成 " + current + "/" + total + ",等待回流" : "Coze 处理中"); @@ -2835,8 +3302,10 @@ public class SimilarAsinTaskService { if (total <= 0) { return; } - current = Math.max(0, Math.min(current, total)); - int percent = Math.max(0, Math.min(100, (int) Math.floor(current * 100.0 / total))); + LocalDateTime baseTime = snapshot.getUpdatedAt() != null ? snapshot.getUpdatedAt() : (job == null ? null : job.getUpdatedAt()); + int percent = calculateDisplayProgressPercent(current, total, job, baseTime); + percent = Math.max(percent, extractSnapshotDisplayPercent(snapshot)); + percent = Boolean.TRUE.equals(vo.getFileReady()) ? 100 : Math.min(99, percent); vo.setFileProgressCurrent(current); vo.setFileProgressTotal(total); vo.setFileProgressPercent(percent); @@ -3138,7 +3607,45 @@ public class SimilarAsinTaskService { Integer batchIndex, Integer batchTotal, String ownerInstanceId, - Integer submitRetryCount) { + Integer submitRetryCount, + String credentialName) { + } + + private static class SourceRowsBuilder { + private final String sourceFileKey; + private String sourceFilename; + private final List rows = new ArrayList<>(); + + private SourceRowsBuilder(String sourceFileKey, String sourceFilename) { + this.sourceFileKey = sourceFileKey; + this.sourceFilename = sourceFilename; + } + + private String sourceFileKey() { + return sourceFileKey; + } + + private String sourceFilename() { + return sourceFilename; + } + + private void setSourceFilename(String sourceFilename) { + this.sourceFilename = sourceFilename; + } + + private List rows() { + return rows; + } + } + + private record SourceRows(String sourceFileKey, + String sourceFilename, + List rows) { + } + + private record SourceResultWorkbook(File file, + String filename, + int rowCount) { } private record ParsedWorkbook(int totalRows, int droppedRows, List headers, List allRows) { diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobDispatchCoordinator.java b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobDispatchCoordinator.java index 51e4a2c..f5b08a2 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobDispatchCoordinator.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobDispatchCoordinator.java @@ -4,6 +4,8 @@ import com.nanri.aiimage.modules.task.model.dto.TaskFileJobDispatchEvent; import com.nanri.aiimage.modules.task.model.dto.TaskFileJobMessage; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.core.task.TaskExecutor; import org.springframework.stereotype.Component; import org.springframework.transaction.event.TransactionPhase; import org.springframework.transaction.event.TransactionalEventListener; @@ -15,6 +17,8 @@ public class TaskFileJobDispatchCoordinator { private final TaskFileJobPublisher taskFileJobPublisher; private final TaskFileJobLocalDispatcher taskFileJobLocalDispatcher; + @Qualifier("taskFileJobDispatchExecutor") + private final TaskExecutor taskFileJobDispatchExecutor; @TransactionalEventListener(phase = TransactionPhase.AFTER_COMMIT, fallbackExecution = true) public void onTaskFileJobDispatch(TaskFileJobDispatchEvent event) { @@ -29,6 +33,16 @@ public class TaskFileJobDispatchCoordinator { message.setScopeKey(event.scopeKey()); message.setJobType(event.jobType()); message.setCreatedAt(event.createdAt()); + try { + taskFileJobDispatchExecutor.execute(() -> dispatchAfterCommit(event, message)); + } catch (RuntimeException ex) { + log.warn("[task-file-job] dispatch executor rejected after commit jobId={} taskId={} moduleType={} msg={}", + event.jobId(), event.taskId(), event.moduleType(), ex.getMessage(), ex); + dispatchAfterCommit(event, message); + } + } + + private void dispatchAfterCommit(TaskFileJobDispatchEvent event, TaskFileJobMessage message) { boolean published = taskFileJobPublisher.publish(message); if (published) { return; diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobPublisher.java b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobPublisher.java index 3d06a59..c389794 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobPublisher.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobPublisher.java @@ -8,12 +8,17 @@ import org.springframework.beans.factory.ObjectProvider; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.atomic.AtomicLong; + @Slf4j @Service @RequiredArgsConstructor public class TaskFileJobPublisher { private final ObjectProvider rocketMQTemplateProvider; + private final AtomicInteger consecutiveFailures = new AtomicInteger(); + private final AtomicLong circuitOpenUntilMillis = new AtomicLong(); @Value("${aiimage.result-file-job.mq-enabled:false}") private boolean mqEnabled; @@ -21,6 +26,15 @@ public class TaskFileJobPublisher { @Value("${aiimage.result-file-job.topic:aiimage-result-file-job}") private String topic; + @Value("${aiimage.result-file-job.mq-send-timeout-ms:1000}") + private long mqSendTimeoutMillis; + + @Value("${aiimage.result-file-job.mq-failure-threshold:3}") + private int mqFailureThreshold; + + @Value("${aiimage.result-file-job.mq-circuit-open-ms:60000}") + private long mqCircuitOpenMillis; + public boolean publish(TaskFileJobMessage message) { if (message == null || message.getJobId() == null) { return false; @@ -30,6 +44,13 @@ public class TaskFileJobPublisher { message.getJobId(), message.getTaskId(), message.getModuleType()); return false; } + long now = System.currentTimeMillis(); + long openUntil = circuitOpenUntilMillis.get(); + if (openUntil > now) { + log.info("[task-file-job] RocketMQ publish circuit open, fallback to local dispatcher/scheduled worker jobId={} taskId={} moduleType={} remainingMs={}", + message.getJobId(), message.getTaskId(), message.getModuleType(), openUntil - now); + return false; + } RocketMQTemplate template = rocketMQTemplateProvider.getIfAvailable(); if (template == null) { log.warn("[task-file-job] RocketMQTemplate unavailable, jobId={} taskId={} moduleType={}", @@ -37,13 +58,25 @@ public class TaskFileJobPublisher { return false; } try { - template.convertAndSend(topic, message); + template.syncSend(topic, message, Math.max(100L, mqSendTimeoutMillis)); + consecutiveFailures.set(0); + circuitOpenUntilMillis.set(0L); log.info("[task-file-job] mq published jobId={} taskId={} moduleType={} topic={}", message.getJobId(), message.getTaskId(), message.getModuleType(), topic); return true; } catch (Exception ex) { - log.warn("[task-file-job] publish RocketMQ failed, fallback to local dispatcher/scheduled worker jobId={} taskId={} moduleType={} msg={}", - message.getJobId(), message.getTaskId(), message.getModuleType(), ex.getMessage()); + int failures = consecutiveFailures.incrementAndGet(); + int threshold = Math.max(1, mqFailureThreshold); + if (failures >= threshold) { + long nextOpenUntil = System.currentTimeMillis() + Math.max(1000L, mqCircuitOpenMillis); + circuitOpenUntilMillis.set(nextOpenUntil); + log.warn("[task-file-job] publish RocketMQ failed, circuit opened and fallback to local dispatcher/scheduled worker jobId={} taskId={} moduleType={} failures={} openMs={} msg={}", + message.getJobId(), message.getTaskId(), message.getModuleType(), failures, + Math.max(1000L, mqCircuitOpenMillis), ex.getMessage()); + } else { + log.warn("[task-file-job] publish RocketMQ failed, fallback to local dispatcher/scheduled worker jobId={} taskId={} moduleType={} failures={}/{} msg={}", + message.getJobId(), message.getTaskId(), message.getModuleType(), failures, threshold, ex.getMessage()); + } return false; } } diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java index e1cbdb1..2c2c073 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java @@ -12,6 +12,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; +import java.util.ArrayList; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -76,6 +77,41 @@ public class TaskFileJobService { .last("limit " + Math.max(1, Math.min(limit, 100)))); } + public List listRunnableJobsForOwner(int limit, String owner) { + String normalizedOwner = owner == null ? "" : owner.trim(); + if (normalizedOwner.isBlank()) { + return listRunnableJobs(limit); + } + String ownerMarker = ":owner:" + normalizedOwner; + int safeLimit = Math.max(1, Math.min(limit, 100)); + + List ownerJobs = taskFileJobMapper.selectList(new LambdaQueryWrapper() + .in(TaskFileJobEntity::getStatus, List.of("PENDING", "FAILED")) + .lt(TaskFileJobEntity::getRetryCount, 5) + .in(TaskFileJobEntity::getModuleType, List.of("APPEARANCE_PATENT", "SIMILAR_ASIN")) + .like(TaskFileJobEntity::getScopeKey, ownerMarker) + .orderByAsc(TaskFileJobEntity::getUpdatedAt) + .last("limit " + safeLimit)); + if (ownerJobs.size() >= safeLimit) { + return ownerJobs; + } + + List jobs = new ArrayList<>(ownerJobs); + LambdaQueryWrapper genericWrapper = new LambdaQueryWrapper() + .in(TaskFileJobEntity::getStatus, List.of("PENDING", "FAILED")) + .lt(TaskFileJobEntity::getRetryCount, 5) + .and(wrapper -> wrapper + .notIn(TaskFileJobEntity::getModuleType, List.of("APPEARANCE_PATENT", "SIMILAR_ASIN")) + .or() + .isNull(TaskFileJobEntity::getScopeKey) + .or() + .notLike(TaskFileJobEntity::getScopeKey, ":owner:")) + .orderByAsc(TaskFileJobEntity::getUpdatedAt) + .last("limit " + (safeLimit - jobs.size())); + jobs.addAll(taskFileJobMapper.selectList(genericWrapper)); + return jobs; + } + public List listJobs(String status, String moduleType, Long taskId, int limit) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper() .orderByDesc(TaskFileJobEntity::getUpdatedAt) @@ -130,7 +166,8 @@ public class TaskFileJobService { .eq(TaskFileJobEntity::getStatus, "RUNNING") .set(TaskFileJobEntity::getStatus, "FAILED") .set(TaskFileJobEntity::getErrorMessage, "文件生成任务运行超时") - .set(TaskFileJobEntity::getUpdatedAt, LocalDateTime.now())); + .set(TaskFileJobEntity::getUpdatedAt, LocalDateTime.now()) + .set(TaskFileJobEntity::getFinishedAt, LocalDateTime.now())); continue; } int updated = taskFileJobMapper.update(null, new LambdaUpdateWrapper() @@ -168,6 +205,19 @@ public class TaskFileJobService { .set(TaskFileJobEntity::getUpdatedAt, LocalDateTime.now())); } + public boolean deferRunning(Long jobId, String message) { + if (jobId == null || jobId <= 0) { + return false; + } + return taskFileJobMapper.update(null, new LambdaUpdateWrapper() + .eq(TaskFileJobEntity::getId, jobId) + .eq(TaskFileJobEntity::getStatus, "RUNNING") + .set(TaskFileJobEntity::getStatus, "PENDING") + .set(TaskFileJobEntity::getErrorMessage, message) + .set(TaskFileJobEntity::getUpdatedAt, LocalDateTime.now()) + .set(TaskFileJobEntity::getFinishedAt, null)) > 0; + } + @Transactional public boolean requeue(Long jobId, String message) { if (jobId == null || jobId <= 0) { @@ -198,14 +248,23 @@ public class TaskFileJobService { .set(TaskFileJobEntity::getFinishedAt, LocalDateTime.now())); } + public TaskFileJobEntity findById(Long jobId) { + if (jobId == null || jobId <= 0) { + return null; + } + return taskFileJobMapper.selectById(jobId); + } + public void markFailed(TaskFileJobEntity job, String message) { int retryCount = job.getRetryCount() == null ? 0 : job.getRetryCount() + 1; taskFileJobMapper.update(null, new LambdaUpdateWrapper() .eq(TaskFileJobEntity::getId, job.getId()) + .ne(TaskFileJobEntity::getStatus, "SUCCESS") .set(TaskFileJobEntity::getStatus, "FAILED") .set(TaskFileJobEntity::getRetryCount, retryCount) .set(TaskFileJobEntity::getErrorMessage, message == null ? "结果文件生成失败" : message) - .set(TaskFileJobEntity::getUpdatedAt, LocalDateTime.now())); + .set(TaskFileJobEntity::getUpdatedAt, LocalDateTime.now()) + .set(TaskFileJobEntity::getFinishedAt, retryCount >= 5 ? LocalDateTime.now() : null)); } public TaskFileJobEntity findAssembleJob(Long taskId, String moduleType, Long resultId) { diff --git a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java index f5c5073..5b110df 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java +++ b/backend-java/src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java @@ -62,7 +62,7 @@ public class TaskResultFileJobWorker { if (!localWorkerEnabled) { return; } - List jobs = taskFileJobService.listRunnableJobs(batchSize); + List jobs = taskFileJobService.listRunnableJobsForOwner(batchSize, currentInstanceId()); if (jobs == null || jobs.isEmpty()) { return; } @@ -111,6 +111,12 @@ public class TaskResultFileJobWorker { private void processInternal(TaskFileJobEntity job) { long startedAt = System.currentTimeMillis(); try { + TaskFileJobEntity latest = taskFileJobService.findById(job.getId()); + if (latest != null && "SUCCESS".equals(latest.getStatus())) { + log.info("[task-file-job] process skipped because job already succeeded jobId={} taskId={} moduleType={} resultId={}", + job.getId(), job.getTaskId(), job.getModuleType(), job.getResultId()); + return; + } TaskDistributedLockService.LockHandle lockHandle = taskDistributedLockService.acquire(job.getModuleType(), job.getTaskId(), TaskDistributedLockService.DEFAULT_WAIT_MILLIS); if (lockHandle == null) { @@ -120,9 +126,22 @@ public class TaskResultFileJobWorker { return; } try (lockHandle) { + latest = taskFileJobService.findById(job.getId()); + if (latest != null && "SUCCESS".equals(latest.getStatus())) { + log.info("[task-file-job] process skipped after lock because job already succeeded jobId={} taskId={} moduleType={} resultId={}", + job.getId(), job.getTaskId(), job.getModuleType(), job.getResultId()); + return; + } boolean completed = dispatch(job); if (!completed) { - taskFileJobService.touchRunning(job.getId()); + if (isOwnerScopedCozeJob(job)) { + taskFileJobService.touchRunning(job.getId()); + log.info("[task-file-job] process waiting for async coze result jobId={} taskId={} moduleType={} resultId={} elapsedMs={}", + job.getId(), job.getTaskId(), job.getModuleType(), job.getResultId(), + System.currentTimeMillis() - startedAt); + return; + } + taskFileJobService.deferRunning(job.getId(), "Waiting for Coze/file assembly to continue"); log.info("[task-file-job] process deferred jobId={} taskId={} moduleType={} resultId={} elapsedMs={}", job.getId(), job.getTaskId(), job.getModuleType(), job.getResultId(), System.currentTimeMillis() - startedAt); @@ -136,6 +155,12 @@ public class TaskResultFileJobWorker { System.currentTimeMillis() - startedAt, resultFileUrl); } } catch (Exception ex) { + TaskFileJobEntity latest = taskFileJobService.findById(job.getId()); + if (latest != null && "SUCCESS".equals(latest.getStatus())) { + log.info("[task-file-job] process failure ignored because job already succeeded jobId={} taskId={} moduleType={} resultId={} msg={}", + job.getId(), job.getTaskId(), job.getModuleType(), job.getResultId(), ex.getMessage()); + return; + } String message = ex.getMessage() == null ? "结果文件生成失败" : ex.getMessage(); log.warn("[task-file-job] process failed jobId={} taskId={} moduleType={} resultId={} msg={}", job.getId(), job.getTaskId(), job.getModuleType(), job.getResultId(), message); diff --git a/backend-java/src/main/resources/application.yml b/backend-java/src/main/resources/application.yml index 4862b83..b0c99e4 100644 --- a/backend-java/src/main/resources/application.yml +++ b/backend-java/src/main/resources/application.yml @@ -136,6 +136,9 @@ aiimage: mq-enabled: ${AIIMAGE_RESULT_FILE_JOB_MQ_ENABLED:true} topic: ${AIIMAGE_RESULT_FILE_JOB_TOPIC:aiimage-result-file-job} consumer-group: ${AIIMAGE_RESULT_FILE_JOB_CONSUMER_GROUP:aiimage-result-file-job-consumer} + mq-send-timeout-ms: ${AIIMAGE_RESULT_FILE_JOB_MQ_SEND_TIMEOUT_MS:1000} + mq-failure-threshold: ${AIIMAGE_RESULT_FILE_JOB_MQ_FAILURE_THRESHOLD:3} + mq-circuit-open-ms: ${AIIMAGE_RESULT_FILE_JOB_MQ_CIRCUIT_OPEN_MS:60000} local-dispatch-enabled: ${AIIMAGE_RESULT_FILE_JOB_LOCAL_DISPATCH_ENABLED:true} local-dispatch-pool-size: ${AIIMAGE_RESULT_FILE_JOB_LOCAL_DISPATCH_POOL_SIZE:2} local-dispatch-queue-capacity: ${AIIMAGE_RESULT_FILE_JOB_LOCAL_DISPATCH_QUEUE_CAPACITY:200} @@ -144,12 +147,14 @@ aiimage: stuck-scan-delay-ms: ${AIIMAGE_RESULT_FILE_JOB_STUCK_SCAN_DELAY_MS:60000} stuck-timeout-minutes: ${AIIMAGE_RESULT_FILE_JOB_STUCK_TIMEOUT_MINUTES:30} batch-size: ${AIIMAGE_RESULT_FILE_JOB_BATCH_SIZE:20} + coze-task: + max-concurrent: ${AIIMAGE_COZE_TASK_MAX_CONCURRENT:8} appearance-patent: coze-base-url: ${AIIMAGE_APPEARANCE_PATENT_COZE_BASE_URL:https://api.coze.cn} coze-workflow-path: ${AIIMAGE_APPEARANCE_PATENT_COZE_WORKFLOW_PATH:/v1/workflow/run} - coze-workflow-id: ${AIIMAGE_APPEARANCE_PATENT_COZE_WORKFLOW_ID:7632683471312355338} - coze-token: ${AIIMAGE_APPEARANCE_PATENT_COZE_TOKEN:Bearer sat_gsInckdsN0qqhnZSK7K4Zevw6neJCHmYHyIbm85oGgJIGEmSdkH5OFctSKLsAHvT} - coze-batch-size: ${AIIMAGE_APPEARANCE_PATENT_COZE_BATCH_SIZE:50} + coze-workflow-id: ${AIIMAGE_APPEARANCE_PATENT_COZE_WORKFLOW_ID:7639685157562089513} + coze-token: ${AIIMAGE_APPEARANCE_PATENT_COZE_TOKEN:Bearer sat_CztofPRhIKFKeaPZBIRxocfckqhsdCZZ45NPhkf7WOZjbX36vnVSfVV30T6u2rSX} + coze-batch-size: ${AIIMAGE_APPEARANCE_PATENT_COZE_BATCH_SIZE:20} coze-connect-timeout-millis: ${AIIMAGE_APPEARANCE_PATENT_COZE_CONNECT_TIMEOUT_MILLIS:10000} coze-read-timeout-millis: ${AIIMAGE_APPEARANCE_PATENT_COZE_READ_TIMEOUT_MILLIS:60000} coze-poll-interval-millis: ${AIIMAGE_APPEARANCE_PATENT_COZE_POLL_INTERVAL_MILLIS:30000} @@ -159,9 +164,9 @@ aiimage: similar-asin: coze-base-url: ${AIIMAGE_SIMILAR_ASIN_COZE_BASE_URL:https://api.coze.cn} coze-workflow-path: ${AIIMAGE_SIMILAR_ASIN_COZE_WORKFLOW_PATH:/v1/workflow/run} - coze-workflow-id: ${AIIMAGE_SIMILAR_ASIN_COZE_WORKFLOW_ID:7635328462404583478} - coze-token: ${AIIMAGE_SIMILAR_ASIN_COZE_TOKEN:Bearer sat_gsInckdsN0qqhnZSK7K4Zevw6neJCHmYHyIbm85oGgJIGEmSdkH5OFctSKLsAHvT} - coze-batch-size: ${AIIMAGE_SIMILAR_ASIN_COZE_BATCH_SIZE:50} + coze-workflow-id: ${AIIMAGE_SIMILAR_ASIN_COZE_WORKFLOW_ID:7639708860686024756} + coze-token: ${AIIMAGE_SIMILAR_ASIN_COZE_TOKEN:Bearer sat_vqmb97BiXbMW3XVyG9htWQKjZ2F55CaW2FRrT9bDdPha7a3hxmXnMNCE1XNHdCVU} + coze-batch-size: ${AIIMAGE_SIMILAR_ASIN_COZE_BATCH_SIZE:20} coze-connect-timeout-millis: ${AIIMAGE_SIMILAR_ASIN_COZE_CONNECT_TIMEOUT_MILLIS:10000} coze-read-timeout-millis: ${AIIMAGE_SIMILAR_ASIN_COZE_READ_TIMEOUT_MILLIS:60000} coze-poll-interval-millis: ${AIIMAGE_SIMILAR_ASIN_COZE_POLL_INTERVAL_MILLIS:30000} diff --git a/backend-java/src/main/resources/db/V51__coze_credential_pool.sql b/backend-java/src/main/resources/db/V51__coze_credential_pool.sql new file mode 100644 index 0000000..c792e5b --- /dev/null +++ b/backend-java/src/main/resources/db/V51__coze_credential_pool.sql @@ -0,0 +1,29 @@ +CREATE TABLE IF NOT EXISTS biz_coze_credential ( + id BIGINT NOT NULL AUTO_INCREMENT, + module_type VARCHAR(64) NOT NULL, + credential_name VARCHAR(128) NOT NULL, + workflow_id VARCHAR(128) NOT NULL, + token VARCHAR(512) NOT NULL, + enabled TINYINT NOT NULL DEFAULT 1, + max_concurrent INT NOT NULL DEFAULT 0, + sort_order INT NOT NULL DEFAULT 0, + created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, + updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id), + UNIQUE KEY uk_coze_credential_module_name (module_type, credential_name), + KEY idx_coze_credential_module_enabled (module_type, enabled, sort_order, id) +); + +INSERT INTO biz_coze_credential (module_type, credential_name, workflow_id, token, enabled, max_concurrent, sort_order) +VALUES +('APPEARANCE_PATENT', 'appearance-1', '7639685157562089513', 'Bearer sat_CztofPRhIKFKeaPZBIRxocfckqhsdCZZ45NPhkf7WOZjbX36vnVSfVV30T6u2rSX', 1, 0, 10), +('APPEARANCE_PATENT', 'appearance-2', '7639688221823778850', 'Bearer sat_2VsTpfWXYG3EkCo8OQfLwJEWqhduCL4NEw7sSCsABppkW61kkSRPIac9coNlEnHE', 1, 0, 20), +('SIMILAR_ASIN', 'similar-1', '7639708860686024756', 'Bearer sat_vqmb97BiXbMW3XVyG9htWQKjZ2F55CaW2FRrT9bDdPha7a3hxmXnMNCE1XNHdCVU', 1, 0, 10), +('SIMILAR_ASIN', 'similar-2', '7635328462404583478', 'Bearer sat_gsInckdsN0qqhnZSK7K4Zevw6neJCHmYHyIbm85oGgJIGEmSdkH5OFctSKLsAHvT', 1, 0, 20) +ON DUPLICATE KEY UPDATE + workflow_id = VALUES(workflow_id), + token = VALUES(token), + enabled = VALUES(enabled), + max_concurrent = VALUES(max_concurrent), + sort_order = VALUES(sort_order), + updated_at = CURRENT_TIMESTAMP; diff --git a/backend-java/src/main/resources/db/aiimage.sql b/backend-java/src/main/resources/db/aiimage.sql index 6cb071f..d33479d 100644 --- a/backend-java/src/main/resources/db/aiimage.sql +++ b/backend-java/src/main/resources/db/aiimage.sql @@ -4,7 +4,7 @@ Source Server : 南日AI-线上 Source Server Type : MySQL Source Server Version : 80045 (8.0.45) - Source Host : 8.136.19.173:3306 + Source Host : 47.111.163.154:3306 Source Schema : aiimage Target Server Type : MySQL diff --git a/backend/blueprints/admin_api.py b/backend/blueprints/admin_api.py index 190f592..bb9d1b0 100644 --- a/backend/blueprints/admin_api.py +++ b/backend/blueprints/admin_api.py @@ -5,6 +5,7 @@ import json import os import re import threading +from urllib.parse import quote import requests from requests.adapters import HTTPAdapter @@ -1217,7 +1218,9 @@ def list_product_categories(): _, _, denied = _ensure_product_category_access() if denied: return denied - result, error_response, status = _proxy_backend_java('GET', '/api/admin/product-categories') + keyword = (request.args.get('keyword') or '').strip() + query = f'?keyword={quote(keyword)}' if keyword else '' + result, error_response, status = _proxy_backend_java('GET', f'/api/admin/product-categories{query}') if error_response is not None: return error_response, status payload = result.get('data') or {} @@ -1225,6 +1228,76 @@ def list_product_categories(): 'success': True, 'tree': [_format_product_category_item(item) for item in (payload.get('tree') or [])], 'items': [_format_product_category_item(item, include_children=False) for item in (payload.get('items') or [])], + 'total': payload.get('total') or 0, + 'page': payload.get('page') or 1, + 'page_size': payload.get('pageSize') or 0, + 'has_more': bool(payload.get('hasMore')), + }) + + +@admin_api.route('/product-categories/children') +@login_required +def list_product_category_children(): + _ensure_product_category_schema() + _, _, denied = _ensure_product_category_access() + if denied: + return denied + parent_id_raw = (request.args.get('parent_id') or request.args.get('parentId') or '').strip() + page = max(1, int(request.args.get('page', 1))) + page_size = min(100, max(1, int(request.args.get('page_size', request.args.get('pageSize', 20))))) + params = { + 'page': page, + 'pageSize': page_size, + } + if parent_id_raw: + params['parentId'] = parent_id_raw + result, error_response, status = _proxy_backend_java( + 'GET', + '/api/admin/product-categories/children', + params=params, + ) + if error_response is not None: + return error_response, status + payload = result.get('data') or {} + return jsonify({ + 'success': True, + 'items': [_format_product_category_item(item, include_children=False) for item in (payload.get('items') or [])], + 'total': payload.get('total') or 0, + 'page': payload.get('page') or page, + 'page_size': payload.get('pageSize') or page_size, + 'has_more': bool(payload.get('hasMore')), + }) + + +@admin_api.route('/product-categories/search') +@login_required +def search_product_categories(): + _ensure_product_category_schema() + _, _, denied = _ensure_product_category_access() + if denied: + return denied + keyword = (request.args.get('keyword') or '').strip() + page = max(1, int(request.args.get('page', 1))) + page_size = min(100, max(1, int(request.args.get('page_size', request.args.get('pageSize', 20))))) + result, error_response, status = _proxy_backend_java( + 'GET', + '/api/admin/product-categories/search', + params={ + 'keyword': keyword, + 'page': page, + 'pageSize': page_size, + }, + ) + if error_response is not None: + return error_response, status + payload = result.get('data') or {} + return jsonify({ + 'success': True, + 'items': [_format_product_category_item(item, include_children=False) for item in (payload.get('items') or [])], + 'total': payload.get('total') or 0, + 'page': payload.get('page') or page, + 'page_size': payload.get('pageSize') or page_size, + 'has_more': bool(payload.get('hasMore')), }) @@ -2415,6 +2488,54 @@ def list_query_asins(): }) +@admin_api.route('/query-asins/export') +@login_required +def export_query_asins(): + role, current_row, denied = _ensure_backend_menu_access('query-asin') + if denied: + return denied + params = { + 'operatorId': current_row.get('id') if current_row else None, + 'superAdmin': 'true' if role == 'super_admin' else 'false', + } + group_id_raw = (request.args.get('group_id') or request.args.get('groupId') or '').strip() + shop_name = (request.args.get('shop_name') or request.args.get('shopName') or '').strip() + asin = (request.args.get('asin') or '').strip() + if group_id_raw: + params['groupId'] = group_id_raw + if shop_name: + params['shopName'] = shop_name + if asin: + params['asin'] = asin + + url = f"{backend_java_base_url}/api/admin/query-asins/export" + try: + resp = _get_backend_java_session().get(url, params=params, timeout=60) + except requests.RequestException: + return jsonify({'success': False, 'error': 'backend-java 服务不可用'}), 502 + if resp.status_code >= 400: + try: + data = resp.json() + error = data.get('message') or data.get('error') or '导出失败' + except ValueError: + error = '导出失败' + return jsonify({'success': False, 'error': error}), resp.status_code + + headers = {} + disposition = resp.headers.get('Content-Disposition') + if disposition: + headers['Content-Disposition'] = disposition + return Response( + resp.content, + status=resp.status_code, + headers=headers, + content_type=resp.headers.get( + 'Content-Type', + 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', + ), + ) + + def _format_query_asin_import_progress(progress): return { 'status': progress.get('status') or 'pending', diff --git a/backend/config.py b/backend/config.py index db46cef..1058a2e 100644 --- a/backend/config.py +++ b/backend/config.py @@ -1,14 +1,48 @@ +import os +from pathlib import Path + +try: + from dotenv import load_dotenv +except ImportError: + def load_dotenv(*args, **kwargs): + return False + base_url = "https://api.coze.cn/v1" coze_token = "sat_12nW40INoJxArrDXbY4lSCoudbqkOYTcphC99BP2efWyzxmsk4q81WDX3ezWgqZ5" workflow_id = "7608812635877900322" STITCH_WORKFLOW_ID = "7608813873483300907" +BASE_DIR = Path(__file__).resolve().parent +LOADED_ENV_FILES = [] + + +def _load_env_files(): + candidates = ( + BASE_DIR / ".env", + BASE_DIR.parent / "app" / ".env", + BASE_DIR.parent / ".env", + ) + for env_path in candidates: + if env_path.is_file(): + load_dotenv(dotenv_path=env_path, override=False) + LOADED_ENV_FILES.append(str(env_path)) + + +def _get_env(*names, default=None): + for name in names: + value = os.getenv(name) + if value not in (None, ""): + return value, name + return default, "config.default" + + +_load_env_files() # MySQL 配置 -mysql_host = "8.136.19.173" -mysql_user = "aiimage" -mysql_password = "WTFrb5y6hNLz6hNy" # 请修改为您的数据库密码 -mysql_database = "aiimage" +mysql_host, mysql_host_source = _get_env("mysql_host", "MYSQL_HOST", default="47.110.241.161") +mysql_user, mysql_user_source = _get_env("mysql_user", "MYSQL_USER", default="aiimage") +mysql_password, mysql_password_source = _get_env("mysql_password", "MYSQL_PASSWORD", default="WTFrb5y6hNLz6hNy") +mysql_database, mysql_database_source = _get_env("mysql_database", "MYSQL_DATABASE", default="aiimage") cache_path = "./user_data" @@ -22,20 +56,20 @@ bucket_path = "nanri-image/" file_url_pre = f"https://{bucket}.oss-cn-hangzhou.aliyuncs.com/" -import os -backend_java_base_url = os.environ.get('BACKEND_JAVA_BASE_URL', 'http://127.0.0.1:18080').rstrip('/') -# backend_java_base_url = os.environ.get('BACKEND_JAVA_BASE_URL', 'http://8.136.19.173:18080').rstrip('/') -# backend_java_base_url = os.environ.get('BACKEND_JAVA_BASE_URL', 'http://47.111.163.154:18080').rstrip('/') -# backend_java_base_url = os.environ.get('BACKEND_JAVA_BASE_URL', 'http://121.196.149.225:18080').rstrip('/') -os.environ['OSS_ACCESS_KEY_ID'] = accessKeyId -os.environ['OSS_ACCESS_KEY_SECRET'] = accessKeySecret -os.environ['SECRET_KEY'] = "ddffc7c1d02121d9554d7b080b2511b6" +backend_java_base_url, backend_java_base_url_source = _get_env( + "java_api_base", + "BACKEND_JAVA_BASE_URL", + default="http://127.0.0.1:18080", + # default="http://47.111.163.154:18080", +) +backend_java_base_url = backend_java_base_url.rstrip("/") +os.environ["OSS_ACCESS_KEY_ID"] = accessKeyId +os.environ["OSS_ACCESS_KEY_SECRET"] = accessKeySecret +os.environ["SECRET_KEY"] = "ddffc7c1d02121d9554d7b080b2511b6" debug = True version = "1.0.0" APP_UPDATE_URL = "" -os.environ['APP_VERSION'] = version -os.environ['APP_UPDATE_URL'] = version - - +os.environ["APP_VERSION"] = version +os.environ["APP_UPDATE_URL"] = version diff --git a/backend/requirement.txt b/backend/requirement.txt index 1eb81b2..7f798fd 100644 --- a/backend/requirement.txt +++ b/backend/requirement.txt @@ -44,6 +44,7 @@ PyQt5==5.15.11 PyQt5-Qt5==5.15.2 PyQt5_sip==12.17.1 python-dateutil==2.9.0.post0 +python-dotenv==1.0.1 pythonnet==3.0.5 pytz==2026.1.post1 pywebview==6.1 diff --git a/backend/static/admin.js b/backend/static/admin.js index e5500a4..4bf1138 100644 --- a/backend/static/admin.js +++ b/backend/static/admin.js @@ -2563,14 +2563,47 @@ } function buildQueryAsinQuery(page) { var query = 'page=' + (page || 1) + '&page_size=' + queryAsinPageSize; + var filterQuery = buildQueryAsinFilterQuery(); + if (filterQuery) query += '&' + filterQuery; + return query; + } + function buildQueryAsinFilterQuery() { + var query = ''; var groupId = (document.getElementById('queryAsinFilterGroupId').value || '').trim(); var shopName = (document.getElementById('queryAsinFilterShopName').value || '').trim(); var asin = (document.getElementById('queryAsinFilterAsin').value || '').trim(); - if (groupId) query += '&group_id=' + encodeURIComponent(groupId); - if (shopName) query += '&shop_name=' + encodeURIComponent(shopName); - if (asin) query += '&asin=' + encodeURIComponent(asin); + if (groupId) query += (query ? '&' : '') + 'group_id=' + encodeURIComponent(groupId); + if (shopName) query += (query ? '&' : '') + 'shop_name=' + encodeURIComponent(shopName); + if (asin) query += (query ? '&' : '') + 'asin=' + encodeURIComponent(asin); return query; } + function exportQueryAsin() { + var query = buildQueryAsinFilterQuery(); + var url = '/api/admin/query-asins/export' + (query ? ('?' + query) : ''); + fetch(url) + .then(function (response) { + var contentType = response.headers.get('content-type') || ''; + if (!response.ok || contentType.indexOf('application/json') >= 0) { + return response.json().then(function (res) { + throw new Error((res && (res.error || res.msg)) || '导出失败'); + }).catch(function (err) { + throw err instanceof Error ? err : new Error('导出失败'); + }); + } + return response.blob().then(function (blob) { + return { + blob: blob, + filename: extractDownloadFilename(response.headers.get('content-disposition'), 'query-asin.xlsx') + }; + }); + }) + .then(function (payload) { + triggerBrowserDownload(payload.blob, payload.filename); + }) + .catch(function (err) { + alert((err && err.message) || '导出失败'); + }); + } function renderQueryAsinCell(item, country) { var asinValue = item[country.field] || ''; var infoHtml = asinValue ? '' + asinValue + '' : '-'; @@ -2883,6 +2916,9 @@ document.getElementById('btnSearchQueryAsin').onclick = function () { loadQueryAsin(1); }; + document.getElementById('btnExportQueryAsin').onclick = function () { + exportQueryAsin(); + }; document.getElementById('queryAsinFilterShopName').addEventListener('keydown', function (e) { if (e.key === 'Enter') { e.preventDefault(); @@ -2964,6 +3000,11 @@ renderQueryAsinInputs(); var productCategoryItems = []; + var productCategoryNodeMap = {}; + var productCategoryPageSize = 20; + var productCategoryRootState = { children: [], page: 0, total: 0, hasMore: true, loaded: false, loading: false }; + var productCategorySearchState = { items: [], page: 0, total: 0, hasMore: false, loading: false }; + var productCategoryKeyword = ''; var editingProductCategoryId = null; function resetProductCategoryForm() { @@ -2983,27 +3024,102 @@ var selected = selectedValue == null ? select.value : String(selectedValue || ''); var excluded = excludedId == null ? editingProductCategoryId : excludedId; var options = ['']; - productCategoryItems.forEach(function (item) { + productCategoryItems.slice().sort(function (a, b) { + return String(a.path || a.name || '').localeCompare(String(b.path || b.name || ''), 'zh-CN'); + }).forEach(function (item) { if (excluded && String(item.id) === String(excluded)) return; var prefix = new Array((item.level || 0) + 1).join('  '); options.push(''); }); + if (selected && !productCategoryItems.some(function (item) { return String(item.id) === selected; })) { + options.push(''); + } select.innerHTML = options.join(''); select.value = selected; } - function renderProductCategoryRows(items) { + function normalizeProductCategoryItem(item, parent) { + var id = String(item.id || ''); + var existing = productCategoryNodeMap[id] || {}; + var level = item.level != null ? item.level : (parent ? (parent.level || 0) + 1 : 0); + var path = item.path || (parent && parent.path ? parent.path + ' / ' + (item.name || '') : (item.name || '')); + var normalized = Object.assign(existing, item, { + id: item.id, + parent_id: item.parent_id == null ? null : item.parent_id, + child_count: item.child_count || 0, + level: level, + path: path, + children: existing.children || [], + page: existing.page || 0, + total: existing.total || 0, + hasMore: existing.hasMore !== false, + loaded: existing.loaded || false, + loading: false, + expanded: existing.expanded || false + }); + productCategoryNodeMap[id] = normalized; + productCategoryItems = Object.keys(productCategoryNodeMap).map(function (key) { return productCategoryNodeMap[key]; }); + return normalized; + } + + function flattenVisibleProductCategories(items, output) { + (items || []).forEach(function (item) { + output.push({ type: 'item', item: item }); + if ((item.child_count || 0) > 0 && item.expanded) { + flattenVisibleProductCategories(item.children || [], output); + if (item.hasMore) { + output.push({ type: 'more', parent: item }); + } + } + }); + return output; + } + + function renderProductCategoryRows() { var tbody = document.getElementById('productCategoryListBody'); if (!tbody) return; - if (!items.length) { + var rows = productCategoryKeyword + ? productCategorySearchState.items.map(function (item) { return { type: 'item', item: item, search: true }; }) + : flattenVisibleProductCategories(productCategoryRootState.children, []); + if (!productCategoryKeyword && productCategoryRootState.hasMore) { + rows.push({ type: 'more', parent: null }); + } + if (productCategoryKeyword && productCategorySearchState.hasMore) { + rows.push({ type: 'searchMore' }); + } + if (!rows.length) { tbody.innerHTML = '暂无商品类目'; return; } - tbody.innerHTML = items.map(function (item) { + tbody.innerHTML = rows.map(function (row) { + if (row.type === 'more') { + var parent = row.parent; + var level = parent ? (parent.level || 0) + 1 : 0; + var indentMore = Math.max(0, level) * 24; + var loading = parent ? parent.loading : productCategoryRootState.loading; + var loadedCount = parent ? (parent.children || []).length : (productCategoryRootState.children || []).length; + var totalCount = parent ? (parent.total || 0) : (productCategoryRootState.total || 0); + return '
' + + '' + + '已加载 ' + escapeHtml(loadedCount) + ' / ' + escapeHtml(totalCount) + '
'; + } + if (row.type === 'searchMore') { + var searchLoadedCount = (productCategorySearchState.items || []).length; + var searchTotalCount = productCategorySearchState.total || 0; + return ' ' + + '已加载 ' + escapeHtml(searchLoadedCount) + ' / ' + escapeHtml(searchTotalCount) + ''; + } + var item = row.item; var indent = Math.max(0, item.level || 0) * 24; - var mark = item.child_count > 0 ? '+' : '-'; + var hasChildren = (item.child_count || 0) > 0; + var expanded = !!item.expanded; + var mark = hasChildren ? (expanded ? '-' : '+') : ''; return '' + - '
' + mark + '' + escapeHtml(item.name || '') + '
' + + '
' + + '' + + '' + escapeHtml(item.name || '') + '
' + '
' + escapeHtml(item.path || item.name || '') + '
' + escapeHtml(item.category_key || '') + '
' + '' + escapeHtml(item.sort_order || 0) + '' + '' + (item.is_builtin ? '内置' : '自定义') + '' + @@ -3012,6 +3128,24 @@ '' + ''; }).join(''); + document.querySelectorAll('[data-product-category-toggle]').forEach(function (btn) { + btn.onclick = function () { + var id = String(btn.dataset.productCategoryToggle || ''); + if (!id || btn.disabled) return; + toggleProductCategoryNode(id); + }; + }); + document.querySelectorAll('[data-product-category-load-more]').forEach(function (btn) { + btn.onclick = function () { + var parentId = (btn.dataset.productCategoryLoadMore || '').trim(); + loadProductCategoryChildren(parentId || null, true); + }; + }); + document.querySelectorAll('[data-product-category-search-more]').forEach(function (btn) { + btn.onclick = function () { + loadProductCategorySearch(true); + }; + }); document.querySelectorAll('[data-product-category-edit]').forEach(function (btn) { btn.onclick = function () { var item = productCategoryItems.find(function (row) { return String(row.id) === String(btn.dataset.productCategoryEdit); }); @@ -3047,28 +3181,136 @@ } function loadProductCategories() { - fetch('/api/admin/product-categories') + if (productCategoryKeyword) { + productCategorySearchState = { items: [], page: 0, total: 0, hasMore: false, loading: false }; + loadProductCategorySearch(false); + return; + } + productCategoryRootState = { children: [], page: 0, total: 0, hasMore: true, loaded: false, loading: false }; + productCategoryNodeMap = {}; + productCategoryItems = []; + renderProductCategoryParentOptions(); + loadProductCategoryChildren(null, false); + } + + function loadProductCategoryChildren(parentId, append) { + var parent = parentId ? productCategoryNodeMap[String(parentId)] : null; + var state = parent || productCategoryRootState; + if (state.loading) return; + state.loading = true; + var failed = false; + renderProductCategoryRows(); + var nextPage = append ? (state.page || 0) + 1 : 1; + var query = '?page=' + nextPage + '&page_size=' + productCategoryPageSize; + if (parentId) query += '&parent_id=' + encodeURIComponent(parentId); + fetch('/api/admin/product-categories/children' + query) .then(function (r) { return r.json(); }) .then(function (res) { var tbody = document.getElementById('productCategoryListBody'); if (!res.success) { + failed = true; if (tbody) tbody.innerHTML = '加载失败: ' + escapeHtml(res.error || '') + ''; return; } - productCategoryItems = res.items || []; + var children = (res.items || []).map(function (item) { + return normalizeProductCategoryItem(item, parent); + }); + if (!append) { + state.children = []; + } + state.children = state.children.concat(children); + state.page = res.page || nextPage; + state.total = res.total || 0; + state.hasMore = !!res.has_more; + state.loaded = true; renderProductCategoryParentOptions(); - renderProductCategoryRows(productCategoryItems); + renderProductCategoryRows(); }) .catch(function () { + failed = true; var tbody = document.getElementById('productCategoryListBody'); if (tbody) tbody.innerHTML = '请求失败'; + }) + .finally(function () { + state.loading = false; + if (!failed) renderProductCategoryRows(); }); } + function loadProductCategorySearch(append) { + if (productCategorySearchState.loading) return; + productCategorySearchState.loading = true; + var failed = false; + renderProductCategoryRows(); + var nextPage = append ? (productCategorySearchState.page || 0) + 1 : 1; + fetch('/api/admin/product-categories/search?keyword=' + encodeURIComponent(productCategoryKeyword) + + '&page=' + nextPage + '&page_size=' + productCategoryPageSize) + .then(function (r) { return r.json(); }) + .then(function (res) { + var tbody = document.getElementById('productCategoryListBody'); + if (!res.success) { + failed = true; + if (tbody) tbody.innerHTML = '加载失败: ' + escapeHtml(res.error || '') + ''; + return; + } + var items = (res.items || []).map(function (item) { + var normalized = normalizeProductCategoryItem(item, null); + normalized.expanded = false; + return normalized; + }); + productCategorySearchState.items = append + ? productCategorySearchState.items.concat(items) + : items; + productCategorySearchState.page = res.page || nextPage; + productCategorySearchState.total = res.total || 0; + productCategorySearchState.hasMore = !!res.has_more; + renderProductCategoryParentOptions(); + renderProductCategoryRows(); + }) + .catch(function () { + failed = true; + var tbody = document.getElementById('productCategoryListBody'); + if (tbody) tbody.innerHTML = '请求失败'; + }) + .finally(function () { + productCategorySearchState.loading = false; + if (!failed) renderProductCategoryRows(); + }); + } + + function toggleProductCategoryNode(id) { + var item = productCategoryNodeMap[String(id)]; + if (!item) return; + item.expanded = !item.expanded; + if (item.expanded && !item.loaded) { + loadProductCategoryChildren(id, false); + return; + } + renderProductCategoryRows(); + } + document.getElementById('btnCancelProductCategoryEdit').onclick = function () { resetProductCategoryForm(); }; + document.getElementById('btnSearchProductCategory').onclick = function () { + productCategoryKeyword = (document.getElementById('productCategoryKeyword').value || '').trim(); + loadProductCategories(); + }; + + document.getElementById('btnClearProductCategorySearch').onclick = function () { + productCategoryKeyword = ''; + document.getElementById('productCategoryKeyword').value = ''; + loadProductCategories(); + }; + + document.getElementById('productCategoryKeyword').onkeydown = function (event) { + if (event.key === 'Enter') { + event.preventDefault(); + document.getElementById('btnSearchProductCategory').click(); + } + }; + document.getElementById('btnCreateProductCategory').onclick = function () { var msgEl = document.getElementById('msgProductCategory'); var name = (document.getElementById('productCategoryName').value || '').trim(); diff --git a/backend/utils/db.py b/backend/utils/db.py index 5ec2849..ae5a694 100644 --- a/backend/utils/db.py +++ b/backend/utils/db.py @@ -10,16 +10,32 @@ try: from config import mysql_user as config_mysql_user from config import mysql_password as config_mysql_password from config import mysql_database as config_mysql_database + from config import mysql_host_source as config_mysql_host_source + from config import mysql_user_source as config_mysql_user_source + from config import mysql_database_source as config_mysql_database_source except ImportError: config_mysql_host = 'localhost' config_mysql_user = 'root' config_mysql_password = '' config_mysql_database = 'maixiang_ai' + config_mysql_host_source = 'fallback.default' + config_mysql_user_source = 'fallback.default' + config_mysql_database_source = 'fallback.default' -mysql_host = os.environ.get('MYSQL_HOST', config_mysql_host) -mysql_user = os.environ.get('MYSQL_USER', config_mysql_user) -mysql_password = os.environ.get('MYSQL_PASSWORD', config_mysql_password) -mysql_database = os.environ.get('MYSQL_DATABASE', config_mysql_database) +mysql_host = config_mysql_host +mysql_user = config_mysql_user +mysql_password = config_mysql_password +mysql_database = config_mysql_database +mysql_host_source = config_mysql_host_source +mysql_user_source = config_mysql_user_source +mysql_database_source = config_mysql_database_source + + +def describe_db_target(): + return ( + f"{mysql_user}@{mysql_host}/{mysql_database} " + f"(host={mysql_host_source}, user={mysql_user_source}, database={mysql_database_source})" + ) def get_db(): diff --git a/backend/web_source/admin.html b/backend/web_source/admin.html index 3fb943c..a687efa 100644 --- a/backend/web_source/admin.html +++ b/backend/web_source/admin.html @@ -371,6 +371,7 @@ .tree-node-mark { width: 18px; height: 18px; + border: 0; border-radius: 4px; background: #eef1ff; color: #667eea; @@ -379,6 +380,14 @@ justify-content: center; font-size: 12px; font-weight: 700; + cursor: pointer; + padding: 0; + line-height: 1; + } + + .tree-node-mark.is-leaf { + background: transparent; + cursor: default; } .category-path { @@ -1317,6 +1326,7 @@ + @@ -1365,7 +1375,16 @@

-

类目树

+
+

类目树

+
+
+ +
+ + +
+
diff --git a/frontend-vue/src/pages/brand/components/BrandApiSecretSettingsButton.vue b/frontend-vue/src/pages/brand/components/BrandApiSecretSettingsButton.vue index 910c69a..2e517f0 100644 --- a/frontend-vue/src/pages/brand/components/BrandApiSecretSettingsButton.vue +++ b/frontend-vue/src/pages/brand/components/BrandApiSecretSettingsButton.vue @@ -8,33 +8,33 @@
-
+
-
{{ item.title }}
-
{{ item.description }}
+
通用 Coze 密钥
+
用于外观专利检测和货源查询。
@@ -43,14 +43,14 @@
保留时长
- {{ formatRetentionText(item.retention, item.expiresAt) }} + {{ formatRetentionText(secretState.retention, secretState.expiresAt) }} 当前未保存
@@ -73,14 +73,10 @@ import { clearStoredApiSecret, getStoredApiSecretSnapshot, saveStoredApiSecret, - type ApiSecretModuleKey, type ApiSecretRetention, } from '@/shared/utils/api-secret-store' -type ModuleState = { - moduleKey: ApiSecretModuleKey - title: string - description: string +type SecretState = { value: string retention: ApiSecretRetention expiresAt: number | null @@ -90,25 +86,18 @@ type ModuleState = { const dialogVisible = ref(false) const retentionOptions: Array<{ value: ApiSecretRetention; label: string }> = [ - { value: 'session', label: '仅本次打开有效' }, - { value: '1d', label: '1天' }, - { value: '7d', label: '7天' }, - { value: '30d', label: '30天' }, + { value: 'session', label: '本次打开有效' }, + { value: '1d', label: '1 天' }, + { value: '7d', label: '7 天' }, + { value: '30d', label: '30 天' }, { value: 'forever', label: '长期保留' }, ] -const moduleStates = ref([]) +const secretState = ref(emptySecretState()) -function buildModuleState( - moduleKey: ApiSecretModuleKey, - title: string, - description: string, -): ModuleState { - const snapshot = getStoredApiSecretSnapshot(moduleKey) - return { - moduleKey, - title, - description, +function loadStates() { + const snapshot = getStoredApiSecretSnapshot() + secretState.value = { value: snapshot.value, retention: snapshot.retention, expiresAt: snapshot.expiresAt, @@ -116,11 +105,13 @@ function buildModuleState( } } -function loadStates() { - moduleStates.value = [ - buildModuleState('appearance-patent', '外观专利', '用于外观专利检测的 Coze 接口密钥。'), - buildModuleState('similar-asin', '货源查询', '用于货源查询的 Coze 接口密钥。'), - ] +function emptySecretState(): SecretState { + return { + value: '', + retention: 'session', + expiresAt: null, + exists: false, + } } function formatRetentionText(retention: ApiSecretRetention, expiresAt: number | null) { @@ -136,16 +127,14 @@ function formatRetentionText(retention: ApiSecretRetention, expiresAt: number | return `有效期至 ${year}-${month}-${day} ${hour}:${minute}` } -function clearSecret(moduleKey: ApiSecretModuleKey) { - clearStoredApiSecret(moduleKey) +function clearSecret() { + clearStoredApiSecret() loadStates() ElMessage.success('已清空密钥') } function saveAll() { - for (const item of moduleStates.value) { - saveStoredApiSecret(item.moduleKey, item.value, item.retention) - } + saveStoredApiSecret(secretState.value.value, secretState.value.retention) loadStates() dialogVisible.value = false ElMessage.success('密钥设置已保存') @@ -192,6 +181,45 @@ loadStates() line-height: 1; } +:global(.secret-settings-dialog) { + --el-dialog-bg-color: #171b20; + --el-dialog-padding-primary: 20px; + overflow: hidden; + border: 1px solid #2c3540; + border-radius: 14px; + background: #171b20; + box-shadow: 0 24px 70px rgba(0, 0, 0, .52); +} + +:global(.secret-settings-dialog .el-dialog__header) { + padding: 22px 22px 12px; + margin: 0; + background: #171b20; +} + +:global(.secret-settings-dialog .el-dialog__body) { + padding: 12px 22px 16px; + background: #171b20; +} + +:global(.secret-settings-dialog .el-dialog__footer) { + padding: 0 22px 22px; + background: #171b20; +} + +:global(.secret-settings-dialog .el-dialog__headerbtn) { + top: 18px; + right: 18px; +} + +:global(.secret-settings-dialog .el-dialog__close) { + color: #8793a0; +} + +:global(.secret-settings-dialog .el-dialog__close:hover) { + color: #d8e3ee; +} + .dialog-header { display: flex; flex-direction: column; @@ -217,10 +245,10 @@ loadStates() } .secret-card { - padding: 16px; - border: 1px solid #2f363f; - border-radius: 12px; - background: #22272d; + padding: 18px; + border: 1px solid #313b46; + border-radius: 10px; + background: #20252b; } .secret-card-head { @@ -331,7 +359,11 @@ loadStates() } .footer-btn-primary { - background: #5aa2ea; + background: #4f8fda; color: #fff; } + +.footer-btn-primary:hover { + background: #67a6ed; +} diff --git a/frontend-vue/src/pages/brand/components/BrandAppearancePatentTab.vue b/frontend-vue/src/pages/brand/components/BrandAppearancePatentTab.vue index 58af24e..ebdd2cd 100644 --- a/frontend-vue/src/pages/brand/components/BrandAppearancePatentTab.vue +++ b/frontend-vue/src/pages/brand/components/BrandAppearancePatentTab.vue @@ -18,10 +18,8 @@
-
AI 提示词
-